Skip to content

Commit 048ae2c

Browse files
committed
Add v3.0.0 changelog
1 parent c924fce commit 048ae2c

1 file changed

Lines changed: 89 additions & 9 deletions

File tree

CHANGELOG.md

Lines changed: 89 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,102 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.0.0] - 2026-01-27
9+
10+
### 🎉 Major Release: Multi-Engine Architecture
11+
12+
This release transforms SentimentAnalyzer from a single ML.NET-based package into a modular, multi-engine sentiment analysis suite with 4 distinct NuGet packages.
13+
14+
### New Packages
15+
16+
#### SentimentAnalyzer.Core 3.0.0
17+
18+
- **New Package**: Lightweight VADER-based sentiment analysis (<1 MB)
19+
- Uses VaderSharp2 for rule-based sentiment scoring
20+
- ~75% accuracy on general sentiment tasks
21+
- No ML model files required
22+
- Perfect for size-constrained applications
23+
24+
#### SentimentAnalyzer.Onnx 3.0.0
25+
26+
- **New Package**: High-accuracy TinyBERT transformer model (~18 MB)
27+
- 94.2% accuracy on sentiment classification
28+
- Embedded ONNX model (no external downloads)
29+
- Supports .NET Standard 2.0, .NET 8, and .NET 10
30+
- Cross-platform (Windows, Linux, macOS, iOS, Android)
31+
32+
#### SentimentAnalyzer.Onnx.Multilingual 3.0.0
33+
34+
- **New Package**: Multilingual DistilBERT model supporting 104 languages
35+
- ~88% accuracy across multiple languages
36+
- Downloads 270 MB model on first use (cached locally)
37+
- Async download support with progress reporting
38+
- Fixed HuggingFace ONNX export bug (correctly exported model hosted on GitHub Releases)
39+
40+
### SentimentAnalyzer 3.0.0 (Legacy)
41+
42+
- Maintained for backward compatibility
43+
- Upgraded ML.NET from 1.5.5 to 5.0.0
44+
- No API changes - drop-in replacement for v2.x
45+
- Multi-targeting: .NET Standard 2.0, .NET 8, .NET 10
46+
47+
### New Features
48+
49+
- **Fluent Builder API**: `SentimentAnalyzer.CreateBuilder().UseVader().Build()`
50+
- **ISentimentEngine Interface**: Create custom sentiment engines
51+
- **Thread-Safe**: All engines are thread-safe and can be reused
52+
- **Comprehensive Test Suite**: 58 tests across Core.Tests and integration tests
53+
- **Sample Applications**: Console, Blazor WASM, MAUI, BenchmarkDotNet samples
54+
55+
### Architecture Changes
56+
57+
- Modular design allowing mix-and-match of engines
58+
- Shared core abstractions (`ISentimentEngine`, `SentimentResult`, `SentimentLabel`)
59+
- Package size optimization (choose what you need)
60+
61+
### Documentation
62+
63+
- Comprehensive README with engine comparison table
64+
- Performance benchmarks and accuracy metrics
65+
- Migration guide for v2.x users
66+
- API reference for all packages
67+
68+
### Breaking Changes from 2.x
69+
70+
- New namespace structure (see migration guide)
71+
- Builder pattern required for new engines
72+
- Legacy `Sentiments.Predict()` API moved to SentimentAnalyzer package
73+
74+
### Model Hosting
75+
76+
- TinyBERT model: Embedded in SentimentAnalyzer.Onnx package
77+
- DistilBERT model: Hosted on GitHub Releases (correctly exported ONNX model)
78+
- Vocab files: Downloaded from HuggingFace
79+
880
## [2.0.0] - 2026-01-22
981

1082
### Added
83+
1184
- Multi-targeting support for `.NET Standard 2.0`, `.NET 8`, and `.NET 10`
1285
- Package README included in NuGet package
1386
- Additional package tags for better discoverability
1487

1588
### Changed
89+
1690
- **Upgraded ML.NET from 1.5.5 to 5.0.0** - This is a major dependency upgrade
1791
- Updated package description and metadata
1892
- Test project upgraded to .NET 8 with latest test framework versions
1993

2094
### Compatibility
95+
2196
This release maintains **full backward compatibility** with v1.x:
97+
2298
- The API (`Sentiments.Predict(text)`) remains unchanged
2399
- The `SentimentPrediction` model is unchanged
24100
- Existing code will work without modifications
25101

26102
### Migration Guide
103+
27104
No code changes required. Simply update your package reference:
28105

29106
```xml
@@ -35,28 +112,31 @@ No code changes required. Simply update your package reference:
35112
```
36113

37114
### Platform Support
38-
| Platform | Supported |
39-
|----------|-----------|
115+
116+
| Platform | Supported |
117+
| --------------------- | ----------------------- |
40118
| .NET Framework 4.6.1+ | ✅ (via netstandard2.0) |
41-
| .NET Core 2.0+ | ✅ (via netstandard2.0) |
42-
| .NET 5/6/7 | ✅ (via netstandard2.0) |
43-
| .NET 8 (LTS) | ✅ Native |
44-
| .NET 10 (LTS) | ✅ Native |
45-
| .NET MAUI ||
46-
| Blazor (Server/WASM) ||
47-
| Unity | ✅ (via netstandard2.0) |
119+
| .NET Core 2.0+ | ✅ (via netstandard2.0) |
120+
| .NET 5/6/7 | ✅ (via netstandard2.0) |
121+
| .NET 8 (LTS) | ✅ Native |
122+
| .NET 10 (LTS) | ✅ Native |
123+
| .NET MAUI | |
124+
| Blazor (Server/WASM) | |
125+
| Unity | ✅ (via netstandard2.0) |
48126

49127
---
50128

51129
## [1.2.3] - 2021-xx-xx
52130

53131
### Changed
132+
54133
- Performance improvements using singleton pattern
55134
- Based on ML.NET version 1.5.5
56135

57136
## [1.0.0] - 2020-xx-xx
58137

59138
### Added
139+
60140
- Initial release
61141
- Binary sentiment analysis (positive/negative)
62142
- Offline, on-device prediction

0 commit comments

Comments
 (0)