git.iko.soy/rowtype-yoga/purescript-protobuf
on wip4.6.0 help sign in
142 lines 3.9 kB history raw
1# Unreleased
3# v4.5.0 2024-12-02
5- `spago@next` build system. Reorganized packages.
7# v4.4.0 2024-10-15
9- Bugfix #38 Add `MonadRec` constraint to `put` functions.
11# v4.3.0 2023-01-30
13- Development: purs v0.15.7, node-streams-aff v5.0.0, assorted improvements.
15# v4.2.0 2022-12-27
17- Add doc comments from the `.proto` messages and enums to the generated `.purs` code.
18- Improved dev environment for __purescript-language-server__ and __ide-purescript__
19 with `PURS_IDE_SOURCES`.
20- Use `spago2nix_nativeBuildInputs`.
22# v4.1.0 2022-12-10
24- Nix flake. With one-step spago2nix.
25- Upgrade dependencies.
26- Delete `mkUint8Array`. Upstreamed this to purescript-arraybuffer.
27- Delete `manyArray`, `parseMaybe`, `parseEither`, `parseExceptT`. Upstreamed these to purescript-parsing.
28- Refactor `manyLength`. Get rid of the FFI, and a slight speedup in the benchmarks.
29- Delete `Runtime.positionZero`.
31# v4.0.0 2022-06-02
33- Change the values of `UnknownBits64` and `UnknownBits32` to `Bytes`.
34- Upgrade __int64__
36# v3.0.0 2022-05-27
38- PureScript v0.15.0
39- Protobuf v3.21.0
40- Replace __text-encoding__ dependency with __web-encoding__. Consequently we require *Node.js ≥ v11*.
41- Replace __longs__ dependency with __int64__.
42- Remove the only NPM dependency: __longs.js__.
43- Rework the async I/O in the protoc plugin.
45# v2.1.2 2021-09-10
47Now the codegen
48[Nix derivation](https://github.com/xc-jp/purescript-protobuf#nix-derivation)
49is working properly.
51# v2.1.0 2021-07-25
53Reorganized the `spago` files so that programs which import generated code
54can use `spago.dhall` for the minimum necessary dependencies instead
55of `spago-library.dhall`.
57Reorganized the PureScript modules so that all modules except `Library`
58are now explicity `Internal` modules.
60# v2.0.0 2021-07-22
62Upgraded to PureScript 0.14.3.
64For byte fields we’re now using the `DataBuff` type
65from __arraybuffer-builder__ v2.1.0 which allows us to avoid array copies,
66and so may speed up encoding and decoding in some cases.
68Created a `Protobuf.Prelude` module to eliminate many import warnings
69in the generated code.
71## Breaking changes
73The `Bytes` field type was formerly a wrapper for `ArrayBuffer`, and now
74it is a wrapper for `DataBuff`, which may be either `ArrayBuffer` or `DataView`.
75This changes the API and will require some changes in dependent code.
77## Bugfixes
79Fixed a bug which sometimes incorrectly errored with “index out of bounds” when
80decoding packed repeated fields of double, float, fixed32, or sfixed32.
82Fixed a bug which would cause a compilation failure in generated code for
83enums with negative values.
85# v1.8.0
87Large (×1000) speedup for decoding packed repeated fields of
89* double
90* float
91* fixed32
92* fixed64
93* sfixed32
94* sfixed64
96# v1.7.0
98Upgraded from Protobuf v3.14.0 to v3.15.8.
100Now supporting [proto3 field presence](https://github.com/protocolbuffers/protobuf/blob/master/docs/field_presence.md).
102# v1.6.0
104Upgraded from Protobuf v3.9.2 to v3.14.0.
106To conform with v3.14.0, we’ve added a new type class `Default` for
107awareness of Protobuf
108[default values](https://protobuf.dev/programming-guides/proto3#default).
110# v1.5.0
112In the code generator, when `protoc` hands us nonsense descriptors, then
113report the error instead of generating uncompilable code.
115Export `Library.manyLength`, it’s generally useful.
117# v1.4.0
119Improve `Protobuf.Runtime.manyLength` for stack-safety in the case of
120packed repeated fields.
122# v1.3.0
124Newtype `Protobuf.Library.Bytes` wrapper for `ArrayBuffer`, so that all
125messages can have `Eq` and `Show` instances.
127Nix `default.nix` derivation for including the code generation step as
128part another derivation.
130# v1.2.0
132Preserve unknown fields, so now all Google binary-wire-format proto3
133conformance tests pass.
135# v1.1.0
137Added parsing labels so that parsing failure messages include a path
138to the protobuf definition in which the failure occurred.
140# v1.0.0
142First release