Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

333 use logger in place of print #13

Open
wants to merge 183 commits into
base: 333-use-logger-in-place-of-print
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
183 commits
Select commit Hold shift + click to select a range
85fe7bd
Added exlude hosts functionality
kcbanner May 27, 2010
0f9a1c5
Added in the little bit more to the docs on the local_dir var.
goosemo Jun 22, 2010
3445b56
Pulling the the patches to upload_project made by Rodrigue Alcazar
goosemo Aug 5, 2010
32f7d67
Made a minor adjustment to use strip(os.sep) instead of array indexing.
goosemo Aug 5, 2010
215bf88
Merge http://github.com/bitprophet/fabric into 10-project-upload
goosemo Aug 14, 2010
206b0c6
Merge branch 'feature184' of github.com:goosemo/fabric into 10-projec…
goosemo Aug 14, 2010
01f6c5c
This adds a decorator to make the host list follow order
goosemo Jan 26, 2011
540fcf2
Added in sorted parameter to the @ensure_order decorator
goosemo Jan 28, 2011
e12c0e2
Merge branch 'ensure_order' of github.com:goosemo/fabric into 115-ens…
goosemo Feb 3, 2011
2054be1
Cleaned out testing prints
goosemo Feb 3, 2011
a86f293
Wrote up more in the docstring and added it to be included in the docs.
goosemo Feb 3, 2011
b955fef
Merge branch 'master' of github.com:goosemo/fabric into 10-project-up…
goosemo Feb 3, 2011
7d033f7
Changed the local_dir to rstrip keeping tests passing.
goosemo Feb 3, 2011
cf61564
Adds a @with_settings decorator for tasks (and tests) to use
tswicegood Nov 15, 2010
a99a54a
add docblock explaining what with_settings does
tswicegood Nov 15, 2010
8a258ea
Modify tests to pass using the new context.
tswicegood Nov 15, 2010
e09319b
After getting in patches from Travis' fork, I also added it to the sp…
goosemo Feb 4, 2011
264b091
Merge branch 'master' of github.com:goosemo/fabric into 184-rsync-pro…
goosemo Feb 4, 2011
422268b
Fixes #307 Update code to match Pep8 standards
mitechie Mar 14, 2011
76f7f86
Fixes 113 updates to allow tuples as host/rols lists
mitechie Mar 14, 2011
7a5347c
Update tests in test_main to use decorator to mock state.env
mitechie Mar 14, 2011
a60ea6e
Fixed minor issue in changes to tests.utils imports conflicting
goosemo Mar 14, 2011
6eb8be0
Merge branch 'master' of github.com:goosemo/fabric into 184-rsync-pro…
goosemo Mar 14, 2011
8e18071
Fixed imports issue causing merge conflict.
goosemo Mar 14, 2011
38081c4
Merge branch 'master' of github.com:goosemo/fabric into 10-project-up…
goosemo Mar 14, 2011
dd11efe
Added args to upload_template for mode support
thomasballinger Mar 16, 2011
bc0fe58
Update attribution re #312
bitprophet Mar 22, 2011
5afe16f
Fix #310 - use octal, not string rep
bitprophet Mar 23, 2011
cbdfc06
Update changelog re: #320
bitprophet Mar 28, 2011
5b70772
Bump version to 1.0.1 final
bitprophet Mar 28, 2011
67c97a6
Merge branch 'master' of github.com:goosemo/fabric into 10-project-up…
goosemo Apr 2, 2011
8495a44
Fixed conflict
goosemo Apr 2, 2011
e611cfc
Merge branch 'master' of github.com:goosemo/fabric into 283-with-sett…
goosemo Apr 2, 2011
782a18b
Think this does what jeff had suggested.
goosemo Apr 4, 2011
ac8ff96
added backup_file argument to upload_template()
aleszoulek Jan 13, 2011
886c20f
Merged in Travis Swicegood's fix for #125
goosemo Apr 5, 2011
9e15824
Merge branch 'master' of github.com:goosemo/fabric into 184-rsync-pro…
goosemo Apr 5, 2011
2bb769d
Merged in Casey Banner's work for #170, Fixed conflicts and also made…
goosemo Apr 5, 2011
b825a44
Added in docs for this branch as well.
goosemo Apr 5, 2011
9478ebc
Added in case insensitive flag
goosemo Apr 6, 2011
7c40673
Merge branch '117-add-mode-support-to-upload-template' of https://git…
goosemo Apr 8, 2011
dcd9564
Made up some docs for this feature.
goosemo Apr 8, 2011
b7c2ffb
Merge branch '36-state-connections-import-refactor' into 1.1
goosemo Apr 8, 2011
4626235
Merge branch '115-ensure-order' into 1.1
goosemo Apr 8, 2011
cf4b95c
Merge branch '273-upload-template-backup-file-option' into 1.1
goosemo Apr 8, 2011
e0b0d47
Merge branch '307-pep8' into 1.1
goosemo Apr 8, 2011
71ab7be
Merge branch '314-update-test-mocks' into 1.1
goosemo Apr 8, 2011
dc80193
Merge branch '10-project-upload' into 1.1
goosemo Apr 8, 2011
66f80c0
Merge branch '117-add-mode-support-to-upload-template' into 1.1
goosemo Apr 8, 2011
0b1352a
Merge branch '125-also-be-able-to-write-to-file-contrib' into 1.1
goosemo Apr 8, 2011
85a501d
Merge branch '154-sed-case-insensitive' into 1.1
goosemo Apr 8, 2011
89f06e7
Merge branch '170-exclude-hosts' into 1.1
goosemo Apr 8, 2011
e4b9f4d
Merge branch '184-rsync-project-local-dir-doc-update' into 1.1
goosemo Apr 8, 2011
fb261d5
Merge branch '283-with-settings-decorator' into 1.1
goosemo Apr 8, 2011
9fdd0d6
Forgot to add it to the api
goosemo Apr 8, 2011
62237f6
Forgot to add it to the api
goosemo Apr 8, 2011
58798ee
Merge branch '115-ensure-order' into 1.1
goosemo Apr 8, 2011
f5cb3fc
Merge branch '283-with-settings-decorator' into 1.1
goosemo Apr 8, 2011
598e0ba
M the main env variable for ensure_order public
goosemo Apr 8, 2011
10b8295
Added in some docs for the env.ensure_order
goosemo Apr 8, 2011
b55436e
Merge branch '115-ensure-order' into 1.1
goosemo Apr 8, 2011
bb9b486
Update PyPI-oriented changelog link re: RTD architecture tweaks
bitprophet Apr 12, 2011
0ef63c8
Update PyPI-oriented changelog link re: RTD architecture tweaks
bitprophet Apr 12, 2011
c13dbb4
Fixed issue with 2.5 compat
goosemo Apr 12, 2011
cc77d60
Merge branch '283-with-settings-decorator' into 1.1
goosemo Apr 12, 2011
48e8b4d
Merge branch '1.1' of github.com:goosemo/fabric into 1.1
goosemo Apr 12, 2011
3bc62f7
Merge branch 'master' of github.com:goosemo/fabric into 1.1
goosemo Apr 14, 2011
30f3307
Update cd() docs to explicitly reference lcd()
bitprophet Apr 15, 2011
a0e57dd
Changelog for previous commit
bitprophet Apr 15, 2011
f66947b
Merge branch '1.0'
bitprophet Apr 15, 2011
9c610db
Merge branch 'master' into 1.1
goosemo Apr 20, 2011
9399a20
Reimplement with cleaner patched-env decorator.
bitprophet Apr 22, 2011
33cc7e2
Add changelog entry re #307
bitprophet Apr 22, 2011
f947854
Refactor test runner classes
bitprophet Apr 22, 2011
6861024
Add another test file helper
bitprophet Apr 22, 2011
cd25547
Re #273, fix remote filename bug
bitprophet Apr 22, 2011
d7470d2
Fix file path munging and add another test
bitprophet Apr 22, 2011
c88f7c0
Add changelog entries re #273
bitprophet Apr 22, 2011
1773ce0
Dev branches really ought to have a dev version
bitprophet Apr 22, 2011
626ade6
Re #184, add changelog entry and tweak language
bitprophet Apr 22, 2011
fb3aaae
Update AUTHORS file re #273
bitprophet Apr 22, 2011
d15edb4
Move --exclude-hosts docs into its own section, and update changelog/…
bitprophet Apr 22, 2011
aec6376
Beef up docs, add default env value re #170
bitprophet Apr 23, 2011
0e1ae0d
Update case-insensitive sed flag to be generic.
bitprophet Apr 23, 2011
47ea5a5
Add attribution to changelog re: #154.
bitprophet Apr 23, 2011
67d32d5
Fix bug with fabric.api.put(...)
Apr 11, 2011
9a13102
Add changelog, AUTHORS and fixes #337
bitprophet Apr 25, 2011
222d83f
Merge branch '1.0'
bitprophet Apr 25, 2011
7397953
Merge branch 'master' into 1.1
bitprophet Apr 25, 2011
98aceb2
Integration patching & changelog; fixes #117
bitprophet Apr 25, 2011
a47054e
Revert patch re #36
bitprophet Apr 25, 2011
7c47972
Changelog, AUTHORS, docstring, reformat re #10. Imps #10.
bitprophet Apr 25, 2011
5ffd0a0
Add missing versionchanged directives to docstrings
bitprophet Apr 25, 2011
86a1182
Revert goosemo's patches re #115
bitprophet Apr 25, 2011
b4ed89a
Implements #115 - don't use set() to dedupe host lists
bitprophet Apr 26, 2011
87044bb
Changelog, docstring tweaks, imps #283
bitprophet Apr 26, 2011
b0c7162
Revert #125
bitprophet Apr 26, 2011
2e90af6
Fixes #258 - Windows local logic inversion fix
bitprophet Apr 27, 2011
5d27faa
Merge branch '1.0'
bitprophet Apr 27, 2011
7d99ba0
Fixes #347 - test for StringTypes not str
bitprophet Apr 29, 2011
3b4d8dd
Merge branch '1.0'
bitprophet Apr 29, 2011
c3e79b6
Merge branch 'master' into 1.1
bitprophet Apr 29, 2011
3e040a3
Make git branches report themselves as alphas, derp
bitprophet May 2, 2011
ef696c3
Clarify rsync_project docstring re: trailing slashes
bitprophet May 29, 2011
349cd05
Merge branch '1.0'
bitprophet May 29, 2011
65c5060
Merge branch 'master' into 1.1
bitprophet May 29, 2011
a6c13cd
Apply patch derived from goosemo/76-task-decorator
bitprophet May 31, 2011
e8f19ef
Update test env munging
bitprophet May 31, 2011
db219e7
Bit of cleanup
bitprophet May 31, 2011
67d1a76
callable is a builtin :)
bitprophet May 31, 2011
851b796
Update run/sudo combine_stderr for overriding.
bitprophet May 31, 2011
89e97c1
Re #324, tests and an important fix they caught
bitprophet Jun 1, 2011
6800328
Merge branch '1.0' into 1.1
bitprophet Jun 1, 2011
72bed2a
Merge branch '1.0'
bitprophet Jun 1, 2011
7b1f568
WIP re #76.
bitprophet Jun 6, 2011
cb4461c
Reword how @task helps with namespaces
bitprophet Jun 7, 2011
2b27bd6
start not using module level constants
bitprophet Jun 7, 2011
af6bbfa
Big fleshing-out of docs re #76
bitprophet Jun 7, 2011
2e49f1d
Many small tweaks to docs, docstrings re #76
bitprophet Jun 7, 2011
c3068ae
Add changelog entry for #76, #56
bitprophet Jun 8, 2011
79f6b7d
Edits to task docs
bitprophet Jun 8, 2011
4fee934
Clarify behavior of __all__
bitprophet Jun 8, 2011
0084db6
Few edits to the classic tasks section
bitprophet Jun 8, 2011
f16d8df
Handle oddball non string __doc__ attributes
bitprophet Jun 9, 2011
fcf3e9e
WIP re: task discovery updates
bitprophet Jun 9, 2011
35c3480
Whitespace
bitprophet Jun 9, 2011
aa7f9b3
Commenting
bitprophet Jun 9, 2011
d7a7670
Cleanup of namespace/task-decorator tests re #76, re #56
bitprophet Jun 9, 2011
601a771
Merge branch '76-task-decorator' of git.fabfile.org:fabric into 76-ta…
bitprophet Jun 9, 2011
f605730
Missed a spot
bitprophet Jun 9, 2011
89724bf
Refactor
bitprophet Jun 9, 2011
07bad3f
Couple new tests
bitprophet Jun 9, 2011
c662099
Cleaner, reversible seen-module caching
bitprophet Jun 9, 2011
5c9ca83
Merge branch 'master' into 1.1
bitprophet Jun 9, 2011
18d5c3d
Merge branch '1.1' into 76-task-decorator
bitprophet Jun 9, 2011
47f20d8
Re #56, add -F option and rearrange a bit
bitprophet Jun 20, 2011
3c0af2f
Sick of having eq_ args swapped
bitprophet Jun 20, 2011
363c719
Don't print the 'aka' unless repr != str
bitprophet Jun 20, 2011
d0d22a9
Break ground on tests, use explicit commands obj in main
bitprophet Jun 20, 2011
c4bcd8d
Minor tweaks
bitprophet Jun 21, 2011
10b9b73
Implement nested output.
bitprophet Jun 21, 2011
b2b27ac
Bugfix and test
bitprophet Jun 21, 2011
9d3280b
Re #56, tweak nested output & clean up tests
bitprophet Jun 21, 2011
d4ce7c9
Document nested output and -F re #56
bitprophet Jun 21, 2011
5d8d0e3
Implements #189: flag for aborting-on-prompts
bitprophet Jun 21, 2011
8a0023f
Make doc browsing its own task
bitprophet Jun 21, 2011
05aca97
Bugfix: excluding hosts broke remainder tasks
bitprophet Jun 22, 2011
d68b7ac
Implements #353: SSH keepalive.
bitprophet Jun 22, 2011
a4a6b08
Make doc browsing its own task
bitprophet Jun 21, 2011
0034a82
Reorder eq_ args
bitprophet Jun 22, 2011
8905aaf
Use FabricTest to isolate namespace tests
bitprophet Jun 22, 2011
465f813
Re #56, don't allow leaf classic modules to pollute new-style trees
bitprophet Jun 22, 2011
7aff0af
Dogfooding: use new-style tasks, namespaces in core fabfile
bitprophet Jun 22, 2011
3f5503e
Fixes #329: reboot() broken for partial host strings
bitprophet Jun 24, 2011
6f8a80a
Note that 1.0.2 will contain 0.9.7
bitprophet Jun 24, 2011
594211b
Merge branch '1.0'
bitprophet Jun 24, 2011
9be5e03
Add 1.0.2 note to 1.1 release docs
bitprophet Jun 24, 2011
3c56186
Add test re #329
bitprophet Jun 24, 2011
0f77dca
Merge branch '1.0'
bitprophet Jun 24, 2011
835a094
Formatting
bitprophet Jun 24, 2011
efd9fef
Fix I/O race condition
bitprophet Jun 24, 2011
95127ac
Merge branch '1.0'
bitprophet Jun 24, 2011
7f6cbc9
Fixes #345, contains() returns boolean, not retval.
bitprophet Jun 24, 2011
0d74105
Silly/shitty little sanity-test runner
bitprophet Jun 24, 2011
cde6aab
Merge branch '1.0'
bitprophet Jun 24, 2011
0de7dca
Version bump for 1.0.2
bitprophet Jun 24, 2011
3b7150e
Version bump for 1.1
bitprophet Jun 25, 2011
ef2cc5f
Dev version for 1.1.1
bitprophet Jun 25, 2011
2adbf18
Dev version for 1.2
bitprophet Jun 25, 2011
3ff8b55
Enhance docs on Task subclass usage
bitprophet Jun 29, 2011
2c7b692
Task decorator must be first
bitprophet Jun 29, 2011
4b6a1f6
Update tag list for manually generated docs
bitprophet Jun 29, 2011
13b57d1
Fix up docs.push
bitprophet Jun 29, 2011
3b52a83
Merge branch '1.1.0-docs' into 1.1
bitprophet Jun 29, 2011
a699229
Merge branch '1.1'
bitprophet Jun 29, 2011
942601c
Fix main loop to look for Task.run()
bitprophet Jun 29, 2011
28ffb4c
Remove confusing, extraneous note re: example
bitprophet Jun 29, 2011
11f18f6
Merge branch '1.1.0-docs' into 1.1
bitprophet Jun 29, 2011
b8619fc
Merge branch '1.1'
bitprophet Jun 29, 2011
77eb80d
Merge remote-tracking branch 'upstream/master' into logging
ramonvanalteren Aug 31, 2011
d9e75f7
Patching the logging stream in mock_streams as well
ramonvanalteren Aug 31, 2011
dc913d2
Fixed a set of testcases
ramonvanalteren Aug 31, 2011
bd8b716
Fixing up messages with different expectations in the test
ramonvanalteren Aug 31, 2011
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,13 @@ Stephen Goss
James Murty
Thomas Ballinger
Rick Harding
Kirill Pinchuk
Ales Zoulek
Casey Banner
Roman Imankulov
Rodrigue Alcazar
Jeremy Avnet
Matt Chisholm
Mark Merritt
Max Arnold
Szymon Reichmann
2 changes: 1 addition & 1 deletion docs/api/core/decorators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ Decorators
==========

