Skip to content

Commit a8ee2d9

Browse files
committed
v0.13.0
1 parent 0185571 commit a8ee2d9

File tree

2 files changed

+47
-6
lines changed

2 files changed

+47
-6
lines changed

CHANGELOG.md

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,39 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
77

88
## [Unreleased]
99

10+
## [v0.13.0] - 2018-05-12
11+
12+
### Added
13+
14+
- `svd2rust` now emits unions for registers that overlap (have the same address). Before `svd2rust`
15+
would generate code for only one instance of overlapping registers for memory location. This
16+
feature requires passing the `--nightly` to `svd2rust` as it generates code that requires a
17+
nightly compiler to build.
18+
19+
- `svd2rust` now also blacklists the `/` (backslash) and ` ` (space) characters. `svd2rust` removes
20+
all blacklisted characters from peripheral, register, bitfield and enumeratedValues names.
21+
22+
### Changed
23+
24+
- This crate now compiles on the stable and beta channels.
25+
26+
- [breaking-change] when the target is the cortex-m architecture `svd2rust` generates three files in
27+
the current directory, instead of dumping the generated code to stdout.
28+
29+
- [breaking-change] the syntax and expansion of the `interrupt!` macro has changed when the target
30+
is the Cortex-M architecture.
31+
32+
- [breaking-change] the code generated for the Cortex-M architecture now depends on newer versions
33+
of the bare-metal, cortex-m and cortex-m-rt crates.
34+
35+
- [breaking-change] when the target is the Cortex-M architecture the "rt" feature of the device
36+
crate must enable the "device" feature of the cortex-m-rt dependency.
37+
38+
### Removed
39+
40+
- [breaking-change] `Interrupt` no longer implements the unstable `TryFrom` trait when the target is
41+
the Cortex-M architecture.
42+
1043
## [v0.12.1] - 2018-05-06
1144

1245
### Added
@@ -340,7 +373,8 @@ peripheral.register.write(|w| w.field().set());
340373

341374
- Initial version of the `svd2rust` tool
342375

343-
[Unreleased]: https://github.com/japaric/svd2rust/compare/v0.12.0...HEAD
376+
[Unreleased]: https://github.com/japaric/svd2rust/compare/v0.13.0...HEAD
377+
[v0.13.0]: https://github.com/japaric/svd2rust/compare/v0.12.1...v0.13.0
344378
[v0.12.1]: https://github.com/japaric/svd2rust/compare/v0.12.0...v0.12.1
345379
[v0.12.0]: https://github.com/japaric/svd2rust/compare/v0.11.4...v0.12.0
346380
[v0.11.4]: https://github.com/japaric/svd2rust/compare/v0.11.3...v0.11.4

src/lib.rs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,10 @@
3131
//! When targeting the Cortex-M architecture `svd2rust` will generate three files in the current
3232
//! directory:
3333
//!
34-
//! - build.rs
35-
//! - device.x
36-
//! - lib.rs
34+
//! - `build.rs`, build script that places `device.x` somewhere the linker can find.
35+
//! - `device.x`, linker script that weakly aliases all the interrupt handlers to the default
36+
//! exception handler (`DefaultHandler`).
37+
//! - `lib.rs`, the generated code.
3738
//!
3839
//! All these files must be included in the same device crate. The `lib.rs` file contains several
3940
//! inlined modules and its not formatted. It's recommend to split it out using the [`form`] tool
@@ -60,9 +61,12 @@
6061
//! [dependencies]
6162
//! bare-metal = "0.2.0"
6263
//! cortex-m = "0.5.0"
63-
//! cortex-m-rt = "0.5.0"
6464
//! vcell = "0.1.0"
6565
//!
66+
//! [dependencies.cortex-m-rt]
67+
//! optional = true
68+
//! version = "0.5.0"
69+
//!
6670
//! [features]
6771
//! rt = ["cortex-m-rt/device"]
6872
//! ```
@@ -98,9 +102,12 @@
98102
//! [dependencies]
99103
//! bare-metal = "0.2.0"
100104
//! msp430 = "0.1.0"
101-
//! msp430-rt = "0.1.0"
102105
//! vcell = "0.1.0"
103106
//!
107+
//! [dependencies.msp430-rt]
108+
//! optional = true
109+
//! version = "0.1.0"
110+
//!
104111
//! [features]
105112
//! rt = ["msp430"]
106113
//! ```

0 commit comments

Comments
 (0)