-
Notifications
You must be signed in to change notification settings - Fork 935
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add configurable mime boundary generator #1481
base: master
Are you sure you want to change the base?
Add configurable mime boundary generator #1481
Conversation
Hi there @dugancathal this is excellent, though I think we can make this change to the random tag generator to remove the = sign from it as well. Could you please modify the random_tag method to exclude |
Hey @mikel! Thanks for the review. I'm not 100% sure I follow, so I'd like to clarify. Are you looking for me to:
Looking at the code, I'm not sure that [2] would do anything as all the components of that string are numeric and will not include equal signs ( Just lemme know which you're lookin' for and I'll get this updated for release. Cheers! |
Hey there @dugancathal - you mention the reason you created the custom mime boundry generator capability is because Mail is including a So what I'm proposing is:
Make sense? |
5d573f9
to
414b98f
Compare
Makes sense, @mikel. Made those changes. Lemme know if this needs any other work. :) |
OK thanks @dugancathal - any chance you could look into the spec failures? |
AFAICT the failures are all in the Ruby setup step. This should have been solved by the fix to install libyaml-dev (not needed for JRuby, hence they succeeded). |
Hey folks, sorry for the radio silence on this. Is there anything y'all need from me? Or is it possible for me to rebase and re-run CI somehow to see if this is still an issue? |
It would be helpful if you could trigger a CI rebuild by making a trivial change. |
261a310
to
e9f0a99
Compare
I think there needs to be a test to show that the original boundary can still be generated and used. Also: if certain characters need to be quoted, who is responsible for doing this? |
Hello!
This PR aims to add the ability to customize the generator used for
mime-boundaries when creating mails.
Recently, after converting our application to use ActionMailer (and thus, Mail),
my team found that several of our customers stopped receiving our emails due to
"malformed structures". Upon digging in, it appears their systems may be
flagging our emails because of the new email's mime-boundary containing an equal
sign (
=
). While the RFC states that this character is valid in the boundary(provided it's quoted), we have found a couples instances noting that it's
merely safer to not include them at all.
Example 1
Example 2
Rather than request a change to the boundary generation algorithm here, we
instead make the algorithm configurable to hopefully prevent any impact to
current consumers.
Feedback is, of course, welcome on the code structures presented here and/or any
other alternative options that may help us diagnose the issue.
Thank you!
Tested on Ruby 3.0.2, 2.7.3, and 2.6.5