.. automodule:: fabric.decorators
:members: hosts, roles, runs_once
:members: hosts, roles, runs_once, task, with_settings
6 changes: 6 additions & 0 deletions docs/api/core/tasks.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
=====
Tasks
=====

.. automodule:: fabric.tasks
:members: Task
12 changes: 12 additions & 0 deletions docs/changes/0.9.6.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
========================
Changes in version 0.9.6
========================

The following changes were implemented in Fabric 0.9.6:

Bugfixes
========

* :issue:`347`: `~fabric.contrib.files.append` incorrectly tested for ``str``
instead of ``types.StringTypes``, causing it to split up Unicode strings as
if they were one character per line. This has been fixed.
10 changes: 10 additions & 0 deletions docs/changes/0.9.7.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
========================
Changes in version 0.9.7
========================

The following changes were implemented in Fabric 0.9.7:

Bugfixes
========

* :issue:`329`: `~fabric.operations.reboot` would have problems reconnecting post-reboot (resulting in a traceback) if ``env.host_string`` was not fully-formed (did not contain user and port specifiers.) This has been fixed.
12 changes: 10 additions & 2 deletions docs/changes/1.0.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,21 @@ Bugfixes
* :issue:`301`: Fixed a bug in `~fabric.operations.local`'s behavior when
``capture=False`` and ``output.stdout`` (or ``.stderr``) was also ``False``.
Thanks to Chris Rose for the catch.
* :issue:`310`: Update edge case in `~fabric.operations.put` where using the
``mode`` kwarg alongside ``use_sudo=True`` runs a hidden
`~fabric.operations.sudo` command. The ``mode`` kwarg needs to be octal but
was being interpolated in the ``sudo`` call as a string/integer. Thanks to
Adam Ernst for the catch and suggested fix.
* :issue:`311`: `~fabric.contrib.files.append` was supposed to have its
``partial`` kwarg's default flipped from ``True`` to ``False``. However, only
the documentation was altered. This has been fixed. Thanks to Adam Ernst for
bringing it to our attention.
* :issue:`312`: Tweak internal I/O related loops to prevent high CPU usage and
poor screen-printing behavior on some systems. Thanks to Redmine user ``cbr
grind`` for the initial patch.
poor screen-printing behavior on some systems. Thanks to Kirill Pinchuk for
the initial patch.
* :issue:`320`: Some users reported problems with dropped input, particularly
while entering `~fabric.operations.sudo` passwords. This was fixed via the
same change as for :issue:`312`.

