├── .gitignore ├── README.md └── test_cases ├── Cargo.lock ├── Cargo.lock.orig ├── Cargo.toml ├── rust-toolchain └── tests ├── axum ├── .gitkeep ├── argument_not_extractor.rs ├── argument_not_extractor.stderr ├── extract_self_mut.rs ├── extract_self_mut.stderr ├── extract_self_ref.rs ├── extract_self_ref.stderr ├── generics.rs ├── generics.stderr ├── invalid_attrs.rs ├── invalid_attrs.stderr ├── missing_deserialize.rs ├── missing_deserialize.stderr ├── multiple_body_extractors.rs ├── multiple_body_extractors.stderr ├── multiple_paths.rs ├── multiple_paths.stderr ├── not_a_function.rs ├── not_a_function.stderr ├── not_async.rs ├── not_async.stderr ├── not_send.rs ├── not_send.stderr ├── request_not_last.rs ├── request_not_last.stderr ├── too_many_extractors.rs ├── too_many_extractors.stderr ├── wrong_return_type.rs └── wrong_return_type.stderr ├── bevy ├── system_mismatch.rs └── system_mismatch.stderr ├── chumsky ├── json.rs └── json.stderr ├── diesel ├── bad_insertable_field.rs ├── bad_insertable_field.stderr ├── bad_sql_query.rs ├── bad_sql_query.stderr ├── invalid_query.rs ├── invalid_query.stderr ├── queryable_order_mismatch.rs └── queryable_order_mismatch.stderr ├── easy_ml ├── recursion.rs └── recursion.stderr ├── entrait ├── missing_impl_deep.rs └── missing_impl_deep.stderr ├── lib.rs ├── typed_builder ├── mismatch.rs └── mismatch.stderr └── uom ├── type_mismatch.rs └── type_mismatch.stderr /.gitignore: -------------------------------------------------------------------------------- 1 | test_cases/target 2 | .env 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Rust Foundation Project Grant 2022 2 | 3 | This repository is used to track information about my 4 | [Rust Foundation Project Grant](https://foundation.rust-lang.org/news/2022-06-14-community-grants-program-awards-announcement/) 5 | to improve error messages emitted by rustc for trait heavy crates. 6 | As part of this work I will focus on the following points: 7 | 8 | 1. Collect and categorise various examples of non-optimal error messages from the rust ecosystem. 9 | This includes error messages generated by crates like diesel, axum or nalgebra which relay heavily 10 | on complex trait bounds 11 | 2. Experiment with example cases to see which error messages could be improved by 12 | the usage of `#[rustc_on_unimplemented]` 13 | 3. Implement [RFC-2397](https://github.com/rust-lang/rfcs/blob/master/text/2397-do-not-recommend.md) 14 | 4. Experiment with example cases to see which error messages could be improved by 15 | the usage of `#[do_not_recommend]` 16 | 17 | ## Call for participation 18 | 19 | Please submit examples of bad error messages in the context of trait heavy crates 20 | as issue or PR (with minimal example) to this repository. 21 | 22 | 23 | ## Test cases 24 | 25 | | crate | test case | error type | 26 | |-----------------|-------------------------------|--------------------------------------------------| 27 | | [uom] | [type_mismatch.rs] | type mismatch | 28 | | [typed_builder] | [mismatch.rs] | type mismatch + missing free standing function | 29 | | [easy_ml] | [recursion.rs] | type recursion | 30 | | [diesel] | [bad_insertable_field.rs] | trait not implemented + misleading wildcard impl | 31 | | [diesel] | [bad_sql_query.rs] | trait not implemented | 32 | | [diesel] | [invalid_query.rs] | traits not implemented + "duplicated errors" | 33 | | [diesel] | [queryable_order_mismatch.rs] | trait not implemented with large types | 34 | | [chumsky] | [json.rs] | associated type mismatch | 35 | | [bevy] | [system_mismatch.rs] | trait not implemented + HRTB error | 36 | | [axum] | [argument_not_extractor.rs] | debug_handler | 37 | | [axum] | [extract_self_mut.rs] | debug_handler | 38 | | [axum] | [extract_self_ref.rs] | debug_handler | 39 | | [axum] | [generics.rs] | debug_handler | 40 | | [axum] | [invalid_attrs.rs] | debug_handler | 41 | | [axum] | [missing_deserialize.rs] | trait not implemented | 42 | | [axum] | [multiple_body_extractors.rs] | debug_handler | 43 | | [axum] | [multiple_paths.rs] | debug_handler | 44 | | [axum] | [not_a_function.rs] | debug_handler | 45 | | [axum] | [not_async.rs] | debug_handler | 46 | | [axum] | [not_send.rs] | debug_handler | 47 | | [axum] | [request_not_last.rs] | debug_handler | 48 | | [axum] | [too_many_extractors.rs] | debug_handler | 49 | | [axum] | [wrong_return_type.rs] | debug_handler | 50 | | [entrait] | [missing_impl_deep.rs] | trait not implemented | 51 | 52 | 53 | [uom]: https://crates.io/crates/uom 54 | [typed_builder]: https://crates.io/crates/typed_builder 55 | [easy_ml]: https://crates.io/crates/easy_ml 56 | [diesel]: https://crates.io/crates/diesel 57 | [chumsky]: https://crates.io/crates/chumsky 58 | [bevy]: https://crates.io/crates/bevy 59 | [axum]: https://crates.io/crates/axum 60 | [entrait]: https://crates.io/crates/entrait 61 | 62 | [type_mismatch.rs]: #uom_type_mismatch 63 | [mismatch.rs]: #typed_builder_mismatch 64 | [recursion.rs]: #easy_ml_recursion 65 | [bad_insertable_field.rs]: #diesel_bad_insertable 66 | [bad_sql_query.rs]: #diesel_bad_sql_query 67 | [invalid_query.rs]: #diesel_invalid_query 68 | [queryable_order_mismatch.rs]: #diesel_queryable 69 | [json.rs]: #chumsky_json 70 | [system_mismatch.rs]: #bevy_system_mismatch 71 | [argument_not_extractor.rs]: #axum_argument_not_extractor 72 | [extract_self_mut.rs]: #axum_extract_self_mut 73 | [extract_self_ref.rs]: #axum_extract_self_ref 74 | [generics.rs]: #axum_generics 75 | [invalid_attrs.rs]: #axum_invalid_attrs 76 | [missing_deserialize.rs]: #axum_missing_deserialize 77 | [multiple_body_extractors.rs]: #axum_multiple_body_extractors 78 | [multiple_paths.rs]: #axum_multiple_paths 79 | [not_a_function.rs]: #axum_not_a_function 80 | [not_async.rs]: #axum_not_async 81 | [not_send.rs]: #axum_not_send 82 | [request_not_last.rs]: #axum_not_last 83 | [too_many_extractors.rs]: #axum_too_many_extractors.rs] 84 | [wrong_return_type.rs]: #axum_wrong_return_type 85 | [missing_impl_deep.rs]: #entrait_missing_impl_deep 86 | 87 | ### uom 88 | 89 | #### type_mismatch.rs 106 | 107 | Versions: 108 | 109 | | version | link (code) | link (error message) | change since last version | 110 | |---------|------------------------------|--------------------------------------|---------------------------| 111 | | 1 | [mismatch.rs][mismatch.rs-1] | [mismatch.stderr][mismatch.stderr-1] | | 112 | 113 | [mismatch.rs-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/typed_builder/mismatch.rs 114 | [mismatch.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/typed_builder/mismatch.stderr 115 | 116 | ### entrait 117 | 118 | #### missing_impl_deep.rs 119 | 120 | Versions: 121 | 122 | | version | link (code) | link (error message) | change since last version | 123 | |---------|--------------------------------|----------------------------------------|---------------------------| 124 | | 1 | [missing_impl_deep.rs][missing_impl_deep.rs-1] | [missing_impl_deep.stderr][missing_impl_deep.stderr-1] | | 125 | 126 | [missing_impl_deep.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/b90e741dc3a4d1615f087b6011ceb3eb65c64ee7/test_cases/tests/entrait/missing_impl_deep.rs 127 | [missing_impl_deep.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/b90e741dc3a4d1615f087b6011ceb3eb65c64ee7/test_cases/tests/entrait/missing_impl_deep.stderr 128 | 129 | 130 | ### easy_ml 131 | 132 | #### recursion.rs 133 | 134 | Versions: 135 | 136 | | version | link (code) | link (error message) | change since last version | 137 | |---------|--------------------------------|----------------------------------------|---------------------------| 138 | | 1 | [recursion.rs][recursion.rs-1] | [recursion.stderr][recursion.stderr-1] | | 139 | 140 | [recursion.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/easy_ml/recursion.rs 141 | [recursion.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/easy_ml/recursion.stderr 142 | 143 | 144 | ### diesel 145 | 146 | #### bad_insertable_field.rs 147 | 148 | | version | link (code) | link (error message) | change since last version | 149 | |---------|------------------------------------------------|-------------------------------------------------------|---------------------------| 150 | | 1 | [bad_insertable_field.rs][bad_insertable.rs-1] | [bad_insertable_field.stderr][bad_insertable.stderr-1] | | 151 | | 2 | [bad_insertable_field.rs][bad_insertable.rs-2] | [bad_insertable_field.stderr][bad_insertable.stderr-2] | https://github.com/diesel-rs/diesel/pull/3228 improves the spans for certain trait bounds so that compiler errors point to the corresponding struct fields instead of the derive | 152 | 153 | 154 | [bad_insertable.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/bad_insertable_field.rs 155 | [bad_insertable.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/bad_insertable_field.stderr 156 | [bad_insertable.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/7322e4ba58f7a47b27bb7e88e9ded056fdb79e99/test_cases/tests/diesel/bad_insertable_field.rs 157 | [bad_insertable.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/7322e4ba58f7a47b27bb7e88e9ded056fdb79e99/test_cases/tests/diesel/bad_insertable_field.stderr 158 | 159 | 160 | #### bad_sql_query.rs 161 | 162 | | version | link (code) | link (error message) | change since last version | 163 | |---------|----------------------------------------|------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------| 164 | | 1 | [bad_sql_query.rs][bad_sql_query.rs-1] | [bad_sql_query.stderr][bad_sql_query.stderr-1] | | 165 | | 2 | [bad_sql_query.rs][bad_sql_query.rs-2] | [bad_sql_query.stderr][bad_sql_query.stderr-2] | Add a `#[rustc_on_unimplemented]` on the corresponding trait. https://github.com/diesel-rs/diesel/commit/958391a3e793e409d0a925e0cc2317726c2d84b2 | 166 | 167 | 168 | 169 | [bad_sql_query.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/bad_sql_query.rs 170 | [bad_sql_query.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/bad_sql_query.stderr 171 | [bad_sql_query.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/83fd28b310b7f33a630cb851f7fd8a5cc610d3fc/test_cases/tests/bad_sql_query.rs 172 | [bad_sql_query.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/83fd28b310b7f33a630cb851f7fd8a5cc610d3fc/test_cases/tests/diesel/bad_sql_query.stderr 173 | 174 | 175 | #### invalid_query.rs 176 | 177 | | version | link (code) | link (error message) | change since last version | 178 | |---------|----------------------------------------|------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------| 179 | | 1 | [invalid_query.rs][invalid_query.rs-1] | [invalid_query.stderr][invalid_query.stderr-1] | | 180 | | 2 | [invalid_query.rs][invalid_query.rs-2] | [invalid_query.stderr][invalid_query.stderr-2] | Add a `#[rustc_on_unimplemented]` on the corresponding trait. https://github.com/diesel-rs/diesel/commit/958391a3e793e409d0a925e0cc2317726c2d84b2 | 181 | 182 | [invalid_query.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/invalid_query.rs 183 | [invalid_query.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/invalid_query.stderr 184 | [invalid_query.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/83fd28b310b7f33a630cb851f7fd8a5cc610d3fc/test_cases/tests/diesel/invalid_query.rs 185 | [invalid_query.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/83fd28b310b7f33a630cb851f7fd8a5cc610d3fc/test_cases/tests/diesel/invalid_query.stderr 186 | 187 | 188 | #### queryable_order_mismatch.rs 189 | 190 | | version | link (code) | link (error message) | change since last version | 191 | |---------|--------------------------------|----------------------------------------|---------------------------| 192 | | 1 | [queryable_order_mismatch.rs][queryable_order_mismatch.rs-1] | [queryable_order_mismatch.stderr][queryable_order_mismatch.stderr-1] 193 | 194 | [queryable_order_mismatch.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/queryable_order_mismatch.rs 195 | [queryable_order_mismatch.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/diesel/queryable_order_mismatch.stderr 196 | 197 | ### chumsky 198 | 199 | #### json.rs 200 | 201 | 202 | | version | link (code) | link (error message) | change since last version | 203 | |---------|----------------------|-------------------------------|---------------------------| 204 | | 1 | [json.rs][json.rs-1] | [json.stderr][json.stderr-1] | | 205 | 206 | [json.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/chumsky/json.rs 207 | [json.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/chumsky/json.stderr 208 | 209 | ### bevy 210 | 211 | #### system_mismatch.rs 212 | 213 | 214 | | version | link (code) | link (error message) | change since last version | 215 | |---------|--------------------------------------------|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------| 216 | | 1 | [system_mismatch.rs][system_mismatch.rs-1] | [system_mismatch.stderr][system_mismatch.stderr-1] | | 217 | | 2 | [system_mismatch.rs][system_mismatch.rs-2] | [system_mismatch.stderr][system_mismatch.stderr-2] | https://github.com/bevyengine/bevy/pull/5786, which introduces `#[rustc_on_unimplemented]` attributes in multiple locations | 218 | | | | | | 219 | 220 | [system_mismatch.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/bevy/system_mismatch.rs 221 | [system_mismatch.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/bevy/system_mismatch.stderr 222 | [system_mismatch.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/e69f4f7e5bfa8faeeeb43369b206c32c45c3b5d0/test_cases/tests/bevy/system_mismatch.rs 223 | [system_mismatch.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/e69f4f7e5bfa8faeeeb43369b206c32c45c3b5d0/test_cases/tests/bevy/system_mismatch.stderr 224 | 225 | ### axum 226 | 227 | axum provides a `#[debug_handler]` attribute which emits better error messages is some cases 228 | 229 | #### argument_not_extractor.rs 230 | 231 | | version | link (code) | link (error message) | change since last version | 232 | |---------|----------------------------------------------------------|------------------------------------------------------------------|---------------------------------------------------------------------| 233 | | 1 | [argument_not_extractor.rs][argument_not_extractor.rs-1] | [argument_not_extractor.stderr][argument_not_extractor.stderr-1] | | 234 | | 2 | [argument_not_extractor.rs][argument_not_extractor.rs-2] | [argument_not_extractor.stderr][argument_not_extractor.stderr-2] | [Fixes to the error spans of `#[debug_handler]`][debug_handler_fix] | 235 | | 3 | [argument_not_extractor.rs][argument_not_extractor.rs-3] | [argument_not_extractor.stderr][argument_not_extractor.stderr-3] | [Point to `#[debug_handler]`][point_to_debug_handler] | 236 | 237 | [argument_not_extractor.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/argument_not_extractor.rs 238 | [argument_not_extractor.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/argument_not_extractor.stderr 239 | [argument_not_extractor.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/argument_not_extractor.rs 240 | [argument_not_extractor.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/argument_not_extractor.stderr 241 | [debug_handler_fix]:https://github.com/weiznich/axum/commit/d5d076dae495d5f76c364182e070d26ebe4972b8 242 | [argument_not_extractor.rs-3]:https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/argument_not_extractor.rs 243 | [argument_not_extractor.stderr-3]: https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/argument_not_extractor.stderr 244 | [point_to_debug_handler]: https://github.com/weiznich/axum/commit/a151aac96a8569c59df2de2c0ae3d645ab1c6430 245 | 246 | #### extract_self_ref 247 | 248 | | version | link (code) | link (error message) | change since last version | 249 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 250 | | 1 | [extract_self_ref.rs][extract_self_ref.rs-1] | [extract_self_ref.stderr][extract_self_ref.stderr-1] | | 251 | 252 | [extract_self_ref.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/extract_self_ref.rs 253 | [extract_self_ref.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/extract_self_ref.stderr 254 | 255 | #### extract_self_mut 256 | 257 | | version | link (code) | link (error message) | change since last version | 258 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 259 | | 1 | [extract_self_mut.rs][extract_self_mut.rs-1] | [extract_self_mut.stderr][extract_self_mut.stderr-1] | | 260 | 261 | [extract_self_mut.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/extract_self_mut.rs 262 | [extract_self_mut.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/extract_self_mut.stderr 263 | 264 | #### generics 265 | 266 | | version | link (code) | link (error message) | change since last version | 267 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 268 | | 1 | [generics.rs][generics.rs-1] | [generics.stderr][generics.stderr-1] | | 269 | 270 | [generics.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/generics.rs 271 | [generics.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/generics.stderr 272 | 273 | #### invalid_attrs 274 | 275 | | version | link (code) | link (error message) | change since last version | 276 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 277 | | 1 | [invalid_attrs.rs][invalid_attrs.rs-1] | [invalid_attrs.stderr][invalid_attrs.stderr-1] | | 278 | 279 | [invalid_attrs.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/invalid_attrs.rs 280 | [invalid_attrs.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/invalid_attrs.stderr 281 | 282 | #### missing_deserialize.rs 283 | 284 | | version | link (code) | link (error message) | change since last version | 285 | |---------|----------------------------------------------------|------------------------------------------------------------|-------------------------------------------------------| 286 | | 1 | [missing_deserialize.rs][missing_deserialize.rs-1] | [missing_deserialize.stderr][missing_deserialize.stderr-1] | | 287 | | 2 | [missing_deserialize.rs][missing_deserialize.rs-2] | [missing_deserialize.stderr][missing_deserialize.stderr-2] | [Point to `#[debug_handler]`][point_to_debug_handler] | 288 | 289 | 290 | [missing_deserialize.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/missing_deserialize.rs 291 | [missing_deserialize.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/missing_deserialize.stderr 292 | [point_to_debug_handler]: https://github.com/weiznich/axum/commit/a151aac96a8569c59df2de2c0ae3d645ab1c6430 293 | [missing_deserialize.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/missing_deserialize.rs 294 | [missing_deserialize.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/missing_deserialize.stderr 295 | 296 | #### multiple_body_extractors 297 | 298 | | version | link (code) | link (error message) | change since last version | 299 | |---------|--------------------------------------------------------------|----------------------------------------------------------------------|---------------------------------------------------------------------| 300 | | 1 | [multiple_body_extractors.rs][multiple_body_extractors.rs-1] | [multiple_body_extractors.stderr][multiple_body_extractors.stderr-1] | | 301 | | 2 | [multiple_body_extractors.rs][multiple_body_extractors.rs-2] | [multiple_body_extractors.stderr][multiple_body_extractors.stderr-2] | [Fixes to the error spans of `#[debug_handler]`][debug_handler_fix] | 302 | | 3 | [multiple_body_extractors.rs][multiple_body_extractors.rs-3] | [multiple_body_extractors.stderr][multiple_body_extractors.stderr-3] | [Point to `#[debug_handler]`][point_to_debug_handler] | 303 | 304 | 305 | [multiple_body_extractors.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/multiple_body_extractors.rs 306 | [multiple_body_extractors.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/multiple_body_extractors.stderr 307 | [multiple_body_extractors.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/multiple_body_extractors.rs 308 | [multiple_body_extractors.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/multiple_body_extractors.stderr 309 | [multiple_body_extractors.rs-3]:https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/multiple_body_extractors.rs 310 | [multiple_body_extractors.stderr-3]: https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/multiple_body_extractors.stderr 311 | [point_to_docs]: https://github.com/weiznich/axum/commit/a151aac96a8569c59df2de2c0ae3d645ab1c6430 312 | [debug_handler_fix]:https://github.com/weiznich/axum/commit/d5d076dae495d5f76c364182e070d26ebe4972b8 313 | 314 | #### multiple_paths 315 | 316 | | version | link (code) | link (error message) | change since last version | 317 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 318 | | 1 | [multiple_paths.rs][multiple_paths.rs-1] | [multiple_paths.stderr][multiple_paths.stderr-1] | | 319 | 320 | [multiple_paths.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/multiple_paths.rs 321 | [multiple_paths.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/multiple_paths.stderr 322 | 323 | #### not_a_function 324 | 325 | | version | link (code) | link (error message) | change since last version | 326 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 327 | | 1 | [not_a_function.rs][not_a_function.rs-1] | [not_a_function.stderr][not_a_function.stderr-1] | | 328 | 329 | [not_a_function.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_a_function.rs 330 | [not_a_function.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_a_function.stderr 331 | 332 | #### not_async 333 | 334 | | version | link (code) | link (error message) | change since last version | 335 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 336 | | 1 | [not_async.rs][not_async.rs-1] | [not_async.stderr][not_async.stderr-1] | | 337 | 338 | [not_async.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_async.rs 339 | [not_async.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_async.stderr 340 | 341 | #### not_send 342 | 343 | | version | link (code) | link (error message) | change since last version | 344 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 345 | | 1 | [not_send.rs][not_send.rs-1] | [not_send.stderr][not_send.stderr-1] | | 346 | 347 | [not_send.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_send.rs 348 | [not_send.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/not_send.stderr 349 | 350 | 351 | #### request_not_last 352 | 353 | | version | link (code) | link (error message) | change since last version | 354 | |---------|----------------------------------------------|------------------------------------------------------|---------------------------------------------------------------------| 355 | | 1 | [request_not_last.rs][request_not_last.rs-1] | [request_not_last.stderr][request_not_last.stderr-1] | | 356 | | 2 | [request_not_last.rs][request_not_last.rs-2] | [request_not_last.stderr][request_not_last.stderr-2] | [Fixes to the error spans of `#[debug_handler]`][debug_handler_fix] | 357 | | 3 | [request_not_last.rs][request_not_last.rs-3] | [request_not_last.stderr][request_not_last.stderr-3] | [Point out as part of the error message, that `Request` always needs to be the last handler argument][improve_error_message_for_request_not_last] | 358 | 359 | [request_not_last.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/request_not_last.rs 360 | [request_not_last.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/request_not_last.stderr 361 | [improve_error_message_for_request_not_last]: https://github.com/weiznich/axum/commit/a151aac96a8569c59df2de2c0ae3d645ab1c6430 362 | [debug_handler_fix]:https://github.com/weiznich/axum/commit/d5d076dae495d5f76c364182e070d26ebe4972b8 363 | [request_not_last.rs-2]:https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/request_not_last.rs 364 | [request_not_last.stderr-2]: https://github.com/weiznich/rust-foundation-community-grant/blob/3d98d3813285b30260ecc65b40ae8b340ac35cae/test_cases/tests/axum/request_not_last.stderr 365 | [request_not_last.rs-3]:https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/request_not_last.rs 366 | [request_not_last.stderr-3]: https://github.com/weiznich/rust-foundation-community-grant/blob/a7d2bf8a408580d6a3b047fe194096bf39479719/test_cases/tests/axum/request_not_last.stderr 367 | 368 | 369 | #### too_many_extractors 370 | 371 | | version | link (code) | link (error message) | change since last version | 372 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 373 | | 1 | [too_many_extractors.rs][too_many_extractors.rs-1] | [too_many_extractors.stderr][too_many_extractors.stderr-1] | | 374 | 375 | [too_many_extractors.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/too_many_extractors.rs 376 | [too_many_extractors.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/too_many_extractors.stderr 377 | 378 | #### wrong_return_type.rs 379 | 380 | | version | link (code) | link (error message) | change since last version | 381 | |---------|------------------------------------------------|--------------------------------------------------------|---------------------------| 382 | | 1 | [wrong_return_type.rs][wrong_return_type.rs-1] | [wrong_return_type.stderr][wrong_return_type.stderr-1] | | 383 | 384 | [wrong_return_type.rs-1]:https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/wrong_return_type.rs 385 | [wrong_return_type.stderr-1]: https://github.com/weiznich/rust-foundation-community-grant/blob/883de46cbea5873bcc4af60e47f872efaa77a2b7/test_cases/tests/axum/wrong_return_type.stderr 386 | -------------------------------------------------------------------------------- /test_cases/Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "ab_glyph" 7 | version = "0.2.17" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "04a9283dace1c41c265496614998d5b9c4a97b3eb770e804f007c5144bf03f2b" 10 | dependencies = [ 11 | "ab_glyph_rasterizer", 12 | "owned_ttf_parser", 13 | ] 14 | 15 | [[package]] 16 | name = "ab_glyph_rasterizer" 17 | version = "0.1.7" 18 | source = "registry+https://github.com/rust-lang/crates.io-index" 19 | checksum = "330223a1aecc308757b9926e9391c9b47f8ef2dbd8aea9df88312aea18c5e8d6" 20 | 21 | [[package]] 22 | name = "adler" 23 | version = "1.0.2" 24 | source = "registry+https://github.com/rust-lang/crates.io-index" 25 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 26 | 27 | [[package]] 28 | name = "ahash" 29 | version = "0.3.8" 30 | source = "registry+https://github.com/rust-lang/crates.io-index" 31 | checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217" 32 | dependencies = [ 33 | "const-random", 34 | ] 35 | 36 | [[package]] 37 | name = "ahash" 38 | version = "0.7.6" 39 | source = "registry+https://github.com/rust-lang/crates.io-index" 40 | checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" 41 | dependencies = [ 42 | "getrandom", 43 | "once_cell", 44 | "version_check", 45 | ] 46 | 47 | [[package]] 48 | name = "aho-corasick" 49 | version = "0.7.19" 50 | source = "registry+https://github.com/rust-lang/crates.io-index" 51 | checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e" 52 | dependencies = [ 53 | "memchr", 54 | ] 55 | 56 | [[package]] 57 | name = "alsa" 58 | version = "0.6.0" 59 | source = "registry+https://github.com/rust-lang/crates.io-index" 60 | checksum = "5915f52fe2cf65e83924d037b6c5290b7cee097c6b5c8700746e6168a343fd6b" 61 | dependencies = [ 62 | "alsa-sys", 63 | "bitflags", 64 | "libc", 65 | "nix 0.23.1", 66 | ] 67 | 68 | [[package]] 69 | name = "alsa-sys" 70 | version = "0.3.1" 71 | source = "registry+https://github.com/rust-lang/crates.io-index" 72 | checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" 73 | dependencies = [ 74 | "libc", 75 | "pkg-config", 76 | ] 77 | 78 | [[package]] 79 | name = "android_log-sys" 80 | version = "0.2.0" 81 | source = "registry+https://github.com/rust-lang/crates.io-index" 82 | checksum = "85965b6739a430150bdd138e2374a98af0c3ee0d030b3bb7fc3bddff58d0102e" 83 | 84 | [[package]] 85 | name = "android_logger" 86 | version = "0.10.1" 87 | source = "registry+https://github.com/rust-lang/crates.io-index" 88 | checksum = "d9ed09b18365ed295d722d0b5ed59c01b79a826ff2d2a8f73d5ecca8e6fb2f66" 89 | dependencies = [ 90 | "android_log-sys", 91 | "env_logger", 92 | "lazy_static", 93 | "log", 94 | ] 95 | 96 | [[package]] 97 | name = "android_system_properties" 98 | version = "0.1.5" 99 | source = "registry+https://github.com/rust-lang/crates.io-index" 100 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 101 | dependencies = [ 102 | "libc", 103 | ] 104 | 105 | [[package]] 106 | name = "ansi_term" 107 | version = "0.12.1" 108 | source = "registry+https://github.com/rust-lang/crates.io-index" 109 | checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" 110 | dependencies = [ 111 | "winapi", 112 | ] 113 | 114 | [[package]] 115 | name = "anyhow" 116 | version = "1.0.65" 117 | source = "registry+https://github.com/rust-lang/crates.io-index" 118 | checksum = "98161a4e3e2184da77bb14f02184cdd111e83bbbcc9979dfee3c44b9a85f5602" 119 | 120 | [[package]] 121 | name = "approx" 122 | version = "0.5.1" 123 | source = "registry+https://github.com/rust-lang/crates.io-index" 124 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 125 | dependencies = [ 126 | "num-traits", 127 | ] 128 | 129 | [[package]] 130 | name = "arrayvec" 131 | version = "0.7.2" 132 | source = "registry+https://github.com/rust-lang/crates.io-index" 133 | checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" 134 | 135 | [[package]] 136 | name = "ash" 137 | version = "0.37.0+1.3.209" 138 | source = "registry+https://github.com/rust-lang/crates.io-index" 139 | checksum = "006ca68e0f2b03f22d6fa9f2860f85aed430d257fec20f8879b2145e7c7ae1a6" 140 | dependencies = [ 141 | "libloading", 142 | ] 143 | 144 | [[package]] 145 | name = "async-channel" 146 | version = "1.7.1" 147 | source = "registry+https://github.com/rust-lang/crates.io-index" 148 | checksum = "e14485364214912d3b19cc3435dde4df66065127f05fa0d75c712f36f12c2f28" 149 | dependencies = [ 150 | "concurrent-queue", 151 | "event-listener", 152 | "futures-core", 153 | ] 154 | 155 | [[package]] 156 | name = "async-executor" 157 | version = "1.4.1" 158 | source = "registry+https://github.com/rust-lang/crates.io-index" 159 | checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965" 160 | dependencies = [ 161 | "async-task", 162 | "concurrent-queue", 163 | "fastrand", 164 | "futures-lite", 165 | "once_cell", 166 | "slab", 167 | ] 168 | 169 | [[package]] 170 | name = "async-task" 171 | version = "4.3.0" 172 | source = "registry+https://github.com/rust-lang/crates.io-index" 173 | checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524" 174 | 175 | [[package]] 176 | name = "async-trait" 177 | version = "0.1.57" 178 | source = "registry+https://github.com/rust-lang/crates.io-index" 179 | checksum = "76464446b8bc32758d7e88ee1a804d9914cd9b1cb264c029899680b0be29826f" 180 | dependencies = [ 181 | "proc-macro2", 182 | "quote", 183 | "syn", 184 | ] 185 | 186 | [[package]] 187 | name = "autocfg" 188 | version = "1.1.0" 189 | source = "registry+https://github.com/rust-lang/crates.io-index" 190 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 191 | 192 | [[package]] 193 | name = "axum" 194 | version = "0.6.0-rc.2" 195 | source = "git+https://github.com/weiznich/axum?rev=a151aac96a8569c59df2de2c0ae3d645ab1c6430#a151aac96a8569c59df2de2c0ae3d645ab1c6430" 196 | dependencies = [ 197 | "async-trait", 198 | "axum-core", 199 | "bitflags", 200 | "bytes", 201 | "futures-util", 202 | "http", 203 | "http-body", 204 | "hyper", 205 | "itoa", 206 | "matchit", 207 | "memchr", 208 | "mime", 209 | "percent-encoding", 210 | "pin-project-lite", 211 | "serde", 212 | "serde_json", 213 | "serde_path_to_error", 214 | "serde_urlencoded", 215 | "sync_wrapper", 216 | "tokio", 217 | "tower", 218 | "tower-http", 219 | "tower-layer", 220 | "tower-service", 221 | ] 222 | 223 | [[package]] 224 | name = "axum-core" 225 | version = "0.3.0-rc.2" 226 | source = "git+https://github.com/weiznich/axum?rev=a151aac96a8569c59df2de2c0ae3d645ab1c6430#a151aac96a8569c59df2de2c0ae3d645ab1c6430" 227 | dependencies = [ 228 | "async-trait", 229 | "bytes", 230 | "futures-util", 231 | "http", 232 | "http-body", 233 | "mime", 234 | "tower-layer", 235 | "tower-service", 236 | ] 237 | 238 | [[package]] 239 | name = "axum-macros" 240 | version = "0.3.0-rc.1" 241 | source = "git+https://github.com/weiznich/axum?rev=a151aac96a8569c59df2de2c0ae3d645ab1c6430#a151aac96a8569c59df2de2c0ae3d645ab1c6430" 242 | dependencies = [ 243 | "heck", 244 | "proc-macro2", 245 | "quote", 246 | "syn", 247 | ] 248 | 249 | [[package]] 250 | name = "base64" 251 | version = "0.13.0" 252 | source = "registry+https://github.com/rust-lang/crates.io-index" 253 | checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" 254 | 255 | [[package]] 256 | name = "bevy" 257 | version = "0.9.0-dev" 258 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 259 | dependencies = [ 260 | "bevy_internal", 261 | ] 262 | 263 | [[package]] 264 | name = "bevy_animation" 265 | version = "0.9.0-dev" 266 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 267 | dependencies = [ 268 | "bevy_app", 269 | "bevy_asset", 270 | "bevy_core", 271 | "bevy_ecs", 272 | "bevy_hierarchy", 273 | "bevy_math", 274 | "bevy_reflect", 275 | "bevy_time", 276 | "bevy_transform", 277 | "bevy_utils", 278 | ] 279 | 280 | [[package]] 281 | name = "bevy_app" 282 | version = "0.9.0-dev" 283 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 284 | dependencies = [ 285 | "bevy_derive", 286 | "bevy_ecs", 287 | "bevy_reflect", 288 | "bevy_tasks", 289 | "bevy_utils", 290 | "wasm-bindgen", 291 | "web-sys", 292 | ] 293 | 294 | [[package]] 295 | name = "bevy_asset" 296 | version = "0.9.0-dev" 297 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 298 | dependencies = [ 299 | "anyhow", 300 | "bevy_app", 301 | "bevy_diagnostic", 302 | "bevy_ecs", 303 | "bevy_log", 304 | "bevy_reflect", 305 | "bevy_tasks", 306 | "bevy_utils", 307 | "crossbeam-channel", 308 | "downcast-rs", 309 | "fastrand", 310 | "js-sys", 311 | "ndk-glue 0.5.2", 312 | "notify", 313 | "parking_lot 0.12.1", 314 | "serde", 315 | "thiserror", 316 | "wasm-bindgen", 317 | "wasm-bindgen-futures", 318 | "web-sys", 319 | ] 320 | 321 | [[package]] 322 | name = "bevy_audio" 323 | version = "0.9.0-dev" 324 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 325 | dependencies = [ 326 | "anyhow", 327 | "bevy_app", 328 | "bevy_asset", 329 | "bevy_ecs", 330 | "bevy_reflect", 331 | "bevy_utils", 332 | "parking_lot 0.12.1", 333 | "rodio", 334 | ] 335 | 336 | [[package]] 337 | name = "bevy_core" 338 | version = "0.9.0-dev" 339 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 340 | dependencies = [ 341 | "bevy_app", 342 | "bevy_ecs", 343 | "bevy_math", 344 | "bevy_reflect", 345 | "bevy_tasks", 346 | "bevy_utils", 347 | "bytemuck", 348 | ] 349 | 350 | [[package]] 351 | name = "bevy_core_pipeline" 352 | version = "0.9.0-dev" 353 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 354 | dependencies = [ 355 | "bevy_app", 356 | "bevy_asset", 357 | "bevy_derive", 358 | "bevy_ecs", 359 | "bevy_reflect", 360 | "bevy_render", 361 | "bevy_transform", 362 | "bevy_utils", 363 | "radsort", 364 | "serde", 365 | ] 366 | 367 | [[package]] 368 | name = "bevy_derive" 369 | version = "0.9.0-dev" 370 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 371 | dependencies = [ 372 | "bevy_macro_utils", 373 | "quote", 374 | "syn", 375 | ] 376 | 377 | [[package]] 378 | name = "bevy_diagnostic" 379 | version = "0.9.0-dev" 380 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 381 | dependencies = [ 382 | "bevy_app", 383 | "bevy_ecs", 384 | "bevy_log", 385 | "bevy_time", 386 | "bevy_utils", 387 | ] 388 | 389 | [[package]] 390 | name = "bevy_ecs" 391 | version = "0.9.0-dev" 392 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 393 | dependencies = [ 394 | "async-channel", 395 | "bevy_ecs_macros", 396 | "bevy_ptr", 397 | "bevy_reflect", 398 | "bevy_tasks", 399 | "bevy_utils", 400 | "downcast-rs", 401 | "fixedbitset", 402 | "fxhash", 403 | "serde", 404 | "thread_local", 405 | ] 406 | 407 | [[package]] 408 | name = "bevy_ecs_macros" 409 | version = "0.9.0-dev" 410 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 411 | dependencies = [ 412 | "bevy_macro_utils", 413 | "proc-macro2", 414 | "quote", 415 | "syn", 416 | ] 417 | 418 | [[package]] 419 | name = "bevy_encase_derive" 420 | version = "0.9.0-dev" 421 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 422 | dependencies = [ 423 | "bevy_macro_utils", 424 | "encase_derive_impl", 425 | ] 426 | 427 | [[package]] 428 | name = "bevy_gilrs" 429 | version = "0.9.0-dev" 430 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 431 | dependencies = [ 432 | "bevy_app", 433 | "bevy_ecs", 434 | "bevy_input", 435 | "bevy_utils", 436 | "gilrs", 437 | ] 438 | 439 | [[package]] 440 | name = "bevy_gltf" 441 | version = "0.9.0-dev" 442 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 443 | dependencies = [ 444 | "anyhow", 445 | "base64", 446 | "bevy_animation", 447 | "bevy_app", 448 | "bevy_asset", 449 | "bevy_core", 450 | "bevy_core_pipeline", 451 | "bevy_ecs", 452 | "bevy_hierarchy", 453 | "bevy_log", 454 | "bevy_math", 455 | "bevy_pbr", 456 | "bevy_reflect", 457 | "bevy_render", 458 | "bevy_scene", 459 | "bevy_tasks", 460 | "bevy_transform", 461 | "bevy_utils", 462 | "gltf", 463 | "percent-encoding", 464 | "thiserror", 465 | ] 466 | 467 | [[package]] 468 | name = "bevy_hierarchy" 469 | version = "0.9.0-dev" 470 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 471 | dependencies = [ 472 | "bevy_app", 473 | "bevy_ecs", 474 | "bevy_reflect", 475 | "bevy_utils", 476 | "smallvec", 477 | ] 478 | 479 | [[package]] 480 | name = "bevy_input" 481 | version = "0.9.0-dev" 482 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 483 | dependencies = [ 484 | "bevy_app", 485 | "bevy_ecs", 486 | "bevy_math", 487 | "bevy_reflect", 488 | "bevy_utils", 489 | ] 490 | 491 | [[package]] 492 | name = "bevy_internal" 493 | version = "0.9.0-dev" 494 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 495 | dependencies = [ 496 | "bevy_animation", 497 | "bevy_app", 498 | "bevy_asset", 499 | "bevy_audio", 500 | "bevy_core", 501 | "bevy_core_pipeline", 502 | "bevy_derive", 503 | "bevy_diagnostic", 504 | "bevy_ecs", 505 | "bevy_gilrs", 506 | "bevy_gltf", 507 | "bevy_hierarchy", 508 | "bevy_input", 509 | "bevy_log", 510 | "bevy_math", 511 | "bevy_pbr", 512 | "bevy_ptr", 513 | "bevy_reflect", 514 | "bevy_render", 515 | "bevy_scene", 516 | "bevy_sprite", 517 | "bevy_tasks", 518 | "bevy_text", 519 | "bevy_time", 520 | "bevy_transform", 521 | "bevy_ui", 522 | "bevy_utils", 523 | "bevy_window", 524 | "bevy_winit", 525 | "ndk-glue 0.5.2", 526 | ] 527 | 528 | [[package]] 529 | name = "bevy_log" 530 | version = "0.9.0-dev" 531 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 532 | dependencies = [ 533 | "android_log-sys", 534 | "bevy_app", 535 | "bevy_ecs", 536 | "bevy_utils", 537 | "console_error_panic_hook", 538 | "tracing-log", 539 | "tracing-subscriber", 540 | "tracing-wasm", 541 | ] 542 | 543 | [[package]] 544 | name = "bevy_macro_utils" 545 | version = "0.9.0-dev" 546 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 547 | dependencies = [ 548 | "quote", 549 | "syn", 550 | "toml", 551 | ] 552 | 553 | [[package]] 554 | name = "bevy_math" 555 | version = "0.9.0-dev" 556 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 557 | dependencies = [ 558 | "glam", 559 | ] 560 | 561 | [[package]] 562 | name = "bevy_mikktspace" 563 | version = "0.9.0-dev" 564 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 565 | dependencies = [ 566 | "glam", 567 | ] 568 | 569 | [[package]] 570 | name = "bevy_pbr" 571 | version = "0.9.0-dev" 572 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 573 | dependencies = [ 574 | "bevy_app", 575 | "bevy_asset", 576 | "bevy_core_pipeline", 577 | "bevy_derive", 578 | "bevy_ecs", 579 | "bevy_math", 580 | "bevy_reflect", 581 | "bevy_render", 582 | "bevy_transform", 583 | "bevy_utils", 584 | "bevy_window", 585 | "bitflags", 586 | "bytemuck", 587 | "radsort", 588 | ] 589 | 590 | [[package]] 591 | name = "bevy_ptr" 592 | version = "0.9.0-dev" 593 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 594 | 595 | [[package]] 596 | name = "bevy_reflect" 597 | version = "0.9.0-dev" 598 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 599 | dependencies = [ 600 | "bevy_ptr", 601 | "bevy_reflect_derive", 602 | "bevy_utils", 603 | "downcast-rs", 604 | "erased-serde", 605 | "glam", 606 | "once_cell", 607 | "parking_lot 0.12.1", 608 | "serde", 609 | "smallvec", 610 | "thiserror", 611 | ] 612 | 613 | [[package]] 614 | name = "bevy_reflect_derive" 615 | version = "0.9.0-dev" 616 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 617 | dependencies = [ 618 | "bevy_macro_utils", 619 | "proc-macro2", 620 | "quote", 621 | "syn", 622 | "uuid", 623 | ] 624 | 625 | [[package]] 626 | name = "bevy_render" 627 | version = "0.9.0-dev" 628 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 629 | dependencies = [ 630 | "anyhow", 631 | "bevy_app", 632 | "bevy_asset", 633 | "bevy_core", 634 | "bevy_derive", 635 | "bevy_ecs", 636 | "bevy_encase_derive", 637 | "bevy_hierarchy", 638 | "bevy_log", 639 | "bevy_math", 640 | "bevy_mikktspace", 641 | "bevy_reflect", 642 | "bevy_render_macros", 643 | "bevy_time", 644 | "bevy_transform", 645 | "bevy_utils", 646 | "bevy_window", 647 | "bitflags", 648 | "codespan-reporting", 649 | "copyless", 650 | "downcast-rs", 651 | "encase", 652 | "futures-lite", 653 | "hex", 654 | "hexasphere", 655 | "image", 656 | "naga", 657 | "once_cell", 658 | "parking_lot 0.12.1", 659 | "regex", 660 | "serde", 661 | "smallvec", 662 | "thiserror", 663 | "thread_local", 664 | "wgpu", 665 | ] 666 | 667 | [[package]] 668 | name = "bevy_render_macros" 669 | version = "0.9.0-dev" 670 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 671 | dependencies = [ 672 | "bevy_macro_utils", 673 | "proc-macro2", 674 | "quote", 675 | "syn", 676 | ] 677 | 678 | [[package]] 679 | name = "bevy_scene" 680 | version = "0.9.0-dev" 681 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 682 | dependencies = [ 683 | "anyhow", 684 | "bevy_app", 685 | "bevy_asset", 686 | "bevy_derive", 687 | "bevy_ecs", 688 | "bevy_hierarchy", 689 | "bevy_reflect", 690 | "bevy_render", 691 | "bevy_transform", 692 | "bevy_utils", 693 | "ron", 694 | "serde", 695 | "thiserror", 696 | "uuid", 697 | ] 698 | 699 | [[package]] 700 | name = "bevy_sprite" 701 | version = "0.9.0-dev" 702 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 703 | dependencies = [ 704 | "bevy_app", 705 | "bevy_asset", 706 | "bevy_core_pipeline", 707 | "bevy_derive", 708 | "bevy_ecs", 709 | "bevy_log", 710 | "bevy_math", 711 | "bevy_reflect", 712 | "bevy_render", 713 | "bevy_transform", 714 | "bevy_utils", 715 | "bitflags", 716 | "bytemuck", 717 | "copyless", 718 | "fixedbitset", 719 | "guillotiere", 720 | "rectangle-pack", 721 | "serde", 722 | "thiserror", 723 | ] 724 | 725 | [[package]] 726 | name = "bevy_tasks" 727 | version = "0.9.0-dev" 728 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 729 | dependencies = [ 730 | "async-channel", 731 | "async-executor", 732 | "event-listener", 733 | "futures-lite", 734 | "num_cpus", 735 | "once_cell", 736 | "wasm-bindgen-futures", 737 | ] 738 | 739 | [[package]] 740 | name = "bevy_text" 741 | version = "0.9.0-dev" 742 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 743 | dependencies = [ 744 | "ab_glyph", 745 | "anyhow", 746 | "bevy_app", 747 | "bevy_asset", 748 | "bevy_ecs", 749 | "bevy_math", 750 | "bevy_reflect", 751 | "bevy_render", 752 | "bevy_sprite", 753 | "bevy_transform", 754 | "bevy_utils", 755 | "bevy_window", 756 | "glyph_brush_layout", 757 | "serde", 758 | "thiserror", 759 | ] 760 | 761 | [[package]] 762 | name = "bevy_time" 763 | version = "0.9.0-dev" 764 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 765 | dependencies = [ 766 | "bevy_app", 767 | "bevy_ecs", 768 | "bevy_reflect", 769 | "bevy_utils", 770 | "crossbeam-channel", 771 | ] 772 | 773 | [[package]] 774 | name = "bevy_transform" 775 | version = "0.9.0-dev" 776 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 777 | dependencies = [ 778 | "bevy_app", 779 | "bevy_ecs", 780 | "bevy_hierarchy", 781 | "bevy_math", 782 | "bevy_reflect", 783 | ] 784 | 785 | [[package]] 786 | name = "bevy_ui" 787 | version = "0.9.0-dev" 788 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 789 | dependencies = [ 790 | "bevy_app", 791 | "bevy_asset", 792 | "bevy_core_pipeline", 793 | "bevy_derive", 794 | "bevy_ecs", 795 | "bevy_hierarchy", 796 | "bevy_input", 797 | "bevy_log", 798 | "bevy_math", 799 | "bevy_reflect", 800 | "bevy_render", 801 | "bevy_sprite", 802 | "bevy_text", 803 | "bevy_transform", 804 | "bevy_utils", 805 | "bevy_window", 806 | "bytemuck", 807 | "serde", 808 | "smallvec", 809 | "taffy", 810 | ] 811 | 812 | [[package]] 813 | name = "bevy_utils" 814 | version = "0.9.0-dev" 815 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 816 | dependencies = [ 817 | "ahash 0.7.6", 818 | "getrandom", 819 | "hashbrown", 820 | "instant", 821 | "tracing", 822 | "uuid", 823 | ] 824 | 825 | [[package]] 826 | name = "bevy_window" 827 | version = "0.9.0-dev" 828 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 829 | dependencies = [ 830 | "bevy_app", 831 | "bevy_ecs", 832 | "bevy_input", 833 | "bevy_math", 834 | "bevy_reflect", 835 | "bevy_utils", 836 | "raw-window-handle", 837 | "web-sys", 838 | ] 839 | 840 | [[package]] 841 | name = "bevy_winit" 842 | version = "0.9.0-dev" 843 | source = "git+https://github.com/weiznich/bevy?rev=7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8#7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8" 844 | dependencies = [ 845 | "approx", 846 | "bevy_app", 847 | "bevy_ecs", 848 | "bevy_input", 849 | "bevy_math", 850 | "bevy_utils", 851 | "bevy_window", 852 | "crossbeam-channel", 853 | "raw-window-handle", 854 | "wasm-bindgen", 855 | "web-sys", 856 | "winit", 857 | ] 858 | 859 | [[package]] 860 | name = "bindgen" 861 | version = "0.59.2" 862 | source = "registry+https://github.com/rust-lang/crates.io-index" 863 | checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8" 864 | dependencies = [ 865 | "bitflags", 866 | "cexpr", 867 | "clang-sys", 868 | "lazy_static", 869 | "lazycell", 870 | "peeking_take_while", 871 | "proc-macro2", 872 | "quote", 873 | "regex", 874 | "rustc-hash", 875 | "shlex", 876 | ] 877 | 878 | [[package]] 879 | name = "bit-set" 880 | version = "0.5.3" 881 | source = "registry+https://github.com/rust-lang/crates.io-index" 882 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 883 | dependencies = [ 884 | "bit-vec", 885 | ] 886 | 887 | [[package]] 888 | name = "bit-vec" 889 | version = "0.6.3" 890 | source = "registry+https://github.com/rust-lang/crates.io-index" 891 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 892 | 893 | [[package]] 894 | name = "bitflags" 895 | version = "1.3.2" 896 | source = "registry+https://github.com/rust-lang/crates.io-index" 897 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 898 | 899 | [[package]] 900 | name = "block" 901 | version = "0.1.6" 902 | source = "registry+https://github.com/rust-lang/crates.io-index" 903 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 904 | 905 | [[package]] 906 | name = "bumpalo" 907 | version = "3.11.0" 908 | source = "registry+https://github.com/rust-lang/crates.io-index" 909 | checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d" 910 | 911 | [[package]] 912 | name = "bytemuck" 913 | version = "1.12.1" 914 | source = "registry+https://github.com/rust-lang/crates.io-index" 915 | checksum = "2f5715e491b5a1598fc2bef5a606847b5dc1d48ea625bd3c02c00de8285591da" 916 | dependencies = [ 917 | "bytemuck_derive", 918 | ] 919 | 920 | [[package]] 921 | name = "bytemuck_derive" 922 | version = "1.2.1" 923 | source = "registry+https://github.com/rust-lang/crates.io-index" 924 | checksum = "1b9e1f5fa78f69496407a27ae9ed989e3c3b072310286f5ef385525e4cbc24a9" 925 | dependencies = [ 926 | "proc-macro2", 927 | "quote", 928 | "syn", 929 | ] 930 | 931 | [[package]] 932 | name = "byteorder" 933 | version = "1.4.3" 934 | source = "registry+https://github.com/rust-lang/crates.io-index" 935 | checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" 936 | 937 | [[package]] 938 | name = "bytes" 939 | version = "1.2.1" 940 | source = "registry+https://github.com/rust-lang/crates.io-index" 941 | checksum = "ec8a7b6a70fde80372154c65702f00a0f56f3e1c36abbc6c440484be248856db" 942 | 943 | [[package]] 944 | name = "cache-padded" 945 | version = "1.2.0" 946 | source = "registry+https://github.com/rust-lang/crates.io-index" 947 | checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c" 948 | 949 | [[package]] 950 | name = "cc" 951 | version = "1.0.73" 952 | source = "registry+https://github.com/rust-lang/crates.io-index" 953 | checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" 954 | dependencies = [ 955 | "jobserver", 956 | ] 957 | 958 | [[package]] 959 | name = "cesu8" 960 | version = "1.1.0" 961 | source = "registry+https://github.com/rust-lang/crates.io-index" 962 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 963 | 964 | [[package]] 965 | name = "cexpr" 966 | version = "0.6.0" 967 | source = "registry+https://github.com/rust-lang/crates.io-index" 968 | checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" 969 | dependencies = [ 970 | "nom", 971 | ] 972 | 973 | [[package]] 974 | name = "cfg-if" 975 | version = "0.1.10" 976 | source = "registry+https://github.com/rust-lang/crates.io-index" 977 | checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" 978 | 979 | [[package]] 980 | name = "cfg-if" 981 | version = "1.0.0" 982 | source = "registry+https://github.com/rust-lang/crates.io-index" 983 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 984 | 985 | [[package]] 986 | name = "cfg_aliases" 987 | version = "0.1.1" 988 | source = "registry+https://github.com/rust-lang/crates.io-index" 989 | checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" 990 | 991 | [[package]] 992 | name = "chumsky" 993 | version = "0.8.0" 994 | source = "registry+https://github.com/rust-lang/crates.io-index" 995 | checksum = "8d02796e4586c6c41aeb68eae9bfb4558a522c35f1430c14b40136c3706e09e4" 996 | dependencies = [ 997 | "ahash 0.3.8", 998 | ] 999 | 1000 | [[package]] 1001 | name = "clang-sys" 1002 | version = "1.4.0" 1003 | source = "registry+https://github.com/rust-lang/crates.io-index" 1004 | checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3" 1005 | dependencies = [ 1006 | "glob", 1007 | "libc", 1008 | "libloading", 1009 | ] 1010 | 1011 | [[package]] 1012 | name = "cocoa" 1013 | version = "0.24.0" 1014 | source = "registry+https://github.com/rust-lang/crates.io-index" 1015 | checksum = "6f63902e9223530efb4e26ccd0cf55ec30d592d3b42e21a28defc42a9586e832" 1016 | dependencies = [ 1017 | "bitflags", 1018 | "block", 1019 | "cocoa-foundation", 1020 | "core-foundation 0.9.3", 1021 | "core-graphics 0.22.3", 1022 | "foreign-types", 1023 | "libc", 1024 | "objc", 1025 | ] 1026 | 1027 | [[package]] 1028 | name = "cocoa-foundation" 1029 | version = "0.1.0" 1030 | source = "registry+https://github.com/rust-lang/crates.io-index" 1031 | checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" 1032 | dependencies = [ 1033 | "bitflags", 1034 | "block", 1035 | "core-foundation 0.9.3", 1036 | "core-graphics-types", 1037 | "foreign-types", 1038 | "libc", 1039 | "objc", 1040 | ] 1041 | 1042 | [[package]] 1043 | name = "codespan-reporting" 1044 | version = "0.11.1" 1045 | source = "registry+https://github.com/rust-lang/crates.io-index" 1046 | checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" 1047 | dependencies = [ 1048 | "termcolor", 1049 | "unicode-width", 1050 | ] 1051 | 1052 | [[package]] 1053 | name = "color_quant" 1054 | version = "1.1.0" 1055 | source = "registry+https://github.com/rust-lang/crates.io-index" 1056 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" 1057 | 1058 | [[package]] 1059 | name = "combine" 1060 | version = "4.6.6" 1061 | source = "registry+https://github.com/rust-lang/crates.io-index" 1062 | checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" 1063 | dependencies = [ 1064 | "bytes", 1065 | "memchr", 1066 | ] 1067 | 1068 | [[package]] 1069 | name = "concurrent-queue" 1070 | version = "1.2.4" 1071 | source = "registry+https://github.com/rust-lang/crates.io-index" 1072 | checksum = "af4780a44ab5696ea9e28294517f1fffb421a83a25af521333c838635509db9c" 1073 | dependencies = [ 1074 | "cache-padded", 1075 | ] 1076 | 1077 | [[package]] 1078 | name = "console_error_panic_hook" 1079 | version = "0.1.7" 1080 | source = "registry+https://github.com/rust-lang/crates.io-index" 1081 | checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" 1082 | dependencies = [ 1083 | "cfg-if 1.0.0", 1084 | "wasm-bindgen", 1085 | ] 1086 | 1087 | [[package]] 1088 | name = "const-random" 1089 | version = "0.1.13" 1090 | source = "registry+https://github.com/rust-lang/crates.io-index" 1091 | checksum = "f590d95d011aa80b063ffe3253422ed5aa462af4e9867d43ce8337562bac77c4" 1092 | dependencies = [ 1093 | "const-random-macro", 1094 | "proc-macro-hack", 1095 | ] 1096 | 1097 | [[package]] 1098 | name = "const-random-macro" 1099 | version = "0.1.13" 1100 | source = "registry+https://github.com/rust-lang/crates.io-index" 1101 | checksum = "615f6e27d000a2bffbc7f2f6a8669179378fa27ee4d0a509e985dfc0a7defb40" 1102 | dependencies = [ 1103 | "getrandom", 1104 | "lazy_static", 1105 | "proc-macro-hack", 1106 | "tiny-keccak", 1107 | ] 1108 | 1109 | [[package]] 1110 | name = "const_panic" 1111 | version = "0.2.4" 1112 | source = "registry+https://github.com/rust-lang/crates.io-index" 1113 | checksum = "9c0358e41e90e443c69b2b2811f6ec9892c228b93620634cf4344fe89967fa9f" 1114 | 1115 | [[package]] 1116 | name = "copyless" 1117 | version = "0.1.5" 1118 | source = "registry+https://github.com/rust-lang/crates.io-index" 1119 | checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" 1120 | 1121 | [[package]] 1122 | name = "core-foundation" 1123 | version = "0.7.0" 1124 | source = "registry+https://github.com/rust-lang/crates.io-index" 1125 | checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" 1126 | dependencies = [ 1127 | "core-foundation-sys 0.7.0", 1128 | "libc", 1129 | ] 1130 | 1131 | [[package]] 1132 | name = "core-foundation" 1133 | version = "0.9.3" 1134 | source = "registry+https://github.com/rust-lang/crates.io-index" 1135 | checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" 1136 | dependencies = [ 1137 | "core-foundation-sys 0.8.3", 1138 | "libc", 1139 | ] 1140 | 1141 | [[package]] 1142 | name = "core-foundation-sys" 1143 | version = "0.7.0" 1144 | source = "registry+https://github.com/rust-lang/crates.io-index" 1145 | checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" 1146 | 1147 | [[package]] 1148 | name = "core-foundation-sys" 1149 | version = "0.8.3" 1150 | source = "registry+https://github.com/rust-lang/crates.io-index" 1151 | checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" 1152 | 1153 | [[package]] 1154 | name = "core-graphics" 1155 | version = "0.19.2" 1156 | source = "registry+https://github.com/rust-lang/crates.io-index" 1157 | checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923" 1158 | dependencies = [ 1159 | "bitflags", 1160 | "core-foundation 0.7.0", 1161 | "foreign-types", 1162 | "libc", 1163 | ] 1164 | 1165 | [[package]] 1166 | name = "core-graphics" 1167 | version = "0.22.3" 1168 | source = "registry+https://github.com/rust-lang/crates.io-index" 1169 | checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" 1170 | dependencies = [ 1171 | "bitflags", 1172 | "core-foundation 0.9.3", 1173 | "core-graphics-types", 1174 | "foreign-types", 1175 | "libc", 1176 | ] 1177 | 1178 | [[package]] 1179 | name = "core-graphics-types" 1180 | version = "0.1.1" 1181 | source = "registry+https://github.com/rust-lang/crates.io-index" 1182 | checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" 1183 | dependencies = [ 1184 | "bitflags", 1185 | "core-foundation 0.9.3", 1186 | "foreign-types", 1187 | "libc", 1188 | ] 1189 | 1190 | [[package]] 1191 | name = "core-video-sys" 1192 | version = "0.1.4" 1193 | source = "registry+https://github.com/rust-lang/crates.io-index" 1194 | checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" 1195 | dependencies = [ 1196 | "cfg-if 0.1.10", 1197 | "core-foundation-sys 0.7.0", 1198 | "core-graphics 0.19.2", 1199 | "libc", 1200 | "objc", 1201 | ] 1202 | 1203 | [[package]] 1204 | name = "coreaudio-rs" 1205 | version = "0.10.0" 1206 | source = "registry+https://github.com/rust-lang/crates.io-index" 1207 | checksum = "11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88" 1208 | dependencies = [ 1209 | "bitflags", 1210 | "coreaudio-sys", 1211 | ] 1212 | 1213 | [[package]] 1214 | name = "coreaudio-sys" 1215 | version = "0.2.10" 1216 | source = "registry+https://github.com/rust-lang/crates.io-index" 1217 | checksum = "3dff444d80630d7073077d38d40b4501fd518bd2b922c2a55edcc8b0f7be57e6" 1218 | dependencies = [ 1219 | "bindgen", 1220 | ] 1221 | 1222 | [[package]] 1223 | name = "cpal" 1224 | version = "0.13.5" 1225 | source = "registry+https://github.com/rust-lang/crates.io-index" 1226 | checksum = "74117836a5124f3629e4b474eed03e479abaf98988b4bb317e29f08cfe0e4116" 1227 | dependencies = [ 1228 | "alsa", 1229 | "core-foundation-sys 0.8.3", 1230 | "coreaudio-rs", 1231 | "jni", 1232 | "js-sys", 1233 | "lazy_static", 1234 | "libc", 1235 | "mach", 1236 | "ndk 0.6.0", 1237 | "ndk-glue 0.6.2", 1238 | "nix 0.23.1", 1239 | "oboe", 1240 | "parking_lot 0.11.2", 1241 | "stdweb", 1242 | "thiserror", 1243 | "wasm-bindgen", 1244 | "web-sys", 1245 | "winapi", 1246 | ] 1247 | 1248 | [[package]] 1249 | name = "crc32fast" 1250 | version = "1.3.2" 1251 | source = "registry+https://github.com/rust-lang/crates.io-index" 1252 | checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" 1253 | dependencies = [ 1254 | "cfg-if 1.0.0", 1255 | ] 1256 | 1257 | [[package]] 1258 | name = "crossbeam-channel" 1259 | version = "0.5.6" 1260 | source = "registry+https://github.com/rust-lang/crates.io-index" 1261 | checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" 1262 | dependencies = [ 1263 | "cfg-if 1.0.0", 1264 | "crossbeam-utils", 1265 | ] 1266 | 1267 | [[package]] 1268 | name = "crossbeam-utils" 1269 | version = "0.8.12" 1270 | source = "registry+https://github.com/rust-lang/crates.io-index" 1271 | checksum = "edbafec5fa1f196ca66527c1b12c2ec4745ca14b50f1ad8f9f6f720b55d11fac" 1272 | dependencies = [ 1273 | "cfg-if 1.0.0", 1274 | ] 1275 | 1276 | [[package]] 1277 | name = "crunchy" 1278 | version = "0.2.2" 1279 | source = "registry+https://github.com/rust-lang/crates.io-index" 1280 | checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" 1281 | 1282 | [[package]] 1283 | name = "cty" 1284 | version = "0.2.2" 1285 | source = "registry+https://github.com/rust-lang/crates.io-index" 1286 | checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" 1287 | 1288 | [[package]] 1289 | name = "d3d12" 1290 | version = "0.5.0" 1291 | source = "registry+https://github.com/rust-lang/crates.io-index" 1292 | checksum = "827914e1f53b1e0e025ecd3d967a7836b7bcb54520f90e21ef8df7b4d88a2759" 1293 | dependencies = [ 1294 | "bitflags", 1295 | "libloading", 1296 | "winapi", 1297 | ] 1298 | 1299 | [[package]] 1300 | name = "darling" 1301 | version = "0.13.4" 1302 | source = "registry+https://github.com/rust-lang/crates.io-index" 1303 | checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" 1304 | dependencies = [ 1305 | "darling_core", 1306 | "darling_macro", 1307 | ] 1308 | 1309 | [[package]] 1310 | name = "darling_core" 1311 | version = "0.13.4" 1312 | source = "registry+https://github.com/rust-lang/crates.io-index" 1313 | checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" 1314 | dependencies = [ 1315 | "fnv", 1316 | "ident_case", 1317 | "proc-macro2", 1318 | "quote", 1319 | "strsim", 1320 | "syn", 1321 | ] 1322 | 1323 | [[package]] 1324 | name = "darling_macro" 1325 | version = "0.13.4" 1326 | source = "registry+https://github.com/rust-lang/crates.io-index" 1327 | checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" 1328 | dependencies = [ 1329 | "darling_core", 1330 | "quote", 1331 | "syn", 1332 | ] 1333 | 1334 | [[package]] 1335 | name = "diesel" 1336 | version = "2.0.0-rc.1" 1337 | source = "git+https://github.com/weiznich/diesel?rev=958391a3e793e409d0a925e0cc2317726c2d84b2#958391a3e793e409d0a925e0cc2317726c2d84b2" 1338 | dependencies = [ 1339 | "bitflags", 1340 | "byteorder", 1341 | "diesel_derives", 1342 | "itoa", 1343 | "libsqlite3-sys", 1344 | "mysqlclient-sys", 1345 | "percent-encoding", 1346 | "pq-sys", 1347 | "url", 1348 | ] 1349 | 1350 | [[package]] 1351 | name = "diesel_derives" 1352 | version = "2.0.0-rc.1" 1353 | source = "git+https://github.com/weiznich/diesel?rev=958391a3e793e409d0a925e0cc2317726c2d84b2#958391a3e793e409d0a925e0cc2317726c2d84b2" 1354 | dependencies = [ 1355 | "proc-macro-error", 1356 | "proc-macro2", 1357 | "quote", 1358 | "syn", 1359 | ] 1360 | 1361 | [[package]] 1362 | name = "dispatch" 1363 | version = "0.2.0" 1364 | source = "registry+https://github.com/rust-lang/crates.io-index" 1365 | checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" 1366 | 1367 | [[package]] 1368 | name = "downcast-rs" 1369 | version = "1.2.0" 1370 | source = "registry+https://github.com/rust-lang/crates.io-index" 1371 | checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" 1372 | 1373 | [[package]] 1374 | name = "easy-ml" 1375 | version = "1.8.2" 1376 | source = "registry+https://github.com/rust-lang/crates.io-index" 1377 | checksum = "27bc715d9213d03f6ed3b5f62821e94ebd857e529e772a616a2fda33148d5e5c" 1378 | 1379 | [[package]] 1380 | name = "encase" 1381 | version = "0.3.0" 1382 | source = "registry+https://github.com/rust-lang/crates.io-index" 1383 | checksum = "0a516181e9a36e8982cb37933c5e7dba638c42938cacde46ee4e5b4156f881b9" 1384 | dependencies = [ 1385 | "const_panic", 1386 | "encase_derive", 1387 | "glam", 1388 | "thiserror", 1389 | ] 1390 | 1391 | [[package]] 1392 | name = "encase_derive" 1393 | version = "0.3.0" 1394 | source = "registry+https://github.com/rust-lang/crates.io-index" 1395 | checksum = "f5b802412eea315f29f2bb2da3a5963cd6121f56eaa06aebcdc0c54eea578f22" 1396 | dependencies = [ 1397 | "encase_derive_impl", 1398 | ] 1399 | 1400 | [[package]] 1401 | name = "encase_derive_impl" 1402 | version = "0.3.0" 1403 | source = "registry+https://github.com/rust-lang/crates.io-index" 1404 | checksum = "0f2f4de457d974f548d2c2a16f709ebd81013579e543bd1a9b19ced88132c2cf" 1405 | dependencies = [ 1406 | "proc-macro2", 1407 | "quote", 1408 | "syn", 1409 | ] 1410 | 1411 | [[package]] 1412 | name = "entrait" 1413 | version = "0.4.6" 1414 | source = "registry+https://github.com/rust-lang/crates.io-index" 1415 | checksum = "4c888ffada3dd9e9141898caf2a14e4eb4ac4dc75fee781daff48e10e8748b96" 1416 | dependencies = [ 1417 | "entrait_macros", 1418 | "implementation", 1419 | ] 1420 | 1421 | [[package]] 1422 | name = "entrait_macros" 1423 | version = "0.4.6" 1424 | source = "registry+https://github.com/rust-lang/crates.io-index" 1425 | checksum = "c0f5cf4882a5b01c602016994a0fb686fa38a2c8d220872738a4aed3adf5c8ca" 1426 | dependencies = [ 1427 | "proc-macro2", 1428 | "quote", 1429 | "syn", 1430 | ] 1431 | 1432 | [[package]] 1433 | name = "env_logger" 1434 | version = "0.8.4" 1435 | source = "registry+https://github.com/rust-lang/crates.io-index" 1436 | checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" 1437 | dependencies = [ 1438 | "log", 1439 | "regex", 1440 | ] 1441 | 1442 | [[package]] 1443 | name = "erased-serde" 1444 | version = "0.3.23" 1445 | source = "registry+https://github.com/rust-lang/crates.io-index" 1446 | checksum = "54558e0ba96fbe24280072642eceb9d7d442e32c7ec0ea9e7ecd7b4ea2cf4e11" 1447 | dependencies = [ 1448 | "serde", 1449 | ] 1450 | 1451 | [[package]] 1452 | name = "euclid" 1453 | version = "0.22.7" 1454 | source = "registry+https://github.com/rust-lang/crates.io-index" 1455 | checksum = "b52c2ef4a78da0ba68fbe1fd920627411096d2ac478f7f4c9f3a54ba6705bade" 1456 | dependencies = [ 1457 | "num-traits", 1458 | ] 1459 | 1460 | [[package]] 1461 | name = "event-listener" 1462 | version = "2.5.3" 1463 | source = "registry+https://github.com/rust-lang/crates.io-index" 1464 | checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" 1465 | 1466 | [[package]] 1467 | name = "fastrand" 1468 | version = "1.8.0" 1469 | source = "registry+https://github.com/rust-lang/crates.io-index" 1470 | checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499" 1471 | dependencies = [ 1472 | "instant", 1473 | ] 1474 | 1475 | [[package]] 1476 | name = "filetime" 1477 | version = "0.2.17" 1478 | source = "registry+https://github.com/rust-lang/crates.io-index" 1479 | checksum = "e94a7bbaa59354bc20dd75b67f23e2797b4490e9d6928203fb105c79e448c86c" 1480 | dependencies = [ 1481 | "cfg-if 1.0.0", 1482 | "libc", 1483 | "redox_syscall", 1484 | "windows-sys", 1485 | ] 1486 | 1487 | [[package]] 1488 | name = "fixedbitset" 1489 | version = "0.4.2" 1490 | source = "registry+https://github.com/rust-lang/crates.io-index" 1491 | checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" 1492 | 1493 | [[package]] 1494 | name = "flate2" 1495 | version = "1.0.24" 1496 | source = "registry+https://github.com/rust-lang/crates.io-index" 1497 | checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6" 1498 | dependencies = [ 1499 | "crc32fast", 1500 | "miniz_oxide", 1501 | ] 1502 | 1503 | [[package]] 1504 | name = "fnv" 1505 | version = "1.0.7" 1506 | source = "registry+https://github.com/rust-lang/crates.io-index" 1507 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 1508 | 1509 | [[package]] 1510 | name = "foreign-types" 1511 | version = "0.3.2" 1512 | source = "registry+https://github.com/rust-lang/crates.io-index" 1513 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 1514 | dependencies = [ 1515 | "foreign-types-shared", 1516 | ] 1517 | 1518 | [[package]] 1519 | name = "foreign-types-shared" 1520 | version = "0.1.1" 1521 | source = "registry+https://github.com/rust-lang/crates.io-index" 1522 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 1523 | 1524 | [[package]] 1525 | name = "form_urlencoded" 1526 | version = "1.1.0" 1527 | source = "registry+https://github.com/rust-lang/crates.io-index" 1528 | checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" 1529 | dependencies = [ 1530 | "percent-encoding", 1531 | ] 1532 | 1533 | [[package]] 1534 | name = "fsevent-sys" 1535 | version = "4.1.0" 1536 | source = "registry+https://github.com/rust-lang/crates.io-index" 1537 | checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" 1538 | dependencies = [ 1539 | "libc", 1540 | ] 1541 | 1542 | [[package]] 1543 | name = "futures-channel" 1544 | version = "0.3.24" 1545 | source = "registry+https://github.com/rust-lang/crates.io-index" 1546 | checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050" 1547 | dependencies = [ 1548 | "futures-core", 1549 | ] 1550 | 1551 | [[package]] 1552 | name = "futures-core" 1553 | version = "0.3.24" 1554 | source = "registry+https://github.com/rust-lang/crates.io-index" 1555 | checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf" 1556 | 1557 | [[package]] 1558 | name = "futures-io" 1559 | version = "0.3.24" 1560 | source = "registry+https://github.com/rust-lang/crates.io-index" 1561 | checksum = "bbf4d2a7a308fd4578637c0b17c7e1c7ba127b8f6ba00b29f717e9655d85eb68" 1562 | 1563 | [[package]] 1564 | name = "futures-lite" 1565 | version = "1.12.0" 1566 | source = "registry+https://github.com/rust-lang/crates.io-index" 1567 | checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" 1568 | dependencies = [ 1569 | "fastrand", 1570 | "futures-core", 1571 | "futures-io", 1572 | "memchr", 1573 | "parking", 1574 | "pin-project-lite", 1575 | "waker-fn", 1576 | ] 1577 | 1578 | [[package]] 1579 | name = "futures-task" 1580 | version = "0.3.24" 1581 | source = "registry+https://github.com/rust-lang/crates.io-index" 1582 | checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1" 1583 | 1584 | [[package]] 1585 | name = "futures-util" 1586 | version = "0.3.24" 1587 | source = "registry+https://github.com/rust-lang/crates.io-index" 1588 | checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90" 1589 | dependencies = [ 1590 | "futures-core", 1591 | "futures-task", 1592 | "pin-project-lite", 1593 | "pin-utils", 1594 | ] 1595 | 1596 | [[package]] 1597 | name = "fxhash" 1598 | version = "0.2.1" 1599 | source = "registry+https://github.com/rust-lang/crates.io-index" 1600 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" 1601 | dependencies = [ 1602 | "byteorder", 1603 | ] 1604 | 1605 | [[package]] 1606 | name = "getrandom" 1607 | version = "0.2.7" 1608 | source = "registry+https://github.com/rust-lang/crates.io-index" 1609 | checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" 1610 | dependencies = [ 1611 | "cfg-if 1.0.0", 1612 | "js-sys", 1613 | "libc", 1614 | "wasi", 1615 | "wasm-bindgen", 1616 | ] 1617 | 1618 | [[package]] 1619 | name = "gilrs" 1620 | version = "0.9.0" 1621 | source = "registry+https://github.com/rust-lang/crates.io-index" 1622 | checksum = "1d6ba7c37bf8ea7ba0c3e3795dfa1a7771b1e47c4bb417c4d27c7b338d79685f" 1623 | dependencies = [ 1624 | "fnv", 1625 | "gilrs-core", 1626 | "log", 1627 | "uuid", 1628 | "vec_map", 1629 | ] 1630 | 1631 | [[package]] 1632 | name = "gilrs-core" 1633 | version = "0.4.1" 1634 | source = "registry+https://github.com/rust-lang/crates.io-index" 1635 | checksum = "96a8d94a7fc5afd27e894e08a4cfe5a49237f85bcc7140e90721bad3399c7d02" 1636 | dependencies = [ 1637 | "core-foundation 0.9.3", 1638 | "io-kit-sys", 1639 | "js-sys", 1640 | "libc", 1641 | "libudev-sys", 1642 | "log", 1643 | "nix 0.24.2", 1644 | "rusty-xinput", 1645 | "uuid", 1646 | "vec_map", 1647 | "wasm-bindgen", 1648 | "web-sys", 1649 | "winapi", 1650 | ] 1651 | 1652 | [[package]] 1653 | name = "glam" 1654 | version = "0.21.3" 1655 | source = "registry+https://github.com/rust-lang/crates.io-index" 1656 | checksum = "518faa5064866338b013ff9b2350dc318e14cc4fcd6cb8206d7e7c9886c98815" 1657 | dependencies = [ 1658 | "bytemuck", 1659 | "serde", 1660 | ] 1661 | 1662 | [[package]] 1663 | name = "glob" 1664 | version = "0.3.0" 1665 | source = "registry+https://github.com/rust-lang/crates.io-index" 1666 | checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" 1667 | 1668 | [[package]] 1669 | name = "glow" 1670 | version = "0.11.2" 1671 | source = "registry+https://github.com/rust-lang/crates.io-index" 1672 | checksum = "d8bd5877156a19b8ac83a29b2306fe20537429d318f3ff0a1a2119f8d9c61919" 1673 | dependencies = [ 1674 | "js-sys", 1675 | "slotmap", 1676 | "wasm-bindgen", 1677 | "web-sys", 1678 | ] 1679 | 1680 | [[package]] 1681 | name = "gltf" 1682 | version = "1.0.0" 1683 | source = "registry+https://github.com/rust-lang/crates.io-index" 1684 | checksum = "00e0a0eace786193fc83644907097285396360e9e82e30f81a21e9b1ba836a3e" 1685 | dependencies = [ 1686 | "byteorder", 1687 | "gltf-json", 1688 | "lazy_static", 1689 | ] 1690 | 1691 | [[package]] 1692 | name = "gltf-derive" 1693 | version = "1.0.0" 1694 | source = "registry+https://github.com/rust-lang/crates.io-index" 1695 | checksum = "bdd53d6e284bb2bf02a6926e4cc4984978c1990914d6cd9deae4e31cf37cd113" 1696 | dependencies = [ 1697 | "inflections", 1698 | "proc-macro2", 1699 | "quote", 1700 | "syn", 1701 | ] 1702 | 1703 | [[package]] 1704 | name = "gltf-json" 1705 | version = "1.0.0" 1706 | source = "registry+https://github.com/rust-lang/crates.io-index" 1707 | checksum = "9949836a9ec5e7f83f76fb9bbcbc77f254a577ebbdb0820867bc11979ef97cad" 1708 | dependencies = [ 1709 | "gltf-derive", 1710 | "serde", 1711 | "serde_derive", 1712 | "serde_json", 1713 | ] 1714 | 1715 | [[package]] 1716 | name = "glyph_brush_layout" 1717 | version = "0.2.3" 1718 | source = "registry+https://github.com/rust-lang/crates.io-index" 1719 | checksum = "cc32c2334f00ca5ac3695c5009ae35da21da8c62d255b5b96d56e2597a637a38" 1720 | dependencies = [ 1721 | "ab_glyph", 1722 | "approx", 1723 | "xi-unicode", 1724 | ] 1725 | 1726 | [[package]] 1727 | name = "gpu-alloc" 1728 | version = "0.5.3" 1729 | source = "registry+https://github.com/rust-lang/crates.io-index" 1730 | checksum = "7fc59e5f710e310e76e6707f86c561dd646f69a8876da9131703b2f717de818d" 1731 | dependencies = [ 1732 | "bitflags", 1733 | "gpu-alloc-types", 1734 | ] 1735 | 1736 | [[package]] 1737 | name = "gpu-alloc-types" 1738 | version = "0.2.0" 1739 | source = "registry+https://github.com/rust-lang/crates.io-index" 1740 | checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5" 1741 | dependencies = [ 1742 | "bitflags", 1743 | ] 1744 | 1745 | [[package]] 1746 | name = "gpu-descriptor" 1747 | version = "0.2.3" 1748 | source = "registry+https://github.com/rust-lang/crates.io-index" 1749 | checksum = "0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a" 1750 | dependencies = [ 1751 | "bitflags", 1752 | "gpu-descriptor-types", 1753 | "hashbrown", 1754 | ] 1755 | 1756 | [[package]] 1757 | name = "gpu-descriptor-types" 1758 | version = "0.1.1" 1759 | source = "registry+https://github.com/rust-lang/crates.io-index" 1760 | checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126" 1761 | dependencies = [ 1762 | "bitflags", 1763 | ] 1764 | 1765 | [[package]] 1766 | name = "guillotiere" 1767 | version = "0.6.2" 1768 | source = "registry+https://github.com/rust-lang/crates.io-index" 1769 | checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782" 1770 | dependencies = [ 1771 | "euclid", 1772 | "svg_fmt", 1773 | ] 1774 | 1775 | [[package]] 1776 | name = "hash32" 1777 | version = "0.2.1" 1778 | source = "registry+https://github.com/rust-lang/crates.io-index" 1779 | checksum = "b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67" 1780 | dependencies = [ 1781 | "byteorder", 1782 | ] 1783 | 1784 | [[package]] 1785 | name = "hash32-derive" 1786 | version = "0.1.1" 1787 | source = "registry+https://github.com/rust-lang/crates.io-index" 1788 | checksum = "59d2aba832b60be25c1b169146b27c64115470981b128ed84c8db18c1b03c6ff" 1789 | dependencies = [ 1790 | "proc-macro2", 1791 | "quote", 1792 | "syn", 1793 | ] 1794 | 1795 | [[package]] 1796 | name = "hashbrown" 1797 | version = "0.12.3" 1798 | source = "registry+https://github.com/rust-lang/crates.io-index" 1799 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 1800 | dependencies = [ 1801 | "ahash 0.7.6", 1802 | "serde", 1803 | ] 1804 | 1805 | [[package]] 1806 | name = "heck" 1807 | version = "0.4.0" 1808 | source = "registry+https://github.com/rust-lang/crates.io-index" 1809 | checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" 1810 | 1811 | [[package]] 1812 | name = "hermit-abi" 1813 | version = "0.1.19" 1814 | source = "registry+https://github.com/rust-lang/crates.io-index" 1815 | checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" 1816 | dependencies = [ 1817 | "libc", 1818 | ] 1819 | 1820 | [[package]] 1821 | name = "hex" 1822 | version = "0.4.3" 1823 | source = "registry+https://github.com/rust-lang/crates.io-index" 1824 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1825 | 1826 | [[package]] 1827 | name = "hexasphere" 1828 | version = "7.2.1" 1829 | source = "registry+https://github.com/rust-lang/crates.io-index" 1830 | checksum = "aaadafd1beb6ad34cff5521987017ece5848f9ad5401fdb039bff896a643add4" 1831 | dependencies = [ 1832 | "glam", 1833 | "once_cell", 1834 | ] 1835 | 1836 | [[package]] 1837 | name = "hexf-parse" 1838 | version = "0.2.1" 1839 | source = "registry+https://github.com/rust-lang/crates.io-index" 1840 | checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" 1841 | 1842 | [[package]] 1843 | name = "http" 1844 | version = "0.2.8" 1845 | source = "registry+https://github.com/rust-lang/crates.io-index" 1846 | checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" 1847 | dependencies = [ 1848 | "bytes", 1849 | "fnv", 1850 | "itoa", 1851 | ] 1852 | 1853 | [[package]] 1854 | name = "http-body" 1855 | version = "0.4.5" 1856 | source = "registry+https://github.com/rust-lang/crates.io-index" 1857 | checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" 1858 | dependencies = [ 1859 | "bytes", 1860 | "http", 1861 | "pin-project-lite", 1862 | ] 1863 | 1864 | [[package]] 1865 | name = "http-range-header" 1866 | version = "0.3.0" 1867 | source = "registry+https://github.com/rust-lang/crates.io-index" 1868 | checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29" 1869 | 1870 | [[package]] 1871 | name = "httparse" 1872 | version = "1.8.0" 1873 | source = "registry+https://github.com/rust-lang/crates.io-index" 1874 | checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" 1875 | 1876 | [[package]] 1877 | name = "httpdate" 1878 | version = "1.0.2" 1879 | source = "registry+https://github.com/rust-lang/crates.io-index" 1880 | checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" 1881 | 1882 | [[package]] 1883 | name = "hyper" 1884 | version = "0.14.20" 1885 | source = "registry+https://github.com/rust-lang/crates.io-index" 1886 | checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac" 1887 | dependencies = [ 1888 | "bytes", 1889 | "futures-channel", 1890 | "futures-core", 1891 | "futures-util", 1892 | "http", 1893 | "http-body", 1894 | "httparse", 1895 | "httpdate", 1896 | "itoa", 1897 | "pin-project-lite", 1898 | "socket2", 1899 | "tokio", 1900 | "tower-service", 1901 | "tracing", 1902 | "want", 1903 | ] 1904 | 1905 | [[package]] 1906 | name = "ident_case" 1907 | version = "1.0.1" 1908 | source = "registry+https://github.com/rust-lang/crates.io-index" 1909 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 1910 | 1911 | [[package]] 1912 | name = "idna" 1913 | version = "0.3.0" 1914 | source = "registry+https://github.com/rust-lang/crates.io-index" 1915 | checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" 1916 | dependencies = [ 1917 | "unicode-bidi", 1918 | "unicode-normalization", 1919 | ] 1920 | 1921 | [[package]] 1922 | name = "image" 1923 | version = "0.24.4" 1924 | source = "registry+https://github.com/rust-lang/crates.io-index" 1925 | checksum = "bd8e4fb07cf672b1642304e731ef8a6a4c7891d67bb4fd4f5ce58cd6ed86803c" 1926 | dependencies = [ 1927 | "bytemuck", 1928 | "byteorder", 1929 | "color_quant", 1930 | "num-rational", 1931 | "num-traits", 1932 | "png", 1933 | "scoped_threadpool", 1934 | ] 1935 | 1936 | [[package]] 1937 | name = "implementation" 1938 | version = "0.1.3" 1939 | source = "registry+https://github.com/rust-lang/crates.io-index" 1940 | checksum = "f9cd5b8cf68a1cda2eb0bdd7250e6ffa69edf485dda06dfb5e5a67a556e8db91" 1941 | 1942 | [[package]] 1943 | name = "indexmap" 1944 | version = "1.9.1" 1945 | source = "registry+https://github.com/rust-lang/crates.io-index" 1946 | checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" 1947 | dependencies = [ 1948 | "autocfg", 1949 | "hashbrown", 1950 | ] 1951 | 1952 | [[package]] 1953 | name = "inflections" 1954 | version = "1.1.1" 1955 | source = "registry+https://github.com/rust-lang/crates.io-index" 1956 | checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" 1957 | 1958 | [[package]] 1959 | name = "inotify" 1960 | version = "0.9.6" 1961 | source = "registry+https://github.com/rust-lang/crates.io-index" 1962 | checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" 1963 | dependencies = [ 1964 | "bitflags", 1965 | "inotify-sys", 1966 | "libc", 1967 | ] 1968 | 1969 | [[package]] 1970 | name = "inotify-sys" 1971 | version = "0.1.5" 1972 | source = "registry+https://github.com/rust-lang/crates.io-index" 1973 | checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" 1974 | dependencies = [ 1975 | "libc", 1976 | ] 1977 | 1978 | [[package]] 1979 | name = "inplace_it" 1980 | version = "0.3.5" 1981 | source = "registry+https://github.com/rust-lang/crates.io-index" 1982 | checksum = "e567468c50f3d4bc7397702e09b380139f9b9288b4e909b070571007f8b5bf78" 1983 | 1984 | [[package]] 1985 | name = "instant" 1986 | version = "0.1.12" 1987 | source = "registry+https://github.com/rust-lang/crates.io-index" 1988 | checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" 1989 | dependencies = [ 1990 | "cfg-if 1.0.0", 1991 | "js-sys", 1992 | "wasm-bindgen", 1993 | "web-sys", 1994 | ] 1995 | 1996 | [[package]] 1997 | name = "io-kit-sys" 1998 | version = "0.2.0" 1999 | source = "registry+https://github.com/rust-lang/crates.io-index" 2000 | checksum = "7789f7f3c9686f96164f5109d69152de759e76e284f736bd57661c6df5091919" 2001 | dependencies = [ 2002 | "core-foundation-sys 0.8.3", 2003 | "mach", 2004 | ] 2005 | 2006 | [[package]] 2007 | name = "itoa" 2008 | version = "1.0.3" 2009 | source = "registry+https://github.com/rust-lang/crates.io-index" 2010 | checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754" 2011 | 2012 | [[package]] 2013 | name = "jni" 2014 | version = "0.19.0" 2015 | source = "registry+https://github.com/rust-lang/crates.io-index" 2016 | checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" 2017 | dependencies = [ 2018 | "cesu8", 2019 | "combine", 2020 | "jni-sys", 2021 | "log", 2022 | "thiserror", 2023 | "walkdir", 2024 | ] 2025 | 2026 | [[package]] 2027 | name = "jni-sys" 2028 | version = "0.3.0" 2029 | source = "registry+https://github.com/rust-lang/crates.io-index" 2030 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 2031 | 2032 | [[package]] 2033 | name = "jobserver" 2034 | version = "0.1.25" 2035 | source = "registry+https://github.com/rust-lang/crates.io-index" 2036 | checksum = "068b1ee6743e4d11fb9c6a1e6064b3693a1b600e7f5f5988047d98b3dc9fb90b" 2037 | dependencies = [ 2038 | "libc", 2039 | ] 2040 | 2041 | [[package]] 2042 | name = "js-sys" 2043 | version = "0.3.60" 2044 | source = "registry+https://github.com/rust-lang/crates.io-index" 2045 | checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" 2046 | dependencies = [ 2047 | "wasm-bindgen", 2048 | ] 2049 | 2050 | [[package]] 2051 | name = "khronos-egl" 2052 | version = "4.1.0" 2053 | source = "registry+https://github.com/rust-lang/crates.io-index" 2054 | checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3" 2055 | dependencies = [ 2056 | "libc", 2057 | "libloading", 2058 | "pkg-config", 2059 | ] 2060 | 2061 | [[package]] 2062 | name = "kqueue" 2063 | version = "1.0.6" 2064 | source = "registry+https://github.com/rust-lang/crates.io-index" 2065 | checksum = "4d6112e8f37b59803ac47a42d14f1f3a59bbf72fc6857ffc5be455e28a691f8e" 2066 | dependencies = [ 2067 | "kqueue-sys", 2068 | "libc", 2069 | ] 2070 | 2071 | [[package]] 2072 | name = "kqueue-sys" 2073 | version = "1.0.3" 2074 | source = "registry+https://github.com/rust-lang/crates.io-index" 2075 | checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587" 2076 | dependencies = [ 2077 | "bitflags", 2078 | "libc", 2079 | ] 2080 | 2081 | [[package]] 2082 | name = "lazy_static" 2083 | version = "1.4.0" 2084 | source = "registry+https://github.com/rust-lang/crates.io-index" 2085 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 2086 | 2087 | [[package]] 2088 | name = "lazycell" 2089 | version = "1.3.0" 2090 | source = "registry+https://github.com/rust-lang/crates.io-index" 2091 | checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" 2092 | 2093 | [[package]] 2094 | name = "lewton" 2095 | version = "0.10.2" 2096 | source = "registry+https://github.com/rust-lang/crates.io-index" 2097 | checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" 2098 | dependencies = [ 2099 | "byteorder", 2100 | "ogg", 2101 | "tinyvec", 2102 | ] 2103 | 2104 | [[package]] 2105 | name = "libc" 2106 | version = "0.2.134" 2107 | source = "registry+https://github.com/rust-lang/crates.io-index" 2108 | checksum = "329c933548736bc49fd575ee68c89e8be4d260064184389a5b77517cddd99ffb" 2109 | 2110 | [[package]] 2111 | name = "libloading" 2112 | version = "0.7.3" 2113 | source = "registry+https://github.com/rust-lang/crates.io-index" 2114 | checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" 2115 | dependencies = [ 2116 | "cfg-if 1.0.0", 2117 | "winapi", 2118 | ] 2119 | 2120 | [[package]] 2121 | name = "libsqlite3-sys" 2122 | version = "0.25.1" 2123 | source = "registry+https://github.com/rust-lang/crates.io-index" 2124 | checksum = "9f0455f2c1bc9a7caa792907026e469c1d91761fb0ea37cbb16427c77280cf35" 2125 | dependencies = [ 2126 | "pkg-config", 2127 | "vcpkg", 2128 | ] 2129 | 2130 | [[package]] 2131 | name = "libudev-sys" 2132 | version = "0.1.4" 2133 | source = "registry+https://github.com/rust-lang/crates.io-index" 2134 | checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" 2135 | dependencies = [ 2136 | "libc", 2137 | "pkg-config", 2138 | ] 2139 | 2140 | [[package]] 2141 | name = "lock_api" 2142 | version = "0.4.9" 2143 | source = "registry+https://github.com/rust-lang/crates.io-index" 2144 | checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" 2145 | dependencies = [ 2146 | "autocfg", 2147 | "scopeguard", 2148 | ] 2149 | 2150 | [[package]] 2151 | name = "log" 2152 | version = "0.4.17" 2153 | source = "registry+https://github.com/rust-lang/crates.io-index" 2154 | checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" 2155 | dependencies = [ 2156 | "cfg-if 1.0.0", 2157 | ] 2158 | 2159 | [[package]] 2160 | name = "mach" 2161 | version = "0.3.2" 2162 | source = "registry+https://github.com/rust-lang/crates.io-index" 2163 | checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" 2164 | dependencies = [ 2165 | "libc", 2166 | ] 2167 | 2168 | [[package]] 2169 | name = "malloc_buf" 2170 | version = "0.0.6" 2171 | source = "registry+https://github.com/rust-lang/crates.io-index" 2172 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 2173 | dependencies = [ 2174 | "libc", 2175 | ] 2176 | 2177 | [[package]] 2178 | name = "matchers" 2179 | version = "0.1.0" 2180 | source = "registry+https://github.com/rust-lang/crates.io-index" 2181 | checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" 2182 | dependencies = [ 2183 | "regex-automata", 2184 | ] 2185 | 2186 | [[package]] 2187 | name = "matchit" 2188 | version = "0.6.0" 2189 | source = "registry+https://github.com/rust-lang/crates.io-index" 2190 | checksum = "3dfc802da7b1cf80aefffa0c7b2f77247c8b32206cc83c270b61264f5b360a80" 2191 | 2192 | [[package]] 2193 | name = "memchr" 2194 | version = "2.5.0" 2195 | source = "registry+https://github.com/rust-lang/crates.io-index" 2196 | checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" 2197 | 2198 | [[package]] 2199 | name = "memoffset" 2200 | version = "0.6.5" 2201 | source = "registry+https://github.com/rust-lang/crates.io-index" 2202 | checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" 2203 | dependencies = [ 2204 | "autocfg", 2205 | ] 2206 | 2207 | [[package]] 2208 | name = "metal" 2209 | version = "0.24.0" 2210 | source = "registry+https://github.com/rust-lang/crates.io-index" 2211 | checksum = "de11355d1f6781482d027a3b4d4de7825dcedb197bf573e0596d00008402d060" 2212 | dependencies = [ 2213 | "bitflags", 2214 | "block", 2215 | "core-graphics-types", 2216 | "foreign-types", 2217 | "log", 2218 | "objc", 2219 | ] 2220 | 2221 | [[package]] 2222 | name = "mime" 2223 | version = "0.3.16" 2224 | source = "registry+https://github.com/rust-lang/crates.io-index" 2225 | checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" 2226 | 2227 | [[package]] 2228 | name = "minimal-lexical" 2229 | version = "0.2.1" 2230 | source = "registry+https://github.com/rust-lang/crates.io-index" 2231 | checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 2232 | 2233 | [[package]] 2234 | name = "miniz_oxide" 2235 | version = "0.5.4" 2236 | source = "registry+https://github.com/rust-lang/crates.io-index" 2237 | checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34" 2238 | dependencies = [ 2239 | "adler", 2240 | ] 2241 | 2242 | [[package]] 2243 | name = "mio" 2244 | version = "0.8.4" 2245 | source = "registry+https://github.com/rust-lang/crates.io-index" 2246 | checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf" 2247 | dependencies = [ 2248 | "libc", 2249 | "log", 2250 | "wasi", 2251 | "windows-sys", 2252 | ] 2253 | 2254 | [[package]] 2255 | name = "mysqlclient-sys" 2256 | version = "0.2.5" 2257 | source = "registry+https://github.com/rust-lang/crates.io-index" 2258 | checksum = "f61b381528ba293005c42a409dd73d034508e273bf90481f17ec2e964a6e969b" 2259 | dependencies = [ 2260 | "pkg-config", 2261 | "vcpkg", 2262 | ] 2263 | 2264 | [[package]] 2265 | name = "naga" 2266 | version = "0.9.0" 2267 | source = "registry+https://github.com/rust-lang/crates.io-index" 2268 | checksum = "5f50357e1167a3ab92d6b3c7f4bf5f7fd13fde3f4b28bf0d5ea07b5100fdb6c0" 2269 | dependencies = [ 2270 | "bit-set", 2271 | "bitflags", 2272 | "codespan-reporting", 2273 | "hexf-parse", 2274 | "indexmap", 2275 | "log", 2276 | "num-traits", 2277 | "petgraph", 2278 | "pp-rs", 2279 | "rustc-hash", 2280 | "spirv", 2281 | "termcolor", 2282 | "thiserror", 2283 | "unicode-xid", 2284 | ] 2285 | 2286 | [[package]] 2287 | name = "ndk" 2288 | version = "0.5.0" 2289 | source = "registry+https://github.com/rust-lang/crates.io-index" 2290 | checksum = "96d868f654c72e75f8687572699cdabe755f03effbb62542768e995d5b8d699d" 2291 | dependencies = [ 2292 | "bitflags", 2293 | "jni-sys", 2294 | "ndk-sys 0.2.2", 2295 | "num_enum", 2296 | "thiserror", 2297 | ] 2298 | 2299 | [[package]] 2300 | name = "ndk" 2301 | version = "0.6.0" 2302 | source = "registry+https://github.com/rust-lang/crates.io-index" 2303 | checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" 2304 | dependencies = [ 2305 | "bitflags", 2306 | "jni-sys", 2307 | "ndk-sys 0.3.0", 2308 | "num_enum", 2309 | "thiserror", 2310 | ] 2311 | 2312 | [[package]] 2313 | name = "ndk-context" 2314 | version = "0.1.1" 2315 | source = "registry+https://github.com/rust-lang/crates.io-index" 2316 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 2317 | 2318 | [[package]] 2319 | name = "ndk-glue" 2320 | version = "0.5.2" 2321 | source = "registry+https://github.com/rust-lang/crates.io-index" 2322 | checksum = "c71bee8ea72d685477e28bd004cfe1bf99c754d688cd78cad139eae4089484d4" 2323 | dependencies = [ 2324 | "android_logger", 2325 | "lazy_static", 2326 | "libc", 2327 | "log", 2328 | "ndk 0.5.0", 2329 | "ndk-context", 2330 | "ndk-macro", 2331 | "ndk-sys 0.2.2", 2332 | ] 2333 | 2334 | [[package]] 2335 | name = "ndk-glue" 2336 | version = "0.6.2" 2337 | source = "registry+https://github.com/rust-lang/crates.io-index" 2338 | checksum = "0d0c4a7b83860226e6b4183edac21851f05d5a51756e97a1144b7f5a6b63e65f" 2339 | dependencies = [ 2340 | "lazy_static", 2341 | "libc", 2342 | "log", 2343 | "ndk 0.6.0", 2344 | "ndk-context", 2345 | "ndk-macro", 2346 | "ndk-sys 0.3.0", 2347 | ] 2348 | 2349 | [[package]] 2350 | name = "ndk-macro" 2351 | version = "0.3.0" 2352 | source = "registry+https://github.com/rust-lang/crates.io-index" 2353 | checksum = "0df7ac00c4672f9d5aece54ee3347520b7e20f158656c7db2e6de01902eb7a6c" 2354 | dependencies = [ 2355 | "darling", 2356 | "proc-macro-crate", 2357 | "proc-macro2", 2358 | "quote", 2359 | "syn", 2360 | ] 2361 | 2362 | [[package]] 2363 | name = "ndk-sys" 2364 | version = "0.2.2" 2365 | source = "registry+https://github.com/rust-lang/crates.io-index" 2366 | checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121" 2367 | 2368 | [[package]] 2369 | name = "ndk-sys" 2370 | version = "0.3.0" 2371 | source = "registry+https://github.com/rust-lang/crates.io-index" 2372 | checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97" 2373 | dependencies = [ 2374 | "jni-sys", 2375 | ] 2376 | 2377 | [[package]] 2378 | name = "nix" 2379 | version = "0.23.1" 2380 | source = "registry+https://github.com/rust-lang/crates.io-index" 2381 | checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6" 2382 | dependencies = [ 2383 | "bitflags", 2384 | "cc", 2385 | "cfg-if 1.0.0", 2386 | "libc", 2387 | "memoffset", 2388 | ] 2389 | 2390 | [[package]] 2391 | name = "nix" 2392 | version = "0.24.2" 2393 | source = "registry+https://github.com/rust-lang/crates.io-index" 2394 | checksum = "195cdbc1741b8134346d515b3a56a1c94b0912758009cfd53f99ea0f57b065fc" 2395 | dependencies = [ 2396 | "bitflags", 2397 | "cfg-if 1.0.0", 2398 | "libc", 2399 | ] 2400 | 2401 | [[package]] 2402 | name = "nom" 2403 | version = "7.1.1" 2404 | source = "registry+https://github.com/rust-lang/crates.io-index" 2405 | checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" 2406 | dependencies = [ 2407 | "memchr", 2408 | "minimal-lexical", 2409 | ] 2410 | 2411 | [[package]] 2412 | name = "notify" 2413 | version = "5.0.0-pre.15" 2414 | source = "registry+https://github.com/rust-lang/crates.io-index" 2415 | checksum = "553f9844ad0b0824605c20fb55a661679782680410abfb1a8144c2e7e437e7a7" 2416 | dependencies = [ 2417 | "bitflags", 2418 | "crossbeam-channel", 2419 | "filetime", 2420 | "fsevent-sys", 2421 | "inotify", 2422 | "kqueue", 2423 | "libc", 2424 | "mio", 2425 | "walkdir", 2426 | "winapi", 2427 | ] 2428 | 2429 | [[package]] 2430 | name = "num-derive" 2431 | version = "0.3.3" 2432 | source = "registry+https://github.com/rust-lang/crates.io-index" 2433 | checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" 2434 | dependencies = [ 2435 | "proc-macro2", 2436 | "quote", 2437 | "syn", 2438 | ] 2439 | 2440 | [[package]] 2441 | name = "num-integer" 2442 | version = "0.1.45" 2443 | source = "registry+https://github.com/rust-lang/crates.io-index" 2444 | checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" 2445 | dependencies = [ 2446 | "autocfg", 2447 | "num-traits", 2448 | ] 2449 | 2450 | [[package]] 2451 | name = "num-rational" 2452 | version = "0.4.1" 2453 | source = "registry+https://github.com/rust-lang/crates.io-index" 2454 | checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" 2455 | dependencies = [ 2456 | "autocfg", 2457 | "num-integer", 2458 | "num-traits", 2459 | ] 2460 | 2461 | [[package]] 2462 | name = "num-traits" 2463 | version = "0.2.15" 2464 | source = "registry+https://github.com/rust-lang/crates.io-index" 2465 | checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" 2466 | dependencies = [ 2467 | "autocfg", 2468 | ] 2469 | 2470 | [[package]] 2471 | name = "num_cpus" 2472 | version = "1.13.1" 2473 | source = "registry+https://github.com/rust-lang/crates.io-index" 2474 | checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" 2475 | dependencies = [ 2476 | "hermit-abi", 2477 | "libc", 2478 | ] 2479 | 2480 | [[package]] 2481 | name = "num_enum" 2482 | version = "0.5.7" 2483 | source = "registry+https://github.com/rust-lang/crates.io-index" 2484 | checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" 2485 | dependencies = [ 2486 | "num_enum_derive", 2487 | ] 2488 | 2489 | [[package]] 2490 | name = "num_enum_derive" 2491 | version = "0.5.7" 2492 | source = "registry+https://github.com/rust-lang/crates.io-index" 2493 | checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" 2494 | dependencies = [ 2495 | "proc-macro-crate", 2496 | "proc-macro2", 2497 | "quote", 2498 | "syn", 2499 | ] 2500 | 2501 | [[package]] 2502 | name = "objc" 2503 | version = "0.2.7" 2504 | source = "registry+https://github.com/rust-lang/crates.io-index" 2505 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 2506 | dependencies = [ 2507 | "malloc_buf", 2508 | "objc_exception", 2509 | ] 2510 | 2511 | [[package]] 2512 | name = "objc_exception" 2513 | version = "0.1.2" 2514 | source = "registry+https://github.com/rust-lang/crates.io-index" 2515 | checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" 2516 | dependencies = [ 2517 | "cc", 2518 | ] 2519 | 2520 | [[package]] 2521 | name = "oboe" 2522 | version = "0.4.6" 2523 | source = "registry+https://github.com/rust-lang/crates.io-index" 2524 | checksum = "27f63c358b4fa0fbcfefd7c8be5cfc39c08ce2389f5325687e7762a48d30a5c1" 2525 | dependencies = [ 2526 | "jni", 2527 | "ndk 0.6.0", 2528 | "ndk-context", 2529 | "num-derive", 2530 | "num-traits", 2531 | "oboe-sys", 2532 | ] 2533 | 2534 | [[package]] 2535 | name = "oboe-sys" 2536 | version = "0.4.5" 2537 | source = "registry+https://github.com/rust-lang/crates.io-index" 2538 | checksum = "3370abb7372ed744232c12954d920d1a40f1c4686de9e79e800021ef492294bd" 2539 | dependencies = [ 2540 | "cc", 2541 | ] 2542 | 2543 | [[package]] 2544 | name = "ogg" 2545 | version = "0.8.0" 2546 | source = "registry+https://github.com/rust-lang/crates.io-index" 2547 | checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" 2548 | dependencies = [ 2549 | "byteorder", 2550 | ] 2551 | 2552 | [[package]] 2553 | name = "once_cell" 2554 | version = "1.15.0" 2555 | source = "registry+https://github.com/rust-lang/crates.io-index" 2556 | checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1" 2557 | 2558 | [[package]] 2559 | name = "owned_ttf_parser" 2560 | version = "0.15.2" 2561 | source = "registry+https://github.com/rust-lang/crates.io-index" 2562 | checksum = "05e6affeb1632d6ff6a23d2cd40ffed138e82f1532571a26f527c8a284bb2fbb" 2563 | dependencies = [ 2564 | "ttf-parser", 2565 | ] 2566 | 2567 | [[package]] 2568 | name = "parking" 2569 | version = "2.0.0" 2570 | source = "registry+https://github.com/rust-lang/crates.io-index" 2571 | checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" 2572 | 2573 | [[package]] 2574 | name = "parking_lot" 2575 | version = "0.11.2" 2576 | source = "registry+https://github.com/rust-lang/crates.io-index" 2577 | checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" 2578 | dependencies = [ 2579 | "instant", 2580 | "lock_api", 2581 | "parking_lot_core 0.8.5", 2582 | ] 2583 | 2584 | [[package]] 2585 | name = "parking_lot" 2586 | version = "0.12.1" 2587 | source = "registry+https://github.com/rust-lang/crates.io-index" 2588 | checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" 2589 | dependencies = [ 2590 | "lock_api", 2591 | "parking_lot_core 0.9.3", 2592 | ] 2593 | 2594 | [[package]] 2595 | name = "parking_lot_core" 2596 | version = "0.8.5" 2597 | source = "registry+https://github.com/rust-lang/crates.io-index" 2598 | checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" 2599 | dependencies = [ 2600 | "cfg-if 1.0.0", 2601 | "instant", 2602 | "libc", 2603 | "redox_syscall", 2604 | "smallvec", 2605 | "winapi", 2606 | ] 2607 | 2608 | [[package]] 2609 | name = "parking_lot_core" 2610 | version = "0.9.3" 2611 | source = "registry+https://github.com/rust-lang/crates.io-index" 2612 | checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" 2613 | dependencies = [ 2614 | "cfg-if 1.0.0", 2615 | "libc", 2616 | "redox_syscall", 2617 | "smallvec", 2618 | "windows-sys", 2619 | ] 2620 | 2621 | [[package]] 2622 | name = "peeking_take_while" 2623 | version = "0.1.2" 2624 | source = "registry+https://github.com/rust-lang/crates.io-index" 2625 | checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" 2626 | 2627 | [[package]] 2628 | name = "percent-encoding" 2629 | version = "2.2.0" 2630 | source = "registry+https://github.com/rust-lang/crates.io-index" 2631 | checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" 2632 | 2633 | [[package]] 2634 | name = "petgraph" 2635 | version = "0.6.2" 2636 | source = "registry+https://github.com/rust-lang/crates.io-index" 2637 | checksum = "e6d5014253a1331579ce62aa67443b4a658c5e7dd03d4bc6d302b94474888143" 2638 | dependencies = [ 2639 | "fixedbitset", 2640 | "indexmap", 2641 | ] 2642 | 2643 | [[package]] 2644 | name = "pin-project" 2645 | version = "1.0.12" 2646 | source = "registry+https://github.com/rust-lang/crates.io-index" 2647 | checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc" 2648 | dependencies = [ 2649 | "pin-project-internal", 2650 | ] 2651 | 2652 | [[package]] 2653 | name = "pin-project-internal" 2654 | version = "1.0.12" 2655 | source = "registry+https://github.com/rust-lang/crates.io-index" 2656 | checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" 2657 | dependencies = [ 2658 | "proc-macro2", 2659 | "quote", 2660 | "syn", 2661 | ] 2662 | 2663 | [[package]] 2664 | name = "pin-project-lite" 2665 | version = "0.2.9" 2666 | source = "registry+https://github.com/rust-lang/crates.io-index" 2667 | checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" 2668 | 2669 | [[package]] 2670 | name = "pin-utils" 2671 | version = "0.1.0" 2672 | source = "registry+https://github.com/rust-lang/crates.io-index" 2673 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 2674 | 2675 | [[package]] 2676 | name = "pkg-config" 2677 | version = "0.3.25" 2678 | source = "registry+https://github.com/rust-lang/crates.io-index" 2679 | checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" 2680 | 2681 | [[package]] 2682 | name = "png" 2683 | version = "0.17.6" 2684 | source = "registry+https://github.com/rust-lang/crates.io-index" 2685 | checksum = "8f0e7f4c94ec26ff209cee506314212639d6c91b80afb82984819fafce9df01c" 2686 | dependencies = [ 2687 | "bitflags", 2688 | "crc32fast", 2689 | "flate2", 2690 | "miniz_oxide", 2691 | ] 2692 | 2693 | [[package]] 2694 | name = "pp-rs" 2695 | version = "0.2.1" 2696 | source = "registry+https://github.com/rust-lang/crates.io-index" 2697 | checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee" 2698 | dependencies = [ 2699 | "unicode-xid", 2700 | ] 2701 | 2702 | [[package]] 2703 | name = "pq-sys" 2704 | version = "0.4.7" 2705 | source = "registry+https://github.com/rust-lang/crates.io-index" 2706 | checksum = "3b845d6d8ec554f972a2c5298aad68953fd64e7441e846075450b44656a016d1" 2707 | dependencies = [ 2708 | "vcpkg", 2709 | ] 2710 | 2711 | [[package]] 2712 | name = "proc-macro-crate" 2713 | version = "1.2.1" 2714 | source = "registry+https://github.com/rust-lang/crates.io-index" 2715 | checksum = "eda0fc3b0fb7c975631757e14d9049da17374063edb6ebbcbc54d880d4fe94e9" 2716 | dependencies = [ 2717 | "once_cell", 2718 | "thiserror", 2719 | "toml", 2720 | ] 2721 | 2722 | [[package]] 2723 | name = "proc-macro-error" 2724 | version = "1.0.4" 2725 | source = "registry+https://github.com/rust-lang/crates.io-index" 2726 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 2727 | dependencies = [ 2728 | "proc-macro-error-attr", 2729 | "proc-macro2", 2730 | "quote", 2731 | "syn", 2732 | "version_check", 2733 | ] 2734 | 2735 | [[package]] 2736 | name = "proc-macro-error-attr" 2737 | version = "1.0.4" 2738 | source = "registry+https://github.com/rust-lang/crates.io-index" 2739 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 2740 | dependencies = [ 2741 | "proc-macro2", 2742 | "quote", 2743 | "version_check", 2744 | ] 2745 | 2746 | [[package]] 2747 | name = "proc-macro-hack" 2748 | version = "0.5.19" 2749 | source = "registry+https://github.com/rust-lang/crates.io-index" 2750 | checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" 2751 | 2752 | [[package]] 2753 | name = "proc-macro2" 2754 | version = "1.0.46" 2755 | source = "registry+https://github.com/rust-lang/crates.io-index" 2756 | checksum = "94e2ef8dbfc347b10c094890f778ee2e36ca9bb4262e86dc99cd217e35f3470b" 2757 | dependencies = [ 2758 | "unicode-ident", 2759 | ] 2760 | 2761 | [[package]] 2762 | name = "profiling" 2763 | version = "1.0.6" 2764 | source = "registry+https://github.com/rust-lang/crates.io-index" 2765 | checksum = "2f61dcf0b917cd75d4521d7343d1ffff3d1583054133c9b5cbea3375c703c40d" 2766 | 2767 | [[package]] 2768 | name = "quote" 2769 | version = "1.0.21" 2770 | source = "registry+https://github.com/rust-lang/crates.io-index" 2771 | checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" 2772 | dependencies = [ 2773 | "proc-macro2", 2774 | ] 2775 | 2776 | [[package]] 2777 | name = "radsort" 2778 | version = "0.1.0" 2779 | source = "registry+https://github.com/rust-lang/crates.io-index" 2780 | checksum = "17fd96390ed3feda12e1dfe2645ed587e0bea749e319333f104a33ff62f77a0b" 2781 | 2782 | [[package]] 2783 | name = "range-alloc" 2784 | version = "0.1.2" 2785 | source = "registry+https://github.com/rust-lang/crates.io-index" 2786 | checksum = "63e935c45e09cc6dcf00d2f0b2d630a58f4095320223d47fc68918722f0538b6" 2787 | 2788 | [[package]] 2789 | name = "raw-window-handle" 2790 | version = "0.4.3" 2791 | source = "registry+https://github.com/rust-lang/crates.io-index" 2792 | checksum = "b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41" 2793 | dependencies = [ 2794 | "cty", 2795 | ] 2796 | 2797 | [[package]] 2798 | name = "rectangle-pack" 2799 | version = "0.4.2" 2800 | source = "registry+https://github.com/rust-lang/crates.io-index" 2801 | checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb" 2802 | 2803 | [[package]] 2804 | name = "redox_syscall" 2805 | version = "0.2.16" 2806 | source = "registry+https://github.com/rust-lang/crates.io-index" 2807 | checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" 2808 | dependencies = [ 2809 | "bitflags", 2810 | ] 2811 | 2812 | [[package]] 2813 | name = "regex" 2814 | version = "1.6.0" 2815 | source = "registry+https://github.com/rust-lang/crates.io-index" 2816 | checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b" 2817 | dependencies = [ 2818 | "aho-corasick", 2819 | "memchr", 2820 | "regex-syntax", 2821 | ] 2822 | 2823 | [[package]] 2824 | name = "regex-automata" 2825 | version = "0.1.10" 2826 | source = "registry+https://github.com/rust-lang/crates.io-index" 2827 | checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" 2828 | dependencies = [ 2829 | "regex-syntax", 2830 | ] 2831 | 2832 | [[package]] 2833 | name = "regex-syntax" 2834 | version = "0.6.27" 2835 | source = "registry+https://github.com/rust-lang/crates.io-index" 2836 | checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" 2837 | 2838 | [[package]] 2839 | name = "renderdoc-sys" 2840 | version = "0.7.1" 2841 | source = "registry+https://github.com/rust-lang/crates.io-index" 2842 | checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157" 2843 | 2844 | [[package]] 2845 | name = "rodio" 2846 | version = "0.15.0" 2847 | source = "registry+https://github.com/rust-lang/crates.io-index" 2848 | checksum = "ec0939e9f626e6c6f1989adb6226a039c855ca483053f0ee7c98b90e41cf731e" 2849 | dependencies = [ 2850 | "cpal", 2851 | "lewton", 2852 | ] 2853 | 2854 | [[package]] 2855 | name = "ron" 2856 | version = "0.7.1" 2857 | source = "registry+https://github.com/rust-lang/crates.io-index" 2858 | checksum = "88073939a61e5b7680558e6be56b419e208420c2adb92be54921fa6b72283f1a" 2859 | dependencies = [ 2860 | "base64", 2861 | "bitflags", 2862 | "serde", 2863 | ] 2864 | 2865 | [[package]] 2866 | name = "rustc-hash" 2867 | version = "1.1.0" 2868 | source = "registry+https://github.com/rust-lang/crates.io-index" 2869 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 2870 | 2871 | [[package]] 2872 | name = "rusty-xinput" 2873 | version = "1.2.0" 2874 | source = "registry+https://github.com/rust-lang/crates.io-index" 2875 | checksum = "d2aa654bc32eb9ca14cce1a084abc9dfe43949a4547c35269a094c39272db3bb" 2876 | dependencies = [ 2877 | "lazy_static", 2878 | "log", 2879 | "winapi", 2880 | ] 2881 | 2882 | [[package]] 2883 | name = "ryu" 2884 | version = "1.0.11" 2885 | source = "registry+https://github.com/rust-lang/crates.io-index" 2886 | checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" 2887 | 2888 | [[package]] 2889 | name = "same-file" 2890 | version = "1.0.6" 2891 | source = "registry+https://github.com/rust-lang/crates.io-index" 2892 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 2893 | dependencies = [ 2894 | "winapi-util", 2895 | ] 2896 | 2897 | [[package]] 2898 | name = "scoped_threadpool" 2899 | version = "0.1.9" 2900 | source = "registry+https://github.com/rust-lang/crates.io-index" 2901 | checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" 2902 | 2903 | [[package]] 2904 | name = "scopeguard" 2905 | version = "1.1.0" 2906 | source = "registry+https://github.com/rust-lang/crates.io-index" 2907 | checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 2908 | 2909 | [[package]] 2910 | name = "serde" 2911 | version = "1.0.145" 2912 | source = "registry+https://github.com/rust-lang/crates.io-index" 2913 | checksum = "728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b" 2914 | dependencies = [ 2915 | "serde_derive", 2916 | ] 2917 | 2918 | [[package]] 2919 | name = "serde_derive" 2920 | version = "1.0.145" 2921 | source = "registry+https://github.com/rust-lang/crates.io-index" 2922 | checksum = "81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c" 2923 | dependencies = [ 2924 | "proc-macro2", 2925 | "quote", 2926 | "syn", 2927 | ] 2928 | 2929 | [[package]] 2930 | name = "serde_json" 2931 | version = "1.0.85" 2932 | source = "registry+https://github.com/rust-lang/crates.io-index" 2933 | checksum = "e55a28e3aaef9d5ce0506d0a14dbba8054ddc7e499ef522dd8b26859ec9d4a44" 2934 | dependencies = [ 2935 | "itoa", 2936 | "ryu", 2937 | "serde", 2938 | ] 2939 | 2940 | [[package]] 2941 | name = "serde_path_to_error" 2942 | version = "0.1.8" 2943 | source = "registry+https://github.com/rust-lang/crates.io-index" 2944 | checksum = "184c643044780f7ceb59104cef98a5a6f12cb2288a7bc701ab93a362b49fd47d" 2945 | dependencies = [ 2946 | "serde", 2947 | ] 2948 | 2949 | [[package]] 2950 | name = "serde_urlencoded" 2951 | version = "0.7.1" 2952 | source = "registry+https://github.com/rust-lang/crates.io-index" 2953 | checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" 2954 | dependencies = [ 2955 | "form_urlencoded", 2956 | "itoa", 2957 | "ryu", 2958 | "serde", 2959 | ] 2960 | 2961 | [[package]] 2962 | name = "sharded-slab" 2963 | version = "0.1.4" 2964 | source = "registry+https://github.com/rust-lang/crates.io-index" 2965 | checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" 2966 | dependencies = [ 2967 | "lazy_static", 2968 | ] 2969 | 2970 | [[package]] 2971 | name = "shlex" 2972 | version = "1.1.0" 2973 | source = "registry+https://github.com/rust-lang/crates.io-index" 2974 | checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" 2975 | 2976 | [[package]] 2977 | name = "slab" 2978 | version = "0.4.7" 2979 | source = "registry+https://github.com/rust-lang/crates.io-index" 2980 | checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" 2981 | dependencies = [ 2982 | "autocfg", 2983 | ] 2984 | 2985 | [[package]] 2986 | name = "slotmap" 2987 | version = "1.0.6" 2988 | source = "registry+https://github.com/rust-lang/crates.io-index" 2989 | checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" 2990 | dependencies = [ 2991 | "version_check", 2992 | ] 2993 | 2994 | [[package]] 2995 | name = "smallvec" 2996 | version = "1.9.0" 2997 | source = "registry+https://github.com/rust-lang/crates.io-index" 2998 | checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1" 2999 | dependencies = [ 3000 | "serde", 3001 | ] 3002 | 3003 | [[package]] 3004 | name = "socket2" 3005 | version = "0.4.7" 3006 | source = "registry+https://github.com/rust-lang/crates.io-index" 3007 | checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd" 3008 | dependencies = [ 3009 | "libc", 3010 | "winapi", 3011 | ] 3012 | 3013 | [[package]] 3014 | name = "spirv" 3015 | version = "0.2.0+1.5.4" 3016 | source = "registry+https://github.com/rust-lang/crates.io-index" 3017 | checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830" 3018 | dependencies = [ 3019 | "bitflags", 3020 | "num-traits", 3021 | ] 3022 | 3023 | [[package]] 3024 | name = "stdweb" 3025 | version = "0.1.3" 3026 | source = "registry+https://github.com/rust-lang/crates.io-index" 3027 | checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" 3028 | 3029 | [[package]] 3030 | name = "strsim" 3031 | version = "0.10.0" 3032 | source = "registry+https://github.com/rust-lang/crates.io-index" 3033 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 3034 | 3035 | [[package]] 3036 | name = "svg_fmt" 3037 | version = "0.4.1" 3038 | source = "registry+https://github.com/rust-lang/crates.io-index" 3039 | checksum = "8fb1df15f412ee2e9dfc1c504260fa695c1c3f10fe9f4a6ee2d2184d7d6450e2" 3040 | 3041 | [[package]] 3042 | name = "syn" 3043 | version = "1.0.101" 3044 | source = "registry+https://github.com/rust-lang/crates.io-index" 3045 | checksum = "e90cde112c4b9690b8cbe810cba9ddd8bc1d7472e2cae317b69e9438c1cba7d2" 3046 | dependencies = [ 3047 | "proc-macro2", 3048 | "quote", 3049 | "unicode-ident", 3050 | ] 3051 | 3052 | [[package]] 3053 | name = "sync_wrapper" 3054 | version = "0.1.1" 3055 | source = "registry+https://github.com/rust-lang/crates.io-index" 3056 | checksum = "20518fe4a4c9acf048008599e464deb21beeae3d3578418951a189c235a7a9a8" 3057 | 3058 | [[package]] 3059 | name = "taffy" 3060 | version = "0.1.0" 3061 | source = "registry+https://github.com/rust-lang/crates.io-index" 3062 | checksum = "ec27dea659b100d489dffa57cf0efc6d7bfefb119af817b92cc14006c0b214e3" 3063 | dependencies = [ 3064 | "arrayvec", 3065 | "hash32", 3066 | "hash32-derive", 3067 | "num-traits", 3068 | "typenum", 3069 | ] 3070 | 3071 | [[package]] 3072 | name = "termcolor" 3073 | version = "1.1.3" 3074 | source = "registry+https://github.com/rust-lang/crates.io-index" 3075 | checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" 3076 | dependencies = [ 3077 | "winapi-util", 3078 | ] 3079 | 3080 | [[package]] 3081 | name = "test_cases" 3082 | version = "0.1.0" 3083 | dependencies = [ 3084 | "axum", 3085 | "axum-macros", 3086 | "bevy", 3087 | "chumsky", 3088 | "diesel", 3089 | "easy-ml", 3090 | "entrait", 3091 | "trybuild", 3092 | "typed-builder", 3093 | "uom", 3094 | ] 3095 | 3096 | [[package]] 3097 | name = "thiserror" 3098 | version = "1.0.37" 3099 | source = "registry+https://github.com/rust-lang/crates.io-index" 3100 | checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e" 3101 | dependencies = [ 3102 | "thiserror-impl", 3103 | ] 3104 | 3105 | [[package]] 3106 | name = "thiserror-impl" 3107 | version = "1.0.37" 3108 | source = "registry+https://github.com/rust-lang/crates.io-index" 3109 | checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb" 3110 | dependencies = [ 3111 | "proc-macro2", 3112 | "quote", 3113 | "syn", 3114 | ] 3115 | 3116 | [[package]] 3117 | name = "thread_local" 3118 | version = "1.1.4" 3119 | source = "registry+https://github.com/rust-lang/crates.io-index" 3120 | checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" 3121 | dependencies = [ 3122 | "once_cell", 3123 | ] 3124 | 3125 | [[package]] 3126 | name = "tiny-keccak" 3127 | version = "2.0.2" 3128 | source = "registry+https://github.com/rust-lang/crates.io-index" 3129 | checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" 3130 | dependencies = [ 3131 | "crunchy", 3132 | ] 3133 | 3134 | [[package]] 3135 | name = "tinyvec" 3136 | version = "1.6.0" 3137 | source = "registry+https://github.com/rust-lang/crates.io-index" 3138 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 3139 | dependencies = [ 3140 | "tinyvec_macros", 3141 | ] 3142 | 3143 | [[package]] 3144 | name = "tinyvec_macros" 3145 | version = "0.1.0" 3146 | source = "registry+https://github.com/rust-lang/crates.io-index" 3147 | checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" 3148 | 3149 | [[package]] 3150 | name = "tokio" 3151 | version = "1.21.2" 3152 | source = "registry+https://github.com/rust-lang/crates.io-index" 3153 | checksum = "a9e03c497dc955702ba729190dc4aac6f2a0ce97f913e5b1b5912fc5039d9099" 3154 | dependencies = [ 3155 | "autocfg", 3156 | "libc", 3157 | "mio", 3158 | "pin-project-lite", 3159 | "socket2", 3160 | "winapi", 3161 | ] 3162 | 3163 | [[package]] 3164 | name = "toml" 3165 | version = "0.5.9" 3166 | source = "registry+https://github.com/rust-lang/crates.io-index" 3167 | checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" 3168 | dependencies = [ 3169 | "serde", 3170 | ] 3171 | 3172 | [[package]] 3173 | name = "tower" 3174 | version = "0.4.13" 3175 | source = "registry+https://github.com/rust-lang/crates.io-index" 3176 | checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" 3177 | dependencies = [ 3178 | "futures-core", 3179 | "futures-util", 3180 | "pin-project", 3181 | "pin-project-lite", 3182 | "tokio", 3183 | "tower-layer", 3184 | "tower-service", 3185 | "tracing", 3186 | ] 3187 | 3188 | [[package]] 3189 | name = "tower-http" 3190 | version = "0.3.4" 3191 | source = "registry+https://github.com/rust-lang/crates.io-index" 3192 | checksum = "3c530c8675c1dbf98facee631536fa116b5fb6382d7dd6dc1b118d970eafe3ba" 3193 | dependencies = [ 3194 | "bitflags", 3195 | "bytes", 3196 | "futures-core", 3197 | "futures-util", 3198 | "http", 3199 | "http-body", 3200 | "http-range-header", 3201 | "pin-project-lite", 3202 | "tower", 3203 | "tower-layer", 3204 | "tower-service", 3205 | ] 3206 | 3207 | [[package]] 3208 | name = "tower-layer" 3209 | version = "0.3.1" 3210 | source = "registry+https://github.com/rust-lang/crates.io-index" 3211 | checksum = "343bc9466d3fe6b0f960ef45960509f84480bf4fd96f92901afe7ff3df9d3a62" 3212 | 3213 | [[package]] 3214 | name = "tower-service" 3215 | version = "0.3.2" 3216 | source = "registry+https://github.com/rust-lang/crates.io-index" 3217 | checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" 3218 | 3219 | [[package]] 3220 | name = "tracing" 3221 | version = "0.1.36" 3222 | source = "registry+https://github.com/rust-lang/crates.io-index" 3223 | checksum = "2fce9567bd60a67d08a16488756721ba392f24f29006402881e43b19aac64307" 3224 | dependencies = [ 3225 | "cfg-if 1.0.0", 3226 | "log", 3227 | "pin-project-lite", 3228 | "tracing-attributes", 3229 | "tracing-core", 3230 | ] 3231 | 3232 | [[package]] 3233 | name = "tracing-attributes" 3234 | version = "0.1.22" 3235 | source = "registry+https://github.com/rust-lang/crates.io-index" 3236 | checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2" 3237 | dependencies = [ 3238 | "proc-macro2", 3239 | "quote", 3240 | "syn", 3241 | ] 3242 | 3243 | [[package]] 3244 | name = "tracing-core" 3245 | version = "0.1.29" 3246 | source = "registry+https://github.com/rust-lang/crates.io-index" 3247 | checksum = "5aeea4303076558a00714b823f9ad67d58a3bbda1df83d8827d21193156e22f7" 3248 | dependencies = [ 3249 | "once_cell", 3250 | "valuable", 3251 | ] 3252 | 3253 | [[package]] 3254 | name = "tracing-log" 3255 | version = "0.1.3" 3256 | source = "registry+https://github.com/rust-lang/crates.io-index" 3257 | checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" 3258 | dependencies = [ 3259 | "lazy_static", 3260 | "log", 3261 | "tracing-core", 3262 | ] 3263 | 3264 | [[package]] 3265 | name = "tracing-subscriber" 3266 | version = "0.3.15" 3267 | source = "registry+https://github.com/rust-lang/crates.io-index" 3268 | checksum = "60db860322da191b40952ad9affe65ea23e7dd6a5c442c2c42865810c6ab8e6b" 3269 | dependencies = [ 3270 | "ansi_term", 3271 | "matchers", 3272 | "once_cell", 3273 | "regex", 3274 | "sharded-slab", 3275 | "smallvec", 3276 | "thread_local", 3277 | "tracing", 3278 | "tracing-core", 3279 | "tracing-log", 3280 | ] 3281 | 3282 | [[package]] 3283 | name = "tracing-wasm" 3284 | version = "0.2.1" 3285 | source = "registry+https://github.com/rust-lang/crates.io-index" 3286 | checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" 3287 | dependencies = [ 3288 | "tracing", 3289 | "tracing-subscriber", 3290 | "wasm-bindgen", 3291 | ] 3292 | 3293 | [[package]] 3294 | name = "try-lock" 3295 | version = "0.2.3" 3296 | source = "registry+https://github.com/rust-lang/crates.io-index" 3297 | checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" 3298 | 3299 | [[package]] 3300 | name = "trybuild" 3301 | version = "1.0.65" 3302 | source = "registry+https://github.com/rust-lang/crates.io-index" 3303 | checksum = "9e13556ba7dba80b3c76d1331989a341290c77efcf688eca6c307ee3066383dd" 3304 | dependencies = [ 3305 | "glob", 3306 | "once_cell", 3307 | "serde", 3308 | "serde_derive", 3309 | "serde_json", 3310 | "termcolor", 3311 | "toml", 3312 | ] 3313 | 3314 | [[package]] 3315 | name = "ttf-parser" 3316 | version = "0.15.2" 3317 | source = "registry+https://github.com/rust-lang/crates.io-index" 3318 | checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd" 3319 | 3320 | [[package]] 3321 | name = "typed-builder" 3322 | version = "0.10.0" 3323 | source = "registry+https://github.com/rust-lang/crates.io-index" 3324 | checksum = "89851716b67b937e393b3daa8423e67ddfc4bbbf1654bcf05488e95e0828db0c" 3325 | dependencies = [ 3326 | "proc-macro2", 3327 | "quote", 3328 | "syn", 3329 | ] 3330 | 3331 | [[package]] 3332 | name = "typenum" 3333 | version = "1.15.0" 3334 | source = "registry+https://github.com/rust-lang/crates.io-index" 3335 | checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" 3336 | 3337 | [[package]] 3338 | name = "unicode-bidi" 3339 | version = "0.3.8" 3340 | source = "registry+https://github.com/rust-lang/crates.io-index" 3341 | checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" 3342 | 3343 | [[package]] 3344 | name = "unicode-ident" 3345 | version = "1.0.4" 3346 | source = "registry+https://github.com/rust-lang/crates.io-index" 3347 | checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd" 3348 | 3349 | [[package]] 3350 | name = "unicode-normalization" 3351 | version = "0.1.22" 3352 | source = "registry+https://github.com/rust-lang/crates.io-index" 3353 | checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" 3354 | dependencies = [ 3355 | "tinyvec", 3356 | ] 3357 | 3358 | [[package]] 3359 | name = "unicode-width" 3360 | version = "0.1.10" 3361 | source = "registry+https://github.com/rust-lang/crates.io-index" 3362 | checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" 3363 | 3364 | [[package]] 3365 | name = "unicode-xid" 3366 | version = "0.2.4" 3367 | source = "registry+https://github.com/rust-lang/crates.io-index" 3368 | checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" 3369 | 3370 | [[package]] 3371 | name = "uom" 3372 | version = "0.33.0" 3373 | source = "registry+https://github.com/rust-lang/crates.io-index" 3374 | checksum = "53e68fe0bfdacf0a6cef0efec5dcc295b836cde69b01ad93feb18488fa82050d" 3375 | dependencies = [ 3376 | "num-traits", 3377 | "typenum", 3378 | ] 3379 | 3380 | [[package]] 3381 | name = "url" 3382 | version = "2.3.1" 3383 | source = "registry+https://github.com/rust-lang/crates.io-index" 3384 | checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" 3385 | dependencies = [ 3386 | "form_urlencoded", 3387 | "idna", 3388 | "percent-encoding", 3389 | ] 3390 | 3391 | [[package]] 3392 | name = "uuid" 3393 | version = "1.1.2" 3394 | source = "registry+https://github.com/rust-lang/crates.io-index" 3395 | checksum = "dd6469f4314d5f1ffec476e05f17cc9a78bc7a27a6a857842170bdf8d6f98d2f" 3396 | dependencies = [ 3397 | "getrandom", 3398 | "serde", 3399 | ] 3400 | 3401 | [[package]] 3402 | name = "valuable" 3403 | version = "0.1.0" 3404 | source = "registry+https://github.com/rust-lang/crates.io-index" 3405 | checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" 3406 | 3407 | [[package]] 3408 | name = "vcpkg" 3409 | version = "0.2.15" 3410 | source = "registry+https://github.com/rust-lang/crates.io-index" 3411 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 3412 | 3413 | [[package]] 3414 | name = "vec_map" 3415 | version = "0.8.2" 3416 | source = "registry+https://github.com/rust-lang/crates.io-index" 3417 | checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" 3418 | 3419 | [[package]] 3420 | name = "version_check" 3421 | version = "0.9.4" 3422 | source = "registry+https://github.com/rust-lang/crates.io-index" 3423 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 3424 | 3425 | [[package]] 3426 | name = "waker-fn" 3427 | version = "1.1.0" 3428 | source = "registry+https://github.com/rust-lang/crates.io-index" 3429 | checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" 3430 | 3431 | [[package]] 3432 | name = "walkdir" 3433 | version = "2.3.2" 3434 | source = "registry+https://github.com/rust-lang/crates.io-index" 3435 | checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" 3436 | dependencies = [ 3437 | "same-file", 3438 | "winapi", 3439 | "winapi-util", 3440 | ] 3441 | 3442 | [[package]] 3443 | name = "want" 3444 | version = "0.3.0" 3445 | source = "registry+https://github.com/rust-lang/crates.io-index" 3446 | checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" 3447 | dependencies = [ 3448 | "log", 3449 | "try-lock", 3450 | ] 3451 | 3452 | [[package]] 3453 | name = "wasi" 3454 | version = "0.11.0+wasi-snapshot-preview1" 3455 | source = "registry+https://github.com/rust-lang/crates.io-index" 3456 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 3457 | 3458 | [[package]] 3459 | name = "wasm-bindgen" 3460 | version = "0.2.83" 3461 | source = "registry+https://github.com/rust-lang/crates.io-index" 3462 | checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268" 3463 | dependencies = [ 3464 | "cfg-if 1.0.0", 3465 | "wasm-bindgen-macro", 3466 | ] 3467 | 3468 | [[package]] 3469 | name = "wasm-bindgen-backend" 3470 | version = "0.2.83" 3471 | source = "registry+https://github.com/rust-lang/crates.io-index" 3472 | checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142" 3473 | dependencies = [ 3474 | "bumpalo", 3475 | "log", 3476 | "once_cell", 3477 | "proc-macro2", 3478 | "quote", 3479 | "syn", 3480 | "wasm-bindgen-shared", 3481 | ] 3482 | 3483 | [[package]] 3484 | name = "wasm-bindgen-futures" 3485 | version = "0.4.33" 3486 | source = "registry+https://github.com/rust-lang/crates.io-index" 3487 | checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d" 3488 | dependencies = [ 3489 | "cfg-if 1.0.0", 3490 | "js-sys", 3491 | "wasm-bindgen", 3492 | "web-sys", 3493 | ] 3494 | 3495 | [[package]] 3496 | name = "wasm-bindgen-macro" 3497 | version = "0.2.83" 3498 | source = "registry+https://github.com/rust-lang/crates.io-index" 3499 | checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810" 3500 | dependencies = [ 3501 | "quote", 3502 | "wasm-bindgen-macro-support", 3503 | ] 3504 | 3505 | [[package]] 3506 | name = "wasm-bindgen-macro-support" 3507 | version = "0.2.83" 3508 | source = "registry+https://github.com/rust-lang/crates.io-index" 3509 | checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" 3510 | dependencies = [ 3511 | "proc-macro2", 3512 | "quote", 3513 | "syn", 3514 | "wasm-bindgen-backend", 3515 | "wasm-bindgen-shared", 3516 | ] 3517 | 3518 | [[package]] 3519 | name = "wasm-bindgen-shared" 3520 | version = "0.2.83" 3521 | source = "registry+https://github.com/rust-lang/crates.io-index" 3522 | checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f" 3523 | 3524 | [[package]] 3525 | name = "web-sys" 3526 | version = "0.3.60" 3527 | source = "registry+https://github.com/rust-lang/crates.io-index" 3528 | checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" 3529 | dependencies = [ 3530 | "js-sys", 3531 | "wasm-bindgen", 3532 | ] 3533 | 3534 | [[package]] 3535 | name = "wgpu" 3536 | version = "0.13.1" 3537 | source = "registry+https://github.com/rust-lang/crates.io-index" 3538 | checksum = "277e967bf8b7820a76852645a6bce8bbd31c32fda2042e82d8e3ea75fda8892d" 3539 | dependencies = [ 3540 | "arrayvec", 3541 | "js-sys", 3542 | "log", 3543 | "naga", 3544 | "parking_lot 0.12.1", 3545 | "raw-window-handle", 3546 | "smallvec", 3547 | "wasm-bindgen", 3548 | "wasm-bindgen-futures", 3549 | "web-sys", 3550 | "wgpu-core", 3551 | "wgpu-hal", 3552 | "wgpu-types", 3553 | ] 3554 | 3555 | [[package]] 3556 | name = "wgpu-core" 3557 | version = "0.13.2" 3558 | source = "registry+https://github.com/rust-lang/crates.io-index" 3559 | checksum = "89b92788dec9d0c1bed849a1b83f01b2ee12819bf04a79c90f68e4173f7b5ba2" 3560 | dependencies = [ 3561 | "arrayvec", 3562 | "bit-vec", 3563 | "bitflags", 3564 | "cfg_aliases", 3565 | "codespan-reporting", 3566 | "copyless", 3567 | "fxhash", 3568 | "log", 3569 | "naga", 3570 | "parking_lot 0.12.1", 3571 | "profiling", 3572 | "raw-window-handle", 3573 | "smallvec", 3574 | "thiserror", 3575 | "web-sys", 3576 | "wgpu-hal", 3577 | "wgpu-types", 3578 | ] 3579 | 3580 | [[package]] 3581 | name = "wgpu-hal" 3582 | version = "0.13.2" 3583 | source = "registry+https://github.com/rust-lang/crates.io-index" 3584 | checksum = "20cbdfc3d0637dba3d5536b93adef3d26023a0b96f0e1ee5ee9560a401d9f646" 3585 | dependencies = [ 3586 | "android_system_properties", 3587 | "arrayvec", 3588 | "ash", 3589 | "bit-set", 3590 | "bitflags", 3591 | "block", 3592 | "core-graphics-types", 3593 | "d3d12", 3594 | "foreign-types", 3595 | "fxhash", 3596 | "glow", 3597 | "gpu-alloc", 3598 | "gpu-descriptor", 3599 | "inplace_it", 3600 | "js-sys", 3601 | "khronos-egl", 3602 | "libloading", 3603 | "log", 3604 | "metal", 3605 | "naga", 3606 | "objc", 3607 | "parking_lot 0.12.1", 3608 | "profiling", 3609 | "range-alloc", 3610 | "raw-window-handle", 3611 | "renderdoc-sys", 3612 | "thiserror", 3613 | "wasm-bindgen", 3614 | "web-sys", 3615 | "wgpu-types", 3616 | "winapi", 3617 | ] 3618 | 3619 | [[package]] 3620 | name = "wgpu-types" 3621 | version = "0.13.2" 3622 | source = "registry+https://github.com/rust-lang/crates.io-index" 3623 | checksum = "1f762cbc08e1a51389859cf9c199c7aef544789cf3510889aab12c607f701604" 3624 | dependencies = [ 3625 | "bitflags", 3626 | ] 3627 | 3628 | [[package]] 3629 | name = "winapi" 3630 | version = "0.3.9" 3631 | source = "registry+https://github.com/rust-lang/crates.io-index" 3632 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3633 | dependencies = [ 3634 | "winapi-i686-pc-windows-gnu", 3635 | "winapi-x86_64-pc-windows-gnu", 3636 | ] 3637 | 3638 | [[package]] 3639 | name = "winapi-i686-pc-windows-gnu" 3640 | version = "0.4.0" 3641 | source = "registry+https://github.com/rust-lang/crates.io-index" 3642 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3643 | 3644 | [[package]] 3645 | name = "winapi-util" 3646 | version = "0.1.5" 3647 | source = "registry+https://github.com/rust-lang/crates.io-index" 3648 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 3649 | dependencies = [ 3650 | "winapi", 3651 | ] 3652 | 3653 | [[package]] 3654 | name = "winapi-x86_64-pc-windows-gnu" 3655 | version = "0.4.0" 3656 | source = "registry+https://github.com/rust-lang/crates.io-index" 3657 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3658 | 3659 | [[package]] 3660 | name = "windows-sys" 3661 | version = "0.36.1" 3662 | source = "registry+https://github.com/rust-lang/crates.io-index" 3663 | checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" 3664 | dependencies = [ 3665 | "windows_aarch64_msvc", 3666 | "windows_i686_gnu", 3667 | "windows_i686_msvc", 3668 | "windows_x86_64_gnu", 3669 | "windows_x86_64_msvc", 3670 | ] 3671 | 3672 | [[package]] 3673 | name = "windows_aarch64_msvc" 3674 | version = "0.36.1" 3675 | source = "registry+https://github.com/rust-lang/crates.io-index" 3676 | checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" 3677 | 3678 | [[package]] 3679 | name = "windows_i686_gnu" 3680 | version = "0.36.1" 3681 | source = "registry+https://github.com/rust-lang/crates.io-index" 3682 | checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" 3683 | 3684 | [[package]] 3685 | name = "windows_i686_msvc" 3686 | version = "0.36.1" 3687 | source = "registry+https://github.com/rust-lang/crates.io-index" 3688 | checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" 3689 | 3690 | [[package]] 3691 | name = "windows_x86_64_gnu" 3692 | version = "0.36.1" 3693 | source = "registry+https://github.com/rust-lang/crates.io-index" 3694 | checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" 3695 | 3696 | [[package]] 3697 | name = "windows_x86_64_msvc" 3698 | version = "0.36.1" 3699 | source = "registry+https://github.com/rust-lang/crates.io-index" 3700 | checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" 3701 | 3702 | [[package]] 3703 | name = "winit" 3704 | version = "0.26.1" 3705 | source = "registry+https://github.com/rust-lang/crates.io-index" 3706 | checksum = "9b43cc931d58b99461188607efd7acb2a093e65fc621f54cad78517a6063e73a" 3707 | dependencies = [ 3708 | "bitflags", 3709 | "cocoa", 3710 | "core-foundation 0.9.3", 3711 | "core-graphics 0.22.3", 3712 | "core-video-sys", 3713 | "dispatch", 3714 | "instant", 3715 | "lazy_static", 3716 | "libc", 3717 | "log", 3718 | "mio", 3719 | "ndk 0.5.0", 3720 | "ndk-glue 0.5.2", 3721 | "ndk-sys 0.2.2", 3722 | "objc", 3723 | "parking_lot 0.11.2", 3724 | "percent-encoding", 3725 | "raw-window-handle", 3726 | "wasm-bindgen", 3727 | "web-sys", 3728 | "winapi", 3729 | "x11-dl", 3730 | ] 3731 | 3732 | [[package]] 3733 | name = "x11-dl" 3734 | version = "2.20.0" 3735 | source = "registry+https://github.com/rust-lang/crates.io-index" 3736 | checksum = "0c83627bc137605acc00bb399c7b908ef460b621fc37c953db2b09f88c449ea6" 3737 | dependencies = [ 3738 | "lazy_static", 3739 | "libc", 3740 | "pkg-config", 3741 | ] 3742 | 3743 | [[package]] 3744 | name = "xi-unicode" 3745 | version = "0.3.0" 3746 | source = "registry+https://github.com/rust-lang/crates.io-index" 3747 | checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a" 3748 | -------------------------------------------------------------------------------- /test_cases/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "test_cases" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 7 | 8 | [dependencies] 9 | trybuild = "1" 10 | diesel = {version = "2.0.0-rc.1", default-features = false, features = ["sqlite", "postgres", "mysql", "nightly-error-messages"]} 11 | chumsky = "0.8.0" 12 | uom = "0.33.0" 13 | axum = {version = "0.6.0-rc.2", features = ["nightly-error-messages"]} 14 | axum-macros = "0.3.0-rc.1" 15 | bevy = {version = "0.9.0-dev", features = ["nightly-error-messages"]} 16 | easy-ml = "1.8.1" 17 | typed-builder = "0.10.0" 18 | entrait = "0.4" 19 | 20 | [patch.crates-io] 21 | diesel = { git = "https://github.com/weiznich/diesel", rev = "958391a3e793e409d0a925e0cc2317726c2d84b2"} 22 | bevy = {git = "https://github.com/weiznich/bevy", rev = "7adcdd2fd33fa935d53881f248fd1b7c2fbe39b8"} 23 | axum = {git = "https://github.com/weiznich/axum", rev = "a151aac96a8569c59df2de2c0ae3d645ab1c6430"} 24 | axum-macros = {git = "https://github.com/weiznich/axum", rev = "a151aac96a8569c59df2de2c0ae3d645ab1c6430"} 25 | -------------------------------------------------------------------------------- /test_cases/rust-toolchain: -------------------------------------------------------------------------------- 1 | nightly-2022-07-02 2 | -------------------------------------------------------------------------------- /test_cases/tests/axum/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weiznich/rust-foundation-community-grant/bd67c153a912cae07f0e5b9707c907045ecb71be/test_cases/tests/axum/.gitkeep -------------------------------------------------------------------------------- /test_cases/tests/axum/argument_not_extractor.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | async fn handler(foo: bool) {} 5 | 6 | fn main() {} 7 | -------------------------------------------------------------------------------- /test_cases/tests/axum/argument_not_extractor.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `bool: FromRequestParts<()>` is not satisfied 2 | --> tests/axum/argument_not_extractor.rs:4:23 3 | | 4 | 4 | async fn handler(foo: bool) {} 5 | | ^^^^ the trait `FromRequestParts<()>` is not implemented for `bool` 6 | | 7 | = note: Function argument is no valid axum extractor. 8 | See `https://docs.rs/axum/latest/axum/extract/index.html` for details 9 | = help: the following other types implement trait `FromRequestParts`: 10 | <() as FromRequestParts> 11 | <(T1, T2) as FromRequestParts> 12 | <(T1, T2, T3) as FromRequestParts> 13 | <(T1, T2, T3, T4) as FromRequestParts> 14 | <(T1, T2, T3, T4, T5) as FromRequestParts> 15 | <(T1, T2, T3, T4, T5, T6) as FromRequestParts> 16 | <(T1, T2, T3, T4, T5, T6, T7) as FromRequestParts> 17 | <(T1, T2, T3, T4, T5, T6, T7, T8) as FromRequestParts> 18 | and 24 others 19 | = note: required because of the requirements on the impl of `FromRequest<(), Body, axum_core::extract::private::ViaParts>` for `bool` 20 | note: required by a bound in `__axum_macros_check_handler_0_from_request_check` 21 | --> tests/axum/argument_not_extractor.rs:4:23 22 | | 23 | 4 | async fn handler(foo: bool) {} 24 | | ^^^^ required by this bound in `__axum_macros_check_handler_0_from_request_check` 25 | -------------------------------------------------------------------------------- /test_cases/tests/axum/extract_self_mut.rs: -------------------------------------------------------------------------------- 1 | use axum::{ 2 | async_trait, 3 | extract::FromRequest, 4 | http::Request, 5 | }; 6 | use axum_macros::debug_handler; 7 | 8 | struct A; 9 | 10 | #[async_trait] 11 | impl FromRequest for A 12 | where 13 | B: Send + 'static, 14 | S: Send + Sync, 15 | { 16 | type Rejection = (); 17 | 18 | async fn from_request(_req: Request, _state: &S) -> Result { 19 | unimplemented!() 20 | } 21 | } 22 | 23 | impl A { 24 | #[debug_handler] 25 | async fn handler(&mut self) {} 26 | } 27 | 28 | fn main() {} 29 | -------------------------------------------------------------------------------- /test_cases/tests/axum/extract_self_mut.stderr: -------------------------------------------------------------------------------- 1 | error: Handlers must only take owned values 2 | --> tests/axum/extract_self_mut.rs:25:22 3 | | 4 | 25 | async fn handler(&mut self) {} 5 | | ^^^^^^^^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/extract_self_ref.rs: -------------------------------------------------------------------------------- 1 | use axum::{ 2 | async_trait, 3 | extract::FromRequest, 4 | http::Request, 5 | }; 6 | use axum_macros::debug_handler; 7 | 8 | struct A; 9 | 10 | #[async_trait] 11 | impl FromRequest for A 12 | where 13 | B: Send + 'static, 14 | S: Send + Sync, 15 | { 16 | type Rejection = (); 17 | 18 | async fn from_request(_req: Request, _state: &S) -> Result { 19 | unimplemented!() 20 | } 21 | } 22 | 23 | impl A { 24 | #[debug_handler] 25 | async fn handler(&self) {} 26 | } 27 | 28 | fn main() {} 29 | -------------------------------------------------------------------------------- /test_cases/tests/axum/extract_self_ref.stderr: -------------------------------------------------------------------------------- 1 | error: Handlers must only take owned values 2 | --> tests/axum/extract_self_ref.rs:25:22 3 | | 4 | 25 | async fn handler(&self) {} 5 | | ^^^^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/generics.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | async fn handler() {} 5 | 6 | fn main() {} 7 | -------------------------------------------------------------------------------- /test_cases/tests/axum/generics.stderr: -------------------------------------------------------------------------------- 1 | error: `#[axum_macros::debug_handler]` doesn't support generic functions 2 | --> tests/axum/generics.rs:4:17 3 | | 4 | 4 | async fn handler() {} 5 | | ^^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/invalid_attrs.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler(foo)] 4 | async fn handler() {} 5 | 6 | fn main() {} 7 | -------------------------------------------------------------------------------- /test_cases/tests/axum/invalid_attrs.stderr: -------------------------------------------------------------------------------- 1 | error: expected `body` or `state` 2 | --> tests/axum/invalid_attrs.rs:3:17 3 | | 4 | 3 | #[debug_handler(foo)] 5 | | ^^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/missing_deserialize.rs: -------------------------------------------------------------------------------- 1 | use std::net::SocketAddr; 2 | use axum::{Router, routing::post, Json}; 3 | 4 | async fn fake_main() { 5 | let app = Router::new() 6 | .route("/test", post(test)); 7 | 8 | let addr = SocketAddr::from(([127, 0, 0, 1], 3000)); 9 | axum::Server::bind(&addr) 10 | .serve(app.into_make_service()) 11 | .await 12 | .unwrap(); 13 | } 14 | 15 | // #[derive(serde::Deserialize)] Without this the error is caused 16 | struct Test {} 17 | 18 | async fn test( 19 | Json(_): Json 20 | ) {} 21 | 22 | fn main() {} 23 | -------------------------------------------------------------------------------- /test_cases/tests/axum/missing_deserialize.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `fn(Json) -> impl Future {test}: Handler<_, _, _>` is not satisfied 2 | --> tests/axum/missing_deserialize.rs:6:30 3 | | 4 | 6 | .route("/test", post(test)); 5 | | ---- ^^^^ the trait `Handler<_, _, _>` is not implemented for `fn(Json) -> impl Future {test}` 6 | | | 7 | | required by a bound introduced by this call 8 | | 9 | = note: Consider using `#[axum_macros::debug_handler]` to improve the error message 10 | = help: the trait `Handler` is implemented for `Layered` 11 | note: required by a bound in `post` 12 | --> /home/weiznich/.cargo/git/checkouts/axum-5ae1ef023c614a60/a151aac/axum/src/routing/method_routing.rs:404:1 13 | | 14 | 404 | top_level_handler_fn!(post, POST); 15 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `post` 16 | = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info) 17 | -------------------------------------------------------------------------------- /test_cases/tests/axum/multiple_body_extractors.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | use axum::body::Bytes; 3 | 4 | #[debug_handler] 5 | async fn handler(_: String, _: Bytes) {} 6 | 7 | fn main() {} 8 | -------------------------------------------------------------------------------- /test_cases/tests/axum/multiple_body_extractors.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `String: FromRequestParts<()>` is not satisfied 2 | --> tests/axum/multiple_body_extractors.rs:5:21 3 | | 4 | 5 | async fn handler(_: String, _: Bytes) {} 5 | | ^^^^^^ the trait `FromRequestParts<()>` is not implemented for `String` 6 | | 7 | = note: Function argument is no valid axum extractor. 8 | See `https://docs.rs/axum/latest/axum/extract/index.html` for details 9 | = help: the following other types implement trait `FromRequestParts`: 10 | <() as FromRequestParts> 11 | <(T1, T2) as FromRequestParts> 12 | <(T1, T2, T3) as FromRequestParts> 13 | <(T1, T2, T3, T4) as FromRequestParts> 14 | <(T1, T2, T3, T4, T5) as FromRequestParts> 15 | <(T1, T2, T3, T4, T5, T6) as FromRequestParts> 16 | <(T1, T2, T3, T4, T5, T6, T7) as FromRequestParts> 17 | <(T1, T2, T3, T4, T5, T6, T7, T8) as FromRequestParts> 18 | and 24 others 19 | = help: see issue #48214 20 | = help: add `#![feature(trivial_bounds)]` to the crate attributes to enable 21 | -------------------------------------------------------------------------------- /test_cases/tests/axum/multiple_paths.rs: -------------------------------------------------------------------------------- 1 | use axum::extract::Path; 2 | use axum_macros::debug_handler; 3 | 4 | #[debug_handler] 5 | async fn handler(_: Path, _: Path) {} 6 | 7 | fn main() {} 8 | -------------------------------------------------------------------------------- /test_cases/tests/axum/multiple_paths.stderr: -------------------------------------------------------------------------------- 1 | error: Multiple parameters must be extracted with a tuple `Path<(_, _)>` or a struct `Path`, not by applying multiple `Path<_>` extractors 2 | --> tests/axum/multiple_paths.rs:5:18 3 | | 4 | 5 | async fn handler(_: Path, _: Path) {} 5 | | ^^^^^^^^^^^^^^^ 6 | 7 | error: Multiple parameters must be extracted with a tuple `Path<(_, _)>` or a struct `Path`, not by applying multiple `Path<_>` extractors 8 | --> tests/axum/multiple_paths.rs:5:35 9 | | 10 | 5 | async fn handler(_: Path, _: Path) {} 11 | | ^^^^^^^^^^^^^^^ 12 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_a_function.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | struct A; 5 | 6 | fn main() {} 7 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_a_function.stderr: -------------------------------------------------------------------------------- 1 | error: expected `fn` 2 | --> tests/axum/not_a_function.rs:4:1 3 | | 4 | 4 | struct A; 5 | | ^^^^^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_async.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | fn handler() {} 5 | 6 | fn main() {} 7 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_async.stderr: -------------------------------------------------------------------------------- 1 | error: Handlers must be `async fn`s 2 | --> tests/axum/not_async.rs:4:1 3 | | 4 | 4 | fn handler() {} 5 | | ^^ 6 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_send.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | async fn handler() { 5 | let rc = std::rc::Rc::new(()); 6 | async {}.await; 7 | } 8 | 9 | fn main() {} 10 | -------------------------------------------------------------------------------- /test_cases/tests/axum/not_send.stderr: -------------------------------------------------------------------------------- 1 | error: future cannot be sent between threads safely 2 | --> tests/axum/not_send.rs:4:1 3 | | 4 | 4 | async fn handler() { 5 | | ^^^^^^^^^^^^^^^^^^ future returned by `handler` is not `Send` 6 | | 7 | = help: within `impl Future`, the trait `Send` is not implemented for `Rc<()>` 8 | note: future is not `Send` as this value is used across an await 9 | --> tests/axum/not_send.rs:6:13 10 | | 11 | 5 | let rc = std::rc::Rc::new(()); 12 | | -- has type `Rc<()>` which is not `Send` 13 | 6 | async {}.await; 14 | | ^^^^^^ await occurs here, with `rc` maybe used later 15 | 7 | } 16 | | - `rc` is later dropped here 17 | note: required by a bound in `check` 18 | --> tests/axum/not_send.rs:4:1 19 | | 20 | 4 | / async fn handler() { 21 | 5 | | let rc = std::rc::Rc::new(()); 22 | 6 | | async {}.await; 23 | 7 | | } 24 | | |_^ required by this bound in `check` 25 | -------------------------------------------------------------------------------- /test_cases/tests/axum/request_not_last.rs: -------------------------------------------------------------------------------- 1 | use axum::{body::Body, extract::Extension, http::Request}; 2 | use axum_macros::debug_handler; 3 | 4 | #[debug_handler] 5 | async fn handler(_: Request, _: Extension) {} 6 | 7 | fn main() {} 8 | -------------------------------------------------------------------------------- /test_cases/tests/axum/request_not_last.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: Request must always be the last argument to a handler function 2 | --> tests/axum/request_not_last.rs:5:21 3 | | 4 | 5 | async fn handler(_: Request, _: Extension) {} 5 | | ^^^^^^^^^^^^^ Move this argument to the end of the argument list 6 | | 7 | = help: the trait `FromRequestParts<()>` is not implemented for `Request` 8 | = note: Function argument is no valid axum extractor. 9 | See `https://docs.rs/axum/latest/axum/extract/index.html` for details 10 | = help: the following other types implement trait `FromRequestParts`: 11 | <() as FromRequestParts> 12 | <(T1, T2) as FromRequestParts> 13 | <(T1, T2, T3) as FromRequestParts> 14 | <(T1, T2, T3, T4) as FromRequestParts> 15 | <(T1, T2, T3, T4, T5) as FromRequestParts> 16 | <(T1, T2, T3, T4, T5, T6) as FromRequestParts> 17 | <(T1, T2, T3, T4, T5, T6, T7) as FromRequestParts> 18 | <(T1, T2, T3, T4, T5, T6, T7, T8) as FromRequestParts> 19 | and 24 others 20 | = help: see issue #48214 21 | = help: add `#![feature(trivial_bounds)]` to the crate attributes to enable 22 | -------------------------------------------------------------------------------- /test_cases/tests/axum/too_many_extractors.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | use axum::http::Uri; 3 | 4 | #[debug_handler] 5 | async fn handler( 6 | e1: Uri, 7 | e2: Uri, 8 | e3: Uri, 9 | e4: Uri, 10 | e5: Uri, 11 | e6: Uri, 12 | e7: Uri, 13 | e8: Uri, 14 | e9: Uri, 15 | e10: Uri, 16 | e11: Uri, 17 | e12: Uri, 18 | e13: Uri, 19 | e14: Uri, 20 | e15: Uri, 21 | e16: Uri, 22 | e17: Uri, 23 | ) {} 24 | 25 | fn main() {} 26 | -------------------------------------------------------------------------------- /test_cases/tests/axum/too_many_extractors.stderr: -------------------------------------------------------------------------------- 1 | error: Handlers cannot take more than 16 arguments. Use `(a, b): (ExtractorA, ExtractorA)` to further nest extractors 2 | --> tests/axum/too_many_extractors.rs:6:5 3 | | 4 | 6 | / e1: Uri, 5 | 7 | | e2: Uri, 6 | 8 | | e3: Uri, 7 | 9 | | e4: Uri, 8 | ... | 9 | 21 | | e16: Uri, 10 | 22 | | e17: Uri, 11 | | |_____________^ 12 | -------------------------------------------------------------------------------- /test_cases/tests/axum/wrong_return_type.rs: -------------------------------------------------------------------------------- 1 | use axum_macros::debug_handler; 2 | 3 | #[debug_handler] 4 | async fn handler() -> bool { 5 | false 6 | } 7 | 8 | fn main() {} 9 | -------------------------------------------------------------------------------- /test_cases/tests/axum/wrong_return_type.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `bool: IntoResponse` is not satisfied 2 | --> tests/axum/wrong_return_type.rs:4:23 3 | | 4 | 4 | async fn handler() -> bool { 5 | | ^^^^ the trait `IntoResponse` is not implemented for `bool` 6 | | 7 | = help: the following other types implement trait `IntoResponse`: 8 | &'static [u8] 9 | &'static str 10 | () 11 | (Response<()>, R) 12 | (Response<()>, T1, R) 13 | (Response<()>, T1, T2, R) 14 | (Response<()>, T1, T2, T3, R) 15 | (Response<()>, T1, T2, T3, T4, R) 16 | and 116 others 17 | note: required by a bound in `__axum_macros_check_handler_into_response::{closure#0}::check` 18 | --> tests/axum/wrong_return_type.rs:4:23 19 | | 20 | 4 | async fn handler() -> bool { 21 | | ^^^^ required by this bound in `__axum_macros_check_handler_into_response::{closure#0}::check` 22 | -------------------------------------------------------------------------------- /test_cases/tests/bevy/system_mismatch.rs: -------------------------------------------------------------------------------- 1 | use bevy::prelude::*; 2 | 3 | fn main() { 4 | // This is the standard Bevy boilerplate 5 | // App's are initialized, systems are added to the App 6 | // and finally run 7 | App::new() 8 | .add_plugins(DefaultPlugins) 9 | .add_system(valid_system) 10 | // the trait bound `A: WorldQuery` is not satisfied 11 | // the trait `WorldQuery` is not implemented for `A` 12 | .add_system(missing_reference_in_query_system) 13 | // type mismatch resolving `for<'w, 's> as Fetch<'w, 's>>::Item == bool` 14 | // required because of the requirements on the impl of `FilterFetch` for `ReadFetch` 15 | .add_system(missing_brackets_in_query_system) 16 | // NOTE: The errors for these two systems do not appear until the other problems are resolved 17 | // the trait bound `fn(MyResource) {malformed_system_parameter_system}: IntoSystem<(), (), _>` is not satisfied 18 | // required because of the requirements on the impl of `IntoSystemDescriptor<_>` for `fn(MyResource) {malformed_system_parameter_system}` 19 | .add_system(malformed_system_parameter_system) 20 | // the trait bound `for<'r, 's, 't0> fn(&'r mut bevy::prelude::Commands<'s, 't0>) {requesting_commands_as_reference_system}: IntoSystem<(), (), _>` is not satisfied 21 | // required because of the requirements on the impl of `IntoSystemDescriptor<_>` for `for<'r, 's, 't0> fn(&'r mut bevy::prelude::Commands<'s, 't0>) {requesting_commands_as_reference_system}` 22 | .add_system(requesting_commands_as_reference_system) 23 | .run() 24 | } 25 | 26 | // Entities have components 27 | #[derive(Component)] 28 | struct A; 29 | 30 | #[derive(Component)] 31 | struct B; 32 | 33 | #[derive(Component)] 34 | struct C; 35 | 36 | // Resources are global singletons 37 | // that are accessible through the ECS 38 | #[derive(Debug)] 39 | struct MyResource; 40 | 41 | // Functions that impl IntoSystem can be turned into systems 42 | // To do so, each of their parameters must impl SystemParam 43 | // 44 | // We use the all_tuples! macro to work around the lack of variadics :( 45 | fn valid_system( 46 | // Used for doing complex defered work 47 | mut commands: Commands, 48 | // This will fetch the unique Entity identifier, 49 | // and the components A and B (mutably) 50 | // for all entities with the components A & B & C 51 | mut query: Query<(Entity, &A, &mut B), With>, 52 | my_res: Res, 53 | ) { 54 | // 55 | commands.spawn().insert_bundle((A, B, C)); 56 | 57 | // Res is a smart pointer wrapper type used to fetch the resource from the ECS 58 | dbg!(&*my_res); 59 | 60 | // Queries are typically unpacked and iterated over 61 | for (entity, _a, mut _b) in query.iter_mut() { 62 | dbg!(entity); 63 | } 64 | } 65 | 66 | // The user requested A in the system, rather than &A 67 | fn missing_reference_in_query_system(query: Query>) {} 68 | 69 | // The user needs to include both &A and &B in the first type parameter of Query 70 | fn missing_brackets_in_query_system(query: Query<&A, &B>) {} 71 | 72 | // The user has forgotten to add the Res wrapper around MyResource 73 | fn malformed_system_parameter_system(my_res: MyResource) {} 74 | 75 | // The user has invalidly requested a mutable reference to Commands, 76 | // rather using `mut commands: Commands` 77 | fn requesting_commands_as_reference_system(commands: &mut Commands) {} 78 | -------------------------------------------------------------------------------- /test_cases/tests/bevy/system_mismatch.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `MyResource: Resource` is not satisfied 2 | --> tests/bevy/system_mismatch.rs:52:13 3 | | 4 | 52 | my_res: Res, 5 | | ^^^^^^^^^^^^^^^ the trait `Resource` is not implemented for `MyResource` 6 | | 7 | = note: consider adding `#[derive(bevy::Resource)]` to `MyResource` 8 | = help: the following other types implement trait `Resource`: 9 | AmbientLight 10 | AppTypeRegistry 11 | AssetServer 12 | AssetServerSettings 13 | Assets 14 | Audio 15 | Axis 16 | ClearColor 17 | and 80 others 18 | note: required by a bound in `bevy::prelude::Res` 19 | --> /home/weiznich/.cargo/git/checkouts/bevy-daf8fe04ec93bc1c/7adcdd2/crates/bevy_ecs/src/system/system_param.rs:272:23 20 | | 21 | 272 | pub struct Res<'w, T: Resource> { 22 | | ^^^^^^^^ required by this bound in `bevy::prelude::Res` 23 | 24 | error[E0277]: Using a `WorldQuery` object as parameter to `Query` requires the usage of a reference 25 | --> tests/bevy/system_mismatch.rs:67:45 26 | | 27 | 67 | fn missing_reference_in_query_system(query: Query>) {} 28 | | ^^^^^^^^^^^^^^^^^ consider using `& A` here 29 | | 30 | = help: the trait `WorldQuery` is not implemented for `A` 31 | = help: the following other types implement trait `WorldQuery`: 32 | &'__w mut T 33 | &T 34 | () 35 | (F0, F1) 36 | (F0, F1, F2) 37 | (F0, F1, F2, F3) 38 | (F0, F1, F2, F3, F4) 39 | (F0, F1, F2, F3, F4, F5) 40 | and 50 others 41 | note: required by a bound in `bevy::prelude::Query` 42 | --> /home/weiznich/.cargo/git/checkouts/bevy-daf8fe04ec93bc1c/7adcdd2/crates/bevy_ecs/src/system/query.rs:252:37 43 | | 44 | 252 | pub struct Query<'world, 'state, Q: WorldQuery, F: WorldQuery = ()> { 45 | | ^^^^^^^^^^ required by this bound in `bevy::prelude::Query` 46 | -------------------------------------------------------------------------------- /test_cases/tests/chumsky/json.rs: -------------------------------------------------------------------------------- 1 | use chumsky::prelude::*; 2 | use std::collections::HashMap; 3 | 4 | #[derive(Clone, Debug)] 5 | enum Json { 6 | Invalid, 7 | Null, 8 | Bool(bool), 9 | Str(String), 10 | Num(f64), 11 | Array(Vec), 12 | Object(HashMap), 13 | } 14 | 15 | fn parser() -> impl Parser> { 16 | recursive(|value| { 17 | let frac = just('.').chain(text::digits(10)); 18 | 19 | let exp = just('e') 20 | .or(just('E')) 21 | .chain(just('+').or(just('-')).or_not()) 22 | .chain(text::digits(10)); 23 | 24 | let number = just('-') 25 | .or_not() 26 | .chain(text::int(10)) 27 | .chain(frac.or_not().flatten()) 28 | .chain::(exp.or_not().flatten()) 29 | .collect::() 30 | .from_str() 31 | .unwrapped() 32 | .labelled("number"); 33 | 34 | let escape = just('\\').ignore_then( 35 | just('\\') 36 | .or(just('/')) 37 | .or(just('"')) 38 | .or(just('b').to('\x08')) 39 | .or(just('f').to('\x0C')) 40 | .or(just('n').to('\n')) 41 | .or(just('r').to('\r')) 42 | .or(just('t').to('\t')) 43 | .or(just('u').ignore_then( 44 | filter(|c: &char| c.is_digit(16)) 45 | .repeated() 46 | .exactly(4) 47 | .collect::() 48 | .validate(|digits, span, emit| { 49 | char::from_u32(u32::from_str_radix(&digits, 16).unwrap()) 50 | .unwrap_or_else(|| { 51 | emit(Simple::custom(span, "invalid unicode character")); 52 | '\u{FFFD}' // unicode replacement character 53 | }) 54 | }), 55 | )), 56 | ); 57 | 58 | let string = just('"') 59 | .ignore_then(filter(|c| *c != '\\' && *c != '"').or(escape).repeated()) 60 | .then_ignore(just('"')) 61 | .collect::() 62 | .labelled("string"); 63 | 64 | let array = value 65 | .clone() 66 | .chain(just(',').ignore_then(value.clone()).repeated()) 67 | .or_not() 68 | .flatten() 69 | .delimited_by(just('['), just(']')) 70 | .map(Json::Array) 71 | .labelled("array"); 72 | 73 | let member = string.clone().then_ignore(just(':').padded()).then(value); 74 | let object = member 75 | .clone() 76 | .chain(just(',').padded().ignore_then(member).repeated()) 77 | .or_not() 78 | .flatten() 79 | .padded() 80 | .delimited_by(just('{'), just('}')) 81 | .collect::>() 82 | .map(Json::Object) 83 | .labelled("object"); 84 | 85 | just("null") 86 | .to(Json::Null) 87 | .labelled("null") 88 | .or(just("true").to(Json::Bool(true)).labelled("true")) 89 | .or(just("false").to(Json::Bool(false)).labelled("false")) 90 | .or(number.map(Json::Num)) 91 | // SWAP THESE LINES 92 | .or(string) 93 | //.or(string.map(Json::Str)) 94 | .or(array) 95 | .or(object) 96 | .recover_with(nested_delimiters('{', '}', [('[', ']')], |_| Json::Invalid)) 97 | .recover_with(nested_delimiters('[', ']', [('{', '}')], |_| Json::Invalid)) 98 | .recover_with(skip_then_retry_until(['}', ']'])) 99 | .padded() 100 | }) 101 | .then_ignore(end().recover_with(skip_then_retry_until([]))) 102 | } 103 | 104 | fn main() { 105 | parser() 106 | .parse("{ \"a\": 5, b: \"hello, world!\"}") 107 | .unwrap(); 108 | } 109 | -------------------------------------------------------------------------------- /test_cases/tests/chumsky/json.stderr: -------------------------------------------------------------------------------- 1 | error[E0271]: type mismatch resolving `) -> String as FnOnce<(Vec,)>>::Output == Json` 2 | --> tests/chumsky/json.rs:92:17 3 | | 4 | 92 | .or(string) 5 | | -- ^^^^^^ expected enum `Json`, found struct `String` 6 | | | 7 | | required by a bound introduced by this call 8 | | 9 | = note: required because of the requirements on the impl of `chumsky::Parser` for `chumsky::combinator::Map>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>` 10 | = note: 1 redundant requirement hidden 11 | = note: required because of the requirements on the impl of `chumsky::Parser` for `Label>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>, &str>` 12 | note: required by a bound in `or` 13 | --> $CARGO/chumsky-0.8.0/src/lib.rs 14 | | 15 | | P: Parser, 16 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `or` 17 | 18 | error[E0599]: the method `or` exists for struct `Or>, &str, Json>, &str>, Label>, &str, Json>, &str>>, Label>, &str, Json>, &str>>, chumsky::combinator::Map>>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Option, String)) -> Vec, (Option, String)>, chumsky::combinator::Map>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((char, String)) -> Vec, (char, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, chumsky::combinator::Map>, Just>>, OrNot>, Just>>>>, fn((char, Option)) -> Vec, (char, Option)>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Vec, String)) -> Vec, (Vec, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, fn(Vec) -> String, Vec>, fn(String) -> Result, String>, fn(Result) -> f64, Result>, &str>, fn(f64) -> Json {Json::Num}, f64>>, Label>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>, &str>>`, but its trait bounds were not satisfied 19 | --> tests/chumsky/json.rs:94:14 20 | | 21 | 94 | .or(array) 22 | | ^^ method cannot be called on `Or>, &str, Json>, &str>, Label>, &str, Json>, &str>>, Label>, &str, Json>, &str>>, chumsky::combinator::Map>>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Option, String)) -> Vec, (Option, String)>, chumsky::combinator::Map>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((char, String)) -> Vec, (char, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, chumsky::combinator::Map>, Just>>, OrNot>, Just>>>>, fn((char, Option)) -> Vec, (char, Option)>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Vec, String)) -> Vec, (Vec, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, fn(Vec) -> String, Vec>, fn(String) -> Result, String>, fn(Result) -> f64, Result>, &str>, fn(f64) -> Json {Json::Num}, f64>>, Label>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>, &str>>` due to unsatisfied trait bounds 23 | | 24 | ::: $CARGO/chumsky-0.8.0/src/combinator.rs 25 | | 26 | | pub struct Or(pub(crate) A, pub(crate) B); 27 | | ------------------- doesn't satisfy `_: chumsky::Parser<_, _>` 28 | | 29 | = note: the following trait bounds were not satisfied: 30 | `Or>, &str, Json>, &str>, Label>, &str, Json>, &str>>, Label>, &str, Json>, &str>>, chumsky::combinator::Map>>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Option, String)) -> Vec, (Option, String)>, chumsky::combinator::Map>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((char, String)) -> Vec, (char, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, chumsky::combinator::Map>, Just>>, OrNot>, Just>>>>, fn((char, Option)) -> Vec, (char, Option)>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Vec, String)) -> Vec, (Vec, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, fn(Vec) -> String, Vec>, fn(String) -> Result, String>, fn(Result) -> f64, Result>, &str>, fn(f64) -> Json {Json::Num}, f64>>, Label>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>, &str>>: chumsky::Parser<_, _>` 31 | which is required by `&Or>, &str, Json>, &str>, Label>, &str, Json>, &str>>, Label>, &str, Json>, &str>>, chumsky::combinator::Map>>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Option, String)) -> Vec, (Option, String)>, chumsky::combinator::Map>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((char, String)) -> Vec, (char, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, chumsky::combinator::Map>, Just>>, OrNot>, Just>>>>, fn((char, Option)) -> Vec, (char, Option)>, impl chumsky::Parser::Collection, Error = chumsky::error::Simple> + Copy + Clone>, fn((Vec, String)) -> Vec, (Vec, String)>>, fn(Option>) -> Vec, Option>>>, fn((Vec, Vec)) -> Vec, (Vec, Vec)>, fn(Vec) -> String, Vec>, fn(String) -> Result, String>, fn(Result) -> f64, Result>, &str>, fn(f64) -> Json {Json::Num}, f64>>, Label>, Repeated>, chumsky::combinator::Map>, Or>, Just>>, Just>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, To>, char, char>>, chumsky::combinator::Map>, Validate>>, fn(Vec) -> String, Vec>, String, [closure@$DIR/tests/chumsky/json.rs:48:35: 54:26]>>, fn((char, char)) -> char, (char, char)>>>, fn((char, char)) -> char, (char, char)>>>>, fn((char, Vec)) -> Vec, (char, Vec)>, Just>>, fn((Vec, char)) -> Vec, (Vec, char)>, fn(Vec) -> String, Vec>, &str>>: chumsky::Parser<_, _>` 32 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/bad_insertable_field.rs: -------------------------------------------------------------------------------- 1 | use diesel::prelude::*; 2 | 3 | table! { 4 | users(id) { 5 | id -> Integer, 6 | name -> Text, 7 | } 8 | } 9 | 10 | #[derive(Insertable)] 11 | struct User { 12 | name: i32, 13 | } 14 | 15 | fn main() {} 16 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/bad_insertable_field.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `i32: diesel::Expression` is not satisfied 2 | --> tests/diesel/bad_insertable_field.rs:12:5 3 | | 4 | 12 | name: i32, 5 | | ^^^^ the trait `diesel::Expression` is not implemented for `i32` 6 | | 7 | = help: the following other types implement trait `diesel::Expression`: 8 | &'a T 9 | (T0, T1) 10 | (T0, T1, T2) 11 | (T0, T1, T2, T3) 12 | (T0, T1, T2, T3, T4) 13 | (T0, T1, T2, T3, T4, T5) 14 | (T0, T1, T2, T3, T4, T5, T6) 15 | (T0, T1, T2, T3, T4, T5, T6, T7) 16 | and 120 others 17 | = note: required because of the requirements on the impl of `AsExpression` for `i32` 18 | 19 | error[E0277]: the trait bound `i32: diesel::Expression` is not satisfied 20 | --> tests/diesel/bad_insertable_field.rs:12:5 21 | | 22 | 12 | name: i32, 23 | | ^^^^ the trait `diesel::Expression` is not implemented for `i32` 24 | | 25 | = help: the following other types implement trait `diesel::Expression`: 26 | &'a T 27 | (T0, T1) 28 | (T0, T1, T2) 29 | (T0, T1, T2, T3) 30 | (T0, T1, T2, T3, T4) 31 | (T0, T1, T2, T3, T4, T5) 32 | (T0, T1, T2, T3, T4, T5, T6) 33 | (T0, T1, T2, T3, T4, T5, T6, T7) 34 | and 120 others 35 | = note: required because of the requirements on the impl of `diesel::Expression` for `&'insert i32` 36 | = note: required because of the requirements on the impl of `AsExpression` for `&'insert i32` 37 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/bad_sql_query.rs: -------------------------------------------------------------------------------- 1 | use diesel::prelude::*; 2 | 3 | fn sql_query_test(conn: &mut PgConnection) -> QueryResult> { 4 | diesel::sql_query("…").load(conn) 5 | } 6 | 7 | fn main() {} 8 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/bad_sql_query.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `std::string::String: FromSqlRow` is not satisfied 2 | --> tests/diesel/bad_sql_query.rs:4:28 3 | | 4 | 4 | diesel::sql_query("…").load(conn) 5 | | ^^^^ the trait `FromSqlRow` is not implemented for `std::string::String` 6 | | 7 | = note: `diesel::sql_query` requires the loading target to column names for loading values. 8 | You need to provide a type that explicitly derives `diesel::deserialize::QueryableByName` 9 | = help: the following other types implement trait `FromSqlRow`: 10 | <(T1, T0) as FromSqlRow<(ST1, Untyped), __DB>> 11 | <(T1, T2, T0) as FromSqlRow<(ST1, ST2, Untyped), __DB>> 12 | <(T1, T2, T3, T0) as FromSqlRow<(ST1, ST2, ST3, Untyped), __DB>> 13 | <(T1, T2, T3, T4, T0) as FromSqlRow<(ST1, ST2, ST3, ST4, Untyped), __DB>> 14 | <(T1, T2, T3, T4, T5, T0) as FromSqlRow<(ST1, ST2, ST3, ST4, ST5, Untyped), __DB>> 15 | <(T1, T2, T3, T4, T5, T6, T0) as FromSqlRow<(ST1, ST2, ST3, ST4, ST5, ST6, Untyped), __DB>> 16 | <(T1, T2, T3, T4, T5, T6, T7, T0) as FromSqlRow<(ST1, ST2, ST3, ST4, ST5, ST6, ST7, Untyped), __DB>> 17 | <(T1, T2, T3, T4, T5, T6, T7, T8, T0) as FromSqlRow<(ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, Untyped), __DB>> 18 | and 7 others 19 | = note: required because of the requirements on the impl of `load_dsl::private::CompatibleType` for `Untyped` 20 | = note: required because of the requirements on the impl of `LoadQuery<'_, diesel::PgConnection, std::string::String>` for `SqlQuery` 21 | note: required by a bound in `diesel::RunQueryDsl::load` 22 | --> /home/weiznich/.cargo/git/checkouts/diesel-e81fc6d5dd3ea3a2/958391a/diesel/src/query_dsl/mod.rs:1499:15 23 | | 24 | 1499 | Self: LoadQuery<'query, Conn, U>, 25 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `diesel::RunQueryDsl::load` 26 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/invalid_query.rs: -------------------------------------------------------------------------------- 1 | use diesel::prelude::*; 2 | 3 | table! { 4 | users(id) { 5 | id -> Integer, 6 | name -> Text, 7 | } 8 | } 9 | 10 | 11 | table! { 12 | posts(id) { 13 | id -> Integer, 14 | name -> Text, 15 | user_id -> Integer, 16 | } 17 | } 18 | 19 | fn get_user(conn: &mut PgConnection) { 20 | users::table.select(posts::id); 21 | users::table.filter(users::id.eq(posts::id)).load::<(i32, String)>(conn); 22 | } 23 | 24 | 25 | fn main() {} 26 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/invalid_query.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: Cannot select `posts::columns::id` from `users::table` 2 | --> tests/diesel/invalid_query.rs:20:18 3 | | 4 | 20 | users::table.select(posts::id); 5 | | ^^^^^^ the trait `SelectableExpression` is not implemented for `posts::columns::id` 6 | | 7 | = note: `posts::columns::id` is no valid selection for `users::table` 8 | = help: the following other types implement trait `SelectableExpression`: 9 | >> 10 | >> 11 | >>> 12 | >> 13 | >> 14 | > 15 | = note: required because of the requirements on the impl of `SelectDsl` for `SelectStatement>` 16 | 17 | error[E0271]: type mismatch resolving `>::Count == diesel::query_source::Once` 18 | --> tests/diesel/invalid_query.rs:21:50 19 | | 20 | 21 | users::table.filter(users::id.eq(posts::id)).load::<(i32, String)>(conn); 21 | | ^^^^ expected struct `diesel::query_source::Once`, found struct `diesel::query_source::Never` 22 | | 23 | note: required because of the requirements on the impl of `AppearsOnTable` for `posts::columns::id` 24 | --> tests/diesel/invalid_query.rs:11:1 25 | | 26 | 11 | / table! { 27 | 12 | | posts(id) { 28 | 13 | | id -> Integer, 29 | 14 | | name -> Text, 30 | 15 | | user_id -> Integer, 31 | 16 | | } 32 | 17 | | } 33 | | |_^ 34 | = note: 2 redundant requirements hidden 35 | = note: required because of the requirements on the impl of `AppearsOnTable` for `diesel::expression::grouped::Grouped>` 36 | = note: required because of the requirements on the impl of `diesel::query_builder::where_clause::ValidWhereClause>` for `diesel::query_builder::where_clause::WhereClause>>` 37 | = note: required because of the requirements on the impl of `Query` for `SelectStatement, diesel::query_builder::select_clause::DefaultSelectClause>, diesel::query_builder::distinct_clause::NoDistinctClause, diesel::query_builder::where_clause::WhereClause>>>` 38 | = note: required because of the requirements on the impl of `LoadQuery<'_, _, (i32, std::string::String)>` for `SelectStatement, diesel::query_builder::select_clause::DefaultSelectClause>, diesel::query_builder::distinct_clause::NoDistinctClause, diesel::query_builder::where_clause::WhereClause>>>` 39 | note: required by a bound in `diesel::RunQueryDsl::load` 40 | --> /home/weiznich/.cargo/git/checkouts/diesel-e81fc6d5dd3ea3a2/958391a/diesel/src/query_dsl/mod.rs:1499:15 41 | | 42 | 1499 | Self: LoadQuery<'query, Conn, U>, 43 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `diesel::RunQueryDsl::load` 44 | = note: this error originates in the macro `$crate::__diesel_column` (in Nightly builds, run with -Z macro-backtrace for more info) 45 | 46 | error[E0277]: the trait bound `users::table: TableNotEqual` is not satisfied 47 | --> tests/diesel/invalid_query.rs:21:50 48 | | 49 | 21 | users::table.filter(users::id.eq(posts::id)).load::<(i32, String)>(conn); 50 | | ^^^^ the trait `TableNotEqual` is not implemented for `users::table` 51 | | 52 | = help: the following other types implement trait `TableNotEqual`: 53 | as TableNotEqual> 54 | as TableNotEqual> 55 | >> 56 | > 57 | >> 58 | > 59 | = note: required because of the requirements on the impl of `AppearsInFromClause` for `users::table` 60 | note: required because of the requirements on the impl of `AppearsOnTable` for `posts::columns::id` 61 | --> tests/diesel/invalid_query.rs:11:1 62 | | 63 | 11 | / table! { 64 | 12 | | posts(id) { 65 | 13 | | id -> Integer, 66 | 14 | | name -> Text, 67 | 15 | | user_id -> Integer, 68 | 16 | | } 69 | 17 | | } 70 | | |_^ 71 | = note: 2 redundant requirements hidden 72 | = note: required because of the requirements on the impl of `AppearsOnTable` for `diesel::expression::grouped::Grouped>` 73 | = note: required because of the requirements on the impl of `diesel::query_builder::where_clause::ValidWhereClause>` for `diesel::query_builder::where_clause::WhereClause>>` 74 | = note: required because of the requirements on the impl of `Query` for `SelectStatement, diesel::query_builder::select_clause::DefaultSelectClause>, diesel::query_builder::distinct_clause::NoDistinctClause, diesel::query_builder::where_clause::WhereClause>>>` 75 | = note: required because of the requirements on the impl of `LoadQuery<'_, _, (i32, std::string::String)>` for `SelectStatement, diesel::query_builder::select_clause::DefaultSelectClause>, diesel::query_builder::distinct_clause::NoDistinctClause, diesel::query_builder::where_clause::WhereClause>>>` 76 | note: required by a bound in `diesel::RunQueryDsl::load` 77 | --> /home/weiznich/.cargo/git/checkouts/diesel-e81fc6d5dd3ea3a2/958391a/diesel/src/query_dsl/mod.rs:1499:15 78 | | 79 | 1499 | Self: LoadQuery<'query, Conn, U>, 80 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `diesel::RunQueryDsl::load` 81 | = note: this error originates in the macro `$crate::__diesel_column` (in Nightly builds, run with -Z macro-backtrace for more info) 82 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/queryable_order_mismatch.rs: -------------------------------------------------------------------------------- 1 | use diesel::prelude::*; 2 | 3 | table! { 4 | users(id) { 5 | id -> Integer, 6 | name -> Text, 7 | } 8 | } 9 | 10 | #[derive(Queryable)] 11 | struct User { 12 | name: String, 13 | id: i32, 14 | } 15 | 16 | fn get_user(conn: &mut PgConnection) -> QueryResult { 17 | users::table.first(conn) 18 | } 19 | 20 | fn main() {} 21 | -------------------------------------------------------------------------------- /test_cases/tests/diesel/queryable_order_mismatch.stderr: -------------------------------------------------------------------------------- 1 | error[E0277]: the trait bound `(std::string::String, i32): FromStaticSqlRow<(diesel::sql_types::Integer, diesel::sql_types::Text), Pg>` is not satisfied 2 | --> tests/diesel/queryable_order_mismatch.rs:17:18 3 | | 4 | 17 | users::table.first(conn) 5 | | ^^^^^ the trait `FromStaticSqlRow<(diesel::sql_types::Integer, diesel::sql_types::Text), Pg>` is not implemented for `(std::string::String, i32)` 6 | | 7 | = help: the following other types implement trait `FromStaticSqlRow`: 8 | <(T0,) as FromStaticSqlRow<(ST0,), __DB>> 9 | <(T1, T0) as FromStaticSqlRow<(ST1, ST0), __DB>> 10 | <(T1, T2, T0) as FromStaticSqlRow<(ST1, ST2, ST0), __DB>> 11 | <(T1, T2, T3, T0) as FromStaticSqlRow<(ST1, ST2, ST3, ST0), __DB>> 12 | <(T1, T2, T3, T4, T0) as FromStaticSqlRow<(ST1, ST2, ST3, ST4, ST0), __DB>> 13 | <(T1, T2, T3, T4, T5, T0) as FromStaticSqlRow<(ST1, ST2, ST3, ST4, ST5, ST0), __DB>> 14 | <(T1, T2, T3, T4, T5, T6, T0) as FromStaticSqlRow<(ST1, ST2, ST3, ST4, ST5, ST6, ST0), __DB>> 15 | <(T1, T2, T3, T4, T5, T6, T7, T0) as FromStaticSqlRow<(ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST0), __DB>> 16 | and 8 others 17 | note: required because of the requirements on the impl of `diesel::Queryable<(diesel::sql_types::Integer, diesel::sql_types::Text), Pg>` for `User` 18 | --> tests/diesel/queryable_order_mismatch.rs:10:10 19 | | 20 | 10 | #[derive(Queryable)] 21 | | ^^^^^^^^^ 22 | 11 | struct User { 23 | | ^^^^ 24 | = note: required because of the requirements on the impl of `FromSqlRow<(diesel::sql_types::Integer, diesel::sql_types::Text), Pg>` for `User` 25 | = note: required because of the requirements on the impl of `load_dsl::private::CompatibleType` for `(diesel::sql_types::Integer, diesel::sql_types::Text)` 26 | = note: required because of the requirements on the impl of `LoadQuery<'_, diesel::PgConnection, User>` for `SelectStatement, diesel::query_builder::select_clause::DefaultSelectClause>, diesel::query_builder::distinct_clause::NoDistinctClause, diesel::query_builder::where_clause::NoWhereClause, diesel::query_builder::order_clause::NoOrderClause, diesel::query_builder::limit_offset_clause::LimitOffsetClause>, diesel::query_builder::offset_clause::NoOffsetClause>>` 27 | note: required by a bound in `first` 28 | --> /home/weiznich/.cargo/git/checkouts/diesel-e81fc6d5dd3ea3a2/958391a/diesel/src/query_dsl/mod.rs:1736:22 29 | | 30 | 1736 | Limit: LoadQuery<'query, Conn, U>, 31 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `first` 32 | = note: this error originates in the derive macro `Queryable` (in Nightly builds, run with -Z macro-backtrace for more info) 33 | -------------------------------------------------------------------------------- /test_cases/tests/easy_ml/recursion.rs: -------------------------------------------------------------------------------- 1 | use easy_ml::matrices::Matrix; 2 | 3 | fn main() { 4 | let matrix = Matrix::from(vec![ 5 | vec![ 1, 2 ], 6 | vec![ 3, 4 ] 7 | ]); 8 | let determinant = easy_ml::linear_algebra::determinant(&matrix); 9 | } 10 | -------------------------------------------------------------------------------- /test_cases/tests/easy_ml/recursion.stderr: -------------------------------------------------------------------------------- 1 | error[E0275]: overflow evaluating the requirement `for<'t> &'t Simd<_, {_: usize}>: Div>` 2 | --> tests/easy_ml/recursion.rs:8:23 3 | | 4 | 8 | let determinant = easy_ml::linear_algebra::determinant(&matrix); 5 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 6 | | 7 | = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`$CRATE`) 8 | = note: required because of the requirements on the impl of `for<'t> NumericByValue, Simd<_, {_: usize}>>` for `&'t Simd<_, {_: usize}>` 9 | = note: required because of the requirements on the impl of `for<'t> NumericRef>` for `&'t Simd<_, {_: usize}>` 10 | = note: required because of the requirements on the impl of `for<'t> Div>>` for `&'t Record<'_, Simd<_, {_: usize}>>` 11 | = note: 125 redundant requirements hidden 12 | = note: required because of the requirements on the impl of `for<'a> NumericRef>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` for `&'a Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Record<'_, Simd<_, {_: usize}>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>` 13 | note: required by a bound in `determinant` 14 | --> $CARGO/easy-ml-1.8.1/src/linear_algebra.rs 15 | | 16 | | for<'a> &'a T: NumericRef, 17 | | ^^^^^^^^^^^^^ required by this bound in `determinant` 18 | -------------------------------------------------------------------------------- /test_cases/tests/entrait/missing_impl_deep.rs: -------------------------------------------------------------------------------- 1 | use entrait::*; 2 | 3 | #[entrait(T1)] 4 | fn t1(deps: &impl T2) { 5 | deps.t2(); 6 | } 7 | 8 | #[entrait(T2)] 9 | fn t2(deps: &impl T3) { 10 | deps.t3(); 11 | } 12 | 13 | #[entrait(T3)] 14 | fn t3(deps: &impl T4) {} 15 | 16 | trait T4 {} 17 | 18 | fn main() { 19 | let app = Impl::new(()); 20 | // Note: The reason this fails is that T4 is not implemented for entriat::Impl: 21 | app.t1(); 22 | } 23 | -------------------------------------------------------------------------------- /test_cases/tests/entrait/missing_impl_deep.stderr: -------------------------------------------------------------------------------- 1 | error[E0599]: the method `t1` exists for struct `entrait::Impl<()>`, but its trait bounds were not satisfied 2 | --> tests/entrait/missing_impl_deep.rs:21:9 3 | | 4 | 21 | app.t1(); 5 | | ^^ method cannot be called on `entrait::Impl<()>` due to unsatisfied trait bounds 6 | | 7 | ::: $CARGO/implementation-0.1.3/src/lib.rs 8 | | 9 | | pub struct Impl(T); 10 | | ------------------ 11 | | | 12 | | doesn't satisfy `entrait::Impl<()>: T1` 13 | | doesn't satisfy `entrait::Impl<()>: T2` 14 | | 15 | note: trait bound `entrait::Impl<()>: T2` was not satisfied 16 | --> tests/entrait/missing_impl_deep.rs:4:19 17 | | 18 | 3 | #[entrait(T1)] 19 | | -- 20 | 4 | fn t1(deps: &impl T2) { 21 | | ^^ unsatisfied trait bound introduced here 22 | -------------------------------------------------------------------------------- /test_cases/tests/lib.rs: -------------------------------------------------------------------------------- 1 | #[test] 2 | fn diesel() { 3 | let t = trybuild::TestCases::new(); 4 | t.compile_fail("tests/diesel/*.rs"); 5 | } 6 | 7 | #[test] 8 | fn chumsky() { 9 | let t = trybuild::TestCases::new(); 10 | t.compile_fail("tests/chumsky/*.rs"); 11 | } 12 | 13 | #[test] 14 | fn uom() { 15 | let t = trybuild::TestCases::new(); 16 | t.compile_fail("tests/uom/*.rs"); 17 | } 18 | 19 | #[test] 20 | fn axum() { 21 | let t = trybuild::TestCases::new(); 22 | t.compile_fail("tests/axum/*.rs"); 23 | } 24 | 25 | #[test] 26 | fn bevy() { 27 | let t = trybuild::TestCases::new(); 28 | t.compile_fail("tests/bevy/*.rs"); 29 | } 30 | 31 | #[test] 32 | fn easy_ml() { 33 | let t = trybuild::TestCases::new(); 34 | t.compile_fail("tests/easy_ml/*.rs"); 35 | } 36 | 37 | #[test] 38 | fn typed_builder() { 39 | let t = trybuild::TestCases::new(); 40 | t.compile_fail("tests/typed_builder/*.rs"); 41 | } 42 | 43 | #[test] 44 | fn entrait() { 45 | let t = trybuild::TestCases::new(); 46 | t.compile_fail("tests/entrait/*.rs"); 47 | } 48 | -------------------------------------------------------------------------------- /test_cases/tests/typed_builder/mismatch.rs: -------------------------------------------------------------------------------- 1 | use typed_builder::TypedBuilder; 2 | 3 | #[derive(PartialEq, TypedBuilder)] 4 | struct Foo { 5 | // Mandatory Field: 6 | x: i32, 7 | 8 | // #[builder(default)] without parameter - use the type's default 9 | // #[builder(setter(strip_option))] - wrap the setter argument with `Some(...)` 10 | #[builder(default, setter(strip_option))] 11 | y: Option, 12 | 13 | // Or you can set the default 14 | #[builder(default=20)] 15 | z: i32, 16 | } 17 | 18 | 19 | fn main() { 20 | // This will not compile - because we did not set x: 21 | Foo::builder().build(); 22 | 23 | // This will not compile - because we set y twice: 24 | Foo::builder().x(1).y(2).y(3); 25 | } 26 | -------------------------------------------------------------------------------- /test_cases/tests/typed_builder/mismatch.stderr: -------------------------------------------------------------------------------- 1 | warning: use of deprecated associated function `FooBuilder::<((), __y, __z)>::build`: Missing required field x 2 | --> tests/typed_builder/mismatch.rs:21:20 3 | | 4 | 21 | Foo::builder().build(); 5 | | ^^^^^ 6 | | 7 | = note: `#[warn(deprecated)]` on by default 8 | 9 | error[E0061]: this function takes 1 argument but 0 arguments were supplied 10 | --> tests/typed_builder/mismatch.rs:21:20 11 | | 12 | 21 | Foo::builder().build(); 13 | | ^^^^^-- an argument of type `FooBuilder_Error_Missing_required_field_x` is missing 14 | | 15 | note: associated function defined here 16 | --> tests/typed_builder/mismatch.rs:3:21 17 | | 18 | 3 | #[derive(PartialEq, TypedBuilder)] 19 | | -^^^^^^^^^^^ 20 | = note: this error originates in the derive macro `TypedBuilder` (in Nightly builds, run with -Z macro-backtrace for more info) 21 | help: provide the argument 22 | | 23 | 21 | Foo::builder().build(/* FooBuilder_Error_Missing_required_field_x */); 24 | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 25 | 26 | warning: use of deprecated associated function `FooBuilder::<(__x, (std::option::Option,), __z)>::y`: Repeated field y 27 | --> tests/typed_builder/mismatch.rs:24:30 28 | | 29 | 24 | Foo::builder().x(1).y(2).y(3); 30 | | ^ 31 | 32 | error[E0308]: mismatched types 33 | --> tests/typed_builder/mismatch.rs:24:32 34 | | 35 | 24 | Foo::builder().x(1).y(2).y(3); 36 | | - ^ expected enum `FooBuilder_Error_Repeated_field_y`, found integer 37 | | | 38 | | arguments to this function are incorrect 39 | | 40 | note: associated function defined here 41 | --> tests/typed_builder/mismatch.rs:11:5 42 | | 43 | 3 | #[derive(PartialEq, TypedBuilder)] 44 | | ------------ 45 | ... 46 | 11 | y: Option, 47 | | ^ 48 | -------------------------------------------------------------------------------- /test_cases/tests/uom/type_mismatch.rs: -------------------------------------------------------------------------------- 1 | use uom::si::f32::*; 2 | use uom::si::length::meter; 3 | use uom::si::time::second; 4 | 5 | fn main() { 6 | // Setup length and time quantities using different units. 7 | let l1 = Length::new::(15.0); 8 | let t1 = Time::new::(50.0); 9 | let error = l1 + t1; 10 | } 11 | -------------------------------------------------------------------------------- /test_cases/tests/uom/type_mismatch.stderr: -------------------------------------------------------------------------------- 1 | error[E0308]: mismatched types 2 | --> tests/uom/type_mismatch.rs:9:22 3 | | 4 | 9 | let error = l1 + t1; 5 | | ^^ expected struct `PInt`, found struct `Z0` 6 | | 7 | = note: expected struct `Quantity>, M = Z0, N = Z0, T = Z0, J = Z0, Kind = (dyn Kind + 'static), I = Z0>, _, _>` 8 | found struct `Quantity>, J = Z0, Kind = (dyn Kind + 'static), I = Z0>, dyn uom::si::Units, _>` 9 | --------------------------------------------------------------------------------