Skip to content

Fixes to barton-matter-example - #40

Draft
tleacmcsa wants to merge 7 commits into
mainfrom
datamodel
Draft

Fixes to barton-matter-example#40
tleacmcsa wants to merge 7 commits into
mainfrom
datamodel

Conversation

@tleacmcsa

Copy link
Copy Markdown
Contributor
  • The Thread Network Diagnostics cluster should be on the NIM endpoint.
  • Some previously provisional clusters are now certifiable (removed
    provisional flag)
  • EventList attribute should no longer be in the zap/matter files.
    Zap tool automatically removed upon generation.

actions-user and others added 7 commits November 19, 2025 15:27
This commit adds a recipe for BartonCommon and
an incremental BartonCore recipe to consume it.
There were some issues with the barton-matter_1.4.2.bb file that caused
occasional bitbake warnings about nondeterministic bashash comparisons.

1. Pinned lark version (lark==1.1.5) to make it deterministic
2. Added --no-cache-dir to prevent cache-related non-determinism
3. Added do_compile[network] = "1" to properly declare network usage
4. Added vardepsexclude directives for SSH_AUTH_SOCK and PYTHONPATH
- The Thread Network Diagnostics cluster should be on the NIM endpoint.
- Some previously provisional clusters are now certifiable (removed
  provisional flag)
- EventList attribute should no longer be in the zap/matter files.
  Zap tool automatically removed upon generation.
- The Thread Network Diagnostics cluster should be on the NIM endpoint.
- Some previously provisional clusters are now certifiable (removed
  provisional flag)
- EventList attribute should no longer be in the zap/matter files.
  Zap tool automatically removed upon generation.
Copilot AI review requested due to automatic review settings January 13, 2026 21:22
@github-actions

github-actions Bot commented Jan 13, 2026

Copy link
Copy Markdown

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the barton-matter-example configuration to align with newer Matter SDK specifications and fixes cluster placement issues. The changes include moving the Thread Network Diagnostics cluster to the correct endpoint, removing deprecated EventList attributes, updating cluster specifications from provisional to certifiable status, and adding new recipe files for barton-core and barton-common.

Changes:

  • Moved Thread Network Diagnostics cluster from root endpoint (0) to NIM endpoint (1 in .matter, 2 in .zap) with additional attributes (ExtAddress, Rloc16)
  • Removed EventList attributes from multiple clusters as they are now auto-generated by the zap tool
  • Removed provisional flags from WiFiNetworkManagement, ThreadBorderRouterManagement, and ThreadNetworkDirectory clusters
  • Updated feature level from 103 to 107, added ConfigurationVersion attribute to General Diagnostics, and added new VID verification commands to Operational Credentials cluster
  • Added new recipe files for barton_git.bb and barton-common_0.1.1.bb

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
barton.zap Updated Matter configuration with cluster reorganization, EventList removal, feature level upgrade, and provisional flag removal
barton.matter Synchronized with .zap changes - moved Thread Network Diagnostics to endpoint 1, added ConfigurationVersion, and new Operational Credentials commands
barton-matter_1.4.2.bbappend Incremented PR version to track the bbappend changes
barton_git.bb New recipe file for barton-core git version with deprecated variable syntax
barton-common_0.1.1.bb New recipe file for barton-common with deprecated variable syntax

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +44 to +45
FILES_${PN}-dev += "${libdir}/*.a"
FILES_${PN}-dev += "${includedir}"

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable syntax FILES_${PN} is deprecated in modern BitBake/Yocto. The recommended syntax uses a colon separator instead of an underscore. These should be changed to FILES:${PN} to align with current best practices and avoid potential deprecation warnings in newer Yocto releases.

Suggested change
FILES_${PN}-dev += "${libdir}/*.a"
FILES_${PN}-dev += "${includedir}"
FILES:${PN}-dev += "${libdir}/*.a"
FILES:${PN}-dev += "${includedir}"

Copilot uses AI. Check for mistakes.
"singleton": 0,
"bounded": 0,
"defaultValue": null,
"defaultValue": "",

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The defaultValue is set to an empty string ("") for an int64u type attribute. For integer type attributes, the default value should either be a numeric value (e.g., "0") or null if no default is needed. An empty string is not a valid default for an integer type and may cause issues during code generation or runtime.

Copilot uses AI. Check for mistakes.
"singleton": 0,
"bounded": 0,
"defaultValue": null,
"defaultValue": "",

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The defaultValue is set to an empty string ("") for an int16u type attribute. For integer type attributes, the default value should either be a numeric value (e.g., "0") or null if no default is needed. An empty string is not a valid default for an integer type and may cause issues during code generation or runtime.

Copilot uses AI. Check for mistakes.
barton-common \
"

RPROVIDES_${PN} += "barton"

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable syntax RPROVIDES_${PN} is deprecated in modern BitBake/Yocto. The recommended syntax uses a colon separator instead of an underscore. This should be changed to RPROVIDES:${PN} to align with current best practices and avoid potential deprecation warnings in newer Yocto releases.

Suggested change
RPROVIDES_${PN} += "barton"
RPROVIDES:${PN} += "barton"

Copilot uses AI. Check for mistakes.
DEPENDS:append = "${@bb.utils.contains('BARTON_BUILD_REFERENCE', 'ON', ' barton-linenoise', '', d)}"
DEPENDS:append = "${@bb.utils.contains('BARTON_BUILD_MATTER', 'ON', ' barton-matter jsoncpp', '', d)}"
DEPENDS:append = "${@bb.utils.contains('BARTON_BUILD_THREAD', 'ON', ' otbr-agent', '', d)}"
RDEPENDS_${PN}:append = "${@bb.utils.contains('BARTON_BUILD_THREAD', 'ON', ' otbr-agent', '', d)}"

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable syntax RDEPENDS_${PN} is deprecated in modern BitBake/Yocto. The recommended syntax uses a colon separator instead of an underscore. This should be changed to RDEPENDS:${PN} to align with current best practices and avoid potential deprecation warnings in newer Yocto releases.

Suggested change
RDEPENDS_${PN}:append = "${@bb.utils.contains('BARTON_BUILD_THREAD', 'ON', ' otbr-agent', '', d)}"
RDEPENDS:${PN}:append = "${@bb.utils.contains('BARTON_BUILD_THREAD', 'ON', ' otbr-agent', '', d)}"

Copilot uses AI. Check for mistakes.
Comment on lines +73 to +82
FILES_${PN} += "${@bb.utils.contains('BARTON_BUILD_REFERENCE', 'ON', '${bindir}/barton-core-reference', '', d)}"

# Define what goes in the main runtime package
FILES_${PN} += "${libdir}/libBartonCore.so.*"

# Ensure the dev package contains the public API headers
FILES_${PN}-dev += "${includedir}/barton/"

# Skip QA check for .so files in the -dev package
INSANE_SKIP_${PN}-dev += "dev-elf"

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable syntax FILES_${PN} is deprecated in modern BitBake/Yocto. The recommended syntax uses a colon separator instead of an underscore. These should be changed to FILES:${PN} to align with current best practices and avoid potential deprecation warnings in newer Yocto releases.

Copilot uses AI. Check for mistakes.
FILES_${PN}-dev += "${includedir}/barton/"

# Skip QA check for .so files in the -dev package
INSANE_SKIP_${PN}-dev += "dev-elf"

Copilot AI Jan 13, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable syntax INSANE_SKIP_${PN} is deprecated in modern BitBake/Yocto. The recommended syntax uses a colon separator instead of an underscore. This should be changed to INSANE_SKIP:${PN} to align with current best practices and avoid potential deprecation warnings in newer Yocto releases.

Suggested change
INSANE_SKIP_${PN}-dev += "dev-elf"
INSANE_SKIP:${PN}-dev += "dev-elf"

Copilot uses AI. Check for mistakes.
@cleithner-comcast

Copy link
Copy Markdown
Contributor

This PR is targetting main. Please reopen for develop.

@tleacmcsa
tleacmcsa marked this pull request as draft January 26, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants