-
-
Notifications
You must be signed in to change notification settings - Fork 294
PR guidelines
rachmadani haryono edited this page Jan 7, 2023
·
7 revisions
- Description
- Please provide an elaborate description of the problem you are trying to solve.
- Design notes
- If this is a new feature, please provide design notes on the change which the next developer looking at the code might need to know.
- Side effects
- Are you aware of any OS-specific deviations, side effects, unhandled scenarios etc.? Let us know.
- Test cases
- Which scenarios have you tested already? A list of commands are welcome.
- You can use genbm.sh to automate bookmark generation for tests.
This is more important than your design or code! Users check this first.
- README.md
- New dependencies? Update them under Installation.
- New program option? Update program help under Cmdline options verbatim. The short description in help should be more or less aligned to other option descriptions.
- Add an example, if required under Examples.
- Update Operational notes if your change affects current behaviour, links to environment variables etc.
- Man page
- Update program options.
- Add the same example, if you ave added one in README.md.
- Update Operational notes. However, new environment variables go under ENVIRONMENT section.
- Completion scripts
- Add new program options to completion scripts for bash, fish and zsh.
- Add new program options to a reasonable group.
- Single quote, single quote, single all the way!
- A single line should be less than 140 chars in length.
- No trailing whitespaces.
- Avoid append(), extend() and use concatenation if possible.
- Use string concatenation than substitution if possible, except (logger) prints.
- We have automated linting test but you can also test it by running
python3 -m flake8 buku.py
andpython3 -m pylint buku.py
. - Add new API documentation, reasonable code comments.
- If possible, add test cases for your new API under
tests/
. We are Travis integrated. - If possible, squash everything to a single commit.
Test case on bukuserver
- bookmarklet
- test new url
- test without any input
- fetch
- no fetch
- test with selected text
- test without any input
- test url already in db
- test new url
- bookmark
- create
- url only
- fetch
- no fetch
- description
- title
- tag
- delete
- update
- any
- change url to another existing url
- filter
- open bookmark url on new tab
- create
- tag
- update
- delete
- filter
- statistic
- filter
- netloc
- tag
- title
- filter
- site
- open bukuserver page on new tab (#659)