Skip to content

Commit f910f88

Browse files
committed
Merge branch 'main' into rxjs-remove-deprecated-code
2 parents 1a64097 + 744ece9 commit f910f88

35 files changed

Lines changed: 4781 additions & 12611 deletions

.github/ISSUE_TEMPLATE.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
<!--
22
3+
>> Before opening a new issue, please ensure there's no
4+
>> existing issue with the same concern!
5+
36
For bug reports, please provide the following information:
47
58
- Description: Clear and concise description of what the bug is
6-
- Expected Behavior: What you expected to happen (instead)
9+
- Expected Behavior: What you expected to happen
710
- Environment: At least the OS and version of "concurrently"
811
- Reproduction: A way to reproduce the issue
912

.github/actions/setup-npm-cache/action.yml

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# See also https://github.com/actions/cache/blob/main/examples.md#node---npm
2+
3+
name: Setup pnpm
4+
runs:
5+
using: composite
6+
steps:
7+
- name: Install pnpm
8+
uses: pnpm/action-setup@v2
9+
with:
10+
version: 7
11+
12+
- name: Get pnpm store directory
13+
id: pnpm-cache-dir
14+
shell: bash
15+
run: echo "dir=$(pnpm store path)" >> $GITHUB_OUTPUT
16+
17+
- name: Setup pnpm cache
18+
uses: actions/cache@v3
19+
with:
20+
path: ${{ steps.pnpm-cache-dir.outputs.dir }}
21+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
22+
restore-keys: |
23+
${{ runner.os }}-pnpm-store-

.github/workflows/lint-format.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@ jobs:
2525
with:
2626
node-version: 16
2727

28-
- name: Setup NPM cache
29-
uses: ./.github/actions/setup-npm-cache
28+
- name: Setup pnpm
29+
uses: ./.github/actions/setup-pnpm
3030

3131
- name: Install dependencies
32-
run: npm ci && npm install --global concurrently
32+
run: pnpm install && pnpm add --global concurrently
3333

3434
- name: Lint & Format
35-
run: concurrently --prefix none --group "npm:lint" "npm:format"
35+
run: concurrently --prefix none --group "pnpm:lint" "pnpm:format"

.github/workflows/release.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
gh-release:
13+
name: Create GitHub Release
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout repository
17+
uses: actions/checkout@v3
18+
19+
- name: Create release
20+
env:
21+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
22+
run: gh release create "$GITHUB_REF_NAME" --generate-notes
23+
24+
publish-npm:
25+
name: Publish to NPM
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Checkout repository
29+
uses: actions/checkout@v3
30+
31+
- name: Setup Node.js
32+
uses: actions/setup-node@v3
33+
with:
34+
node-version: 16
35+
registry-url: https://registry.npmjs.org
36+
37+
- name: Setup pnpm
38+
uses: ./.github/actions/setup-pnpm
39+
40+
- name: Install dependencies
41+
run: pnpm install
42+
43+
- name: Publish to NPM
44+
env:
45+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
46+
run: pnpm publish --no-git-checks

.github/workflows/test.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ jobs:
2828
fail-fast: false
2929
matrix:
3030
node:
31-
- 12
3231
- 14
3332
- 16
34-
- 17
33+
- 18
34+
- 19
3535
os:
3636
- name: Ubuntu
3737
version: ubuntu-latest
@@ -48,14 +48,14 @@ jobs:
4848
with:
4949
node-version: ${{ matrix.node }}
5050

51-
- name: Setup NPM cache
52-
uses: ./.github/actions/setup-npm-cache
51+
- name: Setup pnpm
52+
uses: ./.github/actions/setup-pnpm
5353

5454
- name: Install dependencies
55-
run: npm ci && npm install --global concurrently
55+
run: pnpm install && pnpm add --global concurrently
5656

5757
- name: Build & Test
58-
run: concurrently --prefix none --group "npm:build" "npm:test"
58+
run: concurrently --prefix none --group "pnpm:build" "pnpm:test"
5959

6060
- name: Submit coverage
6161
uses: coverallsapp/github-action@master

.husky/pre-commit

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/usr/bin/env sh
2+
. "$(dirname -- "$0")/_/husky.sh"
3+
4+
./node_modules/.bin/lint-staged

.prettierignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
dist
2+
coverage
3+
pnpm-lock.yaml

CONTRIBUTING.md

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,15 @@ updated.
1010

1111
## Code Format & Linting
1212