Documentation
=============
Expand Down
35 changes: 35 additions & 0 deletions docs/changes/1.0.2.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
========================
Changes in version 1.0.2
========================

.. note::
This release also includes all applicable changes from the :doc:`0.9.7
release </changes/0.9.7>`.

Bugfixes
========

* :issue:`258`: Bugfix to a previous, incorrectly applied fix regarding
`~fabric.operations.local` on Windows platforms.
* :issue:`324`: Update `~fabric.operations.run`/`~fabric.operations.sudo`'s
``combine_stderr`` kwarg so that it correctly overrides the global setting in
all cases. This required changing its default value to ``None``, but the
default behavior (behaving as if the setting were ``True``) has not changed.
Thanks to Matthew Woodcraft and Connor Smith for the catch.
* :issue:`337`: Fix logic bug in `~fabric.operations.put` preventing use of
``mirror_local_mode``. Thanks to Roman Imankulov for catch & patch.
* :issue:`352` (also :issue:`320`): Seemingly random issues with output lockup
and input problems (e.g. sudo prompts incorrectly rejecting passwords) appear
to have been caused by an I/O race condition. This has been fixed. Thanks to
Max Arnold and Paul Oswald for the detailed reports and to Max for the
diagnosis and patch.


Documentation
=============

* Updated the API documentation for `~fabric.context_managers.cd` to explicitly
point users to `~fabric.context_managers.lcd` for modifying local paths.
* Clarified the behavior of `~fabric.contrib.project.rsync_project` re: how
trailing slashes in ``local_dir`` affect ``remote_dir``. Thanks to Mark
Merritt for the catch.
19 changes: 19 additions & 0 deletions docs/changes/1.1.1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
========================
Changes in version 1.1.1
========================

