Samisa Abeysinghe wrote: > So I would like to propose that we release 1.0 with current set of > features and look to stabilize the current code base before we release > 1.0 as much as possible. > I think we should be able to do this release in one months time.
I fear I'm rather swamped in work for the next few months, but I hope to review the codebase before the 1.0 release. I do have a related issue, though, that I think is worth discussing before such a release, and that's what the versioning scheme and rules should be for the project. I'd think these need to be nailed down more or less in stone prior to a 1.x or 1.x.x major release. Users should understand what kinds of guarantees are being made with regard to future compatibility, since we expect them to develop third-party service modules. They should certainly not have to rewrite or recompile these modules if they upgrade their Axis2/C installation to pick up a security bug fix, for example. So, with what versions is it acceptable for Axis2/C to break compatibility with previous versions? How should the versioning scheme indicate such transitions? What about patch releases to fix security bugs; can these change the API or ABI at all? And so forth. As a C project, I would suggest that it might make sense for Axis2/C to follow the lead of other major Apache C projects, such as APR and httpd. These two have fairly detailed versioning guidelines and requirements, especially in relation to the promise of stable APIs and ABIs, compile-time options, etc.: http://apr.apache.org/versioning.html http://svn.apache.org/viewvc/httpd/httpd/trunk/VERSIONING?view=markup Axis2/C also installs a lot of libraries, and as such, I'd suggest that it follow the same guidelines that APR does, with respect to parallel installation and library naming: http://www106.pair.com/rhp/parallel.html Such a scheme allows, for example, a libwoden-2.so from a future Axis2/C installation to be installed alongside a libwoden-1.so from a previous installation. One interesting issue is that Axis2/C is contains both applications, like httpd, and libraries, like APR. It also contains a number of related sub-projects. It allows for third-party service modules to be written against its API, like httpd. And it may compile its own "third-party" modules (e.g., mod_axis2) for use with httpd. These complexities probably mean that we need to develop a fairly comprehensive set of versioning rules, and possibly make some changes to the installation process (e.g., to follow the parallel installation guidelines above) prior to announcing a 1.0 or 1.0.0 stable release. Chris. -- GPG Key ID: 366A375B GPG Key Fingerprint: 485E 5041 17E1 E2BB C263 E4DE C8E3 FA36 366A 375B --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
