* Initial commit of job submission cli tool, with minor fixes in API code
* Refactored and further decoupled server / client code
* Clean up ServerProxy to not use hardcoded loopback addresses
* Add api_version to status api and server_proxy.py
* Add api_version to Zeroconf and filter out incompatible versions when finding available servers
* Filter incompatible versions from the UI
* Add a frame complete notification to BaseWorker and distributed_job_manager.py
* Add API to download individual files to API server and ServerProxy
* Rename subjob notification API and add download_missing_frames_from_subjob
* Subjobs will now notify parent when a frame is complete
* Fix missed rename
* Add some misc logging
* Better error handling
* Fix frame download file path issue
* Download missing frames at job completion and misc cleanup
* Misc cleanup
* Code cleanup
* Add script to get GPU information from Blender
* Change run_python_script to allow it to run without a project file
* Simplify run_python_script code
* Fix mistake
* Add system_info to engine classes and api_server. /api/renderer_info now supports standard and full response modes.
* Get full renderer_info response for add job UI
* Enable setting specific Blender render_device using args
* Add Blender render device options to UI
* Streamline fetching renderer_info from API - use threading for performance improvements
* Use concurrent.futures instead of Threading
* Fix timeout issue with server proxy
* Minor fixes to code that handles proxy server online / offline status
* Force start in render queue only starts NOT_STARTED and SCHEDULED jobs
* Refactor adding jobs / subjobs
* Remove dead code
* Fixed issue with bulk job submission
* Cancel job now cancels all subjobs
* Misc fixes
* JSON now returns job hostname
* Add hostname as optional column in DB
* Misc fixes
* Error handling for removing zip file after download
* Clean up imports
* Fixed issue where worker child information would not be saved
* Add benchmark.py
* Add cpu / disk benchmark APIs
* Add cpu_benchmark method to distributed_job_manager.py
* Do a better job of storing hostnames =
* Remove hostname from Zeroconf cache if server goes offline
* Add cpu / disk benchmark APIs
* Add cpu_benchmark method to distributed_job_manager.py
* Do a better job of storing hostnames =
* Remove hostname from Zeroconf cache if server goes offline
* Wrap main code in try finally block to always stop zeroconf
* Add missing import
* Remove legacy client
* Misc cleanup
* Add message box after submission success / fail
* Use a new is_localhost method to handle localhost not including '.local'
* Code cleanup
* Fix issue where engine browser would think we're downloading forever
* Add message box after submission success / fail
* Use a new is_localhost method to handle localhost not including '.local'
* Code cleanup
* Fix issue where engine browser would think we're downloading forever
* Add pubsub messages to serverproxy_manager.py
* Add resolution, fps and renderer versions to add_job.py
* Add cameras to add_job.py
* Add message box after submission success / fail
* Use a new is_localhost method to handle localhost not including '.local'
* Code cleanup
* Fix issue where engine browser would think we're downloading forever
* Add message box after submission success / fail
* Code cleanup
* Add cameras to add_job.py
* Add dynamic engine options and output format
* Move UI work out of BG threads and add engine presubmission tasks
* Submit dynamic args when creating a new job
* Hide groups and show messagebox after submission
* Choose file when pressing New Job in main window now
* Initial commit for new UI
* Initial commit for new UI
* WIP
* Status bar updates and has an icon for online / offline
* Add log_viewer.py
* Use JSON for delete_engine_download API
* Fix class issue with Downloaders
* Move Config class to new ui
* Add engine_browser.py
* Add a close event handler to the main window
* Fix issue with engine manager not deleting engines properly
* Rearrange all the files
* Add icons and resources
* Cache system info in RenderServerProxy
* Toolbar polish
* Fix resource path in status bar
* Add config_dir to misc_helper.py
* Add try block to zeroconf setup
* Add add_job.py
* Add raw args to add_job.py
* Fix issue with engine not being available to download
* Add version caches to ffmpeg downloader
* Remove some test parameters
* "releases" should be "release" in linux ffmpeg url
* CPU was incorrectly reported as OS
* Fix naming structure for FFMPEG downloads for linux
* More linux ffmpeg work
* Improved error handling
* WIP
* Consolidate platform reporting to not use platform directly
* Fix missing folder name
* Fix project output naming
* Undo config.yaml commit
* Add is_engine_available API call
* Fix issue where subjobs would not find servers