Cutting the drama off, I think an explaination on what a release mean is important.

Because this is what we do at The ASF: we release softwares that is to be trusted by the world. And that requires some due diligenc:

"After such a vote, it is a formal offering of the ASF, backed by the full faith and credit" of the Foundation."

To clarify for devs/users who are not PMC members:

The process is heavy for PMC members. A binding +1 vote is not a mere appreciation of the release ('yeah! a new version!'), but a validation that it has been properly baked.

For those interested in the process, here are few valuable links:

* https://www.apache.org/legal/release-policy.html
* https://infra.apache.org/release-publishing.html
* https://www.apache.org/legal/release-policy.html


Being heavy, it's likely we may drop some balls from time to time (not intentionally), and this process is evolving, so we need to keep us updated. This is never a finished work!

And please, don't shoot the messenger ;-)


Last, not least, I have to thanks *all* the voters (and all the people involved in this project), not only the PMC members, but also the committers and users: you are helping us going on! This is a community effort, and it's good to know that 17 years after having been promoted a Top Level Projet, MINA is still kicking !

On 13/09/2023 01:50, jgenen...@apache.org wrote:
Ok… say… answer coming off list… too much drama for dev@.

Jeff


On Sep 12, 2023, at 5:20 PM, Emmanuel Lécharny <elecha...@gmail.com> wrote:

Hi!

Not sure it's about validating how others are validating a release...

Now, I'd like to remind every PMC members that in order to issue a +1, the 
following things has to be completed per [1]:

"Before casting +1 binding votes, individuals are REQUIRED to download all signed 
source code packages onto their own hardware, verify that they meet all requirements of 
ASF policy on releases as described below, validate all cryptographic signatures, compile 
as provided, and test the result on their own platform."

Sure thing, it's a bit of work when 3 releases have been issued, and may be we 
should start three votes (especially of the required Java version is different 
for the voted releases, but this is not the case here).

FTR, when I vote a release (typically the lastest sshd release), here is what I 
do:
- I get the source package, check the sign and compile it, running the tests
- I also grab the git tag, compile it, and run the tests (the only difference 
is that I don't check the sig here)

Concerning the L&N files, I check they are present. However, we are dealing 
with mature project, and most of the releases are bug fix releases. From time to 
time, I check that all the required notices are present, and that we aren't missing 
any third party dependency.

The rat plugin protect us from releasing a file that does not contain the 
required header.


All in all, it's a pretty dull work, that takes me an hour per release.

I do think we need to automatize it at some point, and most certainly have to 
document the process - ideally speaking, we should add the process as an 
attached text in the release vote mail.

Please feel free to comment, if you think I'm missing something !

Emmanuel

[1] https://www.apache.org/legal/release-policy.html#release-approval

On 13/09/2023 00:19, Gary Gregory wrote:
I don't understand what Windows has to do with my question.
What did you do to validate the release candidate before voting +1?
Gary
On Tue, Sep 12, 2023, 4:11 PM <jgenen...@apache.org 
<mailto:jgenen...@apache.org>> wrote:
    I don’t use Windows.
    Jeff
     > On Sep 12, 2023, at 10:11 AM, Gary Gregory
    <garydgreg...@gmail.com <mailto:garydgreg...@gmail.com>> wrote:
     >
     > You don't remember if you downloaded, built and reviewed all
    three src or
     > tar files? Are you voting without reviewing?
     >
     > Gary
     >
     >
     > On Tue, Sep 12, 2023, 9:55 AM <jgenen...@apache.org
    <mailto:jgenen...@apache.org>> wrote:
     >
     >> I don’t remember if I voted because I have been voting on a lot
    of stuff
     >> lately.
     >>
     >> If I didn’t here is my +1 for all 3.
     >>
     >> Jeff
     >>
     >>> On Sep 12, 2023, at 2:29 AM, Emmanuel Lécharny
    <elecha...@gmail.com <mailto:elecha...@gmail.com>>
     >> wrote:
     >>>
     >>> Thanks Jeff & Gary.
     >>>
     >>> Is that for all the MINA versions?
     >>>
     >>> On 11/09/2023 16:27, Gary D. Gregory wrote:
     >>>> I can confirm a failure on Java 17 and Windows:
     >>>> [INFO] -------------------------------------------------------
     >>>> [INFO]  T E S T S
     >>>> [INFO] -------------------------------------------------------
     >>>> [INFO] Running org.apache.mina.core.buffer.IoBufferHexDumperTest
     >>>> [INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time
    elapsed:
     >> 0.060 s -- in org.apache.mina.core.buffer.IoBufferHexDumperTest
     >>>> [INFO] Running org.apache.mina.core.buffer.IoBufferTest
     >>>> [ERROR] Tests run: 47, Failures: 0, Errors: 1, Skipped: 0, Time
     >> elapsed: 0.404 s <<< FAILURE! -- in
    org.apache.mina.core.buffer.IoBufferTest
     >>>> [ERROR]
    org.apache.mina.core.buffer.IoBufferTest.testReadOnlyBuffer --
     >> Time elapsed: 0.005 s <<< ERROR!
     >>>> java.nio.charset.CoderMalfunctionError:
    java.nio.ReadOnlyBufferException
     >>>>        at
     >>
    java.base/java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:587)
     >>>>        at
     >>
    
org.apache.mina.core.buffer.AbstractIoBuffer.putString(AbstractIoBuffer.java:1798)
     >>>>        at
     >>
    
org.apache.mina.core.buffer.IoBufferTest.testReadOnlyBuffer(IoBufferTest.java:1104)
     >>>>        at
     >>
    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
     >> Method)
     >>>>        at
     >>
    
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
     >>>>        at
     >>
    
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     >>>>        at
    java.base/java.lang.reflect.Method.invoke(Method.java:568)
     >>>>        at
     >>
    
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
     >>>>        at
     >>
    
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
     >>>>        at
     >>
    
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
     >>>>        at
     >>
    
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
     >>>>        at
     >> org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
     >>>>        at
     >>
    
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
     >>>>        at
    org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
     >>>>        at
     >>
    
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
     >>>>        at
     >>
    
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
     >>>>        at
    org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
     >>>>        at
     >> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
     >>>>        at
     >> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
     >>>>        at
     >> org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
     >>>>        at
     >> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
     >>>>        at
     >> org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
     >>>>        at
    org.junit.runners.ParentRunner.run(ParentRunner.java:413)
     >>>>        at
     >>
    
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:316)
     >>>>        at
     >>
    
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
     >>>>        at
     >>
    
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
     >>>>        at
     >>
    
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155)
     >>>>        at
     >>
    
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
     >>>>        at
     >>
    org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
     >>>>        at
     >>
    org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
     >>>>        at
     >>
    org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
     >>>> Caused by: java.nio.ReadOnlyBufferException
     >>>>        at
     >> java.base/java.nio.HeapByteBufferR.put(HeapByteBufferR.java:212)
     >>>>        at
     >>
    
