Skip to content

Update dependency score_baselibs to v0.2.10 - #140

Open
eclipse-score-bot wants to merge 1 commit into
mainfrom
renovate/score_baselibs-0.x
Open

Update dependency score_baselibs to v0.2.10#140
eclipse-score-bot wants to merge 1 commit into
mainfrom
renovate/score_baselibs-0.x

Conversation

@eclipse-score-bot

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
score_baselibs bazel_dep patch 0.2.90.2.10

Release Notes

eclipse-score/baselibs (score_baselibs)

v0.2.10

Module Name: baselibs
Release Tag: v0.2.10
Origin Release Tag: v0.2.9
Release Commit Hash: 174bcba
Release Date: 2026-07-28

Overview

The baselibs module provides a selection of basic C++ utility libraries for common use in the S-CORE project.

Disclaimer

This release is not intended for production use, as it does not include a safety argumentation or a completed safety assessment.
The work products compiled in the safety package are created with care according to the S-CORE process. However, as a non-profit, open-source organization, the project cannot assume any liability for its content.

For details on the features, see https://eclipse-score.github.io/score/main/features/baselibs/index.html

Notable Changes

Upcoming migration: score/memory moving to the communication repository

score/memory (in particular the shared-memory implementation under score/memory/shared) will be relocated into the communication module. This release contains only preparatory work. The actual code move is planned for the next release and will be a breaking change. Prepare to update your Bazel labels, include paths, and namespaces.

Already done in this release to enable the move:

  • AtomicIndirector moved from score/memory/shared to score/concurrency. A shim remains at //score/memory/shared:atomic_indirector (re-exporting into score::memory::shared) so unmigrated code keeps working.
    Migration: depend on //score/concurrency:atomic_indirector and use the score::concurrency namespace.
  • string_manipulation moved from score/memory to score/string_manipulation (StringLiteral, StringComparisonAdaptor, LazySplitStringView/split_string_view). Shims remain at the old //score/memory:* labels.
    Migration: depend on //score/string_manipulation and use the score::string_manipulation namespace (the deprecated StringLiteral stays in the top-level score namespace).
Breaking changes & deprecations
  • Static reflection / serialization macros renamed with a SCORE_ prefix. The old macros now emit deprecation warnings and forward to the new names:
    • STRUCT_VISITABLESCORE_STRUCT_VISITABLE
    • STRUCT_TRACEABLESCORE_STRUCT_TRACEABLE
    • MEMCPY_SERIALIZABLESCORE_MEMCPY_SERIALIZABLE
    • MEMCPY_SERIALIZABLE_IFSCORE_MEMCPY_SERIALIZABLE_IF
  • result: Blank and ResultBlank are deprecated. Use void instead of score::result::Blank, and Result<void> instead of ResultBlank.
  • score::Result is now fully [[nodiscard]]. Ignoring a returned Result now produces a warning and can break -Werror builds. Consume/handle the returned value.
  • hash: public API switched from ResultBlank to Result<void>. IHashAlgorithm::Update / UpdateFromStream (and their mocks/impls) now return Result<void>. Update your overrides and MOCK_METHOD signatures.
  • analysis/tracing: generic_trace_api now uses std::variant instead of score::cpp::variant in its interface, stub, and mock signatures. Adapt call sites accordingly. More breaking changes are planned in the next release.
  • Rust components moved from //src/... to //score/.... The elementary component was renamed to allocator, plus renames on name clashes. Old //src/... labels remain as aliases with deprecation warnings; update to the new //score/... labels.
  • containers_rust: removed &'alloc from the allocator API (the lifetime was propagating unnecessarily). It is a breaking Rust API change.
New features
  • allocator: bounded lock-free allocation using an atomic bump pointer (CAS-based, capped retries for deterministic execution, graceful failure on exhaustion).
  • score::cpp::span: new size_bytes() method.
  • concurrency LockedPtr: added const overloads and [[nodiscard]] on member accessors.
  • os: new sem_timedwait_monotonic() (Linux uses sem_clockwait(), requires glibc ≥ 2.30); new QNX I/O and OCB wrappers (io_close_dup_default, io_lock_ocb_default, io_unlock_ocb_default) with mocks.
  • flatbuffers: buffer version identification and verification, plus Starlark rules that inject major/minor version into FlatBuffer binaries at build time; VersionReader gained a file_identifier sanity check; added a versioned-config example.
  • memory/shared: now rejects inter-VM shared-memory paths (the /intervm-shared-shmem/ prefix), returning nullptr and logging an error, since no portable inter-VM implementation exists yet.
