Skip to content

Commit f6bc285

Browse files
chore: merge conflicts
2 parents 8eca905 + 63598b0 commit f6bc285

File tree

270 files changed

+24409
-6739
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

270 files changed

+24409
-6739
lines changed

.github/maintainers_guide.md

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ $ brew update
1515
$ brew install pyenv
1616
```
1717

18-
Install necessary Python runtimes for development/testing. You can rely on Travis CI builds for testing with various major versions. https://github.com/slackapi/bolt-python/blob/main/.travis.yml
18+
Install necessary Python runtimes for development/testing. You can rely on GitHub Actions workflows for testing with various major versions. <https://github.com/slackapi/bolt-python/tree/main/.github/workflows>
1919

2020
```bash
2121
$ pyenv install -l | grep -v "-e[conda|stackless|pypy]"
@@ -34,7 +34,7 @@ $ pyenv rehash
3434

3535
Then, you can create a new Virtual Environment this way:
3636

37-
```
37+
```bash
3838
$ python -m venv env_3.8.5
3939
$ source env_3.8.5/bin/activate
4040
```
@@ -94,8 +94,9 @@ $ ngrok http 3000 --subdomain {your-domain}
9494
#### Develop Locally
9595

9696
If you want to test the package locally you can.
97+
9798
1. Build the package locally
98-
- Run
99+
- Run
99100
```bash
100101
scripts/build_pypi_package.sh
101102
```
@@ -106,8 +107,7 @@ If you want to test the package locally you can.
106107
```bash
107108
pip install <project path>/dist/slack_bolt-1.2.3-py2.py3-none-any.whl
108109
```
109-
- It is also possible to include `<project path>/dist/slack_bolt-1.2.3-py2.py3-none-any.whl` in a [requirements.txt](https://pip.pypa.io/en/stable/user_guide/#requirements-files) file
110-
110+
- It is also possible to include `<project path>/dist/slack_bolt-1.2.3-py2.py3-none-any.whl` in a [requirements.txt](https://pip.pypa.io/en/stable/user_guide/#requirements-files) file
111111

112112
### Releasing
113113

@@ -121,19 +121,18 @@ If you want to test the package locally you can.
121121

122122
##### $HOME/.pypirc
123123

124-
```
124+
```toml
125125
[testpypi]
126126
username: {your username}
127127
password: {your password}
128128
```
129129

130-
131130
#### Development Deployment
132131

