100 Commits
Author SHA1 Message Date
Jamie Curnow 66ab4b24d1 Stop non-admins injecting nginx directives through host fields
advanced_config is admin-only, but other fields are written into nginx
config as-is and the schema barely limited them. A non-admin could add
any directive through them:

- location path, forward_host and forward_path (any non-empty string)
- proxy host forward_host (a quote breaks out of set $server "...")
- redirection forward_domain_name and stream forwarding_host (their
  pattern allowed ";", e.g. "example.com; return 200; #")
- access list IPv6 addresses ("%.+" zone id allowed "::1%x; allow all")
- domain names (a newline got out of the header comment)

Validation
- New lib/nginx-values.js holds the rules. Values can't contain
  characters that end or change an nginx token: whitespace, control
  characters, ; { } " ' # \, and no $ in a host. Location paths allow a
  modifier and an unquoted or double-quoted URI, so =, ~, ~* and ^~
  locations and quoted regexes keep working.
- The API schemas use the same patterns, including the certificate
  schema's own copy of the domain rule. A test fails if they drift.
- generateConfig checks stored values again, so rows saved before these
  rules can't inject either. The check is about nginx structure only:
  a stored value the API would now reject, but which can't add
  directives, still renders. If a value is unsafe, nothing is written
  and the host is marked offline with the reason in nginx_err. The same
  check covers per-location access lists and the Let's Encrypt request
  config.
- htpasswd user names can't contain ":" or control characters, which
  corrupted the file.

Fixes along the way
- IPv6 client addresses: drop zone ids, which nginx's allow/deny
  rejects anyway, and fix broken escapes (literal "d" for digits, an
  unescaped ".").
- Rewrite the domain rule used by redirection and stream hosts so it
  can't backtrack exponentially. It accepts the same values.
- Pattern errors still say "must match pattern", but no longer quote
  the regex.

Tests
- backend/test/nginx-values.test.js, run by `yarn test` and in
  scripts/ci/test-and-build. Real request schemas reject an injection
  set and accept valid values on every endpoint. Accepted values,
  rendered through the real templates and parsed using nginx's
  tokenizer rules, keep the same statement structure. The check
  refuses unsafe stored rows.
- NginxValues.cy.js: injection attempts from a non-admin get 400, and
  hosts using valid edge-case values come up with nginx_online true.
2026-11-10 08:20:02 +10:00
Jamie Curnow 5b7e34eb67 Fix second round of review findings from PR #6029
Security
- Check advanced_config permissions before creating a certificate on
  host update (proxy, redirection and 404 hosts). A refused request
  previously requested a Let's Encrypt certificate first, leaving an
  orphan certificate and using up rate limit.
- Only trust X-NPM-Peer-Addr when it comes with a secret generated at
  container start. The admin nginx sends both headers. Any proxy host or
  stream forwarding to 127.0.0.1:3000 was also a loopback peer, so it
  could forge the header and get a fresh rate-limit bucket on every
  request. Without the secret (dev, or a mounted production.conf), the
  header is ignored.
- Add a login limit per IP across all accounts (30 failed attempts a
  minute) alongside the per-account one. Before this, one address could
  spray passwords over any number of accounts. Behind a shared proxy,
  everyone using that proxy shares this limit.
- Stop trusting X-Real-IP from loopback. It was only there for an older
  version of the rate limiter, and it let a stream host forwarding to a
  local proxy host forge the client IP and get past IP access lists.
  Loopback now behaves as it does on master.

Correctness
- Refuse to delete a certificate that hosts still use (400, with counts
  per host type). Their configs include its files, and a successful
  revoke deleted them anyway, which broke nginx -t. Otherwise the
  certificate is revoked and its files are removed even if the revoke
  fails.
- Let non-admins clear a location's advanced config. Deleting the
  location was already allowed and has the same effect, and a location
  deleted and re-added at the same path arrives with an empty config,
  which was refused.
- Clear proxy host grants (meta.proxy_host_ids) when visibility isn't
  "user" or proxy hosts are hidden, and drop ids of deleted hosts.
  Before, hidden grants came back when proxy hosts were shown again.
  The backend enforces this; the permissions modal also stops sending
  them.
- 404 host and redirection host modals now wait for the current user
  to load, so an admin's advanced config change isn't dropped if they
  submit before it loads.

Tests
- NonAdminHosts.cy.js: refused change doesn't create a certificate,
  location rename and clear rules, grant clearing.
