| Age | Commit message (Collapse) | Author |
|
This change fixes #136 which reported that the grid and cursor will fall
out of sync when dragging or moving the grid when placing rooms or
objects.
Fixes #136
|
|
This change fixes #135 which showed that trying to delete a topology
used by a scenario would result in nothing happening in the UI and a 500
error being returned by the server. We check whether a scenario still
references the topology and show an error to the user if that happens.
Fixes #135
|
|
This change updates the dependencies for the web UI to the latest
available version where possible.
|
|
This pull request updates the Gradle wrapper to 8.0 and updates the simulator dependencies where possible.
|
|
This change updates the CI pipeline so that Java 20 is being tested with
the latest Gradle RC, since Gradle 8.0 does not support it yet.
|
|
This change updates the simulator dependencies to the latest available
version where possible.
|
|
This change updates the Gradle wrapper to version 8.0.
See https://docs.gradle.org/8.0.2/release-notes.html.
|
|
Docker Inc is sunsetting free team organizations for the Docker registry,
which our organization is one of. Instead, a paid subscription is now required
to maintain the organization.
Given our relatively small usage of the account, it makes more sense to start
publishing the container images on the GitHub Container Registry, since it is
free for open source projects and integrates well with GitHub Actions.
Fixes #141
|
|
Bumps [webpack](https://github.com/webpack/webpack) from 5.74.0 to 5.76.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.74.0...v5.76.1)
---
updated-dependencies:
- dependency-name: webpack
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 1 to 2.
- [Release notes](https://github.com/actions/deploy-pages/releases)
- [Commits](https://github.com/actions/deploy-pages/compare/v1...v2)
---
updated-dependencies:
- dependency-name: actions/deploy-pages
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [@sideway/formula](https://github.com/sideway/formula) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sideway/formula/releases)
- [Commits](https://github.com/sideway/formula/compare/v3.0.0...v3.0.1)
---
updated-dependencies:
- dependency-name: "@sideway/formula"
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [eta](https://github.com/eta-dev/eta) to 2.0.0 and updates ancestor dependencies [eta](https://github.com/eta-dev/eta), [@docusaurus/core](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus) and [@docusaurus/preset-classic](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-preset-classic). These dependencies need to be updated together.
Updates `eta` from 1.12.3 to 2.0.0
- [Release notes](https://github.com/eta-dev/eta/releases)
- [Commits](https://github.com/eta-dev/eta/compare/v1.12.3...v2.0.0)
Updates `@docusaurus/core` from 2.1.0 to 2.3.1
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v2.3.1/packages/docusaurus)
Updates `@docusaurus/preset-classic` from 2.1.0 to 2.3.1
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v2.3.1/packages/docusaurus-preset-classic)
---
updated-dependencies:
- dependency-name: eta
dependency-type: indirect
- dependency-name: "@docusaurus/core"
dependency-type: direct:production
- dependency-name: "@docusaurus/preset-classic"
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3 to 4.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3...v4)
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [http-cache-semantics](https://github.com/kornelski/http-cache-semantics) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/kornelski/http-cache-semantics/releases)
- [Commits](https://github.com/kornelski/http-cache-semantics/compare/v4.1.0...v4.1.1)
---
updated-dependencies:
- dependency-name: http-cache-semantics
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
This pull request cleans up the web server to follow Quarkus' best-practices.
## Implementation Notes :hammer_and_pick:
* Migrate to Hypersistence Utils
* Convert web server utils to Java
* Use Panache for entity modeling
* Convert resources to Java
* Remove unnecessary service indirections
## External Dependencies :four_leaf_clover:
* Panache for modeling database entities
* Hypersistence Utils for storing JSON in database
* Mockito for mocking in the web server tests
## Breaking API Changes :warning:
* All implementation is moved to Java for better compatibility with Quarkus.
* Scenarios can now have multiple jobs (e.g., if retried)
|
|
This change removes the unnecessary service classes where they are only
used to forward data from the resource to the entities. Furthermore,
DTOs are now moved from the service layer to the resources.
|
|
This change converts the resource classes of the OpenDC web server to
use Java, The Quarkus integration for Java is more mature and the
programming quality of experience is not that much worse.
|
|
This change updates the OpenDC web server to use Panache (provided by
Quarkus) to model entities. Such approach is better supported in Quarkus
and simplifies our implementation.
|
|
This change converts the existing utilities of the web server to Java in
preparation for future changes.
|
|
This change updates the web server to use the Hypersistence Utils
library instead of our custom code to store columns as JSON in H2 and
Postgres.
|
|
This pull request addresses the issues encountered during the release of the last
release candidate (v3.0-rc1).
## Implementation Notes :hammer_and_pick:
* Fix Docker build for web UI
* Allow version to be overridable
* Update latest release in documentation
|
|
This change updates the documentation to mention the most recent release
candidate of OpenDC, in order to point students in the correct
direction.
|
|
This change updates the Gradle configuration to allow the user to
overide the version number OpenDC will use when producing the build
artifacts.
|
|
This change fixes the Docker build for the web UI in the release
workflow. Previously, the job would fail because the path
"opendc-web/opendc-web-ui" couldn't be found. This is due to not
checking out the repository beforehand.
See https://github.com/docker/build-push-action#usage.
|
|
Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33.
- [Release notes](https://github.com/faisalman/ua-parser-js/releases)
- [Changelog](https://github.com/faisalman/ua-parser-js/blob/master/changelog.md)
- [Commits](https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33)
---
updated-dependencies:
- dependency-name: ua-parser-js
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [actions/configure-pages](https://github.com/actions/configure-pages) from 2 to 3.
- [Release notes](https://github.com/actions/configure-pages/releases)
- [Commits](https://github.com/actions/configure-pages/compare/v2...v3)
---
updated-dependencies:
- dependency-name: actions/configure-pages
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Heap size comparison was incorrect. Fixed
|
|
|
|
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)
---
updated-dependencies:
- dependency-name: json5
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)
---
updated-dependencies:
- dependency-name: json5
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
This pull request updates the GitHub Actions workflows used in the OpenDC repository,
addressing (impending) deprecations, broken caching and publishing steps.
## Implementation Notes :hammer_and_pick:
* Fix GH Actions workflow for publishing Docker images
* Enable Gradle caching on master branch
* Pin version of GitHub Actions runner images
* Publish to Maven Central in publish workflow
* Upload distributions after CI build
|
|
This change uploads the distributions build from the repository after a
successful build to allow for testing of the master branch
|
|
This change updates the release and publish workflows in GitHub Actions
to ensure that we only publish the artifacts to Maven Central once the
release on GitHub is published.
When a version tag is pushed to GitHub, only a draft release will be
created containing the right artifacts.
|
|
This change pins the versions of the GitHub Actions runner images used
by our workflows to prevent regressions when the latest Ubuntu/Windows
image is updated.
|
|
This change updates the build workflow in GitHub Actions to enable
caching of the Gradle build when it happens on the master branch. Due to
a mistake, this would only happen on a non-existent 'main' branch.
|
|
This change updates the GitHub Actions pipeline that is used to publish
the Docker images when a new release is published. Since the web API
implementation was moved to `opendc-web/opendc-web-server`, this
workflow started failing.
Furthermore, we remove the use of the deprecated `::set-output` syntax.
|
|
This change fixes an issue where some of the traces from the Workflow
Trace Archive would fail to load with the trace format in OpenDC. This
was caused by one of the fields being stored as a double, while the
formats expects it to be a long.
Parquet does not support unioning primitive types. Therefore, we have to
disable strict type checking when reading the file. Furthermore, we need
to support double entries for storing the workflow ids.
|
|
This change fixes an issue with the `ForwardingFlowMultiplexer` where
the capacity of new outlets were not recorded correctly due to no
handler being attached to idle outlets, causing the `pull` events to be
disregarded.
This bug manifested in an issue where the CPU counters where reporting
negative values. This was caused by the CPU usage/demand being
subtracted from a zero capacity.
|
|
This pull request is one in a series of changes that attempt to clean up the
warts of the OpenDC Compute Service. These changes should make the
API more robust for future developments.
## Implementation Notes :hammer_and_pick:
* Do not suspend in compute API
* Expose state directly to clients
* Do not split interface and implementation
## External Dependencies :four_leaf_clover:
* N/A
## Breaking API Changes :warning:
* The methods of `ComputeClient` do not have the suspend modifier anymore.
* Changes to the classes of `ComputeClient` are now immediately visible on the server side.
It is not necessary to call `refresh` anymore.
* `ComputeService` must be constructed via its builder class now.
|
|
This change inlines the implementation of the compute service into the
`ComputeService` interface. We do not intend to provide multiple
implementations of the service. In addition, this approach makes more
sense for a Java implementation.
|
|
This change updates the implementation of the compute service to expose
state to clients created by the compute service.
|
|
This change updates the API interface of the OpenDC Compute service to
not suspend execution using Kotlin Coroutines.
The suspending modifiers were introduced in case the ComputeClient would
communicate with the service over a network connection. However, the main
use-case has been together with the ComputeService, where the suspending
modifiers only frustrate the user experience when writing experiments.
Furthermore, with the advent of Project Loom, it is not necessarily a
problem to block the (virtual) thread during network communications.
|
|
This pull request updates the build and runtime dependencies used by OpenDC to their latest version compatible with the project.
## Implementation Notes :hammer_and_pick:
* Update simulator dependency versions
* Update Gradle to 7.6
## External Dependencies :four_leaf_clover:
* Gradle
* Quarkus
* Slf4j
* Spotless
* Sentry
|
|
This change updates the simulator dependencies to the latest available
version where possible.
|
|
This change updates the Gradle wrapper version to 7.6 in order to
support building the project with Java 19.
|
|
Bumps [loader-utils](https://github.com/webpack/loader-utils) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v2.0.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v2.0.3...v2.0.4)
---
updated-dependencies:
- dependency-name: loader-utils
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
This pull request increases the minimum version of Java required by OpenDC to 17.
This new version of Java introduces several new features compared to our old minimum
version (11), which we attempt to apply in this conversion.
## Implementation Notes :hammer_and_pick:
* Increase minimum Java version to Java 17
* Use RandomGenerator as randomness source
* Add common dispatcher interface
* Add compatibility with Kotlin coroutines
* Use InstantSource as time source
* Re-implement SimulationScheduler as Dispatcher
* Replace use of CoroutineContext by Dispatcher
## External Dependencies :four_leaf_clover:
* Java 17
## Breaking API Changes :warning:
* The use of `CoroutineContext` and `Clock` as parameters of classes has been replaced
by the `Dispatcher` interface.
* The use of `Clock` has been replaced by `InstantSource` which does not carry time
zone info.
* The use of `Random` and `SplittableRandom` as parameter type has been replaced
by `RandomGenerator`
|
|
This change removes the use of a Spy object from the TestInlet class.
Since the Spy is not actually used in our tests, we remove it due to the
high initialization cost.
|
|
This change fixes the links to the documentation in the project README.
These links assumed that the new website was already deployed at
opendc.org.
|
|
This change updates the simulator dependencies to the latest available
version where possible.
|