mbdavid/LiteDB (LiteDB)
### [`v5.0.19`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.19)
#### What's Changed
- Detect infinite loops in document or index node loops
- Switch to using PackageLicenseExpression by [@lahma](https://togithub.com/lahma) in [https://github.com/mbdavid/LiteDB/pull/2423](https://togithub.com/mbdavid/LiteDB/pull/2423)
- Add LiteDb.Migration to readme by [@JKamsker](https://togithub.com/JKamsker) in [https://github.com/mbdavid/LiteDB/pull/2429](https://togithub.com/mbdavid/LiteDB/pull/2429)
- Fix issue: Id is null when anon. type is de/-serialized by [@JKamsker](https://togithub.com/JKamsker) in [https://github.com/mbdavid/LiteDB/pull/2433](https://togithub.com/mbdavid/LiteDB/pull/2433)
#### New Contributors
- [@lahma](https://togithub.com/lahma) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2423](https://togithub.com/mbdavid/LiteDB/pull/2423)
- [@JKamsker](https://togithub.com/JKamsker) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2429](https://togithub.com/mbdavid/LiteDB/pull/2429)
**Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.18...v5.0.19
### [`v5.0.18`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.18)
##### What's New
- Added "AutoRebuild" option in Connection String
In this version, the Rebuild command has been completely redesigned to be able to recover a full or partial database in case of data corruption. When detecting a structural error (known as the ENSURE exception) the data file will be modified to indicate that this file may be corrupt. When reopening the database, a rebuild process can be performed recovering as much data as possible. Use the "auto-rebuild=true" option in the connection string to activate this functionality. Possible errors found during the rebuild process will be stored in a new collection called "\_rebuild_errors". A backup of the original file is created with the "-backup" suffix
##### What's Changed
- Fixed left side IndexNode pointer to tail
- Added `readonly` to fields whose values are never modified or used as `ref` arguments by [@Lehonti](https://togithub.com/Lehonti) in [https://github.com/mbdavid/LiteDB/pull/2352](https://togithub.com/mbdavid/LiteDB/pull/2352)
- Clarify LiteDB.FSharp version support by [@TeaDrivenDev](https://togithub.com/TeaDrivenDev) in [https://github.com/mbdavid/LiteDB/pull/2389](https://togithub.com/mbdavid/LiteDB/pull/2389)
- Bugfix for [https://github.com/mbdavid/LiteDB/issues/2385](https://togithub.com/mbdavid/LiteDB/issues/2385) Also adds full record support by fixing this bug. by [@athendrix](https://togithub.com/athendrix) in [https://github.com/mbdavid/LiteDB/pull/2384](https://togithub.com/mbdavid/LiteDB/pull/2384)
- ResolveMember Extension by [@pjy612](https://togithub.com/pjy612) in [https://github.com/mbdavid/LiteDB/pull/2236](https://togithub.com/mbdavid/LiteDB/pull/2236)
- Fix Rebuild so that it truncates the database file correctly by [@hizume](https://togithub.com/hizume) in [https://github.com/mbdavid/LiteDB/pull/2413](https://togithub.com/mbdavid/LiteDB/pull/2413)
- Fix all kind of typos by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2410](https://togithub.com/mbdavid/LiteDB/pull/2410)
- Simplified DiskWriterQueue with blocking concurrency by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2411](https://togithub.com/mbdavid/LiteDB/pull/2411)
- Disk problems by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2412](https://togithub.com/mbdavid/LiteDB/pull/2412)
- chore: throw exception when encounter unpaired surrogate instead of replace with U+FFFD by [@anatawa12](https://togithub.com/anatawa12) in [https://github.com/mbdavid/LiteDB/pull/2415](https://togithub.com/mbdavid/LiteDB/pull/2415)
- New updates from master by [@mbdavid](https://togithub.com/mbdavid) in [https://github.com/mbdavid/LiteDB/pull/2420](https://togithub.com/mbdavid/LiteDB/pull/2420)
- v5.0.18 by [@mbdavid](https://togithub.com/mbdavid) in [https://github.com/mbdavid/LiteDB/pull/2425](https://togithub.com/mbdavid/LiteDB/pull/2425)
##### New Contributors
- [@Lehonti](https://togithub.com/Lehonti) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2352](https://togithub.com/mbdavid/LiteDB/pull/2352)
- [@TeaDrivenDev](https://togithub.com/TeaDrivenDev) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2389](https://togithub.com/mbdavid/LiteDB/pull/2389)
- [@athendrix](https://togithub.com/athendrix) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2384](https://togithub.com/mbdavid/LiteDB/pull/2384)
- [@hizume](https://togithub.com/hizume) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2413](https://togithub.com/mbdavid/LiteDB/pull/2413)
- [@ltetak](https://togithub.com/ltetak) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2410](https://togithub.com/mbdavid/LiteDB/pull/2410)
- [@anatawa12](https://togithub.com/anatawa12) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2415](https://togithub.com/mbdavid/LiteDB/pull/2415)
**Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.17...v5.0.18
### [`v5.0.17`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.17)
#### What's Changed
- Fix AesStream Invalid Password exception in corrupted files by [@anurakt27](https://togithub.com/anurakt27) in [https://github.com/mbdavid/LiteDB/pull/2344](https://togithub.com/mbdavid/LiteDB/pull/2344)
- Update LockService.cs to fix "The read lock is being released without being held" error. Fix for [#641](https://togithub.com/mbdavid/LiteDB/issues/641), 1637, 1993, 2017 by [@mathis1337](https://togithub.com/mathis1337) in [https://github.com/mbdavid/LiteDB/pull/2280](https://togithub.com/mbdavid/LiteDB/pull/2280)
- Ambigous match found by [@Luigi6821](https://togithub.com/Luigi6821) in [https://github.com/mbdavid/LiteDB/pull/2332](https://togithub.com/mbdavid/LiteDB/pull/2332)
- Fix for issue: [https://github.com/mbdavid/LiteDB/issues/2307](https://togithub.com/mbdavid/LiteDB/issues/2307) by [@m-omerovic](https://togithub.com/m-omerovic) in [https://github.com/mbdavid/LiteDB/pull/2317](https://togithub.com/mbdavid/LiteDB/pull/2317)
- Fix [#2300](https://togithub.com/mbdavid/LiteDB/issues/2300) issue with big collection sort by [@matsakiv](https://togithub.com/matsakiv) in [https://github.com/mbdavid/LiteDB/pull/2302](https://togithub.com/mbdavid/LiteDB/pull/2302)
- Update README.md by [@namigop](https://togithub.com/namigop) in [https://github.com/mbdavid/LiteDB/pull/2296](https://togithub.com/mbdavid/LiteDB/pull/2296)
- Added Seek and Position setter for LiteFileStream.Read by [@mr-sven](https://togithub.com/mr-sven) in [https://github.com/mbdavid/LiteDB/pull/2148](https://togithub.com/mbdavid/LiteDB/pull/2148)
- Added unique error codes to encryption-related exceptions by [@arcanelab](https://togithub.com/arcanelab) in [https://github.com/mbdavid/LiteDB/pull/2259](https://togithub.com/mbdavid/LiteDB/pull/2259)
#### New Contributors
- [@anurakt27](https://togithub.com/anurakt27) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2344](https://togithub.com/mbdavid/LiteDB/pull/2344)
- [@mathis1337](https://togithub.com/mathis1337) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2280](https://togithub.com/mbdavid/LiteDB/pull/2280)
- [@Luigi6821](https://togithub.com/Luigi6821) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2332](https://togithub.com/mbdavid/LiteDB/pull/2332)
- [@m-omerovic](https://togithub.com/m-omerovic) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2317](https://togithub.com/mbdavid/LiteDB/pull/2317)
- [@matsakiv](https://togithub.com/matsakiv) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2302](https://togithub.com/mbdavid/LiteDB/pull/2302)
- [@namigop](https://togithub.com/namigop) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2296](https://togithub.com/mbdavid/LiteDB/pull/2296)
- [@mr-sven](https://togithub.com/mr-sven) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2148](https://togithub.com/mbdavid/LiteDB/pull/2148)
- [@arcanelab](https://togithub.com/arcanelab) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2259](https://togithub.com/mbdavid/LiteDB/pull/2259)
**Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.16...v5.0.17
### [`v5.0.16`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.16)
#### What's Changed
- use only mutex for Shared engine open and close synchronization and remove locks by [@dev-joshi](https://togithub.com/dev-joshi) in [https://github.com/mbdavid/LiteDB/pull/2293](https://togithub.com/mbdavid/LiteDB/pull/2293)
- Fix Min(Func\) handling by [@gcrossland-cosworth](https://togithub.com/gcrossland-cosworth) in [https://github.com/mbdavid/LiteDB/pull/2287](https://togithub.com/mbdavid/LiteDB/pull/2287)
- Change return type of ILiteRepository.Insert to match ILiteDatabase.Insert by [@InvisiblePhil](https://togithub.com/InvisiblePhil) in [https://github.com/mbdavid/LiteDB/pull/2260](https://togithub.com/mbdavid/LiteDB/pull/2260)
- Fixed typo by [@iArmanKarimi](https://togithub.com/iArmanKarimi) in [https://github.com/mbdavid/LiteDB/pull/2267](https://togithub.com/mbdavid/LiteDB/pull/2267)
- try fix SqlLike by [@pjy612](https://togithub.com/pjy612) in [https://github.com/mbdavid/LiteDB/pull/2235](https://togithub.com/mbdavid/LiteDB/pull/2235)
#### New Contributors
- [@dev-joshi](https://togithub.com/dev-joshi) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2293](https://togithub.com/mbdavid/LiteDB/pull/2293)
- [@gcrossland-cosworth](https://togithub.com/gcrossland-cosworth) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2287](https://togithub.com/mbdavid/LiteDB/pull/2287)
- [@InvisiblePhil](https://togithub.com/InvisiblePhil) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2260](https://togithub.com/mbdavid/LiteDB/pull/2260)
- [@iArmanKarimi](https://togithub.com/iArmanKarimi) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2267](https://togithub.com/mbdavid/LiteDB/pull/2267)
- [@pjy612](https://togithub.com/pjy612) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2235](https://togithub.com/mbdavid/LiteDB/pull/2235)
**Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.15...v5.0.16
### [`v5.0.15`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.15)
Fix [https://github.com/mbdavid/LiteDB/issues/1762](https://togithub.com/mbdavid/LiteDB/issues/1762)
### [`v5.0.14`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.14)
- Fix PR [#2227](https://togithub.com/mbdavid/LiteDB/issues/2227) (thanks to [@rainman-306](https://togithub.com/rainman-306))
### [`v5.0.13`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.13)
- Fix security vulnerability in deserialize bad json in .NET 4.5
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
5.0.12
->5.0.19
Release Notes
mbdavid/LiteDB (LiteDB)
### [`v5.0.19`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.19) #### What's Changed - Detect infinite loops in document or index node loops - Switch to using PackageLicenseExpression by [@lahma](https://togithub.com/lahma) in [https://github.com/mbdavid/LiteDB/pull/2423](https://togithub.com/mbdavid/LiteDB/pull/2423) - Add LiteDb.Migration to readme by [@JKamsker](https://togithub.com/JKamsker) in [https://github.com/mbdavid/LiteDB/pull/2429](https://togithub.com/mbdavid/LiteDB/pull/2429) - Fix issue: Id is null when anon. type is de/-serialized by [@JKamsker](https://togithub.com/JKamsker) in [https://github.com/mbdavid/LiteDB/pull/2433](https://togithub.com/mbdavid/LiteDB/pull/2433) #### New Contributors - [@lahma](https://togithub.com/lahma) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2423](https://togithub.com/mbdavid/LiteDB/pull/2423) - [@JKamsker](https://togithub.com/JKamsker) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2429](https://togithub.com/mbdavid/LiteDB/pull/2429) **Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.18...v5.0.19 ### [`v5.0.18`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.18) ##### What's New - Added "AutoRebuild" option in Connection String In this version, the Rebuild command has been completely redesigned to be able to recover a full or partial database in case of data corruption. When detecting a structural error (known as the ENSURE exception) the data file will be modified to indicate that this file may be corrupt. When reopening the database, a rebuild process can be performed recovering as much data as possible. Use the "auto-rebuild=true" option in the connection string to activate this functionality. Possible errors found during the rebuild process will be stored in a new collection called "\_rebuild_errors". A backup of the original file is created with the "-backup" suffix ##### What's Changed - Fixed left side IndexNode pointer to tail - Added `readonly` to fields whose values are never modified or used as `ref` arguments by [@Lehonti](https://togithub.com/Lehonti) in [https://github.com/mbdavid/LiteDB/pull/2352](https://togithub.com/mbdavid/LiteDB/pull/2352) - Clarify LiteDB.FSharp version support by [@TeaDrivenDev](https://togithub.com/TeaDrivenDev) in [https://github.com/mbdavid/LiteDB/pull/2389](https://togithub.com/mbdavid/LiteDB/pull/2389) - Bugfix for [https://github.com/mbdavid/LiteDB/issues/2385](https://togithub.com/mbdavid/LiteDB/issues/2385) Also adds full record support by fixing this bug. by [@athendrix](https://togithub.com/athendrix) in [https://github.com/mbdavid/LiteDB/pull/2384](https://togithub.com/mbdavid/LiteDB/pull/2384) - ResolveMember Extension by [@pjy612](https://togithub.com/pjy612) in [https://github.com/mbdavid/LiteDB/pull/2236](https://togithub.com/mbdavid/LiteDB/pull/2236) - Fix Rebuild so that it truncates the database file correctly by [@hizume](https://togithub.com/hizume) in [https://github.com/mbdavid/LiteDB/pull/2413](https://togithub.com/mbdavid/LiteDB/pull/2413) - Fix all kind of typos by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2410](https://togithub.com/mbdavid/LiteDB/pull/2410) - Simplified DiskWriterQueue with blocking concurrency by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2411](https://togithub.com/mbdavid/LiteDB/pull/2411) - Disk problems by [@ltetak](https://togithub.com/ltetak) in [https://github.com/mbdavid/LiteDB/pull/2412](https://togithub.com/mbdavid/LiteDB/pull/2412) - chore: throw exception when encounter unpaired surrogate instead of replace with U+FFFD by [@anatawa12](https://togithub.com/anatawa12) in [https://github.com/mbdavid/LiteDB/pull/2415](https://togithub.com/mbdavid/LiteDB/pull/2415) - New updates from master by [@mbdavid](https://togithub.com/mbdavid) in [https://github.com/mbdavid/LiteDB/pull/2420](https://togithub.com/mbdavid/LiteDB/pull/2420) - v5.0.18 by [@mbdavid](https://togithub.com/mbdavid) in [https://github.com/mbdavid/LiteDB/pull/2425](https://togithub.com/mbdavid/LiteDB/pull/2425) ##### New Contributors - [@Lehonti](https://togithub.com/Lehonti) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2352](https://togithub.com/mbdavid/LiteDB/pull/2352) - [@TeaDrivenDev](https://togithub.com/TeaDrivenDev) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2389](https://togithub.com/mbdavid/LiteDB/pull/2389) - [@athendrix](https://togithub.com/athendrix) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2384](https://togithub.com/mbdavid/LiteDB/pull/2384) - [@hizume](https://togithub.com/hizume) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2413](https://togithub.com/mbdavid/LiteDB/pull/2413) - [@ltetak](https://togithub.com/ltetak) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2410](https://togithub.com/mbdavid/LiteDB/pull/2410) - [@anatawa12](https://togithub.com/anatawa12) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2415](https://togithub.com/mbdavid/LiteDB/pull/2415) **Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.17...v5.0.18 ### [`v5.0.17`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.17) #### What's Changed - Fix AesStream Invalid Password exception in corrupted files by [@anurakt27](https://togithub.com/anurakt27) in [https://github.com/mbdavid/LiteDB/pull/2344](https://togithub.com/mbdavid/LiteDB/pull/2344) - Update LockService.cs to fix "The read lock is being released without being held" error. Fix for [#641](https://togithub.com/mbdavid/LiteDB/issues/641), 1637, 1993, 2017 by [@mathis1337](https://togithub.com/mathis1337) in [https://github.com/mbdavid/LiteDB/pull/2280](https://togithub.com/mbdavid/LiteDB/pull/2280) - Ambigous match found by [@Luigi6821](https://togithub.com/Luigi6821) in [https://github.com/mbdavid/LiteDB/pull/2332](https://togithub.com/mbdavid/LiteDB/pull/2332) - Fix for issue: [https://github.com/mbdavid/LiteDB/issues/2307](https://togithub.com/mbdavid/LiteDB/issues/2307) by [@m-omerovic](https://togithub.com/m-omerovic) in [https://github.com/mbdavid/LiteDB/pull/2317](https://togithub.com/mbdavid/LiteDB/pull/2317) - Fix [#2300](https://togithub.com/mbdavid/LiteDB/issues/2300) issue with big collection sort by [@matsakiv](https://togithub.com/matsakiv) in [https://github.com/mbdavid/LiteDB/pull/2302](https://togithub.com/mbdavid/LiteDB/pull/2302) - Update README.md by [@namigop](https://togithub.com/namigop) in [https://github.com/mbdavid/LiteDB/pull/2296](https://togithub.com/mbdavid/LiteDB/pull/2296) - Added Seek and Position setter for LiteFileStream.Read by [@mr-sven](https://togithub.com/mr-sven) in [https://github.com/mbdavid/LiteDB/pull/2148](https://togithub.com/mbdavid/LiteDB/pull/2148) - Added unique error codes to encryption-related exceptions by [@arcanelab](https://togithub.com/arcanelab) in [https://github.com/mbdavid/LiteDB/pull/2259](https://togithub.com/mbdavid/LiteDB/pull/2259) #### New Contributors - [@anurakt27](https://togithub.com/anurakt27) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2344](https://togithub.com/mbdavid/LiteDB/pull/2344) - [@mathis1337](https://togithub.com/mathis1337) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2280](https://togithub.com/mbdavid/LiteDB/pull/2280) - [@Luigi6821](https://togithub.com/Luigi6821) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2332](https://togithub.com/mbdavid/LiteDB/pull/2332) - [@m-omerovic](https://togithub.com/m-omerovic) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2317](https://togithub.com/mbdavid/LiteDB/pull/2317) - [@matsakiv](https://togithub.com/matsakiv) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2302](https://togithub.com/mbdavid/LiteDB/pull/2302) - [@namigop](https://togithub.com/namigop) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2296](https://togithub.com/mbdavid/LiteDB/pull/2296) - [@mr-sven](https://togithub.com/mr-sven) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2148](https://togithub.com/mbdavid/LiteDB/pull/2148) - [@arcanelab](https://togithub.com/arcanelab) made their first contribution in [https://github.com/mbdavid/LiteDB/pull/2259](https://togithub.com/mbdavid/LiteDB/pull/2259) **Full Changelog**: https://github.com/mbdavid/LiteDB/compare/v5.0.16...v5.0.17 ### [`v5.0.16`](https://togithub.com/mbdavid/LiteDB/releases/tag/v5.0.16) #### What's Changed - use only mutex for Shared engine open and close synchronization and remove locks by [@dev-joshi](https://togithub.com/dev-joshi) in [https://github.com/mbdavid/LiteDB/pull/2293](https://togithub.com/mbdavid/LiteDB/pull/2293) - Fix Min(Func\Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.