Skip to content

Commit 38edff0

Browse files
chore: sync files with beam-community/common-config (#726)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent b725683 commit 38edff0

13 files changed

+336
-28
lines changed

Diff for: .formatter.exs

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
13
[
2-
import_deps: [:phoenix],
3-
inputs: ["*.{ex,exs}", "{config,lib,priv,test}/**/*.{ex,exs}"],
4-
line_length: 120
4+
import_deps: [:phoenix, :plug],
5+
inputs: ["*.{heex,ex,exs}", "{config,lib,priv,test}/**/*.{heex,ex,exs}"],
6+
line_length: 120,
7+
plugins: [Phoenix.LiveView.HTMLFormatter]
58
]

Diff for: .github/CODEOWNERS

-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1 @@
1-
# Order alphabetically.
2-
# Order is important. The last matching pattern takes the most precedence.
3-
4-
# Default owners for everything in the repo.
51
* @beam-community/team

Diff for: .github/dependabot.yml

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: github-actions
4+
directory: "/"
5+
schedule:
6+
interval: weekly
7+
commit-message:
8+
prefix: "chore(deps)"
9+
10+
- package-ecosystem: mix
11+
directory: "/"
12+
schedule:
13+
interval: weekly
14+
commit-message:
15+
prefix: "chore(deps)"
16+
groups:
17+
prod:
18+
dependency-type: production
19+
dev:
20+
dependency-type: development

Diff for: .github/release-please-config.json

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"$comment": "This file is synced with beam-community/common-config. Any changes will be overwritten.",
3+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
4+
"changelog-sections": [
5+
{
6+
"type": "feat",
7+
"section": "Features",
8+
"hidden": false
9+
},
10+
{
11+
"type": "fix",
12+
"section": "Bug Fixes",
13+
"hidden": false
14+
},
15+
{
16+
"type": "refactor",
17+
"section": "Miscellaneous",
18+
"hidden": false
19+
}
20+
],
21+
"draft": false,
22+
"draft-pull-request": false,
23+
"packages": {
24+
".": {
25+
"extra-files": [
26+
"README.md"
27+
],
28+
"release-type": "elixir"
29+
}
30+
},
31+
"plugins": [
32+
{
33+
"type": "sentence-case"
34+
}
35+
],
36+
"prerelease": false,
37+
"pull-request-header": "An automated release has been created for you.",
38+
"separate-pull-requests": true
39+
}

Diff for: .github/workflows/ci.yaml

+106
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
3+
name: CI
4+
5+
on:
6+
merge_group:
7+
pull_request:
8+
types:
9+
- opened
10+
- reopened
11+
- synchronize
12+
push:
13+
branches:
14+
- main
15+
workflow_call:
16+
secrets:
17+
GH_PERSONAL_ACCESS_TOKEN:
18+
required: true
19+
workflow_dispatch:
20+
21+
concurrency:
22+
group: CI ${{ github.head_ref || github.run_id }}
23+
cancel-in-progress: true
24+
25+
jobs:
26+
Credo:
27+
runs-on: ubuntu-latest
28+
29+
steps:
30+
- name: Checkout
31+
uses: actions/checkout@v4
32+
33+
- name: Setup Elixir
34+
uses: stordco/actions-elixir/setup@v1
35+
with:
36+
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
37+
38+
- name: Credo
39+
run: mix credo --strict
40+
41+
Dependencies:
42+
runs-on: ubuntu-latest
43+
44+
steps:
45+
- name: Checkout
46+
uses: actions/checkout@v4
47+
48+
- name: Setup Elixir
49+
uses: stordco/actions-elixir/setup@v1
50+
with:
51+
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
52+
53+
- name: Unused
54+
run: mix deps.unlock --check-unused
55+
56+
Dialyzer:
57+
runs-on: ubuntu-latest
58+
59+
steps:
60+
- name: Checkout
61+
uses: actions/checkout@v4
62+
63+
- name: Setup Elixir
64+
uses: stordco/actions-elixir/setup@v1
65+
with:
66+
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
67+
68+
- name: Dialyzer
69+
run: mix dialyzer --format github
70+
71+
Format:
72+
runs-on: ubuntu-latest
73+
74+
steps:
75+
- name: Checkout
76+
uses: actions/checkout@v4
77+
78+
- name: Setup Elixir
79+
uses: stordco/actions-elixir/setup@v1
80+
with:
81+
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
82+
83+
- name: Format
84+
run: mix format --check-formatted
85+
86+
Test:
87+
runs-on: ubuntu-latest
88+
89+
env:
90+
MIX_ENV: test
91+
92+
steps:
93+
- name: Checkout
94+
uses: actions/checkout@v4
95+
96+
- name: Setup Elixir
97+
uses: stordco/actions-elixir/setup@v1
98+
with:
99+
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
100+
101+
- name: Compile
102+
run: mix compile --warnings-as-errors
103+
104+
- name: Test
105+
run: mix test
106+

Diff for: .github/workflows/common-config.yaml

+3-1
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,14 @@ jobs:
3232
- name: Setup Node
3333
uses: actions/setup-node@v4
3434
with:
35-
node-version-file: .tool-versions
35+
node-version: 20
3636

3737
- name: Setup Elixir
3838
uses: stordco/actions-elixir/setup@v1
3939
with:
4040
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
41+
elixir-version: "1.16"
42+
otp-version: "26.0"
4143

4244
- name: Sync
4345
uses: stordco/actions-sync@v1