Bugfixes
========

* The public API for `~fabric.tasks.Task` mentioned use of the ``run()``
method, but Fabric's main execution loop had not been updated to look for and
call it, forcing users who subclassed `~fabric.tasks.Task` to define
``__call__()`` instead. This was an oversight and has been corrected.


Documentation
=============

* The documentation for use of `~fabric.tasks.Task` subclasses (contained under
:ref:`new-style-tasks`) has been slightly fleshed out and has also grown an
example snippet or two.
75 changes: 73 additions & 2 deletions docs/changes/1.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,91 @@ Changes in version 1.1

This page lists all changes made to Fabric in its 1.1.0 release.

.. note::
This release also includes all applicable changes from the :doc:`1.0.2
release </changes/1.0.2>`.

Highlights
==========

* :issue:`76`: :ref:`New-style tasks <new-style-tasks>` have been added. With
the addition of the `~fabric.decorators.task` decorator and the
`~fabric.tasks.Task` class, you can now "opt-in" and explicitly mark task
functions as tasks, and Fabric will ignore the rest. The original behavior
(now referred to as :ref:`"classic" tasks <classic-tasks>`) will still take
effect if no new-style tasks are found. Major thanks to Travis Swicegood for
the original implementation.
* :issue:`56`: Namespacing is now possible: Fabric will crawl imported module
objects looking for new-style task objects and build a dotted hierarchy
(tasks named e.g. ``web.deploy`` or ``db.migrations.run``), allowing for
greater organization. See :ref:`namespaces` for details. Thanks again to
Travis Swicegood.


