libtmux
flakeheaven
libtmux | flakeheaven | |
---|---|---|
6 | 1 | |
962 | 165 | |
0.9% | 0.6% | |
9.7 | 1.6 | |
6 days ago | about 1 year ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libtmux
-
Using Mypy in Production
I am moving all my open source projects to `mypy --strict`. Here's the diff of adding basic / --strict mypy types:
libvcs: https://github.com/vcs-python/libvcs/pull/362/files, https://github.com/vcs-python/libvcs/pull/390/files
libtmux: https://github.com/tmux-python/libtmux/pull/382/files, https://github.com/tmux-python/libtmux/pull/383/files
unihan-etl: https://github.com/cihai/unihan-etl/pull/255/files, https://github.com/cihai/unihan-etl/pull/257/files
As for return on investment - not sure yet. What I like about it is:
- completions (through annotating)
- typings can be used downstream (since the above are all now typed python libraries)
- maintainability and bug finding. Easy to wire into CI and run locally.
There's a thread on mypy, "--strict is too strict to be useful", https://github.com/python/mypy/issues/7767. I'm not sure if I walked away with that impression. If I have a function that could potentially return `None` (`Optional[str]` or `str | None`) - it makes sense for the user to handle such a case. They could:
assert response is not None
-
This Week in Python
libtmux – Python API / wrapper for tmux
- libtmux: Python API / Wrapper for tmux
-
tmuxp 1.12.0 and libtmux 0.12.0 released - Revamped documentation
libtmux v0.12.0, GitHub, Release notes, Docs
-
zoom only one side of the window?
Script-out the creation of new windows from the current window… so with the desired panes create a new window with the desired layout using the panes from the current/old window (then another script to rebuild the previous window). https://github.com/tmux-python/libtmux could make this scripting easier; I don't think tmuxinator would give you the versatile zooming effect you're looking for.
flakeheaven
-
Using Mypy in Production
> I'd run flake8 too but the maintainer is weirdly opposed to supporting pyproject.toml for config.
I haven't used it in anger yet, but FlakeHeaven (https://github.com/flakeheaven/flakeheaven) looks like a nice fork that includes pyproject.toml support.
What are some alternatives?
uwsgi-nginx-flask-docker - Docker image with uWSGI and Nginx for Flask applications in Python running in a single container.
unihan-etl - Export UNIHAN's database to csv, json or yaml
erg - A statically typed language compatible with Python
pyright - Static Type Checker for Python
dg - A programming language for the CPython VM.
mypy - Optional static typing for Python
typeshed - Collection of library stubs for Python, with static types
pyxel - A retro game engine for Python
pydantic - Data validation using Python type hints
libvcs - ⚙️ Lite, typed, pythonic utilities for git, svn, mercurial, etc.