Release 3.4.0 (#3811)

This commit is contained in:
Dustin J. Mitchell 2025-03-12 17:58:49 -04:00 committed by GitHub
parent f73b42d23f
commit 063325b052
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 44 additions and 5 deletions

View file

@ -4,7 +4,7 @@ enable_testing()
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
project (task
VERSION 3.3.0
VERSION 3.4.0
DESCRIPTION "Taskwarrior - a command-line TODO list manager"
HOMEPAGE_URL https://taskwarrior.org/)

View file

@ -1,11 +1,32 @@
------ current release ---------------------------
3.4.0 -
- Where possible, the task DB is now opened in read-only mode, which improves
performance. This is the case for reports (task lists) only when the `gc`
config is false.
- An updated version of corrosion fixes build errors trying to find the Rust
toolchain.
Thanks to the following people for contributions to this release:
- Dustin J. Mitchell
- Kalle Kietäväinen
- Karl
- Matthew
- Tejada-Omar
- Tobias Predel
- Yong Li
- jrmarino
------ old releases ------------------------------
3.3.0 -
- Sync now supports AWS S3 as a backend.
- A new `task import-v2` command allows importing Taskwarrior-2.x
data files directly.
3.3.0 -
Thanks to the following people for contributions to this release:
- Chongyun Lee
@ -18,8 +39,6 @@ Thanks to the following people for contributions to this release:
- Scott Mcdermott
- Thomas Lauf
------ old releases ------------------------------
3.2.0 -
- Support for the journal in `task info` has been restored (#3671) and the

View file

@ -212,6 +212,9 @@ This is a path to the hook scripts directory. By default it is ~/.task/hooks.
.TP
.B gc=1
Can be used to temporarily suspend rebuilding, so that task IDs don't change.
Rebuilding requires read/write access to the database, so disabling `gc` may
result in better performance.
Note that this should be used in the form of a command line override (task
rc.gc=0 ...), and not permanently used in the .taskrc file, as this
significantly affects performance in the long term.

View file

@ -160,6 +160,7 @@ std::vector<NewsItem> NewsItem::all() {
version3_1_0(items);
version3_2_0(items);
version3_3_0(items);
version3_4_0(items);
return items;
}
@ -530,6 +531,21 @@ void NewsItem::version3_3_0(std::vector<NewsItem>& items) {
items.push_back(info);
}
void NewsItem::version3_4_0(std::vector<NewsItem>& items) {
Version version("3.4.0");
NewsItem info{version,
/*title=*/"Read-Only Access",
/*bg_title=*/"",
/*background=*/"",
/*punchline=*/"Some Taskwarrior commands operate faster in read-only mode",
/*update=*/
"Some commands do not need to write to the DB, so can open it in read-only\n"
"mode and thus more quickly. This does not include reports (task lists),\n"
"unless the `gc` config is false. Use `rc.gc=0` in command-lines to allow\n"
"read-only access.\n\n"};
items.push_back(info);
}
////////////////////////////////////////////////////////////////////////////////
int CmdNews::execute(std::string& output) {
auto words = Context::getContext().cli2.getWords();

View file

@ -53,6 +53,7 @@ class NewsItem {
static void version3_1_0(std::vector<NewsItem>&);
static void version3_2_0(std::vector<NewsItem>&);
static void version3_3_0(std::vector<NewsItem>&);
static void version3_4_0(std::vector<NewsItem>&);
private:
NewsItem(Version, const std::string&, const std::string& = "", const std::string& = "",