Commit graph

753 commits

Author SHA1 Message Date
Jérémy Lal
8e0e251d54
Update changelog 2022-11-27 12:57:51 +01:00
Jérémy Lal
e06af59602
nginx-dev provides dh-sequence-nginx 2022-11-27 12:55:48 +01:00
Jérémy Lal
f57efc5206
Add buildsystem nginx_mod to dh-sequence nginx 2022-11-27 12:53:46 +01:00
Jan Mojžíš
70c390852c
d/control update implicit dependencies of third-party modules 2022-11-26 16:03:37 +01:00
Jan Mojžíš
fa37bc17ab
d/p/bug-1024605.patch add, bugfix 1024605
fixes problem when a subrequest has SSI
enabled but its main request does not, the SSI module may crash the worker
due to NULL-pointer dereference. The patch is backported from the upstream
2022-11-26 15:49:52 +01:00
Jan Mojžíš
c2ce778dcb
d/tests/ssi-module-test add 2022-11-26 14:52:56 +01:00
Jan Mojžíš
a056949f1b
d/changelog fix whitespace 2022-11-26 13:37:19 +01:00
Jan Mojžíš
dce642e642
d/changelog: d/nginx-*.postinst: Use invoke-rc.d
instead of pidof and ad-hoc tests
2022-11-26 11:19:43 +01:00
Jan Mojžíš
273e508834 Merge branch 'maintscripts-no-pidof' into 'master'
d/nginx-*.postinst: Use invoke-rc.d instead of pidof and ad-hoc tests

See merge request nginx-team/nginx!36
2022-11-26 10:15:19 +00:00
Jan Mojžíš
c3f0a00120
d/control fix spelling-error-in-description
Subsitution -> Substitution
2022-11-11 06:16:39 +01:00
Jan Mojžíš
4243cedb55
release nginx 1.22.1-1, upload to unstable 2022-11-10 18:23:04 +01:00
Jan Mojžíš
1755a81da7 Merge branch 'lintian-fixes' into 'master'
Fix day-of-week for changelog entry 0.5.11-1

See merge request nginx-team/nginx!37
2022-10-28 13:26:52 +00:00
Jan Mojžíš
c2f4bc019b
d/changelog update changelog text 2022-10-28 15:13:30 +02:00
Debian Janitor
974e91ad9d Fix day-of-week for changelog entry 0.5.11-1.
Changes-By: lintian-brush
Fixes: lintian: debian-changelog-has-wrong-day-of-week
See-also: https://lintian.debian.org/tags/debian-changelog-has-wrong-day-of-week.html
2022-10-28 08:39:19 +00:00
Jan Mojžíš
304ba44d13
d/control fix implicit version libnginx-mod-http-lua
>=1:0.10.22-3~
2022-10-28 10:14:30 +02:00
Jan Mojžíš
cc9cec6999
d/changelog fix whitespace 2022-10-28 09:59:47 +02:00
Jan Mojžíš
a8134e4741
Add libnginx-mod-http-lua powerpc architecture 2022-10-27 16:35:14 +02:00
Jan Mojžíš
8ac7c1efb5
d/changelog added exact version of dependency libnginx-mod-http-lua 2022-10-26 17:27:15 +02:00
Jan Mojžíš
372da465bf
d/changelog New upstream version 1.22.1 2022-10-25 19:18:20 +02:00
Michael Biebl
6cad8ef578 Import Debian changes 1.22.0-3.1
nginx (1.22.0-3.1) unstable; urgency=medium
.
  * Non-maintainer upload.
  * No source change upload to rebuild with debhelper 13.10.
2022-10-25 18:20:24 +02:00
Gioele Barabucci
d9b4c476c1 d/nginx-*.postinst: Use invoke-rc.d instead of pidof and ad-hoc tests
Checking if nginx is running using and a mixture of file tests and
`pidof` is fragile. Debian policy 9.3.3 states that `invoke-rc.d` should
be used instead to perform these checks.

In addition, the use of `pidof` creates an implicit depency on
`sysvinit-utils`. `sysvinit-utils` is currently essential, but that
may change in the future.

