Skip to content

Latest commit

Β 

History

History
243 lines (214 loc) Β· 19.7 KB

CHANGELOG.md

File metadata and controls

243 lines (214 loc) Β· 19.7 KB

Changelog

v1.2.0 (2023-05-22)

What's Changed

This release includes a highly experimental and unsupported SQLite backend. It will be improved in future releases.

Fixed Bugs πŸ›

  • Fix compatibility with C# driver by @b1ron in FerretDB#2613
  • Fix a bug with unset field sorting by @rumyantseva in FerretDB#2638
  • Return int64 values for dbStats and collStats by @AlekSi in FerretDB#2642
  • Return command error from findAndModify by @chilagrow in FerretDB#2646
  • Fix index creation on nested fields by @wqhhust in FerretDB#2637

Enhancements πŸ› 

Documentation πŸ“„

Other Changes πŸ€–

  • Bump deps by @AlekSi in FerretDB#2592
  • Remove TODO comment for closed issue by @adetunjii in FerretDB#2573
  • Add experimental integration test flag for pushdown sorting by @noisersup in FerretDB#2595
  • Extract handler parameters from corresponding structure by @w84thesun in FerretDB#2513
  • Add shell subcommands (mkdir, rmdir) in envtool by @kropidlowsky in FerretDB#2596
  • Add basic postcondition checker for errors by @AlekSi in FerretDB#2607
  • Add sqlite handler stub by @AlekSi in FerretDB#2608
  • Make protocol-level crashes easier to understand by @AlekSi in FerretDB#2610
  • Simplify envtool shell subcommands by @AlekSi in FerretDB#2614
  • Cleanup old Docker images by @wqhhust in FerretDB#2533
  • Fix exponential backoff minimum duration by @noisersup in FerretDB#2578
  • Fix count's query parameter by @w84thesun in FerretDB#2622
  • Add a README.md file for assertions by @b1ron in FerretDB#2569
  • Use ExtractParameters in handlers by @w84thesun in FerretDB#2620
  • Verify OP_MSG message checksum by @adetunjii in FerretDB#2540
  • Separate codebase for aggregation $project and query projection by @chilagrow in FerretDB#2631
  • Implement envtool shell read subcommand by @wqhhust in FerretDB#2626
  • Cleanup projection by @chilagrow in FerretDB#2641
  • Add common backend interface prototype by @AlekSi in FerretDB#2619
  • Add SQLite handler flags by @AlekSi in FerretDB#2651
  • Add tests for aggregation expressions with dots in $group aggregation stage by @rumyantseva in FerretDB#2636
  • Implement some SQLite backend commands by @AlekSi in FerretDB#2655
  • Fix tests to assert correct error by @chilagrow in FerretDB#2546
  • Aggregation expression refactor by @noisersup in FerretDB#2644
  • Move common commands to commoncommands by @AlekSi in FerretDB#2660
  • Add basic observability into backend interfaces by @AlekSi in FerretDB#2661
  • Implement metadata storage by @w84thesun in FerretDB#2656
  • Add Query to the common backend interface by @AlekSi in FerretDB#2662
  • Implement query request for SQLite backend by @w84thesun in FerretDB#2665
  • Add test case for read in envtools by @wqhhust in FerretDB#2657
  • Run integration tests for sqlite handler by @AlekSi in FerretDB#2666
  • Bump deps by @AlekSi in FerretDB#2671
  • Create SQLite directory if needed by @AlekSi in FerretDB#2673
  • Implement SQLite update and delete commands by @w84thesun in FerretDB#2674

New Contributors

All closed issues and pull requests. All commits.

v1.1.0 (2023-05-09)

New Features πŸŽ‰

  • Implement projection fields assignment by @w84thesun in FerretDB#2484
  • Implement $project pipeline aggregation stage by @w84thesun in FerretDB#2383
  • Handle create and drop commands in Hana handler by @polyal in FerretDB#2458
  • Implement renameCollection command by @b1ron in FerretDB#2343

Fixed Bugs πŸ›

  • Fix findAndModify for $exists query operator by @chilagrow in FerretDB#2385
  • Fix SchemaStats to return correct data by @rumyantseva in FerretDB#2426
  • Fix findAndModify for $set operator setting _id by @chilagrow in FerretDB#2507
  • Fix update for conflicting dot notation paths by @chilagrow in FerretDB#2521
  • Fix $ path errors for sort by @chilagrow in FerretDB#2534
  • Fix empty projections panic by @w84thesun in FerretDB#2562
  • Fix runCommand's inserts of documents without _ids by @kropidlowsky in FerretDB#2574

Enhancements πŸ› 

  • Validate scale param for dbStats and collStats correctly by @rumyantseva in FerretDB#2418
  • Allow database name contain uppercase characters by @syasyayas in FerretDB#2504
  • Add identifying Arch Linux version in hostInfo command by @kropidlowsky in FerretDB#2525
  • Handle absent os-release file by @kropidlowsky in FerretDB#2541
  • Improve handling of os-release files by @kropidlowsky in FerretDB#2553

Documentation πŸ“„

  • Document test script by @chilagrow in FerretDB#2353
  • Use draft instead of unlisted by @AlekSi in FerretDB#2372
  • Make example docker compose file restart on failure by @noisersup in FerretDB#2376
  • Document how to get logs by @chilagrow in FerretDB#2355
  • Update writing guide by @Fashander in FerretDB#2373
  • Add comments to our documentation workflow by @AlekSi in FerretDB#2390
  • Add blogpost: Announcing FerretDB 1.0 GA - a truly Open Source MongoDB alternative by @AlekSi in FerretDB#2397
  • Update documentation for index options by @AlekSi in FerretDB#2417
  • Add query pushdown documentation by @noisersup in FerretDB#2339
  • Update README.md to link to SSPL by @cooljeanius in FerretDB#2420
  • Improve documentation for Docker by @AlekSi in FerretDB#2396
  • Add more detailed PR guides in CONTRIBUTING.md by @AuruTus in FerretDB#2435
  • Remove a few double spaces by @AlekSi in FerretDB#2431
  • Add image for a future blog post by @AlekSi in FerretDB#2453
  • Add blogpost - Using FerretDB with Studio 3T by @AlekSi in FerretDB#2454
  • Fix YAML indentation by @AlekSi in FerretDB#2455
  • Update blog post on Using FerretDB with Studio3T by @Fashander in FerretDB#2457
  • Document createIndexes, listIndexes, and dropIndexes commands by @Fashander in FerretDB#2488

Other Changes πŸ€–

  • Allow setting "package" variable with a testing flag by @AlekSi in FerretDB#2357
  • Make it easier to use Docker-related Task targets by @AlekSi in FerretDB#2358
  • Do not mark released binaries as dirty by @AlekSi in FerretDB#2371
  • Make Docker Compose flags compatible by @AlekSi in FerretDB#2377
  • Bump dependencies by @AlekSi in FerretDB#2367
  • Fix version.txt generation for git tags by @AlekSi in FerretDB#2388
  • Fix types order linter by @AlekSi in FerretDB#2391
  • Cleanup deprecated errors by @chilagrow in FerretDB#2411
  • Bump deps by @AlekSi in FerretDB#2408
  • Use parallel tests consistently by @chilagrow in FerretDB#2409
  • Compress CI artifacts by @noisersup in FerretDB#2424
  • Use exponential backoff with jitter by @j0holo in FerretDB#2419
  • Add Mergify rules for blog posts by @AlekSi in FerretDB#2434
  • Migrate to pgx/v5 by @craigpastro in FerretDB#2439
  • Make it harder to misuse iterators by @AlekSi in FerretDB#2428
  • Update PR template by @AlekSi in FerretDB#2441
  • Rename testing flag by @AlekSi in FerretDB#2437
  • Fix compilation on riscv64 by @afiskon in FerretDB#2456
  • Cleanup exponential backoff with jitter by @chilagrow in FerretDB#2443
  • Add workaround for CockroachDB issue by @AlekSi in FerretDB#2464
  • Implement blog posts previews by @noisersup in FerretDB#2433
  • Introduce integration benchmarks by @noisersup in FerretDB#2381
  • Add tests to findAndModify on $exists operator by @chilagrow in FerretDB#2422
  • Bump deps by @AlekSi in FerretDB#2479
  • Refactor aggregation by @chilagrow in FerretDB#2463
  • Tweak documentation by @AlekSi in FerretDB#2452
  • Fix query projection for top level fields by @w84thesun in FerretDB#2386
  • Handle envtool panic on timeout by @syasyayas in FerretDB#2499
  • Enable debugging tracing of SQL queries by @craigpastro in FerretDB#2467
  • Update blog file names to match with slug by @chilagrow in FerretDB#2497
  • Add benchmark for replacing large document by @noisersup in FerretDB#2482
  • Add more documentation-related items to definition of done by @rumyantseva in FerretDB#2494
  • Return unsupported operator error for $ projection operator by @w84thesun in FerretDB#2512
  • Use update_available from Beacon by @chilagrow in FerretDB#2496
  • Use iterator in aggregation stages by @chilagrow in FerretDB#2480
  • Increase timeout for tests by @rumyantseva in FerretDB#2508
  • Add InsertMany benchmark by @raeidish in FerretDB#2518
  • Add coveralls.io integration by @noisersup in FerretDB#2483
  • Add linter for checking blog posts by @raeidish in FerretDB#2459
  • Add a YAML formatter by @wqhhust in FerretDB#2485
  • Fix collStats for Tigris by @rumyantseva in FerretDB#2520
  • Small addition to YAML formatter usage by @rumyantseva in FerretDB#2524
  • Cleanup of blog post linter for slug by @chilagrow in FerretDB#2526
  • Pushdown simplest sorting for find command by @noisersup in FerretDB#2506
  • Move handlers/pg/pjson to handlers/sjson by @craigpastro in FerretDB#2531
  • Check test database name length in compat test setup by @chilagrow in FerretDB#2527
  • Document not ready issues label by @AlekSi in FerretDB#2544
  • Remove version and name assertions in integration tests by @raeidish in FerretDB#2552
  • Add helpers for iterators and generators by @AlekSi in FerretDB#2542
  • Do various small cleanups by @AlekSi in FerretDB#2561
  • Pushdown simplest sorting for aggregate command by @noisersup in FerretDB#2530
  • Move handlers parameters to common by @w84thesun in FerretDB#2529
  • Use our own Prettier Docker image by @AlekSi in FerretDB#2535
  • Improve fuzzing with recorded seed data by @fenogentov in FerretDB#2392
  • Add proper CLI to envtool - envtool setup subcommand by @kropidlowsky in FerretDB#2570
  • Recover from more errors, close connection less often by @AlekSi in FerretDB#2564
  • Tweak issue templates and contributing docs by @AlekSi in FerretDB#2572
  • Refactor integration benchmarks by @AlekSi in FerretDB#2537
  • Do panic in integration tests if connection can't be established by @rumyantseva in FerretDB#2577
  • Small refactoring by @AlekSi in FerretDB#2575
  • Merge no ci label into not ready by @AlekSi in FerretDB#2580