13-
Code format and lint checks are performed locally when committing to ensure the changes align with the configured rules of this repository. This happens with the help of the tools [simple-git-hooks](https://github.com/toplenboren/simple-git-hooks) and [lint-staged](https://github.com/okonet/lint-staged) which are automatically installed and configured on `npm install` (no further steps required).
13+
Code format and lint checks are performed locally when committing to ensure the changes align with the configured rules of this repository. This happens with the help of the tools [simple-git-hooks](https://github.com/toplenboren/simple-git-hooks) and [lint-staged](https://github.com/okonet/lint-staged) which are automatically installed and configured on `pnpm install` (no further steps required).
1414

1515
In case of problems, a corresponding message is displayed in your terminal.
1616
Please fix them and then run the commit command again.
1717

1818
## Test
1919

20-
Tests can be run with the command:
20+
Tests can be executed with the following command:
2121

2222
```bash
23-
npm test
23+
pnpm test
2424
```
25-
26-
## Release
27-
28-
Use [np](https://www.npmjs.com/package/np) to create a new release.

README.md

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![Latest Release](https://img.shields.io/github/v/release/open-cli-tools/concurrently?label=Release)](https://github.com/open-cli-tools/concurrently/releases)
44
[![License](https://img.shields.io/github/license/open-cli-tools/concurrently?label=License)](https://github.com/open-cli-tools/concurrently/blob/main/LICENSE)
55
[![Weekly Downloads on NPM](https://img.shields.io/npm/dw/concurrently?label=Downloads&logo=npm)](https://www.npmjs.com/package/concurrently)
6-
[![CI Status](https://img.shields.io/github/workflow/status/open-cli-tools/concurrently/CI?label=CI&logo=github)](https://github.com/open-cli-tools/concurrently/actions/workflows/ci.yml)
6+
[![CI Status](https://img.shields.io/github/actions/workflow/status/open-cli-tools/concurrently/test.yml?label=CI&logo=github)](https://github.com/open-cli-tools/concurrently/actions/workflows/test.yml)
77
[![Coverage Status](https://img.shields.io/coveralls/github/open-cli-tools/concurrently/main?label=Coverage&logo=coveralls)](https://coveralls.io/github/open-cli-tools/concurrently?branch=main)
88

99
Run multiple commands concurrently.
@@ -15,7 +15,7 @@ Like `npm run watch-js & npm run watch-less` but better.
1515

1616
- [concurrently](#concurrently)
1717
- [Why](#why)
18-
- [Install](#install)
18+
- [Installation](#installation)
1919
- [Usage](#usage)
2020
- [API](#api)
2121
- [`concurrently(commands[, options])`](#concurrentlycommands-options)
@@ -25,7 +25,7 @@ Like `npm run watch-js & npm run watch-less` but better.
2525

2626
## Why
2727

28-
I like [task automation with npm](https://github.com/substack/blog/blob/master/npm_run.markdown)
28+
I like [task automation with npm](https://web.archive.org/web/20220531064025/https://github.com/substack/blog/blob/master/npm_run.markdown)
2929
but the usual way to run multiple commands concurrently is
3030
`npm run watch-js & npm run watch-css`. That's fine but it's hard to keep
3131
on track of different outputs. Also if one process fails, others still keep running
@@ -41,25 +41,24 @@ tired of opening terminals and made **concurrently**.
4141
- With `--kill-others` switch, all commands are killed if one dies
4242
- Spawns commands with [spawn-command](https://github.com/mmalecki/spawn-command)
4343

44-
## Install
44+
## Installation
4545

46-
The tool is written in Node.js, but you can use it to run **any** commands.
47-
48-
```bash
49-
npm install -g concurrently
50-
```
46+
**concurrently** can be installed in the global scope (if you'd like to have it available and use it on the whole system) or locally for a specific package (for example if you'd like to use it in the `scripts` section of your package):
5147

52-
or if you are using it from npm scripts:
48+
| | npm | Yarn | pnpm | Bun |
49+
| ----------- | ----------------------- | ------------------------------ | -------------------------- | ------------------------- |
50+
| **Global** | `npm i -g concurrently` | `yarn global add concurrently` | `pnpm add -g concurrently` | `bun add -g concurrently` |
51+
| **Local**\* | `npm i -D concurrently` | `yarn add -D concurrently` | `pnpm add -D concurrently` | `bun add -d concurrently` |
5352

54-
```bash
55-
npm install concurrently --save-dev
56-
```
53+
<sub>\* It's recommended to add **concurrently** to `devDependencies` as it's usually used for developing purposes. Please adjust the command if this doesn't apply in your case.</sub>
5754

5855
## Usage
5956

6057
> **Note**
6158
> The `concurrently` command is now also available under the shorthand alias `conc`.
6259
60+
The tool is written in Node.js, but you can use it to run **any** commands.
61+
6362
Remember to surround separate commands with quotes:
6463

6564
```bash
@@ -220,6 +219,8 @@ Killing other processes
220219
-k, --kill-others Kill other processes if one exits or dies.[boolean]
221220
--kill-others-on-fail Kill other processes if one exits with non zero
222221
status code. [boolean]
222+
--kill-signal Signal to send to other processes if one exits or dies.
223+
(SIGTERM/SIGKILL, defaults to SIGTERM) [string]
223224
224225
Restarting
225226
--restart-tries How many times a process that died should restart.
@@ -339,7 +340,7 @@ For more details, visit https://github.com/open-cli-tools/concurrently
339340
Prefix colors specified per-command take precedence over this list.
340341
- `prefixLength`: how many characters to show when prefixing with `command`. Default: `10`
341342
- `raw`: whether raw mode should be used, meaning strictly process output will
342-
be logged, without any prefixes, coloring or extra stuff.
343+
be logged, without any prefixes, coloring or extra stuff. Can be overriden per command.
343344
- `successCondition`: the condition to consider the run was successful.
344345
If `first`, only the first process to exit will make up the success of the run; if `last`, the last process that exits will determine whether the run succeeds.
345346
Anything else means all processes should exit successfully.
@@ -428,6 +429,6 @@ It contains the following properties:
428429
So _null_ means the process didn't terminate normally. This will make **concurrently**
429430
to return non-zero exit code too.
430431

431-
- Does this work with the npm-replacements [yarn](https://github.com/yarnpkg/yarn) or [pnpm](https://pnpm.js.org/)?
432+
- Does this work with the npm-replacements [yarn](https://github.com/yarnpkg/yarn), [pnpm](https://pnpm.js.org/), or [Bun](https://bun.sh/)?
432433

433-
Yes! In all examples above, you may replace "`npm`" with "`yarn`" or "`pnpm`".
434+
Yes! In all examples above, you may replace "`npm`" with "`yarn`", "`pnpm`", or "`bun`".

0 commit comments

Comments
 (0)