|
Boost : |
Subject: Re: [boost] [modularization] Extract xml_archive from serialization
From: Stephen Kelly (hello_at_[hidden])
Date: 2014-09-17 18:37:38
Robert Ramey wrote:
> Stephen Kelly-2 wrote
>> Is this "at the expense of everyone who wants to ship datetime with
>> support
>> for serialization in the package"? Is that 'non-obvious' too? Is this a
>> net-
>> positive?
>
> I think its a much smaller number of people.
We can both think lots of things.
I think there are more similarities in consequences of your plan the more
you describe it.
> anyone who explicitly includes date-time/serialization.hpp will know that
> he has to ship the data-time-serialization.dll.
Amazing.
What will someone who explicitly includes archive/basic_xml_archive.hpp
possibly think he has to ship?
> others shipping the serialization dlls now have to decide whether
> to include wide-characters or not. Now they would have to start
> thinking about whether to include support for xml_archive or not.
... or date-time-serialization or not.
> This suggests that the serialization library should create a set of
> dlls with names like
> serialization-core.dll
> serialization-text_archive.dll
> serialization-xml_archive.dll
> ...
>
> To avoid xml_archive being a special case which is quite confusing.
I don't think it's confusing. It's just a change.
> Note that none of the above requires separate git repositories or
> include hierarchies. Moving the files around doesn't remove dependencies,
> it diminishes the presence of false dependencies in the dependency
> tracking tool.
The dependencies are not false if they refer to dependencies between git
repos, or between modularized release tarballs (if that's a goal).
>>> Now
>>> the original app user above has only what he wants and is
>>> not dependent upon boost serialization. Yet other users
>>> of the serialization library have what they want - serialization
>>> all in one place.
>>
>> You just created a separate thing to (presumably separately) download.
>> What's the 'all in one place' part?
>
> Hmmm - in the current scheme - we're creating multiple libraries or dlls
> within one git repo. That's what we do now.
>
> In your scheme - we also create more libraries/dlls but the the source
> is organized in a separate git repo. That's the difference.
You write as-if you think git is the only/primary way to use boost.
Are releases irrelevant? And release tarballs? Would your date-time-
serialization library be in a separate release tarball?
>> Isn't auto-link a VC++ only thing? Trying to assess the veracity of the
>> 'don't have to do anything special' claim.
>
> Its a VC thing and also a Borland thing - though I guess that's not
> relevant
> any more. I guess its not a gcc or clang thing so I see now that this is
> a
> red herring.
Yes.
>>> Do you mean creating a separate module at the git level?
>>
>> Yes. Locally I've moved the deleted files below into a new repo,
>> xml_archive.git
> Hmmm - this looks like its on your local machine.
Yes.
> Do you plan to commit this?
I'm not that rude! :)
I wrote a script in July to automate this split (to be immune to merge
conflicts etc). I started this thread to get support for going ahead with
doing the split in develop.
> Do you have the authority to do so?
No.
Thanks,
Steve.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk