From ee19fc5a181acbc2e63d4803961a9aa3ab08d3d2 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 4 Jan 2024 20:04:04 -0700 Subject: [PATCH 1/7] update NEWS.txt for release --- NEWS.rst | 81 ++++++++++++++++++++++++++++++++ newsfragments/2916.feature | 1 - newsfragments/3072.feature | 1 - newsfragments/3508.minor | 0 newsfragments/3622.minor | 0 newsfragments/3783.minor | 0 newsfragments/3870.minor | 0 newsfragments/3874.minor | 0 newsfragments/3880.minor | 0 newsfragments/3899.bugfix | 4 -- newsfragments/3902.feature | 1 - newsfragments/3904.minor | 0 newsfragments/3910.minor | 0 newsfragments/3914.minor | 0 newsfragments/3917.minor | 0 newsfragments/3921.feature | 5 -- newsfragments/3922.documentation | 1 - newsfragments/3927.minor | 0 newsfragments/3928.minor | 0 newsfragments/3935.minor | 0 newsfragments/3936.minor | 0 newsfragments/3937.minor | 0 newsfragments/3938.bugfix | 1 - newsfragments/3939.bugfix | 1 - newsfragments/3940.minor | 0 newsfragments/3942.minor | 1 - newsfragments/3944.minor | 0 newsfragments/3946.bugfix | 1 - newsfragments/3947.minor | 0 newsfragments/3950.minor | 0 newsfragments/3952.minor | 0 newsfragments/3953.minor | 0 newsfragments/3954.minor | 0 newsfragments/3956.minor | 0 newsfragments/3958.minor | 0 newsfragments/3959.minor | 0 newsfragments/3960.minor | 0 newsfragments/3961.other | 1 - newsfragments/3962.feature | 1 - newsfragments/3964.removed | 1 - newsfragments/3965.minor | 0 newsfragments/3966.bugfix | 1 - newsfragments/3967.minor | 0 newsfragments/3968.minor | 0 newsfragments/3969.minor | 0 newsfragments/3970.minor | 0 newsfragments/3971.minor | 1 - newsfragments/3974.minor | 0 newsfragments/3975.minor | 1 - newsfragments/3976.minor | 1 - newsfragments/3978.minor | 0 newsfragments/3982.feature | 1 - newsfragments/3987.minor | 0 newsfragments/3988.minor | 0 newsfragments/3989.installation | 1 - newsfragments/3991.minor | 0 newsfragments/3993.minor | 0 newsfragments/3994.minor | 0 newsfragments/3996.minor | 0 newsfragments/3997.installation | 1 - newsfragments/3998.minor | 0 newsfragments/3999.bugfix | 1 - newsfragments/4000.minor | 0 newsfragments/4001.minor | 0 newsfragments/4002.minor | 0 newsfragments/4003.minor | 0 newsfragments/4004.minor | 0 newsfragments/4005.minor | 0 newsfragments/4006.minor | 0 newsfragments/4009.minor | 0 newsfragments/4010.minor | 0 newsfragments/4012.minor | 0 newsfragments/4014.minor | 0 newsfragments/4015.minor | 0 newsfragments/4016.minor | 0 newsfragments/4018.minor | 0 newsfragments/4019.minor | 0 newsfragments/4020.minor | 1 - newsfragments/4022.minor | 0 newsfragments/4023.minor | 0 newsfragments/4024.minor | 0 newsfragments/4026.minor | 0 newsfragments/4027.minor | 0 newsfragments/4028.minor | 0 newsfragments/4029.bugfix | 2 - newsfragments/4035.minor | 0 newsfragments/4036.feature | 1 - newsfragments/4038.minor | 0 newsfragments/4039.documentation | 1 - newsfragments/4040.minor | 0 newsfragments/4041.feature | 1 - newsfragments/4042.minor | 0 newsfragments/4044.minor | 0 newsfragments/4046.minor | 0 newsfragments/4047.minor | 0 newsfragments/4049.minor | 0 newsfragments/4050.minor | 0 newsfragments/4051.minor | 0 newsfragments/4052.minor | 0 newsfragments/4055.minor | 0 newsfragments/4056.bugfix | 3 -- newsfragments/4059.minor | 0 newsfragments/4060.feature | 1 - newsfragments/4061.minor | 0 newsfragments/4062.minor | 0 newsfragments/4063.minor | 0 newsfragments/4065.minor | 0 newsfragments/4066.minor | 0 newsfragments/4068.feature | 1 - newsfragments/4070.minor | 0 newsfragments/4074.minor | 0 newsfragments/4075.minor | 0 newsfragments/4078.bugfix | 1 - newsfragments/4804.feature | 1 - 114 files changed, 81 insertions(+), 41 deletions(-) delete mode 100644 newsfragments/2916.feature delete mode 100644 newsfragments/3072.feature delete mode 100644 newsfragments/3508.minor delete mode 100644 newsfragments/3622.minor delete mode 100644 newsfragments/3783.minor delete mode 100644 newsfragments/3870.minor delete mode 100644 newsfragments/3874.minor delete mode 100644 newsfragments/3880.minor delete mode 100644 newsfragments/3899.bugfix delete mode 100644 newsfragments/3902.feature delete mode 100644 newsfragments/3904.minor delete mode 100644 newsfragments/3910.minor delete mode 100644 newsfragments/3914.minor delete mode 100644 newsfragments/3917.minor delete mode 100644 newsfragments/3921.feature delete mode 100644 newsfragments/3922.documentation delete mode 100644 newsfragments/3927.minor delete mode 100644 newsfragments/3928.minor delete mode 100644 newsfragments/3935.minor delete mode 100644 newsfragments/3936.minor delete mode 100644 newsfragments/3937.minor delete mode 100644 newsfragments/3938.bugfix delete mode 100644 newsfragments/3939.bugfix delete mode 100644 newsfragments/3940.minor delete mode 100644 newsfragments/3942.minor delete mode 100644 newsfragments/3944.minor delete mode 100644 newsfragments/3946.bugfix delete mode 100644 newsfragments/3947.minor delete mode 100644 newsfragments/3950.minor delete mode 100644 newsfragments/3952.minor delete mode 100644 newsfragments/3953.minor delete mode 100644 newsfragments/3954.minor delete mode 100644 newsfragments/3956.minor delete mode 100644 newsfragments/3958.minor delete mode 100644 newsfragments/3959.minor delete mode 100644 newsfragments/3960.minor delete mode 100644 newsfragments/3961.other delete mode 100644 newsfragments/3962.feature delete mode 100644 newsfragments/3964.removed delete mode 100644 newsfragments/3965.minor delete mode 100644 newsfragments/3966.bugfix delete mode 100644 newsfragments/3967.minor delete mode 100644 newsfragments/3968.minor delete mode 100644 newsfragments/3969.minor delete mode 100644 newsfragments/3970.minor delete mode 100644 newsfragments/3971.minor delete mode 100644 newsfragments/3974.minor delete mode 100644 newsfragments/3975.minor delete mode 100644 newsfragments/3976.minor delete mode 100644 newsfragments/3978.minor delete mode 100644 newsfragments/3982.feature delete mode 100644 newsfragments/3987.minor delete mode 100644 newsfragments/3988.minor delete mode 100644 newsfragments/3989.installation delete mode 100644 newsfragments/3991.minor delete mode 100644 newsfragments/3993.minor delete mode 100644 newsfragments/3994.minor delete mode 100644 newsfragments/3996.minor delete mode 100644 newsfragments/3997.installation delete mode 100644 newsfragments/3998.minor delete mode 100644 newsfragments/3999.bugfix delete mode 100644 newsfragments/4000.minor delete mode 100644 newsfragments/4001.minor delete mode 100644 newsfragments/4002.minor delete mode 100644 newsfragments/4003.minor delete mode 100644 newsfragments/4004.minor delete mode 100644 newsfragments/4005.minor delete mode 100644 newsfragments/4006.minor delete mode 100644 newsfragments/4009.minor delete mode 100644 newsfragments/4010.minor delete mode 100644 newsfragments/4012.minor delete mode 100644 newsfragments/4014.minor delete mode 100644 newsfragments/4015.minor delete mode 100644 newsfragments/4016.minor delete mode 100644 newsfragments/4018.minor delete mode 100644 newsfragments/4019.minor delete mode 100644 newsfragments/4020.minor delete mode 100644 newsfragments/4022.minor delete mode 100644 newsfragments/4023.minor delete mode 100644 newsfragments/4024.minor delete mode 100644 newsfragments/4026.minor delete mode 100644 newsfragments/4027.minor delete mode 100644 newsfragments/4028.minor delete mode 100644 newsfragments/4029.bugfix delete mode 100644 newsfragments/4035.minor delete mode 100644 newsfragments/4036.feature delete mode 100644 newsfragments/4038.minor delete mode 100644 newsfragments/4039.documentation delete mode 100644 newsfragments/4040.minor delete mode 100644 newsfragments/4041.feature delete mode 100644 newsfragments/4042.minor delete mode 100644 newsfragments/4044.minor delete mode 100644 newsfragments/4046.minor delete mode 100644 newsfragments/4047.minor delete mode 100644 newsfragments/4049.minor delete mode 100644 newsfragments/4050.minor delete mode 100644 newsfragments/4051.minor delete mode 100644 newsfragments/4052.minor delete mode 100644 newsfragments/4055.minor delete mode 100644 newsfragments/4056.bugfix delete mode 100644 newsfragments/4059.minor delete mode 100644 newsfragments/4060.feature delete mode 100644 newsfragments/4061.minor delete mode 100644 newsfragments/4062.minor delete mode 100644 newsfragments/4063.minor delete mode 100644 newsfragments/4065.minor delete mode 100644 newsfragments/4066.minor delete mode 100644 newsfragments/4068.feature delete mode 100644 newsfragments/4070.minor delete mode 100644 newsfragments/4074.minor delete mode 100644 newsfragments/4075.minor delete mode 100644 newsfragments/4078.bugfix delete mode 100644 newsfragments/4804.feature diff --git a/NEWS.rst b/NEWS.rst index 7b1fadb8a..c0c36adad 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -5,6 +5,87 @@ User-Visible Changes in Tahoe-LAFS ================================== .. towncrier start line +Release 1.18.0.post1720.dev0 (2024-01-04) +''''''''''''''''''''''''''''''''''''''''' + +No significant changes. + + +Release 1.18.0.post1720 (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 `_) +- Added support for Python 3.12, and work with Eliot 1.15 (`#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 `_) +- `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 `_) +- 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 `_) +- Added support for Python 3.11. (`#3982 `_) +- tahoe run now accepts --allow-stdin-close to mean "keep running if stdin closes" (`#4036 `_) +- The storage server and client now support a new, HTTPS-based protocol. (`#4041 `_) +- Started work on a new end-to-end benchmarking framework. (`#4060 `_) +- Some operations now run in threads, improving the responsiveness of Tahoe nodes. (`#4068 `_) +- Logs are now written in a thread, which should make the application more responsive under load. (`#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 `_) +- Work with (and require) newer versions of pycddl. (`#3938 `_) +- Uploading immutables will now better use available bandwidth, which should allow for faster uploads in many cases. (`#3939 `_) +- Downloads of large immutables should now finish much faster. (`#3946 `_) +- Fix incompatibility with transitive dependency charset_normalizer >= 3 when using PyInstaller. (`#3966 `_) +- A bug where Introducer nodes configured to listen on Tor or I2P would not actually do so has been fixed. (`#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 `_) +- 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 `_) +- Fix a race condition with SegmentFetcher (`#4078 `_) + + +Dependency/Installation Changes +------------------------------- + +- tenacity is no longer a dependency. (`#3989 `_) +- Tahoe-LAFS is incompatible with cryptography >= 40 and now declares a requirement on an older version. (`#3997 `_) + + +Documentation Changes +--------------------- + +- Several minor errors in the Great Black Swamp proposed specification document have been fixed. (`#3922 `_) +- Document the ``force_foolscap`` configuration options for ``[storage]`` and ``[client]``. (`#4039 `_) + + +Removed Features +---------------- + +- Python 3.7 is no longer supported, and Debian 10 and Ubuntu 18.04 are no longer tested. (`#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 `_) + + +Misc/Other +---------- + +- `#3508 `_, `#3622 `_, `#3783 `_, `#3870 `_, `#3874 `_, `#3880 `_, `#3904 `_, `#3910 `_, `#3914 `_, `#3917 `_, `#3927 `_, `#3928 `_, `#3935 `_, `#3936 `_, `#3937 `_, `#3940 `_, `#3942 `_, `#3944 `_, `#3947 `_, `#3950 `_, `#3952 `_, `#3953 `_, `#3954 `_, `#3956 `_, `#3958 `_, `#3959 `_, `#3960 `_, `#3965 `_, `#3967 `_, `#3968 `_, `#3969 `_, `#3970 `_, `#3971 `_, `#3974 `_, `#3975 `_, `#3976 `_, `#3978 `_, `#3987 `_, `#3988 `_, `#3991 `_, `#3993 `_, `#3994 `_, `#3996 `_, `#3998 `_, `#4000 `_, `#4001 `_, `#4002 `_, `#4003 `_, `#4004 `_, `#4005 `_, `#4006 `_, `#4009 `_, `#4010 `_, `#4012 `_, `#4014 `_, `#4015 `_, `#4016 `_, `#4018 `_, `#4019 `_, `#4020 `_, `#4022 `_, `#4023 `_, `#4024 `_, `#4026 `_, `#4027 `_, `#4028 `_, `#4035 `_, `#4038 `_, `#4040 `_, `#4042 `_, `#4044 `_, `#4046 `_, `#4047 `_, `#4049 `_, `#4050 `_, `#4051 `_, `#4052 `_, `#4055 `_, `#4059 `_, `#4061 `_, `#4062 `_, `#4063 `_, `#4065 `_, `#4066 `_, `#4070 `_, `#4074 `_, `#4075 `_ + + Release 1.18.0 (2022-10-02) ''''''''''''''''''''''''''' diff --git a/newsfragments/2916.feature b/newsfragments/2916.feature deleted file mode 100644 index c65f473a4..000000000 --- a/newsfragments/2916.feature +++ /dev/null @@ -1 +0,0 @@ -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. \ No newline at end of file diff --git a/newsfragments/3072.feature b/newsfragments/3072.feature deleted file mode 100644 index 79ce6d56d..000000000 --- a/newsfragments/3072.feature +++ /dev/null @@ -1 +0,0 @@ -Added support for Python 3.12, and work with Eliot 1.15 \ No newline at end of file diff --git a/newsfragments/3508.minor b/newsfragments/3508.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3622.minor b/newsfragments/3622.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3783.minor b/newsfragments/3783.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3870.minor b/newsfragments/3870.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3874.minor b/newsfragments/3874.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3880.minor b/newsfragments/3880.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3899.bugfix b/newsfragments/3899.bugfix deleted file mode 100644 index 55d4fabd4..000000000 --- a/newsfragments/3899.bugfix +++ /dev/null @@ -1,4 +0,0 @@ -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. diff --git a/newsfragments/3902.feature b/newsfragments/3902.feature deleted file mode 100644 index 2477d0ae6..000000000 --- a/newsfragments/3902.feature +++ /dev/null @@ -1 +0,0 @@ -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. \ No newline at end of file diff --git a/newsfragments/3904.minor b/newsfragments/3904.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3910.minor b/newsfragments/3910.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3914.minor b/newsfragments/3914.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3917.minor b/newsfragments/3917.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3921.feature b/newsfragments/3921.feature deleted file mode 100644 index 798aee817..000000000 --- a/newsfragments/3921.feature +++ /dev/null @@ -1,5 +0,0 @@ -`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. \ No newline at end of file diff --git a/newsfragments/3922.documentation b/newsfragments/3922.documentation deleted file mode 100644 index d0232dd02..000000000 --- a/newsfragments/3922.documentation +++ /dev/null @@ -1 +0,0 @@ -Several minor errors in the Great Black Swamp proposed specification document have been fixed. \ No newline at end of file diff --git a/newsfragments/3927.minor b/newsfragments/3927.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3928.minor b/newsfragments/3928.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3935.minor b/newsfragments/3935.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3936.minor b/newsfragments/3936.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3937.minor b/newsfragments/3937.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3938.bugfix b/newsfragments/3938.bugfix deleted file mode 100644 index c2778cfdf..000000000 --- a/newsfragments/3938.bugfix +++ /dev/null @@ -1 +0,0 @@ -Work with (and require) newer versions of pycddl. \ No newline at end of file diff --git a/newsfragments/3939.bugfix b/newsfragments/3939.bugfix deleted file mode 100644 index 9d2071d32..000000000 --- a/newsfragments/3939.bugfix +++ /dev/null @@ -1 +0,0 @@ -Uploading immutables will now better use available bandwidth, which should allow for faster uploads in many cases. \ No newline at end of file diff --git a/newsfragments/3940.minor b/newsfragments/3940.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3942.minor b/newsfragments/3942.minor deleted file mode 100644 index 8b1378917..000000000 --- a/newsfragments/3942.minor +++ /dev/null @@ -1 +0,0 @@ - diff --git a/newsfragments/3944.minor b/newsfragments/3944.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3946.bugfix b/newsfragments/3946.bugfix deleted file mode 100644 index c17a098e7..000000000 --- a/newsfragments/3946.bugfix +++ /dev/null @@ -1 +0,0 @@ -Downloads of large immutables should now finish much faster. \ No newline at end of file diff --git a/newsfragments/3947.minor b/newsfragments/3947.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3950.minor b/newsfragments/3950.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3952.minor b/newsfragments/3952.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3953.minor b/newsfragments/3953.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3954.minor b/newsfragments/3954.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3956.minor b/newsfragments/3956.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3958.minor b/newsfragments/3958.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3959.minor b/newsfragments/3959.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3960.minor b/newsfragments/3960.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3961.other b/newsfragments/3961.other deleted file mode 100644 index 1b8085b30..000000000 --- a/newsfragments/3961.other +++ /dev/null @@ -1 +0,0 @@ -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. diff --git a/newsfragments/3962.feature b/newsfragments/3962.feature deleted file mode 100644 index 86cf62781..000000000 --- a/newsfragments/3962.feature +++ /dev/null @@ -1 +0,0 @@ -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. \ No newline at end of file diff --git a/newsfragments/3964.removed b/newsfragments/3964.removed deleted file mode 100644 index d022f94af..000000000 --- a/newsfragments/3964.removed +++ /dev/null @@ -1 +0,0 @@ -Python 3.7 is no longer supported, and Debian 10 and Ubuntu 18.04 are no longer tested. \ No newline at end of file diff --git a/newsfragments/3965.minor b/newsfragments/3965.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3966.bugfix b/newsfragments/3966.bugfix deleted file mode 100644 index 384dcf797..000000000 --- a/newsfragments/3966.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix incompatibility with transitive dependency charset_normalizer >= 3 when using PyInstaller. diff --git a/newsfragments/3967.minor b/newsfragments/3967.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3968.minor b/newsfragments/3968.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3969.minor b/newsfragments/3969.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3970.minor b/newsfragments/3970.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3971.minor b/newsfragments/3971.minor deleted file mode 100644 index a6cbb6a89..000000000 --- a/newsfragments/3971.minor +++ /dev/null @@ -1 +0,0 @@ -Changes made to mypy.ini to make mypy more 'strict' and prevent future regressions. \ No newline at end of file diff --git a/newsfragments/3974.minor b/newsfragments/3974.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3975.minor b/newsfragments/3975.minor deleted file mode 100644 index 08fba6dd6..000000000 --- a/newsfragments/3975.minor +++ /dev/null @@ -1 +0,0 @@ -Fixes truthy conditional in status.py \ No newline at end of file diff --git a/newsfragments/3976.minor b/newsfragments/3976.minor deleted file mode 100644 index 4d6245e73..000000000 --- a/newsfragments/3976.minor +++ /dev/null @@ -1 +0,0 @@ -Fixes variable name same as built-in type. \ No newline at end of file diff --git a/newsfragments/3978.minor b/newsfragments/3978.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3982.feature b/newsfragments/3982.feature deleted file mode 100644 index 0d48fa476..000000000 --- a/newsfragments/3982.feature +++ /dev/null @@ -1 +0,0 @@ -Added support for Python 3.11. \ No newline at end of file diff --git a/newsfragments/3987.minor b/newsfragments/3987.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3988.minor b/newsfragments/3988.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3989.installation b/newsfragments/3989.installation deleted file mode 100644 index a2155b65c..000000000 --- a/newsfragments/3989.installation +++ /dev/null @@ -1 +0,0 @@ -tenacity is no longer a dependency. diff --git a/newsfragments/3991.minor b/newsfragments/3991.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3993.minor b/newsfragments/3993.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3994.minor b/newsfragments/3994.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3996.minor b/newsfragments/3996.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3997.installation b/newsfragments/3997.installation deleted file mode 100644 index 186be0fc2..000000000 --- a/newsfragments/3997.installation +++ /dev/null @@ -1 +0,0 @@ -Tahoe-LAFS is incompatible with cryptography >= 40 and now declares a requirement on an older version. diff --git a/newsfragments/3998.minor b/newsfragments/3998.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/3999.bugfix b/newsfragments/3999.bugfix deleted file mode 100644 index a8a8396f4..000000000 --- a/newsfragments/3999.bugfix +++ /dev/null @@ -1 +0,0 @@ -A bug where Introducer nodes configured to listen on Tor or I2P would not actually do so has been fixed. \ No newline at end of file diff --git a/newsfragments/4000.minor b/newsfragments/4000.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4001.minor b/newsfragments/4001.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4002.minor b/newsfragments/4002.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4003.minor b/newsfragments/4003.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4004.minor b/newsfragments/4004.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4005.minor b/newsfragments/4005.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4006.minor b/newsfragments/4006.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4009.minor b/newsfragments/4009.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4010.minor b/newsfragments/4010.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4012.minor b/newsfragments/4012.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4014.minor b/newsfragments/4014.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4015.minor b/newsfragments/4015.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4016.minor b/newsfragments/4016.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4018.minor b/newsfragments/4018.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4019.minor b/newsfragments/4019.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4020.minor b/newsfragments/4020.minor deleted file mode 100644 index 8b1378917..000000000 --- a/newsfragments/4020.minor +++ /dev/null @@ -1 +0,0 @@ - diff --git a/newsfragments/4022.minor b/newsfragments/4022.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4023.minor b/newsfragments/4023.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4024.minor b/newsfragments/4024.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4026.minor b/newsfragments/4026.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4027.minor b/newsfragments/4027.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4028.minor b/newsfragments/4028.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4029.bugfix b/newsfragments/4029.bugfix deleted file mode 100644 index 3ce4670ec..000000000 --- a/newsfragments/4029.bugfix +++ /dev/null @@ -1,2 +0,0 @@ -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. \ No newline at end of file diff --git a/newsfragments/4035.minor b/newsfragments/4035.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4036.feature b/newsfragments/4036.feature deleted file mode 100644 index 36c062718..000000000 --- a/newsfragments/4036.feature +++ /dev/null @@ -1 +0,0 @@ -tahoe run now accepts --allow-stdin-close to mean "keep running if stdin closes" \ No newline at end of file diff --git a/newsfragments/4038.minor b/newsfragments/4038.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4039.documentation b/newsfragments/4039.documentation deleted file mode 100644 index 33257443b..000000000 --- a/newsfragments/4039.documentation +++ /dev/null @@ -1 +0,0 @@ -Document the ``force_foolscap`` configuration options for ``[storage]`` and ``[client]``. \ No newline at end of file diff --git a/newsfragments/4040.minor b/newsfragments/4040.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4041.feature b/newsfragments/4041.feature deleted file mode 100644 index 7d8df1a23..000000000 --- a/newsfragments/4041.feature +++ /dev/null @@ -1 +0,0 @@ -The storage server and client now support a new, HTTPS-based protocol. \ No newline at end of file diff --git a/newsfragments/4042.minor b/newsfragments/4042.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4044.minor b/newsfragments/4044.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4046.minor b/newsfragments/4046.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4047.minor b/newsfragments/4047.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4049.minor b/newsfragments/4049.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4050.minor b/newsfragments/4050.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4051.minor b/newsfragments/4051.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4052.minor b/newsfragments/4052.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4055.minor b/newsfragments/4055.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4056.bugfix b/newsfragments/4056.bugfix deleted file mode 100644 index 7e637b48c..000000000 --- a/newsfragments/4056.bugfix +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/newsfragments/4059.minor b/newsfragments/4059.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4060.feature b/newsfragments/4060.feature deleted file mode 100644 index 5eea8134d..000000000 --- a/newsfragments/4060.feature +++ /dev/null @@ -1 +0,0 @@ -Started work on a new end-to-end benchmarking framework. \ No newline at end of file diff --git a/newsfragments/4061.minor b/newsfragments/4061.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4062.minor b/newsfragments/4062.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4063.minor b/newsfragments/4063.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4065.minor b/newsfragments/4065.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4066.minor b/newsfragments/4066.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4068.feature b/newsfragments/4068.feature deleted file mode 100644 index 6c5530cfd..000000000 --- a/newsfragments/4068.feature +++ /dev/null @@ -1 +0,0 @@ -Some operations now run in threads, improving the responsiveness of Tahoe nodes. \ No newline at end of file diff --git a/newsfragments/4070.minor b/newsfragments/4070.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4074.minor b/newsfragments/4074.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4075.minor b/newsfragments/4075.minor deleted file mode 100644 index e69de29bb..000000000 diff --git a/newsfragments/4078.bugfix b/newsfragments/4078.bugfix deleted file mode 100644 index 12ca66bcf..000000000 --- a/newsfragments/4078.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix a race condition with SegmentFetcher \ No newline at end of file diff --git a/newsfragments/4804.feature b/newsfragments/4804.feature deleted file mode 100644 index 23b3d3c6e..000000000 --- a/newsfragments/4804.feature +++ /dev/null @@ -1 +0,0 @@ -Logs are now written in a thread, which should make the application more responsive under load. \ No newline at end of file From 9f3a3bc1e86e325a23692a11a6fa05f4d20bae10 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 4 Jan 2024 20:06:00 -0700 Subject: [PATCH 2/7] changelog for 1.19.0 --- newsfragments/4076.minor | 1 + 1 file changed, 1 insertion(+) create mode 100644 newsfragments/4076.minor diff --git a/newsfragments/4076.minor b/newsfragments/4076.minor new file mode 100644 index 000000000..2fec812e5 --- /dev/null +++ b/newsfragments/4076.minor @@ -0,0 +1 @@ +Release 1.19.0 From 164ac29bd8a7761635aff641c640ac4e905e9e21 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 4 Jan 2024 20:08:10 -0700 Subject: [PATCH 3/7] fix news --- NEWS.rst | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/NEWS.rst b/NEWS.rst index c0c36adad..b9ad2b7bb 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -5,14 +5,8 @@ User-Visible Changes in Tahoe-LAFS ================================== .. towncrier start line -Release 1.18.0.post1720.dev0 (2024-01-04) -''''''''''''''''''''''''''''''''''''''''' - -No significant changes. - - -Release 1.18.0.post1720 (2024-01-04) -'''''''''''''''''''''''''''''''''''' +Release 1.190 (2024-01-04) +'''''''''''''''''''''''''' Features -------- From bbaa7cb9ea4f092dd9393c32dff5b29a4d492322 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 4 Jan 2024 20:12:56 -0700 Subject: [PATCH 4/7] release notes --- relnotes.txt | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) diff --git a/relnotes.txt b/relnotes.txt index dd7cc9429..3f85e256c 100644 --- a/relnotes.txt +++ b/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: @@ -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. @@ -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 From 9570e4b199af845e4b10bff496f7eec4b1571e37 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 4 Jan 2024 20:13:35 -0700 Subject: [PATCH 5/7] update nix --- nix/tahoe-lafs.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nix/tahoe-lafs.nix b/nix/tahoe-lafs.nix index dbc4f37f9..273fa3a76 100644 --- a/nix/tahoe-lafs.nix +++ b/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 From 51e9fcab56a3cc9d1cc82bf1df218c189ca274e7 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 18 Jan 2024 16:03:12 -0700 Subject: [PATCH 6/7] fixups from review (thanks itamarst) --- NEWS.rst | 2 -- relnotes.txt | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/NEWS.rst b/NEWS.rst index b9ad2b7bb..d5dadf06d 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -13,7 +13,6 @@ 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 `_) - Added support for Python 3.12, and work with Eliot 1.15 (`#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 `_) - `tahoe run ...` will now exit when its stdin is closed. This facilitates subprocess management, specifically cleanup. @@ -52,7 +51,6 @@ Dependency/Installation Changes ------------------------------- - tenacity is no longer a dependency. (`#3989 `_) -- Tahoe-LAFS is incompatible with cryptography >= 40 and now declares a requirement on an older version. (`#3997 `_) Documentation Changes diff --git a/relnotes.txt b/relnotes.txt index 3f85e256c..d8caa5e6e 100644 --- a/relnotes.txt +++ b/relnotes.txt @@ -32,7 +32,7 @@ storage-servers and clients support this new protocol. 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 +This release drops Python 3.7 support and adds Python 3.11 and 3.12 support. Several performance improvements have been made. Introducer correctly listens on Tor or I2P. Debian 10 and Ubuntu 20.04 are no longer tested. From f1833906ff0a7ae23c325f27deddc19c8fc82869 Mon Sep 17 00:00:00 2001 From: meejah Date: Thu, 18 Jan 2024 17:32:18 -0700 Subject: [PATCH 7/7] details about how to publish --- docs/release-checklist.rst | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/release-checklist.rst b/docs/release-checklist.rst index aa5531b59..e02844d67 100644 --- a/docs/release-checklist.rst +++ b/docs/release-checklist.rst @@ -147,7 +147,7 @@ they will need to evaluate which contributors' signatures they trust. - when satisfied, sign the tarballs: - - gpg --pinentry=loopback --armor --detach-sign dist/tahoe_lafs-1.16.0rc0-py2.py3-none-any.whl + - gpg --pinentry=loopback --armor -u 0xE34E62D06D0E69CFCA4179FFBDE0D31D68666A7A --detach-sign dist/tahoe_lafs-1.16.0rc0-py2.py3-none-any.whl - gpg --pinentry=loopback --armor --detach-sign dist/tahoe_lafs-1.16.0rc0.tar.gz @@ -197,13 +197,15 @@ Push the signed tag to the main repository: For the actual release, the tarball and signature files need to be uploaded to PyPI as well. -- how to do this? -- (original guide says only `twine upload dist/*`) -- the following developers have access to do this: +- ls dist/*1.19.0* +- twine upload --username __token__ --password `cat SECRET-pypi-tahoe-publish-token` dist/*1.19.0* + +The following developers have access to do this: - warner + - meejah - exarkun (partial?) - - meejah (partial?) + Announcing the Release Candidate ````````````````````````````````