Skip to content

Changelog

SmartSql is actively maintained at github.com/dotnetcore/SmartSql. The current version is 4.1.68, managed in build/version.props.

Version 4.1.68

Security update: Updated Npgsql dependency to 4.1.13 to address CVE security advisory.

Key Milestones

MilestoneDescription
Initial ReleaseCore ORM with XML-managed SQL, ISqlMapper, middleware pipeline architecture
Read/Write SplittingDataSourceFilter with weighted load balancing across read replicas (DataSourceFilter.cs)
CachingBuilt-in LRU and FIFO memory cache providers, Redis cache via SmartSql.Cache.Redis (Cache.cs)
Dynamic RepositoryIL emit-based interface-to-implementation proxy generation (DyRepository)
CUD ExtensionsConvention-based Insert/Update/Delete/GetById without XML (CUDSqlGenerator.cs)
Bulk InsertNative bulk copy for SqlServer, MsSqlServer, MySql, MySqlConnector, and PostgreSQL
DiagnosticsDiagnosticSource events for command execution, session lifecycle, and errors for APM tool integration
AOP Transactions[Transaction] attribute for declarative transaction management (SmartSql.AOP)
Cache SynchronizationCross-instance cache invalidation via SmartSql.Cache.Sync with Kafka/RabbitMQ
Data SynchronizationSmartSql.InvokeSync with Kafka and RabbitMQ publishers for event-driven sync
Property Change TrackingEnablePropertyChangedTrack for partial UPDATE statements that only modify changed fields
Auto ConvertersIAutoConverter system for automatic parameter conversion
Multiple Result SetsMultipleResultMap for paginated queries returning data + count in a single round-trip
Id GenerationBuilt-in SnowflakeId generator with IdGenerator tag support
Nested Property MappingDot-notation property paths in ResultMap (e.g., Prop1.Prop2.Prop3)
.NET 6 SupportUpdated to target both netstandard2.0 and net6.0 for test projects

Release History

Recent Releases

  • 4.1.68 -- Security: Updated Npgsql to 4.1.13
  • 4.1.67 -- Incremented patch version
  • 4.1.66 -- IPropertyHolder Property set to read-only; removed unused comments
  • 4.1.65 -- Fixed file character encoding from GBK to UTF-8

Core Library Stability

The core SmartSql package (src/SmartSql/) targets netstandard2.0 and maintains backward compatibility. Extension packages are versioned independently.

Package Versions

The version is centrally managed in build/version.props:

xml
<Project>
  <PropertyGroup>
    <Version>4.1.68</Version>
  </PropertyGroup>
</Project>

Cross-References

References

Released under the MIT License.