> >
> > -- Merging lib389 to 389-ds-base
> >
...
> > * Testing DS is guaranteed to work. Right now we have rapid change in
> > lib389 and the tests in say 1.3.5 or 1.2.11.x are unlikely to work with
> > latest lib389.
> Another problem here is that tests are not backported to the older
> branches. The only true source of tests is master branch that is
> guaranteed to work with the latest lib389.

But the issue here is we don't always mark them with versions
properly...

> > * We can tightly tie in features of DS with lib389 and their
> > administration (ie no need to worry about backward compatibility).
> > * Simpler release process - we only need to release 389-ds-base, and we
> > are done. 
> > * No more split patches for lib389 features and tests.
> >
> > Cons:
> > * We will need to backport lib389 features to backport tests for fixes
> > to older versions.
> > * Inability for latest lib389 to manage older (or newer) versions of ds.
> >
> > -- Separate lib389
> >
> > We have lib389 as a project that moves at a different rate to the
> > 389-ds-base project.
> >
> > Pros:
> > * lib389 is able to use it's "knowledge" to administer *multiple*
> > versions of Directory Server, rather that singly linked ones.
> > * We can write tests into lib389 once and test them against all DS
> > versions, or just relevant versions.
> > * We can have the admin tools manage many versions of the software which
> > may be cross platform/distro.
> Why these 3 points can't be done in merged lib389 using version specific
> logic in lib389 and the tests?

This is also true. But once we merge, is there much need? We only need
the connected test set. Issues we find in version 1.3.7 are unlikely to
be backported as fixes to 1.3.6 so the test cases aren't relevant here
IMO. My thinking is rather than have many cases/switches for all our
lib389 to ds versions (which means we need to define a support policy),
we can have a simpler 1:1 mapping. Makes the code easier for us, and
given that most distributors will ship these together, makes that job
easier too. 

> > * No more split patches for lib389 features and tests.
> >
> > Cons:
> > * Need to invest time into version detection of the 389-ds-base package
> > for configuration (both local and remote). IE we add a plugin in 1.3.7,
> > but we need to know if lib389 is accessing 1.3.6 (and disallow the
> > change).
> I think of this as not a con, but a feature. Also adding more sanity
> checks would be good. Our tools should be fool-proof.
> > * Continue to manage separate release of software.
> > * Need to manage lib389's older versions operating against *newer*
> > 389-ds-base versions. This adds a lot of complexity and version checks
> > (potentially with some server awareness?)
> >
> > -- Do nothing
> >
> > This is the current status.
> I thought that separate lib389 is a current status, no?

Yes, but this means we leave it seperate, and continue as is. The others
propose moving the test suites *from* 389-ds-base/dirsrvtests to lib389,
*OR* merging lib389 to 389-ds-base. 

> >
> > Pros:
> > * We don't spend any time on the issue at all. 
> >
> > Cons:
> > * We get the worst of both worlds. 
> > * Continue to increase complexity as these diverge.
> > * we often see the need to expand lib389 to express a test in
> > 389-ds-base, so we will continue to need to split patches
> >
> >
> > ============================
> >
> > My vote is to merge them. I came to this decision because I believe that
> > this will make development against multiple branches easier with regard
> > to testing and backport of patches. For example, we'll know that lib389
> > that's inside of 1.3.7 will *always* work with that release, even if we
> > have improved in 1.4.x etc.
> My vote is to merge them as well. But for slightly different reasons:
> packaging (blocking dependencies are not fun), single place of
> development.

Cool! That's 2 for merge so far :) 

> >
> > We also are developing new CLI and admin tools, and these are often
> > tightly linked to a version of Directory Server. I think that it's
> > easier for us as developers to have this specific linking, than trying
> > to spend large amounts of time making something generic that works for
> > all versions.
> What about migration scenario, when you have a mix of old and new
> versions of DS, and latest tools should be able to handle them?

You would use the tools on the local host to manage it I would think.
Just the same today with the pl tools. 

-- 
Sincerely,

William Brown
Software Engineer
Red Hat, Australia/Brisbane

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
389-devel mailing list -- 389-devel@lists.fedoraproject.org
To unsubscribe send an email to 389-devel-le...@lists.fedoraproject.org

Reply via email to