Skip to content

Commit c45c891

Browse files
committed
Merged with the default branch.
2 parents 88c90e1 + 9b22b69 commit c45c891

File tree

185 files changed

+26986
-16871
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

185 files changed

+26986
-16871
lines changed

.hgtags

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,4 @@ fa0227b7f62691a186d752ace475868de49e9fce 1.29.1
7171
e7b7f2bb04e8c6f4cbe6374fd6960d4465654215 1.29.1-1
7272
2692a5823c403a4e209681943e32a4907317d14b 1.30.0
7373
8a0b4338a15648792bcad47edb53f1b1c0badeb4 1.30.0-1
74+
3a9046dca2a6c51ee2df2cabdf69cb9a83e7a1e6 1.31.0

.mailmap

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
1-
<a.clayton@nginx.com> <andrew@digital-domain.net>
2-
<a.clayton@nginx.com> <a.clayton@f5.com>
1+
Alejandro Colomar <alx@nginx.com> <a.colomar@f5.com>
2+
Alejandro Colomar <alx@nginx.com> <alx.manpages@gmail.com>
3+
Andrew Clayton <a.clayton@nginx.com> <andrew@digital-domain.net>
4+
Andrew Clayton <a.clayton@nginx.com> <a.clayton@f5.com>

CHANGES

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,24 @@
11

2+
Changes with Unit 1.31.0 31 Aug 2023
3+
4+
*) Change: if building with njs, version 0.8.0 or later is now required.
5+
6+
*) Feature: technology preview of WebAssembly application module.
7+
8+
*) Feature: "response_headers" option to manage headers in the action
9+
and fallback.
10+
11+
*) Feature: HTTP response header variables.
12+
13+
*) Feature: ASGI lifespan state support. Thanks to synodriver.
14+
15+
*) Bugfix: ensure that $uri variable is not cached.
16+
17+
*) Bugfix: deprecated options were unavailable.
18+
19+
*) Bugfix: ASGI applications inaccessible over IPv6.
20+
21+
222
Changes with Unit 1.30.0 10 May 2023
323

424
*) Change: remove Unix domain listen sockets upon reconfiguration.

NOTICE

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11

22
NGINX Unit.
33

4-
Copyright 2017-2022 NGINX, Inc.
4+
Copyright 2017-2023 NGINX, Inc.
5+
Copyright 2017-2023 Andrei Zeliankou
6+
Copyright 2018-2023 Konstantin Pavlov
7+
Copyright 2021-2023 Zhidao Hong
8+
Copyright 2021-2023 Alejandro Colomar
9+
Copyright 2022-2023 Andrew Clayton
10+
Copyright 2022-2023 Liam Crilly
511
Copyright 2017-2022 Valentin V. Bartenev
612
Copyright 2017-2022 Max Romanov
7-
Copyright 2017-2022 Andrei Zeliankou
8-
Copyright 2018-2022 Konstantin Pavlov
9-
Copyright 2021-2022 Zhidao Hong
1013
Copyright 2021-2022 Oisín Canty
1114
Copyright 2017-2021 Igor Sysoev
1215
Copyright 2017-2021 Andrei Belov

README.md

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ coherent solution with a focus on performance, low latency, and scalability. It
1515
is intended as a universal building block for any web architecture regardless
1616
of its complexity, from enterprise-scale deployments to your pet's homepage.
1717

