https://bugzilla.redhat.com/show_bug.cgi?id=1409654 --- Comment #4 from Tadej Janež <tadej.j@xxxxxx> --- (In reply to Igor Gnatenko from comment #3) > (In reply to Tadej Janež from comment #2) > GitHub should be preferred as it's *real* source (with licenses, tests and > all stuff). PyPI tarball is pre-processed source (usually without license, > tests). I disagree. The PyPI tarball is the actual upstream release tarball, whereas the GitHub's Source archive link [1] is just a tarball of everything that is in the git repo. (As a side-note, pydocstyle actually uses GitHub's Releases feature and they provide the same release tarball there [2] as is available on PyPI [3].) I'm sure you know that in the Python world, source distributions are usually made with 'python setup.py sdist' command. And application authors can control what gets included in the source distribution by specifying it in setup.py and MANIFEST.in files. In pydocstyle's case, the authors decided to include the LICENSE file in the source distribution (LICENSE-MIT) but they omitted the tests (src/tests). I think tests are valuable and should be included in the source distribution. However, I think I should try to persuade the upstream to include them, not side-step them by using the GitHub's Source archive link. > Question whether if it will check py2 source code docstrings properly. E.g. > you have py3-incompatible source. I checked this with Django 1.4 which is a quite large Python 2 project without Python 3 support and it works without a problem. Here are the details: [tadej@tlinux64 pydocstyle-for-python2-only-code]$ wget -q https://www.djangoproject.com/download/1.4/tarball -O Django-1.4.tar.gz [tadej@tlinux64 pydocstyle-for-python2-only-code]$ tar -xf Django-1.4.tar.gz [tadej@tlinux64 pydocstyle-for-python2-only-code]$ cd Django-1.4/ [tadej@tlinux64 Django-1.4]$ cat $(which pydocstyle) #!/usr/bin/python3 # EASY-INSTALL-ENTRY-SCRIPT: 'pydocstyle==1.1.1','console_scripts','pydocstyle' __requires__ = 'pydocstyle==1.1.1' import sys from pkg_resources import load_entry_point if __name__ == '__main__': sys.exit( load_entry_point('pydocstyle==1.1.1', 'console_scripts', 'pydocstyle')() ) [tadej@tlinux64 Django-1.4]$ pydocstyle django django/contrib/admin/validation.py WARNING: __all__ is defined as a list, this means pydocstyle cannot reliably detect contents of the __all__ variable, because it can be mutated. Change __all__ to be an (immutable) tuple, to remove this warning. Note, pydocstyle uses __all__ to detect which definitions are public, to warn if public definitions are missing docstrings. If __all__ is a (mutable) list, pydocstyle cannot reliably assume its contents. pydocstyle will proceed assuming __all__ is not mutated. django/contrib/gis/measure.py WARNING: __all__ is defined as a list, this means pydocstyle cannot reliably detect contents of the __all__ variable, because it can be mutated. Change __all__ to be an (immutable) tuple, to remove this warning. Note, pydocstyle uses __all__ to detect which definitions are public, to warn if public definitions are missing docstrings. If __all__ is a (mutable) list, pydocstyle cannot reliably assume its contents. pydocstyle will proceed assuming __all__ is not mutated. [ ... output trimmed ... ] django/__init__.py:1 at module level: D104: Missing docstring in public package django/__init__.py:3 in public function `get_version`: D401: First line should be in imperative mood ('Derive', not 'Derives') django/bin/django-admin.py:1 at module level: D100: Missing docstring in public module [ ... output trimmed ... ] django/middleware/common.py:148 in private function `_is_internal_request`: D401: First line should be in imperative mood ('Return', not 'Returns') django/middleware/__init__.py:1 at module level: D104: Missing docstring in public package [tadej@tlinux64 Django-1.4]$ > > > > BTW, are you volunteering for a review ;-)? > If you are going to change source to github - then definitely yes ;) I can change it to https://github.com/PyCQA/pydocstyle/releases/download/1.1.1/pydocstyle-1.1.1.zip :-) [1] https://github.com/PyCQA/pydocstyle/archive/1.1.1.tar.gz [2] https://github.com/PyCQA/pydocstyle/releases/download/1.1.1/pydocstyle-1.1.1.zip [3] https://files.pythonhosted.org/packages/source/p/pydocstyle/pydocstyle-1.1.1.zip -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx