Repository navigation
New SOFA version: SOFA 20160503. - #35
Conversation
Took following steps: git rm src/*.c and src/*.h. copied erfa-fetch/erfa/* to src/* git add src/
Changed package version to 1.3.0 from 1.2.0 in README.rst, and configure.ac. Changed library version info from (3, 0, 2) to (4, 0, 3) in configure.ac. http://www.iausofa.org/current_changes.html: changes in this version of SOFA are 10 new functions, and change in the documentation of iau_atco13 and iau_atio13 regarding list of routines called. Since these don't break API increment package MINOR version and set patch to 0; increment current and age in library version info. Made note in README.rst that ERFA 1.3.0 and SOFA 20160503 don't have any differences.
This step was missing in RELEASE.rst. I am adding this step to RELEASE.rst.
In the previous commit I had deleted the previous change. It seems better to have a list of changes, instead on the changes for the current version.
|
@eteq - did this slip by? In the meantime, an update to this version of SOFA has been put out (mostly for the leap second, but also the deflection of the sun, which will allow us to remove a work-around in astropy). |
+ Documentation fix for cr.c. See issue liberfa#36. + New leap second for 2016 December 31. + Change to threshold value in ldsun. + Updates to test to check new leap second. Carried out the following steps, after running sofa_deriver in erfa-fetch repository:: git rm src/*.c and src/*.h. copied erfa-fetch/erfa/* to src/* git add src/
Changed package version to 1.4.0 from 1.3.0 in README.rst, and configure.ac. Changed library version info from (4, 0, 3) to (5, 0, 4) in configure.ac. Changes in SOFA don't break API increment package MINOR version and set patch to 0; increment current and age in library version info. Made note in README.rst that ERFA 1.4.0 and SOFA 20160503_a don't have any differences.
|
Hello, I have updated SOFA to version "20160503_a". As before, I ran the steps up to and including "make distcheck" described in RELEASE.rst. Regards, |
|
@phn - thanks very much! Sadly, I don't really know how to do |
|
@mhvk No problem! I was just making sure that the PR was up-to-date with SOFA releases. |
|
Oops, sorry - I earmarked this to take care of "after the Astropy 1.2 release" and then it slipped off my radar. Will aim to review this ASAP! |
|
@eteq - ping!? |
|
Sorry, should have left a message here. I did take a look and it mostly looks good but I ran into some oddities around the |
|
Hello, @eteq Thanks for finding time to do this! There are two manual changes made in configure.ac: updating library version and package version. Also I had to add new files to src/Makefile.am (i.e., a new SOFA function) so that the build system picks them up. Otherwise I have left the whole libtools machinery unchanged. I do not know libtools, but if you can report what seems to be wrong, I am willing to research it. Thanks again, |
|
@phn - yeah, I got that part, thanks. The weird thing to me is that I thought we wrote some machinery to automatically populate the Assuming it doesn't, the thing to do would be to add a bit to |
|
The current setup requires us to manually list the sources in "liberfa_la_SOURCES". The tool chain takes care of automatically adding object files to resulting Makefile. Since SOFA won't be adding/removing too many files, I think for the time being this can be done manually, as part of release. The person doing this do need to read SOFA change list and so will be aware of the modifications. I have already added this to instructions in RELEASE.rst in this PR. Since I couldn't find a way to make autotools to do this automatically. We can add some shell scripts in erfa source directory to make this semi-automatic: http://stackoverflow.com/questions/27817108/autodetect-source-for-automake. Regards, |
|
@phn - OK, good points all. I would like to say a checker script as you suggest, but that's not urgent now as it's currently all up to date. I'll create a new issue to try to remind us to do that as time permits. So I think this is all set except for one thing I just noticed: why did you set the version to 1.4.0 (and shared library to 5.0.4) instead of 1.3.0 (4.0.3) ? The last ERFA release was 1.2.0 so I would think this should be 1.3.0 ...? |
|
Hello @eteq, This PR has two SOFA updates! SOFA 20160503 : ERFA 1.2->1.3 and (3,0,2) -> (4,0,3) SOFA 20160503_a: ERFA 1.3 -> 1.4 and (4,0,3) -> (4,0,4). When @mhvk pointed out that SOFA 20160503_a was available, I thought I would add that as an update to 20160503 (ERFA 1.3) instead of replacing 20160503 (ERFA 1.3). The reasoning was that we have an ERFA version for each SOFA version. Since this PR took a while to process we will end up not having a release of 1.3 but if needed we can use git tags to find that version and build it. The README.rst file will have information on changes made from 1.2 -> 1.3. Regards, |
|
A propos versions, is there any reason we don't just follow the SOFA style (in which case this would be |
|
@phn - Ah, I get it now. The intent of the versioning in ERFA is not necessarily to follow exactly the SOFA releases. Think of ERFA as an independent package that happens to usually follow SOFA - in fact we have considered having bug fix releases "in between" SOFA releases, but so far it hasn't been necessary. This could certainly change, though, particularly at times when ERFA and SOFA might be partly diverged (e.g. if #7 ever comes into being, or we decide to add a more flexible approach to leap seconds). So I would say just make this release "1.3.0" (and shared lib 4.0.3) and update the readme to just not mention the intermediate SOFA 20160503 (which now just won't be in ERFA). @mhvk - In addition to the above (the fact that the releases are nominally decoupled from SOFA), we're trying to stick with semantic versioning for more consistency with other libraries. This was requested by the packagers for e.g. debian and Red Hat. FWIW, I really dislike the SOFA style of having a date that is not the release date - having |
|
OK, makes sense. |
|
Hello @eteq, I will make this 1.3 and (4.0.3).
Edit: Regards, |
This PR has two SOFA updates: 20160503 and 20160503_a. I had set 1.3 (4.0.3) to correspond to 20160503 and 1.4 (5.0.4) to 20160503_a. There is no need for this as liberfa is not tied to release schedule of SOFA. I am setting this release of liberfa to 1.3 (4.0.3) (i.e., increment from 1.2 (3.0.2), and it corresponds to SOFA 20160503_a. In README.rst, I made the note that ERFA 1.3 has no changes with respect to SOFA 20160503_a.
|
Looks great now, @phn . I will merge this and start the release process shortly. Thanks for your work on this! |
|
To follow through on this, the release is now out - see https://github.com/liberfa/erfa/releases/download/v1.3.0/erfa-1.3.0.tar.gz |
This pull request updates ERFA to use SOFA version 20160503.
I followed the steps in RELEASE.rst, upto and including the "make distcheck" step. I think the steps after that are to be made in the liberfa/erfa repository.
I had to edit the file src/Makefile.am to include the new files added by SOFA. (See http://www.iausofa.org/current_changes.html). This step is not mentioned in RELEASE.rst and so I have added it.
This closes #34 .