18-
Its native RESTful JSON API enables dynamic updates with zero interruptions
19-
and flexible configuration, while its out-of-the-box productivity reliably
20-
scales to production-grade workloads. We achieve that with a complex,
21-
asynchronous, multithreading architecture comprising multiple processes to
22-
ensure security and robustness while getting the most out of today's computing
23-
platforms.
18+
Its native [RESTful JSON API](#openapi-specification) enables dynamic
19+
updates with zero interruptions and flexible configuration, while its
20+
out-of-the-box productivity reliably scales to production-grade workloads. We
21+
achieve that with a complex, asynchronous, multithreading architecture
22+
comprising multiple processes to ensure security and robustness while getting
23+
the most out of today's computing platforms.
2424

2525

2626
## Quick Installation
@@ -38,7 +38,7 @@ For details and available language packages, see the
3838
### Docker
3939

4040
``` console
41-
$ docker pull docker.io/nginx/unit
41+
$ docker pull unit
4242
```
4343

4444
For a description of image tags, see the
@@ -71,6 +71,11 @@ For details and available language packages, see the
7171

7272
## Running a Hello World App
7373

74+
Unit runs apps in a
75+
[variety of languages](https://unit.nginx.org/howto/samples/).
76+
Let's consider a basic example,
77+
choosing PHP for no particular reason.
78+
7479
Suppose you saved a PHP script as `/www/helloworld/index.php`:
7580
``` php
7681
<?php echo "Hello, PHP on Unit!"; ?>
@@ -156,6 +161,16 @@ Unit's output should contain both snippets, neatly organized:
156161
For full details of configuration management, see the
157162
[docs](https://unit.nginx.org/configuration/#configuration-management).
158163

164+
## OpenAPI Specification
165+
166+
Our [OpenAPI specification](docs/unit-openapi.yaml) aims to simplify
167+
configuring and integrating NGINX Unit deployments and provide an authoritative
168+
source of knowledge about the control API.
169+
170+
Although the specification is still in the early beta stage, it is a promising
171+
step forward for the NGINX Unit community. While working on it, we kindly ask
172+
you to experiment and provide feedback to help improve its functionality and
173+
usability.
159174

160175
## Community
161176

auto/help

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ cat << END
2020
--modulesdir=DIR default: "\$libdir/unit/modules"
2121
--datarootdir=DIR default: "\$prefix/share"
2222
--mandir=DIR default: "\$datarootdir/man"
23+
--pkgconfigdir=DIR default: "\$datarootdir/pkgconfig"
2324
--localstatedir=DIR default: "\$prefix/var"
2425
--statedir=DIR default: "\$localstatedir/lib/unit"
2526
--runstatedir=DIR default: "\$localstatedir/run/unit"
@@ -75,4 +76,7 @@ cat << END
7576
java OPTIONS configure Java module
7677
run "./configure java --help" to see available options
7778

79+
wasm OPTIONS configure WebAssembly module
80+
run "./configure wasm --help" to see available options
81+
7882
END

auto/make

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,9 @@ $NXT_BUILD_DIR/lib/$NXT_LIB_SHARED: \$(NXT_LIB_OBJS)
9494
$NXT_BUILD_DIR/lib/$NXT_LIB_STATIC: \$(NXT_LIB_OBJS)
9595
$NXT_STATIC_LINK \$@ \$(NXT_LIB_OBJS)
9696

97-
$NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC: \$(NXT_LIB_UNIT_OBJS)
97+
$NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC: \$(NXT_LIB_UNIT_OBJS) \\
98+
$NXT_BUILD_DIR/share/pkgconfig/unit.pc \\
99+
$NXT_BUILD_DIR/share/pkgconfig/unit-uninstalled.pc
98100
$NXT_STATIC_LINK \$@ \$(NXT_LIB_UNIT_OBJS)
99101

100102
END
@@ -397,6 +399,10 @@ libunit-install: $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC
397399
|| install -d \$(DESTDIR)$NXT_LIBDIR
398400
install -p -m u=rw,go=r $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC \
399401
\$(DESTDIR)$NXT_LIBDIR/
402+
test -d \$(DESTDIR)$NXT_PKGCONFIGDIR \
403+
|| install -d \$(DESTDIR)$NXT_PKGCONFIGDIR
404+
install -p -m u=rw,go=r $NXT_BUILD_DIR/share/pkgconfig/unit.pc \
405+
\$(DESTDIR)$NXT_PKGCONFIGDIR/
400406
test -d \$(DESTDIR)$NXT_INCLUDEDIR \
401407
|| install -d \$(DESTDIR)$NXT_INCLUDEDIR
402408
install -p -m u=rw,go=r src/nxt_unit.h \
@@ -414,6 +420,8 @@ libunit-install: $NXT_BUILD_DIR/lib/$NXT_LIB_UNIT_STATIC
414420
libunit-uninstall:
415421
rm -f \$(DESTDIR)$NXT_LIBDIR/$NXT_LIB_UNIT_STATIC
416422
@rmdir -p \$(DESTDIR)$NXT_LIBDIR 2>/dev/null || true
423+
rm -f \$(DESTDIR)$NXT_PKGCONFIGDIR/unit.pc
424+
@rmdir -p \$(DESTDIR)$NXT_PKGCONFIGDIR 2>/dev/null || true
417425
rm -f \$(DESTDIR)$NXT_INCLUDEDIR/nxt_unit.h \
418426
\$(DESTDIR)$NXT_INCLUDEDIR/nxt_unit_field.h \
419427
\$(DESTDIR)$NXT_INCLUDEDIR/nxt_unit_request.h \
@@ -428,6 +436,31 @@ libunit-uninstall:
428436

429437
END
430438

439+
# pkg-config files
440+
441+
cat << END >> $NXT_MAKEFILE
442+
443+
$NXT_BUILD_DIR/share/pkgconfig/unit.pc: src/unit.pc.in
444+
sed -e "s|@PREFIX@|$NXT_PREFIX|" \\
445+
-e "s|@LIBDIR@|$NXT_LIBDIR|" \\
446+
-e "s|@CFLAGS@|-I$NXT_INCLUDEDIR|" \\
447+
-e "s|@VERSION@|\$(NXT_VERSION)|" \\
448+
-e "s|@EXTRA_LIBS@|$NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS|" \\
449+
-e "s|@CONFARGS@|$(echo $NXT_CONFIGURE_OPTIONS | sed -e 's| -pie||' -e 's| --njs||')|" \\
450+
-e "s|@MODULESDIR@|$NXT_MODULESDIR|" \\
451+
< src/unit.pc.in > \$@
452+
453+
$NXT_BUILD_DIR/share/pkgconfig/unit-uninstalled.pc: src/unit.pc.in
454+
sed -e "s|@PREFIX@|$(pwd)/$NXT_BUILD_DIR|" \\
455+
-e "s|@LIBDIR@|$(pwd)/$NXT_BUILD_DIR/lib|" \\
456+
-e "s|@CFLAGS@|-I$(pwd)/src -I$(pwd)$NXT_BUILD_DIR/include|" \\
457+
-e "s|@VERSION@|\$(NXT_VERSION)|" \\
458+
-e "s|@EXTRA_LIBS@|$NXT_LIBM $NXT_LIBS $NXT_LIB_AUX_LIBS|" \\
459+
-e "s|@CONFARGS@|$(echo $NXT_CONFIGURE_OPTIONS | sed -e 's| -pie||' -e 's| --njs||')|" \\
460+
< src/unit.pc.in > \$@
461+
462+
END
463+
431464
# Makefile.
432465
# *.dSYM is MacOSX Clang debug information.
433466

auto/modules/conf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ case "$nxt_module" in
3333
. auto/modules/java
3434
;;
3535

36+
wasm)
37+
. auto/modules/wasm
38+
;;
39+
3640
*)
3741
echo
3842
echo $0: error: invalid module \"$nxt_module\".

auto/modules/java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ cat << END > $NXT_JAVA_JARS
238238
static const char *nxt_java_system_jars[] = {
239239
END
240240

241-
NXT_TOMCAT_VERSION=9.0.70
241+
NXT_TOMCAT_VERSION=9.0.75
242242

243243
NXT_JAR_VERSION=$NXT_TOMCAT_VERSION
244244

@@ -284,7 +284,7 @@ static const char *nxt_java_unit_jars[] = {
284284
"$NXT_UNIT_JAR",
285285
END
286286

287-
NXT_JAR_VERSION=9.4.49.v20220914
287+
NXT_JAR_VERSION=9.4.51.v20230217
288288
NXT_JAR_NAMESPACE=org/eclipse/jetty/
289289

290290
NXT_JAR_NAME=jetty-util
@@ -297,7 +297,7 @@ NXT_JAR_NAME=jetty-http
297297
. auto/modules/java_get_jar
298298

299299
NXT_JAR_NAME=classgraph
300-
NXT_JAR_VERSION=4.8.151
300+
NXT_JAR_VERSION=4.8.158
301301
NXT_JAR_NAMESPACE=io/github/classgraph/
302302
. auto/modules/java_get_jar
303303

auto/modules/java_jar.sha512

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
4b47eabc83f3f672a7e91af6ae97bbdbc6f01ed7149540cb06b0f530f45a95d025cc7807a6640982d23d2da50bd973ad788a4c8fdfa025da7cf93c560abbe61e classgraph-4.8.151.jar
1+
00dc1aedae7cb6600b4b27ac7ec0234981a23a8c6f03dc1881304b7d999d94f0fdaa51e0008288740d9890b34f41462e8ed82c76f36a18bd45eabbb8084ec8d4 classgraph-4.8.158.jar
22
ab441acf5551a7dc81c353eaccb3b3df9e89a48987294d19e39acdb83a5b640fcdff7414cee29f5b96eaa8826647f1d5323e185018fe33a64c402d69c73c9158 ecj-3.26.0.jar
3-
82c6985f0d7c76459bf0638fdc24f3692a11804a95845b1a45203dfcc1205ab7bf67934f6babf7eb2f2b87d637a8fcbd87eae297e4403511bf73f359b1957e09 jetty-http-9.4.49.v20220914.jar
4-
2f199729ad9b46fda968b4bfafd657971fc9d90371852f8ad7afdae6d5752d2b84648734eabb6ffbf084800253d1da97d4bb9ad60f799ee6ae38a80c2d881fc4 jetty-server-9.4.49.v20220914.jar
5-
e207d93ef5bc98ad2b1a43393231bdacfb3ab642b6197a8b72d819f8ad30357c4daa0a76a0459340563fcdee0fdfc111e719a2db5be778d6b1e10f1ccbe77fc9 jetty-util-9.4.49.v20220914.jar
6-
a2cd93ccaa58191475df9aa40a11c8b3f14f77e78b6b2dc9e5fbebf07297e318d60c5cc5aca37e61bd748456b01491a0e6702b9e4d3ec3ef43d9b1a93f9b733e tomcat-api-9.0.70.jar
7-
4b2b33f6bdcb3fbff6de7da6f7558e4a21335c5c08dbc2adba1be90ddcaa4be1ba053d9021a4891edef975759a562b46a58da6c5acc2209ae8b942e4058b7022 tomcat-el-api-9.0.70.jar
8-
7ee837f218220022bf2543e4b3191c0a948c7f8bbd4f2e7202cc29196e5f4a8264aee027bc3521b79775b1ab0b3f8a4bef8982be9c0b2c5f95b77f36d5e5930f tomcat-jasper-9.0.70.jar
9-
f92cdddd3aae8d1b0b861afc67344fc6544c413d78e2e810f804632e68a3667b2b1929ac4995b582af03774ad024632e820143cd53273e06a796484ce2f0a73e tomcat-jasper-el-9.0.70.jar
10-
5ec6985740e7a5873f56430b1f0fd6e55a625fac8f5618d846072117f5ed8ccc69665fd6ebde40381099cf42ab9525f5da3cd16dd0b50a267734bfdf7f2e168d tomcat-jsp-api-9.0.70.jar
11-
33cf08f10bad572c9e7085b3ba8e91b38a293f8838a39483b01d07d9c1b9d0e67492343e0523da24af47782ec4a5d639db49679d951ccbe1da9d1309346cc693 tomcat-juli-9.0.70.jar
12-
0c8ee46dc49828720cd431e4e6bcb2a9d7409b3bae3d3427640b159985a27de22181151c8fa15a1f44f607730977c4ae2512c63a19c070b92e38438ad0ba8138 tomcat-servlet-api-9.0.70.jar
13-
e882c47acdb9e5612a0810503cb8900570b68aec5dd33dd6439884b15723a67cbf982c9cf546e7cd6d67b731df3d64ec5347500ab8a987d7cb1e11a74f819325 tomcat-util-9.0.70.jar
14-
0a562e8a40e406966ae2be5587dcad0ceae3143b03ef9b9f7dd77c6a2db522c31ed82b9c38b4464f9f80c1d8ca418ce6a09f9fecb3e0209a962da01e2f9bd626 tomcat-util-scan-9.0.70.jar
3+
606d0446a948c7a349cba5415d079bd054e43a8a09727c8300865f38678c5101642ecafa777d5f979bde1bd520543a4cf83348fcd9a444e6681cf773eb3c5824 jetty-http-9.4.51.v20230217.jar
4+
e9d3f7104214a16435d077eb53d943130b3a85bf9e8a48b9e40a7ad063ca3cca69324e03f21202e66fc5fd864c3cb09cd1857eff8d682c69398b4d75c1a430c6 jetty-server-9.4.51.v20230217.jar
5+
12725e106000d6ef672c474e467d7c976c3913b2d39a92e7304cc30d0e0d1f92575227d2c2201b97ca50f39cba81ac8b79bccb2b32b63d758ac4e192173c3f62 jetty-util-9.4.51.v20230217.jar
6+
b802b595d796285653c3c1b3d870295767afc6d4f857d439d579b7261dc8d015c948cd900e93ebc0ad706d1c74600645d3a18caef4f040a7085ff0e9f6cb4e44 tomcat-api-9.0.75.jar
7+
90cc3c2847782b6854bc0549e7bdfda2e92feac726285718aa4083baef597e472e7f3712257790107fa9306263f645fcc17344a8209415d10a75f4f4cfa30b04 tomcat-el-api-9.0.75.jar
8+
c23a0db30c5d77a518c7cd0afebe6c59600b45e03651409788acb91fa652752960f6e21ac15a233b433dbe290028d00ac72c4cd2856880f4d4ba9ef227692d7a tomcat-jasper-9.0.75.jar
9+
06fb8c0d49945437900be1cc8fd8d8123a7bf6599e7755aa6c7963a65d46aea444661de532ce0e6c0573ecd12def2d5d1e7942ecace9c7c3a39e232373f3fd6b tomcat-jasper-el-9.0.75.jar
10+
7dbaacd7f0490c8f0062eb12cd244acc9c51ee72d1c60ad841ac61905cd46b5d477b01c97019ba6e93a6b27de3e3438c620fb156cec3d6ece36f37918a6ee5bd tomcat-jsp-api-9.0.75.jar
11+
05c15c5c6877b39aed4457e5ea7992819c28dc148a2442a149a8d5ee294a62042eebd2f3846acdd70b08d531d95cdcc8cfcd7b64fb8b046aa5639e7901505131 tomcat-juli-9.0.75.jar
12+
92a44f8970746976a63351d45f84c7963127bd21db0af834a7d38dcfb3c29450398cb4b466636dfb3d8e764093c612eb2938af22ac2098171bac201ad6bcc320 tomcat-servlet-api-9.0.75.jar
13+
6794c0d6d5780ca09fdbaf801c1475f227b799c809a46195c0fd1f9792303fb6d0aa6e49ac049337863bdb512c390334470210294364b7af25d86355f7fd0605 tomcat-util-9.0.75.jar
14+
e97c90c857a5c814518f3da10d8c09c900417421d81ad500ad338ac10c6b7dc8338b486d2338f5cebea6fa33c9803fd2c06cf35c44b1b5b720331943f2e22de3 tomcat-util-scan-9.0.75.jar

0 commit comments

Comments
 (0)