File tree Expand file tree Collapse file tree 7 files changed +2452
-0
lines changed Expand file tree Collapse file tree 7 files changed +2452
-0
lines changed Original file line number Diff line number Diff line change
1
+ name : Build and publish
2
+
3
+ on :
4
+ push :
5
+ tags :
6
+ - ' v[0-9]+.[0-9]+.[0-9]+'
7
+ permissions :
8
+ id-token : " write"
9
+ contents : " write"
10
+ packages : " write"
11
+ pull-requests : " read"
12
+
13
+ jobs :
14
+
15
+ build :
16
+
17
+ runs-on : ubuntu-latest
18
+
19
+ steps :
20
+ - uses : actions/checkout@v3
21
+
22
+ - name : Install Poetry
23
+ run : pipx install poetry
24
+
25
+ - run : poetry self add "poetry-dynamic-versioning[plugin]"
26
+
27
+ - uses : actions/setup-python@v4
28
+ with :
29
+ python-version : 3.8
30
+ cache : " poetry"
31
+
32
+ - run : poetry --version
33
+
34
+ - run : poetry install
35
+
36
+ - run : PKG_VERSION=$(poetry version --short) && echo $PKG_VERSION && echo "value=$PKG_VERSION" >> $GITHUB_OUTPUT
37
+ id : pkg_version
38
+
39
+ - run : poetry build
40
+
41
+ - run : echo "value=$(ls dist/*.tar.gz | sed 's/.tar.gz//' | xargs basename)" >> $GITHUB_OUTPUT
42
+ id : dist_folder
43
+
44
+ - uses : " marvinpinto/action-automatic-releases@latest"
45
+ with :
46
+ repo_token : " ${{ secrets.GITHUB_TOKEN }}"
47
+ files : |
48
+ dist/*.tar.gz
49
+ dist/*.whl
Original file line number Diff line number Diff line change
1
+ name : Install package
2
+
3
+ on :
4
+ push :
5
+ branches :
6
+ - ' *'
7
+ - ' !main'
8
+
9
+ jobs :
10
+ build :
11
+
12
+ runs-on : ubuntu-latest
13
+ strategy :
14
+ fail-fast : false
15
+ matrix :
16
+ python-version :
17
+ - " 3.8"
18
+ - " 3.9"
19
+ - " 3.10"
20
+ # TODO: PyGame doesn't support 3.11 yet
21
+ # - "3.11"
22
+
23
+ steps :
24
+ - uses : actions/checkout@v3
25
+
26
+ - name : Install Poetry
27
+ run : pipx install poetry
28
+
29
+ - run : poetry self add "poetry-dynamic-versioning[plugin]"
30
+
31
+ - uses : actions/setup-python@v4
32
+ with :
33
+ python-version : ${{ matrix.python-version }}
34
+ cache : " poetry"
35
+
36
+ - run : poetry --version
37
+
38
+ - run : poetry install
39
+
40
+ - run : poetry version
41
+
Original file line number Diff line number Diff line change
1
+ .idea
2
+
3
+ # Byte-compiled / optimized / DLL files
4
+ __pycache__ /
5
+ * .py [cod ]
6
+ * $py.class
7
+
8
+ # C extensions
9
+ * .so
10
+
11
+ # Distribution / packaging
12
+ .Python
13
+ build /
14
+ develop-eggs /
15
+ dist /
16
+ downloads /
17
+ eggs /
18
+ .eggs /
19
+ lib /
20
+ lib64 /
21
+ parts /
22
+ sdist /
23
+ var /
24
+ wheels /
25
+ pip-wheel-metadata /
26
+ share /python-wheels /
27
+ * .egg-info /
28
+ .installed.cfg
29
+ * .egg
30
+ MANIFEST
31
+
32
+ # PyInstaller
33
+ # Usually these files are written by a python script from a template
34
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
35
+ * .manifest
36
+ * .spec
37
+
38
+ # Installer logs
39
+ pip-log.txt
40
+ pip-delete-this-directory.txt
41
+
42
+ # Unit test / coverage reports
43
+ htmlcov /
44
+ .tox /
45
+ .nox /
46
+ .coverage
47
+ .coverage. *
48
+ .cache
49
+ nosetests.xml
50
+ coverage.xml
51
+ * .cover
52
+ * .py,cover
53
+ .hypothesis /
54
+ .pytest_cache /
55
+
56
+ # Translations
57
+ * .mo
58
+ * .pot
59
+
60
+ # Django stuff:
61
+ * .log
62
+ local_settings.py
63
+ db.sqlite3
64
+ db.sqlite3-journal
65
+
66
+ # Flask stuff:
67
+ instance /
68
+ .webassets-cache
69
+
70
+ # Scrapy stuff:
71
+ .scrapy
72
+
73
+ # Sphinx documentation
74
+ docs /_build /
75
+
76
+ # PyBuilder
77
+ target /
78
+
79
+ # Jupyter Notebook
80
+ .ipynb_checkpoints
81
+
82
+ # IPython
83
+ profile_default /
84
+ ipython_config.py
85
+
86
+ # pyenv
87
+ .python-version
88
+
89
+ # pipenv
90
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
91
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
92
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
93
+ # install all needed dependencies.
94
+ # Pipfile.lock
95
+
96
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
97
+ __pypackages__ /
98
+
99
+ # Celery stuff
100
+ celerybeat-schedule
101
+ celerybeat.pid
102
+
103
+ # SageMath parsed files
104
+ * .sage.py
105
+
106
+ # Environments
107
+ .env
108
+ .venv
109
+ env /
110
+ venv /
111
+ ENV /
112
+ env.bak /
113
+ venv.bak /
114
+
115
+ # Spyder project settings
116
+ .spyderproject
117
+ .spyproject
118
+
119
+ # Rope project settings
120
+ .ropeproject
121
+
122
+ # mkdocs documentation
123
+ /site
124
+
125
+ # mypy
126
+ .mypy_cache /
127
+ .dmypy.json
128
+ dmypy.json
129
+
130
+ # Pyre type checker
131
+ .pyre /
Original file line number Diff line number Diff line change
1
+ # Coder Dojo (Ham/Kingston) Common Python Packages
2
+
3
+ Basic packages containing all the Python dependencies for the Coder Dojo Sessions.
4
+
5
+ ## Installation
6
+
7
+ [ // ] : # ( TODO: Update documentation )
8
+
9
+ ## Development
10
+
11
+ Requires poetry.
12
+
13
+ ### Install
14
+
15
+ ``` shell
16
+ poetry install
17
+ ```
18
+
19
+ ### Add package
20
+
21
+ All packages are added as optional and grouped into extras.
22
+
23
+ ``` shell
24
+ poetry add requests --optional
25
+ ```
26
+
27
+ You will then need to update the extra information to ensure the package is in the correct group.
28
+
29
+ Either update the appropriate extras section or create a new section under extras in the [ pyproject.toml] ( pyproject.toml ) file.
30
+
31
+ ``` toml
32
+ [tool .poetry .dependencies ]
33
+ # ...stuff...
34
+ requests = { version = " ^2.28.2" , optional = true } # Package added as optional
35
+ # ...more stuff...
36
+
37
+ [tool .poetry .extras ]
38
+ # ...existing extras...
39
+ web = [" requesets" ] # A new extra 'web'
40
+ ```
You can’t perform that action at this time.
0 commit comments