diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 760020c72..08c069f46 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -3,7 +3,7 @@ name: checks on: push: branches: - - main + - develop pull_request: types: [opened, reopened, synchronize] diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml index d18ec7705..3a734e928 100644 --- a/.github/workflows/publish-docs.yml +++ b/.github/workflows/publish-docs.yml @@ -3,7 +3,10 @@ name: docs on: push: branches: - - main + - develop + +permissions: + contents: write jobs: mdbook-deploy: @@ -18,10 +21,11 @@ jobs: # if this changes, change it in cli/Cargo.toml and .github/workflows/publish-docs.yml as well mdbook-version: '0.4.10' - - run: mdbook build docs + - run: mdbook build taskchampion/docs - name: Deploy uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs/book + publish_dir: ./taskchampion/docs/book + destination_dir: taskchampion diff --git a/.github/workflows/rust-tests.yml b/.github/workflows/rust-tests.yml index b1200f331..e16549421 100644 --- a/.github/workflows/rust-tests.yml +++ b/.github/workflows/rust-tests.yml @@ -6,7 +6,7 @@ name: tests - rust on: push: branches: - - main + - develop pull_request: types: [opened, reopened, synchronize] diff --git a/taskchampion/README.md b/taskchampion/README.md index 651587606..665602361 100644 --- a/taskchampion/README.md +++ b/taskchampion/README.md @@ -3,9 +3,9 @@ TaskChampion TaskChampion implements the task storage and synchronization behind Taskwarrior. It includes an implementation with Rust and C APIs, allowing any application to maintain and manipulate its own replica. -It also includes a specification for tasks and how thye are synchronized, inviting alternative implementations of replicas or task servers. +It also includes a specification for tasks and how they are synchronized, inviting alternative implementations of replicas or task servers. -See the [documentation](https://taskchampion.github.io/taskchampion/) for more! +See the [documentation](https://gothenburgbitfactory.github.io/taskwarrior/taskchampion/) for more! NOTE: Taskwarrior is currently in the midst of a change to use TaskChampion as its storage. Until that is complete, the information here may be out-of-date. @@ -27,7 +27,7 @@ To regenerate this file, run `cargo xtask codegen`. ## Rust API -The Rust API, as defined in [the docs](https://docs.rs/taskchampion/latest/taskchampion/), supports simple creation and manipulation of of replicas and the tasks they contain. +The Rust API, as defined in [the docs](https://docs.rs/taskchampion/latest/taskchampion/), supports simple creation and manipulation of replicas and the tasks they contain. The Rust API follows semantic versioning. As this is still in the `0.x` phase, so breaking changes may occur but will be indicated with a change to the minor version. @@ -48,4 +48,4 @@ pub use taskchampion_lib::*; ``` Arrange to use the header file, `lib/taskchampion.h`, by copying it or adding its directory to your include search path. -[Future work](https://github.com/GothenburgBitFactory/taskwarrior/issues/2870) will provide better automation for tihs process. +[Future work](https://github.com/GothenburgBitFactory/taskwarrior/issues/2870) will provide better automation for this process. diff --git a/taskchampion/RELEASING.md b/taskchampion/RELEASING.md index b60ab7a22..78650fe0a 100644 --- a/taskchampion/RELEASING.md +++ b/taskchampion/RELEASING.md @@ -11,7 +11,6 @@ 1. Run `git tag vX.Y.Z` 1. Run `git push upstream` 1. Run `git push --tags upstream` -1. Run `( ./build-docs.sh )` 1. Run `(cd taskchampion; cargo publish)` (note that the other crates do not get published) 1. Navigate to the tag in the GitHub releases UI and create a release with general comments about the changes in the release 1. Upload `./target/release/task` and `./target/release/task-sync-server` to the release diff --git a/taskchampion/build-docs.sh b/taskchampion/build-docs.sh deleted file mode 100755 index c7ceb734e..000000000 --- a/taskchampion/build-docs.sh +++ /dev/null @@ -1,33 +0,0 @@ -#! /bin/bash - -set -x - -REMOTE=origin - -set -e - -if ! [ -f "docs/src/SUMMARY.md" ]; then - echo "Run this from the root of the repo" - exit 1 -fi - -# create a worktree of this repo, with the `gh-pages` branch checked out -git branch -f gh-pages $REMOTE/gh-pages -if ! [ -d ./docs/tmp ]; then - git worktree add -f docs/tmp gh-pages -fi - -# update the wortree -(cd docs/tmp && git pull $REMOTE gh-pages) - -# remove all files in the worktree and regenerate the book there -git worktree remove -f docs/tmp -rm -rf docs/tmp/* -mdbook build docs -mkdir docs/tmp -cp -rp docs/book/* docs/tmp - -# add everything in the worktree, commit, and push -(cd docs/tmp && git add -A) -(cd docs/tmp && git commit -am "update docs") -(cd docs/tmp && git push $REMOTE gh-pages:gh-pages) diff --git a/taskchampion/docs/src/SUMMARY.md b/taskchampion/docs/src/SUMMARY.md index 9a3bde8c5..9c7d87065 100644 --- a/taskchampion/docs/src/SUMMARY.md +++ b/taskchampion/docs/src/SUMMARY.md @@ -1,7 +1,6 @@ # Summary -- [Welcome to TaskChampion](./welcome.md) - * [Installation](./installation.md) +- [Installation](./installation.md) * [Running the Sync Server](./running-sync-server.md) - [Internal Details](./internals.md) * [Data Model](./data-model.md) diff --git a/taskchampion/docs/src/welcome.md b/taskchampion/docs/src/welcome.md deleted file mode 100644 index 0c21e9f53..000000000 --- a/taskchampion/docs/src/welcome.md +++ /dev/null @@ -1,63 +0,0 @@ -# TaskChampion - -TaskChampion is a personal task-tracking tool. -It works from the command line, with simple commands like `ta add "fix the kitchen sink"`. -It can synchronize tasks on multiple devices, and does so in an "offline" mode so you can update your tasks even when you can't reach the server. -If you've heard of [TaskWarrior](https://taskwarrior.org/), this tool is very similar, but with some different design choices and greater reliability. - -## Getting Started - -> NOTE: TaskChampion is still in development and not yet feature-complete. -> This section is limited to completed functionality. - -Once you've [installed TaskChampion](./installation.md), your interface will be via the `ta` command. -Start by adding a task: - -```shell -$ ta add learn how to use taskchampion -added task ba57deaf-f97b-4e9c-b9ab-04bc1ecb22b8 -``` - -You can see all of your pending tasks with `ta next`, or just `ta` for short: - -```shell -$ ta - Id Description Active Tags - 1 learn how to use taskchampion -``` - -Tell TaskChampion you're working on the task, using the shorthand id: - -```shell -$ ta start 1 -``` - -and when you're done with the task, mark it as complete: - -```shell -$ ta done 1 -``` - -## Synchronizing - -Even if you don't have a server, it's a good idea to sync your task database periodically. -This acts as a backup and also enables some internal house-cleaning. - -```shell -$ ta sync -``` - -Typically sync is run from a crontab, on whatever schedule fits your needs. - -To synchronize multiple replicas of your tasks, you will need a sync server and a client key for that server. -Configure these in `~/.config/taskchampion.yml`, for example: - -```yaml -server_client_key: "f8d4d09d-f6c7-4dd2-ab50-634ed20a3ff2" -server_origin: "https://taskchampion.example.com" -``` - -The next run of `ta sync` will upload your task history to that server. -Configuring another device identically and running `ta sync` will download that task history, and continue to stay in sync with subsequent runs of the command. - -See [Usage](./using-task-command.md) for more detailed information on using TaskChampion. diff --git a/taskchampion/taskchampion/Cargo.toml b/taskchampion/taskchampion/Cargo.toml index cebb55a62..cd8fe6866 100644 --- a/taskchampion/taskchampion/Cargo.toml +++ b/taskchampion/taskchampion/Cargo.toml @@ -3,9 +3,9 @@ name = "taskchampion" version = "0.4.1" authors = ["Dustin J. Mitchell "] description = "Personal task-tracking" -homepage = "https://taskchampion.github.io/taskchampion/" +homepage = "https://gothenburgbitfactory.github.io/taskwarrior/taskchampion/" documentation = "https://docs.rs/crate/taskchampion" -repository = "https://github.com/taskchampion/taskchampion" +repository = "https://github.com/GothenburgBitFactory/taskwarrior" readme = "../README.md" license = "MIT" edition = "2018"