Wez Furlong
a1610f689f
Allow direct String fields to match the empty string
...
Empty is not the same as missing, and the empty string
crops up a lot in upnp/dlna.
2024-06-07 14:52:42 +02:00
Dirkjan Ochtman
dfc5894edf
Provide more context in DuplicateValue errors
2024-06-07 13:58:52 +02:00
Wez Furlong
775bad82a4
really fix scalar enum namespace handling
...
It is actually important to consider the field name when provided,
otherwise we can incorrectly match fields with different names!
2024-06-07 13:39:14 +02:00
Wez Furlong
2156e100ee
fix in "URL is not a hyperlinke" in cargo doc
...
```
warning: this URL is not a hyperlink
--> /home/wez/wez-personal/instant-xml/instant-xml/src/de.rs:499:32
|
499 | /// Valid character ranges per https://www.w3.org/TR/xml/#NT-Char
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://www.w3.org/TR/xml/#NT-Char >`
|
= note: bare URLs are not automatically turned into clickable links
= note: `#[warn(rustdoc::bare_urls)]` on by default
```
2024-05-23 00:01:20 +02:00
Wez Furlong
5c0171b474
emit ::std::result::Result rather than unqualified Result
...
This fixes an issue where attempting to derive FromXml or ToXml
would fail if the embedding application had used something like
```
pub type Result<T> = std::result::Result<T, Error>;
```
2024-05-23 00:01:20 +02:00
Wez Furlong
3e72aa7ae3
fix erroneous debug assertion in nested namespace case
...
The assertion was checking to ensure that the emitted tag
had no prefix, which breaks the case where a prefix is
required, but only in debug builds!
2024-05-23 00:01:20 +02:00
Wez Furlong
05de91af02
fixup namespace handling for scalar enums
...
We need to match the default namespace from the type,
rather than the namespace from the associate id.
2024-05-23 00:01:20 +02:00
Nicholas Rempel
c584137ee5
Add support for comments
2024-04-06 14:26:49 -07:00
Nicholas Rempel
a199cc7b5c
Map default xml prefix
2024-04-04 08:57:35 +02:00
Dirkjan Ochtman
2b691c5131
Extend test to cover . and _, too
2024-04-02 07:19:39 +02:00
Dirkjan Ochtman
6b483b7e6d
Bump instant-xml-macros version to 0.4.2
2024-04-02 07:19:39 +02:00
Nicholas Rempel
78ed6a6730
Add test for namespace containing dash
2024-04-02 07:19:39 +02:00
Dirkjan Ochtman
7e3099c915
Enable namespace prefixes containing dashes
2024-04-02 07:19:39 +02:00
Dirkjan Ochtman
a0c114ed02
macros: prepare 0.4.1 release
2024-03-18 14:37:21 +01:00
dependabot[bot]
5009655734
Update heck requirement from 0.4 to 0.5
...
---
updated-dependencies:
- dependency-name: heck
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 14:26:19 +01:00
Beau Hartshorne
1d9b5f62ed
Add cover image ( #51 )
2024-02-28 11:13:54 -08:00
Dirkjan Ochtman
8e8dc10419
Bump MSRV to 1.61 (for memchr)
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
173997f07b
Bump version for semver-incompatible API changes
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
3372ccb981
Add basic support for CDATA
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
a6774baef4
Rename entities test case to escaping
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
edad589294
Escape entities in context iterator
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
efdf9334c7
Move decode() into de module
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
6ea31b721f
Remove impl FromXml for &str
...
This is a bit opinionated, but it helps avoid run-time panics from
doing the simple thing (&str) which is wrong in the face of
escaping strings. The overhead from `Cow` (both in terms of developer
experience and run-time performance) seems limited enough.
This also makes the next part a little easier.
2023-10-25 22:36:20 +02:00
Dirkjan Ochtman
4c04d71224
Add some test helpers
2023-10-25 22:36:20 +02:00
Craig Bester
2595da57ce
Decode hexadecimal character references
2023-10-23 12:38:39 +02:00
Craig Bester
366cc05b08
Decode decimal character references
2023-10-23 12:38:39 +02:00
Craig Bester
86784d7794
Reject unterminated ampersand entities
2023-10-23 12:38:39 +02:00
Dirkjan Ochtman
c89afc2553
Apply some clippy suggestions
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
6515ad2b4f
Bump versions to 0.3.2
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
c73a852e07
Avoid warnings for non-snake_case variable names
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
cd7a863d90
Explicitly set workspace resolver
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
82ca8a224e
Correctly handle multi-byte characters in string encoding
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
8be61f6017
Ignore macOS cruft
2023-09-15 13:04:46 +02:00
Dirkjan Ochtman
18396f4aa5
Bump version numbers for new release
2023-03-22 13:10:20 +01:00
Dirkjan Ochtman
27b39b6125
Refer to README from Cargo metadata
2023-03-22 13:10:20 +01:00
Dirkjan Ochtman
083cd567a1
Upgrade to syn 2
2023-03-21 15:28:10 +01:00
Dirkjan Ochtman
ff00c96ac9
Bump version to 0.3 for semver-incompatible change
2023-03-03 13:17:41 +01:00
Dirkjan Ochtman
5f6091528f
Implement ToXml for str instead of &str
2023-03-03 13:17:41 +01:00
Dirkjan Ochtman
3cfd2e4706
Initial version of README
2023-03-02 13:50:08 +01:00
Dirkjan Ochtman
a47e90038b
Bump version to 0.2
2023-02-28 17:29:59 +01:00
Dirkjan Ochtman
5058699765
Give inline accumulator type the same visibility as the target
2023-02-28 17:12:31 +01:00
Dirkjan Ochtman
f51e6ae063
Fix use of lifetimes in fields of transparent structs
2023-02-28 17:12:31 +01:00
Dirkjan Ochtman
a5795b9b2d
Add support for Cow<'_, [T]>
2023-02-28 17:06:49 +01:00
Dirkjan Ochtman
2e7a48a212
Add basic Cargo metadata
2023-02-27 10:53:34 +01:00
Dirkjan Ochtman
8cbb29b388
Avoid usage of bool::then_some()
2023-02-27 10:35:06 +01:00
Dirkjan Ochtman
8a958342d6
Check MSRV in CI
2023-02-27 10:35:06 +01:00
Dirkjan Ochtman
8c618ada79
Ignore attributes when looking for scalar values
2023-02-24 17:33:33 +01:00
Dirkjan Ochtman
8c2964b318
Improve support for raw identifier field names
2023-02-24 17:33:33 +01:00
Dirkjan Ochtman
6c4cd8bd55
Add test for incorrectly nested elements with transparent
2023-02-24 17:33:33 +01:00
Dirkjan Ochtman
786f035f76
Implement transparent mode for deserialization
2023-02-24 17:33:33 +01:00