Skip to content

fix(lifecycle_client): link lifecycle_mock against lifecyclemanager t…#337

Open
Chahult wants to merge 1 commit into
eclipse-score:mainfrom
Chahult:fix/lifecycle_mock_vtable_link_v0.2.0
Open

fix(lifecycle_client): link lifecycle_mock against lifecyclemanager t…#337
Chahult wants to merge 1 commit into
eclipse-score:mainfrom
Chahult:fix/lifecycle_mock_vtable_link_v0.2.0

Conversation

@Chahult

@Chahult Chahult commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

…o resolve vtable

lifecycle_mock provides a mock implementation of LifeCycleManager, which inherits from the concrete class defined in lifecyclemanager.cpp. Without linking against the :lifecyclemanager target, the vtable symbol is undefined when building lifecycle_mock as a shared library (--no-allow-shlib-undefined).

Add :lifecyclemanager to lifecycle_mock's deps to provide the vtable.

@github-actions

github-actions Bot commented Jul 21, 2026

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: 29a8be8c-3c55-4554-b889-29c706aaba64
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)

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

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

Analyzing: target //:license-check (144 packages loaded, 2767 targets configured)

Analyzing: target //:license-check (152 packages loaded, 6993 targets configured)

Analyzing: target //:license-check (157 packages loaded, 8214 targets configured)

Analyzing: target //:license-check (158 packages loaded, 8236 targets configured)

Analyzing: target //:license-check (164 packages loaded, 8271 targets configured)

Analyzing: target //:license-check (164 packages loaded, 8271 targets configured)

Analyzing: target //:license-check (168 packages loaded, 10283 targets configured)

Analyzing: target //:license-check (168 packages loaded, 10283 targets configured)

INFO: Analyzed target //:license-check (169 packages loaded, 10409 targets configured).
[3 / 14] checking cached actions
[13 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox
[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: 23.061s, Critical Path: 2.44s
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>]

@anmittag

Copy link
Copy Markdown
Member

@Chahult some checks are failing,are you planning to adapt or delete the PR?

@anmittag anmittag moved this from Backlog to Ready in LCM - Lifecycle & Health FT Jul 21, 2026
@Chahult
Chahult force-pushed the fix/lifecycle_mock_vtable_link_v0.2.0 branch from bd15106 to 73c9454 Compare July 22, 2026 04:46
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 04:46 — with GitHub Actions Waiting
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 04:46 — with GitHub Actions Waiting
@Chahult
Chahult force-pushed the fix/lifecycle_mock_vtable_link_v0.2.0 branch from 73c9454 to 2da00ec Compare July 22, 2026 11:19
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 11:19 — with GitHub Actions Waiting
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 11:19 — with GitHub Actions Waiting
lifecycle_mock provides a mock of LifeCycleManager which inherits from
the concrete class. Without :lifecyclemanager in its deps the vtable
symbol is undefined when building lifecycle_mock as a shared library
(--no-allow-shlib-undefined).

Also guard all ApplicationContext callbacks against null to prevent
std::bad_function_call when a global ApplicationContext is constructed
before any ApplicationContextMock instance exists.
@Chahult
Chahult force-pushed the fix/lifecycle_mock_vtable_link_v0.2.0 branch from 2da00ec to 4e403ba Compare July 22, 2026 11:22
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 11:22 — with GitHub Actions Waiting
@Chahult
Chahult requested a deployment to workflow-approval July 22, 2026 11:22 — with GitHub Actions Waiting
@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

Labels

None yet

Projects

Status: Ready

Development

Successfully merging this pull request may close these issues.

2 participants