X-Git-Url: https://git.rkrishnan.org/?a=blobdiff_plain;f=NEWS.rst;h=1e860f4d26d6e80aeae45a51d8debb4020f6a983;hb=HEAD;hp=f181441ccd88c4ae26f7f17b8169222e67374f5b;hpb=21e9636116ba4a4b98bd73b2bd7b710dfeef8332;p=tahoe-lafs%2Ftahoe-lafs.git diff --git a/NEWS.rst b/NEWS.rst index f181441c..1e860f4d 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -4,162 +4,180 @@ User-Visible Changes in Tahoe-LAFS ================================== -Release 1.10.1 (XXXX-XX-XX) +Release ??? (???) + +Compatibility and Dependency Updates +------------------------------------ + +Tahoe now requires Python 2.7 on all platforms. (#2445) + +Tahoe now requires Foolscap 0.10.1, which fixes incompatibilities with recent +Twisted releases. (#2510, #2722, #2567) + +Tests should work with both Nevow 0.11 and 0.12 (#2663) + +Configuration Changes +--------------------- + +Leif's "preferred storage servers" was landed in revision 96eaca6. This adds +"peers.preferred" to tahoe.cfg + +Aliases can (probably) be unicode. + +The introducer's "set_encoding_parameters" feature was removed. + +Other Fixes +----------- + +Note: if these tickets are not user visible, they do not need to be explained +here: merely listing the ticket numbers is sufficient. + +#2493: OS-X packaging improvements, so new installs will remove previous ones + +2499, 2511, 2567, 2556, 2663, 2723, 2543 + +#1077: use standard time format in all WUI messages + +#1973: welcome-page cleanup: durations instead of timestamps, replace +"announced" with "last received", remove "storage" column + +#1949, #2137: tahoe ls: remove -u shortcut for "--uri", leaving it for +global --node-url option. + +Release 1.10.2 (2015-07-30) +''''''''''''''''''''''''''' + +Packaging Changes +----------------- + +This release no longer requires the ``mock`` library (which was previously +used in the unit test suite). Shortly after the Tahoe-LAFS 1.10.1 release, a +new version of ``mock`` was released (1.1.0) that proved to be incompatible +with Tahoe's fork of setuptools, preventing Tahoe-1.10.1 from building at +all. `#2465`_ + +The ``tahoe --version`` output is now less likely to include scary diagnostic +warnings that look deceptively like stack traces. `#2436`_ + +The pyasn1 requirement was increased to >= 0.1.8. + +.. _`#2465`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2465 +.. _`#2436`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2436 + +Other Fixes +----------- + +A WebAPI ``GET`` would sometimes hang when using the HTTP Range header to +read just part of the file. `#2459`_ + +Using ``tahoe cp`` to copy two different files of the same name into the same +target directory now raises an error, rather than silently overwriting one of +them. `#2447`_ + +All tickets closed in this release: 2328 2436 2446 2447 2459 2460 2461 2462 +2465 2470. + +.. _`#2459`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2459 +.. _`#2447`: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2447 + + +Release 1.10.1 (2015-06-15) ''''''''''''''''''''''''''' -Unedited list of all changes after 1.10.0 and up-to cf9b3828 07-Jun-2015. This -list is not yet limited to user-visible ones. It (hopefully) includes all -tickets closed during this time, even minor non-user-visible ones. - -Significant user-visible: -- py2.6 is now unsupported on windows -- 'tahoe cp -r' copies the top-level directory into new dir #712 -- improve welcome page CSS for narrow windows #1931 -- redesign WUI directory pages #1966 -- use "AUTO" in tahoe.cfg/node/tub.location to mean autodetect IP addresses. - Can be combined with static addresses, or turned off entirely. #754 -- 'tahoe cp -r': fix exception #2329 - -not-so significant user-visible: -- show git branch in version output #1953 -- improve user feedback when filing an Incident Report #1974 -- add page-rendering timestamp to WUI #1972 -- check/deep-check learned to accept multiple location args #740 -- various docs cleanups/improvements -- checker reports: remove needs-rebalancing, add count-happiness #1784 #2105 -- improve packaging under pip #2209 -- hush warnings during dep-checking, stop complaining about missing - "service_identity" dep #2248 -- fix "Download" button on welcome page #1901 -- WAPI: do not report 'size' metadata when unknown #1634 -- new OS-X packaging #182 -- stop using contents of .tac files #1159 -- improve version-number reporting #2340 -- add per-server "(space) Available" column to welcome page #648 -- add public-key auth to SFTP server #1411 -- `tahoe cp -r` changes w.r.t. unnamed directories #2329 -- replace WUI icons with distinct shapes for accessibility #1961 -- fix handling of long paths on windows #2235 #1674 #2027 -- depend on foolscap >= 0.8.0, which makes better keys #2400 -- initial Docker support PR#165 -- CLI --help rendering: cite (but do not list) global options on each command. #2233 -- add OpenSSL version to 'tahoe --version' #2215 - -not user-visible: -- remove unused 'human encoding' URI methods #1807 -- tests warn if tree is dirty #1992 -- Travis-CI turned on #2249 -- add 'distclean', don't remove egg-info during 'make clean' #2092 -- add "UTF-8 BOM" to all docs #1948 -- improve safety of timing_safe_compare() #2165 -- remove old darcs tooling -- minor comments #1874 #2086 -- improve test #2048 -- switch to unminified d3/jquery JS files #2208 -- reject furlfiles with "#" #2128 -- rename exit-trigger/self-destruct test feature #1336 -- add coverage.io test-coverage reporting #623 -- dedup license info in about.rst/README.txt #2067 -- log roothash in base32 not binary #1800 -- improve upload tests #2008 -- remove obsolete debian packaging tools #2282 -- add --coverage to setup.py test #1698, remove old coverage uploaders -- remove trialcoverage plugin #2281 -- tolerate disk-space-used=0 for travis boxes #2290 -- tolerate python subprocess bug #2023 -- remove old build_helpers tools #2305 -- update zetuptoolz -- hack windows/OpenSSL deps on windows #2249 #2193 -- tolerate PEP440 semantics in dependency specifications #2354 -- hush DeprecationWarning with twisted.web #2312 -- fix race condition during mutable upload -- fix MANIFEST.in warnings #2380 -- put version string into name of OS-X package: #2393 -- improve unicode handling of arguments to (S)FTPServer #2388 -- improve tests of test_mutable #2034 -- fix ftp 'ls' to work with Twisted-15.0.0 #2394 -- add docs/proposed/magic-folder -- remove named-path upload/download from control-port #1737 -- unicode handling on windows something #2398 -- zetuptoolz: tolerate single-string requirespec #2242 -- add icon for OS-X/windows #2323 -- accept newer Twisted (>=13) on windows if pywin32 is manually installed #2416 -- windows: find home directory on multiple versions of windows #2417 -- improve fileutil something #1531 - -unknown / needs-more-research: -- packaging fixes #1969 #1960 -- mutable/retrieve: raise NotEnoughSharesError earlier when the sharemap says - it's useless, and improve the error message #1742 -- improve what-is-my-ipv4 on windows/cygwin #1381 - - -all tickets noted as closed: 1953 1960 1974 1972 1717 1381 898 1707 1918 1807 -740 1842 1992 2165 1847 2086 2208 2048 2128 2245 1336 2248 2067 712 1800 1966 -2008 2282 2281 2290 2023 2121? 2305 1901 2249 2193 1634 1159 2340 1146 648 -1411 2354 1961 2380 754 2393 2394 1737 2398 2400 2242 2416 2415 2417 1969 -1988 1784 2105 2209 2280 623 2249 1698 2028 2005 2312 2235 1674 2027 2034 -2323 2433 2233 - -tickets referenced but not closed: 1834 1742 982 1064 1536 1935 666 1931 1258 -182 2286 1531 - -PRs noted as closed: 62 48 57 61 62 63 64 69 73 81 82 84 85 87 91 94 95 96 -103 56 32 50 107 109 114 112 120 122 125 126 133 135 136 137 142 146 149 152 -165 - -- "tahoe cp" changes: - -There are many "cp"-like tools in the unix world (POSIX /bin/cp, the "scp" -provided by SSH, rsync). They each behave slightly differently in unusual -circumstances, generally dealing with copying whole directories at a time, -into a target which may or may not exist already. The usual question 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"? +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 +"``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: +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 directorycap), then you are referring to the directory itself. + 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). +- 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-1.10.1 differs from that -of the 1.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 1.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 1.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 1.10.0 and 1.10.1, this first does "mkdir - ./local/missing". In 1.10.0, it would then copy the contents of the source - directory into the new directory, resulting in "./local/missing/file.txt". - In 1.10.1, following the new rule of "a named directory source refers to - the directory itself", the tool creates "./local/missing/dir/file.txt". - +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 @@ -191,8 +209,71 @@ additional Python dependencies are needed: 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. +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 Release 1.10.0 (2013-05-01)