| .. 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.1.x: |
| |
| ============ |
| 3.1.x Branch |
| ============ |
| |
| .. contents:: |
| :depth: 1 |
| :local: |
| |
| .. _release/3.1.2: |
| |
| Version 3.1.2 |
| ============= |
| |
| This is a security release for a *low severity* vulnerability. Details of |
| the issue will be published one week after this release. See the `CVE |
| database <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38295>`_ |
| for details at a later time. |
| |
| .. _release/3.1.1: |
| |
| Version 3.1.1 |
| ============= |
| |
| Features and Enhancements |
| ------------------------- |
| |
| .. rst-class:: open |
| |
| * :ghissue:`3102`, :ghissue:`1600`, :ghissue:`2877`, :ghissue:`2041`: When a |
| client disconnects unexpectedly, CouchDB will no longer log a "``normal : |
| unknown``" error. Bring forth the rainbows. |
| |
| .. figure:: ../../images/gf-gnome-rainbows.png |
| :align: center |
| :alt: The Gravity Falls gnome pukes some rainbows for us. |
| |
| * :ghissue:`3109`: Drilldown parameters for text index searches may now be |
| specified as a list of lists, to avoid having to define this redundantly |
| in a single query. (Some languages don't have this facility.) |
| |
| * :ghissue:`3132`: The new ``[chttpd] buffer_response`` option can be enabled |
| to delay the start of a response until the end has been calculated. This |
| increases memory usage, but simplifies client error handling as it |
| eliminates the possibility that a response may be deliberately |
| terminated midway through, due to a timeout. This config value may be |
| changed at runtime, without impacting any in-flight responses. |
| |
| Performance |
| ----------- |
| |
| Bugfixes |
| -------- |
| |
| * :ghissue:`2935`: The replicator now correctly picks jobs to restart during |
| rescheduling, where previously with high load it may have failed to try to |
| restart crashed jobs. |
| |
| * :ghissue:`2981`: When handling extremely large documents (≥50MB), CouchDB |
| can no longer time out on a ``gen_server:call`` if bypassing the IOQ. |
| |
| * :ghissue:`2941`: CouchDB will no longer fail to compact databases if it |
| finds files from a 2.x compaction process (prior to an upgrade) on disk. |
| |
| * :ghissue:`2955` CouchDB now sends the correct CSP header to ensure |
| Fauxton operates correctly with newer browsers. |
| |
| * :ghissue:`3061`, :ghissue:`3080`: The `couch_index` server won't crash |
| and log errors if a design document is deleted while that index is |
| building, or when a ddoc is added immediately after database creation. |
| |
| * :ghissue:`3078`: CouchDB now checks for and complains correctly about |
| invalid parameters on database creation. |
| |
| * :ghissue:`3090`: CouchDB now correctly encodes URLs correctly when |
| encoding the ``atts_since`` query string. |
| |
| * :ghissue:`2953`: Some parameters not allowed for text-index queries on |
| partitioned database are now properly validated and rejected. |
| |
| * :ghissue:`3118`: Text-based search indexes may now be cleaned up |
| correctly, even if the design document is now invalid. |
| |
| * :ghissue:`3121`: ``fips`` is now only reported in the welcome message |
| if FIPS mode was enabled at boot (such as in ``vm.args``). |
| |
| * :ghissue:`3128`: Using :method:`COPY` to copy a document will no longer |
| return a JSON result with two ``ok`` fields. |
| |
| * :ghissue:`3138`: Malformed URLs in replication requests or documents |
| will no longer throw an error. |
| |
| Other |
| ----- |
| |
| * JS tests skip faster now. |
| |
| * More JS tests ported into elixir: ``reader_acl``, ``reduce_builtin``, |
| ``reduce_false``, ``rev_stemming``, ``update_documents``, |
| ``view_collation_raw``, ``view_compaction``, all the |
| ``view_multi_key`` tests, ``view_sandboxing``, |
| ``view_update_seq``. |
| |
| .. _release/3.1.0: |
| |
| Version 3.1.0 |
| ============= |
| |
| Features and Enhancements |
| ------------------------- |
| |
| .. rst-class:: open |
| |
| * :ghissue:`2648`: Authentication via :ref:`JSON Web Token (JWT) <api/auth/jwt>`. Full |
| documentation is at the friendly link. |
| |
| * :ghissue:`2770`: CouchDB now supports linking against SpiderMonkey 68, the current |
| Mozilla SpiderMonkey ESR release. This provides direct support for packaging on the |
| latest operating system variants, including Ubuntu 20.04 "Focal Fossa." |
| |
| * A new Fauxton release is included, with updated dependencies, and a new optional |
| CouchDB news page. |
| |
| Performance |
| ----------- |
| |
| .. rst-class:: open |
| |
| * :ghissue:`2754`: Optimized compactor performance, resulting in a 40% speed improvement |
| when document revisions approach the ``revs_limit``. The fixes also include additional |
| metrics on size tracking during the sort and copy phases, accessible via the |
| :get:`GET /_active_tasks </active_tasks>` endpoint. |
| |
| * A big bowl of candy! OK, no, not really. If you got this far...thank you for reading. |