java.base/sun.nio.cs.ISO_8859_1$Encoder.encodeBufferLoop(ISO_8859_1.java:238)
     >>>>        at
     >>
    java.base/sun.nio.cs.ISO_8859_1$Encoder.encodeLoop(ISO_8859_1.java:258)
     >>>>        at
     >>
    java.base/java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:585)
     >>>>        ... 30 more
     >>>> Using:
     >>>> Apache Maven 3.9.4 (dfbb324ad4a7c8fb0bf182e6d91b0ae20e3d2dd9)
     >>>> Maven home: C:\java\apache-maven-3.9.4
     >>>> Java version: 17.0.8, vendor: Eclipse Adoptium, runtime:
    C:\Program
     >> Files\Eclipse Adoptium\jdk-17.0.8.7-hotspot
     >>>> Default locale: en_US, platform encoding: Cp1252
     >>>> OS name: "windows 10", version: "10.0", arch: "amd64", family:
    "windows"
     >>>> Gary
     >>>> On 2023/09/11 07:42:10 Jeff MAURY wrote:
     >>>>> +1.
     >>>>>
     >>>>> 2 remarks:
     >>>>>
     >>>>>   - Does not build with Java 17
     >>>>>   - Build is failing on Windows
     >>>>>
     >>>>>
     >>>>> On Mon, Sep 11, 2023 at 8:11 AM Guillaume Nodet
    <gno...@apache.org <mailto:gno...@apache.org>>
     >> wrote:
     >>>>>
     >>>>>> +1
     >>>>>>
     >>>>>> Le jeu. 7 sept. 2023 à 05:30, Emmanuel Lecharny
    <elecha...@apache.org <mailto:elecha...@apache.org>>
     >> a
     >>>>>> écrit :
     >>>>>>
     >>>>>>> hi!
     >>>>>>>
     >>>>>>> WARNING: there are 3 votes to cast!
     >>>>>>>
     >>>>>>>
     >>>>>>> This is a vote for a triple release:
     >>>>>>> * MINA 2.2.3
     >>>>>>> * MINA 2.1.8
     >>>>>>> * MINA 2.0.25
     >>>>>>>
     >>>>>>> Those versions are fixing a Datagram session bug:
     >>>>>>> DIRMINA-996:IoSessionRecycler RemoteAddress Collision
     >>>>>>> DIRMINA-1172:Multiple DatagramAcceptors and the creation of
    a session
     >>>>>>> object
     >>>>>>>
     >>>>>>>
     >>>>>>>
     >>>>>>> Temporary tags have been created (they can be removed if
    the vote is
     >> not
     >>>>>>> approved) :
     >>>>>>>
     >>>>>>> * MINA 2.2.3:
     >>>>>>>
     >>>>>>>
     >>>>>>
     >>
    https://github.com/apache/mina/commit/906884d52990b4fce119c462791abf1a5b577a83 
<https://github.com/apache/mina/commit/906884d52990b4fce119c462791abf1a5b577a83>
     >>>>>>> * MINA 2.1.8:
     >>>>>>>
     >>>>>>>
     >>>>>>
     >>
    https://github.com/apache/mina/commit/c7f164cbeecedb4a4e32ba798e7cf435acdc471a 
<https://github.com/apache/mina/commit/c7f164cbeecedb4a4e32ba798e7cf435acdc471a>
     >>>>>>> * MINA 2.0.25:
     >>>>>>>
     >>>>>>>
     >>>>>>
     >>
    https://github.com/apache/mina/commit/38ca5a9eb01461a7212b3904ff5010d0364d2f41 
<https://github.com/apache/mina/commit/38ca5a9eb01461a7212b3904ff5010d0364d2f41>
     >>>>>>>
     >>>>>>>
     >>>>>>>
     >>>>>>>
     >>>>>>> The final artifacts are stored in a staging repository:
     >>>>>>> * MINA 2.2.3:
     >>>>>>>
     >>
    https://repository.apache.org/content/repositories/orgapachemina-1086 
<https://repository.apache.org/content/repositories/orgapachemina-1086>
     >>>>>>> * MINA 2.1.8:
     >>>>>>>
     >>
    https://repository.apache.org/content/repositories/orgapachemina-1085 
<https://repository.apache.org/content/repositories/orgapachemina-1085>
     >>>>>>> * MINA 2.0.25:
     >>>>>>>
     >>
    https://repository.apache.org/content/repositories/orgapachemina-1087 
