lib_3p system

Ira Cooper ira at samba.org
Wed Jul 16 20:54:16 MDT 2014


On Wed, Jul 16, 2014 at 10:52 PM, Ira Cooper <ira at samba.org> wrote:



>
>
> On Wed, Jul 16, 2014 at 9:50 PM, Jelmer Vernooij <jelmer at samba.org> wrote:
>
>> On Wed, Jul 16, 2014 at 09:42:59PM -0400, Ira Cooper wrote:
>> > On Wed, Jul 16, 2014 at 8:36 PM, Jelmer Vernooij <jelmer at samba.org>
>> wrote:
>> >
>> > > On Wed, Jul 16, 2014 at 07:03:55PM -0400, Ira Cooper wrote:
>> > > > In all the work I've been asked for my rationale for the work I am
>> done.
>> > > >
>> > > > It is about cleanliness and solid software engineering.  We can't
>> be sure
>> > > > we AREN'T using libraries that are totally integrated into our build
>> > > > system.  While we can try, and we can claim, the true proof is
>> removing
>> > > > them.
>> > > >
>> > > > In the interests of doing this, I've actually gone ahead and removed
>> > > them,
>> > > > on a branch. and put in support for downloading a tar file,
>> manually.
>> > > >
>> > > > The first patch on my new branch shows a file that was including our
>> > > local
>> > > > popt headers, instead of following and finding the system ones.  I
>> > > suspect
>> > > > it is the only one, but until there is more testing on more
>> systems, I
>> > > > won't feel truly sure of that.
>> > > >
>> > > > If we wish to support a "fat" tarball for our releases, that is
>> fine.
>> > >  But
>> > > > for day to day to development, the intent of this change is to make
>> it so
>> > > > developers who don't wish to have these libraries or their sources
>> on
>> > > their
>> > > > system, do not have them there.
>> > > >
>> > > > If you want more rationale than Simo's rationale, Jeremy's and
>> Volker's,
>> > > I
>> > > > suggest you look at my first patch on this branch.  It shows what I
>> truly
>> > > > fear.  Insidious errors.  This error was innocent it looks like...
>> > > > thankfully.
>> > > >
>> > > > This is why I do not support third party libraries in the tree.
>>  These
>> > > type
>> > > > of mistakes are too easy to make, and too easy to tempt ourselves
>> into.
>> > > >
>> > > > Git branch is at:
>> > > >
>> > > > http://git.samba.org/?p=ira/wip.git;a=shortlog;h=refs/heads/lib_3p
>> > > >
>> > > > The supporting "lib_3p" tar file:
>> > > >
>> > > > http://www.samba.org/~ira/lib_3p.tar  (This should move to a better
>> > > > location and be versioned etc, if we do this.)
>> > > >
>> > > > I'll construct the actual git repo to go with the tarfile tomorrow.
>> > > >
>> > > > I suggest you look at the code, and the overall concept.  I think
>> you'll
>> > > > find it a vast improvement, and a solid middle ground.
>> > > >
>> > > > (Yes, this is a request for review, and comments.)
>> > >
>> > > Can you rename it to something with a more obvious name? "p3" doesn't
>> > > mean anything to me. Perhaps "lib/external" ?
>> > >
>> > > Please update lib/update-external.sh, which is there to update
>> > > some of these libraries. (I've got a pending patch to make it update
>> zlib)
>> > >
>> > > Can you move each library in a separate commit? Git doesn't deal well
>> > > with moves of lots of files unless you specify the magic options (see
>> > > e.g. the output of "git log lib/zlib").
>> > lib_3p stands for "Libraries, Third Party." "external" is a bit too
>> vague
>> > for this use.  I really want an exact meaning.
>> In that case, what about just naming it lib/third_party or
>> lib/3rd_party ?
>>
>
> lib/ is for the first party libraries.
>
>  > As far as what I really intend, it was clear I missed a bit on my real
>> > intent.
>> >
>> > Look at http://git.samba.org/?p=ira/lib_3p.git;a=summary ; and you'll
>> see
>> > the missing piece.
>> >
>> > The intent is that there is a second git repo, and that all of this
>> data is
>> > properly kept under SCM.
>>
>> What's the advantage of a second git repository, versus just removing
>> your local copy of lib_3p ?
>>
>
>
> The advantage is to "default to safe".  The first commit shows some of the
> danger of leaving lib_3p in the tree.
>
> Long term, hopefully we'll need lib_3p less.  But as long as it is
> optional... I'll be happy. :)
>

This is wrong... As long as lib_3p is optional and not part of the tree,
I'll be happy :).

-Ira


More information about the samba-technical mailing list