Feature additions
=================

* :issue:`10`: `~fabric.contrib.upload_project` now allows control over the
local and remote directory paths, and has improved error handling. Thanks to
Rodrigue Alcazar for the patch.
* As part of :issue:`56` (highlighted above), added :option:`--list-format
<-F>` to allow specification of a nested output format from :option:`--list
<-l>`.
* :issue:`107`: `~fabric.operations.require`'s ``provided_by`` kwarg now
accepts iterables in addition to single values. Thanks to Thomas Ballinger
for the patch.
* :issue:`117`: `~fabric.contrib.files.upload_template` now supports the
`~fabric.operations.put` flags ``mirror_local_mode`` and ``mode``. Thanks to
Joe Stump for the suggestion and Thomas Ballinger for the patch.
* :issue:`154`: `~fabric.contrib.files.sed` now allows customized regex flags
to be specified via a new ``flags`` parameter. Thanks to Nick Trew for the
suggestion and Morgan Goose for initial implementation.
* :issue:`170`: Allow :ref:`exclusion <excluding-hosts>` of specific hosts from
the final run list. Thanks to Casey Banner for the suggestion and patch.
* :issue:`189`: Added :option:`--abort-on-prompts`/:ref:`env.abort_on_prompts
<abort-on-prompts>` to allow a more non-interactive behavior,
aborting/exiting instead of trying to prompt the running user. Thanks to
Jeremy Avnet and Matt Chisholm for the initial patch.
* :issue:`273`: `~fabric.contrib.files.upload_template` now offers control over
whether it attempts to create backups of pre-existing destination files.
Thanks to Ales Zoulek for the suggestion and initial patch.
* :issue:`283`: Added the `~fabric.decorators.with_settings` decorator to allow
application of env var settings to an entire function, as an alternative to
using the `~fabric.context_managers.settings` context manager. Thanks to
Travis Swicegood for the patch.
* :issue:`353`: Added :option:`--keepalive`/:ref:`env.keepalive <keepalive>` to
allow specification of an SSH keepalive parameter for troublesome network
connections. Thanks to Mark Merritt for catch & patch.

