Skip to content
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

[ruby - main] Update net-imap → 0.4.0 (unknown) #2591

Merged
merged 1 commit into from
Oct 5, 2023

Conversation

depfu[bot]
Copy link
Contributor

@depfu depfu bot commented Oct 5, 2023

Here is everything you need to know about this upgrade. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ net-imap (~> 0.3.1 → ~> 0.4.0) · Repo

Release Notes

0.4.0

What's Changed

Most notably, support has been added for the SASL-IR, ENABLE, and UTF-8=ACCEPT extensions, and for many SASL mechanisms: EXTERNAL, ANONYMOUS, OAUTHBEARER, SCRAM-SHA-1, and SCRAM-SHA-256.

💥 Breaking changes

  • 💥 ⬆️ Drop v2.6 support; Require v2.7.3; Use "..." arg by @nevans in #89
    The test suite passes under ruby 2.7, although it does print some warnings for experimental pattern matching.
  • 💥 Return an empty array (rather than nil) when the server doesn't send any responses by @nevans in #192
    This can affect list, xlist, getquota, lsub, expunge, uid_expunge, fetch, uid_fetch, store, and uid_store.

✨ Added

Improved IMAP4rev1 protocol and extension support

  • ✨ Add missing "location" BODYSTRUCTURE extension data by @nevans in #113
  • ✨ Cache server capabilities and add #capable?(name) by @nevans in #156
  • ✨ Add support for ENABLE (RFC 5161) by @arnt in #98
  • ✨ Parse UTF-8 encoded strings, for UTF8=ACCEPT and IMAP4rev2 by @nevans in #111
    • Minor bits for UTF8=ACCEPT by @arnt in #114
  • ✨🔒 Add SASL-IR support by @nevans in #90
    • 🐛 Fix empty SASL-IR to send "=" by @nevans in #180

Improved SASL support

  • 🔒 Add SASL OAUTHBEARER mechanism by @nevans in #171
  • 🔒 Add SASL ANONYMOUS mechanism by @nevans in #169
  • 🔒 Add SASL EXTERNAL mechanism by @nevans in #170
  • ✨ Make SASL.authenticator case insensitive by @nevans in #167
    • 🐛 Fix authenticate using Symbol mechanism name by @nevans in #186
  • ✨ Add attr_readers to SASL mechanisms by @nevans in #176
  • ✨ Allow keyword args on all SASL authenticators by @nevans in #177
  • 🔒 Verify SASL authentication has completed by @nevans in #179
  • 🔒 Add SASL SCRAM-SHA-* mechanisms by @nevans in #172
  • 🔒 SASL PLAIN: Raise ArgumentError for conflicts by @nevans in #181
  • ✨ Minor updates to SASL::Authenticators API by @nevans in #184

Improved Net::IMAP client API

  • ✨ Add attr_readers for host and port by @nevans in #92
  • 🧵 New thread-safe API for #responses and add #clear_responses by @nevans in #93
  • ✨ Add greeting code data to #responses by @nevans in #94
  • ✨ Add #capable?(name), #auth_capable?(name), #auth_mechanisms, #capabilities, etc by @nevans in #156
  • 🔒 Add #tls_verified? by @nevans in #91
  • 🔒 Add ssl_ctx and ssl_ctx_params attr readers by @nevans in #174
  • ✨ Add #logout! to combine logout and disconnect by @nevans in #178

StringPrep profiles

  • ✨ Add generic stringprep algorithm and the "trace" profile by @nevans in #101
  • ✨ Add Nameprep stringprep profile by @nevans in #83

🗑️ Deprecated

  • 🗑️ Deprecated #client_thread by @nevans in #93
  • 🗑️🧵 Soft-deprecation of current #responses API by @nevans in #93
    The current API is not thread-safe. It is documented as deprecated, but no warning message is logged yet.
  • 🗑️ Deprecated BodyTypeAttachment and BodyTypeExtension structs @nevans in #113
  • 🗑️ Deprecate backward compatible parameters to new and starttls by @nevans in #175
    Net::IMAP.new uses keyword parameters for its options now.
    Sending a port or an options hash as the second argument is documented as obsolete, but doesn't print warnings yet.
    Any other positional parameters are deprecated and will print warnings.

🐛 Fixed

  • 🐛 Fix NAMESPACE parsing (and other ♻️ refactoring) by @nevans in #112
  • 🐛 Fix BODYSTRUCTURE parser bugs by @nevans in #113
    • More strict about where NIL is not allowed, e.g: number, envelope, and body. Ignoring these uncommon bugs made it difficult to workaround much more common server bugs elsewhere.
    • BodyTypeAttachment and BodyTypeExtension won't be returned any more.
    • Better workaround for multipart parts with... zero parts.
    • 🐛 Fix typo in uncommon BODYSTRUCTURE parsing code by @nevans in #185
  • 🧵 Synchronize @responses update in thread_internal by @nevans in #116
  • 🐛 Add missing lookahead_case_insensitive_string by @nevans in #144
  • Decode UTF-7 more strictly by @nobu in #152
  • Fix for Digest MD5 bad challenges by @nobu in #160
  • 🥅 Work around missing server responses by @nevans in #192

♻️ Changed

  • 🔎 Improve parse error debugging by @nevans in #105
  • 🚚 Move the StringPrep module out of SASL by @nevans in #100
  • ✅ 📈 Move most parser tests to yaml, add more tests, and add parser benchmarks by @nevans in #103
  • 🧪 Add Regexp.linear_time? tests; ⚡✅ Update BEG_REGEXP to pass by @nevans in #145
  • ⚡✅ Update more regexps to run in linear time by @nevans in #147
  • 🧪 Add experimental new FakeServer for tests by @nevans in #157
  • ⏱️ Add Timeout to several existing SSL tests by @nevans in #163
  • ♻️ Use Net::IMAP::FakeServer::TestHelper by @nevans in #164
  • 🚚 Move and rename SASL authenticators by @nevans in #165
  • ♻️ Simplify lazy-loaded SASL::{Name}Authenticator registration by @nevans in #168

📚 Documentation

  • 📚 Add "rake ghpages" for publishing rdoc by @nevans in #102
  • 📚 Auto-deploy GitHub Pages from an action by @nevans in #135
  • 📚 More rdoc updates, all related to capabilities by @nevans in #159
  • SASL doc updates by @nevans in #166
  • 📚 Update SASL docs and add attr_readers by @nevans in #176
  • 📚 Update examples with modern SASL mechanisms by @nevans in #182

Miscellaneous

New Contributors

Full Changelog: v0.3.7...v0.4.0

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)

@depfu depfu bot added the depfu label Oct 5, 2023
@tvdeyen tvdeyen merged commit 2056e77 into main Oct 5, 2023
25 checks passed
@tvdeyen tvdeyen deleted the depfu/update/main/net-imap-0.4.0 branch October 5, 2023 19:50
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.

1 participant