step-node-agent 3.25.2 → 3.25.4

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.
Files changed (42) hide show
  1. package/node_modules/aws4/README.md +3 -5
  2. package/node_modules/aws4/aws4.js +21 -19
  3. package/node_modules/aws4/package.json +2 -2
  4. package/node_modules/is-core-module/CHANGELOG.md +15 -0
  5. package/node_modules/is-core-module/core.json +3 -0
  6. package/node_modules/is-core-module/package.json +10 -7
  7. package/node_modules/is-core-module/test/index.js +5 -0
  8. package/node_modules/object-inspect/CHANGELOG.md +15 -0
  9. package/node_modules/object-inspect/index.js +4 -1
  10. package/node_modules/object-inspect/package.json +14 -9
  11. package/node_modules/object-inspect/readme.markdown +9 -11
  12. package/node_modules/underscore/amd/_setup.js +1 -1
  13. package/node_modules/underscore/amd/_stringTagBug.js +6 -3
  14. package/node_modules/underscore/amd/isDataView.js +4 -2
  15. package/node_modules/underscore/amd/isEqual.js +1 -1
  16. package/node_modules/underscore/cjs/_setup.js +1 -1
  17. package/node_modules/underscore/cjs/_stringTagBug.js +6 -3
  18. package/node_modules/underscore/cjs/isDataView.js +4 -2
  19. package/node_modules/underscore/cjs/isEqual.js +1 -1
  20. package/node_modules/underscore/modules/_setup.js +1 -1
  21. package/node_modules/underscore/modules/_stringTagBug.js +5 -2
  22. package/node_modules/underscore/modules/index.js +2 -2
  23. package/node_modules/underscore/modules/isDataView.js +5 -3
  24. package/node_modules/underscore/modules/isEqual.js +2 -2
  25. package/node_modules/underscore/modules/package.json +1 -1
  26. package/node_modules/underscore/package.json +2 -2
  27. package/node_modules/underscore/underscore-esm-min.js +3 -3
  28. package/node_modules/underscore/underscore-esm-min.js.map +1 -1
  29. package/node_modules/underscore/underscore-esm.js +13 -8
  30. package/node_modules/underscore/underscore-esm.js.map +1 -1
  31. package/node_modules/underscore/underscore-min.js +3 -3
  32. package/node_modules/underscore/underscore-min.js.map +1 -1
  33. package/node_modules/underscore/underscore-node-f.cjs +13 -8
  34. package/node_modules/underscore/underscore-node-f.cjs.map +1 -1
  35. package/node_modules/underscore/underscore-node.cjs +2 -2
  36. package/node_modules/underscore/underscore-node.mjs +2 -2
  37. package/node_modules/underscore/underscore-umd-min.js +3 -3
  38. package/node_modules/underscore/underscore-umd-min.js.map +1 -1
  39. package/node_modules/underscore/underscore-umd.js +13 -8
  40. package/node_modules/underscore/underscore-umd.js.map +1 -1
  41. package/node_modules/underscore/underscore.js +13 -8
  42. package/package.json +1 -1
@@ -1,14 +1,12 @@
1
1
  aws4
2
2
  ----
3
3
 
