Skip to content

docs: Release 1.33 news doc #168

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 48 commits into from
Sep 18, 2024
Merged
Show file tree
Hide file tree
Changes from 18 commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
e57bf56
docs: add CLI doc draft
JTorreG Aug 1, 2024
9c7093f
docs: update based on feedback
JTorreG Aug 6, 2024
46704bb
docs: update CLI
JTorreG Aug 6, 2024
404516e
Apply suggestions from code review
JTorreG Aug 6, 2024
3d8cf53
Apply suggestions from code review
JTorreG Aug 6, 2024
e7169b3
Apply suggestions from code review
JTorreG Aug 6, 2024
2e40b88
Update source/unitctl.rst
JTorreG Aug 6, 2024
c75c10a
Update source/unitctl.rst
JTorreG Aug 6, 2024
aa1d932
Update source/unitctl.rst
JTorreG Aug 6, 2024
94f91e3
Update source/unitctl.rst
JTorreG Aug 6, 2024
db57049
Update source/unitctl.rst
JTorreG Aug 6, 2024
23a127d
Apply suggestions from code review
JTorreG Aug 7, 2024
8699d5c
docs: preliminary draft
JTorreG Aug 27, 2024
85282d7
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Aug 27, 2024
2c816c0
docs: update doc
JTorreG Aug 28, 2024
1c6b1fe
Merge pull request #161 from nginx/unitctl-docs
JTorreG Aug 28, 2024
1e26893
docs: update news
JTorreG Aug 28, 2024
934f65a
docs: update date
JTorreG Aug 28, 2024
3180b8f
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Aug 28, 2024
47faede
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Aug 28, 2024
a7fb364
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Aug 28, 2024
1e91444
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Aug 28, 2024
f14d729
docs: fixes
JTorreG Aug 28, 2024
9229ec7
docs: options in bold
JTorreG Aug 28, 2024
6d1c2e5
docs: update news desc.
JTorreG Sep 2, 2024
865929e
docs: remove `a` (regression)
JTorreG Sep 2, 2024
b3e25c7
fix: fix previews
JTorreG Sep 2, 2024
f283a05
fix: fix nav subsections
JTorreG Sep 3, 2024
c05c130
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Sep 3, 2024
b54745e
Merge pull request #170 from nginx/issue-169
JTorreG Sep 4, 2024
d3f8259
docs: update features, config options, all of fame
JTorreG Sep 5, 2024
203dbc6
Update source/news/2024/unit-1.33.0-released.rst
JTorreG Sep 9, 2024
1340b06
docs: add bugfix
JTorreG Sep 10, 2024
dba084a
docs: remove sudo on copy
JTorreG Sep 11, 2024
d91b4fe
docs: add changes from PR 167
JTorreG Sep 12, 2024
147e7f0
docs: split code blocks
JTorreG Sep 12, 2024
796f7ea
docs: update release 1.33 date
JTorreG Sep 16, 2024
48bf2ad
docs: update factory description
JTorreG Sep 16, 2024
09c5995
docs: add unitctl note
JTorreG Sep 16, 2024
8249097
docs: note updates
JTorreG Sep 16, 2024
4f13e65
Merge pull request #174 from nginx/release-1.33-note
JTorreG Sep 16, 2024
70bc453
Update source/unitctl.rst
JTorreG Sep 17, 2024
3be24ca
Update source/unitctl.rst
JTorreG Sep 17, 2024
f944bc4
Update source/unitctl.rst
JTorreG Sep 17, 2024
9a7658d
Update source/unitctl.rst
JTorreG Sep 17, 2024
dc4070b
Update source/unitctl.rst
JTorreG Sep 17, 2024
4c63353
Update source/unitctl.rst
JTorreG Sep 17, 2024
43dfe74
docs: update dates
JTorreG Sep 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
project = 'NGINX Unit'
author = 'NGINX, Inc.'
copyright = '2017-2024'
version = '1.32.1'
release_date = 'Mar 26, 2024'
version = '1.33.0'
release_date = 'Aug 29, 2024'
release = version
needs_sphinx = '6.2'

Expand Down
1 change: 1 addition & 0 deletions source/contents.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
scripting
certificates
statusapi
unitctl
howto/index
troubleshooting
community
8 changes: 8 additions & 0 deletions source/news/2024/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,14 @@ News of 2024

News archive for the year 2024.

.. nxt_news_entry::
:author: Unit Team
:description: Version 1.33.0
:email: [email protected]
:title: Unit 1.33.0 Released
:url: news/2024/unit-1.33.0-released
:date: 2024-08-29