Diff for: .github/workflows/pr.yaml

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
3+
name: PR
4+
5+
on:
6+
merge_group:
7+
pull_request:
8+
types:
9+
- edited
10+
- opened
11+
- reopened
12+
- synchronize
13+
14+
jobs:
15+
Title:
16+
permissions:
17+
pull-requests: read
18+
19+
if: ${{ github.event_name == 'pull_request' }}
20+
name: Check Title
21+
runs-on: ubuntu-latest
22+
23+
steps:
24+
- name: Check
25+
uses: stordco/[email protected]
26+
with:
27+
regex: '^(refactor!|feat!|fix!|refactor|fix|feat|chore)(\(\w+\))?:\s(\[#\d{1,5}\])?.*$'
28+
hint: |
29+
Your PR title does not match the Conventional Commits convention. Please rename your PR to match one of the following formats:
30+
31+
fix: [#123] some title of the PR
32+
fix(scope): [#123] some title of the PR
33+
feat: [#1234] some title of the PR
34+
chore: update some action
35+
36+
Note: Adding ! (i.e. `feat!:`) represents a breaking change and will result in a SemVer major release.
37+
38+
Please use one of the following types:
39+
40+
- **feat:** A new feature, resulting in a MINOR version bump.
41+
- **fix:** A bug fix, resulting in a PATCH version bump.
42+
- **refactor:** A code change that neither fixes a bug nor adds a feature.
43+
- **chore:** Changes unrelated to the release code, resulting in no version bump.
44+
- **revert:** Reverts a previous commit.
45+
46+
See https://www.conventionalcommits.org/en/v1.0.0/ for more information.

Diff for: .github/workflows/production.yaml

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
3+
name: Production
4+
5+
on:
6+
release:
7+
types:
8+
- released
9+
- prereleased
10+
workflow_dispatch:
11+
12+
concurrency:
13+
group: Production
14+
15+
jobs: {}

Diff for: .github/workflows/publish-docs.yaml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
3+
name: Publish Docs
4+
5+
on:
6+
workflow_dispatch:
7+
8+
concurrency:
9+
group: hex-publish-docs
10+
cancel-in-progress: true
11+
12+
jobs: {}

Diff for: .github/workflows/release.yaml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# This file is synced with beam-community/common-config. Any changes will be overwritten.
2+
3+
name: Release
4+
5+
on:
6+
push:
7+
branches:
8+
- main
9+
10+
jobs:
11+
Please:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- id: release
16+
name: Release
17+
uses: googleapis/release-please-action@v4
18+
with:
19+
config-file: .github/release-please-config.json
20+
manifest-file: .github/release-please-manifest.json
21+
release-type: elixir
22+
token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}

Diff for: .github/workflows/stale.yaml

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: "Close stale issues and PRs"
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: "30 1 * * *"
7+
8+
permissions:
9+
contents: write
10+
issues: write
11+
pull-requests: write
12+
13+
jobs:
14+
stale:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/stale@v9
18+
with:
19+
days-before-issue-stale: 30
20+
days-before-issue-close: 15
21+
days-before-pr-stale: 60
22+
days-before-pr-close: 60
23+
24+
stale-issue-label: "stale:discard"
25+
exempt-issue-labels: "stale:keep"
26+
stale-issue-message: >
27+
This issue has been automatically marked as "stale:discard". We are sorry that we haven't been able to
28+
prioritize it yet.
29+
30+
If this issue still relevant, please leave any comment if you have any new additional information that
31+
helps to solve this issue. We encourage you to create a pull request, if you can. We are happy to help you
32+
with that.
33+
34+
close-issue-message: >
35+
Closing this issue after a prolonged period of inactivity. If this issue is still relevant, feel free to
36+
re-open the issue. Thank you!
37+
38+
stale-pr-label: "stale:discard"
39+
exempt-pr-labels: "stale:keep"
40+
stale-pr-message: >
41+
This pull request has been automatically marked as "stale:discard". **If this pull request is still
42+
relevant, please leave any comment** (for example, "bump"), and we'll keep it open. We are sorry that we
43+
haven't been able to prioritize reviewing it yet.
44+
Your contribution is very much appreciated!.
45+
close-pr-message: >
46+
Closing this pull request after a prolonged period of inactivity. If this issue is still relevant, please
47+
ask for this pull request to be reopened. Thank you!

Diff for: .tool-versions

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
elixir 1.17.3
2-
erlang 27.1.2
3-
nodejs 22.8.0
1+
elixir 1.18
2+
erlang 27.2

Diff for: LICENSE

+18-17
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
1-
MIT License
1+
# MIT License
22

3-
Copyright (c) 2019 Sean Callan
3+
Copyright (c) 2024 BEAM Community
44

5-
Permission is hereby granted, free of charge, to any person obtaining a copy
6-
of this software and associated documentation files (the "Software"), to deal
7-
in the Software without restriction, including without limitation the rights
8-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9-
copies of the Software, and to permit persons to whom the Software is
10-
furnished to do so, subject to the following conditions:
5+
Permission is hereby granted, free of charge, to any person obtaining
6+
a copy of this software and associated documentation files (the
7+
"Software"), to deal in the Software without restriction, including
8+
without limitation the rights to use, copy, modify, merge, publish,
9+
distribute, sublicense, and/or sell copies of the Software, and to
10+
permit persons to whom the Software is furnished to do so, subject to
11+
the following conditions:
1112

12-
The above copyright notice and this permission notice shall be included in all
13-
copies or substantial portions of the Software.
13+
The above copyright notice and this permission notice shall be
14+
included in all copies or substantial portions of the Software.
1415

15-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21-
SOFTWARE.
16+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

0 commit comments

Comments
 (0)