Commit graph

9234 commits

Author SHA1 Message Date
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
Tomi Turtiainen 008fd5a917
test: Add e2e tests for cred setup on workflow editor (no-changelog) (#8245)
## Summary

Follow-up to https://github.com/n8n-io/n8n/pull/8240

Adds e2e tests for the template credential setup in workflow editor


## Related tickets and issues

https://linear.app/n8n/issue/ADO-1463/feature-enable-users-to-close-and-re-open-the-setup
2024-01-08 11:35:18 +02:00
Tomi Turtiainen 3cf6704dbb
feat: Enable cred setup for workflows created from templates (no-changelog) (#8240)
## Summary

Enable users to open credential setup for workflows that have been
created from templates if they skip it.

Next steps (will be their own PRs):
- Add telemetry events
- Add e2e test
- Hide the button when user sets up all the credentials
- Change the feature flag to a new one

## Related tickets and issues

https://linear.app/n8n/issue/ADO-1637/feature-support-template-credential-setup-for-http-request-nodes-that
2024-01-05 18:07:57 +02:00
Ricardo Espinoza df5d07bcb8
feat(editor): Update copy: Execute --> Test (#8137)
## Summary

Title self explanatory


## Related tickets and issues
https://linear.app/n8n/issue/ADO-129/update-copy-execute-test

## 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))
2024-01-05 10:23:51 -05:00
Ricardo Espinoza 2d6e406e21
fix(editor): Vertically center workflow preview loading state (#8231)
## Summary

Title self explanatory

before:

<img width="1198" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/26c29cad-b376-40fd-9881-343f5e722d58">

now:

<img width="1211" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/9f2d4020-6bf8-481a-b69f-eddb57cfaaae">



## Related tickets and issues
[ado-1645-fix-center-loading-preview-loading-state

](https://linear.app/n8n/issue/ADO-1645/fix-center-loading-preview-loading-state)

## 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))
2024-01-05 09:04:39 -05:00
Iván Ovejero f2939568cf
perf(core): Optimize workflow activation errors (#8242)
At https://github.com/n8n-io/n8n/pull/8213 we introduced Redis hashes
for workflow ownership and manual webhooks...

- to remove clutter from multiple related keys at the top level,
- to improve performance by preventing serializing-deserializing, and
- to guarantee atomicity during concurrent updates in multi-main setup.

Workflow activation errors can also benefit from this. Added test
coverage as well.

To test manually, create a workflow with a trigger with an invalid
credential, edit the workflow's `active` column to `true`, and restart.
The activation error should show as a red triangle on canvas and in the
workflow list.
2024-01-05 13:06:42 +01:00
Iván Ovejero 23a4ac96c0
refactor(core): Continue moving typeorm operators to repositories (no-changelog) (#8212)
Follow-up to: https://github.com/n8n-io/n8n/pull/8186
2024-01-05 13:06:24 +01:00
Elias Meire bed04ec122
fix(Postgres Node): Stop marking autogenerated columns as required (#8230)
## Summary

Postgres columns can be
- [generated as
identity](https://www.postgresqltutorial.com/postgresql-tutorial/postgresql-identity-column/)
- [generated by a custom
expression](https://www.postgresql.org/docs/current/ddl-generated-columns.html)

In these 2 cases, the column is not required when inserting a new row.
This PR makes sure these types of column are not marked required in n8n.

### How to test

1. Create a Postgres table with all types of generated columns:
for version >= 10
  ```sql
  CREATE TABLE "public"."test_table" (
      "id" int8 NOT NULL DEFAULT nextval('test_table_id_seq'::regclass),
      "identity_id" bigint GENERATED ALWAYS AS IDENTITY,
      "id_plus" numeric GENERATED ALWAYS AS (id + 5) STORED,
      "title" varchar NOT NULL,
      "created_at" timestamp DEFAULT now(),
      PRIMARY KEY ("id")
  )
  ```
  Before 10 you have to use serial or bigserial types:
  ```sql
  CREATE TABLE distributors (
     did    serial not null primary key,
     name   varchar(40) NOT NULL CHECK (name <> '')
);
  ```
2. Add a postgres node to canvas and try to insert data without the
generated columns
3. Should successfully insert

More info in Linear/Github issue ⬇️ 

## Related tickets and issues
- fixes #7084
-
https://linear.app/n8n/issue/NODE-816/rmc-not-all-id-fields-should-be-required
-
https://linear.app/n8n/issue/NODE-681/postgres-cant-map-automatically-if-database-requires-a-field

## 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.

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2024-01-05 12:37:33 +01:00
Elias Meire 048b588852
fix: Make params panel double width for all SQL nodes (#8236)
## Summary

Make params panel double width for all SQL nodes

<img width="1445" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/422e7c6c-90c9-4cf0-832b-fab7679275d3">


## Related tickets and issues

https://linear.app/n8n/issue/NODE-986/make-all-sql-nodes-have-a-double-width-params-pane

## 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.
2024-01-05 12:31:11 +01:00
oleg 184ed8e17d
refactor: Migrate genericHelpers mixin to composable (#8220)
## Summary
- Moved out canvas loading handling to canvas store
- Tag editable routes via meta to remove router dependency from generic
helpers
- Replace all occurrences of `genericHelpers` mixin with composable and
audit usage
- Moved out `isRedirectSafe` and `getRedirectQueryParameter` out of
genericHelpers to remove dependency on router

Removing the router dependency is important, because `useRouter` and
`useRoute` compostables are only available if called from component
instance. So if composable is nested within another composable, we
wouldn't be able to use these. In this case we'd always need to inject
the router and pass it through several composables. That's why I moved
the `readonly` logic to router meta and `isRedirectSafe` and
`getRedirectQueryParameter` out as they were only used in a single
component.

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2024-01-05 12:23:28 +01:00
Iván Ovejero f53c482939
perf(core): Improve caching service (#8213)
Story: https://linear.app/n8n/issue/PAY-1188

- Implement Redis hashes on the caching service, based on Micha's work
in #7747, adapted from `node-cache-manager-ioredis-yet`. Optimize
workflow ownership lookups and manual webhook lookups with Redis hashes.
- Simplify the caching service by removing all currently unused methods
and options: `enable`, `disable`, `getCache`, `keys`, `keyValues`,
`refreshFunctionEach`, `refreshFunctionMany`, `refreshTtl`, etc.
- Remove the flag `N8N_CACHE_ENABLED`. Currently some features on
`master` are broken with caching disabled, and test webhooks now rely
entirely on caching, for multi-main setup support. We originally
introduced this flag to protect against excessive memory usage, but
total cache usage is low enough that we decided to drop this setting.
Apparently this flag was also never documented.
- Overall caching service refactor: use generics, reduce branching, add
discriminants for cache kinds for better type safety, type caching
events, improve readability, remove outdated docs, etc. Also refactor
and expand caching service tests.

Follow-up to: https://github.com/n8n-io/n8n/pull/8176

---------

Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com>
2024-01-05 11:52:44 +01:00
Michael Kret b201ff8f23
fix(Nextcloud Node): Throw an actual error if server responded with Fatal error (#8234)
## Summary
Nextcloud and Yourls receiving response with OK status as string
containing 'Fatal error', throw an actual error in such case

![image](https://github.com/n8n-io/n8n/assets/88898367/7cba4b8c-3b34-476f-8a35-e10738022427)

## Related tickets and issues

https://linear.app/n8n/issue/NODE-1035/nextcloud-and-yourls-throw-an-actual-error-if-server-responded-with
2024-01-05 12:13:29 +02:00
Tomi Turtiainen 6e78d2346e
fix: Adjust 'use template' feature telemetry (no-changelog) (#8232)
- Add extra params to 'User closed cred setup' event
- Fire 'User closed cred setup' only when template has creds
- Skip cred setup page if template has no creds required
- Fire 'User inserted workflow template' also in cred setup
2024-01-05 11:52:10 +02:00
Michael Kret cda49a4747
fix(Set Node): Field not excluded if dot notation disabled and field was set by using drag-and-drop from ui (#8233)
## Summary
Sanitize fields when dot notation disabled

![image](https://github.com/n8n-io/n8n/assets/88898367/5056bc8d-279e-4bc2-8689-4858fc25474d)

## Related tickets and issues

https://community.n8n.io/t/edit-fields-set-new-set-node-cannot-delete-field-with-space-or-non-latin-character-when-support-dot-notation-is-off/31989

https://linear.app/n8n/issue/NODE-883/set-edit-fields-node-spaces-in-field-names-break-fields-to-exclude
2024-01-05 11:15:33 +02:00
Michael Kret 43e8e5e540
fix(NocoDB Node): Download attachments (#8235)
## Summary
PR fixes Get Many fails to execute when Download Attachments is set to
true

![image](https://github.com/n8n-io/n8n/assets/88898367/7f3ab8c7-e07e-4f31-bf6e-f2e28e6a685a)


## Related tickets and issues
https://community.n8n.io/t/nocodb-unable-to-download-file/33333

https://linear.app/n8n/issue/NODE-960/nocodb-row-get-many-fails-to-execute-when-download-attachments-is-set
2024-01-05 11:15:10 +02:00
Tomi Turtiainen 8a78ae1739
fix: Add template id to workflows created from templates (no-changelog) (#8226)
In #8088 template ID was added to workflow metadata, but it was missing
from workflows that were created using the template credential setup.
This fixes that.
2024-01-05 10:36:59 +02:00
Elias Meire 071e6d6b6e
feat(editor): Add fullscreen view to code editor (#8084)
## Summary

<img width="1240" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/2819f4ce-c343-431a-8a88-a1bc9c4b572a">
<img width="2649" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/36862aaf-cc4c-4668-bdc8-cf5a6f00babe">

1. Add code node and open it
3. Click the fullscreen button in the bottom right
4. A fullscreen dialog should appear and allow editing the code
5. Changes made in the fullscreen dialog should be applied to the
original code editor when closed

It should work the same way for HTML/SQL/JSON editors

⚠️ Modal layout was updated so that modals/dialogs are centered, try to
test some modals

## Related tickets and issues
https://linear.app/n8n/issue/NODE-1009/add-fullscreen-view-to-code-node



## 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.

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
2024-01-04 17:23:24 +01:00
Ricardo Espinoza 8f22a265d6
fix(editor): Only load suggested templates for owners (#8228)
## Summary
Title is self explanatory
2024-01-04 10:19:25 -05: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

![image](https://github.com/n8n-io/n8n/assets/88898367/df93f9c7-2569-4d22-a719-494d9dfe8030)

## 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
Alex Grozav b50d8058cf
feat(editor): Migrate pinData mixin to usePinnedData composable (no-changelog) (#8207)
## Summary
Required as part of NodeView refactoring:
- Migrates `pinData` mixin to `usePinnedData` composable.
- Adds `useActiveNode` and `useNodeType` composables 

## Related tickets and issues
https://linear.app/n8n/issue/N8N-6355/pindata

## 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.
- [x] 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.
2024-01-04 11:22:56 +02:00
Michael Kret f4092a9e49
feat(Switch Node): Overhaul (#7855)
Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/switch-node-to-more-than-one-path/32791/2

https://community.n8n.io/t/switch-node-routing-same-value-multiple-output/29424

---------

Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
2024-01-04 11:03:03 +02:00
Tomi Turtiainen cd3f5b5b1f
fix: Fix template credential setup for nodes that dont have credentials (#8208)
Fix template credential setup for templates whose workflow includes
nodes that require credentials but the workflow definition does not have
them defined. Like for example
https://n8n.io/workflows/1344-save-email-attachments-to-nextcloud/
2024-01-04 10:21:36 +02:00
Ricardo Espinoza 4186884740
fix: Stop showing fake door templates when user clicks on "use template" (no-changelog) (#8219)
## Summary

We stop showing the fake-door templates when the user clicks on "notify
me when it's is available" (this notification is shown when the user
clicks on "use template"). This PR changes this behavior and stop
showing the fakedoor templates when the user clicks on "use template".
Additionally, also increases the "template coming soon" notification
time from 4.5 seconds to 10 seconds.

<img width="395" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/2e643b1f-dd52-46f0-951f-29e630241f73">
2024-01-03 17:04:30 -05:00
Michael Kret edbc5bb59a
fix(core): Unsafe isAxiosError property access (no-changelog) (#8197)
## Summary

in some cases the actual error does not get returned. It is apparently
reproducible with the OpenAI node but will probably also be a bug and so
a problem in other nodes:


https://community.n8n.io/t/problem-in-node-openai-cannot-read-properties-of-undefined-reading-isaxioserror/34716/9

## Related tickets and issues


https://linear.app/n8n/issue/NODE-1028/actual-error-does-not-always-get-returned

## 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.
2024-01-03 20:43:31 +02:00
Ricardo Espinoza 8a3c87f69c
fix(editor): Items count display in running workflow (#8148)
## Summary
> Describe what the PR does and how to test. Photos and videos are
recommended.

Every time the `MainHeader` component is created, we register a new
handler for the "push" messages. Unfortunately this becomes an issue if
you go multiple times to a page that renders the `MainHeader`, e.g
`/workflow/:id`, without refreshing the page; because all handlers will
be called, causing behavior duplication.

I added the possibility of passing an ID, and made impossible to have
multiple handlers with the same ID However, it does not seems to be
needed to support an array of handlers in the pushConnection store. If
that is the case:

1. We might want to have only one handler for the push connections at
all times, which would be a much simpler approach.
2. Register the handler on app.mount instead.

The issue seems to have been introduced
[here](https://github.com/n8n-io/n8n/pull/7763/files#diff-f5dae80a64b9951bb6691f1b9d439423cf84fa0cc9601b3f2c00904f3135e8deR48)

Before the change:

https://www.loom.com/share/85cf8ef896254d848a13a6c6438daa47

With the change:

https://www.loom.com/share/f5c4ffac421d46cc8e389364e1c357d3

## Related tickets and issues

https://linear.app/n8n/issue/ADO-1596/bug-items-count-display-in-running-workflow


## 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.
2024-01-03 11:31:33 -05:00
Iván Ovejero 22a5f5258d
feat(core): Cache test webhook registrations (#8176)
In a multi-main setup, we have the following issue. The user's client
connects to main A and runs a test webhook, so main A starts listening
for a webhook call. A third-party service sends a request to the test
webhook URL. The request is forwarded by the load balancer to main B,
who is not listening for this webhook call. Therefore, the webhook call
is unhandled.

To start addressing this, cache test webhook registrations, using Redis
for queue mode and in-memory for regular mode. When the third-party
service sends a request to the test webhook URL, the request is
forwarded by the load balancer to main B, who fetches test webhooks from
the cache and, if it finds a match, executes the test webhook. This
should be transparent - test webhook behavior should remain the same as
so far.

Notes:
- Test webhook timeouts are not cached. A timeout is only relevant to
the process it was created in, so another process retrieving from Redis
a "foreign" timeout will be unable to act on it. A timeout also has
circular references, so `cache-manager-ioredis-yet` is unable to
serialize it.
- In a single-main scenario, the timeout remains in the single process
and is cleared on test webhook expiration, successful execution, and
manual cancellation - all as usual.
- In a multi-main scenario, we will need to have the process who
received the webhook call send a message to the process who created the
webhook directing this originating process to clear the timeout. This
will likely be implemented via execution lifecycle hooks and Redis
channel messages checking session ID. This implementation is out of
scope for this PR and will come next.
- Additional data in test webhooks is not cached. From what I can tell,
additional data is not needed for test webhooks to be executed.
Additional data also has circular references, so
`cache-manager-ioredis-yet` is unable to serialize it.

Follow-up to: #8155
2024-01-03 16:58:33 +01:00
github-actions[bot] 053503531f
🚀 Release 1.23.0 (#8205)
#
[1.23.0](https://github.com/n8n-io/n8n/compare/n8n@1.22.0...n8n@1.23.0)
(2024-01-03)


### Bug Fixes

* **Asana Node:** Omit body from GET, HEAD, and DELETE requests
([#8057](https://github.com/n8n-io/n8n/issues/8057))
([15ffd4f](15ffd4fb9f))
* **core:** Better input validation for the changeRole endpoint
([#8189](https://github.com/n8n-io/n8n/issues/8189))
([cfe9525](cfe9525dd4))
* **core:** Fix issue that pinnedData is not used with Test-Webhooks
([#8123](https://github.com/n8n-io/n8n/issues/8123))
([fa8bd8b](fa8bd8b9eb))
* **core:** Handle empty executions table in pruning in migrations
([#8121](https://github.com/n8n-io/n8n/issues/8121))
([ffaa30d](ffaa30ddc4))
* **core:** Remove circular dependency in WorkflowService and
ActiveWorkflowRunner
([#8128](https://github.com/n8n-io/n8n/issues/8128))
([21788d9](21788d9153))
* **core:** Use pinned data only for manual mode
([#8164](https://github.com/n8n-io/n8n/issues/8164))
([ea7e76f](ea7e76fa3b))
* **Discord Node:** Remove unnecessary requirement on parameters
([#8060](https://github.com/n8n-io/n8n/issues/8060))
([ef3a577](ef3a57719e))
* **editor:** Avoid sanitizing output to search node data
([#8126](https://github.com/n8n-io/n8n/issues/8126))
([c83d9f4](c83d9f45ba))
* **editor:** Enable explicit undo keyboard shortcut across all code
editors ([#8178](https://github.com/n8n-io/n8n/issues/8178))
([cf7f668](cf7f6688ba))
* **editor:** Fix operation change failing in certain conditions
([#8114](https://github.com/n8n-io/n8n/issues/8114))
([711fa2b](711fa2b925))
* **editor:** Fix templates view layout
([#8196](https://github.com/n8n-io/n8n/issues/8196))
([d01e42a](d01e42a2aa))
* **editor:** Fix UI urls when hosted behind a path prefix
([#8198](https://github.com/n8n-io/n8n/issues/8198))
([5c078f1](5c078f1b3d))
* **editor:** Prevent browser zoom when scrolling inside sticky edit
mode ([#8116](https://github.com/n8n-io/n8n/issues/8116))
([e928210](e928210ccd))
* **editor:** Prevent canvas undo/redo when NDV is open
([#8118](https://github.com/n8n-io/n8n/issues/8118))
([39e45d8](39e45d8b92))
* **editor:** Prevent storing pairedItem data inside of pinData
([#8173](https://github.com/n8n-io/n8n/issues/8173))
([405e267](405e26757e))
* **GitHub Node:** Fix issue that File->Get did not run once per item
([#8190](https://github.com/n8n-io/n8n/issues/8190))
([11cda41](11cda41214))
* **Invoice Ninja Node:** Fix issue with custom invoice numbers not
working with v5 ([#8200](https://github.com/n8n-io/n8n/issues/8200))
([3b6ae2d](3b6ae2d0a5))
* **Microsoft Excel 365 Node:** Ensure arg is string during worksheet
table search ([#8154](https://github.com/n8n-io/n8n/issues/8154))
([8e873ca](8e873ca2f3))
* **Notion Node:** Ensure arg is string during page ID extraction
([#8153](https://github.com/n8n-io/n8n/issues/8153))
([e94b8a6](e94b8a6c30))
* **Redis Trigger Node:** Activating a workflow with a Redis trigger
fails ([#8129](https://github.com/n8n-io/n8n/issues/8129))
([a169b74](a169b74062))
* **Schedule Trigger Node:** Use the correct `moment` import
([#8185](https://github.com/n8n-io/n8n/issues/8185))
([17a4e2e](17a4e2ea80))
* Show public API upgrade CTA when feature is not enabled
([#8109](https://github.com/n8n-io/n8n/issues/8109))
([e9c7fd7](e9c7fd7397))


### Features

* **core:** Add closeFunction support to Sub-Nodes
([#7708](https://github.com/n8n-io/n8n/issues/7708))
([bec0fae](bec0faed9e))
* **core:** Add user.profile.beforeUpdate hook
([#8144](https://github.com/n8n-io/n8n/issues/8144))
([e126ed7](e126ed74f3))
* **core:** Improvements/overhaul for nodes working with binary data
([#7651](https://github.com/n8n-io/n8n/issues/7651))
([5e16dd4](5e16dd4ab4))
* **core:** Remove discontinued crypto-js
([#8104](https://github.com/n8n-io/n8n/issues/8104))
([01e9a79](01e9a79238))
* **core:** Unify application components shutdown
([#8097](https://github.com/n8n-io/n8n/issues/8097))
([3a881be](3a881be6c2))
* **editor:** Add node execution status indicator to output panel
([#8124](https://github.com/n8n-io/n8n/issues/8124))
([ab74bad](ab74bade05))
* **editor:** Add template Id to workflow metadata
([#8088](https://github.com/n8n-io/n8n/issues/8088))
([517b050](517b050d0a))
* **Home Assistant Node:** Use the new Home Assistant logo
([#8150](https://github.com/n8n-io/n8n/issues/8150))
([518a99e](518a99e528))
* **Qdrant Vector Store Node:** Qdrant vector store support
([#8080](https://github.com/n8n-io/n8n/issues/8080))
([66460f6](66460f66b0))
* **Wordpress Node:** Add option to ignore error when using self signed
certificates ([#8199](https://github.com/n8n-io/n8n/issues/8199))
([65c8e12](65c8e12b96))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2024-01-03 13:41:28 +01: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
Bin 259323b97e
docs: Update workflow link from ai-beta to master (#8183)
The ai_beta branch had deleted.

## Summary
> Just replaced the branch name.



## Related tickets and issues
> No.



## 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.
2024-01-03 10:54:21 +00:00
Jon 65c8e12b96
feat(Wordpress Node): Add option to ignore error when using self signed certificates (#8199)
## Summary
Adds option to ignore SSL issues to the Wordpress node, This is useful
when using a self signed certificate in a local setup.


## Related tickets and issues
https://github.com/n8n-io/n8n/issues/8151
2024-01-03 10:52:01 +00:00
कारतोफ्फेलस्क्रिप्ट™ 5c078f1b3d
fix(editor): Fix UI urls when hosted behind a path prefix (#8198)
fixes #8061
2024-01-03 11:37:01 +01:00
Anush 66460f66b0
feat(Qdrant Vector Store Node): Qdrant vector store support (#8080)
## Summary
This PR intends to add [Qdrant](https://qdrant.tech/) as a supported
vectorstore node to load and retrieve documents from in a workflow.


## Review / Merge checklist
- [x] PR title and summary are descriptive. 
- [x] Node/credentials documentation to be updated in
https://github.com/n8n-io/n8n-docs/pull/1796.

---------

Co-authored-by: oleg <me@olegivaniv.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-01-03 11:14:51 +01:00
Nihaal Sangha ef3a57719e
fix(Discord Node): Remove unnecessary requirement on parameters (#8060)
## Summary
The PR removes the requirement on 2 fields: the `content` and the
`description` of embeds. Discord requires neither of these fields and as
they weren't required in the v1 node, it prevents migrating to the v2
node for users not providing one of them. Discord does require
*something* to be sent however, whether an attachment, an embed or
content, so this could be used instead if necessary.

## 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.~~ (v2 is not documented)
- [x] ~~Tests included.~~ (If more complex requirements are set then a
test should be added although I haven't worked with n8n's tests before)

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Jonathan Bennetts <jonathan.bennetts@gmail.com>
2024-01-03 11:21:22 +02:00
Jon 3b6ae2d0a5
fix(Invoice Ninja Node): Fix issue with custom invoice numbers not working with v5 (#8200)
## Summary
The v5 API expects the invoice number to under the `number` property
rather than `invoice_number`, At some point this month I am going to
bring in the big PR that fixes all of the v5 issues.

## Related tickets and issues
https://github.com/n8n-io/n8n/issues/8191
2024-01-03 09:02:19 +00:00
कारतोफ्फेलस्क्रिप्ट™ cfe9525dd4
fix(core): Better input validation for the changeRole endpoint (#8189)
also refactored the code to
1. stop passing around `scope === 'global'`, since this code can be used
only for changing globalRole.
2. leak less details when input validation fails.

## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2024-01-03 09:33:35 +01:00
Jan Oberhauser 11cda41214
fix(GitHub Node): Fix issue that File->Get did not run once per item (#8190)
## Summary
The Operation File -> Get is implemented wrong. Instead of downloading a
file for each of the items it only downloads the file of the first one
and then stops.


## Related tickets and issues

https://linear.app/n8n/issue/NODE-1027/fix-issue-that-github-node-file-get



## 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: Michael Kret <michael.k@radency.com>
2024-01-03 07:06:41 +02:00
Iván Ovejero 40c1eeeddd
refactor(core): Continue moving typeorm operators to repositories (no-changelog) (#8186)
Follow-up to: #8163
2024-01-02 17:53:24 +01:00
Iván Ovejero 0ca2759d75
refactor: Optimize SVG icons for nodes (#8195)
Running `svgo` to optimize icon size for nodes.
2024-01-02 17:40:08 +01:00
Milorad FIlipović d01e42a2aa
fix(editor): Fix templates view layout (#8196)
## Summary
Recent changes to the template info carousel component broke the layout
of the templates way so it had excessive width when templates categories
carousel was visible.
This PR reverts disables CSS that held it in place.


## Related tickets and issues
Fixes ADO-1628


## 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.
2024-01-02 14:13:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ 17a4e2ea80
fix(Schedule Trigger Node): Use the correct moment import (#8185)
Any node that uses `moment.tz` should import from `moment-timezone`
instead of `moment`.

This fixes #8184
2024-01-02 12:50:31 +01:00
Iván Ovejero e94b8a6c30
fix(Notion Node): Ensure arg is string during page ID extraction (#8153)
https://n8nio.sentry.io/issues/4765178087

Co-authored-by: Michael Kret <michael.k@radency.com>
2024-01-02 10:21:32 +01:00
Iván Ovejero 8e873ca2f3
fix(Microsoft Excel 365 Node): Ensure arg is string during worksheet table search (#8154)
https://n8nio.sentry.io/issues/4748574897

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2024-01-02 10:07:12 +01:00
Tomi Turtiainen e126ed74f3
feat(core): Add user.profile.beforeUpdate hook (#8144)
Add `user.profile.beforeUpdate` hook so we can prevent user email change
if it overlaps with other users email.
2024-01-02 10:15:12 +02:00
Iván Ovejero ece48d6a13
refactor(core): Unify workflow controllers (no-changelog) (#8175)
Combine EE workflows controller into main workflows controller,
protecting paid functionality behind feature flag checks.
2023-12-29 14:23:58 +01:00
Alex Grozav f5a4bfe40c
feat(editor): Migrate copyPaste mixin to composables (no-changelog) (#8179) 2023-12-29 12:13:24 +02:00
कारतोफ्फेलस्क्रिप्ट™ 216ec079c9
feat(editor): Create separate components for JS and JSON editors (no-changelog) (#8156)
## Summary
This is part-1 of refactoring our code editors to extract different type
of editors into their own components.
In part-2 we'll
1. delete a of unused or duplicate code
2. switch to a `useEditor` composable to bring more UX consistency
across all the code editors.

## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2023-12-29 10:49:27 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1286d6583c
ci: Disable import/no-extraneous-dependencies in frontend tests (no-changelog) (#8182)
supersedes #8180
2023-12-29 10:45:55 +01:00
Iván Ovejero 4bad43dd66
refactor(core): Move typeorm operators from WaitTracker to ExecutionRepository (no-changelog) (#8163)
Follow-up to: #8145

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-28 19:22:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ cf7f6688ba
fix(editor): Enable explicit undo keyboard shortcut across all code editors (#8178)
Fixes [ADO-801](https://linear.app/n8n/issue/ADO-801),
[PAY-632](https://linear.app/n8n/issue/PAY-632), and
[PAY-730](https://linear.app/n8n/issue/PAY-730)
Also fixes #5297

## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-28 14:55:23 +01:00
Iván Ovejero e418d42450
refactor(core): Move typeorm operators from various sources into repositories (no-changelog) (#8174)
Follow-up to: #8165
2023-12-28 13:14:10 +01:00
Alex Grozav 405e26757e
fix(editor): Prevent storing pairedItem data inside of pinData (#8173)
## Summary
When pinning data after an execution, the pairedItem data gets stored in
the pinData field. This creates problems during executions.

Before:
<img width="1141" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/e555d00a-6ff2-4601-8072-3194a0c5e1c2">

After: 
<img width="1140" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/d97e9d90-28f5-4dcc-b63e-62497c646994">


## Related tickets and issues

https://linear.app/n8n/issue/PAY-812/wrong-error-shown-when-paireditem-fails-because-of-incorrect-pinned


## 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.
- [x] 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.
2023-12-28 12:59:01 +02:00
कारतोफ्फेलस्क्रिप्ट™ c84d3c3bbf
refactor(core): Extract ActiveWebhooks out of ActiveWorkflowRunner (no-changelog) (#8171)
## Summary
This PR continues refactoring webhooks code for better modularity.
Continued from #8069 to bring back `ActiveWebhooks`, but this time
actually handling active webhook calls in this class.

## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-28 10:04:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 68cff4c59e
refactor(editor): Improve linting for component and prop names (no-changelog) (#8169) 2023-12-28 09:49:58 +01:00
Iván Ovejero 639afcd7a5
refactor(core): Simplify state in test webhooks (no-changelog) (#8155)
This PR simplifies state in test webhooks so that it can be cached
easily. Caching this state will allow us to start using Redis for manual
webhooks, to support manual webhooks to work in multi-main setup.

- [x] Convert `workflowWebhooks` to a getter - no need to optimize for
deactivation
- [x] Remove array from value in `TestWebhooks.webhookUrls`
- [x] Consolidate `webhookUrls` and `registeredWebhooks`
2023-12-28 09:28:12 +01:00
Iván Ovejero 0e582594ea
refactor(core): Move more typeorm operators to UserRepository (no-changelog) (#8165)
Follow-up to: #8163
2023-12-28 09:27:47 +01:00
Iván Ovejero 5aee7a1d48
refactor(core): Move typeorm operators from SourceControlExportService to repositories (no-changelog) (#8168)
Follow-up to: #8165
2023-12-28 09:27:38 +01:00
Jan Oberhauser ea7e76fa3b
fix(core): Use pinned data only for manual mode (#8164)
## Summary
Fixes the issue that pinned data gets also used for production executions.

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-27 18:22:33 +01:00
Iván Ovejero 2c6ffb0153
fix(core): Minor improvements to multi-main setup (no-changelog) (#8012)
- Move webhook, poller and trigger activation logs closer to activation
event
- Enrich response of `/debug/multi-main-setup`
- Ensure workflow updates broadcast activation state changes only if
state changed
- Fix bug on workflow activation after leadership change
- Ensure debug controller is not available in production

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-12-27 16:55:01 +01: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
geodic 518a99e528
feat(Home Assistant Node): Use the new Home Assistant logo (#8150)
Updated Home Assistant logo to the newer 25th anniversary version.

https://www.home-assistant.io/blog/2023/09/17/a-refreshed-logo-for-home-assistant/
2023-12-27 11:26:20 +01:00
Jan Oberhauser fa8bd8b9eb
fix(core): Fix issue that pinnedData is not used with Test-Webhooks (#8123)
## Summary
When a workflow gets started via a Test-Webhook the pinned data does get
ignored and the nodes executed anyway.



## Related tickets and issues
> Include links to **Linear ticket** or Github issue or Community forum
post. Important in order to close *automatically* and provide context to
reviewers.



## 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.
- [X] 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: Mutasem Aldmour <mutasem@n8n.io>
2023-12-27 10:51:53 +01:00
Iván Ovejero 7b26a7a621
refactor(core): Move typeorm operators from PruningService to ExecutionRepository (no-changelog) (#8145)
Follow-up to https://github.com/n8n-io/n8n/pull/8143
2023-12-22 17:49:15 +01:00
Iván Ovejero a59d78de18
refactor(core): Move more typeorm operators to repositories (no-changelog) (#8143)
Follow-up to #8139
2023-12-22 16:20:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4007163651
refactor(core): Delete unused code, and fix typings in tests (no-changelog) (#8142) 2023-12-22 15:41:29 +01:00
Omar Ajoue 5778b3bac8
docs: Improve documentation for the toTitleCase function (no-changelog) (#8140)
## Summary
Update description of `toTitleCase` to better explain what it does.


## Related tickets and issues

https://linear.app/n8n/issue/PAY-857/expressions-totitlecase-fails-to-lowercase-the-non-leading-letters


## 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.

---------

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-12-22 14:22:05 +00:00
कारतोफ्फेलस्क्रिप्ट™ baee47a276
refactor(core): Move all base URLs to UrlService (no-changelog) (#8141)
This change kept coming up in #6713, #7773, and #8135. 
So this PR moves the existing code without actually changing anything,
to help get rid of some of the circular dependencies.


## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-22 15:19:50 +01:00
Milorad FIlipović 517b050d0a
feat(editor): Add template Id to workflow metadata (#8088)
## Summary
Adding a link between the workflow and the template it originated from
by saving `templateId` in the workflow metadata

## Related tickets and issues
ADO-1537

## 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.
- [x] 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.
2023-12-22 15:07:05 +01:00
Mutasem Aldmour c83d9f45ba
fix(editor): Avoid sanitizing output to search node data (#8126)
## Summary
In search feature, output sanitization was added to support `<mark` tag
in output panel to highlight searched text. This removes any html like
data in the input/output panel..
This PR removes sanitization while keeping text highlights..


## Related tickets and issues
https://community.n8n.io/t/n8n-output/33997
https://community.n8n.io/t/html-tags-in-editor-rendered/34240
https://github.com/n8n-io/n8n/issues/8081
https://linear.app/n8n/issue/ADO-1594/node-output-view-not-consistent
https://linear.app/n8n/issue/ADO-1597/bug-xml-display-issue


## 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.
2023-12-22 15:03:40 +01:00
Milorad FIlipović e928210ccd
fix(editor): Prevent browser zoom when scrolling inside sticky edit mode (#8116)
## Summary
Fixes a bug where zooming inside a sticky edit mode would trigger
browser zoom. Instead, triggers regular canvas zoom.


## Related tickets and issues
Fixes ADO-1581


## 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.
2023-12-22 14:18:32 +01:00
Iván Ovejero c6dd935895
refactor(core): Move some typeorm operators to repositories (no-changelog) (#8139)
Moving some persistence logic to repositories to reduce circular
dependencies.
2023-12-22 13:35:23 +01:00
Milorad FIlipović ab74bade05
feat(editor): Add node execution status indicator to output panel (#8124)
## Summary
Adding node execution status indicator to the output panel ([Figma
HiFi](https://www.figma.com/file/iUduV3M4W5wZT7Gw5vgDn1/NDV-output-pane-success-state)).

## Related tickets and issues
Fixes ADO-480

## 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.
- [x] 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.
2023-12-22 12:50:36 +01:00
Tomi Turtiainen 3a881be6c2
feat(core): Unify application components shutdown (#8097)
## Summary

Add `ShutdownService` and `OnShutdown` decorator for more unified way to
shutdown different components. Use this new way in the following
components:

- HTTP(S) server
- Pruning service
- Push connection
- License

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-22 12:39:58 +02:00
कारतोफ्फेलस्क्रिप्ट™ c158ca2471
refactor(core): Upgrade more dependencies to remove axios 0.x (no-changelog) (#8105)
Had to [fork localtunnel](https://github.com/n8n-io/localtunnel) to get
the axios upgrade, since localtunnel doesn't seem to be actively maintained.
2023-12-22 11:39:20 +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
Milorad FIlipović 39e45d8b92
fix(editor): Prevent canvas undo/redo when NDV is open (#8118)
## Summary
Preventing canvas undo/redo while NDV or any modal is open. We already
had a NDV open check in place but looks like it was broken by unreactive
ref inside `useHistoryHelper` composable.
This PR fixes this by using store getter directly inside the helper
method and adds modal open check.

## Related tickets and issues
Fixes ADO-657

## 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.
2023-12-22 08:42:53 +01:00
Milorad FIlipović 711fa2b925
fix(editor): Fix operation change failing in certain conditions (#8114)
## Summary
This PR handles the case when there are multiple parameters with the
same name but different `options` and `displayOptions`. In this case, if
one of such fields is set, changing the dependent parameter value so the
other should be shown causes an error in case their options are not
compatible (this
[check](7806a65229/packages/workflow/src/NodeHelpers.ts (L786))).

#### Example:
LDAP node has two `options` properties with the same name:
1. `attributes` with predefined options (`add`, `replace`, `delete`).
Shown when **Update** operation is selected
2. `attributes` with a collection of `attribute` objects. Shows for the
**Create** operation

Setting one of these parameter values and switching operation so the
other is shown breaks the app.
This PR checks if there is a value saved for such parameter and removes
it before calling `getNodeParameters` in `valueChanged` handler.

## Related tickets and issues
Fixes ADO-1589

## 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.
- [x] 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.
2023-12-22 08:41:20 +01:00
Aaron Gutierrez 15ffd4fb9f
fix(Asana Node): Omit body from GET, HEAD, and DELETE requests (#8057)
Avoid unnecessarily including a request body with GET and HEAD requests.
Per RFC 7230 clients should not include a body for these requests, and
we (Asana) are rolling out an infrastructure change that will cause
these requests to fail.
2023-12-21 19:21:08 +01:00
Ricardo Espinoza a169b74062
fix(Redis Trigger Node): Activating a workflow with a Redis trigger fails (#8129)
## Summary
> Describe what the PR does and how to test. Photos and videos are
recommended.

We were awaiting for the promise to resolve before returning. Because
the trigger method does not return until the first message is received
or the connection errors, the requests that actives the workflows did
not respond making the activation button irresponsive.

Without the change:

https://www.loom.com/share/769b26d5d4ee407e999344fab3905eae

With the change:

https://www.loom.com/share/d1691ee1941248bc97f2ed97b0c129a3

## Related tickets and issues

https://linear.app/n8n/issue/ADO-895/activating-a-workflow-with-a-redis-trigger-fails


## 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.
2023-12-21 12:29:26 -05:00
कारतोफ्फेलस्क्रिप्ट™ 1d2666b37c
refactor(Peekalink Node): Stricter typing for Peekalink api call + Tests (no-changelog) (#8125)
This PR is an example for how we can
1. improve typing and remove boilerplate code in may of our nodes
2. use nock to write effective unit tests for nodes that make external
calls

## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Add tests
2023-12-21 18:22:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 21788d9153
fix(core): Remove circular dependency in WorkflowService and ActiveWorkflowRunner (#8128)
## Summary
A circular dependency between `WorkflowService` and
`ActiveWorkflowRunner` is sometimes causing `this.activeWorkflowRunner`
to be `undefined` in `WorkflowService`.
Breaking this circular dependency should hopefully fix this issue.

## Related tickets and issues
#8122


## Review / Merge checklist
- [x] PR title and summary are descriptive
- [ ] Tests included
2023-12-21 17:37:08 +01:00
Ricardo Espinoza e9c7fd7397
fix: Show public API upgrade CTA when feature is not enabled (#8109)
## Summary
> Describe what the PR does and how to test. Photos and videos are
recommended.

Shows the public API upgrade CTA when the feature is not enabled. Now
trialing users in cloud would see the API on the settings menu and can
upgrade from there.

When public API feature disabled: 

<img width="1863" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/a9052f6b-151f-4ebb-80df-5ff2fa643e85">

When public API feature enabled with no API key:

<img width="1861" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/fdfe7296-425e-4410-a8cb-f25535bc9df4">

When public API feature enabled with API key:

<img width="1423" alt="image"
src="https://github.com/n8n-io/n8n/assets/16496553/a8426cbf-ff73-43c4-8c60-b00274bca46e">



## Related tickets and issues
[> Include links to **Linear ticket** or Github issue or Community forum
post. Important in order to close *automatically* and provide context to
r](https://linear.app/n8n/issue/ADO-1282/feature-api-page-missing-for-trial-users)eviewers.



## 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] 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.
2023-12-21 09:06:54 -05:00
कारतोफ्फेलस्क्रिप्ट™ 5f27c20a00
feat(Snowflake Node): Update snowflake-sdk (no-changelog) (#8087)
This finally removes `aws-sdk` v2 from n8n's dependencies, which should
reduce n8n dependencies and docker image size by about 10%.
2023-12-21 14:52:54 +01:00
कारतोफ्फेलस्क्रिप्ट™ ffaa30ddc4
fix(core): Handle empty executions table in pruning in migrations (#8121)
In case someone manually prunes their executions table before upgrading
to 1.x, `MigrateIntegerKeysToString` should gracefully handle that,
instead of crashing the application.

## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-21 14:52: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
Iván Ovejero 9ac8825a67
refactor(core): Move error execution creation to execution service (no-changelog) (#8006)
Continue breaking down legacy helpers.

Note: `getUserById` is unused.
2023-12-21 14:15:46 +01:00
Iván Ovejero d1b2affd2c
ci: Add lint rule no-dynamic-import-template (no-changelog) (#8089)
Follow-up to: https://github.com/n8n-io/n8n/pull/8086

`tsc-alias` as of 1.8.7 is unable to resolve template strings in dynamic
imports. Since the module name mapper in Jest is able to, this issue is
hard to detect, hence the new lint rule `no-dynamic-import-template`.
This is for now specific to `@/` in the `cli` package - we can
generalize later if needed. Ideally we should contribute a fix upstream
when we have more time.

<img width="940" alt="Capture 2023-12-19 at 12 39 55@2x"
src="https://github.com/n8n-io/n8n/assets/44588767/78d4a277-ccff-455c-8610-d1bba39d93f2">
2023-12-21 14:15:37 +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
github-actions[bot] b67b5ae6b2
🚀 Release 1.22.0 (#8115)
#
[1.22.0](https://github.com/n8n-io/n8n/compare/n8n@1.21.0...n8n@1.22.0)
(2023-12-21)


### Bug Fixes

* **core:** Close db connection gracefully when exiting
([#8045](https://github.com/n8n-io/n8n/pull/8045))
([e69707e](e69707efd4))
* **core:** Consider timeout in shutdown an error
([#8050](https://github.com/n8n-io/n8n/pull/8050))
([4cae976](4cae976a3b))
* **core:** Do not display error when stopping jobless execution in
queue mode ([#8007](https://github.com/n8n-io/n8n/pull/8007))
([8e6b951](8e6b951a76))
* **core:** Fix shutdown if terminating before hooks are initialized
([#8047](https://github.com/n8n-io/n8n/pull/8047))
([6ae2f5e](6ae2f5efea))
* **core:** Handle multiple termination signals correctly
([#8046](https://github.com/n8n-io/n8n/pull/8046))
([67bd8ad](67bd8ad698))
* **core:** Initialize queue once in queue mode
([#8025](https://github.com/n8n-io/n8n/pull/8025))
([53c0b49](53c0b49d15))
* **core:** Prevent axios from force setting a form-urlencoded
content-type ([#8117](https://github.com/n8n-io/n8n/pull/8117))
([bba9576](bba95761e2))
* **core:** Remove circular references before serializing executions in
public API ([#8043](https://github.com/n8n-io/n8n/pull/8043))
([989888d](989888d9bc))
* **core:** Restore workflow ID during execution creation
([#8031](https://github.com/n8n-io/n8n/pull/8031))
([c5e6ba8](c5e6ba8cdd))
* **core:** Use relative imports for dynamic imports in
SecurityAuditService ([#8086](https://github.com/n8n-io/n8n/pull/8086))
([785bf99](785bf9974e))
* **core:** Stop binary data restoration from preventing execution from
finishing ([#8082](https://github.com/n8n-io/n8n/pull/8082))
([5ffff1b](5ffff1bb22))
* **editor:** Add back credential `use` permission
([#8023](https://github.com/n8n-io/n8n/pull/8023))
([329e5bf](329e5bf9ee))
* **editor:** Cleanup Executions page component
([#8053](https://github.com/n8n-io/n8n/pull/8053))
([2689c37](2689c37e87))
* **editor:** Disable auto scroll and list size check when clicking on
executions ([#7983](https://github.com/n8n-io/n8n/pull/7983))
([fcb8b91](fcb8b91f37))
* **editor:** Ensure execution data overrides pinned data when copying
in executions view ([#8009](https://github.com/n8n-io/n8n/pull/8009))
([1d1cb0d](1d1cb0d3c5))
* **editor:** Fix copy/paste issue when switch node is in workflow
([#8103](https://github.com/n8n-io/n8n/pull/8103))
([4b86926](4b86926752))
* **editor:** Make keyboard shortcuts more strict; don't accept extra
Ctrl/Alt/Shift keys ([#8024](https://github.com/n8n-io/n8n/pull/8024))
([8df49e1](8df49e134d))
* **editor:** Show credential share info only to appropriate users
([#8020](https://github.com/n8n-io/n8n/pull/8020))
([b29b4d4](b29b4d442b))
* **editor:** Turn off executions list auto-refresh after leaving the
page ([#8005](https://github.com/n8n-io/n8n/pull/8005))
([e3c363d](e3c363d72c))
* **editor:** Update image sizes in template description not to be full
width always ([#8037](https://github.com/n8n-io/n8n/pull/8037))
([63a6e7e](63a6e7e034))
* **ActiveCampaign Node:** Fix pagination issue when loading tags
([#8017](https://github.com/n8n-io/n8n/pull/8017))
([1943857](1943857231))
* **HTTP Request Node:** Do not create circular references in HTTP
request node output ([#8030](https://github.com/n8n-io/n8n/pull/8030))
([5b7ea16](5b7ea16d9a))
* Upgrade axios to address CVE-2023-45857
([#7713](https://github.com/n8n-io/n8n/pull/7713))
([64eb9bb](64eb9bbc36))


### Features

* Add option to `returnIntermediateSteps` for AI agents
([#8113](https://github.com/n8n-io/n8n/pull/8113))
([7806a65](7806a65229))
* **core:** Add config option to prefer GET request over LIST when using
Hashicorp Vault ([#8049](https://github.com/n8n-io/n8n/pull/8049))
([439a22d](439a22d68f))
* **core:** Add N8N_GRACEFUL_SHUTDOWN_TIMEOUT env var
([#8068](https://github.com/n8n-io/n8n/pull/8068))
([614f488](614f488386))
* **editor:** Add lead enrichment suggestions to workflow list
([#8042](https://github.com/n8n-io/n8n/pull/8042))
([36a923c](36a923cf7b))
* **editor:** Finalize workers view
([#8052](https://github.com/n8n-io/n8n/pull/8052))
([edfa784](edfa78414d))
* **editor:** Gracefully ignore invalid payloads in postMessage handler
([#8096](https://github.com/n8n-io/n8n/pull/8096))
([9d22c7a](9d22c7a278))
* **editor:** Upgrade frontend tooling to address a few vulnerabilities
([#8100](https://github.com/n8n-io/n8n/pull/8100))
([19b7f1f](19b7f1ffb1))
* **Filter Node:** Overhaul UI by adding the new filter component
([#8016](https://github.com/n8n-io/n8n/pull/8016))
([3d53052](3d530522f8))
* **Respond to Webhook Node:** Overhaul with improvements like returning
all items ([#8093](https://github.com/n8n-io/n8n/pull/8093))
([32d397e](32d397eff3))


### Performance Improvements

* **editor:** Improve canvas rendering performance
([#8022](https://github.com/n8n-io/n8n/pull/8022))
([b780436](b780436a6b))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-12-21 13:51:24 +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
Marcus 32d397eff3
feat(Respond to Webhook Node): Overhaul with improvements like returning all items (#8093) 2023-12-21 13:03:26 +01:00
Omar Ajoue 5ffff1bb22
fix: Stop binary data restoration from preventing execution from finishing (#8082)
In the case of a filesystem failure to rename the binary files as part
of the execution's cleanup process, the execution would fail to be saved
and would never finish. This catch prevents it.

## Summary
Whenever an execution is wrapping u to save the data, if it uses binary
data n8n will try to find possibly misallocated files and place them in
the right folder. If this process fails, the execution fails to finish.

Given the execution has already finished at this point, and we cannot
handle the binary data errors more gracefully, all we can do at this
point is log the message as it's a filesystem issue. The rest of the
execution saving process should remain as normal.



## Related tickets and issues
https://linear.app/n8n/issue/HELP-430



## 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.

---------

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-12-21 09:40:39 +00:00
oleg 7806a65229
feat: Add option to returnIntermediateSteps for AI agents (#8113)
## Summary
![CleanShot 2023-12-21 at 08 30
16](https://github.com/n8n-io/n8n/assets/12657221/66b0de47-80cd-41f9-940e-6cacc2c940a9)

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-21 10:27:49 +01:00
Jon 6580b927b3
docs: Add notice to TheHive triggers to highlight manual steps (#8051) 2023-12-21 09:40:37 +01:00
Iván Ovejero edfa78414d
feat(editor): Finalize workers view (#8052)
https://linear.app/n8n/issue/PAY-1065
2023-12-20 17:49:14 +01:00
Iván Ovejero d917dfe9f8
refactor(editor): Remove tracking for SAML test success (no-changelog) (#8108)
Follow-up to: https://github.com/n8n-io/n8n/pull/8102

It turns out that SAML test success cannot be tracked on the FE. We
might track on the BE, but after further discussion with Product, we do
not really need to track this property, so this PR simply removes it.
2023-12-20 15:23:00 +01:00
Iván Ovejero 97aa38e783
ci: Fix Postgres and MySQL tests (no-changelog) (#8106)
This role query works for sqlite but [fails for Postgres and
MySQL](https://github.com/n8n-io/n8n/actions/runs/7269009778/job/19805986017),
so generalize by adding alias and accounting for count possibly being
`string` in the resulting rows.

Run in progress: https://github.com/n8n-io/n8n/actions/runs/7275986797
2023-12-20 15:14:31 +01:00
Elias Meire 8df49e134d
fix(editor): Make keyboard shortcuts more strict; don't accept extra Ctrl/Alt/Shift keys (#8024)
## Summary
Keyboard shortcuts such as Shift+S get triggered even when other keys
(Ctrl/Alt) are pressed, creating conflicts with browser or OS shortcuts.

This PR makes keyboard shortcuts more strict: the exact combination
needs to be pressed, no extra keys allowed.
--> Ctrl+Shift+S will no longer trigger the Shift+S shortcut to add a
sticky note

## Related tickets and issues
https://n8nio.slack.com/archives/C035KBDA917/p1702545933647959
2023-12-20 12:06:49 +01:00
कारतोफ्फेलस्क्रिप्ट™ 81994ce13d
fix(core): Downgrade Rudderstack SDK (no-changelog) (#8107)
This reverts commit a895ee87fc (#8090)

Our telemetry backend is throwing 500s with the updated rudderstack sdk.
Until that is resolved, we need to downgrade.

## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-20 11:59:44 +01:00
Alex Grozav fcff34c401
fix(editor): Move versions check to init function and refactor store (no-changelog) (#8067) 2023-12-20 12:49:40 +02:00
Iván Ovejero faadfd6d4a
refactor(editor): Add telemetry for SSO/SAML (no-changelog) (#8102)
https://linear.app/n8n/issue/PAY-1142
2023-12-20 11:41:39 +01:00
Iván Ovejero 1d1cb0d3c5
fix(editor): Ensure execution data overrides pinned data when copying in executions view (#8009)
https://linear.app/n8n/issue/PAY-1063


https://community.n8n.io/t/execution-history-node-output-copy-to-clipboard-copies-pinned-data-instead-of-executed-node-output/33248?u=mutedjam
2023-12-20 10:42:26 +01:00
Mutasem Aldmour 4b86926752
fix(editor): Fix copy/paste issue when switch node is in workflow (#8103)
## Summary
Fix bug where copy/pasting a node breaks the view. Issue seems to be
that copied workflow does not have Switch node when workflow is
rerendering..

<img width="1942" alt="Screenshot 2023-12-19 at 18 16 23"
src="https://github.com/n8n-io/n8n/assets/4711238/ad53b8ae-3693-4733-8f6b-7bc9e7b9d216">




## Related tickets and issues
[Linear ticket
ADO-1504](https://linear.app/n8n/issue/ADO-1504/unwanted-nodes-connections-after-copypaste-of-n8n-form-trigger)


## 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.
- [x] 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.
2023-12-20 10:13:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 19b7f1ffb1
feat(editor): Upgrade frontend tooling to address a few vulnerabilities (#8100)
This addresses CVE-2023-49293, CVE-2023-48631, and CVE-2023-26364

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-19 19:23:55 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3a0155059e
feat(editor): De-duplicate frontend devDependencies (no-changelog) (#8094)
`@n8n/chat` was pulling in a lot of duplicate dependencies. This PR
updates all frontend packages to use an many of the same versions of
frontend devDependencies as possible.

## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-19 17:43:46 +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
Iván Ovejero 38d1336fa7
refactor: Add telemetry for RBAC (no-changelog) (#8056)
https://linear.app/n8n/issue/PAY-1142
2023-12-19 17:02:52 +01:00
कारतोफ्फेलस्क्रिप्ट™ a895ee87fc
feat(core): Upgrade Rudderstack SDK (no-changelog) (#8090)
This helps remove some of the older versions of transient dependencies,
like axios 0.x and ioredis 4.x.

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-19 16:53:12 +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
Iván Ovejero 8e6b951a76
fix(core): Do not display error when stopping jobless execution in queue mode (#8007)
No need to surface error to user when stopping a job no longer in queue.

https://linear.app/n8n/issue/PAY-1104
2023-12-19 16:11:21 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9d22c7a278
feat(editor): Gracefully ignore invalid payloads in postMessage handler (#8096)
It's possible for browser extensions to send `message` events to an n8n window.
This change improves the already existing check to ignore invalid messages.

Fixes https://community.n8n.io/t/errors-in-the-browser-console-on-n8n-1-version/33910
2023-12-19 15:20:29 +01:00
Milorad FIlipović 36a923cf7b
feat(editor): Add lead enrichment suggestions to workflow list (#8042)
## Summary
We want to show lead enrichment template suggestions to cloud users that
agreed to this. This PR introduces the front-end part of this feature
- Handoff document
- Figma Hi-fi
- [How to
test](https://linear.app/n8n/issue/ADO-1549/[n8n-fe]-update-workflows-list-page-to-show-fake-door-templates#comment-b6644c99)

Tests are being worked on in a separate PR

## Related tickets and issues
Fixes ADO-1546
Fixes ADO-1549
Fixes ADO-1604

## 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.

---------

Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-12-19 09:10:03 -05:00
Iván Ovejero c170dd1da3
refactor(Discord Node): Stop reporting to Sentry inaccessible guild error (no-changelog) (#8095)
Ref Sentry issue: https://n8nio.sentry.io/issues/4738702202
2023-12-19 15:07:51 +01:00
Alex Grozav 5ed4d19059
feat: Add opt-in enterprise license trial checkbox (no-changelog) (#7826)
<img width="518" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/6422a057-de94-49dc-90fd-7381b5642902">

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-12-19 14:58:30 +02: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
Iván Ovejero a7ffed245a
refactor(editor): Add telemetry for log streaming (no-changelog) (#8075)
https://linear.app/n8n/issue/PAY-1065
2023-12-19 13:18:13 +01:00
कारतोफ्फेलस्क्रिप्ट™ 785bf9974e
fix(core): Use relative imports for dynamic imports in SecurityAuditService (#8086)
`tsc-alias` doesn't seem to replace imports when using template strings

## Related tickets and issues
#8085

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-19 12:41:15 +01:00
Iván Ovejero d44602913f
refactor(editor): Add telemetry for debug in editor (no-changelog) (#8073)
https://linear.app/n8n/issue/PAY-1142
2023-12-19 12:23:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ a63d94f28c
refactor(core): Move license endpoints to a decorated controller class (no-changelog) (#8074) 2023-12-19 12:13:19 +01:00
Mutasem Aldmour 63a6e7e034
fix(editor): Update image sizes in template description not to be full width always (#8037)
## Summary
Update image sizes in template description not to be full width always.


## Related tickets and issues

https://linear.app/n8n/issue/ADO-1506/bug-fix-images-in-template-descriptions


## 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.
- [x] 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.
2023-12-18 17:40:00 +01:00
Iván Ovejero 62ce962ec9
refactor(editor): Add telemetry for workflow history (no-changelog) (#8072)
https://linear.app/n8n/issue/PAY-1142
2023-12-18 16:10:45 +01:00
Iván Ovejero 73d400a1bf
refactor(core): Inject dependencies into workflow services (no-changelog) (#8066)
Inject dependencies into workflow services (no-changelog)

Up next:

- ~~Make workflow services injectable~~ #8033
- ~~Inject dependencies into workflow services~~ (current)
- Consolidate workflow controllers into one
- Make workflow controller injectable
- Inject dependencies into workflow controller
2023-12-18 16:10:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ a651089a10
refactor(core): Update backend sentry setup to reduce noise (no-changelog) (#8026)
## Summary
This PR updates our backend sentry setup to remove integrations that
don't provide us any value. This also reduces the amount of PII that
gets sent to Sentry.

[Sample event](https://n8nio.sentry.io/issues/4725315362/)

## Related tickets
[ENG-95](https://linear.app/n8n/issue/ENG-95)

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-18 14:26:07 +01:00
Tomi Turtiainen 614f488386
feat(core): Add N8N_GRACEFUL_SHUTDOWN_TIMEOUT env var (#8068)
Add generic N8N_GRACEFUL_SHUTDOWN_TIMEOUT which controls how long n8n
process will wait for graceful exit before exitting forcefully. This
variables replaces the QUEUE_WORKER_TIMEOUT variable that was used for
worker process.

DEPRECATED: QUEUE_WORKER_TIMEOUT deprected

QUEUE_WORKER_TIMEOUT environment variable has been replaced with
N8N_GRACEFUL_SHUTDOWN_TIMEOUT.
2023-12-18 14:04:19 +02:00
Iván Ovejero 8fc9888541
refactor(editor): Add telemetry for workers view (#8055)
https://linear.app/n8n/issue/PAY-1142
2023-12-18 12:21:13 +01:00
Tomi Turtiainen 4cae976a3b
fix(core): Consider timeout in shutdown an error (#8050)
If the process doesn't shutdown within a time limit, exit with error
code.

1. conceptually something timing out is an error.
2. on successful exit we close down the DB connection gracefully. On an
exit timeout we rather not do that, since it will wait for any active
connections to close and would possible block the exit.
2023-12-18 10:53:34 +02:00
Csaba Tuncsik aad57e2da1
fix(editor): Update wording when an instance owner or admin is viewing a credential they do not own (no-changelog) (#8054)
## Summary
Now that instance admins and owners can share on credentials, we need to
tweak the wording so it's clear what they can do in the UI and the
access they have.

### Acceptance Criteria

When an instance owner/admin views a credential they do not own, we
should show the following text `You can view this credential because you
have permission to read and share (and rename or delete it too).`

When an instance owner/admin views a credential they do not own and has
NOT been shared with them, we should show the following text `You can
view this credential because you have permission to read and share (and
rename or delete it too). You can share it with yourself or other users
to use it in a workflow.`
2023-12-18 08:31:00 +00:00
Tomi Turtiainen 6ae2f5efea
fix(core): Fix shutdown if terminating before hooks are initialized (#8047)
If the app receives termination signal before hooks have been
initialised, the would be objet is undefined error. This PR fixes that.
2023-12-18 09:23:10 +02:00
Csaba Tuncsik 2689c37e87
fix(editor): Cleanup Executions page component (#8053)
## Summary
Remove duplicated `created` VUE component lifecycle method
2023-12-15 18:18:25 +01:00
Jon 439a22d68f
feat: Add config option to prefer GET request over LIST when using Hashicorp Vault (#8049)
## Summary
Hashicorp Vault prefers a `LIST` HTTP method to be used when fetching
secrets but not all environments will allow custom http methods through
WAFs. This PR adds `N8N_EXTERNAL_SECRETS_PREFER_GET` which when set to
`true` will use GET instead of LIST to fetch secrets.


## 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))
2023-12-15 16:20:39 +00:00
कारतोफ्फेलस्क्रिप्ट™ 5b7ea16d9a
fix(HTTP Request Node): Do not create circular references in HTTP request node output (#8030)
## Summary
Remove unused `response.request` circular reference in http response
objects

## Related tickets
[PAY-1119](https://linear.app/n8n/issue/PAY-1119)

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-15 16:40:39 +01:00
Tomi Turtiainen 67bd8ad698
fix(core): Handle multiple termination signals correctly (#8046)
Prevent possible multiple termination signals initiating the shutdown
process multiple times.
2023-12-15 17:35:22 +02:00
Tomi Turtiainen e69707efd4
fix(core): Close db connection gracefully when exiting (#8045)
Close db connection gracefully when exiting
2023-12-15 17:16:35 +02:00
Marcus 48d4f4a71b
fix(core): Public API support node's deprecated continueOnFail to upload old workflows (no-changelog) (#8044) 2023-12-15 16:11:53 +01:00
कारतोफ्फेलस्क्रिप्ट™ 989888d9bc
fix(core): Remove circular references before serializing executions in public API (#8043)
## Summary
Handle circular references in the public API for executions created
prior to the fix from #8030

## Related tickets
[PAY-1119](https://linear.app/n8n/issue/PAY-1119)

## Review / Merge checklist
- [x] PR title and summary are descriptive.
2023-12-15 16:01:41 +01:00
Iván Ovejero 1e7a309e63
refactor(core): Make workflow services injectable (no-changelog) (#8033)
Refactor static workflow service classes into DI-compatible classes

Context: https://n8nio.slack.com/archives/C069HS026UF/p1702466571648889

Up next:
- Inject dependencies into workflow services
- Consolidate workflow controllers into one
- Make workflow controller injectable
- Inject dependencies into workflow controller

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-15 12:59:56 +01:00
Iván Ovejero 2da15d0264
refactor(core): Remove ID-less workflow reporting (no-changelog) (#8038)
We added ID-less workflow reporting at #8031, which has already produced
multiple reports coming from internal, enough info to tackle [this
story](https://linear.app/n8n/issue/PAY-1147). To prevent an
overwhelming number of reports from cloud, this PR removes the reporting
for now.
2023-12-15 12:50:09 +01:00
Elias Meire 3d530522f8
feat(Filter Node): Overhaul UI by adding the new filter component (#8016)
## Summary

Adds a new version of the Filter node (v2) that uses the filter
component (like in the new If node).

<img width="1612" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/bca38e47-305f-4a9e-9c5c-ec550b9f7d4a">

Test by adding a new Filter node to the canvas and trying different
operators/options. Example workflow can be found in
`packages/nodes-base/nodes/Filter/test/workflow_v2.json`

## Related tickets and issues
https://linear.app/n8n/issue/NODE-982



## 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.
- [x] 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: Michael Kret <michael.k@radency.com>
2023-12-15 11:56:49 +01:00
Iván Ovejero f18bc5f4b7
refactor(core): Warn on sqlite DB detected during init on queue mode (#8034)
When setting up queue mode, it is easy to overlook that not exporting
Postgres env vars will default the worker to use sqlite, which will fail
during execution with a non-obvious error. Hence add warnings when
starting a worker with an incompatible DB type.
2023-12-15 10:56:35 +01:00
Deborah f432d86524
docs: Two small UI copy fixes in sub-nodes (#8032) 2023-12-14 19:15:38 +00:00
Iván Ovejero c5e6ba8cdd
fix(core): Restore workflow ID during execution creation (#8031)
## Summary
Restore workflow ID during execution creation removed by [this
PR](https://github.com/n8n-io/n8n/pull/8002/files#diff-c8cbb62ca9ab2ae45e5f565cd8c63fff6475809a6241ea0b90acc575615224af).
The missing workflow ID, and more generally the fact that `workflow.id`
is optional when it should not be, causes `PermissionChecker.check` to
misreport a credential as inaccessible when it should be accessible.

More generally, start reporting ID-less workflows so we can root them
out and prevent this at type level.

## Related tickets and issues

https://n8nio.slack.com/archives/C035KBDA917/p1702539465555529
2023-12-14 18:13:12 +01:00
Iván Ovejero 53c0b49d15
fix(core): Initialize queue once in queue mode (#8025)
We're initializing the queue twice because of a [bad
merge](2c63474538).
No associated known bugs but no need to init the queue twice. We should
follow up by investigating if any pending bugs can be associated to
this.
2023-12-14 16:16:12 +01:00
Csaba Tuncsik 329e5bf9ee
fix(editor): Add back credential use permission (#8023)
## Summary
A shared credential is not selectable in NDV

Aim

If a credential is shared with a user they should be able to select it
in node details view
2023-12-14 13:36:36 +01:00
Csaba Tuncsik fcb8b91f37
fix(editor): Disable auto scroll and list size check when clicking on executions (#7983)
## Summary
Auto scrolling to the active execution is unnecessary as well as
checking if more items can be loaded.

#### How to test the change:
1. Open a workflow with a long list of executions (preferably with more
executions that fits in the list when first rendered and need to use
infinite scroll to load more items)
2. Go to executions tabs
3. Scroll to the bottom
4. Click on an item that is visible only if the list is scrolled down.

The list should not be scrolled to the active item automatically
2023-12-14 12:37:03 +01:00
Alex Grozav 3436f15e82
fix(editor): Fix dialogVisibleChanged hooks event when meta.value is undefined (no-changelog) (#7986)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

In specific scenarios `meta.value` can come as `undefined`, causing the
hook to fail.

#### How to test the change:
1. Close Expression editor modal dialog with empty value


## 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://linear.app/n8n/issue/N8N-7084/typeerror-evalueslice-is-not-a-function-in-evalueslice1-evalueslice-is
https://n8nio.sentry.io/issues/4715787194/


## 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.
  >
> *(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-14 13:13:02 +02:00
oleg b780436a6b
perf(editor): Improve canvas rendering performance (#8022)
## Summary
- Refactor usage of `setSuspendDrawing`, removing it from loops and only
calling it after batch operations are done
- Batch adding of nodes to improve copy/paste and workflow load
performance
- Cache i18n calls
- Debounce connections dragging handler if there are more than 20 nodes


## Related tickets and issues
> Include links to **Linear ticket** or Github issue or Community forum
post. Important in order to close *automatically* and provide context to
reviewers.
- https://community.n8n.io/t/slow-ui-in-big-scenarios/33830/8

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-14 12:01:00 +01:00
Csaba Tuncsik e3c363d72c
fix(editor): Turn off executions list auto-refresh after leaving the page (#8005)
## Summary
Fixes the bug when users leave the executions page but there is still an
ongoing request for executions.

---------

Co-authored-by: Alex Grozav <alex@grozav.com>
2023-12-14 11:50:00 +01:00
Csaba Tuncsik b29b4d442b
fix(editor): Show credential share info only to appropriate users (#8020)
## Summary
The credential owner should not see the sharing info box


![image](https://github.com/n8n-io/n8n/assets/5410822/d85b47f8-f4cf-4009-beaf-03bc62008feb)
2023-12-14 11:48:51 +01:00
कारतोफ्फेलस्क्रिप्ट™ ce1ae6a7c0 Merge tag 'n8n@1.21.0' 2023-12-13 16:48:58 +01:00
github-actions[bot] 1516c84dad
🚀 Release 1.21.0 (#8019)
#
[1.21.0](https://github.com/n8n-io/n8n/compare/n8n@1.20.0...n8n@1.21.0)
(2023-12-13)


### Bug Fixes

* **core:** Ensure inviter and invitee are set correctly in invite link
([#7943](https://github.com/n8n-io/n8n/issues/7943))
([386bd61](386bd61967))
* **core:** Fix user comparison in same-user subworkflow caller policy
([#7913](https://github.com/n8n-io/n8n/issues/7913))
([92bab72](92bab72cff))
* **core:** Perform multi-main leader check against key ID
([#7964](https://github.com/n8n-io/n8n/issues/7964))
([1a87f70](1a87f70e84))
* **core:** Ensure external hooks post workflow execute run in queue
mode ([#7947](https://github.com/n8n-io/n8n/issues/7947))
([3ba7deb](3ba7deb337))
* **core:** Fix issue preventing secrets from loading if the path
contains - or / ([#7988](https://github.com/n8n-io/n8n/issues/7988))
([0ac9594](0ac959463f))
* **core:** Restrict updating/deleting of shared but not owned
credentials ([#7950](https://github.com/n8n-io/n8n/issues/7950))
([42e828d](42e828d5c6))
* **core:** Prevent workflow history saving error from happening
([#7812](https://github.com/n8n-io/n8n/issues/7812))
([e5581ce](e5581ce802))
* **editor:** Add missing string for worker in log streaming
([#7971](https://github.com/n8n-io/n8n/issues/7971))
([148bc1d](148bc1d303))
* **editor:** Allow SSH protocol in git repository URL for environments
([#7944](https://github.com/n8n-io/n8n/issues/7944))
([bc1c72f](bc1c72f992))
* **editor:** Fix bug with node names with certain characters
([#8013](https://github.com/n8n-io/n8n/issues/8013))
([26f0d57](26f0d57f5f))
* **editor:** Fix Webhook URL expansion icon
([#8011](https://github.com/n8n-io/n8n/issues/8011))
([b00b905](b00b9057a4))
* **editor:** Prevent opening NDV search if `/` is typed in a
contenteditable element
([#7968](https://github.com/n8n-io/n8n/issues/7968))
([e8a493f](e8a493f718))
* **editor:** Return early in ws message handler if no 'command' keyword
is found ([#7946](https://github.com/n8n-io/n8n/issues/7946))
([5b2defc](5b2defc867))
* **FileMaker Node:** Prevent erroring on zero fields loaded
([#7955](https://github.com/n8n-io/n8n/issues/7955))
([10ad386](10ad386604))
* **Google Sheets Node:** Prevent erroring on zero sheet search results
([#7957](https://github.com/n8n-io/n8n/issues/7957))
([9b877a9](9b877a9427))
* **Google Sheets Node:** Prevent erroring when fetching mapping columns
([#7972](https://github.com/n8n-io/n8n/issues/7972))
([29a1066](29a10668d1))
* **Postgres Node:** Do not include id column in upsert fields selection
if it's not unique ([#7975](https://github.com/n8n-io/n8n/issues/7975))
([435392c](435392cbfe))
* **Postgres Trigger Node:** Increase manual trigger timeout from 30 to
60 seconds ([#8015](https://github.com/n8n-io/n8n/issues/8015))
([09a5729](09a5729305))
* **Webhook Node:** Binary data handling
([#7804](https://github.com/n8n-io/n8n/issues/7804))
([565b409](565b409a82))
* **Webhook Node:** Do not create binary data when there is no data in
the request ([#8000](https://github.com/n8n-io/n8n/issues/8000))
([70f0755](70f0755278))


### Features

* **core:** Add config option for external secret update interval
([#7995](https://github.com/n8n-io/n8n/issues/7995))
([b6c1c04](b6c1c04b54))
* AI nodes usability fixes + Summarization Chain V2
([#7949](https://github.com/n8n-io/n8n/issues/7949))
([dcf1286](dcf12867b3))
* **editor:** Data transformation nodes and actions in Nodes Panel
([#7760](https://github.com/n8n-io/n8n/issues/7760))
([675ec21](675ec21d33))
* **editor:** Add AppCues tracking for onboarding event
([#7945](https://github.com/n8n-io/n8n/issues/7945))
([04cabaf](04cabafef7))
* **editor:** Add option to disable NDV in workflow previews
([#7990](https://github.com/n8n-io/n8n/issues/7990))
([393afef](393afef174))
* **editor:** Filter component + implement in If node
([#7490](https://github.com/n8n-io/n8n/issues/7490))
([8a53434](8a5343401d))
* **editor:** Show template credential setup based on feature flag
([#7989](https://github.com/n8n-io/n8n/issues/7989))
([08ee307](08ee307209))
* **editor:** Introduce advanced permissions
([#7844](https://github.com/n8n-io/n8n/issues/7844))
([dbd62a4](dbd62a4992))
* **Google Ads Node:** Update to support v15
([#7962](https://github.com/n8n-io/n8n/issues/7962))
([7f01269](7f0126915a))
* **Local File Trigger Node:** Add polling option typically good to
watch network files/folders
([#7942](https://github.com/n8n-io/n8n/issues/7942))
([2fbdfec](2fbdfec0c0))
* **n8n Form Trigger Node:** Improvements
([#7571](https://github.com/n8n-io/n8n/issues/7571))
([953a58f](953a58f18b))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-12-13 16:34:00 +01:00
Jon 1943857231
fix(ActiveCampaign Node): Fix pagination issue when loading tags (#8017)
## Summary
Changes the getTags method to use the paginated API call. 


## Related tickets and issues

https://community.n8n.io/t/activecampaign-node-is-not-loading-all-tags/34169
2023-12-13 15:24:43 +00:00
कारतोफ्फेलस्क्रिप्ट™ d7ce4624c8 Merge tag 'n8n@1.20.0' 2023-12-13 16:11:30 +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
Jan Oberhauser 26f0d57f5f
fix(editor): Fix bug with node names with certain characters (#8013)
## Summary
Fixes the issue that dots and other special characters can not be used
in node-names


## Related tickets and issues

https://linear.app/n8n/issue/ADO-1244/nodes-wont-output-data-if-the-name-contains-some-characters

https://community.n8n.io/t/bug-report-name-of-node-affects-output-data/31674
https://community.n8n.io/t/stripe-output-data/32418/1
https://community.n8n.io/t/monday-com-returning-items-but-no-data/31834
https://community.n8n.io/t/no-data-while-there-is-actually-data/32563
https://community.n8n.io/t/bug-report-periods-in-node-names/34119
https://github.com/n8n-io/n8n/issues/7896


## 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.

---------

Co-authored-by: Alex Grozav <alex@grozav.com>
2023-12-13 14:57:01 +00: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
Jon 09a5729305
fix(Postgres Trigger Node): Increase manual trigger timeout from 30 to 60 seconds (#8015) 2023-12-13 13:04:16 +00:00
Omar Ajoue e5581ce802
fix(core): Prevent workflow history saving error from happening (#7812)
When performing actions such as renaming a workflow or updating its
settings, n8n errors with "Failed to save workflow version" in the
console although the saving process was successful. We are now correctly
checking whether `nodes` and `connections` exist and only then save a
snapshot.

Github issue / Community forum post (link here to close automatically):
2023-12-13 11:41:06 +00:00
Jan Oberhauser b00b9057a4
fix(editor): Fix Webhook URL expansion icon (#8011)
Changes the rotation of the icon. 

New collapsed:
![Screenshot from 2023-12-13
12-06-12](https://github.com/n8n-io/n8n/assets/6249596/2991a660-d6b4-4272-88cf-6a2356d02a7e)

New expanded:
![Screenshot from 2023-12-13
12-06-22](https://github.com/n8n-io/n8n/assets/6249596/0766db9e-b868-49a8-9009-dfff4ab0b13b)
2023-12-13 12:40:44 +01:00
Jon 9229055f7b
docs: Add aliases to compare datasets node (#8010)
## Summary
Make the Compare Datasets node findable when typing "sync" or "syncing"
in the Nodes panel


https://linear.app/n8n/issue/NODE-991/make-the-compare-datasets-node-finable-when-typing-sync-or-syncing-in
2023-12-13 11:32:00 +00:00
Iván Ovejero a70a5076ee
refactor(core): Add telemetry for RBAC roles (#7969)
Add telemetry for RBAC roles, see
[requirements](https://linear.app/n8n/issue/PAY-1067/add-telemetry-events-for-adding-and-assigning-admin-users#comment-184619fe).
2023-12-13 12:22:11 +01:00
Giulio Andreini 8f364087c9
docs(editor): Change to Summarize icon and Advanced section description (no-changelog) (#8008)
## Summary
- Change the description of the Advanced" section
- Replace the icon of Summarize



## Related tickets and issues
https://linear.app/n8n/issue/NODE-984/data-transformations-menu-minor-fixes



## 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.
2023-12-13 12:18:29 +01:00
Iván Ovejero 7b5d0a9546
refactor(core): Introduce import service (no-changelog) (#8001)
Consolidate import logic into import service.

Also fixes:
- https://linear.app/n8n/issue/PAY-1086
- https://github.com/n8n-io/n8n/issues/7881
-
https://community.n8n.io/t/cli-workflow-imports-failing-after-upgrade-to-v1-18-0/33780
- https://linear.app/n8n/issue/PAY-221
- https://github.com/n8n-io/n8n/issues/5477
- https://community.n8n.io/t/export-workflows-with-tags-got-created/6161
2023-12-13 10:00:21 +01:00
Michael Kret 70f0755278
fix(Webhook Node): Do not create binary data when there is no data in the request (#8000)
https://linear.app/n8n/issue/NODE-980/do-not-create-binary-data-for-webhooks-when-there-is-no-data-in-the

related:
https://github.com/n8n-io/n8n/pull/7804/files#r1422641833

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-12-13 05:13:48 +02:00
Benjamin Loison 61129863f1
docs: Replace http://faircode.io to https://faircode.io in .md files (#7908)
## Summary

Commit generated with:

```bash
grep -rl 'http://faircode.io' --include=*.md . | xargs sed -i 's/http:\/\/faircode.io/https:\/\/faircode.io/g'
```

## 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.
2023-12-12 15:23:22 +00:00
Jon 0ac959463f
fix: Fix issue preventing secrets from loading if the path contains - or / (#7988)
## Summary
Fixes an issue preventing n8n from pulling secrets from Hashicorp Vault
KV stores if the secret path contained a `-` or a `/`, An example
provided was `integrations/n8n-workflows` which I have tested in my
local instance of Vault.

This still needs testing with Infisical to make sure nothing breaks
there.
2023-12-12 15:21:18 +00:00
Jon b6c1c04b54
feat: Add config option for external secret update interval (#7995)
## Summary
Adds `N8N_EXTERNAL_SECRETS_UPDATE_INTERVAL` to allow enterprise users to
tweak the update internal for importing new secrets.

If using a config file the value is:

```
"externalSecrets": {
  "updateInterval": 300
}
```

#### How to test the change:
1. Run as normal and check that the secret is updated every 5 minutes
2. Set `N8N_EXTERNAL_SECRETS_UPDATE_INTERVAL` to 10
3. Check the secret is reloaded after 10 seconds


## 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.
2023-12-12 14:22:14 +00:00
Iván Ovejero d0e44d450f
feat(core): Add multi-main setup debug endpoint (no-changelog) (#7991)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Adi's idea here to help diagnose:
https://n8nio.slack.com/archives/C069KJBJ8HE/p1702300349277609?thread_ts=1702299930.728029&cid=C069KJBJ8HE
...

#### 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-12 15:18:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1d870412ca
refactor(core): Don't use DB transactions on ExecutionRepository.createNewExecution (#8002)
Saving execution data is one of the slowest DB operations in the
application, and is likely behind some of the sqlite transaction
concurrency issues we've been seeing.
This not only remove the 2 separate transactions for saving
`ExecutionEntity` and `ExecutionData`, but also remove fields from
`ExecutionData.workflowData` that don't need to be saved (like `tags`,
`shared`, `statistics`, `triggerCount`, etc).
2023-12-12 14:36:56 +01:00
Tomi Turtiainen 08ee307209
feat(editor): Show template credential setup based on feature flag (#7989)
Replace the local storage based feature flag with posthog feature flag.

Also:
- Fix bunch of eslint warnings in posthog store
2023-12-11 20:21:10 +02:00
Iván Ovejero c378f60a25
refactor(core): Introduce password utility (no-changelog) (#7979)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Continue breaking down `UserManagementHelper.ts`
...

#### 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-11 18:23:42 +01:00
Milorad FIlipović 240d259260
refactor(editor): Rename CollectionCard and CollectionCardCarousel (#7994)
## Summary
As part of the plan to reuse current `CollectionCarousel` component,
this PR makes it, and the cards it uses, more generic by renaming them
and adds a new property to card component which can be used to hide the
item count.

#### How to test the change:
Until the component that will use this is implmeneted, this can be
tested manually:
1. Run n8n
2. Set `showItemCount` property for workflow collection cards to `false`
3. Check if workflow count is showing (it shouldn't) and if everything
rendering correctly

## Issues fixed
Fixes ADO-1567

## 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-11 17:37:26 +01:00
Michael Kret 435392cbfe
fix(Postgres Node): Do not include id column in upsert fields selection if it's not unique (#7975)
## Summary
Do not include id column in upsert fields selection if it's not unique
Forum:
https://community.n8n.io/t/postgres-node-insert-or-update-unique-column-name/32520
2023-12-11 17:34:24 +02:00
Milorad FIlipović 393afef174
feat(editor): Add option to disable NDV in workflow previews (#7990)
## Summary
This PR adds a new property to the `WorkflowPreview` component that
controls if the Node Details View can be opened in each workflow preview
or not.
This property is passed on to underlying `iframe` via the `postMessage`
and is used to disable pointer events for nodes and stickies in that
preview.

#### How to test the change:
Until the component that uses this flag is implemented this can be
tested manually. In this example, we'll use `WorkflowPreview` as part of
the `TemplatesWorkflowView` component
1. Pass `:canOpenNDV="false"` to this component
2. Run n8n
3. Open any template preview and check if nodes and stickies are
interactive
4. Open any workflow execution preview -> Nodes and Stickies should be
interactive

## Issues fixed
Fixes ADO-1548

## 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-11 15:30:01 +01:00
Iván Ovejero bbeeab5d27
refactor(core): Add project reference for @n8n/permissions (no-changelog) (#7987)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
The missing [project
ref](https://www.typescriptlang.org/docs/handbook/project-references.html)
seems to be preventing the package from being picked up.
<img width="1022" alt="Capture 2023-12-11 at 13 49 55@2x"
src="https://github.com/n8n-io/n8n/assets/44588767/28b35430-d42f-451c-ae33-d152e1ff040a">

...

#### 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-11 14:37:21 +01:00
Iván Ovejero f49aebb740
refactor(core): Move instance owner retrieval to ownership service (no-changelog) (#7980)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Continue breaking down `UserManagementHelper.ts`
...

#### 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-11 13:35:09 +01:00
Marcus 2fbdfec0c0
feat(Local File Trigger Node): Add polling option typically good to watch network files/folders (#7942)
Adding more chokidar options to watch files/folders especially
usePolling typically good to watch network volumes. Inspired by
[https://github.com/n8n-io/n8n/pull/4914/files](https://github.com/n8n-io/n8n/pull/4914/files)
2023-12-11 13:03:28 +01:00
Iván Ovejero 69c2254742
refactor(core): Introduce naming service (no-changelog) (#7985)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Continue breaking down `GenericHelpers.ts`
...

#### 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-11 12:35:14 +01:00
Jon 97e39c39d9
docs: Replace references to set node (no-changelog) (#7973)
## Summary
This replaces the set node references with edit fields.

Ref: https://n8nio.slack.com/archives/C036PA5D42D/p1702040900165709
2023-12-11 10:10:03 +00:00
Iván Ovejero 012310b9c1
refactor(core): Upgrade backend Sentry dependencies to 7.86 (no-changelog) (#7982)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

...

#### 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-11 11:08:54 +01:00
Iván Ovejero 193fe5ac1f
refactor(core): Log any hard-deletion errors during pruning (no-changelog) (#7965)
## Summary
Pruning is a minor background task so hard-deletion errors during
pruning should be simply logged for later investigation rather than
rethrown.

...

#### 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-11 11:08:14 +01:00
Elias Meire 939e471ed1
fix(editor): Fix collection select label (no-changelog) (#7978)
## Summary

before & after


![image](https://github.com/n8n-io/n8n/assets/8850410/9eef4b99-4cab-41de-ad82-7dadb653f307)

<img width="575" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/e7d5ecd5-427e-4664-897f-5a42e68e3661">

#### How to test the change:
1. Add Pipedrive > Create Deal
2. Click on "Add Field" under "Additional Fields"
3. Options should be properly displayed (Title case)


## Issues fixed
https://linear.app/n8n/issue/NODE-977

## 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-11 09:50:21 +01:00
Iván Ovejero 76ab411bc0
refactor(core): Instrument multi-main to report failures to renew lease (#7970)
## Summary
Instrument multi-main to report failures to renew the lease

https://linear.app/n8n/issue/PAY-1105
...

#### 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-11 09:45:08 +01:00
Iván Ovejero 148bc1d303
fix(editor): Add missing string for worker in log streaming (#7971)
## Summary
Add missing string for worker in log streaming

Before: https://share.cleanshot.com/bN9ydg7N
After: https://share.cleanshot.com/sFLnFMJK

...

#### 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-11 09:44:58 +01:00
Iván Ovejero 29a10668d1
fix(Google Sheets Node): Prevent erroring when fetching mapping columns (#7972)
## Summary
https://n8nio.sentry.io/issues/4709551520

Follow-up to: https://github.com/n8n-io/n8n/pull/7957

...

#### 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 17:25:42 +01:00
oleg 35fbc37c8e
refactor(editor): Refactor nodeHelpers mixin to composable (#7810)
- Convert `nodeHelpers` mixin into composable and fix types
- Replace usage of the mixin with the new composable
- Add missing store imports in components that were dependent on opaque
imports from nodeHelpers mixin
- Refactor the `CollectionParameter` component to the modern script
setup syntax
Github issue / Community forum post (link here to close automatically):

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-08 16:59:03 +01:00
Csaba Tuncsik e8a493f718
fix(editor): Prevent opening NDV search if / is typed in a contenteditable element (#7968)
## Summary
Prevent opening NDV search if `/` is typed in a contenteditable element
...

#### How to test the change:
1. Create a workflow with a Code node that has some input and output
2. Run the workflow and then open the Code node
3. Type `/` anywhere in the Code node

#### Expected behavior:
NDV search should not be opened and focused
2023-12-08 16:16:05 +01:00
Jon 7f0126915a
feat(Google Ads Node): Update to support v15 (#7962)
Updates Google Ads node to use the v15 API for
https://community.n8n.io/t/google-ads-400-bad-request-error/21709/26
2023-12-08 14:41:49 +00:00
Iván Ovejero 1a87f70e84
fix(core): Perform multi-main leader check against key ID (#7964)
## Summary
Current leader check is based on key presence and multi-main instance
type, which can give rise to [this edge
case](https://n8nio.slack.com/archives/C04B1GZ4T0U/p1702025497086379?thread_ts=1701962808.817579&cid=C04B1GZ4T0U)
where leader fails to realize they lost leadership to a former follower.
PR performs the check against the specific key ID instead to prevent
this.

...

#### 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 13:55:55 +01:00
Iván Ovejero 94582552f6
ci: Fix lint in nodes-base to fix build (no-changelog) (#7966)
## Summary
We recently merged the `no-plain-errors` rule and one instance seems to
have slipped through.

Ref: https://github.com/n8n-io/n8n/pull/7961

...

#### 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 13:43:10 +01:00
Csaba Tuncsik 5b2defc867
fix(editor): Return early in ws message handler if no 'command' keyword is found (#7946)
## Summary
Avoid processing websocket messages not n8n sent (filter on 'command'
keyword)
2023-12-08 13:42:50 +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
Csaba Tuncsik dbd62a4992
feat: Introduce advanced permissions (#7844)
This PR introduces the possibility of inviting new users with an `admin`
role and changing the role of already invited users.
Also using scoped permission checks where applicable instead of using
user role checks.

---------

Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-12-08 12:52:25 +01:00
Iván Ovejero e00577b1d3
refactor(core): Remove unneeded high-frequency log (no-changelog) (#7963)
## Summary
Remove unneeded high-frequency log


![image](https://github.com/n8n-io/n8n/assets/44588767/82be82ae-aedd-4b2b-851e-b6a9a51d6859)

...

#### 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 8cb9c6b3ea
ci: Introduce no-plain-errors lint rule for BE packages (no-changelog) (#7961)
## Summary
Require `ApplicationError` or its child classes instead of plain `Error`
in BE packages. This ensures the error will be normalized when reported
to Sentry, if applicable.

Follow-up to:
https://github.com/n8n-io/n8n/pulls?q=is%3Apr+is%3Aclosed+applicationerror

...

#### 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:51:49 +01:00
Elias Meire 675ec21d33
feat: Data transformation nodes and actions in Nodes Panel (#7760)
- Split Items List node into separate nodes per action
- Review node descriptions
- New icons
- New sections in subcategories

---------

Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Deborah <deborah@starfallprojects.co.uk>
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-12-08 11:40:05 +01:00
Iván Ovejero 90824b50ed
feat(core): Add package name tag to Sentry errors (no-changelog) (#7958)
## Summary
Add `packageName` tag to errors reported to Sentry, for filtering

...

#### 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 11:30:06 +01:00
Iván Ovejero 3206b44974
test(core): Improve tests for subworkflow caller policy checks (no-changelog) (#7954)
## Summary
Deduplicate, separate, organize and speed up tests for subworkflow
caller policy checks.

Follow-up to: https://github.com/n8n-io/n8n/pull/7913

```
 PASS  test/unit/PermissionChecker.test.ts
  check()
    ✓ should allow if workflow has no creds (3 ms)
    ✓ should allow if requesting user is instance owner (83 ms)
    ✓ should allow if workflow creds are valid subset (151 ms)
    ✓ should deny if workflow creds are not valid subset (85 ms)
  checkSubworkflowExecutePolicy()
    no caller policy
      ✓ should fall back to N8N_WORKFLOW_CALLER_POLICY_DEFAULT_OPTION (1 ms)
    overridden caller policy
      ✓ if no sharing, policy becomes workflows-from-same-owner (1 ms)
    workflows-from-list caller policy
      ✓ should allow if caller list contains parent workflow ID
      ✓ should deny if caller list does not contain parent workflow ID (1 ms)
    any caller policy
      ✓ should not throw
    workflows-from-same-owner caller policy
      ✓ should deny if the two workflows are owned by different users (1 ms)
      ✓ should allow if both workflows are owned by the same user
```
...

#### 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 11:21:43 +01:00
Tomi Turtiainen a3ca7c7acd
fix: Disable continue button unless at least 1 cred has been filled (no-changelog) (#7959)
Disable the continue button in template credential setup unless at least
one credential has been (pre-)filled
2023-12-07 19:35:34 +02:00
Iván Ovejero c48850d74f
fix(core): Fix expression evaluator filename typo (no-changelog) (#7960)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

...

#### 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 17:50:49 +01:00
Iván Ovejero 18bb87ac0c
test(core): Isolate restore binary data ID in execution lifecycle hooks (no-changelog) (#7953)
## Summary
Move guard into restore function, move tests into own suite, add tests
for guard.

...

#### 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 17:30:47 +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
Tomi Turtiainen dc1f14b0be
fix(editor): Send correct telemetry events in credential setup (no-changelog) (#7926)
Send the `User opened cred setup` and `User closed cred setup` events
specified
[here](https://www.notion.so/n8n/Handoff-a1150c38f6e042db91fdf61c56900967?pvs=4)
2023-12-07 17:25:33 +02:00
Mutasem Aldmour 04cabafef7
feat(editor): Add AppCues tracking for onboarding event (#7945)
## Summary
We want to trigger a flow, every time the template onboarding event is
triggered. AppCues no longer supports flows triggering through Segment,
except directly.

#### How to test the change:
1. Open on Cloud, where AppCues scripts are available
2. import workflow through /workflows/onboarding/1946
3. Ensure event is sent.. if flow is enabled, flow should show

<img width="1702" alt="Screenshot 2023-12-07 at 14 39 51"
src="https://github.com/n8n-io/n8n/assets/4711238/e58daae8-4364-41a4-bfda-25edeea6cc69">



## 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://linear.app/n8n/issue/ADO-1455/bug-appcues-trigger

## 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.
- [x] 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:22:41 +01:00
Iván Ovejero 10ad386604
fix(FileMaker Node): Prevent erroring on zero fields loaded (#7955)
## Summary
https://n8nio.sentry.io/issues/4703111361

...

#### 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:13:49 +01:00
Iván Ovejero 9b877a9427
fix(Google Sheets Node): Prevent erroring on zero sheet search results (#7957)
## Summary
https://n8nio.sentry.io/issues/4695063783

...

#### 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:12:07 +01:00
Tomi Turtiainen b63f9cc533
feat(editor): Add user opened cred modal telemetry event (no-changelog) (#7927)
## Summary

Add `User opened Credential modal` telemetry event to the template
credential setup page, as specified
[here](https://www.notion.so/n8n/Handoff-a1150c38f6e042db91fdf61c56900967?pvs=4)
2023-12-07 16:05:43 +02:00
Val 42e828d5c6
fix: Restrict updating/deleting of shared but not owned credentials (#7950)
## Summary

Fix shared members being able to edit and delete credentials they don't
own

#### 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
- [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.
- [x] 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 10:35:40 +00:00
Omar Ajoue 3ba7deb337
fix: Ensure external hooks post workflow execute run in queue mode (#7947)
## Summary
Since 1.8.x a refactor removed the call to `workflow.postExecute`'s
External hook from the execution path. This PR adds it back to the
correct place, where workers are supposed to call this, allowing us to
avoid having to re-read the execution data in the caller just for the
hooks.

It is important to have the hooks running in the worker whenever
possible to prevent having to read the full execution data in the
caller.

#### How to test the change:
1. Use the attached hooks file
[external-hooks.txt](https://github.com/n8n-io/n8n/files/13597270/external-hooks.txt)
setting it up via environment variable using `export
EXTERNAL_HOOK_FILES=/path/to/hooks/external-hooks.js`
2. Set up queue mode loading this file in both main and workers
3. See that the message logs will not be displayed without this fix


## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:



## 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 10:00:05 +00:00
Iván Ovejero 386bd61967
fix(core): Ensure inviter and invitee are set correctly in invite link (#7943)
## Summary
Ensure inviter and invitee are set correctly in invite link

...

#### 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

https://linear.app/n8n/issue/ADO-1494


## 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 10:53:31 +01:00
Iván Ovejero bc1c72f992
fix(editor): Allow SSH protocol in git repository URL for environments (#7944)
## Summary
Allow SSH protocol in git repository URL for environments

...

#### 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

https://linear.app/n8n/issue/PAY-1097


## 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.
- [x] 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 09:19:32 +01:00
Iván Ovejero 3a035cba8b
test(core): Expand user service tests (no-changelog) (#7941)
## Summary
Expand user service tests 

...

#### 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 09:19:16 +01:00
Michael Kret 565b409a82
fix(Webhook Node): Binary data handling (#7804)
Github issue / Community forum post (link here to close automatically):
2023-12-06 17:46:40 +02:00
Alex Grozav 92fa6233d3
fix: Run dev command only for core packages (no-changelog) (#7928)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

- Filters out `@n8n/chat` and `n8n-design-system` from `pnpm run dev`
- Fixes dev/build error appearing due to code string `import ... from
'@n8n/chat'`

#### How to test the change:
1. `pnpm run dev` should work as expected
2. The command should not run for the two packages above
3. The error regarding `@n8n/chat` should no longer appear


## 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://linear.app/n8n/issue/PAY-1089/run-dev-command-only-for-core-packages


## 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.
- [x] Tests included. N/A
> 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-06 17:28:33 +02:00
Alex Grozav 885dba6f12
refactor: Migrate externalHooks mixin to composables (no-changelog) (#7930)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

As part of NodeView refactor, this PR migrates all externalHooks calls
to `useExternalHooks` composable.

#### How to test the change:
1. Run using env `export N8N_DEPLOYMENT_TYPE=cloud` 
2. Hooks should still run as expected


## 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://linear.app/n8n/issue/N8N-6349/externalhooks


## 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.
- [x] 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-06 17:28:09 +02:00
Csaba Tuncsik c461025f70
test: Add user type of admin to E2E tests (#7935)
## Summary
Extend existing user types in the E2E database. Currently, we have only
owner and member but we need also admin

---------

Co-authored-by: Val <68596159+valya@users.noreply.github.com>
2023-12-06 14:31:06 +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
github-actions[bot] 823b589e09
🚀 Release 1.20.0 (#7940)
#
[1.20.0](https://github.com/n8n-io/n8n/compare/n8n@1.19.0...n8n@1.20.0)
(2023-12-06)


### Bug Fixes

* **AWS DynamoDB Node:** Improve error message parsing
([#7793](https://github.com/n8n-io/n8n/issues/7793))
([5ba5ed8](5ba5ed8e3c))
* **core:** Allow grace period for binary data deletion after manual
execution ([#7889](https://github.com/n8n-io/n8n/issues/7889))
([61d8aeb](61d8aebeaf))
* **core:** Consolidate ownership and sharing data on workflows and
credentials ([#7920](https://github.com/n8n-io/n8n/issues/7920))
([38b88b9](38b88b946b))
* **core:** Fix hard deletes stopping if database query throws
([#7848](https://github.com/n8n-io/n8n/issues/7848))
([46dd4d3](46dd4d3105))
* **core:** Make sure mfa secret and recovery codes are not returned on
login ([#7936](https://github.com/n8n-io/n8n/issues/7936))
([f5502cc](f5502cc628))
* **editor:** Fix deletion of last execution at execution preview
([#7883](https://github.com/n8n-io/n8n/issues/7883))
([ce2d388](ce2d388f05))
* **editor:** Replace isInstanceOwner checks with scopes where
applicable ([#7858](https://github.com/n8n-io/n8n/issues/7858))
([132d691](132d691cbf))
* **Google Sheets Node:** Fix issue with paired items not being set
correctly ([#7862](https://github.com/n8n-io/n8n/issues/7862))
([5207a2f](5207a2fe52))
* **Notion Node:** Fix broken Notion node parameters
([#7864](https://github.com/n8n-io/n8n/issues/7864))
([51d1f5b](51d1f5b820)),
closes [#7791](https://github.com/n8n-io/n8n/issues/7791)


### Features

* **BambooHR Node:** Add support for Only Current on company reports
([#7878](https://github.com/n8n-io/n8n/issues/7878))
([4175801](4175801c90))
* **core:** Allow admin creation
([#7837](https://github.com/n8n-io/n8n/issues/7837))
([476806e](476806ebb0))
* **editor:** Add sections to create node panel
([#7831](https://github.com/n8n-io/n8n/issues/7831))
([39fa8d2](39fa8d21bb))
* **editor:** Open template credential setup from collection
([#7882](https://github.com/n8n-io/n8n/issues/7882))
([627ddb9](627ddb91fb))
* **editor:** Select credentials in template setup if theres only one
([#7879](https://github.com/n8n-io/n8n/issues/7879))
([fe3417a](fe3417a615))


### Performance Improvements

* **editor:** Improve node rendering performance when opening large
workflows ([#7904](https://github.com/n8n-io/n8n/issues/7904))
([a8049a0](a8049a0def))
* **editor:** Improve performance when opening large workflows with node
issues ([#7901](https://github.com/n8n-io/n8n/issues/7901))
([4bd7ae2](4bd7ae29f7))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-12-06 12:26:24 +01:00
Ricardo Espinoza f5502cc628
fix(core): Make sure mfa secret and recovery codes are not returned on login (#7936)
## Summary

What: Fix issue of login endpoint returning secret and recovery codes
when MFA is enabled. Bug was introduced in this
[PR](https://github.com/n8n-io/n8n/pull/6994), specifically in this
[line](https://github.com/n8n-io/n8n/pull/6994/files#diff-95a87cb029a3d26e6722df2e68132453fc254fc1f4540cbdaa95cfdbda1893deL91).

Why: We should not be filtering the secret and recovery codes

Same PR caused the issues on ticket ->
https://linear.app/n8n/issue/ADO-1494/on-user-list-copy-password-reset-link-and-copy-invite-link-are-broken

## 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.
- [x] 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-06 10:00:13 +01:00
Andrey Starostin 46dd4d3105
fix(core): Fix hard deletes stopping if database query throws (#7848)
I have observed that the next hard deletion timeout is not scheduled if
the `hardDeleteOnPruningCycle` function throws when fetching the data
from the database. That is because the thrown error is not caught and
the `scheduleHardDeletion` method is not called.

This PR moves the call to `scheduleHardDeletion` into the
`scheduleHardDeletion` for better cohesion, and ensures that it is
called even if `hardDeleteOnPruningCycle` throws.
2023-12-05 16:30:32 +01:00
Val 4e55583715
feat: Add admin role to public API (no-changelog) (#7933)
## Summary
Add the admin global role to the public API. This does not include
porting over scopes.

#### 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-05 15:00:14 +00:00
Jon 4175801c90
feat(BambooHR Node): Add support for Only Current on company reports (#7878)
Github issue / Community forum post (link here to close automatically):
https://github.com/n8n-io/n8n/issues/7876

API Docs for reference:
https://documentation.bamboohr.com/reference/get-company-report-1
2023-12-05 10:34:28 +00:00
Val 9604b87da9
fix: Return scopes on invitation accept endpoint (no-changelog) (#7917)
## Summary
Return scopes on the invitation accept endpoint. The UI uses information
until the user refreshes the pages so it's causing inconsistency for the
new admin role.

#### 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
- [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.
  >
> *(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-05 11:18:41 +01:00
Iván Ovejero e77fd5d286
refactor: Switch plain errors in nodes-base to ApplicationError (no-changelog) (#7914)
Ensure all errors in `nodes-base` are `ApplicationError` or children of
it and contain no variables in the message, to continue normalizing all
the backend errors we report to Sentry. Also, skip reporting to Sentry
errors from user input and from external APIs. In future we should
refine `ApplicationError` to more specific errors.

Follow-up to: [#7877](https://github.com/n8n-io/n8n/pull/7877)

- [x] Test workflows:
https://github.com/n8n-io/n8n/actions/runs/7084627970
- [x] e2e: https://github.com/n8n-io/n8n/actions/runs/7084936861

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-12-05 11:17:08 +01:00
Iván Ovejero 38b88b946b
fix(core): Consolidate ownership and sharing data on workflows and credentials (#7920)
## Summary

Ensure `ownedBy` and `sharedWith` are present and uniform for
credentials and workflows.

Details in story: https://linear.app/n8n/issue/PAY-987
2023-12-05 10:11:18 +01:00
Alex Grozav 0a745d16e4
fix(editor): Add missing workflow id from route (no-changelog) (#7918)
## Summary
Fixes missing workflow id from route.

#### How to test the change:
1. Go to executions page for a workflow without executions
2. Wait for autoRefresh to start
3. Error appears in console due to missing `name` parameter


## 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://linear.app/n8n/issue/N8N-7075/error-missing-required-param-name


## 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).
2023-12-05 10:43:40 +02:00
Alex Grozav 6b678b5b9e
fix(editor): Use hasOwnProperty to check for canvas key on connector (no-changelog) (#7921)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

Fixes `key in object` check by replacing with `hasOwnProperty`.

## 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://linear.app/n8n/issue/N8N-7077/typeerror-cannot-use-in-operator-to-search-for-canvas-in-null

## 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).
2023-12-05 10:34:25 +02:00
Alex Grozav 7c57332d8f
fix(editor): Add missing activeNode check for redrawing (no-changelog) (#7919)
## Summary
Wasn't able to reproduce, but `activeNode` sporadically returns null in
some scenarios. Added appropriate check.

## 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://linear.app/n8n/issue/N8N-7076/typeerror-cannot-read-properties-of-null-reading-name


## 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).
2023-12-05 10:34:15 +02:00
oleg e4ae11c2ad
fix: Remove Tensorflow embeddings node (no-changelog) (#7922)
## Summary
This PR removes `embeddingsTensorFlow` node and reverts our fix to
accommodate the Docker build in #7893 .
The node itself has been extracted as a [community node available from
npm](https://www.npmjs.com/package/n8n-nodes-tensorflow)

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
2023-12-04 17:48:10 +01:00
Tomi Turtiainen 6448d4c8a5
fix(editor): Tune credential template layout (no-changelog) (#7903)
Add max width to the content and scale it based on that
2023-12-04 15:27:38 +02:00
Iván Ovejero 29e7a98f3e
test(core): Use license mocker in RBAC tests (no-changelog) (#7912)
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.

...

#### 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-04 13:56:48 +01:00
Milorad FIlipović 4bd7ae29f7
perf(editor): Improve performance when opening large workflows with node issues (#7901)
This PR should improve performance when opening large workflows that
contain node issues (Fixes ADO-1521)

**Background**
Main reason for this poor performance is that our `getCurrentWorkflow()`
store getter is unnecessarily heavy but on top of that we are calling it
more than we need. This addresses the second part of the issue by
changing the following:
- Pausing node issue processing while workflows are loading
- Only getting current workflow once (instead for every node) when
calling `refreshNodeIssues`

**Benchmark**
This was tested on a workflow attached to [this Linear
ticket](https://linear.app/n8n/issue/ADO-1501/deliveryhero-enterprise-instance-very-slow-loading-workflows)
and this fix brings down opening time from **~1m10s** to **~28s** on my
laptop.

**Tests**
- [Latest e2e tests
run](https://github.com/n8n-io/n8n/actions/runs/7060874994)

https://community.n8n.io/t/ui-very-slow-with-more-than-100-nodes/8236/14
2023-12-04 10:57:03 +01:00
Csaba Tuncsik 132d691cbf
fix(editor): Replace isInstanceOwner checks with scopes where applicable (#7858)
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-12-04 10:02:54 +01:00
Elias Meire 39fa8d21bb
feat(editor): Add sections to create node panel (#7831)
This PR sets the stage for the node creator to handle sections within
subcategories. No visible changes result from this PR; the next PR will
define sections and assign nodes accordingly.

Sections are configurable in
`packages/editor-ui/src/components/Node/NodeCreator/viewsData.ts`:
```
{
	type: 'subcategory',
	key: FILES_SUBCATEGORY,
	category: CORE_NODES_CATEGORY,
	properties: {
		title: FILES_SUBCATEGORY,
		icon: 'file-alt',
		sections: [
			{
				key: 'popular',
				title: i18n.baseText('nodeCreator.sectionNames.popular'),
				items: ['n8n-nodes-base.readBinaryFiles', 'n8n-nodes-base.compression'],
			},
		],
	},
},
```

For example:
<img width="302" alt="image"
src="https://github.com/n8n-io/n8n/assets/8850410/74470c07-f4ea-4306-bd4a-8d33bd769b86">

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-12-04 10:02:07 +01:00
Deborah 485a0c73cb
docs: Fix typo in tooltip relating to JMESPath (#7910) 2023-12-04 08:19:36 +00:00
Tomi Turtiainen a78729b12f
feat(editor): Allow partial template credential setup (no-changelog) (#7899)
Enable continue button even if all credentials havent been setup
2023-12-04 09:30:34 +02:00
Milorad FIlipović a8049a0def
perf(editor): Improve node rendering performance when opening large workflows (#7904)
## Summary
In an effort to do as little processing as possible in each `Node`
component, this PR passes current workflow object to it as a property
instead of calling the slow `getCurrentWorkflow` store getter a few
times in each node. This should substantially improve loading times for
large workflows.

As a benchmark, I was using a workflow from [this Linear
ticket](https://linear.app/n8n/issue/ADO-1501/deliveryhero-enterprise-instance-very-slow-loading-workflows)
and this fix brought down opening time by **20 seconds**. Together with
fixes from #7901, this workflow was opening in less than **10 seconds**
on my laptop.

[Latest e2e run](https://github.com/n8n-io/n8n/actions/runs/7062162739)
#### How to test the change:
1. Open a large workflow
2. Observe loading time

## Issues fixed
ADO-1523
https://community.n8n.io/t/ui-very-slow-with-more-than-100-nodes/8236/14

## 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.
  >
> *(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-01 17:50:11 +01:00
Tomi Turtiainen 38e4b56280
fix(editor): Tune styles of template credential setup (no-changelog) (#7898) 2023-12-01 16:00:48 +02:00
Tomi Turtiainen f8e93b3852
fix: Fix credential setup for templates with unnamed credentials (no-changelog) (#7891)
The template credentials were matched before solely based on the
credential name on the template. This fixes the matching to use both
credential type name and credential name.
2023-12-01 14:56:51 +02:00
Iván Ovejero 50a7401de9
docs: Update breaking changes with binary data TTL note (#7894)
Context:
https://n8nio.slack.com/archives/C035KBDA917/p1701418556761549?thread_ts=1701411854.517989&cid=C035KBDA917
2023-12-01 12:52:12 +01:00
Iván Ovejero 07f6662aba
refactor(core): Add log about removed TTL keys for binary data (#7892)
Context:
https://n8nio.slack.com/archives/C035KBDA917/p1701418556761549?thread_ts=1701411854.517989&cid=C035KBDA917
2023-12-01 12:51:45 +01:00
Iván Ovejero 61d8aebeaf
fix(core): Allow grace period for binary data deletion after manual execution (#7889)
https://linear.app/n8n/issue/PAY-1079
2023-12-01 10:13:53 +01:00
Michael Kret ade3acf800
fix(Google Sheets Node): Missing version fo RMC (no-changelog) (#7886)
Github issue / Community forum post (link here to close automatically):
2023-11-30 17:24:43 +02:00
Tomi Turtiainen fe3417a615
feat(editor): Select credentials in template setup if theres only one (#7879)
Automatically select credentials in the template credential setup if
there's only one available.

NOTE! This feature is still behind a feature flag. To test, set:

```js
localStorage.setItem('template-credentials-setup', 'true')
```


https://github.com/n8n-io/n8n/assets/10324676/edc1f586-214f-4c37-b7ec-dd1786433dc1
2023-11-30 15:46:14 +02:00
Iván Ovejero e0b7f89035
refactor(core): Separate API response from error in execution error causes (no-changelog) (#7880)
Store the third-party API response error separately from the error
stored as `cause`

Follow-up to:
https://github.com/n8n-io/n8n/pull/7820#discussion_r1406009154
2023-11-30 14:44:10 +01:00
Iván Ovejero b024cc52e7
ci: Fix lint warnings in @n8n/chat and @n8n/nodes-langchain (no-changelog) (#7884)
Solve lint warnings shown on all PRs for `@n8n/chat` and
`@n8n/nodes-langchain`

Example: https://github.com/n8n-io/n8n/pull/7883/files
2023-11-30 13:22:27 +01:00
Tomi Turtiainen 627ddb91fb
feat(editor): Open template credential setup from collection (#7882)
Open the template credential setup when using a template from the
collection view.

NOTE! This feature is still behind a feature flag. To test, set:

```js
localStorage.setItem('template-credentials-setup', 'true')
```


https://github.com/n8n-io/n8n/assets/10324676/46ccec7c-5a44-429e-99ad-1c10640e99e5
2023-11-30 14:09:12 +02: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 ce2d388f05
fix(editor): Fix deletion of last execution at execution preview (#7883)
https://linear.app/n8n/issue/PAY-1062
2023-11-30 12:12:26 +01:00
oleg e834f14991
refactor: Remove Epub document loader override (no-changelog) (#7874)
- Remove Epub document loader override, use standard Langchain loader
- Use temporary buffer file for document loader processing and pass just
the path
- Remove replace `@gxl/epub-parser` library with `epub2`

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

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-30 11:59:37 +01:00
Val 5f4a9524ec
refactor(core): Add central license mock for integration tests (no-changelog) (#7871)
Github issue / Community forum post (link here to close automatically):
2023-11-30 09:23:09 +01: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
Val cd474f1562
feat: Allow owner to share workflows/credentials they don't own (no-changelog) (#7869)
Github issue / Community forum post (link here to close automatically):
2023-11-29 16:32:27 +00:00
Csaba Tuncsik 14f53def07
fix(editor): Restrict workflow and credential sharing to their owners (no-changelog) (#7870)
Removing scope permission checks on workflow and credential sharing and
relying only on resource ownership.
Every user can share only the workflows and credentials they created.
2023-11-29 16:36:49 +01:00
Omar Ajoue 74b4513298
feat(core): Add Advanced Permissions to FE settings (no-changelog) (#7867)
Github issue / Community forum post (link here to close automatically):
2023-11-29 15:56:35 +01:00
Val 1cb92ffe16
feat: Replace owner checks with scope checks (no-changelog) (#7846)
Github issue / Community forum post (link here to close automatically):
2023-11-29 14:48:36 +00:00
कारतोफ्फेलस्क्रिप्ट™ d5762a7539
ci: Fix docker builds for releases (#7865) 2023-11-29 15:25:50 +01:00
Jon 5207a2fe52
fix(Google Sheets Node): Fix issue with paired items not being set correctly (#7862)
https://community.n8n.io/t/error-unknown-top-level-item-key-paireditems-item-0/33536/

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-11-29 14:12:50 +00:00
oleg 51d1f5b820
fix(Notion Node): Fix broken Notion node parameters (#7864)
We've introduced a new version(`2.1` of Notion node in #7791 but not all
`diplayOptions` conditions were updated. This would effectively prevent
most of the required Notion fields from loading.
This PR adds the new version to all `@version` display conditions which
contain version `2`.


https://github.com/n8n-io/n8n/assets/12657221/4254c646-43b6-46b3-adcc-1b17746901da


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

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
2023-11-29 15:11:54 +01:00
कारतोफ्फेलस्क्रिप्ट™ 6d9342e676 Merge tag 'n8n@1.19.0' 2023-11-29 14:12:24 +01:00
Iván Ovejero 476806ebb0
feat(core): Allow admin creation (#7837)
https://linear.app/n8n/issue/PAY-1038
2023-11-29 13:55:41 +01:00
Marcus 5ba5ed8e3c
fix(AWS DynamoDB Node): Improve error message parsing (#7793)
Github issue / Community forum post (link here to close automatically):
2023-11-29 13:44:13 +01:00
github-actions[bot] 303cf31331
🚀 Release 1.19.0 (#7863)
#
[1.19.0](https://github.com/n8n-io/n8n/compare/n8n@1.18.0...n8n@1.19.0)
(2023-11-29)


### Bug Fixes

* **core:** Ensure member and admin cannot be promoted to owner
([#7830](https://github.com/n8n-io/n8n/issues/7830))
([9b87a59](9b87a596ca)),
closes
[/linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint#comment-62355f6](https://github.com//linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint/issues/comment-62355f6)
* **core:** Prevent error messages due to statistics about data loading
([#7824](https://github.com/n8n-io/n8n/issues/7824))
([847f6ac](847f6ac771))
* **core:** Tighten checks for multi-main setup usage
([#7788](https://github.com/n8n-io/n8n/issues/7788))
([fdb2c18](fdb2c18ecc))
* **core:** Use AbortController to notify nodes to abort execution
([#6141](https://github.com/n8n-io/n8n/issues/6141))
([d2c18c5](d2c18c5727))
* **editor:** Add telemetry to workflow history
([#7811](https://github.com/n8n-io/n8n/issues/7811))
([d497041](d4970410e1))
* **editor:** Allow owners and admins to share workflows and credentials
they don't own ([#7833](https://github.com/n8n-io/n8n/issues/7833))
([3ab3ec9](3ab3ec9da8))
* **editor:** Disable context menu actions in read-only mode
([#7789](https://github.com/n8n-io/n8n/issues/7789))
([902beff](902beffce5))
* **editor:** Fix cloud plan data loading on instance
([#7841](https://github.com/n8n-io/n8n/issues/7841))
([8b99384](8b99384367))
* **editor:** Fix credential icon for old node type version
([#7843](https://github.com/n8n-io/n8n/issues/7843))
([4074107](4074107511))
* **editor:** Fix icon for unknown node type
([#7842](https://github.com/n8n-io/n8n/issues/7842))
([28ac5a7](28ac5a750e))
* **editor:** Fix mouse position in workflow previews
([#7853](https://github.com/n8n-io/n8n/issues/7853))
([c063398](c0633987bf))
* **editor:** Show nice error when environment is not set up
([#7778](https://github.com/n8n-io/n8n/issues/7778))
([5835e05](5835e055d3))
* **editor:** Suppress dev server websocket messages in workflow view
([#7808](https://github.com/n8n-io/n8n/issues/7808))
([685ffd7](685ffd7413))
* **Google Sheets Node:** Read operation execute for each item
([#7800](https://github.com/n8n-io/n8n/issues/7800))
([d548872](d5488725a8))
* **HTTP Request Node:** Enable expressions for binary input data fields
([#7782](https://github.com/n8n-io/n8n/issues/7782))
([6208af0](6208af07eb))
* **Microsoft SQL Node:** Prevent double escaping table name
([#7801](https://github.com/n8n-io/n8n/issues/7801))
([73ec753](73ec7533ce))


### Features

* Add AI tool building capabilities
([#7336](https://github.com/n8n-io/n8n/issues/7336))
([87def60](87def60979))
* Add initial scope checks via decorators
([#7737](https://github.com/n8n-io/n8n/issues/7737))
([a37f1cb](a37f1cb0ba))
* Ado 1296 spike credential setup in templates
([#7786](https://github.com/n8n-io/n8n/issues/7786))
([aae45b0](aae45b043b))
* **core:** Add Support for custom CORS origins for webhooks
([#7455](https://github.com/n8n-io/n8n/issues/7455))
([99a9ea4](99a9ea497a))
* **core:** Allow user role modification
([#7797](https://github.com/n8n-io/n8n/issues/7797))
([7a86d36](7a86d36068))
* **core:** Set up endpoint for all existing roles with license flag
([#7834](https://github.com/n8n-io/n8n/issues/7834))
([2356fb0](2356fb0f0c))
* **editor:** Add node name and version to NDV node settings
([#7731](https://github.com/n8n-io/n8n/issues/7731))
([da85198](da851986f6))
* **editor:** Add routing middleware, permission checks, RBAC store,
RBAC component ([#7702](https://github.com/n8n-io/n8n/issues/7702))
([67a8891](67a88914f2))
* **editor:** Replace middleware for Role checks with Scope checks
([#7847](https://github.com/n8n-io/n8n/issues/7847))
([72852a6](72852a60eb))
* **editor:** Show avatars for users currently working on the same
workflow ([#7763](https://github.com/n8n-io/n8n/issues/7763))
([77bc8ec](77bc8ecd4b))
* **Notion Node:** Option to simplify output in getChildBlocks operation
([#7791](https://github.com/n8n-io/n8n/issues/7791))
([d667bca](d667bca658))
* **Slack Node:** Add support for getting the profile of a user
([#7829](https://github.com/n8n-io/n8n/issues/7829))
([90bb6ba](90bb6ba417))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-11-29 13:17:03 +01:00
Michael Kret c72229fbe2
fix(core): Rename ’Marketing & Content' category to 'Marketing' (no-changelog) (#7823)
Github issue / Community forum post (link here to close automatically):
2023-11-29 13:37:46 +02:00
Val e282ea242d
fix: Return scopes on owner setup endpoint (no-changelog) (#7860)
Github issue / Community forum post (link here to close automatically):
2023-11-29 11:33:32 +00:00
Iván Ovejero c08c5cc37b
refactor(core): Switch plain errors in cli to ApplicationError (#7857)
Ensure all errors in `cli` 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/7839
2023-11-29 12:25:10 +01:00
Jan Oberhauser 87def60979
feat: Add AI tool building capabilities (#7336)
Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/langchain-memory-chat/23733

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Deborah <deborah@starfallprojects.co.uk>
Co-authored-by: Jesper Bylund <mail@jesperbylund.com>
Co-authored-by: Jon <jonathan.bennetts@gmail.com>
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>
2023-11-29 12:13:55 +01:00
Milorad FIlipović 8b99384367
fix(editor): Fix cloud plan data loading on instance (#7841)
Moving cloud hooks and store initialization logic after users are
authenticated. This will ensure user local account is available when
their cloud plan data is being fetched.
This PR also adds the following error handling improvements:
- Added error handling to the same initialization logic
- Fixed empty `catch` clauses inside the cloud store which caused it to
silently fail and complicated debugging of this bug
2023-11-29 10:51:15 +01:00
Jon 90bb6ba417
feat(Slack Node): Add support for getting the profile of a user (#7829)
Github issue / Community forum post (link here to close automatically):
https://github.com/n8n-io/n8n/issues/7825

This adds support for getting a users profile which returns different
data to the existing user info (Get) operation we have.

Test Workflow
```
{
  "meta": {
    "instanceId": "8c8c5237b8e37b006a7adce87f4369350c58e41f3ca9de16196d3197f69eabcd"
  },
  "nodes": [
    {
      "parameters": {},
      "id": "69f437fb-9962-4d51-91bb-0ef4b3827e49",
      "name": "When clicking \"Execute Workflow\"",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        880,
        380
      ]
    },
    {
      "parameters": {
        "resource": "user",
        "user": {
          "__rl": true,
          "value": "U035F563JSW",
          "mode": "list",
          "cachedResultName": "jonathan"
        }
      },
      "id": "826828db-598b-40c7-b085-5b01f2c10d73",
      "name": "Get Info",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 2.1,
      "position": [
        1120,
        260
      ],
      "credentials": {
        "slackApi": {
          "id": "E4DnXIyNuRxi5GSz",
          "name": "Slack account"
        }
      }
    },
    {
      "parameters": {
        "resource": "user",
        "operation": "getProfile",
        "user": {
          "__rl": true,
          "value": "U035F563JSW",
          "mode": "list",
          "cachedResultName": "jonathan"
        }
      },
      "id": "9de02c3f-e17c-4a32-a64e-11aaa0b36120",
      "name": "Get Profile",
      "type": "n8n-nodes-base.slack",
      "typeVersion": 2.1,
      "position": [
        1120,
        440
      ],
      "credentials": {
        "slackApi": {
          "id": "E4DnXIyNuRxi5GSz",
          "name": "Slack account"
        }
      }
    }
  ],
  "connections": {
    "When clicking \"Execute Workflow\"": {
      "main": [
        [
          {
            "node": "Get Info",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get Profile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {}
}
```
2023-11-29 08:37:18 +00:00
Alex Grozav 72852a60eb
feat(editor): Replace middleware for Role checks with Scope checks (#7847) 2023-11-29 10:35:40 +02:00
Csaba Tuncsik d4970410e1
fix(editor): Add telemetry to workflow history (#7811) 2023-11-29 09:09:21 +01:00
Milorad FIlipović c0633987bf
fix(editor): Fix mouse position in workflow previews (#7853)
This PR fixes mouse position detection in workflow previews (executions
preview and workflow history view):


https://github.com/n8n-io/n8n/assets/2598782/83237b76-b099-4560-9c47-a963f0848297

**Cause**:
We were setting `isDemo` state in canvas store only when the `NodeView`
component is activated, which never happens for `NodeView` instances
that are kept alive (above mentioned workflow previews)

**Fix**:
This workflow updates store state also when the `NodeView` component is
mounted.
2023-11-28 19:02:19 +01:00
Tomi Turtiainen 28ac5a750e
fix(editor): Fix icon for unknown node type (#7842) 2023-11-28 19:16:51 +02:00
कारतोफ्फेलस्क्रिप्ट™ 2f8cb419df
ci: Fix editor tests when coverage is enabled (no-changelog) (#7827)
[Test run
](https://github.com/n8n-io/n8n/actions/runs/7021272455/job/19103012704)
2023-11-28 18:04:30 +01:00
Csaba Tuncsik 685ffd7413
fix(editor): Suppress dev server websocket messages in workflow view (#7808) 2023-11-28 17:30:44 +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
कारतोफ्फेलस्क्रिप्ट™ 4a89504d54
fix(editor): Fix push connection on WorkerList and CommunityNodes pages (no-changelog) (#7851) 2023-11-28 16:45:50 +01:00
Csaba Tuncsik e87e928144
fix(editor): Remove ability for users to select admin role in the UI (no-changelog) (#7850) 2023-11-28 15:11:02 +01:00
Iván Ovejero 2356fb0f0c
feat(core): Set up endpoint for all existing roles with license flag (#7834)
https://linear.app/n8n/issue/PAY-1034/create-endpoint-to-list-all-existing-roles
2023-11-28 14:16:47 +01:00
Tomi Turtiainen 4074107511
fix(editor): Fix credential icon for old node type version (#7843)
If a credential was for a node's older version, its icon was not shown.
2023-11-28 15:14:22 +02:00
Val a37f1cb0ba
feat: Add initial scope checks via decorators (#7737) 2023-11-28 11:41:34 +00:00
कारतोफ्फेलस्क्रिप्ट™ 753cbc1e96
refactor(editor): Delete some barrel files and reduce circular dependencies (no-changelog) (#7838) 2023-11-28 12:15:08 +01:00
Csaba Tuncsik 3ab3ec9da8
fix(editor): Allow owners and admins to share workflows and credentials they don't own (#7833) 2023-11-28 11:44:55 +01:00
Iván Ovejero 1c6178759c
refactor(core): Reorganize error hierarchy in cli package (no-changelog) (#7839)
Ensure all errors in `cli` inherit from `ApplicationError` to continue
normalizing all the errors we report to Sentry

Follow-up to: https://github.com/n8n-io/n8n/pull/7820
2023-11-28 10:19:27 +01:00
Jon 38f24a6184
fix(Google Calendar Trigger Node): Fix issue preventing birthday and holiday calendars from working (#7832)
Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/issue-with-some-google-calendars/33411

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-11-28 09:11:05 +00:00
Michael Kret d5488725a8
fix(Google Sheets Node): Read operation execute for each item (#7800)
Github issue / Community forum post (link here to close automatically):
2023-11-28 11:02:11 +02:00
Michael Kret df691fba0c
fix(core): Node version in the user added node to workflow canvas event (no-changelog) (#7814)
Github issue / Community forum post (link here to close automatically):
2023-11-27 19:50:20 +02:00
Iván Ovejero 9b87a596ca
fix(core): Ensure member and admin cannot be promoted to owner (#7830)
https://linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint#comment-62355f6b
2023-11-27 17:35:58 +01:00
Tomi Turtiainen ac744d6702
test: Ado 1296 add e2e tests (#7792)
Adds e2e tests for the template credential setup.
2023-11-27 17:18:10 +02:00
Omar Ajoue 847f6ac771
fix(core): Prevent error messages due to statistics about data loading (#7824)
Statistics collection about the first time a workflow loads data simply
attempts an insert to db, and if it fails, we just ignore.

This was causing this query to fire against production workflows
multiple times, and since we want to insert only and detect whether the
insertion failed, performing a select first provides gains both in terms
of performance, as it's usually faster than trying an insertion as well
as preventing unnecessary noise in logs.

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

https://community.n8n.io/t/duplicate-key-value-violates-unique-constraint-workflow-statistics-pkey-still-happening/29283
https://github.com/n8n-io/n8n/issues/7256
https://community.n8n.io/t/error-log-arriving-in-postgres/30191
https://github.com/n8n-io/n8n/issues/7256

https://community.n8n.io/t/cant-launch-webhooks-unable-to-find-data-of-execution/31867

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-27 15:43:48 +01:00
Michael Kret 73ec7533ce
fix(Microsoft SQL Node): Prevent double escaping table name (#7801)
Github issue / Community forum post (link here to close automatically):
https://community.n8n.io/t/issue-my-mssql-update-in-latest-version/32966
2023-11-27 16:41:35 +02: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
Tomi Turtiainen aae45b043b
feat: Ado 1296 spike credential setup in templates (#7786)
- Add a 'Setup template credentials' view to setup the credentials of a
template before it is created
2023-11-27 16:30:28 +02:00
Val 27e048c201
feat: Add Licensed decorator (no-changelog) (#7828)
Github issue / Community forum post (link here to close automatically):
2023-11-27 13:46:18 +00:00
Michael Kret d667bca658
feat(Notion Node): Option to simplify output in getChildBlocks operation (#7791)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Marcus <marcus@n8n.io>
2023-11-27 15:02:57 +02:00
Csaba Tuncsik 137e23853f
feat: Add user role select to users list settings page (#7796)
![CleanShot 2023-11-27 at 07 20
58](https://github.com/n8n-io/n8n/assets/5410822/40be0505-32ee-48a7-923e-ba6b4dbce670)
2023-11-27 13:38:03 +01:00
Val 5acb7b94c0
refactor: Refactor variables controller into a RestController (no-changelog) (#7822)
Github issue / Community forum post (link here to close automatically):
2023-11-27 12:17:09 +00:00
Iván Ovejero 7b8532d3a3
refactor(core): Move execution progress saving to standalone utility (no-changelog) (#7770)
This PR continues the effort of moving logic inside execution lifecycle
hooks into standalone testable functions, as a stepping stone to
refactoring the hooks themselves.
2023-11-27 13:10:43 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2807ddcd0d
fix(editor): Setup push connection in NodeView (no-changelog) (#7821) 2023-11-27 12:48:48 +01:00
Iván Ovejero 75a5807c72
perf(core): Make user controller tests faster (no-changelog) (#7819)
Before: `17.949 s`
After: `3.886 s`

Followup to:
https://github.com/n8n-io/n8n/pull/7797#discussion_r1404148034
2023-11-27 11:56:06 +01:00
Csaba Tuncsik 83086af247
build: Fix vite config (switch to module type) (#7818) 2023-11-27 10:56:57 +01:00
Alex Grozav 7cc7f226e5
fix(editor): Fix broken element-plus loading spinner (no-changelog) (#7817)
<img width="976" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/aea8a4c8-277e-4527-b6e9-a5c3427097b6">
<img width="117" alt="image"
src="https://github.com/n8n-io/n8n/assets/6179477/14c8876c-5e26-4154-9fdf-8b1fe9e5f806">
2023-11-27 10:50:50 +02:00