eclipse-ee4j / angus-mail

Angus Mail
https://eclipse-ee4j.github.io/angus-mail
Other
53 stars 16 forks source link

DSN package in maven repo + incompatibility changed package structure #127

Open demarco88 opened 7 months ago

demarco88 commented 7 months ago

Hi. The DSN package of the (since years, why....whatever...it's working good) "experimental" DSN package is not actualized. There seams to be a new version is released with angus mail 2.0.2 (see: https://eclipse-ee4j.github.io/angus-mail/ for direct download) but it isn't found at https://mvnrepository.com/artifact/com.sun.mail/dsn. Futhermore there comes a great inkompatibility at runtime with the new package. The package name has changed from com.sun.mail.dsn. to org.eclipse.angus.mail.dsn. Would be nice to document this in the release notes. thx and best regards Marco

jmehrens commented 7 months ago

Would be nice to document this in the release notes.

Package renaming is documented in: CHANGES.txt

Reason for change explained in the COMPAT.txt.

It does appear that there are references to old package names in doc/src/main/resources/docs/NOTES.txt

lukasj commented 7 months ago

see January 24, 2023 - Angus Mail 2.0.0 Final Release entry under the Latest news section on the project web page at: https://eclipse-ee4j.github.io/angus-mail/ or compatibility notes (linked from the Downloads section)

lukasj commented 7 months ago

It does appear that there are references to old package names in doc/src/main/resources/docs/NOTES.txt

oops, right, this needs an update

jmehrens commented 7 months ago

I should have been more clear on that there is some work to do. Here is a basic search but not all of this will change:

:~/eclipse-workspace/angus-mail$ grep -Rnw '.' -e 'com.sun.mail'
./www/FAQ.html:94:        complaints about classes that can't be found, such as <code>com.sun.mail</code>
./www/FAQ.html:949:        com.sun.mail.smtp package</A>.
./www/FAQ.html:1030:java.lang.VerifyError:(Class:com/sun/mail/pop3/POP3Store,
./www/FAQ.html:1171:        complaints about classes that can't be found, such as <code>com.sun.mail</code>
./www/FAQ.html:2986:        com.sun.mail.smtp package</A> describe several methods to do this.
./www/FAQ.html:3106:    Alternatively, each thread can use the <code>com.sun.mail.SMTPMessage</code>
./www/FAQ.html:3166:    <A HREF="docs/api/org.eclipse.angus.mail/org/eclipse/angus/mail/smtp/package-summary.html">com.sun.mail.smtp</A>
./www/FAQ.html:3329:    the <CODE>com.sun.mail.pop3</CODE> package documentation for details.
./www/FAQ.html:3336:    so the RECENT flag is of no use. The <CODE>com.sun.mail.pop3</CODE> package
./www/FAQ.html:3358:    <code>com.sun.mail.pop3</code> package documentation
./www/FAQ.html:3393:com.sun.mail.pop3.POP3Message.getContentStream(POP3Message.java:115)
./doc/src/main/resources/docs/NOTES.txt:52:com.sun.mail.gimap package for details.  Note that the gimap.jar file
./doc/src/main/resources/docs/NOTES.txt:66:the com.sun.mail.imap package for the properties required to enable and
./doc/src/main/resources/docs/NOTES.txt:77:com.sun.mail.dsn package for more details.
./doc/src/main/resources/docs/SSLNOTES.txt:133:The class com.sun.mail.util.MailSSLSocketFactory can be used as a
./doc/src/main/resources/docs/COMPAT.txt:98:    - com.sun.mail:jakarta.mail - complete JavaMail jar file
./doc/src/main/resources/docs/COMPAT.txt:130:- com.sun.mail.util.logging no longer included in mailapi.jar.
./doc/src/main/resources/docs/COMPAT.txt:132:   If you're using mailapi.jar and depend on the com.sun.mail.util.logging
./doc/src/main/resources/docs/COMPAT.txt:426:- Quota class moved from com.sun.mail.imap to javax.mail
./doc/src/main/resources/docs/COMPAT.txt:429:   IMAP-specific classes in the com.sun.mail.imap package.  If you've
./doc/src/main/resources/docs/COMPAT.txt:434:- getProtocol method removed from com.sun.mail.imap.IMAPFolder
./doc/src/main/resources/README.md:45:Changes `com.sun.mail` module name prefix
./doc/src/main/resources/README.md:47:`com.sun.mail` to `org.eclipse.angus.mail`.
./doc/target/site/docs/NOTES.txt:52:com.sun.mail.gimap package for details.  Note that the gimap.jar file
./doc/target/site/docs/NOTES.txt:66:the com.sun.mail.imap package for the properties required to enable and
./doc/target/site/docs/NOTES.txt:77:com.sun.mail.dsn package for more details.
./doc/target/site/docs/SSLNOTES.txt:133:The class com.sun.mail.util.MailSSLSocketFactory can be used as a
./doc/target/site/docs/COMPAT.txt:98:   - com.sun.mail:jakarta.mail - complete JavaMail jar file
./doc/target/site/docs/COMPAT.txt:130:- com.sun.mail.util.logging no longer included in mailapi.jar.
./doc/target/site/docs/COMPAT.txt:132:  If you're using mailapi.jar and depend on the com.sun.mail.util.logging
./doc/target/site/docs/COMPAT.txt:426:- Quota class moved from com.sun.mail.imap to javax.mail
./doc/target/site/docs/COMPAT.txt:429:  IMAP-specific classes in the com.sun.mail.imap package.  If you've
./doc/target/site/docs/COMPAT.txt:434:- getProtocol method removed from com.sun.mail.imap.IMAPFolder
./doc/target/site/README.md:45:Changes `com.sun.mail` module name prefix
./doc/target/site/README.md:47:`com.sun.mail` to `org.eclipse.angus.mail`.
./providers/angus-mail/src/test/java/org/eclipse/angus/mail/test/TestServer.java:40: * mail/src/test/resources/com/sun/mail/test/keystore.jks.
./providers/jakarta.mail/pom.xml:150:                                        <replacetoken><![CDATA[com.sun.mail]]></replacetoken>
./providers/jakarta.mail/pom.xml:157:                                        <replacetoken><![CDATA[com.sun.mail]]></replacetoken>
./providers/jakarta.mail/target/antrun/build-main.xml:6:        <replacetoken>com.sun.mail</replacetoken>
./providers/jakarta.mail/target/antrun/build-main.xml:12:        <replacetoken>com.sun.mail</replacetoken>

Some exceptions I see are:

  1. www/FAQ.html:1030:java.lang.VerifyError:(Class:com/sun/mail/pop3/POP3Store, needs review. This is a really specific error case being targeted here so if the failure doesn't actual transfer to Angus Mail in the same type of verify error then might need to just drop that entry. Otherwise update the package name.
  2. COMPAT.txt talking about changes that predate AngusMail. Perhaps those changes need to be dropped in favor of reference to go look at COMPAT.txt JakartaMail for older changes.
  3. Obviously we need to keep changes were we are talking about the move from old to new package name.
  4. I didn't review anything on pom.xml or build-main.xml at this time.