Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: implement libpointmatcher turnkey install scripts for user who have cloned the repo #547

Conversation

RedLeader962
Copy link
Collaborator

@RedLeader962 RedLeader962 commented Dec 22, 2023

Description

Summary:

Implemented a scripts for easily install both the dependencies and libpointmatcher on unbuntu. Both script use the build-system install script logic under the hood. All script including the build-system have their corresponding test in bats. Also fixed sevarl bugs related to build-system install scripts.

Changes and type of changes:

issue NMO-353 and NMO-460 on NorLab youtrack

Features

  • feat: implemented a user side installer script for libpointmatcher dependencies and libpointmatcher (it call the build system version under the hood)
  • feat: added a --test-run flag plus dry-run logic to lpm_install.*.bash script for efficiently testing lpm_install.*.bash and libpointmatcher_[dependencies_]installer.bash scripts

Bug fix

  • fix: solved the logic for passing CMAKE_INSTALL_PREFIX flag to the sourced installer sub-script
  • fix: solved the build system installer git checkout tag landing out of the if clause on the parent level
  • fix: the " or exit " command need to return 1 and output redirection to stder on error [NMO-460]

Test

  • test: added build system installer related bats test
  • test: added user installer related bats test
  • test: added .env.libpointmatcher bats test

Others

  • chore(readme): adjusted the awesome badges spacing and text size
  • chore(readme): header formating
  • ci(codeowner): update and clean entries
  • chore: added convenient run configuration for script help menu
  • update NBS and N2ST submodule to latest

Checklist:

Code related

  • I have made corresponding changes to the documentation (i.e.: function, class, script header,
    README.md)
  • I have commented hard-to-understand code
  • I have added tests that prove my fix is effective or that my feature works
  • All tests pass locally with my changes (Check README.md #Contributing for local testing procedure using libpointmatcher-build-system)

PR creation related

  • My pull request base ref branch is set to the develop branch (the build-system won't be triggered otherwise)
  • My pull request branch is up-to-date with the develop branch (the build-system will reject it otherwise)

PR description related

  • I have included a quick summary of the changes
  • I have included a high-level list of changes and their corresponding type
  • I have indicated the related issue's id with # <issue-id> if changes are of type fix

Note for repository admins

Release PR related

  • Only repository admins have the privilege to push/merge on the default branch (ie: master) and the release branch.
  • Keep PR in draft mode until all the release reviewers are ready to push the release.
  • Once a PR from release -> master branch is created (not in draft mode),
    • it triggers the build-system test
    • (in-progress) and it triggers the semantic release automation

…ementation-and-refactor-out-to-NBS-generic-install-logic-NMO-436
…have cloned the repo [NMO-353]

- feat: implemented a user side installer script for libpointmatcher dependencies and libpointmatcher (it call the build system version under the hood)
- fix: solved the logic for passing CMAKE_INSTALL_PREFIX flag to the sourced installer sub-script
- feat: added a `--test-run` flag plus dry-run logic to `lpm_install.*.bash` script for efficiently testing `lpm_install.*.bash` and `libpointmatcher_[dependencies_]installer.bash` scripts
- fix: solved the build system installer git checkout tag landing out of the if clause on the parent level

- test: added build system installer related bats test
- test: added user installer related bats test
- test: added `.env.libpointmatcher` bats test

#### Others
- ci(codeowner): update and clean entries
- chore: added convenient run configuration for script help menu
- update NBS and N2ST submodule to latest
…utput redirection to stder on error [NMO-457]
Copy link

sonarcloud bot commented Dec 22, 2023

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

@RedLeader962
Copy link
Collaborator Author

@pomerlef For your info, the review request was triggered because I've edited the root README.md. Apart from the readme, all other changes in this PR are related to the build-system, the user install script and the code owner file. To save time, I recommend you make the revision of the readme later, in the release branch after I merge the PR so that you do only the revision of the release.

@RedLeader962 RedLeader962 merged commit da03e7a into develop Dec 22, 2023
6 checks passed
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.

None yet

1 participant