Commit graph

740 commits

Author SHA1 Message Date
Omar Ajoue 0c779de704
Implement timeout for workers and corrected timeout for subworkflows (#1634)
* Implemented timeout for workers and corrected timeout for subworkflows

* Fixed issue with timeouts when running on separate processes

* Standardized timeouts across all n8n

Now the maxTimeout setting takes effect whenever a timeout is set
to any workflows.

This causes local timeouts (either set on a per-workflow basis or
via global settings) to be capped by the maximum timeout. This
behavior already existed but was not applied to all places.

Also changed the way n8n enforces timeouts for subworkflows, making
it work always.

In effect, with this change, if you have one workflow that calls others
only the main workflow's timeout is taken into consideration, limiting
the maximum time that other workflows combined can run.

*  Fix timeout problem in "own" mode

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-04-17 16:44:07 +02:00
Iván Ovejero 1d27a9e87e
Improve node error handling (#1309)
* Add path mapping and response error interfaces

* Add error handling and throwing functionality

* Refactor error handling into a single function

* Re-implement error handling in Hacker News node

* Fix linting details

* Re-implement error handling in Spotify node

* Re-implement error handling in G Suite Admin node

* 🚧 create basic setup NodeError

* 🚧 add httpCodes

* 🚧 add path priolist

* 🚧 handle statusCode in error, adjust interfaces

* 🚧 fixing type issues w/Ivan

* 🚧 add error exploration

* 👔 fix linter issues

* 🔧 improve object check

* 🚧 remove path passing from NodeApiError

* 🚧 add multi error + refactor findProperty method

* 👔 allow any

* 🔧 handle multi error message callback

*  change return type of callback

*  add customCallback to MultiError

* 🚧 refactor to use INode

* 🔨 handle arrays, continue search after first null property found

* 🚫 refactor method access

* 🚧 setup NodeErrorView

*  change timestamp to Date.now

* 📚 Add documentation for methods and constants

* 🚧 change message setting

* 🚚 move NodeErrors to workflow

*  add new ErrorView for Nodes

* 🎨 improve error notification

* 🎨 refactor interfaces

*  add WorkflowOperationError, refactor error throwing

* 👕 fix linter issues

* 🎨 rename param

* 🐛 fix handling normal errors

*  add usage of NodeApiError

* 🎨 fix throw new error instead of constructor

* 🎨 remove unnecessary code/comments

* 🎨 adjusted spacing + updated status messages

* 🎨 fix tab indentation

*  Replace current errors with custom errors (#1576)

*  Introduce NodeApiError in catch blocks

*  Introduce NodeOperationError in nodes

*  Add missing errors and remove incompatible

*  Fix NodeOperationError in incompatible nodes

* 🔧 Adjust error handling in missed nodes

PayPal, FileMaker, Reddit, Taiga and Facebook Graph API nodes

* 🔨 Adjust Strava Trigger node error handling

* 🔨 Adjust AWS nodes error handling

* 🔨 Remove duplicate instantiation of NodeApiError

* 🐛 fix strava trigger node error handling

* Add XML parsing to NodeApiError constructor (#1633)

* 🐛 Remove type annotation from catch variable

*  Add XML parsing to NodeApiError

*  Simplify error handling in Rekognition node

*  Pass in XML flag in generic functions

* 🔥 Remove try/catch wrappers at call sites

* 🔨 Refactor setting description from XML

* 🔨 Refactor let to const in resource loaders

*  Find property in parsed XML

*  Change let to const

* 🔥 Remove unneeded try/catch block

* 👕 Fix linting issues

* 🐛 Fix errors from merge conflict resolution

*  Add custom errors to latest contributions

* 👕 Fix linting issues

*  Refactor MongoDB helpers for custom errors

* 🐛 Correct custom error type

*  Apply feedback to A nodes

*  Apply feedback to missed A node

*  Apply feedback to B-D nodes

*  Apply feedback to E-F nodes

*  Apply feedback to G nodes

*  Apply feedback to H-L nodes

*  Apply feedback to M nodes

*  Apply feedback to P nodes

*  Apply feedback to R nodes

*  Apply feedback to S nodes

*  Apply feedback to T nodes

*  Apply feedback to V-Z nodes

*  Add HTTP code to iterable node error

* 🔨 Standardize e as error

* 🔨 Standardize err as error

*  Fix error handling for non-standard nodes

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

Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com>
Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com>
2021-04-16 18:33:36 +02:00
Jan Oberhauser a8ab77b8e0 ⬆️ Set tslib@1.13.0 on cli 2021-04-16 00:05:23 +02:00
Jan Oberhauser fc299f136f ⬆️ Set mysql2@2.2.0 n8n & nodes-base 2021-04-16 00:01:45 +02:00
LongYinan 8ed1099795
Use faster bcrypt implementation (#1593) 2021-04-13 18:26:25 +02:00
Jan Oberhauser 8f3bc32555 🐛 Fix bug with expression in production webhook paths 2021-04-11 15:45:17 +02:00
Jan Oberhauser 7a99f4256f 🔖 Release n8n@0.115.0 2021-04-10 08:47:20 +00:00
Jan Oberhauser 00b5e5e68f ⬆️ Set n8n-editor-ui@0.85.0 and n8n-nodes-base@0.112.0 on n8n 2021-04-10 08:47:20 +00:00
Jan Oberhauser 2273a4cff2 Make max payload size configurable #1447 2021-04-09 12:13:42 +02:00
Jan Oberhauser 0c8afbb3cb 🔖 Release n8n@0.114.0 2021-04-03 15:10:41 +00:00
Jan Oberhauser 039b5a6afd ⬆️ Set n8n-core@0.67.0, n8n-editor-ui@0.84.0 and n8n-nodes-base@0.111.0 on n8n 2021-04-03 15:10:41 +00:00
Tanay Pant fac0876f95
Add breaking change for 0.113.0 2021-03-26 09:36:39 +01:00
Jan Oberhauser f8a829b2dd Clean up package.json files 2021-03-26 09:21:27 +01:00
Jan Oberhauser 91fbd01eae 🔖 Release n8n@0.113.0 2021-03-26 08:12:50 +00:00
Jan Oberhauser 06c34e283d ⬆️ Set n8n-core@0.66.0, n8n-editor-ui@0.83.0, n8n-nodes-base@0.110.0 and n8n-workflow@0.55.0 on n8n 2021-03-26 08:12:50 +00:00
Jan Oberhauser 4276150ac1 Fix indentation in all package.json files 2021-03-26 09:06:26 +01:00
Jan Oberhauser bfb179e5f0 Ignore issue as convict types are wrong 2021-03-25 11:42:19 +01:00
Jan Oberhauser 0c0c0bda67 Some cleanup 2021-03-25 11:23:54 +01:00
Jan Oberhauser 5f96f01f24 Make n8n work with new version of convict 2021-03-25 11:17:30 +01:00
Snyk bot bed5195eb8
⬆️ Set convict@6.0.1 on n8n
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-CONVICT-1062508
2021-03-25 11:16:56 +01:00
Omar Ajoue 726a99bf69
Add Activation Trigger (#1570)
*  n8n start trigger node

* first declaration of WorkflowActivationMode

* implement first WorkflowActivationMode: 'init', 'create', 'update', 'activate'

* fix Server missing id

* add activation infos to triggers

* remove WorkflowActivationMode from webhook execution function

* add some missing activation and add manual activation

* clean up and fix some code

* fix UnhandledPromiseRejectionWarning: Error: Overwrite NodeExecuteFunctions.getExecuteTriggerFunctions.emit function!

* fix spaces

* use a better name for the node

* fix ident in package.json

* Contributions to lublak's PR #1287

* Fixed linting issues and change the way parameters are displayed

*  Fix name and minor improvements

Co-authored-by: lublak <lublak.de@gmail.com>
Co-authored-by: lublak <44057030+lublak@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-03-23 19:08:47 +01:00
Jan Oberhauser 896ef33f40 🔖 Release n8n@0.112.0 2021-03-19 17:46:01 +01:00
Jan Oberhauser 5dbb8fb71c ⬆️ Set n8n-core@0.65.0, n8n-editor-ui@0.82.0, n8n-nodes-base@0.109.0 and n8n-workflow@0.54.0 on n8n 2021-03-19 17:45:34 +01:00
Omar Ajoue 53a20dddce
🐛 Fix issue with subworkflows running on main process (#1557) 2021-03-19 15:18:35 +01:00
Omar Ajoue b879755f0b
🐛 Fix issues with subworkflows not finishing (#1553) 2021-03-18 23:24:57 +01:00
Jan Oberhauser 09d9e12db9 🐛 Fix issue with importing decrypted separate credentials #1546 2021-03-17 21:28:22 +01:00
Ricardo Espinoza 7c21e61151
🐛 Reflect correctly Dropbox breaking change. (#1544) 2021-03-16 21:23:54 +01:00
Jan Oberhauser 06dd423648 🔖 Release n8n@0.111.0 2021-03-12 12:40:30 +01:00
Jan Oberhauser 8bbdf05e51 ⬆️ Set n8n-editor-ui@0.81.0 and n8n-nodes-base@0.108.0 on n8n 2021-03-12 12:40:06 +01:00
Omar Ajoue 8095c4a264
Add debug information for pending workflows on exit (#1536) 2021-03-12 11:35:23 +01:00
Ricardo Espinoza e1dbb72929
Add file:search operation to Dropbox Node (#1494)
*  Add search resource to Dropbox Node

* 📚 Add breaking change instructions

*  Add missing credentials

*  Add "simple" parameter to the operation search:query

*  Update breaking change message

*  Improvement

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-03-11 09:16:05 +01:00
Jan Oberhauser 263813a8f9 Rename metrics environment variable 2021-03-11 00:10:39 +01:00
Bruno Bacarini b0b172a362
Add metrics endpoint (#1515)
This commit adds the new package prom-client in order to expose metrics
to prometheus as well as the endpoint and the configuration to do so.
2021-03-11 00:10:10 +01:00
Omar Ajoue d6d57c2df6
🐛 Fixed an issue with queue mode for executions that should not be saved (#1509)
* Fixed an issue with queue mode for executions that should not be saved

*  Minimal change

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-03-10 15:51:18 +01:00
Omar Ajoue 3d80129a28
🐛 Fix performance and crashes with latest updates (#1524)
* Removing unnecessary data from process communication

* Wrapping progress save in a try ... catch block to prevent crashes

* Migration to fix mysql problems with big data on executions

*  Minor formatting fixes

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-03-10 10:50:07 +01:00
Snyk bot a28f13d13c
⬆️ Set jwks-rsa@1.12.1 on n8n
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-AXIOS-1038255
2021-03-08 14:51:49 +01:00
Jan Oberhauser f0c1809adc 🔖 Release n8n@0.110.3 2021-03-04 13:23:32 +01:00
Jan Oberhauser 08468772ee ⬆️ Set n8n-nodes-base@0.107.3 on n8n 2021-03-04 13:23:10 +01:00
Jan Oberhauser ce646de6bf 🔖 Release n8n@0.110.2 2021-03-04 13:02:09 +01:00
Jan Oberhauser ef826571fb ⬆️ Set n8n-nodes-base@0.107.2 on n8n 2021-03-04 13:01:44 +01:00
Jan Oberhauser dbdb5fcafc 🔖 Release n8n@0.110.1 2021-03-04 12:57:48 +01:00
Jan Oberhauser 8373528240 ⬆️ Set n8n-nodes-base@0.107.1 on n8n 2021-03-04 12:56:50 +01:00
Jan Oberhauser 806f7829f9 🔖 Release n8n@0.110.0 2021-03-04 12:18:59 +01:00
Jan Oberhauser 349eb8bead ⬆️ Set n8n-editor-ui@0.80.0 and n8n-nodes-base@0.107.0 on n8n 2021-03-04 12:18:28 +01:00
Omar Ajoue 66a345ea94
🐛 Fix issue with auto refresh on execution list (#1475)
* Fix issue with auto refresh on execution list

When auto refresh is on, we used to get executions from backend using
the firstId field to filter recent executions.

This is a problem when you have executions that do not finish in order,
leaving gaps behind. This PR fixes this problem by refreshing the latest
30 executions and correctly adding them to the list.

* Fixed an issues with auto refresh on executions ExecutionsList

Fixed two bugs, one in frontend which was ignoring the first returned
row from the backend and an issue with backend that was not using
the overriden version of `executeWorkflow` function for sub sub
workflows.

* Fixed the display of manual executions when running with queues and improved display of subworkflows

* Changing workflow ids array from variable to constant

* Added unknown status to workflow execution and changed its color to orange
2021-03-03 08:31:55 +01:00
Omar Ajoue 3ff7d3af39
🐛 Fix naming and description of environment variable (#1458) 2021-03-01 21:21:16 +01:00
Omar Ajoue fc09e4c10e
🐛 Fix issue that manual executionscould not be stopped when running with queue (#1484) 2021-03-01 13:19:29 +01:00
Omar Ajoue 14329b2eb4
🐛 Fixed an issue with current executing workflows when using queues (#1483)
When running n8n in queue mode, the query to search for currently
running workflows would fail on Postgres but work fine with SQLite and
MySQL / MariaDB. This fix makes it work fine for all RDBMS.
2021-03-01 12:55:01 +01:00
Jan Oberhauser 31d5333192 🔖 Release n8n@0.109.0 2021-02-22 13:51:20 +01:00
Jan Oberhauser 3eb7ee9561 ⬆️ Set n8n-core@0.64.0, n8n-editor-ui@0.79.0, n8n-nodes-base@0.106.0 and n8n-workflow@0.53.0 on n8n 2021-02-22 13:48:12 +01:00