-
Notifications
You must be signed in to change notification settings - Fork 3
Fix linux & add ci #12
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
Conversation
There was a problem hiding this comment.
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 fixes Linux compatibility issues and adds CI automation to the project. The main focus is replacing C++23 append_range calls with compatible insert operations and establishing build infrastructure.
- Replaces
append_rangewithinsertoperations for Linux compatibility - Adds comprehensive CI/CD workflow with GitHub Actions
- Implements cross-platform build system with Makefile and initialization scripts
Reviewed Changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/protocol/gossip/gossip.cpp | Replaces append_range calls with insert operations for Linux compatibility |
| src/multi/content_identifier_codec.cpp | Replaces append_range calls with insert operations for Linux compatibility |
| include/libp2p/transport/tcp/tcp_util.hpp | Adds missing break statement in switch case |
| include/libp2p/coro/channel.hpp | Refactors coroutine return statement for better compatibility |
| scripts/get_version.sh | Adds Git-based version string generator script |
| scripts/check_python.sh | Adds Python 3.12+ version check and installation script |
| scripts/README.md | Documents Python installation script usage and features |
| Makefile | Adds build automation with targets for initialization, configuration, and testing |
| CMakeLists.txt | Adds CMAKE_POSITION_INDEPENDENT_CODE setting |
| .github/workflows/build_and_test.yaml | Implements GitHub Actions CI workflow for Ubuntu and macOS |
| .ci/scripts/*.sh | Adds initialization scripts for dependencies and OS detection |
| .ci/.env | Defines package dependencies for different operating systems |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| return dns; | ||
| } | ||
| default: | ||
| break; |
Copilot
AI
Sep 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Adding a break statement in the default case of a switch where all other cases return is unnecessary. The break statement serves no purpose here since the function will return immediately after the switch block anyway.
| break; | |
| // no-op |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that was needed to fix gcc-14 build
36d4b4e to
06d0cea
Compare
Fix linux build:
default:Add CI: