Elias Meire
ca75744c7f
fix(HTTP Request Node): Support form data when using pagination ( #8497 )
2024-02-01 11:33:18 +01:00
Elias Meire
f1910a10a6
fix(core): Forward authorization header when on same domain ( #8507 )
2024-01-31 15:11:29 +01:00
Omar Ajoue
0e9a5a2ab2
fix: Properly iterate over credentials with expressions ( #8502 )
2024-01-31 13:12:18 +01:00
कारतोफ्फेलस्क्रिप्ट™
121a55b691
feat(core): Remove own
execution-process mode ( #8490 )
2024-01-30 12:51:40 +01:00
कारतोफ्फेलस्क्रिप्ट™
cc2f0ada76
ci: Enforce noUnusedLocals
on all backend and nodes packages (no-changelog) ( #8428 )
2024-01-25 14:33:35 +01:00
Iván Ovejero
2257ec63b3
fix(core): Fix removal of triggers and pollers from memory on deactivation in multi-main setup ( #8416 )
2024-01-23 12:34:40 +01:00
Michael Kret
25f51f4fd7
fix(core): Errors are returned on the success branch if error item has other keys in addition to 'error' ( #8380 )
2024-01-18 17:35:59 +02: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
Elias Meire
eb1320fd7a
fix(core): Parse any readable stream response instead of only IncomingMessage ( #8359 )
2024-01-17 12:31:20 +01:00
Iván Ovejero
3734c89cf6
fix(core): Ensure waiting executions account for workflow timezone ( #8340 )
2024-01-16 18:28:19 +01:00
Iván Ovejero
d4c93b1607
fix(core): Prevent issues with missing or mismatching encryption key ( #8332 )
2024-01-16 18:25:53 +01:00
कारतोफ्फेलस्क्रिप्ट™
0776814ed8
fix(core): Prevent invalid compressed responses from making executions stuck forever ( #8315 )
2024-01-12 15:18:46 +01:00
Alex Grozav
af49e95cc7
feat: Add Chat Trigger node ( #7409 )
...
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Jesper Bylund <mail@jesperbylund.com>
Co-authored-by: OlegIvaniv <me@olegivaniv.com>
Co-authored-by: Deborah <deborah@starfallprojects.co.uk>
Co-authored-by: Jan Oberhauser <janober@users.noreply.github.com>
Co-authored-by: Jon <jonathan.bennetts@gmail.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Mason Geloso <Mason.geloso@gmail.com>
Co-authored-by: Mason Geloso <hone@Masons-Mac-mini.local>
Co-authored-by: Mutasem Aldmour <mutasem@n8n.io>
2024-01-09 13:11:39 +02:00
Iván Ovejero
055cc785fd
fix(core): Avoid wrapping ExecutionBaseError
to prevent misreporting to Sentry (no-changelog) ( #8262 )
2024-01-09 10:11:28 +01:00
कारतोफ्फेलस्क्रिप्ट™
ac1c642fdd
fix(core): Do not add Authentication header when authentication
type is body
( #8201 )
2024-01-08 12:38:24 +01:00
Jan Oberhauser
ccb2b076f8
fix: Resolve expressions in credentials following paired item ( #8250 )
...
## Summary
Fixes the issue that pairedItem information was not available in
expressions that got used in credentials
## Related tickets and issues
[PAY-1207](https://linear.app/n8n/issue/PAY-1207/paireditem-expressions-not-working-correctly-in-credentials )
## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again.
> A feature is not complete without tests.
---------
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2024-01-08 09:48:20 +00:00
Michael Kret
270328ccf6
feat(HTTP Request Node): Interval Between Requests option for pagination ( #8224 )
...
## Summary
Option to add delay between request when using pagination

## Related tickets and issues
https://linear.app/n8n/issue/NODE-1029/http-request-pagination-feature-doesnt-use-batch-settings
https://github.com/n8n-io/n8n/issues/8062
2024-01-04 17:11:16 +02:00
Michael Kret
5e16dd4ab4
feat(core): Improvements/overhaul for nodes working with binary data ( #7651 )
...
Github issue / Community forum post (link here to close automatically):
---------
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Marcus <marcus@n8n.io>
2024-01-03 13:08:16 +02:00
कारतोफ्फेलस्क्रिप्ट™
f69ddcd796
refactor(core): Use Dependency Injection for all Controller classes (no-changelog) ( #8146 )
...
## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-27 11:50:43 +01:00
कारतोफ्फेलस्क्रिप्ट™
021add0f39
refactor(core): Move active workflows endpoints to a decorated controller class (no-changelog) ( #8101 )
...
This is a continuation of migrating all rest endpoints to decorated controller classes
2023-12-22 11:28:42 +01:00
Jan Oberhauser
bec0faed9e
feat(core): Add closeFunction support to Sub-Nodes ( #7708 )
...
Github issue / Community forum post (link here to close automatically):
---------
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-21 14:21:09 +01:00
कारतोफ्फेलस्क्रिप्ट™
bba95761e2
fix(core): Prevent axios from force setting a form-urlencoded content-type ( #8117 )
...
[Since v1 axios is force-setting a content-type of
`application/x-www-form-urlencoded` on POST/PUT/PATCH requests, even if
they have no
payload](https://github.com/axios/axios/blob/v1.x/lib/core/dispatchRequest.js#L45-L47 ).
This is causing nodes that do not support form-urlencoded bodies to
fail.
By setting the content-type to `false` (if a content-type wasn't already
set), we force axios to not overwrite this header.
[Workflows tests](https://github.com/n8n-io/n8n/actions/runs/7288103743/job/19860060607 )
2023-12-21 13:32:04 +01:00
Iván Ovejero
9dc491c3a5
refactor(core): Improve test-webhooks (no-changelog) ( #8069 )
...
Remove duplication, improve readability, and expand tests for
`TestWebhooks.ts` - in anticipation for storing test webhooks in Redis.
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-19 17:32:02 +01:00
कारतोफ्फेलस्क्रिप्ट™
64eb9bbc36
fix: Upgrade axios to address CVE-2023-45857 ( #7713 )
...
[GH Advisory](https://github.com/advisories/GHSA-wf5p-g6vw-rhxx )
2023-12-19 16:17:01 +01:00
Michael Kret
953a58f18b
feat(n8n Form Trigger Node): Improvements ( #7571 )
...
Github issue / Community forum post (link here to close automatically):
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2023-12-13 17:00:51 +02: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
oleg
dcf12867b3
feat: AI nodes usability fixes + Summarization Chain V2 ( #7949 )
...
Fixes:
- Refactor connection snapping when dragging and enable it also for
non-main connection types
- Fix propagation of errors from sub-nodes
- Fix chat scrolling when sending/receiving messages
- Prevent empty chat messages
- Fix sub-node selected styles
- Fix output names text overflow
Usability improvements:
- Auto-add manual chat trigger for agents & chain nodes
- Various labels and description updates
- Make the output parser input optional for Basic LLM Chain
- Summarization Chain V2 with a simplified document loader & text
chunking mode
#### How to test the change:
Example workflow showcasing different operation mode of the new
summarization chain:
[Summarization_V2.json](https://github.com/n8n-io/n8n/files/13599901/Summarization_V2.json )
## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers
-
https://www.notion.so/n8n/David-Langchain-Posthog-notes-7a9294938420403095f4508f1a21d31d
- https://linear.app/n8n/issue/N8N-7070/ux-fixes-batch
- https://linear.app/n8n/issue/N8N-7071/ai-sub-node-bugs
## Review / Merge checklist
- [x] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [x] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
>
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227 )
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce )
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e ).
---------
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Elias Meire <elias@meire.dev>
2023-12-08 13:42:32 +01:00
Iván Ovejero
e00577b1d3
refactor(core): Remove unneeded high-frequency log (no-changelog) ( #7963 )
...
## Summary
Remove unneeded high-frequency log

...
#### How to test the change:
1. ...
## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers
...
## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
>
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227 )
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce )
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e ).
2023-12-08 12:52:07 +01:00
Iván Ovejero
1d46983b24
refactor: Unify severity
and level
for all application errors for Sentry (no-changelog) ( #7956 )
...
## Summary
Unify `severity` and `level` for all backend application errors for
Sentry
Follow-up to:
https://github.com/n8n-io/n8n/pull/7914#issuecomment-1840433542
...
#### How to test the change:
1. ...
## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers
...
## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
>
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227 )
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce )
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e ).
2023-12-07 16:57:02 +01:00
Iván Ovejero
92bab72cff
fix(core): Fix user comparison in same-user subworkflow caller policy ( #7913 )
...
https://linear.app/n8n/issue/PAY-992
https://community.n8n.io/t/executing-workflow-using-owner-role-created-by-another-user-fails/33443
---------
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-12-06 12:27:11 +00:00
Iván Ovejero
b16dd21909
refactor(core): Switch plain errors in core
to ApplicationError
(no-changelog) ( #7873 )
...
Ensure all errors in `core` 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/7857
2023-11-30 09:06:19 +01:00
कारतोफ्फेलस्क्रिप्ट™
117962d473
feat(core): Update LLM applications building support (no-changelog) ( #7710 )
...
extracted out of #7336
---------
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-11-28 16:47:28 +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
Csaba Tuncsik
152883eed1
build: Upgrade lint related packages ( #7790 )
2023-11-27 09:11:52 +01:00
कारतोफ्फेलस्क्रिप्ट™
d2c18c5727
fix(core): Use AbortController to notify nodes to abort execution ( #6141 )
...
and add support for cancelling ongoing operations inside a node.
---------
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
2023-11-24 18:17:06 +01:00
Iván Ovejero
eec2ec1ff8
refactor(core): Consolidate path-related errors in Sentry (no-changelog) ( #7757 )
...
Keep reporting [path-related
errors](https://n8nio.sentry.io/issues/4649493725 ) in Sentry but
consolidate them in a single error group.
Also, add `options.extra` as `meta` so they remain visible in debug
logs:
```
2023-11-24T11:50:54.852Z | error | ReportableError: Something went wrong "{ test: 123, file: 'LoggerProxy.js', function: 'exports.error' }"
```
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-24 14:42:46 +01:00
कारतोफ्फेलस्क्रिप्ट™
fc60e9a809
refactor(core): Convert dynamic node-parameter routes to a decorated controller (no-changelog) ( #7284 )
...
1. Reduce a lot of code duplication
2. Move more endpoints out of `Server.ts`
3. Move all query-param parsing and validation into a middleware to make
the route handlers simpler.
2023-11-17 12:03:05 +01:00
Elias Meire
48b240b026
fix(HTTP Request Node): Support generic credentials when using pagination ( #7686 )
...
Github issue / Community forum post (link here to close automatically):
fixes #7653
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-11-15 09:13:33 +01:00
Elias Meire
14035e1244
feat(editor): Add HTTP request nodes for credentials without a node ( #7157 )
...
Github issue / Community forum post (link here to close automatically):
---------
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-13 12:11:16 +01:00
Iván Ovejero
f73a0597ba
refactor: Add rule no-constant-binary-expression
(no-changelog) ( #7670 )
...
https://eslint.org/docs/latest/rules/no-constant-binary-expression
2023-11-09 17:50:59 +01:00
कारतोफ्फेलस्क्रिप्ट™
f0fc5b16d3
ci(core): Load config schema after process.env has been overwritten (no-changelog) ( #7550 )
2023-11-07 15:58:28 +01:00
Iván Ovejero
c857e42677
feat(core): Coordinate workflow activation in multiple main scenario in internal API ( #7566 )
...
Story: https://linear.app/n8n/issue/PAY-926
This PR coordinates workflow activation on instance startup and on
leadership change in multiple main scenario in the internal API. Part 3
on manual workflow activation and deactivation will be a separate PR.
### Part 1: Instance startup
In multi-main scenario, on starting an instance...
- [x] If the instance is the leader, it should add webhooks, triggers
and pollers.
- [x] If the instance is the follower, it should not add webhooks,
triggers or pollers.
- [x] Unit tests.
### Part 2: Leadership change
In multi-main scenario, if the main instance leader dies…
- [x] The new main instance leader must activate all trigger- and
poller-based workflows, excluding webhook-based workflows.
- [x] The old main instance leader must deactivate all trigger- and
poller-based workflows, excluding webhook-based workflows.
- [x] Unit tests.
To test, start two instances and check behavior on startup and
leadership change:
```
EXECUTIONS_MODE=queue N8N_LEADER_SELECTION_ENABLED=true N8N_LICENSE_TENANT_ID=... N8N_LICENSE_ACTIVATION_KEY=... N8N_LOG_LEVEL=debug npm run start
EXECUTIONS_MODE=queue N8N_LEADER_SELECTION_ENABLED=true N8N_LICENSE_TENANT_ID=... N8N_LICENSE_ACTIVATION_KEY=... N8N_LOG_LEVEL=debug N8N_PORT=5679 npm run start
```
2023-11-07 13:48:48 +01:00
Iván Ovejero
26361dfcd3
fix(core): Fix accessor error when running partial execution ( #7618 )
...
https://n8nio.sentry.io/issues/3760335947
Followup to #6229
2023-11-06 13:48:13 +01:00
कारतोफ्फेलस्क्रिप्ट™
0bd4e742da
refactor(core): Migrate from crypto-js to native crypto ( #7556 )
...
[`crypto-js` has been
discontinued](1da3dabf93
)
PS: We'll remove `crypto-js` usage from `n8n-workflow` and
`@n8n_io/license-sdk` in separate PRs.
2023-11-03 13:26:20 +01:00
Iván Ovejero
6d42fad31a
refactor(core): Consolidate binary file not found errors (no-changelog) ( #7585 )
...
Logging was originally to see if there was a binary data file failing to
be written for [this
user](https://linear.app/n8n/issue/PAY-844/filesystem-binary-data-mode-causing-alerts-in-cloud )
but the cause was not a file failed to be written but a missing `fileId`
in a binary data item in an execution. The error should no longer be
thrown as of 1.12. See story for more info.
This PR is for cleanup and to consolidate any file not found errors in
the context of binary data, to track if this happens again.
2023-11-03 11:41:15 +01:00
Iván Ovejero
81f43805aa
refactor(core): Stop reporting to Sentry node parameter value extraction failure (no-changelog) ( #7587 )
...
https://n8nio.sentry.io/issues/4595192919
2023-11-02 16:28:44 +01:00
Jan Oberhauser
cc2bd2e19c
feat(HTTP Request Node): Add pagination support ( #5993 )
...
Is still WIP and does not implement the correct UI yet.
Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/pagination-included-into-http-node/15080
https://community.n8n.io/t/how-to-paginate-through-data-in-http-requests/28103
2023-11-01 14:24:43 +01:00
Jan Oberhauser
655efeaf66
feat(core): Add optional Error-Output ( #7460 )
...
Add an additional optional error output to which all items get sent that
could not be processed.

Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/error-connector-for-nodes/3094
https://community.n8n.io/t/error-handling-at-node-level-detect-node-execution-status/26791
---------
Co-authored-by: OlegIvaniv <me@olegivaniv.com>
2023-10-30 18:42:47 +01:00
कारतोफ्फेलस्क्रिप्ट™
35bb42c1b9
refactor(core): Avoid passing around static state like default timezone (no-changelog) ( #7221 )
2023-10-27 14:17:52 +02:00
Iván Ovejero
62c096710f
refactor: Run lintfix
(no-changelog) ( #7537 )
...
- Fix autofixable violations
- Remove unused directives
- Allow for PascalCased variables - needed for dynamically imported or
assigned classes, decorators, routers, etc.
2023-10-27 14:15:02 +02:00