This changelog tracks the Rust svdtools
project. See
CHANGELOG-python.md for the Python svdtools
project.
v0.4.0 2025-01-06
- breaking Support "?~" in field
_modify
&_derive
- Keep position when merge fields
v0.3.21 2024-12-31
_derive
field
v0.3.20 2024-11-14
- Implement
_expand_cluster
- Support derived registers/fields in
svdtools html
v0.3.19 2024-10-18
- Fix deletion childrens on cluster modify
- Sugar for simple
_split
and_merge
v0.3.18 2024-08-10
- Replace
yaml-rust
withyaml-rust2
. Check for duplicate keys and other YAML parse errors - Prevent collapsing columns in HTML
register-map-table
withmin-width
- Protect from using one
enumeratedValues
in fields with different width
v0.3.17 2024-07-05
- Support "isDefault" enum value in
svdtools html
v0.3.16 2024-07-03
- Add possibility to add field arrays
v0.3.15 2024-07-02
- Add
info
tool, only withdevice-name
for now - Add
expand-patch
tool to show full patch rule with all includes
v0.3.14 2024-04-04
- If there is no path to interpolate, show unmodified
description
. - Support write constraints when defining new register fields
- Allow absolute identifiers in
_derive
register
v0.3.13 2024-03-29
- Interpolate path and name in
description
andderivedFrom
- Allow specs started with
_
(missing part) - Allow 1 string
_include
v0.3.12 2024-03-23
dimArrayIndex
support- Allow to modify registers in
_cluster:
- Add addressOffset check in
collect_in_cluster
- Refactor
RegisterBlockExt
, useBlockPath
for better errors - Allow specs started with
_
- Allow process,
_delete
and_modify
cluster without_clusters
specifier
v0.3.11 2024-03-06
- Add
_expand_array
- Allow register arrays in
collect_in_cluster
- Custom
dimIncrement
for 1-elementcluster
orarray
v0.3.10 2024-02-26
- Allow to specify
name
forenumeratedValues
- Avoid unneded whitespaces in generated
html
v0.3.9 2024-01-19
- Use
<details>
instead of JavaScript inhtml
template - Fix escape special characters on Windows
v0.3.8 2023-12-23
- Fix #176 in
collect_in_cluster
v0.3.7 2023-12-22
- Support
bitRange
andmsb+lsb
in field_modify
- Support
_include
in peripherals indevice.yaml
- Add
--enum_derive
flag - Strip
alternateRegister
too - Add
modifiedWriteValues
andreadAction
field patch (#156) - Ignore rule if starts with "?~" and no matched instances
- Fix #144
- Flag to check for errors after patching
v0.3.6 2023-11-01
- Fix #182
v0.3.5 2023-11-30
- Move field with derived enums before other
-1
for default enum value- Update
displayName
during collect, improve searching commondescription
- mmaps: peripheral arrays, bump
svd
crates - patch:
--show-patch-on-error
prints yaml patches on error
v0.3.4 2023-10-14
- Revert #145
- Improve "Could not find errors"
- use register size as dimIncrement for 1-element arrays
- Replace spec indices search with regex
- modify writeConstraint for register
v0.3.3 2023-10-02
- Fast fix for #161
v0.3.2 2023-10-01
_modify
derivedFrom
for peripherals, clusters, registers and fields- fix field bit range in
svdtools html
v0.3.1 2023-09-19
- add
svdtools html
andsvdtools htmlcompare
tools fromstm32-rs
- update
svd-encoder
,--format-config
and optionalout_path
forpatch
- add field name in enumeratedValues derive path
v0.3.0 2023-03-27
- cluster add/modify
- use
normpath
instead of std::fs::canonicalize
v0.2.8 2023-01-28
- patch: added possibility to modify dim elements (arrays)
- mmap: replace %s in field array
v0.2.7 2022-09-18
- Print svdtools version on error, update dependencies
- Check
_delete
,_strip
, etc. on array of strings
v0.2.6 2022-08-21
Breaking changes:
- Move
_strip
,_strip_end
before_modify
(#89)- Existing patch files may need updating to refer to the stripped versions of names being modified
- Allow
_derive
to rename derived peripherals, optionally specify a new base address and description (#118)- If registers were being copied and modified, use
_copy
instead of_derive
for those peripherals.
- If registers were being copied and modified, use
Other changes:
- Improve error messages on missing files (#117)
- Fix help documentation for
svdtools patch
command (#119)
v0.2.5 2022-07-23
- update
svd-rs
crates to 0.14 convert
: Addformat_config
option
v0.2.4 2022-05-15
- Added action to build binaries and release for every version tag and latest commit
- Use
svd-parser
0.13.4, addexpand_properties
option inconvert
patch
: check enumusage
, don't add it if unneeded
v0.2.3 2022-05-01
- Add support for
modifiedWriteValues
&readAction
for fields
v0.2.2 2022-04-23
- Use
svd-encoder
0.13.2 - Support
expand
when processing SVD files (#104) - Sanitize enumeratedValues (#103)
v0.2.1 2022-02-12
- Use
svd-encoder
0.13.1 - Remove register
access
if empty
v0.2.0 2022-01-15
- Use
svd-parser
0.13.1 - Add
_clear_fields
inDevice
andPeripheral
(#90) - Add new
convert
command to convert between SVD (XML), JSON, and YAML (#92) - Provide option to opt out of regex replace of 0's in description when
creating arrays by using a custom
description
attribute (#95)
v0.1.0 2021-12-09
- Initial release with feature-parity with the Python project.