From Fedora Project Wiki

Revision as of 16:22, 12 July 2024 by Amoloney (talk | contribs) (announcing the change)


Taskwarrior 3

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Update Taskwarrior to version 3.

Owner

Current status

  • Targeted release: Fedora Linux 41
  • Last updated: 2024-07-12
  • Announced
  • Discussion thread
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Taskwarrior is Free and Open Source Software that manages your TODO list from the command line. It is flexible, fast, and unobtrusive. It does its job then gets out of your way.

Taskwarrior version 2 is currently available to Fedora users, and has been for some time: task. Taskwarrior version 3 has been recently released, but:

  • requires manual migration of user-data to use
  • completely changes the mechanism for syncing user data over multiple machines: it no longer supports Taskserver and moves to Taskchampion sync server

Upstream documentation on migrating to Taskwarrior version 3 is here.

Therefore, a traditional package update from Taskwarrior version 2 to version 3 will not work in this case, since it requires user intervention and breaks existing user workflows.

This change will include Taskwarrior version 3 in Fedora in a way that allows users to manually migrate to it, while also providing them the option to remain on Taskwarrior version 2 as a compat package:

  • introduce a task2 compat package in Fedora stable releases (Fedora <= 40)
  • task2 will obsolete task <=2.x in Fedora 39, 40
  • update the task package to version 3 in F41

In this way, users currently using task will be seamlessly upgraded to the task2 package. When Fedora 41 is released, they will either be able to stay on task2 or manually upgrade to task (v3) after migrating their user data as required.

(Thanks to Michel and the others on the devel list for suggesting this method).

Feedback

This was discussed on the devel mailing list, which is where this method of upgrading the package was suggested.

Benefit to Fedora

Fedora users will be able to use the newest version of the Taskwarrior, which is what upstream are going to continue maintaining and improving.

Scope

  • Proposal owners:
    • create a new compat task2 package in Fedora 39, 40
    • update the task package in Fedora 41 to version 3


  • Other developers: None
  • Release engineering: None (apart from the usual new package creation tasks)
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with the Fedora Strategy:
    • the new version of Taskwarrior will make current Fedora users happy, and perhaps attract new users looking for a good TODO list manager to Fedora


Upgrade/compatibility impact

Upgrades will not automatically be updated to Taskwarrior version 3. Users will receive the task2 compat package and will need to manually update to the version 3 package.

Early Testing (Optional)

Do you require 'QA Blueprint' support? N (although normal testing of the package will be useful)

How To Test

  • no special hardware is required
  • on Fedora 39/40, install the task package, use it a few times such that user config/data files are created
  • update system: ensure that task2 is installed and obsoletes the task package
  • upgrade to F41 when available: ensure that task2 remains and is not replaced by task (now version 3)
  • back up user data
  • manually migrate data as required by upstream before installing task (v3)
  • install task (v3) and confirm that it works as expected

User Experience

  • Users that use taskserver should remain on Taskwarrior version 2, since Taskwarrior version 3 no longer supports it. Taskwarrior version 3 uses Taskchampion sync server and users will be required to migrate to it.
  • Users that use other synchronization methods may upgrade to Taskwarrior version 3 and take advantage of new features/fixes.

Dependencies

None.


Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No


Documentation

N/A (not a System Wide Change)

Upstream documentation on migrating to Taskwarrior version 3 is here: https://taskwarrior.org/docs/upgrade-3/

Release Notes