@@ -28,7 +28,7 @@ You may also use it standalone for your projects.
28
28
Moving forward, no additional feature will be added to the ` swag ` API directly at the root package level,
29
29
which remains there for backward-compatibility purposes. All exported top-level features are now deprecated.
30
30
31
- Child modules will continue to evolve or some new ones may be added in the future.
31
+ Child modules will continue to evolve and some new ones may be added in the future.
32
32
33
33
| Module | Content | Main features |
34
34
| ---------------| ---------| ---------------|
@@ -57,22 +57,27 @@ dependencies outside of the standard library.
57
57
* ` github.com/mailru/easyjson ` is now only a dependency for module
58
58
` github.com/go-openapi/swag/jsonutils/adapters/easyjson/json ` ,
59
59
for users willing to import that module.
60
+ * integration tests and benchmarks use all the dependencies are published as their own module
61
+ * other dependencies are test dependencies drawn from ` github.com/stretchr/testify `
60
62
61
63
## Release notes
62
64
63
- ### v0.25.0 [ draft, unreleased ]
65
+ ### v0.25.0
64
66
65
67
** New with this release** :
66
68
67
69
* requires ` go1.24 ` , as iterators are being introduced
68
70
* removes the dependency to ` mailru/easyjson ` by default (#68 )
69
- * functionality remains the same, but performance may somewhat degrade for applications
70
- that relied on ` easyjson `
71
- * users of the JSON or YAML utilities who want to use ` easyjson ` as their prefered JSON seriliazer library
72
- will be able to do so by registering this the corresponding JSON adapter at runtime. See below.
73
- * ordered keys in JSON and YAML objects: this feature used to rely solely on ` easyjson ` .
74
- With this release, an implementation relying on the standard ` encoding/json ` is provided.
75
- * improved float is integer check (` conv.IsFloat64AJSONInteger ` ) (#59 )
71
+ * functionality remains the same, but performance may somewhat degrade for applications
72
+ that relied on ` easyjson `
73
+ * users of the JSON or YAML utilities who want to use ` easyjson ` as their prefered JSON serializer library
74
+ will be able to do so by registering this the corresponding JSON adapter at runtime. See below.
75
+ * ordered keys in JSON and YAML objects: this feature used to rely solely on ` easyjson ` .
76
+ With this release, an implementation relying on the standard ` encoding/json ` is provided.
77
+ * an independent [ benchmark] ( ./jsonutils/adapters/testintegration/benchmarks/README.md ) to compare the different adapters
78
+ * improves the "float is integer" check (` conv.IsFloat64AJSONInteger ` ) (#59 )
79
+ * removes the _ direct_ dependency to ` gopkg.in/yaml.v3 ` (indirect dependency is still incurred through ` stretchr/testify ` ) (#127 )
80
+ * exposed ` conv.IsNil() ` (previously kept private): a safe nil check (accounting for the "non-nil interface with nil value" nonsensical go trick)
76
81
77
82
** What coming next?**
78
83
@@ -177,4 +182,7 @@ A few ideas:
177
182
imposed dependency to some database driver.
178
183
* [ ] Adapt ` go-swagger ` (incl. generated code) to the new ` swag ` API.
179
184
* [ ] Factorize some tests, as there is a lot of redundant testing code in ` jsonutils `
180
-
185
+ * [ ] Benchmark & profiling: publish independently the tool built to analyze and chart benchmarks (e.g. similar to ` benchvisual ` )
186
+ * [ ] more thorough testing for nil / null case
187
+ * [ ] ci pipeline to manage releases
188
+ * [ ] cleaner mockery generation (doesn't work out of the box for all sub-modules)
0 commit comments