Files
@ fe7b1159f3d8
Branch filter:
Location: DistRen/TODO - annotation
fe7b1159f3d8
4.2 KiB
text/plain
Todo updates regarding web, database, and c code
c6c630e5f1dc c6c630e5f1dc c6c630e5f1dc c6c630e5f1dc c6c630e5f1dc c6c630e5f1dc 1b885b7c9c3e fddb68340972 c6c630e5f1dc 9218a5310d2e 9218a5310d2e abcf8952747b 9218a5310d2e c6c630e5f1dc f569040d837a 483a34f1fa56 483a34f1fa56 4e111fee9098 4e111fee9098 4e111fee9098 483a34f1fa56 1fb5e71af48f 9211f8b8061b 794648d1d1df 794648d1d1df fddb68340972 1fb5e71af48f 1fb5e71af48f 4e111fee9098 fddb68340972 483a34f1fa56 4e111fee9098 4e111fee9098 397effd0f4be 794648d1d1df 1fb5e71af48f 1fb5e71af48f fddb68340972 015b31c4353b fddb68340972 fddb68340972 355de37ac5f1 fddb68340972 abcf8952747b a23a98a79af7 1fb5e71af48f fddb68340972 c4b9cba6001c fddb68340972 fddb68340972 fddb68340972 397effd0f4be 397effd0f4be fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 fe7b1159f3d8 | Key:
*-An important Item that needs to be finished
B-Initial of person who needs to fix this (Binki)
M-LordofWar needs to fix this
E-normaldotcom needs to fix this
x-finished task
=-Long-term goal
?-needs reconsideration/explanation/rewording
Notes:
Initial release will no longer feature SSH auth, distrend will handle auth telnet-style. User registration will be done via PHP.
Simpleslave uses a PHP API to communicate with the mysql-backed server, allowing debugging while server software is nonfunctional.
Build
General
=-documenation: manpages
=-runtime support: should we eventually just go with APR, glib, maybe something from suckless people? Is libdaemon (or whatever's out there) useful?
=-XML (XML-RPC): useful as a communication protocol? as RPC protocol? see atheme; useful as job description format possibly.
*-remoteio: figure out how to handle communications; async + callbacks seems the best method to me atm
Master
*=Add lockout of slaves below a certain version
*-Complete testing with interactive test mode
-update frame assigner to distribute some frames for lower-priority jobs when there's a higher priority job
B-Add calls to remotio -> make API for sending messages ~= a function for every type of message defined in protocol.h
-Write a stub for getting info from the tarball/validifying the tarball. Read distren-job.xml, a file in the tarball, to find out 1. which rendering system to use (that system, e.g. blender/povray, can read more specifics, such as name of file to pass to blender and frames. Options common between different systems will be handled in common as best as possible)
-Write a stub for publishing file and constructing job description so that the job can be shared
B-XML-RPC interface for obtaining info
=-charsets: the program should operate in UTF-8. This is partially required by libxml2's (and XML's) usage of UTF-8. We want the program's internal charset to be UTF-8 and figure out if we need w_char/whatever to fulfill UTF-8. I don't believe we do... mabye we just need a declaration that al data stored must be in UTF-8 format. -> we need to consider how charsets work when and if issues come up
M-explain members of struct general_info; e.g., what is timestamp used for, what's the point of the hibernate var, etc.
*-resolve conflict between liblist and libmysqlclient
*-figure out delete-during-traversal for liblist
*-zip images into one file
Slave
-Fix current bugs
*-Add calls to remoteio, once it works or even before it works -> write message API functions and API
=-Make code more flexible for different types of jobs and operating systems (such as paths, libs, etc)
=-Add code to allow pausing/resuming of the slave (including a running blender process) -> signal handling (SIGTSTP vs. SIGSTOP), distrenslave_control cmdline interface
B-Add tmpdir variable (just like the datadir variable) that is compile-time or whatever -> simple API to allow configuration-file override while taking into account defaults set by ./configure
*-Finish stub to delete old job data and output
=-Upload finished frames' output files while rendering subsequent frames
x-Add simpleslave with code to work around nonexisting server codebase
Options
=-Rewrite some stuff, try to make it simpler
x-Move server and client confuse code into their individual files, rather than in the common file. -- note: there wasn't any client code in options.c. There was the ``server'' section. That section is passed multiple times and provides information to remoteio on how to connect to servers
=-Review all confuse interfacing
B-Push patch for relative includes in confuse to the confuse developers -- windows/mingw32 testing required first
?-Expand execio() to support stderr
WebInterface
*-Scale images on web interface, imagemagick?
E-Begin working on MeshLib seamless integration with DistRen
E-Simplify web interface, make it more lightweight
E-Make some icons for deleting/editing/etc that aren't horribly ugly
E-Get rid of "My Output" or move some functionality to this area
E-Allow "archiving" of jobs?
Overall
*-Output type is currently a placeholder option at this point, make it actually affect the output
*-Change the way the database handles storage of paths to frame data (path + extension?)
*-Output resolution is currently a placeholder option, make it actually affect the output
|