- Certificates.cy.js: deleting a certificate that is in use.
2026-11-09 23:39:26 +10:00
Jamie Curnow 04c1f5ae76 Fix review findings from PR #6029
Security
- Redact certbot output before it reaches the API: strip the
  certificate's DNS credential values, URL query strings and userinfo,
  secret-looking key=value pairs and Bearer/Basic tokens. DNS plugins
  can echo request URLs carrying API keys. The raw CommandError is no
  longer attached as `previous`, since the error handler returns
  `previous` to the client on certificate routes.
- Rate limit login/2FA on the admin nginx's real TCP peer, passed as
  X-NPM-Peer-Addr ($realip_remote_addr), instead of X-Forwarded-For.
  nginx trusts X-Real-IP from private ranges, so a client on the LAN or
  Docker network could get a fresh bucket on every request. Behind
  another proxy, limits now apply per account through that proxy.
- Bound rate limiter memory: hash keys over 128 chars and cap each store
  at 50k entries, removing expired entries first and then the oldest.

Correctness
- Proxy host modal: send location advanced configs unchanged for
  non-admins instead of looking them up by path, which dropped the
  config from a renamed location.
- Location advanced config: locations that omit advanced_config now get
  a config only after explicit ones are matched, so a new location at
  an old path can't take the config from the renamed location.
- Certificate upload: check that the certificate matches the private
  key (uploaded or stored) before writing, so a mismatched pair can't
  break nginx -t.
- Certificate delete: keep the Let's Encrypt files when revoke fails and
  hosts still use the certificate, so their configs still load.

Cleanup
- Make the rate-limit certbot hint first in the list, as its comment
  says.
- Proxy host getCount uses the permissions access has already loaded
  instead of querying user_permission again.
- Rate limiter: register the success refund listener in one place and
  call it a fixed window, not a sliding one.
2026-11-09 22:53:53 +10:00
Jamie Curnow 0792a5e24f Linting fixes 2026-11-09 22:33:10 +10:00
Jamie Curnow 779927c995 Fix getHostsWithDomains eager loading unnecessarily 2026-11-09 22:28:50 +10:00
Jamie Curnow 87b77d9461 Optimise isAdmin lookups 2026-11-09 22:25:07 +10:00
Jamie Curnow 8342713d45 Fix a non-admin can now rename a location that has admin-written
advanced config, and still can't change or add advanced config
2026-11-09 22:21:40 +10:00
Jamie Curnow 4175cf66c9 Fix: deleting a certificate now returns success even when some of its files
can't be removed
2026-11-09 22:17:07 +10:00
Jamie Curnow af54d2e346 Fix nginx reloading too much when cert renewal for multiple certs 2026-11-09 22:15:17 +10:00
Jamie Curnow 9b1566aa6b Fix for the broad Cloudflare hint regex (bare numbers
6003/6111/9103/9109/10000, plus 'Authentication error' and 'Invalid
access token') is checked before the rate-limit, DNS and HTTP hints, so
non-Cloudflare failures get a misleading Cloudflare message.
2026-11-09 22:14:07 +10:00
Jamie Curnow fff2b0d097 Fix for changing the upstream Host from $host to $forward_host
($http_host) forwards the raw client Host header, including the port and
any absolute-form URI mismatch, to every upstream and into the asset
cache key
2026-11-09 22:09:34 +10:00
Jamie Curnow 99678969b3 Fix a proxy host whose access list can't be loaded is now denied to
everyone instead of being served with no restrictions
2026-11-09 22:04:32 +10:00
Jamie Curnow 0cde59a8ad Fix for rate limiter only trusts X-Forwarded-For when the socket is
loopback, and the admin nginx sets that header to its own $remote_addr
2026-11-09 22:00:26 +10:00
Jamie Curnow 36b3434b9c Fix for adding meta.certificate_key to omissions()
means upload() now reads a row with no private key, so an upload that
leaves out certificate_key wipes the stored key and writeCustomCert
writes undefined to privkey.pem.
2026-11-09 21:57:00 +10:00
jc21 71be654418 Merge branch 'master' into develop 2026-11-09 14:01:11 +10:00
Jamie Curnow 47c9bfba4f Update dependencies 2026-11-09 11:55:20 +10:00
jc21 7c767f43b0 Merge pull request #6028 from occultsound/zh-tw-locale
Add Traditional Chinese (Taiwan) translation
2026-11-09 07:42:44 +10:00
jc21 53ee436e35 Merge pull request #6026 from Stephan-P/patch-1
Update nl.json
2026-11-08 18:53:40 +10:00
jc21 ea7e7468df Merge pull request #6023 from Alexis-Loskoutoff/fix-authentication-oracle
Fix authentication oracle
2026-11-06 08:58:10 +10:00
jc21 2f5342b427 Merge pull request #5908 from auzcoder/fix/auth-rate-limit-and-permissions
feat: rate limit auth endpoints and scope user proxy host permissions
2026-11-05 23:05:08 +10:00
Jamie Curnow cc46ce5ab6 Biome schema match to package 2026-11-05 16:43:28 +10:00
Jamie Curnow b5ee4f7b1b Update pull request template 2026-11-05 10:34:33 +10:00
jc21 9be1cb7818 Merge pull request #5917 from nglinh28/feat/vietnamese-locale-update
i18n(vi): complete Vietnamese locale and add vi tests
2026-11-05 10:30:02 +10:00
jc21 fe58b4eba0 Merge pull request #5889 from StopDragon/i18n/ko-missing-keys
Update Korean translation
2026-11-05 10:25:43 +10:00
jc21 18fc758b4f Merge pull request #5934 from lennondotw/fix/preserve-host-port
fix(proxy): preserve client ports in forwarded Host headers
2026-11-05 10:15:05 +10:00
jc21 5795699091 Merge pull request #5939 from hafizahmedzia/fix/http-certificate-result-keys
fix: preserve hostname keys in HTTP certificate test results
2026-11-05 10:05:11 +10:00
jc21 b88ca8e2e5 Merge pull request #5948 from Waterman1997/patch-1
Fix nginx reload after certificate renewal
2026-11-05 10:04:02 +10:00
jc21 d504c2bf25 Merge pull request #5951 from Alexis-Loskoutoff/fix/update-infomaniak-certbot-plugin
Update infomaniak certbot plugin to 0.3.3
2026-11-05 10:03:35 +10:00
jc21 49662bdc91 Merge pull request #5952 from lsr0/certbot-hetzner-fix-4.0.0
Update Hetzner certbot plugin to v4.0.0
2026-11-05 10:02:57 +10:00
jc21 f23dd9bff0 Merge pull request #5969 from capitain-schos/feature/add-dns-provider-ipp
added ip-projects certbot definitions
2026-11-05 09:59:23 +10:00
jc21 2a8b39bdef Merge pull request #5971 from Juice-de-Orange/fix/hsts-subdomains-per-host
fix: apply the HSTS sub-domains setting per host
2026-11-05 09:58:02 +10:00
jc21 23e56e9581 Merge pull request #5972 from junkerderprovinz/fix/route53-propagation
Skip propagation seconds option for Route 53 DNS challenge
2026-11-05 09:56:43 +10:00
jc21 3d09072ea7 Merge pull request #5976 from l1n-x/actualize-beget-package
Changed target plugin for Beget
2026-11-05 09:36:45 +10:00
jc21 4daa54c12e Merge pull request #5977 from mirfalltnixein/fix/unsaved-modal-changes
Prevent data loss when dismissing unsaved forms
2026-11-05 08:58:53 +10:00
jc21 5457ca0965 Merge pull request #5979 from seaeagle1/develop
Add certbot plugin for Scaleway DNS
2026-11-05 08:57:44 +10:00
jc21 1dd0b8fbe8 Merge pull request #5989 from Rip-07/fix/5964-stale-nginx-pid
fix: remove stale nginx pid file before starting nginx
2026-11-05 08:45:23 +10:00
jc21 5db7516f40 Merge pull request #5992 from chenghaopeng/patch-1
Update package name and version for Baidu DNS plugin
2026-11-05 08:44:51 +10:00
jc21 bd34c94222 Merge pull request #5993 from SebZar/feat/certificate-details-tooltip
feat: show certificate details in host tables
2026-11-05 08:42:57 +10:00
Jamie Curnow 9754c4c639 Bump mid version, as Tabler has changed the dark UI it's worth more than a revision change 2026-11-05 08:38:55 +10:00
Jamie Curnow db292e947d Bump version 2026-11-05 08:00:40 +10:00
Jamie Curnow ec0f30106d Migrate cypress to v16 2026-11-05 07:32:24 +10:00
Jamie Curnow 1c76fb76ea install yarn in cypress image 2026-11-04 22:08:48 +10:00
Jamie Curnow f915ca2462 Update all deps, and cypress 2026-11-04 20:54:23 +10:00
jc21 55481adede Merge pull request #6002 from mikeyhenein/frontend-deps
Frontend: refresh dependencies, react-intl 12, vitest 5, happy-dom 21; fix Tabler 1.7 regressions
2026-11-04 20:36:18 +10:00
jc21 7e240e4136 Merge pull request #6010 from NginxProxyManager/dependabot/npm_and_yarn/frontend/decode-uri-component-0.5.1
build(deps): bump decode-uri-component from 0.5.0 to 0.5.1 in /frontend
2026-11-04 14:42:39 +10:00
jc21 bea51343ef Merge pull request #5998 from mikeyhenein/vitest-node25
Frontend tests: disable Node's built-in localStorage so vitest works on Node 25+
2026-11-04 14:41:54 +10:00
jc21 42fbab8058 Merge pull request #5999 from mikeyhenein/gitattributes-lf
Add .gitattributes to keep LF line endings
2026-11-04 14:41:31 +10:00
jc21 dca46af3fc Merge pull request #6000 from mikeyhenein/s6-overlay-3.2.3.2
s6-overlay 3.2.3.2
2026-11-04 14:41:12 +10:00
jc21 4aab1f50a4 Merge pull request #6001 from mikeyhenein/backend-deps
Backend: refresh yarn.lock within the declared ranges (fixes 15 of 16 advisories, incl. body-parser DoS)
2026-11-04 14:40:53 +10:00
jc21 44ada6ad5a Merge pull request #6003 from mikeyhenein/permissions-schema
Reject unknown keys in PUT /api/users/:id/permissions (an extra key crashes the backend)
2026-11-04 14:34:24 +10:00
jc21 e3631e88c6 Merge pull request #6004 from mikeyhenein/certbot-errors
Show certbot's failure reason in the UI instead of "Internal Error"
2026-11-04 14:33:39 +10:00
jc21 fdf51a654c Merge pull request #6005 from mikeyhenein/certificate-delete-files
Remove a certificate's certbot files on delete even when revoking fails
2026-11-04 14:30:08 +10:00
jc21 0dc9933409 Merge pull request #6008 from wikrie/patch-2
Update dns-multi plugin version to 5.6.0
2026-11-04 08:28:49 +10:00
jc21 1aca775cb9 Merge pull request #5944 from jeezat/develop
fix(certbot): update Akamai Edge DNS plugin and credentials for v0.3.0
2026-10-14 07:10:53 +10:00
jc21 556738fd4d Merge pull request #5946 from Alexis-Loskoutoff/require-authentication-to-validate-certificates
Require authentication to validate certificates
2026-10-14 07:09:56 +10:00
jc21 d780474583 Merge pull request #5938 from Alexis-Loskoutoff/Update-FR-translations
Update french translations
2026-10-12 15:12:57 +10:00
jc21 56ab784117 Merge pull request #5935 from NginxProxyManager/fix/5919-access-list-render
Fix access list rules and SSL missing from re-rendered host configs
2026-10-09 22:56:56 +10:00
Jamie Curnow 717877db3f Fix flakey cypress test 2026-10-09 22:35:02 +10:00
jc21 1454252acd Merge branch 'develop' into fix/5919-access-list-render 2026-10-09 07:32:34 +10:00
jc21 1028e139e4 Merge pull request #5930 from Juice-de-Orange/i18n/de-it-missing
Add missing German (de) and Italian (it) translations
2026-10-07 08:35:10 +10:00
jc21 7d7ed25715 Merge pull request #5929 from NginxProxyManager/dependabot/npm_and_yarn/backend/proxy-addr-2.0.8
build(deps): bump proxy-addr from 2.0.7 to 2.0.8 in /backend
2026-10-07 08:31:37 +10:00
jc21 3f1c0f27d3 Merge pull request #5925 from NginxProxyManager/dependabot/npm_and_yarn/backend/fast-uri-3.1.8
build(deps): bump fast-uri from 3.1.7 to 3.1.8 in /backend
2026-10-06 09:33:45 +10:00
Jamie CurnowandClaude Opus 5.5 2afd723cd8 Fix access list rules and SSL missing from re-rendered host configs
Some paths rendered host configs without fully loading the relations
the templates depend on, silently dropping access rules (and SSL):

- Enabling a proxy host loaded the access list without its clients or
  auth items, so the host came back with no access restrictions.
- Requesting a Let's Encrypt certificate re-rendered every host sharing
  its domains from bare rows, dropping access rules and SSL.

generateConfig now loads any referenced certificate or access list that
isn't fully loaded, so no caller can render a partial config. The two
callers above also fetch the relations themselves, and a warning is
logged when a host's access list is missing or has no rules.

Adds integration tests covering access lists across disable/enable.

Fixes #5919, #4286, #5710

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 22:13:31 +10:00
jc21 778ab6b375 Merge pull request #5921 from NginxProxyManager/dependabot/npm_and_yarn/test/serialize-javascript-7.1.2
build(deps): bump serialize-javascript from 7.1.1 to 7.1.2 in /test
2026-10-05 19:32:57 +10:00
jc21 f64d43b9ae Merge pull request #5913 from PrassanthVG/fix/ip-ranges-timer
Don't start IP ranges renewal timer when fetching is disabled
2026-10-02 08:48:48 +10:00
jc21 2dfd691169 Merge pull request #5910 from NginxProxyManager/dependabot/npm_and_yarn/backend/ip-address-10.7.2
build(deps): bump ip-address from 10.5.0 to 10.7.2 in /backend
2026-09-30 07:01:24 +10:00
jc21 5dcaf28d7c Merge pull request #5891 from Amitind/fix/5128-hide-certificate-key
fix: omit certificate_key from certificate API responses
2026-09-26 19:30:31 +10:00
jc21 de65105744 Merge pull request #5886 from xJayMorex/fix-chown
fix: only chown /data/keys.json if necessary
2026-09-26 19:18:14 +10:00
jc21 a29eae9dc2 Merge pull request #5880 from NginxProxyManager/develop
v2.16.0
2026-09-24 19:27:13 +10:00
Jamie Curnow 2cfd3395cf Adds integration tests for per path access lists, fixes ipv6 jsv,
and enforces host-wide access list when location access list is not set
2026-09-24 12:21:49 +10:00
jc21 c41ec008bb Merge pull request #5772 from drakhaw/develop
feat: per-path access lists, host logs modal
2026-09-24 08:38:14 +10:00
jc21 58566c9d75 Merge branch 'master' into develop 2026-09-23 20:57:08 +10:00
jc21 c53f52ab51 Merge pull request #5878 from carlosalbertorg/feat/log-viewer
feat: Add a Logs viewer to the admin UI
2026-09-23 20:23:26 +10:00
jc21 b1e0473a19 Merge pull request #5741 from addielaruee/fix/stream-ipv6-forward-host-brackets
fix(stream): bracket IPv6 forward host for valid nginx upstream
2026-09-23 14:29:27 +10:00
jc21 95f1b74757 Merge pull request #5862 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-minor-updates-793a873af9
build(deps-dev): bump the dev-minor-updates group across 1 directory with 5 updates
2026-09-23 14:23:52 +10:00
jc21 8509e1b378 Merge pull request #5813 from vzagorovskiy/fix/regenerate-config-wrong-host-type
Use the row's own model and host type in regenerate-config
2026-09-23 14:11:52 +10:00
Jamie Curnow 5f35e4916f Bump version 2026-09-23 14:10:29 +10:00
jc21 da12ee5b0c Merge pull request #5814 from shawnhank/fix/dns-credentials-lifetime
Remove DNS provider credentials from disk after certbot runs
2026-09-23 14:08:29 +10:00
jc21 61af8e23d8 Merge pull request #5829 from NginxProxyManager/dependabot/npm_and_yarn/backend/qs-6.16.0
build(deps): bump qs from 6.15.3 to 6.16.0 in /backend
2026-09-23 14:06:28 +10:00
jc21 c4e421e679 Merge pull request #5830 from NginxProxyManager/dependabot/npm_and_yarn/test/humanfs/node-0.16.8
Bump @humanfs/node from 0.16.7 to 0.16.8 in /test
2026-09-23 14:06:13 +10:00
jc21 1e18bf9212 Merge pull request #5831 from cloudchristoph/fix/certbot-dns-azure-modern
fix(certbot): switch the Azure DNS plugin to certbot-dns-azure-modern
2026-09-23 14:06:00 +10:00
jc21 af1d4dd60f Merge pull request #5854 from hurole/patch-1
feat: add Tencent Cloud EdgeOne DNS provider
2026-09-23 13:59:16 +10:00
jc21 ee33ecdfc2 Merge pull request #5874 from NginxProxyManager/dependabot/npm_and_yarn/frontend/prod-patch-updates-d144f49a8f
build(deps): bump the prod-patch-updates group across 1 directory with 2 updates
2026-09-23 13:52:39 +10:00
jc21 f48c3e583a Merge pull request #5876 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-patch-updates-846ffa5b48
build(deps-dev): bump the dev-patch-updates group across 1 directory with 5 updates
2026-09-23 13:52:21 +10:00
jc21 a1713b79e8 Merge pull request #5877 from hulkbig/fix/authenticated-login-redirect-5753
fix(router): redirect authenticated login visits to dashboard
2026-09-23 13:51:32 +10:00
jc21 73f784ea95 Merge pull request #5875 from NginxProxyManager/dependabot/npm_and_yarn/backend/prod-minor-updates-b9f1cef99c
build(deps): bump moment from 2.30.1 to 2.31.0 in /backend in the prod-minor-updates group
2026-09-22 07:12:03 +10:00
jc21 9ad799c13f Merge pull request #5869 from zalaghi/feat/persian-locale
Add Persian locale
2026-09-21 07:25:22 +10:00
jc21 5d0be3a5d5 Merge pull request #5871 from qwist1233-cpu/tr-missing
Add missing Turkish (tr) translations
2026-09-21 07:20:43 +10:00
jc21 568c105945 Merge pull request #5858 from NginxProxyManager/dependabot/npm_and_yarn/backend/prod-patch-updates-14e248b7a3
Bump the prod-patch-updates group across 1 directory with 3 updates
2026-09-15 07:35:48 +10:00
jc21 3105a23834 Merge pull request #5861 from NginxProxyManager/dependabot/npm_and_yarn/frontend/prod-minor-updates-2b7ce5bc75
Bump the prod-minor-updates group across 1 directory with 6 updates
2026-09-15 07:35:21 +10:00
jc21 58605cbc70 Merge pull request #5848 from siimaarmaa/develop
Translate the entire user interface into Estonian and ensure that the Estonian flag is displayed./Tõlgi kogu kasutajaliides eesti keelde ja kinnita Eesti lipp.
2026-09-09 10:11:03 +10:00
jc21 280fcde528 Merge pull request #5834 from 12LuA/patch-1
Remove broken sorting from Audit Logs
2026-09-09 07:27:36 +10:00
jc21 c70fcb9f7c Merge pull request #5836 from jmrplens/fix/invalidate-tokens-on-password-change
Invalidate tokens issued before a password change
2026-09-09 07:27:00 +10:00
jc21 18f1fe22b1 Merge pull request #5837 from jamalkamaladdin/feat/az-locale
Add Azerbaijani locale
2026-09-08 07:04:06 +10:00
jc21 9fc56a2209 Merge pull request #5840 from NginxProxyManager/dependabot/npm_and_yarn/test/mocha-12.0.0
Bump mocha from 11.8.0 to 12.0.0 in /test
2026-09-08 07:03:37 +10:00
jc21 37b19d892c Merge pull request #5841 from NginxProxyManager/dependabot/npm_and_yarn/test/cypress-16.0.0
Bump cypress from 15.21.1 to 16.0.0 in /test
2026-09-08 07:03:25 +10:00
jc21 17f126482f Merge pull request #5838 from NginxProxyManager/dependabot/npm_and_yarn/backend/apidevtools/swagger-parser-13.0.0
Bump @apidevtools/swagger-parser from 12.1.0 to 13.0.0 in /backend
2026-09-08 07:03:09 +10:00
jc21 a2d427902a Merge pull request #5828 from NginxProxyManager/dependabot/npm_and_yarn/backend/fast-uri-3.1.7
Bump fast-uri from 3.1.5 to 3.1.7 in /backend
2026-09-04 07:42:57 +10:00
jc21 5e6c53f0e2 Merge pull request #5726 from NginxProxyManager/dependabot/npm_and_yarn/test/axios-1.18.0
Bump axios from 1.19.0 to 1.20.0 in /test
2026-09-01 07:10:25 +10:00
jc21 baa5683bba Merge pull request #5823 from NginxProxyManager/dependabot/npm_and_yarn/backend/prod-minor-updates-1a71c66db8
Bump mysql2 from 3.23.4 to 3.24.2 in /backend in the prod-minor-updates group
2026-09-01 07:10:12 +10:00