← Back to team overview

fenics team mailing list archive

Re: Merge of ufc-geometry branch

 

There's also this page with a big picture describing the big picture:

http://fenicsproject.org/contributing/development_model.html

--
Anders


On Wed, Mar 06, 2013 at 12:04:58PM +0100, Martin Sandve Alnæs wrote:
>   Ok! Short version is that in 1.x.y, increments to y are bugfix
>   releases, while increments to x are feature releases and stuff may
>   break (but we try not to do that without reason). I think that's about
>   as formal as we treat it, so a longer version is not really needed :)
>   Martin
>   On 6 March 2013 11:48, Florian Rathgeber
>   -----BEGIN PGP SIGNED MESSAGE-----
>   Hash: SHA1
>     My question wasn't implying that semantic versioning is the only or
>     necessarily the right way to go. As you point out it's very hard to
>     define what the FEniCS API is and even if it was clearly defined,
>     rigorously applying semantic versioning is a lot of effort. So I'm
>     not
>     necessarily suggesting to adopt that.
>     However, a documented guideline for how release versions are
>     numbered
>     in FEniCS would be helpful for both users and developers I think.
>     Florian



>   > Thinking a bit about this, what would it even mean for a
>   > cross-language project like FEniCS?
>   >
>   > And looking at the C++ code only, what would be the API that we
>   > would want/be able to keep stable? If we lock down all headers in
>   > dolfin we have no room to maneuver and the project will become a
>   > horrible mess down the line. We have limited resources to spend on
>   > something that doesn't advance the project.
>   >
>   > There's no chance in hell that we'll spend time trying to preserve
>   > binary compatibility. But we will try to preserve source code
>   > compatibility, i.e. the users should preferably be able to run
>   > their code unchanged on new versions, but it will have to be a
>   > tradeoff vs progress and developer resources.
>   >
>   > We've tried to keep the API defined as "everything used by code
>   > snippets in the book" unchanged for a while. Recently we decided to
>   > loosen up for a while for the sake of progress, in particular
>   > changing a lot of uint->size_t for 64bit, reworking ufc a lot,
>   > reworking the assemblers, changing the shape of 1D vector
>   > quantities in ufl, changing the meaning of *dx. So we're clearly
>   > breaking compatibility at multiple levels these days. Later it will
>   > stabilise again.
>   >
>   > Martin
>   >
>   >
>   > On 5 March 2013 23:53, Martin Alnæs <[2]martinal@xxxxxxxxx
>   >
>   > No, FEniCS does not make any API promises at that detail level.
>   > However 1.1.x will be bugfixes for 1.1.0, while 1.2.0 breaks
>   > several APIs, e.g. ufc is reworked quite a bit.
>   >
>   > Martin
>   >
>   > Den 5. mars 2013 kl. 23:43 skrev Florian Rathgeber
>   > <[4]florian.rathgeber@xxxxxxxxx
>     > <mailto:[5]florian.rathgeber@xxxxxxxxx>>:
>   >
>   >
>   > Is FEniCS following a version numbering scheme s.a. semantic
>   > versioning ([6]http://semver.org/)? If so, will the merge introduce
>   > backwards-incompatible API changes which would require
>   > incrementing the major version number?
>   >
>   > Florian
>     > <mailto:[9]fenics@xxxxxxxxxxxxxxxxxxx>
>   >
>   >
>   -----BEGIN PGP SIGNATURE-----
>   Version: GnuPG v1.4.11 (GNU/Linux)
>   Comment: Using GnuPG with Thunderbird - [12]http://www.enigmail.net/
>     iEYEARECAAYFAlE3HuwACgkQ8Z6llsctAxaLtACguZ+Rw1tiD7kZ8RnLBHCkrY/I
>     714AoNFKw2rS3REM/CTk/BzGbQQjOWlz
>     =EpJ5
>     -----END PGP SIGNATURE-----
> Referenser
>   1. mailto:florian.rathgeber@xxxxxxxxx
>   2. mailto:martinal@xxxxxxxxx
>   3. mailto:martinal@xxxxxxxxx
>   4. mailto:florian.rathgeber@xxxxxxxxx
>   5. mailto:florian.rathgeber@xxxxxxxxx
>   6. http://semver.org/
>   7. https://launchpad.net/~fenics
>   8. mailto:fenics@xxxxxxxxxxxxxxxxxxx
>   9. mailto:fenics@xxxxxxxxxxxxxxxxxxx
>  10. https://launchpad.net/~fenics
>  11. https://help.launchpad.net/ListHelp
>  12. http://www.enigmail.net/

> _______________________________________________
> Mailing list: https://launchpad.net/~fenics
> Post to     : fenics@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~fenics
> More help   : https://help.launchpad.net/ListHelp



References