Skip to content

Commit 9060f29

Browse files
committed
Auto-generated commit
1 parent 5b89f9f commit 9060f29

12 files changed

+238
-25
lines changed

.github/workflows/benchmark.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,29 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: benchmark
221

22+
# Workflow triggers:
323
on:
424
workflow_dispatch:
525

26+
# Workflow jobs:
627
jobs:
728
benchmark:
829
runs-on: ubuntu-latest

.github/workflows/cancel.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,29 @@
1-
name: Cancel Previous Runs
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
218

3-
on: push
19+
# Workflow name:
20+
name: Cancel Workflow Runs
421

22+
# Workflow triggers:
23+
on:
24+
workflow_dispatch:
25+
26+
# Workflow jobs:
527
jobs:
628
cancel:
729
runs-on: ubuntu-latest

.github/workflows/close_pull_requests.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,30 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: Close Pull Requests
221

22+
# Workflow triggers:
323
on:
424
pull_request_target:
525
types: [opened]
626

27+
# Workflow jobs:
728
jobs:
829
run:
930
runs-on: ubuntu-latest

.github/workflows/examples.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,29 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: examples
221

22+
# Workflow triggers:
323
on:
424
workflow_dispatch:
525

26+
# Workflow jobs:
627
jobs:
728
examples:
829
runs-on: ubuntu-latest

.github/workflows/publish.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,28 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: Publish Package
221

22+
# Workflow triggers:
323
on: push
424

25+
# Workflow jobs:
526
jobs:
627
publish:
728
runs-on: ubuntu-latest
@@ -32,3 +53,17 @@ jobs:
3253
steps: ${{ toJson(steps) }}
3354
channel: '#npm-ci'
3455
if: failure()
56+
cancel:
57+
runs-on: ubuntu-latest
58+
timeout-minutes: 3
59+
steps:
60+
- uses: styfle/cancel-workflow-action@0.9.0
61+
with:
62+
workflow_id: >-
63+
benchmark.yml,
64+
examples.yml,
65+
test.yml,
66+
test_coverage.yml,
67+
test_install.yml,
68+
publish.yml
69+
access_token: ${{ github.token }}

.github/workflows/test.yml

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,29 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: build
221

22+
# Workflow triggers:
323
on:
424
workflow_dispatch:
525

26+
# Workflow jobs:
627
jobs:
728
test:
829
runs-on: ubuntu-latest
@@ -15,12 +36,18 @@ jobs:
1536
node-version: 15
1637
- name: Install production and development dependencies
1738
id: install
18-
run: |
19-
npm install
39+
uses: nick-invision/retry@v2
40+
with:
41+
timeout_minutes: 2
42+
max_attempts: 3
43+
command: npm install
2044
- name: Run tests
2145
id: tests
22-
run: |
23-
npm test
46+
uses: nick-invision/retry@v2
47+
with:
48+
timeout_minutes: 3
49+
max_attempts: 2
50+
command: npm test
2451
- uses: act10ns/slack@v1
2552
with:
2653
status: ${{ job.status }}

.github/workflows/test_coverage.yml

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,29 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: coverage
221

22+
# Workflow triggers:
323
on:
424
workflow_dispatch:
525

26+
# Workflow jobs:
627
jobs:
728
test:
829
runs-on: ubuntu-latest
@@ -12,13 +33,27 @@ jobs:
1233
with:
1334
node-version: 15
1435
- name: Install production and development dependencies
15-
run: |
16-
npm install
36+
uses: nick-invision/retry@v2
37+
with:
38+
timeout_minutes: 2
39+
max_attempts: 3
40+
command: npm install
1741
- name: Calculate test coverage
18-
run: |
19-
npm run test-cov
42+
uses: nick-invision/retry@v2
43+
with:
44+
timeout_minutes: 3
45+
max_attempts: 2
46+
command: npm run test-cov
2047
- name: Upload coverage to Codecov
48+
id: upload
2149
uses: codecov/codecov-action@v1
2250
with:
2351
directory: reports/coverage
2452
flags: unittests
53+
fail_ci_if_error: true
54+
- uses: act10ns/slack@v1
55+
with:
56+
status: ${{ job.status }}
57+
steps: ${{ toJson(steps) }}
58+
channel: '#npm-ci'
59+
if: failure()

.github/workflows/test_install.yml

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,31 @@
1+
#/
2+
# @license Apache-2.0
3+
#
4+
# Copyright (c) 2021 The Stdlib Authors.
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
#/
18+
19+
# Workflow name:
120
name: Test Installing Dependencies
221

