1# Changelog
2All notable changes to this project will be documented in this file.
3
4The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
7## 0.9.6 (2023-12-14)
8### Added
9- RFC 6962 OID ([#1282])
10
11[#1282]: https://github.com/RustCrypto/formats/pull/1282
12
13## 0.9.5 (2023-08-02)
14### Added
15- rfc8410 (curve25519) OIDS. ([#867])
16
17[#867]: https://github.com/RustCrypto/formats/pull/867
18
19## 0.9.4 (2023-07-10)
20### Added
21- rfc8894 (SCEP) OIDs. ([#1114])
22
23[#1114]: https://github.com/RustCrypto/formats/pull/1114
24
25## 0.9.3 (2023-06-29)
26### Added
27- `Database::find_names_for_oid` ([#1129])
28
29[#1129]: https://github.com/RustCrypto/formats/pull/1129
30
31## 0.9.2 (2023-02-26)
32### Added
33- Implement `Arbitrary` trait ([#761])
34
35[#761]: https://github.com/RustCrypto/formats/pull/761
36
37## 0.9.1 (2022-11-12)
38### Added
39- clippy lints for checked arithmetic and panics ([#561])
40- `DynAssociatedOid` trait ([#758])
41
42[#561]: https://github.com/RustCrypto/formats/pull/561
43[#758]: https://github.com/RustCrypto/formats/pull/758
44
45## 0.9.0 (2022-03-11)
46### Added
47- Fallible `const fn` parser + `::new_unwrap` ([#458], [#459])
48- OID database gated under the `db` feature ([#451], [#453], [#456], [#488])
49- `AssociatedOid` trait ([#479])
50- `ObjectIdentifier::push_arc` ([#504])
51- `ObjectIdentifier::parent` ([#505])
52
53### Changed
54- `ObjectIdentifier::new` now returns a `Result` ([#458])
55
56[#451]: https://github.com/RustCrypto/formats/pull/451
57[#453]: https://github.com/RustCrypto/formats/pull/453
58[#456]: https://github.com/RustCrypto/formats/pull/456
59[#458]: https://github.com/RustCrypto/formats/pull/458
60[#459]: https://github.com/RustCrypto/formats/pull/459
61[#479]: https://github.com/RustCrypto/formats/pull/479
62[#488]: https://github.com/RustCrypto/formats/pull/488
63[#504]: https://github.com/RustCrypto/formats/pull/504
64[#505]: https://github.com/RustCrypto/formats/pull/505
65
66## 0.8.0 (2022-01-17)
67### Changed
68- Leverage `const_panic`; MSRV 1.57 ([#341])
69
70[#341]: https://github.com/RustCrypto/formats/pull/341
71
72## 0.7.1 (2021-11-30)
73### Changed
74- Increase `MAX_SIZE` to 39 ([#258])
75
76[#258]: https://github.com/RustCrypto/formats/pull/258
77
78## 0.7.0 (2021-11-14) [YANKED]
79### Changed
80- Rust 2021 edition upgrade; MSRV 1.56 ([#136])
81- Rename `MAX_LENGTH` to `MAX_SIZE`; bump to `31` ([#174])
82- Make `length` the first field of `ObjectIdentifier` ([#178])
83
84### Fixed
85- `debug_assert!` false positive on large arc ([#180])
86
87[#136]: https://github.com/RustCrypto/formats/pull/136
88[#174]: https://github.com/RustCrypto/formats/pull/174
89[#178]: https://github.com/RustCrypto/formats/pull/178
90[#180]: https://github.com/RustCrypto/formats/pull/180
91
92## 0.6.2 (2021-10-14)
93### Fixed
94- Off-by-one error parsing large BER arcs ([#84])
95
96[#84]: https://github.com/RustCrypto/formats/pull/84
97
98## 0.6.1 (2021-09-14) [YANKED]
99### Changed
100- Moved to `formats` repo ([#2])
101
102[#2]: https://github.com/RustCrypto/formats/pull/2
103
104## 0.6.0 (2021-06-03) [YANKED]
105### Changed
106- Modernize and remove deprecations; MSRV 1.51+
107
108## 0.5.2 (2021-04-20)
109### Added
110- Expand README.md
111
112## 0.5.1 (2021-04-15)
113### Added
114- `ObjectIdentifier::MAX_LENGTH` constant
115
116### Changed
117- Deprecate `ObjectIdentifier::max_len()` function
118
119## 0.5.0 (2021-03-21)
120### Added
121- `TryFrom<&[u8]>` impl on `ObjectIdentifier`
122
123## Changed
124- MSRV 1.47+
125- Renamed the following methods:
126  - `ObjectIdentifier::new` => `ObjectIdentifier::from_arcs`
127  - `ObjectIdentifier::parse` => `ObjectIdentifier::new`
128  - `ObjectIdentifier::from_ber` => `ObjectIdentifier::from_bytes`
129
130### Removed
131- Deprecated methods
132- `alloc` feature - only used by aforementioned deprecated methods
133- `TryFrom<&[Arc]>` impl on `ObjectIdentifier` - use `::from_arcs`
134
135## 0.4.5 (2021-03-04)
136### Added
137- `Hash` and `Ord` impls on `ObjectIdentifier`
138
139## 0.4.4 (2021-02-28)
140### Added
141- `ObjectIdentifier::as_bytes` method
142
143### Changed
144- Internal representation changed to BER/DER
145- Deprecated `ObjectIdentifier::ber_len`, `::write_ber`, and `::to_ber`
146
147## 0.4.3 (2021-02-24)
148### Added
149- Const-friendly OID string parser
150
151## 0.4.2 (2021-02-19)
152### Fixed
153- Bug in root arc calculation
154
155## 0.4.1 (2020-12-21)
156### Fixed
157- Bug in const initializer
158
159## 0.4.0 (2020-12-16)
160### Added
161- `Arcs` iterator
162
163### Changed
164- Rename "nodes" to "arcs"
165- Layout optimization
166- Refactor and improve length limits
167
168## 0.3.5 (2020-12-12)
169### Added
170- `ObjectIdentifier::{write_ber, to_ber}` methods
171
172## 0.3.4 (2020-12-06)
173### Changed
174- Documentation improvements
175
176## 0.3.3 (2020-12-05)
177### Changed
178- Improve description in Cargo.toml/README.md
179
180## 0.3.2 (2020-12-05)
181### Changed
182- Documentation improvements
183
184## 0.3.1 (2020-12-05)
185### Added
186- Impl `TryFrom<&[u32]>` for ObjectIdentifier
187
188## 0.3.0 (2020-12-05) [YANKED]
189### Added
190- Byte and string parsers
191
192## 0.2.0 (2020-09-05)
193### Changed
194- Validate OIDs are well-formed; MSRV 1.46+
195
196## 0.1.0 (2020-08-04)
197- Initial release
198