Skip to content

Commit

Permalink
Merge branch 'master' of github.com:n8n-io/n8n into n8n-io-master
Browse files Browse the repository at this point in the history
* 'master' of github.com:n8n-io/n8n: (380 commits)
  feat(Anthropic Chat Model Node): Add support for Claude 3.5 Sonnet (n8n-io#9832)
  refactor(core): Remove inferral of execution status (no-changelog) (n8n-io#9829)
  refactor(core): Log denials from subworkflow caller policy (no-changelog) (n8n-io#9827)
  fix(Zulip Node): Fix a typo preventing some messages from updating (n8n-io#7078)
  🚀 Release 1.47.0 (n8n-io#9826)
  ci: Fix repository url for provenance checks (no-changelog) (n8n-io#9825)
  docs: Update docs links in the HTTP node (no-changelog) (n8n-io#9188)
  feat(Pipedrive Node): Add sort field for get all persons (n8n-io#8138)
  ci: Add opencontainer image spec labels to the release Dockerfile (no-changelog) (n8n-io#9822)
  fix(core): Upgrade `ws` to address CVE-2024-37890 (n8n-io#9801)
  ci: Fix ARM custom images (no-changelog) (n8n-io#9821)
  fix: Get workflow not returning home project and shared projects (no-changelog) (n8n-io#9815)
  fix(AWS SES Node): Fix issue with email aliases not working for sending from or sending to (n8n-io#9811)
  fix(Google Sheets Node): Check for column names changes before upsert, append, update (n8n-io#9649)
  fix(MongoDB Node): Correct typo in MongoDbProperties (no-changelog) (n8n-io#9587)
  fix(editor): Console error in ActionsMode when searching for action and pressing enter (no-changelog) (n8n-io#9292)
  fix(Airtable Node): Make multipleRecordLinks editable in fields (n8n-io#9608)
  refactor(editor): Refactor code editors to composition API (no-changelog) (n8n-io#9757)
  refactor: Correct spelling mistakes (no-changelog) (n8n-io#9305)
  fix(editor): Align all cell contents to the top in RunDataTable (no-changelog) (n8n-io#3889)
  ...
  • Loading branch information
longnz committed Jun 21, 2024
2 parents b9bea68 + 2ce97be commit 40935a4
Show file tree
Hide file tree
Showing 2,117 changed files with 92,516 additions and 57,308 deletions.
7 changes: 7 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM n8nio/base:20

RUN apk add --no-cache --update openssh sudo shadow bash
RUN echo node ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/node && chmod 0440 /etc/sudoers.d/node
RUN mkdir /workspaces && chown node:node /workspaces
USER node
RUN mkdir -p ~/.pnpm-store && pnpm config set store-dir ~/.pnpm-store --global
19 changes: 19 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"name": "n8n",
"dockerComposeFile": "docker-compose.yml",
"service": "n8n",
"workspaceFolder": "/workspaces",
"mounts": [
"type=bind,source=${localWorkspaceFolder},target=/workspaces,consistency=cached",
"type=bind,source=${localEnv:HOME}/.ssh,target=/home/node/.ssh,consistency=cached",
"type=bind,source=${localEnv:HOME}/.n8n,target=/home/node/.n8n,consistency=cached"
],
"forwardPorts": [8080, 5678],
"postCreateCommand": "corepack prepare --activate && pnpm install ",
"postAttachCommand": "pnpm build",
"customizations": {
"codespaces": {
"openFiles": ["CONTRIBUTING.md"]
}
}
}
23 changes: 23 additions & 0 deletions .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
volumes:
postgres-data:

services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=n8n
- POSTGRES_PASSWORD=password

n8n:
build:
context: .
dockerfile: Dockerfile
volumes:
- ..:/workspaces:cached
command: sleep infinity
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_PASSWORD: password
28 changes: 19 additions & 9 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,26 @@
## Summary
> Describe what the PR does and how to test. Photos and videos are recommended.

<!--
Describe what the PR does and how to test.
Photos and videos are recommended.
-->

## Related Linear tickets, Github issues, and Community forum posts

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

<!--
Include links to **Linear ticket** or Github issue or Community forum post.
Important in order to close *automatically* and provide context to reviewers.
-->

## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title automatically goes into the changelog. Use `(no-changelog)` otherwise.** ([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md))

- [ ] PR title and summary are descriptive. ([conventions](../blob/master/.github/pull_request_title_conventions.md)) <!--
**Remember, the title automatically goes into the changelog.
Use `(no-changelog)` otherwise.**
-->
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs) or follow-up ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it from happening again.
> A feature is not complete without tests.
- [ ] Tests included. <!--
A bug is not considered fixed, unless a test is added to prevent it from happening again.
A feature is not complete without tests.
-->
- [ ] PR Labeled with `release/backport` (if the PR is an urgent fix that needs to be backported)
4 changes: 2 additions & 2 deletions .github/workflows/check-documentation-urls.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ jobs:
- uses: actions/checkout@v4.1.1

- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'

- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check-pr-title.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ jobs:
uses: actions/checkout@v4.1.1

- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'

- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ jobs:
fetch-depth: 0

- name: Use Node.js
uses: actions/setup-node@v4.0.1
uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x

- run: npm install --prefix=.github/scripts --no-package-lock

Expand Down
43 changes: 38 additions & 5 deletions .github/workflows/chromatic.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,59 @@
name: Chromatic

on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
pull_request_review:
types: [submitted]
branch:
- 'master'
paths:
- packages/design-system/**
- .github/workflows/chromatic.yml

concurrency:
group: chromatic-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
chromatic:
if: ${{ github.event.review.state == 'approved' && !contains(github.event.pull_request.labels.*.name, 'community') }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
with:
fetch-depth: 0
- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'
- run: pnpm install --frozen-lockfile

- name: Publish to Chromatic
uses: chromaui/action@latest
uses: chromaui/action@v11
id: chromatic_tests
continue-on-error: true
with:
workingDir: packages/design-system
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
exitZeroOnChanges: false

- name: Success comment
if: steps.chromatic_tests.outcome == 'success'
uses: peter-evans/create-or-update-comment@v4.0.0
with:
issue-number: ${{ github.event.pull_request.number }}
token: ${{ secrets.GITHUB_TOKEN }}
edit-mode: replace
body: |
:white_check_mark: No visual regressions found.
- name: Fail comment
if: steps.chromatic_tests.outcome != 'success'
uses: peter-evans/create-or-update-comment@v4.0.0
with:
issue-number: ${{ github.event.pull_request.number }}
token: ${{ secrets.GITHUB_TOKEN }}
edit-mode: replace
body: |
[:warning: Visual regressions found](${{steps.chromatic_tests.outputs.url}}): ${{steps.chromatic_tests.outputs.changeCount}}
53 changes: 11 additions & 42 deletions .github/workflows/ci-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,15 @@ jobs:
install-and-build:
runs-on: ubuntu-latest

timeout-minutes: 30

strategy:
matrix:
node-version: [18.x, 20.x]
timeout-minutes: 10

steps:
- uses: actions/checkout@v4.1.1

- run: corepack enable
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
node-version: 20.x
cache: pnpm

- name: Install dependencies
Expand All @@ -35,54 +30,28 @@ jobs:
uses: actions/cache/save@v4.0.0
with:
path: ./packages/**/dist
key: ${{ github.sha }}-base:${{ matrix.node-version }}-test-lint
key: ${{ github.sha }}-base:build

unit-test:
name: Unit tests
uses: ./.github/workflows/units-tests-reusable.yml
needs: install-and-build
strategy:
matrix:
node-version: [18.x, 20.x]
node-version: [18.x, 20.x, 22.x]
with:
ref: ${{ inputs.branch }}
nodeVersion: ${{ matrix.node-version }}
cacheKey: ${{ github.sha }}-base:${{ matrix.node-version }}-test-lint
cacheKey: ${{ github.sha }}-base:build
collectCoverage: true

lint:
name: Lint changes
runs-on: ubuntu-latest
name: Lint
uses: ./.github/workflows/linting-reusable.yml
needs: install-and-build
strategy:
matrix:
node-version: [18.x, 20.x]
steps:
- uses: actions/checkout@v4.1.1
with:
repository: n8n-io/n8n
ref: ${{ inputs.branch }}

- run: corepack enable
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.1
with:
node-version: ${{ matrix.node-version }}
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Restore cached build artifacts
uses: actions/cache/restore@v4.0.0
with:
path: ./packages/**/dist
key: ${{ github.sha }}-base:${{ matrix.node-version }}-test-lint

- name: Lint
env:
CI_LINT_MASTER: true
run: pnpm lint
with:
ref: ${{ inputs.branch }}
cacheKey: ${{ github.sha }}-base:build

notify-on-failure:
name: Notify Slack on failure
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/ci-postgres-mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:
pull_request:
paths:
- packages/cli/src/databases/**
- .github/workflows/ci-postgres-mysql.yml

concurrency:
group: db-${{ github.event.pull_request.number || github.ref }}
Expand All @@ -19,9 +20,9 @@ jobs:
steps:
- uses: actions/checkout@v4.1.1
- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'
- run: pnpm install --frozen-lockfile

Expand All @@ -45,9 +46,9 @@ jobs:
steps:
- uses: actions/checkout@v4.1.1
- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'
- run: pnpm install --frozen-lockfile

Expand All @@ -71,9 +72,9 @@ jobs:
steps:
- uses: actions/checkout@v4.1.1
- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'
- run: pnpm install --frozen-lockfile

Expand All @@ -92,7 +93,7 @@ jobs:
- name: Test MySQL
working-directory: packages/cli
run: pnpm test:mysql
run: pnpm test:mysql --testTimeout 20000

postgres:
name: Postgres
Expand All @@ -101,12 +102,13 @@ jobs:
timeout-minutes: 20
env:
DB_POSTGRESDB_PASSWORD: password
DB_POSTGRESDB_POOL_SIZE: 1 # Detect connection pooling deadlocks
steps:
- uses: actions/checkout@v4.1.1
- run: corepack enable
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v4.0.2
with:
node-version: 18.x
node-version: 20.x
cache: 'pnpm'
- run: pnpm install --frozen-lockfile

Expand Down
Loading

0 comments on commit 40935a4

Please sign in to comment.