Skip to content

Add CMCONF system configuration#3

Merged
mikusaq merged 6 commits intomasterfrom
BAF-1150/CMCONF-update
Aug 27, 2025
Merged

Add CMCONF system configuration#3
mikusaq merged 6 commits intomasterfrom
BAF-1150/CMCONF-update

Conversation

@mikusaq
Copy link
Contributor

@mikusaq mikusaq commented Aug 12, 2025

New cmakelib component CMCONF is in development, which should be added to Example project.

Summary by CodeRabbit

  • New Features

    • Adds an example CMCONF-based system for package configuration and initialization.
    • Adds default storage entries and a remote package-repository URI template with a default revision.
    • Disables local package usage by default while keeping HTTP auth configurable.
  • Documentation

    • Reworked README to focus on CMCONF workflows and package-repo usage.
    • Added configuration README with install/uninstall and system-renaming guidance.

@mikusaq mikusaq requested a review from koudis August 12, 2025 13:04
@mikusaq mikusaq self-assigned this Aug 12, 2025
@coderabbitai
Copy link

coderabbitai bot commented Aug 12, 2025

Walkthrough

Adds CMCONF integration and an example CMCONF system: requires CMLIB/CMCONF, initializes EXAMPLE, declares STORAGE_LIST and STORAGE_LIST_DEP, adds config template with remote package URI/template and packaging flags, and updates README and config docs for CMCONF-centric usage.

Changes

Cohort / File(s) Summary of modifications
Storage / CMCONF init
CMLibStorage.cmake
Added FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED), invoked CMCONF_INIT_SYSTEM(EXAMPLE), declared STORAGE_LIST = DEP, and set STORAGE_LIST_DEP = "https://github.com/bacpack-system/package-tracker.git".
Example CMCONF config
config/CMCONF_EXAMPLEConfig.cmake
New file: finds CMLIB CMCONF, invokes CMCONF_INIT_SYSTEM(EXAMPLE), sets BA_PACKAGE_LOCAL_USE OFF, BA_PACKAGE_LOCAL_PATH "", clears BA_PACKAGE_HTTP_AUTHORIZATION_HEADER, sets BA_PACKAGE_URI_REVISION = master, and defines BA_PACKAGE_URI_TEMPLATE_REMOTE with commented hosting alternatives.
Documentation updates
README.md, config/README.md
README.md reworked to emphasize CMCONF-based configuration and package-repository workflow; config/README.md added with install/uninstall instructions, rename workflow, prerequisites, and links.
Minor comment edits
CMakeLists.txt
Comment text adjusted above install/deps lines; no functional changes.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant Project as CMake Project
  participant CMLIB as CMLIB (CMCONF)
  participant CMCONF as CMCONF System
  Project->>CMLIB: FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED)
  Project->>CMCONF: CMCONF_INIT_SYSTEM(EXAMPLE)
  Project->>CMCONF: set(STORAGE_LIST = DEP)
  Project->>CMCONF: set(STORAGE_LIST_DEP = "https://github.com/bacpack-system/package-tracker.git")
  note right of CMCONF #eef8ff: EXAMPLE system initialized\nstorage variables declared
Loading
sequenceDiagram
  autonumber
  participant Config as CMCONF_EXAMPLEConfig.cmake
  participant CMLIB as CMLIB (CMCONF)
  participant CMCONF as CMCONF System
  Config->>CMLIB: FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED)
  Config->>CMCONF: CMCONF_INIT_SYSTEM(EXAMPLE)
  Config->>CMCONF: BA_PACKAGE_LOCAL_USE = OFF
  Config->>CMCONF: BA_PACKAGE_LOCAL_PATH = ""
  Config->>CMCONF: BA_PACKAGE_HTTP_AUTHORIZATION_HEADER = ""
  Config->>CMCONF: BA_PACKAGE_URI_REVISION = master
  Config->>CMCONF: BA_PACKAGE_URI_TEMPLATE_REMOTE = <remote template>
  note right of CMCONF #eef8ff: Template and auth variables\nconfigured for remote repo usage
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested reviewers

  • koudis

Poem

