Releases: LASTRADA-Software/Lightweight
Releases · LASTRADA-Software/Lightweight
v0.20260213.0
What's Changed
- Make Fixed and Dynamic string provide same interface by @Yaraslaut in #405
- Add DataMapperOptions template argument to the Create function by @Yaraslaut in #406
- Change BelongsTo API to have safe access to the elements when the entry is optional. by @Yaraslaut in #410
- Allow use entity as a const reference when loading belongs to fields by @Yaraslaut in #411
- Add sanitizers to the project and CI by @Yaraslaut in #414
- Add copilot-setup-steps.yml file to make sure it can get proper environment by @Yaraslaut in #417
- Copilot envornment fix by @Yaraslaut in #418
- Fix gcc compilation with pedantic flags by @Yaraslaut in #420
- Set modified flag to true by default and make datamapper to set it to false during loading by @Yaraslaut in #413
- Reenable -Wconversion warning by @christianparpart in #423
- QueryBuilder: Add support for WhereIn() with empty ranges not generating an
X IN ()sub expression by @christianparpart in #424 - Improve SQL migration API and introduce
dbtoolby @christianparpart in #425 - Add CreateCopyOf method to DataMapper for copying database records by @Copilot in #421
- Add reflection support to SQL Migration API by @christianparpart in #428
- Add presentation and combine it with docs by @Yaraslaut in #430
- Add more slides to the data mapper by @Yaraslaut in #431
- test suite UX improvements by @christianparpart in #434
- Add dbtool backup/restore and enhanced migration management by @christianparpart in #429
- Optimize dbtool backup pipelining and fix progress bar display issues by @christianparpart in #436
- Improve test experience on CI and locally by @christianparpart in #437
- Extend Migration API with data manipulation operations and add comprehensive documentation by @christianparpart in #435
- Add Claude Code GitHub Workflow by @christianparpart in #433
- minors all around sql backup refactors by @christianparpart in #438
- Refactor: Deduplicate SqlBackup test helpers by @christianparpart in #439
- Do not use CPM if nlohmann_json already exist by @Yaraslaut in #440
- Add Reddit announcement post for project launch by @christianparpart in #441
- Fix compilation for stdexec with pedantic flags by @Yaraslaut in #443
- Add tests with handling of nullable columns by @Yaraslaut in #444
New Contributors
- @Copilot made their first contribution in #421
Full Changelog: v0.20251202.0...v0.20260213.0
v0.20251202.0
What's Changed
- SqlNumeric: Fix static_assert's to properly assert at its limits by @christianparpart in #401
Full Changelog: v0.20251201.0...v0.20251202.0
v0.20251201.0
What's Changed
- [DataMapper] Extend api to reduce compilation times by @Yaraslaut in #382
- Introduce types for the maximum size strings by @Yaraslaut in #383
- Rename readme file by @Yaraslaut in #385
- [DataMapper] Add Exist api that reuse First() implementation by @Yaraslaut in #386
- [DataMapper] Fix bug when sqlguid was create during write even if already set by @Yaraslaut in #388
- [CI] In clang-format check add action to fix format directly by @Yaraslaut in #387
- Update readme file by @Yaraslaut in #389
- [clang-tidy] update clang-tidy file and fix readability-redundant-typename by @Yaraslaut in #394
- [DataMapper] Implement Delete query builder by @Yaraslaut in #392
- Improve reliability of SqlNumeric support on MS SQL and add support for SQLite. by @Yaraslaut in #393
- [DataMapper] Expose some api directly from datamapper by @Yaraslaut in #390
- Fixes some test case random breakage. by @christianparpart in #396
- [clang-tidy] fix last bits of new version by @Yaraslaut in #395
- Add simple test that is using stdexec by @Yaraslaut in #398
- Fixes directory that is used when trying to figure out version by @Yaraslaut in #400
- Rework DataMapper (inter-thread and BelongsTo/etc) access by @christianparpart in #399
Full Changelog: v0.20251104.0...v0.20251201.0
v0.20251104.0
What's Changed
- Do not std::move() error info when throwing to improve debugging expe… by @christianparpart in #357
- Add some documentation in the readme and create new file how-to.md by @Yaraslaut in #358
- Add SqlDateTime decomposition into date and time by @Yaraslaut in #364
- Add one test for the belongs to relation by @Yaraslaut in #363
- [Reflection] Port datamapper to use c++26 reflection by @Yaraslaut in #344
- Fix and test strings formatting by @Yaraslaut in #365
- [DataMapper] Relationship autoloading by @Yaraslaut in #370
- [DataMapper] Use name aliases for update and delete in datamapper by @Yaraslaut in #374
- [DataMapper] Add tests for the heap allocation of the records by @Yaraslaut in #376
- Remove files that we do not need and write a readme for the benchmark run by @Yaraslaut in #377
- Add foreign keys loading in chinook example by @Yaraslaut in #378
- [DataMapper] Have a common API for datamapper to query tuples by @Yaraslaut in #375
- Remove some noisy api from
BelongsToby @Yaraslaut in #379 - [DataMapper] Have a common api to load relationships by @Yaraslaut in #380
- [docs] Creates examples of SQL to datamapper mappings by @Yaraslaut in #381
Full Changelog: v0.20250904.0...v0.20251104.0
v0.20250904.0
What's Changed
- Adds
NowUTCapi to sql date time by @Yaraslaut in #356 - Update
Queryfunctions to check if we can bind values by @Yaraslaut in #355 - Rename QuotedFieldName into FullyQualifiedName by @Yaraslaut in #354
Full Changelog: v0.20250902.0...v0.20250904.0
v0.20250902.0
What's Changed
- Add compile-time helper
QualifiedColumnName<"TableName.ColumnName">for constructing qualified column name by @Yaraslaut in #342 - Introduce c++26 reflection ci and some changes to compile by @Yaraslaut in #330
- DataMapper: Add
Query().All<&Record::field>()to conveniently query a single column of the table; mergeQuerySingle()andQuerySparse<>()toQuery<>()by @christianparpart in #338 - Handle null termination of the strings by @Yaraslaut in #323
- Rename FullFieldNameOf to QuotedFieldNameOf by @christianparpart in #346
- Drop belongs to name implementation by @Yaraslaut in #345
- [Reflection] Implementation of functions from utils using c++26 reflection by @Yaraslaut in #332
- Add benchmark of compilation time by @Yaraslaut in #348
- Add alias for SqlWideTrimmedFixedString by @Yaraslaut in #351
- Add new api function
QueryToTuplethat maps query into multiple types and returns a vector of the tuple by @Yaraslaut in #352
Full Changelog: v0.20250807.0...v0.20250902.0
v0.20250807.0
What's Changed
- Fix loading nullable fields by @christianparpart in #315
- Fix large variable char retrieval, requiring SQL_LONGVARCHAR rather than SQL_VARCHAR for MS SQL server by @christianparpart in #316
- Rename
DataMapper'sQuery(rawString, ...)toQueryRaw(rawString, ...)and cleanup and improve documentation along the way by @christianparpart in #317 - Introduce framework namespace Lightweight (alias: Light) by @christianparpart in #318
- ddl2cpp: Fix treating too many SQL column types as float rather than double by @christianparpart in #320
- [DataBinder] general string/array data code tidies/cleanups by @christianparpart in #325
- [ddl2cpp] Fix translation of CHAR(n) to become a SqlTrimmedFixedString<N, T> instead of variable sized fixed capacity string. by @christianparpart in #324
- [DataMapper] Code Cleanup, move some API out of DataMapper.hpp to keep that file cleaner by @christianparpart in #326
- [DataMapper] Adds
QuerySingle<Record>().Count()andQuerySingle<Record>().Scalar<&Record::Field>()by @christianparpart in #327 - [tests] Split up too large DataMapperTests.cpp into multiple smaller segments by @christianparpart in #328
- Drop
MFCStringLikeconcept and support by @christianparpart in #335 - SqlStatement: Add convenience method GetColumnOr(index, defaultValue) by @christianparpart in #337
- Add support for joining a table with an aliased table name by @christianparpart in #336
- [clang-tidy] Fix some reports or actively ignore some others (std C++ naming related) by @christianparpart in #329
Full Changelog: v0.20250717.0...v0.20250807.0
v0.20250717.0
What's Changed
- Various fixes (loading of nullable RelatedTo fields, and cmake VERSIONI/SOVERSION on Win hosts) by @Yaraslaut in #309
- CI: Make sure to run test from within windows by @Yaraslaut in #311
- Add ability to selectively force Unicode on non-unicode character columns by @christianparpart in #313
- Add Query<>().Where(...).Count() API to conveniently construct and execute SELECT COUNT queries by @christianparpart in #314
Full Changelog: v0.20250714.0...v.0.20250717.0
v0.20250714.0
What's Changed
- Fix clang-tidy warnings and make them as errors by @Yaraslaut in #303
- Fixes mixed queries requiring pre-binding parameters and not pre-binding parameters by @Yaraslaut and @christianparpart in #306
- Make sure to use config file for the clang-tidy by @Yaraslaut in #307
- Add support for NULL-able BelongsTo<> values. by @Yaraslaut and @christianparpart in #305
- [SqlQuery] Insert: fix function signature for ToSql() by @christianparpart in #308
Full Changelog: v0.20250627.0...v0.20250714.0
v0.20250627.0
What's Changed
- Improve Version.cmake to also work as sub project by @christianparpart in #299
- Add support for chain of
BelongsTofields by @Yaraslaut in #300 - SqlLogger: Add SetLoggingSink(...) to allow customizing the logging sink and don't auto-spawn/attach to console on Windows. by @christianparpart in #302
Full Changelog: v0.20250619.0...v0.20250627.0