Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge release candidate code #4

Open
wants to merge 38 commits into
base: main
Choose a base branch
from

Conversation

dev-experience
Copy link
Owner

No description provided.

- Pass the config
- Fix `Xtz.StronglyTyped.Benchmark.Models.IntStructId.IsValid()`
- Add support for collection generation
- Fix `.ThrowIfInvalid()` for struct when inner type is `string`
- Add custom `.ToString()` for `DateTime` and `TimeSpan`
- Minor refactoring
- Add tests for structs with all supported inner types
- Extract `StronglyTypedNewtonsoftConverter` to a separate NuGet package
- Implement custom tricky conversions when reader reads value of a type different from a target type
  - `long` -> `ushort`
  - `long` -> `int`
  - `long` -> `decimal`
  - `double` -> `decimal`
  - `double` -> `float`
  - `BigInteger` -> `decimal`
  - `BigInteger` -> `ushort` (not sure if it's the case)
  - `BigInteger` -> `int` (not sure if it's the case)
  - `BigInteger` -> `long` (not sure if it's the case)
- Implement custom TimeSpan parsing from ISO-8601 format using `XmlConvert`
- Implement custom serialization for numbers
- Implement custom serialization for `bool`
- Use `JsonSerializerSettings` with `StronglyTypedNewtonsoftConverter` provided
- Add another strongly-typed property which is never set for tests with `null`
- Add strongly-typed models with all supported inner types
- Add `BoolTests`
- Add `SystemTextJsonTests` to test JSON serialization based on `System.Text.Json`
- Add tests for JSON serialization with `Newtonsoft.Json` based on `StronglyTypedNewtonsoftConverter`
- Add tests for JSON deserialization with `Newtonsoft.Json` based on `StronglyTypedNewtonsoftConverter`
- Fix tests (many are failing now)
- Uncomment accidentially commented out tests
- Fix `StronglyTypedNewtonsoftConverter` (`Newtonsoft.Json` converter)
- Fix `StronglyTypedJsonConverter<TStronglyTyped>` (`System.Text.Json` converter)
- Fix tests
- Add usings
- Remove redundant namespaces usage
- Split `IEquatable.Equals()` implementation into two (struct, class)
- Handle `nullable`
- Replace customly-implemented types by `[StrongType(...)]`
- Drop `IConvertible` support
- Add `Microsoft.CodeAnalysis.BannedApiAnalyzers`
- Add `Microsoft.CodeAnalysis.CSharp.CodeStyle`
- Add `Microsoft.CodeAnalysis.NetAnalyzers`
- Add `Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers`
- Add `Roslynator.Analyzers`
- Add `Roslynator.CodeAnalysis.Analyzers`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant