Skip to content

Commit

Permalink
Merge 9570e4b into f44574f
Browse files Browse the repository at this point in the history
  • Loading branch information
meejah committed Jan 5, 2024
2 parents f44574f + 9570e4b commit c03dd78
Show file tree
Hide file tree
Showing 117 changed files with 108 additions and 53 deletions.
75 changes: 75 additions & 0 deletions NEWS.rst
Expand Up @@ -5,6 +5,81 @@ User-Visible Changes in Tahoe-LAFS
==================================

.. towncrier start line
Release 1.190 (2024-01-04)
''''''''''''''''''''''''''

Features
--------

- Tahoe-LAFS now includes a new "Grid Manager" specification and implementation adding more options to control which storage servers a client will use for uploads. (`#2916 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2916>`_)
- Added support for Python 3.12, and work with Eliot 1.15 (`#3072 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3072>`_)
- The new HTTPS-based storage server is now enabled transparently on the same port as the Foolscap server. This will not have any user-facing impact until the HTTPS storage protocol is supported in clients as well. (`#3902 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3902>`_)
- `tahoe run ...` will now exit when its stdin is closed.

This facilitates subprocess management, specifically cleanup.
When a parent process is running tahoe and exits without time to do "proper" cleanup at least the stdin descriptor will be closed.
Subsequently "tahoe run" notices this and exits. (`#3921 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3921>`_)
- Mutable objects can now be created with a pre-determined "signature key" using the ``tahoe put`` CLI or the HTTP API. This enables deterministic creation of mutable capabilities. This feature must be used with care to preserve the normal security and reliability properties. (`#3962 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3962>`_)
- Added support for Python 3.11. (`#3982 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3982>`_)
- tahoe run now accepts --allow-stdin-close to mean "keep running if stdin closes" (`#4036 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4036>`_)
- The storage server and client now support a new, HTTPS-based protocol. (`#4041 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4041>`_)
- Started work on a new end-to-end benchmarking framework. (`#4060 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4060>`_)
- Some operations now run in threads, improving the responsiveness of Tahoe nodes. (`#4068 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4068>`_)
- Logs are now written in a thread, which should make the application more responsive under load. (`#4804 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4804>`_)


Bug Fixes
---------

- Provide better feedback from plugin configuration errors

Local errors now print a useful message and exit.
Announcements that only contain invalid / unusable plugins now show a message in the Welcome page. (`#3899 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3899>`_)
- Work with (and require) newer versions of pycddl. (`#3938 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3938>`_)
- Uploading immutables will now better use available bandwidth, which should allow for faster uploads in many cases. (`#3939 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3939>`_)
- Downloads of large immutables should now finish much faster. (`#3946 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3946>`_)
- Fix incompatibility with transitive dependency charset_normalizer >= 3 when using PyInstaller. (`#3966 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3966>`_)
- A bug where Introducer nodes configured to listen on Tor or I2P would not actually do so has been fixed. (`#3999 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3999>`_)
- The (still off-by-default) HTTP storage client will now use Tor when Tor-based client-side anonymity was requested.
Previously it would use normal TCP connections and not be anonymous. (`#4029 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4029>`_)
- Provide our own copy of attrs' "provides()" validator

This validator is deprecated and slated for removal; that project's suggestion is to copy the code to our project. (`#4056 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4056>`_)
- Fix a race condition with SegmentFetcher (`#4078 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4078>`_)


Dependency/Installation Changes
-------------------------------

- tenacity is no longer a dependency. (`#3989 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3989>`_)
- Tahoe-LAFS is incompatible with cryptography >= 40 and now declares a requirement on an older version. (`#3997 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3997>`_)


Documentation Changes
---------------------

- Several minor errors in the Great Black Swamp proposed specification document have been fixed. (`#3922 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3922>`_)
- Document the ``force_foolscap`` configuration options for ``[storage]`` and ``[client]``. (`#4039 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4039>`_)


Removed Features
----------------

- Python 3.7 is no longer supported, and Debian 10 and Ubuntu 18.04 are no longer tested. (`#3964 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3964>`_)


Other Changes
-------------

- The integration test suite now includes a set of capability test vectors (``integration/vectors/test_vectors.yaml``) which can be used to verify compatibility between Tahoe-LAFS and other implementations. (`#3961 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3961>`_)


