Libtmux

Latest version: v0.37.0

Safety actively analyzes 638730 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 10 of 15

0.13.0

What's new

- **Improved typings**

Now [`mypy --strict`] compliant (383)

Smaller touchups from 392

[`mypy --strict`]: https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict

Breaking changes

- Deprecated individual item lookups (390)

- Removed key lookups from {meth}`libtmux.common.EnvironmentMixin.show_environment`

Only `EnvironmentMixin.show_environment()` (without an argument) exists, and
it still returns a `dict`.

- Add key lookups via {meth}`libtmux.common.EnvironmentMixin.getenv`

python
Before
server.show_environment('DISPLAY')

After
server.getenv('DISPLAY')

Before
session.show_environment('DISPLAY')

After
session.getenv('DISPLAY')


- Removed key lookups from {meth}`Session.show_options`

python
session.show_options() still returns dict, without an argument

Old
session.show_options('DISPLAY')

Now
session.show_option('DISPLAY')


- Removed key lookups from {meth}`Window.show_window_options`

python
window.show_window_options() still returns dict, without an argument

Old
window.show_window_options('DISPLAY')

Now
window.show_window_option('DISPLAY')


- Remove `libtmux.test.retry()`, deprecated since 0.12.x (393)

Development

- Fix incorrect function name `findWhere()` (391)

0.12.0

Compatibility

- Brought back python 3.7 and 3.8 support (375)
- Support for tmux 3.3a

- Add to CI
- Bump `TMUX_MAX_VERSION` from 2.4 -> 3.3

_2.4 to 3.3a already worked, this is just the constant
being updated._

Development

- Remove tox and tox-poetry-installer

This created issues with running poetry while inside the virtualenv.

- Typings: Core relations, e.g. `Pane.window`, `Pane.session`, `Pane.server`, `Window.server` 385

Documentation

- Renewed logo
- Try out sphinx-autoapi for its table of contents generation (367)
- Break up API documentations for utilities, exception, and test helpers and
remove duplicate docs from API page. Server, session, window, and pane docs
are in the Reference section now.

Testing

- `retry()`: Add deprecation warning. This will be removed in 0.13.x (368, 372)
- New function `retry_until()`: Polls a callback function for a set period of time until it returns `True` or times out. By default it will raise {exc}`libtmux.exc.WaitTimeout`, with `raises=False` it will return `False`. Thank you categulario! (368, 372)
- 384 Chore: Use absolute modules rather than root-level to avoid cyclic imports.

python
Bad / Old
from libtmux import Server

Good / New
from libtmux.server import Server


Internals

- 382 [mypy] support added:

- Basic mypy tests now pass

0.11.0

Compatibility

- Python 3.7 and 3.8 returns in 0.12.0

~~Final python 3.7 and 3.8 release~~

~~Fixes and security updates will go to
[`v0.11.x`](https://github.com/tmux-python/libtmux/tree/v0.11.x)~~

- Internal: Use new separator to split `tmux(1)` formatting information (289,
343)

The separator is configurable via `LIBTMUX_TMUX_FORMAT_SEPARATOR`. If you ever
have compatibility issues in the future let us know which default works best
across versions.

Credit: JonathanRaiman and jagguli

- Basic type annotations (359, 361) via otherJL0

Development

- Code cleanup (362) from otherJL0
- Format with black w/ string normalization. This is a one-time diff (354)

Documentation

- Sidebar reorganized into sections
- Added documentation on fetching developmental releases of libtmux

0.10.3

Not secure
Packaging

First experimental release using `poetry build` (347). If you are packaging and run
across any difficulty please see 346.

Compatibility

- Drop python 3.6 (344)
- Add python 3.10, though still `packaging.version` issues remain (344)

A compat module and version constraints will need to be added for this

Development

- poetry: 1.1.7 -> 1.1.12 (344)
- Add `.pre-commit-config.yaml` (344)

0.10.2

Not secure
- 324: Update poetry to 1.1
- CI: Use poetry 1.1.7 and `install-poetry.py` installer
- Relock poetry.lock at 1.1 (w/ 1.1.7's fix)
- 339 (CI): Lock python at 3.9 to avoid poetry issue with `dataclasses`
- ci: Fix publishing docs (similar to 339)
- 341 342: `Server.attached_sessions()` now supports multiple attached sessions.

Remove attached sessions limitation to not detect multiple attached clients,
thank you timoses

0.10.1

Not secure
- Update `Window.select_window()` for 271

Page 10 of 15

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.