A nibble of CMake, a hop and a cheer,
I wired CMCONF so the paths are clear.
Remote burrows mapped, local trails undone,
STORAGE_LIST set—my fetch has begun!
I sniff each URI, packages delivered—hop, done! 🐇📦

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch BAF-1150/CMCONF-update

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🔭 Outside diff range comments (2)
CMLibStorage.cmake (2)

9-11: Parameterize storage URL for flexibility and to support private forks

Expose the URL as a cache variable to allow per-environment overrides.

Apply this diff:

-# Defining Package Tracker storage url
-SET(STORAGE_LIST_DEP "https://github.com/bacpack-system/package-tracker.git")
+# Defining Package Tracker storage URL (cache to allow overrides)
+SET(STORAGE_LIST_DEP "https://github.com/bacpack-system/package-tracker.git" CACHE STRING "Package Tracker storage URL")

1-11: Remove duplicate CMCONF_INIT_SYSTEM(EXAMPLE) and add consumers for STORAGE_LIST variables

We found two CMCONF_INIT_SYSTEM(EXAMPLE) calls and no references to the storage variables:

• Duplicate in CMLibStorage.cmake (line 4) alongside the one in config/CMCONF_EXAMPLEConfig.cmake (line 7).
STORAGE_LIST/STORAGE_LIST_DEP are only defined in CMLibStorage.cmake (lines 7–10) with no consumers found.

Action items:

  • Remove the extra init in CMLibStorage.cmake so that only the call in config/CMCONF_EXAMPLEConfig.cmake remains:
    CMLibStorage.cmake
    - CMCONF_INIT_SYSTEM(EXAMPLE)
  • Ensure your build logic actually uses STORAGE_LIST and STORAGE_LIST_DEP (e.g., include loops or helper functions in your main CMakeLists or in the example config module).
🧹 Nitpick comments (1)
config/CMCONF_EXAMPLEConfig.cmake (1)

13-15: Make local packaging flags user-overridable without editing this file

If developers need to test local packages, forcing BA_PACKAGE_LOCAL_USE OFF here may be inconvenient. Consider only setting defaults when not already defined.

Example (if CMCONF_SET respects current values, skip; otherwise guard before setting):

-CMCONF_SET(BA_PACKAGE_LOCAL_USE OFF)
-CMCONF_SET(BA_PACKAGE_LOCAL_PATH "")
+if(NOT DEFINED BA_PACKAGE_LOCAL_USE)
+  CMCONF_SET(BA_PACKAGE_LOCAL_USE OFF)
+endif()
+if(NOT DEFINED BA_PACKAGE_LOCAL_PATH)
+  CMCONF_SET(BA_PACKAGE_LOCAL_PATH "")
+endif()

Please confirm CMCONF_SET’s semantics (does it overwrite unconditionally or only set defaults?). If it overwrites, the guards above are helpful.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 82b1f49 and cd172e5.

📒 Files selected for processing (2)
  • CMLibStorage.cmake (1 hunks)
  • config/CMCONF_EXAMPLEConfig.cmake (1 hunks)
🔇 Additional comments (4)
config/CMCONF_EXAMPLEConfig.cmake (3)

1-26: Good addition: clear, documented baseline for the EXAMPLE CMCONF system

The configuration is cohesive, self-documented, and sets sensible defaults. Nice work establishing an explicit system config file.


20-21: No consumption of BA_PACKAGE_HTTP_AUTHORIZATION_HEADER – safe to leave empty
A repository-wide search for BA_PACKAGE_HTTP_AUTHORIZATION_HEADER shows it’s only declared in config/CMCONF_EXAMPLEConfig.cmake and never referenced in the code that emits HTTP headers. There’s no downstream logic that would unconditionally send an empty header, so this configuration is harmless.

Likely an incorrect or invalid review comment.


25-26: Parameterize revision and remote base URI for reproducibility

I wasn’t able to locate the CMCONF_SET macro definition in this repo—please ensure that the CMCONF module is imported correctly and verify that the placeholders <REVISION>, <GIT_PATH>, <PACKAGE_GROUP_NAME>, and <ARCHIVE_NAME> match its expected syntax. In the meantime, expose both the revision and the remote base URL to overrides (via environment variables or CMake cache) while preserving the current defaults:

-CMCONF_SET(BA_PACKAGE_URI_REVISION master)
-CMCONF_SET(BA_PACKAGE_URI_TEMPLATE_REMOTE "https://gitea.bringauto.com/fleet-protocol/package-repository/media/<REVISION>/package/<GIT_PATH>/<PACKAGE_GROUP_NAME>/<ARCHIVE_NAME>")
+set(_BA_PACKAGE_URI_REVISION_DEFAULT "master")
+if(DEFINED ENV{BA_PACKAGE_URI_REVISION})
+  set(_BA_PACKAGE_URI_REVISION "$ENV{BA_PACKAGE_URI_REVISION}")
+else()
+  set(_BA_PACKAGE_URI_REVISION "${_BA_PACKAGE_URI_REVISION_DEFAULT}")
+endif()
+CMCONF_SET(BA_PACKAGE_URI_REVISION "${_BA_PACKAGE_URI_REVISION}")
+
+# Expose the remote base URI for easier overrides
+set(_BA_PACKAGE_BASE_URI_DEFAULT "https://gitea.bringauto.com/fleet-protocol/package-repository")
+if(DEFINED ENV{BA_PACKAGE_BASE_URI})
+  set(_BA_PACKAGE_BASE_URI "$ENV{BA_PACKAGE_BASE_URI}")
+else()
+  set(_BA_PACKAGE_BASE_URI "${_BA_PACKAGE_BASE_URI_DEFAULT}")
+endif()
+CMCONF_SET(BA_PACKAGE_URI_TEMPLATE_REMOTE
+  "${_BA_PACKAGE_BASE_URI}/media/<REVISION>/package/<GIT_PATH>/<PACKAGE_GROUP_NAME>/<ARCHIVE_NAME>"
+)

– Verify that the placeholder tokens align with CMCONF’s template parser.

CMLibStorage.cmake (1)

6-11: LGTM on storage shape; naming aligns with expected pattern STORAGE_LIST_

The STORAGE_LIST and STORAGE_LIST_ convention is clear and easy to extend.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (8)
config/README.md (3)

11-15: Link to the config file and fix minor grammar in install instructions

Use the defined link reference and correct the phrasing.

-The EXAMPLE config is in `CMCONF_EXAMPLEConfig.cmake` file. To install it, run following command:
+The EXAMPLE config is in [CMCONF_EXAMPLEConfig.cmake]. To install it, run the following command:

17-21: Fix minor grammar in uninstall instructions

"run following command" -> "run the following command".

-To uninstall it, run following command:
+To uninstall it, run the following command:

25-31: Clarify and standardize the “Change System Name” section

Improve grammar and unify bullet punctuation.

-Let `X` is a SYSTEM name.
+Let X be a system name.
@@
-- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`,
-- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`,
-- Rename `EXAMPLE` to `X` in `CMLibStorage.cmake`.
-- Install `CMCONF_XConfig.cmake` as described above.
+- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`.
+- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`.
+- Rename `EXAMPLE` to `X` in `CMLibStorage.cmake`.
+- Install `CMCONF_XConfig.cmake` as described above.
README.md (5)

19-23: Specify language for fenced code block (MD040)

Add a language hint for the build commands block.

-```
+```bash
 mkdir -p _build && cd _build
 cmake ../
 make -j 8

---

`27-29`: **Tighten wording and fix “informations” typo; emphasize CMCONF**

Align phrasing with the CMCONF-centric guidance and correct grammar.


