Skip to content

Latest commit

 

History

History
86 lines (74 loc) · 4.01 KB

0.9.2.rst

File metadata and controls

86 lines (74 loc) · 4.01 KB

Changes in version 0.9.2

The following changes were implemented in Fabric 0.9.2:

Feature additions

  • The ~fabric.operations.reboot operation has been added, providing a way for Fabric to issue a reboot command and then reconnect after the system has restarted.
  • python setup.py test now runs Fabric's test suite (provided you have all the prerequisites from the requirements.txt installed). Thanks to Eric Holscher for the patch.
  • Added functionality for loading fabfiles which are Python packages (directories) instead of just modules (single files.) See fabfile-discovery.
  • Added output lines informing the user of which tasks are being executed (e.g. [myserver] Executing task 'foo'.)
  • Added support for lazy (callable) role definition values in env.roledefs.
  • Added contrib.django <fabric.contrib.django> module with basic Django integration.
  • env.local_user <local-user> was added, providing easy and permanent access to the local system username, even if an alternate remote username has been specified.
  • 29: Added support for arbitrary command-line-driven anonymous tasks via fab [options] -- [shell command]. See arbitrary-commands.
  • 52: Full tracebacks during aborts are now displayed if the user has opted to see debug-level output.
  • 101: Added ~fabric.colors module with basic color output support. (101 is still open: we plan to leverage the new module in Fabric's own output in the future.)
  • 137: Commas used to separate per-task arguments may now be escaped with a backslash. Thanks to Erich Heine for the patch.
  • 144: ~fabric.decorators.hosts (and ~fabric.decorators.roles) will now expand a single, iterable argument instead of requiring one to use e.g. @hosts(*iterable).
  • 151: Added a ~fabric.utils.puts utility function, which allows greater control over fabfile-generated (as opposed to Fabric-generated) output. Also added ~fabric.utils.fastprint, an alias to ~fabric.utils.puts allowing for convenient unbuffered, non-newline-terminated printing.
  • 208: Users rolling their own shell completion or who otherwise find themselves performing text manipulation on the output of --list <-l> may now use --shortlist to get a plain, newline-separated list of task names.

Bugfixes

  • The interactive "what host to connect to?" prompt now correctly updates the appropriate environment variables (hostname, username, port) based on user input.
  • Fixed a bug where Fabric's own internal fabfile would pre-empt the user's fabfile due to a PYTHONPATH order issue. User fabfiles are now always loaded at the front of the PYTHONPATH during import.
  • Disabled some DeprecationWarnings thrown by Paramiko when that library is imported into Fabric under Python 2.6.
  • 44, 63: Modified ~fabric.contrib.project.rsync_project to honor the SSH port and identity file settings. Thanks to Mitch Matuson and Morgan Goose.
  • 123: Removed Cygwin from the "are we on Windows" test; now, only Python installs whose sys.platform says 'win32' will use Windows-only code paths (e.g. importing of pywin32).

Documentation updates

  • Added a few new items to the FAQ </faq>.
  • 173: Simple but rather embarrassing typo fix in README. Thanks to Ted Nyman for the catch.
  • 194: Added a note to the install docs </installation> about a possible edge case some Windows 64-bit Python users may encounter.
  • 216: Overhauled the process backgrounding FAQ <faq-daemonize> to include additional techniques and be more holistic.

Packaging updates

  • 86, 158: Removed the bundled Paramiko 1.7.4 and updated the setup.py to require Paramiko >=1.7.6. This lets us skip the known-buggy Paramiko 1.7.5 while getting some much needed bugfixes in Paramiko 1.7.6.