Skip to content

Commit 950e803

Browse files
authored
Release v2.1.0 (#6)
* - release v2.1.0
1 parent 80d3d79 commit 950e803

4 files changed

Lines changed: 16 additions & 146 deletions

File tree

GitVersion.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
next-version: 2.0.0
1+
next-version: 2.1.0
22
tag-prefix: '[vV]'
33
mode: ContinuousDeployment
44
branches:

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2025 CØDE SHΔYK
3+
Copyright (c) 2026 CØDE SHΔYK
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
# <img src="https://github.com/CodeShayk/parsley.net/blob/master/Images/ninja-icon-16-1.png" alt="ninja" style="width:30px;"/> Parsley.Net v2.0.0
1+
# <img src="https://github.com/CodeShayk/parsley.net/blob/master/Images/parser-icon.png" alt="ninja" style="width:30px;"/> Parsley.Net v2.1.0
22
[![NuGet version](https://badge.fury.io/nu/Parsley.Net.svg)](https://badge.fury.io/nu/Parsley.Net) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/CodeShayk/Parsley.Net/blob/master/LICENSE.md)
33
[![GitHub Release](https://img.shields.io/github/v/release/CodeShayk/Parsley.Net?logo=github&sort=semver)](https://github.com/CodeShayk/Parsley.Net/releases/latest)
44
[![master-build](https://github.com/CodeShayk/parsley.net/actions/workflows/Master-Build.yml/badge.svg)](https://github.com/CodeShayk/parsley.net/actions/workflows/Master-Build.yml)
55
[![master-codeql](https://github.com/CodeShayk/parsley.net/actions/workflows/Master-CodeQL.yml/badge.svg)](https://github.com/CodeShayk/parsley.net/actions/workflows/Master-CodeQL.yml)
6+
[![.Net 10.0](https://img.shields.io/badge/.Net-10.0-blue)](https://dotnet.microsoft.com/en-us/download/dotnet/10.0)
67
[![.Net 9.0](https://img.shields.io/badge/.Net-9.0-blue)](https://dotnet.microsoft.com/en-us/download/dotnet/9.0)
78
[![.Net Framework 4.6.4](https://img.shields.io/badge/.Net-4.6.2-blue)](https://dotnet.microsoft.com/en-us/download/dotnet-framework/net46)
89
[![.Net Standard 2.0](https://img.shields.io/badge/.NetStandard-2.0-blue)](https://github.com/dotnet/standard/blob/v2.0.0/docs/versions/netstandard2.0.md)

src/Parsley/Parsley.csproj

Lines changed: 12 additions & 143 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net462;netstandard2.0;netstandard2.1;net9.0</TargetFrameworks>
4+
<TargetFrameworks>net462;netstandard2.0;netstandard2.1;net9.0;net10.0</TargetFrameworks>
55
<ImplicitUsings>disable</ImplicitUsings>
66
<Title>Parsley.Net</Title>
77
<Authors>CodeShayk</Authors>
88
<Company>CodeShayk</Company>
99
<Description>Parsley is a .Net utility to parse Fixed width or Delimiter separated file (eg.CSV). </Description>
10-
<PackageIcon>ninja-icon-16.png</PackageIcon>
10+
<PackageIcon>parser-icon.png</PackageIcon>
1111
<PackageReadmeFile>README.md</PackageReadmeFile>
1212
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
13-
<Copyright>Copyright (c) 2025 Code Shayk</Copyright>
13+
<Copyright>Copyright (c) 2026 Code Shayk</Copyright>
1414
<RepositoryType>git</RepositoryType>
1515
<PackageTags>tsv, csv, delimiter, delimited-files, delimited-data, fixed-width, comma-separated-values, comma-separated-fields, comma-separated-text, comma-separated-file, comma-separated, fixed-width-text, delimiter-string, delimiter-separated-values, fixed-width-parser, delimiter-separated-fields, delimiter-separated-text, delimiter-separated-file, fixed-width-file, fixed-width-format, delimiter-file, delimited-file</PackageTags>
1616
<IncludeSymbols>True</IncludeSymbols>
@@ -19,151 +19,20 @@
1919
<GenerateDocumentationFile>True</GenerateDocumentationFile>
2020
<PackageProjectUrl>https://github.com/CodeShayk/Parsley.Net/wiki</PackageProjectUrl>
2121
<RepositoryUrl>https://github.com/CodeShayk/Parsley.Net</RepositoryUrl>
22-
<PackageReleaseNotes># Release Notes - Parsley.Net v2.0.0
23-
24-
## Release Type: Major Release
25-
**Date**: 2025-10-13
26-
**Version**: 2.0.0
27-
28-
## Summary
29-
This major release represents a comprehensive evolution of the Parsley.Net library, incorporating all improvements from previous versions. The release includes critical bug fixes, performance enhancements, new features, and improved error handling, while maintaining complete backward compatibility. This consolidation brings together all improvements in a single, cohesive release.
30-
31-
## All Included Tasks
32-
33-
### Task 1: Fix Syntax Error in Parser.cs
34-
- **Priority**: Critical
35-
- **Category**: Bug Fix
36-
- **Change**: Removed unnecessary semicolon in Parse&lt;T&gt;(string[] lines) method
37-
- **Impact**: Zero functional impact on the library
38-
- **Backward Compatibility**: Fully compatible with existing code
39-
40-
### Task 2: Implement Memory-Efficient Streaming Option
41-
- **Priority**: High
42-
- **Category**: Enhancement
43-
- **Change**: NOT IMPLEMENTED - Skipped as requested in the original task
44-
- **Impact**: Feature not included in this release
45-
- **Backward Compatibility**: N/A
46-
47-
### Task 3: Enhance Error Reporting with Line Numbers
48-
- **Priority**: High
49-
- **Category**: Enhancement
50-
- **Change**: Added line number information and field names to parsing errors
51-
- **Impact**: Improved debugging experience for users
52-
- **Backward Compatibility**: Fully compatible - only changes error message content
53-
54-
### Task 4: Refactor Parallel Processing Implementation
55-
- **Priority**: Medium
56-
- **Category**: Performance &amp; Code Quality
57-
- **Change**: Replaced lock-based parallel processing with more efficient approach
58-
- **Impact**: Better performance and thread safety
59-
- **Backward Compatibility**: Fully compatible - internal implementation change only
60-
61-
### Task 5: Add Configuration Options
62-
- **Priority**: Medium
63-
- **Category**: Enhancement
64-
- **Change**: Implemented a ParseOptions class for flexible parsing configuration
65-
- **Impact**: More flexible parsing options with optional configuration
66-
- **Backward Compatibility**: Fully compatible - all existing code continues to work
67-
68-
### Task 6: Implement Result Pattern for Better Error Handling
69-
- **Priority**: Low
70-
- **Category**: Enhancement
71-
- **Change**: Added Result&lt;T&gt; or TryParse-style methods for explicit error handling
72-
- **Impact**: More explicit error handling for advanced scenarios
73-
- **Backward Compatibility**: Fully compatible - adds new methods while preserving existing ones
74-
75-
## Complete Changes
76-
77-
### Bug Fixes
78-
- Fixed syntax error that could cause compilation warnings
79-
- No API changes
80-
- No behavior changes for existing functionality
81-
- All existing functionality preserved
82-
83-
### Performance Enhancements
84-
- Improved parallel processing performance (replaced lock-based approach)
85-
- Memory-efficient streaming options for large file processing
86-
- Better performance without sacrificing thread safety
87-
88-
### New Features
89-
- IAsyncEnumerable&lt;T&gt; support for streaming large files
90-
- Enhanced error messages with line numbers and field names
91-
- ParseOptions class with configurable parsing behavior
92-
- Result&lt;T&gt;-based methods for explicit error handling
93-
- Support for skip header lines, custom delimiters, and other parsing options
94-
- TryParse-style methods for functional programming patterns
95-
96-
### API Extensions
97-
- New streaming methods added to IParser interface
98-
- Enhanced error reporting mechanisms
99-
- Configuration options through ParseOptions class
100-
- Result-pattern based parsing methods
101-
102-
## Breaking Changes
103-
- None. This release maintains complete backward compatibility.
104-
105-
## Testing
106-
- All existing unit tests pass
107-
- New tests added for streaming functionality
108-
- New tests added for configuration functionality
109-
- New tests added for Result pattern methods
110-
- Performance benchmarks show improvements
111-
- No regression issues detected
112-
- Backward compatibility verified
113-
114-
## Upgrade Instructions
115-
- Drop-in replacement for all previous versions (v1.1.5 and earlier)
116-
- No code changes required for existing functionality
117-
- New features can be adopted incrementally
118-
- Simply update the NuGet package reference
119-
120-
## Files Changed
121-
- src/Parsley/IParser.cs
122-
- src/Parsley/Parser.cs
123-
- src/Parsley/IFileLine.cs
124-
- src/Parsley/Resources.resx
125-
- src/Parsley/Resources.Designer.cs
126-
- src/Parsley/IocExtensions.cs
127-
- src/Parsley/Extensions.cs
128-
129-
## Key Improvements Summary
130-
131-
### 1. Code Quality &amp; Bug Fixes
132-
- Eliminated syntax error in Parser.cs
133-
- Improved code structure and maintainability
134-
135-
### 2. Memory Efficiency
136-
- Added streaming support for processing very large files
137-
- Reduced memory footprint when processing large datasets
138-
139-
### 3. Error Reporting
140-
- Enhanced error messages with line numbers
141-
- Added field/property context to errors
142-
- Better debugging experience for users
143-
144-
### 4. Performance
145-
- More efficient parallel processing implementation
146-
- Reduced locking bottlenecks
147-
- Better resource utilization
148-
149-
### 5. Flexibility
150-
- Configuration options through ParseOptions class
151-
- Multiple ways to use the library (traditional and functional patterns)
152-
- Better support for various parsing scenarios
153-
154-
### 6. Developer Experience
155-
- More intuitive API options
156-
- Better error diagnostics
157-
- Multiple usage patterns to choose from
158-
159-
This comprehensive release combines all the improvements from the incremental development path into a single, powerful version that provides maximum value to users while maintaining complete compatibility with existing codebases.</PackageReleaseNotes>
160-
<Version>2.0.0</Version>
22+
<PackageReleaseNotes>
23+
# Release Notes - Parsley.Net v2.1.0
24+
## Release Type: Minor Release: Targets .Net 10
25+
**Date**: 2026-03-13
26+
**Version**: 2.1.0
27+
</PackageReleaseNotes>
28+
29+
<Version>2.1.0</Version>
16130
<PackageRequireLicenseAcceptance>True</PackageRequireLicenseAcceptance>
16231
<AssemblyName>Parsley.Net</AssemblyName>
16332
</PropertyGroup>
16433

16534
<ItemGroup>
166-
<None Include="..\..\Images\ninja-icon-16.png">
35+
<None Include="..\..\Images\parser-icon.png">
16736
<Pack>True</Pack>
16837
<PackagePath>\</PackagePath>
16938
</None>

0 commit comments

Comments
 (0)