n8n/packages/workflow/src
Iván Ovejero dff8456382
refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820)
Ensure all errors in `core` and `workflow` inherit from
`ApplicationError` so that we start normalizing all the errors we report
to Sentry

Follow-up to:
https://github.com/n8n-io/n8n/pull/7757#discussion_r1404338844

### `core` package

`ApplicationError`
- `FileSystemError` (abstract)
	- `FileNotFoundError`
	- `DisallowedFilepathError`
- `BinaryDataError` (abstract)
	- `InvalidModeError`
	- `InvalidManagerError`
- `InvalidExecutionMetadataError`

### `workflow` package

`ApplicationError`
- `ExecutionBaseError` (abstract)
	- `WorkflowActivationError`
		- `WorkflowDeactivationError`
		- `WebhookTakenError`
	- `WorkflowOperationError`
		- `SubworkflowOperationError`
			- `CliWorkflowOperationError`
	- `ExpressionError`
		- `ExpressionExtensionError`
	- `NodeError` (abstract)
		- `NodeOperationError`
		- `NodeApiError`
	- `NodeSSLError`

Up next:
- Reorganize errors in `cli`
- Flatten the hierarchy in `workflow` (do we really need
`ExecutionBaseError`?)
- Remove `ExecutionError` type
- Stop throwing plain `Error`s
- Replace `severity` with `level`
- Add node and credential types as `tags`
- Add workflow IDs and execution IDs as `extras`
2023-11-27 15:33:21 +01:00
..
errors refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
Extensions refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
NativeMethods feat(editor): Add missing documentation to autocomplete items for inline code editor (#5560) 2023-02-28 07:34:03 +03:00
AugmentObject.ts refactor(core): Use a Set for deletedProperties in AugmentObject (no-changelog) (#7131) 2023-09-07 15:07:32 +02:00
Authentication.ts refactor(core)!: Remove basic-auth, external-jwt-auth, and no-auth options (#6362) 2023-06-22 20:03:47 +02:00
Constants.ts refactor(core): Make Logger a service (no-changelog) (#7494) 2023-10-25 16:35:22 +02:00
Cron.ts [N8N-4339] Unify all Cron-specific code. Improve typing, and add tests. (#3887) 2022-08-19 12:45:04 +02:00
DeferredPromise.ts refactor(core): Stop importing LoggerProxy and createDeferredPromise in nodes-base (no-changelog) (#5742) 2023-03-22 14:04:15 +01:00
ErrorReporterProxy.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
ExecutionStatus.ts refactor: Stop using .d.ts files for type-collection files (no-changelog) (#6634) 2023-07-10 19:35:34 +02:00
Expression.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
ExpressionEvaluatorProxy.ts feat(core): Add Tournament as the new default expression evaluator (#6964) 2023-09-21 13:57:45 +01:00
GlobalState.ts refactor(core): Avoid passing around static state like default timezone (no-changelog) (#7221) 2023-10-27 14:17:52 +02:00
index.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
Interfaces.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
LoggerProxy.ts refactor(core): Make Logger a service (no-changelog) (#7494) 2023-10-25 16:35:22 +02:00
MessageEventBus.ts refactor(core): Forbid raw enums (no-changelog) 2023-04-21 14:23:15 +03:00
NodeHelpers.ts feat(core): Add Support for custom CORS origins for webhooks (#7455) 2023-11-22 17:49:56 +01:00
ObservableObject.ts refactor: Clear unused ESLint directives from BE packages (no-changelog) (#6798) 2023-07-31 11:00:48 +02:00
RoutingNode.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
TelemetryHelpers.ts feat(core): Add the node version to telemetry in node_graph_string (#7449) 2023-11-02 15:18:41 +02:00
type-guards.ts feat(editor): Implement Resource Mapper component (#6207) 2023-05-31 11:56:09 +02:00
types.d.ts fix(core): Serialize BigInts (#6805) 2023-07-31 16:53:30 +02:00
utils.ts fix(editor): Sanitize HTML binary-data before rendering in the UI (#7400) 2023-10-11 12:09:19 +02:00
VersionedNodeType.ts refactor: rename NodeVersionedType to VersionedNodeType and move it to the workflow package (#4443) 2022-10-25 21:33:12 +02:00
Workflow.ts fix(core): Use AbortController to notify nodes to abort execution (#6141) 2023-11-24 18:17:06 +01:00
WorkflowDataProxy.ts refactor(core): Reorganize error hierarchy in core and workflow packages (no-changelog) (#7820) 2023-11-27 15:33:21 +01:00
WorkflowHooks.ts refactor: Clear unused ESLint directives from BE packages (no-changelog) (#6798) 2023-07-31 11:00:48 +02:00