- Update to 3.2.2
- add fix-test-deps.patch to remove vendored dependencies
*[Bug]: fabric.runners.Remote failed to properly deregister its SIGWINCH signal
handler on shutdown; in rare situations this could cause tracebacks when
the Python process receives SIGWINCH while no remote session is active.
This has been fixed.
* [Bug] #2204: The signal handling functionality added in Fabric 2.6 caused
unrecoverable tracebacks when invoked from inside a thread (such as
the use of fabric.group.ThreadingGroup) under certain interpreter versions.
This has been fixed by simply refusing to register signal handlers when not
in the main thread. Thanks to Francesco Giordano and others for the reports.
* [Bug]: Neglected to actually add deprecated to our runtime dependency
specification (it was still in our development dependencies). This has been fixed.
* [Feature]: Enhanced fabric.testing in ways large and small:
Backwards-compatibly merged the functionality of MockSFTP into MockRemote (may be
opted-into by instantiating the latter with enable_sftp=True) so you can mock
out both SSH and SFTP functionality in the same test, which was previously impossible.
It also means you can use this in a Pytest autouse fixture to prevent any tests
from accidentally hitting the network!
A new pytest fixture, remote_with_sftp, has been added which leverages the previous
bullet point (an all-in-one fixture suitable for, eg, preventing any incidental
ssh/sftp attempts during test execution).
A pile of documentation and test enhancements (yes, testing our testing helpers is a thing).
* [Support]: Added a new runtime dependency on the Deprecated library.
* [Support]: Language update: applied s/sanity/safety/g to the codebase
(with the few actual API members using the term now marked deprecated & new ones added
in the meantime, mostly in fabric.testing).
* [Feature]: Add a new CLI flag to fab, fab --list-agent-keys, which will attempt
to connect to your local SSH agent and print a key list, similarly to ssh-add -l.
This is mostly useful for expectations-checking Fabric and Paramiko’s agent
OBS-URL: https://build.opensuse.org/request/show/1118865
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=86
- Update to 3.0.1
* [Bug] #2241: A typo prevented Fabric’s command runner from properly
calling its superclass stop() method, which in tandem with a related
Invoke bug meant messy or long shutdowns in many scenarios.
- Changes from 3.0.0
* [Feature]: Change the default configuration value for inline_ssh_env
from False to True, to better align with the practicalities of common
SSH server configurations.
- Warning
This change is backwards incompatible if you were using
environment-variable-setting kwargs or config settings,
such as Connection.run(command, env={'SOME': 'ENV VARS'}),
and were not already explicitly specifying the value of inline_ssh_env.
* [Bug] #1981: (fixed in #2195) Automatically close any open SFTP session
during fabric.connection.Connection.close; this avoids issues encountered
upon re-opening a previously-closed connection object.
* [Support]: Drop support for Python <3.6, including Python 2.
- Warning
This is a backwards incompatible change if you are not yet on
Python 3.6 or above; however, pip shouldn’t offer you this
version of Fabric as long as your pip version understands
python_requires metadata.
- Drop remove-mock.patch because now in upstream.
- Drop remove-pathlib2.patch because now in upstream.
OBS-URL: https://build.opensuse.org/request/show/1096411
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Fabric?expand=0&rev=43
- Update to 3.0.1
* [Bug] #2241: A typo prevented Fabric’s command runner from properly
calling its superclass stop() method, which in tandem with a related
Invoke bug meant messy or long shutdowns in many scenarios.
- Changes from 3.0.0
* [Feature]: Change the default configuration value for inline_ssh_env
from False to True, to better align with the practicalities of common
SSH server configurations.
- Warning
This change is backwards incompatible if you were using
environment-variable-setting kwargs or config settings,
such as Connection.run(command, env={'SOME': 'ENV VARS'}),
and were not already explicitly specifying the value of inline_ssh_env.
* [Bug] #1981: (fixed in #2195) Automatically close any open SFTP session
during fabric.connection.Connection.close; this avoids issues encountered
upon re-opening a previously-closed connection object.
* [Support]: Drop support for Python <3.6, including Python 2.
- Warning
This is a backwards incompatible change if you are not yet on
Python 3.6 or above; however, pip shouldn’t offer you this
version of Fabric as long as your pip version understands
python_requires metadata.
- Drop remove-mock.patch because now in upstream.
- Drop remove-pathlib2.patch because now in upstream.
OBS-URL: https://build.opensuse.org/request/show/1096368
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=83
- Update to 2.7.0:
* Add ~fabric.connection.Connection.shell, a belated port of the v1
open_shell() feature.
* Forward local terminal resizes to the remote end, when applicable.
(For the technical: this means we now turn SIGWINCH into SSH
window-change messages.)
* Update ~fabric.connection.Connection temporarily so that it doesn't
incidentally apply replace_env=True to local shell commands, only
remote ones.
- Add patch remove-mock.patch:
* Use unittest.mock, instead of mock
OBS-URL: https://build.opensuse.org/request/show/977640
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Fabric?expand=0&rev=38
* Add ~fabric.connection.Connection.shell, a belated port of the v1
open_shell() feature.
* Forward local terminal resizes to the remote end, when applicable.
(For the technical: this means we now turn SIGWINCH into SSH
window-change messages.)
* Update ~fabric.connection.Connection temporarily so that it doesn't
incidentally apply replace_env=True to local shell commands, only
remote ones.
- Add patch remove-mock.patch:
* Use unittest.mock, instead of mock
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=73
- Update to 2.6.0:
* [Feature] #1999: Add sudo support to Group. Thanks to Bonnie Hardin for
the report and to Winston Nolan for an early patchset.
* [Feature] #1810: Add put/get support to Group.
* [Feature] #1868: Ported a feature from v1: interpolating the local path
argument in Transfer.get with connection and remote filepath attributes.
For example, cxn.get(remote="/var/log/foo.log", local="{host}/") is now
feasible for storing a file in per-host-named directories or files, and
in fact Group.get does this by default.
* [Feature]: When the local path argument to Transfer.get contains nonexistent
directories, they are now created instead of raising an error.
Warning: This change introduces a new runtime dependency: pathlib2.
* [Bug]: Fix a handful of issues in the handling and mocking of SFTP local paths
and os.path members within fabric.testing; this should remove some occasional
“useless Mocks” as well as hewing closer to the real behavior of things like
os.path.abspath re: path normalization.
- Update Requires from setup.py
OBS-URL: https://build.opensuse.org/request/show/911821
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=69
* [Feature] #1989: Reinstate command timeouts, by supporting the
implementation of that feature in Invoke
* [Feature]: Allow specifying connection timeouts
* [Feature] #1985: Add support for explicitly closing remote subprocess’
stdin when local stdin sees an EOF, by implementing a new command-runner
method recently added to Invoke; this prevents remote programs that
‘follow’ stdin from blocking forever.
* [Bug]: Anonymous/’remainder’ subprocess execution (eg fab -H host --
command, as opposed to the use of Connection.run inside tasks)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=61
- Version update to 2.4.0:
* [Feature] #1709: Add Group.close to allow closing an entire group’s
worth of connections at once. Patch via Johannes Löthberg.
* [Feature] #1780: Add context manager behavior to Group, to match
the same feature in Connection. Feature request by István Sárándi.
* [Feature] #1849: Add Connection.from_v1 (and Config.from_v1) for
easy creation of modern Connection/Config objects from the currently
configured Fabric 1.x environment. Should make upgrading piecemeal
much easier for many use cases.
- additional changes from version 2.3.2:
* [Bug] #1852: Grant internal Connection objects created during
ProxyJump based gateways/proxies a copy of the outer Connection’s
configuration object. This was not previously done, which among
other things meant one could not fully disable SSH config file
loading (as the internal Connection objects would revert to the
default behavior). Thanks to Chris Adams for the report.
* [Bug]: Some debug logging was reusing Invoke’s logger object,
generating log messages “named” after invoke instead of fabric.
This has been fixed by using Fabric’s own logger everywhere instead.
* [Bug] #1850: Skip over ProxyJump configuration directives in SSH
config data when they would cause self-referential RecursionError
(e.g. due to wildcard-using Host stanzas which include the jump
server itself). Reported by Chris Adams.
* [Bug]: Fix a bug preventing tab completion (using the Invoke-level
--complete flag) from completing task names correctly (behavior was
to act as if there were never any tasks present, even if there was
a valid fabfile nearby).
- Add sed expresion to spec file to remove all vendoring from imports
- Run testsuite using the new %pytest macro
OBS-URL: https://build.opensuse.org/request/show/693161
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Fabric?expand=0&rev=30
- Version update to 2.4.0:
* [Feature] #1709: Add Group.close to allow closing an entire group’s
worth of connections at once. Patch via Johannes Löthberg.
* [Feature] #1780: Add context manager behavior to Group, to match
the same feature in Connection. Feature request by István Sárándi.
* [Feature] #1849: Add Connection.from_v1 (and Config.from_v1) for
easy creation of modern Connection/Config objects from the currently
configured Fabric 1.x environment. Should make upgrading piecemeal
much easier for many use cases.
- additional changes from version 2.3.2:
* [Bug] #1852: Grant internal Connection objects created during
ProxyJump based gateways/proxies a copy of the outer Connection’s
configuration object. This was not previously done, which among
other things meant one could not fully disable SSH config file
loading (as the internal Connection objects would revert to the
default behavior). Thanks to Chris Adams for the report.
* [Bug]: Some debug logging was reusing Invoke’s logger object,
generating log messages “named” after invoke instead of fabric.
This has been fixed by using Fabric’s own logger everywhere instead.
* [Bug] #1850: Skip over ProxyJump configuration directives in SSH
config data when they would cause self-referential RecursionError
(e.g. due to wildcard-using Host stanzas which include the jump
server itself). Reported by Chris Adams.
* [Bug]: Fix a bug preventing tab completion (using the Invoke-level
--complete flag) from completing task names correctly (behavior was
to act as if there were never any tasks present, even if there was
a valid fabfile nearby).
- Add sed expresion to spec file to remove all vendoring from imports
- Run testsuite using the new %pytest macro
OBS-URL: https://build.opensuse.org/request/show/692485
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=58
- update to version 1.10.2:
* Fix issue with ssh/config not having a cross-platform default path.
* Recursively unwrap decorators instead of only unwrapping a single
decorator level, when obtaining task docstrings.
* Fix “NameError: free variable referenced before assignment in
enclosing scope”.
* Redirect output of cd to /dev/null so users enabling bash’s
CDPATH (or similar features in other shells) don’t have polluted
output captures.
* Fix a couple minor issues with the operation of & demo code for
the JobQueue class.
* Update functionality added in #1213 so abort error messages don’t
get printed twice (once by us, once by sys.exit) but the annotated
exception error message is retained.
OBS-URL: https://build.opensuse.org/request/show/360172
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Fabric?expand=0&rev=48