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

Leave boost filesystem #581

Merged
merged 9 commits into from
Aug 16, 2024
Merged

Leave boost filesystem #581

merged 9 commits into from
Aug 16, 2024

Conversation

boxanm
Copy link
Collaborator

@boxanm boxanm commented Aug 11, 2024

Description

Summary:

Minor changes to the docs (mostly replacing old eth links with norlab).
I removed the boost::filesystem dependency completely from libpointmatcher and replaced it with the equivalent std::filesystem. Some of the boost methods have been deprecated for a long time and started causing compilation issues and unexpected behaviors on newer platforms.

Changes and type of changes (quick overview):

  • Update docs links
  • Remove the boost::filesystem dependency

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 contributing_instructions.md 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 indicated the related issue's id with # <issue-id> if changes are of type fix
  • I have included a high-level list of changes and their corresponding types
    (See commit_msg_reference.md for details)

@boxanm boxanm marked this pull request as ready for review August 11, 2024 13:47
@boxanm
Copy link
Collaborator Author

boxanm commented Aug 12, 2024

The build is failing on Bionic because we have an outdated compiler. This thread has an explanation.
@RedLeader962 can you add these lines to the Bionic's Dockerfile?

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-9 g++-9

RedLeader962 added a commit that referenced this pull request Aug 15, 2024
- Add command to set GCC and G++ 9 as bionic alternatives

Issue NMO-585 and PR #581
@RedLeader962
Copy link
Collaborator

@boxanm Does it mean that we can drop the Boost install step from build_system/ubuntu/lpm_install_dependencies_general_ubuntu.bash or is it required for other dependencies?

n2st::teamcity_service_msg_blockOpened "Install Libpointmatcher dependencies › Boost"
# https://www.boost.org/doc/libs/1_79_0/more/getting_started/unix-variants.html

sudo apt-get update &&
  sudo apt-get install --assume-yes "${APT_FLAGS[@]}" \
    libboost-all-dev &&
  sudo rm -rf /var/lib/apt/lists/*

n2st::teamcity_service_msg_blockClosed

@RedLeader962
Copy link
Collaborator

@boxanm So updating the LPM dependencies is a two steps process:

  1. rebuild and push the dependencies to dockerhub
  2. build and test the current PR.

I'm updating the build system dependencies install script in a separate branch dev-build-add-bionic-specific-gcc-install-requirement--nmo-585.
The dependencies are rebuilding at the moment and I've programmed a remote run for your PR branch that will start right after the dependencies are done re-building.
I'll keep you posted

@boxanm
Copy link
Collaborator Author

boxanm commented Aug 15, 2024

@RedLeader962 We still need boost for other stuff, for now I just replaced the broken dependency on boost::filesystem. Eventually I'd like to remove boost completely but that might be a longer project.

@RedLeader962
Copy link
Collaborator

RedLeader962 commented Aug 15, 2024

@boxanm dev-build-add-bionic-specific-gcc-install-requirement--nmo-585 PR #583 has passed and is now merge in develop. Subsequent remote run of the leave-boost-filesystem branch with the updated dependency is green. I've merge PR #583 into PR #581 and waiting for build #223 result.

Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
3.2% Duplication on New Code (required ≤ 3%)
B Maintainability Rating on New Code (required ≥ A)

See analysis details on SonarCloud

Catch issues before they fail your Quality Gate with our IDE extension SonarLint

@boxanm boxanm merged commit 9bc74b9 into develop Aug 16, 2024
5 of 6 checks passed
@boxanm boxanm deleted the leave-boost-filesystem branch August 16, 2024 09:58
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