Update bitflags to 2.7.0
Test: m
Change-Id: Ia361485872605bc24f2c665736c08d9f36bf26d4
diff --git a/crates/bitflags/.android-checksum.json b/crates/bitflags/.android-checksum.json
index feaa531..cc854d0 100644
--- a/crates/bitflags/.android-checksum.json
+++ b/crates/bitflags/.android-checksum.json
@@ -1 +1 @@
-{"package":null,"files":{".cargo-checksum.json":"340b17e46fea0170842dccfa0339bcb50271e5c516e664c9edaf6dc147993988","Android.bp":"131a767bcc4a59a5cfcf36673fe4c8841957c1e2b6d60e1002c5134f6bf6db0c","CHANGELOG.md":"5e0f6921421101104d88e8797a2ce6a621b9503e681573a24278d3a3596acf5b","CODE_OF_CONDUCT.md":"4063df77c169eee901088338d4c4fdb1523469263a6e4ab46e2936d9ed1d8287","CONTRIBUTING.md":"eefc979a5fed613f39b33128b1a3acdb31bc12fbd2aa70bc0bd37afe9d0c4263","Cargo.lock":"d4e6fabb5fc6102d01483b6d076ba9efc0836ea614f4272a9e3d2277a40e4dcf","Cargo.toml":"1320ac34c24b7f6d7bbcd7f9afc61987c9d51ee84e215beeabe209bfe8760bc1","LICENSE":"3c7cd2396b5b772507febd2615d3d5a55b80103845037df77c87ba6e64872f2c","LICENSE-APACHE":"3c7cd2396b5b772507febd2615d3d5a55b80103845037df77c87ba6e64872f2c","LICENSE-MIT":"16693a68efd65bc6a9df3448c8f7ee6745418c73faff4ec4d443648c04285fa4","METADATA":"1ae6e6b8fff5925aa71251fbd6f7b3f5f88e2b1c5f4d4c4409406ec02990304f","MODULE_LICENSE_APACHE2":"0d6f8afa3940b7f06bebee651376d43bc8b0d5b437337be2696d30377451e93a","README.md":"94ad5dc0fb23c99e57ec477e15aab41595b23f3830e34d9e8cc54739ed0b680e","SECURITY.md":"b4054da2c6cf71c5c262d4e1ea23fe4a34fbaff429c837ef9cc1987050b0799a","TEST_MAPPING":"bcbfeb9a73a2e8a24ce7bc6e2529132de16e557957825acbac0dc616b1bb71c4","benches/parse.rs":"a2803b852ff337f7fd999602ba2a2963d57bfc7a63e619d4770e39a3bbe452e9","cargo_embargo.json":"d2d75aec1339e081ddf5bd585b4bf41d71c15afb1ec279e36b9de768475674c7","examples/custom_bits_type.rs":"65b3b831bbaf36201abf9ff48aa0424631a97c49a10c51d254a3f49f3f74753a","examples/custom_derive.rs":"7d08522687aeb3d449398bb98531dc10454123e6d5c665c82bbadb3198e704eb","examples/fmt.rs":"b49642ac253df177baa32a806df6f6a60c598bb08c5ca3a1589daa900fa6935b","examples/macro_free.rs":"276c152ee5cdad71a3988705abda355e54a6d467b465683fa7ee77e84fbb0623","examples/serde.rs":"e35659978f11469a7519402971ee0a37fec052e5b4f8f2f58b44ddf5bc4dab55","patches/rules.mk.diff":"38a0d80f966cc4413dff0c924a3cb5311804d835111e0dafa1054431b0277c14","rules.mk":"a9f1aaf7b85c9270b663e1eba553b4d4c498d3bf163265767869219b9a7f15b5","spec.md":"d6ac0c32ef98f96df3634e38d0bad97420126af3fd2e9eec008044a3d63d24c8","src/example_generated.rs":"e0b32b40b22248a2731106bd851a9eb2410b4774a72fc89838b4fbb7c6e393a3","src/external.rs":"300a572fadfe6d1fb05c81183c90de01b8ab923e7df82585ff7da0af0dfabc89","src/external/arbitrary.rs":"e22013b2cb04babe3de5c8b7a86a371084d10e1bfcbe94a06d3e5de7ca6867ce","src/external/bytemuck.rs":"290281ecc027b069b72a6e965e23af1b362f70d84a1b6466baae781c42080264","src/external/serde.rs":"25a6360def73c6eaa619520062e76b1073c01bcbc30fb5b3f15da59dff827638","src/internal.rs":"fbd8c745b8ea36f41aa6ceb05624bd4f2f039a627f00044567ef1d1a230f698f","src/iter.rs":"417e4ef92bc69ebb9abc6e205a7fc5d6f66eeba218cb9354990d91e28651c946","src/lib.rs":"5a869ecadae1a601626bcb21d3d69c9c3726faf1fc5911f22a9525ea76f4b658","src/parser.rs":"95e6a65479842e3880507d09c0e9c975233733ca007eaf85c384f86c825be89f","src/public.rs":"e9d62d31ddbb6c4f70b701d22e616102edf8aea2dc08c8292e365f6292641c07","src/tests.rs":"70eec2abc4c4e7ccc815aeae27d26182ac8b8284eec301d0bbed1596c97c4368","src/tests/all.rs":"d0c32ed470d43e53c471af1684d871b3fe282508e1a93d0a6b18ea0fafc5e474","src/tests/bits.rs":"d083ef28822e1c08c520f37905646c599e607089367c5498aa8777422ed717bc","src/tests/complement.rs":"2eff61b3a7aeeec4c47492468f5d5536d837995fcab87031bb1166296ff1c731","src/tests/contains.rs":"44742bd6e1ee60291da959fef103c137f1aa60cd48720d022dcd574a6747de4a","src/tests/difference.rs":"ade15dac713c90cb075ee0770ce5623233ae1ab676373df550df56ab1d2f31a1","src/tests/empty.rs":"18b93fab7194f5d82addeab1a0ad5efaed806727c479a6c233e602fd1eb3c3dd","src/tests/eq.rs":"471005a8132b16a8900e852cf7d9e864c8bbd7bea01954eb0b91c86f43a89950","src/tests/extend.rs":"366e1d59139af88c4cecb49a76ce21b1e82806dce3abaf5d16dcf65dddd2858c","src/tests/flags.rs":"7c4589c2b41a51ab813e9f40fe1b244fa6943f38d5209f68ff4e1d5106f251f6","src/tests/fmt.rs":"c758caa3f4064756d2478d99a2a758939cc44daa7505d33cae095e10532ee6db","src/tests/from_bits.rs":"47dd1bcf78b24f152fc95109fc0c6dc025c9f667aa5e8bc6d8836fc2cd76dc40","src/tests/from_bits_retain.rs":"4dbcc86e042ab0b2560ced3d0d69e1af803437c398dce7f1be906d92dc06c984","src/tests/from_bits_truncate.rs":"d17efb1bad75c5ff259dd97dedd958c87138bf35352964d041b68bcb11f2d45c","src/tests/from_name.rs":"efc39d196633793996b5fb049d700a50972c89326a55e224049b35c222e5e8a7","src/tests/insert.rs":"206adeff2bbbcf19f3b89404cd7aa00de948299dee68bf232d7e13bc4119f0b5","src/tests/intersection.rs":"cccf16199b719504b3893124501da2037cb754eb1c1e11334e953b96c5778b11","src/tests/intersects.rs":"dc96e54f9b3a3d65ab76015e90c4e7a91d9157512ba0315f8ece08bde148accc","src/tests/is_all.rs":"108180331563f5304d21314a7557bf6e9dd88ade94050408b58856e92b8786a5","src/tests/is_empty.rs":"f4717842e4c55b478bd6e3619c007295536ac19510f4b7df8a5569445c1a7e9e","src/tests/iter.rs":"b7143f58a9a3cecbbb3d84dc4292eb27a26fbddf23b9661270481ea7f377ced3","src/tests/parser.rs":"12513ba119618464e61cb624d9f47c5644b3fe5c90f75b451ea5c1287f3876b5","src/tests/remove.rs":"ace949c743f9c0add2964b3f0f59f5a39d1f20228ec3f5084ee93f331f975007","src/tests/symmetric_difference.rs":"d900443b34855527c5e3dae34a15014db12139edd0393b6dafd05120ff44096a","src/tests/union.rs":"3aa62dbcec0fe9c3302c8425b904b12b6fc303e5adfaed8d087dfdd24142c776","src/traits.rs":"37fa7b6c75ff366a8e0ea6e6d8ee4130d4881464bc266269bad9bfca7c592a7d"}}
\ No newline at end of file
+{"package":null,"files":{".cargo-checksum.json":"e60168093f0c9ab79c6efa3cd59e878174ef5aeb60a6ca05da54f6ee948e3726","Android.bp":"ca283fc01925086059b5f8d9084b82f3c58a05327b0531939319a035f3373a1a","CHANGELOG.md":"476f3722c29c420f74df236af508fd3c4f8cb30a9573178bf6cafaeee6489ad4","CODE_OF_CONDUCT.md":"4063df77c169eee901088338d4c4fdb1523469263a6e4ab46e2936d9ed1d8287","CONTRIBUTING.md":"eefc979a5fed613f39b33128b1a3acdb31bc12fbd2aa70bc0bd37afe9d0c4263","Cargo.lock":"781445bdb51c2e6d4d85bf0b247485f0d0af3db05d174356b58fedc1f62737f0","Cargo.toml":"34505970ce9f63ccdd77bd4dcd15af21af4d2f68c8adfc8d30ca77f23961b475","LICENSE":"3c7cd2396b5b772507febd2615d3d5a55b80103845037df77c87ba6e64872f2c","LICENSE-APACHE":"3c7cd2396b5b772507febd2615d3d5a55b80103845037df77c87ba6e64872f2c","LICENSE-MIT":"16693a68efd65bc6a9df3448c8f7ee6745418c73faff4ec4d443648c04285fa4","METADATA":"d7fb7534ddf862ebb5e4dce15ba28ae1c1f7ed74e013b21ddc55db9d3df07997","MODULE_LICENSE_APACHE2":"0d6f8afa3940b7f06bebee651376d43bc8b0d5b437337be2696d30377451e93a","README.md":"aaf3505f94957b40aececef1cd66dc1f0b1bf807b4d70a9d7206a883f919b297","SECURITY.md":"b4054da2c6cf71c5c262d4e1ea23fe4a34fbaff429c837ef9cc1987050b0799a","TEST_MAPPING":"bcbfeb9a73a2e8a24ce7bc6e2529132de16e557957825acbac0dc616b1bb71c4","benches/parse.rs":"a2803b852ff337f7fd999602ba2a2963d57bfc7a63e619d4770e39a3bbe452e9","cargo_embargo.json":"d2d75aec1339e081ddf5bd585b4bf41d71c15afb1ec279e36b9de768475674c7","examples/custom_bits_type.rs":"65b3b831bbaf36201abf9ff48aa0424631a97c49a10c51d254a3f49f3f74753a","examples/custom_derive.rs":"5221abaeb50bfe867bf0e47c18f16f8613d86c63ceb8e70c3b03ee8a8d75dc72","examples/fmt.rs":"b49642ac253df177baa32a806df6f6a60c598bb08c5ca3a1589daa900fa6935b","examples/macro_free.rs":"276c152ee5cdad71a3988705abda355e54a6d467b465683fa7ee77e84fbb0623","examples/serde.rs":"e35659978f11469a7519402971ee0a37fec052e5b4f8f2f58b44ddf5bc4dab55","patches/rules.mk.diff":"38a0d80f966cc4413dff0c924a3cb5311804d835111e0dafa1054431b0277c14","rules.mk":"a9f1aaf7b85c9270b663e1eba553b4d4c498d3bf163265767869219b9a7f15b5","spec.md":"d6ac0c32ef98f96df3634e38d0bad97420126af3fd2e9eec008044a3d63d24c8","src/example_generated.rs":"e0b32b40b22248a2731106bd851a9eb2410b4774a72fc89838b4fbb7c6e393a3","src/external.rs":"300a572fadfe6d1fb05c81183c90de01b8ab923e7df82585ff7da0af0dfabc89","src/external/arbitrary.rs":"cecc68181620c35419342453ac4c38df7272765d7ff168391a7564c6577b52d5","src/external/bytemuck.rs":"290281ecc027b069b72a6e965e23af1b362f70d84a1b6466baae781c42080264","src/external/serde.rs":"25a6360def73c6eaa619520062e76b1073c01bcbc30fb5b3f15da59dff827638","src/internal.rs":"fbd8c745b8ea36f41aa6ceb05624bd4f2f039a627f00044567ef1d1a230f698f","src/iter.rs":"417e4ef92bc69ebb9abc6e205a7fc5d6f66eeba218cb9354990d91e28651c946","src/lib.rs":"ae8ccdc743d5d99c6e3bd09971519e5b7d9096337dd64adc5163d7c6eafd155a","src/parser.rs":"95e6a65479842e3880507d09c0e9c975233733ca007eaf85c384f86c825be89f","src/public.rs":"e9d62d31ddbb6c4f70b701d22e616102edf8aea2dc08c8292e365f6292641c07","src/tests.rs":"6c4f4ed0937d59b088fc3a947ea20f6ad562a0967c8312bbd3c07d2c02021eba","src/tests/all.rs":"d0c32ed470d43e53c471af1684d871b3fe282508e1a93d0a6b18ea0fafc5e474","src/tests/bits.rs":"d083ef28822e1c08c520f37905646c599e607089367c5498aa8777422ed717bc","src/tests/complement.rs":"2eff61b3a7aeeec4c47492468f5d5536d837995fcab87031bb1166296ff1c731","src/tests/contains.rs":"44742bd6e1ee60291da959fef103c137f1aa60cd48720d022dcd574a6747de4a","src/tests/difference.rs":"ade15dac713c90cb075ee0770ce5623233ae1ab676373df550df56ab1d2f31a1","src/tests/empty.rs":"18b93fab7194f5d82addeab1a0ad5efaed806727c479a6c233e602fd1eb3c3dd","src/tests/eq.rs":"471005a8132b16a8900e852cf7d9e864c8bbd7bea01954eb0b91c86f43a89950","src/tests/extend.rs":"366e1d59139af88c4cecb49a76ce21b1e82806dce3abaf5d16dcf65dddd2858c","src/tests/flags.rs":"7c4589c2b41a51ab813e9f40fe1b244fa6943f38d5209f68ff4e1d5106f251f6","src/tests/fmt.rs":"c758caa3f4064756d2478d99a2a758939cc44daa7505d33cae095e10532ee6db","src/tests/from_bits.rs":"47dd1bcf78b24f152fc95109fc0c6dc025c9f667aa5e8bc6d8836fc2cd76dc40","src/tests/from_bits_retain.rs":"4dbcc86e042ab0b2560ced3d0d69e1af803437c398dce7f1be906d92dc06c984","src/tests/from_bits_truncate.rs":"d17efb1bad75c5ff259dd97dedd958c87138bf35352964d041b68bcb11f2d45c","src/tests/from_name.rs":"efc39d196633793996b5fb049d700a50972c89326a55e224049b35c222e5e8a7","src/tests/insert.rs":"206adeff2bbbcf19f3b89404cd7aa00de948299dee68bf232d7e13bc4119f0b5","src/tests/intersection.rs":"cccf16199b719504b3893124501da2037cb754eb1c1e11334e953b96c5778b11","src/tests/intersects.rs":"dc96e54f9b3a3d65ab76015e90c4e7a91d9157512ba0315f8ece08bde148accc","src/tests/is_all.rs":"108180331563f5304d21314a7557bf6e9dd88ade94050408b58856e92b8786a5","src/tests/is_empty.rs":"f4717842e4c55b478bd6e3619c007295536ac19510f4b7df8a5569445c1a7e9e","src/tests/iter.rs":"b7143f58a9a3cecbbb3d84dc4292eb27a26fbddf23b9661270481ea7f377ced3","src/tests/parser.rs":"12513ba119618464e61cb624d9f47c5644b3fe5c90f75b451ea5c1287f3876b5","src/tests/remove.rs":"ace949c743f9c0add2964b3f0f59f5a39d1f20228ec3f5084ee93f331f975007","src/tests/symmetric_difference.rs":"d900443b34855527c5e3dae34a15014db12139edd0393b6dafd05120ff44096a","src/tests/truncate.rs":"357988c61038edfbb8851dd50ac5f8f7dab5a99d5917c39651d44f83c5d7bb19","src/tests/union.rs":"3aa62dbcec0fe9c3302c8425b904b12b6fc303e5adfaed8d087dfdd24142c776","src/tests/unknown.rs":"52f8a803221065b871b12abfdff590eeeeef71ff3e9422ff1865a64ecf2c686e","src/traits.rs":"0d011a3aac117425f5b1ad657c6ac09275b191f10ec895bb4597e56f23e04378"}}
\ No newline at end of file
diff --git a/crates/bitflags/.cargo-checksum.json b/crates/bitflags/.cargo-checksum.json
index 9ed6cb2..720a2bb 100644
--- a/crates/bitflags/.cargo-checksum.json
+++ b/crates/bitflags/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"c98723b209ac4c66625e034b113a55a43a5c1c9e49c0e3b86123d0cd62bae573","CODE_OF_CONDUCT.md":"42634d0f6d922f49857175af991802822f7f920487aefa2ee250a50d12251a66","CONTRIBUTING.md":"6c9f96eacb20af877ae2d16f024904f3038b93448a8488e9dbcac0df7f6439a5","Cargo.lock":"d3e3bce47b94298f2de893a7d91035f2b73a887905a7ffd4ddb668efdd0aee20","Cargo.toml":"92e110c36340bda13f3b329a2aa24aede8bdcb7fa035806926f7ce438dde87f2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"e9b1329fee85868f1aa674d0505cd95b86a259e2a1762347e5af4a5abedd61d4","SECURITY.md":"68704c8128fa2e776ed7cbda741fbf61ad52f998a96350ee7ee4dbf64c6573bc","benches/parse.rs":"f1390d62322c6880d65bd931e183d49b313f287879a6bfaa36b1cb1921090b51","examples/custom_bits_type.rs":"e53b32051adc5d97860e0b48c8f3a301a041d73b4939c0d7caa5f0cfcc0b9739","examples/custom_derive.rs":"a404e8f606efdd1b43e0c365e4142ccc3dc3ba230127ddeea89cd8784bb55a1e","examples/fmt.rs":"87ba37a1fb8528570c74ea26d8e8948e1179c3d867b928bea1080880258e0a99","examples/macro_free.rs":"69e7f284b53b5214d51228a686e87f127b52a3b74711e45537ebfa5583a180e5","examples/serde.rs":"08b21b35d5c10fdca132fe0f36c8067bb44f559e96617a9257ab6316a20cbc75","spec.md":"fcdd939df30c59b0643be09027df664b71cbea9b9989185441482c5576160fed","src/example_generated.rs":"d018caf059f6ffc4c2403b771a6d76679fa5af03c329a91bd9252957df695e7f","src/external.rs":"734d3f470e6a669297d2df421ce3976fe613d8aa9c071d5ce6fe3ca890e5b815","src/external/arbitrary.rs":"fa8c9187028b9bc54856977b0914676f62101010e7a9450abd577fd78c89552f","src/external/bytemuck.rs":"3afcef382122867040fddd5e4153d633d1ed5596fe5d7dfac66a8e61c2513df5","src/external/serde.rs":"4a09db12534a20fe554a08dc5f1c8124b379292d41fa75628abcd2ca21587573","src/internal.rs":"645b13af0c7302258df61239073a4b8203d09f27b6c17f8a6f1f8c3e427f5334","src/iter.rs":"dbaa6437c1c044f689185ce3fafe43df8796bed19bbdd2c20334a52de5eeee73","src/lib.rs":"1feb0eea02f88491c99c7962b0ce6e66bdedea0ab0cac375d4c9c2d879248dc7","src/parser.rs":"4e788b29f5d0542c409a8b43c703bcb4a6c2a57c181cadd17f565f0abb39681e","src/public.rs":"78ba06e1a5830b36960adf9bd79aaf47d783b9b8a0f1fa33b0d7a340c15fd1d1","src/tests.rs":"b120c27ff0c67a819527de9d8171f1f4c5d37ba4009c54abeb869c70e6035f14","src/tests/all.rs":"e99a865cd4271a524c2fe95503e96d851b35990570aed6fb2e9dac7a14da31b6","src/tests/bits.rs":"3840c34b2ea5d1802404b9ce5bcc1d3fa6ccd8dfba2e29e6d07c605f817d90df","src/tests/complement.rs":"d0e6d4c3daf49e0a7438c9f1c1ac91fad1b37f258c03593f6cd6a695ee626f5e","src/tests/contains.rs":"58bb3cb8c86550e775d11134da1d4aca85c83f943ea454e3a5f222772c674a24","src/tests/difference.rs":"d0d2b96bb52658b8ac019210da74ca75a53e76622f668855142ea6e97c28cb0e","src/tests/empty.rs":"817d6e93ced7cb7576ff0e334aa1a44703f3f96871ff2c6bdcb8f207e6551f67","src/tests/eq.rs":"b816767680a029e9c163e37af074dd4e604c4a3e4936f829f0ca3774fd5f0e37","src/tests/extend.rs":"5fabb9fd0254c64da019149c24063fceff72da3eb4ad73b57c1cc4c04b008364","src/tests/flags.rs":"2f48d3a25db1cf66fe98c9959abc70875deb9f7b38b2c278dc70c46e0d4ec277","src/tests/fmt.rs":"a2d4148491f3202f030f63633eee941b741e3be29a68cf376f008dbe5cb11e5c","src/tests/from_bits.rs":"d94c65b88bf89961d0cfc1b3152a7f1acc285bae160a1628438effda11b8e2c1","src/tests/from_bits_retain.rs":"980591dfaf91e940f42d9a1ce890f237514dd59d458fc264abcf9ceabbc40677","src/tests/from_bits_truncate.rs":"d3406b5e107ebb6449b98a59eee6cc5d84f947d4aaee1ee7e80dc7202de179f0","src/tests/from_name.rs":"f4a055d1f3c86decef70ef8f3020cef5c4e229718c20b3d59d5a3abc3a8b1298","src/tests/insert.rs":"3fab5da800a6fc0654dfb5f859f95da65a507eb9fda8695083c2712266dff0b9","src/tests/intersection.rs":"baf1454c9e4eba552264870a556ee0032d9f2bb8cac361833d571235e0b52221","src/tests/intersects.rs":"c55e36179fd8bc636f04ea9bbce346dcaafe57915d13f1df28c5b83117dbd08e","src/tests/is_all.rs":"b2f11faa7c954bd85c8fb39999e0c37d983cf7895152bc13c7ddde106aa33b6d","src/tests/is_empty.rs":"11f21323cdca7ff92dd89e09de667dba69e8dce88e2d3e27ea68ace91d15d070","src/tests/iter.rs":"4ba121932b527e787b82745405c7c65c1084c242e2dda3290d475ec160d265e4","src/tests/parser.rs":"fa2fb8dedcf16601af609a5e21d9c5840c7f96a1e3a587f7f2ea3dc8387f7628","src/tests/remove.rs":"6e75f8508d2dc1a2cba89ef691f4387a665a4fd13853bb1dd0fd80c783b89947","src/tests/symmetric_difference.rs":"0a89f084f9de1dd5b1932fe72c3b10a3c93cbaa16832b3a31b6a85e3bbd3ba6e","src/tests/union.rs":"88f398ee4600bb1e59bf6d02d1f6ff33f5f853eab5a6c700bd8a683c6ee4651a","src/traits.rs":"b79d008daec546136fae4497966fc85a33663d86ea2d9213fd23b412d4d77b66"},"package":"b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"f2635274b6b8c496e855b4cf6ec7852102d794263292fe81f1c088e4ff253716","CODE_OF_CONDUCT.md":"42634d0f6d922f49857175af991802822f7f920487aefa2ee250a50d12251a66","CONTRIBUTING.md":"6c9f96eacb20af877ae2d16f024904f3038b93448a8488e9dbcac0df7f6439a5","Cargo.lock":"6fda29b7daf6af4dc0c5d3f32765e9052192ee960e90f180cdaee3f7f13adca6","Cargo.toml":"f931d505da26360b34271181dcc19b43cf68d11d05514789d24aeb2d814438cc","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"4a9814dba6a6fdacf1ad20edd17905375550b2d4dc407ed5f00f2f0597ab437d","SECURITY.md":"68704c8128fa2e776ed7cbda741fbf61ad52f998a96350ee7ee4dbf64c6573bc","benches/parse.rs":"f1390d62322c6880d65bd931e183d49b313f287879a6bfaa36b1cb1921090b51","examples/custom_bits_type.rs":"e53b32051adc5d97860e0b48c8f3a301a041d73b4939c0d7caa5f0cfcc0b9739","examples/custom_derive.rs":"730589695eb68dda21d0d9f69e90cbdbf9823b13d6f16c5f22b0083c00981813","examples/fmt.rs":"87ba37a1fb8528570c74ea26d8e8948e1179c3d867b928bea1080880258e0a99","examples/macro_free.rs":"69e7f284b53b5214d51228a686e87f127b52a3b74711e45537ebfa5583a180e5","examples/serde.rs":"08b21b35d5c10fdca132fe0f36c8067bb44f559e96617a9257ab6316a20cbc75","spec.md":"fcdd939df30c59b0643be09027df664b71cbea9b9989185441482c5576160fed","src/example_generated.rs":"d018caf059f6ffc4c2403b771a6d76679fa5af03c329a91bd9252957df695e7f","src/external.rs":"734d3f470e6a669297d2df421ce3976fe613d8aa9c071d5ce6fe3ca890e5b815","src/external/arbitrary.rs":"43908bb4fe0a076078dcb3fa70c654aaed8c7b38aa66574414165a82037def83","src/external/bytemuck.rs":"3afcef382122867040fddd5e4153d633d1ed5596fe5d7dfac66a8e61c2513df5","src/external/serde.rs":"4a09db12534a20fe554a08dc5f1c8124b379292d41fa75628abcd2ca21587573","src/internal.rs":"645b13af0c7302258df61239073a4b8203d09f27b6c17f8a6f1f8c3e427f5334","src/iter.rs":"dbaa6437c1c044f689185ce3fafe43df8796bed19bbdd2c20334a52de5eeee73","src/lib.rs":"9d571acbfe33d90e61b097ad3bfa821545c67319558365f8d06337504a2d5dfe","src/parser.rs":"4e788b29f5d0542c409a8b43c703bcb4a6c2a57c181cadd17f565f0abb39681e","src/public.rs":"78ba06e1a5830b36960adf9bd79aaf47d783b9b8a0f1fa33b0d7a340c15fd1d1","src/tests.rs":"fb14f80509a991af90a0aef85e55429ad79d7e499112ff06f8ac54e5a6a7acfa","src/tests/all.rs":"e99a865cd4271a524c2fe95503e96d851b35990570aed6fb2e9dac7a14da31b6","src/tests/bits.rs":"3840c34b2ea5d1802404b9ce5bcc1d3fa6ccd8dfba2e29e6d07c605f817d90df","src/tests/complement.rs":"d0e6d4c3daf49e0a7438c9f1c1ac91fad1b37f258c03593f6cd6a695ee626f5e","src/tests/contains.rs":"58bb3cb8c86550e775d11134da1d4aca85c83f943ea454e3a5f222772c674a24","src/tests/difference.rs":"d0d2b96bb52658b8ac019210da74ca75a53e76622f668855142ea6e97c28cb0e","src/tests/empty.rs":"817d6e93ced7cb7576ff0e334aa1a44703f3f96871ff2c6bdcb8f207e6551f67","src/tests/eq.rs":"b816767680a029e9c163e37af074dd4e604c4a3e4936f829f0ca3774fd5f0e37","src/tests/extend.rs":"5fabb9fd0254c64da019149c24063fceff72da3eb4ad73b57c1cc4c04b008364","src/tests/flags.rs":"2f48d3a25db1cf66fe98c9959abc70875deb9f7b38b2c278dc70c46e0d4ec277","src/tests/fmt.rs":"a2d4148491f3202f030f63633eee941b741e3be29a68cf376f008dbe5cb11e5c","src/tests/from_bits.rs":"d94c65b88bf89961d0cfc1b3152a7f1acc285bae160a1628438effda11b8e2c1","src/tests/from_bits_retain.rs":"980591dfaf91e940f42d9a1ce890f237514dd59d458fc264abcf9ceabbc40677","src/tests/from_bits_truncate.rs":"d3406b5e107ebb6449b98a59eee6cc5d84f947d4aaee1ee7e80dc7202de179f0","src/tests/from_name.rs":"f4a055d1f3c86decef70ef8f3020cef5c4e229718c20b3d59d5a3abc3a8b1298","src/tests/insert.rs":"3fab5da800a6fc0654dfb5f859f95da65a507eb9fda8695083c2712266dff0b9","src/tests/intersection.rs":"baf1454c9e4eba552264870a556ee0032d9f2bb8cac361833d571235e0b52221","src/tests/intersects.rs":"c55e36179fd8bc636f04ea9bbce346dcaafe57915d13f1df28c5b83117dbd08e","src/tests/is_all.rs":"b2f11faa7c954bd85c8fb39999e0c37d983cf7895152bc13c7ddde106aa33b6d","src/tests/is_empty.rs":"11f21323cdca7ff92dd89e09de667dba69e8dce88e2d3e27ea68ace91d15d070","src/tests/iter.rs":"4ba121932b527e787b82745405c7c65c1084c242e2dda3290d475ec160d265e4","src/tests/parser.rs":"fa2fb8dedcf16601af609a5e21d9c5840c7f96a1e3a587f7f2ea3dc8387f7628","src/tests/remove.rs":"6e75f8508d2dc1a2cba89ef691f4387a665a4fd13853bb1dd0fd80c783b89947","src/tests/symmetric_difference.rs":"0a89f084f9de1dd5b1932fe72c3b10a3c93cbaa16832b3a31b6a85e3bbd3ba6e","src/tests/truncate.rs":"683430af4a0e47ec73c737a6908fac5d851bed7c41d47c73a642e96d966aa5ae","src/tests/union.rs":"88f398ee4600bb1e59bf6d02d1f6ff33f5f853eab5a6c700bd8a683c6ee4651a","src/tests/unknown.rs":"fa9e8ee461f176c0d892cde487fef0fe66df2aa5906aaef21b093102e590f5f5","src/traits.rs":"370c414a6b621ffe6e018861b481671dffa2689de39759922d03cdd12e5b612b"},"package":"1be3f42a67d6d345ecd59f675f3f012d6974981560836e938c22b424b85ce1be"}
\ No newline at end of file
diff --git a/crates/bitflags/Android.bp b/crates/bitflags/Android.bp
index 9689f8c..2f88ae0 100644
--- a/crates/bitflags/Android.bp
+++ b/crates/bitflags/Android.bp
@@ -18,7 +18,7 @@
host_supported: true,
crate_name: "bitflags",
cargo_env_compat: true,
- cargo_pkg_version: "2.6.0",
+ cargo_pkg_version: "2.7.0",
crate_root: "src/lib.rs",
edition: "2021",
apex_available: [
diff --git a/crates/bitflags/CHANGELOG.md b/crates/bitflags/CHANGELOG.md
index f17d469..fc6134a 100644
--- a/crates/bitflags/CHANGELOG.md
+++ b/crates/bitflags/CHANGELOG.md
@@ -1,3 +1,20 @@
+# 2.7.0
+
+## What's Changed
+* Fix `clippy::doc_lazy_continuation` lints by @waywardmonkeys in https://github.com/bitflags/bitflags/pull/414
+* Run clippy on extra features in CI. by @waywardmonkeys in https://github.com/bitflags/bitflags/pull/415
+* Fix CI: trybuild refresh, allow some clippy restrictions. by @waywardmonkeys in https://github.com/bitflags/bitflags/pull/417
+* Update zerocopy version in example by @KodrAus in https://github.com/bitflags/bitflags/pull/422
+* Add method to check if unknown bits are set by @wysiwys in https://github.com/bitflags/bitflags/pull/426
+* Update error messages by @KodrAus in https://github.com/bitflags/bitflags/pull/427
+* Add `truncate(&mut self)` method to unset unknown bits by @wysiwys in https://github.com/bitflags/bitflags/pull/428
+* Update error messages by @KodrAus in https://github.com/bitflags/bitflags/pull/429
+
+## New Contributors
+* @wysiwys made their first contribution in https://github.com/bitflags/bitflags/pull/426
+
+**Full Changelog**: https://github.com/bitflags/bitflags/compare/2.6.0...2.7.0
+
# 2.6.0
## What's Changed
diff --git a/crates/bitflags/Cargo.lock b/crates/bitflags/Cargo.lock
index 5f98ce0..10910a3 100644
--- a/crates/bitflags/Cargo.lock
+++ b/crates/bitflags/Cargo.lock
@@ -4,16 +4,16 @@
[[package]]
name = "arbitrary"
-version = "1.3.2"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
+checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223"
dependencies = [
"derive_arbitrary",
]
[[package]]
name = "bitflags"
-version = "2.6.0"
+version = "2.7.0"
dependencies = [
"arbitrary",
"bytemuck",
@@ -30,18 +30,18 @@
[[package]]
name = "bytemuck"
-version = "1.16.1"
+version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e"
+checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3"
dependencies = [
"bytemuck_derive",
]
[[package]]
name = "bytemuck_derive"
-version = "1.7.0"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b"
+checksum = "882ce8da04f2b62f52b2485ed297687a43a8438374e7c2261a80601ecb4bac04"
dependencies = [
"proc-macro2",
"quote",
@@ -49,22 +49,16 @@
]
[[package]]
-name = "byteorder"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
-
-[[package]]
name = "compiler_builtins"
-version = "0.1.112"
+version = "0.1.142"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b15acab2bb4fe4dad1f1e31f3d9e714f50ef561a0f87dd8a9da004f14d455e1a"
+checksum = "78013b42e2946a76d348a858fa5a06ca7d6b5cccdfccd660ea7a0aa4a44d40ca"
[[package]]
name = "derive_arbitrary"
-version = "1.3.2"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
+checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800"
dependencies = [
"proc-macro2",
"quote",
@@ -79,21 +73,21 @@
[[package]]
name = "glob"
-version = "0.3.1"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
+checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2"
[[package]]
name = "hashbrown"
-version = "0.14.5"
+version = "0.15.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
[[package]]
name = "indexmap"
-version = "2.2.6"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
dependencies = [
"equivalent",
"hashbrown",
@@ -101,9 +95,9 @@
[[package]]
name = "itoa"
-version = "1.0.11"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
[[package]]
name = "memchr"
@@ -113,33 +107,33 @@
[[package]]
name = "proc-macro2"
-version = "1.0.86"
+version = "1.0.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
+checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
-version = "1.0.36"
+version = "1.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
+checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
dependencies = [
"proc-macro2",
]
[[package]]
name = "rustc-std-workspace-core"
-version = "1.0.0"
+version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1956f5517128a2b6f23ab2dadf1a976f4f5b27962e7724c2bf3d45e539ec098c"
+checksum = "aa9c45b374136f52f2d6311062c7146bff20fec063c3f5d46a410bd937746955"
[[package]]
name = "rustversion"
-version = "1.0.17"
+version = "1.0.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6"
+checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
[[package]]
name = "ryu"
@@ -149,18 +143,18 @@
[[package]]
name = "serde"
-version = "1.0.203"
+version = "1.0.217"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094"
+checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.203"
+version = "1.0.217"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba"
+checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
dependencies = [
"proc-macro2",
"quote",
@@ -169,38 +163,39 @@
[[package]]
name = "serde_json"
-version = "1.0.117"
+version = "1.0.135"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3"
+checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9"
dependencies = [
"itoa",
+ "memchr",
"ryu",
"serde",
]
[[package]]
name = "serde_spanned"
-version = "0.6.6"
+version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0"
+checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1"
dependencies = [
"serde",
]
[[package]]
name = "serde_test"
-version = "1.0.176"
+version = "1.0.177"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a2f49ace1498612d14f7e0b8245519584db8299541dfe31a06374a828d620ab"
+checksum = "7f901ee573cab6b3060453d2d5f0bae4e6d628c23c0a962ff9b5f1d7c8d4f1ed"
dependencies = [
"serde",
]
[[package]]
name = "syn"
-version = "2.0.68"
+version = "2.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9"
+checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a"
dependencies = [
"proc-macro2",
"quote",
@@ -208,6 +203,12 @@
]
[[package]]
+name = "target-triple"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078"
+
+[[package]]
name = "termcolor"
version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -218,9 +219,9 @@
[[package]]
name = "toml"
-version = "0.8.14"
+version = "0.8.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335"
+checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
dependencies = [
"serde",
"serde_spanned",
@@ -230,18 +231,18 @@
[[package]]
name = "toml_datetime"
-version = "0.6.6"
+version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf"
+checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
dependencies = [
"serde",
]
[[package]]
name = "toml_edit"
-version = "0.22.14"
+version = "0.22.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38"
+checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
dependencies = [
"indexmap",
"serde",
@@ -252,47 +253,48 @@
[[package]]
name = "trybuild"
-version = "1.0.96"
+version = "1.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33a5f13f11071020bb12de7a16b925d2d58636175c20c11dc5f96cb64bb6c9b3"
+checksum = "8dcd332a5496c026f1e14b7f3d2b7bd98e509660c04239c58b0ba38a12daded4"
dependencies = [
"glob",
"serde",
"serde_derive",
"serde_json",
+ "target-triple",
"termcolor",
"toml",
]
[[package]]
name = "unicode-ident"
-version = "1.0.12"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
[[package]]
name = "winapi-util"
-version = "0.1.8"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
+checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
dependencies = [
"windows-sys",
]
[[package]]
name = "windows-sys"
-version = "0.52.0"
+version = "0.59.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
dependencies = [
"windows-targets",
]
[[package]]
name = "windows-targets"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
dependencies = [
"windows_aarch64_gnullvm",
"windows_aarch64_msvc",
@@ -306,76 +308,75 @@
[[package]]
name = "windows_aarch64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
[[package]]
name = "windows_aarch64_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
[[package]]
name = "windows_i686_gnu"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
[[package]]
name = "windows_i686_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
[[package]]
name = "windows_i686_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
[[package]]
name = "windows_x86_64_gnu"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
[[package]]
name = "windows_x86_64_gnullvm"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
[[package]]
name = "windows_x86_64_msvc"
-version = "0.52.5"
+version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "winnow"
-version = "0.6.13"
+version = "0.6.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1"
+checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980"
dependencies = [
"memchr",
]
[[package]]
name = "zerocopy"
-version = "0.7.34"
+version = "0.8.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087"
+checksum = "a367f292d93d4eab890745e75a778da40909cab4d6ff8173693812f79c4a2468"
dependencies = [
- "byteorder",
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
-version = "0.7.34"
+version = "0.8.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
+checksum = "d3931cb58c62c13adec22e38686b559c86a30565e16ad6e8510a337cedc611e1"
dependencies = [
"proc-macro2",
"quote",
diff --git a/crates/bitflags/Cargo.toml b/crates/bitflags/Cargo.toml
index 54c4b82..1e9a2ff 100644
--- a/crates/bitflags/Cargo.toml
+++ b/crates/bitflags/Cargo.toml
@@ -13,12 +13,18 @@
edition = "2021"
rust-version = "1.56.0"
name = "bitflags"
-version = "2.6.0"
+version = "2.7.0"
authors = ["The Rust Project Developers"]
+build = false
exclude = [
"/tests",
"/.github",
]
+autolib = false
+autobins = false
+autoexamples = false
+autotests = false
+autobenches = false
description = """
A macro to generate structures which behave like bitflags.
"""
@@ -38,6 +44,34 @@
[package.metadata.docs.rs]
features = ["example_generated"]
+[lib]
+name = "bitflags"
+path = "src/lib.rs"
+
+[[example]]
+name = "custom_bits_type"
+path = "examples/custom_bits_type.rs"
+
+[[example]]
+name = "custom_derive"
+path = "examples/custom_derive.rs"
+
+[[example]]
+name = "fmt"
+path = "examples/fmt.rs"
+
+[[example]]
+name = "macro_free"
+path = "examples/macro_free.rs"
+
+[[example]]
+name = "serde"
+path = "examples/serde.rs"
+
+[[bench]]
+name = "parse"
+path = "benches/parse.rs"
+
[dependencies.arbitrary]
version = "1.0"
optional = true
@@ -84,7 +118,7 @@
version = "1.0.18"
[dev-dependencies.zerocopy]
-version = "0.7"
+version = "0.8"
features = ["derive"]
[features]
diff --git a/crates/bitflags/METADATA b/crates/bitflags/METADATA
index c33887c..a0db309 100644
--- a/crates/bitflags/METADATA
+++ b/crates/bitflags/METADATA
@@ -1,17 +1,17 @@
name: "bitflags"
description: "A macro to generate structures which behave like bitflags."
third_party {
- version: "2.6.0"
+ version: "2.7.0"
license_type: NOTICE
last_upgrade_date {
- year: 2024
- month: 5
- day: 31
+ year: 2025
+ month: 1
+ day: 14
}
homepage: "https://crates.io/crates/bitflags"
identifier {
type: "Archive"
- value: "https://static.crates.io/crates/bitflags/bitflags-2.6.0.crate"
- version: "2.6.0"
+ value: "https://static.crates.io/crates/bitflags/bitflags-2.7.0.crate"
+ version: "2.7.0"
}
}
diff --git a/crates/bitflags/README.md b/crates/bitflags/README.md
index f2ad555..19f9268 100644
--- a/crates/bitflags/README.md
+++ b/crates/bitflags/README.md
@@ -28,7 +28,7 @@
```toml
[dependencies]
-bitflags = "2.6.0"
+bitflags = "2.7.0"
```
and this to your source code:
diff --git a/crates/bitflags/examples/custom_derive.rs b/crates/bitflags/examples/custom_derive.rs
index 4239ee4..ba26723 100644
--- a/crates/bitflags/examples/custom_derive.rs
+++ b/crates/bitflags/examples/custom_derive.rs
@@ -6,7 +6,7 @@
// Define a flags type outside of the `bitflags` macro as a newtype
// It can accept custom derives for libraries `bitflags` doesn't support natively
-#[derive(zerocopy::AsBytes, zerocopy::FromBytes, zerocopy::FromZeroes)]
+#[derive(zerocopy::IntoBytes, zerocopy::FromBytes, zerocopy::KnownLayout, zerocopy::Immutable)]
#[repr(transparent)]
pub struct ManualFlags(u32);
diff --git a/crates/bitflags/src/external/arbitrary.rs b/crates/bitflags/src/external/arbitrary.rs
index ea76f0a..edde9b5 100644
--- a/crates/bitflags/src/external/arbitrary.rs
+++ b/crates/bitflags/src/external/arbitrary.rs
@@ -9,7 +9,7 @@
where
B::Bits: arbitrary::Arbitrary<'a>,
{
- B::from_bits(u.arbitrary()?).ok_or_else(|| arbitrary::Error::IncorrectFormat)
+ B::from_bits(u.arbitrary()?).ok_or(arbitrary::Error::IncorrectFormat)
}
#[cfg(test)]
diff --git a/crates/bitflags/src/lib.rs b/crates/bitflags/src/lib.rs
index a9a6aa4..97e808f 100644
--- a/crates/bitflags/src/lib.rs
+++ b/crates/bitflags/src/lib.rs
@@ -17,7 +17,7 @@
```toml
[dependencies.bitflags]
-version = "2.6.0"
+version = "2.7.0"
```
## Generating flags types
@@ -71,10 +71,10 @@
libraries are currently supported:
- `serde`: Support `#[derive(Serialize, Deserialize)]`, using text for human-readable formats,
-and a raw number for binary formats.
+ and a raw number for binary formats.
- `arbitrary`: Support `#[derive(Arbitrary)]`, only generating flags values with known bits.
- `bytemuck`: Support `#[derive(Pod, Zeroable)]`, for casting between flags values and their
-underlying bits values.
+ underlying bits values.
You can also define your own flags type outside of the [`bitflags`] macro and then use it to generate methods.
This can be useful if you need a custom `#[derive]` attribute for a library that `bitflags` doesn't
diff --git a/crates/bitflags/src/tests.rs b/crates/bitflags/src/tests.rs
index ed52ad4..28ed0a6 100644
--- a/crates/bitflags/src/tests.rs
+++ b/crates/bitflags/src/tests.rs
@@ -21,7 +21,9 @@
mod parser;
mod remove;
mod symmetric_difference;
+mod truncate;
mod union;
+mod unknown;
bitflags! {
#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy)]
diff --git a/crates/bitflags/src/tests/truncate.rs b/crates/bitflags/src/tests/truncate.rs
new file mode 100644
index 0000000..e38df48
--- /dev/null
+++ b/crates/bitflags/src/tests/truncate.rs
@@ -0,0 +1,29 @@
+use super::*;
+
+use crate::Flags;
+
+#[test]
+fn cases() {
+ case(
+ TestFlags::ABC | TestFlags::from_bits_retain(1 << 3),
+ TestFlags::ABC,
+ );
+
+ case(TestZero::empty(), TestZero::empty());
+
+ case(TestZero::all(), TestZero::all());
+
+ case(
+ TestFlags::from_bits_retain(1 << 3) | TestFlags::all(),
+ TestFlags::all(),
+ );
+}
+
+#[track_caller]
+fn case<T: Flags + std::fmt::Debug>(mut before: T, after: T)
+where
+ T: std::fmt::Debug + PartialEq + Copy,
+{
+ before.truncate();
+ assert_eq!(before, after, "{:?}.truncate()", before);
+}
diff --git a/crates/bitflags/src/tests/unknown.rs b/crates/bitflags/src/tests/unknown.rs
new file mode 100644
index 0000000..020f7e9
--- /dev/null
+++ b/crates/bitflags/src/tests/unknown.rs
@@ -0,0 +1,40 @@
+use super::*;
+
+use crate::Flags;
+
+#[test]
+fn cases() {
+ case(false, TestFlags::empty(), TestFlags::contains_unknown_bits);
+ case(false, TestFlags::A, TestFlags::contains_unknown_bits);
+
+ case(
+ true,
+ TestFlags::ABC | TestFlags::from_bits_retain(1 << 3),
+ TestFlags::contains_unknown_bits,
+ );
+
+ case(
+ true,
+ TestFlags::empty() | TestFlags::from_bits_retain(1 << 3),
+ TestFlags::contains_unknown_bits,
+ );
+
+ case(false, TestFlags::all(), TestFlags::contains_unknown_bits);
+
+ case(false, TestZero::empty(), TestZero::contains_unknown_bits);
+}
+#[track_caller]
+fn case<T: Flags + std::fmt::Debug>(expected: bool, value: T, inherent: impl FnOnce(&T) -> bool) {
+ assert_eq!(
+ expected,
+ inherent(&value),
+ "{:?}.contains_unknown_bits()",
+ value
+ );
+ assert_eq!(
+ expected,
+ Flags::contains_unknown_bits(&value),
+ "Flags::contains_unknown_bits({:?})",
+ value
+ );
+}
diff --git a/crates/bitflags/src/traits.rs b/crates/bitflags/src/traits.rs
index 3905d7d..d351bfc 100644
--- a/crates/bitflags/src/traits.rs
+++ b/crates/bitflags/src/traits.rs
@@ -152,6 +152,11 @@
Self::from_bits_retain(truncated)
}
+ /// This method will return `true` if any unknown bits are set.
+ fn contains_unknown_bits(&self) -> bool {
+ Self::all().bits() & self.bits() != self.bits()
+ }
+
/// Get the underlying bits value.
///
/// The returned value is exactly the bits set in this flags value.
@@ -241,6 +246,14 @@
self.bits() & other.bits() == other.bits()
}
+ /// Remove any unknown bits from the flags.
+ fn truncate(&mut self)
+ where
+ Self: Sized,
+ {
+ *self = Self::from_bits_truncate(self.bits());
+ }
+
/// The bitwise or (`|`) of the bits in two flags values.
fn insert(&mut self, other: Self)
where
diff --git a/pseudo_crate/Cargo.lock b/pseudo_crate/Cargo.lock
index 39eaecd..a601555 100644
--- a/pseudo_crate/Cargo.lock
+++ b/pseudo_crate/Cargo.lock
@@ -8,7 +8,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a72425af5ca5fea30463427958c9fdc07ac24e58d0edafb7cb14ebf7706f2350"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
]
[[package]]
@@ -18,7 +18,7 @@
checksum = "9e42f25ac5fa51f4188d14baf8f387a97dcd8639644b2f3df948bf5f6dd7d6fa"
dependencies = [
"bit_field",
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"log",
]
@@ -122,7 +122,7 @@
"bindgen 0.69.5",
"bindgen-cli",
"bit_field",
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"bitreader",
"bstr",
"buddy_system_allocator",
@@ -865,7 +865,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cexpr",
"clang-sys",
"lazy_static",
@@ -886,7 +886,7 @@
checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088"
dependencies = [
"annotate-snippets",
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cexpr",
"clang-sys",
"itertools 0.12.1",
@@ -931,9 +931,9 @@
[[package]]
name = "bitflags"
-version = "2.6.0"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
+checksum = "1be3f42a67d6d345ecd59f675f3f012d6974981560836e938c22b424b85ce1be"
[[package]]
name = "bitreader"
@@ -1745,7 +1745,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98888c4bbd601524c11a7ed63f814b8825f420514f78e96f752c437ae9cbb5d1"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"bytemuck",
"drm-ffi",
"drm-fourcc",
@@ -1849,7 +1849,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74351c3392ea1ff6cd2628e0042d268ac2371cb613252ff383b6dfa50d22fa79"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"libc",
]
@@ -2194,7 +2194,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45bf55ba6dd53ad0ac115046ff999c5324c283444ee6e0be82454c4e8eb2f36a"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"drm",
"drm-fourcc",
"gbm-sys",
@@ -2218,7 +2218,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "31c683a9f13de31432e6097131d5f385898c7f0635c0f392b9d0fa165063c8ac"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"log",
"managed",
@@ -2326,7 +2326,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09831ec59b80be69e75d29cf36e16afbbe5fd1af9c1bf4689ad91c77db5aa6a6"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"libc",
"nix 0.27.1",
]
@@ -2676,7 +2676,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"futures-core",
"inotify-sys",
"libc",
@@ -2869,7 +2869,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93edd9cd673087fa7518fd63ad6c87be2cd9b4e35034b1873f3e3258c018275b"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"libbpf-sys",
"libc",
"vsprintf",
@@ -2934,7 +2934,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"libc",
]
@@ -3406,7 +3406,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"libc",
]
@@ -3417,7 +3417,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"cfg_aliases 0.1.1",
"libc",
@@ -3430,7 +3430,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"cfg_aliases 0.2.1",
"libc",
@@ -3631,7 +3631,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"foreign-types",
"libc",
@@ -4493,7 +4493,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"fallible-iterator 0.2.0",
"fallible-streaming-iterator",
"hashlink",
@@ -4547,7 +4547,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"errno",
"libc",
"linux-raw-sys 0.4.14",
@@ -5562,7 +5562,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6679b7fc2f6d6d2ea2f67555ef3ed9d71d30c5021faf9193091a5192db7dc468"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"log",
"ptr_meta",
@@ -5589,7 +5589,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f6d465de2c918779dafb769a5a4fe8d6e4fb7cc4cc6cb1a735f2f6ec68beea4"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"ptr_meta",
"uguid",
]
@@ -5778,7 +5778,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "18d8b176d4d3e420685e964f87c25df5fdd5b26d7eb0d0e7c892d771f5b81035"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"cfg-if",
"libc",
"nix 0.27.1",
@@ -5878,7 +5878,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa40e09453618c7a927c08c5a990497a2954da7c2aaa6c65e0d4f0fc975f6114"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"log",
"zerocopy 0.7.35",
]
@@ -6154,7 +6154,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f0a4bab6d420ee4a609b63ef4d5f9b5d309c6b93a029fccab70f2594c0cb3ae"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.7.0",
"downcast-rs",
"io-lifetimes",
"rustix",
diff --git a/pseudo_crate/Cargo.toml b/pseudo_crate/Cargo.toml
index 419e9da..cdb734f 100644
--- a/pseudo_crate/Cargo.toml
+++ b/pseudo_crate/Cargo.toml
@@ -37,7 +37,7 @@
bindgen = "=0.69.5"
bindgen-cli = "=0.69.5"
bit_field = "=0.10.2"
-bitflags = "=2.6.0"
+bitflags = "=2.7.0"
bitreader = "=0.3.11"
bstr = "=1.3.0"
buddy_system_allocator = "=0.11.0"