You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+21-9Lines changed: 21 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,20 @@ We use [uv](https://docs.astral.sh/uv/) for project management. Install it and s
11
11
We use [Poe the Poet](https://poethepoet.natn.io/) as a task runner, similar to npm scripts in `package.json`.
12
12
All tasks are defined in `pyproject.toml` under `[tool.poe.tasks]` and can be run with `uv run poe <task>`.
13
13
14
+
### Available tasks
15
+
16
+
| Task | Description |
17
+
| ---- | ----------- |
18
+
|`install-dev`| Install dependencies |
19
+
|`check-code`| Run lint, type-check, and unit-tests |
20
+
|`lint`| Run linter |
21
+
|`format`| Fix lint issues and format code |
22
+
|`type-check`| Run type checker |
23
+
|`unit-tests`| Run unit tests |
24
+
|`unit-tests-cov`| Run unit tests with coverage |
25
+
|`build`| Build package |
26
+
|`clean`| Remove build artifacts |
27
+
14
28
## Dependencies
15
29
16
30
To install this package and its development dependencies, run:
@@ -59,8 +73,6 @@ uv run poe type-check
59
73
60
74
### Unit tests
61
75
62
-
We employ pytest as our testing framework, equipped with various plugins. Check pyproject.toml for configuration details and installed plugins.
63
-
64
76
We use [pytest](https://docs.pytest.org/) as a testing framework with many plugins. Check `pyproject.toml` for configuration details and installed plugins.
65
77
66
78
To run unit tests:
@@ -77,7 +89,7 @@ uv run poe unit-tests-cov
77
89
78
90
## Release process
79
91
80
-
Publishing new versions to [PyPI](https://pypi.org/project/apify) is automated through GitHub Actions.
92
+
Publishing new versions to [PyPI](https://pypi.org/project/apify-shared) is automated through GitHub Actions.
81
93
82
94
-**Beta releases**: On each commit to the master branch, a new beta release is automatically published. The version number is determined based on the latest release and conventional commits. The beta version suffix is incremented by 1 from the last beta release on PyPI.
83
95
-**Stable releases**: A stable version release may be created by triggering the `release` GitHub Actions workflow. The version number is determined based on the latest release and conventional commits (`auto` release type), or it may be overridden using the `custom` release type.
@@ -93,18 +105,18 @@ Publishing new versions to [PyPI](https://pypi.org/project/apify) is automated t
93
105
94
106
```toml
95
107
[project]
96
-
name = "apify"
108
+
name = "apify_shared"
97
109
version = "x.z.y"
98
110
```
99
111
100
-
4.Generate the distribution archives for the package:
112
+
4.Build the package:
101
113
102
-
```shell
103
-
uv build
114
+
```sh
115
+
uv run poe build
104
116
```
105
117
106
-
5.Set up the PyPI API token for authentication and upload the package to PyPI:
0 commit comments