Skip to content

Commit 3a586b0

Browse files
committed
Update releasing notes based on 2.7.4b2
1 parent d882a81 commit 3a586b0

File tree

1 file changed

+54
-57
lines changed

1 file changed

+54
-57
lines changed

release_jy.rst

Lines changed: 54 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,10 @@ the last commits should be the same as in the project repository:
9696
.. code-block:: ps1con
9797
9898
PS work> git log --oneline --graph -4
99-
* c6a7d5754 (HEAD -> master, origin/master, origin/HEAD) Exclude Guava META-INF
100-
* 2c3834e21 Check Contributor Agreement (#308)
101-
* f0afabba2 Fix shading (#317)
102-
* bc9d8592a Updates to NEWS and README
99+
* d9e1d72e7 (HEAD -> master, origin/master, origin/HEAD) Pin launcher tests to MacOS 12 for Java 8
100+
* f3d868433 Add upward compatibility to Java 9 Modularity (#325)
101+
* 668a95e83 Begin to identify as version 2.7.4b2
102+
* 228fe9ef9 (tag: v2.7.4b1) Prepare for 2.7.4b1 release.
103103
104104
.. _changes-preparing-for-a-release:
105105

@@ -118,11 +118,11 @@ The following files may need to be updated to match the version you are about to
118118
* ``jython.release_serial``.
119119

120120
In the language of these properties,
121-
version 2.7.4b1 is spelled ``2``, ``7``, ``4``, ``${PY_RELEASE_LEVEL_BETA}``, ``1``.
121+
version 2.7.4b2 is spelled ``2``, ``7``, ``4``, ``${PY_RELEASE_LEVEL_BETA}``, ``2``.
122122
Every other expression needing a version number is derived from these 5 values.
123123
* ``build.gradle``: The version number appears as a simple string property ``version``,
124124
near the top of the file.
125-
Version 2.7.4b1 is simply set like this: ``version = '2.7.4b1'``.
125+
Version 2.7.4b2 is simply set like this: ``version = '2.7.4b2'``.
126126
* ``src/org/python/core/imp.java``: If there has been any compiler change,
127127
increment the magic number ``APIVersion``.
128128
This magic declares old compiled files incompatible, forcing a fresh compilation for users.
@@ -139,12 +139,11 @@ The following files may need to be updated to match the version you are about to
139139

140140
.. code-block:: text
141141
142-
Jython <something>
143-
Bugs fixed
142+
Jython <something> Bugs fixed and features added
144143
- [ NNNN ] ...
145144
146145
Replace the first line with the release you are building
147-
e.g. "Jython 2.7.4b1".
146+
e.g. "Jython 2.7.4b2".
148147
Add anything necessary to the section "New Features".
149148
After publication (not now),
150149
we will add a new, empty, section for the version then under development.
@@ -174,15 +173,15 @@ If you changed anything, commit this set of changes locally:
174173
$ git status
175174
On branch master
176175
Your branch is up to date with 'origin/master'.
176+
177177
Changes to be committed:
178178
(use "git restore --staged <file>..." to unstage)
179179
modified: NEWS
180-
modified: build.gradle
181-
modified: build.xml
182180
183-
$ git commit -m"Prepare for 2.7.4b1 release."
184-
[master 228fe9ef9] Prepare for 2.7.4b1 release.
185-
3 files changed, 4 insertions(+), 4 deletions(-)
181+
182+
$ git commit -m"Prepare for 2.7.4b2 release."
183+
[master 30d2f859a] Prepare for 2.7.4b2 release.
184+
1 file changed, 7 insertions(+), 8 deletions(-)
186185
187186
188187
Get the JARs
@@ -222,13 +221,13 @@ Run the ``full-check`` target, which does some simple checks on the repository:
222221
223222
force-snapshot-if-polluted:
224223
[echo]
225-
[echo] Change set 228fe9ef9 is not tagged 'v2.7.4b1' - build is a snapshot.
224+
[echo] Change set 30d2f859a is not tagged 'v2.7.4b2' - build is a snapshot.
226225
227226
dump:
228227
[echo] --- build Jython version ---
229228
[echo] jython.version.short = '2.7.4'
230-
[echo] jython.release = '2.7.4b1'
231-
[echo] jython.version = '2.7.4b1-SNAPSHOT'
229+
[echo] jython.release = '2.7.4b2'
230+
[echo] jython.version = '2.7.4b2-SNAPSHOT'
232231
[echo] --- optional libraries ---
233232
[echo] informix = '../support/jdbc-4.50.8.jar'
234233
[echo] oracle = '../support/ojdbc8-19.14.0.0.jar'
@@ -262,7 +261,7 @@ being careful to observe the conventional pattern
262261

263262
.. code-block:: ps1con
264263
265-
PS work> git tag -a -s v2.7.4b1 -m"Jython 2.7.4b1"
264+
PS work> git tag -a -s v2.7.4b2 -m"Jython 2.7.4b2"
266265
267266
This may open a pop-up from GPG
268267
that requires a password to unlock your signing key
@@ -273,7 +272,7 @@ It will need to be pushed eventually,
273272
but the current state of your repository is still at the change set tagged.
274273
If something goes wrong after this point but before the eventual push to the repository,
275274
that requires changes and a fresh commit,
276-
it is possible to delete the tag with ``git tag -d v2.7.4b1``,
275+
it is possible to delete the tag with ``git tag -d v2.7.4b2``,
277276
and make it again at the new tip when you're ready.
278277
The Git book explains why you should not `delete a tag after the push`_.
279278

@@ -309,9 +308,9 @@ Run the ``full-check`` target again:
309308
PS work> ant full-check
310309
Buildfile: D:\git\work\build.xml
311310
312-
[echo] Build is for release of 2.7.4b1.
311+
[echo] Build is for release of 2.7.4b2.
313312
314-
[echo] jython.version = '2.7.4b1'
313+
[echo] jython.version = '2.7.4b2'
315314
316315
This time the script confirms it is a release
317316
and the version appears without the "SNAPSHOT" qualifier.
@@ -351,7 +350,7 @@ working in folder ``./build2``.
351350
352351
PS work> .\gradlew --console=plain publish
353352
> Task :generateVersionInfo
354-
This build is for v2.7.4b1.
353+
This build is for v2.7.4b2.
355354
356355
> Task :generateGrammarSource
357356
...
@@ -379,7 +378,7 @@ working in folder ``./build2``.
379378
Don't worry, this doesn't actually *publish* Jython.
380379
When the build finishes, a JAR that is potentially fit to publish,
381380
and its subsidiary artifacts (source, javadoc, checksums),
382-
will have been created in ``./build2/stagingRepo/org/python/jython-slim/2.7.4b1``.
381+
will have been created in ``./build2/stagingRepo/org/python/jython-slim/2.7.4b2``.
383382

384383
It can also be "published" to your local Maven cache (usually ``~/.m2/repository``
385384
with the task ``publishMainPublicationToMavenLocal``.
@@ -413,18 +412,19 @@ It is worth checking the manifests:
413412
.. code-block:: ps1con
414413
415414
PS 274b1-trial> jar -xf .\kit\jython-standalone.jar META-INF
416-
PS 274b1-trial> cat .\META-INF\MANIFEST.MF
415+
PS 274b2-trial> cat .\META-INF\MANIFEST.MF
417416
Manifest-Version: 1.0
418417
Ant-Version: Apache Ant 1.10.12
419418
Created-By: 1.8.0_321-b07 (Oracle Corporation)
420419
Main-Class: org.python.util.jython
421420
Built-By: Jeff
421+
Automatic-Module-Name: org.python.jython2.standalone
422422
Implementation-Vendor: Python Software Foundation
423423
Implementation-Title: Jython fat jar with stdlib
424-
Implementation-Version: 2.7.4b1
424+
Implementation-Version: 2.7.4b2
425425
426426
Name: Build-Info
427-
version: 2.7.4b1
427+
version: 2.7.4b2
428428
git-build: true
429429
oracle: true
430430
informix: true
@@ -442,8 +442,8 @@ The real test consists in running the regression tests:
442442

443443
.. code-block:: ps1con
444444
445-
PS 274b1-trial> inst\bin\jython -m test.regrtest -e
446-
== 2.7.4b1 (tags/v2.7.4b1:228fe9ef9, Apr 1 2024, 20:04:13)
445+
PS 274b2-trial> inst\bin\jython -m test.regrtest -e
446+
== 274b2 (tags/v2.7.4b2:30d2f859a, May 4 2024, 13:46:27)
447447
== [Java HotSpot(TM) 64-Bit Server VM (Oracle Corporation)]
448448
== platform: java11.0.22
449449
== encodings: stdin=ms936, stdout=ms936, FS=utf-8
@@ -479,10 +479,10 @@ When the author last tried, they were these:
479479

480480
.. code-block:: ps1con
481481
482-
PS 274b1-trial> copy -r inst\Lib\test TestLib\test
483-
PS 274b1-trial> $env:JYTHONPATH = ".\TestLib"
484-
PS 274b1-trial> java -jar kit\jython-standalone.jar -m test.regrtest -e
485-
== 2.7.4b1 (tags/v2.7.4b1:228fe9ef9, Apr 1 2024, 20:04:13)
482+
PS 274b2-trial> copy -r inst\Lib\test TestLib\test
483+
PS 274b2-trial> $env:JYTHONPATH = ".\TestLib"
484+
PS 274b2-trial> java -jar kit\jython-standalone.jar -m test.regrtest -e
485+
== 274b2 (tags/v2.7.4b2:30d2f859a, May 4 2024, 13:46:27)
486486
== [Java HotSpot(TM) 64-Bit Server VM (Oracle Corporation)]
487487
== platform: java11.0.22
488488
== encodings: stdin=ms936, stdout=ms936, FS=utf-8
@@ -554,7 +554,7 @@ such as your personal Maven cache:
554554
PS work> .\gradlew --console=plain publishMainPublicationToMavenLocal
555555
556556
This will deliver build artifacts to
557-
``~/.m2/repository/org/python/jython-slim/2.7.4b1``.
557+
``~/.m2/repository/org/python/jython-slim/2.7.4b2``.
558558
One can construct an application to run with that as a dependency like this:
559559

560560
.. code-block:: groovy
@@ -570,7 +570,7 @@ One can construct an application to run with that as a dependency like this:
570570
}
571571
572572
dependencies {
573-
implementation 'org.python:jython-slim:2.7.4b1'
573+
implementation 'org.python:jython-slim:2.7.4b2'
574574
}
575575
576576
application {
@@ -664,10 +664,10 @@ During the build, ``gpg`` may prompt you (in a dialogue box)
664664
for the pass-phrase that protects your private signing key.
665665
This leaves the following new artifacts in ``./publications``:
666666

667-
* ``jython-2.7.4b1-bundle.jar``
668-
* ``jython-standalone-2.7.4b1-bundle.jar``
669-
* ``jython-installer-2.7.4b1-bundle.jar``
670-
* ``jython-slim-2.7.4b1-bundle.jar``
667+
* ``jython-2.7.4b2-bundle.jar``
668+
* ``jython-standalone-2.7.4b2-bundle.jar``
669+
* ``jython-installer-2.7.4b2-bundle.jar``
670+
* ``jython-slim-2.7.4b2-bundle.jar``
671671

672672

673673
Publication
@@ -744,10 +744,10 @@ You are now ready to upload bundles acceptable to Sonatype.
744744
select "Artifact Bundle".
745745
* Navigate to the ``./publications`` folder and upload in turn:
746746

747-
* ``jython-slim-2.7.4b1-bundle.jar``
748-
* ``jython-2.7.4b1-bundle.jar``
749-
* ``jython-standalone-2.7.4b1-bundle.jar``
750-
* ``jython-installer-2.7.4b1-bundle.jar``
747+
* ``jython-slim-2.7.4b2-bundle.jar``
748+
* ``jython-2.7.4b2-bundle.jar``
749+
* ``jython-standalone-2.7.4b2-bundle.jar``
750+
* ``jython-installer-2.7.4b2-bundle.jar``
751751

752752
For some reason (privacy?) the display shows a fake file path
753753
but the name is correct.
@@ -832,16 +832,16 @@ assume the successor to be an alpha of the next micro-release.
832832
For example, ``2.7.2b2`` is followed by ``2.7.2b3``,
833833
and ``2.7.2`` by ``2.7.3a1``.
834834

835-
If the version under development is ``2.7.4b2``,
836-
the build system will label the code as ``2.7.4b2-DEV`` in the developer build.
837-
If you build an installer, or dry-run a release, it will be ``2.7.4b2-SNAPSHOT``.
838-
You can read this as a version that "may eventually become" ``2.7.4b2`` etc..
835+
If the version under development is ostensibly ``2.7.4b3``,
836+
the build system will label the code as ``2.7.4b3-DEV`` in builds.
837+
If you build an installer, or dry-run a release, it will be ``2.7.4b3-SNAPSHOT``.
838+
You can read this as a version that "may eventually become" ``2.7.4b3`` etc..
839839

840-
However, the version under development in this scheme will often be one that
841-
never sees a release.
842-
E.g. when we are apparently working on ``2.7.4b2``,
843-
the next release is quite likely to be ``2.7.4rc1`` instead,
844-
but we can't guarantee that things will go that well.
840+
The version under development in this scheme will often be one that never sees a release.
841+
E.g. when we are apparently working on ``2.7.4b3``,
842+
the next release is quite likely to be ``2.7.4rc1`` instead.
843+
The build files will have to be edited to produce that when that time comes.
844+
We always hope that the version string printed in regression tests will ultimately be wrong.
845845
It's a harmless paradox.
846846

847847
Make this change in both ``build.xml`` and ``build.gradle``.
@@ -852,13 +852,10 @@ In ``NEWS``, add a new, empty, section in the development history that looks lik
852852
.. code-block:: text
853853
854854
Jython <successor version>
855-
Bugs fixed
856855
857-
New Features
856+
Bugs fixed
858857
859858
Commit and push this change upstream.
860859

861-
.. note:: New features should probably be associated with the final release,
862-
not the feature-freeze ``b1``.
863-
This present structure doesn't work well from this point of view:
864-
it places "New Features" a long way from the top of NEWS.
860+
.. note:: The new features are associated with the prospective final release,
861+
not the alpha or beta that introduced them.

0 commit comments

Comments
 (0)