Discussion:
[jetty-users] Jetty 9.4.13 Released - Supporting JDK 11 bytecode and JPMS
Joakim Erdfelt
2018-11-12 19:23:50 UTC
Permalink
The Jetty team is happy to announce the immediate availability of a newest
release for the Eclipse Jetty 9.4.x branch.

Jetty 9.4.13 includes a significant number of bug fixes and improvements
surrounding support for Java 11 runtime and bytecode.
This release also updates ASM to version 7.0 to support Java 11 runtimes
and bytecode.
This has a side effect that Apache Aries SpiFly users will need to upgrade
their usage of SpiFly to version 1.1 and ASM 7 as well.
Users on Java 11 runtimes and users of HTTP/2 are encouraged to upgrade as
soon as they are able.

List of Changes:

-
https://github.com/eclipse/jetty.project/releases/tag/jetty-9.4.13.v20181111


This release available on the Eclipse Jetty project download page or from
the Maven Central repository:

- Eclipse: https://www.eclipse.org/jetty/download.html
- Maven Central: http://central.maven.org/maven2/org/eclipse/jetty/


Documentation for this release can be found on the Eclipse Jetty project
site:

- https://www.eclipse.org/jetty/documentation/


If you find any issues with this release, or if you want to suggest future
enhancements, please file an issue on the Jetty GitHub page:

- https://github.com/eclipse/jetty.project/issues/new


Commercial production and development support for Jetty is offered through
Webtide (www.webtide.com). Please contact us for more information or email
***@webtide.com to discuss your specific needs.

Best Regards,

The Jetty Development Team
Steven Schlansker
2018-11-12 23:19:50 UTC
Permalink
Hi Joakim,

Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact may have been left behind.

According to Maven Central,

org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111

org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830