.. nxt_news_entry::
:author: Unit Team
:description: Version 1.32.1 is a maintenance release that fixes bugs in the new WebAssembly Language Module and in our njs implementation.
Expand Down
199 changes: 199 additions & 0 deletions source/news/2024/unit-1.33.0-released.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,199 @@
:orphan:

####################
Unit 1.33.0 Released
####################

We are pleased to announce the release of NGINX Unit 1.33.0. This release includes
a number of new features and changes:

*************************
New configuration options
*************************

This release introduces two new configuration options:

#. **listen_threads**

This option can be set under **/settings/listen_threads** and controls the
number of threads the router process creates to handle client
connections. By default Unit creates the same number of threads as there
are CPUs available.

#. **backlog**

This option can be set under **/listeners/backlog**. This is a per-listener
option that sets the the backlog parameter as passed to the **listen(2)**
system-call, which defines the maximum length for the queue of pending
connections for the socket.

This is analogous to the **backlog** parameter of the **listen** directive in
NGINX.

****************
unitctl CLI tool
****************

:ref:`unitctl <unitctl>` is a powerful, Rust-based CLI tool that allows you to
deploy, manage, and configure Unit in your environment.

****************************
Chunked request body support
****************************

Unit can now accept chunked requests rather than returning **411
Length Required**. This feature is experimental and can
be enabled setting the **/settings/chunked_transform** configuration option
to true.

*************************************
Changes in behavior and other updates
*************************************

* On Linux, we now default to a **listen(2)** backlog of -1, which means we
use the OS's default: 4096 for Linux 5.4 and later; 128 for older versions.

The previous default for Unit was 511.

* Under systemd, Unit once again runs in **forking** mode. This allows the
per-application logging feature to work out the box.

* The Python language module now supports **Application Factories**
(thanks to Gourav).

**********************
Changes for developers
**********************

We have made some changes to the build system:

===============================================
Prettified make output by default with GNU make
===============================================

Instead of getting the normal compiler command for each target being built
you now get a simplified line like:

.. code-block:: console

CC build/src/nxt_cgroup.o


You can use the `V=1` option to get the old verbose output, for example:

.. code-block:: console

make V=1

==============
Make variables
==============

You can now control some aspects of the build process by passing variables to
make (like the above). The currently supported variables are:

.. list-table::
:widths: 15 80 5
:header-rows: 1

* - Option
- Description
- Default
* - **D=1**
- Enables debug builds (-O0)
- 0
* - **E=0**
- Disables -Werror
- 1
* - **V=1**
- Enables verbose output
- 0
* - **EXTRA_CFLAGS=**
- Add extra compiler options
-

===========
GCC & Clang
===========

We removed support for a bunch of esoteric compilers. GCC and Clang are now the
only supported compilers for building Unit.

==========
-std=gnu11
==========

We now build with **-std=gnu11** (C11 with GNU extensions). While previously we
didn't explicitly set the -std= option, as we were supporting CentOS 7 (which is now
EOL), we were effectively limited to **-std=gnu89/90**.


************
Wall of fame
************

Special Thanks to all external contributors helping us
making Unit better! With 1.33.0 we would like to send a shout out to:

- Alejandro Colomar
- Costas Drongos
- Gourav
- Remi Collet

Special thanks to Arjun for his fuzzing work.

**************
Full Changelog
**************

.. code-block:: none

Changes with Unit 1.33.0 29 Aug 2024

*) Feature: show list of loaded language modules in the /status
endpoint.

*) Feature: make the number of router threads configurable.

*) Feature: make the listen(2) backlog configurable.

*) Feature: add fuzzing via oss-fuzz.

*) Feature: add Python application factory support.

*) Feature: add chunked request body support.

*) Feature: add "if" option to the "match" object.

*) Feature: Unit ships with a new Rust based CLI application "unitctl".

*) Change: under systemd unit runs in forking mode (once again).

*) Change: if building with njs, version 0.8.3 or later is now required.

*) Change: Unit now builds with -std=gnu11 (C11 with GNU extensions).

*) Change: Unit now creates the full directory path for the PID file and
control socket.

*) Change: build system improvements, including pretty printing the make
output and enabling various make variables to influence the build
process (see: make help).

*) Change: better detection of available runnable CPUs on Linux.

*) Change: default listen(2) backlog on Linux now defaults to Kernel
default.

*) Bugfix: don't create the $runstatedir directory which triggered an
Alpine packaging error.

*) Bugfix: wasm-wasi-component application process hangs after receiving
restart signal from the control endpoint.

*) Bugfix: njs variables accessed with a JS template literal should not
be cacheable.

*) Bugfix: don't modify REQUEST_URI.

*) Bugfix: properly handle deleting arrays of certificates.
Loading