Releases: iExecBlockchainComputing/iexec-core
Releases · iExecBlockchainComputing/iexec-core
v9.1.0
v9.0.0
New Features
- Add WebSocketBlockchainListener to fetch latest block without polling the blockchain network. (#747)
- Update last seen block in configuration collection when no deal has been detected in the last hour. (#750)
- Update configuration collection depending on chain.start-block-number at startup. (#750)
Bug Fixes
- Remove TaskResultUploadTimeout detector, covered by FinalDeadlineTaskDetector. (#732)
Quality
- Configuration server is now optional by default. (#728)
- Improve switch statements after Java 17 migration. (#729)
- Remove redundant blockchain calls to diminish pressure on Ethereum JSON-RPC API. (#734)
- Compute alive workers metrics in
WorkerService#updateMetricsscheduled job. (#739 #745) - Fix Spring Security deprecations after Spring Boot 3.3.8 upgrade. (#740)
- Remove code related to reopen PoCo feature in
IexecHubServiceandTaskUpdateManager. (#743) - Fix several issues raised by SonarQube Cloud. (#749)
Breaking API changes
- Remove deprecated blockhainAdapterUrl field from PublicConfiguration. (#730)
- Remove deprecated REST endpoints in TaskController. (#731)
- Move
WorkerModelfromiexec-commontoiexec-core-library. (#735) - Move
TaskAbortCausefromiexec-commons-pocotoiexec-core-library. (#736) - Remove deprecated methods in
iexec-core-library. (#737) - Remove unused
ContributionUtilsclass. (#738) - Rework metrics to expose count of computing CPUs or GPUs instead of available ones. (#739)
- Harmonize YML internal variables to proper case. (#744)
- Merge split URL configuration properties (protocol, host, port) to a single URL field to offer URL validation at startup. (#748)
Dependency Upgrades
- Upgrade to
eclipse-temurin:17.0.13_11-jre-focal. (#728) - Upgrade to Spring Cloud 2022.0.5. (#728)
- Upgrade to Mongock 5.4.0. (#728)
- Upgrade to Spring Doc OpenAPI 2.6.0. (#728)
- Upgrade to Spring Boot 3.3.8. (#733)
- Upgrade to
java-ipfs-http-client1.4.4. (#741) - Upgrade to
iexec-commons-poco5.0.0. (#751) - Upgrade to
iexec-common9.0.0. (#751) - Upgrade to
iexec-blockchain-adapter-api-library9.0.0. (#751) - Upgrade to
iexec-result-proxy-library9.0.0. (#751) - Upgrade to
iexec-sms-library9.0.0. (#751)
v8.6.0
New Features
- Push scheduler Result Proxy URL as Web2 secret to SMS. (#718)
Bug Fixes
- Start scheduler in out-of-service mode. (#712)
- Scheduler needs to enter out-of-service mode on first blockchain communication loss.
This is due to Nethermind v1.14.7+99775bf7 where filters are lost on restart. (#715) - Use Result Proxy URL defined in deal parameters if any, fall back to scheduler default one otherwise. (#716)
- Update off-chain task model with on-chain task consensus data in all workflows. (#720)
Quality
- Reorder static and final keywords. (#717)
- Update
contributionandcontributionAndFinalizedetector tests.
TEE tasks with callback are now eligible tocontributeAndFinalizeflow. (#719) - Resolve deprecations caused by
TaskDescriptioninReplicatesServiceandResultService. (#723) - Add missing
@PreDestroyannotation in services implementingPurgeable. (#724)
Dependency Upgrades
- Upgrade to
eclipse-temurin:11.0.24_8-jre-focal. (#713) - Upgrade to Gradle 8.10.2. (#714)
- Upgrade to
testcontainers1.20.4. (#721) - Upgrade to
mongo:7.0.15-jammy. (#722) - Upgrade to
iexec-commons-poco4.2.0. (#725) - Upgrade to
iexec-common8.6.0. (#725) - Upgrade to
iexec-blockchain-adapter-api-library8.6.0. (#725) - Upgrade to
iexec-result-proxy-library8.6.0. (#725) - Upgrade to
iexec-sms-library8.7.0. (#725)
v8.5.0
- Deprecate legacy task feedback API endpoints. (#701)
New Features
- Create
iexec-task-apito access task feedback API. (#695) - Move
notificationpackage fromiexec-commons-pocotoiexec-core-library. (#697 #698) - Move
PublicConfigurationclass fromiexec-commontoiexec-core-library. (#699) - Create
ConfigServerClientinstance and use it. (#700) - Allow up to 32 task updates at a given time. (#703)
- Index
currentStatusfield intaskcollection. (#707) - Replace
CredentialsServicewithSignerService. (#708)
Bug Fixes
- Always use
WorkerpoolAuthorizationto retrieve JWT and check result upload on Result Proxy. (#690) - Use correct
Signatureimport inSchedulerClient. (#697) - Do not supply replicates past their contribution deadline to workers. (#702)
- Query blockchain adapter every 2s instead of every second. (#706)
Quality
- Configure Gradle JVM Test Suite Plugin. (#691)
- Rename
IexecTaskApiClienttoTaskApiClient. (#696) - Move
ReplicateTaskSummaryfromiexec-commontoiexec-core. (#704 #705)
Dependency Upgrades
- Upgrade to Gradle 8.7. (#692)
- Upgrade to
eclipse-temurin:11.0.22_7-jre-focal. (#693) - Upgrade to Spring Boot 2.7.18. (#694)
- Upgrade to
iexec-commons-poco4.1.0. (#709) - Upgrade to
iexec-common8.5.0. (#709) - Upgrade to
iexec-blockchain-adapter-api-library8.5.0. (#709) - Upgrade to
iexec-result-proxy-library8.5.0. (#709) - Upgrade to
iexec-sms-library8.6.0. (#709)
v8.4.1
New Features
- Add
ConsensusReachedTaskDetectorto detect missedTaskConsensuson-chain events. (#683 #684) - Generate enclave challenge with
Authorizationheader after on-chain task has been initialized. (#686)
Bug Fixes
- Keep a single
updateReplicateStatusmethod inReplicatesService. (#670) - Check result has been uploaded for TEE tasks. (#672)
- Check for consensus early if a worker has already
CONTRIBUTEDwhen the task is updated toRUNNING. (#673) - Always provide a
WorkerpoolAuthorizationto a worker during its recovery. (#674) - Move task metrics from
TaskUpdateManagertoTaskService. (#676) - Fail fast when tasks are detected past their contribution or final deadline. (#677)
- Mitigate potential race conditions by enforcing
currentStatusvalue when updating a task. (#681) - Use semaphores in
TaskUpdateRequestManagerto avoid blocking task update threads. (#685)
Quality
- Prepare migration to
java.timepackage by buildingDateobjects fromInstantobjects. (#671) - Add logs for better traceability. (#675)
- Remove code only used in tests from
TaskServiceandTask. (#678 #679) - Implement each task status transition in a single method. (#680)
- Execute
TaskUpdateManagertests on a running MongoDB container. (#682)
Dependency Upgrades
- Upgrade to
iexec-sms-library8.5.1. (#687)
v8.4.0
New Features
- Use
MongoTemplateto enable document update without full rewrite. (#661)
Bug Fixes
- Filter out
CONTRIBUTE_AND_FINALIZEtasks when detecting missedREVEALEDstatus update. (#658) - Fetch
resultson-chain when updating a replicate status inCONTRIBUTE_AND_FINALIZEworkflow. (#659 #660) - Properly catch all runtime exceptions when an enclave challenge generation fails. (#663)
Quality
- Use
@DataMongoTestand@Testcontainersannotations in replicates, compute logs and tasks tests. (#662 #664 #665)
Dependency Upgrades
v8.3.0
New Features
- Create
iexec-core-librarysub-project to split shared code/apis from specific scheduler application code. (#623) - Move first DTO classes to
iexec-core-librarysubproject. (#626) - Move
PlatformMetrictoiexec-core-librarysubproject, modify it to become immutable. (#628 #629) - Add prometheus endpoint with custom metrics. (#632)
- Expose version through prometheus endpoint. (#637, #639)
- Stop fetching completed tasks count from DB. (#638)
- Expose current task statuses count to Prometheus and
/metricsendpoint. (#640, #654) - Add
tasksendpoints toiexec-core-library. (#645)
Quality
- Add and use a non-root user in the dockerfile. (#627)
- Replace single thread executor with synchronized keyword. (#633)
- Move contribution status checks from
iexec-commons-poco. (#636) - Use
BlockchainAdapterServicefromiexec-blockchain-adapter-api-library. (#641) ResultRepositoryConfigurationandWorkerConfigurationclasses are now immutable with@Valuelombok annotation. (#650)
Bug Fixes
- Fix web security depreciation warning. (#624)
- Move
TaskModelandReplicateModelinstances creation methods toTaskandReplicateclasses. (#625) - Expose
TaskLogsModelonTaskControllerinstead ofTaskLogs. (#631) - Remove duplicated MongoDB read on
ReplicatesListduring replicate status update. (#647) - Use less MongoDB calls when updating a task to a final status. (#649)
- Save contribution and result updload replicate data when
CONTRIBUTE_AND_FINALIZE_DONE. (#651) - Fix potential
NullPointerExceptionduring first worker replicate request. (#652) - Fix missed replicate status update detectors to avoid false positives by mixing
CONTRIBUTE-REVEAL-FINALIZEandCONTRIBUTE_AND_FINALIZEworkflows. (#653)
Dependency Upgrades
- Upgrade to
eclipse-temurin:11.0.21_9-jre-focal. (#635) - Upgrade to Spring Boot 2.7.17. (#634)
- Upgrade to Spring Dependency Management Plugin 1.1.4. (#634)
- Upgrade to Spring Doc Openapi 1.7.0. (#637)
- Upgrade to
jenkins-library2.7.4. (#630) - Upgrade to
iexec-commons-poco3.2.0. (#648) - Upgrade to
iexec-common8.3.1. (#648) - Upgrade to
iexec-blockchain-adapter-api-library8.3.0. (#655) - Upgrade to
iexec-result-proxy-library8.3.0. (#655) - Upgrade to
iexec-sms-library8.4.0. (#655)