Repository: duesee/imap-codec (language: rust)

Issue:
build: cleanly forward features to `imap-types`



Discussion / hints:

Fix patch:
diff --git a/imap-codec/Cargo.toml b/imap-codec/Cargo.toml
index 6745cda8..b5f81e84 100644
--- a/imap-codec/Cargo.toml
+++ b/imap-codec/Cargo.toml
@@ -3,7 +3,7 @@ name = "imap-codec"
 description = "Rock-solid and complete codec for IMAP"
 keywords = ["email", "imap", "codec", "parser"]
 categories = ["email", "parser-implementations", "encoding", "network-programming"]
-version = "2.0.0-alpha.3"
+version = "2.0.0-alpha.4"
 authors = ["Damian Poddebniak <poddebniak@mailbox.org>"]
 repository = "https://github.com/duesee/imap-codec"
 license = "MIT OR Apache-2.0"
@@ -14,23 +14,10 @@ exclude = [
 
 [features]
 default = ["quirk"]
+
 # Expose internal parsers for fuzzing
 fuzz = []
 
-# <Forward to imap-types>
-serde = ["imap-types/serde"]
-
-# IMAP
-starttls = ["imap-types/starttls"]
-
-# IMAP Extensions
-ext_condstore_qresync = ["imap-types/ext_condstore_qresync"]
-ext_id = ["imap-types/ext_id"]
-ext_login_referrals = ["imap-types/ext_login_referrals"]
-ext_mailbox_referrals = ["imap-types/ext_mailbox_referrals"]
-ext_metadata = ["imap-types/ext_metadata"]
-# </Forward to imap-types>
-
 # IMAP quirks
 #
 # These features bypass interoperability issues to allow safe processing of *almost* correct message.
@@ -41,27 +28,32 @@ quirk = [
     "quirk_rectify_numbers",
     "quirk_trailing_space"
 ]
-
 # Make `\r` in `\r\n` optional.
 quirk_crlf_relaxed = []
 # Encode `A ID ()` as `A ID NIL`
-# Observed in ...
-# * GMX
-# * Microsoft Exchange
 quirk_id_empty_to_nil = []
 # Add missing `text` by adding [" "] "<missing text>".
-# Observed in ...
-# * Gmail `* OK [HIGHESTMODSEQ <n>]\r\n`
 quirk_missing_text = []
 # Rectify (invalid) numbers.
-# Observed in ...
-# * Dovecot (`-1`)
 quirk_rectify_numbers = []
 # Accept a trailing space in `STATUS` data response.
-# Observed in ...
-# * Microsoft Exchange `* STATUS INBOX (MESSAGES 100 UNSEEN 0) \n\n`
 quirk_trailing_space = []
 
+# <Forward to imap-types>
+arbitrary = ["imap-types/arbitrary"]
+arbitrary_simplified = ["imap-types/arbitrary_simplified"]
+serde = ["imap-types/serde"]
+tag_generator = ["imap-types/tag_generator"]
+
+# IMAP
+starttls = ["imap-types/starttls"]
+ext_condstore_qresync = ["imap-types/ext_condstore_qresync"]
+ext_id = ["imap-types/ext_id"]
+ext_login_referrals = ["imap-types/ext_login_referrals"]
+ext_mailbox_referrals = ["imap-types/ext_mailbox_referrals"]
+ext_metadata = ["imap-types/ext_metadata"]
+# </Forward to imap-types>
+
 [dependencies]
 abnf-core = "0.6.0"
 base64 = { version = "0.22", default-features = false, features = ["alloc"] }
diff --git a/imap-types/Cargo.toml b/imap-types/Cargo.toml
index 5544d1bc..b319894a 100644
--- a/imap-types/Cargo.toml
+++ b/imap-types/Cargo.toml
@@ -20,8 +20,6 @@ tag_generator = ["dep:rand"]
 
 # IMAP
 starttls = []
-
-# IMAP Extensions
 ext_condstore_qresync = []
 ext_id = []
 ext_login_referrals = []


Test patch: