Commit graph

2265 commits

Author SHA1 Message Date
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
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
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
कारतोफ्फेलस्क्रिप्ट™ 1b60cfb8f1
ci: Fix new user patching endpoint tests (no-changelog) (#7816)
user ids are uuids, and in the future we should add proper input
validation to prevent invalid user ids reaching the DB like this.
2023-11-27 09:35:09 +01:00
Csaba Tuncsik 152883eed1
build: Upgrade lint related packages (#7790) 2023-11-27 09:11:52 +01:00
Iván Ovejero eec2ec1ff8
refactor(core): Consolidate path-related errors in Sentry (no-changelog) (#7757)
Keep reporting [path-related
errors](https://n8nio.sentry.io/issues/4649493725) in Sentry but
consolidate them in a single error group.

Also, add `options.extra` as `meta` so they remain visible in debug
logs:

```
2023-11-24T11:50:54.852Z | error    | ReportableError: Something went wrong "{ test: 123, file: 'LoggerProxy.js', function: 'exports.error' }"
```

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-24 14:42:46 +01:00
Iván Ovejero 7a86d36068
feat(core): Allow user role modification (#7797)
https://linear.app/n8n/issue/PAY-985

```
PATCH /users/:id/role
  unauthenticated user
    ✓ should receive 401 (349 ms)
  member
    ✓ should fail to demote owner to member (349 ms)
    ✓ should fail to demote owner to admin (359 ms)
    ✓ should fail to demote admin to member (381 ms)
    ✓ should fail to promote other member to owner (353 ms)
    ✓ should fail to promote other member to admin (377 ms)
    ✓ should fail to promote self to admin (354 ms)
    ✓ should fail to promote self to owner (371 ms)
  admin
    ✓ should receive 400 on invalid payload (351 ms)
    ✓ should receive 404 on unknown target user (351 ms)
    ✓ should fail to demote owner to admin (349 ms)
    ✓ should fail to demote owner to member (347 ms)
    ✓ should fail to promote member to owner (384 ms)
    ✓ should fail to promote admin to owner (350 ms)
    ✓ should be able to demote admin to member (354 ms)
    ✓ should be able to demote self to member (350 ms)
    ✓ should be able to promote member to admin (349 ms)
  owner
    ✓ should be able to promote member to admin (349 ms)
    ✓ should be able to demote admin to member (349 ms)
    ✓ should fail to demote self to admin (348 ms)
    ✓ should fail to demote self to member (354 ms)
```
2023-11-24 11:40:08 +01:00
Val 865192adf0
feat: Add global admin role (no-changelog) (#7781)
Github issue / Community forum post (link here to close automatically):
2023-11-23 13:38:11 +00:00
Michael Auerswald 5835e055d3
fix(editor): Show nice error when environment is not set up (#7778)
Adds a nicer error message with a link for owners who press Push to Git
without having a repository connected yet.
2023-11-23 13:50:03 +01:00
Iván Ovejero fdb2c18ecc
fix(core): Tighten checks for multi-main setup usage (#7788)
https://n8nio.slack.com/archives/C05HRPLSGTT/p1700731476321999?thread_ts=1700729359.746899&cid=C05HRPLSGTT
2023-11-23 12:18:39 +01:00
Csaba Tuncsik e128b23a2b
build: Upgrade to Vite 5 (#7784) 2023-11-23 11:55:02 +01:00
Milorad FIlipović 77bc8ecd4b
feat(editor): Show avatars for users currently working on the same workflow (#7763)
This PR introduces the following changes:
- New Vue stores: `collaborationStore` and `pushConnectionStore`
- Front-end push connection handling overhaul: Keep only a singe
connection open and handle it from the new store
- Add user avatars in the editor header when there are multiple users
working on the same workflow
- Sending a heartbeat event to back-end service periodically to confirm
user is still active

- Back-end overhauls (authored by @tomi):
  - Implementing a cleanup procedure that removes inactive users
  - Refactoring collaboration service current implementation

---------

Co-authored-by: Tomi Turtiainen <10324676+tomi@users.noreply.github.com>
2023-11-23 10:14:34 +01:00
Michael Kret 99a9ea497a
feat(core): Add Support for custom CORS origins for webhooks (#7455)
node-850
https://community.n8n.io/t/add-ability-to-set-cors-allow-list-in-n8n-webhooks/7610
https://community.n8n.io/t/configure-cors-pre-flight-request-option-method-in-the-roadmap/32189

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-22 17:49:56 +01:00
github-actions[bot] e01617ad64
🚀 Release 1.18.0 (#7780)
#
[1.18.0](https://github.com/n8n-io/n8n/compare/n8n@1.17.0...n8n@1.18.0)
(2023-11-22)


### Bug Fixes

* **core:** Account for non-ASCII chars in filename on binary data
download ([#7742](https://github.com/n8n-io/n8n/issues/7742))
([b4ebb1a](b4ebb1a28d))
* **core:** Correct permissions for getstatus
([#7724](https://github.com/n8n-io/n8n/issues/7724))
([f96c1d2](f96c1d2044))
* **core:** Ensure failed executions are saved in queue mode
([#7744](https://github.com/n8n-io/n8n/issues/7744))
([b7c5c74](b7c5c7406f))
* **core:** Guard against node not found on cancelling test webhook
([#7750](https://github.com/n8n-io/n8n/issues/7750))
([6be453b](6be453b716))
* **editor:** Handle permission edge cases (empty scopes)
([#7723](https://github.com/n8n-io/n8n/issues/7723))
([e2ffd39](e2ffd397fc))
* **editor:** Make sure LineController is registered with chart.js
([#7730](https://github.com/n8n-io/n8n/issues/7730))
([ebee1a5](ebee1a5908))
* **editor:** Move workerview entry into settings menu
([#7761](https://github.com/n8n-io/n8n/issues/7761))
([366cd67](366cd672a7))
* **editor:** Only show push to git menu item to owners
([#7766](https://github.com/n8n-io/n8n/issues/7766))
([0d3d33d](0d3d33dd1f))
* **editor:** Show v1 banner dismiss button if owner
([#7722](https://github.com/n8n-io/n8n/issues/7722))
([44d3b3e](44d3b3ed7e))
* **editor:** Use project diagram icon for worker view
([#7764](https://github.com/n8n-io/n8n/issues/7764))
([ff0b651](ff0b6511f7))
* **editor:** Validate user info before submiting
([#7608](https://github.com/n8n-io/n8n/issues/7608))
([2064f7f](2064f7f251))
* **GitHub Node:** Fix issue preventing file edits on branches
([#7734](https://github.com/n8n-io/n8n/issues/7734))
([ce002a6](ce002a6cc6))
* **Google Sheets Node:** Check for `null` before destructuring
([#7729](https://github.com/n8n-io/n8n/issues/7729))
([5d4a52d](5d4a52d3b7))
* **Item Lists Node:** Don't check same type in remove duplicates
operation ([#7678](https://github.com/n8n-io/n8n/issues/7678))
([4f30764](4f307646f3))
* **JotForm Trigger Node:** Fix iteration on form loader
([#7751](https://github.com/n8n-io/n8n/issues/7751))
([82f3202](82f3202a2d))


### Features

* Add Creator hub link to Templates page
([#7721](https://github.com/n8n-io/n8n/issues/7721))
([4dbae0e](4dbae0e2e9))
* **core:** Coordinate manual workflow activation and deactivation in
multi-main scenario ([#7643](https://github.com/n8n-io/n8n/issues/7643))
([4c40825](4c4082503c))
* **editor:** Add node context menu
([#7620](https://github.com/n8n-io/n8n/issues/7620))
([8d12c1a](8d12c1ad8d))
* **editor:** Node IO filter
([#7503](https://github.com/n8n-io/n8n/issues/7503))
([1881765](18817651ec))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-11-22 14:32:25 +01:00
कारतोफ्फेलस्क्रिप्ट™ db77353272
fix(core): Pass correct node reference to NodeExecuteFunctions.getLoadOptionsFunctions (no-changelog) (#7779)
NODE-947
2023-11-22 13:24:23 +01:00
Milorad FIlipović 2064f7f251
fix(editor): Validate user info before submiting (#7608)
Validate first and last names before saving them to database. This
should prevent security issue with un-sanitized data that ends up in
emails.

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-22 12:14:44 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9b4856e7de
feat(core): Make postgres pool-size configurable (no-changelog) (#7772)
When we upgrade typeorm in #5151, we switched from no pooling to a
default pool-size of 10. This somehow significantly deteriorates the
performance of queries when the application is under load.
2023-11-21 18:13:08 +01:00
Iván Ovejero 3459eb6c2f
refactor(core): Include execution progress in save settings (no-changelog) (#7769) 2023-11-21 17:33:44 +01:00
Iván Ovejero b7c5c7406f
fix(core): Ensure failed executions are saved in queue mode (#7744)
This PR adds `status` to run data so that
`determineFinalExecutionStatus` resolves correctly on execution failure
and removes the cleanup that is being duplicated in a worker hook.

Followup to https://github.com/n8n-io/n8n/pull/7138

Should fix:
- https://github.com/n8n-io/n8n/issues/7705
-
https://linear.app/n8n/issue/PAY-964/no-execution-found-after-execution-fails
-
https://linear.app/n8n/issue/PAY-1010/execution-deletion-in-queue-mode-not-complying-with-settings
2023-11-20 16:03:02 +01:00
Iván Ovejero 6d19f88080
refactor(core): Stop reporting to Sentry unknown cred on mapping (no-changelog) (#7752)
https://n8nio.sentry.io/issues/4563418905
2023-11-17 16:17:44 +01:00
Iván Ovejero 4c4082503c
feat(core): Coordinate manual workflow activation and deactivation in multi-main scenario (#7643)
Followup to #7566 | Story: https://linear.app/n8n/issue/PAY-926

### Manual workflow activation and deactivation

In a multi-main scenario, if the user manually activates or deactivates
a workflow, the process (whether leader or follower) that handles the
PATCH request and updates its internal state should send a message into
the command channel, so that all other main processes update their
internal state accordingly:

- Add to `ActiveWorkflows` if activating
- Remove from `ActiveWorkflows` if deactivating
- Remove and re-add to `ActiveWorkflows` if the update did not change
activation status.

After updating their internal state, if activating or deactivating, the
recipient main processes should push a message to all connected
frontends so that these can update their stores and so reflect the value
in the UI.

### Workflow activation errors

On failure to activate a workflow, the main instance should record the
error in Redis - main instances should always pull activation errors
from Redis in a multi-main scenario.

### Leadership change

On leadership change...

- The old leader should stop pruning and the new leader should start
pruning.
- The old leader should remove trigger- and poller-based workflows and
the new leader should add them.
2023-11-17 15:58:50 +01:00
कारतोफ्फेलस्क्रिप्ट™ db094f2d7e
fix(core): Fix all dependency versions for backend packages (no-changelog) (#7745)
Once the packages are published to NPM, they don't have the
`pnpm-lock.yaml` to fix dependency versions. Which means that any
dependency with `^` gets auto-upgrade to the latest matching minor,
which can cause issues like
[this](https://github.com/node-cache-manager/node-cache-manager/issues/611).
2023-11-17 13:49:18 +01:00
कारतोफ्फेलस्क्रिप्ट™ fc60e9a809
refactor(core): Convert dynamic node-parameter routes to a decorated controller (no-changelog) (#7284)
1. Reduce a lot of code duplication
2. Move more endpoints out of `Server.ts`
3. Move all query-param parsing and validation into a middleware to make
the route handlers simpler.
2023-11-17 12:03:05 +01:00
Iván Ovejero 0408299c7d
refactor(core): Stop reporting to Sentry unrecognized node errors (no-changelog) (#7728)
https://n8nio.sentry.io/issues/4636584213
2023-11-17 10:25:10 +01:00
Iván Ovejero b4ebb1a28d
fix(core): Account for non-ASCII chars in filename on binary data download (#7742)
https://n8nio.sentry.io/issues/4641538638
2023-11-17 10:07:44 +01:00
Ricardo Espinoza 8e0ae3cf8c
refactor: Extract Invitation routes to InvitationController (no-changelog) (#7726)
This PR:

- Creates `InvitationController`
- Moves `POST /users` to `POST /invitations` and move related test to
`invitations.api.tests`
- Moves `POST /users/:id` to `POST /invitations/:id/accept` and move
related test to `invitations.api.tests`
- Adjusts FE to use new endpoints
- Moves all the invitation logic to the `UserService`

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-16 12:39:43 -05:00
Csaba Tuncsik e2ffd397fc
fix(editor): Handle permission edge cases (empty scopes) (#7723) 2023-11-16 18:08:23 +01:00
Val d39bb2540f
feat: Add scopes to /login endpoint (no-changelog) (#7718)
Github issue / Community forum post (link here to close automatically):
2023-11-16 11:11:55 +00:00
Michael Auerswald f96c1d2044
fix(core): Correct permissions for getstatus (#7724) 2023-11-15 16:54:33 +01:00
github-actions[bot] 93103c0b08
🚀 Release 1.17.0 (#7720)
#
[1.17.0](https://github.com/n8n-io/n8n/compare/n8n@1.16.0...n8n@1.17.0)
(2023-11-15)


### Bug Fixes

* **Convert to/from binary data Node:** Better mime type defaults
([#7693](https://github.com/n8n-io/n8n/issues/7693))
([9b3be0c](9b3be0cfd8))
* **core:** Consider subworkflows successfully run when in waiting state
([#7699](https://github.com/n8n-io/n8n/issues/7699))
([0e00dab](0e00dab9f5))
* **core:** Fix named parameter resolution in migrations
([#7688](https://github.com/n8n-io/n8n/issues/7688))
([4441ed5](4441ed5116)),
closes [#7628](https://github.com/n8n-io/n8n/issues/7628)
* **core:** Initialize JWT Secret before it's used anywhere
([#7707](https://github.com/n8n-io/n8n/issues/7707))
([3460eb5](3460eb5eeb))
* **core:** Reduce memory usage in credentials risk auditing
([#7663](https://github.com/n8n-io/n8n/issues/7663))
([9fd6319](9fd6319583))
* **Date & Time Node:** Add fromFormat option to solve ambiguous date
strings ([#7675](https://github.com/n8n-io/n8n/issues/7675))
([d2d11e0](d2d11e0208))
* **editor:** Fix resource mapper component being truncated
([#7664](https://github.com/n8n-io/n8n/issues/7664))
([00dff50](00dff50140))
* **editor:** More securely clear executions tab auto refresh timer
([#7685](https://github.com/n8n-io/n8n/issues/7685))
([37dd658](37dd658dc5))
* **editor:** Redirect to workflow editor after saving in debug mode
([#7645](https://github.com/n8n-io/n8n/issues/7645))
([020042e](020042ef1a))
* **Google Sheets Node:** Append exceeding grid limits
([#7684](https://github.com/n8n-io/n8n/issues/7684))
([88efb99](88efb99587))
* **HTTP Request Node:** Support generic credentials when using
pagination ([#7686](https://github.com/n8n-io/n8n/issues/7686))
([48b240b](48b240b026)),
closes [#7653](https://github.com/n8n-io/n8n/issues/7653)
* **HubSpot Node:** Fetching available parameters fails when using
expressions ([#7672](https://github.com/n8n-io/n8n/issues/7672))
([a9ab738](a9ab73896e))
* **HubSpot Node:** Update deal owner on Hubspot Deal
([#7673](https://github.com/n8n-io/n8n/issues/7673))
([3c0734b](3c0734bd2d))
* **Spreadsheet File Node:** Read file as utf-8 in v1
([#7701](https://github.com/n8n-io/n8n/issues/7701))
([786b4ad](786b4adcce))


### Features

* **core:** Expression function $ifEmpty
([#7660](https://github.com/n8n-io/n8n/issues/7660))
([1c7225e](1c7225ebdb))
* **Date & Time Node:** Option to include other fields in output item
([#7661](https://github.com/n8n-io/n8n/issues/7661))
([aea3c50](aea3c50131))
* **Discord Node:** Overhaul
([#5351](https://github.com/n8n-io/n8n/issues/5351))
([6a53c2a](6a53c2a375))
* **Discourse Node:** Add new options to Get Users
([#7674](https://github.com/n8n-io/n8n/issues/7674))
([2e8c841](2e8c841277))
* **editor:** Add color selector to sticky node
([#7453](https://github.com/n8n-io/n8n/issues/7453))
([8359364](8359364536))
* **editor:** Add HTTP request nodes for credentials without a node
([#7157](https://github.com/n8n-io/n8n/issues/7157))
([14035e1](14035e1244))
* **editor:** Add workflow filters to querystring
([#7456](https://github.com/n8n-io/n8n/issues/7456))
([afd637b](afd637b5ea))
* **editor:** Adds a EE view to show worker details and job status
([#7600](https://github.com/n8n-io/n8n/issues/7600))
([cbc6909](cbc690907f))
* **GitLab Node:** Add support for pagination on getIssues
([#7529](https://github.com/n8n-io/n8n/issues/7529))
([0a0798e](0a0798e485))
* **OpenAI Node:** Add dall-e-3 support
([#7655](https://github.com/n8n-io/n8n/issues/7655))
([a9c7188](a9c7188c4d))
* **RabbitMQ Trigger Node:** Add exchange and routing key options
([#7547](https://github.com/n8n-io/n8n/issues/7547))
([5aee2b7](5aee2b768f))
* **Telegram Node:** Add support for markdownv2
([#7679](https://github.com/n8n-io/n8n/issues/7679))
([819b3a7](819b3a746a))
* **Venafi TLS Protect Cloud Node:** Add region parameter to Venafi
protect cloud ([#7689](https://github.com/n8n-io/n8n/issues/7689))
([a08fca5](a08fca51d9))


### Performance Improvements

* **core:** Lazyload security audit reporters
([#7696](https://github.com/n8n-io/n8n/issues/7696))
([b2ca050](b2ca050031))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-11-15 15:18:08 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2844ce2bd2
ci: Fix env issues in e2e tests (no-changelog) (#7719) 2023-11-15 13:58:38 +01:00
Ricardo Espinoza 4020c14d59
refactor: Use POST /users to re-invite users (no-changelog) (#7714) 2023-11-15 06:40:57 -05:00
कारतोफ्फेलस्क्रिप्ट™ 3460eb5eeb
fix(core): Initialize JWT Secret before it's used anywhere (#7707)
HELP-394
2023-11-15 12:17:18 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4441ed5116
fix(core): Fix named parameter resolution in migrations (#7688)
Fixes #7628
2023-11-15 10:31:08 +01:00
Michael Auerswald 0e00dab9f5
fix(core): Consider subworkflows successfully run when in waiting state (#7699)
Github issue / Community forum post (link here to close automatically):
https://github.com/n8n-io/n8n/issues/7189
2023-11-14 11:04:24 +01:00
Elias Meire 14035e1244
feat(editor): Add HTTP request nodes for credentials without a node (#7157)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-13 12:11:16 +01:00
Iván Ovejero b2ca050031
perf(core): Lazyload security audit reporters (#7696)
Also converting to service.

Followup to https://github.com/n8n-io/n8n/pull/7663
2023-11-13 11:50:43 +01:00
Michael Auerswald cbc690907f
feat(editor): Adds a EE view to show worker details and job status (#7600)
This change expands on the command channel communication introduced
lately between the main instance(s) and the workers. The frontend gets a
new menu entry "Workers" which will, when opened, trigger a regular call
to getStatus from the workers. The workers then respond via their
response channel to the backend, which then pushes the status to the
frontend.
This introduces the use of ChartJS for metrics.
This feature is still in MVP state and thus disabled by default for the
moment.
2023-11-10 23:48:31 +01:00
Ricardo Espinoza 0ddafd2b82
test: Unify users.controller.test and users.api.test (no-changelog) (#7658)
Groundwork to be able to safely refactor and move the invitation logic
to the UserService.

Fixes ADO-1358

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-10 09:41:58 -05:00
कारतोफ्फेलस्क्रिप्ट™ 000e76e3b4
ci(core): Reduce memory usage in tests (part-2) (no-changelog) (#7671)
This also gets rid of `Db.collection`, which was another source of
circular dependencies.
2023-11-10 15:04:26 +01:00
Iván Ovejero f73a0597ba
refactor: Add rule no-constant-binary-expression (no-changelog) (#7670)
https://eslint.org/docs/latest/rules/no-constant-binary-expression
2023-11-09 17:50:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9fd6319583
fix(core): Reduce memory usage in credentials risk auditing (#7663) 2023-11-09 14:39:16 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5edf722209
ci: Stop disabling linting rules that are explicitly set to warn (no-changelog) (#7669) 2023-11-09 14:05:39 +01:00
Iván Ovejero 16a1a92f18
refactor(core): Stop reporting to Sentry credential-not-found error (no-changelog) (#7665)
https://n8nio.sentry.io/issues/4528134408
2023-11-09 10:55:13 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0346b211a7
ci(core): Reduce memory usage in tests (part-1) (no-changelog) (#7654) 2023-11-08 16:29:39 +01:00
github-actions[bot] e5c6a1bdf9
🚀 Release 1.16.0 (#7652)
#
[1.16.0](https://github.com/n8n-io/n8n/compare/n8n@1.15.1...n8n@1.16.0)
(2023-11-08)


### Bug Fixes

* **core:** Comply with custom default for workflow saving settings
([#7634](https://github.com/n8n-io/n8n/issues/7634))
([48c068f](48c068f97b))
* **core:** Decrease reset password token expire time
([#7598](https://github.com/n8n-io/n8n/issues/7598))
([2aa7f63](2aa7f6375a))
* **core:** Ensure `init` before checking leader or follower in
multi-main scenario ([#7621](https://github.com/n8n-io/n8n/issues/7621))
([a994ba5](a994ba5e8d))
* **core:** Ensure pruning starts only after migrations have completed
([#7626](https://github.com/n8n-io/n8n/issues/7626))
([f748de9](f748de9567))
* **core:** Fix accessor error when running partial execution
([#7618](https://github.com/n8n-io/n8n/issues/7618))
([26361df](26361dfcd3)),
closes [#6229](https://github.com/n8n-io/n8n/issues/6229)
* **core:** Make password-reset urls valid only for single-use
([#7622](https://github.com/n8n-io/n8n/issues/7622))
([6031424](60314248f4))
* **Crypto Node:** Fix issue with value not appearing for Sign action
([#7619](https://github.com/n8n-io/n8n/issues/7619))
([5df583f](5df583f783))
* **editor:** Allow overriding theme from query params
([#7591](https://github.com/n8n-io/n8n/issues/7591))
([2854a0c](2854a0cf46))
* **editor:** Fix issue that frontend breaks with unkown nodes
([#7596](https://github.com/n8n-io/n8n/issues/7596))
([db56a9e](db56a9ee37))
* **editor:** Fix local storage flags defaulting to undefined string
([#7603](https://github.com/n8n-io/n8n/issues/7603))
([151e60f](151e60f829))
* **editor:** Fix workflow history prune time limit (getting hours
instead of days) ([#7644](https://github.com/n8n-io/n8n/issues/7644))
([3d5a485](3d5a485bcf))
* **editor:** Hide not supported node options
([#7597](https://github.com/n8n-io/n8n/issues/7597))
([b532a7b](b532a7bdb7))
* **editor:** Remove unknown credentials on pasting workflow
([#7582](https://github.com/n8n-io/n8n/issues/7582))
([d633753](d633753687))
* **editor:** Reset canvas zoom before workspace reset in node view
([#7625](https://github.com/n8n-io/n8n/issues/7625))
([78b84af](78b84af8d1))
* **editor:** Zoom in/out on canvas the same amount on scroll/gesture
([#7602](https://github.com/n8n-io/n8n/issues/7602))
([c92402a](c92402a3ca))
* **Facebook Lead Ads Trigger Node:** Fix issue with missing scope for
business management ([#7616](https://github.com/n8n-io/n8n/issues/7616))
([32b85ba](32b85ba2fe))


### Features

* **core:** Add the node version to telemetry in node_graph_string
([#7449](https://github.com/n8n-io/n8n/issues/7449))
([59dc36a](59dc36abd9))
* **core:** Coordinate workflow activation in multiple main scenario in
internal API ([#7566](https://github.com/n8n-io/n8n/issues/7566))
([c857e42](c857e42677))
* **core:** Initial support for two-way communication over websockets
([#7570](https://github.com/n8n-io/n8n/issues/7570))
([ac87701](ac877014ed))
* **core:** Log executed migrations with info level
([#7586](https://github.com/n8n-io/n8n/issues/7586))
([7dac9ab](7dac9ab82c))
* **core:** Rate limit forgot password endpoint
([#7604](https://github.com/n8n-io/n8n/issues/7604))
([5790e25](5790e251b8))
* **LinkedIn Node:** Add support for Article thumbnails
([#7489](https://github.com/n8n-io/n8n/issues/7489))
([e6d3d1a](e6d3d1a4c2))
* **NocoDB Node:** Add new data apis and workspace support
([#7329](https://github.com/n8n-io/n8n/issues/7329))
([da2d2a8](da2d2a83bb))

Co-authored-by: ivov <ivov@users.noreply.github.com>
2023-11-08 14:20:22 +01:00
Iván Ovejero 3a776e0132
refactor(core): Stop reporting to Sentry missing-node-on-retry error (no-changelog) (#7648)
https://n8nio.sentry.io/issues/4612370603
2023-11-08 10:09:33 +01:00
Iván Ovejero 48c068f97b
fix(core): Comply with custom default for workflow saving settings (#7634)
https://linear.app/n8n/issue/PAY-982
2023-11-07 16:26:55 +01:00
Tomi Turtiainen ac877014ed
feat(core): Initial support for two-way communication over websockets (#7570)
- Enable two-way communication with web sockets
- Enable sending push messages to specific users
- Add collaboration service for managing active users for workflow

Missing things:
- State is currently kept only in memory, making this not work in
multi-master setups
- Removing a user from active users in situations where they go inactive
or we miss the "workflow closed" message
- I think a timer based solution for this would cover most edge cases.
I.e. have FE ping every X minutes, BE removes the user unless they have
received a ping in Y minutes, where Y > X
- FE changes to be added later by @MiloradFilipovic 

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

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-07 17:26:45 +02:00