- [Bug fix] Minor style fixes for layout options
- [Enhancement] Make instructions layout configurable (experimental)
- [Bug fix] Terminal font size configuration value type fix
- [Enhancement] Make Guacamole terminal color scheme and font configurable
- [Bug fix] Correctly include the "reaper" and "suspender" manage.py commands in packaging.
- [Testing] Include unit tests for the manage.py commands.
- [Bug fix] Always display lab progress check hints as human readable strings
- [Testing] Drop XBlock 1.1 from the test matrix
- [Testing] Match up XBlock and Python version according to Open edX named releases
- [Testing] Fix Python 3.5 tests
This is the last release to be tested against Python 2.7. Any subsequent releases will support Python 3 only.
- [Enhancement] Support XBlock 1.3 (Python 3 only)
- [Enhancement] Refactor database error retries, using tenacity
- [Documentation] Update README
- [Bug fix] Retry database query to fetch per-provider stack count
- [Documentation] Add documentation for maintainers (on how to cut a release)
- [Documentation] Include README.md in the package’s PyPI description
- [Bug fix] Always, rather than selectively, retry failed database updates from Celery tasks
- [Enhancement] Allow nested blocks
- [Bug fix] Include suspended stacks in count to assess provider capacity and utilization
- [Enhancement] Retry failed database updates from Celery tasks
- [Security fix] test: Require django>=1.11.27 (CVE-2019-19844)
- [Enhancement] Bump XBlock 1.2 version to 1.2.9
- [Enhancement] Add Python 3.8 to test matrix
- [Bug fix] Use empty JSONFields instead of "null"
- [Enhancement] Refactor stack state variables
- [Bug fix] Add missing valid state, LAUNCH_TIMEOUT
- [Enhancement] Show coverage report at test end
- [Bug fix] Fix error handling when waiting for state change
- [Enhancement] Create admin page for stacks
- [Bug fix] Avoid unhandled exception on SSH close
- [Enhancement] Relax dependency constraints
- [Bug fix] Fix JSONField model and migration
- [Bug fix] Handle null
hook_events
properly
- [Enhancement] tox: Bump xblock12 env to XBlock 1.2.3
- [Enhancement] Add Python 3.7 to Travis configuration
- [Enhancement] tasks.py: continue on specific EnvironmentErrors during SSH connection
- [Enhancement] Update devstack documentation
- [Enhancement] Task hooks
- [DEPRECATION]
reboot_on_resume
will be removed in a future release, as its intended purpose is now better served by task hooks. - [CONFIGURATION] The
suspend_in_parallel
configuration option is now a NOOP, as suspension now always happens in parallel via simultaneously running Celery tasks.
- [Bug fix] Fix XML parsing backward compatibility
- [BACKWARD INCOMPATIBLE FOR GCP LABS ONLY] Encode GCP stack names
- [Enhancement] Provider stack listing
- [Enhancement] Reaper zombie destroyer
- [Enhancement] Add Python 3.7 test target
- [Bug fix] Fix database logging
- [Enhancement] Improve suspender and reaper database logging
- [Enhancement] Refactor OpenStack client wrappers
- [Enhancement] Multi-cloud support
- [Enhancement] Introduce Gcloud provider driver
- [Bug fix] Fix Python 2-isms
- [Enhancement] Configurable guacd settings
- [Enhancement] Add docker support for guacamole app
- [Enhancement] Bump keystoneauth1
- [Bug fix] Fix app label
- [Enhancement] Bump os-client-config
- [Bug fix] Àdd missing init parameters to OpenStack wrappers
- [Enhancement] Avoid known stack suspension failure states
- [Enhancement] Progress check hints via stderr
- [Enhancement] Track XBlock-SDK master branch in test matrix
- [Bug fix] Python 3.6 compatibility
- [Enhancement] Managed package versions
- [Enhancement] Improve learner-facing warning messages
- [Enhancement] Continue SSH verification on EOFError
- [Enhancement] Also handle keystone HTTP exceptions
- [Bug fix] Fail if environment not found or template not provided
- [Bug fix] Handle all exceptions when suspending or reaping
- [Bug fix] Don't suspend or reap stacks with no provider
- [Bug fix] Don't delete manually resumed stacks
- [Bug fix] Refresh database connection on every run
- [Enhancement] Allow
launch_timeout
to be set per course - [Enhancement] Allow CMS editing of ports, provider, tests
- [Enhancement] Wait for RDP connection
- [Enhancement] Deprecate custom XML parsing
- [Enhancement] Parse stack ports from XML
- [Enhancement] Handle all Heat HTTP exceptions
- [Enhancement] Don't create records implicitly
- [Bug fix] Wait for commit on LaunchStackTask()
- [Bug fix] Reset
error_msg
on stack launch - [Bug fix] Only update necessary fields
- [Bug fix] Update provider in real time
- [Bug fix] Implement proper locking of
get_user_stack_status
- [Bug fix] Roll back race condition check
- [Bug fix] Don't try to retrieve empty paths
- [Bug fix] Don't send reset request twice simultaneously
- [Bug fix] Avoid QuerySet cache
- [Bug fix] Avoid launch race condition
- [Bug fix] Don't update database from tasks.py
- [Bug fix] Stop browser timers on errors
- [Enhancement] Multiple provider support
- [Enhancement] Bump XBlock 1.2 testing to version 1.2.2
- [Security fix] Bump paramiko version
- [Enhancement] Update OpenStack client libraries
- [Enhancement] Hawthorn compatibility updates
- [Security fix] Address CVE-2018-7750
- [Enhancement] Handle general SSH exceptions gracefully
- [Enhancement] Use module constants for flags
- [Enhancement] Indirection and unit tests for
check_stack()
- [Security fix] Tomcat8 CVE-2018-8014
- [Bug Fix] Fix the reaper's "MySQL has gone away" error
- [Enhancement] Rename 'Undertaker' to 'Reaper'
- [Enhancement] Use soft task timeouts
- [Enhancement] Implement stack deleter
- [Enhancement] Log stack model changes
- [Enhancement] Enforce task timeouts
- [Enhancement] Only log status changes
- [Enhancement] Retry stack deletion
- [Enhancement] Separate suspender program
- [Bug fix] Fuzz recurring poll timeouts
- [Bug fix] Don't send keepalives after guac error
- [Bug fix] Marginally improve the client's handling of Guacamole server errors
- [Security fix] Do not expose server-side configuration
- [Enhancement] Introduce reboot on resume
- [Bug fix] Disconnect immediately when idle
- [Enhancement] Fix unit tests
- [Bug fix] Fix typo in stack parameters invocation
- [Enhancement] Provide "run" parameter to stack templates
- [Enhancement] Multi-port support
- [Enhancement] Guacamole rewrite
- [Enhancement] Expand provider settings scope
- [Enhancement] Bump swift client to 3.3.0
- [Enhancement] Add XBlock 1.0.0 and Python 3.5 to the test matrix
- [Enhancement] Add mock to test requirements
- [Bug fix] Avoid another contextual version conflict
- [Bug fix] Freeze oslo requirements
- [Enhancement] PEP-8 compliance and flake8 testing
- [Enhancement] Enable automated testing via travis-ci
- [Enhancement] Tune requirements for latest edx-platform
- [Enhancement] Upgrade Heat wrapper
- [Bug fix] Freeze oslo
- [Enhancement] Add PyPI metadata
- [Bug fix] Fix ssh connection failure when a provider is set
- [Bug fix] Always download key during progress check
- [Bug fix] Fix check progress endless hang
- [Settings change] Multiple cloud providers
- [Breaks backward compatibility] Remove support for markdown instructions
- [Testing] Improve unit tests
- [UI change] Improve idle message
- [UI change] Implement reset button
- [UI change] Hide check progress button if there are no tests
- [Logging] Restructure log levels