Commit graph

1022 commits

Author SHA1 Message Date
Iván Ovejero 484035eb51
fix(core): Fix binary data manager check on pruning (#7251)
Ensure that we do not attempt to prune binary data in `default` binary
data mode.
2023-09-25 16:50:11 +02:00
Iván Ovejero 33991e92d0
fix(core): Fix missing execution ID in webhook-based workflow producing binary data (#7244)
Story: https://linear.app/n8n/issue/PAY-839

This is a longstanding bug, fixed now so that the S3 backend for binary
data can use execution IDs as part of the filename.

To reproduce:

1. Set up a workflow with a POST Webhook node that accepts binary data.
2. Activate the workflow and call it sending a binary file, e.g. `curl
-X POST -F "file=@/path/to/binary/file/test.jpg"
http://localhost:5678/webhook/uuid`
3. Check `~/.n8n/binaryData`. The binary data and metadata files will be
missing the execution ID, e.g. `11869055-83c4-4493-876a-9092c4708b9b`
instead of `39011869055-83c4-4493-876a-9092c4708b9b`.
2023-09-25 12:30:28 +02:00
Iván Ovejero dcc9cc13ed
feat(core): Remove storeMetadata and getSize from binary data manager interface (no-changelog) (#7195)
Depends on: #7164 | Story:
[PAY-838](https://linear.app/n8n/issue/PAY-838/introduce-object-store-service-for-binary-data)

This PR removes `storeMetadata` and `getSize` from the binary data
manager interface, as these are specific to filesystem mode. Also this
disambiguates identifiers:

```
binaryDataId
filesystem:289b4aac51e-dac6-4167-b793-6d5c415e2b47 {mode}:{fileId}

fileId - FS
289b4aac51e-dac6-4167-b793-6d5c415e2b47 {executionId}{uuid}

fileId - S3
/workflows/{workflowId}/executions/{executionId}/binary_data/b4aac51e-dac6-4167-b793-6d5c415e2b47
```

Note: The object store changes originally in this PR were extracted out
into the final PR.

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-09-25 10:07:06 +02:00
Iván Ovejero 6d6e2488c6
refactor(core): Generalize binary data manager interface (no-changelog) (#7164)
Depends on: #7092 | Story:
[PAY-768](https://linear.app/n8n/issue/PAY-768)

This PR: 
- Generalizes the `IBinaryDataManager` interface.
- Adjusts `Filesystem.ts` to satisfy the interface.
- Sets up an S3 client stub to be filled in in the next PR.
- Turns `BinaryDataManager` into an injectable service.
- Adjusts the config schema and adds new validators.

Note that the PR looks large but all the main changes are in
`packages/core/src/binaryData`.

Out of scope:
- `BinaryDataManager` (now `BinaryDataService`) and `Filesystem.ts` (now
`fs.client.ts`) were slightly refactored for maintainability, but fully
overhauling them is **not** the focus of this PR, which is meant to
clear the way for the S3 implementation. Future improvements for these
two should include setting up a backwards-compatible dir structure that
makes it easier to locate binary data files to delete, removing
duplication, simplifying cloning methods, using integers for binary data
size instead of `prettyBytes()`, writing tests for existing binary data
logic, etc.

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-09-22 17:22:12 +02:00
Iván Ovejero e8e44f6b6e
refactor(core): Log binary data file write errors (no-changelog) (#7237)
This PR adds logging for binary data file write errors, to capture why
executions sometimes point to non-existing binary data files. See
[Sentry
error](https://n8nio.sentry.io/issues/4495134693/?alert_rule_id=14556563&alert_type=issue&notification_uuid=4b50a5da-6ae9-472e-9658-984cca824762&project=4503924908883968&referrer=slack).
2023-09-22 11:48:20 +02:00
Elias Meire 67b985fe89
fix(core): Handle filename* with quotes in Content-Disposition header (#7229)
Github issue / Community forum post (link here to close automatically):
2023-09-21 14:54:10 +02:00
कारतोफ्फेलस्क्रिप्ट™ 8bb22292d5 Merge tag 'n8n@1.8.0' 2023-09-20 16:20:34 +02:00
Iván Ovejero cd08c8e4c6
refactor(core): Implement soft-deletions for executions (#7092)
Based on #7065 | Story: https://linear.app/n8n/issue/PAY-771

n8n on filesystem mode marks binary data to delete on manual execution
deletion, on unsaved execution completion, and on every execution
pruning cycle. We later prune binary data in a separate cycle via these
marker files, based on the configured TTL. In the context of introducing
an S3 client to manage binary data, the filesystem mode's mark-and-prune
setup is too tightly coupled to the general binary data management
client interface.

This PR...
- Ensures the deletion of an execution causes the deletion of any binary
data associated to it. This does away with the need for binary data TTL
and simplifies the filesystem mode's mark-and-prune setup.
- Refactors all execution deletions (including pruning) to cause soft
deletions, hard-deletes soft-deleted executions based on the existing
pruning config, and adjusts execution endpoints to filter out
soft-deleted executions. This reduces DB load, and keeps binary data
around long enough for users to access it when building workflows with
unsaved executions.
- Moves all execution pruning work from an execution lifecycle hook to
`execution.repository.ts`. This keeps related logic in a single place.
- Removes all marking logic from the binary data manager. This
simplifies the interface that the S3 client will meet.
- Adds basic sanity-check tests to pruning logic and execution deletion.

Out of scope:

- Improving existing pruning logic.
- Improving existing execution repository logic.
- Adjusting dir structure for filesystem mode.

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-09-20 15:21:42 +02:00
github-actions[bot] ecd5d93c19
🚀 Release 1.8.0 (#7219)
# [1.8.0](https://github.com/n8n-io/n8n/compare/n8n@1.7.0...n8n@1.8.0)
(2023-09-20)


### Bug Fixes

* **core:** Make parsing of content-type and content-disposition headers
more flexible ([#7217](https://github.com/n8n-io/n8n/issues/7217))
([d41546b](d41546b899)),
closes [#7149](https://github.com/n8n-io/n8n/issues/7149)
* **core:** Resolve domains to IPv4 first
([#7206](https://github.com/n8n-io/n8n/issues/7206))
([e9ce531](e9ce531210))
* **editor:** Add ssh key type selection to source control settings when
regenerating key ([#7172](https://github.com/n8n-io/n8n/issues/7172))
([54bf66d](54bf66d335))
* **editor:** No need to add click emitting click events, VUE delegates
the handler to the root element of the component
([#7182](https://github.com/n8n-io/n8n/issues/7182))
([3c055e4](3c055e4d8d))
* **editor:** Prevent duplicate creation of credential for OAuth2
([#7163](https://github.com/n8n-io/n8n/issues/7163))
([07a6417](07a6417f0f))
* **editor:** Testing flaky resource mapper feature in e2e tests
([#7165](https://github.com/n8n-io/n8n/issues/7165))
([aaf87c3](aaf87c3edd))
* **HTML Node:** Add pairedItem support for 'Convert to HTML Table'
operation ([#7196](https://github.com/n8n-io/n8n/issues/7196))
([6bc477b](6bc477b50e))
* **HTTP Request Node:** Decrease default timeout to 5min
([#7177](https://github.com/n8n-io/n8n/issues/7177))
([321780d](321780d4a2))
* **seven Node:** Rename sms77 to seven, fix credentials test
([#7180](https://github.com/n8n-io/n8n/issues/7180))
([cf776b8](cf776b8f17))
* **X (Formerly Twitter) Node:** Rename Twitter to X (keep Twitter
alias) ([#7179](https://github.com/n8n-io/n8n/issues/7179))
([d317e09](d317e09c59))


### Features

* **core:** Add command to trigger license refresh on workers
([#7184](https://github.com/n8n-io/n8n/issues/7184))
([9f797b9](9f797b96d8))
* **core:** Add rsa option to ssh key generation
([#7154](https://github.com/n8n-io/n8n/issues/7154))
([fdac2c8](fdac2c8572))
* **Linear Node:** Add support for OAuth2
([#7201](https://github.com/n8n-io/n8n/issues/7201))
([12a3168](12a3168367))
* **Microsoft Outlook Node:** Node overhaul
([#4449](https://github.com/n8n-io/n8n/issues/4449))
([556a613](556a6132ba))
* **Set Node:** Overhaul
([#6348](https://github.com/n8n-io/n8n/issues/6348))
([3a47455](3a474552b2))

Co-authored-by: krynble <krynble@users.noreply.github.com>
2023-09-20 15:10:20 +02:00
Elias Meire d41546b899
fix(core): Make parsing of content-type and content-disposition headers more flexible (#7217)
fixes #7149
2023-09-20 14:40:06 +02:00
Michael Kret 3a474552b2
feat(Set Node): Overhaul (#6348)
Github issue / Community forum post (link here to close automatically):
https://github.com/n8n-io/n8n/pull/6348

---------

Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Marcus <marcus@n8n.io>
2023-09-19 13:16:35 +03:00
github-actions[bot] a6e027b3ff
🚀 Release 1.7.0 (#7162)
# [1.7.0](https://github.com/n8n-io/n8n/compare/n8n@1.6.0...n8n@1.7.0)
(2023-09-13)


### Bug Fixes

* **Code Node:** Disable WASM to address CVE-2023-37903
([#7122](https://github.com/n8n-io/n8n/issues/7122))
([36a8e91](36a8e911e6))
* **Code Node:** Upgrade vm2 to address CVE-2023-37466
([#7123](https://github.com/n8n-io/n8n/issues/7123))
([0a35025](0a35025e5e))
* **core:** Disable Node.js custom inspection to address CVE-2023-37903
([#7125](https://github.com/n8n-io/n8n/issues/7125))
([a223734](a223734a4a))
* **editor** Account for nanoid workflow ids for subworkflow execute
policy ([#7094](https://github.com/n8n-io/n8n/issues/7094))
([67092c0](67092c0a1b))
* **editor:** Tweak hover area of workflow / cred cards
([#7108](https://github.com/n8n-io/n8n/issues/7108))
([217de21](217de21605))
* **editor:** Unbind workflow endpoint events in case of workspace reset
([#7129](https://github.com/n8n-io/n8n/issues/7129))
([c9b7948](c9b79485cf))
* **editor:** Update git repo url validation regex
([#7151](https://github.com/n8n-io/n8n/issues/7151))
([e51f173](e51f173608))
* **Google Cloud Firestore Node:** Fix empty string interpreted as
number ([#7136](https://github.com/n8n-io/n8n/issues/7136))
([915cfa0](915cfa0f6a))
* **HubSpot Node:** Fix issue with contact lists not working
([#5582](https://github.com/n8n-io/n8n/issues/5582))
([6e5a4f6](6e5a4f6a58))
* **Postgres Node:** Fix automatic column mapping
([#7121](https://github.com/n8n-io/n8n/issues/7121))
([92af131](92af1314fe))
* **Zoho CRM Node:** Fix issue with Sales Order not updating
([#6959](https://github.com/n8n-io/n8n/issues/6959))
([fd800b6](fd800b674b))


### Features

* **core:** Add an option to enable WAL mode for SQLite
([#7118](https://github.com/n8n-io/n8n/issues/7118))
([1d1a022](1d1a022def))
* **core:** Add commands to workers to respond with current state
([#7029](https://github.com/n8n-io/n8n/issues/7029))
([7b49cf2](7b49cf2a2c))
* **Salesforce Node:** Add fax field to lead option
([#7030](https://github.com/n8n-io/n8n/issues/7030))
([01f875a](01f875a94d))

Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-09-13 14:55:52 +02:00
github-actions[bot] 955bd327ff
🚀 Release 1.6.0 (#7120)
# [1.6.0](https://github.com/n8n-io/n8n/compare/n8n@1.5.1...n8n@1.6.0)
(2023-09-06)


### Bug Fixes

* **core:** Add support for in-transit encryption (TLS) on Redis
connections ([#7047](https://github.com/n8n-io/n8n/issues/7047))
([a910757](a910757cc5))
* **core:** Disallow orphan executions
([#7069](https://github.com/n8n-io/n8n/issues/7069))
([8a28e98](8a28e98ec8))
* **core:** Split event bus controller into community and ee
([#7107](https://github.com/n8n-io/n8n/issues/7107))
([011ee2e](011ee2e04b))
* **editor:** Standardize save text
([#7093](https://github.com/n8n-io/n8n/issues/7093))
([58b3492](58b3492b0d))
* Ensure all new executions are saved
([#7061](https://github.com/n8n-io/n8n/issues/7061))
([b8e06d2](b8e06d245f))
* Load remote resources even if expressions in non requried parameters
resolve ([#6987](https://github.com/n8n-io/n8n/issues/6987))
([8a8d4e8](8a8d4e8bb3))
* **Postgres Node:** Connection pool of the database object has been
destroyed ([#7074](https://github.com/n8n-io/n8n/issues/7074))
([9dd5f0e](9dd5f0e579))
* **Postgres Node:** Tunnel doesn't always close
([#7087](https://github.com/n8n-io/n8n/issues/7087))
([58e55ba](58e55ba669))


### Features

* **core:** Add list query middleware to credentials
([#7041](https://github.com/n8n-io/n8n/issues/7041))
([fd78021](fd78021b68))
* **core:** Add support for floating licenses
([#7090](https://github.com/n8n-io/n8n/issues/7090))
([e26553f](e26553f198))
* **core:** Migration for soft deletions for executions
([#7088](https://github.com/n8n-io/n8n/issues/7088))
([413e0bc](413e0bccb4))
* **HTTP Request Node:** Determine binary file name from
content-disposition headers
([#7032](https://github.com/n8n-io/n8n/issues/7032))
([273d091](273d0913fe))
* **TheHive Node:** Overhaul
([#6457](https://github.com/n8n-io/n8n/issues/6457))
([73e782e](73e782e2cf))

Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-09-06 13:35:31 +02:00
कारतोफ्फेलस्क्रिप्ट™ 273d0913fe
feat(HTTP Request Node): Determine binary file name from content-disposition headers (#7032)
Fixes: 

https://community.n8n.io/t/http-request-node-read-filename-from-content-disposition-header-when-downloading-files/13453

https://community.n8n.io/t/read-filename-from-content-disposition-header-when-downloading-files/22192
2023-09-06 12:38:37 +02:00
कारतोफ्फेलस्क्रिप्ट™ 2f647974f4
refactor: Use actual nodes/credentials in cli and core tests (no-changelog) (#7115) 2023-09-06 10:23:47 +02:00
कारतोफ्फेलस्क्रिप्ट™ 6aa7b93473
refactor(core): Deprecate prepareOutputData (no-changelog) (#7091) 2023-09-05 12:59:02 +02:00
Iván Ovejero 8cd4db0ab7
refactor(core): Simplify marking logic in binary data manager (no-changelog) (#7046)
- For a saved execution, we write to disk binary data and metadata.
These two are only ever deleted via `POST /executions/delete`. No marker
file, so untouched by pruning.
- For an unsaved execution, we write to disk binary data, binary data
metadata, and a marker file at `/meta`. We later delete all three during
pruning.
- The third flow is legacy. Currently, if the execution is unsaved, we
actually store it in the DB while running the workflow and immediately
after the workflow is finished during the `onWorkflowPostExecute()` hook
we delete that execution, so the second flow applies. But formerly, we
did not store unsaved executions in the DB ("ephemeral executions") and
so we needed to write a marker file at `/persistMeta` so that, if the
ephemeral execution crashed after the step where binary data was stored,
we had a way to later delete its associated dangling binary data via a
second pruning cycle, and if the ephemeral execution succeeded, then we
immediately cleaned up the marker file at `/persistMeta` during the
`onWorkflowPostExecute()` hook.

This creation and cleanup at `/persistMeta` is still happening, but this
third flow no longer has a purpose, as we now store unsaved executions
in the DB and delete them immediately after. Hence the third flow can be
removed.
2023-08-31 16:02:20 +02:00
github-actions[bot] 0ca2c780ed
🚀 Release 1.5.0 (#7056)
# [1.5.0](https://github.com/n8n-io/n8n/compare/n8n@1.4.0...n8n@1.5.0)
(2023-08-31)


### Bug Fixes

* **Agile CRM Node:** Fix issue with company address not working
([#6997](https://github.com/n8n-io/n8n/issues/6997))
([2f81652](2f81652400))
* **Code Node:** Switch over to vm2 fork
([#7018](https://github.com/n8n-io/n8n/issues/7018))
([dfe0fa6](dfe0fa65f8))
* **core:** Invalid NODES_INCLUDE should not crash the app
([#7038](https://github.com/n8n-io/n8n/issues/7038))
([04e3178](04e3178901)),
closes [#6683](https://github.com/n8n-io/n8n/issues/6683)
* **core:** Setup websocket keep-live messages
([#6866](https://github.com/n8n-io/n8n/issues/6866))
([8bdb07d](8bdb07d33d)),
closes [#6757](https://github.com/n8n-io/n8n/issues/6757)
* **core:** Throw `NodeSSLError` only for nodes that allow ignoring SSL
issues ([#6928](https://github.com/n8n-io/n8n/issues/6928))
([a01c3fb](a01c3fbc19))
* **Date & Time Node:** Dont parse date if it's not set (null or
undefined) ([#7050](https://github.com/n8n-io/n8n/issues/7050))
([d72f79f](d72f79ffb3))
* **editor:** Fix sending of Ask AI tracking events
([#7002](https://github.com/n8n-io/n8n/issues/7002))
([fb05afa](fb05afa165))
* **Microsoft Excel 365 Node:** Support for more extensions in workbook
rlc ([#7020](https://github.com/n8n-io/n8n/issues/7020))
([d6e1cf2](d6e1cf232f))
* **MongoDB Node:** Stringify response ObjectIDs
([#6990](https://github.com/n8n-io/n8n/issues/6990))
([9ca990b](9ca990b993))
* **MongoDB Node:** Upgrade mongodb package to address CVE-2021-32050
([#7054](https://github.com/n8n-io/n8n/issues/7054))
([d3f6356](d3f635657c))
* **Postgres Node:** Empty return data fix for Postgres and MySQL
([#7016](https://github.com/n8n-io/n8n/issues/7016))
([176ccd6](176ccd62bc))
* **Webhook Node:** Fix URL params for webhooks
([#6986](https://github.com/n8n-io/n8n/issues/6986))
([596b569](596b5695cd))


### Features

* **core:** External Secrets storage for credentials
([#6477](https://github.com/n8n-io/n8n/issues/6477))
([ed927d3](ed927d34b2))
* **core:** Add MFA ([#4767](https://github.com/n8n-io/n8n/issues/4767))
([2b7ba6f](2b7ba6fdf1))
* **core:** Add filtering, selection and pagination to users
([#6994](https://github.com/n8n-io/n8n/issues/6994))
([b716241](b716241b42))
* **editor:** Debug executions in the editor
([#6834](https://github.com/n8n-io/n8n/issues/6834))
([c833078](c833078c87))
* **RSS Read Node:** Add support for self signed certificates
([#7039](https://github.com/n8n-io/n8n/issues/7039))
([3b9f0fe](3b9f0fed7a))

Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-08-31 12:57:20 +02:00
कारतोफ्फेलस्क्रिप्ट™ 04e3178901
fix(core): Invalid NODES_INCLUDE should not crash the app (#7038)
Fixes #6683
2023-08-29 11:19:40 +02:00
Alex Grozav ed927d34b2
feat: External Secrets storage for credentials (#6477)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-08-25 10:33:46 +02:00
कारतोफ्फेलस्क्रिप्ट™ a01c3fbc19
fix(core): Throw NodeSSLError only for nodes that allow ignoring SSL issues (#6928) 2023-08-23 17:29:43 +02:00
github-actions[bot] 0e89a65b38
🚀 Release 1.4.0 (#7001)
# [1.4.0](https://github.com/n8n-io/n8n/compare/n8n@1.3.0...n8n@1.4.0)
(2023-08-23)


### Bug Fixes

* **core:** Add recoveryInProgress flag file
([#6962](https://github.com/n8n-io/n8n/issues/6962))
([7b96820](7b96820218))
* **core:** Fix `continueOnFail` for expression error in Set
([#6939](https://github.com/n8n-io/n8n/issues/6939))
([d4fac05](d4fac0527b))
* **core:** Fix `import:workflow` command
([#6996](https://github.com/n8n-io/n8n/issues/6996))
([8c38d85](8c38d85e76))
* **core:** Replace throw with warning when deactivating a non-active
workflow ([#6969](https://github.com/n8n-io/n8n/issues/6969))
([b6a00fe](b6a00febbd))
* **core:** Set up OAuth2 cred test
([#6960](https://github.com/n8n-io/n8n/issues/6960))
([4fc69b7](4fc69b776c))
* **editor:** Do not flag dynamic load options issue on expression
([#6932](https://github.com/n8n-io/n8n/issues/6932))
([60a1ef0](60a1ef0993))
* **editor:** Ensure community node install button tracks user agreement
([#6976](https://github.com/n8n-io/n8n/issues/6976))
([0ddfc73](0ddfc73bee))
* **editor:** Fix parsing for single quoted resolvables
([#6982](https://github.com/n8n-io/n8n/issues/6982))
([f32e993](f32e993227))
* **editor:** Fix Remove all fields not removing values in resource
mapper ([#6940](https://github.com/n8n-io/n8n/issues/6940))
([e6cff3f](e6cff3fce4))
* **editor:** Prevent Code node linter from erroring on `null` parse
([#6934](https://github.com/n8n-io/n8n/issues/6934))
([40d3a29](40d3a295d3))
* **Google Sheets Node:** Fix short sheet name interpreted as range
([#6989](https://github.com/n8n-io/n8n/issues/6989))
([00268a0](00268a019a))
* **Google Sheets Trigger Node:** Support sheet names with non-latin
characters ([#6970](https://github.com/n8n-io/n8n/issues/6970))
([052dd7c](052dd7cc9d))
* **GraphQL Node:** Improve error handling
([#6955](https://github.com/n8n-io/n8n/issues/6955))
([41db637](41db6371f0))
* **Mautic Node:** Fix issue with owner not being set correctly
([#6991](https://github.com/n8n-io/n8n/issues/6991))
([64b950f](64b950f294))
* **Salesforce Node:** Fix Account update owner operation
([#6958](https://github.com/n8n-io/n8n/issues/6958))
([9b27878](9b27878d8f))
* **Shopify Node:** Fix pagination when using options
([#6972](https://github.com/n8n-io/n8n/issues/6972))
([475d9c9](475d9c98e8))
* **Webhook Node:** Backward compatible form-data parsing for non-array
fields ([#6967](https://github.com/n8n-io/n8n/issues/6967))
([9455bcf](9455bcfef5))


### Features

* **core:** Add a warning to error workflows that cannot be started due
to permission or settings
([#6961](https://github.com/n8n-io/n8n/issues/6961))
([67b88f7](67b88f75f4))
* **core:** Add support for ready hooks, and credentials overwrite
endpoint in workers ([#6954](https://github.com/n8n-io/n8n/issues/6954))
([8f8a1de](8f8a1de3dd))
* **editor:** Show banner for non-production licenses
([#6943](https://github.com/n8n-io/n8n/issues/6943))
([413570c](413570c49d))
* Remove PostHog event calls
([#6915](https://github.com/n8n-io/n8n/issues/6915))
([270946a](270946a93b))
* **Send Email Node:** Add support for sending text and html email
simultaneously ([#6978](https://github.com/n8n-io/n8n/issues/6978))
([3860d41](3860d41d73))

Co-authored-by: krynble <krynble@users.noreply.github.com>
2023-08-23 15:41:49 +02:00
Iván Ovejero 2d1d638654
ci: Remove --report-unused-disable-directives to speed up CI (#6988)
https://n8nio.slack.com/archives/C03MZF137FV/p1692610341832309
2023-08-22 13:42:05 +02:00
Michael Auerswald b6a00febbd
fix(core): Replace throw with warning when deactivating a non-active workflow (#6969)
Replaces a throw with a warning message instead, since the failure in
question is not serious enough to warrant stopping the application.
2023-08-18 14:04:49 +02:00
कारतोफ्फेलस्क्रिप्ट™ 0913e0dbd3 Merge tag 'n8n@1.3.0' 2023-08-16 18:36:01 +02:00
github-actions[bot] f86d9a4b34
🚀 Release 1.3.0 (#6945)
# [1.3.0](https://github.com/n8n-io/n8n/compare/n8n@1.2.0...n8n@1.3.0)
(2023-08-16)


### Bug Fixes

* **core:** Don't let bull override the default redis config
([#6897](https://github.com/n8n-io/n8n/issues/6897))
([cfeb322](cfeb322b3b))
* **core:** Fix fetching of EE executions
([#6901](https://github.com/n8n-io/n8n/issues/6901))
([f3fce48](f3fce48155))
* **core:** Update frontend urls when using the `--tunnel` option
([#6898](https://github.com/n8n-io/n8n/issues/6898))
([718e613](718e61354d))
* **editor:** Disable telemetry in dev mode and in E2E tests
([#6869](https://github.com/n8n-io/n8n/issues/6869))
([808a928](808a92809e))
* **editor:** Fix code node’s content property to be reactive
([#6931](https://github.com/n8n-io/n8n/issues/6931))
([3b75bc6](3b75bc6bc1))
* **editor:** Fix event emit on credential sharing
([#6922](https://github.com/n8n-io/n8n/issues/6922))
([297c3c9](297c3c91f2))
* **editor:** Fix multiOptions parameters resetting on initial load
([#6903](https://github.com/n8n-io/n8n/issues/6903))
([49867c2](49867c2b17))
* **editor:** Update execution view layout
([#6882](https://github.com/n8n-io/n8n/issues/6882))
([0339732](0339732378))
* **Email Trigger (IMAP) Node:** Fix connection issue with unexpected
spaces in host ([#6886](https://github.com/n8n-io/n8n/issues/6886))
([f3248e4](f3248e46e4))
* Fix issue with key formatting if null or undefined
([#6924](https://github.com/n8n-io/n8n/issues/6924))
([4e4a3cf](4e4a3cf7ab))
* Fix issue with key formatting introduced in 1.2.0
([#6896](https://github.com/n8n-io/n8n/issues/6896))
([0e075c9](0e075c9cb5))
* Fix lag when node parameters are updated
([#6941](https://github.com/n8n-io/n8n/issues/6941))
([3eb65e0](3eb65e08c4))
* **HTTP Request Node:** Improve error handling for TCP socket errors
when `Continue On Fail` is enabled
([#6925](https://github.com/n8n-io/n8n/issues/6925))
([96ff1f8](96ff1f847d))
* Prevent workflow breaking when credential type is unknown
([#6923](https://github.com/n8n-io/n8n/issues/6923))
([e83b93f](e83b93f293))
* **Respond to Webhook Node:** Return headers in response
([#6921](https://github.com/n8n-io/n8n/issues/6921))
([a82107f](a82107fb05))


### Features

* **core:** Add support for not requiring SMTP auth with user management
([#3742](https://github.com/n8n-io/n8n/issues/3742))
([eead6d4](eead6d49f2))
* **core:** Descriptive message for common nodeJS errors
([#6841](https://github.com/n8n-io/n8n/issues/6841))
([3adb0b6](3adb0b66ea))
* **editor:** Ask AI in Code node
([#6672](https://github.com/n8n-io/n8n/issues/6672))
([fde6ad1](fde6ad1e7f))
* Enable parallel processing on multiple queue nodes
([#6295](https://github.com/n8n-io/n8n/issues/6295))
([44afcff](44afcff959))

Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-08-16 16:55:05 +02:00
Iván Ovejero d4fac0527b
fix(core): Fix continueOnFail for expression error in Set (#6939)
* fix(core): Fix `continueOnFail` for expression error in Set

* Add story
2023-08-16 16:14:41 +02:00
कारतोफ्फेलस्क्रिप्ट™ 96ff1f847d
fix(HTTP Request Node): Improve error handling for TCP socket errors when Continue On Fail is enabled (#6925) 2023-08-14 17:26:40 +02:00
github-actions[bot] eda34a7ae7
🚀 Release 1.2.0 (#6891)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-08-09 14:10:24 +02:00
Michael Kret 5ab30fdd95
fix(core): OAuth1 authentication fix for Clever Cloud API (#6847) 2023-08-04 19:49:00 +03:00
कारतोफ्फेलस्क्रिप्ट™ 34df8b6238
refactor: Consolidate tsconfig and eslintrc files (no-changelog) (#6816)
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2023-08-01 17:32:43 +02:00
Michael Kret f6bf9e9887
fix(core): Restrict read/write file paths access (#6582) 2023-07-31 15:20:39 +03:00
Iván Ovejero 72523462ea
refactor: Clear unused ESLint directives from BE packages (no-changelog) (#6798) 2023-07-31 11:00:48 +02:00
कारतोफ्फेलस्क्रिप्ट™ 6fb8a9ee39
ci: Fix linting issues (no-changelog) (#6788)
* ci: Fix linting (no-changelog)

* lintfix for nodes-base as well
2023-07-28 18:28:17 +02:00
कारतोफ्फेलस्क्रिप्ट™ feac369f6c
fix(core): Allow ignoring SSL issues on generic oauth2 credentials (#6702) 2023-07-26 17:56:59 +02:00
github-actions[bot] 2f3086c8cb
🚀 Release 1.1.0 (#6746)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-07-26 11:55:53 +02:00
कारतोफ्फेलस्क्रिप्ट™ cd0e41a6b4
feat(Google Cloud Storage Node): Use streaming for file uploads (#6462)
fix(Google Cloud Storage Node): Use streaming for file uploads
2023-07-19 12:54:31 +02:00
Iván Ovejero 3566c13afc
feat: Allow eslint-config to be externally consumable (#6694)
* feat: Allow `eslint-config` to be externally consumable

* refactor: Adjust import styles
2023-07-19 09:35:10 +02:00
कारतोफ्फेलस्क्रिप्ट™ 0a31b8e2b4
feat(Read PDF Node): Replace pdf-parse with pdfjs, and add support for streaming and encrypted PDFs (#6640) 2023-07-18 20:07:29 +02:00
कारतोफ्फेलस्क्रिप्ट™ f4a18ba87d
refactor(core): Refactor WorkflowStatistics code (no-changelog) (#6617)
refactor(core): Refactor WorkflowStatistics code
2023-07-18 11:28:24 +02:00
कारतोफ्फेलस्क्रिप्ट™ e57e85edf7
refactor: Delete unnecessary interface re-exports from core, and delete unused code in nodes-base (no-changelog) (#6631) 2023-07-12 11:15:38 +02:00
कारतोफ्फेलस्क्रिप्ट™ 329d22f5d1
fix(core): Reduce memory consumption on BinaryDataManager.init (#6633)
fix(core): Reduce memory consumption on BinaryDataManager.init

When there are a few thousand binary data file to delete, the `deleteMarkedFiles` and `deleteMarkedPersistedFiles` methods need a lot of memory to process these files, irrespective of if these files have any data or not.
2023-07-12 10:08:29 +02:00
कारतोफ्फेलस्क्रिप्ट™ 07744986ea
fix(core): Fix credentials lazy-loading (no-changelog) (#6615) 2023-07-10 17:57:26 +02:00
OlegIvaniv aa53c46367
feat(Slack Node): Add option to include link to workflow in Slack node (#6611)
* feat(Slack Node): Add “automated by” message to Slack node’s post message

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* Pass instanceBaseUrl to node context

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* Move `includeLinkToWorkflow` to options

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

* keep "includeLinkToWorkflow" hidden

* Only append the message for version 2.1 and up

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>

---------

Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-07-10 15:03:21 +02:00
कारतोफ्फेलस्क्रिप्ट™ bf351243df
fix(Code Node): Install python modules always in a user-writable folder (#6568)
* upgrade pyodide

* install pyodide modules to a custom user-writable path

* in `augmentObject` `newData` is never undefined
2023-07-07 16:43:45 +02:00
github-actions[bot] b47ee52fb3
🚀 Release 1.0.1 (#6606)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-07-05 19:16:05 +02:00
कारतोफ्फेलस्क्रिप्ट™ d97edbcffa
fix(core): Make node execution order configurable, and backward-compatible (#6507)
* fix(core): Make node execution order configurable, and backward-compatible

*  Also add new Merge-Node behaviour

*  Fix typo

* Fix lint issue

* update labels

* rename legacy to v0

* remove the unnecessary log

* default all new workflows to use v1 execution-order

* remove the controller changes

* clone default settings to avoid it getting modified

---------

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-07-05 18:47:34 +02:00
github-actions[bot] ca588ed66a
🚀 Release 1.0.0 (#6553)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-27 16:47:42 +02:00
Jan Oberhauser b8458a53f6
feat(core)!: Change data processing for multi-input-nodes (#4238)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-23 12:07:52 +02:00
कारतोफ्फेलस्क्रिप्ट™ 9194d8bb0e
refactor: Remove executeSingle (no-changelog) (#4853) 2023-06-23 10:50:08 +02:00
Jan Oberhauser 0287d5becd feat(core): Change node execution order (most top-left one first) (#6246)
* feat(core): Change node execution order (most top-left one first)

*  Fix issue with multi-output-nodes

*  Remove not needed meta-entry in test

* fix the e2e test

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 21:11:29 +02:00
Omar Ajoue 632ea275b7 refactor: Removal of request lib from the code (#6413)
* refactor: Removal of request lib from the code
2023-06-22 21:05:04 +02:00
Iván Ovejero 1197811a1e fix(core)!: Allow syntax errors and expression errors to fail executions (#6352)
* fix: Unify expression error behavior for v1

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

* fix: Make `isFrontend` a constant

* fix: Use CommonJS require to read version

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

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

* make wf name a link in exec view

* link color

* make wf name a link in exec view

* link color

---------

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

* fix: Try restoring inclusions in tsconfig files

* fix: Try with copy

* refactor: Switch base branch and remove global toggle

* chore: Remove unrelated changes

* chore: Restore lockfile

* fix: Ensure all expression errors fail executions

* uncaught ExpressionErrors should not fail e2e tests

---------

Co-authored-by: romainminaud <romain.minaud@gmail.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 21:04:59 +02:00
github-actions[bot] f32d5f637e
🚀 Release 0.234.0 (#6509)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-06-22 09:58:30 +02:00
agobrech fc7261aca6
feat(core): Add PKCE for OAuth2 (#6324)
* Remove authorization header when empty

* Import pkce

* Add OAuth2 with new grant type to Twitter

* Add pkce logic auto assign authorization code if pkce not defined

* Add pkce to ui and interfaces

* Fix scopes for Oauth2 twitter

* Deubg + pass it through header

* Add debug console, add airtable cred

* Remove all console.logs, make PKCE in th body only when it exists

* Remove invalid character ~

* Remove more console.logs

* remove body inside query

* Remove useless grantype check

* Hide oauth2 twitter waiting for overhaul

* Remove redundant header removal

* Remove more console.logs

* Add comment for code verifier

* Remove uneeded scopes

* Restore client id in callback

* Revert "Add OAuth2 with new grant type to Twitter"

This reverts commit 1c3b331aa1.

* Remove oauth2 from twitter

* Remove properties linked to oauth2

* Fix lodash imports

* remove redundant check

* remove redundant codeVerifier

* patch pkce-challenge to avoid generating `code_verifier` with `~`

* store `codeVerifier` on the DB like `csrfSecret`

* remove unrelated changes

---------

Co-authored-by: Marcus <marcus@n8n.io>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-21 10:54:32 +02:00
Jan Oberhauser 4b0e0b7970
fix(core): Fix pairedItem for alwaysOutputData & multi identical resolve (#6405) 2023-06-21 10:38:28 +03:00
कारतोफ्फेलस्क्रिप्ट™ 1b084bc56b
fix(core): Improve the error returned to users on SSL issues (#6494) 2023-06-20 17:54:05 +02:00
कारतोफ्फेलस्क्रिप्ट™ 7a95e08bfd
fix(HTTP Request Node): "Ignore SSL issues" should also ignore legacy renegotiation issues (#6492) 2023-06-20 17:38:37 +02:00
कारतोफ्फेलस्क्रिप्ट™ 6ccab3eaaa
feat(Webhook Node): Stream binary response in lastNode.firstEntryBinary mode (#6463) 2023-06-19 13:54:56 +02:00
Jon e0f109fa7e
feat: Add support for large files with declarative nodes (#6461) 2023-06-19 08:41:16 +01:00
Chris Wu 1111c915f2
refactor(core): Replace lodash's "soft-deprecated" individual packages with lodash to resolve CVE (no-changelog) (#6450)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-16 16:26:35 +02:00
github-actions[bot] 93a8236155
🚀 Release 0.233.0 (#6428)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-06-14 16:28:08 +02:00
github-actions[bot] 72448229d7
🚀 Release 0.232.0 (#6399)
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-06-07 15:29:04 +03:00
github-actions[bot] 3e2eb15a9d
🚀 Release 0.231.0 (#6344)
* 🚀 Release 0.231.0

* Update CHANGELOG.md

---------

Co-authored-by: krynble <krynble@users.noreply.github.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-05-31 13:55:26 +02:00
Milorad FIlipović 04cfa548af
feat(editor): Implement Resource Mapper component (#6207)
*  scaffolding
*  finished scaffolding
*  renamed types
*  updated subtitle
*  renamed functions file, UI updates
*  query parameters fixes, ui updates, refactoring
*  fixes for credentials test, setup for error parsing
*  rlc for schema and table, error handling tweaks
*  delete operation, new options
*  columns loader
*  linter fixes
*  where clauses setup
*  logic for processing where clauses
*  select operation
*  refactoring
*  data mode for insert and update, wip
*  data mapping, insert update, skip on conflict option
*  select columns with spaces fix
*  update operation update, wip
*  finished update operation
*  upsert operation
*  ui fixes
* Copy updates.
* Copy updates.
*  option to convert empty strings to nulls, schema checks
*  UI requested updates
*  ssh setup WIP
*  fixes, ssh WIP
*  ssh fixes, credentials
*  credentials testing update
*  uncaught error fix
*  clean up
*  address in use fix
*  improved error message
*  tests setup
*  unit tests wip
*  config files clean up
*  utils unit tests
*  refactoring
*  setup for testing operations, tests for deleteTable operation
*  executeQuery and insert operations tests
*  select, update, upsert operations tests
*  runQueries tests setup
*  hint to query
* Copy updates.
*  ui fixes
*  clean up
*  error message update
*  ui update
* Minor tweaks to query params decription.
* feat(Google Sheets Node): Implement Resource mapper in Google Sheets node (#5752)
*  Added initial resource mapping support in google sheets node
*  Wired mapping API endpoint with node-specific logic for fetching mapping fields
*  Implementing mapping fields logic for google sheets
*  Updating Google Sheets execute methods to support resource mapper fields
* 🚧 Added initial version of `ResourceLocator` component
* 👌 Added `update` mode to resource mapper modes
* 👌 Addressing PR feedback
* 👌 Removing leftover const reference
* 👕 Fixing lint errors
*  singlton for conections
*  credentials test fix, clean up
* feat(Postgres Node): Add resource mapper to new version of Postgres node (#5814)
*  scaffolding
*  finished scaffolding
*  renamed types
*  updated subtitle
*  renamed functions file, UI updates
*  query parameters fixes, ui updates, refactoring
*  fixes for credentials test, setup for error parsing
*  rlc for schema and table, error handling tweaks
*  delete operation, new options
*  columns loader
*  linter fixes
*  where clauses setup
*  logic for processing where clauses
*  select operation
*  refactoring
*  data mode for insert and update, wip
*  data mapping, insert update, skip on conflict option
*  select columns with spaces fix
*  update operation update, wip
*  finished update operation
*  upsert operation
*  ui fixes
* Copy updates.
* Copy updates.
*  option to convert empty strings to nulls, schema checks
*  UI requested updates
*  ssh setup WIP
*  fixes, ssh WIP
*  ssh fixes, credentials
*  credentials testing update
*  uncaught error fix
*  clean up
*  address in use fix
*  improved error message
*  tests setup
*  unit tests wip
*  config files clean up
*  utils unit tests
*  refactoring
*  setup for testing operations, tests for deleteTable operation
*  executeQuery and insert operations tests
*  select, update, upsert operations tests
*  runQueries tests setup
*  hint to query
* Copy updates.
*  ui fixes
*  clean up
*  error message update
*  ui update
* Minor tweaks to query params decription.
*  Updated Postgres node to use resource mapper component
*  Implemented postgres <-> resource mapper type mapping
*  Updated Postgres node execution to use resource mapper fields in v3
* 🔥 Removing unused import
---------
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>

* feat(core): Resource editor componend P0 (#5970)
*  Added inital value of mapping mode dropdown
*  Finished mapping mode selector
*  Finished implementing mapping mode selector
*  Implemented 'Columns to match on' dropdown
*  Implemented `loadOptionsDependOn` support in resource mapper
*  Implemented initial version of mapping fields
*  Implementing dependant fields watcher in new component setup
*  Generating correct resource mapper field types. Added `supportAutoMap` to node specification and UI. Not showing fields with `display=false`. Pre-selecting matching columns if it's the only one
*  Handling matching columns correctly in UI
*  Saving and loading resourceMapper values in component
*  Implemented proper data saving and loading
*  ResourceMapper component refactor, fixing value save/load
*  Refactoring MatchingColumnSelect component. Updating Sheets node to use single key match and Postgres to use multi key
*  Updated Google Sheets node to work with the new UI
*  Updating Postgres Node to work with new UI
*  Additional loading indicator that shown if there is no mapping mode selector
*  Removing hard-coded values, fixing matching columns ordering, refactoring
*  Updating field names in nodes
*  Fixing minor UI issues
*  Implemented matching fields filter logic
*  Moving loading label outside of fields list
*  Added initial unit tests for resource mapper
*  Finished default rendering test
*  Test refactoring
*  Finished unit tests
* 🔨 Updating the way i18n is used in resource mapper components
* ✔️ Fixing value to match on logic for postgres node
*  Hiding mapping fields when auto-map mode is selected
*  Syncing selected mapping mode between components
*  Fixing dateTime input rendering and adding update check to Postgres node
*  Properly handling database connections. Sending null for empty string values.
* 💄 Updated wording in the error message for non-existing rows
*  Fixing issues with selected matching values
* ✔️ Updating unit tests after matching logic update
*  Updating matching columns when new fields are loaded
*  Defaulting to null for empty parameter values
*  Allowing zero as valid value for number imputs
*  Updated list of types that use datepicker as widger
*  Using text inputs for time types
*  Initial mapping field rework
*  Added new component for mapping fields, moved bit of logic from root component to matching selector, fixing some lint errors
*  Added tooltip for columns that cannot be deleted
*  Saving deleted values in parameter value
*  Implemented control to add/remove mapping fields
*  Syncing field list with add field dropdown when changing dependent values
*  Not showing removed fields in matching columns selector. Updating wording in matching columns selector description
*  Implementing disabled states for add/remove all fields options
*  Saving removed columns separately, updating copy
*  Implemented resource mapper values validation
*  Updated validation logic and error input styling
*  Validating resource mapper fields when new nodes are added
*  Using node field words in validation, refactoring resource mapper component
*  Implemented schema syncing and add/remove all fields
*  Implemented custom parameter actions
*  Implemented loading indicator in parameter options
* 🔨 Removing unnecessary constants and vue props
*  Handling default values properly
*  Fixing validation logic
* 👕 Fixing lint errors
*  Fixing type issues
*  Not showing fields by default if `addAllFields` is set to `false`
*  Implemented field type validation in resource mapper
*  Updated casing in copy, removed all/remove all option from bottom menu
*  Added auto mapping mode notice
*  Added support for more types in validation
*  Added support for enumerated values
*  Fixing imports after merging
*  Not showing removed fields in matching columns selector. Refactoring validation logic.
* 👕 Fixing imports
* ✔️ Updating unit tests
*  Added resource mapper schema tests
*  Removing `match` from resource mapper field definition, fixing matching columns loading
*  Fixed schema merging
*  update operation return data fix
*  review
* 🐛 Added missing import
* 💄 Updating parameter actions icon based on the ui review
* 💄 Updating word capitalisation in tooltips
* 💄 Added empty state to mapping fields list
* 💄 Removing asterisk from fields, updating tooltips for matching fields
*  Preventing matching fields from being removed by 'Remove All option'
*  Not showing hidden fields in the `Add field` dropdown
*  Added support for custom matching columns labels
*  query optimization
*  fix
*  Optimizing Postgres node enumeration logic
*  Added empty state for matching columns
*  Only fully loading fields if there is no schema fetched
*  Hiding mapping fields if there is no matching columns available in the schema
* ✔️ Fixing minor issues
*  Implemented runtime type validation
* 🔨 Refactoring validation logic
*  Implemented required check, added more custom messages
*  Skipping boolean type in required check
* Type check improvements
*  Only reloading fields if dependent values actually change
*  Adding item index to validation error title
*  Updating Postgres fetching logic, using resource mapper mode to determine if a field can be deleted
*  Resetting field values when adding them via the addAll option
*  Using minor version (2.2) for new Postgres node
*  Implemented proper date validation and type casting
* 👕 Consolidating typing
*  Added unit tests for type validations
* 👌 Addressing front-end review comments
*  More refactoring to address review changes
*  Updating leftover props
*  Added fallback for ISO dates with invalid timezones
* Added timestamp to datetime test cases
*  Reseting matching columns if operation changes
*  Not forcing auto-increment fields to be filled in in Postgres node. Handling null values
* 💄 Added a custom message for invalid dates
*  Better handling of JSON values
*  Updating codemirror readonly stauts based on component property, handling objects in json validation
* Deleting leftover console.log
*  Better time validation
*  Fixing build error after merging
* 👕 Fixing lint error
*  Updating node configuration values
*  Handling postgres arrays better
*  Handling SQL array syntax
*  Updating time validation rules to include timezone
*  Sending expressions that resolve to `null` or `undefined` by the resource mapper to delete cell content in Google Sheets
*  Allowing removed fields to be selected for match
*  Updated the query for fetching unique columns and primary keys
*  Optimizing the unique query
*  Setting timezone to all parsed dates
*  Addressing PR review feedback
*  Configuring Sheets node for production, minor vue component update
* New cases added to the TypeValidation test.
*  Tweaking validation rules for arrays/objects and updating test cases
---------
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
2023-05-31 11:56:09 +02:00
github-actions[bot] eb008395f1
🚀 Release 0.230.0 (#6310)
* 🚀 Release 0.230.0

* Update CHANGELOG.md

---------

Co-authored-by: maspio <maspio@users.noreply.github.com>
Co-authored-by: Marcus <56945030+maspio@users.noreply.github.com>
2023-05-24 13:42:39 +02:00
कारतोफ्फेलस्क्रिप्ट™ a1b1f24ddf
feat(core): Replace client-oauth2 with an in-repo package (#6266)
Co-authored-by: Marcus <marcus@n8n.io>
2023-05-17 16:40:53 +02:00
github-actions[bot] 16fade7d41
🚀 Release 0.229.0 (#6267)
* 🚀 Release 0.229.0

* Update CHANGELOG.md

---------

Co-authored-by: csuermann <csuermann@users.noreply.github.com>
Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
2023-05-17 13:35:26 +02:00
कारतोफ्फेलस्क्रिप्ट™ b7d30f3eab
fix: Revert "Replace client-oauth2 with an in-repo package" (no-changelog) (#6265)
Revert "feat(core): Replace client-oauth2 with an in-repo package (#6056)"

This reverts commit 77ac953eaf.
2023-05-17 10:53:03 +02:00
कारतोफ्फेलस्क्रिप्ट™ 77ac953eaf
feat(core): Replace client-oauth2 with an in-repo package (#6056)
Co-authored-by: Marcus <marcus@n8n.io>
2023-05-16 16:31:11 +02:00
कारतोफ्फेलस्क्रिप्ट™ a4c0cc9b5c
feat(core): Reduce the number of events sent to Sentry (#6235) 2023-05-15 15:54:48 +02:00
Omar Ajoue 8402c0f400
fix: Prevent type error messages for manual executions (no-changelog) (#6229)
* fix: Prevent type error messages for manual executions (no-changelog)

* Update packages/core/src/WorkflowExecute.ts

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
2023-05-11 16:48:44 +02:00
github-actions[bot] d5c74bd2b4
🚀 Release 0.228.0 (#6219)
* 🚀 Release 0.228.0

* Update CHANGELOG.md

---------

Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-05-11 11:50:17 +02:00
कारतोफ्फेलस्क्रिप्ट™ f3bc6f19b6
feat: Create NPM node (#6177) 2023-05-10 12:37:26 +02:00
github-actions[bot] 2926fb50db
🚀 Release 0.227.0 (#6167)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-05-03 15:39:00 +02:00
Michael Auerswald 839a56a682
fix(core): Fix canceled execution status (#6142) 2023-05-02 10:37:35 +02:00
Iván Ovejero 06fa6f1fb3
ci: Expand ESLint to tests in BE packages (no-changelog) (#6147)
* 🔧 Adjust base ESLint config

* 🔧 Adjust `lint` and `lintfix` in `nodes-base`

* 🔧 Include `test` and `utils` in `nodes-base`

* 📘 Convert JS tests to TS

* 👕 Apply lintfixes
2023-05-02 10:37:19 +02:00
कारतोफ्फेलस्क्रिप्ट™ a3aba835a1
fix(core): Avoid using Object.keys on Buffer and other non-plain objects (#6131)
* create a unified way to check if an object is empty

* avoid running `Object.keys` on Buffer objects, to avoid unnecessary memory usage
2023-04-28 13:05:48 +02:00
github-actions[bot] 4f56194035
🚀 Release 0.226.0 (#6087) 2023-04-26 16:05:03 +02:00
कारतोफ्फेलस्क्रिप्ट™ 124f41faa6
ci: Fix linting error on master (no-changelog) (#6075) 2023-04-24 16:19:20 +02:00
कारतोफ्फेलस्क्रिप्ट™ 308a94311f
refactor: Async functions don't need to explicitly return promises (no-changelog) (#6041) 2023-04-24 13:17:08 +02:00
Iván Ovejero 57aab63c10
refactor: Integrate consistent-type-imports in FE packages (no-changelog) (#6060)
* 👕 Move `consistent-type-imports` to top level

* 👕 Apply lintfixes

* 👕 Apply more lintfixes

* 👕 More lintfixes

* 👕 More lintfixes
2023-04-24 12:18:24 +02:00
Jan Oberhauser 589f19e1ee
docs: Add proprietary license text (no-changelog) (#6038) 2023-04-20 18:49:09 +02:00
Iván Ovejero 9b651cf4f8
refactor: Accumulate loadOptions from all node versions to validate (no-changelog) (#6014)
 Accumulate loadOptions from node versions to validate
2023-04-20 16:21:07 +02:00
Jan Oberhauser c291ef5dae Merge tag 'n8n@0.225.0' 2023-04-19 14:29:23 +02:00
github-actions[bot] 053a5bfa27
🚀 Release 0.225.0 (#6012) 2023-04-19 14:10:37 +02:00
Jan Oberhauser 62f993c84f
feat(core): Add support for digestAuth to httpRequest and declarative style (#5676)
feat(core): Add support to digestAuth to httpRequest and declarative style
2023-04-19 13:44:41 +02:00
Val 1bb987140a
feat: Add variables feature (#5602)
* feat: add variables db models and migrations

* feat: variables api endpoints

* feat: add $variables to expressions

* test: fix ActiveWorkflowRunner tests failing

* test: a different fix for the tests broken by $variables

* feat: variables licensing

* fix: could create one extra variable than licensed for

* feat: Add Variables UI page and $vars global property (#5750)

* feat: add support for row slot to datatable

* feat: add variables create, read, update, delete

* feat: add vars autocomplete

* chore: remove alert

* feat: add variables autocomplete for code and expressions

* feat: add tests for variable components

* feat: add variables search and sort

* test: update tests for variables view

* chore: fix test and linting issue

* refactor: review changes

* feat: add variable creation telemetry

* fix: Improve variables listing and disabled case, fix resource sorting (no-changelog) (#5903)

* fix: Improve variables disabled experience and fix sorting

* fix: update action box margin

* test: update tests for variables row and datatable

* fix: Add ee controller to base controller

* fix: variables.ee routes not being added

* feat: add variables validation

* fix: fix vue-fragment bug that breaks everything

* chore: Update lock

* feat: Add variables input validation and permissions (no-changelog) (#5910)

* feat: add input validation

* feat: handle variables view for non-instance-owner users

* test: update variables tests

* fix: fix data-testid pattern

* feat: improve overflow styles

* test: fix variables row snapshot

* feat: update sorting to take newly created variables into account

* fix: fix list layout overflow

* fix: fix adding variables on page other than 1. fix validation

* feat: add docs link

* fix: fix default displayName function for resource-list-layout

* feat: improve vars expressions ux, cm-tooltip

* test: fix datatable test

* feat: add MATCH_REGEX validation rule

* fix: overhaul how datatable pagination selector works

* feat: update  completer description

* fix: conditionally update usage syntax based on key validation

* test: update datatable snapshot

* fix: fix variables-row button margins

* fix: fix pagination overflow

* test: Fix broken test

* test: Update snapshot

* fix: Remove duplicate declaration

* feat: add custom variables icon

---------

Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-04-18 12:41:55 +02:00
कारतोफ्फेलस्क्रिप्ट™ c42820e82e
fix(core): Make getExecutionId available on all nodes types (#5990)
fixes https://community.n8n.io/t/this-getexecutionid-in-custom-node-development-not-available-anymore/25259/1
2023-04-17 10:11:26 +02:00
Filipe Dobreira 18d5156994
fix(IF Node): Fix typo in combine description (no-changelog) (#5964) 2023-04-14 13:22:41 +01:00
Jan Oberhauser 303521a0e2 Merge tag 'n8n@0.224.0' 2023-04-12 17:16:26 +02:00
Iván Ovejero 5227ccd75a
ci: Validate load options methods in nodes-base (no-changelog) (#5862) 2023-04-12 15:46:11 +02:00
github-actions[bot] 492496fca4
🚀 Release 0.224.0 (#5957) 2023-04-12 15:44:10 +02:00
कारतोफ्फेलस्क्रिप्ट™ e79679c023
fix(HTTP Request Node): Show detailed error message in the UI again (#5959) 2023-04-12 14:58:05 +02:00
Val 323e26acfd
fix(core): Validate customData keys and values (#5920) (no-changelog)
* fix(core): Validate customData keys and values

Throws errors in manual mode and ignores and logs values in production

* fix: validate customData key characters

* refactor: review changes

* fix: logger not initialised for metadata tests

* fix: allow numbers for values
2023-04-12 09:18:26 +01:00
कारतोफ्फेलस्क्रिप्ट™ 6689451e8c
fix(core): Do not execute workflowExecuteBefore hook when resuming executions from a waiting state (#5727) 2023-04-06 10:18:19 +02:00
github-actions[bot] 9e600d0f90
🚀 Release 0.223.0 (#5886) 2023-04-05 16:18:00 +02:00
agobrech 33c67f45ba
fix(HTTP Request Node): Refresh token properly on never fail option (#5861)
* Add handle for simple request options and refresh token

* Remove console.logs

* Add safe check for full response
2023-04-05 15:27:04 +02:00
github-actions[bot] 64fa80fe8a
🚀 Release 0.222.1 (#5897) 2023-04-04 15:36:08 +02:00
कारतोफ्फेलस्क्रिप्ट™ 0be129254e fix(HTTP Request Node): Detect mime-type from streaming responses (#5896) 2023-04-04 10:17:15 +02:00
Jan Oberhauser f0a51a0b76 fix(core): Improve axios error handling in nodes (#5891) 2023-04-04 10:17:11 +02:00
github-actions[bot] e92a993694
🚀 Release 0.222.0 (#5786) 2023-03-30 14:53:19 +02:00
Csaba Tuncsik d78a41db54
feat: Execution custom data saving and filtering (#5496)
* wip: workflow execution filtering

* fix: import type failing to build

* fix: remove console.logs

* feat: execution metadata migrations

* fix(editor): Move global executions filter to its own component

* fix(editor): Using the same filter component in workflow level

* fix(editor): a small housekeeping

* checking workflowId in filter applied

* fix(editor): update filter after resolving merge conflicts

* fix(editor): unify empy filter status

* feat(editor): add datetime picker to filter

* feat(editor): add meta fields

* fix: fix button override in datepicker panel

* feat(editor): add filter metadata

* feat(core): add 'startedBefore' execution filter prop

* feat(core): add 'tags' execution query filter

* Revert "feat(core): add 'tags' execution query filter"

This reverts commit a7b968081c.

* feat(editor): add translations and tooltip and counting selected filter props

* fix(editor): fix label layouts

* fix(editor): update custom data docs link

* fix(editor): update custom data tooltip position

* fix(editor): update tooltip text

* refactor: Ignore metadata if not enabled by license

* fix(editor): Add paywall states to advanced execution filter

* refactor: Save custom data also for worker mode

* fix: Remove duplicate migration name from list

* fix(editor): Reducing filter complexity and add debounce to text inputs

* fix(editor): Remove unused import, add comment

* fix(editor): simplify event listener

* fix: Prevent error when there are running executions

* test(editor): Add advanced execution filter basic unit test

* test(editor): Add advanced execution filter state change unit test

* fix: Small lint issue

* feat: Add indices to speed up queries

* feat: add customData limits

* refactor: put metadata save in transaction

* chore: remove unneed comment

* test: add tests for execution metadata

* fix(editor): Fixes after merge conflict

* fix(editor): Remove unused import

* wordings and ui fixes

* fix(editor): type fixes

* feat: add code node autocompletions for customData

* fix: Prevent transaction issues and ambiguous ID in sql clauses

* fix(editor): Suppress requesting current executions if metadata is used in filter (#5739)

* fix(editor): Suppress requesting current executions if metadata is used in filter

* fix(editor): Fix arrows for select in popover

* refactor: Improve performance by correcting database indices

* fix: Lint issue

* test: Fix broken test

* fix: Broken test

* test: add call data check for saveExecutionMetadata test

---------

Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
2023-03-23 18:07:46 +01:00
Jan Oberhauser 15412b2b2b Merge tag 'n8n@0.221.0' 2023-03-23 16:08:56 +01:00
github-actions[bot] 5dd92c6b94
🚀 Release 0.221.0 (#5726) 2023-03-23 15:37:49 +01:00
कारतोफ्फेलस्क्रिप्ट™ b0cfd69f2b
fix(core): Setup nodeHelpers that aren't exposed in the code sandbox (no-changelog) (#5753) 2023-03-23 15:11:18 +01:00
कारतोफ्फेलस्क्रिप्ट™ 38e91ab730
refactor(core): Stop importing LoggerProxy and createDeferredPromise in nodes-base (no-changelog) (#5742)
* refactor(core): Stop importing LoggerProxy in nodes-base

* refactor(core): Stop importing createDeferredPromise in nodes-base
2023-03-22 14:04:15 +01:00
agobrech 33d9784319
fix(core): Improve axios error handling in nodes (#5699)
* fix(core): Improve axios error handling in nodes

* handle axios errors without a response (like when connection fails)

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-20 17:34:14 +01:00
github-actions[bot] ca91d2b712
🚀 Release 0.220.0 (#5704) 2023-03-16 14:49:21 +01:00
Jan Oberhauser dd93c0890b Merge tag 'n8n@0.219.0' 2023-03-09 18:38:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7a4e9ef5fa
refactor: Remove n8n-core dependency in nodes-base (no-changelog) (#5649) 2023-03-09 18:13:15 +01:00
github-actions[bot] 40a6ab814d
🚀 Release 0.219.0 (#5659) 2023-03-09 18:04:39 +01:00
agobrech 5790e5e719
fix(core): Fix trying to pipe a non stream on errors (no-changelog) (#5660) 2023-03-09 17:48:33 +01:00
agobrech ce0d9d2bed
feat(HTTP Request Node): Move from Binary Buffer to Binary streaming (#5610)
*  Change from binary buffer to binary streaming

* Remove console.logs

* Import Readable from the correct lib

* stream response

* parametersToKeyValue doesn't need to be async anymore

* Fix bodyParameter reduce method

* parametersToKeyValue doesn't need to be async anymore

* handle streaming responses

* send `Content-Length` and `Content-Type` on binary requests

* Add new helper function for binary data

* Add binary function to helpers interface

* Fix bug in error handler

* Fix issue with wrongfully assigned headers to body

* Fix test workflow

* Remove console.logs

* Remove unnecsessary type

* Remove concat dependency already imported in workflow package

* Update pnpm-lock file

* Small fixes, asyncronous error message

* reset the lockfile

* Remove buffer check and simplify error handling

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-09 15:38:54 +01:00
agobrech 0d49ad8b93
fix(core): Add a helper function to convert binary streams to buffers (no-changelog) (#5641) 2023-03-08 14:32:27 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5eb0d52459
refactor: Unify binary-data assertion across all nodes (no-changelog) (#5624) 2023-03-06 17:33:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4e244937c9
refactor: catch doesn't need to have a param (no-changelog) (#5614) 2023-03-03 18:18:49 +01:00
github-actions[bot] a91b631411
🚀 Release 0.218.0 (#5601)
* 🚀 Release 0.218.0

* Update Changelog

---------

Co-authored-by: janober <janober@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-03-02 17:32:52 +01:00
github-actions[bot] a72ef21817
🚀 Release 0.217.0 (#5553) 2023-02-23 18:21:17 +01:00
कारतोफ्फेलस्क्रिप्ट™ 52f740b9e8
refactor(core): Use an IoC container to manage singleton classes [Part-1] (no-changelog) (#5509)
* add typedi

* convert ActiveWorkflowRunner into an injectable service

* convert ExternalHooks into an injectable service

* convert InternalHooks into an injectable service

* convert LoadNodesAndCredentials into an injectable service

* convert NodeTypes and CredentialTypes into an injectable service

* convert ActiveExecutions into an injectable service

* convert WaitTracker into an injectable service

* convert Push into an injectable service

* convert ActiveWebhooks and  TestWebhooks into an injectable services

* handle circular references, and log errors when a circular dependency is found
2023-02-21 19:21:56 +01:00
Jan Oberhauser b44526cd49 Merge tag 'n8n@0.216.1' 2023-02-21 18:47:26 +01:00
github-actions[bot] 7400c35a48
🚀 Release 0.216.1 (#5531)
* 🚀 Release 0.216.1

* fix(core): Do not allow arbitrary path traversal in the credential-translation endpoint (#5522)

* fix(core): Do not allow arbitrary path traversal in BinaryDataManager (#5523)

* fix(core): User update endpoint should only allow updating email, firstName, and lastName (#5526)

* fix(core): Do not explicitly bypass auth on urls containing `.svg` (#5525)

* 📚 Update CHANGELOG.md

---------

Co-authored-by: janober <janober@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-02-21 14:24:02 +01:00
कारतोफ्फेलस्क्रिप्ट™ fe782c8f6a ci: Setup a semi-automated release process (no-changelog) (#5504)
* ci: Setup a semi-automated release process (no-changelog)

* create tag/release before deleting the temporary branch
2023-02-21 14:16:04 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3ae005cafe
ci: Setup a semi-automated release process (no-changelog) (#5504)
* ci: Setup a semi-automated release process (no-changelog)

* create tag/release before deleting the temporary branch
2023-02-21 14:04:35 +01:00
कारतोफ्फेलस्क्रिप्ट™ eef2574067
fix(core): Do not allow arbitrary path traversal in BinaryDataManager (#5523) 2023-02-21 11:21:17 +01:00
Michael Auerswald d143f3f2ec
feat(core): Add execution runData recovery and status field (#5112)
* adds ExecutionEvents view modal to ExecutionList

* fix time rendering and remove wf column

* checks for unfinished executions and fails them

* prevent re-setting stoppedAt for execution

* some cleanup / manually create rundata after crash

* quicksave

* remove Threads lib, log worker rewrite

* cleanup comment

* fix sentry destination return value

* test for tests...

* run tests with single worker

* fix tests

* remove console log

* add endpoint for execution data recovery

* lint cleanup and some refactoring

* fix accidental recursion

* remove cyclic imports

* add rundata recovery to Workflowrunner

* remove comments

* cleanup and refactor

* adds a status field to executions

* setExecutionStatus on queued worker

* fix onWorkflowPostExecute

* set waiting from worker

* get crashed status into frontend

* remove comment

* merge fix

* cleanup

* catch empty rundata in recovery

* refactor IExecutionsSummary and inject nodeExecution Errors

* reduce default event log size to 10mb from 100mb

* add per node execution status

* lint fix

* merge and lint fix

* phrasing change

* improve preview rendering and messaging

* remove debug

* Improve partial rundata recovery

* fix labels

* fix line through

* send manual rundata to ui at crash

* some type and msg push fixes

* improve recovered item rendering in preview

* update workflowStatistics on recover

* merge fix

* review fixes

* merge fix

* notify eventbus when ui is back up

* add a small timeout to make sure the UI is back up

* increase reconnect timeout to 30s

* adjust recover timeout and ui connection lost msg

* do not stop execution in editor after x reconnects

* add executionRecovered push event

* fix recovered connection not green

* remove reconnect toast and  merge existing rundata

* merge editor and recovered data for own mode
2023-02-17 10:54:07 +01:00
Jan Oberhauser 36df2de758 🔖 Release n8n-core@0.155.0 2023-02-16 12:14:53 +00:00
Jan Oberhauser 21484a9dab ⬆️ Set n8n-workflow@0.137.0 on n8n-core 2023-02-16 12:14:53 +00:00
कारतोफ्फेलस्क्रिप्ट™ a9f08fc5ba
fix(core): Fix issues with community node installation (no-changelog) (#5481)
This fixes the following issues:
* After a community node is installed, we were not calling `postProcessLoaders`, which was causing a bunch of unexpected behaviors, and sometimes even crashes. This was only happening in the session where the package was installed. After a crash, the restarted service was working without these issues.
* After a community node is installed, the icon for the nodes and credentials were missing in the UI, as we were creating one icons route per installed package at startup, and this did not handle newly installed packages. restarting the service fixes this issue as well.

Fixes https://community.n8n.io/t/showing-weird-count-on-community-nodes/23035
2023-02-15 16:09:53 +01:00
Jan Oberhauser be17ec6e82 🔖 Release n8n-core@0.154.1 2023-02-11 15:50:13 +00:00
Jan Oberhauser 89c9875423 ⬆️ Set n8n-workflow@0.136.1 on n8n-core 2023-02-11 15:50:13 +00:00
कारतोफ्फेलस्क्रिप्ट™ 59f5c4221e
fix(core): Handle versioned custom nodes correctly (#5313) 2023-02-10 18:33:04 +01:00
Jan Oberhauser d857d87f8b 🔖 Release n8n-core@0.154.0 2023-02-10 15:42:44 +00:00
Jan Oberhauser 6e431eb8a8 ⬆️ Set n8n-workflow@0.136.0 on n8n-core 2023-02-10 15:42:44 +00:00
Valya 9c1f827dad
feat(core): Live reload node/credential descriptions in development (no-changelog) (#4939) 2023-02-08 19:26:07 +01:00
कारतोफ्फेलस्क्रिप्ट™ f23fb92696
fix(core): Stop copying icons to cache (#5419)
Fixes 

- https://github.com/n8n-io/n8n/issues/4973
- https://github.com/n8n-io/n8n/issues/5274
- https://community.n8n.io/t/starting-n8n-fails-with-ebusy-error/21243
- https://community.n8n.io/t/problem-executing-workflow-ebusy-resource-busy-or-locked-copyfile/21280

Replaces

- https://github.com/n8n-io/n8n/pull/5052
- https://github.com/n8n-io/n8n/pull/5401
2023-02-08 18:57:43 +01:00
Jan Oberhauser 4c69d73423 🔖 Release n8n-core@0.153.0 2023-02-03 14:35:07 +00:00
Jan Oberhauser c35d5a96c0 ⬆️ Set n8n-workflow@0.135.0 on n8n-core 2023-02-03 14:35:07 +00:00
OlegIvaniv 6985500a7d
fix(core): Fix populating of node custom api call options (#5347)
* feat(core): Fix populating of node custom api call options

* lint fixes

* Adress PR comments

* Add e2e test and only inject custom API options for latest version

* Make sure to injectCustomApiCallOption for the latest version of node

* feat(cli): Move apiCallOption injection to LoadNodesAndCredentials and add e2e tests to check for custom nodes credentials

* Load nodes and credentials fixtures from a single place

* Console warning if credential is invalid during customApiOptions injection
2023-02-03 13:14:59 +01:00
OlegIvaniv 616074158c
fix(core): Revert custom API option injecting (#5345)
Revert "feat(core): Fix populating of node custom api call options (#5303)"

This reverts commit e58bc41d24.
2023-02-02 20:03:45 +01:00
OlegIvaniv e58bc41d24
feat(core): Fix populating of node custom api call options (#5303)
* feat(core): Fix populating of node custom api call options

* lint fixes

* Adress PR comments

* Add e2e test and only inject custom API options for latest version

* Make sure to injectCustomApiCallOption for the latest version of node
2023-02-02 14:53:08 +01:00
Jonathan Bennetts ec7575b032
fix(core): Fix oauth2 client credentials not always working (#5327)
fix oauth client credentials not working as expected
2023-02-01 19:05:21 +01:00
agobrech a8637a0bc6
fix(Set Node): Fix behaviour when selecting continueOnFail & PairedItem (#5257)
* 🐛 Fix bug on continueOnFail with pairedItem

* 🐛  Fix pairedItem continueOnFail for the Set Node

* 🎨  Add the ExpressionExtensionError back

*  import fix

---------

Co-authored-by: Michael Kret <michael.k@radency.com>
2023-01-31 09:25:08 +01:00
Jan Oberhauser 69f38186a5 🔖 Release n8n-core@0.152.0 2023-01-27 15:26:54 +00:00
Jan Oberhauser 8c9412767f ⬆️ Set n8n-workflow@0.134.0 on n8n-core 2023-01-27 15:26:54 +00:00
Iván Ovejero 2ca959b383
refactor: Integrate consistent-type-imports in BE packages (no-changelog) (#5270) 2023-01-27 14:56:56 +01:00
Jan Oberhauser 0770a087a9 🔖 Release n8n-core@0.151.2 2023-01-23 17:10:08 +00:00
Jan Oberhauser 56cbaf732a ⬆️ Set n8n-workflow@0.133.2 on n8n-core 2023-01-23 17:10:08 +00:00
Jan Oberhauser 73d09acd9e 🔖 Release n8n-core@0.151.1 2023-01-16 14:38:05 +00:00
Jan Oberhauser 6e22d2e689 ⬆️ Set n8n-workflow@0.133.1 on n8n-core 2023-01-16 14:38:05 +00:00
Jan Oberhauser da45b87db4 🔖 Release n8n-core@0.151.0 2023-01-13 16:16:33 +00:00
Jan Oberhauser 820e962cb9 ⬆️ Set n8n-workflow@0.133.0 on n8n-core 2023-01-13 16:16:33 +00:00
Jan Oberhauser 1ce9c4de5c 🔖 Release n8n-core@0.150.1 2023-01-09 13:19:56 +00:00
Jan Oberhauser cc0741cb90 ⬆️ Set n8n-workflow@0.132.1 on n8n-core 2023-01-09 13:19:55 +00:00
कारतोफ्फेलस्क्रिप्ट™ c97f3cad59
fix(Read Binary File Node): Do not crash the execution when the source file does not exist (#5100)
This issue was introduced in https://github.com/n8n-io/n8n/pull/5069
2023-01-06 14:15:46 +01:00
Jan Oberhauser 22976d1699 🔖 Release n8n-core@0.150.0 2023-01-05 13:18:08 +00:00
Jan Oberhauser 4916d26404 ⬆️ Set n8n-workflow@0.132.0 on n8n-core 2023-01-05 13:18:07 +00:00
कारतोफ्फेलस्क्रिप्ट™ 54126b2c87
refactor(Google Drive Node): Use node streams for uploading and downloading files (#5017)
* use streams to upload files to google drive

* use streams to download files from google drive

* use resumable uploads api for google drive

* avoid dangling promises, and reduce memory usage in error logging
2023-01-04 12:29:56 +01:00
कारतोफ्फेलस्क्रिप्ट™ 8bee04cd2a
refactor(Read Binary File Node): Use node streams for to reduce memory usage (#5069) 2023-01-02 17:07:10 +01:00
Iván Ovejero d9b98fc8be
refactor: Lint for no unneeded backticks (#5057) (no-changelog)
*  Create rule `no-unneeded-backticks`

* 👕 Enable rule

*  Run rule on `cli`

*  Run rule on `core`

*  Run rule on `workflow`

*  Rule rule on `design-system`

*  Run rule on `node-dev`

*  Run rule on `editor-ui`

*  Run rule on `nodes-base`
2022-12-29 12:20:43 +01:00
Jan Oberhauser 902f225d60 🔖 Release n8n-core@0.149.2 2022-12-27 15:18:01 +00:00
Jan Oberhauser 00f0e14adb ⬆️ Set n8n-workflow@0.131.2 on n8n-core 2022-12-27 15:18:01 +00:00
कारतोफ्फेलस्क्रिप्ट™ a229788d4b
ci: Fix linting issues on master (no-changelog) (#5030)
* make CI logs less noisy. suppress linting warning

* fix linting issues
2022-12-23 19:09:52 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5cf70e1007
refactor: Consolidate redundant code in workflow execution-functions (no-changelog) (#4884)
* refactor: Consolidate redundant code in workflow interfaces (no-changelog)

* consolidate all execution-functions interfaces code

* move rawBody definition back

* address PR comments
2022-12-23 18:27:07 +01:00
Jan Oberhauser bcbc86a985 🔖 Release n8n-core@0.149.1 2022-12-22 18:30:01 +00:00
Jan Oberhauser 361e2ef29c ⬆️ Set n8n-workflow@0.131.1 on n8n-core 2022-12-22 18:30:01 +00:00
कारतोफ्फेलस्क्रिप्ट™ 17f13b3b6e
ci: Setup eslint-import-resolver-typescript for improved TS linting (#4996)
* Setup stricter linting for typescript

* make `import/no-unresolved` an error everywhere

* use prettier to format `.vscode/settings.default.json`

* address PR comments
2022-12-22 09:55:39 +01:00
Jan Oberhauser ec9eaf4a48 🔖 Release n8n-core@0.149.0 2022-12-21 16:33:50 +00:00
Jan Oberhauser 7d69a41c13 ⬆️ Set n8n-workflow@0.131.0 on n8n-core 2022-12-21 16:33:50 +00:00
कारतोफ्फेलस्क्रिप्ट™ 5db9c46043
ci: Break most of the circular dependencies in code (no-changelog) (#4990) 2022-12-21 10:46:26 +01:00
Jan Oberhauser 1108fd78a2 🔖 Release n8n-core@0.148.1 2022-12-19 14:15:23 +00:00
कारतोफ्फेलस्क्रिप्ट™ 2797c085e5
fix: Pick up credential test functions from versioned nodes as well (#4962) 2022-12-19 08:12:04 -06:00
कारतोफ्फेलस्क्रिप्ट™ 5cbb5f4bc8
fix: BinaryDataManager should store metadata when saving from buffer as well (#4964) 2022-12-19 14:11:34 +01:00
Jan Oberhauser 20616e7af7 ⬆️ Set n8n-workflow@0.130.0 on multiple packages 2022-12-16 07:45:28 -06:00
Jan Oberhauser 620177c90b 🔖 Release n8n-core@0.148.0 2022-12-16 13:23:16 +00:00
Daemonxiao 6fac502f9e
fix(core): Fix HTTP Digest Auth for responses without an opaque parameter (#4806) 2022-12-16 06:10:26 +01:00
Jan Oberhauser 23055773c0 🔖 Release n8n-core@0.147.0 2022-12-12 14:55:27 +00:00
Jan Oberhauser 406b9519b2 ⬆️ Set n8n-workflow@0.129.0 on n8n-core 2022-12-12 14:55:27 +00:00
कारतोफ्फेलस्क्रिप्ट™ 3b969d2cd1
fix(Move Binary Data Node): Stringify objects before encoding them in MoveBinaryData (#4882)
* stringify objects before encoding them objects in MoveBinaryData

* add fileSize and fileType on MoveBinaryData converted data

* show `view` option for text files as well

* improve how JSON binary data is shown in the UI
2022-12-11 14:10:54 +01:00
Jan Oberhauser 38d7300d2a
fix(Split In Batches Node): Fix issue with pairedItem (#4873)
fix(SplitInBatches Node): Fix issue with pairedItem
2022-12-09 13:39:06 +01:00
Jan Oberhauser e9a83e28fa 🔖 Release n8n-core@0.146.1 2022-12-07 11:45:33 +00:00
Jan Oberhauser a5d21294ad ⬆️ Set n8n-workflow@0.128.1 on n8n-core 2022-12-07 11:45:33 +00:00
Jan Oberhauser 91986bb3bf 🔖 Release n8n-core@0.146.0 2022-12-06 19:46:21 +00:00
Jan Oberhauser 788cd0b229 ⬆️ Set n8n-workflow@0.128.0 on n8n-core 2022-12-06 19:46:21 +00:00
कारतोफ्फेलस्क्रिप्ट™ 85241fd230
fix: Make nodes.exclude and nodes.include work with lazy-loaded nodes (#4833) 2022-12-06 19:15:15 +01:00
freya 1722c6b0c5
feat(core): Workflow Execution Statistics (#4200)
Add recording and reporting of workflow execution statistics
2022-12-06 14:55:40 +00:00
कारतोफ्फेलस्क्रिप्ट™ 46c75b9fd2
fix: Stop using prefixed core modules from nodejs (no-changelog) (#4813)
fix: stop using prefixed core modules from nodejs (no-changelog)

Starting node 18, there are some core modules that only work with the `node:` prefix, like `node:test`. It's very likely that nodejs will switch to prefix-only core modules in the next versions as un-prefixed core modules are susceptible to supply-chain attacks.
2022-12-05 11:41:30 +01:00
Jan Oberhauser c6663bb899 🔖 Release n8n-core@0.145.0 2022-12-02 09:13:10 +00:00
Jan Oberhauser fab3860587 ⬆️ Set n8n-workflow@0.127.0 on n8n-core 2022-12-02 09:13:10 +00:00
कारतोफ्फेलस्क्रिप्ट™ 8698e02079
fix: Register community nodes as known nodes (no-changelog) (#4775) 2022-11-30 18:17:57 +01:00
कारतोफ्फेलस्क्रिप्ट™ ada73ed41d
ci: Fix linting issues on master (no-changelog) (#4768)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2022-11-30 12:16:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0a7a2f3e41
fix: Lazy load nodes for credentials testing (#4760) 2022-11-30 10:28:18 +01:00
Ahsan Virani 78c66f16d6
fix(core): Mark binary data to be deleted when pruning executions (#4713)
* Mark binary data to be deleted when pruning executions

* eslint

* make pruneExecutionData async

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-11-25 10:48:02 +01:00
कारतोफ्फेलस्क्रिप्ट™ aec08275aa
fix: Fix Windows development environments (no-changelog) (#4720) 2022-11-24 17:36:57 +01:00
कारतोफ्फेलस्क्रिप्ट™ 07e4743a3e
refactor(core): Reduce memory usage in the Webhook node (#4640)
use file streaming to pass webhook binaries around
2022-11-24 16:54:43 +01:00
Jan Oberhauser 78b7049976 🔖 Release n8n-core@0.144.0 2022-11-24 15:43:57 +00:00
Jan Oberhauser 7e70155518 ⬆️ Set n8n-workflow@0.126.0 on n8n-core 2022-11-24 15:43:57 +00:00
कारतोफ्फेलस्क्रिप्ट™ ba4ea9c024
fix: Apply SpecialNodeParameters to the types generated for the frontend (no-changelog) (#4715)
fix: apply SpecialNodeParameters to the types generated for the frontend (no-changelog)
2022-11-24 15:52:15 +01:00
कारतोफ्फेलस्क्रिप्ट™ 500775de69
ci: Make end-to-end testing independent of development environments (no-changelog) (#4709)
* use user-folder override consistently everywhere, including for the `.cache` folder

* use consistent config for e2e tesing, skipping config loading from env and config files

* simplify all the cypress commands, and run all e2e tests on master
2022-11-24 12:49:01 +01:00
कारतोफ्फेलस्क्रिप्ट™ b6c57e19fc
feat(core): Lazy-load nodes and credentials to reduce baseline memory usage (#4577) 2022-11-23 16:20:28 +01:00
Iván Ovejero 78119c9f22
refactor: Consolidate .prettierignore patterns (no-changelog) (#4692)
*  Consolidate Prettier ignore patterns

*  Let Prettier select file types to format

* 🎨 Apply formatting
2022-11-22 14:11:29 +01:00
Iván Ovejero 6757c9a2ea
refactor(core): Introduce overload for boolean-type node parameter (no-changelog) (#4647)
* 📘 Set up overloads

* 📘 Add temporary assertion

* 🔥 Remove inferrable boolean assertions

*  Undo autoformatting
2022-11-18 14:31:38 +01:00
Jan Oberhauser b8ea073124 🔖 Release n8n-core@0.143.1 2022-11-17 18:18:14 +01:00
Jan Oberhauser d928644b89 🔖 Release n8n-core@0.143.0 2022-11-17 16:19:22 +00:00
Jan Oberhauser c906c7159f ⬆️ Set n8n-workflow@0.125.0 on n8n-core 2022-11-17 16:19:21 +00:00
कारतोफ्फेलस्क्रिप्ट™ 0148631d28
build: Upgrade some of the backend dev-tooling (no-changelog) (#4589)
* upgrade ts-node

* move tslint and typescript to a single place

* source-map-support should be loaded in the `n8n` bin script, and not in core

* upgrade jest

* Support only node.js 14, 16, or 18
2022-11-14 15:37:32 +01:00
Marcus 277b6b73c3
feat(Notion (Beta) Node): Use resource locator component for database and page parameters (#4340)
* use resource locator component for database -> get (Notion V1/V2)

* getDatabases search function for V1/V2 with url

* updated database get list placeholder

* get database RLC by url - regex support optional workspace domain names

* fixed linting error

* listSearch getDatabases support filter query

* support extractValue in getCurrentNodeParameter for RLC

* RLC for database page create/getAll operation

* RLC for database get operation support "By ID" with optional v param.

* use RLC in append blocks operation

* use RLC in NotionTrigger.nodes.ts

* removed unused loadOptions getDatabases

* support database RLC in createPage/createDbPage operation

* page create operation use RLC for parent page param

* page archive operation use RLC for page param

* removed unused imports

* fixed missing extractPageId in NotionV1.node.ts

* database page get operation use RLC for page param

* database page update operation use RLC for page param

* block getAll children operation use RLC for page param

* block append operation use RLC for block param

* support databaseId with optional '-' characters

* support blockId with optional '-' characters

* support pageId with optional '-' characters

* improved RLC descriptions and hints

* NotionTrigger node support databseId with optional '-' characters

* stricter RLC by ID regex rules for uuids

* stricter RLC by URL regex rules for uuids

* stricter RLC by ID regex rules for uuids (support max length)

* RLC regex from URL allow both http and https

* RLC by ID only allow uuid v4 with optional dash

* removed RLC from URL hint "Use Notion's copy link..."

* RLC from URL only allow uuid v4

* DB Status Column: Support Simplify Properties

* Notion Credentials: Support custom Notion-Version header

Use latest Notion-Version 2022-02-22 if not set

* DB Status Column: Support DB Page Create/Update

* DB Status Column: Support DB Page GetMany Filters

* removed unused paginationToken args

* Database Get: RLC by URL improve validation error message
2022-11-11 13:37:52 +01:00
Jan Oberhauser f0eeaa62bc 🔖 Release n8n-core@0.142.1 2022-11-10 20:53:42 +00:00
Jan Oberhauser 4c57ee33ce ⬆️ Set n8n-workflow@0.124.1 on n8n-core 2022-11-10 20:53:41 +00:00
Jan Oberhauser 5cb65871d4 🔖 Release n8n-core@0.142.0 2022-11-10 15:43:44 +00:00
Jan Oberhauser 59fc813cca ⬆️ Set n8n-workflow@0.124.0 on n8n-core 2022-11-10 15:43:43 +00:00
कारतोफ्फेलस्क्रिप्ट™ 736777385c
feat: Switch from npm to pnpm (#4429) 2022-11-09 17:32:05 +01:00
कारतोफ्फेलस्क्रिप्ट™ 698d96a617
refactor: Setup typescript project references across workflow, core, and cli (#4519)
* refactor: use consistent folder structure across workflow, core, and cli

* setup typescript project references across workflow, core, and cli
2022-11-09 15:25:00 +01:00
Valya ebf17e1827
refactor: make IPollFunctions emit consistent with trigger emit (#4201)
* refactor: make IPollFunctions emit consistent with trigger emit

* refactor: re-add underscores to poll emits

* chore: update emit override message
2022-11-08 13:29:20 +00:00
कारतोफ्फेलस्क्रिप्ट™ 1c98f97e9e
ci: Revert support for node.js 18 (#4518) (#4537)
Revert "ci: Start supporting node.js 18 (#4518)"

This reverts commit 9ee292cd17.
2022-11-07 17:23:08 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9ee292cd17
ci: Start supporting node.js 18 (#4518)
* ci: start supporting node.js 18

Node.js 18 becomes the active LTS on 2022-10-25, as Node.js 16 goes into maintenance mode.
https://github.com/nodejs/Release#release-schedule

* continue using node 16 for production images

* node 16 for debian and base images as well for now
2022-11-07 15:51:57 +01:00
कारतोफ्फेलस्क्रिप्ट™ 41cb0eec6e
feat(API): Set up error tracking using Sentry (#4394)
* feat(cli): Setup error tracking using Sentry

* make error reporting available in the workflows package

* address some of the PR comments

* create a ErrorReporterProxy like LoggerProxy

* remove the `captureError` helper. use ErrorReporterProxy directly

* fix linting issues

* remove ErrorReporterProxy warnings in tests

* check for NODE_ENV === 'production' instead

* IErrorReporter -> ErrorReporter

* ErrorReporterProxy.getInstance() -> ErrorReporter

* allow capturing stacks in warnings as well

* make n8n debugging consistent with `npm start`

* IReportingOptions -> ReportingOptions

* use consistent signature for `error` and `warn`

* use Logger instead of console.log
2022-11-04 17:34:47 +01:00
Jan Oberhauser 5d0707fcbb 🔖 Release n8n-core@0.141.0 2022-11-02 17:25:29 +00:00
Jan Oberhauser 8eea8929ae ⬆️ Set n8n-workflow@0.123.0 on n8n-core 2022-11-02 17:25:28 +00:00
Iván Ovejero ec5ef0c50d
refactor(core): clear @ts-ignore from workflow and core packages (#4467)
* 📘 Clear all `@ts-ignore` comments from workflow package

* 👕 Default to error with package-level overrides

* refactor(core): clear all `@ts-ignore` comments from core package (#4473)

👕 Clear all `@ts-ignore` comments from core package

* ✏️ Update comment
2022-10-31 12:45:34 +01:00
Jan Oberhauser 088adb56b7 🔖 Release n8n-core@0.140.1 2022-10-28 14:21:30 +00:00
Jan Oberhauser e799fadb91 ⬆️ Set n8n-workflow@0.122.1 on n8n-core 2022-10-28 14:21:30 +00:00
कारतोफ्फेलस्क्रिप्ट™ e6ec134cf3
fix(AWS SNS Trigger Node): add missing jsonParse import (#4463)
* fix(AwsSnsTrigger): add missing jsonParse import

* add clear typings for req.rawBody and getHeaderData()
2022-10-28 11:24:11 +02:00
Jan Oberhauser 2e167da51f 🔖 Release n8n-core@0.140.0 2022-10-27 14:30:43 +00:00
Jan Oberhauser 6bd4854b3d ⬆️ Set n8n-workflow@0.122.0 on n8n-core 2022-10-27 14:30:42 +00:00
Jan Oberhauser 14d887cf86 docs: Update logo and README files with new design 2022-10-27 14:57:49 +02:00
Cornelius Suermann d1b4d428cb
docs: scope Sustainable Use License to contents of the main branch (#4450)
docs: scope Sustainable Use License to contents of the main branch (e.g. 'master')
2022-10-26 16:50:33 +02:00
कारतोफ्फेलस्क्रिप्ट™ 1f610b90f6
feat: use ES2022 native error chaining to improve error reporting (#4431)
feat: use ES2022 native error chaining
2022-10-26 11:55:39 +02:00
कारतोफ्फेलस्क्रिप्ट™ 99157cf581
feat: setup nightly tests for postgres and mysql schemas (#4441)
* feat: unify Jest config

* feat: simplify DB setup for tests

* feat: setup nightly tests for postgres and mysql schemas
2022-10-25 22:06:03 +02:00
कारतोफ्फेलस्क्रिप्ट™ 5eb1eb88e4
fix(core): delete some of the redundant code in core (#4359) 2022-10-21 11:38:56 +02:00
Jan Oberhauser 887f7f0021 🔖 Release n8n-core@0.139.0 2022-10-21 05:44:56 +00:00
Jan Oberhauser 27d018445b ⬆️ Set n8n-workflow@0.121.0 on n8n-core 2022-10-21 05:44:56 +00:00
Ricardo Espinoza 7fcd821cad
feat(core): enable sending client credentials in body (#4377)
*  Enable inject credentials in the body for OAuth2 CC

* 🐛 Persist token data

* 👕 Fix linting error
2022-10-20 11:15:28 -04:00
Csaba Tuncsik 1aa21ed3df
perf: update deepCopy (#4364)
* perf: update deepCopy

* fix: using deepCopy in core and cli packages

* fix: using deepCopy in editor

* chore: formatting

* fix: some micro optimisation in deepCopy
2022-10-18 13:33:31 +02:00
Jan Oberhauser b45839cf4c 🔖 Release n8n-core@0.138.0 2022-10-14 05:47:33 +00:00
Jan Oberhauser 0ae85d6733 ⬆️ Set n8n-workflow@0.120.0 on n8n-core 2022-10-14 05:47:33 +00:00
Iván Ovejero 1db4fa2bf8
feat(Code Node): create Code node (#3965)
* Introduce node deprecation (#3930)

 Introduce node deprecation

* 🚧 Scaffold out Code node

* 👕 Fix lint

* 📘 Create types file

* 🚚 Rename theme

* 🔥 Remove unneeded prop

*  Override keybindings

*  Expand lintings

*  Create editor content getter

* 🚚 Ensure all helpers use `$`

*  Add autocompletion

*  Filter out welcome note node

*  Convey error line number

*  Highlight error line

*  Restore logging from node

*  More autocompletions

*  Streamline completions

* ✏️ Update placeholders

*  Update linter to new methods

* 🔥 Remove `$nodeItem` completions

*  Re-update placeholders

* 🎨 Fix formatting

* 📦 Update `package-lock.json`

*  Refresh with multi-line empty string

*  Account for syntax errors

* 🔥 Remove unneeded variant

*  Minor improvements

*  Add more autocompletions

* 🚚 Rename extension

* 🔥 Remove outdated comments

* 🚚 Rename field

*  More autocompletions

*  Fix up error display when empty text

* 🔥 Remove logging

*  More error validation

* 🐛 Fix `pairedItem` to `pairedItem()`

*  Add item to validation info

* 📦 Update `package-lock.json`

*  Leftover fixes

*  Set `insertNewlineAndIndent`

* 📦 Update `package-lock.json`

* 📦 Re-update `package-lock.json`

* 👕 Add lint exception

* 📘 Add type to mixin type

* Clean up comment

*  Refactor completion per new requirements

*  Adjust placeholders

*  Add `json` autocompletions for `$input`

* 🎨 Set border

*  Restore local completion source

*  Implement autocompletion for imports

*  Add `.*` to follow user typing on autocompletion

* 📘 Fix typings in autocompletions

* 👕 Add linting for use of `item()`

* 📦 Update `package-lock.json`

* 🐛 Fix for `$items(nodeName)[0]`

*  Filter down built-in modules list

*  Refactor error handling

*  Linter and validation improvements

*  Apply review feedback

* ♻️ More general refactorings

*  Add dot notation utility

* Customize input handler

*  Support `.json.` completions

*  Adjust placeholder

*  Sort imports

* 🔥 Remove blank rows addition

*  Add more error validation

* 📦 Update `package-lock.json`

*  Make date logging consistent

* 🔧 Adjust linting highlight range

*  Add line numbers to each item mode errors

*  Allow for links in error descriptions

*  More input validation

*  Expand linting to loops

*  Deprecate Function and Function Item nodes

* 🐛 Fix placeholder syntax

* 📘 Narrow down type

* 🚚 Rename using kebab-case

* 🔥 Remove `mapGetters`

* ✏️ Fix casing

*  Adjust import for type

* ✏️ Fix quotes

* 🐛 Fix `activeNode` reference

*  Use constant

* 🔥 Remove logging

* ✏️ Fix typo

*  Add missing `notice`

* ✏️ Add tags

* ✏️ Fix alias

* ✏️ Update copy

* 🔥 Remove wrong linting

* ✏️ Update copy

*  Add validation for `null`

*  Add validation for non-object and non-array

*  Add validation for non-array with json

* ✏️ Intentionally use wrong spelling

*  More validation

* ✏️ More copy updates

* ✏️ Placeholder updates

*  Restore spelling

*  Fix var name

* ✏️ More copy updates

*  Add luxon autocompletions

*  Make scrollable

*  Fix comma from merge conflict resolution

* 📦 Update `package-lock.json`

* 👕 Fix lint detail

* 🎨 Set font family

*  Bring in expressions fix

* ♻️ Address feedback

*  Exclude codemirror packages from render chunks

* 🐛 Fix placeholder not showing on first load

* feat(editor-ui): Replace `lezer` with `esprima` in client linter (#4192)

* 🔥 Remove addition from misresolved conflict

*  Replace `lezer` with `esprima` in client linter

*  Add missing key

* 📦 Update `package-lock.json`

*  Match dependencies

* 📦 Update `package-lock.json`

* 📦 Re-update `package-lock.json`

*  Match whitespace

* 🐛 Fix selection

*  Expand validation

* 🔥 Remove validation

* ✏️ Update copy

* 🚚 Move to constants

*  More `null` validation

*  Support `all()` with index to access item

*  Gloss over n8n syntax error

* 🎨 Re-style diagnostic button

* 🔥 Remove `item` as `itemAlias`

*  Add linting for `item.json` in single item mode

*  Refactor to add label info descriptions

*  More autocompletions

* 👕 Fix lint

*  Simplify typings

* feat(nodes-base): Multiline autocompletion for `code-node-editor` (#4220)

*  Simplify typings

*  Consolidate helpers in utils

*  Multiline autocompletion for standalone vars

* 🔥 Remove unneeded mixins

* ✏️ Update copy

* ✏️ Prep TODOs

*  Multiline completion for `$input.method` + `$input.item`

* 🔥 Remove unused method

* 🔥 Remove another unused method

* 🚚 Move luxon strings to helpers

*  Multiline autocompletion for methods output

*  Refactor to use optional chaining

* 👕 Fix lint

* ✏️ Update TODOs

*  Multiline autocompletion for `json` fields

* 📘 Add typings

*  De-duplicate callback to forEach

* 🐛 Fix autocompletions not working with leading whitespace

* 🌐 Apply i18n

* 👕 Fix lint

* :constructor: Second-period var usage completions

* 👕 Fix lint

* 👕 Add exception

*  Add completion telemetry

* 📘 Add typing

*  Major refactoring to organize

* 🐛 Fix multiline `.all()[index]`

* 🐛 Do not autoclose square brackets prior to `.json`

* 🐛 Fix accessor for multiline `jsonField` completions

*  Add completions for half-assignments

* 🐛 Fix `jsonField` completions for `x.json`

* ✏️ Improve comments

* 🐛 Fix `.json[field]` for multiline matches

*  Cleanup

* 📦 Update `package-lock.json`

* 👕 Fix lint

* 🐛 Rely on original value for custom matcher

*  Create `customMatcherJsonFieldCompletions` to simplify setup

* 🐛 Include selector in `customMatcherJsonField` completions

* ✏️ Make naming consistent

* ✏️ Add docline

*  Finish self-review cleanup

* 🔥 Remove outdated comment

* 📌 Pin luxon to major-minor

* ✏️ Fix typo

* 📦 Update `package-lock.json`

* 📦 Update `package-lock.json`

* 📦 Re-update `package-lock.json`

*  Add `luxon` for Gmail node

* 📦 Update `package-lock.json`

*  Replace Function with Code in suggested nodes

* 🐛 Fix `$prevNode` completions

* ✏️ Update `$execution.mode` copy

*  Separate luxon getters from methods

*  Adjusting linter to tolerate `.binary`

*  Adjust top-level item keys check

*  Anticipate user expecting `item` to pre-exist

*  Add linting for legacy item access

*  Add hint for attempted `items` access

*  Add keybinding for toggling comments

* ✏️ Update copy of `all`, `first`, `last` and `itemMatching`

* 🐛 Make `input.all()` etc act on copies

* 📦 Update `package-lock.json`

* 🐛 Fix guard in `$input.last()`

* ♻️ Address Jan's feedback

* ⬆️ Upgrade `eslint-plugin-n8n-nodes-base`

* 📦 Update `package-lock.json`

* 🔥 Remove unneeded exceptions

*  Restore placeholder logic

*  Add placeholders to client

*  Account for shadow item

* ✏️ More completion info labels

* 👕 Fix lint

* ✏️ Update copy

* ✏️ Update copy

* ✏️ More copy updates

* 📦 Update `package-lock.json`

*  Add more validation

*  Add placheolder on first load

* Replace `Cmd` with `Mod`

* 📦 Update `package-lock.json`
2022-10-13 14:28:02 +02:00
Iván Ovejero cd74c3ebae
fix(core, editor): prevent overlapping runData and pinData (#4323)
🐛 Prevent overlapping `runData` and `pinData`
2022-10-12 16:13:59 +02:00
Jan Oberhauser c1683677cb 🔖 Release n8n-core@0.137.0 2022-10-10 08:32:38 +00:00
Jan Oberhauser 80b9b937d8 ⬆️ Set n8n-workflow@0.119.0 on n8n-core 2022-10-10 08:32:38 +00:00
Iván Ovejero 9089dbe942
perf(tooling): Upgrade to TypeScript 4.8 (#4207)
* ⬆️ Upgrade to TypeScript 4.8

* 🔥 Remove unneeded setting

* 📦 Update `package-lock.json`

*  Restore `skipLibCheck`

* 📦 Re-update `package-lock.json`

* ♻️ Apply feedback

* ♻️ Add check to new WhatsApp node

* 📦 Update `package-lock.json`

* Update package-lock.json

* ran `npm run lintfix`

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-10-05 13:36:09 +02:00
Jan Oberhauser cc49b5bd83 🔖 Release n8n-core@0.136.0 2022-09-30 14:18:40 +00:00
Jan Oberhauser b486f97fbb ⬆️ Set n8n-workflow@0.118.0 on n8n-core 2022-09-30 14:18:40 +00:00
Valya f63710a892
feat(WhatsApp Business node): WhatsApp node (#3659)
* feat: base structure for whatsapp node with credentials

* feat: messages operation

* feat: create generic api call with credentials and test first operation

* fix: add missing template params

* fix: language code for template

* feat: media type and start of template components

* fix: remove provider name from media type

* lintfix

* fix: format

* feat: media operations w/o upload media type

* ♻️ Convert WhatsApp Business node to declarative style

* 🐛 form data not being sent with boundary in header

*  add media operations to WhatsApp

*  add credentials test to WhatsApp credentials

* ♻️ move preview url to optional collection in whatsapp message

* ♻️ renamed media operations in whatsapp node

* :refactor: move media file name to optional fields in whatsapp node

*  add upload from n8n for whatsapp node message resource

* 🔥 remove other template component types in whatsapp node

* :speech_bubble: add specialised text for media types in WhatsApp node

*  Load dinamically phone number and template name

*  Add action property to all operations

* 🔥 Remove unnecessary imports

*  Use getBinaryDataBuffer helper

*  Add components property

*  send components for whatsapp templates and template language

* 🏷️ fix WhatsApp node message function types

* 🏷️ fix any in whatsapp message functions

* 🔥 remove unused import

*  Improvements

*  Add send location

*  Add send contact

*  Small improvement

* ♻️ changes for review

* 🐛 fix presend error

* ♻️ change lat/long to numbers with proper clamping

* fix: bad merge

* refactor: changes for review

* update package-lock.json

* update package.-lock.json

* update

Co-authored-by: cxgarcia <schlaubitzcristobal@gmail.com>
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2022-09-29 20:17:46 -04:00
Jan Oberhauser 5526057efc
feat(core): Improve paired item and add additional variables (#3765)
*  Remove duplicate and old string

*  Add telemetry

*  Futher improvements

*  Change error message and display only name of last parameter

* 👕 Fix lint issue

*  Remove not needed comments

*  Rename properties, add new ones and improve error messages

*  Add support for $execution, $prevNode and make it possible to use proxies as object

*  Some small improvements

* 🐛 Fix error message

*  Improve some error messages

*  Change resumeUrl variable and display in editor

*  Fix and extend tests

*  Multiple pairedItem improvements

*  Display "More Info" link with error messages if user can fix issue

*  Display different errors in Function Nodes
2022-09-29 23:02:25 +02:00
agobrech 8bd99e0600
docs: remove impertinent Jsdocs comments (no-changelog) (#4181)
* 🔥 Remove impertinent Jsdocs comments

* Lint fixes
2022-09-29 14:37:56 +02:00
Jan Oberhauser 23bd71b82a
feat(RabbitMQ Trigger Node): Automatically reconnect on disconnect (#4019)
* feat(RabbitMQ Trigger Node): Automatically reconnect on disconnect

*  Retry indefinetly

*  Also automatically retry activation issues on startup
2022-09-29 11:50:18 +02:00
Jan Oberhauser 2f26c14e80 🔖 Release n8n-core@0.135.2 2022-09-23 10:02:25 +00:00
Jan Oberhauser 9eb7bd1bba ⬆️ Set n8n-workflow@0.117.2 on n8n-core 2022-09-23 10:02:25 +00:00
Mutasem Aldmour 46f95622e3
fix(resource locator): add back extract value logic (#4178)
add back extract value logic
2022-09-23 11:56:57 +02:00
Jan Oberhauser cff1143360 🔖 Release n8n-core@0.135.1 2022-09-22 17:07:15 +00:00
Jan Oberhauser 556a590332 ⬆️ Set n8n-workflow@0.117.1 on n8n-core 2022-09-22 17:07:15 +00:00
Mutasem Aldmour 469c391fee
fix(core): Fix resolve RL values in expressions (#4173)
* update interface

* update expression resolving

* 🔥 remove ExtractValue functions

* add flags

* update resolving

* update expr

* fix for list mode

* clean up

* Fix up

* update guard

* fix bug with switching

* update to handle expr referencing

* fix legacy expression

* fix when switching

* update spacing

Co-authored-by: Valya Bullions <valya@n8n.io>
2022-09-22 19:04:26 +02:00
Jan Oberhauser a12e23a9fa 🔖 Release n8n-core@0.135.0 2022-09-21 15:29:58 +00:00
Jan Oberhauser fbd12ba9b1 ⬆️ Set n8n-workflow@0.117.0 on n8n-core 2022-09-21 15:29:58 +00:00
Mutasem Aldmour ad73f8995c
feat: add resource locator parameter (#3932)
*  Added resource locator interfaces to `n8n-workflow` package

*  Updating Trello node to use resource locator property type

*  Added resource locator prop to Delete Board` Trello operation

* ✔️ Fiixing linting errors in Trello node

*  Added list mode to Trello test node

*  Updating resource locator modes interface

*  Updating Trello test node validation messages and placeholders

* N8N-4175 resource locator component (#3812)

*  Implemented initial version of resource locator component

*  Implemented front-end validation for resource locator component. Improved responsiveness. Minor refactoring.

*  Setting resource locator default state to list. Updating hover states and expand icon.

* 🔨 Moving resource locator component to `ParameterInput` from `ParameterInputFull

* 🔨 Moving `ResourceLocator` to a separate Vue component

* 🔨 Implementing expression and drag'n'drop support in ResourceLocator` component

* 🔨 Cleaning up `ResourceLocator` component code

*  Implemented resource locator selected mode persistance

* 💄 Minor refactoring and fixes in `ResourceLocator`

* 🔨 Updating `ResourceLocator` front-end validation logic

*  Saving resource locator mode in node parameters

* 💄 Updating the `ResourceLocator` component based on the design review

* 🐛 Fixing resource locator mode parameters handling when loading node parameter values on front-end

* 💄 Removing leftover unused CSS

*  Updating interfaces to support resource locator value types

*  Updating `ResourceLocator` component to work with object parameter values

* 🔨 Cleaning up `ResourceLocator` and related components code

*  Preventing `DraggableTarget` to be sticky if disabled

* 🐛 Fixing a bug with resource locator value parameter

* 👌 Adding new type alias for all possible node parameter value types

* 👌 Updating `ResourceLocator` and related components based on PR review feedback

*  Adding disabled mode to `ResourceLocator` component, fixing expression handling, minor refactoring.

* 💄 Updating disabled state styling in `ResourceLocator` component

*  Setting correct default value for test node and removing unnecessary logic

* 💄 Added regex URL validation to Trello test node

*  Updating Trello test node with another (list mode only) test case

* ✔️ Fixing linting error in Trello node

* 🔨 Removing hardcoded custom modes and modes order

* Add value extractor to routing node (#3777)

*  add value extractor to routing node

*  add value extractor to property modes

* 🔊 improve error logging for value extractor

* 🔥 remove old extractValue methods from RoutingNode

*  extractValue inside getNodeParameter

* 🔥 remove extract value test from RoutingNode

*  make value extraction optional

* 🥅 move extract value so proper error messages are sent

* 🚨 readd accidentally removed eslint-disable

*  add resource locator support extractValue

* 🚨 remove unused import

* 🐛 fix getting value of resource locator

* 💄 Updating resource locator component styling and handling reset value action

*  create v2 of Trello node for resource locator

* 💄 Updating ResourceLocator droppable & activeDrop classes and removing input padding-right

*  Updating Trello test node with single-mode test case

*  Updating field names in Trello node to avoid name clash

* 💄 Updating test Trello node mode order and board:update parameter name

* 💄 Updating test node parameter names and display options

* List mode search endpoint (#3936)

* 🚧 super basic version of the search endpoint

This version is built using a hacked up version of the Google Drive
node. I need to properly create a v2 for it but it's does work.

* 🚧 fixed up type errors and return urls

*  add v3 of Google Drive node with RLC

*  add RLC to Google Drive Shared Drive operations

* ♻️ address some small changes requested in review

* 🐛 move list search out of /nodes/ and add check for required param

*  google drive folder search

*  google drive search sort by name

*  add searchable flag for RLC

* ✏️ fix google drive wording for v3

* Trello and Airtable search backend (#3974)

*  add search to Trello boards

*  add RLC to Trello cards

* ♻️ use new versioning system for Trello v2

* 🐛 move list search out of /nodes/ and add check for required param

*  re-add trello search methods

* 🥅 throw error if RLC search isn't sent a method name

This will likely be removed when the declarative style of search has
been added.

*  add requires filter field to RLC search

*  add searchable flag to Trello searches

*  add RLC for cardId and boardId on all operations

*  add ID and URL RLC to Airtable

* N8 n 4179 resource locator list mode (#3933)

*  Implemented initial version of list mode dropdown

*  Handling mode switching and expression support in list mode

* 🔨 Removing `sortedModes` references

*  Fixing list mode UI after latest mege

* 💄 Updating padding-right for input fields with suffix slots

*  Minor fixes to validation, mode switching logic and styling

* update error

* 2 or more regex

* update regex to be more strict

* remove expr colors

* update hint

* 🚧 super basic version of the search endpoint

This version is built using a hacked up version of the Google Drive
node. I need to properly create a v2 for it but it's does work.

* 🚧 fixed up type errors and return urls

* begin list impl

*  add v3 of Google Drive node with RLC

* fix ts issue

* introduce dropdown

* add more behavior

* update design

* show search

* add filtering

* push up selected

* add keyboard nav

* add loading

* add caching

* remove console

* fix build issues

* add debounce

* fix click

* keep event on focus

* fix input size bug

* add resource locator type

* update type

* update interface

* update resource locator types

*  add search to Trello boards

*  add RLC to Google Drive Shared Drive operations

* update

* update name

* add package

* use stringify pckg

* handle long vals

* fix bug in url id modes

* remove console log

* add lazy loading

* add lazy loading on filtering

* clean up

* make search clearable

* add error state

*  add RLC to Trello cards

* ♻️ address some small changes requested in review

* ♻️ use new versioning system for Trello v2

* refactor a bit

* fix how loading happens

* clear after blur

* update api

* comment out test code

* update api

* relaod in case of error

* update endpoint

* 🐛 move list search out of /nodes/ and add check for required param

* 🐛 move list search out of /nodes/ and add check for required param

* update req handling

* update endpoint

*  re-add trello search methods

* 🥅 throw error if RLC search isn't sent a method name

This will likely be removed when the declarative style of search has
been added.

* get api to work

* update scroll handling

*  google drive folder search

*  add requires filter field to RLC search

*  google drive search sort by name

* remove console

*  add searchable flag for RLC

*  add searchable flag to Trello searches

* update searchable

*  add RLC for cardId and boardId on all operations

*  add ID and URL RLC to Airtable

* fix up search

* remove extra padding

* add link button

* update popper pos

* format

* fix formating

* update mode change

* add name urls

* update regex and errors

* upate error

* update errors

* update airtable regex

* update trello regex rules

* udpate param name

* update

* update param

* update param

* update drive node

* update params

* add keyboard nav

* fix bug

* update airtable default mode

* fix default value issue

* hide long selected value

* update duplicate reqs

* update node

* clean up impl

* dedupe resources

* fix up nv

* resort params

* update icon

* set placeholders

* default to id mode

* add telemetry

* add refresh opt

* clean up tmp val

* revert test change

* make placeholder optional

* update validation

* remove description as param hint

* support more general values

* fix links on long names

* update resource item styles

* update pos

* update icon color

* update link alt

* check if required

* move validation to workflow

* update naming

* only show warning at param level

* show right border on focus

* fix hover on all item

* fix long  names bug

* fix expr bug

* add expr

* update legacy mode

* fix up impl

* clean up node types

* clean up types

* remove unnessary type

* clean up types

* clean up types

* clean up types

* clea n up localizaiton

* remove unused key

* clean up helpers

* clean up paraminput

* clean up paraminputfull

* refactor into one loop

* update component

* update class names

* update prop types

* update name cases

* update casing

* clean up classes

* clean up resource locator

* update drop handling

* update mode

* add url for link mode

* clear value by default

* add placeholder

* remove legacy hint

* handle expr in legacy

* fix typos

* revert padding change

* fix up spacing

* update to link component

* support urls for id

* fix replacement

* build

Co-authored-by: Milorad Filipovic <milorad@n8n.io>
Co-authored-by: Valya Bullions <valya@n8n.io>

* refactor: Resource locator review changes (#4109)

*  Implemented initial version of list mode dropdown

*  Handling mode switching and expression support in list mode

* 🔨 Removing `sortedModes` references

*  Fixing list mode UI after latest mege

* 💄 Updating padding-right for input fields with suffix slots

*  Minor fixes to validation, mode switching logic and styling

* update error

* 2 or more regex

* update regex to be more strict

* remove expr colors

* update hint

* 🚧 super basic version of the search endpoint

This version is built using a hacked up version of the Google Drive
node. I need to properly create a v2 for it but it's does work.

* 🚧 fixed up type errors and return urls

* begin list impl

*  add v3 of Google Drive node with RLC

* fix ts issue

* introduce dropdown

* add more behavior

* update design

* show search

* add filtering

* push up selected

* add keyboard nav

* add loading

* add caching

* remove console

* fix build issues

* add debounce

* fix click

* keep event on focus

* fix input size bug

* add resource locator type

* update type

* update interface

* update resource locator types

*  add search to Trello boards

*  add RLC to Google Drive Shared Drive operations

* update

* update name

* add package

* use stringify pckg

* handle long vals

* fix bug in url id modes

* remove console log

* add lazy loading

* add lazy loading on filtering

* clean up

* make search clearable

* add error state

*  add RLC to Trello cards

* ♻️ address some small changes requested in review

* ♻️ use new versioning system for Trello v2

* refactor a bit

* fix how loading happens

* clear after blur

* update api

* comment out test code

* update api

* relaod in case of error

* update endpoint

* 🐛 move list search out of /nodes/ and add check for required param

* 🐛 move list search out of /nodes/ and add check for required param

* update req handling

* update endpoint

*  re-add trello search methods

* 🥅 throw error if RLC search isn't sent a method name

This will likely be removed when the declarative style of search has
been added.

* get api to work

* update scroll handling

*  google drive folder search

*  add requires filter field to RLC search

*  google drive search sort by name

* remove console

*  add searchable flag for RLC

*  add searchable flag to Trello searches

* update searchable

*  add RLC for cardId and boardId on all operations

*  add ID and URL RLC to Airtable

* fix up search

* remove extra padding

* add link button

* update popper pos

* format

* fix formating

* update mode change

* add name urls

* update regex and errors

* upate error

* update errors

* update airtable regex

* update trello regex rules

* udpate param name

* update

* update param

* update param

* update drive node

* update params

* add keyboard nav

* fix bug

* update airtable default mode

* fix default value issue

* hide long selected value

* update duplicate reqs

* update node

* clean up impl

* dedupe resources

* fix up nv

* resort params

* update icon

* set placeholders

* default to id mode

* add telemetry

* add refresh opt

* clean up tmp val

* revert test change

* make placeholder optional

* update validation

* remove description as param hint

* support more general values

* fix links on long names

* update resource item styles

* update pos

* update icon color

* update link alt

* check if required

* move validation to workflow

* update naming

* only show warning at param level

* show right border on focus

* fix hover on all item

* fix long  names bug

* ♻️ refactor extractValue to allow multiple props with same name

* ♻️ use correct import for displayParameterPath

* fix expr bug

* add expr

* update legacy mode

* fix up impl

* clean up node types

* clean up types

* ♻️ remove new version of google drive node

* ♻️ removed versioned Trello node for RLC

* remove unnessary type

* ♻️ remove versioned Airtable not for RLC

* clean up types

* clean up types

* clean up types

* clea n up localizaiton

* remove unused key

* clean up helpers

* clean up paraminput

* clean up paraminputfull

* refactor into one loop

* update component

* update class names

* update prop types

* update name cases

* update casing

* clean up classes

* 💬 updated RLC URL regex error wording

* clean up resource locator

* update drop handling

* update mode

* 💬 reword value extractor errors

* 🚨 remove unneeded eslint ignores for RLC modes

* 💬 update Trello 400 error message

* 🚨 re-add removed types in editor-ui

Also ts-ignore something that was clean up in another commit. I've added
a comment to fix after someone else can look at it.

* 💬 remove hints from Google Drive RLCs

* 🥅 rethrow correct errors in Trello node

*  add url for id mode on Google Drive

* 🔥 remove unused Google Drive file

* 🔊 change console.error to use logger instead

* 🔀 fix bad merges

* ♻️ small changes from review

* ♻️ remove ts-ignore

Co-authored-by: Milorad Filipovic <milorad@n8n.io>
Co-authored-by: Mutasem <mutdmour@gmail.com>

* fix build

* update tests

* fix bug with credential card

* update popover component

* fix expressions url

* fix type issue

* format

* update alt

* fix lint issues

* fix eslint issues

Co-authored-by: Milorad Filipovic <milorad@n8n.io>
Co-authored-by: Milorad FIlipović <miloradfilipovic19@gmail.com>
Co-authored-by: Valya <68596159+valya@users.noreply.github.com>
Co-authored-by: Valya Bullions <valya@n8n.io>
2022-09-21 15:44:45 +02:00
Ben Hesseldieck 97cd564f7b
feat(cli): User Management and Credentials sharing (#3602)
* 🎉 starting feature development

*  sharing/unsharing a credential (#3601)

* 🎉 initial design

*  sharing/unsharing of credentials

*  add tests for EE credentials controller

* 💪 implement review comments

* 🛠 refactor agent creation and credential role locking

* 👕 linting adjustments (#3691)

* 👕 Adjust rule `naming-convention`

* 👕 Fix `naming-convention` config value

* 👕 Disregard casing for EE-prefixed vars

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* 🛠 refactor authAgents in tests (#3725)

* 🛠 refactor authAgent

* 🛠 refactor authAgent

* 🛠 refactor authAgent

* 🛠 refactor authAgent

* 👕 fix ts issue

* 🐘 add migration for mysql and postgres + add AuthAgent type

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* ️ refactor existing credentials routes (#3672)

* 🎉 initial design

*  sharing/unsharing of credentials

* ♻️ split credential update route into controller and service

* 🔥 remove credentials test that is no longer applicable

* ♻️ split credential creation route into controller and service

* ♻️ split single credential get

* ♻️ split delete credentials route

* ♻️ split get all credentials route

* 🔥 remove unused imports in credentials contoller

* 🔥 remove console.log

* :refactor: changes to credentials controller and service from review

 - removed credentials from service function names
 - made relations list optional
 - put allowGlobalOwner in options objects
 - check length of relations array so join doesn't happen if empty
 - update some comments to further explain rationale
 - remove unneeded `Object.assign`
 - remove non-null assertion from test

* ♻️ move filtered credentials selected fields to variable

* ♻️ remove unneeded merges in credentials service

Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com>

*  fix test

* 🐛 fix imports

* 👕 fix lint issue

* User Management: switch over to decorators to define routes (#3827)

* Add permissions details to credentials for User Management (#3863)

*  Open `GET /users`

*  Add permissions to cred service

* 🚚 Rename method

*  Refactor cred controller

* 🧪 Adjust test

* ✏️ Improve comment

* ✏️ Improve another comment

*  Account for multiple sharings

* 🐛 Fix access when user is editor

* 📘 Expand interface

* 📘 Relocate types

* 📘 Exempt cred entity with service-injected fields

* 📘 Adjust interface

* ♻️ Add permissions only in `GET /credentials`

* 🧪 Add expectations for `ownedBy`

* 🧪 Add sharing details test

* 🧪 Make `ownedBy` checks more granular

* 📘 Adjust interface

* 🚚 Rename cred getter

* ♻️ Refactor cred getter

* 🧪 Expand tests

* ♻️ Refactor to use guard

* 👕 Remove unneeded lint exception

* 🔥 Remove unneeded relation

* 🚚 Move relation to `GET /credentials/:id`

* 📘 Consolidate typings

* 🎨 Add multiline for readability

* 🔥 Remove unneeded type

* ✏️ Clarity comment

* ✏️ Make comments consistent

* 👕 Add exception to fix build

* 👕 Add more lint exceptions to fix build

* 🐛 Check for non-owner

* 📘 Improve typings

* 🧪 Temporarily skip tests

* 🔥 Remove `@ts-ignore`

* 👕 Move lint exceptions

* ♻️ Refactor cred service and controller

*  Simplify check

* ✏️ adjust naming to experimental

* ️ add credentialsSharing flag to settings

* 🛠 add helper to check if UM is also enabled as dependency for CredentialsSharing

* 👕 fix lint error

* 🐘 change name of credential role

* 🚧 WIP batch sharing

* 🚧 WIP use put for sharing

*  add tests for batch sharing, 🛠 implement review suggestions

*  expand credential sharing tests for User Management (#3931)

* 🧪 Expand cred sharing tests

*  Add recently added flags

*  fix and adjust tests for /credentials

Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>

*  User management v2 Front End (#3795)

* feat: Added responsive generic page view layout.

* feat: Added empty state.

* feat: Added credentials view empty state.

* test: Added unit tests for N8nActionBox

* feat: Added credentials list initial design.

* feat: Added credential actions. Started working on filters.

* feat: Updated InfoTip markup, added tests and changed stories to typescript.

* feat: Added credentials filtering by type. Added support for apply/reset filters.

* feat: Added credential sharing user select and user list. Added paywall component.

* feat: Updated credentials view permissions.

* feat: Added support for temporary sharing config for unsaved credentials.

* test: Fixed broken snapshots.

* feat: Added overflow styles to page-view-layout list.

* feat: Handled sharee specific views.

* feat: Integration between FE and BE to support real-world credential sharing scenario.

* feat: Added front end permissions table.

* feat: Refactored credential sharing flow. Updated design elements.

* feat: Added margin and padding auto spacer utilities.

* feat: Rehauled permissions to support instanceOwner role and action inheritance.

* feat: Updated credentials view to apply filters automatically.

* feat: Removed apply filters button and added active button state.

* test: Updated component snapshots.

* refactor: Renamed ResourceSharee to ResourceReader.

* feat: Credential sharing error handling, permissions improvement.

* feat: Updated permissions and error handling.

* chore: Removed console.log.

* 🛠 refactor enabling of credentialsSharing

* feat: Removed owner menu selector from credentials when sharing is disabled.

* refactor: Moved EE features into ee store module file.

* 🛠 add sharing info to GET credentials/:id

* fix: Fixed initial credential data loading for sharing.

* chore: Removed console.log.

* 🐛 owner can fetch any credential

* 🛠 refactor users test

* 👕 fix build type issue

* fix: Removed owner tag when credential sharing is disabled. Fixed small reactivity issue.

* chore: Removed console.log.

* 🚧 separate fetching credentials between EE and open

* fix: Fixed empty dropdown in users list.

* fix: Fixed error message and initialization when credential gets unshared.

*  add tests for fetching single credential

* Revert decorators based controllers

* ️ adjust credentials test route to also allow testing for sharees (#3999)

* ️ pull data if user is sharee

* fix: Removed sharedWith and ownedBy from credentialData on testing credentials.

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

* 📈 add BE analytics

* 💪 improve credential test

* ️ adjust tracking properties

* ️ removed roles from tracking

* 🐛 fix build by removing imports

* 🐛 fix missed merge conflict

* feat: User management P2 Front End bug bash and improvements (#4014)

* fix: Fixed type select size after reopening dropdown.

* fix: Fixed template cards.

* fix: Fixed card content size and copy input.

* fix: Fixed horizontal overflow.

* fix: Hiding el-tags scrollbar in select.

* fix: Added fallback credential icon. Added oAuth credential owner check.

* feat: Added disabled state to user select.

* feat: Added fallback scenario for non-existent credential types.

* feat: Adjusted credentials empty state to show that there are shared credentials.

* fix: Fixed time title.

* feat: Added actionable empty state when shared credentials are present.

* fix: Made action box x padding smaller

* feat: Repositioned owner tag for credential card.

* feat: Updated message box styling to use n8n css variables.

* feat: Added confirmation for deleting sharee.

* fix: Fixed deleted credential types. Fixed select in dropdown bug.

* fix: Various code improvements. Addressed PR review comments.

* fix: Fixed credential deletion errors.

* fix: Various code quality improvements.

* feat: N8N-4531 update cloud coming soon features (#4025)

* feat: Showing different upcoming feature messages and format for cloud.

* fix: Changed url format.

* fix: Updated how cloud deployment is determined.

* feat: N8N-4527 implementing credential sharing FE telemetry (#4023)

* feat: Added credential sharing telemetry.

* chore: Renamed computed function for consistency.

* refactor: Simplified subview telemetry sending.

* fix: Changed to callDebounced() helper.

* 📧 update email text

* fix: Adjusted feature coming soon margin.

* chore: Fixed type and line height for delete sharee confirmation modal.

* refactor(editor-ui): Update telemetry (#4040)

* 🔥 Remove `identify` from BE

*  Add `versionCli`

*  Add node creator ignore input

*  Move obfuscators to editor-ui

*  Refactor `ph-no-capture`

*  Pass `user_id` to manual exec props

* 🚚 Relocate class in `SettingsApiView`

*  Add `userId` to BE PH `identify` call

*  Revert " Add `userId` to BE PH `identify` call"

This reverts commit 895aaa45e5.

* Revert " Revert " Add `userId` to BE PH `identify` call""

This reverts commit b86a098c20.

* 🐛 Fix `Promise` handling in `track()` call

*  Restore `Db.collections` call

*  Set up PH payload to mirror RS

* 🔥 Remove excess `userId`

* 📘 Remove `userId` from interface

* 🔥 Remove unused ref and method

* fix: Fixed bug causing instanceOwner to become credential owner on update. (#4079)

* 🐛 fix test for credential shared with member

* 👕 fix lint issues

* delete conflicting migration. this data is already seeded in CreateUserManagement

* feat: Expand obfuscation to User Management credential sharing (#4070)

 Expand obfuscation

* feat: Added credential sharing infotip for instance owner.

* bring back the migration. add a check to avoid conflicts on inserts

* fix(cli): use a non-env config flag to detect of enterprise features are enabled (#4105)

* chore: Changed ampersand to and in translation.

* refactor(telemetry): Obfuscate code and JSON editors (#4118)

 Obfuscate code and JSON editors

* feat(editor): improve design and functionality of coming soon features (#4116)

* feat: Improved coming soon feature design and functionality.

* style: Removed empty line.

* chore: Removed unused translation.

* fix: fix telemetry for credential creates and updates (#4125)

fix telemetry for credential creates and updates

* feat: Display errors due to missing credentials in the correct node (#4124)

feat: Display errors due to invalid credentials in the correct node when missing permissions

* fix: remove duplicate header for coming soon features in cloud deployment

* telemetry: fix the payload for `User viewed credential tab`

* telemetry: add credential_id to 'User selected credential from node modal'

* feat: update empty states for coming soon features

* Update ActionBox.spec.ts.snap

* replace UserSharingsDetails with a subset of User properties

* rename the CreateCredentialsEditorRole to CreateCredentialsUserRole

* move IUser to the workflow package

* use IUser in the frontend as well

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Valya <68596159+valya@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2022-09-21 10:20:29 +02:00
Ricardo Espinoza 0ab89ad5d6
fix(HTTP Node): fix instance crashing when batching enabled (#3902)
* 🐛 Fix instance crashing when batching enabled

* Add flag parsing for simple mode

* 🐛 Fix issue with simple flag

*  improvements

*  Improvements

* 🔥 Remove console.log

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2022-09-15 16:32:13 -04:00
Ricardo Espinoza 6c41b29ad2
fix(cli): Fix issue with n8n crashing when error in poll method (#4008)
* 🐛 Fix issue with n8n crashing when error in poll method

* Remove unnecessary imports and add async property

* Remove unnecessary imports

*  Move createErrorExecution to genericHelper

*  Improvements

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2022-09-15 16:16:54 -04:00
Jan Oberhauser 3c436ed2b5 🔖 Release n8n-core@0.134.0 2022-09-15 14:33:28 +00:00
Jan Oberhauser 9ec2eacbd6 ⬆️ Set n8n-workflow@0.116.0 on n8n-core 2022-09-15 14:33:28 +00:00
कारतोफ्फेलस्क्रिप्ट™ 461848fcc4
fix(cli,core): Address Dependabot warnings [N8N-4121] (#3883)
* feat(cli): upgrade passport

* feat(core): upgrade file-type

* force upgrade browserslist

* force upgrade ejs

* force upgrade globby and fork-ts-checker-webpack-plugin
2022-09-14 09:50:33 +02:00
Jonathan Bennetts 3de0e228cb
fix(core): fix issue with returnJsonArray helper breaking nodes that return no data 2022-09-12 16:30:47 +01:00
कारतोफ्फेलस्क्रिप्ट™ 69eb97999d
fix(eslint): setup eslint to run on every package - N8N-4553 (#4050)
* fix(eslint): setup eslint to run on every package

Also, unify eslint config and dependencies into a private package in the workspace.
2022-09-12 11:41:50 +02:00
Rhys Williams f6064ef278
fix(core & function nodes): Update function nodes to work with binary-data-mode 'filesystem'. (#3845)
* Initial Fix

* Self-Review #1

* Lint

* Added support for FunctionItem. Minor updates.

* Self-review

* review comments. Added testing.

* Self Review

* Fixed memory handling on data manager use.

* Fixes for unnecessary memory leaks.
2022-09-11 16:42:09 +02:00
कारतोफ्फेलस्क्रिप्ट™ 9267e8fb12
fix(typescript): Use consistent typescript configs - N8N-4552 (#4049)
fix(typescript): Use consistent typescript configs

make all packages inherit tsconfig from the root tsconfig
skips building tests. reformat all tsconfigs with prettier.
2022-09-09 18:00:18 +02:00
कारतोफ्फेलस्क्रिप्ट™ 799676b24d
feat(typescript): Setup Typescript incremental builds (#3876) 2022-09-09 15:24:23 +02:00
Jan Oberhauser d9084b1e24 🔖 Release n8n-core@0.133.3, n8n-editor-ui@0.159.4, n8n-node-dev@0.72.1, n8n-nodes-base@0.191.3 and n8n@0.193.5 2022-09-07 16:40:10 +02:00
Omar Ajoue fbd044bf87
fix(gmail): fix node and improve helper so to avoid double wrapping in json key (#4052)
* fix: improve helper so to avoid double wrapping in json key

* fix: gmail node should now correctly output data
2022-09-07 16:02:48 +02:00
Jan Oberhauser 3473307fdc 🔖 Release n8n-core@0.133.2 2022-09-06 14:37:22 +02:00
Jan Oberhauser ae96384260 ⬆️ Set n8n-workflow@0.115.1 on n8n-core 2022-09-06 14:36:37 +02:00
Omar Ajoue 103f04e4eb
fix(AWS Nodes): Handle query string and body properly for AWS related requests (#4039) 2022-09-06 14:33:52 +02:00
Aaron Delasy 49c85a1df8
fix: correct all the spelling typos (#3960)
* Improve code health
Fix TS typos in local variables
Fix CSS typos in local styles
Fix typos in comments
Fix typos in strings

* Fix order of n8n setup sections in CONTRIBUTING.md
2022-09-02 16:13:17 +02:00
Jan Oberhauser 7dc2da539c 🔖 Release n8n-core@0.133.1 2022-09-01 18:00:24 +02:00
Iván Ovejero c8743ff6ca
fix(core): Fix disabled parent output in partial execution (#3946)
🐛 Skip disabled parent in partial execution
2022-09-01 15:43:48 +02:00
Jan Oberhauser 3b669dddf8 🔖 Release n8n-core@0.133.0 2022-08-31 14:46:07 +00:00
Jan Oberhauser b572e7e30e ⬆️ Set n8n-workflow@0.115.0 on n8n-core 2022-08-31 14:46:07 +00:00
Omar Ajoue b2c674591c
Feature/paired item support (#3869)
* Add paired item helper and implement it in some nodes
2022-08-30 17:55:33 +02:00
Marcus 087d3f99f1
fix(core): make digest auth work with query params
* fixed NodeExecutionFunction digestAuthAxiosConfig using url search params

* fixed linting error because auto format removed tabs
2022-08-30 17:27:40 +02:00
Cornelius Suermann 3939d52851
docs(license): Introduce n8n Enterprise License (#3945) 2022-08-29 22:08:42 +02:00
Jan Oberhauser 5a546e426d :refactor: Fix lint issues 2022-08-24 16:38:50 +02:00
Jan Oberhauser a87b7cc2ee 🔖 Release n8n-core@0.132.0 2022-08-24 14:19:40 +00:00
Jan Oberhauser ed6571b775 ⬆️ Set n8n-workflow@0.114.0 on n8n-core 2022-08-24 14:19:39 +00:00
agobrech 5285fc1de6
N8N-4134 Add AWS cred testing and http custom calls with credentials (#3924)
*  Add Aws testing and http custom api
2022-08-23 19:02:32 +02:00
Iván Ovejero b1e715299d
feat(core, editor): Support pairedItem for pinned data (#3843)
* 📘 Adjust interface

*  Adjust pindata in state store

*  Add utils

*  Replace utils calls

*  Adjust pindata intake and display

* 🔥 Remove excess BE fixes

* 📝 Update comment

* 🧪 Adjust tests

* 🔥 Remove unneeded helper

* 🚚 Improve naming

* 🧹 Clean up `ormconfig.ts`

* 📘 Add types and type guards

*  Improve serializer for sqlite

*  Create migration utils

*  Set up sqlite serializer

* 🗃️ Write sqlite migration

* 🗃️ Write MySQL migration

* 🗃️ Write Postgres migration

*  Add imports and exports to barrels

* 🚚 Rename `runChunked` to `runInBatches`

*  Improve migration loggers

* ♻️ Address feedback

* 🚚 Improve naming
2022-08-22 17:46:22 +02:00
कारतोफ्फेलस्क्रिप्ट™ dc8f8b7874
[N8N-4339] Unify all Cron-specific code. Improve typing, and add tests. (#3887) 2022-08-19 12:45:04 +02:00
Michael Kret 91d7e16c81
n8n-3867-progressively-apply-prettier-to-all (#3873)
* 🔨 formatting nodes with prettier
2022-08-17 17:50:24 +02:00
Jan Oberhauser 74b4a82cec 🔖 Release n8n-core@0.131.0 2022-08-17 11:19:31 +00:00
Jan Oberhauser e6d74982b1 ⬆️ Set n8n-workflow@0.113.0 on n8n-core 2022-08-17 11:19:31 +00:00
कारतोफ्फेलस्क्रिप्ट™ e3f0ee68b4
[Fix #3540] Handle iterator request bodies in convertN8nRequestToAxios (#3567)
* Fix issue with request body not being sent when using the new request helper
2022-08-15 10:42:00 +02:00
Omar Ajoue f782bcd52d
fix(core): Fix issue with not displayed child workflow executions (#3867) 2022-08-12 14:31:11 +02:00
Jan Oberhauser 335224b329 🔖 Release n8n-core@0.130.0 2022-08-10 10:11:34 +00:00
Jan Oberhauser b9b24b53e3 ⬆️ Set n8n-workflow@0.112.0 on n8n-core 2022-08-10 10:11:33 +00:00
Jan Oberhauser 30701432ff 🔖 Release n8n-core@0.129.0 2022-08-03 16:18:24 +00:00
Jan Oberhauser 8cedf030f1 ⬆️ Set n8n-workflow@0.111.0 on n8n-core 2022-08-03 16:18:23 +00:00
Jan Oberhauser b22ff1f5c1 refactor: Update additional README.md files 2022-08-03 13:34:49 +02:00
Mutasem Aldmour 679a443a0c
refactor: Add node IDs (#3788)
* update type

* add id to new nodes

* update paste/import behavior

* update duplicate/copy

* update duplicate workflow

* update import functions + templates

* add instance id on copy

* on download add instance id

* simplify for testing

* update telemetry events

* add ids to nodegraph

* not if same instance

* update spacing

* fix tests

* update tests

* add uuid

* fix tests

update tests

add uuid

fix ts issue

* fix telemetry event

* update workflow import

* update public api

* add sqlit migration

* on workflow update

* add psql migration

* add mysql migration

* revert to title

* fix telemetry bug

* remove console log

* remove migration logs

* fix copy/paste bug

* replace node index with node id

* remove console log

* address PR feedback

* address comment

* fix type issue

* fix select

* update schema

* fix ts issue

* update tel helpers

* fix eslint issues
2022-08-03 13:06:53 +02:00
Jan Oberhauser 385f5fb6c3 🔖 Release n8n-core@0.128.0 2022-07-27 15:39:03 +00:00
Jan Oberhauser a80c284372 ⬆️ Set n8n-workflow@0.110.0 on n8n-core 2022-07-27 15:39:03 +00:00
Iván Ovejero f9f05621a1
refactor: Upgrade to ESLint 8 (#3722)
* ⬆️ Upgrade to ESLint 8

* 📦 Update package-lock.json

* 👕 Add lint exceptions

* 👕 Add more lint exceptions

*  Remove `tslint` from some packages

* 👕 Except init file

* 📦 Update `package-lock.json`

* 📦 Update `package-lock.json`

* 👕 Add exceptions to new lines coming from `master `

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-07-24 17:25:01 +02:00