Skip to content

Commit

Permalink
Merge pull request #220 from gryf/docs
Browse files Browse the repository at this point in the history
Docs update
  • Loading branch information
Evolution0 authored Apr 9, 2024
2 parents 0d7184b + 952408e commit e29dcf5
Show file tree
Hide file tree
Showing 4 changed files with 117 additions and 84 deletions.
15 changes: 11 additions & 4 deletions .github/CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ How To Contribute
First off, thank you for considering contributing to ``bandcamp-dl``!
It's people like *you* who make it is such a great tool for everyone.

Here are a few guidelines to get you started (but don't be afraid to open half-finished PRs and ask questions if something is unclear!):
Here are a few guidelines to get you started (but don't be afraid to
open half-finished PRs and ask questions if something is unclear!):


Workflow
Expand All @@ -13,20 +14,26 @@ Workflow
- No contribution is too small!
Please submit as many fixes for typos and grammar bloopers as you can!
- Try to limit each pull request to *one* change only.
- Once you've addressed review feedback, make sure to bump the pull request with a short note.
- Once you've addressed review feedback, make sure to bump the pull
request with a short note.


Code
----

- Try to adhere to PEP8 as best you can.

- allowed line code length for this project is up to 99 chars
- documentation line length is up to 72 chars

- Annotate functions
- Specify return types
- Add docstrings

*****

Again, this list is mainly to help you to get started by codifying tribal knowledge and expectations.
If something is unclear, feel free to ask for help!
Again, this list is mainly to help you to get started by codifying
tribal knowledge and expectations. If something is unclear, feel free
to ask for help!

Thank you for considering contributing to ``bandcamp-dl``!
36 changes: 24 additions & 12 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,15 @@ Changelog:

Version 0.0.5
-------------
- [Enhancement] ID3 Data Windows Explorer Compatibility. (Courtesy of `Bendito999 <https://github.com/Bendito999>`_)
- [Enhancement] ID3 Data Windows Explorer Compatibility. (Courtesy of
`Bendito999 <https://github.com/Bendito999>`_)
- [Enhancement] Will now use lxml if available, it is not a requirement.
- [Bugfix] ``--base-dir`` will now create the specified directory rather than fail.
- [Enhancement] If a file is incomplete it will be redownloaded on next run.
- [Bugfix] Fixed `#62 <https://github.com/iheanyi/bandcamp-dl/issues/62>`_.
- [Bugfix] ``--base-dir`` will now create the specified directory rather
than fail.
- [Enhancement] If a file is incomplete it will be redownloaded on next
run.
- [Bugfix] Fixed
`#62 <https://github.com/iheanyi/bandcamp-dl/issues/62>`_.
- [Dependency] Wgetter is no longer required.
- [Dependency] Latest versions of dependencies now used.

Expand All @@ -17,23 +21,31 @@ Version 0.0.6
- [Enhancement] Individual track downloads work now.
- [Bugfix] Fixed imports, now working when installed via pip.
- [Note] Last version to officially support Python 2.7.x
- [Bugfix] Fixed an encoding issue with accented characters in the filepath. (Thanks `oaubert <https://github.com/oaubert>`_)
- [Bugfix] Fixed an encoding issue with accented characters in the
filepath. (Thanks `oaubert <https://github.com/oaubert>`_)

Version 0.0.7
-------------
- [Enhancement] Will now resume if it finds a valid ``not.finished`` file.
- [Enhancement] Interrupting downloads is safe, they will resume on next run.
- [Enhancement] Interrupting encoding is safe, it will finish on next run.
- [Enhancement] Will now resume if it finds a valid ``not.finished``
file.
- [Enhancement] Interrupting downloads is safe, they will resume on next
run.
- [Enhancement] Interrupting encoding is safe, it will finish on next
run.
- [Enhancement] CLI output is now much neater.
- [Bugfix] Partial albums (some previews disabled) will now download properly.
- [Bugfix] Partial albums (some previews disabled) will now download
properly.
- [Dependency] Slimit is no longer required.
- [Dependency] Ply is no longer required.
- [Dependency] demjson is now required.
- [Bugfix] Downloading singles is now fixed.
- [Bugfix] Monkey-patched Requests to fix compatability with Python versions before 3.6.
- [Bugfix] Monkey-patched Requests to fix compatability with Python
versions before 3.6.
- [Enhancement] Added a --group option to insert a group tag (iTunes)

Version 0.0.8
-------------
- [Enhancement] --embed-art option to forcibly embed album art (if available)
- [Enhancement] --track option for downloading individual tracks and singles.
- [Enhancement] --embed-art option to forcibly embed album art (if
available)
- [Enhancement] --track option for downloading individual tracks and
singles.
77 changes: 41 additions & 36 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@
## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.
contributors and maintainers pledge to making participation in our
project and our community a harassment-free experience for everyone,
regardless of age, body size, disability, ethnicity, sex
characteristics, gender identity and expression, level of experience,
education, socio-economic status, nationality, personal appearance,
race, religion, or sexual identity and orientation.

## Our Standards

Expand All @@ -22,53 +23,57 @@ include:

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* The use of sexualized language or imagery and unwelcome sexual
attention or advances
* Trolling, insulting/derogatory comments, and personal or political
attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Publishing others' private information, such as a physical or
electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers are responsible for clarifying the standards of
acceptable behavior and are expected to take appropriate and fair
corrective action in response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
Project maintainers have the right and responsibility to remove, edit,
or reject comments, commits, code, wiki edits, issues, and other
contributions that are not aligned to this Code of Conduct, or to ban
temporarily or permanently any contributor for other behaviors that they
deem inappropriate, threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
This Code of Conduct applies both within project spaces and in public
spaces when an individual is representing the project or its community.
Examples of representing a project or community include using an
official project e-mail address, posting via an official social media
account, or acting as an appointed representative at an online or
offline event. Representation of a project may be further defined and
clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [email protected]. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Instances of abusive, harassing, or otherwise unacceptable behavior may
be reported by contacting the project team at [email protected]. All
complaints will be reviewed and investigated and will result in a
response that is deemed necessary and appropriate to the circumstances.
The project team is obligated to maintain confidentiality with regard to
the reporter of an incident. Further details of specific enforcement
policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
Project maintainers who do not follow or enforce the Code of Conduct in
good faith may face temporary or permanent repercussions as determined
by other members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
This Code of Conduct is adapted from the
[Contributor Covenant][homepage], version 1.4, available at
https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org

Expand Down
73 changes: 41 additions & 32 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ From PyPI

``pip3 install bandcamp-downloader``


Some linux distros may require that python3-pip is installed first.

From Wheel
Expand All @@ -39,17 +38,18 @@ From Wheel
From Source
~~~~~~~~~~~

1. Clone the project or `download and extract the zip <https://github.com/iheanyi/bandcamp-dl/archive/master.zip>`_
1. Clone the project or `download and extract the zip`_
2. ``cd`` to the project directory containing the ``setup.py``
3. ``python setup.py install``

Description
-----------

bandcamp-dl is a small command-line app to download audio from
BandCamp.com. It requires the Python interpreter, version 3.4 (or higher) and is
not platform specific. It is released to the public domain, which means
you can modify it, redistribute it or use it how ever you like.
BandCamp.com. It requires the Python interpreter, version 3.4 (or
higher) and is not platform specific. It is released to the public
domain, which means you can modify it, redistribute it or use it how
ever you like.

Details
-------
Expand Down Expand Up @@ -113,10 +113,10 @@ The default template is: ``%{artist}/%{album}/%{track} - %{title}``.
Bugs
----

Bugs should be reported `here <https://github.com/iheanyi/bandcamp-dl/issues>`_.
Please include the URL and/or options used as well as the output when using the `--debug` option.
Bugs should be reported `here`_. Please include the URL and/or options
used as well as the output when using the `--debug` option.

For discussions, join us in `Discord <https://discord.gg/nwdT4MP>`_.
For discussions, join us in `Discord`_.

When you submit a request, please re-read it once to avoid a couple of
mistakes (you can and should use this as a checklist):
Expand All @@ -132,22 +132,20 @@ Is the issue already documented?
--------------------------------

Make sure that someone has not already opened the issue you're trying to
open. Search at the top of the window or at
`Issues <https://github.com/iheanyi/bandcamp-dl/search?type=Issues>`_.
If there is an issue, feel free to write something along the lines of
"This affects me as well, with version 2015.01.01. Here is some more
information on the issue: ...". While some issues may be old, a new post
into them often spurs rapid activity.
open. Search at the top of the window or at `Issues`_. If there is an
issue, feel free to write something along the lines of "This affects me
as well, with version 2015.01.01. Here is some more information on the
issue: ...". While some issues may be old, a new post into them often
spurs rapid activity.

Why are existing options not enough?
------------------------------------

Before requesting a new feature, please have a quick peek at `the list
of supported
options <https://github.com/iheanyi/bandcamp-dl/blob/master/README.rst#synopsis>`_.
Many feature requests are for features that actually exist already!
Please, absolutely do show off your work in the issue report and detail
how the existing similar options do *not* solve your problem.
Before requesting a new feature, please have a quick peek at
`the list of supported options`_. Many feature requests are for
features that actually exist already! Please, absolutely do show off
your work in the issue report and detail how the existing similar
options do *not* solve your problem.

Does the issue involve one problem, and one problem only?
---------------------------------------------------------
Expand Down Expand Up @@ -182,21 +180,32 @@ related to bandcamp-dl, by all means, go ahead and report the bug.
Dependencies
------------

- `BeautifulSoup4 <https://pypi.python.org/pypi/beautifulsoup4>`_ - HTML Parsing
- `Demjson <https://pypi.python.org/pypi/demjson>`_- JavaScript dict to JSON conversion
- `Mutagen <https://pypi.python.org/pypi/mutagen>`_ - ID3 Encoding
- `Requests <https://pypi.python.org/pypi/requests>`_ - for retrieving the HTML
- `Unicode-Slugify <https://pypi.python.org/pypi/unicode-slugify>`_ - A slug generator that turns strings into unicode slugs.
- `Chardet <https://pypi.python.org/pypi/chardet>`_ - Character encoding detection
- `Docopt <https://pypi.python.org/pypi/docopt>`_ - CLI help
- `Six <https://pypi.python.org/pypi/six>`_ - Python 2-3 compatibility
- `Unidecode <https://pypi.python.org/pypi/unidecode>`_ - ASCII representation of Unicode text
- `BeautifulSoup4`_ - HTML Parsing
- `Demjson`_- JavaScript dict to JSON conversion
- `Mutagen`_ - ID3 Encoding
- `Requests`_ - for retrieving the HTML
- `Unicode-Slugify`_ - A slug generator that turns strings into unicode
slugs.
- `Docopt`_ - CLI help

Copyright
---------

bandcamp-dl is released into the public domain by the copyright holders

This README file was inspired by the
`youtube-dl <https://github.com/rg3/youtube-dl/blob/master/README.md>`_
docs and is likewise released into the public domain.
This README file was inspired by the `youtube-dl`_ docs and is likewise
released into the public domain.


.. _download and extract the zip: https://github.com/iheanyi/bandcamp-dl/archive/master.zip
.. _here: https://github.com/iheanyi/bandcamp-dl/issues
.. _Discord: https://discord.gg/nwdT4MP
.. _Issues: https://github.com/iheanyi/bandcamp-dl/search?type=Issues
.. _the list of supported options: https://github.com/iheanyi/bandcamp-dl/blob/master/README.rst#synopsis
.. _BeautifulSoup4: https://pypi.python.org/pypi/beautifulsoup4
.. _Demjson: https://pypi.python.org/pypi/demjson
.. _Mutagen: https://pypi.python.org/pypi/mutagen
.. _Requests: https://pypi.python.org/pypi/requests
.. _Unicode-Slugify: https://pypi.python.org/pypi/unicode-slugify
.. _Docopt: https://pypi.python.org/pypi/docopt
.. _youtube-dl: https://github.com/rg3/youtube-dl/blob/master/README.md

0 comments on commit e29dcf5

Please sign in to comment.