Commit graph

279 commits

Author SHA1 Message Date
Jan Oberhauser 205a314a52 🔖 Release n8n-core@0.78.0 2021-07-24 19:59:49 +00:00
Jan Oberhauser 576aa9fb85 ⬆️ Set n8n-workflow@0.64.0 on n8n-core 2021-07-24 19:59:49 +00:00
Jan Oberhauser d0221ce625 🔖 Release n8n-core@0.77.0 2021-07-11 16:21:37 +00:00
Omar Ajoue d3da5023f0
🐛 Fix "unknown", never-end workflow and not displaying error message (#1978)
* Added try catch blocks to avoid endlessly running workflows

* Added handling for subworkflows

*  Fix one cause of "unkown" status of worklows with "main" mode

*  Fix one cause of "unkown" status of worklows with "own" mode

*  Fix one cause of "unkown" status of worklows with "queue" mode

* Saving database recovery

* 🐛 Fix issue that errors did not get saved correctly and also not
displayed

*  Save workflow timeout correctly as error

* Adding error capture to queued jobs

*  Mark canceled executions as not finished consistently across all
modes

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-07-10 11:34:41 +02:00
Jan Oberhauser 8b94373863 🔖 Release n8n-core@0.76.0 2021-07-04 18:13:01 +00:00
Jan Oberhauser 1532d27102 ⬆️ Set n8n-workflow@0.63.0 on n8n-core 2021-07-04 18:13:00 +00:00
Jan Oberhauser bb701dd3ea 🔖 Release n8n-core@0.75.0 2021-06-20 09:15:41 +00:00
Jan Oberhauser 627e17324e ⬆️ Set n8n-workflow@0.62.0 on n8n-core 2021-06-20 09:15:41 +00:00
Jan Oberhauser 786c19806b 🔖 Release n8n-core@0.74.0 2021-06-13 17:56:07 +00:00
Jan Oberhauser a427f78010 ⬆️ Set n8n-workflow@0.61.0 on n8n-core 2021-06-13 17:56:07 +00:00
Jan Oberhauser 1d850da9fb Send request of HTTP Request node to browser console when testing 2021-06-12 20:22:55 +02:00
Jan Oberhauser e80cbc4ef9 🔖 Release n8n-core@0.73.0 2021-05-30 17:46:14 +00:00
Jan Oberhauser 3b071b3b55 ⬆️ Set n8n-workflow@0.60.0 on n8n-core 2021-05-30 17:46:14 +00:00
Jan 4946bfcd3e
Add functionality to send console.log messages to editor-UI (#1816)
*  Send console.log messages to editor-UI

*  Send message only to session which started workflow

*  Made it also work in own process

*  Add support for console.log UI forward also to FunctionItem Node

* 👕 Fix lint issue

* 👕 Fix linting issue

*  Improve code

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

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2021-05-29 13:41:25 -05:00
Jan Oberhauser 67ce1a5c1f 🔖 Release n8n-core@0.72.0 2021-05-20 21:42:26 +00:00
Jan Oberhauser a60f5e0997 ⬆️ Set n8n-workflow@0.59.0 on n8n-core 2021-05-20 21:42:26 +00:00
Jan Oberhauser 002f53a4af Allow to load sibling parameters in loadOptionsMethod 2021-05-16 18:16:24 -05:00
Jan Oberhauser da3856e875 🔖 Release n8n-core@0.71.0 2021-05-16 18:43:14 +00:00
Jan Oberhauser 4de0daa2c2 ⬆️ Set n8n-workflow@0.58.0 on n8n-core 2021-05-16 18:43:14 +00:00
Jan Oberhauser 1aa0a5cc8d Make it possible to read sibling parameter 2021-05-14 18:16:48 -05:00
Jan Oberhauser b05c4d5a55 🔖 Release n8n-core@0.70.0 2021-05-09 19:24:17 +00:00
Jan Oberhauser b47f4bc012 🐛 Fix issue that nodes did execute even if there was no input data 2021-05-08 21:49:55 -05:00
Jan Oberhauser 56b93c3e7e 🔖 Release n8n-core@0.69.0 2021-05-02 13:56:37 +00:00
Jan Oberhauser 6980ecf2a8 ⬆️ Set n8n-workflow@0.57.0 on n8n-core 2021-05-02 13:56:37 +00:00
Omar Ajoue c972f3dd50
Added logging to n8n (#1381)
* Added logging to n8n

This commit adds logging to n8n using the Winston library.

For now, this commit only allows logging to console (default behavior)
or file (need to pass in config via environment variables).

Other logging methods can be further implemented using hooks. These were
skipped for now as it would require adding more dependencies.

Logging level is notice by default, meaning no additional messages would
be displayed at the moment. Logging level can be set to info or debug as
well to enrich the generated logs.

The ILogger interface was added to the workflow project as it would make
it available for all other projects but the implementation was done on
the cli project.

* Lint fixes and logging level naming. Also fixed the way we use the logger as it was not working previously

* Improvements to logging framework

Using appropriate single quotes
Improving the way the logger is declared

* Improved naming for Log Types

* Removed logger global variable, replacing it by a proxy

* Add logging to CLI commands

* Remove unused GenericHelpers

* Changed back some messages to console instead of logger and added npm
shortcuts for worker and webhook

* Fix typos

* Adding basic file rotation to logs as suggested by @mutdmour

* Fixed linting issues

* Correcting comment to correctly reflect space usage

* Added settings for log files rotation

* Correcting config type from String to Number

* Changed default file settings to number

To reflect previous changes to the type

* Changed the way log messages are added to be called statically. Also minor naming improvements

* Applying latest corrections sent by @ivov

*  Some logging improvements

* Saving logs to a folder inside n8n home instead of root

* Fixed broken tests and linting

* Changed some log messages to improve formatting

* Adding quotes to names  on log messages

* Added execution and session IDs to logs. Also removed unnecessary line breaks

*  Added file caller to log messages (#1657)

This is done using callsites library which already existed
in the project as another library's dependency. So in fact
it does not add any new dependency.

* Adding logs to help debug Salesforce node

*  Add function name to logs and add more logs

*  Improve some error messages

*  Improve some more log messages

*  Rename logging env variables to match others

Co-authored-by: dali <servfrdali@yahoo.fr>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-05-01 22:43:01 -05:00
Jan Oberhauser 3dacb283ac 🔖 Release n8n-core@0.68.0 2021-04-17 15:34:20 +00:00
Jan Oberhauser 659232c2b1 ⬆️ Set n8n-workflow@0.56.0 on n8n-core 2021-04-17 15:34:20 +00:00
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
Omar Ajoue 882e2f8e74
Addglobal timeout setting for all http requests except for http request node (#1650)
* Added a global timeout setting for all http requests except for http
node.

The http node explicitly sets a timeout that overrides the default
value.

This is to prevent behaviors when users were expecting that their quests
could take a very long time to execute.

* Removed unnecessary typing from code
2021-04-17 15:15:33 +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
Ahsan Virani b54aae8c31
⬆️ Update types/node package in all packages (#1659)
* ⬆️ Update types/node package in all packages, fix type in crypto node

*  Fix build issue and some formatting

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-04-15 23:57:20 +02:00
Jan Oberhauser 5e2aa023fc 🔖 Release n8n-core@0.67.0 2021-04-03 15:08:33 +00:00
Jan Oberhauser f8a829b2dd Clean up package.json files 2021-03-26 09:21:27 +01:00
Jan Oberhauser a301c0d68b 🔖 Release n8n-core@0.66.0 2021-03-26 08:10:44 +00:00
Jan Oberhauser 571f815bf6 ⬆️ Set n8n-workflow@0.55.0 on n8n-core 2021-03-26 08:10:44 +00:00
Jan Oberhauser 4276150ac1 Fix indentation in all package.json files 2021-03-26 09:06:26 +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 66caf31e2f 🔖 Release n8n-core@0.65.0 2021-03-19 17:41:10 +01:00
Jan Oberhauser 9510184d79 ⬆️ Set n8n-workflow@0.54.0 on n8n-core 2021-03-19 17:40:37 +01:00
Omar Ajoue dfeb531cc0
🐛 Fix concurrency issues with subworkflows (#1558) 2021-03-19 17:32:43 +01:00
Jan Oberhauser ddce679569 Minor changes to directories in binary data 2021-03-18 18:13:24 +01:00
Jan Oberhauser d65e8ee73b 🔀 Merge branch 'binary-file-path' of https://github.com/lublak/n8n into lublak-binary-file-path 2021-03-18 13:20:26 +01:00
lublak 5da61ef252
Replace some fallback values to match the value type (#1421) 2021-03-08 18:45:35 +01:00
Jan Oberhauser 9d8d4a720a 🔖 Release n8n-core@0.64.0 2021-02-22 13:38:32 +01:00
Jan Oberhauser f0e4e649db ⬆️ Set n8n-workflow@0.53.0 on n8n-core 2021-02-22 13:38:05 +01:00
Iván Ovejero 0dcaccefa7
GoToWebinar node (#1422)
* Create scaffolding for node

* Add SVG logo

* Create scaffolding for generic functions

* Add index for descriptions

* Simplify retrieval of details

* Introduce minor fixes in generic functions

* Add attendee description

* Fix attendee description operation

* Add coorganizer description

* Add panelist description

* Add registrant description

* Add session description

* Add webinar description

* Register node and credentials

* Add scaffolding for credentials

* Minor creds fixes

* Fix SVG icon size and position

* Fix capitalization in description

* Fix credentials connection

* Add attendee fields

* Populate webinar description

* Remove organizer key from params

* Add timezones array constant

* Implement webinar:create

* Implement webinar:delete

* Convert times to fixed collection

* Add missing segments to endpoints

* Fix webinar:update operation

* Implement all-items request

* Add params for session:getAll

* Add params for webinar:getAll

* Implement session:getAll and webinar:getAll

* Implement session:get and session:getDetails

* Implement coorganizer:create

* Implement coorganizer:delete

* Implement coorganizer:getAll

* Implement coorganizer:delete

* Refactor time range for getAll operations

* Implement coorganizer:reinvite

* Implement panelist:create and panelist:getAll

* Implement panelist:delete and panelist:reinvite

* Remove array body helper types

* Implement registrant:create and registrant:getAll

* Implement registrant:delete

* Prettify error handling

* Add returnAll toggle and limit for all operations

* Preload webinars

* Preload webinar key in more fields

* Refactor getAll as handler

* Add descriptions for session

* Add descriptions for attendee

* Add descriptions for co-organizer

* Add descriptions for panelist

* Add descriptions for registrant

* Add descriptions for webinar

* Add 403 check for refresh token

* Fix defaults for webinar loader

* Add descriptions for webinar types

*  Improvements

* Remove unneeded return type annotation

* Add handler for continue on fail

* Remove 403 check in error handler

The Go To Webinar API returns 403 for a range of various errors, so this check ended up overriding more specific error messages not related to 403 Forbidden errors.

* Remove logging

*  Small improvement

*  Minor improvements

*  Improvements

*  Minor improvements

Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-02-22 08:49:00 +01:00
Jan Oberhauser c811294612 🐛 Execute node also if it is a sibling but does not receive data
from parent
2021-02-17 00:16:10 +01:00
Jan Oberhauser 56baa6398c 🔖 Release n8n-core@0.63.0 2021-02-15 13:00:17 +01:00
Jan Oberhauser b11ec91e59 ⬆️ Set n8n-workflow@0.52.0 on n8n-core 2021-02-15 12:59:51 +01:00
lublak 8f318de288 get also the dir data of the path 2021-02-15 12:34:05 +01:00