While it is kind of nice to build some things without running configure, I
think we should avoid it.  We should shoot for 2 patterns of usage of thrift

1) Build it yourself
   - download
   - ./configure && make && sudo make install
2) Get a package

If we do this, it is very possible to have all version numbers driven by
version in configure, and have the versions synced across all languages
without jumping through as many hoops (basically I realize it is also
possible to have each language build subsytem work without first running
configure, but then you have to do random stuff, like change the version
in a bunch of places, or have a script which generates a version, etc, if
we assume the 2 patterns above we can simplify our versioning, and I
think simplification is good when you deal with a system as complex
as thrift).

-Anthony

On Fri, Oct 15, 2010 at 09:46:05AM -0700, David Reiss wrote:
> > ||py || || lib/py/setup.py || automate via lib/py/Makefile.am ? is 
> > configure anyway required? ||
> No.  It's currently possible to build the Python library without running 
> configure, which is kind of nice.
> 
> On 10/15/2010 04:03 AM, Apache Wiki wrote:
> > Dear Wiki user,
> > 
> > You have subscribed to a wiki page or wiki category on "Thrift Wiki" for 
> > change notification.
> > 
> > The "HowToVersion" page has been changed by RogerMeier.
> > http://wiki.apache.org/thrift/HowToVersion
> > 
> > --------------------------------------------------
> > 
> > New page:
> > This page should describe the versioning of libraries. '''It's a DRAFT'''!
> > 
> > goal is to solve the following issues:
> >  * https://issues.apache.org/jira/browse/THRIFT-6
> >  * https://issues.apache.org/jira/browse/THRIFT-274
> > 
> > ||'''Language'''|| '''via configure.ac''' || '''File(s) containing Version 
> > Information''' || '''Open Issues / Questions''' ||
> > ||as3 || || || no version available||
> > ||cocoa || || || no version available||
> > ||cpp || yes || config.h (generated) || none ||
> > ||csharp || no ||lib/csharp/ThriftMSBuildTask/Properties/AssemblyInfo.cs || 
> > how to automate? people do not use configure scripts on Windows!||
> > ||erl || yes ||lib/erl/src/thrift.app.src || none, is configure anyway 
> > required?  ||
> > ||hs || no || lib/hs/Thrift.cabal|| automate via lib/hs/Makefile.am ? is 
> > configure anyway required? ||
> > ||java || no ||lib/java/ivy.xml ||how to automate? Java people do not use 
> > configure scripts! ||
> > ||javame || || || no version available||
> > ||js || || || no version available||
> > ||ocaml || || || no version available||
> > ||perl || ||lib/perl/lib/Thrift.pm || it seems, that 
> > lib/perl/Makefile-perl.mk does not use version info from configure scripts 
> > ||
> > ||php || || || ?||
> > ||py || || lib/py/setup.py || automate via lib/py/Makefile.am ? is 
> > configure anyway required? ||
> > ||rb || || lib/rb/Rakefile|| automate via lib/py/Makefile.am ? is configure 
> > anyway required? ||
> > ||st || || ||  no version available||
> > 
> > General Questions:
> >  * which version string should be used on trunk? 0.6.0-dev or 0.6.x or 
> > 0.6.0-SNAPSHOT
> > 
> > == Versioning Concept ==
> > Semantic Versioning Specification (!SemVer) http://semver.org
> >  * Major: Incremented for backward incompatible changes. An example would 
> > be changes to the protocol.
> >  * Minor: Incremented for backward compatible changes.
> >  * Patch: Incremented for bug fixes

-- 
------------------------------------------------------------------------
Anthony Molinaro                           <antho...@alumni.caltech.edu>

Reply via email to