<https://repository.apache.org/content/repositories/orgapachemina-1087>
     >>>>>>>
     >>>>>>>
     >>>>>>>
     >>>>>>> The distributions are available for download on :
     >>>>>>> * MINA 2.2.3:
    https://dist.apache.org/repos/dist/dev/mina/mina/2.2.3
    <https://dist.apache.org/repos/dist/dev/mina/mina/2.2.3>
     >>>>>>> * MINA 2.1.8:
    https://dist.apache.org/repos/dist/dev/mina/mina/2.1.8
    <https://dist.apache.org/repos/dist/dev/mina/mina/2.1.8>
     >>>>>>> * MINA 2.0.25:
     >> https://dist.apache.org/repos/dist/dev/mina/mina/2.0.25
    <https://dist.apache.org/repos/dist/dev/mina/mina/2.0.25>
     >>>>>>>
     >>>>>>>
     >>>>>>> Let us vote :
     >>>>>>> [ ] +1 | Release MINA 2.2.3
     >>>>>>> [ ] ± | Abstain
     >>>>>>> [ ] -1 | Do *NOT* release MINA 2.2.3
     >>>>>>>
     >>>>>>> [ ] +1 | Release MINA 2.1.8
     >>>>>>> [ ] ± | Abstain
     >>>>>>> [ ] -1 | Do *NOT* release MINA 2.1.8
     >>>>>>>
     >>>>>>>
     >>>>>>> [ ] +1 | Release MINA 2.0.25
     >>>>>>> [ ] ± | Abstain
     >>>>>>> [ ] -1 | Do *NOT* release MINA 2.0.25
     >>>>>>>
     >>>>>>>
     >>>>>>> --
     >>>>>>> Regards,
     >>>>>>> Cordialement,
     >>>>>>> Emmanuel Lécharny
     >>>>>>> www.iktek.com <http://www.iktek.com>
     >>>>>>>
     >>>>>>>
    ---------------------------------------------------------------------
     >>>>>>> To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org
    <mailto:dev-unsubscr...@mina.apache.org>
     >>>>>>> For additional commands, e-mail: dev-h...@mina.apache.org
    <mailto:dev-h...@mina.apache.org>
     >>>>>>>
     >>>>>>>
     >>>>>>
     >>>>>> --
     >>>>>> ------------------------
     >>>>>> Guillaume Nodet
     >>>>>>
     >>>>>
     >>>>>
     >>>>> --
     >>>>> "Legacy code" often differs from its suggested alternative by
    actually
     >>>>> working and scaling.
     >>>>> - Bjarne Stroustrup
     >>>>>
     >>>>> http://www.jeffmaury.com <http://www.jeffmaury.com>
     >>>>> http://riadiscuss.jeffmaury.com <http://riadiscuss.jeffmaury.com>
     >>>>> http://www.twitter.com/jeffmaury
    <http://www.twitter.com/jeffmaury>
     >>>>>
     >>>>
    ---------------------------------------------------------------------
     >>>> To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org
    <mailto:dev-unsubscr...@mina.apache.org>
     >>>> For additional commands, e-mail: dev-h...@mina.apache.org
    <mailto:dev-h...@mina.apache.org>
     >>>
     >>> --
     >>> *Emmanuel Lécharny - CTO* 205 Promenade des Anglais – 06200 NICE
     >>> T. +33 (0)4 89 97 36 50
     >>> P. +33 (0)6 08 33 32 61
     >>> emmanuel.lecha...@busit.com
    <mailto:emmanuel.lecha...@busit.com> https://www.busit.com/
    <https://www.busit.com/>
     >>>
     >>>
    ---------------------------------------------------------------------
     >>> To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org
    <mailto:dev-unsubscr...@mina.apache.org>
     >>> For additional commands, e-mail: dev-h...@mina.apache.org
    <mailto:dev-h...@mina.apache.org>
     >>>
     >>
     >>
     >>
    ---------------------------------------------------------------------
     >> To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org
    <mailto:dev-unsubscr...@mina.apache.org>
     >> For additional commands, e-mail: dev-h...@mina.apache.org
    <mailto:dev-h...@mina.apache.org>
     >>
     >>

--
*Emmanuel Lécharny - CTO* 205 Promenade des Anglais – 06200 NICE
T. +33 (0)4 89 97 36 50
P. +33 (0)6 08 33 32 61
emmanuel.lecha...@busit.com https://www.busit.com/


--
*Emmanuel Lécharny - CTO* 205 Promenade des Anglais – 06200 NICE
T. +33 (0)4 89 97 36 50
P. +33 (0)6 08 33 32 61
emmanuel.lecha...@busit.com https://www.busit.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@mina.apache.org
For additional commands, e-mail: dev-h...@mina.apache.org

Reply via email to