diff --git a/pom.xml b/pom.xml
index 7d92124..fef9fd4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -45,8 +45,18 @@
   </scm>
 
   <properties>
+
+    <!--
+    As discussed on the mailing list, it is fine to maintain at Apache APIs which are also
+    IMPLs such as JavaMail, Activation for instance.
+
+    For APIs only, it's fine to use Eclipse Jakarta equivalent. From a license point of view
+    the EPL is compatible.
+
+    For APIs available in Tomcat such as Servlet, JSP, EL, we want to give Tomcat the priority.
+    -->
     <geronimo-activation_1.1_spec.version>1.1</geronimo-activation_1.1_spec.version>
-    <geronimo-annotation_1.3_spec.version>1.1</geronimo-annotation_1.3_spec.version>
+    <geronimo-annotation_1.3_spec.version>1.2</geronimo-annotation_1.3_spec.version>
     <geronimo-atinject_1.0_spec.version>1.1</geronimo-atinject_1.0_spec.version>
     <geronimo-concurrent_1.0_spec.version>1.0-alpha-1</geronimo-concurrent_1.0_spec.version>
     <geronimo-ejb_3.2_spec.version>1.0-alpha-1</geronimo-ejb_3.2_spec.version>
@@ -54,7 +64,7 @@
     <geronimo-j2ee-deployment_1.1_spec.version>1.1</geronimo-j2ee-deployment_1.1_spec.version>
     <geronimo-j2ee-management_1.1_spec.version>1.0.1</geronimo-j2ee-management_1.1_spec.version>
     <geronimo-jacc_1.4_spec.version>1.0</geronimo-jacc_1.4_spec.version>
-    <geronimo-javamail_1.5_spec.version>1.0.0-SNAPSHOT</geronimo-javamail_1.5_spec.version>
+    <geronimo-javamail_1.4_spec.version>1.7.1</geronimo-javamail_1.4_spec.version>
     <geronimo-jaxb_2.2_spec.version>1.0.1</geronimo-jaxb_2.2_spec.version>
     <geronimo-jaxr_1.0_spec.version>2.1</geronimo-jaxr_1.0_spec.version>
     <geronimo-jaxrpc_1.1_spec.version>2.1</geronimo-jaxrpc_1.1_spec.version>
@@ -66,11 +76,11 @@
     <geronimo-jms_2.0_spec.version>1.0-alpha-2</geronimo-jms_2.0_spec.version>
     <geronimo-jpa_2.2_spec.version>1.0</geronimo-jpa_2.2_spec.version>
     <geronimo-json_1.1_spec.version>1.2</geronimo-json_1.1_spec.version>
-    <geronimo-jsonb_1.0_spec.version>1.2-SNAPSHOT</geronimo-jsonb_1.0_spec.version>
+    <geronimo-jsonb_1.0_spec.version>1.1</geronimo-jsonb_1.0_spec.version>
     <geronimo-jta_1.2_spec.version>1.0-alpha-1</geronimo-jta_1.2_spec.version>
     <geronimo-osgi.version>1.1</geronimo-osgi.version>
     <geronimo-saaj_1.3_spec.version>1.1</geronimo-saaj_1.3_spec.version>
-    <geronimo-security_1.0_spec.version>1.0-SNAPSHOT</geronimo-security_1.0_spec.version>
+    <geronimo-security_1.0_spec.version>1.0</geronimo-security_1.0_spec.version>
     <geronimo-stax-api_1.2_spec.version>1.2</geronimo-stax-api_1.2_spec.version>
     <geronimo-validation_2.0_spec.version>1.0</geronimo-validation_2.0_spec.version>
     <geronimo-ws-metadata_2.0_spec.version>1.1.3</geronimo-ws-metadata_2.0_spec.version>
@@ -350,19 +360,17 @@
       <optional>true</optional>
     </dependency>
 
-    <!-- does not exist until we have an actual release
     <dependency>
       <groupId>org.apache.geronimo.specs</groupId>
-      <artifactId>geronimo-javamail_1.5_spec</artifactId>
-      <version>${geronimo-javamail_1.5_spec.version}</version>
+      <artifactId>geronimo-javamail_1.4_spec</artifactId>
+      <version>${geronimo-javamail_1.4_spec.version}</version>
       <classifier>sources</classifier>
       <optional>true</optional>
     </dependency>