```diff
-This project can be used as a starting point for other projects. The following steps describe how
-to use it with emphasis on BacPack specific changes. More informations can be found in
-[example usage documentation](https://bacpack-system.github.io/example_usage).
+This project can be used as a starting point for other projects. The following steps describe how
+to use it with emphasis on CMCONF-specific changes. More information can be found in
+[example usage documentation](https://bacpack-system.github.io/example_usage).

32-36: Improve clarity of Steps 2–3 and fix grammar

Use clearer phrasing and simplify “outside of” to “outside” per style hint.

-2. Choose in which [CMCONF] System the project will belong to.
-3. Update CMCONF system config file as stated in [config/README.md]. The config file shall not be,
-   in most cases, part of the project and shall be stored outside of the project source tree. It
-   depends on usage - if the system has the only project it could make sense to be part of the
-   project source tree.
+2. Choose which [CMCONF] system the project belongs to.
+3. Update the CMCONF system config file as described in [config/README.md]. In most cases, the
+   config file should not be part of the project; store it outside the project source tree.
+   Depending on usage: if the system contains only this project, it may make sense to keep the
+   config within the project source tree.

10-11: Minor wording tweak in Requirements

Add an article and normalize casing for consistency.

-- Dependencies built and available in Package Repository. See [example usage documentation]
-- [CMCONF system] installed
+- Dependencies built and available in a package repository. See [example usage documentation]
+- [CMCONF system] installed.

39-40: Clarify package repository note

Smoother, more precise wording.

-      all used Packages must be present in the used Package Repository
+      all referenced packages must exist in the selected package repository
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between cd172e5 and 13492c9.

📒 Files selected for processing (3)
  • CMakeLists.txt (1 hunks)
  • README.md (1 hunks)
  • config/README.md (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • CMakeLists.txt
🧰 Additional context used
🪛 LanguageTool
README.md

[style] ~34-~34: This phrase is redundant. Consider using “outside”.
Context: ...part of the project and shall be stored outside of the project source tree. It depends ...

(OUTSIDE_OF)

🪛 markdownlint-cli2 (0.17.2)
README.md

19-19: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

config/README.md

33-33: Link and image reference definitions should be needed
Unused link or image reference definition: "cmconf_exampleconfig.cmake"

(MD053, link-image-reference-definitions)


34-34: Link and image reference definitions should be needed
Unused link or image reference definition: "package tracker"

(MD053, link-image-reference-definitions)


35-35: Link and image reference definitions should be needed
Unused link or image reference definition: "package tracker example"

(MD053, link-image-reference-definitions)


36-36: Link and image reference definitions should be needed
Unused link or image reference definition: "cmconf"

(MD053, link-image-reference-definitions)

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🧹 Nitpick comments (2)
config/README.md (2)

16-16: Add Windows note for symlink installs.

Symlink creation can be permission-gated on Windows; a short note helps prevent confusion.

+
+Note: On Windows, installing as a symlink may require Developer Mode or administrator privileges.

27-31: Add optional uninstall step and standardize bullet punctuation.

Avoid stale symlinks when renaming; make bullet punctuation consistent.

-- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`,
-- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`,
-- Rename `EXAMPLE` to `X` in `CMLibStorage.cmake`.
-- Install `CMCONF_XConfig.cmake` as described above.
+- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`.
+- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`.
+- Rename `EXAMPLE` to `X` in `CMLibStorage.cmake`.
+- (Optional) Uninstall the `EXAMPLE` config to avoid stale symlinks.
+- Install `CMCONF_XConfig.cmake` as described above.
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 771d440 and 347394e.

📒 Files selected for processing (1)
  • config/README.md (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: CMLibStorage.cmake:1-5
Timestamp: 2025-08-27T10:45:25.292Z
Learning: In this codebase, duplicate FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED) and CMCONF_INIT_SYSTEM() calls between CMLibStorage.cmake and config files are acceptable and not considered problematic.
📚 Learning: 2025-08-27T10:45:25.292Z
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: CMLibStorage.cmake:1-5
Timestamp: 2025-08-27T10:45:25.292Z
Learning: In this codebase, duplicate FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED) and CMCONF_INIT_SYSTEM() calls between CMLibStorage.cmake and config files are acceptable and not considered problematic.

Applied to files:

  • config/README.md
🪛 LanguageTool
config/README.md

[grammar] ~11-~11: There might be a mistake here.
Context: ...AMPLEConfig.cmake` file. To install it, run following command: ```bash cmake -DCMC...

(QB_NEW_EN)


[grammar] ~17-~17: There might be a mistake here.
Context: ...AMPLEConfig.cmake To uninstall it, run following command: bash cmake -DCMC...

(QB_NEW_EN)


[grammar] ~29-~29: There might be a mistake here.
Context: ...EXAMPLEtoXinCMLibStorage.cmake. - Install CMCONF_XConfig.cmake` as descri...

(QB_NEW_EN)

🔇 Additional comments (2)
config/README.md (2)

27-29: Note: duplicate CMCONF init/find calls are acceptable in this repo.