Bugfixes
========

* N/A
* :issue:`115`: An implementation detail causing host lists to lose order
when deduped by the ``fab`` execution loop, has been patched to preserve
order instead. So e.g. ``fab -H a,b,c`` (or setting ``env.hosts = ['a', 'b',
'c']``) will now always run on ``a``, then ``b``, then ``c``. Previously,
there was a chance the order could get mixed up during deduplication. Thanks
to Rohit Aggarwal for the report.
* :issue:`345`: `~fabric.contrib.files.contains` returned the stdout of its
internal ``grep`` command instead of success/failure, causing incorrect
behavior when stderr exists and is combined with stdout. This has been
corrected. Thanks to Szymon Reichmann for catch and patch.

Documentation updates
=====================

* N/A
* Documentation for task declaration has been moved from
:doc:`/usage/execution` into its own docs page, :doc:`/usage/tasks`, as a
result of the changes added in :issue:`76` and :issue:`56`.
* :issue:`184`: Make the usage of `~fabric.contrib.project.rsync_project`'s
``local_dir`` argument more obvious, regarding its use in the ``rsync`` call.
(Specifically, so users know they can pass in multiple, space-joined
directory names instead of just one single directory.)

Internals
=========

* :issue:`307`: A whole pile of minor PEP8 tweaks. Thanks to Markus Gattol for
highlighting the ``pep8`` tool and to Rick Harding for the patch.
* :issue:`314`: Test utility decorator improvements. Thanks to Rick Harding for
initial catch & patch.
3 changes: 2 additions & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,8 @@ def issues_role(name, rawtext, text, lineno, inliner, options={}, content=[]):

