Skip to content

JAMES-4133 POC RFC-6532 Support for i8n emails#2724

Draft
chibenwa wants to merge 6 commits intomasterfrom
rfc-6532
Draft

JAMES-4133 POC RFC-6532 Support for i8n emails#2724
chibenwa wants to merge 6 commits intomasterfrom
rfc-6532

Conversation

@chibenwa
Copy link
Copy Markdown
Contributor

@chibenwa chibenwa commented May 16, 2025

CF https://issues.apache.org/jira/browse/JAMES-4133

Fails lamentably:

jakarta.mail.internet.AddressException: Invalid character in local-part (user account) at position 4 in 'ren��@james.org'
	at org.apache.james.core.MailAddress.parseUnquotedLocalPart(MailAddress.java:561)
	at org.apache.james.core.MailAddress.parseUnquotedLocalPartOrThrowException(MailAddress.java:272)
	at org.apache.james.core.MailAddress.<init>(MailAddress.java:193)
	at org.apache.james.protocols.smtp.core.RcptCmdHandler.doFilterChecks(RcptCmdHandler.java:157)
	at org.apache.james.protocols.smtp.core.AbstractHookableCmdHandler.onCommand(AbstractHookableCmdHandler.java:72)
	at org.apache.james.protocols.smtp.core.AbstractHookableCmdHandler.onCommand(AbstractHookableCmdHandler.java:50)
	at org.apache.james.protocols.api.handler.CommandDispatcher.dispatchCommandHandlers(CommandDispatcher.java:165)
	at org.apache.james.protocols.api.handler.CommandDispatcher.onLine(CommandDispatcher.java:142)
	at org.apache.james.protocols.netty.BasicChannelInboundHandler.channelRead(BasicChannelInboundHandler.java:196)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
	at io.netty.channel.AbstractChannelHandlerContext.access$600(AbstractChannelHandlerContext.java:61)
	at io.netty.channel.AbstractChannelHandlerContext$7.run(AbstractChannelHandlerContext.java:425)
	at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
	at io.netty.util.concurrent.DefaultEventExecutor.run(DefaultEventExecutor.java:66)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:994)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at java.base/java.lang.Thread.run(Thread.java:1583)

@chibenwa chibenwa added the bug label May 16, 2025
@chibenwa chibenwa changed the title POC RFC-6532 Support for i8n emails JAMES-4133 POC RFC-6532 Support for i8n emails May 16, 2025
@chibenwa
Copy link
Copy Markdown
Contributor Author

I still need to polish it but I believe I made significant progress toward UTF-8 support in James.

The IMAP part of UTF-8 support might need refinement and numerous other tests would need to be written as well as this work being polished...

@arnt
Copy link
Copy Markdown

arnt commented Apr 22, 2026

FYI, I solved the Jakarta problem that bothered this PR. That PR is blocked until I get permission to sign the Eclipse CLA, but I'm sure that won't take long. I'll return to this code now.

@chibenwa
Copy link
Copy Markdown
Contributor Author

Thanks for the heads up and the good work !
I will follow this and adopt release that will ship this change and revive the PR.

@arnt
Copy link
Copy Markdown

arnt commented Apr 22, 2026

@chibenwa can you give me write access to this PR? I have done a little more work (very little to be honest, but I still have half an hour until my wife comes home).

@chibenwa
Copy link
Copy Markdown
Contributor Author

:-( sorry arnt I must confess I don't know how to to that...

Github as far as I know do not have such features and for non James maintainer.

Please PR directly the rfc-6532 branch, I'd happily merge it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants