This is an automated email from the ASF dual-hosted git repository. jan pushed a commit to branch doc/whats-new-3.4.0 in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 5479d10f14b44217a8494c0cf573f08463768e67 Author: Jan Lehnardt <j...@apache.org> AuthorDate: Tue Nov 28 16:09:00 2023 +0100 feat(doc): What’s new in 3.4.0? --- src/docs/src/conf.py | 4 +- src/docs/src/whatsnew/3.4.rst | 187 ++++++++++++++++++++++++++++++++++++++++ src/docs/src/whatsnew/index.rst | 1 + 3 files changed, 190 insertions(+), 2 deletions(-) diff --git a/src/docs/src/conf.py b/src/docs/src/conf.py index f8cce94a9..18c9c5e19 100644 --- a/src/docs/src/conf.py +++ b/src/docs/src/conf.py @@ -30,8 +30,8 @@ extensions = [ nitpicky = True # should be over-written using rebar-inherited settings -version = "3.3" -release = "3.3.0" +version = "3.4" +release = "3.4.0" project = "Apache CouchDB\u00ae" diff --git a/src/docs/src/whatsnew/3.4.rst b/src/docs/src/whatsnew/3.4.rst new file mode 100644 index 000000000..5cb8f3ae4 --- /dev/null +++ b/src/docs/src/whatsnew/3.4.rst @@ -0,0 +1,187 @@ +.. Licensed under the Apache License, Version 2.0 (the "License"); you may not +.. use this file except in compliance with the License. You may obtain a copy of +.. the License at +.. +.. http://www.apache.org/licenses/LICENSE-2.0 +.. +.. Unless required by applicable law or agreed to in writing, software +.. distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +.. WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +.. License for the specific language governing permissions and limitations under +.. the License. + +.. _release/3.4.x: + +============ +3.4.x Branch +============ + +.. contents:: + :depth: 1 + :local: + +.. _release/3.4.0: + +Version 3.4.0 +============= + + +Highlights +---------- + +* :ghissue:`4291`: Introducing Nouveau (beta) a modern, from-the-ground-up + implementation of Lucene-based full-text search for CouchDB. Please test + this thoroughly and report back any issues you might find. + + - Installation instructions // TODO LINK + - Report a bug // TODO LINK + +* :ghissue:`4570`, :ghissue:`4578`, :ghissue:`4576`: Adopt xxHash in favour + of md5 for ``couch_file`` checksums and ETag calculation. 30% performance + increase for large (128K) docs. No difference for smaller docs. + +* :ghissue:`4814`: Introduce PBKDF2-SHA256 for password hashing. The existing + PBKDF2-SHA1 variant is now deprecated. Increases the default iteration count + to ``500000``. Also introduce a password hash in-memory cache with a low + iteration number, to keep interactive requests fast for a fixed time. + + Entries in the password hash cache are time-limited, unused entries are + automatically deleted, and there is a capacity bound. + +* :ghissue:`4512`: Mango: add keys-only covering indexes. Improves query + response times for certain queries up to 10x at p(95). + +* :ghissue:`4681`: Introduce optional countermeasures as we run out of + disk space. + +* :ghissue:`4847`: Require auth for ``_replicate`` endpiont. This continues + the 3.x closed-by-default design goal. + +* Many small small performance improvements, see Performance section // TODO LINK + +Features and Enhancements +------------------------- + +* :ghissue:`4878`: Add an option to scrub some sensitive headers from external + json +* :ghissue:`4847`: Require auth for ``_replicate`` endpiont. +* :ghissue:`4834`: Wait for newly set admin creds to be hashed in setup. +* :ghissue:`4821`: Do not fail compactions if the last step is delayed + by ``ioq``. +* :ghissue:`4810`: Mango: add ``$beginsWith`` operator . +* :ghissue:`4769`: Improve replicator error handling. +* :ghissue:`4767`: Avoid ``badmatch`` in error cases. +* :ghissue:`4766`: Add new HTTP endpoint ``/_node/_local/_smoosh/status``. +* :ghissue:`4736`: Stop client process and clean up if client disconnects. +* :ghissue:`4703`: Add ``_purged_infos`` endpoint. +* :ghissue:`4685`: Add ``"CouchDB-Replicator/..."`` user agent to + replicator ``/_session`` requests +* :ghissue:`4702`, :ghissue:`4798`: Send session cookie on successful basic auth. +* :ghissue:`4680`: Shard splitting: allow resumption of failed jobs and + make timeout configurable. +* :ghissue:`4677`: Crash replication jobs on unexpected ``4xx`` errors. +* :ghissue:`4670`: Allow setting of additional ``ibrowse`` options + like ``prefer_ipv6``. +* :ghissue:`4662`: Mango: extend ``_explain`` with candidate indexes and + selector hints. +* :ghissue:`4625`: Add optional logging of security issues when + replicating. +* :ghissue:`4623`: Better upgrade handling of ``instance_start_time`` + in replicator. +* :ghissue:`4613`: Add option to suppress version info via HTTP header. +* :ghissue:`4601`: Add simple ``fabric`` benchmark. +* :ghissue:`4581`: Support Erlang/OTP 26. +* :ghissue:`4575`: Add ``{verify, verify_peer}`` for TLS validation. +* :ghissue:`4569`: Mango: add ``keys_examined`` for ``execution_stats``. +* :ghissue:`4558`: Make Erlang 24 the minimum supported Erlang version. + +Performance +----------- + +* :ghissue:`4852`: Optimise ``_active_tasks``. +* :ghissue:`4811`: Prevent delayed opener error from crashing index servers. +* :ghissue:`4786`, :ghissue:`4789`: Add extra timing stats for ``couch_js`` + engine commands. +* :ghissue:`4679`: Fix multipart parse “attachment longer than expected” + error. +* :ghissue:`4672`: Remove ``folsom`` and reimplement required functionality + with new Erlang/OTP primitives resulting in up to 19x faster historgram + operations. +* :ghissue:`4617`: Use a faster sets implementation available since OTP 24. +* :ghissue:`4608`: Add metrics for fsync calls and query engine operations. +* :ghissue:`4604`: 6x speedup for common `mem3:dbname/1`` function. +* :ghissue:`4603`: Update ``vm.args`` settings. +* :ghissue:`4598`: Speed up internal replicator. + +Bugfixes +-------- + +* :ghissue:`4837`: Fix update bug in ``ets_lru``. +* :ghissue:`4794`: Fix incorrect raising of ``database_does_not_exist`` error. +* :ghissue:`4784`: Fix parsing of node name from ``ERL_FLAGS1`` + in ``remsh``. +* :ghissue:`4782`, :ghissue:`4891`: Mango: prevent occasional + duplication of paginated text results. +* :ghissue:`4781`: Fix badrecord error when replicator is logging http usage. +* :ghissue:`4759`: TLS: use HTTP rules for hostname verification. +* :ghissue:`4758`: Remove sensitive headers from the mochiweb request in pdict. +* :ghissue:`4751`: Mango: correct behavour of ``fields`` on ``_explain``. +* :ghissue:`4722`: Fix badmatch error when purge requests time out. +* :ghissue:`4716`: Fix pending count for reverse changes feed. +* :ghissue:`4709`: Mango: improve handling of invalid fields. +* :ghissue:`4703`, :ghissue:`4703`: Fix empty facet search results. +* :ghissue:`4682: ``_design_doc/queries`` with ``keys`` should only return + design docs. +* :ghissue:`4669`: Allow for more than two replicator socket options. +* :ghissue:`4666`: Improve error handling in config API. +* :ghissue:`4659`: Mango: remove duplicates from ``indexable_fields/1`` + results. +* :ghissue:`4658`: Fix undefined range in mem3_rep purge replication logic. +* :ghissue:`4653`: Fix ability to use ``;`` inside of config values. +* :ghissue:`4629`: Fix prometheus to survive ``mem3_sync`` termination. +* :ghissue:`4626`: Fix purge infos replicating to the wrong shards + during shard splitting. +* :ghissue:`4602`: Fix error handling for the _index endpoint and + document ``_index/_bulk_delete``. +* :ghissue:`4594`: Mango: covering indexes crash on partitioned + databases. +* :ghissue:`4555`: Fix race condition when creating indexes. + +Tests +----- + +* :ghissue:`4873`: Fix test for `text` index creation. +* :ghissue:`4863`: Fix flaky ``users_db_security`` test. +* :ghissue:`4808`: Fix flaky ``couch_stream`` test. +* :ghissue:`4806`: Mango: do not skip json tests when Clouseau installed. +* :ghissue:`4803`: Fix flaky ``ddoc_cache`` test some more. +* :ghissue:`4766`: Fix flaky mem3 reshard test. +* :ghissue:`4763`: Plug hole in unit test coverage of view curser functions. +* :ghissue:`4726`: Support Elixir 1.15. +* :ghissue:`4691`: ``make elixir`` should match what we run in CI. +* :ghissue:`4632`: Fix test database recreation logic. +* :ghissue:`4630`: Add extra assert in flaky couch_file test. +* :ghissue:`4620`: Add Erlang/OTP 26 to Pull Request CI matrix. +* :ghissue:`4552`, :ghissue:`4553`: Fix flaky couchjs error test. + + +Docs +---- + +* :ghissue:`4774`: Amend description of ``use_index`` on ``/{db}/_find``. +* :ghissue:`4743`: Ban the laster monster. +* :ghissue:`4630`: Add ``_design_docs/queries`` and + ``_local_docs/queries``. +* :ghissue:`4645`: Add authenication data to examples. +* :ghissue:`4636`: Clarify default quorum calculation. +* :ghissue:`4551`: Clarify encoding length in performance.rst. + + +Builds +------ +* :ghissue:`4840`: Add Debian 12 (bookworm) to CI and binary packages. + +Other +----- + +What’s new Scooby Doo? // TODO insert scooby doo image \ No newline at end of file diff --git a/src/docs/src/whatsnew/index.rst b/src/docs/src/whatsnew/index.rst index bc92f938f..2d0649dc5 100644 --- a/src/docs/src/whatsnew/index.rst +++ b/src/docs/src/whatsnew/index.rst @@ -20,6 +20,7 @@ Release Notes :glob: :maxdepth: 2 + 3.4 3.3 3.2 3.1