Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Release v3.23.
[simgrid.git] / doc / doxygen / inside_release.doc
index d6da2b8..9714423 100644 (file)
@@ -15,13 +15,13 @@ Please apply the following checklist before releasing.
     - CMakeLists.txt (in macros SIMGRID_VERSION_*)
     - sonar-project.properties
     - docs/source/conf.py
-  - The "make distcheck" target works (testing that every files needed
-    to build and install are included in the archive)
+    - setup.py
 - Tests
-  - All tests pass on a reasonable amount of platforms (typically,
-    everything on ci + travis/macOS + AppVeyor)
-  - You also tested to build and install the content of the source
-    archive on a reasonable amount of platforms (typically, 2 or 3).
+  - The "make distcheck" target works (tested by jenkins)
+  - All tests pass oneverything on ci + travis/macOS + AppVeyor
+  - Tutorials and derivative projects build correctly
+    https://framagit.org/simgrid/simgrid-template-s4u/pipelines
+    https://framagit.org/simgrid/external-projects-ci/pipelines
 - ChangeLog file
   - All changes are documented
   - The release date is indicated below the changes
@@ -157,14 +157,18 @@ Release numbering semantic:
     - We provide and store a source .tar.gz and a full jarfile on framagit
     - Deprecated symbols remain usable for at least 3 named releases (~1 year)
     - These releases are announced to the users
-  - 3.X.Y is a dot release of 3.X
+  - 3.X.Y where Y is even: dot release of 3.X, prerelease of 3.(X+1)
     - We provide and store a source .tar.gz and a full jarfile on framagit
     - These releases are NOT announced publicly, nor really documented. 
       The idea is to have something close to a rolling release.
     - External projects can depend on dot releases to loosen their
       release process from ours, when 4 release a year is not enough 
-  - 3.X.90 is a git version, a preversion of 3.(X+1) (3.22.90 = pre-3.23)
+  - 3.X.Y where Y is odd: git current status between two releases
     - No expectations on such versions
+  - Example
+    - 3.22.4: unannounced/losely documented stable release
+    - 3.22.5: git status somewhere between the release of 3.22.4 and the next one
+    - 3.23: Documented and announced stable release
     
 Doing a dot release:
   - Update the version number in:
@@ -176,7 +180,7 @@ Doing a dot release:
   - Wait for both appveyor and jenkins/highsierra to complete the build
   - If it's not successful, fix it and push again
   - Once it's successful on both appveyor and jenkins:
-    - tag the release v3_X_Y and push the tag
+    - tag the release v3.X.Y and push the tag
     - Merge 'master' into 'stable' and push it to framagit
     - Do not merge into 'stable' before appveyor and jenkins are done,
       or your jarfile will not contain the code you expect for win and
@@ -184,7 +188,7 @@ Doing a dot release:
   - python3 setup.py sdist # Build a source distrib
     - test that the built distrib recompiles:
       rm -rf /tmp/pysimgrid && mkdir /tmp/pysimgrid && cp dist/simgrid-*.tar.gz /tmp/pysimgrid 
-      (cd /tmp/pysimgrid && tar xfz simgrid*.tgz && cd simgrid-* && python3 setup.py build)
+      (cd /tmp/pysimgrid && tar xfz simgrid*.tar.gz && cd simgrid-*/ && python3 setup.py build)
     - Upload it to pypi (WARNING: you cannot modify uploaded files, ever)
       twine upload dist/simgrid-*.tar.gz