maxmind 4.3.23 → 4.3.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/fs.d.ts CHANGED
@@ -4,5 +4,6 @@ declare const _default: {
4
4
  readFile: typeof fs.readFile.__promisify__;
5
5
  watchFile: typeof fs.watchFile;
6
6
  createReadStream: typeof fs.createReadStream;
7
+ stat: typeof fs.stat.__promisify__;
7
8
  };
8
9
  export default _default;
package/lib/fs.js CHANGED
@@ -10,5 +10,6 @@ exports.default = {
10
10
  readFile: util_1.default.promisify(fs_1.default.readFile),
11
11
  watchFile: fs_1.default.watchFile,
12
12
  createReadStream: fs_1.default.createReadStream,
13
+ stat: util_1.default.promisify(fs_1.default.stat),
13
14
  };
14
15
  //# sourceMappingURL=fs.js.map
package/lib/fs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../src/fs.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,kBAAe;IACb,UAAU,EAAE,YAAE,CAAC,UAAU;IACzB,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,YAAE,CAAC,QAAQ,CAAC;IACrC,SAAS,EAAE,YAAE,CAAC,SAAS;IACvB,gBAAgB,EAAE,YAAE,CAAC,gBAAgB;CACtC,CAAC"}
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../src/fs.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,kBAAe;IACb,UAAU,EAAE,YAAE,CAAC,UAAU;IACzB,QAAQ,EAAE,cAAI,CAAC,SAAS,CAAC,YAAE,CAAC,QAAQ,CAAC;IACrC,SAAS,EAAE,YAAE,CAAC,SAAS;IACvB,gBAAgB,EAAE,YAAE,CAAC,gBAAgB;IACrC,IAAI,EAAE,cAAI,CAAC,SAAS,CAAC,YAAE,CAAC,IAAI,CAAC;CAC9B,CAAC"}
package/lib/index.js CHANGED
@@ -26,22 +26,38 @@ const fs_1 = __importDefault(require("./fs"));
26
26
  const ip_1 = __importDefault(require("./ip"));
27
27
  const is_gzip_1 = __importDefault(require("./is-gzip"));
28
28
  const utils_1 = __importDefault(require("./utils"));
29
- const readFile = async (filepath) => {
30
- return new Promise((resolve, reject) => {
31
- const chunks = [];
32
- const stream = fs_1.default.createReadStream(filepath, {
33
- highWaterMark: 64 * 1024 * 1024,
34
- });
35
- stream.on('data', (chunk) => {
36
- chunks.push(chunk);
37
- });
38
- stream.on('end', () => {
39
- resolve(Buffer.concat(chunks));
40
- });
41
- stream.on('error', (err) => {
42
- reject(err);
43
- });
29
+ const LARGE_FILE_THRESHOLD = 512 * 1024 * 1024;
30
+ const STREAM_WATERMARK = 8 * 1024 * 1024;
31
+ const readLargeFile = async (filepath, size) => new Promise((resolve, reject) => {
32
+ let buffer = Buffer.allocUnsafe(size);
33
+ let offset = 0;
34
+ const stream = fs_1.default.createReadStream(filepath, {
35
+ highWaterMark: STREAM_WATERMARK,
44
36
  });
37
+ stream.on('data', (chunk) => {
38
+ if (Buffer.isBuffer(chunk)) {
39
+ chunk.copy(buffer, offset);
40
+ offset += chunk.length;
41
+ }
42
+ else {
43
+ const bufferChunk = Buffer.from(chunk);
44
+ bufferChunk.copy(buffer, offset);
45
+ offset += bufferChunk.length;
46
+ }
47
+ });
48
+ stream.on('end', () => {
49
+ stream.close();
50
+ resolve(buffer);
51
+ });
52
+ stream.on('error', (err) => {
53
+ reject(err);
54
+ });
55
+ });
56
+ const readFile = async (filepath) => {
57
+ const fstat = await fs_1.default.stat(filepath);
58
+ return fstat.size < LARGE_FILE_THRESHOLD
59
+ ? fs_1.default.readFile(filepath)
60
+ : readLargeFile(filepath, fstat.size);
45
61
  };
46
62
  const open = async (filepath, opts, cb) => {
47
63
  var _a;
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "maxmind",
3
- "version": "4.3.23",
3
+ "version": "4.3.25",
4
4
  "homepage": "https://github.com/runk/node-maxmind",
5
5
  "description": "IP lookup using Maxmind databases",
6
6
  "keywords": [
@@ -27,23 +27,23 @@
27
27
  "Mariano Facundo Scigliano @MarianoFacundoArch"
28
28
  ],
29
29
  "dependencies": {
30
- "mmdb-lib": "2.1.1",
30
+ "mmdb-lib": "2.2.0",
31
31
  "tiny-lru": "11.2.11"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/ip6addr": "0.2.6",
35
35
  "@types/jest": "29.5.14",
36
36
  "@types/netmask": "2.0.5",
37
- "@types/node": "22.8.6",
38
- "@types/sinon": "17.0.3",
37
+ "@types/node": "22.15.3",
38
+ "@types/sinon": "17.0.4",
39
39
  "ip-address": "10.0.1",
40
40
  "ip6addr": "0.2.5",
41
41
  "jest": "29.7.0",
42
- "prettier": "3.3.3",
43
- "semantic-release": "24.2.0",
44
- "sinon": "19.0.2",
45
- "ts-jest": "29.2.5",
46
- "typescript": "5.6.3"
42
+ "prettier": "3.5.3",
43
+ "semantic-release": "24.2.3",
44
+ "sinon": "20.0.0",
45
+ "ts-jest": "29.3.2",
46
+ "typescript": "5.8.3"
47
47
  },
48
48
  "repository": {
49
49
  "type": "git",