I apologize if this is due to impatience coupled with inconsistent mirroring delays or some other technical glitch, but it sure looks like the `jetty-bom` artifact may not have been released.
The Jetty team is happy to announce the immediate availability of a newest release for the Eclipse Jetty 9.4.x branch.
...
Joakim Erdfelt
2018-11-13 00:45:03 UTC
Permalink
You are absolutely right, the jetty-bom is missing. :-(

This is because the jetty-bom is a bastard module that is impossible to
play nice within the maven, all plugins refuse to updates the versions
within it, as it's not quite within the reactor, nor capable of
participating within the normal build hierarchy due to the inane rules on
boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5

Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we
cannot touch that tag (as they are referenced within the jar artifacts
themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort
out (up to a week).

Joakim Erdfelt / ***@webtide.com

On Mon, Nov 12, 2018 at 5:19 PM Steven Schlansker <
Post by Steven Schlansker
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact
may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent
mirroring delays or some other technical glitch, but it sure looks like the
`jetty-bom` artifact may not have been released.
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a
newest release for the Eclipse Jetty 9.4.x branch.
Post by Joakim Erdfelt
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Joakim Erdfelt
2018-11-13 01:15:02 UTC
Permalink
OK, so I think I lucked out, both the oss.sonatype.org and git gods were
smiling on me tonight.
In this situation the jetty-bom-9.4.13.v20181111.pom was present on the
staging repository, but the xml was bad and referenced 9.4.13-SNAPSHOT
(ugh. just like the git tag link shows).
It seems that the oss.sonatype.org release process filtered it out and
didn't attempt to cache it locally. Which helped greatly this time.
The last time this happened, oss.sonatype.org and maven central disagreed
on what the state of that particular pom artifact was.
It went smoother then I expected for the process this time. (no tag tho,
not sure it's need for this minor bump
<https://github.com/eclipse/jetty.project/commit/22484a18ce3ff7d04e0248e498cfc36487bb24ac>
)

Keep an eye out on maven central for it.
Post by Joakim Erdfelt
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to
play nice within the maven, all plugins refuse to updates the versions
within it, as it's not quite within the reactor, nor capable of
participating within the normal build hierarchy due to the inane rules on
boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we
cannot touch that tag (as they are referenced within the jar artifacts
themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort
out (up to a week).
On Mon, Nov 12, 2018 at 5:19 PM Steven Schlansker <
Post by Steven Schlansker
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact
may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent
mirroring delays or some other technical glitch, but it sure looks like the
`jetty-bom` artifact may not have been released.
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a
newest release for the Eclipse Jetty 9.4.x branch.
Post by Joakim Erdfelt
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Filipe Sousa
2018-11-13 11:23:45 UTC
Permalink
Hi,

Not sure I understand the problem with the BOM. Adding a parent to the jetty-bom like you do with the other modules and use flatten-maven-plugin to clean up the BOM should work.

diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml
index abb972743e..0c4beadb73 100644
--- a/jetty-bom/pom.xml
+++ b/jetty-bom/pom.xml
@@ -1,8 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <groupId>org.eclipse.jetty</groupId>
+ <parent>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-project</artifactId>
+ <version>9.4.14-SNAPSHOT</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jetty-bom</artifactId>
- <version>9.4.14-SNAPSHOT</version>
<name>Jetty :: Bom</name>
<description>Jetty BOM artifact</description>
<url>http://www.eclipse.org/jetty</url>
@@ -87,6 +90,40 @@
</plugin>
</plugins>
</pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <configuration>
+ <outputDirectory>${project.build.directory}</outputDirectory>
+ <flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
+ <flattenMode>oss</flattenMode>
+ <updatePomFile>true</updatePomFile>
+ <embedBuildProfileDependencies>true</embedBuildProfileDependencies>
+ <pomElements>
+ <build>remove</build>
+ <dependencyManagement>keep</dependencyManagement>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <phase>clean</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>

<dependencyManagement>
Post by Joakim Erdfelt
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to play nice within the maven, all plugins refuse to updates the versions within it, as it's not quite within the reactor, nor capable of participating within the normal build hierarchy due to the inane rules on boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5 <https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5>
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we cannot touch that tag (as they are referenced within the jar artifacts themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort out (up to a week).
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent mirroring delays or some other technical glitch, but it sure looks like the `jetty-bom` artifact may not have been released.
The Jetty team is happy to announce the immediate availability of a newest release for the Eclipse Jetty 9.4.x branch.
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users <https://www.eclipse.org/mailman/listinfo/jetty-users>
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Olivier Lamy
2018-11-13 11:29:24 UTC
Permalink
Hi
You should read the discussion here
https://github.com/eclipse/jetty.project/issues/1527
Cheers
Olivier
Post by Filipe Sousa
Hi,
Not sure I understand the problem with the BOM. Adding a parent to the
jetty-bom like you do with the other modules and use flatten-maven-plugin
to clean up the BOM should work.
diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml
index abb972743e..0c4beadb73 100644
--- a/jetty-bom/pom.xml
+++ b/jetty-bom/pom.xml
@@ -1,8 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
">
- <groupId>org.eclipse.jetty</groupId>
+ <parent>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-project</artifactId>
+ <version>9.4.14-SNAPSHOT</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jetty-bom</artifactId>
- <version>9.4.14-SNAPSHOT</version>
<name>Jetty :: Bom</name>
<description>Jetty BOM artifact</description>
<url>http://www.eclipse.org/jetty</url>
@@ -87,6 +90,40 @@
</plugin>
</plugins>
</pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <configuration>
+ <outputDirectory>${project.build.directory}</outputDirectory>
+ <flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
+ <flattenMode>oss</flattenMode>
+ <updatePomFile>true</updatePomFile>
+
<embedBuildProfileDependencies>true</embedBuildProfileDependencies>
+ <pomElements>
+ <build>remove</build>
+ <dependencyManagement>keep</dependencyManagement>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <phase>clean</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>
<dependencyManagement>
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to
play nice within the maven, all plugins refuse to updates the versions
within it, as it's not quite within the reactor, nor capable of
participating within the normal build hierarchy due to the inane rules on
boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we
cannot touch that tag (as they are referenced within the jar artifacts
themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort
out (up to a week).
On Mon, Nov 12, 2018 at 5:19 PM Steven Schlansker <
Post by Steven Schlansker
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact
may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent
mirroring delays or some other technical glitch, but it sure looks like the
`jetty-bom` artifact may not have been released.
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a
newest release for the Eclipse Jetty 9.4.x branch.
Post by Joakim Erdfelt
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
--
Olivier
Steven Schlansker
2018-11-14 18:40:27 UTC
Permalink
Olivier, Felipe, Joakim:

I’ve read up on the issue a bit and I do wonder if the ‘flatten’ plugin may be exactly what is needed here.

My understanding of the issue as it stands (and please correct me if I’m wrong) is that the `bom` artifact
is stuck in an unpleasant place where it wants to inherit important configuration (release, repos, license, etc)
related to its own release, but doing so also drags dependencyManagement inappropriately into the bom.

To avoid this, we are currently copy+pasting the relevant POM bits between parent and bom, and have some
franken-release process where the release manager can forget to release the bom. This sucks.

The flatten-maven-plugin allows you to selectively transform a POM before publishing it.

So, we could have the bom pom inherit parent, and get the important configuration for the Jetty build to succeed.
It can participate as a full module in the Jetty project with Jetty parent as is desired, which means it also works with the release plugin.

During BOM build, we can invoke the `flatten` plugin as Felipe suggests, and configure it to `keep` the dependencyManagement section as is.
We can also configure it to leave license, developers, whatever is really necessary - and then strip out essentially every other section, especially the parent.

Then, via the 'updatePomFile' configuration, it will replace the bom pom with the flattened and cleaned up version.

This allows us to have our cake (the bom inherits build configuration from parent) and eat it too (without passing it downstream to bom importers).

If this is a fair assessment of the problem as it stands, and you agree the solution sounds workable,
we could open a PR for discussion with Felipe's changes as below.

What do you think?
Hi
You should read the discussion here https://github.com/eclipse/jetty.project/issues/1527
Cheers
Olivier
Hi,
Not sure I understand the problem with the BOM. Adding a parent to the jetty-bom like you do with the other modules and use flatten-maven-plugin to clean up the BOM should work.
diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml
index abb972743e..0c4beadb73 100644
--- a/jetty-bom/pom.xml
+++ b/jetty-bom/pom.xml
@@ -1,8 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <groupId>org.eclipse.jetty</groupId>
+ <parent>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-project</artifactId>
+ <version>9.4.14-SNAPSHOT</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jetty-bom</artifactId>
- <version>9.4.14-SNAPSHOT</version>
<name>Jetty :: Bom</name>
<description>Jetty BOM artifact</description>
<url>http://www.eclipse.org/jetty</url>
@@ -87,6 +90,40 @@
</plugin>
</plugins>
</pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <configuration>
+ <outputDirectory>${project.build.directory}</outputDirectory>
+ <flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
+ <flattenMode>oss</flattenMode>
+ <updatePomFile>true</updatePomFile>
+ <embedBuildProfileDependencies>true</embedBuildProfileDependencies>
+ <pomElements>
+ <build>remove</build>
+ <dependencyManagement>keep</dependencyManagement>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <phase>clean</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>
<dependencyManagement>
Post by Joakim Erdfelt
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to play nice within the maven, all plugins refuse to updates the versions within it, as it's not quite within the reactor, nor capable of participating within the normal build hierarchy due to the inane rules on boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we cannot touch that tag (as they are referenced within the jar artifacts themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort out (up to a week).
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent mirroring delays or some other technical glitch, but it sure looks like the `jetty-bom` artifact may not have been released.
The Jetty team is happy to announce the immediate availability of a newest release for the Eclipse Jetty 9.4.x branch.
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
--
Olivier
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Joakim Erdfelt
2018-11-14 19:02:18 UTC
Permalink
Sounds like you have all the skills to make a PR for this. :-)

It's an interesting concept, and we are currently working on getting 9.4.14
out the door, so that means we can test this theory out soon.

Joakim Erdfelt / ***@webtide.com


On Wed, Nov 14, 2018 at 12:40 PM Steven Schlansker <
I’ve read up on the issue a bit and I do wonder if the ‘flatten’ plugin
may be exactly what is needed here.
My understanding of the issue as it stands (and please correct me if I’m
wrong) is that the `bom` artifact
is stuck in an unpleasant place where it wants to inherit important
configuration (release, repos, license, etc)
related to its own release, but doing so also drags dependencyManagement
inappropriately into the bom.
To avoid this, we are currently copy+pasting the relevant POM bits between
parent and bom, and have some
franken-release process where the release manager can forget to release
the bom. This sucks.
The flatten-maven-plugin allows you to selectively transform a POM before publishing it.
So, we could have the bom pom inherit parent, and get the important
configuration for the Jetty build to succeed.
It can participate as a full module in the Jetty project with Jetty parent
as is desired, which means it also works with the release plugin.
During BOM build, we can invoke the `flatten` plugin as Felipe suggests,
and configure it to `keep` the dependencyManagement section as is.
We can also configure it to leave license, developers, whatever is really
necessary - and then strip out essentially every other section, especially
the parent.
Then, via the 'updatePomFile' configuration, it will replace the bom pom
with the flattened and cleaned up version.
This allows us to have our cake (the bom inherits build configuration from
parent) and eat it too (without passing it downstream to bom importers).
If this is a fair assessment of the problem as it stands, and you agree
the solution sounds workable,
we could open a PR for discussion with Felipe's changes as below.
What do you think?
Post by Olivier Lamy
Hi
You should read the discussion here
https://github.com/eclipse/jetty.project/issues/1527
Post by Olivier Lamy
Cheers
Olivier
Hi,
Not sure I understand the problem with the BOM. Adding a parent to the
jetty-bom like you do with the other modules and use flatten-maven-plugin
to clean up the BOM should work.
Post by Olivier Lamy
diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml
index abb972743e..0c4beadb73 100644
--- a/jetty-bom/pom.xml
+++ b/jetty-bom/pom.xml
@@ -1,8 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
">
Post by Olivier Lamy
- <groupId>org.eclipse.jetty</groupId>
+ <parent>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-project</artifactId>
+ <version>9.4.14-SNAPSHOT</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jetty-bom</artifactId>
- <version>9.4.14-SNAPSHOT</version>
<name>Jetty :: Bom</name>
<description>Jetty BOM artifact</description>
<url>http://www.eclipse.org/jetty</url>
@@ -87,6 +90,40 @@
</plugin>
</plugins>
</pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <configuration>
+ <outputDirectory>${project.build.directory}</outputDirectory>
+ <flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
+ <flattenMode>oss</flattenMode>
+ <updatePomFile>true</updatePomFile>
+
<embedBuildProfileDependencies>true</embedBuildProfileDependencies>
Post by Olivier Lamy
+ <pomElements>
+ <build>remove</build>
+ <dependencyManagement>keep</dependencyManagement>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <phase>clean</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>
<dependencyManagement>
Post by Joakim Erdfelt
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to
play nice within the maven, all plugins refuse to updates the versions
within it, as it's not quite within the reactor, nor capable of
participating within the normal build hierarchy due to the inane rules on
boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5
Post by Olivier Lamy
Post by Joakim Erdfelt
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created
we cannot touch that tag (as they are referenced within the jar artifacts
themselves via both the ref and the commit ids).
Post by Olivier Lamy
Post by Joakim Erdfelt
We cannot release jetty-bom using the normal build tools and processes
now.
Post by Olivier Lamy
Post by Joakim Erdfelt
This will be a manual process, be aware that it can take a while to
sort out (up to a week).
Post by Olivier Lamy
Post by Joakim Erdfelt
On Mon, Nov 12, 2018 at 5:19 PM Steven Schlansker <
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact
may have been left behind.
Post by Olivier Lamy
Post by Joakim Erdfelt
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent
mirroring delays or some other technical glitch, but it sure looks like the
`jetty-bom` artifact may not have been released.
Post by Olivier Lamy
Post by Joakim Erdfelt
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a
newest release for the Eclipse Jetty 9.4.x branch.
Post by Olivier Lamy
Post by Joakim Erdfelt
Post by Joakim Erdfelt
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
Post by Olivier Lamy
Post by Joakim Erdfelt
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
Post by Olivier Lamy
Post by Joakim Erdfelt
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
Post by Olivier Lamy
https://www.eclipse.org/mailman/listinfo/jetty-users
--
Olivier
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
Post by Olivier Lamy
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Steven Schlansker
2018-11-14 21:02:15 UTC
Permalink
Take a look and see if you find any issues :)

https://github.com/eclipse/jetty.project/pull/3114
Post by Joakim Erdfelt
Sounds like you have all the skills to make a PR for this. :-)
It's an interesting concept, and we are currently working on getting 9.4.14 out the door, so that means we can test this theory out soon.
I’ve read up on the issue a bit and I do wonder if the ‘flatten’ plugin may be exactly what is needed here.
My understanding of the issue as it stands (and please correct me if I’m wrong) is that the `bom` artifact
is stuck in an unpleasant place where it wants to inherit important configuration (release, repos, license, etc)
related to its own release, but doing so also drags dependencyManagement inappropriately into the bom.
To avoid this, we are currently copy+pasting the relevant POM bits between parent and bom, and have some
franken-release process where the release manager can forget to release the bom. This sucks.
The flatten-maven-plugin allows you to selectively transform a POM before publishing it.
So, we could have the bom pom inherit parent, and get the important configuration for the Jetty build to succeed.
It can participate as a full module in the Jetty project with Jetty parent as is desired, which means it also works with the release plugin.
During BOM build, we can invoke the `flatten` plugin as Felipe suggests, and configure it to `keep` the dependencyManagement section as is.
We can also configure it to leave license, developers, whatever is really necessary - and then strip out essentially every other section, especially the parent.
Then, via the 'updatePomFile' configuration, it will replace the bom pom with the flattened and cleaned up version.
This allows us to have our cake (the bom inherits build configuration from parent) and eat it too (without passing it downstream to bom importers).
If this is a fair assessment of the problem as it stands, and you agree the solution sounds workable,
we could open a PR for discussion with Felipe's changes as below.
What do you think?
Hi
You should read the discussion here https://github.com/eclipse/jetty.project/issues/1527
Cheers
Olivier
Hi,
Not sure I understand the problem with the BOM. Adding a parent to the jetty-bom like you do with the other modules and use flatten-maven-plugin to clean up the BOM should work.
diff --git a/jetty-bom/pom.xml b/jetty-bom/pom.xml
index abb972743e..0c4beadb73 100644
--- a/jetty-bom/pom.xml
+++ b/jetty-bom/pom.xml
@@ -1,8 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <groupId>org.eclipse.jetty</groupId>
+ <parent>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-project</artifactId>
+ <version>9.4.14-SNAPSHOT</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jetty-bom</artifactId>
- <version>9.4.14-SNAPSHOT</version>
<name>Jetty :: Bom</name>
<description>Jetty BOM artifact</description>
<url>http://www.eclipse.org/jetty</url>
@@ -87,6 +90,40 @@
</plugin>
</plugins>
</pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.1</version>
+ <configuration>
+ <outputDirectory>${project.build.directory}</outputDirectory>
+ <flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
+ <flattenMode>oss</flattenMode>
+ <updatePomFile>true</updatePomFile>
+ <embedBuildProfileDependencies>true</embedBuildProfileDependencies>
+ <pomElements>
+ <build>remove</build>
+ <dependencyManagement>keep</dependencyManagement>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <phase>clean</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
</build>
<dependencyManagement>
Post by Joakim Erdfelt
You are absolutely right, the jetty-bom is missing. :-(
This is because the jetty-bom is a bastard module that is impossible to play nice within the maven, all plugins refuse to updates the versions within it, as it's not quite within the reactor, nor capable of participating within the normal build hierarchy due to the inane rules on boms that force this behavior on the rest of the project.
https://github.com/eclipse/jetty.project/blob/jetty-9.4.13.v20181111/jetty-bom/pom.xml#L5
Unfortunately, now that the tag jetty-9.4.13.v20181111 has been created we cannot touch that tag (as they are referenced within the jar artifacts themselves via both the ref and the commit ids).
We cannot release jetty-bom using the normal build tools and processes now.
This will be a manual process, be aware that it can take a while to sort out (up to a week).
Hi Joakim,
Excited to try Jetty 9.4.13! However, it seems that the `bom` artifact may have been left behind.
According to Maven Central,
org.eclipse.jetty
Artifact ID
jetty-server
Latest Version
9.4.13.v20181111
org.eclipse.jetty
Artifact ID
jetty-bom
Latest Version
9.4.12.v20180830
I apologize if this is due to impatience coupled with inconsistent mirroring delays or some other technical glitch, but it sure looks like the `jetty-bom` artifact may not have been released.
The Jetty team is happy to announce the immediate availability of a newest release for the Eclipse Jetty 9.4.x branch.
...
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
--
Olivier
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
John Gardiner Myers
2018-11-13 04:40:31 UTC
Permalink
I'm not seeing a 9.4.13 jetty-alpn-java-client or jetty-alpn-java-server
artifact in Maven Central. What's up with that?
Greg Wilkins
2018-11-13 11:47:22 UTC
Permalink
Unfortunately the jetty-9.4.13 has introduced a new bug that will call
programmatically added context listeners twice:

- https://github.com/eclipse/jetty.project/issues/3097

While this issue will not affect many users, it is of significant enough
impact for some that we will be building a 9.4.14 release almost
immediately, so non urgent updates can probably be delayed until that is
available.

regards
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a newest
release for the Eclipse Jetty 9.4.x branch.
Jetty 9.4.13 includes a significant number of bug fixes and improvements
surrounding support for Java 11 runtime and bytecode.
This release also updates ASM to version 7.0 to support Java 11 runtimes
and bytecode.
This has a side effect that Apache Aries SpiFly users will need to upgrade
their usage of SpiFly to version 1.1 and ASM 7 as well.
Users on Java 11 runtimes and users of HTTP/2 are encouraged to upgrade as
soon as they are able.
-
https://github.com/eclipse/jetty.project/releases/tag/jetty-9.4.13.v20181111
This release available on the Eclipse Jetty project download page or from
- Eclipse: https://www.eclipse.org/jetty/download.html
- Maven Central: http://central.maven.org/maven2/org/eclipse/jetty/
Documentation for this release can be found on the Eclipse Jetty project
- https://www.eclipse.org/jetty/documentation/
If you find any issues with this release, or if you want to suggest future
- https://github.com/eclipse/jetty.project/issues/new
Commercial production and development support for Jetty is offered through
Webtide (www.webtide.com). Please contact us for more information or
Best Regards,
The Jetty Development Team
_______________________________________________
jetty-dev mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-dev
--
Greg Wilkins <***@webtide.com> CTO http://webtide.com
Joakim Erdfelt
2018-11-13 12:13:56 UTC
Permalink
We have other reports of missing 9.4.13.v20181111 artifacts on maven
central.
(Geez, what happened to the oss.sonatype.org -> maven sync??)

So far ...

org.eclipse.jetty:jetty-alpn-java-server
org.eclipse.jetty:jetty-alpn-java-client

We are going to attempt to identify any others and manually correct those.
Post by Greg Wilkins
Unfortunately the jetty-9.4.13 has introduced a new bug that will call
- https://github.com/eclipse/jetty.project/issues/3097
While this issue will not affect many users, it is of significant enough
impact for some that we will be building a 9.4.14 release almost
immediately, so non urgent updates can probably be delayed until that is
available.
regards
Post by Joakim Erdfelt
The Jetty team is happy to announce the immediate availability of a
newest release for the Eclipse Jetty 9.4.x branch.
Jetty 9.4.13 includes a significant number of bug fixes and improvements
surrounding support for Java 11 runtime and bytecode.
This release also updates ASM to version 7.0 to support Java 11 runtimes
and bytecode.
This has a side effect that Apache Aries SpiFly users will need to
upgrade their usage of SpiFly to version 1.1 and ASM 7 as well.
Users on Java 11 runtimes and users of HTTP/2 are encouraged to upgrade
as soon as they are able.
-
https://github.com/eclipse/jetty.project/releases/tag/jetty-9.4.13.v20181111
This release available on the Eclipse Jetty project download page or from
- Eclipse: https://www.eclipse.org/jetty/download.html
- Maven Central: http://central.maven.org/maven2/org/eclipse/jetty/
Documentation for this release can be found on the Eclipse Jetty project
- https://www.eclipse.org/jetty/documentation/
If you find any issues with this release, or if you want to suggest
- https://github.com/eclipse/jetty.project/issues/new
Commercial production and development support for Jetty is offered
through Webtide (www.webtide.com). Please contact us for more
Best Regards,
The Jetty Development Team
_______________________________________________
jetty-dev mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-dev
--
_______________________________________________
jetty-users mailing list
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://www.eclipse.org/mailman/listinfo/jetty-users
Loading...