Repository navigation
fix(test): switch 30 test targets from wave8_cpp23_objects to wave8_opt_only_objects - #699
Merged
Merged
Conversation
…pt_only_objects wave8_cpp23_objects includes read_json_model_cpp23_lib, whose object file references vmaf_model_generate_name / vmaf_model_destroy / vmaf_model_collection_append (from model.c) and json_open_buffer / json_close / json_next / etc. (from pdjson.c). Tests that compile predict.c directly but do not link pdjson.c or model.c will fail at link time with undefined symbol errors under ld.lld when -fsanitize=thread/-fsanitize=address forces static linking. The TSan build job (06c2446) shows exactly this: test_lpips and test_dists fail first; all 30 registration-and-coverage tests that share the same link recipe are broken. The fix introduced in commit 2f3267f (for test_feature_extractor, test_iqa_helpers, test_opt) already defined wave8_opt_only_objects = [opt_cpp23_lib.extract_all_objects()] for this purpose. Extend the same fix to all remaining registration-only and coverage tests that do not load models. test_feature_collector (line 92, link_with libvmaf) is intentionally left on wave8_cpp23_objects — libvmaf.{a,so} already supplies pdjson/model symbols. no digest needed: root-cause confirmed directly from CI linker log no rebase impact: meson.build-only change; no C source or public API touched Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
lusoris
marked this pull request as ready for review
June 6, 2026 01:03
lusoris
added a commit
that referenced
this pull request
Jun 6, 2026
…06 batch (#719) Refreshes bug-tracking and planning documents after the 18-PR June 5-6 batch (#691–#711). Changes in docs/state.md (tracked): - Add batch-sweep _Updated header summarising PRs #691–#711. - Add T-NEON-FMA-FLOAT-ADM-DWT2-2026-06-06 to Open bugs table (was only in the _Updated header, missing from the table body). - Remove duplicate T-CPP23-READ-JSON-MODEL-PENDING-2026-05-29 row (stale copy that cited closed PR #215 as OPEN; the de-cited version is kept). - Fix concatenated duplicate T-GPU-COVERAGE-STABLE-WEEKS rows in Recently closed (two entries were joined on a single line without a separator). - Add 8 new Recently closed rows for substantive June 5-6 fixes: T-NEON-FMA-FLOAT-ADM-DWT2-REVERT (PR #695 revert), T-METAL-FEATURE-COLLECTOR-EXTERN-C (PR #694), T-SYCL-DICT-INCLUDE-MISSING (PR #696), T-INTEGER-SSIM-I686-INCLUDE (PR #700), T-WAVE8-OBJ-TARGET-DEPS (PRs #699/#701), T-DNN-INT8-TEST-ADR1032-ALIGN (PR #705), T-MCP-SMOKE-11-FAILURES (PR #706). OPEN.md and BACKLOG.md (gitignored, updated in main tree only): - Header dates updated to 2026-06-06. - SIMD divergence cluster marked CLOSED (PR #681, 2026-06-04). - T-NEON-FMA-FLOAT-ADM-DWT2 added to Active right now. - June 5-6 PR table added to Recently completed sections. - Awaiting user decision updated: SIMD divergence closed, NEON FMA rewire new. no rebase impact: docs/state.md only; no C sources touched. Co-authored-by: Lusoris <lusoris@pm.me> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
undefined symbol: json_open_buffer,vmaf_model_generate_name, etc. fortest_lpips,test_dists, and 28 other test targets.wave8_cpp23_objectsincludesread_json_model_cpp23_lib, whose object file referencesmodel.candpdjson.csymbols. Tests that compilepredict.cdirectly but do not includepdjson.c/model.cin their source list get undefined references when-fsanitize=threadforces static linking.wave8_cpp23_objectswith the lighterwave8_opt_only_objects(opt.cpp only) for all 30 registration/coverage tests that do not load models. Exactly mirrors the fix already applied totest_feature_extractor/test_iqa_helpers/test_optin commit2f3267f3b.Affected tests (30)
test_lpips, test_dists, test_fastdvdnet_pre, test_mobilesal, test_transnet_v2, test_cambi_simd, test_speed, test_speed_qa, test_integer_psnr_coverage, test_integer_motion_coverage, test_integer_motion_v2_coverage, test_ssim_coverage, test_adm_coverage, test_psnr_hvs_coverage, test_ssimulacra2_coverage, test_iqa_convolve, test_psnr_hvs_avx2, test_vif_simd, test_psnr_hvs_simd, test_integer_adm_simd, test_integer_ssim_simd, test_ciede_simd_parity, test_motion_v2_simd, test_ssimulacra2_simd, test_psnr_hvs_neon, test_moment_simd, test_speed_simd, test_ms_ssim_decimate, test_float_ms_ssim_min_dim, test_motion_min_dim.
test_feature_collector (line 92) intentionally kept on wave8_cpp23_objects — it links with libvmaf which already supplies the pdjson/model symbols.
Test plan
meson setup build-san -Db_sanitize=thread && ninja -C build-san test/test_lpips test/test_distslinks cleanlyChecklist
ninja -C build-tsan test/test_lpipsfails withld.lld: error: undefined symbol: json_open_bufferbefore fix, links cleanly after🤖 Generated with Claude Code