-
Notifications
You must be signed in to change notification settings - Fork 6
/
developer-notes.txt
72 lines (41 loc) · 1.84 KB
/
developer-notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Users: This files contains information for the PyWaveSurfer
developer(s). You can safely ignore it.
To bump version
---------------
0. pip install --user bumpversion
This installs the bumpversion command-line tool for the current user.
1. Checkout the release branch, merge develop branch into it.
2. Run: bumpversion patch (or 'minor' or 'major' following:
major.minor.patch)
This modifies the setup.py file in the root of the repo. It also
changes .bumpversion.cfg to reflect the new version. ***It then
does a git commit of these changes, with a comment
like "Bump version: 0.0.2 -> 0.0.3".*** (That's why you should be
on a release branch before you do this.)
3. Add a paragraph to the README about the new release.
4. Commit to the release branch, then switch over to master, and merge
in the release branch.
5. Run: python3 setup.py sdist
Runs the setup.py script that got updated in the "bumpversion" step
above. This creates/updates the dist folder and the
pywavesurfer.egg-info folders, which contain a packaged version of
the pywavesurfer module, ready for uploading to PyPI, and some
metadata pertaining to it.
6. Run: twine upload dist\pywaveserfer{version}
This uploads the module to PyPI.
To run automated tests
----------------------
0. Do
pip install --user pytest
pip install --user pytest-flake8
pip install --user pytest-coverage
1. Change directory to pywavesurfer
2. Run: pytest --flake8
3. To see coverage run: pytest --flake8 --cov=pywavesurfer --cov-report html
PyWaveSurfer coding/development conventions
-----------------------------------------
As much as possible please adhere to PEP8.
https://www.python.org/dev/peps/pep-0008/.
Two exception are made:
1. Line length is capped at 120
2. The loading method name remains camelCase for consistency of the API