Bug fixes
  • DateTimeConverter: fixed epoch-time calculation (off-by-one in date calculation, removed incorrect leap-year adjustment, improved conversion accuracy).
  • os: glibc < 2.30 warning changed to a #pragma message.
  • flatbuffers: mitigation for the transitive grpc-java dependency.
  • libacl not compiled with -fPIC causes linker failure on AArch64 PIE target #​172

Compatibility

The following platforms are supported using the bazel_cpp_toolchains:

  • x86_64-unknown-linux-gnu
  • aarch64-unknown-linux-gnu
  • x86_64-unknown-nto-qnx800
  • aarch64-unknown-nto-qnx800

Performed Verification

  • Build on all supported platforms
  • Unit test execution on all supported platforms (some test failures are expected on AArch64 and QNX targets).
  • Address and undefined behavior sanitized unit test execution
  • Leak sanitized unit test execution

Report: https://github.com/eclipse-score/baselibs/actions/runs/30361163145

Upgrade Instructions

Backward compatibility with the previous release is not guaranteed.

Contact Information

For any questions or support, please contact the Base Libs Feature Team (https://redirect.github.com/orgs/eclipse-score/discussions/1223) or raise an issue/discussion.

All changes

Full Changelog: eclipse-score/baselibs@v0.2.9...v0.2.10


  • If you want to rebase/retry this PR, check this box

This PR was generated by #infrastructure automation. Contact us if you have any questions or feedback.

@github-actions

Copy link
Copy Markdown

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run //:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server (8.6.0) and connecting to it...
INFO: Invocation ID: 467789b8-b461-48ff-9228-610d95af95a1
Computing main repo mapping: 
WARNING: /home/runner/work/time/time/MODULE.bazel:13:7: The attribute 'compatibility_level' in module() is a no-op and will be removed in a future Bazel release. Please remove it from your MODULE.bazel file.
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 3 packages loaded
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)

Analyzing: target //:license-check (47 packages loaded, 10 targets configured)

Analyzing: target //:license-check (87 packages loaded, 10 targets configured)

Analyzing: target //:license-check (106 packages loaded, 445 targets configured)

Analyzing: target //:license-check (148 packages loaded, 3109 targets configured)

Analyzing: target //:license-check (154 packages loaded, 4133 targets configured)

Analyzing: target //:license-check (155 packages loaded, 9101 targets configured)

Analyzing: target //:license-check (165 packages loaded, 9284 targets configured)

Analyzing: target //:license-check (165 packages loaded, 9284 targets configured)

Analyzing: target //:license-check (165 packages loaded, 9284 targets configured)

Analyzing: target //:license-check (165 packages loaded, 9284 targets configured)

Analyzing: target //:license-check (169 packages loaded, 11296 targets configured)

Analyzing: target //:license-check (170 packages loaded, 11422 targets configured)

INFO: Analyzed target //:license-check (170 packages loaded, 11422 targets configured).
[12 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox ... (2 actions running)
INFO: From Generating Dash formatted dependency file ...:
INFO: Successfully converted 2 packages from Cargo.lock to bazel-out/k8-fastbuild/bin/formatted.txt
[14 / 16] JavaToolchainCompileBootClasspath external/rules_java+/toolchains/platformclasspath.jar; 0s disk-cache, processwrapper-sandbox
INFO: Found 1 target...
Target //:license.check.license_check up-to-date:
  bazel-bin/license.check.license_check
  bazel-bin/license.check.license_check.jar
INFO: Elapsed time: 30.684s, Critical Path: 2.69s
INFO: 16 processes: 12 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 16 total actions
INFO: Running command line: bazel-bin/license.check.license_check ./formatted.txt <args omitted>
usage: org.eclipse.dash.licenses.cli.Main [-batch <int>] [-cd <url>]
       [-confidence <int>] [-ef <url>] [-excludeSources <sources>] [-help] [-lic
       <url>] [-project <shortname>] [-repo <url>] [-review] [-summary <file>]
       [-timeout <seconds>] [-token <token>]

@github-actions

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants