Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev meeting #1 #90

Closed
Dieterbe opened this issue Nov 18, 2020 · 4 comments
Closed

dev meeting #1 #90

Dieterbe opened this issue Nov 18, 2020 · 4 comments

Comments

@Dieterbe
Copy link
Contributor

Dieterbe commented Nov 18, 2020

for our first developer video-meeting, I propose the following agenda. I include some questions next to the items, so that we can prepare our thoughts a bit before hand.

main agenda

  • quick intro's :)
  • git integration. commit per file changed or per user invoked modification? file format, encoding of status
  • recurring tasks
  • syncing with external systems. (taskwarrior, github, others). should they share a common approach? where should the functionality live? how should github syncing work like?

bonus topics (in case of remaining time, or we push back to next meeting)

  • how should the priority system work? are priorities useful at all? what's been your experience in taskwarrior? should they be numeric you can do math with per-project multipliers etc?
  • due dates
  • subtasks/checklist
  • repo layout (exploratory chat. detailed familiarity with standard package layout or similar not required)
@Dieterbe
Copy link
Contributor Author

  • mobile app!

@naggie
Copy link
Owner

naggie commented Nov 21, 2020

Phone apps

Filesystem, does it make sense?

Code changes to do

  • Filters in taskset constructor -- probably better in methods
  • CmdLine should be called Filter or Query. (It just so happens to be a filter from the cmdline
  • TaskSetOpts is basically the same thing as CmdLine/Filter but with a sort order. Should be an object containing a cmdline and sort order instead (as discussed previously)

Non-core things

  • Github sync -- separate binary with code using dstask as a library. Within dstask.git for the forseeable future. (sync will be for tracking purposes, be lossy, and probably unidirectional)
  • dstask-web could exist in the same way or separate repo, don't mind. https://wails.app/ might a good tool to make dev quicker. DB should not be on web client.

Recurring tasks

  • RECURRING type for definitions
  • "Virtual" instances that appear on schedule in task list if not already there (generated every invocation) but are not commited to disk until they change
  • instances link to parent definition UUID
  • Instance UUIDs could be deterministic based on parent uuid and creation date (according to schedule)
  • show-recurring is the only way to list definitions, much like show-templates

Priority/urgency

Taskwarrior calculates urgency based on priority and heuristics from weightings gathered from projects/tags. We don't want to make something too complicated or overconfigurable. May change later, for instance considering tasks as part of projects more urgent.

Philosophy

dstask is opinionated. Should not be over-configurable, should have well defined scope.


Thanks everyone, hope I didn't miss anything.

@Dieterbe
Copy link
Contributor Author

Dieterbe commented Nov 21, 2020

that covers pretty much all of it, though i would add:

Database

We're pretty happy with the "database" (set of text files organized in per status-directories) and consider the format fairly stable. Re #78, we did the experiment of creating a task, syncing to two systems, and on one system changing the status, and on the other adding a note, sync worked fine without conflicts. No one has a strong desire to change the format right now, but we're open to reconsider if we bump into good reasons to.

Sync

we use git pull without rebasing to always retain exact history and show clearly when merges happen.

Repo layout

yes, we want to organize the code a bit better, isolate separate concerns into separate packages, but not sure yet how.

@botto
Copy link
Contributor

botto commented Nov 21, 2020

I started a chat room on the matrix.org server: https://matrix.to/#/!NPEpBilsAIQPspyKct:matrix.org

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants