Commit Graph

170 Commits

Author SHA1 Message Date
Luke Tomkus
742e1fa57a Allow NSObject Wrap to handle lists of maps/dicts.
Add corresponding test case.
2025-04-27 15:26:10 -04:00
cf62f6c3d1 Merge pull request #82 from JohannStudanskiEnscape/ValuePreprocessor
Integrate a way to set up custom value preprocessors
2025-03-09 02:29:18 +00:00
9deb855acf Merge pull request #81 from qmfrederik/features/nbgv
Add NerdBank.GitVersioning support
2025-01-28 02:16:34 +00:00
Johann Studanski
d83ebcaf66 Remove superfluous using 2025-01-27 18:25:33 +01:00
Johann Studanski
b507a380fb Cleanup for NSString and NSDate, too 2025-01-27 18:21:22 +01:00
Johann Studanski
44f0fcc763 More cleanup, handle binary parsing more cleanly 2025-01-27 18:06:12 +01:00
Johann Studanski
12794730dc Apply some auto-formatting changes 2025-01-24 14:16:46 +01:00
Johann Studanski
462668f605 Some cleanup around the ValuePreprocessor 2025-01-23 17:04:01 +01:00
Johann Studanski
864cca7e7d Add basic unit tests, a little cleanup 2025-01-21 20:14:00 +01:00
Johann Studanski
eca9239b5c Fix typo 2025-01-21 19:59:07 +01:00
Johann Studanski
9e53befd46 Add call to preprocessors in the plist parsers 2025-01-21 19:58:45 +01:00
Johann Studanski
e4a29b7e2a Basic value preprocessor implementation 2025-01-21 19:54:52 +01:00
Frederik Carlier
0d30b8f444 Add NerdBank.GitVersioning support
This commit adds [NerdBank.GitVersioning](https://www.nuget.org/packages/Nerdbank.GitVersioning), which gives every build of plist-cil a unique version number.

The base version number is stored in `version.json` (e.g. 2.2) and is incremented by 1 every time a commit is added.  Builds off branches contain a `+g{commit}` suffix, indicating that these builds are prerelease.

This makes it easier to keep track of different versions of plist-cil.
2025-01-08 21:09:37 +01:00
Frederik Carlier
0e334f995d NSString: Use SecurityElement.Escape to escape XML characters 2025-01-08 20:47:15 +01:00
Frederik Carlier
c2f1a50919 Update target frameworks, NuGet dependencies
This commit:

- Updates the .NET versions which are being targetted to:
  * .NET 4.6.2 (.NET 4.5 has been out of support for a very long time)
  * net6.0 and net8.0, net5.0 and netstandard have been out of support for a very long time
- Updates the various NuGet packages which are referenced to the latest version
2025-01-08 19:38:39 +01:00
aec9675375 Bump version. 2021-04-30 13:08:04 +01:00
19756723a3 Code refactor and clean-up to follow new C# 9 conventions and features where applicable. 2021-04-30 13:06:04 +01:00
Frederik Carlier
4f74157938 Add .NET 5.0 support
While we're at it, clean up the conditional compliation constants and dependencies:
- Define `SPAN_NATIVE` on all platforms _except_ `net45` and `netstandard2.0` (so it's defined automatically on new .NET versions)
- Only add `System.Memory` dependency on `net45` and `netstandard2.0`.
- Fix `NATIVE_SPAN` typo
- Remove obsolete `NETCORE` preprocessor variable.
2021-04-21 12:03:00 +02:00
b97e989089 Merge pull request #62 from quamotion/fixes/drop-net-core-1
Drop netstandard1.x and netcoreapp1.x
2020-08-24 23:12:02 +01:00
Frederik Carlier
c51328af91 Drop netstandard1.x and netcoreapp1.x 2020-08-19 17:26:00 +02:00
Frederik Carlier
997e9c3b4c XmlPropertyListParser: Support deserializing UID values 2020-04-27 23:02:49 +02:00
Frederik Carlier
18dbcc3148 Update XML representation of UIDs 2020-04-23 00:01:27 +02:00
45c043b395 Bump version. 2020-03-30 17:04:00 +01:00
2a69b63870 Add targeting for .NET Core 3.x. 2020-03-30 17:01:45 +01:00
Matthias Reitinger
3d27c13d73 Use invariant culture for formatting NSDate. 2019-10-15 08:55:07 +02:00
Matthias Reitinger
2e80020d00 Simplify NSDate.ParseDateString. 2019-10-15 08:51:34 +02:00
2566d63668 Set version to 2.0. Fixes #61 2019-09-21 00:53:20 +01:00
c914aa4f83 Set compatibility with .NET Core 2.2. 2019-09-21 00:43:14 +01:00
4d41f12b3e Merge pull request #60 from quamotion/fixes/write-byte
Use Stream.WriteByte, and don't allocate a new byte array
2019-06-12 18:37:27 +01:00
e90305388c Merge pull request #59 from quamotion/fixes/math-pow
Use 1 << exp instead of Math.Pow(2, exp)
2019-06-12 18:37:18 +01:00
a039fc690c Merge pull request #58 from quamotion/fixes/uid-touint64
Add UID.ToUInt64() method
2019-06-12 18:37:08 +01:00
8694497045 Merge pull request #57 from quamotion/fixes/uid-remove-deprecated
UID: Remove deprecated members
2019-06-12 18:36:48 +01:00
Frederik Carlier
467c9810c2 Don't forget to increment count. 2019-06-12 17:21:25 +02:00
Frederik Carlier
6fce83de96 Use Stream.WriteByte, and don't allocate a new byte array 2019-06-12 17:12:17 +02:00
Frederik Carlier
40dbb464a3 Use 1 << exp instead of Math.Pow(2, exp) 2019-06-12 17:00:03 +02:00
Frederik Carlier
4ae00a54cb Add UID.ToUInt64() 2019-06-12 15:15:10 +02:00
Frederik Carlier
ee4f4728be UID: Remove deprecated members 2019-06-12 15:13:27 +02:00
Frederik Carlier
e5fa322513 Add unit tests for the various constructors 2019-06-02 00:35:19 +02:00
Frederik Carlier
b9c41214c4 Support reading 16-byte (128-bit) NSNumber values, as well as non-power-of-2 sized values 2019-06-02 00:05:18 +02:00
bdbce8d547 Remove require of license aceptance to make travis compile. 2019-04-23 23:23:26 +01:00
e9ed2d67e6 Update version to 1.60. 2019-04-23 22:44:12 +01:00
b1266b48c4 Merge pull request #51 from quamotion/features/extensibility
BinaryPropertyListParser/Writer: Add extensibility points
2018-10-18 22:53:18 +01:00
7ab97dba37 Merge pull request #53 from quamotion/sourcelink
Use https, SouceLink
2018-10-18 22:53:11 +01:00
Frederik Carlier
a1aa160759 Use https, SouceLink 2018-10-16 18:52:48 +02:00
Frederik Carlier
d90b780040 Add missing using statement for net45 2018-10-16 18:33:20 +02:00
Frederik Carlier
66f86cff10 BinaryPropertyListParser/Writer: Add extensibility points 2018-10-16 18:27:27 +02:00
c109d2c76b Code cleanup and refactor. 2018-07-09 19:57:08 +01:00
9f65fa8d12 Update package version. 2018-07-09 19:30:36 +01:00
Frederik Carlier
6a96ff142c Add NS.string as primitive 2018-06-26 17:10:44 +02:00
Frederik Carlier
a035dd5056 Update list of serialization primitives 2018-06-26 15:56:42 +02:00