Misc/Other
----------

- `#3508 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3508>`_, `#3622 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3622>`_, `#3783 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3783>`_, `#3870 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3870>`_, `#3874 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3874>`_, `#3880 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3880>`_, `#3904 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3904>`_, `#3910 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3910>`_, `#3914 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3914>`_, `#3917 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3917>`_, `#3927 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3927>`_, `#3928 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3928>`_, `#3935 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3935>`_, `#3936 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3936>`_, `#3937 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3937>`_, `#3940 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3940>`_, `#3942 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3942>`_, `#3944 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3944>`_, `#3947 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3947>`_, `#3950 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3950>`_, `#3952 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3952>`_, `#3953 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3953>`_, `#3954 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3954>`_, `#3956 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3956>`_, `#3958 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3958>`_, `#3959 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3959>`_, `#3960 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3960>`_, `#3965 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3965>`_, `#3967 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3967>`_, `#3968 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3968>`_, `#3969 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3969>`_, `#3970 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3970>`_, `#3971 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3971>`_, `#3974 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3974>`_, `#3975 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3975>`_, `#3976 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3976>`_, `#3978 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3978>`_, `#3987 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3987>`_, `#3988 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3988>`_, `#3991 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3991>`_, `#3993 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3993>`_, `#3994 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3994>`_, `#3996 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3996>`_, `#3998 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3998>`_, `#4000 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4000>`_, `#4001 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4001>`_, `#4002 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4002>`_, `#4003 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4003>`_, `#4004 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4004>`_, `#4005 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4005>`_, `#4006 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4006>`_, `#4009 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4009>`_, `#4010 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4010>`_, `#4012 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4012>`_, `#4014 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4014>`_, `#4015 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4015>`_, `#4016 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4016>`_, `#4018 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4018>`_, `#4019 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4019>`_, `#4020 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4020>`_, `#4022 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4022>`_, `#4023 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4023>`_, `#4024 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4024>`_, `#4026 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4026>`_, `#4027 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4027>`_, `#4028 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4028>`_, `#4035 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4035>`_, `#4038 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4038>`_, `#4040 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4040>`_, `#4042 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4042>`_, `#4044 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4044>`_, `#4046 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4046>`_, `#4047 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4047>`_, `#4049 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4049>`_, `#4050 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4050>`_, `#4051 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4051>`_, `#4052 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4052>`_, `#4055 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4055>`_, `#4059 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4059>`_, `#4061 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4061>`_, `#4062 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4062>`_, `#4063 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4063>`_, `#4065 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4065>`_, `#4066 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4066>`_, `#4070 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4070>`_, `#4074 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4074>`_, `#4075 <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4075>`_


