Commit graph

135 commits

Author SHA1 Message Date
pemontto 7cb431f506
fix(core): Fix typos in common error messages (no-changelog) (#9478) 2024-05-22 08:57:34 +01:00
कारतोफ्फेलस्क्रिप्ट™ bf2ee51e36
ci: Delete unused code in some backend tests (no-changelog) (#9456) 2024-05-17 18:43:50 +02:00
Elias Meire 40bce7f443
feat(editor): Add examples for Luxon DateTime expression methods (#9361)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2024-05-16 14:53:22 +02:00
Elias Meire 52936633af
feat(editor): Add examples for object and array expression methods (#9360)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2024-05-14 16:32:31 +02:00
Michael Kret da6088d0bb
feat(core): Node hints(warnings) system (#8954) 2024-05-13 15:46:02 +03:00
Elias Meire c92c870c73
feat(editor): Autocomplete info box: improve structure and add examples (#9019)
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2024-05-10 14:39:06 +02:00
Elias Meire 30c8efc4cc
fix: Cast boolean values in filter parameter (#9260) 2024-05-02 17:01:00 +02:00
Iván Ovejero f6c9493355
fix(core): Prevent node param resolution from failing telemetry graph generation (#9257) 2024-04-30 11:39:24 +02:00
Iván Ovejero b8ab049932
refactor(core, editor): Remove legacy nodesAccess (no-changelog) (#9016) 2024-04-05 13:17:34 +02:00
Elias Meire 8788e2a35b
fix(editor): UI enhancements and fixes for expression inputs (#8996) 2024-03-29 16:01:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 372d5c7d01
ci: Upgrade eslint, prettier, typescript, and some other dev tooling (no-changelog) (#8895)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2024-03-26 14:22:57 +01:00
Elias Meire 45461c8cb5
fix: Overhaul expression error messages related to paired item (#8765) 2024-03-21 16:59:22 +01:00
Elias Meire 5e84c2ab89
feat(editor): Add missing extension methods for expressions (#8845) 2024-03-20 12:05:54 +01:00
Elias Meire 76fe960a76
fix: Improve filter component error handling (#8832) 2024-03-08 10:10:32 +01:00
Giulio Andreini 5301323906
feat(editor): Improve errors in output panel (#8644)
Co-authored-by: Michael Kret <michael.k@radency.com>
2024-03-07 18:08:01 +02:00
Elias Meire 9b4618dd5e
feat(editor): Add sections to autocomplete dropdown (#8720)
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2024-03-07 17:01:05 +01:00
Elias Meire f9a99ec029
feat: No expression error when node hasn’t executed (#8448)
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-02-27 10:29:16 +01:00
Jan Oberhauser ad82f0c0c8
feat(core): Add support for $("NodeName").isExecuted (#8683) 2024-02-20 18:25:04 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2b9391a975
fix(core): Improve handling of wrapped errors (no-changelog) (#8631) 2024-02-14 17:29:23 +01:00
Elias Meire c419c8592f
fix: Allow Date/Luxon objects and additional formats in DateTime validation (#8525) 2024-02-02 11:27:31 +01:00
कारतोफ्फेलस्क्रिप्ट™ 670af167e6
fix(core): Improve handling of wrapped errors (#8510) 2024-01-31 15:34:22 +01:00
Elias Meire c21c4b9178
feat: Add new 'is empty' and 'is not empty' operators to Filter (#8445)
Co-authored-by: Michael Kret <michael.k@radency.com>
2024-01-26 11:17:41 +01:00
Michael Kret ed7d6b7b3a
feat(core): Display conditions in displayOptions (no-changelog) (#7888) 2024-01-24 18:04:46 +02:00
Jon e9fea16301
fix(Switch Node): Fix issue preventing some regex patterns from working (#8422) 2024-01-24 09:30:09 +00:00
Giulio Andreini f4f496ae85
docs(editor): All buttons to sentence case (no-changelog) (#8399) 2024-01-22 09:20:02 +01:00
Tomi Turtiainen 9a1cc56806
fix: Set '@typescript-eslint/return-await' rule to 'always' for node code (no-changelog) (#8363)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-01-17 17:08:50 +02:00
कारतोफ्फेलस्क्रिप्ट™ b267bf07e3
fix(core): Prevent NodeErrors from being wrapped multiple times (#8301) 2024-01-16 16:18:34 +01:00
Mutasem Aldmour 93b969a327
fix: Fix node graph telemetry with default values (#8297) 2024-01-11 13:25:40 +01:00
कारतोफ्फेलस्क्रिप्ट™ 01e9a79238
feat(core): Remove discontinued crypto-js (#8104)
Since crypto-js was
[discontinued](1da3dabf93),
[we migrated all our backend encryption to native
crypto](https://github.com/n8n-io/n8n/pull/7556).
However I decided back then to not remove crypto-js just yet in
expressions, as I wanted to use `SubtleCrypto`. Unfortunately for that
to work, we'd need to make expressions async.
So, to get rid of `crypto-js`, I propose this interim solution. 

## Related tickets and issues
N8N-7020

## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2023-12-21 14:13:02 +01:00
कारतोफ्फेलस्क्रिप्ट™ 464b565283
ci: Remove unnecessary async/await, enable await-thenable linting rule (no-changelog) (#8076)
## Summary
We accidentally made some functions `async` in
https://github.com/n8n-io/n8n/pull/7846
This PR reverts that change. 

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-19 13:52:42 +01:00
Elias Meire 8a5343401d
feat(editor): Filter component + implement in If node (#7490)
New Filter component + implementation in If node (v2)

<img width="3283" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/35c379ef-4b62-4d06-82e7-673d4edcd652">

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-12-13 14:45:22 +01:00
Iván Ovejero 67702c2485
refactor(core): Switch plain errors in workflow to ApplicationError (no-changelog) (#7877)
Ensure all errors in `workflow` are `ApplicationError` or children of it
and contain no variables in the message, to continue normalizing all the
errors we report to Sentry

Follow-up to: https://github.com/n8n-io/n8n/pull/7873
2023-11-30 12:46:45 +01:00
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
Elias Meire a9ab73896e
fix(HubSpot Node): Fetching available parameters fails when using expressions (#7672)
This fix affects all nodes, will fix this issue in all nodes

Github issue / Community forum post (link here to close automatically):

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-11-13 12:28:55 +01:00
Michael Kret 1c7225ebdb
feat(core): Expression function $ifEmpty (#7660)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Elias Meire <elias@meire.dev>
2023-11-13 13:28:41 +02:00
कारतोफ्फेलस्क्रिप्ट™ 35bb42c1b9
refactor(core): Avoid passing around static state like default timezone (no-changelog) (#7221) 2023-10-27 14:17:52 +02:00
कारतोफ्फेलस्क्रिप्ट™ 05586a900d
refactor(core): Make Logger a service (no-changelog) (#7494) 2023-10-25 16:35:22 +02:00
कारतोफ्फेलस्क्रिप्ट™ b6de910cbe
refactor(core): Abstract away InstanceSettings and encryptionKey into injectable services (no-changelog) (#7471)
This change ensures that things like `encryptionKey` and `instanceId`
are always available directly where they are needed, instead of passing
them around throughout the code.
2023-10-23 13:39:35 +02:00
कारतोफ्फेलस्क्रिप्ट™ 2b075bfc2d
fix(editor): Sanitize HTML binary-data before rendering in the UI (#7400) 2023-10-11 12:09:19 +02:00
कारतोफ्फेलस्क्रिप्ट™ 8187be1b7d
feat(editor): Make PDF and Audio binary-data viewable in the UI (#7367)
fixes #7361
2023-10-09 17:43:57 +02:00
Val bf74f09d69
feat(core): Add Tournament as the new default expression evaluator (#6964)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-09-21 13:57:45 +01:00
Alex Grozav ed927d34b2
feat: External Secrets storage for credentials (#6477)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-08-25 10:33:46 +02:00
Iván Ovejero 7ce5d8fd90
refactor: Upgrade to Prettier 3 (no-changelog) (#6947)
Supersedes https://github.com/n8n-io/n8n/pull/6937

Excluding fixtures and test workflow JSONs to avoid having to update
tests.
2023-08-16 17:13:57 +02:00
Michael Kret 3adb0b66ea
feat(core): Descriptive message for common nodeJS errors (#6841) 2023-08-14 22:12:35 +03:00
कारतोफ्फेलस्क्रिप्ट™ 732416f52f
fix(core): Fix property existence checks on AugmentObject (#6842)
Fixes https://community.n8n.io/t/code-node-returns-full-item-object-on-node-all/28823
2023-08-03 12:19:30 +02:00
Iván Ovejero 72523462ea
refactor: Clear unused ESLint directives from BE packages (no-changelog) (#6798) 2023-07-31 11:00:48 +02:00
कारतोफ्फेलस्क्रिप्ट™ bf351243df
fix(Code Node): Install python modules always in a user-writable folder (#6568)
* upgrade pyodide

* install pyodide modules to a custom user-writable path

* in `augmentObject` `newData` is never undefined
2023-07-07 16:43:45 +02:00
Ricardo Espinoza 3db2707b8e
fix: Show error when referencing node that exist but has not been executed (#6496)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-23 01:45:54 +02:00
Iván Ovejero 85372aabdf fix(core)!: Make date extensions outputs match inputs (#6435) 2023-06-22 21:05:04 +02:00
Iván Ovejero 1197811a1e fix(core)!: Allow syntax errors and expression errors to fail executions (#6352)
* fix: Unify expression error behavior for v1

* fix: Add `package.json` to `tsconfig.build.json`

* fix: Make `isFrontend` a constant

* fix: Use CommonJS require to read version

* fix: Use `JSON.parse()` and `fs.readFileSync()`

* feat(editor): Make WF name a link on /executions (#6354)

* make wf name a link in exec view

* link color

* make wf name a link in exec view

* link color

---------

Co-authored-by: Alex Grozav <alex@grozav.com>

* fix: Try restoring inclusions in tsconfig files

* fix: Try with copy

* refactor: Switch base branch and remove global toggle

* chore: Remove unrelated changes

* chore: Restore lockfile

* fix: Ensure all expression errors fail executions

* uncaught ExpressionErrors should not fail e2e tests

---------

Co-authored-by: romainminaud <romain.minaud@gmail.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 21:04:59 +02:00