Graham Esau
6a3bba1e86
Set additionalProperties to false on enums where appropriate
2021-03-20 18:45:29 +00:00
Graham Esau
3a7d7ad905
Apply some clippy suggestions
2021-03-19 23:20:16 +00:00
Graham Esau
40d9bfd517
Forbid unsafe code
2020-09-25 18:34:57 +01:00
Graham Esau
0c02525fb9
Trim leading asterisks from doc block comments
...
This is to handle a change in behaviour in current beta rustc
2020-09-21 09:55:31 +01:00
Graham Esau
b0a2f9994b
Error on unknown schemars attr items
2020-06-04 19:39:57 +01:00
Graham Esau
be6cd1080d
Allow unused braces in macro output.
...
Fixes warnings in beta/nightly rustc
2020-05-17 17:22:42 +01:00
Graham Esau
e259955809
Attribute for defining examples ( #23 )
2020-05-17 16:41:19 +01:00
Graham Esau
75419fa3d5
Fix rustc 1.32 build
2020-05-17 11:27:11 +01:00
Graham Esau
1b42dc7e3e
Allow overriding title/desc from doc comments ( #13 )
2020-05-17 11:19:48 +01:00
Graham Esau
5a28cef598
Respect #[serde(transparent)] attribute ( #17 )
2020-05-16 21:16:59 +01:00
Graham Esau
509a1c3b7b
Check for #[deprecated] attributes
2020-05-16 16:44:44 +01:00
Graham Esau
bfb3f06253
Avoid setting ObjectValidation unnecessarily
2020-05-16 12:10:54 +01:00
Denis Kurilov
1190b1fad9
additionalProperties: false
for struct annotated with serde deny_unknown_fields
(#30 )
...
Co-authored-by: Denis Kurilov <denis@routinghub.com>
2020-05-16 12:02:47 +01:00
Graham Esau
ea351f3b42
Set type on enum schemas ( #28 )
2020-05-16 10:41:30 +01:00
Graham Esau
3fd316063a
schema_with
attribute
2020-05-15 17:11:28 +01:00
Graham Esau
9d951b34ce
Fix rustc 1.32 build
2020-05-12 21:19:43 +01:00
Graham Esau
780c7286a6
Refactor attribute parsing to make it more extensible
2020-05-12 21:17:34 +01:00
Graham Esau
b1ded882b7
More refactoring of proc macro...
2020-05-11 21:53:36 +01:00
Graham Esau
631120ead8
Fix rustc 1.32 build
2020-05-10 22:16:17 +01:00
Graham Esau
70b5a1a2e6
Refactor of AST parsing
2020-05-10 22:09:15 +01:00
Graham Esau
08886799bb
Respect with
attributes on enum variants
2020-05-10 17:17:04 +01:00
Graham Esau
11b7a09c93
Enable deriving JsonSchema on adjacent tagged enums
...
Issue #4
2020-04-30 14:21:04 +01:00
Graham Esau
63af0ceb73
Fix skip_serializing_if/serialize_with handling
...
Previously whenever a field with a default value has both `skip_serializing_if` and `with`/`serialize_with` attributes, the value would be converted to a type that performs the custom serialization before checking if it should be serialized. This would cause the wrong type to be given to the skip_serializing_if function, causing a compile error.
Issue #26
2020-04-11 22:06:48 +01:00
Atsuki Takahashi
873ab3ae02
Specify full path for String ( #19 )
2020-03-24 18:05:37 +00:00
Graham Esau
3e1ab76c21
Parse types as syn::Type, not syn::ExprPath.
...
#[schemars(with= "()")] should now work!
2020-02-29 23:36:39 +00:00
Graham Esau
4ad5000232
Make Option<T> fields optional in generated schemas ( #16 )
2020-02-29 19:37:20 +00:00
Graham Esau
58cc7fac25
Run cargo fmt
2019-12-29 22:09:54 +00:00
Graham Esau
781f40b061
Improve schema naming for deriving on remote types
2019-12-27 15:37:59 +00:00
Graham Esau
d30238c981
Do not pass container attributes through enums/variants
...
When deriving JsonSchema over a struct-style enum variant, do not apply the enum's container attributes to the variant. This couldn't cause any problems in practice because the only container attribute we explicitly set is "default", which cannot be set on an enum.
2019-12-23 20:50:26 +00:00
Graham Esau
b5e1821f3a
Don't include "doc" in list of helper attributes
2019-12-09 21:56:19 +00:00
Graham Esau
e151d21d6d
v0.6.1
...
Fix a compile error that can occur when deriving `JsonSchema` from a project that doesn't reference serde_json
2019-12-09 21:25:37 +00:00
Graham Esau
351ff1572a
v0.6.0
2019-12-09 21:06:44 +00:00
Graham Esau
3fb625e08c
Refactoring of schemars_derive
2019-12-09 20:57:38 +00:00
Graham Esau
dca9e2d920
Pass fewer attributes to serde_derive_internals
2019-12-09 18:43:43 +00:00
Graham Esau
26c4099bbe
Do not serialize schema default if it would be skipped by skip_serializing_if
attribute
2019-12-09 12:34:28 +00:00
Graham Esau
9579d6a94c
Fix rustc 1.32.0 build
2019-12-08 22:34:48 +00:00
Graham Esau
4c4fb1cf36
Rewrite attribute parsing logic
2019-12-08 22:28:49 +00:00
Graham Esau
b748a90c3f
Respect serialize_with attr when serializing default
2019-12-08 20:04:54 +00:00
Graham Esau
7e23e2ad7a
Set "default" on generated schemas ( #6 )
2019-12-08 15:17:08 +00:00
Graham Esau
1e9f36122d
Minor refactoring/cleanup
2019-12-08 12:03:46 +00:00
Graham Esau
ba79de696a
Document SchemaGenerator.make_extensible()
2019-12-08 12:03:46 +00:00
Graham Esau
d92b741b9b
Get title/description from #[doc] on enum variants
2019-12-08 12:03:46 +00:00
Graham Esau
a1c3daaed8
Join adjacent lines in descriptions from #[doc]s
2019-12-08 12:03:46 +00:00
Graham Esau
feefd418d4
Set schema title and description from #[doc]s
...
Work in progress
2019-12-08 12:03:46 +00:00
Graham Esau
60bfc6ee49
Make prepositions/conjunctions in generated schema names lowercase
2019-10-27 22:48:35 +00:00
Graham Esau
fba1753bba
Undo last change affecting internal tagged enums.
...
It broke things!
2019-10-22 22:58:24 +01:00
Graham Esau
792fbbb86e
Add more info to README
2019-10-22 22:49:24 +01:00
Graham Esau
18c2d417e3
Fix schema generation for flatten Options
2019-10-19 21:03:34 +01:00
Graham Esau
5bf8b30753
Schema generation now never returns an error
2019-10-19 20:33:26 +01:00
Graham Esau
2bc3957cb8
Set readOnly/writeOnly on properties
2019-10-14 20:00:57 +01:00