Skip to content

Add specta-zod

Add specta-zod #387

Triggered via push June 12, 2024 13:41
Status Failure
Total duration 1m 54s
Artifacts

ci.yml

on: push
Matrix: build
Fit to window
Zoom out
Zoom in

Annotations

5 errors and 35 warnings
build (macos-latest)
Process completed with exit code 101.
build (windows-latest)
The job was canceled because "macos-latest" failed.
build (windows-latest)
The operation was canceled.
build (ubuntu-latest)
The job was canceled because "macos-latest" failed.
build (ubuntu-latest)
The operation was canceled.
this expression creates a reference which is immediately dereferenced by the compiler: src/type_collection.rs#L36
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/type_collection.rs:36:29 | 36 | let dt = export(&mut type_map); | ^^^^^^^^^^^^^ help: change this to: `type_map` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` implied by `#[warn(clippy::all)]`
this `impl` can be derived: src/type_collection.rs#L11
warning: this `impl` can be derived --> src/type_collection.rs:11:1 | 11 | / impl Default for TypeCollection { 12 | | fn default() -> Self { 13 | | Self { 14 | | types: HashMap::new(), 15 | | } 16 | | } 17 | | } | |_^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls = note: `#[warn(clippy::derivable_impls)]` implied by `#[warn(clippy::all)]` = help: remove the manual implementation... help: ...and instead derive it | 7 + #[derive(Default)] 8 | pub struct TypeCollection { |
accessing first element with `generics.get(0)`: src/type/impls.rs#L165
warning: accessing first element with `generics.get(0)` --> src/type/impls.rs:165:17 | 165 | / generics 166 | | .get(0) | |___________________________^ help: try: `generics.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `generics.get(0)`: src/type/impls.rs#L153
warning: accessing first element with `generics.get(0)` --> src/type/impls.rs:153:18 | 153 | ty = generics.get(0).cloned() | ^^^^^^^^^^^^^^^ help: try: `generics.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `#[warn(clippy::get_first)]` implied by `#[warn(clippy::all)]`
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L166
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:166:5 | 166 | s.push_str(";"); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push(';')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L159
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:159:5 | 159 | s.push_str(")"); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push(')')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L149
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:149:5 | 149 | s.push_str("("); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push('(')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str = note: `#[warn(clippy::single_char_add_str)]` implied by `#[warn(clippy::all)]`
unnecessary use of `get(&sid).is_none()`: src/datatype/reference.rs#L22
warning: unnecessary use of `get(&sid).is_none()` --> src/datatype/reference.rs:22:21 | 22 | if type_map.map.get(&sid).is_none() { | -------------^^^^^^^^^^^^^^^^^^^ | | | help: replace it with: `!type_map.map.contains_key(&sid)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_get_then_check = note: `#[warn(clippy::unnecessary_get_then_check)]` implied by `#[warn(clippy::all)]`
this function has too many arguments (8/7): src/internal.rs#L232
warning: this function has too many arguments (8/7) --> src/internal.rs:232:5 | 232 | / pub fn get_fn_datatype<TMarker, T: Function<TMarker>>( 233 | | _: T, 234 | | asyncness: bool, 235 | | name: Cow<'static, str>, ... | 240 | | no_return_type: bool, 241 | | ) -> FunctionDataType { | |_________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments note: the lint level is defined here --> src/lib.rs:3:9 | 3 | #![warn(clippy::all, clippy::unwrap_used, clippy::panic)] // TODO: missing_docs | ^^^^^^^^^^^ = note: `#[warn(clippy::too_many_arguments)]` implied by `#[warn(clippy::all)]`
`panic` should not be present in production code: src/internal/interop.rs#L344
warning: `panic` should not be present in production code --> src/internal/interop.rs:344:32 | 344 | DataType::Result(_) => panic!("Specta v1 does not support Result types"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic
`panic` should not be present in production code: src/internal/interop.rs#L44
warning: `panic` should not be present in production code --> src/internal/interop.rs:44:37 | 44 | LiteralType::char(_) => panic!("Specta v1 does not support char literals"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic
`panic` should not be present in production code: src/internal/interop.rs#L13
warning: `panic` should not be present in production code --> src/internal/interop.rs:13:30 | 13 | DataType::Unknown => panic!("Specta v1 does not support unknown types"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic note: the lint level is defined here --> src/lib.rs:3:43 | 3 | #![warn(clippy::all, clippy::unwrap_used, clippy::panic)] // TODO: missing_docs | ^^^^^^^^^^^^^
constant `RESERVED_IDENTS` is never used: src/lang/ts/reserved_terms.rs#L66
warning: constant `RESERVED_IDENTS` is never used --> src/lang/ts/reserved_terms.rs:66:18 | 66 | pub(crate) const RESERVED_IDENTS: &[&str] = &[ | ^^^^^^^^^^^^^^^
field `0` is never read: src/lang/ts/context.rs#L10
warning: field `0` is never read --> src/lang/ts/context.rs:10:18 | 10 | TypeExtended(Cow<'static, str>, ImplLocation), | ------------ ^^^^^^^^^^^^^^^^^ | | | field in this variant | = note: `#[warn(dead_code)]` on by default help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field | 10 | TypeExtended((), ImplLocation), | ~~
unused variable: `name`: src/internal/interop.rs#L112
warning: unused variable: `name` --> src/internal/interop.rs:112:32 | 112 | .map(|(name, v)| match v.inner() { | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` | = note: `#[warn(unused_variables)]` on by default
unused import: `selection::*`: src/lib.rs#L37
warning: unused import: `selection::*` --> src/lib.rs:37:9 | 37 | pub use selection::*; | ^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
clippy
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions-rs/clippy-check@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
clippy
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
this expression creates a reference which is immediately dereferenced by the compiler: src/type_collection.rs#L36
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/type_collection.rs:36:29 | 36 | let dt = export(&mut type_map); | ^^^^^^^^^^^^^ help: change this to: `type_map` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` implied by `#[warn(clippy::all)]`
this `impl` can be derived: src/type_collection.rs#L11
warning: this `impl` can be derived --> src/type_collection.rs:11:1 | 11 | / impl Default for TypeCollection { 12 | | fn default() -> Self { 13 | | Self { 14 | | types: HashMap::new(), 15 | | } 16 | | } 17 | | } | |_^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls = note: `#[warn(clippy::derivable_impls)]` implied by `#[warn(clippy::all)]` = help: remove the manual implementation... help: ...and instead derive it | 7 + #[derive(Default)] 8 | pub struct TypeCollection { |
accessing first element with `generics.get(0)`: src/type/impls.rs#L165
warning: accessing first element with `generics.get(0)` --> src/type/impls.rs:165:17 | 165 | / generics 166 | | .get(0) | |___________________________^ help: try: `generics.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `generics.get(0)`: src/type/impls.rs#L153
warning: accessing first element with `generics.get(0)` --> src/type/impls.rs:153:18 | 153 | ty = generics.get(0).cloned() | ^^^^^^^^^^^^^^^ help: try: `generics.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `#[warn(clippy::get_first)]` implied by `#[warn(clippy::all)]`
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L166
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:166:5 | 166 | s.push_str(";"); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push(';')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L159
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:159:5 | 159 | s.push_str(")"); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push(')')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str
calling `push_str()` using a single-character string literal: src/lang/ts/mod.rs#L149
warning: calling `push_str()` using a single-character string literal --> src/lang/ts/mod.rs:149:5 | 149 | s.push_str("("); | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `s.push('(')` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str = note: `#[warn(clippy::single_char_add_str)]` implied by `#[warn(clippy::all)]`
unnecessary use of `get(&sid).is_none()`: src/datatype/reference.rs#L22
warning: unnecessary use of `get(&sid).is_none()` --> src/datatype/reference.rs:22:21 | 22 | if type_map.map.get(&sid).is_none() { | -------------^^^^^^^^^^^^^^^^^^^ | | | help: replace it with: `!type_map.map.contains_key(&sid)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_get_then_check = note: `#[warn(clippy::unnecessary_get_then_check)]` implied by `#[warn(clippy::all)]`
this function has too many arguments (8/7): src/internal.rs#L232
warning: this function has too many arguments (8/7) --> src/internal.rs:232:5 | 232 | / pub fn get_fn_datatype<TMarker, T: Function<TMarker>>( 233 | | _: T, 234 | | asyncness: bool, 235 | | name: Cow<'static, str>, ... | 240 | | no_return_type: bool, 241 | | ) -> FunctionDataType { | |_________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments = note: `#[warn(clippy::too_many_arguments)]` implied by `#[warn(clippy::all)]`
`panic` should not be present in production code: src/internal/interop.rs#L344
warning: `panic` should not be present in production code --> src/internal/interop.rs:344:32 | 344 | DataType::Result(_) => panic!("Specta v1 does not support Result types"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic
`panic` should not be present in production code: src/internal/interop.rs#L44
warning: `panic` should not be present in production code --> src/internal/interop.rs:44:37 | 44 | LiteralType::char(_) => panic!("Specta v1 does not support char literals"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic
`panic` should not be present in production code: src/internal/interop.rs#L13
warning: `panic` should not be present in production code --> src/internal/interop.rs:13:30 | 13 | DataType::Unknown => panic!("Specta v1 does not support unknown types"), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#panic note: the lint level is defined here --> src/lib.rs:3:43 | 3 | #![warn(clippy::all, clippy::unwrap_used, clippy::panic)] // TODO: missing_docs | ^^^^^^^^^^^^^
needless `fn main` in doctest: src/./docs.md#L22
warning: needless `fn main` in doctest --> src/./docs.md:22:1 | 22 | / use specta::{*, ts::*}; 23 | | 24 | | #[derive(Type)] 25 | | pub struct MyCustomType { ... | 33 | | ); 34 | | } | |_^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_doctest_main note: the lint level is defined here --> src/lib.rs:3:9 | 3 | #![warn(clippy::all, clippy::unwrap_used, clippy::panic)] // TODO: missing_docs | ^^^^^^^^^^^ = note: `#[warn(clippy::needless_doctest_main)]` implied by `#[warn(clippy::all)]`
constant `RESERVED_IDENTS` is never used: src/lang/ts/reserved_terms.rs#L66
warning: constant `RESERVED_IDENTS` is never used --> src/lang/ts/reserved_terms.rs:66:18 | 66 | pub(crate) const RESERVED_IDENTS: &[&str] = &[ | ^^^^^^^^^^^^^^^
field `0` is never read: src/lang/ts/context.rs#L10
warning: field `0` is never read --> src/lang/ts/context.rs:10:18 | 10 | TypeExtended(Cow<'static, str>, ImplLocation), | ------------ ^^^^^^^^^^^^^^^^^ | | | field in this variant | = note: `#[warn(dead_code)]` on by default help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field | 10 | TypeExtended((), ImplLocation), | ~~
unused variable: `name`: src/internal/interop.rs#L112
warning: unused variable: `name` --> src/internal/interop.rs:112:32 | 112 | .map(|(name, v)| match v.inner() { | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` | = note: `#[warn(unused_variables)]` on by default
unused import: `selection::*`: src/lib.rs#L37
warning: unused import: `selection::*` --> src/lib.rs:37:9 | 37 | pub use selection::*; | ^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default