-    -->
     <dependency>
       <groupId>org.apache.geronimo.specs</groupId>
-      <artifactId>geronimo-javamail_1.5_spec</artifactId>
-      <version>${geronimo-javamail_1.5_spec.version}</version>
+      <artifactId>geronimo-javamail_1.4_spec</artifactId>
+      <version>${geronimo-javamail_1.4_spec.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -732,6 +740,8 @@
       <optional>true</optional>
     </dependency>
 
+    <!-- Jakarta APIs -->
+
     <!-- APIs from Tomcat -->
     <dependency>
       <groupId>org.apache.tomcat</groupId>
diff --git a/src/main/filtered-resources/javaee-api-feature.xml b/src/main/filtered-resources/javaee-api-feature.xml
index 7990fe1..94ab7b6 100644
--- a/src/main/filtered-resources/javaee-api-feature.xml
+++ b/src/main/filtered-resources/javaee-api-feature.xml
@@ -19,6 +19,7 @@
 
 <features>
   <feature name="javaee-api" version="${project.version}">
+
     <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo-jta_1.1_spec.version}</bundle>
     <bundle>mvn:org.apache.geronimo.specs/geronimo-activation_1.1_spec/${geronimo-activation_1.1_spec.version}</bundle>
     <bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation_1.1_spec.version}</bundle>
@@ -42,6 +43,8 @@
     <bundle>mvn:org.apache.geronimo.specs/geronimo-validation_1.0_spec/${geronimo-validation_1.0_spec.version}</bundle>
     <bundle>mvn:org.apache.geronimo.specs/geronimo-ws-metadata_2.0_spec/${geronimo-ws-metadata_2.0_spec.version}</bundle>
 
+    <!-- Jakarta APIs -->
+
     <!-- from Tomcat too -->
     <bundle>mvn:org.apache.geronimo.specs/geronimo-servlet_3.0_spec/${geronimo-servlet_3.0_spec.version}</bundle>
     <bundle>mvn:org.apache.geronimo.specs/geronimo-jsp_2.2_spec/${geronimo-jsp_2.2_spec.version}</bundle>
diff --git a/src/main/legal/META-INF/EPL/LICENSE b/src/main/legal/META-INF/EPL/LICENSE
new file mode 100644
index 0000000..e0358f9
--- /dev/null
+++ b/src/main/legal/META-INF/EPL/LICENSE
@@ -0,0 +1,29 @@
+
+    Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.
+   
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+   
+      - Redistributions of source code must retain the above copyright
+        notice, this list of conditions and the following disclaimer.
+   
+      - Redistributions in binary form must reproduce the above copyright
+        notice, this list of conditions and the following disclaimer in the
+        documentation and/or other materials provided with the distribution.
+   
+      - Neither the name of the Eclipse Foundation, Inc. nor the names of its
+        contributors may be used to endorse or promote products derived
+        from this software without specific prior written permission.
+   
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+    IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+    PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+    CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+    EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+    PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+    PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+    LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+    SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/src/main/legal/META-INF/EPL/NOTICE b/src/main/legal/META-INF/EPL/NOTICE
new file mode 100644
index 0000000..d6492f8
--- /dev/null
+++ b/src/main/legal/META-INF/EPL/NOTICE
@@ -0,0 +1,33 @@
+# Notices for Eclipse Project for JAF
+
+This content is produced and maintained by the Eclipse Project for JAF project.
+
+* Project home: https://projects.eclipse.org/projects/ee4j.jaf
+
+## Copyright
+
+All content is the property of the respective authors or their employers. For
+more information regarding authorship of content, please consult the listed
+source code repository logs.
+
+## Declared Project Licenses
+
+This program and the accompanying materials are made available under the terms
+of the Eclipse Distribution License v. 1.0,
+which is available at http://www.eclipse.org/org/documents/edl-v10.php.
+
+SPDX-License-Identifier: BSD-3-Clause
+
+## Source Code
+
+The project maintains the following source code repositories:
+
+* https://github.com/eclipse-ee4j/jaf
+
+## Third-party Content
+
+This project leverages the following third party content.
+
+JUnit (4.12)
+
+* License: Eclipse Public License
