Releases: NASA-AMMOS/aerie
v0.12.3
What's Changed
Activity to Command Expansion
-
[AERIE-1824] Rework TimeType API by @goetzrrGit in #241: Time types are now written as R
00:15:00
rather than R(Temporal.Duration.from({ minutes: 15 }). The old method is deprecated and will be supported for a few more releases.
https://github.com/NASA-AMMOS/aerie/wiki/Setup-IDE-and-Writting--Expansion-Logic#time -
[AERIE-1875] Return Dictionary fields when uploading by @goetzrrGit in #268: When uploading a command dictionary the API returns the unique id to the new set of commands and associated metadata. https://github.com/NASA-AMMOS/aerie/wiki/Upload-and-Generate-Command-Library-File#upload
Automated Scheduling
- [FIX] Root-finding issue by @adrienmaillard in #234
- [AERIE-1966] Spans by @JoelCourtney in #272
Constraints
- [REFACTOR] Read activity types from database for constraints codegen by @mattdailis in #264
- [AERIE-1974] Remove nested ternary type checks in constraints eDSL by @JoelCourtney in #274: Large mission models would encounter a stack-overflow-like error when typechecking constraints because of the massive nested ternary expressions involved. This refactors that to avoid those types.
Documentation
General
- [FIX] Upgrade n0067 Spice JNIlib for intel+arm architectures by @adrienmaillard in #271
- [AERIE-1908] Jetty-Hasura idle timeout clash by @adrienmaillard in #263
- [HOTFIX] Check that the needed servers are alive before starting tests by @dyst5422 in #240
- [REFACTOR] Delete unused merlin-server database actions by @mattdailis in #261
- [BUILD]: Update dev docker-compose by @camargo in #269
Planning (Activity)
-
[AERIE-1934] Add metadata to activity directives by @dyst5422 in #245
-
[AERIE-1943] Mission specific activity directive metadata by @dyst5422 in #253: These two changes make possible activity metadata via the API. The corresponding Aerie UI change will fully realize this capability for UI users.
-
feat: add Hasura relationship from plan to plan_dataset by @camargo in #266
-
[AERIE-1826] Accumulate activity/configuration instantiation errors by @pcrosemurgy in #258: When an activity contains erroneous arguments to parameters or insufficient arguments Aerie now returns all errors, as opposed to simply returning the first error encountered.
-
[AERIE-1497] Raise negative plan duration PG exception by @pcrosemurgy in #277: Aerie now disallows negative and zero duration plans, raising an error which is reported via the Aerie API.
Full Changelog: v0.12.2...v0.12.3
v0.12.2
v0.12.1
What's Changed
Activity-Command Expansion
- [AERIE-1879] Commands with Dynamic Repeating Arguments are Out of Order by @goetzrrGit in #210
- [AERIE-1874] Add command expansion test into e2e tests by @dyst5422 in #227
Automated Scheduling
- [AERIE-1848] Add expand/clamp transformers to constraints eDSL by @adrienmaillard in #186
- [AERIE-1847] Add duration filter to constraints eDSL by @adrienmaillard in #185
- [AERIE-1910] Scheduling EDSL Parameterless Activity Fix by @pranav-super in #231
- [AERIE-1911] Range check recurrence interval by @pranav-super in #232
- [AERIE-1865] User can trigger an analyze only scheduling analysis by @adrienmaillard in #229
General
- [AERIE-1913] Add simulation dataset id to
simulate
query response by @skovati in #237 - [AERIE-1766] Add healthcheck endpoints by @skovati in #218
- [AERIE-1912] Temporal object types don't transfer to worker by @dyst5422 in #226
- [AERIE-1906] Resolve LGTM errors by @pcrosemurgy in #220
- [AERIE-1922] Add absolute time to activities and resource profiles by @dyst5422 in #236
- [AERIE-1938] Upgrade Hasura to version 2.8.4 by @skovati in #243
- [AERIE-1906] Resolve
SerializedValue
LGTM errors by @pcrosemurgy in #238
Breaking Changes
- [AERIE-1893 ] Remove deprecated sim results response code by @skovati in #224
Simulation resource profiles are no longer returned with the simulation query. Rather resource profiles are available directly from the GraphQL API schema. An example query is shown in the wiki
New Contributors
- @pranav-super made their first contribution in #231
Full Changelog: v0.12.0...v0.12.1
v0.12.0
What's Changed
Activity-Command Expansion
- [AERIE-1881] directive id column on simulated activity view by @dyst5422 in #199
- [AERIE-1857] command expansion timestamps by @dyst5422 in #197
- [AERIE 1871] simulated activity id metadata in generated sequences by @dyst5422 in #201
- [AERIE-1856] normalize dsl return types by @dyst5422 in #202
- [AERIE-1877] 'DayOfYear' isn't a valid entry for Temporal.ZonedDateTime by @goetzrrGit in #194
Automated Scheduling
- [AERIE-1844] Use constraints language as subset of scheduling language by @mattdailis in #179
- [AERIE 1885] Add enabled/disabled to goal in sceduling specification by @patkenneally in #213
- [AERIE-1835] Start and End TimingConstraints in CoexistenceGoal by @mattdailis in #214
Constraints
- [AERIE-1842] Type-checking for Constraints eDSL by @JoelCourtney in #183
- [AERIE-1882] Remove old constraints pipeline by @JoelCourtney in #205
- [AERIE-1878] Add Hasura
constraintViolation
action by @skovati in #211
General
- [BUILD] bump aerie-ts-user-code-runner to 0.3.0 by @camargo in #196
- [DEPS] Misc. Gradle dependency updates by @pcrosemurgy in #195
- [HOTFIX] Simulation results persistence bugs by @mattdailis in #207
- [FIX] update start time field for activity table by @camargo in #208
- [AERIE 1871] simulated activity id metadata in generated sequences by @dyst5422 in #201
- [AERIE-1776] adjust compilation targets by @dyst5422 in #221
Simulation
- Factor directive handling out of SimulationEngine by @Twisol in #170
- [AERIE-1861] Hasura
resourceSamples
action by @pcrosemurgy in #189 - [AERIE-1796] Carve out sim. results: resource samples by @pcrosemurgy in #209
- [AERIE-1909] Explicitly set prepared statement parameter by @patkenneally in #222
Breaking Changes
- Constraints results have been decoupled from the simulation query. Constraints results returned along side simulation results is deprecated and will be removed in the coming 0.12.1 release. A GraphQL query for constraint results can now be constructed with the
constraintViolations
schema addition. An example query is shown in the wiki - Simulation resource profiles are no longer returned with the simulation query. Rather resource profiles are available directly from the GraphQL API schema. An example query is shown in the wiki
New Contributors
Full Changelog: v0.11.3...v0.12.0
v0.11.3
What's Changed
Activity-Command Expansion
- [AERIE-1830] Adjust the seqJSON output when expanding the plan. by @goetzrrGit in #165
- [FIX] Stricter/more correct type checking by @dyst5422 in #158
- [AERIE-1827] eDSL output the correct time format in seqJSON by @goetzrrGit in #160
- [AERIE-1852] Command expansion "authored by" columns by @dyst5422 in #173
- [AERIE-1859] Remove base64 encoding by @dyst5422 in #182
- [AERIE-1823] sequence generation flow by @dyst5422 in #166
- [AERIE-1833] SeqJson should preserve parameter order by @goetzrrGit in #178
Automated Scheduling
- [FIX][AERIE-1829] Satisfying activities missing by @adrienmaillard in #163
- [HOTFIX] Close Simulation Engine in Scheduler by @mattdailis in #168
- [AERIE-1814] Optimize computations of constraints by @adrienmaillard in #152
- [AERIE-1811] Scheduling Language Resource Constraints by @mattdailis in #157
- [AERIE-1813] Replace scheduler state constraints with Merlin resource constraints by @adrienmaillard in #167
- [AERIE-1812] Add cardinality goal (with implied mutex) to the scheduling eDSL by @adrienmaillard in #171
Constraints
- [AERIE-1816] New constraints pipeline by @JoelCourtney in #159
- [AERIE-1819] Build Constraints eDSL to parity with JSON implementation by @JoelCourtney in #174
- [AERIE-1843] Add constraintsDslTypescript hasura action by @JoelCourtney in #176
General
- Upgrade all components to Java 18 by @Twisol in #129
- [AERIE-1862] Change nvm install location to /usr/src by @mattdailis in #184
Simulation
- [AERIE-1685] Validate plan prior to simulating by @pcrosemurgy in #140
- [AERIE-1794] Accumulate & persist unfinished activities by @pcrosemurgy in #164
- Generate
return
for activities with return values by @Twisol in #169
Full Changelog: v0.11.2...v0.11.3
v0.11.2
What's Changed
Automated Scheduling
- [FIX] update docker-compose-test with new ports by @camargo in #148
- [AERIE-1756] Initial barebones coexistence goal by @mattdailis in #132
- [AERIE-1743] Asynchronous scheduling requests by @adrienmaillard in #138
- [FIX] Fix special case issue in RecurrenceGoal and hasura request. by @adrienmaillard in #145
Aerie UI
- [AERIE-1669] feat: update default ui views by @camargo in #151
- [AERIE-1669] refactor: update default ui views by @camargo in #155
- [AERIE-1669] refactor: update default UI view gridName by @camargo in #161
Activity Command Expansion
- [AERIE-1790] Added Relative, Absolute, and Epoch timing. by @goetzrrGit in #149
Full Changelog: v0.11.1...v0.11.2
v0.11.1
What's Changed
Simulation
Mission Modeling
- [AERIE-1731] Schedule activities with uncontrollable durations by @adrienmaillard in #113
Automated Scheduling
- [AERIE-1744] Scheduler goal priority update SQL triggers by @JoelCourtney in #123
- [AERIE-1709] Avoid regenerating activities after scheduling by @adrienmaillard in #121
- [AERIE-1767] Typechecking Scheduling Goal EDSL by @dyst5422 in #134
- [AERIE-1785] Provide default priorities if not provided by @JoelCourtney in #141
- [AERIE-1798] Fix JSON parse errors in scheduling dsl compiler by @mattdailis in #144
Deployment
- [AERIE-1779] Reduce docker image sizes. by @JoelCourtney in #133
- [AERIE-1783] fix: update Hasura metadata ports by @camargo in #142
- [DOCS] add ui ORIGIN env var by @camargo in #143
Activity Command Expansion
- [AERIE-1783] Add commanding container to the deployment docker compose by @patkenneally in #137
- [AERIE-1775] Type check on expansion set creation by @dyst5422 in #146
Full Changelog: v0.11.0...v0.11.1
v0.11.0
Breaking Changes
-
MissionModelFactory
now takes a concrete config objectMissionModelTest
is the same
-
MissionModelBuilder
and associated test take directive registry now- was
return builder.build(model, registry.taskSpecTypes());
- now
return builder.build(model, registry);
- was
-
Mission model now needs a
gov.nasa.jpl.aerie.merlin.protocol.model.SchedulerPlugin
file in theMETA-INF)/services
directory. This will live alongside the already existinggov.nasa.jpl.aerie.merlin.protocol.model.GeneratedMerlinPlugin
. It's contents will be E.g.gov.nasa.jpl.aerie.banananation.generated.GeneratedSchedulerPlugin
What's Changed
Of User Interest
Mission Modeling
Activity Command Expansion
- [AERIE-1717] Upload a command dictionary by @goetzrrGit in #70
- [AERIE-1726] Activity Typescript Types Generation by @dyst5422 in #81
- [AERIE-1725] get command typescript types by @dyst5422 in #80
- [AERIE-1715] Typescript evaluation in
scheduler-server
by @mattdailis in #63 - [AERIE-1727] Add
put-expansion
endpoint by @pcrosemurgy in #92
Configurable Logging
- [AERIE-1733] Set merlin log level and output file in docker-compose by @JoelCourtney in #93
- [AERIE-1734] Use configurable logging in scheduler by @JoelCourtney in #97
- Only log
INFO
-level Hikari logs in dev stack by @pcrosemurgy in #124
Automated Scheduling
- [AERIE-1656] Activities opt-in to controllable duration by @mattdailis in #54
- [AERIE-1692] Connect Step Simulation to the scheduler by @adrienmaillard in #71
- [AERIE-1676] Look up ActivityTypes from Problem when building Goals by @mattdailis in #112
- [AERIE-1741/29/28/54] TypeScript instantiations of simulated activities by @pcrosemurgy in #106
- [AERIE-1694] Provide Scheduling DSL Typescript via API by @mattdailis in #120
Multiple Concurrent Simulation Execution
- [AERIE-1384] Multiple simulation workers by @patkenneally in #107
Fix
- [AERIE-1582] Fix concurrent composition of register effects by @patkenneally in #40
- [AERIE-1711] Replace DB_TYPE env vars with DB_SERVER env vars by @kroffo in #115
Dev Ops
- docs: update env vars by @camargo in #95
- build: remove env vars from docker-compose by @camargo in #96
- [REFACTOR] Keep
node_modules/
directory upongradle clean
by @pcrosemurgy in #88 - [REFACTOR] Open debug ports on java servers in dev docker compose by @mattdailis in #89
- [DEVOPS] Add security-extended codeql queries by @patkenneally in #118
- test: add e2e-test project by @camargo in #122
- [AERIE-1739] Add codeql config for security scanning by @patkenneally in #87
Remainder
- [REFACTOR] Update README.md by @patkenneally in #85
- refactor: scheduling Hasura metadata relationships by @camargo in #90
- [HOTFIX] Command route names include method by @dyst5422 in #91
- [HOTFIX] Boolean enums should be type
boolean
by @goetzrrGit in #94 - [Command Expansion] Added a basic banananation command dictionary by @goetzrrGit in #119
- Set default dev log-level to DEBUG by @JoelCourtney in #98
- Configure Hasura log level through env vars by @JoelCourtney in #99
- [HOTFIX] Remove duration parameter from createAllPlanActivities by @mattdailis in #100
- [HOTFIX] Hasura CommandExpansionResponse should return id. by @goetzrrGit in #101
- refactor: add more Hasura metadata for scheduling by @camargo in #103
- [AERIE-1738] Put
expansion_set
, auto-updateexpansion_set_to_rule
join table by @dyst5422 in #83 - [AERIE-1750] Configure gateway logging by @JoelCourtney in #105
- [FEAT] Expansion Hasura Relationships by @dyst5422 in #104
- [HOTFIX] Fix expansion Hasura metadata by @pcrosemurgy in #108
- [AERIE-1749] command expansion logging by @JoelCourtney in #109
- [HOTFIX] Check activity DurationType before setting its duration parameter by @mattdailis in #110
- [AERIE-1557] Separate Harusa action parsers from Merlin Parsers by @JoelCourtney in #111
- [AERIE-1710] Strengthen merlin-server Postgres Boundary by @kroffo in #102
- [HOTFIX] Merlin-Server Refactor Issues Fix by @kroffo in #114
- [HOTFIX] Fix Typo in scheduling_specification Table by @kroffo in #116
Full Changelog: v0.10.1...v0.11.0
v0.10.1
Breaking Changes
- Activity ID and Plan ID are now
int
data types rather thanstring
. - merlin-framework:
- Mission model configuration
- Merlin now auto-generates configuration mappers, therefore configuration value mappers are now obsolete and should be removed.
- Configurations are now required to declare their parameters and default arguments with the same style as activities.
- See https://github.com/NASA-AMMOS/aerie/wiki/Configuring-a-Mission-Model for guidance on defining configuration parameters and default arguments.
- The family of annotations which trigger code generation for exporting various mission model capabilities have been moved to the
gov.nasa.jpl.aerie.merlin.framework.annotations.Export
class
- Mission model configuration
- scheduler:
- All scheduler env variables have had a name change.
Bug Fixes
Known Limitations
- The scheduler is currently limited to serial execution of scheduling runs (1 scheduling run per Aerie instance at a time).
- Scheduling rules are provided to the scheduler agent as a JAR file of Java defined scheduling rules
Key User Facing Pull Requests
- [AERIE-1578] Numeric Activity Instance IDs by @kroffo in #18
- [DOCUMENTATION] Add
psql
prereq. tobuilding.md
by @pcrosemurgy in #22 - [AERIE-1639] Plan ID Record by @kroffo in #24
- [AERIE-1350] Mission model configuration: effective arguments by @pcrosemurgy in #20
- [REFACTOR] Simplify activity & configuration mapper generation by @pcrosemurgy in #33
- [AERIE-1629] Computed Attributes in Simulation Results by @mattdailis in #25
- [AERIE-1638] Mission model configuration validation by @pcrosemurgy in #37
- [AERIE-1647] Refactor scheduler ActivityInstance by @adrienmaillard in #35
- Support Hasura v2.2 action JSON
request_query
field by @pcrosemurgy in #44 - [AERIE-1691] Return default arguments alongside effective argument failures by @pcrosemurgy in #50
- [AERIE-1666] Distribute SQL with Gradle by @pcrosemurgy in #51
- [AERIE-1673] Compute Scheduling Results by @adrienmaillard in #46
- [DOCUMENTATION] remove internal docs and deployment variables by @camargo in #73
Full Changelog: https://github.com/NASA-AMMOS/aerie/commits/v0.10.1