[cmake-developers] Making kwsys a proper library

Orion Poplawski orion at cora.nwra.com
Thu Aug 20 22:19:16 EDT 2015


On 08/17/2015 09:52 AM, Brad King wrote:
> On 08/15/2015 12:20 AM, Orion Poplawski wrote:
>> What makes the kwsys code special in a way that makes creating a
>> shared library inappropriate?
>
> We want to share the code across projects but we don't want it to
> get in the way of those projects evolving or releasing.  KWSys has
> no version number or API version level, and we don't want to maintain
> one.  Exactly one version of KWSys is used by each version of our
> consuming projects, down to the granularity of individual commits
> on each side.  We want to remain free to make incompatible changes
> at any time.  Dependents update their source and port to such changes
> when they are ready, not when some user decides to try that particular
> combination of versions.  We don't have to worry about mixing versions
> in different dependents (due to prefix configuration), or about forward
> or backward compatibility on either end of the dependency arrows (due
> to version locking at the source level).
>
> -Brad
>

The consensus of the FPC is that the current situation with KWSys is 
very undesirable.  While this approach may have been reasonable years 
ago with few consumers, it does not seem acceptable at this point.  In 
particular it contains string processing and process handling code that 
could be security sensitive.  See 
http://meetbot.fedoraproject.org/fedora-meeting-1/2015-08-20/fpc.2015-08-20-16.00.log.html 
for a full transcript of the meeting.

Any and all efforts by the KWSys maintainers to split out KWSys into 
proper libraries and perhaps pull out code that is only use by a single 
project into that project would be greatly appreciated.  It would also 
be greatly appreciated if KWSys using projects would include in their 
tarballs only those components that they actually used.

Currently Fedora will start marking KWSys using projects with a:

Provides: bundled(kwsys-COMPONENT)

tag to try to keep track of what each project uses.  We hope to revisit 
the situation in the future.

Thank you for your consideration.

-- 
Orion Poplawski
Technical Manager                     303-415-9701 x222
NWRA/CoRA Division                    FAX: 303-415-9702
3380 Mitchell Lane                  orion at cora.nwra.com
Boulder, CO 80301              http://www.cora.nwra.com


More information about the cmake-developers mailing list