Releases: litedb-org/LiteDB
Releases · litedb-org/LiteDB
v5-rc
New
- Collation: define culture and sort comparer options to your database
Shrink
was renamed toRebuild
with change password/change collation option- Move some engine options to
Pragmas
- Rename
ConnectionMode.Embedded
toConnectionType.Direct
- Adding EnsureIndex method in Repository pattern
- Support JsonEx syntax for special data types in BsonExpression parser
- Create
$page_list
and$dump(pageID)
system collections - Do not allow current document in aggregation expressions
- Lot of bugfixes
BREAKING: Datafiles created with v5-alpha/beta
are not compatible with this version. You must re-create your datafile using v5-rc
v5-beta
New
- Be compatible with NETStandard 1.3
- Add back
UserVersion
forLiteEngine
andLiteDatabase
- Support for
ISet<T>
- Implement
EnumAsInteger
inBsonMapper
for better LINQ support - Shell tool in
netcore3.0
- Upgrade to VS2019
v5-alpha2
New
- Removed LiteDB.Studio (moved to another repo)
- Added back LiteDB.Shell (netcore tool) for SQL commands
- Implement
Shrink
- Create
MAP
andFILTER
expression methods:MAP(children => age)
FILTER(items => price > 100)
- Add expression methods:
REMOVE_KEYS
,OID_CREATIONDATE
,TO_LOCAL
,TO_UTC
,DISTINCT
,UNION
,EXCEPT
,TOP
- Added support for custom ctor in classes to
BsonDocument
mapperpublic People(string name) { this.Name = name; }
- Remove LINQ
GroupBy<T, K>
(must useBsonExpression
) - Added transaction monitor to manage how memory LiteDB pages will use in transactions
- Implement first
SharedConnection
to keep database closed after each command (can be used for multiple processes in same machine) - BugFixes (see commit log)
v5-alpha
Here is the new alpha version of LiteDB v5. It's an alpha version, so that means it's not ready for production yet! The API may change and data format can also change before final release. But we would be very pleased if you could test the new version and give feedback or report any issues that you stumble upon.
New major version
- Complete new engine - WAL (Write Ahead Log)
- MultiVersion Concurrency Control (Snapshots & Checkpoint)
- Full transaction support
- Support for multiple readers without locking
- Write lock on collection-level instead of database-level
- Doubled the amount of indexes per collection, now up to 32 indexes per collection
- New
FileStorage
with customId
type - New
BsonExpressions
: transform, filter, map, reduce, .. - New Query Pipe inside engine
- Simple upgrade of existing LiteDB v4 databases (use
upgrade=true
in connection string) - New Linq visitor (with support for more expressions)
- New fluent
Query
- And more than one year of hard working!!
SQL Support
- New SQL language support - very similar to ANSI SQL
- Select, Insert, Update, Delete, Create Index, Drop Index, Drop Collection, Explain
- Support for GroupBy, Having, Limit, Offset, OrderBy, Includes, ...
- System collections (get information about the database)
- Support to system function (import/export CSV/JSON)
LiteDB Studio
- New GUI for Windows
- Multi tab, multi thread, multi transactions
- Interact with your database and collections using SQL statements
Know issues
- Missing
Shrink
method andUserVersion
property - Curretly not completely compatible with LinqKit
PredicateBuilder
- Only single process for now (with multi thread support) - no multi process yet
v4.1.4
v4.1.3
v3.1.5
v4.1.2
Bugfix
- Fix DateTime UTC in index Min/Max
- Initial size with encryption #929
- Better message when using OSX about file lock
- Remove System.Threading reference for netstandard
- Fix collection sequence in shrink #899
- Fix shrink lock page #892
- Fix NextIndex dictionary
New
- Add "flush" option in connection string (support direct in disk flush after write operation)
v4.1.1
New
- New expression
ITEMS
method (convert array into IEnumerable) - New expression
ALL
method (returntrue
only if all conditions aretrue
) -ALL($.Items[*].Price > 0) = true
Bugfix
v4.1.0
News 4.1
- Add UTC deserialization support (use utc=true on connection string)
- New FindSort operation with paging (experimental)
- New TempDiskService for temporary database
- New shell detail help
help <command>
- Bugfix initial data-size
- Bugfix logger ctor #776 @parabola949
- Expressions:
- Add support to
Document
syntax:new BsonExpression("{_id: 1, name: 'John'}")
- Add support to
Array
syntax:new BsonExpression("[1, 'two', false]")
- Add document function:
EXTEND()
- Add cast functions:
INT()
,DOUBLE()
,STRING()
,DATE()
... - Add date functions:
DATEADD()
,DATEDIFF()
,YEAR()
,MONTH()
,DAY()
- Add support to