Skip to content

Commit c4351f7

Browse files
update docs
1 parent e87c061 commit c4351f7

File tree

5 files changed

+172
-70
lines changed

5 files changed

+172
-70
lines changed

.gitignore

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
11
*.csv
2+
3+
*.py[cod]
4+
*.swp
5+
__pycache__
6+
/src/pyproject_api/_version.py
7+
build
8+
dist
9+
*.egg-info
10+
.tox
11+
/.*_cache
12+
13+
214
# Byte-compiled / optimized / DLL files
315
__pycache__/
416
*.py[cod]

README.md

Lines changed: 18 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -91,62 +91,38 @@ To update a release of a Python package, you'll typically go through the followi
9191
git tag -a v0.1.1 -m "Release version 0.1.1"
9292
git push --tags
9393
```
94+
95+
## Build
9496

95-
6. Build the new distribution files for the package using your chosen build tool, typically the build package:
97+
Build the new distribution files for the package using your chosen build tool, typically the build package:
98+
Run the build module from the root of the project where the `pyproject.toml` file is located:
99+
This command will generate distribution files in the newly created `dist/` directory within your project. You will find both a source archive (`.tar.gz`) and a wheel file (`.whl`).
96100
```shell
97-
python -m build
101+
pip install build
102+
python -m build --version 0.1.2
98103
```
99104

100-
7. Upload the new distribution files to the Python Package Index (PyPI), typically using twine:
105+
106+
### Publish
107+
After the build completes successfully, upload the new distribution files to the Python Package Index (PyPI).
108+
Upload your package to PyPI using `twine`
101109
```shell
102110
twine upload dist/*
103111
```
104112

105-
8. If your project is hosted on GitHub or a similar platform, you may also want to create a GitHub release:
106-
- Go to the "Releases" section of your repository.
107-
- Draft a new release, using the new tag you've created.
108-
- Add release notes summarizing the changes.
109-
- Optionally, attach binaries or additional files that accompany the release.
110-
- Publish the release.
111-
112-
113-
114-
115-
116-
117-
118-
119-
113+
### Github Release
120114

115+
If your project is hosted on GitHub or a similar platform, you may also want to create a GitHub release:
116+
- Go to the "Releases" section of your repository.
117+
- Draft a new release, using the new tag you've created.
118+
- Add release notes summarizing the changes.
119+
- Optionally, attach binaries or additional files that accompany the release.
120+
- Publish the release.
121121

122-
### Build
123-
build your package, first ensure you have the latest versions of `build` and `wheel` installed:
124-
125-
```shell
126-
pip install --upgrade build wheel
127-
pip install --upgrade twine
128-
```
129-
130-
### Install
131-
Run the build module from the root of the project where the `pyproject.toml` file is located:
132-
133-
```shell
134-
python -m build --version 0.0.2
135-
```
136-
This command will generate distribution files in the newly created `dist/` directory within your project. You will find both a source archive (`.tar.gz`) and a wheel file (`.whl`).
137-
138-
### Publish
139-
After the build completes successfully,
140-
upload your package to PyPI using `twine`:
141-
142-
```shell
143-
twine upload dist/*
144-
```
145122

146123
### Test
147124
```bash
148125
pytest
149-
#python3 setup.py sdist bdist_wheel
150126
```
151127

152128
## Strategies

pyproject.toml

Lines changed: 140 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,143 @@
11
[build-system]
22
requires = [
3-
"setuptools>=42",
4-
"wheel",
5-
'requests >= 2',
6-
'setuptools >= 67.7.2'
3+
"hatch-vcs>=0.4",
4+
"hatchling>=1.18",
75
]
8-
build-backend = "setuptools.build_meta"
6+
build-backend = "hatchling.build"
7+
8+
[tool.setuptools.dynamic]
9+
name = "dialoget"
10+
version = "attr: dialoget.__version__"
11+
12+
13+
[project.urls]
14+
homepage = "https://dialoget.github.io"
15+
repository = "https://github.com/dialoget/python"
16+
changelog = "https://dialoget.github.io/releases"
17+
wiki = "https://github.com/dialoget/python/wiki"
18+
19+
20+
[project]
21+
name = "dialoget"
22+
dynamic = ["version"]
23+
authors = [
24+
{ name = "Tom Sapletta", email = "[email protected]" },
25+
]
26+
maintainers = [
27+
{ name = "dialoget developers", email = "[email protected]" }
28+
]
29+
requires-python = ">=3.7"
30+
description = "A Sentence Python decorator for displaying dynamic log messages."
31+
readme.content-type = "text/markdown"
32+
readme.file = "README.md"
33+
keywords = ["test", "framework", "doalogware", "Sentence", "console", "terminal", "time"]
34+
license = "Apache-2.0"
35+
36+
classifiers = [
37+
"Development Status :: 5 - Production/Stable",
38+
"Environment :: Console",
39+
"Environment :: MacOS X",
40+
"Environment :: Other Environment",
41+
"Environment :: Win32 (MS Windows)",
42+
"Environment :: X11 Applications",
43+
"Framework :: IPython",
44+
"Framework :: Jupyter",
45+
"Intended Audience :: Developers",
46+
"Intended Audience :: Education",
47+
"Intended Audience :: End Users/Desktop",
48+
"Intended Audience :: Other Audience",
49+
"Intended Audience :: System Administrators",
50+
"License :: OSI Approved :: Apache Software License",
51+
"Operating System :: MacOS",
52+
"Operating System :: MacOS :: MacOS X",
53+
"Operating System :: Microsoft",
54+
"Operating System :: Microsoft :: MS-DOS",
55+
"Operating System :: Microsoft :: Windows",
56+
"Operating System :: POSIX",
57+
"Operating System :: POSIX :: BSD",
58+
"Operating System :: POSIX :: BSD :: FreeBSD",
59+
"Operating System :: POSIX :: Linux",
60+
"Operating System :: POSIX :: SunOS/Solaris",
61+
"Operating System :: Unix",
62+
"Programming Language :: Python",
63+
"Programming Language :: Python :: 3",
64+
"Programming Language :: Python :: 3.7",
65+
"Programming Language :: Python :: 3.8",
66+
"Programming Language :: Python :: 3.9",
67+
"Programming Language :: Python :: 3.10",
68+
"Programming Language :: Python :: 3.11",
69+
"Programming Language :: Python :: 3 :: Only",
70+
"Programming Language :: Python :: Implementation",
71+
"Programming Language :: Python :: Implementation :: IronPython",
72+
"Programming Language :: Python :: Implementation :: PyPy",
73+
"Programming Language :: Unix Shell",
74+
"Topic :: Desktop Environment",
75+
"Topic :: Education :: Computer Aided Instruction (CAI)",
76+
"Topic :: Education :: Testing",
77+
"Topic :: Office/Business",
78+
"Topic :: Other/Nonlisted Topic",
79+
"Topic :: Software Development :: Build Tools",
80+
"Topic :: Software Development :: Libraries",
81+
"Topic :: Software Development :: Libraries :: Python Modules",
82+
"Topic :: Software Development :: Pre-processors",
83+
"Topic :: Software Development :: User Interfaces",
84+
"Topic :: System :: Installation/Setup",
85+
"Topic :: System :: Logging",
86+
"Topic :: System :: Monitoring",
87+
"Topic :: System :: Shells",
88+
"Topic :: Terminals",
89+
"Topic :: Utilities"]
90+
dependencies = []
91+
92+
[project.scripts]
93+
dialoget = "dialoget.cli:main"
94+
95+
[tool.flake8]
96+
max_line_length = 99
97+
exclude = [".git", "__pycache__", "build", "dist", ".eggs", ".asv", ".tox", ".ipynb_checkpoints"]
98+
99+
[tool.yapf]
100+
spaces_before_comment = [15, 20]
101+
arithmetic_precedence_indication = true
102+
allow_split_before_dict_value = false
103+
coalesce_brackets = true
104+
column_limit = 99
105+
each_dict_entry_on_separate_line = false
106+
space_between_ending_comma_and_closing_bracket = false
107+
split_before_named_assigns = false
108+
split_before_closing_bracket = false
109+
blank_line_before_nested_class_or_def = false
110+
111+
[tool.isort]
112+
line_length = 99
113+
multi_line_output = 4
114+
known_first_party = ["src", "tests"]
115+
116+
[tool.coverage.run]
117+
branch = true
118+
include = ["dialoget/*"]
119+
relative_files = true
120+
disable_warnings = ["include-ignored"]
121+
122+
[tool.coverage.report]
123+
show_missing = true
124+
125+
126+
[tool.ruff]
127+
src = ["src", "tests"]
128+
129+
[tool.ruff.isort]
130+
known-first-party = ["pyproject_hooks", "tests"]
131+
132+
[tool.mypy]
133+
python_version = "3.11"
134+
show_error_codes = true
135+
strict = true
136+
overrides = [{ module = ["virtualenv.*"], ignore_missing_imports = true }]
137+
138+
[tool.hatch]
139+
build.hooks.vcs.version-file = "src/__init__.py"
140+
version.source = "vcs"
141+
142+
[tool.black]
143+
line-length = 120

requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
requests
2-
setuptools
2+
setuptools
3+
build

setup.cfg

Lines changed: 0 additions & 22 deletions
This file was deleted.

0 commit comments

Comments
 (0)