New Contributors

All closed issues and pull requests. All commits.

v1.0.0 (2023-04-03)

What's Changed

We are delighted to announce the release of FerretDB 1.0 GA!

New Features πŸŽ‰

  • Support $sum accumulator of $group aggregation by @chilagrow in FerretDB#2292
  • Implement createIndexes command by @rumyantseva in FerretDB#2244
  • Add basic getMore command by @AlekSi in FerretDB#2309
  • Implement dropIndexes command by @chilagrow in FerretDB#2313
  • Implement $limit aggregation pipeline stage by @noisersup in FerretDB#2270
  • Add partial support for collStats, dbStats and dataSize by @AlekSi in FerretDB#2322
  • Implement $skip aggregation pipeline stage by @w84thesun in FerretDB#2310
  • Implement $unwind aggregation pipeline stage by @noisersup in FerretDB#2294
  • Support count and storageStats fields in $collStats aggregation pipeline stage by @rumyantseva in FerretDB#2338

Fixed Bugs πŸ›

Documentation πŸ“„

  • Update supported command for $sum aggregation operator by @chilagrow in FerretDB#2318
  • Add supported shells and GUIs images by @AlekSi in FerretDB#2323
  • Publish FerretDB v0.9.4 blog post by @Fashander in FerretDB#2268
  • Use dashes instead of underscores or spaces by @AlekSi in FerretDB#2329
  • Update documentation sidebar by @Fashander in FerretDB#2347
  • Update FerretDB descriptions by @AlekSi in FerretDB#2281
  • Improve flags documentation by @AlekSi in FerretDB#2331
  • Describe supported fields for $collStats aggregation stage by @rumyantseva in FerretDB#2352

Other Changes πŸ€–

  • Use iterators for sort, limit, skip, and projection by @AlekSi in FerretDB#2254
  • Bump dependencies by @AlekSi in FerretDB#2307
  • Improve resource tracking by @AlekSi in FerretDB#2319
  • Add tests for find's and count's skip argument by @w84thesun in FerretDB#2325
  • Close iterator properly by @AlekSi in FerretDB#2333
  • Improve large numbers initialization in test data by @noisersup in FerretDB#2324
  • Ignore unique index option for now by @AlekSi in FerretDB#2350

All closed issues and pull requests. All commits.

Older Releases

See https://github.com/FerretDB/FerretDB/blob/v1.0.0/CHANGELOG.md.