Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/workflows/ci_cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,9 @@ jobs:
- name: Checkout main repo
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
repository: openremote/openremote
path: openremote
ref: master
repository: openremote/core
path: core
ref: main
sparse-checkout: profile
sparse-checkout-cone-mode: false

Expand Down Expand Up @@ -87,7 +87,7 @@ jobs:
mkdir -pm 777 tmp

# Start the dev-testing stack
docker compose -f openremote/profile/dev-testing.yml up -d --no-build
docker compose -f core/profile/dev-testing.yml up -d --no-build

./gradlew test

Expand Down Expand Up @@ -178,9 +178,9 @@ jobs:
if: ${{ steps.is_publish_event.outputs.value == 'true' }}
run: |
if [ "$IS_RELEASE" == true ]; then
gh workflow run deploy.yml -R openremote/openremote -f ENVIRONMENT="demo" -f MANAGER_TAG="latest" -f CLEAN_INSTALL="true"
gh workflow run deploy.yml -R openremote/core -f ENVIRONMENT="demo" -f MANAGER_TAG="latest" -f CLEAN_INSTALL="true"
else
gh workflow run deploy.yml -R openremote/openremote -f ENVIRONMENT="staging" -f MANAGER_TAG="develop" -f CLEAN_INSTALL="true"
gh workflow run deploy.yml -R openremote/core -f ENVIRONMENT="staging" -f MANAGER_TAG="develop" -f CLEAN_INSTALL="true"
fi
env:
GH_TOKEN: ${{ steps.deployment-token.outputs.token }}
Expand Down
2 changes: 1 addition & 1 deletion DESIGN.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## Introduction

The OpenRemote platform is designed for versatility, supporting diverse domains such as energy management, smart cities, and fleet management.
As the platform scales, it is no longer practical or efficient for the Core repository ([openremote/openremote](https://github.com/openremote/openremote/)) to natively support every specific protocol, UI widget or business logic requirement.
As the platform scales, it is no longer practical or efficient for the Core repository ([openremote/core](https://github.com/openremote/core/)) to natively support every specific protocol, UI widget or business logic requirement.

## Purpose

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -363,10 +363,10 @@ static double toVolume(double powerNetKw) {
*
* <p>Under a JVM zone that observes DST the storage frame is not monotonic, so on the fall-back
* day the two instants of the repeated hour collapse onto a single stored row and both read it.
* That is a consequence of the naive primary key upstream (openremote/openremote#3292). The
* collapse can only duplicate a read, never erase one, so it cannot turn a day with a forecast
* into a skip, and while it lasts the repeated hour is never a gap at all: both passes read the
* one surviving row, so the hour carries as many distinct values as it has ISPs. Once predicted
* That is a consequence of the naive primary key upstream (openremote/core#3292). The collapse
* can only duplicate a read, never erase one, so it cannot turn a day with a forecast into a
* skip, and while it lasts the repeated hour is never a gap at all: both passes read the one
* surviving row, so the hour carries as many distinct values as it has ISPs. Once predicted
* datapoints are stored in UTC every instant maps to a row of its own, a producer that writes the
* hour once leaves the other pass empty, and that pass is filled flat as above. The day submitted
* on the fall-back date therefore changes when #3292 lands; no other day is affected.
Expand Down Expand Up @@ -471,7 +471,7 @@ static List<SubmissionData> buildSubmissionData(
+ " of "
+ submissionData.size()
+ " positions reusing a value from the repeated DST hour, which collapses onto one"
+ " predicted datapoint row (openremote/openremote#3292)");
+ " predicted datapoint row (openremote/core#3292)");
}

if (dstFilled > 0) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ import static org.openremote.model.Constants.MASTER_REALM
import static org.openremote.model.value.MetaItemType.AGENT_LINK
import static org.openremote.model.value.ValueType.NUMBER

@Issue("https://github.com/openremote/openremote/issues/2599")
@Issue("https://github.com/openremote/core/issues/2599")
class EntsoeProtocolTest extends Specification implements ManagerContainerTrait {
private static final String DATASET_START = "2026-02-16T23:00:00.000Z"
private static final String BEFORE_DATASET_START = "2026-02-16T22:00:00.000Z"
Expand Down
10 changes: 4 additions & 6 deletions project.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -169,12 +169,10 @@ plugins.withType(JavaPlugin).whenPluginAdded {
pluginManager.apply(libs.plugins.testLogger.get().pluginId)

test {
workingDir = findProject(":openremote") != null ? project(":openremote").projectDir : rootProject.projectDir
if (findProject(":openremote") == null) {
// Extension-only repos don't ship the manager UI tree expected by ManagerWebService.
// Point tests at a minimal placeholder docroot so container startup still succeeds.
environment "OR_APP_DOCROOT", rootProject.file("test-support/manager-app").absolutePath
}
workingDir = rootProject.projectDir
// Extension-only repos don't ship the manager UI tree expected by ManagerWebService.
// Point tests at a minimal placeholder docroot so container startup still succeeds.
environment "OR_APP_DOCROOT", rootProject.file("test-support/manager-app").absolutePath
useJUnitPlatform()
testLogging {
// set options for log level LIFECYCLE
Expand Down
2 changes: 1 addition & 1 deletion spotless.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ def prettierIgnorePatterns = readIgnorePatterns(rootProject.file('tools/spotless
def targetWithIgnores = { Collection<String> includes, Collection<String> excludes = [] ->
rootProject.fileTree(rootProject.projectDir) {
includes.each { include it }
(prettierIgnorePatterns + excludes + ['openremote/**']).each { exclude it }
(prettierIgnorePatterns + excludes + ['core/**']).each { exclude it }
}
}
String blockCommentLicenseDelimiter = '(?![ \\t]*/\\*(?:[ \\t]+|\\R[ \\t]*\\*[ \\t]+)Copyright\\b)(?![ \\t]*\\*)[ \\t]*\\S'
Expand Down
Loading