Ben Chuanlong Du's Blog

It is never too late to learn.

Docstring in Python

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Tips and Traps

  1. I personal prefer the sphnix style as it is concise and work well with type annotation.

  2. Improperly escaped \n in docstring causes darglint fail to parse the docstring …

Tips on Darglint

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Tips and Traps

  1. It is suggested that you avoid using darglint directly, but instead you can use flake8 which will automatically call darglint if it exists.

  2. Improperly escaped \n causes darglint …

Path Pattern Matching in Python

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Tips and Traps

  1. Pathspec is preferred over zgitignore as the latter is not actively maintained.

pathspec

pathspec is a utility library for gitignore style pattern matching of file paths.

zgitignore

zgitignore checks if a file is ignored by a .zgitignore

Tips on sshuttle

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

  1. sudo permission is required to run sshuttle.

  2. It's valid to run sshuttle more than once simultaneously on a single client machine, connecting to a different server every time, so you can …

Tips on Jinja

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Get the Dependencies of a Python Package Without Installing It

After installing a Python package, you can use the command pip3 show pkg to check detailed information about it. What if you want to get information about a Python package without installing? The RESTAPI https://pypi.org/pypi/pkg/json returns detailed information of the Python package pkg.

Note: The recursive version of dependencies implemented bellow does not take into consideration of versions, so it might not return the correct dependencies of a Python packages.