22+
# Workflow triggers:
323
on:
424
workflow_run:
525
workflows: ["Publish Package"]
626
types: [completed]
727

28+
# Workflow jobs:
829
jobs:
930
on-success:
1031
runs-on: ubuntu-latest
@@ -17,8 +38,11 @@ jobs:
1738
with:
1839
node-version: 15
1940
- name: Install production dependencies via npm
20-
run: |
21-
npm install --only=prod
41+
uses: nick-invision/retry@v2
42+
with:
43+
timeout_minutes: 2
44+
max_attempts: 3
45+
command: npm install --only=prod
2246
- uses: act10ns/slack@v1
2347
with:
2448
status: ${{ job.status }}

Makefile

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -280,21 +280,21 @@ endif
280280

281281
# Common exclude flags that most recipes for finding package files should use (Note: order does matter to some degree):
282282
FIND_COMMON_EXCLUDE_FLAGS ?= \
283-
-not -path "$(ROOT_DIR)/.*" \
284-
-not -path "$(NODE_MODULES)/*" \
285-
-not -path "$(BUILD_DIR)/*" \
286-
-not -path "$(REPORTS_DIR)/*" \
283+
'!' -path "$(ROOT_DIR)/.*" \
284+
'!' -path "$(NODE_MODULES)/*" \
285+
'!' -path "$(BUILD_DIR)/*" \
286+
'!' -path "$(REPORTS_DIR)/*" \
287287

288288
# Define exclusion flags to use when searching for benchmark files:
289289
FIND_BENCHMARKS_EXCLUDE_FLAGS ?= \
290290
$(FIND_COMMON_EXCLUDE_FLAGS) \
291-
-not -path "$(ROOT_DIR)/**/$(BENCHMARKS_FIXTURES_FOLDER)/*"
291+
'!' -path "$(ROOT_DIR)/**/$(BENCHMARKS_FIXTURES_FOLDER)/*"
292292

293293
# Define flags for finding benchmark files:
294294
FIND_BENCHMARKS_FLAGS ?= \
295295
-type f \
296296
-name "$(BENCHMARKS_PATTERN)" \
297-
-path "$(ROOT_DIR)/**$(BENCHMARKS_FOLDER)/**" \
297+
\( -path "$(ROOT_DIR)/$(BENCHMARKS_FOLDER)/**" -o -path "$(ROOT_DIR)/**/$(BENCHMARKS_FOLDER)/**" \) \
298298
-regex "$(BENCHMARKS_FILTER)" \
299299
$(FIND_BENCHMARKS_EXCLUDE_FLAGS)
300300

@@ -308,13 +308,13 @@ FIND_BENCHMARKS_CMD ?= find $(find_kernel_prefix) $(ROOT_DIR) $(FIND_BENCHMARKS_
308308
# Define exclusion flags to use when searching for examples files:
309309
FIND_EXAMPLES_EXCLUDE_FLAGS ?= \
310310
$(FIND_COMMON_EXCLUDE_FLAGS) \
311-
-not -path "$(ROOT_DIR)/**/$(EXAMPLES_FIXTURES_FOLDER)/*"
311+
'!' -path "$(ROOT_DIR)/**/$(EXAMPLES_FIXTURES_FOLDER)/*"
312312

313313
# Define flags for finding examples files:
314314
FIND_EXAMPLES_FLAGS ?= \
315315
-type f \
316316
-name "$(EXAMPLES_PATTERN)" \
317-
-path "$(ROOT_DIR)/**$(EXAMPLES_FOLDER)/**" \
317+
\( -path "$(ROOT_DIR)/$(EXAMPLES_FOLDER)/**" -o -path "$(ROOT_DIR)/**/$(EXAMPLES_FOLDER)/**" \) \
318318
-regex "$(EXAMPLES_FILTER)" \
319319
$(FIND_EXAMPLES_EXCLUDE_FLAGS)
320320

@@ -328,7 +328,7 @@ FIND_EXAMPLES_CMD ?= find $(find_kernel_prefix) $(ROOT_DIR) $(FIND_EXAMPLES_FLAG
328328
# Define exclusion flags to use when searching for test files:
329329
FIND_TESTS_EXCLUDE_FLAGS ?= \
330330
$(FIND_COMMON_EXCLUDE_FLAGS) \
331-
-not -path "$(ROOT_DIR)/**/$(TESTS_FIXTURES_FOLDER)/*"
331+
'!' -path "$(ROOT_DIR)/**/$(TESTS_FIXTURES_FOLDER)/*"
332332

333333
# Define flags for finding test files:
334334
FIND_TESTS_FLAGS ?= \

0 commit comments

Comments
 (0)