Watch the live stream:
Watch on YouTube
About the show
Sponsored by Shortcut - Get started at shortcut.com/pythonbytes
Special guest: Karen Dalton
Brian #1: stale : github bot to “Close Stale Issues and PRs”
- Was one response to a question by Will McGugan
- Something like “An issue filed on an open source project, I’ve asked a followup question about the issue, and filer doesn’t respond. Is there an easy way to close the issue after a set time period of inactivity.”
- Just trying to get a reference to Will out of the way early in the episode.
- stale does this:
- Warns and then closes issues and PRs that have had no activity for a specified amount of time.
- The configuration must be on the default branch and the default values will:
- Add a label "Stale" on issues and pull requests after 60 days of inactivity and comment on them
- Close the stale issues and pull requests after 7 days of inactivity
- If an update/comment occur on stale issues or pull requests, the stale label will be removed and the timer will restart
- If defaults seem too short or harsh, everything is configurable
Michael #2: jut - JUpyter notebook Terminal viewer
- via kidpixo
- The command line tool view the IPython/Jupyter notebook in the terminal.
- Even works against remote ipynb files (via http)
Karen #3: JupyterLyte
- via Marcel Milcent @MarcelMilcent
- JupyterLite is a JupyterLab distribution that runs entirely in the browser and is interactive
- Built from using JupyterLab components and extensions
- Being developed by core Jupyter developers, but the project is still unofficial
- Example: https://jupyterlite.readthedocs.io/en/latest/_static/lab/index.html
- Offers JupyterLab or RetroLab (a.k.a JupyterLab Classic) look
- No application server required, cacheable
- Try "import this"!
Brian #4: Feature comparison of ack, ag, git-grep, GNU grep and ripgrep
- ack now, supplies are limited!
- Tangent for those unfamiliar with grep
- grep is an essential tool for many developers that prints lines that match a pattern
- grep foo *.py - list all lines containing “foo” in this directory
- grep -l foo **/*.py | grep -v venv
- **``*/**``.py Recursively find all Python files this directory and all subdirectories
- -l Print just the name of the file if it contains a “foo” in it.
- | grep -v venv Exclude virtual environments, because there’s a lot of “foo” in there. (There’s gotta be a better way to do this, someone suggest a better way, please).
- Article compares ack, ag “The silver Searcher”, git-grep, grep, and rg “ripgrep”
- Language, Licence, and regex versions
- Features like parallelism, config, etc.
- Fine grain feature comparisons
- searching capability
- regular expression style
- search output
- file presentation
- file finding
- inclusion, exclusion
- file type specification
- random other features
- This is on the ack website, and kinda makes my want to try ripgrep.
Michael #5: Python Client for Airtable: pyairtable
- by Gui Talarico
- What is Airtable? Hmm kind of like:
- Excel
- Trello boards
- CI Pipelines
- A big player on nocode/lowcode community
- Check out the quickstart to see how it works.
Karen #6: Black can now format notebooks
- via Marco Gorelli gh: MarcoGorelli (creator of nbQA [isort, pyupgrade, mypy, pylint, flake8, and more on Jupyter Notebooks])
- pip install black[jupyter]
- black mynotebook.ipynb
- “…it should be significantly more robust than the current third-party tools”
Extras
Michael
- Trying a new password manager (sorta): Bitwarden
- The PSF is looking for an Executive Director
- Want a person in anime form?
- Python 3.11.0a2 is out (via PyCoders)
Karen
- Volunteer in your local Python community (or volunteer to speak)
Joke: