Skip to content

Update dependency score_baselibs to v0.2.10 - #248

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#248
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 --lockfile_mode=error //: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: 01eceb11-bd82-43d8-82e2-355a31ee4988
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'score_process', the root module requires module version score_process@1.5.4, but got score_process@1.6.0 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
WARNING: For repository 'score_crates', the root module requires module version score_crates@0.0.9, but got score_crates@0.0.10 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 4 packages loaded
Loading: 4 packages loaded
    currently loading: 
Loading: 4 packages loaded
    currently loading: 
Loading: 4 packages loaded
    currently loading: 
WARNING: Target pattern parsing failed.
ERROR: Skipping '//:license-check': no such target '//:license-check': target 'license-check' not declared in package '' defined by /home/runner/work/logging/logging/BUILD
ERROR: no such target '//:license-check': target 'license-check' not declared in package '' defined by /home/runner/work/logging/logging/BUILD
INFO: Elapsed time: 10.647s
INFO: 0 processes.
ERROR: Build did NOT complete successfully
ERROR: Build failed. Not running target

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

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

1 participant