Skip to content

Latest commit

 

History

History
914 lines (779 loc) · 31.4 KB

CHANGES

File metadata and controls

914 lines (779 loc) · 31.4 KB

Changelog

Here you can find the recent changes to tmuxp

current

  • :issue:`519` Fix typo, thanks @timgates42
  • :issue:`506` Fix Makefile typo, thanks @wolfgangpfnuer
  • Travis: Only run on master and PRs one time
  • Travis: Add caching for tmux builds
  • Travis: Test 2.9 and 3.0a

1.5.4 <2019-11-06>

  • :issue:`500`: Fix window focus
  • Fix travis CI builds for python 3.7

1.5.3 <2019-06-06>

  • :issue:`377`: Include examples in source distribution package

1.5.2 <2019-06-02>

1.5.1 <2019-02-18>

  • Add tests/*.sh scripts to MANIFEST.in to include them in Pypi package.
  • Include twine to dev packages on requirements and Pipfile files.

1.5.0 <2018-10-02>

  • Support Click 7.0
  • Remove unused __future__ imports
  • :issue:`471` Update libtmux 0.8.0 -> 0.8.1
  • Sort imports
  • Add configuration and make command for isort.
  • Add sphinxcontrib-napoleon.
  • Assure requirements/dev.txt dependencies are in Pipfile
  • Update sphinx, releases to latest version
  • Sync requirements/*.txt dependencies with Pipfile.
  • Update docstring style to use numpy-style documentation. This enhances readability and plays nicely with sphinx documentation.
  • Documentation overhaul.
    • Areas like :meth:`tmuxp.cli.load_workspace` are now documented verbosely. This is so contributors helping on the project can more quickly gain situational awareness in this tricky area of code.

1.4.2 <2018-09-30>

1.4.1 <2018-09-26>

  • Loosen click restraint to <7

1.4.0 <2018-03-11>

  • Bump libtmux to 0.8.0
  • :issue:`264` Update license from BSD to MIT
  • :issue:`348` Continuous integration updates and fixes for Travis CI
    • Update builds to use trusty
    • Remove older python 3 versions (before 3.6)
    • Update pypy versions
  • :issue:`349` flake8 via continuous integration
  • Improve reliability of time-sensitive tests by using while True with a timeout.
  • Update sphinx to 1.7.1
  • Update alagitpull (sphinx theme) to 0.0.19. External websites open in new window.
  • Update pytest to 3.4.1

1.3.5 <2017-11-10>

  • :issue:`312` Support for tmux 2.6 layout setting (via hooks) in the following scenarios:
    • loading outside tmux
    • loading inside tmux, via switch-client
    • loading inside tmux, with session in background (with -d), and reattaching/switching to after
    • loading session outside tmux in background with -d, and reattaching/switching after
  • :issue:`308` Fix bug where layouts don't correctly set on tmux 2.6
  • Upgrade libtmux to 0.7.7

1.3.4 <2017-10-12>

  • before_script now respects start_directory in the session root. This makes it easier to run things like pipenv install as a before_script.

1.3.3 <2017-10-07>

  • Update libtmux to 0.7.5 for tmux 2.6 hotfix

1.3.2 <2017-08-20>

  • :issue:`184` - update libtmux to fix environmental variables in the session scope
  • Update libtmux to 0.7.4
  • Updates to pytest and pytest-rerunfailures

1.3.1 <2017-05-29>

  • :issue:`252` Fix bug where loading a session with a name matching a subset of current session causes undesired behavior.
  • Update libtmux to 0.7.3
  • Switch theme to alagitpull (alabaster subtheme)
  • Remove unneeded doc dependency packages

1.3.0 <2017-04-27>

  • :issue:`239` Improve support for formatted options when freezing and using configs with them.
  • :issue:`236` Support for symlinked directories, thanks @rafi.
  • :issue:`235` Support for options_after, for setting options like synchronize-panes. Thanks @sebastianst.
  • :issue:`248` Drop python 2.6 support
  • :issue:`248` Upgrade libtmux to 0.7.1
  • Upgrade colorama from 0.3.7 to 0.3.9

1.2.8 <2017-04-02>

  • :issue:`229` More helpful error message on systems missing tmux.
  • Update libtmux from 0.6.4 to 0.6.5.

1.2.7 <2017-03-25>

  • Support for OpenBSD.

1.2.6 <2017-02-24>

  • :issue:`218` Fix pane ordering by running select-layout before splits.

1.2.5 <2017-02-08>

  • :issue:`207` add custom tmuxp config directory via TMUXP_CONFIGDIR variable.
  • :issue:`199` support for running tmuxp on tmux master.
  • update libtmux from 0.6.2 to 0.6.3.

1.2.4 <2017-01-13>

1.2.3 <2016-12-21>

  • bump libtmux 0.6.0 to 0.6.1
  • :issue:`193` improve suppress history test, courtesy of @abeyer.
  • :issue:`191` documentation typo from @modille
  • :issue:`186` documentation typo from @joelwallis

1.2.2 <2016-09-16>

1.2.1 <2016-09-16>

  • :issue:`132` Handle cases with invalid session names
  • update libtmux from 0.5.0 to 0.6.0

1.2.0 <2016-06-16>

  • :issue:`65` Ability to specify options and global_options via configuration. Also you can specify environment variables via that.

    Include tests and add example.

1.1.1 <2016-06-02>

  • :issue:`167` fix attaching multiple sessions
  • :issue:`165` fix typo in error output, thanks @fpietka
  • :issue:`166` add new docs on zsh/bash completion
  • Add back tmuxp -V for version info

1.1.0 <2016-06-01>

  • :issue:`160` load tmuxp configs by name
  • :issue:`134` Use click for command-line completion, Rewrite command line functionality for importing, config finding, conversion and prompts.
  • Remove -l from tmuxp import tmuxinator|teamocil
  • :issue:`158` argparse bug overcome by switch to click

1.0.2 <2016-05-25>

  • :issue:`163` fix issue re-attaching sessions that are already loaded
  • :issue:`159` improved support for tmuxinator imports, from @fpietka.
  • :issue:`161` readme link fixes from @Omeryl.

1.0.1 <2016-05-25>

  • switch to readthedocs.io for docs
  • :issue:`157` bump libtmux to 0.4.1

1.0.0-rc1 <2016-05-25>

  • version jump 0.11.1 to 1.0
  • tests moved to py.test framework
  • libtmux core split into its own project
  • :issue:`145` Add new-window command functionality, @ikirudennis
  • :issue:`146` Optionally disable shell history suppression, @kmactavish
  • :issue:`147` Patching unittest timing for shell history suppression
  • move doc building, tests and watcher to Makefile
  • update .tmuxp.yaml and .tmuxp.json for Makefile change
  • overhaul README

0.11.0 <2016-02-29>

  • :issue:`137` Support for environment settings in configs, thanks @tasdomas
  • Spelling correction, thanks @sehe.

0.10.0 <2016-01-30>

0.9.3 <2016-01-06>

  • switch to .venv for virtualenv directory to not conflict with .env (used by autoenv).
  • :issue:`130` move to entr(1) for file watching in tests. update docs.
  • [compatibility] Support Anaconda Python 2 and 3

0.9.2 <2015-10-21>

  • :issue:`122` Update to support tmux 2.1, thank you @estin.
  • use travis container infrastructure for faster tests
  • change test in workspace builder test to use top(1) instead of man(1). man(1) caused errors on some systems where PAGER is set.

0.9.1 <2015-08-23>

0.9.0 <2015-07-08>

  • Renamed config.expandpath to config.expandshell.
  • compat 2.7/3.3 wrapper for EnvironmentVarGuard for testing.
  • You can now use environment variables inside of start_directory, before_script, shell_command_before, session_name and window_name.
  • [examples]: add example for environmental variables, examples/env-variables.json and examples/env-variables.yaml.
  • :issue:`110` de-vendorize colorama. Thanks @marbu.
  • :issue:`109` fix failure of test_pane_order on fedora machines from @marbu
  • :issue:`105` append .txt extension to manuals (repo ony) from @yegortimoshenko.
  • :issue:`107` Fix Server.attached_sessions return type by @thomasballinger.
  • update travis to use new tmux git repository.

0.8.1 <2015-05-09>

  • [testing]: fix sniffer test runner in python 3
  • new animated image demo for RTD and README

0.8.0 <2015-05-07>

0.1.13 <2015-03-25>

  • Remove package_metadata.py in favor of __about__.py.
  • scent.py for building docs
  • docutils from 0.11 to 0.12
  • bootstrap_env.py will check for linux, darwin (OS X) and windows and install the correct sniffer file watcher plugin.
  • testsuite for cli uses :py:func:`tempfile.mkdtemp()` instead TMP_DIR (which resolved to .tmuxp in the testsuite directory.
  • replace watchingtestrunner with sniffer in examples. .tmuxp.conf and .tmux.json updated
  • updates to doc links
  • make checkbuild for verifying internal / intersphinx doc references.
  • Add Warning tmux versions less than 1.4 from @techtonik.
  • Add documentation on leading space in send_keys from @thomasballinger.
  • Update about page from teamocil and erb support from @raine.

0.1.12 <2014-08-06>

0.1.11 <2014-04-06>

  • before_script now loads relative to project directory with ./.
  • Use bootstrap_env.py in tmuxp's .tmuxp.yaml and .tmuxp.json project files.
  • Improvements to :meth:`util.run_before_script()`, :class:`exc.BeforeLoadScriptFailed` behavior to print stdout and return stderr is a non-zero exit is returned.
  • run_script_before has moved to util.
  • BeforeLoadScriptFailed and BeforeLoadScriptNotExists has moved to the exc module.
  • Tests for run_script_before refactored.

0.1.10 <2014-04-02>

  • 2 bug fixes and allow panes with no shell commands to accept options, thanks for these 3 patches, @ThiefMaster:
  • :issue:`73` Fix an error caused by spaces in start_directory.
  • :issue:`77` Fix bug where having a - in a shell_command would cauesd a build error.
  • :issue:`76` Don't require shell_command to pass options to panes (like focus: true).

0.1.9 <2014-04-01>

  • The --force was not with us.

0.1.8 <2014-03-30>

0.1.7 <2014-02-25>

  • :issue:`55` where tmuxp would crash with letter numbers in version. Write tests.

0.1.6 <2014-02-08>

  • :meth:`Window.split_window()` now allows -c start_directory.

  • :issue:`35` Builder will now use -c start_directory to create new windows and panes.

    This removes a hack where default-path would be set for new pane and window creations. This would bleed into tmux user sessions after creations.

0.1.5-1 <2014-02-05>

  • :issue:`49` bug where package_manifest.py missing from MANIFEST.in would cause error installing.

0.1.5 <2014-02-05>

  • section heading normalization.
  • tao of tmux section now treated as a chatper. tao of tmux may be split off into its own project.
  • use conventions from tony/cookiecutter-pypackage.

0.1.4 <2014-02-02>

  • Fix $ tmuxp freeze CLI output.
  • Update _compat support module.
  • Fix extra space in PEP 263.

0.1.3 <2014-01-29>

  • :issue:`48` Fix Python 3 CLI issue.
  • :issue:`48` $ tmuxp without option raises an error.
  • Add space before send-keys to not populate bash and zsh history.

0.1.2 <2014-01-08>

  • now using werkzeug / flask style testsuites.
  • :issue:`43` Merge tmuxp -d for loading in detached mode. Thanks roxit.

0.1.1 <2013-12-25>

  • :issue:`32` Fix bug where special characters caused unicode caused unexpected outcomes loading and freezing sessions.

0.1.0 <2013-12-18>

  • fix duplicate print out of filename with using tmuxp load ..
  • version to 0.1. No --pre needed. Future versions will not use rc.

0.1-rc8 <2013-12-17>

  • unicode_literals
  • Move py2/py3 compliancy code to _compat.

0.1-rc7 <2013-12-07>

0.1-rc6 <2013-12-06>

  • :issue:`31` [examples] from stratoukos add window_index option, and example.

0.1-rc5 <2013-12-04>

  • :issue:`28` shell_command_before in session scope of config causing duplication. New test.
  • :issue:`26` :issue:`29` for OS X tests. Thanks stratoukos.
  • :issue:`27` $ tmuxp freeze raises unhelpful message if session doesn't exist.

0.1-rc4 <2013-12-03>

  • fix bug were focus: true would not launch sessions when using $ tmuxp load in a tmux session.

0.1-rc3 <2013-12-03>

0.1-rc2 <2013-11-23>

  • :issue:`23` fix bug where workspace would not build with pane-base-index set to 1. Update tests to fix if pane-base-index is not 0.
  • removed $ tmuxp load --list functionality. Update :ref:`quickstart` accordingly.

0.1-rc1 <2013-11-23>

  • pep8 and pep257 in unit tests.
  • Changelog will now be updated on a version basis, use pep440 versioning.

0.1-dev <2013-11-21>

0.1-dev <2013-11-20>

0.1-dev <2013-11-17>

  • fix a bug where missing tmux didn't show correct warning.

0.1-dev <2013-11-15>

  • Travis now tests python 2.6 as requirement and not allowed to fail.

0.1-dev <2013-11-13>

0.1-dev <2013-11-09>

0.1-dev <2013-11-08>

  • [freeze] - $ tmuxp freeze will now freeze a window with a start_directory when all panes in a window are inside the same directory.

  • [config] :meth:`config.inline` will now turn panes with no other attributes and 1 command into a single item value.

    - panes:
      - shell_command: top
    
    # will now inline to:
    
    - panes
      - top
    
    This will improve ``$ tmuxp freeze``

0.1-dev <2013-11-07>

  • Remove old logger (based on tornado's log.py), replace with new, simpler one.
  • fix teamocil import.
  • support import teamocil root to start_directory.

0.1-dev <2013-11-06>

  • tagged v0.0.37. Many fixes. Python 2.6 support. Will switch to per-version changelog after 0.1 release.
  • support for blank panes (null, pane, blank) and panes with empty strings.
  • tmuxp freeze supports exporting to blank panes.
  • tmuxp freeze will now return a blank pane for panes that would previously return a duplicate shell command, or generic python, node interpreter.

0.1-dev <2013-11-05>

  • Support for [-L socket-name] and [-S socket-path] in autocompletion and when loading. Note, switching client into another socket may cause an error.
  • Documentation tweaking to :ref:`API`, :ref:`about_tmux`.
  • pep257, pep8.

0.1-dev <2013-11-04>

0.1-dev <2013-11-02>

  • Many documentation, pep257, pep8 fixes
  • move old :class:`Server` methods __list_panes(), __list_windows and __list_sessions into the single underscore.
  • :issue:`12` fix for $ tmuxp freeze by @finder.
  • Support for spaces in $ tmuxp attach-session and $ tmuxp kill-session, and $ tmuxp freeze.
  • [config] support for relative paths of start_directory. Add an update config in Start Directory on :ref:`examples`.

0.1-dev <2013-11-01>

  • New servers for :class:`Server` arguments socket_name, socket_path, config_file.
  • :class:`Server` support for -2 with colors=256 and colors=8.
  • $ tmuxp -2 for forcing 256 colors and tmuxp -8 for forcing 88.
  • [config] Concatenation with start_directory via :meth:`config.trickle()` if window start_directory is alphanumeric / relative (doesn't start with /). See :ref:`Examples` in start directory.
  • Fix bug with import teamocil and tmuxinator
  • Improve quality of tmuxinator imports. Especially session_name and start_directory.
  • Allow saving with ~ in file destination.

0.1-dev <2013-10-31>

  • :meth:`util.is_version()`
  • correctly :meth:`config.trickle()` the start_directory.
  • get start_directory working for configs
  • fix :meth:Window.kill_window() target to session_id:window_index for compatibility and pass tests.
  • [examples]: Example for start_directory.
  • fix bug where first and second window would load in mixed order
  • :class:`Window.move_window()` for moving window.
  • doc overhaul. front page, renamed orm_al.rst to internals.rst.

0.1-dev <2013-10-30>

  • fix bug where if inside tmux, loading a workspace via switch_client wouldn't work.
  • fix bug where tmuxp load . would return an error instead of a notice.
  • tmuxp freeze <filename> experimental
  • tmuxp now has experimental support for freezing live sessions.
  • :meth:`Window.kill_window()`
  • support for start_directory (work in progress)

0.1-dev <2013-10-29>

  • :meth:`Window.select_pane` now accepts -l, -U, -D, -L, -R.
  • support for automatic-rename option.
  • 3 new :ref:`examples`, 'main-pane-height', 'automatic-rename', and 'shorthands'.
  • enhancements to prompts
  • tmuxp import for teamocil and tmuxinator now has a wizard and offers to save in JSON or YAML format.
  • [b6c2e84] Fix bug where tmuxp load w/ session already loaded would switch/attach even if no was entered
  • when workspace loader crashes, give option to kill session, attach it or detach it.
  • tmux 1.8 set-option / set-window-options command target-window fix.
  • :class:`WorkspaceBuilder` now has .session attribute accessible publicly.
  • tmux will now use :meth:`Session.switch_client` and :meth:`Session.attach_session` to open new sessions instead of os.exec.
  • [config] tmuxp now allows a new shorter form for panes. Panes can just be a string. See the shorthand form in the :ref:`examples` section.
  • [config] support loading .yml.

0.1-dev <2013-10-28>

0.1-dev <2013-10-27>

  • argcomplete overhaul for CLI bash completion.
  • tmuxp load, tmuxp convert and tmuxp import now support relative and full filenames in addition to searching the config directory.

0.1-dev <2013-10-26>

  • initial version of tmuxinator and teamocil config importer. it does not support all options and it not guaranteed to fully convert window/pane size and state.
  • :meth:`config.in_dir` supports a list of extensions for filetypes to search, i.e. ['.yaml', '.json'].
  • :meth:`config.is_config_file` now supports extensions argument as a string also.
  • fix $ tmuxp load -l to work correctly alongside $ tmuxp load filename.

0.1-dev <2013-10-25>

  • fix bug where -v and --version wouldn't print version.
  • property handle case where no tmux server exists when attach-session or kill-session is used.
  • test fixtures and inital work for importing tmuxinator and teamocil configs

0.1-dev <2013-10-24>

  • clean out old code for automatic-rename option. it will be reimplemented fresh.
  • check for oh-my-zsh when using $SHELL zsh. Prompt if DISABLE_AUTO_TITLE is unset or set to true.
  • tmuxp can now $ tmuxp convert <file> from JSON <=> YAML, back and forth.
  • New examples in JSON. Update the :ref:`examples` page in the docs.
  • [dev] .tmuxp.json now exists as a config for tmuxp development and as an example.
  • Fix bug where tmuxp kill-session would give bad output
  • Fix bug in tab completion for listing sessions with no tmux server is active.

0.1-dev <2013-10-23>

  • zsh/bash/tcsh completion improvements for tab-completion options
  • tmuxp kill-session with tab-completion.
  • tmuxp attach-session with tab-completion. Attach session will switch-client for you if you are inside of of a tmux client.
  • tmuxp load for loading configs.
  • unit test fixes.

0.1-dev <2013-10-21>

  • Make 1.8 the official minimym version, give warning notice to upgrade tmux if out of date
  • Fix regression causing unexpected build behavior due to unremoved code supporting old tmux versions.
  • Added 2 new examples to the :ref:`examples` page.
  • Examples now have graphics
  • $ tmuxp -v will print the version info.

0.1-dev <2013-10-19>

0.1-dev <2013-10-18>

  • internal overhaul of :class:`Server`, :class:`Session`, :class:`Window`, and :class:`Pane`.
    • Session, Window and Pane now refer to a data object in :class:`Server` internally and always pull the freshest data.
    • A lot of code and complexity regarding setting new data for objects has been reduced since objects use their unique key identifier to filter their objects through the windows and panes in Server object.
    • Server object is what does the updating now.
  • [project] some research into supporting legacy tmux versions. tmux 1.6 and 1.7 support seem likely eventually if there is enough demand.
  • python 3 support

0.1-dev <2013-10-17>

  • updated README docs with new project details, screenshots
  • new example .tmuxp.yaml file updated to include development workflow. Removed nodemon as the tool for checking files for now.
  • Support for switching sessions from within tmux. In both cases after the the session is built and if session already exists.

0.1-dev <2013-10-16>

0.1-dev <2013-10-15>

  • new theme

  • initial examples, misc. updates, front page update.

  • support for $ tmux . to load .tmuxp.{yaml/json/py} in current working directory.

  • support for socket-name (-L) and socket-path (socket-path)

  • [config] Support for 1-command pane items.

    session_name: my session
    windows:
      - window_name: hi
        panes:
        - bash
        - htop
  • If session name is already exists, prompt to attach.

0.1-dev <2013-10-14>

0.1-dev <2013-10-13>

0.1-dev <2013-10-12>

0.1-dev <2013-10-11>

  • More preparation for builder / session maker utility.
  • test runner and test suite overhaul.
  • Documentation for development environment and test runner updated.
  • Travis now tests against tmux 1.8 and latest source. Door open for future testing against python 3 and earlier tmux versions in the future.
  • Quiet logger down in some areas
  • __future__ imports for future python 3 compatibility
  • setup.py import __version__ via regex from tmuxp package
  • move beginnings of cli to tmuxp.cli

0.1-dev <2013-10-09>

  • New logging module
  • Removed dependency logutils
  • Removed dependency sh

0.1-dev <2013-10-08>

  • switch to semver