from fabric.api import local, hide
with hide('everything'):
fabric_tags = local('git tag | sort -r | egrep "(0\.9|1\.0)\.."', True).split()
get_tags = 'git tag | sort -r | egrep "(0\.9|1\.[[:digit:]]+)\.."'
fabric_tags = local(get_tags, True).split()
html_context = {'fabric_tags': fabric_tags}


Expand Down
2 changes: 1 addition & 1 deletion docs/tutorial.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ That's all there is to it. This functionality allows Fabric to be used as a
functions you instruct it to. There's nothing magic about it -- anything
you can do in a normal Python script can be done in a fabfile!

.. seealso:: :ref:`execution-strategy`, :ref:`tasks-and-imports`, :doc:`usage/fab`
.. seealso:: :ref:`execution-strategy`, :doc:`/usage/tasks`, :doc:`/usage/fab`


Task arguments
Expand Down
44 changes: 44 additions & 0 deletions docs/usage/env.rst
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,23 @@ as `~fabric.context_managers.cd`.
Note that many of these may be set via ``fab``'s command-line switches -- see
:doc:`fab` for details. Cross-links will be provided where appropriate.

.. _abort-on-prompts:

``abort_on_prompts``
--------------------

**Default:** ``False``

When ``True``, Fabric will run in a non-interactive mode, calling
`~fabric.utils.abort` anytime it would normally prompt the user for input (such
as password prompts, "What host to connect to?" prompts, fabfile invocation of
`~fabric.operations.prompt`, and so forth.) This allows users to ensure a Fabric
session will always terminate cleanly instead of blocking on user input forever
when unforeseen circumstances arise.

.. versionadded:: 1.1
.. seealso:: :option:`--abort-on-prompts`

``all_hosts``
-------------

Expand Down Expand Up @@ -185,6 +202,19 @@ host key is actually valid (e.g. cloud servers such as EC2.)

.. seealso:: :doc:`ssh`

.. _exclude-hosts:

``exclude_hosts``
-----------------

**Default:** ``[]``

Specifies a list of host strings to be :ref:`skipped over <exclude-hosts>`
during ``fab`` execution. Typically set via :option:`--exclude-hosts/-x <-x>`.

.. versionadded:: 1.1


``fabfile``
-----------

Expand Down Expand Up @@ -229,6 +259,20 @@ The global host list used when composing per-task host lists.

.. seealso:: :doc:`execution`

.. _keepalive:

``keepalive``
-------------

**Default:** ``0`` (i.e. no keepalive)

An integer specifying an SSH keepalive interval to use; basically maps to the
SSH config option ``ClientAliveInterval``. Useful if you find connections are
timing out due to meddlesome network hardware or what have you.

.. seealso:: :option:`--keepalive`
.. versionadded:: 1.1

.. _key-filename:

``key_filename``
Expand Down
Loading