v0.8.0 Beta
What's Changed
We are pleased to announce our first Beta release!
Storage changes for PostgreSQL
We made a few backward-incompatible changes in the way we store data in PostgreSQL to improve FerretDB performance. In the future, those changes will allow us to use indexes and query collections faster.
To keep your data:
- backup FerretDB databases using
mongodump
ormongoexport
; - backup PostgreSQL database using
pg_dump
or other tool (just in case); - stop FerretDB;
- drop PostgreSQL views for FerretDB databases;
- start FerretDB 0.8;
- restore databases using
mongorestore
ormongoimport
.
Authentication
It is now possible to use the backend's authentication mechanisms in FerretDB. See documentation.
New Features 🎉
- Support
$min
field update operator by @chilagrow in #1652 - Support
ordered
argument forinsert
command by @noisersup in #1673 - Implement authentication for PostgreSQL by @AlekSi in #1725
Fixed Bugs 🐛
- Fix unset document being updated by invalid value of
$inc
by @chilagrow in #1685
Enhancements 🛠
Documentation 📄
- Add section for comparison and logical query operators by @Fashander in #1647
- Add documentation for element query operators by @Fashander in #1675
- Add documentation for array query operator by @Fashander in #1695
- Enable blog post section by @Fashander in #1700
Other Changes 🤖
- Simplify release procedure by @AlekSi in #1657
- Modify
pjson
format by @rumyantseva in #1620 - Bump deps by @AlekSi in #1664
- Remove leading space from
SELECT
queries by @noisersup in #1665 - Add
InTransactionRetry
helper by @rumyantseva in #1670 - Add
mongo
test script example by @AlekSi in #1600 - Use faster runner instances by @AlekSi in #1678
- Update issue templates by @w84thesun in #1671
- Bump Tigris version by @AlekSi in #1680
- Move update tests to compat tests by @chilagrow in #1659
- Add TODO comments by @AlekSi in #1687
- Add
saslStart
stub by @w84thesun in #1649 - Improve the way of storing data about collections by @rumyantseva in #1650
- Implement
iterator.Interface
fortypes.Document
andtypes.Array
by @w84thesun in #1683 - Improve issue template by @AlekSi in #1692
- Remove
$elemMatch
and$slice
projection operators by @chilagrow in #1698 - Add
currentOp
stub by @chilagrow in #1708 - Add basic benchmark for query pushdowns by @noisersup in #1689
- Enable authentication in PostgreSQL by @AlekSi in #1716
- Fix Docker build by @AlekSi in #1715
- Minor refactorings of iterators by @AlekSi in #1718
- Test
ordered
argument validation by @rumyantseva in #1719 - Add stub for getting client-specific connection by @AlekSi in #1723
- Add compat tests for
InsertOne
in addition toInsertMany
by @rumyantseva in #1726 - Run
govulncheck
on CI by @noisersup in #1729