Your instruction to update CMLibStorage.cmake aligns with team norms; duplicate FIND_PACKAGE(... CMCONF ...) and CMCONF_INIT_SYSTEM() across config and storage files is acceptable here (per retrieved learnings).


11-21: Paths Verified

All referenced files exist at their expected locations:

  • config/CMCONF_EXAMPLEConfig.cmake
  • CMLibStorage.cmake

No further changes are needed.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (4)
config/README.md (4)

6-7: Tweak prerequisite wording for clarity.

Capitalize the sentence and use definite articles.

-- prepare Package Repository as described by [example usage documentation]
+- Prepare the Package Repository as described in the [example usage documentation].

11-11: Fix minor grammar and clarify where to run the command.

Specify the config directory to avoid ambiguity; keep the existing relative path.

-The EXAMPLE config is in `CMCONF_EXAMPLEConfig.cmake` file. To install it, run following command:
+The EXAMPLE config is in the `CMCONF_EXAMPLEConfig.cmake` file. From the config directory, run the following command to install it:

17-17: Mirror the install section grammar/direction.

Same grammar fix and directory note for uninstall.

-To uninstall it, run following command:
+To uninstall it, run the following command from the config directory:

27-30: Unify bullet punctuation.

End each bullet with a period.

-- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`,
-- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`,
+- Rename `CMCONF_EXAMPLEConfig.cmake` to `CMCONF_XConfig.cmake`.
+- Rename `EXAMPLE` to `X` in `CMCONF_XConfig.cmake`.
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 347394e and 4749681.

📒 Files selected for processing (1)
  • config/README.md (1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: CMLibStorage.cmake:1-5
Timestamp: 2025-08-27T10:45:25.292Z
Learning: In this codebase, duplicate FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED) and CMCONF_INIT_SYSTEM() calls between CMLibStorage.cmake and config files are acceptable and not considered problematic.
📚 Learning: 2025-08-27T10:45:25.292Z
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: CMLibStorage.cmake:1-5
Timestamp: 2025-08-27T10:45:25.292Z
Learning: In this codebase, duplicate FIND_PACKAGE(CMLIB COMPONENTS CMCONF REQUIRED) and CMCONF_INIT_SYSTEM() calls between CMLibStorage.cmake and config files are acceptable and not considered problematic.

Applied to files:

  • config/README.md
📚 Learning: 2025-08-27T12:08:17.004Z
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: config/README.md:6-7
Timestamp: 2025-08-27T12:08:17.004Z
Learning: In the bacpack-system/example-project codebase, "cmakelib" should be referenced in lowercase, not as "CMakeLib" or other capitalizations.

Applied to files:

  • config/README.md
📚 Learning: 2025-08-27T10:46:50.236Z
Learnt from: mikusaq
PR: bacpack-system/example-project#3
File: config/CMCONF_EXAMPLEConfig.cmake:5-5
Timestamp: 2025-08-27T10:46:50.236Z
Learning: In this codebase, FIND_PACKAGE calls in CMCONF config files do not need guards to prevent redundant lookups, as the duplicate calls are part of the intended design pattern.

Applied to files:

  • config/README.md
🪛 LanguageTool
config/README.md

[grammar] ~11-~11: There might be a mistake here.
Context: ...AMPLEConfig.cmake` file. To install it, run following command: ```bash cmake -DCMC...

(QB_NEW_EN)


[grammar] ~17-~17: There might be a mistake here.
Context: ...AMPLEConfig.cmake To uninstall it, run following command: bash cmake -DCMC...

(QB_NEW_EN)


[grammar] ~29-~29: There might be a mistake here.
Context: ...EXAMPLEtoXinCMLibStorage.cmake. - Install CMCONF_XConfig.cmake` as descri...

(QB_NEW_EN)

🔇 Additional comments (1)
config/README.md (1)

1-35: Overall docs look good.

Clear, minimal CMCONF how-to; links resolve; casing of “cmakelib” is consistent with project conventions.

@mikusaq mikusaq merged commit ffed186 into master Aug 27, 2025
1 check passed
@mikusaq mikusaq deleted the BAF-1150/CMCONF-update branch August 27, 2025 12:38
This was referenced Aug 29, 2025
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.

2 participants