Release 1.18.0 (2022-10-02)
'''''''''''''''''''''''''''

Expand Down
1 change: 0 additions & 1 deletion newsfragments/2916.feature

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3072.feature

This file was deleted.

Empty file removed newsfragments/3508.minor
Empty file.
Empty file removed newsfragments/3622.minor
Empty file.
Empty file removed newsfragments/3783.minor
Empty file.
Empty file removed newsfragments/3870.minor
Empty file.
Empty file removed newsfragments/3874.minor
Empty file.
Empty file removed newsfragments/3880.minor
Empty file.
4 changes: 0 additions & 4 deletions newsfragments/3899.bugfix

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3902.feature

This file was deleted.

Empty file removed newsfragments/3904.minor
Empty file.
Empty file removed newsfragments/3910.minor
Empty file.
Empty file removed newsfragments/3914.minor
Empty file.
Empty file removed newsfragments/3917.minor
Empty file.
5 changes: 0 additions & 5 deletions newsfragments/3921.feature

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3922.documentation

This file was deleted.

Empty file removed newsfragments/3927.minor
Empty file.
Empty file removed newsfragments/3928.minor
Empty file.
Empty file removed newsfragments/3935.minor
Empty file.
Empty file removed newsfragments/3936.minor
Empty file.
Empty file removed newsfragments/3937.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3938.bugfix

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3939.bugfix

This file was deleted.

Empty file removed newsfragments/3940.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3942.minor

This file was deleted.

Empty file removed newsfragments/3944.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3946.bugfix

This file was deleted.

Empty file removed newsfragments/3947.minor
Empty file.
Empty file removed newsfragments/3950.minor
Empty file.
Empty file removed newsfragments/3952.minor
Empty file.
Empty file removed newsfragments/3953.minor
Empty file.
Empty file removed newsfragments/3954.minor
Empty file.
Empty file removed newsfragments/3956.minor
Empty file.
Empty file removed newsfragments/3958.minor
Empty file.
Empty file removed newsfragments/3959.minor
Empty file.
Empty file removed newsfragments/3960.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3961.other

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3962.feature

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3964.removed

This file was deleted.

Empty file removed newsfragments/3965.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3966.bugfix

This file was deleted.

Empty file removed newsfragments/3967.minor
Empty file.
Empty file removed newsfragments/3968.minor
Empty file.
Empty file removed newsfragments/3969.minor
Empty file.
Empty file removed newsfragments/3970.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3971.minor

This file was deleted.

Empty file removed newsfragments/3974.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3975.minor

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/3976.minor

This file was deleted.

Empty file removed newsfragments/3978.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3982.feature

This file was deleted.

Empty file removed newsfragments/3987.minor
Empty file.
Empty file removed newsfragments/3988.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3989.installation

This file was deleted.

Empty file removed newsfragments/3991.minor
Empty file.
Empty file removed newsfragments/3993.minor
Empty file.
Empty file removed newsfragments/3994.minor
Empty file.
Empty file removed newsfragments/3996.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3997.installation

This file was deleted.

Empty file removed newsfragments/3998.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/3999.bugfix

This file was deleted.

Empty file removed newsfragments/4000.minor
Empty file.
Empty file removed newsfragments/4001.minor
Empty file.
Empty file removed newsfragments/4002.minor
Empty file.
Empty file removed newsfragments/4003.minor
Empty file.
Empty file removed newsfragments/4004.minor
Empty file.
Empty file removed newsfragments/4005.minor
Empty file.
Empty file removed newsfragments/4006.minor
Empty file.
Empty file removed newsfragments/4009.minor
Empty file.
Empty file removed newsfragments/4010.minor
Empty file.
Empty file removed newsfragments/4012.minor
Empty file.
Empty file removed newsfragments/4014.minor
Empty file.
Empty file removed newsfragments/4015.minor
Empty file.
Empty file removed newsfragments/4016.minor
Empty file.
Empty file removed newsfragments/4018.minor
Empty file.
Empty file removed newsfragments/4019.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4020.minor

This file was deleted.

Empty file removed newsfragments/4022.minor
Empty file.
Empty file removed newsfragments/4023.minor
Empty file.
Empty file removed newsfragments/4024.minor
Empty file.
Empty file removed newsfragments/4026.minor
Empty file.
Empty file removed newsfragments/4027.minor
Empty file.
Empty file removed newsfragments/4028.minor
Empty file.
2 changes: 0 additions & 2 deletions newsfragments/4029.bugfix

This file was deleted.

Empty file removed newsfragments/4035.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4036.feature

This file was deleted.

Empty file removed newsfragments/4038.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4039.documentation

This file was deleted.

Empty file removed newsfragments/4040.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4041.feature

This file was deleted.

Empty file removed newsfragments/4042.minor
Empty file.
Empty file removed newsfragments/4044.minor
Empty file.
Empty file removed newsfragments/4046.minor
Empty file.
Empty file removed newsfragments/4047.minor
Empty file.
Empty file removed newsfragments/4049.minor
Empty file.
Empty file removed newsfragments/4050.minor
Empty file.
Empty file removed newsfragments/4051.minor
Empty file.
Empty file removed newsfragments/4052.minor
Empty file.
Empty file removed newsfragments/4055.minor
Empty file.
3 changes: 0 additions & 3 deletions newsfragments/4056.bugfix

This file was deleted.

Empty file removed newsfragments/4059.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4060.feature

This file was deleted.

Empty file removed newsfragments/4061.minor
Empty file.
Empty file removed newsfragments/4062.minor
Empty file.
Empty file removed newsfragments/4063.minor
Empty file.
Empty file removed newsfragments/4065.minor
Empty file.
Empty file removed newsfragments/4066.minor
Empty file.
1 change: 0 additions & 1 deletion newsfragments/4068.feature

This file was deleted.

Empty file removed newsfragments/4070.minor
Empty file.
Empty file removed newsfragments/4074.minor
Empty file.
Empty file removed newsfragments/4075.minor
Empty file.
1 change: 1 addition & 0 deletions newsfragments/4076.minor
@@ -0,0 +1 @@
Release 1.19.0
1 change: 0 additions & 1 deletion newsfragments/4078.bugfix

This file was deleted.

1 change: 0 additions & 1 deletion newsfragments/4804.feature

This file was deleted.

2 changes: 1 addition & 1 deletion nix/tahoe-lafs.nix
@@ -1,6 +1,6 @@
let
pname = "tahoe-lafs";
version = "1.18.0.post1";
version = "1.19.0.post1";
in
{ lib
, pythonPackages
Expand Down
42 changes: 31 additions & 11 deletions relnotes.txt
@@ -1,6 +1,6 @@
ANNOUNCING Tahoe, the Least-Authority File Store, v1.18.0
ANNOUNCING Tahoe, the Least-Authority File Store, v1.19.0

The Tahoe-LAFS team is pleased to announce version 1.18.0 of
The Tahoe-LAFS team is pleased to announce version 1.19.0 of
Tahoe-LAFS, an extremely reliable decentralized storage
system. Get it with "pip install tahoe-lafs", or download a
tarball here:
Expand All @@ -15,12 +15,32 @@ unique security and fault-tolerance properties:

https://tahoe-lafs.readthedocs.org/en/latest/about.html

The previous stable release of Tahoe-LAFS was v1.17.1, released on
January 7, 2022.
The previous stable release of Tahoe-LAFS was v1.18.0, released on
October 2, 2022. Major new features and changes in this release:

This release drops support for Python 2 and for Python 3.6 and earlier.
twistd.pid is no longer used (in favour of one with pid + process creation time).
A collection of minor bugs and issues were also fixed.
A new "Grid Manager" feature allows clients to specify any number of
parties whom they will use to limit which storage-server that client
talks to. See docs/managed-grid.rst for more.

The new HTTP-based "Great Black Swamp" protocol is now enabled
(replacing Foolscap). This allows integrators to start with their
favourite HTTP library (instead of implementing Foolscap first). Both
storage-servers and clients support this new protocol.

`tahoe run` will now exit if its stdin is closed (but accepts --allow-stdin-close now).

Mutables may be created with a pre-determined signature key; care must
be taken!

This release drops Python 3.7 support and adds Python 3.11
support. Several performance improvements have been made. Introducer
correctly listens on Tor or I2P. Debian 10 and Ubuntu 20.04 are no
longer tested.

Besides all this there have been dozens of other bug-fixes and
improvements.

Enjoy!

Please see ``NEWS.rst`` [1] for a complete list of changes.

Expand Down Expand Up @@ -145,12 +165,12 @@ October 1, 2022
Planet Earth


[1] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.18.0/NEWS.rst
[1] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.19.0/NEWS.rst
[2] https://github.com/tahoe-lafs/tahoe-lafs/blob/master/docs/known_issues.rst
[3] https://tahoe-lafs.org/trac/tahoe-lafs/wiki/RelatedProjects
[4] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.18.0/COPYING.GPL
[5] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.18.0/COPYING.TGPPL.rst
[6] https://tahoe-lafs.readthedocs.org/en/tahoe-lafs-1.18.0/INSTALL.html
[4] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.19.0/COPYING.GPL
[5] https://github.com/tahoe-lafs/tahoe-lafs/blob/tahoe-lafs-1.19.0/COPYING.TGPPL.rst
[6] https://tahoe-lafs.readthedocs.org/en/tahoe-lafs-1.19.0/INSTALL.html
[7] https://lists.tahoe-lafs.org/mailman/listinfo/tahoe-dev
[8] https://tahoe-lafs.org/trac/tahoe-lafs/roadmap
[9] https://github.com/tahoe-lafs/tahoe-lafs/blob/master/CREDITS
Expand Down

0 comments on commit c03dd78

Please sign in to comment.