makeapp 2.3.0__tar.gz → 2.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {makeapp-2.3.0 → makeapp-2.5.0}/.gitignore +2 -0
- makeapp-2.5.0/PKG-INFO +72 -0
- makeapp-2.5.0/README.md +55 -0
- makeapp-2.5.0/src/makeapp/__init__.py +3 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/.github/workflows/python-package.yml +4 -6
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/.gitignore +2 -1
- makeapp-2.5.0/src/makeapp/app_templates/__default__/AGENTS.md +3 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/CONTRIBUTING.md +45 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/IDLE.md +457 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/INSTALL.md +31 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/README.md +33 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/docs/index.md +21 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/docs/quickstart.md +21 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/pyproject.toml +4 -0
- makeapp-2.5.0/src/makeapp/app_templates/__default__/tests/test_basic.py +11 -0
- makeapp-2.5.0/src/makeapp/app_templates/console/INSTALL.md +23 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/.github/workflows/python-package.yml +7 -5
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/makeappconf.py +10 -12
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/appmaker.py +33 -9
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/apptools.py +90 -69
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/cli.py +14 -4
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/helpers/dist.py +6 -6
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/helpers/files.py +1 -1
- makeapp-2.5.0/src/makeapp/helpers/tests.py +181 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/helpers/vcs.py +41 -27
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/helpers/venvs.py +1 -1
- makeapp-2.5.0/src/makeapp/utils.py +271 -0
- makeapp-2.3.0/PKG-INFO +0 -136
- makeapp-2.3.0/README.md +0 -119
- makeapp-2.3.0/src/makeapp/__init__.py +0 -3
- makeapp-2.3.0/src/makeapp/app_templates/__default__/CONTRIBUTING.md +0 -21
- makeapp-2.3.0/src/makeapp/app_templates/__default__/INSTALL.md +0 -24
- makeapp-2.3.0/src/makeapp/app_templates/__default__/README.md +0 -22
- makeapp-2.3.0/src/makeapp/app_templates/__default__/docs/index.md +0 -37
- makeapp-2.3.0/src/makeapp/app_templates/__default__/docs/quickstart.md +0 -3
- makeapp-2.3.0/src/makeapp/app_templates/__default__/tests/test_basic.py +0 -11
- makeapp-2.3.0/src/makeapp/helpers/tests.py +0 -129
- makeapp-2.3.0/src/makeapp/utils.py +0 -191
- {makeapp-2.3.0 → makeapp-2.5.0}/LICENSE +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/AUTHORS.md +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/CHANGELOG.md +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/mkdocs.yml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/ruff.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/src/__package_name__/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/__default__/tests/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/click/makeappconf.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/click/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/click/src/__package_name__/cli.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/console/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/console/src/__package_name__/cli.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/makeappconf.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/admin.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/apps.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/locale/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/management/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/management/commands/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/models.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/templates/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/templatetags/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/tests/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/tests/conftest.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/tests/test_basic.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/django/src/__package_name__/views.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/pytestplugin/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/pytestplugin/src/__package_name__/entry.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/pytestplugin/tests/test_basic.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/.gitignore +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/conf/__package_name__-certbot-hook.sh +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/conf/__package_name__.service +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/conf/env_production.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/pyproject.toml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/requirements.txt +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/core/uwsgiinit.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/auto.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/base.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/env_development.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/env_testing.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/settings/sub_paths.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/src/__package_name__/uwsgicfg.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/state/certbot/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/state/dumps/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/state/media/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/state/spool/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/state/static/empty +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/tests/conftest.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/tests/requirements.txt +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/tests/test_module.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/app_templates/webscaff/wscaff.yml +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/appconfig.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/apptemplate.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/exceptions.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/helpers/__init__.py +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/apache2 +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/apache2_src +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/bsd2cl +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/bsd3cl +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/gpl2 +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/gpl2_src +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/gpl3 +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/gpl3_src +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/mit +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/no +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/license_templates/no_src +0 -0
- {makeapp-2.3.0 → makeapp-2.5.0}/src/makeapp/rendering.py +0 -0
makeapp-2.5.0/PKG-INFO
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: makeapp
|
|
3
|
+
Version: 2.5.0
|
|
4
|
+
Summary: Simplifies routine Python application development processes.
|
|
5
|
+
Project-URL: Homepage, https://github.com/idlesign/makeapp
|
|
6
|
+
Project-URL: Documentation, https://makeapp.readthedocs.io/
|
|
7
|
+
Author-email: Igor Starikov <idlesign@yandex.ru>
|
|
8
|
+
License-Expression: BSD-3-Clause
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Keywords: development,scaffolding
|
|
11
|
+
Requires-Python: >=3.11
|
|
12
|
+
Requires-Dist: click
|
|
13
|
+
Requires-Dist: jinja2~=3.1
|
|
14
|
+
Requires-Dist: pyyaml
|
|
15
|
+
Requires-Dist: requests
|
|
16
|
+
Description-Content-Type: text/markdown
|
|
17
|
+
|
|
18
|
+
# makeapp
|
|
19
|
+
|
|
20
|
+
[](https://pypi.org/project/makeapp/)
|
|
21
|
+
[](https://pypi.org/project/makeapp/)
|
|
22
|
+
[](https://coveralls.io/github/idlesign/makeapp)
|
|
23
|
+
[](https://makeapp.readthedocs.io/)
|
|
24
|
+
|
|
25
|
+
`makeapp` scaffolds Python projects and provides one CLI for their common development tasks. It can create a project
|
|
26
|
+
from composable templates, initialize Git and a virtual environment, run a GitHub Actions test matrix locally, maintain
|
|
27
|
+
a changelog, and publish releases.
|
|
28
|
+
|
|
29
|
+
## Install
|
|
30
|
+
|
|
31
|
+
Python 3.11 or newer and [uv](https://docs.astral.sh/uv/getting-started/installation/) are required.
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
uv tool install makeapp
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Both `makeapp` and its short alias `ma` invoke the same command.
|
|
38
|
+
|
|
39
|
+
## Quick start
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
ma new shiny_app ./shiny-app --description "My app" --author "I am" --no-prompt
|
|
43
|
+
cd shiny-app
|
|
44
|
+
ma tests
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
The default scaffold contains a `src`-layout package, tests, project metadata, a changelog, and MkDocs documentation.
|
|
48
|
+
The non-interactive command also initializes Git and runs `uv sync` to create `.venv`.
|
|
49
|
+
|
|
50
|
+
Bundled templates can extend the default scaffold:
|
|
51
|
+
|
|
52
|
+
- `console` for an `argparse` command-line application;
|
|
53
|
+
- `click` for a Click command-line application;
|
|
54
|
+
- `django` for a reusable Django application;
|
|
55
|
+
- `pytestplugin` for a pytest plugin;
|
|
56
|
+
- `webscaff` for a Linux-hosted Django/Webscaff project.
|
|
57
|
+
|
|
58
|
+
For example:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
ma new shiny_cli ./shiny-cli -t click --no-prompt
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Documentation
|
|
65
|
+
|
|
66
|
+
The full user and extension documentation is available at <https://makeapp.readthedocs.io/>.
|
|
67
|
+
|
|
68
|
+
- [Quickstart](https://makeapp.readthedocs.io/en/latest/quickstart/)
|
|
69
|
+
- [CLI reference](https://makeapp.readthedocs.io/en/latest/cli_reference/)
|
|
70
|
+
- [Template authoring](https://makeapp.readthedocs.io/en/latest/template_authoring/)
|
|
71
|
+
- [Publishing](https://makeapp.readthedocs.io/en/latest/publishing/)
|
|
72
|
+
Issues and feature requests are welcome in the [GitHub issue tracker](https://github.com/idlesign/makeapp/issues).
|
makeapp-2.5.0/README.md
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# makeapp
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/makeapp/)
|
|
4
|
+
[](https://pypi.org/project/makeapp/)
|
|
5
|
+
[](https://coveralls.io/github/idlesign/makeapp)
|
|
6
|
+
[](https://makeapp.readthedocs.io/)
|
|
7
|
+
|
|
8
|
+
`makeapp` scaffolds Python projects and provides one CLI for their common development tasks. It can create a project
|
|
9
|
+
from composable templates, initialize Git and a virtual environment, run a GitHub Actions test matrix locally, maintain
|
|
10
|
+
a changelog, and publish releases.
|
|
11
|
+
|
|
12
|
+
## Install
|
|
13
|
+
|
|
14
|
+
Python 3.11 or newer and [uv](https://docs.astral.sh/uv/getting-started/installation/) are required.
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
uv tool install makeapp
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Both `makeapp` and its short alias `ma` invoke the same command.
|
|
21
|
+
|
|
22
|
+
## Quick start
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
ma new shiny_app ./shiny-app --description "My app" --author "I am" --no-prompt
|
|
26
|
+
cd shiny-app
|
|
27
|
+
ma tests
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
The default scaffold contains a `src`-layout package, tests, project metadata, a changelog, and MkDocs documentation.
|
|
31
|
+
The non-interactive command also initializes Git and runs `uv sync` to create `.venv`.
|
|
32
|
+
|
|
33
|
+
Bundled templates can extend the default scaffold:
|
|
34
|
+
|
|
35
|
+
- `console` for an `argparse` command-line application;
|
|
36
|
+
- `click` for a Click command-line application;
|
|
37
|
+
- `django` for a reusable Django application;
|
|
38
|
+
- `pytestplugin` for a pytest plugin;
|
|
39
|
+
- `webscaff` for a Linux-hosted Django/Webscaff project.
|
|
40
|
+
|
|
41
|
+
For example:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
ma new shiny_cli ./shiny-cli -t click --no-prompt
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Documentation
|
|
48
|
+
|
|
49
|
+
The full user and extension documentation is available at <https://makeapp.readthedocs.io/>.
|
|
50
|
+
|
|
51
|
+
- [Quickstart](https://makeapp.readthedocs.io/en/latest/quickstart/)
|
|
52
|
+
- [CLI reference](https://makeapp.readthedocs.io/en/latest/cli_reference/)
|
|
53
|
+
- [Template authoring](https://makeapp.readthedocs.io/en/latest/template_authoring/)
|
|
54
|
+
- [Publishing](https://makeapp.readthedocs.io/en/latest/publishing/)
|
|
55
|
+
Issues and feature requests are welcome in the [GitHub issue tracker](https://github.com/idlesign/makeapp/issues).
|
|
@@ -2,9 +2,7 @@ name: Python package
|
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
5
|
-
branches: [ master ]
|
|
6
5
|
pull_request:
|
|
7
|
-
branches: [ master ]
|
|
8
6
|
|
|
9
7
|
jobs:
|
|
10
8
|
build:
|
|
@@ -27,15 +25,15 @@ jobs:
|
|
|
27
25
|
- name: Install deps
|
|
28
26
|
run: |
|
|
29
27
|
uv sync --only-group tests
|
|
30
|
-
uv pip install coveralls
|
|
28
|
+
uv pip install -e . coveralls
|
|
31
29
|
- uses: astral-sh/ruff-action@v3
|
|
32
30
|
with:
|
|
33
|
-
version: 0.
|
|
31
|
+
version: 0.17.5
|
|
34
32
|
args: check
|
|
35
33
|
- name: Run tests
|
|
36
34
|
env:
|
|
37
35
|
GITHUB_TOKEN: ${{ secrets.github_token }}
|
|
38
36
|
{% endraw %}
|
|
39
37
|
run: |
|
|
40
|
-
uv run coverage run -m pytest
|
|
41
|
-
uv run coveralls --service=github
|
|
38
|
+
uv run --no-sync coverage run -m pytest
|
|
39
|
+
uv run --no-sync coveralls --service=github
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# contributing {{ app_name }}
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
## Submit issues
|
|
5
|
+
|
|
6
|
+
If you spotted something weird in application behavior or want to propose a feature you are welcome.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Write code
|
|
10
|
+
|
|
11
|
+
If you are eager to participate in application development and to work on an existing issue (whether it should
|
|
12
|
+
be a bugfix or a feature implementation), fork, write code, and make a pull request right from the forked project page.
|
|
13
|
+
|
|
14
|
+
When contributing code, follow the rules from IDLE.md shipped with the project.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Project workflow
|
|
18
|
+
|
|
19
|
+
The development tasks are provided by [makeapp](https://pypi.org/project/makeapp/). Install or update it first:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
uv tool install makeapp # or: uv tool upgrade makeapp
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Then, from the project directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
ma up # Synchronize the development environment.
|
|
29
|
+
ma style # Run Ruff checks and apply safe fixes.
|
|
30
|
+
ma tests # Run the configured test matrix.
|
|
31
|
+
ma docs --build # Build documentation without starting a server.
|
|
32
|
+
ma change "+ Add a feature" # Update the changelog and commit modified files.
|
|
33
|
+
ma release # Prepare a release and optionally publish it.
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Review changes before running `ma change`: it stages and commits modified tracked files together with the changelog.
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
## Spread the word
|
|
40
|
+
|
|
41
|
+
If you have some tips and tricks or any other words that you think might be of interest for the others --- publish it
|
|
42
|
+
wherever you find convenient.
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
See also: {{ url }}
|