2021-03-18 18:57:08 +01:00
|
|
|
@comment $NetBSD: PLIST,v 1.11 2021/03/18 17:57:08 gdt Exp $
|
2010-07-24 20:14:27 +02:00
|
|
|
bin/tahoe
|
|
|
|
${PYSITELIB}/allmydata/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/__init__.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/__main__.py
|
|
|
|
${PYSITELIB}/allmydata/__main__.pyc
|
|
|
|
${PYSITELIB}/allmydata/__main__.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/_auto_deps.py
|
|
|
|
${PYSITELIB}/allmydata/_auto_deps.pyc
|
|
|
|
${PYSITELIB}/allmydata/_auto_deps.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/_monkeypatch.py
|
|
|
|
${PYSITELIB}/allmydata/_monkeypatch.pyc
|
|
|
|
${PYSITELIB}/allmydata/_monkeypatch.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/_version.py
|
|
|
|
${PYSITELIB}/allmydata/_version.pyc
|
|
|
|
${PYSITELIB}/allmydata/_version.pyo
|
2011-11-09 01:30:12 +01:00
|
|
|
${PYSITELIB}/allmydata/blacklist.py
|
|
|
|
${PYSITELIB}/allmydata/blacklist.pyc
|
|
|
|
${PYSITELIB}/allmydata/blacklist.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/check_results.py
|
|
|
|
${PYSITELIB}/allmydata/check_results.pyc
|
|
|
|
${PYSITELIB}/allmydata/check_results.pyo
|
|
|
|
${PYSITELIB}/allmydata/client.py
|
|
|
|
${PYSITELIB}/allmydata/client.pyc
|
|
|
|
${PYSITELIB}/allmydata/client.pyo
|
|
|
|
${PYSITELIB}/allmydata/codec.py
|
|
|
|
${PYSITELIB}/allmydata/codec.pyc
|
|
|
|
${PYSITELIB}/allmydata/codec.pyo
|
|
|
|
${PYSITELIB}/allmydata/control.py
|
|
|
|
${PYSITELIB}/allmydata/control.pyc
|
|
|
|
${PYSITELIB}/allmydata/control.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/crypto/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/crypto/aes.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/aes.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/aes.pyo
|
|
|
|
${PYSITELIB}/allmydata/crypto/ed25519.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/ed25519.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/ed25519.pyo
|
|
|
|
${PYSITELIB}/allmydata/crypto/error.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/error.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/error.pyo
|
|
|
|
${PYSITELIB}/allmydata/crypto/rsa.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/rsa.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/rsa.pyo
|
|
|
|
${PYSITELIB}/allmydata/crypto/util.py
|
|
|
|
${PYSITELIB}/allmydata/crypto/util.pyc
|
|
|
|
${PYSITELIB}/allmydata/crypto/util.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/deep_stats.py
|
|
|
|
${PYSITELIB}/allmydata/deep_stats.pyc
|
|
|
|
${PYSITELIB}/allmydata/deep_stats.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/dirnode.py
|
|
|
|
${PYSITELIB}/allmydata/dirnode.pyc
|
|
|
|
${PYSITELIB}/allmydata/dirnode.pyo
|
|
|
|
${PYSITELIB}/allmydata/frontends/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/frontends/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/frontends/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/frontends/auth.py
|
|
|
|
${PYSITELIB}/allmydata/frontends/auth.pyc
|
|
|
|
${PYSITELIB}/allmydata/frontends/auth.pyo
|
|
|
|
${PYSITELIB}/allmydata/frontends/ftpd.py
|
|
|
|
${PYSITELIB}/allmydata/frontends/ftpd.pyc
|
|
|
|
${PYSITELIB}/allmydata/frontends/ftpd.pyo
|
|
|
|
${PYSITELIB}/allmydata/frontends/sftpd.py
|
|
|
|
${PYSITELIB}/allmydata/frontends/sftpd.pyc
|
|
|
|
${PYSITELIB}/allmydata/frontends/sftpd.pyo
|
|
|
|
${PYSITELIB}/allmydata/hashtree.py
|
|
|
|
${PYSITELIB}/allmydata/hashtree.pyc
|
|
|
|
${PYSITELIB}/allmydata/hashtree.pyo
|
|
|
|
${PYSITELIB}/allmydata/history.py
|
|
|
|
${PYSITELIB}/allmydata/history.pyc
|
|
|
|
${PYSITELIB}/allmydata/history.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/checker.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/checker.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/checker.pyo
|
Update to 1.8.0.
* Release 1.8.0 (2010-09-23)
** New Features
- A completely new downloader which improves performance and
robustness of immutable-file downloads. It uses the fastest K
servers to download the data in K-way parallel. It automatically
fails over to alternate servers if servers fail in mid-download. It
allows seeking to arbitrary locations in the file (the previous
downloader which would only read the entire file sequentially from
beginning to end). It minimizes unnecessary round trips and
unnecessary bytes transferred to improve performance. It sends
requests to fewer servers to reduce the load on servers (the
previous one would send a small request to every server for every
download) (#287, #288, #448, #798, #800, #990, #1170, #1191)
- Non-ASCII command-line arguments and non-ASCII outputs now work on
Windows. In addition, the command-line tool now works on 64-bit
Windows. (#1074)
** Bugfixes and Improvements
- Document and clean up the command-line options for specifying the
node's base directory. (#188, #706, #715, #772, #1108)
- The default node directory for Windows is ".tahoe" in the user's
home directory, the same as on other platforms. (#890)
- Fix a case in which full cap URIs could be logged. (#685, #1155)
- Fix bug in WUI in Python 2.5 when the system clock is set back to
1969. Now you can use Tahoe-LAFS with Python 2.5 and set your
system clock to 1969 and still use the WUI. (#1055)
- Many improvements in code organization, tests, logging,
documentation, and packaging. (#983, #1074, #1108, #1127, #1129,
#1131, #1166, #1175)
2010-09-24 20:20:59 +02:00
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/common.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/common.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/fetcher.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/fetcher.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/fetcher.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/finder.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/finder.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/finder.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/node.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/node.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/node.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/segmentation.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/segmentation.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/segmentation.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/share.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/share.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/share.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/status.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/status.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/downloader/status.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/immutable/encode.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/encode.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/encode.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/filenode.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/filenode.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/filenode.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/immutable/happiness_upload.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/happiness_upload.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/happiness_upload.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/immutable/layout.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/layout.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/layout.pyo
|
Update to 1.8.0.
* Release 1.8.0 (2010-09-23)
** New Features
- A completely new downloader which improves performance and
robustness of immutable-file downloads. It uses the fastest K
servers to download the data in K-way parallel. It automatically
fails over to alternate servers if servers fail in mid-download. It
allows seeking to arbitrary locations in the file (the previous
downloader which would only read the entire file sequentially from
beginning to end). It minimizes unnecessary round trips and
unnecessary bytes transferred to improve performance. It sends
requests to fewer servers to reduce the load on servers (the
previous one would send a small request to every server for every
download) (#287, #288, #448, #798, #800, #990, #1170, #1191)
- Non-ASCII command-line arguments and non-ASCII outputs now work on
Windows. In addition, the command-line tool now works on 64-bit
Windows. (#1074)
** Bugfixes and Improvements
- Document and clean up the command-line options for specifying the
node's base directory. (#188, #706, #715, #772, #1108)
- The default node directory for Windows is ".tahoe" in the user's
home directory, the same as on other platforms. (#890)
- Fix a case in which full cap URIs could be logged. (#685, #1155)
- Fix bug in WUI in Python 2.5 when the system clock is set back to
1969. Now you can use Tahoe-LAFS with Python 2.5 and set your
system clock to 1969 and still use the WUI. (#1055)
- Many improvements in code organization, tests, logging,
documentation, and packaging. (#983, #1074, #1108, #1127, #1129,
#1131, #1166, #1175)
2010-09-24 20:20:59 +02:00
|
|
|
${PYSITELIB}/allmydata/immutable/literal.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/literal.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/literal.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/immutable/offloaded.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/offloaded.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/offloaded.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/repairer.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/repairer.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/repairer.pyo
|
|
|
|
${PYSITELIB}/allmydata/immutable/upload.py
|
|
|
|
${PYSITELIB}/allmydata/immutable/upload.pyc
|
|
|
|
${PYSITELIB}/allmydata/immutable/upload.pyo
|
|
|
|
${PYSITELIB}/allmydata/interfaces.py
|
|
|
|
${PYSITELIB}/allmydata/interfaces.pyc
|
|
|
|
${PYSITELIB}/allmydata/interfaces.pyo
|
|
|
|
${PYSITELIB}/allmydata/introducer/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/introducer/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/introducer/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/introducer/client.py
|
|
|
|
${PYSITELIB}/allmydata/introducer/client.pyc
|
|
|
|
${PYSITELIB}/allmydata/introducer/client.pyo
|
Update to:
Release 1.10.0 (2013-05-01)
'''''''''''''''''''''''''''
New Features
------------
- The Welcome page has been redesigned. This is a preview of the design style
that is likely to be used in other parts of the WUI in future Tahoe-LAFS
versions. (`#1713`_, `#1457`_, `#1735`_)
- A new extensible Introducer protocol has been added, as the basis for
future improvements such as accounting. Compatibility with older nodes is
not affected. When server, introducer, and client are all upgraded, the
welcome page will show node IDs that start with "v0-" instead of the old
tubid. See `<docs/nodekeys.rst>`__ for details. (`#466`_)
- The web-API has a new ``relink`` operation that supports directly moving
files between directories. (`#1579`_)
Security Improvements
---------------------
- The ``introducer.furl`` for new Introducers is now unguessable. In previous
releases, this FURL used a predictable swissnum, allowing a network
eavesdropper who observes any node connecting to the Introducer to access
the Introducer themselves, and thus use servers or offer storage service to
clients (i.e. "join the grid"). In the new code, the only way to join a
grid is to be told the ``introducer.furl`` by someone who already knew it.
Note that pre-existing introducers are not changed. To force an introducer
to generate a new FURL, delete the existing ``introducer.furl`` file and
restart it. After doing this, the ``[client]introducer.furl`` setting of
every client and server that should connect to that introducer must be
updated. Note that other users of a shared machine may be able to read
``introducer.furl`` from your ``tahoe.cfg`` file unless you configure the
file permissions to prevent them. (`#1802`_)
- Both ``introducer.furl`` and ``helper.furl`` are now censored from the
Welcome page, to prevent users of your gateway from learning enough to
create gateway nodes of their own. For existing guessable introducer
FURLs, the ``introducer`` swissnum is still displayed to show that a
guessable FURL is in use. (`#860`_)
Command-line Syntax Changes
---------------------------
- Global options to ``tahoe``, such as ``-d``/``--node-directory``, must now
come before rather than after the command name (for example,
``tahoe -d BASEDIR cp -r foo: bar:`` ). (`#166`_)
Notable Bugfixes
----------------
- In earlier versions, if a connection problem caused a download failure for
an immutable file, subsequent attempts to download the same file could also
fail. This is now fixed. (`#1679`_)
- Filenames in WUI directory pages are now displayed correctly when they
contain characters that require HTML escaping. (`#1143`_)
- Non-ASCII node nicknames no longer cause WUI errors. (`#1298`_)
- Checking a LIT file using ``tahoe check`` no longer results in an
exception. (`#1758`_)
- The SFTP frontend now works with recent versions of Twisted, rather than
giving errors or warnings about use of ``IFinishableConsumer``. (`#1926`_,
`#1564`_, `#1525`_)
- ``tahoe cp --verbose`` now counts the files being processed correctly.
(`#1805`_, `#1783`_)
- Exceptions no longer trigger an unhelpful crash reporter on Ubuntu 12.04
("Precise") or later. (`#1746`_)
- The error message displayed when a CLI tool cannot connect to a gateway has
been improved. (`#974`_)
- Other minor fixes: `#1781`_, `#1812`_, `#1915`_, `#1484`_, `#1525`_
Other Changes
-------------
- The provisioning/reliability pages were removed from the main client's web
interface, and moved into a standalone web-based tool. Use the ``run.py``
script in ``misc/operations_helpers/provisioning/`` to access them.
- Web clients can now cache (ETag) immutable directory pages. (`#443`_)
- `<docs/convergence_secret.rst>`__ was added to document the adminstration
of convergence secrets. (`#1761`_)
2013-05-02 01:59:53 +02:00
|
|
|
${PYSITELIB}/allmydata/introducer/common.py
|
|
|
|
${PYSITELIB}/allmydata/introducer/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/introducer/common.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/introducer/interfaces.py
|
|
|
|
${PYSITELIB}/allmydata/introducer/interfaces.pyc
|
|
|
|
${PYSITELIB}/allmydata/introducer/interfaces.pyo
|
|
|
|
${PYSITELIB}/allmydata/introducer/server.py
|
|
|
|
${PYSITELIB}/allmydata/introducer/server.pyc
|
|
|
|
${PYSITELIB}/allmydata/introducer/server.pyo
|
|
|
|
${PYSITELIB}/allmydata/monitor.py
|
|
|
|
${PYSITELIB}/allmydata/monitor.pyc
|
|
|
|
${PYSITELIB}/allmydata/monitor.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/checker.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/checker.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/checker.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/common.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/common.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/filenode.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/filenode.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/filenode.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/layout.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/layout.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/layout.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/publish.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/publish.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/publish.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/repairer.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/repairer.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/repairer.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/retrieve.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/retrieve.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/retrieve.pyo
|
|
|
|
${PYSITELIB}/allmydata/mutable/servermap.py
|
|
|
|
${PYSITELIB}/allmydata/mutable/servermap.pyc
|
|
|
|
${PYSITELIB}/allmydata/mutable/servermap.pyo
|
|
|
|
${PYSITELIB}/allmydata/node.py
|
|
|
|
${PYSITELIB}/allmydata/node.pyc
|
|
|
|
${PYSITELIB}/allmydata/node.pyo
|
|
|
|
${PYSITELIB}/allmydata/nodemaker.py
|
|
|
|
${PYSITELIB}/allmydata/nodemaker.pyc
|
|
|
|
${PYSITELIB}/allmydata/nodemaker.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/__init__.pyo
|
Update to:
Release 1.10.0 (2013-05-01)
'''''''''''''''''''''''''''
New Features
------------
- The Welcome page has been redesigned. This is a preview of the design style
that is likely to be used in other parts of the WUI in future Tahoe-LAFS
versions. (`#1713`_, `#1457`_, `#1735`_)
- A new extensible Introducer protocol has been added, as the basis for
future improvements such as accounting. Compatibility with older nodes is
not affected. When server, introducer, and client are all upgraded, the
welcome page will show node IDs that start with "v0-" instead of the old
tubid. See `<docs/nodekeys.rst>`__ for details. (`#466`_)
- The web-API has a new ``relink`` operation that supports directly moving
files between directories. (`#1579`_)
Security Improvements
---------------------
- The ``introducer.furl`` for new Introducers is now unguessable. In previous
releases, this FURL used a predictable swissnum, allowing a network
eavesdropper who observes any node connecting to the Introducer to access
the Introducer themselves, and thus use servers or offer storage service to
clients (i.e. "join the grid"). In the new code, the only way to join a
grid is to be told the ``introducer.furl`` by someone who already knew it.
Note that pre-existing introducers are not changed. To force an introducer
to generate a new FURL, delete the existing ``introducer.furl`` file and
restart it. After doing this, the ``[client]introducer.furl`` setting of
every client and server that should connect to that introducer must be
updated. Note that other users of a shared machine may be able to read
``introducer.furl`` from your ``tahoe.cfg`` file unless you configure the
file permissions to prevent them. (`#1802`_)
- Both ``introducer.furl`` and ``helper.furl`` are now censored from the
Welcome page, to prevent users of your gateway from learning enough to
create gateway nodes of their own. For existing guessable introducer
FURLs, the ``introducer`` swissnum is still displayed to show that a
guessable FURL is in use. (`#860`_)
Command-line Syntax Changes
---------------------------
- Global options to ``tahoe``, such as ``-d``/``--node-directory``, must now
come before rather than after the command name (for example,
``tahoe -d BASEDIR cp -r foo: bar:`` ). (`#166`_)
Notable Bugfixes
----------------
- In earlier versions, if a connection problem caused a download failure for
an immutable file, subsequent attempts to download the same file could also
fail. This is now fixed. (`#1679`_)
- Filenames in WUI directory pages are now displayed correctly when they
contain characters that require HTML escaping. (`#1143`_)
- Non-ASCII node nicknames no longer cause WUI errors. (`#1298`_)
- Checking a LIT file using ``tahoe check`` no longer results in an
exception. (`#1758`_)
- The SFTP frontend now works with recent versions of Twisted, rather than
giving errors or warnings about use of ``IFinishableConsumer``. (`#1926`_,
`#1564`_, `#1525`_)
- ``tahoe cp --verbose`` now counts the files being processed correctly.
(`#1805`_, `#1783`_)
- Exceptions no longer trigger an unhelpful crash reporter on Ubuntu 12.04
("Precise") or later. (`#1746`_)
- The error message displayed when a CLI tool cannot connect to a gateway has
been improved. (`#974`_)
- Other minor fixes: `#1781`_, `#1812`_, `#1915`_, `#1484`_, `#1525`_
Other Changes
-------------
- The provisioning/reliability pages were removed from the main client's web
interface, and moved into a standalone web-based tool. Use the ``run.py``
script in ``misc/operations_helpers/provisioning/`` to access them.
- Web clients can now cache (ETag) immutable directory pages. (`#443`_)
- `<docs/convergence_secret.rst>`__ was added to document the adminstration
of convergence secrets. (`#1761`_)
2013-05-02 01:59:53 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/admin.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/admin.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/admin.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/backupdb.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/backupdb.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/backupdb.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/cli.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/cli.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/cli.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/common.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/common.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/common_http.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/common_http.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/common_http.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/create_node.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/create_node.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/create_node.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/debug.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/debug.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/debug.pyo
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/default_nodedir.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/default_nodedir.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/default_nodedir.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/scripts/run_common.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/run_common.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/run_common.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/runner.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/runner.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/runner.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/slow_operation.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/slow_operation.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/slow_operation.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/stats_gatherer.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/stats_gatherer.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/stats_gatherer.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_add_alias.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_add_alias.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_add_alias.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_backup.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_backup.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_backup.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_check.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_check.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_check.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_cp.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_cp.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_cp.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_daemonize.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_daemonize.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_daemonize.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_get.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_get.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_get.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_invite.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_invite.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_invite.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_ls.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_ls.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_ls.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_manifest.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_manifest.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_manifest.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mkdir.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mkdir.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mkdir.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mv.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mv.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_mv.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_put.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_put.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_put.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_restart.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_restart.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_restart.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_run.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_run.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_run.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_start.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_start.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_start.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_status.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_status.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_status.pyo
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_stop.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_stop.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_stop.pyo
|
2011-11-09 01:30:12 +01:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_unlink.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_unlink.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_unlink.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_webopen.py
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_webopen.pyc
|
|
|
|
${PYSITELIB}/allmydata/scripts/tahoe_webopen.pyo
|
|
|
|
${PYSITELIB}/allmydata/stats.py
|
|
|
|
${PYSITELIB}/allmydata/stats.pyc
|
|
|
|
${PYSITELIB}/allmydata/stats.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/storage/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/common.py
|
|
|
|
${PYSITELIB}/allmydata/storage/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/common.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/crawler.py
|
|
|
|
${PYSITELIB}/allmydata/storage/crawler.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/crawler.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/expirer.py
|
|
|
|
${PYSITELIB}/allmydata/storage/expirer.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/expirer.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/immutable.py
|
|
|
|
${PYSITELIB}/allmydata/storage/immutable.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/immutable.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/lease.py
|
|
|
|
${PYSITELIB}/allmydata/storage/lease.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/lease.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/mutable.py
|
|
|
|
${PYSITELIB}/allmydata/storage/mutable.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/mutable.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/server.py
|
|
|
|
${PYSITELIB}/allmydata/storage/server.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/server.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage/shares.py
|
|
|
|
${PYSITELIB}/allmydata/storage/shares.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage/shares.pyo
|
|
|
|
${PYSITELIB}/allmydata/storage_client.py
|
|
|
|
${PYSITELIB}/allmydata/storage_client.pyc
|
|
|
|
${PYSITELIB}/allmydata/storage_client.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/test/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/__init__.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/_twisted_9607.py
|
|
|
|
${PYSITELIB}/allmydata/test/_twisted_9607.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/_twisted_9607.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/check_grid.py
|
|
|
|
${PYSITELIB}/allmydata/test/check_grid.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/check_grid.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/check_load.py
|
|
|
|
${PYSITELIB}/allmydata/test/check_load.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/check_load.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/check_memory.py
|
|
|
|
${PYSITELIB}/allmydata/test/check_memory.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/check_memory.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/check_speed.py
|
|
|
|
${PYSITELIB}/allmydata/test/check_speed.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/check_speed.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/common.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/common.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/test_alias.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_alias.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_alias.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/test_backup.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_backup.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_backup.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_check.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_check.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_check.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cli.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cli.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cli.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cp.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cp.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_cp.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create_alias.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create_alias.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_create_alias.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/test_daemonize.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_daemonize.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_daemonize.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_invite.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_invite.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_invite.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/test_list.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_list.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_list.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_mv.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_mv.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_mv.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_put.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_put.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_put.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli/test_start.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_start.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_start.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_status.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_status.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli/test_status.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/cli_node_api.py
|
|
|
|
${PYSITELIB}/allmydata/test/cli_node_api.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/cli_node_api.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/common.py
|
|
|
|
${PYSITELIB}/allmydata/test/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/common.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/common_util.py
|
|
|
|
${PYSITELIB}/allmydata/test/common_util.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/common_util.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/common_web.py
|
|
|
|
${PYSITELIB}/allmydata/test/common_web.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/common_web.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/data/pycryptopp-rsa-2048-priv.txt
|
|
|
|
${PYSITELIB}/allmydata/test/data/pycryptopp-rsa-2048-pub.txt
|
|
|
|
${PYSITELIB}/allmydata/test/data/pycryptopp-rsa-2048-sig.txt
|
|
|
|
${PYSITELIB}/allmydata/test/eliotutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/eliotutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/eliotutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/matchers.py
|
|
|
|
${PYSITELIB}/allmydata/test/matchers.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/matchers.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/mutable/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_checker.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_checker.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_checker.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_datahandle.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_datahandle.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_datahandle.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_different_encoding.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_different_encoding.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_different_encoding.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_exceptions.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_exceptions.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_exceptions.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filehandle.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filehandle.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filehandle.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filenode.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filenode.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_filenode.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_interoperability.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_interoperability.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_interoperability.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_encodings.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_encodings.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_encodings.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_versions.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_versions.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_multiple_versions.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_problems.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_problems.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_problems.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_repair.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_repair.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_repair.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_roundtrip.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_roundtrip.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_roundtrip.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_servermap.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_servermap.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_servermap.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_update.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_update.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_update.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_version.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_version.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/test_version.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/util.py
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/util.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/mutable/util.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/no_network.py
|
|
|
|
${PYSITELIB}/allmydata/test/no_network.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/no_network.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/plugins/tahoe_lafs_dropin.py
|
|
|
|
${PYSITELIB}/allmydata/test/plugins/tahoe_lafs_dropin.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/plugins/tahoe_lafs_dropin.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/python3_tests.py
|
|
|
|
${PYSITELIB}/allmydata/test/python3_tests.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/python3_tests.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/test/status.py
|
|
|
|
${PYSITELIB}/allmydata/test/status.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/status.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/storage_plugin.py
|
|
|
|
${PYSITELIB}/allmydata/test/storage_plugin.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/storage_plugin.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_abbreviate.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_abbreviate.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_abbreviate.pyo
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_auth.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_auth.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_auth.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_backupdb.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_backupdb.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_backupdb.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_base32.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_base32.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_base32.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_base62.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_base62.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_base62.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_checker.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_checker.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_checker.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_client.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_client.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_client.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_codec.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_codec.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_codec.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_common_util.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_common_util.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_common_util.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_configutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_configutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_configutil.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_connection_status.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_connection_status.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_connection_status.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_connections.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_connections.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_connections.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_crawler.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_crawler.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_crawler.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_crypto.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_crypto.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_crypto.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_deepcheck.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_deepcheck.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_deepcheck.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_deferredutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_deferredutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_deferredutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_dictutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_dictutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_dictutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_dirnode.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_dirnode.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_dirnode.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_download.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_download.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_download.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_eliotutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_eliotutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_eliotutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_encode.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_encode.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_encode.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_encodingutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_encodingutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_encodingutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_filenode.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_filenode.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_filenode.pyo
|
Update to 1.9.2.
Release 1.9.2 (2012-07-03)
----------------------------
Notable Bugfixes
''''''''''''''''
- Several regressions in support for reading (`#1636`_), writing/modifying
(`#1670`_, `#1749`_), verifying (`#1628`_) and repairing (`#1655`_, `#1669`_,
`#1676`_, `#1689`_) mutable files have been fixed.
- FTP can now list directories containing mutable files, although it
still does not support reading or writing mutable files. (`#680`_)
- The FTP frontend would previously show Jan 1 1970 for all timestamps;
now it shows the correct modification time of the directory entry.
(`#1688`_)
- If a node is configured to report incidents to a log gatherer, but the
gatherer is offline when some incidents occur, it would previously not
"catch up" with those incidents as intended. (`#1725`_)
- OpenBSD 5 is now supported. (`#1584`_)
- The ``count-good-share-hosts`` field of file check results is now
computed correctly. (`#1115`_)
Configuration/Behavior Changes
''''''''''''''''''''''''''''''
- The capability of the upload directory for the drop-upload frontend
is now specified in the file ``private/drop_upload_dircap`` under
the gateway's node directory, rather than in its ``tahoe.cfg``.
(`#1593`_)
2012-07-07 02:34:18 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_ftp.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_ftp.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_ftp.pyo
|
2021-03-18 18:32:25 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_happiness.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_happiness.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_happiness.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_hashtree.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_hashtree.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_hashtree.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_hashutil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_hashutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_hashutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_helper.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_helper.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_helper.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_humanreadable.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_humanreadable.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_humanreadable.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_hung_server.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_hung_server.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_hung_server.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_i2p_provider.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_i2p_provider.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_i2p_provider.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_immutable.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_immutable.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_immutable.pyo
|
2011-11-09 01:30:12 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_import.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_import.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_import.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_introducer.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_introducer.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_introducer.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_iputil.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_iputil.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_iputil.pyo
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_json_metadata.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_json_metadata.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_json_metadata.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_log.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_log.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_log.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_monitor.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_monitor.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_monitor.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_multi_introducers.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_multi_introducers.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_multi_introducers.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_netstring.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_netstring.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_netstring.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_no_network.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_no_network.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_no_network.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_node.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_node.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_node.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_observer.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_observer.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_observer.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_pipeline.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_pipeline.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_pipeline.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_python2_regressions.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_python2_regressions.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_python2_regressions.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_python3.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_python3.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_python3.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_repairer.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_repairer.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_repairer.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_runner.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_runner.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_runner.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_sftp.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_sftp.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_sftp.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_spans.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_spans.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_spans.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_statistics.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_statistics.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_statistics.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_stats.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_stats.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_stats.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage.pyo
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_storage_client.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage_client.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage_client.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_storage_web.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage_web.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_storage_web.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_system.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_system.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_system.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_testing.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_testing.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_testing.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_time_format.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_time_format.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_time_format.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_tor_provider.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_tor_provider.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_tor_provider.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/test/test_upload.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_upload.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_upload.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_uri.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_uri.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_uri.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/test_util.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_util.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_util.pyo
|
2011-02-01 03:05:18 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_version.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_version.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_version.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/test_websocket_logs.py
|
|
|
|
${PYSITELIB}/allmydata/test/test_websocket_logs.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/test_websocket_logs.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/web/common.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/common.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/matchers.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/matchers.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/matchers.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/test_grid.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_grid.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_grid.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_introducer.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_introducer.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_introducer.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/test_logs.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_logs.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_logs.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_private.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_private.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_private.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/test_root.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_root.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_root.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/test_status.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_status.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_status.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/test/web/test_token.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_token.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_token.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_util.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_util.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_util.pyo
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_web.py
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_web.pyc
|
|
|
|
${PYSITELIB}/allmydata/test/web/test_web.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/testing/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/testing/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/testing/__init__.pyo
|
|
|
|
${PYSITELIB}/allmydata/testing/web.py
|
|
|
|
${PYSITELIB}/allmydata/testing/web.pyc
|
|
|
|
${PYSITELIB}/allmydata/testing/web.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/unknown.py
|
|
|
|
${PYSITELIB}/allmydata/unknown.pyc
|
|
|
|
${PYSITELIB}/allmydata/unknown.pyo
|
|
|
|
${PYSITELIB}/allmydata/uri.py
|
|
|
|
${PYSITELIB}/allmydata/uri.pyc
|
|
|
|
${PYSITELIB}/allmydata/uri.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/util/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/__init__.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/util/_python3.py
|
|
|
|
${PYSITELIB}/allmydata/util/_python3.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/_python3.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/abbreviate.py
|
|
|
|
${PYSITELIB}/allmydata/util/abbreviate.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/abbreviate.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/assertutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/assertutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/assertutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/base32.py
|
|
|
|
${PYSITELIB}/allmydata/util/base32.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/base32.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/base62.py
|
|
|
|
${PYSITELIB}/allmydata/util/base62.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/base62.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/util/configutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/configutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/configutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/connection_status.py
|
|
|
|
${PYSITELIB}/allmydata/util/connection_status.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/connection_status.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/consumer.py
|
|
|
|
${PYSITELIB}/allmydata/util/consumer.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/consumer.pyo
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/util/dbutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/dbutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/dbutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/deferredutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/deferredutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/deferredutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/dictutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/dictutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/dictutil.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/util/eliotutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/eliotutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/eliotutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/encodingutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/encodingutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/encodingutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/fileutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/fileutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/fileutil.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/util/gcutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/gcutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/gcutil.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/happinessutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/happinessutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/happinessutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/hashutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/hashutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/hashutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/humanreadable.py
|
|
|
|
${PYSITELIB}/allmydata/util/humanreadable.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/humanreadable.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/util/i2p_provider.py
|
|
|
|
${PYSITELIB}/allmydata/util/i2p_provider.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/i2p_provider.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/idlib.py
|
|
|
|
${PYSITELIB}/allmydata/util/idlib.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/idlib.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/iputil.py
|
|
|
|
${PYSITELIB}/allmydata/util/iputil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/iputil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/log.py
|
|
|
|
${PYSITELIB}/allmydata/util/log.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/log.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/mathutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/mathutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/mathutil.pyo
|
2015-08-14 22:37:43 +02:00
|
|
|
${PYSITELIB}/allmydata/util/namespace.py
|
|
|
|
${PYSITELIB}/allmydata/util/namespace.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/namespace.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/netstring.py
|
|
|
|
${PYSITELIB}/allmydata/util/netstring.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/netstring.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/observer.py
|
|
|
|
${PYSITELIB}/allmydata/util/observer.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/observer.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/pipeline.py
|
|
|
|
${PYSITELIB}/allmydata/util/pipeline.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/pipeline.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/pollmixin.py
|
|
|
|
${PYSITELIB}/allmydata/util/pollmixin.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/pollmixin.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/util/progress.py
|
|
|
|
${PYSITELIB}/allmydata/util/progress.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/progress.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/rrefutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/rrefutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/rrefutil.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/sibpath.py
|
|
|
|
${PYSITELIB}/allmydata/util/sibpath.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/sibpath.pyo
|
Update to 1.8.0.
* Release 1.8.0 (2010-09-23)
** New Features
- A completely new downloader which improves performance and
robustness of immutable-file downloads. It uses the fastest K
servers to download the data in K-way parallel. It automatically
fails over to alternate servers if servers fail in mid-download. It
allows seeking to arbitrary locations in the file (the previous
downloader which would only read the entire file sequentially from
beginning to end). It minimizes unnecessary round trips and
unnecessary bytes transferred to improve performance. It sends
requests to fewer servers to reduce the load on servers (the
previous one would send a small request to every server for every
download) (#287, #288, #448, #798, #800, #990, #1170, #1191)
- Non-ASCII command-line arguments and non-ASCII outputs now work on
Windows. In addition, the command-line tool now works on 64-bit
Windows. (#1074)
** Bugfixes and Improvements
- Document and clean up the command-line options for specifying the
node's base directory. (#188, #706, #715, #772, #1108)
- The default node directory for Windows is ".tahoe" in the user's
home directory, the same as on other platforms. (#890)
- Fix a case in which full cap URIs could be logged. (#685, #1155)
- Fix bug in WUI in Python 2.5 when the system clock is set back to
1969. Now you can use Tahoe-LAFS with Python 2.5 and set your
system clock to 1969 and still use the WUI. (#1055)
- Many improvements in code organization, tests, logging,
documentation, and packaging. (#983, #1074, #1108, #1127, #1129,
#1131, #1166, #1175)
2010-09-24 20:20:59 +02:00
|
|
|
${PYSITELIB}/allmydata/util/spans.py
|
|
|
|
${PYSITELIB}/allmydata/util/spans.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/spans.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/util/statistics.py
|
|
|
|
${PYSITELIB}/allmydata/util/statistics.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/statistics.pyo
|
|
|
|
${PYSITELIB}/allmydata/util/time_format.py
|
|
|
|
${PYSITELIB}/allmydata/util/time_format.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/time_format.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/util/tor_provider.py
|
|
|
|
${PYSITELIB}/allmydata/util/tor_provider.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/tor_provider.pyo
|
2011-02-01 03:05:18 +01:00
|
|
|
${PYSITELIB}/allmydata/util/verlib.py
|
|
|
|
${PYSITELIB}/allmydata/util/verlib.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/verlib.pyo
|
2017-01-28 10:09:50 +01:00
|
|
|
${PYSITELIB}/allmydata/util/yamlutil.py
|
|
|
|
${PYSITELIB}/allmydata/util/yamlutil.pyc
|
|
|
|
${PYSITELIB}/allmydata/util/yamlutil.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/version_checks.py
|
|
|
|
${PYSITELIB}/allmydata/version_checks.pyc
|
|
|
|
${PYSITELIB}/allmydata/version_checks.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/web/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/__init__.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/_autobahn_1151.py
|
|
|
|
${PYSITELIB}/allmydata/web/_autobahn_1151.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/_autobahn_1151.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/check-and-repair-results.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/check-results.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/check_results.py
|
|
|
|
${PYSITELIB}/allmydata/web/check_results.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/check_results.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/common.py
|
|
|
|
${PYSITELIB}/allmydata/web/common.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/common.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/common_py3.py
|
|
|
|
${PYSITELIB}/allmydata/web/common_py3.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/common_py3.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/deep-check-and-repair-results.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/deep-check-results.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/directory.py
|
|
|
|
${PYSITELIB}/allmydata/web/directory.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/directory.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/directory.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/download-status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/filenode.py
|
|
|
|
${PYSITELIB}/allmydata/web/filenode.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/filenode.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/helper.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/info.py
|
|
|
|
${PYSITELIB}/allmydata/web/info.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/info.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/info.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/introducer.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/introweb.py
|
|
|
|
${PYSITELIB}/allmydata/web/introweb.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/introweb.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/literal-check-results.xhtml
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/logs.py
|
|
|
|
${PYSITELIB}/allmydata/web/logs.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/logs.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/manifest.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/map-update-status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/operations.py
|
|
|
|
${PYSITELIB}/allmydata/web/operations.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/operations.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/private.py
|
|
|
|
${PYSITELIB}/allmydata/web/private.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/private.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/publish-status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/rename-form.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/retrieve-status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/root.py
|
|
|
|
${PYSITELIB}/allmydata/web/root.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/root.pyo
|
Update to:
Release 1.10.0 (2013-05-01)
'''''''''''''''''''''''''''
New Features
------------
- The Welcome page has been redesigned. This is a preview of the design style
that is likely to be used in other parts of the WUI in future Tahoe-LAFS
versions. (`#1713`_, `#1457`_, `#1735`_)
- A new extensible Introducer protocol has been added, as the basis for
future improvements such as accounting. Compatibility with older nodes is
not affected. When server, introducer, and client are all upgraded, the
welcome page will show node IDs that start with "v0-" instead of the old
tubid. See `<docs/nodekeys.rst>`__ for details. (`#466`_)
- The web-API has a new ``relink`` operation that supports directly moving
files between directories. (`#1579`_)
Security Improvements
---------------------
- The ``introducer.furl`` for new Introducers is now unguessable. In previous
releases, this FURL used a predictable swissnum, allowing a network
eavesdropper who observes any node connecting to the Introducer to access
the Introducer themselves, and thus use servers or offer storage service to
clients (i.e. "join the grid"). In the new code, the only way to join a
grid is to be told the ``introducer.furl`` by someone who already knew it.
Note that pre-existing introducers are not changed. To force an introducer
to generate a new FURL, delete the existing ``introducer.furl`` file and
restart it. After doing this, the ``[client]introducer.furl`` setting of
every client and server that should connect to that introducer must be
updated. Note that other users of a shared machine may be able to read
``introducer.furl`` from your ``tahoe.cfg`` file unless you configure the
file permissions to prevent them. (`#1802`_)
- Both ``introducer.furl`` and ``helper.furl`` are now censored from the
Welcome page, to prevent users of your gateway from learning enough to
create gateway nodes of their own. For existing guessable introducer
FURLs, the ``introducer`` swissnum is still displayed to show that a
guessable FURL is in use. (`#860`_)
Command-line Syntax Changes
---------------------------
- Global options to ``tahoe``, such as ``-d``/``--node-directory``, must now
come before rather than after the command name (for example,
``tahoe -d BASEDIR cp -r foo: bar:`` ). (`#166`_)
Notable Bugfixes
----------------
- In earlier versions, if a connection problem caused a download failure for
an immutable file, subsequent attempts to download the same file could also
fail. This is now fixed. (`#1679`_)
- Filenames in WUI directory pages are now displayed correctly when they
contain characters that require HTML escaping. (`#1143`_)
- Non-ASCII node nicknames no longer cause WUI errors. (`#1298`_)
- Checking a LIT file using ``tahoe check`` no longer results in an
exception. (`#1758`_)
- The SFTP frontend now works with recent versions of Twisted, rather than
giving errors or warnings about use of ``IFinishableConsumer``. (`#1926`_,
`#1564`_, `#1525`_)
- ``tahoe cp --verbose`` now counts the files being processed correctly.
(`#1805`_, `#1783`_)
- Exceptions no longer trigger an unhelpful crash reporter on Ubuntu 12.04
("Precise") or later. (`#1746`_)
- The error message displayed when a CLI tool cannot connect to a gateway has
been improved. (`#974`_)
- Other minor fixes: `#1781`_, `#1812`_, `#1915`_, `#1484`_, `#1525`_
Other Changes
-------------
- The provisioning/reliability pages were removed from the main client's web
interface, and moved into a standalone web-based tool. Use the ``run.py``
script in ``misc/operations_helpers/provisioning/`` to access them.
- Web clients can now cache (ETag) immutable directory pages. (`#443`_)
- `<docs/convergence_secret.rst>`__ was added to document the adminstration
of convergence secrets. (`#1761`_)
2013-05-02 01:59:53 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/css/bootstrap.css
|
|
|
|
${PYSITELIB}/allmydata/web/static/css/new-tahoe.css
|
Update to 1.9.2.
Release 1.9.2 (2012-07-03)
----------------------------
Notable Bugfixes
''''''''''''''''
- Several regressions in support for reading (`#1636`_), writing/modifying
(`#1670`_, `#1749`_), verifying (`#1628`_) and repairing (`#1655`_, `#1669`_,
`#1676`_, `#1689`_) mutable files have been fixed.
- FTP can now list directories containing mutable files, although it
still does not support reading or writing mutable files. (`#680`_)
- The FTP frontend would previously show Jan 1 1970 for all timestamps;
now it shows the correct modification time of the directory entry.
(`#1688`_)
- If a node is configured to report incidents to a log gatherer, but the
gatherer is offline when some incidents occur, it would previously not
"catch up" with those incidents as intended. (`#1725`_)
- OpenBSD 5 is now supported. (`#1584`_)
- The ``count-good-share-hosts`` field of file check results is now
computed correctly. (`#1115`_)
Configuration/Behavior Changes
''''''''''''''''''''''''''''''
- The capability of the upload directory for the drop-upload frontend
is now specified in the file ``private/drop_upload_dircap`` under
the gateway's node directory, rather than in its ``tahoe.cfg``.
(`#1593`_)
2012-07-07 02:34:18 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/icon.png
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-no.png
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-no.svg
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-not-configured.png
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-not-configured.svg
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-yes.png
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/connected-yes.svg
|
Update to 1.10.1:
Release 1.10.1 (2015-06-15)
'''''''''''''''''''''''''''
User Interface / Configuration Changes
--------------------------------------
The "``tahoe cp``" CLI command's ``--recursive`` option is now more predictable,
but behaves slightly differently than before. See below for details. Tickets
`#712`_, `#2329`_.
The SFTP server can now use public-key authentication (instead of only
password-based auth). Public keys are configured through an "account file",
just like passwords. See docs/frontends/FTP-and-SFTP for examples of the
format. `#1411`_
The Tahoe node can now be configured to disable automatic IP-address
detection. Using "AUTO" in tahoe.cfg [node]tub.location= (which is now the
default) triggers autodetection. Omit "AUTO" to disable autodetection. "AUTO"
can be combined with static addresses to e.g. use both a stable
UPnP-configured tunneled address and a DHCP-assigned dynamic (local subnet
only) address. See `configuration.rst`_ for details. `#754`_
The web-based user interface ("WUI") Directory and Welcome pages have been
redesigned, with improved CSS for narrow windows and more-accessible icons
(using distinctive shapes instead of just colors). `#1931`_ `#1961`_ `#1966`_
`#1972`_ `#1901`_
.. _`#712`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/712
.. _`#754`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
.. _`#1411`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1411
.. _`#1901`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1901
.. _`#1931`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1931
.. _`#1961`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1961
.. _`#1966`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1966
.. _`#1972`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1972
.. _`#2329`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2329
.. _`configuration.rst`: docs/configuration.rst
"tahoe cp" changes
------------------
The many ``cp``-like tools in the Unix world (POSIX ``/bin/cp``, the ``scp``
provided by SSH, ``rsync``) all behave slightly differently in unusual
circumstances, especially when copying whole directories into a target that
may or may not already exist. The most common difference is whether the user
is referring to the source directory as a whole, or to its contents. For
example, should "``cp -r foodir bardir``" create a new directory named
"``bardir/foodir``"? Or should it behave more like "``cp -r foodir/* bardir``"?
Some tools use the presence of a trailing slash to indicate which behavior
you want. Others ignore trailing slashes.
"``tahoe cp``" is no exception to having exceptional cases. This release fixes
some bad behavior and attempts to establish a consistent rationale for its
behavior. The new rule is:
- If the thing being copied is a directory, and it has a name (e.g. it's not
a raw Tahoe-LAFS directorycap), then you are referring to the directory
itself.
- If the thing being copied is an unnamed directory (e.g. raw dircap or
alias), then you are referring to the contents.
- Trailing slashes do not affect the behavior of the copy (although putting
a trailing slash on a file-like target is an error).
- The "``-r``" (``--recursive``) flag does not affect the behavior of the
copy (although omitting ``-r`` when the source is a directory is an error).
- If the target refers to something that does not yet exist:
- and if the source is a single file, then create a new file;
- otherwise, create a directory.
There are two main cases where the behavior of Tahoe-LAFS v1.10.1 differs
from that of the previous v1.10.0 release:
- "``cp DIRCAP/file.txt ./local/missing``" , where "``./local``" is a
directory but "``./local/missing``" does not exist. The implication is
that you want Tahoe to create a new file named "``./local/missing``" and
fill it with the contents of the Tahoe-side ``DIRCAP/file.txt``. In
v1.10.0, a plain "``cp``" would do just this, but "``cp -r``" would do
"``mkdir ./local/missing``" and then create a file named
"``./local/missing/file.txt``". In v1.10.1, both "``cp``" and "``cp -r``"
create a file named "``./local/missing``".
- "``cp -r PARENTCAP/dir ./local/missing``", where ``PARENTCAP/dir/``
contains "``file.txt``", and again "``./local``" is a directory but
"``./local/missing``" does not exist. In both v1.10.0 and v1.10.1, this
first does "``mkdir ./local/missing``". In v1.10.0, it would then copy
the contents of the source directory into the new directory, resulting
in "``./local/missing/file.txt``". In v1.10.1, following the new rule
of "a named directory source refers to the directory itself", the tool
creates "``./local/missing/dir/file.txt``".
Compatibility and Dependency Updates
------------------------------------
Windows now requires Python 2.7. Unix/OS-X platforms can still use either
Python 2.6 or 2.7, however this is probably the last release that will
support 2.6 (it is no longer receiving security updates, and most OS
distributions have switched to 2.7). Tahoe-LAFS now has the following
dependencies:
- Twisted >= 13.0.0
- Nevow >= 0.11.1
- foolscap >= 0.8.0
- service-identity
- characteristic >= 14.0.0
- pyasn1 >= 0.1.4
- pyasn1-modules >= 0.0.5
On Windows, if pywin32 is not installed then the dependencies on Twisted
and Nevow become:
- Twisted >= 11.1.0, <= 12.1.0
- Nevow >= 0.9.33, <= 0.10
On all platforms, if pyOpenSSL >= 0.14 is installed, then it will be used,
but if not then only pyOpenSSL >= 0.13, <= 0.13.1 will be built when directly
invoking `setup.py build` or `setup.py install`.
We strongly advise OS packagers to take the option of making a tahoe-lafs
package depend on pyOpenSSL >= 0.14. In order for that to work, the following
additional Python dependencies are needed:
- cryptography
- cffi >= 0.8
- six >= 1.4.1
- enum34
- pycparser
as well as libffi (for Debian/Ubuntu, the name of the needed OS package is
`libffi6`).
Tahoe-LAFS is now compatible with Setuptools version 8 and Pip version 6 or
later, which should fix execution on Ubuntu 15.04 (it now tolerates PEP440
semantics in dependency specifications). `#2354`_ `#2242`_
Tahoe-LAFS now depends upon foolscap-0.8.0, which creates better private keys
and certificates than previous versions. To benefit from the improvements
(2048-bit RSA keys and SHA256-based certificates), you must re-generate your
Tahoe nodes (which changes their TubIDs and FURLs). `#2400`_
.. _`#2242`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2242
.. _`#2354`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2354
.. _`#2400`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2400
Packaging
---------
A preliminary OS-X package, named "``tahoe-lafs-VERSION-osx.pkg``", is now
being generated. It is a standard double-clickable installer, which creates
``/Applications/tahoe.app`` that embeds a complete runtime tree. However
launching the ``.app`` only brings up a notice on how to run tahoe from the
command line. A future release may turn this into a fully-fledged application
launcher. `#182`_ `#2393`_ `#2323`_
Preliminary Docker support was added. Tahoe container images may be available
on DockerHub. `PR#165`_ `#2419`_ `#2421`_
Old and obsolete Debian packaging tools have been removed. `#2282`_
.. _`#182`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/182
.. _`#2282`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2282
.. _`#2323`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2323
.. _`#2393`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2393
.. _`#2419`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2419
.. _`#2421`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2421
.. _`PR#165`: https://github.com/tahoe-lafs/tahoe-lafs/pull/165
Minor Changes
-------------
- Welcome page: add per-server "(space) Available" column. `#648`_
- check/deep-check learned to accept multiple location arguments. `#740`_
- Checker reports: remove needs-rebalancing, add count-happiness. `#1784`_ `#2105`_
- CLI ``--help``: cite (but don't list) global options on each command. `#2233`_
- Fix ftp "``ls``" to work with Twisted 15.0.0. `#2394`_
.. _`#648`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/648
.. _`#740`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/740
.. _`#1784`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1784
.. _`#2105`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2105
.. _`#2233`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2233
.. _`#2394`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2394
Roughly 75 tickets were closed in this release: 623 648 712 740 754 898 1146
1159 1336 1381 1411 1634 1674 1698 1707 1717 1737 1784 1800 1807 1842 1847
1901 1918 1953 1960 1961 1966 1969 1972 1974 1988 1992 2005 2008 2023 2027
2028 2034 2048 2067 2086 2105 2121 2128 2165 2193 2208 2209 2233 2235 2242
2245 2248 2249 2249 2280 2281 2282 2290 2305 2312 2323 2340 2354 2380 2393
2394 2398 2400 2415 2416 2417 2433. Another dozen were referenced but not
closed: 182 666 982 1064 1258 1531 1536 1742 1834 1931 1935 2286. Roughly 40
GitHub pull-requests were closed: 32 48 50 56 57 61 62 62 63 64 69 73 81 82
84 85 87 91 94 95 96 103 107 109 112 114 120 122 125 126 133 135 136 137 142
146 149 152 165.
For more information about any ticket, visit e.g.
https://tahoe-lafs.org/trac/tahoe-lafs/ticket/754
2015-07-01 15:58:21 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/img/logo.png
|
Update to 1.9.2.
Release 1.9.2 (2012-07-03)
----------------------------
Notable Bugfixes
''''''''''''''''
- Several regressions in support for reading (`#1636`_), writing/modifying
(`#1670`_, `#1749`_), verifying (`#1628`_) and repairing (`#1655`_, `#1669`_,
`#1676`_, `#1689`_) mutable files have been fixed.
- FTP can now list directories containing mutable files, although it
still does not support reading or writing mutable files. (`#680`_)
- The FTP frontend would previously show Jan 1 1970 for all timestamps;
now it shows the correct modification time of the directory entry.
(`#1688`_)
- If a node is configured to report incidents to a log gatherer, but the
gatherer is offline when some incidents occur, it would previously not
"catch up" with those incidents as intended. (`#1725`_)
- OpenBSD 5 is now supported. (`#1584`_)
- The ``count-good-share-hosts`` field of file check results is now
computed correctly. (`#1115`_)
Configuration/Behavior Changes
''''''''''''''''''''''''''''''
- The capability of the upload directory for the drop-upload frontend
is now specified in the file ``private/drop_upload_dircap`` under
the gateway's node directory, rather than in its ``tahoe.cfg``.
(`#1593`_)
2012-07-07 02:34:18 +02:00
|
|
|
${PYSITELIB}/allmydata/web/static/tahoe.css
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/statistics.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/status.py
|
|
|
|
${PYSITELIB}/allmydata/web/status.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/status.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/storage.py
|
|
|
|
${PYSITELIB}/allmydata/web/storage.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/storage.pyo
|
2021-03-18 18:57:08 +01:00
|
|
|
${PYSITELIB}/allmydata/web/storage_plugins.py
|
|
|
|
${PYSITELIB}/allmydata/web/storage_plugins.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/storage_plugins.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/web/storage_status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/unlinked.py
|
|
|
|
${PYSITELIB}/allmydata/web/unlinked.pyc
|
|
|
|
${PYSITELIB}/allmydata/web/unlinked.pyo
|
|
|
|
${PYSITELIB}/allmydata/web/upload-results.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/upload-status.xhtml
|
|
|
|
${PYSITELIB}/allmydata/web/welcome.xhtml
|
|
|
|
${PYSITELIB}/allmydata/webish.py
|
|
|
|
${PYSITELIB}/allmydata/webish.pyc
|
|
|
|
${PYSITELIB}/allmydata/webish.pyo
|
|
|
|
${PYSITELIB}/allmydata/windows/__init__.py
|
|
|
|
${PYSITELIB}/allmydata/windows/__init__.pyc
|
|
|
|
${PYSITELIB}/allmydata/windows/__init__.pyo
|
Update to 1.8.0.
* Release 1.8.0 (2010-09-23)
** New Features
- A completely new downloader which improves performance and
robustness of immutable-file downloads. It uses the fastest K
servers to download the data in K-way parallel. It automatically
fails over to alternate servers if servers fail in mid-download. It
allows seeking to arbitrary locations in the file (the previous
downloader which would only read the entire file sequentially from
beginning to end). It minimizes unnecessary round trips and
unnecessary bytes transferred to improve performance. It sends
requests to fewer servers to reduce the load on servers (the
previous one would send a small request to every server for every
download) (#287, #288, #448, #798, #800, #990, #1170, #1191)
- Non-ASCII command-line arguments and non-ASCII outputs now work on
Windows. In addition, the command-line tool now works on 64-bit
Windows. (#1074)
** Bugfixes and Improvements
- Document and clean up the command-line options for specifying the
node's base directory. (#188, #706, #715, #772, #1108)
- The default node directory for Windows is ".tahoe" in the user's
home directory, the same as on other platforms. (#890)
- Fix a case in which full cap URIs could be logged. (#685, #1155)
- Fix bug in WUI in Python 2.5 when the system clock is set back to
1969. Now you can use Tahoe-LAFS with Python 2.5 and set your
system clock to 1969 and still use the WUI. (#1055)
- Many improvements in code organization, tests, logging,
documentation, and packaging. (#983, #1074, #1108, #1127, #1129,
#1131, #1166, #1175)
2010-09-24 20:20:59 +02:00
|
|
|
${PYSITELIB}/allmydata/windows/fixups.py
|
|
|
|
${PYSITELIB}/allmydata/windows/fixups.pyc
|
|
|
|
${PYSITELIB}/allmydata/windows/fixups.pyo
|
2010-07-24 20:14:27 +02:00
|
|
|
${PYSITELIB}/allmydata/windows/registry.py
|
|
|
|
${PYSITELIB}/allmydata/windows/registry.pyc
|
|
|
|
${PYSITELIB}/allmydata/windows/registry.pyo
|
Update to 1.8.0.
* Release 1.8.0 (2010-09-23)
** New Features
- A completely new downloader which improves performance and
robustness of immutable-file downloads. It uses the fastest K
servers to download the data in K-way parallel. It automatically
fails over to alternate servers if servers fail in mid-download. It
allows seeking to arbitrary locations in the file (the previous
downloader which would only read the entire file sequentially from
beginning to end). It minimizes unnecessary round trips and
unnecessary bytes transferred to improve performance. It sends
requests to fewer servers to reduce the load on servers (the
previous one would send a small request to every server for every
download) (#287, #288, #448, #798, #800, #990, #1170, #1191)
- Non-ASCII command-line arguments and non-ASCII outputs now work on
Windows. In addition, the command-line tool now works on 64-bit
Windows. (#1074)
** Bugfixes and Improvements
- Document and clean up the command-line options for specifying the
node's base directory. (#188, #706, #715, #772, #1108)
- The default node directory for Windows is ".tahoe" in the user's
home directory, the same as on other platforms. (#890)
- Fix a case in which full cap URIs could be logged. (#685, #1155)
- Fix bug in WUI in Python 2.5 when the system clock is set back to
1969. Now you can use Tahoe-LAFS with Python 2.5 and set your
system clock to 1969 and still use the WUI. (#1055)
- Many improvements in code organization, tests, logging,
documentation, and packaging. (#983, #1074, #1108, #1127, #1129,
#1131, #1166, #1175)
2010-09-24 20:20:59 +02:00
|
|
|
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/entry_points.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/requires.txt
|
|
|
|
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
|