From ad369ab938a0d09d1e0b4782133b268be189e513 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 14:56:18 -0700 Subject: [PATCH 01/10] Minor formatting --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 56f50c8..eafda42 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ stack-generator [![module format](https://img.shields.io/badge/module%20format-umd-lightgrey.svg?style=flat-square&colorB=ff69b4)](https://github.com/stacktracejs/stack-generator/releases) [![code of conduct](https://img.shields.io/badge/code%20of-conduct-lightgrey.svg?style=flat-square&colorB=ff69b4)](http://todogroup.org/opencodeofconduct/#stacktrace.js/me@eriwen.com) -Generate artificial backtrace by walking arguments.callee.caller chain. **Works everywhere except [strict-mode](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode)**. +Generate artificial stacktrace by walking `arguments.callee.caller` chain. **Works everywhere except [strict-mode](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode)**. ## Usage ``` From 3bbae7713f90630f23b40f7411a70c14c9ba6696 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 17:18:03 -0700 Subject: [PATCH 02/10] Declare TypeScript definitions --- package.json | 10 +++++++++- stack-generator.d.ts | 25 +++++++++++++++++++++++++ stack-generator.js | 2 +- 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 stack-generator.d.ts diff --git a/package.json b/package.json index 0f1426a..e30905d 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "url": "git://github.com/stacktracejs/stack-generator.git" }, "dependencies": { - "stackframe": "^1.3.0" + "stackframe": "^1.3.1" }, "devDependencies": { "eslint": "^8.17.0", @@ -43,6 +43,14 @@ "url": "https://github.com/stacktracejs/stack-generator/issues" }, "main": "./stack-generator.js", + "typings": "./stack-generator.d.js", + "files": [ + "LICENSE", + "README.md", + "stack-generator.js", + "stack-generator.d.ts", + "dist/" + ], "scripts": { "lint": "eslint --fix stack-generator.js spec/", "test": "karma start karma.conf.js --single-run", diff --git a/stack-generator.d.ts b/stack-generator.d.ts new file mode 100644 index 0000000..5db21d0 --- /dev/null +++ b/stack-generator.d.ts @@ -0,0 +1,25 @@ +// Type definitions for StackGenerator v2.0 +// Project: https://github.com/stacktracejs/stack-generator +// Definitions by: Eric Wendelin +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import StackFrame from "stackframe"; + +declare namespace StackGenerator { + export type {StackFrame}; + + interface StackGeneratorOptions { + /** Maximum number of StackFrames to return. Default is 10 */ + maxStackSize: number + } + + /** + * Generate artificial backtrace by walking arguments.callee.caller chain. + * + * @param {Object} opts object + * @return {Array} of StackFrames + */ + export function backtrace(opts: StackGeneratorOptions): StackFrame[]; +} + +export default StackGenerator; diff --git a/stack-generator.js b/stack-generator.js index 6941d09..4339a8a 100644 --- a/stack-generator.js +++ b/stack-generator.js @@ -6,7 +6,7 @@ if (typeof define === 'function' && define.amd) { define('stack-generator', ['stackframe'], factory); } else if (typeof exports === 'object') { - module.exports = factory(require('stackframe')); + module.exports.default = factory(require('stackframe')); } else { root.StackGenerator = factory(root.StackFrame); } From a9cc551ff9abe5364cb612fc8121661c2a189e32 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 17:18:14 -0700 Subject: [PATCH 03/10] 2.0.7 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 51f9a42..71fb1b8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "stack-generator", - "version": "2.0.6", + "version": "2.0.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "stack-generator", - "version": "2.0.6", + "version": "2.0.7", "license": "MIT", "dependencies": { "stackframe": "^1.3.0" diff --git a/package.json b/package.json index e30905d..c6aff1a 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "Oliver Salzburg (https://github.com/oliversalzburg)", "Ben Gourley (https://github.com/bengourley)" ], - "version": "2.0.6", + "version": "2.0.7", "license": "MIT", "keywords": [ "stacktrace", From 998696a28555adc9aac7afd13120d43594c3698a Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 17:19:11 -0700 Subject: [PATCH 04/10] Update dist/ --- dist/stack-generator.js | 2 +- dist/stack-generator.min.js | 2 +- dist/stack-generator.min.js.map | 2 +- package-lock.json | 14 +++++++------- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/dist/stack-generator.js b/dist/stack-generator.js index 6941d09..4339a8a 100644 --- a/dist/stack-generator.js +++ b/dist/stack-generator.js @@ -6,7 +6,7 @@ if (typeof define === 'function' && define.amd) { define('stack-generator', ['stackframe'], factory); } else if (typeof exports === 'object') { - module.exports = factory(require('stackframe')); + module.exports.default = factory(require('stackframe')); } else { root.StackGenerator = factory(root.StackFrame); } diff --git a/dist/stack-generator.min.js b/dist/stack-generator.min.js index 810fc89..0b8a186 100644 --- a/dist/stack-generator.min.js +++ b/dist/stack-generator.min.js @@ -1,2 +1,2 @@ -!function(t,e){"use strict";"function"==typeof define&&define.amd?define("stackframe",[],e):"object"==typeof exports?module.exports=e():t.StackFrame=e()}(this,function(){"use strict";function t(t){return t.charAt(0).toUpperCase()+t.substring(1)}function e(t){return function(){return this[t]}}var r=["isConstructor","isEval","isNative","isToplevel"],n=["columnNumber","lineNumber"],i=["fileName","functionName","source"],o=r.concat(n,i,["args"],["evalOrigin"]);function a(e){if(e)for(var r=0;r Date: Sun, 5 Jun 2022 17:19:32 -0700 Subject: [PATCH 05/10] 2.0.8 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3421d1d..894d614 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "stack-generator", - "version": "2.0.7", + "version": "2.0.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "stack-generator", - "version": "2.0.7", + "version": "2.0.8", "license": "MIT", "dependencies": { "stackframe": "^1.3.1" diff --git a/package.json b/package.json index c6aff1a..c3e85ca 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "Oliver Salzburg (https://github.com/oliversalzburg)", "Ben Gourley (https://github.com/bengourley)" ], - "version": "2.0.7", + "version": "2.0.8", "license": "MIT", "keywords": [ "stacktrace", From ea22ed701d5d5824c86a0949171bebafe0d7ae61 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 21:14:54 -0700 Subject: [PATCH 06/10] Revert using default export for module definition --- stack-generator.d.ts | 2 +- stack-generator.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/stack-generator.d.ts b/stack-generator.d.ts index 5db21d0..59ef308 100644 --- a/stack-generator.d.ts +++ b/stack-generator.d.ts @@ -22,4 +22,4 @@ declare namespace StackGenerator { export function backtrace(opts: StackGeneratorOptions): StackFrame[]; } -export default StackGenerator; +export = StackGenerator; diff --git a/stack-generator.js b/stack-generator.js index 4339a8a..6941d09 100644 --- a/stack-generator.js +++ b/stack-generator.js @@ -6,7 +6,7 @@ if (typeof define === 'function' && define.amd) { define('stack-generator', ['stackframe'], factory); } else if (typeof exports === 'object') { - module.exports.default = factory(require('stackframe')); + module.exports = factory(require('stackframe')); } else { root.StackGenerator = factory(root.StackFrame); } From a179a381cd450c54d6261e910c3e661b03b29ff8 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Sun, 5 Jun 2022 21:15:21 -0700 Subject: [PATCH 07/10] Update dist/ --- dist/stack-generator.js | 2 +- dist/stack-generator.min.js | 2 +- dist/stack-generator.min.js.map | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/stack-generator.js b/dist/stack-generator.js index 4339a8a..6941d09 100644 --- a/dist/stack-generator.js +++ b/dist/stack-generator.js @@ -6,7 +6,7 @@ if (typeof define === 'function' && define.amd) { define('stack-generator', ['stackframe'], factory); } else if (typeof exports === 'object') { - module.exports.default = factory(require('stackframe')); + module.exports = factory(require('stackframe')); } else { root.StackGenerator = factory(root.StackFrame); } diff --git a/dist/stack-generator.min.js b/dist/stack-generator.min.js index 0b8a186..a0bc1ce 100644 --- a/dist/stack-generator.min.js +++ b/dist/stack-generator.min.js @@ -1,2 +1,2 @@ -!function(t,e){"use strict";"function"==typeof define&&define.amd?define("stackframe",[],e):"object"==typeof exports?module.exports.default=e():t.StackFrame=e()}(this,function(){"use strict";function t(t){return t.charAt(0).toUpperCase()+t.substring(1)}function e(t){return function(){return this[t]}}var r=["isConstructor","isEval","isNative","isToplevel"],n=["columnNumber","lineNumber"],i=["fileName","functionName","source"],o=r.concat(n,i,["args"],["evalOrigin"]);function a(e){if(e)for(var r=0;r Date: Sun, 5 Jun 2022 21:15:30 -0700 Subject: [PATCH 08/10] 2.0.9 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 894d614..daf58bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "stack-generator", - "version": "2.0.8", + "version": "2.0.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "stack-generator", - "version": "2.0.8", + "version": "2.0.9", "license": "MIT", "dependencies": { "stackframe": "^1.3.1" diff --git a/package.json b/package.json index c3e85ca..bbf961f 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "Oliver Salzburg (https://github.com/oliversalzburg)", "Ben Gourley (https://github.com/bengourley)" ], - "version": "2.0.8", + "version": "2.0.9", "license": "MIT", "keywords": [ "stacktrace", From c379ba73fb5ec10c58855cd6168c75559694bb26 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Mon, 6 Jun 2022 07:11:53 -0700 Subject: [PATCH 09/10] Update stackframe dependency to version 1.3.4 --- dist/stack-generator.min.js | 2 +- dist/stack-generator.min.js.map | 2 +- package-lock.json | 14 +++++++------- package.json | 2 +- stack-generator.d.ts | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/dist/stack-generator.min.js b/dist/stack-generator.min.js index a0bc1ce..810fc89 100644 --- a/dist/stack-generator.min.js +++ b/dist/stack-generator.min.js @@ -1,2 +1,2 @@ -!function(t,e){"use strict";"function"==typeof define&&define.amd?define("stackframe",[],e):"object"==typeof exports?module.exports.default=e():t.StackFrame=e()}(this,function(){"use strict";function t(t){return t.charAt(0).toUpperCase()+t.substring(1)}function e(t){return function(){return this[t]}}var r=["isConstructor","isEval","isNative","isToplevel"],n=["columnNumber","lineNumber"],i=["fileName","functionName","source"],o=r.concat(n,i,["args"],["evalOrigin"]);function a(e){if(e)for(var r=0;r // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -import StackFrame from "stackframe"; +import StackFrame = require("stackframe"); declare namespace StackGenerator { export type {StackFrame}; From d13f852474a1736a82818b904f3e7d3d79b0b627 Mon Sep 17 00:00:00 2001 From: Eric Wendelin Date: Mon, 6 Jun 2022 07:11:58 -0700 Subject: [PATCH 10/10] 2.0.10 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7dbbc9a..558f5c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "stack-generator", - "version": "2.0.9", + "version": "2.0.10", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "stack-generator", - "version": "2.0.9", + "version": "2.0.10", "license": "MIT", "dependencies": { "stackframe": "^1.3.4" diff --git a/package.json b/package.json index 59de8ed..ba41465 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "Oliver Salzburg (https://github.com/oliversalzburg)", "Ben Gourley (https://github.com/bengourley)" ], - "version": "2.0.9", + "version": "2.0.10", "license": "MIT", "keywords": [ "stacktrace",