1# uefi-macros - [Unreleased]
2
3
4# uefi-macros - 0.17.0 (2024-10-23)
5
6## Changed
7
8- **Breaking:** The `entry` no longer accepts any arguments.
9
10
11# uefi-macros - 0.16.0 (2024-09-09)
12
13## Changed
14
15- Internal updates to the `entry` macro related to
16  [Deprecating SystemTable/BootServices/RuntimeServices][funcmigrate].
17
18[funcmigrate]: ../docs/funcs_migration.md
19
20
21# uefi-macros - 0.15.0 (2024-08-20)
22
23## Changed
24
25- The `entry` macro now accepts a function with zero arguments in addition to
26  the two-argument form.
27
28
29# uefi-macros - 0.14.0 (2024-07-02)
30
31## Changed
32- The `entry` macro now sets the global system table pointer with `uefi::set_system_table`.
33
34## Removed
35- Removed the `cstr8` and `cstr16` macros. Use the declarative macros of the
36  same names exported by the `uefi` crate as a replacement.
37
38# uefi-macros - 0.13.0 (2023-11-12)
39
40## Changed
41- The dev-dependency on `uefi` is now path-only.
42
43# uefi-macros - 0.12.0 (2023-05-15)
44
45## Changed
46- The `unsafe_protocol` macro no longer makes protocols `!Send` and
47  `!Sync`. Protocols can only be used while boot services are active, and that's
48  already a single-threaded environment, so these negative traits do not have
49  any effect.
50- The `unsafe_protocol` macro now accepts the path of a `Guid` constant in
51  addition to a string literal.
52- The `cstr8` and the `cstr16` macros now both accept `(nothing)` and `""`
53  (empty inputs) to create valid empty strings. They include the null-byte.
54- The `entry` macro now works correctly with docstrings.
55
56# uefi-macros - 0.11.0 (2023-03-19)
57
58## Changed
59- Errors produced by the `entry` macro have been improved.
60
61# uefi-macros - 0.10.0 (2023-01-16)
62
63## Added
64- Added the `unsafe_protocol` macro to provide a slightly nicer way to
65  implement protocols.
66
67## Removed
68- The `unsafe_guid` attribute macro and `Protocol` derive macro have
69  been removed. For implementing protocols, use the `unsafe_protocol`
70  macro instead. For any other implementations of the `Identify` trait,
71  implement it directly.
72
73# uefi-macros - 0.9.0 (2022-11-15)
74
75## Added
76- Added a `guid!` macro. This is similar to `Guid::from_values`, but
77  takes a more convenient string argument like the `unsafe_guid!`
78  attribute macro.
79
80# uefi-macros - 0.8.0 (2022-09-09)
81
82## Changed
83- The `#[entry]` macro now calls `BootServices::set_image_handle` to set
84  the global image handle. Due to this change, the two arguments to main
85  must both be named (e.g. `image: Handle` and `_image: Handle` are both
86  OK, but not `_: Handle`).
87
88# uefi-macros - 0.7.1 (2022-08-26)
89
90## Changed
91- Relaxed the version requirements for the `proc-macro2`, `quote`, and
92  `sync` dependencies to allow earlier patch versions.
93
94# uefi-macros - 0.7.0 (2022-05-16)
95
96## Added
97- Added `cstr8` and `cstr16` macros for creating `CStr8`/`CStr16` string literals
98  at compile time.
99
100# uefi-macros - 0.6.1 (2022-03-15)
101
102## Changed
103- Updated to the 2021 edition.
104