4
- [![Build Status](https://api.travis-ci.org/mhart/aws4.png?branch=master)](https://travis-ci.org/github/mhart/aws4)
5
-
6
- A small utility to sign vanilla Node.js http(s) request options using Amazon's
4
+ A small utility to sign [vanilla Node.js http(s)](https://nodejs.org/api/http.html) request options using Amazon's
7
5
  [AWS Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).
8
6
 
9
- If you want to sign and send AWS requests in a browser, or an environment like [Cloudflare Workers](https://developers.cloudflare.com/workers/), then check out [aws4fetch](https://github.com/mhart/aws4fetch) – otherwise you can also bundle this library for use [in older browsers](./browser).
7
+ If you want to sign and send AWS requests using [`fetch()`](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API), then check out [aws4fetch](https://github.com/mhart/aws4fetch) – otherwise you can also bundle this library for use [in older browsers](./browser).
10
8
 
11
- The only AWS service that *doesn't* support v4 as of 2020-05-22 is
9
+ The only AWS service I know of that *doesn't* support v4 is
12
10
  [SimpleDB](https://docs.aws.amazon.com/AmazonSimpleDB/latest/DeveloperGuide/SDB_API.html)
13
11
  (it only supports [AWS Signature Version 2](https://github.com/mhart/aws2)).
14
12
 
@@ -295,29 +295,31 @@ RequestSigner.prototype.canonicalString = function() {
295
295
  ].join('\n')
296
296
  }
297
297
 
298
+ RequestSigner.prototype.filterHeaders = function() {
299
+ var headers = this.request.headers,
300
+ extraHeadersToInclude = this.extraHeadersToInclude,
301
+ extraHeadersToIgnore = this.extraHeadersToIgnore
302
+ this.filteredHeaders = Object.keys(headers)
303
+ .map(function(key) { return [key.toLowerCase(), headers[key]] })
304
+ .filter(function(entry) {
305
+ return extraHeadersToInclude[entry[0]] ||
306
+ (HEADERS_TO_IGNORE[entry[0]] == null && !extraHeadersToIgnore[entry[0]])
307
+ })
308
+ .sort(function(a, b) { return a[0] < b[0] ? -1 : 1 })
309
+ }
310
+
298
311
  RequestSigner.prototype.canonicalHeaders = function() {
299
- var headers = this.request.headers
300
- function trimAll(header) {
301
- return header.toString().trim().replace(/\s+/g, ' ')
302
- }
303
- return Object.keys(headers)
304
- .filter(function(key) { return HEADERS_TO_IGNORE[key.toLowerCase()] == null })
305
- .sort(function(a, b) { return a.toLowerCase() < b.toLowerCase() ? -1 : 1 })
306
- .map(function(key) { return key.toLowerCase() + ':' + trimAll(headers[key]) })
307
- .join('\n')
312
+ if (!this.filteredHeaders) this.filterHeaders()
313
+
314
+ return this.filteredHeaders.map(function(entry) {
315
+ return entry[0] + ':' + entry[1].toString().trim().replace(/\s+/g, ' ')
316
+ }).join('\n')
308
317
  }
309
318
 
310
319
  RequestSigner.prototype.signedHeaders = function() {
311
- var extraHeadersToInclude = this.extraHeadersToInclude,
312
- extraHeadersToIgnore = this.extraHeadersToIgnore
313
- return Object.keys(this.request.headers)
314
- .map(function(key) { return key.toLowerCase() })
315
- .filter(function(key) {
316
- return extraHeadersToInclude[key] ||
317
- (HEADERS_TO_IGNORE[key] == null && !extraHeadersToIgnore[key])
318
- })
319
- .sort()
320
- .join(';')
320
+ if (!this.filteredHeaders) this.filterHeaders()
321
+
322
+ return this.filteredHeaders.map(function(entry) { return entry[0] }).join(';')
321
323
  }
322
324
 
323
325
  RequestSigner.prototype.credentialString = function() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aws4",
3
- "version": "1.13.0",
3
+ "version": "1.13.1",
4
4
  "description": "Signs and prepares requests using AWS Signature Version 4",
5
5
  "author": "Michael Hart <michael.hart.au@gmail.com> (https://github.com/mhart)",
6
6
  "license": "MIT",
@@ -15,7 +15,7 @@
15
15
  "integration": "node ./test/slow.js"
16
16
  },
17
17
  "devDependencies": {
18
- "mocha": "^10.4.0",
18
+ "mocha": "^10.7.0",
19
19
  "should": "^13.2.3"
20
20
  }
21
21
  }
@@ -5,6 +5,21 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [v2.15.0](https://github.com/inspect-js/is-core-module/compare/v2.14.0...v2.15.0) - 2024-07-17
9
+
10
+ ### Commits
11
+
12
+ - [New] add `node:sea` [`2819fb3`](https://github.com/inspect-js/is-core-module/commit/2819fb3eae312fa64643bc5430ebd06ec0f3fb88)
13
+
14
+ ## [v2.14.0](https://github.com/inspect-js/is-core-module/compare/v2.13.1...v2.14.0) - 2024-06-20
15
+
16
+ ### Commits
17
+
18
+ - [Dev Deps] update `@ljharb/eslint-config`, `aud`, `mock-property`, `npmignore`, `tape` [`0e43200`](https://github.com/inspect-js/is-core-module/commit/0e432006d97237cc082d41e6a593e87c81068364)
19
+ - [meta] add missing `engines.node` [`4ea3af8`](https://github.com/inspect-js/is-core-module/commit/4ea3af88891a1d4f96026f0ec0ef08c67cd1bd24)
20
+ - [New] add `test/mock_loader` [`e9fbd29`](https://github.com/inspect-js/is-core-module/commit/e9fbd2951383be070aeffb9ebbf3715237282610)
21
+ - [Deps] update `hasown` [`57f1940`](https://github.com/inspect-js/is-core-module/commit/57f1940947b3e368abdf529232d2f17d88909358)
22
+
8
23
  ## [v2.13.1](https://github.com/inspect-js/is-core-module/compare/v2.13.0...v2.13.1) - 2023-10-20
9
24
 
10
25
  ### Commits
@@ -89,6 +89,7 @@
89
89
  "node:readline/promises": ">= 17",
90
90
  "repl": true,
91
91
  "node:repl": [">= 14.18 && < 15", ">= 16"],
92
+ "node:sea": [">= 20.12 && < 21", ">= 21.7"],
92
93
  "smalloc": ">= 0.11.5 && < 3",
93
94
  "_stream_duplex": ">= 0.9.4",
94
95
  "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"],
@@ -116,6 +117,8 @@
116
117
  "node:sys": [">= 14.18 && < 15", ">= 16"],
117
118
  "test/reporters": ">= 19.9 && < 20.2",
118
119
  "node:test/reporters": [">= 18.17 && < 19", ">= 19.9", ">= 20"],
120
+ "test/mock_loader": ">= 22.3",
121
+ "node:test/mock_loader": ">= 22.3",
119
122
  "node:test": [">= 16.17 && < 17", ">= 18"],
120
123
  "timers": true,
121
124
  "node:timers": [">= 14.18 && < 15", ">= 16"],
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "is-core-module",
3
- "version": "2.13.1",
3
+ "version": "2.15.0",
4
4
  "description": "Is this specifier a node.js core module?",
5
5
  "main": "index.js",
6
6
  "sideEffects": false,
@@ -42,20 +42,20 @@
42
42
  },
43
43
  "homepage": "https://github.com/inspect-js/is-core-module",
44
44
  "dependencies": {
45
- "hasown": "^2.0.0"
45
+ "hasown": "^2.0.2"
46
46
  },
47
47
  "devDependencies": {
48
- "@ljharb/eslint-config": "^21.1.0",
49
- "aud": "^2.0.3",
48
+ "@ljharb/eslint-config": "^21.1.1",
49
+ "aud": "^2.0.4",
50
50
  "auto-changelog": "^2.4.0",
51
51
  "eslint": "=8.8.0",
52
52
  "in-publish": "^2.0.1",
53
- "mock-property": "^1.0.2",
54
- "npmignore": "^0.3.0",
53
+ "mock-property": "^1.0.3",
54
+ "npmignore": "^0.3.1",
55
55
  "nyc": "^10.3.2",
56
56
  "safe-publish-latest": "^2.0.0",
57
57
  "semver": "^6.3.1",
58
- "tape": "^5.7.1"
58
+ "tape": "^5.8.1"
59
59
  },
60
60
  "auto-changelog": {
61
61
  "output": "CHANGELOG.md",
@@ -69,5 +69,8 @@
69
69
  "ignore": [
70
70
  ".github"
71
71
  ]
72
+ },
73
+ "engines": {
74
+ "node": ">= 0.4"
72
75
  }
73
76
  }
@@ -83,10 +83,15 @@ test('core modules', function (t) {
83
83
  'v8/tools/tickprocessor',
84
84
  'v8/tools/profile'
85
85
  ];
86
+
86
87
  // see https://github.com/nodejs/node/issues/42785
87
88
  if (semver.satisfies(process.version, '>= 18')) {
88
89
  libs = libs.concat('node:test');
89
90
  }
91
+ if (semver.satisfies(process.version, '^20.12 || >= 21.7')) {
92
+ libs = libs.concat('node:sea');
93
+ }
94
+
90
95
  for (var i = 0; i < libs.length; ++i) {
91
96
  var mod = libs[i];
92
97
  if (excludeList.indexOf(mod) === -1) {
@@ -5,6 +5,21 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [v1.13.2](https://github.com/inspect-js/object-inspect/compare/v1.13.1...v1.13.2) - 2024-06-21
9
+
10
+ ### Commits
11
+
12
+ - [readme] update badges [`8a51e6b`](https://github.com/inspect-js/object-inspect/commit/8a51e6bedaf389ec40cc4659e9df53e8543d176e)
13
+ - [Dev Deps] update `@ljharb/eslint-config`, `tape` [`ef05f58`](https://github.com/inspect-js/object-inspect/commit/ef05f58c9761a41416ab907299bf0fa79517014b)
14
+ - [Dev Deps] update `error-cause`, `has-tostringtag`, `tape` [`c0c6c26`](https://github.com/inspect-js/object-inspect/commit/c0c6c26c44cee6671f7c5d43d2b91d27c5c00d90)
15
+ - [Fix] Don't throw when `global` is not defined [`d4d0965`](https://github.com/inspect-js/object-inspect/commit/d4d096570f7dbd0e03266a96de11d05eb7b63e0f)
16
+ - [meta] add missing `engines.node` [`17a352a`](https://github.com/inspect-js/object-inspect/commit/17a352af6fe1ba6b70a19081674231eb1a50c940)
17
+ - [Dev Deps] update `globalthis` [`9c08884`](https://github.com/inspect-js/object-inspect/commit/9c08884aa662a149e2f11403f413927736b97da7)
18
+ - [Dev Deps] update `error-cause` [`6af352d`](https://github.com/inspect-js/object-inspect/commit/6af352d7c3929a4cc4c55768c27bf547a5e900f4)
19
+ - [Dev Deps] update `npmignore` [`94e617d`](https://github.com/inspect-js/object-inspect/commit/94e617d38831722562fa73dff4c895746861d267)
20
+ - [Dev Deps] update `mock-property` [`2ac24d7`](https://github.com/inspect-js/object-inspect/commit/2ac24d7e58cd388ad093c33249e413e05bbfd6c3)
21
+ - [Dev Deps] update `tape` [`46125e5`](https://github.com/inspect-js/object-inspect/commit/46125e58f1d1dcfb170ed3d1ea69da550ea8d77b)
22
+
8
23
  ## [v1.13.1](https://github.com/inspect-js/object-inspect/compare/v1.13.0...v1.13.1) - 2023-10-19
9
24
 
10
25
  ### Commits
@@ -244,7 +244,10 @@ module.exports = function inspect_(obj, options, depth, seen) {
244
244
  if (typeof window !== 'undefined' && obj === window) {
245
245
  return '{ [object Window] }';
246
246
  }
247
- if (obj === global) {
247
+ if (
248
+ (typeof globalThis !== 'undefined' && obj === globalThis)
249
+ || (typeof global !== 'undefined' && obj === global)
250
+ ) {
248
251
  return '{ [object globalThis] }';
249
252
  }
250
253
  if (!isDate(obj) && !isRegExp(obj)) {
@@ -1,31 +1,33 @@
1
1
  {
2
2
  "name": "object-inspect",
3
- "version": "1.13.1",
3
+ "version": "1.13.2",
4
4
  "description": "string representations of objects in node and the browser",
5
5
  "main": "index.js",
6
6
  "sideEffects": false,
7
7
  "devDependencies": {
8
- "@ljharb/eslint-config": "^21.1.0",
8
+ "@ljharb/eslint-config": "^21.1.1",
9
9
  "@pkgjs/support": "^0.0.6",
10
10
  "auto-changelog": "^2.4.0",
11
11
  "core-js": "^2.6.12",
12
- "error-cause": "^1.0.6",
12
+ "error-cause": "^1.0.8",
13
13
  "es-value-fixtures": "^1.4.2",
14
14
  "eslint": "=8.8.0",
15
15
  "for-each": "^0.3.3",
16
16
  "functions-have-names": "^1.2.3",
17
17
  "glob": "=10.3.7",
18
- "globalthis": "^1.0.3",
19
- "has-tostringtag": "^1.0.0",
18
+ "globalthis": "^1.0.4",
19
+ "has-symbols": "^1.0.3",
20
+ "has-tostringtag": "^1.0.2",
20
21
  "in-publish": "^2.0.1",
21
22
  "jackspeak": "=2.1.1",
22
23
  "make-arrow-function": "^1.2.0",
23
- "mock-property": "^1.0.2",
24
- "npmignore": "^0.3.0",
24
+ "mock-property": "^1.0.3",
25
+ "npmignore": "^0.3.1",
25
26
  "nyc": "^10.3.2",
26
27
  "safe-publish-latest": "^2.0.0",
28
+ "safer-buffer": "^2.1.2",
27
29
  "string.prototype.repeat": "^1.0.0",
28
- "tape": "^5.7.1"
30
+ "tape": "^5.8.1"
29
31
  },
30
32
  "scripts": {
31
33
  "prepack": "npmignore --auto --commentLines=autogenerated",
@@ -95,5 +97,8 @@
95
97
  "./test-core-js.js"
96
98
  ]
97
99
  },
98
- "support": true
100
+ "support": true,
101
+ "engines": {
102
+ "node": ">= 0.4"
103
+ }
99
104
  }
@@ -1,15 +1,13 @@
1
- # object-inspect <sup>[![Version Badge][2]][1]</sup>
1
+ # object-inspect <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
2
2
 
3
3
  string representations of objects in node and the browser
4
4
 
5
5
  [![github actions][actions-image]][actions-url]
6
6
  [![coverage][codecov-image]][codecov-url]
7
- [![dependency status][5]][6]
8
- [![dev dependency status][7]][8]
9
7
  [![License][license-image]][license-url]
10
8
  [![Downloads][downloads-image]][downloads-url]
11
9
 
12
- [![npm badge][11]][1]
10
+ [![npm badge][npm-badge-png]][package-url]
13
11
 
14
12
  # example
15
13
 
@@ -69,13 +67,13 @@ npm install object-inspect
69
67
 
70
68
  MIT
71
69
 
72
- [1]: https://npmjs.org/package/object-inspect
73
- [2]: https://versionbadg.es/inspect-js/object-inspect.svg
74
- [5]: https://david-dm.org/inspect-js/object-inspect.svg
75
- [6]: https://david-dm.org/inspect-js/object-inspect
76
- [7]: https://david-dm.org/inspect-js/object-inspect/dev-status.svg
77
- [8]: https://david-dm.org/inspect-js/object-inspect#info=devDependencies
78
- [11]: https://nodei.co/npm/object-inspect.png?downloads=true&stars=true
70
+ [package-url]: https://npmjs.org/package/object-inspect
71
+ [npm-version-svg]: https://versionbadg.es/inspect-js/object-inspect.svg
72
+ [deps-svg]: https://david-dm.org/inspect-js/object-inspect.svg
73
+ [deps-url]: https://david-dm.org/inspect-js/object-inspect
74
+ [dev-deps-svg]: https://david-dm.org/inspect-js/object-inspect/dev-status.svg
75
+ [dev-deps-url]: https://david-dm.org/inspect-js/object-inspect#info=devDependencies
76
+ [npm-badge-png]: https://nodei.co/npm/object-inspect.png?downloads=true&stars=true
79
77
  [license-image]: https://img.shields.io/npm/l/object-inspect.svg
80
78
  [license-url]: LICENSE
81
79
  [downloads-image]: https://img.shields.io/npm/dm/object-inspect.svg
@@ -1,7 +1,7 @@
1
1
  define(['exports'], function (exports) {
2
2
 
3
3
  // Current version.
4
- var VERSION = '1.13.6';
4
+ var VERSION = '1.13.7';
5
5
 
6
6
  // Establish the root object, `window` (`self`) in the browser, `global`
7
7
  // on the server, or `this` in some virtual machines. We use `self`
@@ -3,12 +3,15 @@ define(['exports', './_setup', './_hasObjectTag'], function (exports, _setup, _h
3
3
  // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.
4
4
  // In IE 11, the most common among them, this problem also applies to
5
5
  // `Map`, `WeakMap` and `Set`.
6
- var hasStringTagBug = (
7
- _setup.supportsDataView && _hasObjectTag(new DataView(new ArrayBuffer(8)))
6
+ // Also, there are cases where an application can override the native
7
+ // `DataView` object, in cases like that we can't use the constructor
8
+ // safely and should just rely on alternate `DataView` checks
9
+ var hasDataViewBug = (
10
+ _setup.supportsDataView && (!/\[native code\]/.test(String(DataView)) || _hasObjectTag(new DataView(new ArrayBuffer(8))))
8
11
  ),
9
12
  isIE11 = (typeof Map !== 'undefined' && _hasObjectTag(new Map));
10
13
 
11
- exports.hasStringTagBug = hasStringTagBug;
14
+ exports.hasDataViewBug = hasDataViewBug;
12
15
  exports.isIE11 = isIE11;
13
16
 
14
17
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -4,11 +4,13 @@ define(['./_tagTester', './isFunction', './isArrayBuffer', './_stringTagBug'], f
4
4
 
5
5
  // In IE 10 - Edge 13, we need a different heuristic
6
6
  // to determine whether an object is a `DataView`.
7
- function ie10IsDataView(obj) {
7
+ // Also, in cases where the native `DataView` is
8
+ // overridden we can't rely on the tag itself.
9
+ function alternateIsDataView(obj) {
8
10
  return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);
9
11
  }
10
12
 
11
- var isDataView$1 = (_stringTagBug.hasStringTagBug ? ie10IsDataView : isDataView);
13
+ var isDataView$1 = (_stringTagBug.hasDataViewBug ? alternateIsDataView : isDataView);
12
14
 
13
15
  return isDataView$1;
14
16
 
@@ -27,7 +27,7 @@ define(['./underscore', './_setup', './_getByteLength', './isTypedArray', './isF
27
27
  var className = _setup.toString.call(a);
28
28
  if (className !== _setup.toString.call(b)) return false;
29
29
  // Work around a bug in IE 10 - Edge 13.
30
- if (_stringTagBug.hasStringTagBug && className == '[object Object]' && isDataView(a)) {
30
+ if (_stringTagBug.hasDataViewBug && className == '[object Object]' && isDataView(a)) {
31
31
  if (!isDataView(b)) return false;
32
32
  className = tagDataView;
33
33
  }
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
2
 
3
3
  // Current version.
4
- var VERSION = '1.13.6';
4
+ var VERSION = '1.13.7';
5
5
 
6
6
  // Establish the root object, `window` (`self`) in the browser, `global`
7
7
  // on the server, or `this` in some virtual machines. We use `self`
@@ -6,10 +6,13 @@ var _hasObjectTag = require('./_hasObjectTag.js');
6
6
  // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.
7
7
  // In IE 11, the most common among them, this problem also applies to
8
8
  // `Map`, `WeakMap` and `Set`.
9
- var hasStringTagBug = (
10
- _setup.supportsDataView && _hasObjectTag(new DataView(new ArrayBuffer(8)))
9
+ // Also, there are cases where an application can override the native
10
+ // `DataView` object, in cases like that we can't use the constructor
11
+ // safely and should just rely on alternate `DataView` checks
12
+ var hasDataViewBug = (
13
+ _setup.supportsDataView && (!/\[native code\]/.test(String(DataView)) || _hasObjectTag(new DataView(new ArrayBuffer(8))))
11
14
  ),
12
15
  isIE11 = (typeof Map !== 'undefined' && _hasObjectTag(new Map));
13
16
 
14
- exports.hasStringTagBug = hasStringTagBug;
17
+ exports.hasDataViewBug = hasDataViewBug;
15
18
  exports.isIE11 = isIE11;
@@ -7,10 +7,12 @@ var isDataView = _tagTester('DataView');
7
7
 
8
8
  // In IE 10 - Edge 13, we need a different heuristic
9
9
  // to determine whether an object is a `DataView`.
10
- function ie10IsDataView(obj) {
10
+ // Also, in cases where the native `DataView` is
11
+ // overridden we can't rely on the tag itself.
12
+ function alternateIsDataView(obj) {
11
13
  return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);
12
14
  }
13
15
 
14
- var isDataView$1 = (_stringTagBug.hasStringTagBug ? ie10IsDataView : isDataView);
16
+ var isDataView$1 = (_stringTagBug.hasDataViewBug ? alternateIsDataView : isDataView);
15
17
 
16
18
  module.exports = isDataView$1;
@@ -36,7 +36,7 @@ function deepEq(a, b, aStack, bStack) {
36
36
  var className = _setup.toString.call(a);
37
37
  if (className !== _setup.toString.call(b)) return false;
38
38
  // Work around a bug in IE 10 - Edge 13.
39
- if (_stringTagBug.hasStringTagBug && className == '[object Object]' && isDataView(a)) {
39
+ if (_stringTagBug.hasDataViewBug && className == '[object Object]' && isDataView(a)) {
40
40
  if (!isDataView(b)) return false;
41
41
  className = tagDataView;
42
42
  }
@@ -1,5 +1,5 @@
1
1
  // Current version.
2
- export var VERSION = '1.13.6';
2
+ export var VERSION = '1.13.7';
3
3
 
4
4
  // Establish the root object, `window` (`self`) in the browser, `global`
5
5
  // on the server, or `this` in some virtual machines. We use `self`
@@ -4,7 +4,10 @@ import hasObjectTag from './_hasObjectTag.js';
4
4
  // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.
5
5
  // In IE 11, the most common among them, this problem also applies to
6
6
  // `Map`, `WeakMap` and `Set`.
7
- export var hasStringTagBug = (
8
- supportsDataView && hasObjectTag(new DataView(new ArrayBuffer(8)))
7
+ // Also, there are cases where an application can override the native
8
+ // `DataView` object, in cases like that we can't use the constructor
9
+ // safely and should just rely on alternate `DataView` checks
10
+ export var hasDataViewBug = (
11
+ supportsDataView && (!/\[native code\]/.test(String(DataView)) || hasObjectTag(new DataView(new ArrayBuffer(8))))
9
12
  ),
10
13
  isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));
@@ -1,9 +1,9 @@
1
1
  // Named Exports
2
2
  // =============
3
3
 
4
- // Underscore.js 1.13.6
4
+ // Underscore.js 1.13.7
5
5
  // https://underscorejs.org
6
- // (c) 2009-2022 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors
6
+ // (c) 2009-2024 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors
7
7
  // Underscore may be freely distributed under the MIT license.
8
8
 
9
9
  // Baseline setup.
@@ -1,14 +1,16 @@
1
1
  import tagTester from './_tagTester.js';
2
2
  import isFunction from './isFunction.js';
3
3
  import isArrayBuffer from './isArrayBuffer.js';
4
- import { hasStringTagBug } from './_stringTagBug.js';
4
+ import { hasDataViewBug } from './_stringTagBug.js';
5
5
 
6
6
  var isDataView = tagTester('DataView');
7
7
 
8
8
  // In IE 10 - Edge 13, we need a different heuristic
9
9
  // to determine whether an object is a `DataView`.
10
- function ie10IsDataView(obj) {
10
+ // Also, in cases where the native `DataView` is
11
+ // overridden we can't rely on the tag itself.
12
+ function alternateIsDataView(obj) {
11
13
  return obj != null && isFunction(obj.getInt8) && isArrayBuffer(obj.buffer);
12
14
  }
13
15
 
14
- export default (hasStringTagBug ? ie10IsDataView : isDataView);
16
+ export default (hasDataViewBug ? alternateIsDataView : isDataView);
@@ -3,7 +3,7 @@ import { toString, SymbolProto } from './_setup.js';
3
3
  import getByteLength from './_getByteLength.js';
4
4
  import isTypedArray from './isTypedArray.js';
5
5
  import isFunction from './isFunction.js';
6
- import { hasStringTagBug } from './_stringTagBug.js';
6
+ import { hasDataViewBug } from './_stringTagBug.js';
7
7
  import isDataView from './isDataView.js';
8
8
  import keys from './keys.js';
9
9
  import has from './_has.js';
@@ -36,7 +36,7 @@ function deepEq(a, b, aStack, bStack) {
36
36
  var className = toString.call(a);
37
37
  if (className !== toString.call(b)) return false;
38
38
  // Work around a bug in IE 10 - Edge 13.
39
- if (hasStringTagBug && className == '[object Object]' && isDataView(a)) {
39
+ if (hasDataViewBug && className == '[object Object]' && isDataView(a)) {
40
40
  if (!isDataView(b)) return false;
41
41
  className = tagDataView;
42
42
  }
@@ -1 +1 @@
1
- {"type":"module","version":"1.13.6"}
1
+ {"type":"module","version":"1.13.7"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "underscore",
3
3
  "description": "JavaScript's functional programming helper library.",
4
- "version": "1.13.6",
4
+ "version": "1.13.7",
5
5
  "author": "Jeremy Ashkenas <jeremy@documentcloud.org>",
6
6
  "license": "MIT",
7
7
  "homepage": "https://underscorejs.org",
@@ -89,7 +89,7 @@
89
89
  "build-esm": "npm run module-package-json && npm run minify-esm -- --source-map content=underscore-esm.js.map --source-map-url \" \" -o underscore-esm-min.js",
90
90
  "alias-bundle": "cpy --rename=underscore.js underscore-umd.js . && cpy --rename=underscore-min.js underscore-umd-min.js . && cpy --rename=underscore-min.js.map underscore-umd-min.js.map .",
91
91
  "build": "npm run bundle && npm run build-umd && npm run build-esm && npm run alias-bundle",
92
- "doc": "docco underscore-esm.js && docco modules/*.js -c docco.css -t docs/linked-esm.jst",
92
+ "doc": "patch-package && docco underscore-esm.js && docco modules/*.js -c docco.css -t docs/linked-esm.jst",
93
93
  "weight": "npm run bundle && npm run minify-umd | gzip-size | pretty-bytes",
94
94
  "prepublishOnly": "npm run build && npm run doc"
95
95
  },