All Versions
22
Latest Version
Avg Release Cycle
66 days
Latest Release
1358 days ago

Changelog History
Page 2

  • v5.0.0-alpha2 Changes

    September 24, 2019

    πŸ†• New

    • βœ‚ Remove LiteDB.Studio (moved to another repo)
    • βž• Add back LiteDB.Shell (netcore tool) for SQL commands
    • Implement Shrink
    • Create MAP and FILTER expression methods:
      • MAP(children => age)
      • FILTER(items => price > 100)
    • Add expression methods: REMOVE_KEYS, OID_CREATIONDATE, TO_LOCAL, TO_UTC, DISTINCT, UNION, EXCEPT, TOP
    • βž• Add support for custom ctor in classes to BsonDocument mapper
      • public People(string name) { this.Name = name; }
    • βœ‚ Remove LINQ GroupBy<T, K> (must use BsonExpression)
    • βž• Add trasaction 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.0.0-alpha Changes

    August 04, 2019

    πŸš€ Here is new alpha version of LiteDB v5. It's alpha version, so is not ready for production! API may change, data file can also change before final release. Please, you, test and give any feedback on issues

    πŸ†• New major version

    • 🌲 Complete new engine - WAL (Write Ahead Log)
    • MultiVersion Concurrency Control (Snapshots & Checkpoint)
    • πŸ‘ Full transaction support
    • πŸ”’ Multi readers support, no lock
    • πŸ”’ Write lock per collection
    • Up to 32 indexes per collection
    • πŸ†• New FileStorage with custom Id type
    • πŸ†• New BsonExpressions: transform, filter, map, reduce, ..
    • πŸ†• New Query Pipe inside engine
    • ⬆️ Upgrade datafile from LiteDB v4 (use upgrade=true in connection string)
    • πŸ†• New Linq visitor (with support more expressions)
    • πŸ†• New fluent Query
    • And more than one year of hard working!!

    πŸ‘ SQL Support

    • πŸ†• New SQL language support - very similar with ANSI SQL
    • ⚑️ Select, Insert, Update, Delete, Create Index, Drop Index, Drop Collection
    • πŸ‘Œ Support GroupBy, Having, Limit, Offset, OrderBy, Includes, ...
    • System virtual collection (get information about database)
    • πŸ‘Œ Support to system function (import/export CSV/JSON)

    LiteDB Studio

    • πŸ†• New UI for Windows
    • Multi tab, multi thread, multi transactions
    • πŸ†• New LiteDB.Studio (for Windows) with SQL support

    Know issues

    • Missing Shrink, UserVersion, PredicateBuilder
    • πŸ‘ Only single process (with multi thread support) - no multi process yet
  • v4.1.4 Changes

    June 20, 2018
    • πŸ›  Fix IncludeAll missing method
  • v4.1.3 Changes

    May 28, 2018
    • βž• Added IncludeAll method
    • βž• Added LENGTH method expression
  • v4.1.2 Changes

    March 11, 2018

    πŸ›  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 Changes

    January 08, 2018

    πŸ†• New

    • πŸ†• New expression ITEMS method (convert array into IEnumerable)
    • πŸ†• New expression ALL method (return true only if all conditions are true) - ALL($.Items[*].Price > 0) = true

    πŸ›  Bugfix

    • BSON deserialization bug on hi concurrency access
    • 🐎 Performance issue about flush on HDD disk #836
    • βœ‚ Remove missing reference in Include #831
  • v4.1.0 Changes

    December 17, 2017

    πŸ†• 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()
  • v4.0.0 Changes

    October 18, 2017

    πŸš€ LiteDB v4 released

    πŸ†• New Features

    • βž• Add support to NETStandard 2.0 (with support to Shared mode)
    • πŸ†• New document Expression parser/executor - see Expression Wiki
    • πŸ‘Œ Support index creation with expressions

      col.EnsureIndex(x => x.Name, "LOWER($.Name)");col.EnsureIndex("GrandTotal", "SUM($.Items[*].Qtd * $.Items[*].Price)");

    • πŸ‘ Query with Include itΒ΄s supported in Engine level with ANY nested includes

      col.Include(x => x.Users) .Include(x => x.Users[0].Address) .Include(x => x.Users[0].Address.City) .Find(...)

    • πŸ‘Œ Support complex Linq queries using LinqQuery compiler (works as linq to object)

      • col.Find(x => x.Name == "John" && x.Items.Length.ToString().EndsWith == "0")
    • πŸ‘ Better execution plan (with debug info) in multi query statements

    • No more external journal file - use same datafile to store temporary data

    • πŸ›  Fixed concurrency problems (keeps thread/process safe)

    • Convert Query.And to Query.Between when possible

    • βž• Add support to Query.Between open/close interval

    • ⬆️ Same datafile from LiteDB v3 (no upgrade needed)

    Shell

    • πŸ†• New UPDATE/SELECT statements in shell
    • πŸ“œ Shell commands parser/executor are back into LiteDB.dll
    • πŸ‘ Better shell error messages in parser with position in error
    • πŸ–¨ Print query execution plan in debug
      πŸ‘€ (Seek([Age] > 10) and Filter([Name] startsWith "John"))
      (preparing to new visual LiteDB database management tool)

    Break changes

    • βœ‚ Remove transactions
    • βœ‚ Remove auto-id register function for custom type
    • βœ‚ Remove index definitions on mapper (fluent/attribute)
    • βœ‚ Remove auto create index on query execution. If the index is not found do full scan search (use EnsureIndex on initialize database)
  • v4.0.0-beta2 Changes

    October 02, 2017
    • βž• Add KEYS, MOD expression function
    • βž• Add support for ( and ) inside expressions
    • πŸ‘Œ Improve expression reader/parser
    • πŸ›  Bugfix: return _id when insert
    • πŸ›  Minor bugfixes
  • v4.0.0-beta1 Changes

    August 28, 2017

    Break changes

    • βœ‚ Remove transactions
    • βœ‚ Remove auto-id register function for custom type
    • βœ‚ Remove index definitions on mapper (fluent/attribute)
    • βœ‚ Remove auto create index on query execution. If the index is not found do full scan search (use EnsureIndex on initialize database)

    πŸ†• New Features

    • πŸ†• New Expressions/Path
    • πŸ†• New shell command: UPDATE fields only
    • πŸ†• New shell command: SELECT with transform
    • βœ‚ Remove physical journal file (store journal pages after file ends)
    • βž• Add auto-id in engine level with pre-defined common types
    • βž• Add collection sequence (ulong) to use in engine level auto-id
    • 0️⃣ Auto-id default true to _id with BsonType = ObjectId, Guid, DateTime, Int32 or Int64
    • βž• Add include in engine/document level with any level
    • πŸ‘ Compiled in NET35 for Unity3D support, NET40 and NETSTANDARD 1.3
    • Implement FilterDocument option in all query implementations (full scan document)
    • In Query.And use only one index side with full scan on other
    • πŸ‘€ Print query execution plan in Query.ToString() (Seek([Age] > 10) and Filter([Name] startsWith "John"))
    • Convert Query.And to Query.Between when possible
    • βž• Add support to Query.Between open/close interval
    • QueryLinq for non resolved linq expression on visitor col.Find(x => x.Id < 10 && x.Name.Length > 10)
    • πŸ‘Œ Support index creation with expressions
    • πŸ‘Œ Support expression on full searchs
    • πŸ‘ Better shell error messages in parser with position in error
    • πŸ›  Fix simple lock control (multi-read/single write) in thread/process. Removed reserved lock state
    • ⬆️ Upgrade to VS2017

    πŸ›  Bugfixes

    • Upload from local disk on storage
    • DateTime.Now indexed date (milliseconds problem)
    • When query using > or < must use same BsonType (do not returns null values)
    • βœ‚ Remove return Duplicate values in MultiKey indexes