133132
1. Create a branch in which the development release will live:
134133
- Bump the version number in adherence to [Semantic Versioning](http://semver.org/) and [Developmental Release](https://peps.python.org/pep-0440/#developmental-releases) in `slack_bolt/version.py`
135134
- Example the current version is `1.2.3` a proper development bump would be `1.3.0.dev0`
136-
- `.dev` will indicate to pip that this is a [Development Release](https://peps.python.org/pep-0440/#developmental-releases)
135+
- `.dev` will indicate to pip that this is a [Development Release](https://peps.python.org/pep-0440/#developmental-releases)
137136
- Note that the `dev` version can be bumped in development releases: `1.3.0.dev0` -> `1.3.0.dev1`
138137
- Commit with a message including the new version number. For example `1.3.0.dev0` & Push the commit to a branch where the development release will live (create it if it does not exist)
139138
- `git checkout -b future-release`
@@ -150,26 +149,35 @@ password: {your password}
150149

151150
3. (Slack Internal) Communicate the release internally
152151

153-
154152
#### Production Deployment
155153

156154
1. Create the commit for the release:
157155
- Bump the version number in adherence to [Semantic Versioning](http://semver.org/) in `slack_bolt/version.py`
158156
- Build the docs with `./scripts/generate_api_docs.sh`.
159157
- Commit with a message including the new version number. For example `1.2.3` & Push the commit to a branch and create a PR to sanity check.
160-
- `git checkout -b v1.2.3-release`
161-
- `git add --all`
162-
- `git commit -m 'version 1.2.3'`
163-
- `git push {your-fork} v1.2.3-release`
164-
- Merge in release PR after getting an approval from at least one maintainer.
165-
- Create a git tag for the release. For example `git tag v1.2.3`.
166-
- Push the tag up to github with `git push origin --tags`
158+
- `git checkout -b v1.2.3`
159+
- `git commit -a -m 'version 1.2.3'`
160+
- Open a PR and merge after receiving at least one approval from other maintainers.
167161

168162
2. Distribute the release
169163
- Use the latest stable Python runtime
170-
- `python -m venv .venv`
171-
- `./scripts/deploy_to_pypi_org.sh`
172-
- Create a GitHub release - https://github.com/slackapi/bolt-python/releases
164+
- `python --version`
165+
- `python -m venv .venv`
166+
- `./scripts/deploy_to_pypi_org.sh`
167+
- Create a new GitHub Release from the [Releases page](https://github.com/slackapi/bolt-python/releases) by clicking the "Draft a new release" button.
168+
- Enter the new version number updated from the commit (e.g. `v1.2.3`) into the "Choose a tag" input.
169+
- Ensure the tag `Target` branch is `main` (e.g `Target:main`).
170+
- Click the "Create a new tag: x.x.x on publish" button. This won't create your tag immediately.
171+
- Name the release after the version number updated from the commit (e.g. `version 1.2.3`)
172+
- Auto-generate the release notes by clicking the "Auto-generate release
173+
notes" button. This will pull in changes that will be included in your
174+
release.
175+
- Edit the resulting notes to ensure they have decent messaging that are
176+
understandable by non-contributors, but each commit should still have it's
177+
own line.
178+
- Ensure that this version adheres to [semantic versioning](http://semver.org/). See
179+
[Versioning](#versioning-and-tags) for correct version format. Version tags
180+
should match the following pattern: `v2.5.0`.
173181

174182
```markdown
175183
## New Features
@@ -232,7 +240,7 @@ reopening is great and better than creating a duplicate issue.
232240
233241
## Managing Documentation
234242
235-
See the [`/docs/README.md`](../docs/README.md) file for documentation instructions.
243+
See the [`/docs/README.md`](../docs/README.md) file for documentation instructions.
236244
237245
## Everything else
238246

.github/pull_request_template.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,20 @@
1-
(Describe the goal of this PR. Mention any related Issue numbers)
1+
## Summary
22

3-
### Category (place an `x` in each of the `[ ]`)
3+
<!-- Describe the goal of this PR. Mention any related issue numbers -->
4+
5+
### Testing
6+
7+
<!-- Describe what steps a reviewer should follow to test your changes. -->
8+
9+
### Category <!-- place an `x` in each of the `[ ]` -->
410

511
* [ ] `slack_bolt.App` and/or its core components
612
* [ ] `slack_bolt.async_app.AsyncApp` and/or its core components
713
* [ ] Adapters in `slack_bolt.adapter`
814
* [ ] Document pages under `/docs`
915
* [ ] Others
1016

11-
## Requirements (place an `x` in each `[ ]`)
17+
## Requirements <!-- place an `x` in each `[ ]` -->
1218

1319
Please read the [Contributing guidelines](https://github.com/slackapi/bolt-python/blob/main/.github/contributing.md) and [Code of Conduct](https://slackhq.github.io/code-of-conduct) before creating this issue or pull request. By submitting, you are agreeing to those rules.
1420

.github/workflows/codecov.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
timeout-minutes: 10
1212
strategy:
1313
matrix:
14-
python-version: ["3.11"]
14+
python-version: ["3.13"]
1515
env:
1616
BOLT_PYTHON_CODECOV_RUNNING: "1"
1717
steps:
@@ -31,7 +31,7 @@ jobs:
3131
run: |
3232
pytest --cov=./slack_bolt/ --cov-report=xml
3333
- name: Upload coverage to Codecov
34-
uses: codecov/codecov-action@v4
34+
uses: codecov/codecov-action@v5
3535
with:
3636
fail_ci_if_error: true
3737
verbose: true

.github/workflows/mypy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
timeout-minutes: 20
1212
strategy:
1313
matrix:
14-
python-version: ["3.12"]
14+
python-version: ["3.13"]
1515
steps:
1616
- uses: actions/checkout@v4
1717
- name: Set up Python ${{ matrix.python-version }}

.github/workflows/tests.yml

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,15 @@ jobs:
1212
timeout-minutes: 10
1313
strategy:
1414
matrix:
15-
python-version: ["3.6", "3.7", "3.8", "3.9", "3.10", "3.11"]
15+
python-version:
16+
- "3.6"
17+
- "3.7"
18+
- "3.8"
19+
- "3.9"
20+
- "3.10"
21+
- "3.11"
22+
- "3.12"
23+
- "3.13"
1624
steps:
1725
- uses: actions/checkout@v4
1826
- name: Set up Python ${{ matrix.python-version }}
@@ -44,17 +52,9 @@ jobs:
4452
- name: Run tests for HTTP Mode adapters (Django)
4553
run: |
4654
pytest tests/adapter_tests/django/
47-
- name: Run tests for HTTP Mode adapters (Falcon 3.x)
55+
- name: Run tests for HTTP Mode adapters (Falcon)
4856
run: |
4957
pytest tests/adapter_tests/falcon/
50-
- name: Run tests for HTTP Mode adapters (Falcon 2.x)
51-
run: |
52-
# Falcon 2.x does not support Python 3.11 or newer
53-
# See also: https://github.com/slackapi/bolt-python/issues/757
54-
if [ ${{ matrix.python-version }} != "3.11" ]; then
55-
pip install "falcon<3"
56-
pytest tests/adapter_tests/falcon/
57-
fi
5858
- name: Run tests for HTTP Mode adapters (Flask)
5959
run: |
6060
pytest tests/adapter_tests/flask/
@@ -76,8 +76,6 @@ jobs:
7676
pytest tests/adapter_tests/socket_mode/
7777
- name: Run tests for HTTP Mode adapters (asyncio-based libraries)
7878
run: |
79-
# Falcon supports Python 3.11 since its v3.1.1
80-
pip install "falcon>=3.1.1,<4"
8179
pytest tests/adapter_tests_async/
8280
- name: Run tests for HTTP Mode adapters (ASGI)
8381
run: |

docs/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,9 @@ website/
3030
├── src/
3131
│ ├── pages/ (stuff that isn't docs. This is empty for this repo!)
3232
│ └── theme/ (only contains the 404 page)
33-
├── docusaurus.config.js (main config file. also where to set navbar/footer)
33+
├── docusaurus.config.js (main config file)
34+
├── footerConfig.js (footer. go to main repo to change)
35+
├── navbarConfig.js (navbar. go to main repo to change)
3436
└── sidebar.js (manually set where the docs are in the sidebar.)
3537
```
3638

docs/content/concepts/web-api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ lang: en
44
slug: /concepts/web-api
55
---
66

7-
You can call [any Web API method](https://api.slack.com/methods) using the [`WebClient`](https://tools.slack.dev/python-slack-sdk/basic_usage.html) provided to your Bolt app as either `app.client` or `client` in middleware/listener arguments (given that your app has the appropriate scopes). When you call one the client's methods, it returns a `SlackResponse` which contains the response from Slack.
7+
You can call [any Web API method](https://api.slack.com/methods) using the [`WebClient`](https://tools.slack.dev/python-slack-sdk/web) provided to your Bolt app as either `app.client` or `client` in middleware/listener arguments (given that your app has the appropriate scopes). When you call one the client's methods, it returns a `SlackResponse` which contains the response from Slack.
88

99
The token used to initialize Bolt can be found in the `context` object, which is required to call most Web API methods.
1010

@@ -25,4 +25,4 @@ def say_hello(client, message):
2525
post_at=when_september_ends,
2626
text="Summer has come and passed"
2727
)
28-
```
28+
```

0 commit comments

Comments
 (0)