* Initial refactor of add_job_window
* Improved project naming and fixed Blender engine issue
* Improve time representation in main window
* Cleanup Blender job creation
* Send resolution / fps data in job submission
* More window improvements
* EngineManager renaming and refactoring
* FFMPEG path fixes for ffprobe
* More backend refactoring / improvements
* Performance improvements / API refactoring
* Show current job count in add window UI before submission
* Move some UI update code out of background thread
* Move some main window UI update code out of background thread
* Refactor add jobs and make add_job api only be one job (instead of a list)
* Renamed to JobImportHandler and misc cleanup
* Dont bury exceptions in server proxy post_job
* Update code to create child jobs in a cleaner manner
* Initial commit for settings window
* More WIP for the Settings panel
* Added Local Files section to Settings
* More WIP on Settings
* Add ability to ignore system builds
* Improvements to Launch and Delete buttons
* Fix issue where icons were not loading
* Network password settings WIP
* Update label
* Import and naming fixes
* Speed improvements to launch
* Update requirements.txt
* Update Windows CPU name lookup
* Add missing default values to a few settings
* More settings fixes
* Fix Windows Path issue
* Added hard types for getting settings values
* More UI cleanup
* Correctly refresh Engines list after downloading new engine
* Improve downloader with UI progress
* More download improvements
* Add Settings Button to Toolbar
* Add basic GPU info reporting to UI
* Update GPU display to showcase multiple GPUs, if available
* Add fallback for Windows for fetching GPU info
* Improve Windows GPU lookup. Add GPUtil to requirements.txt
* Clean up GPU and CPU naming in UI
* Update Linux GPU fetching
* Update misc_helper.py
Fix getting GPU names on Linux
* Update .gitignore
* 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
* Zeroconf logging improvements
* Ignore RuntimeErrors in background threads - Prevents issues during shutdown
* Migrate start up code from api_server.py to init.py
* Add error handlers to the API server to handle detached instances
* Integrate RenderQueue eval loop into RenderQueue object
* Silently catch RuntimeErrors on evaluate_queue
* Stop background queue updates in prepare_for_shutdown
* 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
* Misc fixes
* Misc cleanup
* Add all_versions to blender_downloader.py
* More cleanup
* Fix issue with status not reporting engine info
* Misc fixes
* Misc cleanup
* Add all_versions to blender_downloader.py
* More cleanup
* Fix issue with status not reporting engine info
* Stop previously running zeroconf instances
* Lots of formatting fixes
* Use f-strings for time delta
* More line fixes
* Update requirements.txt
* More misc cleanup
* Simplify README.md
* Make sure progress UI updates occur on main thread
* Cleanup unnecessary code in FFMPEG
* Cleanup extension matching
* Make sure supported_extensions is now called as a method everywhere
* Fix add_job crashing
* Update the renderer to reflect the current file type
* Sort engine versions from newest to oldest
* Consolidate Project Group and Server Group
* Split UI options into its own file for easier updating
* Add ffmpeg ui stem
* 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
* Zeroconf.found_clients() now returns dicts of clients, not just hostnames
* Adjustments to distributed_job_manager.py
* Undo config change
* Report system metrics (cpu, os, etc) via zeroconf_server.py
* Zeroconf.found_clients() now returns dicts of clients, not just hostnames
* Adjustments to distributed_job_manager.py
* Undo config change
* Zeroconf.found_clients() now returns dicts of clients, not just hostnames
* Adjustments to distributed_job_manager.py
* Undo config change
* Adjustments to distributed_job_manager.py
* Undo config change
* Rename ZeroconfServer.found_clients() to found_hostnames()
* 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