This project adheres to semantic versioning.
- REAL_TIME observations now create a configuration status (but no configurations) so status can be updated
- Multiple Choice filter on id for the
/api/proposals/
endpoint to select several proposals at once ?include_current_time_allocations
flag when getting/api/profile/
to include current time allocations in the returned proposals
- Fixed a potential issue in reserving REAL_TIME observations when dealing with a flaky connection with downtimeDB
- Fixed a bug in the recent changes to instrument type and configuration type validation schemas
- Modified the way InstrumentType and ConfigurationTypeProperties level
validation_schema
from configdb are validated against- This change requires the configdb 3.0.6 running and requires existing
validation_schema
for InstrumentType and ConfigurationTypeProperties to be updated to be applied at the Configuration level instead of the Instrument Configuration level.
- This change requires the configdb 3.0.6 running and requires existing
- Added in ability to pass proper errors for extra params in those validation schema through the serializer
- Three extra validation checks for realtime session booking and availability endpoints
- New
REAL_TIME
observation_type to use for reserving real time observing blocks - /api/realtime/ endpoint for submitting realtime observing blocks that are validated
realtime_allocation
andrealtime_time_used
in proposal time allocations to keep track- /api/realtime/availability endpoint for getting available real time slots in the near future for a user
- Fixed logout redirect issues
- Fixed issue with registration email url
- Dependabot security updates
- Fixed URL generation for proposal invites
- Proposal admin actions to make proposals public in bulk or extend their unused time allocations to next semester
- Swapped out muscat diffusers for narrowband in test classes
- Fix /api/telescope_states to return a useful error message and 502 when no connection to OpenSearch is available.
- Updated invitation email to include email address in URL param
- Plumb email param for /accounts/register to registration form
- Expanded validation range for epoch_of_perih to allow minor planets with low values to be accepted
- Add proposal tags to response from semesters timeallocation action
- Fixed a bug from last release causing old instrument types associated with inactive telescopes to not find their exposure parameters
- Add a flag for internal calls using configdb instruments to ignore instruments from telescopes, enclosures, or sites that are marked as active:false in ConfigDB.
- Change telescope_states api endpoint to include non-schedulable instruments in response.
- Support for validating instrument configurations via validation schema defined in the Configuration Database's ConfigurationTypeProperties. This allows for specific per-instrument type/per-configuration type validation of instrument configs within direct submissions to /api/schedule or via the /api/requestgroups/ endpoint.
- time_charged field added to Configuration Status model to keep track of time charged and refunds
- Refund percentage button on Observations and Configuration Status pages in Admin interface
- Canceling a Request now cancels or deletes all pending Observations for that Request that are scheduled in the future
- Add minimum value validator for max_seeing constraint
- optimization_type field within the Request model for emphasizing TIME or AIRMASS based scheduling optimization for that request
- Override for duration_per_exposure calculation for an instrument configuration dict of a given instrument type
- Added range filters for /api/observations
created
datetime field
- Fix: accept pending proposal invites on bulk user creation
- Added max_lunar_phase to constraints with a range of 0 to 1
- last_scheduled timestamp is now updated on direct submissions to a site
- Update to work with configdb 3.0.1 changes with new telescope aperture field.
- Fix bug in configdb caching function that failed with kwargs
- New API endpoint (
/api/users-bulk/
) to create users in bulk. This should come in handy when you want to speed up the account creation process for a known set of new users (e.g. educational users).
- Only send time allocation reminder email to non-educational users.
- Add
configuration_repeats
to Request model to allow for repeated configuration blocks for things like nodding between targets.
Fix issue when copying a science application which has been assigned a TAC ranking
- Set TAC ranking, TAC priority and proposal to their default values when copying a Science Application to a new draft
Add ability to copy previous science applications for use in a new call.
- Added copy action to ScienceApplicationViewset (
/api/scienceapplications/<pk>/copy
) - When copying a science application, a call of the same proposal type must be open. A new draft science application will be created.
We've switched from using elasticsearch to opensearch. This just affects the telescope telemetry / status endpoints.
- elasticsearch 5.x support updated to opensearch 1.x support
- ELASTICSEARCH_* environment variables renamed to OPENSEARCH_*
Although this is a major version change, this should be regarded as a "maintenance" release. The REST API remains unchanged. However, major dependency changes (moving to Django 4 & dropping Python 3.7 support) might cause dependent projects to break; hence the major bump.
- Django 4.x support
- Python 3.10 support
- Project management with Poetry (pyproject.toml, etc)
- A changelog :)
- setup.py
- Python 3.7 support
- Django 3.x support