From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: yet another Ada web site?
Date: Thu, 13 Oct 2022 08:58:16 +0200 [thread overview]
Message-ID: <ti8cu8$shh$1@gioia.aioe.org> (raw)
In-Reply-To: 861qrch9j1.fsf@stephe-leake.org
On 2022-10-13 02:06, Stephen Leake wrote:
> Paul Jarrett <jarrett.paul.young@gmail.com> writes:
>
>>> The main problem with that stuff is usually architectural. Most of it is
>> plain aggregation of source code, which is utterly wrong.
>>>
>>> The very idea to rebuild everything each time on each client is
>>> atrocious both with regard of wasting computing resources as well as
>>> testing, safety, consistency, interoperability inside the target.
>
> Actually, it's better for consistency; that's why Alire does it.
Consistency is easier to enforce on pre-built deployments, obviously.
Moreover libraries usually provide integrated checks and/or have some
target platform policy, e.g. naming and placement conventions.
> I don't understand what you mean by "testing" here; how does compiling
> from source affect testing?
Because one can run tests on pre-built packages impossible to run on the
sources. For example, network/hardware protocols. In order to test a
protocol implementation one needs complex mock setups the client simply
does not have. Such tests may run for many hours etc.
> Same for "interoperability".
See above. You cannot run integration tests on the client, it is just silly.
>> I've seen inconsistencies in builds when developers who rely on the
>> system libraries (installed by things like apt) join the project at
>> different times -- the earliest developers might be on libfoo-1.2
>> whereas newer developers are on libfoo-1.4. You don't run into this
>> problem if the repo points to the applicable dependencies and everyone
>> builds everything locally.
No difference whether deployment is in source or pre-built. Dependencies
must be enforced regardless. However is far easier to do with pre-built
packages.
> More precisely, an Alire crate can specify precisely which version of
> each dependency it requires/is compatible with.
It seems so. Multiple versions at once are not supported. E.g. when you
are working on two projects both dependent on different versions of
another project:
B -> A.1
C -> A.2
Or even the same project, e.g. when doing some migration from one
version to another.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2022-10-13 6:58 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-25 10:01 yet another Ada web site? Maxim Reznik
2022-08-26 18:58 ` Paul Rubin
2022-08-27 9:12 ` Rene
2022-08-27 9:53 ` Nasser M. Abbasi
2022-08-28 7:21 ` Simon Wright
2022-08-28 7:50 ` Dmitry A. Kazakov
2022-08-28 10:26 ` Luke A. Guest
2022-09-16 15:25 ` Maxim Reznik
2022-09-16 17:07 ` Luke A. Guest
2022-09-16 17:34 ` Stephen Leake
2022-09-16 18:45 ` Jere
2022-09-17 9:45 ` Luke A. Guest
2022-09-16 18:49 ` Jere
2022-09-17 13:08 ` Move semantics (was: yet another Ada web site?) G.B.
2022-09-19 17:04 ` Move semantics Stephen Leake
2022-09-19 18:50 ` Paul Rubin
2022-09-20 11:44 ` AdaMagica
2022-09-20 14:46 ` Niklas Holsti
2022-09-20 19:39 ` Paul Rubin
2022-09-24 6:54 ` Stephen Leake
2022-09-18 8:47 ` yet another Ada web site? grosdan
2022-09-18 10:57 ` Dmitry A. Kazakov
2022-09-18 16:28 ` Luke A. Guest
2022-09-19 17:02 ` Stephen Leake
2022-09-19 6:39 ` Emmanuel Briot
2022-09-30 10:29 ` shtps
2022-09-30 12:29 ` Niklas Holsti
2022-10-09 16:13 ` Stephen Leake
2022-10-12 4:21 ` Paul Jarrett
2022-10-13 0:06 ` Stephen Leake
2022-10-13 6:58 ` Dmitry A. Kazakov [this message]
2022-10-14 8:41 ` Fabien Chouteau
2022-10-14 10:05 ` Dmitry A. Kazakov
2022-10-14 11:19 ` Stephen Leake
2022-10-14 13:05 ` Dmitry A. Kazakov
2022-10-16 8:54 ` G.B.
2022-10-16 9:20 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox