version 3.1.5

Massimo Melina committed May 14, 2026 at 00:28 UTC 4657978d172e0b09e1c45f1adc9e6101cfa13c70
3 files changed +67 -45
package-lock.json
+65 -43
@@ -1,12 +1,12 @@
1 {
2 "name": "hfs",
3 - "version": "3.1.4",
3 + "version": "3.1.5",
4 "lockfileVersion": 2,
5 "requires": true,
6 "packages": {
7 "": {
8 "name": "hfs",
9 - "version": "3.1.4",
9 + "version": "3.1.5",
10 "license": "GPL-3.0",
11 "workspaces": [
12 "admin",
@@ -17,7 +17,7 @@
17 "dependencies": {
18 "@gregoranders/csv": "^0.0.13",
19 "@rejetto/kvstorage": "^0.17.7",
20 - "@rejetto/nat-upnp": "^2.1.3",
20 + "@rejetto/nat-upnp": "^2.1.4",
21 "acme-client": "^5.4.0",
22 "busboy": "^1.6.0",
23 "crc-32": "^1.2.2",
@@ -473,15 +473,15 @@
473 }
474 },
475 "node_modules/@babel/helper-module-transforms": {
476 - "version": "7.26.0",
477 - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
478 - "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
476 + "version": "7.28.6",
477 + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz",
478 + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==",
479 "dev": true,
480 "license": "MIT",
481 "dependencies": {
482 - "@babel/helper-module-imports": "^7.25.9",
483 - "@babel/helper-validator-identifier": "^7.25.9",
484 - "@babel/traverse": "^7.25.9"
482 + "@babel/helper-module-imports": "^7.28.6",
483 + "@babel/helper-validator-identifier": "^7.28.5",
484 + "@babel/traverse": "^7.28.6"
485 },
486 "engines": {
487 "node": ">=6.9.0"
@@ -1200,16 +1200,16 @@
1200 }
1201 },
1202 "node_modules/@babel/plugin-transform-modules-systemjs": {
1203 - "version": "7.25.9",
1204 - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz",
1205 - "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==",
1203 + "version": "7.29.4",
1204 + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.4.tgz",
1205 + "integrity": "sha512-N7QmZ0xRZfjHOfZeQLJjwgX2zS9pdGHSVl/cjSGlo4dXMqvurfxXDMKY4RqEKzPozV78VMcd0lxyG13mlbKc4w==",
1206 "dev": true,
1207 "license": "MIT",
1208 "dependencies": {
1209 - "@babel/helper-module-transforms": "^7.25.9",
1210 - "@babel/helper-plugin-utils": "^7.25.9",
1211 - "@babel/helper-validator-identifier": "^7.25.9",
1212 - "@babel/traverse": "^7.25.9"
1209 + "@babel/helper-module-transforms": "^7.28.6",
1210 + "@babel/helper-plugin-utils": "^7.28.6",
1211 + "@babel/helper-validator-identifier": "^7.28.5",
1212 + "@babel/traverse": "^7.29.0"
1213 },
1214 "engines": {
1215 "node": ">=6.9.0"
@@ -3254,9 +3254,9 @@
3254 "license": "MIT"
3255 },
3256 "node_modules/@rejetto/nat-upnp": {
3257 - "version": "2.1.3",
3258 - "resolved": "https://registry.npmjs.org/@rejetto/nat-upnp/-/nat-upnp-2.1.3.tgz",
3259 - "integrity": "sha512-ErWTxmkakJMADr7sQkGiqK7+hRLKPbIu99PgqsPsePvlC28Vnf85LxTSAJTYiRrt3BTDeqBKEgUWsr9CPLLBzQ==",
3257 + "version": "2.1.4",
3258 + "resolved": "https://registry.npmjs.org/@rejetto/nat-upnp/-/nat-upnp-2.1.4.tgz",
3259 + "integrity": "sha512-Jtj9aCqTG6J5v+8HlHlJjoO8WbClYUSq05WnS/tbQuQNHgfSyOSzrUsiEX8UJMAwd8W2kM4V95U9J5/VEDhtaA==",
3260 "license": "MIT",
3261 "dependencies": {
3262 "fast-xml-parser": "^5.3.4"
@@ -6001,9 +6001,9 @@
6001 }
6002 },
6003 "node_modules/fast-xml-builder": {
6004 - "version": "1.1.5",
6005 - "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.5.tgz",
6006 - "integrity": "sha512-4TJn/8FKLeslLAH3dnohXqE3QSoxkhvaMzepOIZytwJXZO69Bfz0HBdDHzOTOon6G59Zrk6VQ2bEiv1t61rfkA==",
6004 + "version": "1.2.0",
6005 + "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.0.tgz",
6006 + "integrity": "sha512-00aAWieqff+ZJhsXA4g1g7M8k+7AYoMUUHF+/zFb5U6Uv/P0Vl4QZo84/IcufzYalLuEj9928bXN9PbbFzMF0Q==",
6007 "funding": [
6008 {
6009 "type": "github",
@@ -6012,7 +6012,8 @@
6012 ],
6013 "license": "MIT",
6014 "dependencies": {
6015 - "path-expression-matcher": "^1.1.3"
6015 + "path-expression-matcher": "^1.5.0",
6016 + "xml-naming": "^0.1.0"
6017 }
6018 },
6019 "node_modules/fast-xml-parser": {
@@ -9799,6 +9800,21 @@
9800 "url": "https://github.com/sponsors/sindresorhus"
9801 }
9802 },
9803 + "node_modules/xml-naming": {
9804 + "version": "0.1.0",
9805 + "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz",
9806 + "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw==",
9807 + "funding": [
9808 + {
9809 + "type": "github",
9810 + "url": "https://github.com/sponsors/NaturalIntelligence"
9811 + }
9812 + ],
9813 + "license": "MIT",
9814 + "engines": {
9815 + "node": ">=16.0.0"
9816 + }
9817 + },
9818 "node_modules/xxhashjs": {
9819 "version": "0.2.2",
9820 "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz",
@@ -10090,14 +10106,14 @@
10106 }
10107 },
10108 "@babel/helper-module-transforms": {
10093 - "version": "7.26.0",
10094 - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
10095 - "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
10109 + "version": "7.28.6",
10110 + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz",
10111 + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==",
10112 "dev": true,
10113 "requires": {
10098 - "@babel/helper-module-imports": "^7.25.9",
10099 - "@babel/helper-validator-identifier": "^7.25.9",
10100 - "@babel/traverse": "^7.25.9"
10114 + "@babel/helper-module-imports": "^7.28.6",
10115 + "@babel/helper-validator-identifier": "^7.28.5",
10116 + "@babel/traverse": "^7.28.6"
10117 }
10118 },
10119 "@babel/helper-optimise-call-expression": {
@@ -10521,15 +10537,15 @@
10537 }
10538 },
10539 "@babel/plugin-transform-modules-systemjs": {
10524 - "version": "7.25.9",
10525 - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz",
10526 - "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==",
10540 + "version": "7.29.4",
10541 + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.4.tgz",
10542 + "integrity": "sha512-N7QmZ0xRZfjHOfZeQLJjwgX2zS9pdGHSVl/cjSGlo4dXMqvurfxXDMKY4RqEKzPozV78VMcd0lxyG13mlbKc4w==",
10543 "dev": true,
10544 "requires": {
10529 - "@babel/helper-module-transforms": "^7.25.9",
10530 - "@babel/helper-plugin-utils": "^7.25.9",
10531 - "@babel/helper-validator-identifier": "^7.25.9",
10532 - "@babel/traverse": "^7.25.9"
10545 + "@babel/helper-module-transforms": "^7.28.6",
10546 + "@babel/helper-plugin-utils": "^7.28.6",
10547 + "@babel/helper-validator-identifier": "^7.28.5",
10548 + "@babel/traverse": "^7.29.0"
10549 }
10550 },
10551 "@babel/plugin-transform-modules-umd": {
@@ -11837,9 +11853,9 @@
11853 "integrity": "sha512-C9ZEfxVjMyoRvHeg3Vzx5nEHvxFC1COlyPMzrHVpRSNlvnbyyOy9rCxYOVbvXVYqp1Ms9oXgu4M0LCPuDfmtaA=="
11854 },
11855 "@rejetto/nat-upnp": {
11840 - "version": "2.1.3",
11841 - "resolved": "https://registry.npmjs.org/@rejetto/nat-upnp/-/nat-upnp-2.1.3.tgz",
11842 - "integrity": "sha512-ErWTxmkakJMADr7sQkGiqK7+hRLKPbIu99PgqsPsePvlC28Vnf85LxTSAJTYiRrt3BTDeqBKEgUWsr9CPLLBzQ==",
11856 + "version": "2.1.4",
11857 + "resolved": "https://registry.npmjs.org/@rejetto/nat-upnp/-/nat-upnp-2.1.4.tgz",
11858 + "integrity": "sha512-Jtj9aCqTG6J5v+8HlHlJjoO8WbClYUSq05WnS/tbQuQNHgfSyOSzrUsiEX8UJMAwd8W2kM4V95U9J5/VEDhtaA==",
11859 "requires": {
11860 "fast-xml-parser": "^5.3.4"
11861 }
@@ -13597,11 +13613,12 @@
13613 }
13614 },
13615 "fast-xml-builder": {
13600 - "version": "1.1.5",
13601 - "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.5.tgz",
13602 - "integrity": "sha512-4TJn/8FKLeslLAH3dnohXqE3QSoxkhvaMzepOIZytwJXZO69Bfz0HBdDHzOTOon6G59Zrk6VQ2bEiv1t61rfkA==",
13616 + "version": "1.2.0",
13617 + "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.0.tgz",
13618 + "integrity": "sha512-00aAWieqff+ZJhsXA4g1g7M8k+7AYoMUUHF+/zFb5U6Uv/P0Vl4QZo84/IcufzYalLuEj9928bXN9PbbFzMF0Q==",
13619 "requires": {
13604 - "path-expression-matcher": "^1.1.3"
13620 + "path-expression-matcher": "^1.5.0",
13621 + "xml-naming": "^0.1.0"
13622 }
13623 },
13624 "fast-xml-parser": {
@@ -16180,6 +16197,11 @@
16197 }
16198 }
16199 },
16200 + "xml-naming": {
16201 + "version": "0.1.0",
16202 + "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz",
16203 + "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw=="
16204 + },
16205 "xxhashjs": {
16206 "version": "0.2.2",
16207 "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz",
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "hfs",
3 - "version": "3.1.4",
3 + "version": "3.1.5",
4 "description": "HTTP File Server",
5 "keywords": ["file server", "http server"],
6 "homepage": "https://rejetto.com/hfs",
tests/config.yaml
+1 -1
@@ -231,7 +231,7 @@ accounts:
231 admins:
232 allow_net: ::1
233 admin: true
234 -version: 3.2.0-alpha1
234 +version: 3.1.5
235 max_downloads_per_account: 2
236 max_downloads: 1
237 roots: