Permalink
Browse files

Fixes type definition of StackFrame

Summary:
**Motivation**
This PR fixes the flow type definition of StackFrame in parseErrorStack.js. The methodName was missing and the column could be `null`. We integrate with it in our codebase and we wanted to use `methodName`, but flow complained.

Refer to this file for possible values: [github.com/errwischt/stacktrace-parser/blob/master/lib/stacktrace-parser.js](https://github.com/errwischt/stacktrace-parser/blob/master/lib/stacktrace-parser.js)

This also allowed me to remove a flow error suppression.

**Test plan (required)**
I ran flow on the project, no errors
Closes #12499

Differential Revision: D4619885

Pulled By: ericvicenti

fbshipit-source-id: 0bf5a2304cb0dc9f2c6df026a5cee71c8a419c01
  • Loading branch information...
wietsevenema authored and facebook-github-bot committed Feb 27, 2017
1 parent 27928f3 commit 800dc771724f2d392c87d7c49f5fcea96d41dd2c
Showing with 2 additions and 3 deletions.
  1. +2 −1 Libraries/Core/Devtools/parseErrorStack.js
  2. +0 −2 Libraries/Core/Timers/JSTimers.js
@@ -12,9 +12,10 @@
'use strict';
export type StackFrame = {
column: ?number,
file: string,
lineNumber: number,
column: number,
methodName: string,
};
var stacktraceParser = require('stacktrace-parser');
@@ -40,8 +40,6 @@ function _allocateCallback(func: Function, type: JSTimerType): number {
e.framesToPop = 1;
const stack = parseErrorStack(e);
if (stack) {
/* $FlowFixMe(>=0.32.0) - this seems to be putting something of the wrong
* type into identifiers */
JSTimersExecution.identifiers[freeIndex] = stack.shift();
}
}

0 comments on commit 800dc77

Please sign in to comment.