Patch originally contributed by @ah: https://paste.debian.net/1254794/
2022-09-25 22:03:56 +02:00
Jan Mojžíš
9867fd4940
release nginx 1.22.0-3, upload to unstable 2022-08-17 18:39:38 +02:00
Jan Mojžíš
212327ed57
http-lua: remove 2022-08-17 06:54:21 +02:00
Jan Mojžíš
caf389149a
d/p/nginx-ssl_cert_cb_yield.patch add 2022-08-17 06:54:11 +02:00
Jan Mojžíš
a316cb99e4
d/changelog: fix typo in bug number 61261 -> 861261 2022-08-17 06:53:59 +02:00
Jérémy Lal
08de4d4bc7
Release to unstable 2022-08-07 16:15:09 +02:00
Jan Mojžíš
c9a408aa6f
d/apport/source_nginx.py: Add apport hooks
for additional bug information gathering,
the script is backported from Ubuntu
2022-07-23 13:03:31 +02:00
Jan Mojžíš
861f1be869
d/p/nginx-fix-pidfile.patch backport from Ubuntu 2022-07-23 10:49:48 +02:00
Jan Mojžíš
43b9a879c9
Remove constraints unnecessary since buster
* Build-Depends: Drop versioned constraint on dpkg-dev.
* nginx-common: Drop versioned constraint on lsb-base in Depends.
* nginx-core: Drop versioned constraint on nginx in Breaks.
* nginx-full: Drop versioned constraint on nginx in Breaks.
* nginx-light: Drop versioned constraint on nginx in Breaks.
* nginx-extras: Drop versioned constraint on nginx in Breaks.
* libnginx-mod-http-perl: Drop versioned constraint on nginx-extras in Replaces.
* Remove 5 maintscript entries from 1 files.
2022-07-23 10:48:06 +02:00
Jan Mojžíš
142c95ade0
add libnginx-mod-http-ndk-dev to nginx to build ngx-lua 2022-07-23 10:47:23 +02:00
Jan Mojžíš
0e2eaec4b2
d/gitlab-ci.yml removed
in GL switched to salsa-ci team recipes/debian.yml@salsa-ci-team/pipeline
2022-07-23 10:40:40 +02:00
Jan Mojžíš
0d813834ef
http-subs-filter add PCRE2 support 2022-07-11 20:34:21 +02:00
Jan Mojžíš
461acc4f51
d/nginx-common.nginx.service: remove systemd 'After' dependency syslog.target,
is obsolete
2022-07-10 20:13:30 +02:00
Jan Mojžíš
ff7cd7012d
d/t/reboot: added, tests if nginx works after reboot 2022-07-10 18:32:08 +02:00
Jan Mojžíš
88d4d1577a
d/p/0003-define_gnu_source-on-other-glibc-based-platforms.patch forwarded to upstream 2022-07-10 09:19:52 +02:00
Jan Mojžíš
ccd6718920
d/nginx-common.nginx.service update 2022-07-10 09:15:53 +02:00
Thomas Ward
035ed7f34a Unstable upload 2022-07-09 20:14:24 -04:00
Jan Mojžíš
1a3b001414
d/changelog close #985133 bug 2022-06-26 16:41:06 +02:00
Jan Mojžíš
42508c8556
create var/www/html in nginx-common.postinst 2022-06-26 16:21:08 +02:00
Jan Mojžíš
172eb7b12a
d/changelog close #1013807 bug 2022-06-26 16:16:58 +02:00
Jan Mojžíš
7df2636a9d
d/changelog fix whitespace 2022-06-26 16:16:08 +02:00
Jan Mojžíš
bf9c433dbb
d/control: bump Standards-Version to 4.6.1, no changes 2022-06-26 14:35:33 +02:00
Thomas Ward
83ca2994f8
Copyright file needed updated (caught by Bage, who emailed a patch to teward) 2022-06-26 14:34:19 +02:00
Miao Wang
9f1044b940 changelog: update changelog 2022-06-26 15:26:40 +08:00
Jan Mojžíš
ed5bc15213 Remove 0002-Make-sure-signature-stays-the-same-in-all-nginx-buil.patch 2022-06-26 15:25:21 +08:00
Miao Wang
509adba304 dh_nginx: support auto generating module config files
This patch adds support of auto generating module config files for
modules in the naming pattern of libnginx-mod-* but with missing
<module_name>.nginx file. The module load file and its loading priority
is inferred from the package name in this case.

Using this feature, the repeated files d/libnginx-mod-*.nginx and
d/libnginx-mod.conf/ can be removed, and the packaging for out-of-tree
modules can be simplified.
2022-06-26 15:20:43 +08:00
Miao Wang
15c55ec59b dh_nginx: move to debian/debhelper
Move dh_nginx script to debian/debhelper so that all debhelper scripts
are located together.
2022-06-26 15:20:30 +08:00
Miao Wang
2784d3f935 nginx-dev: fix nginx version subtracting in dh_nginx 2022-06-26 15:20:21 +08:00
Miao Wang
87b5e38f6d nginx-dev: simplify dependencies
nginx-dev depends on ${S:Build-Depends} before this commit, to include
all the build-depdencies of nginx source packages. However, this also
includes build dependency for those in-tree 3rd party modules, which are
unnecessary. This commit removes them and explicitly list those packages
needed to build a general module. The architecture of nginx-dev can thus
be changed to all instead of any.

When all 3rd party modules are removed, the dependency can be changed
back to ${S:Build-Depends} to make the config less redundant.
2022-06-26 15:20:09 +08:00
Miao Wang
d4b9d6a1da Adding nginx-dev package for tools for building out-of-tree modules
Nginx does not officially provide a mechanism to build out-of-tree modules,
however, this can be achieved by using all the headers and the configure
scripts in the auto/ directory. As a result, a nginx-dev package can thus be
developed for build out-of-tree modules.

The detailed steps to build an out-of-tree module in the headers-only nginx
source tree is:

1. Execute the configure script of nginx, with the same configure arguments
(excluding the reference to other dynamic modules, but including the reference
to depending modules as a built-in module). To prevent the configure scripts
modifying the nginx ource tree, we can 1. point the build dir to a directory
elsewhere, to generate all the build time files outside; 2. slightly patch the
configure scripts to prevent generating a makefile directly in the source tree,
which simply includes the generated makefile at the build dir.

2. Execute make at the source tree, but providing the generated makefile in the
build dir. The command is `make -C /path/to/nginx/source -f
/path/to/build_dir/Makefile modules`

To make sure the compiled module is compatible with the nginx binary and the
nginx binaries with the same upstream version, the key points are:

- Module signature: A module signature containing the (upstream) version number
and encoding the necessary configuration flags is put in each module as well as
the nginx binary itself. When loading a module, nginx will compare the signature
on the module with its own. As long as the configure flags, especially those
encoded in the signature, and the version of the nginx source used to build the
module are the same as thoes used to build the nginx binary, the moudle can pass
the signature check. As a result, the module can depend on the exact nginx
upstream version, ignoring the debian revison.
- ABI compatibility: We should maintain nginx precisely, to prevent making any
ABI changes between different debian revisions.
- Build check: When building the module, we can perform a simple module loading
check via `nginx -t`. This test serves as a "smoking test", to ensure we are
actually building loadable modules.

Summing all the above up and adding the necessary automation scripts for module
packaging, the nginx-dev package can be composed, including the following parts:

- The headers and configure scripts: generated and filtered out from the source
tree. The scripts are slightly patched to prevent generating a makefile directly
in the source tree, as stated above;
- The recorded configure options: all the modules built should include these
options when configured;
- dh_nginx script and its man page: modified from the original dh_nginx script,
adding a "--in-nginx-tree" option. When specified, the behavior remains the same
as the original version (so the option is added in the rule building the
in-package modules). When not specified, the dependency added into misc:Depends
will be the exact upstream nginx version, ignoring the debian revision. E.g.
nginx-common >= 1.20.2, << 1.20.2.1~
- a debhelper sequence plugin which can be enabled by module packages with `dh
--with=nginx`, inserting `dh_nginx` after `dh_install`
- a build system plugin which can bu enabled by module packages with `dh
--buildsystem=nginx_mod`, automating the module building process using the steps
mentioned before.
- autoscript templates used by dh_nginx are also installed without modification.

Currently. the architecture of nginx-dev is any because nginx has arch related
dependencies, which is brought in by http-lua module. After it is
removed from the nginx source tree, the architecture can be changed to
all since no binary is included in this package.
2022-06-26 15:19:47 +08:00