forked from lda/telodendria
Clean the TODO list up a bit, organizing it and deleting old entries.
This commit is contained in:
parent
84abff7fb8
commit
18781213cc
1 changed files with 39 additions and 104 deletions
143
TODO.txt
143
TODO.txt
|
@ -1,4 +1,5 @@
|
||||||
Telodendria To-Do List
|
Telodendria To-Do List
|
||||||
|
======================
|
||||||
|
|
||||||
Key:
|
Key:
|
||||||
|
|
||||||
|
@ -7,112 +8,26 @@ Key:
|
||||||
[~] In Progress
|
[~] In Progress
|
||||||
[!] Won't Fix
|
[!] Won't Fix
|
||||||
|
|
||||||
Phase 1: Getting off the ground
|
Milestone: v0.1.0
|
||||||
|
Due: January 1, 2023
|
||||||
|
---------------------
|
||||||
|
|
||||||
[x] Name this project
|
[~] Data abstraction layer
|
||||||
[x] Set up a CVS repository
|
[ ] Database upgrades/migration path
|
||||||
[x] Make CVS repository public
|
[ ] Caching and cache control
|
||||||
[x] Write a build script
|
[x] Make memory info access O(1)
|
||||||
[x] Write a coding style guide
|
[ ] Make config option 'id' optional; print warning if not present started as root.
|
||||||
[x] Add a license
|
[ ] Write install and uninstall scripts
|
||||||
[x] Add support and issue reporting guide
|
[ ] Add relayd example to contrib/
|
||||||
[x] Add table of contents to website
|
[ ] Refactor man pages to be prefaced with 'telodendria-'
|
||||||
|
|
||||||
Phase 2: Building a foundation
|
Milestone: v0.2.0
|
||||||
|
Due: July 1, 2023
|
||||||
|
-----------------
|
||||||
|
|
||||||
[x] Implement an array
|
|
||||||
[x] Implement a logging facility
|
|
||||||
[x] Implement a hash map
|
|
||||||
[x] Allow custom hash functions for each hash map
|
|
||||||
[x] Combine library code files
|
|
||||||
[x] Implement configuration file parsing using hash map
|
|
||||||
[x] Base64 encoding/decoding with padded/unpadded support
|
|
||||||
[x] Write a release script
|
|
||||||
[x] UTF-8 encoder
|
|
||||||
[x] Implement a JSON library using the hash map and array
|
|
||||||
[x] Basic encoding from HashMap/Array/strings, etc.
|
|
||||||
[x] Basic decoding to HashMap/Array/strings, etc.
|
|
||||||
[x] Proper string encoding
|
|
||||||
[x] Proper string decoding
|
|
||||||
[x] Canonical JSON
|
|
||||||
[x] Keys are sorted lexiconographically
|
|
||||||
[x] Floats are not allowed (ignore any float values)
|
|
||||||
[x] Encode as UTF-8 instead of using \u escapes
|
|
||||||
[x] Decode encoded strings to UTF-8
|
|
||||||
[x] Write a function that gets the current Unix timestamp in milliseconds
|
|
||||||
[x] Parse the Telodendria config file
|
|
||||||
[x] Add license header to all files
|
|
||||||
[!] Add documentation for all public APIs (See below)
|
|
||||||
[x] Implement a simple HTTP server
|
|
||||||
[x] Implement param parser
|
|
||||||
[x] URL encoder/decoder
|
|
||||||
[~] Design server architecture
|
|
||||||
[x] Route requests
|
|
||||||
[x] Handle requests
|
|
||||||
[~] Data abstraction layer
|
|
||||||
[ ] Database upgrades/migration path
|
|
||||||
[ ] Caching and cache control
|
|
||||||
[x] Make memory info access O(1)
|
|
||||||
[x] Error generation
|
|
||||||
[x] Properly implement the command line options as stated in telodendria(8)
|
|
||||||
[x] Remove "chroot" option, just chroot into the data dir, and make the log
|
|
||||||
file live there as well.
|
|
||||||
[x] Allow logging to the syslog
|
|
||||||
[x] Fix memory leaks
|
|
||||||
[x] Fix bug where the socket stays open after quit.
|
|
||||||
[x] Possibly related to not closing the connections with fclose()?
|
|
||||||
(see HttpServer.c, grep for fclose)
|
|
||||||
[ ] Figure out how to write unit tests for array/hashmap/etc
|
|
||||||
[ ] Add recipe to td script to upload patches to the Matrix room
|
[ ] Add recipe to td script to upload patches to the Matrix room
|
||||||
|
[ ] Figure out how to write unit tests for array/hashmap/etc
|
||||||
Phase 3: Welcome to Matrix
|
|
||||||
|
|
||||||
[~] client-Server API
|
|
||||||
[x] Error responses
|
|
||||||
[x] CORS headers
|
|
||||||
[x] /_matrix/client/versions
|
|
||||||
[x] Well-known URIs
|
|
||||||
[x] Make base-url optional in config
|
|
||||||
[x] Make identity-server optional in config
|
|
||||||
[ ] Client authentication
|
|
||||||
[ ] Capabilities negotiation
|
|
||||||
[ ] Server-Server API
|
|
||||||
[ ] Application Service API
|
|
||||||
[ ] Identity Service API
|
|
||||||
[ ] Push Gateway API
|
|
||||||
[ ] Room Versions
|
|
||||||
|
|
||||||
Phase 4:
|
|
||||||
|
|
||||||
[ ] Create an OpenBSD package and get it submitted to ports
|
|
||||||
[ ] Add relayd examples to contrib/
|
|
||||||
[ ] Create a command line tool to manage Telodendria
|
|
||||||
[ ] User management
|
|
||||||
[ ] Room management
|
|
||||||
[ ] Migrate from Synapse or Dendrite, whichever is more mainstream by the time we get here
|
|
||||||
|
|
||||||
Documentation
|
|
||||||
|
|
||||||
[x] Update rationale section
|
|
||||||
[x] Update project description (no longer a CGI binary)
|
|
||||||
[x] Clean up dark mode colors (tables, background, code snippets)
|
|
||||||
[x] Add logo (possibly center title?)
|
|
||||||
[x] Update code style to not include indent or line rules, but use indent(1) instead
|
|
||||||
[x] fix typo "Subitting Patches" in Table of Contents
|
|
||||||
[x] Make a note in Getting the Code that the password for the anoncvs account is just anoncvs
|
|
||||||
[x] Add contributors list
|
|
||||||
[x] Add list of make.sh recipes and what they do
|
|
||||||
[x] Improve Google Lighthouse score on website
|
|
||||||
[!] Image elements do not have explicit width and height
|
|
||||||
[x] Background and foreground colors do not have sufficient contrast ratio (msg-error div)
|
|
||||||
[x] Lists do not contain only <li> elements
|
|
||||||
[!] Add other message divs for notes and warnings
|
|
||||||
|
|
||||||
[~] Convert documentation to man pages
|
[~] Convert documentation to man pages
|
||||||
[x] Clean up dark mode in man page CSS (links)
|
|
||||||
[x] Synopsis table should not be styled
|
|
||||||
[x] Make available on MANPATH in tools/env.sh
|
|
||||||
[x] Convert list of man pages into a table on home page
|
|
||||||
[~] Internal API docs
|
[~] Internal API docs
|
||||||
[x] Array
|
[x] Array
|
||||||
[x] Base64
|
[x] Base64
|
||||||
|
@ -135,7 +50,27 @@ Documentation
|
||||||
[ ] Memory
|
[ ] Memory
|
||||||
[ ] Db
|
[ ] Db
|
||||||
|
|
||||||
[x] Add onboarding documentation
|
Milestone: v1.0.0
|
||||||
[x] Building from source
|
-----------------
|
||||||
[!] Writing config file (see Config.5)
|
|
||||||
|
|
||||||
|
[~] client-Server API
|
||||||
|
[x] Error responses
|
||||||
|
[x] CORS headers
|
||||||
|
[x] /_matrix/client/versions
|
||||||
|
[x] Well-known URIs
|
||||||
|
[x] Make base-url optional in config
|
||||||
|
[x] Make identity-server optional in config
|
||||||
|
[ ] Client authentication
|
||||||
|
[ ] Capabilities negotiation
|
||||||
|
[ ] Server-Server API
|
||||||
|
[ ] Application Service API
|
||||||
|
[ ] Identity Service API
|
||||||
|
[ ] Push Gateway API
|
||||||
|
[ ] Room Versions
|
||||||
|
|
||||||
|
[ ] Create an OpenBSD package and get it submitted to ports
|
||||||
|
[ ] Create a command line tool to manage Telodendria
|
||||||
|
[ ] User management
|
||||||
|
[ ] Room management
|
||||||
|
[ ] Migrate from Synapse or Dendrite, whichever is more mainstream by
|
||||||
|
the time we get here.
|
||||||
|
|
Loading…
Reference in a new issue