-
Notifications
You must be signed in to change notification settings - Fork 34
refactor: merge qwlroots and waylib source code into treeland #453
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.
The pull request #453 has too many files changed.
We can only review pull requests with up to 300 changed files, and this pull request has 463.
a186438 to
9cfe25c
Compare
Removed qwlroots and waylib from git submodules, and merged their source code directly into the treeland repository. This change reduces development overhead during the rapid iteration phase of treeland, as frequent coordinated changes are required across treeland, qwlroots, and waylib. By merging them now, we simplify development and maintenance. In the future, when the project stabilizes, we may consider splitting them back into independent repositories. To prepare for this possible future split, the original directory structures and all files from qwlroots and waylib are preserved and placed under separate subdirectories in treeland. Original project commits at the time of merge: - qwlroots: https://github.com/vioken/qwlroots(00b09f9047ac0eaf26757e8af3d31f35d22bbce3) - waylib: https://github.com/vioken/waylib(9564027cc6c89dc5262c03d183f743b71a0e621e) 重构:将 qwlroots 和 waylib 项目代码合并到 treeland 将 qwlroots 和 waylib 从 git 子模块中移除,直接把它们的代码合并 到 treeland 项目中。这样做是为了在 treeland 快速迭代期间减少开发 成本,因为经常需要同时修改 treeland、waylib 和 qwlroots,合并后 开发会更方便,待项目稳定后再考虑重新拆分为独立项目。 为方便将来拆分,保留了原项目的目录结构和全部文件,并使用独立子 目录维护代码。 合并时原项目的提交信息如下: - qwlroots: https://github.com/vioken/qwlroots(00b09f9047ac0eaf26757e8af3d31f35d22bbce3) - waylib: https://github.com/vioken/waylib(9564027cc6c89dc5262c03d183f743b71a0e621e)
c60d279 to
c5d7ad2
Compare
018e615 to
8a95334
Compare
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: wineee, zccrs The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
1. Fixes and updates CI configurations for treeland. 2. Merges `reuse` files for comprehensive license information. 3. Updates dependencies in `debian/control` to align with the combined codebase. 4. Introduces separate build workflows for `waylib` and `qwlroots` to ensure they can be built independently. 5. This ensures modularity and prevents accidental breakages during future development, maintaining the option to separate these components again. chore: 修复 CI 并启用独立构建 1. 修复并更新了 treeland 的 CI 配置。 2. 合并 `reuse` 文件以提供全面的许可证信息。 3. 更新了 `debian/control` 中的依赖项,以与合并的代码库保持一致。 4. 引入了 `waylib` 和 `qwlroots` 的独立构建工作流程,以确保它们可以独立 构建。 5. 确保模块化,防止未来开发过程中意外损坏,保持再次分离这些组件的选项。
The ArchLinux build workflows for qwlroots, treeland and waylib now create a zip archive of the installed files in a staging directory and upload it as an artifact. This allows for easy inspection of the built files and verification of the build process's correctness. The zip includes a `PACKAGE_INFO.txt` containing package metadata, build configuration details, and a list of installed files. Pacman is used to install the zip tool if it isn't already available. feat: 上传构建产物为 zip 压缩包 qwlroots、treeland 和 waylib 的 ArchLinux 构建工作流程现在会在暂存目录中 创建已安装文件的 zip 压缩包,并将其作为工件上传。这样可以方便地检查构建 的文件并验证构建过程的正确性。该 zip 包含一个 `PACKAGE_INFO.txt`,其中包 含包元数据、构建配置详细信息和已安装文件列表。 如果 zip 工具尚不可用,则 使用 Pacman 安装它。
This commit adds a timeout of 3 seconds to several protocol unit tests in their respective CMakeLists.txt files. These tests were observed to block indefinitely in certain build environments, specifically when building deb packages. Adding a timeout ensures that these tests will not hang the build process, improving overall build reliability and preventing potential deadlocks. The timeout value of 3 seconds was chosen to allow sufficient time for the tests to complete under normal conditions while still providing a reasonable safeguard against indefinite blocking. fix: 为协议测试添加超时 此提交在其各自的 CMakeLists.txt 文件中为多个协议单元测试添加了 3 秒的超 时。据观察,这些测试在某些构建环境中(尤其是在构建 deb 软件包时)会无限 期地阻塞。添加超时可确保这些测试不会使构建过程挂起,从而提高整体构建可靠 性并防止潜在的死锁。选择 3 秒的超时值是为了在正常情况下为测试完成留出足 够的时间,同时仍提供合理的保护以防止无限期阻塞。
This commit enforces the use of Ninja as the build system during the debian package creation process for treeland, qwlroots, and waylib. This change was made to significantly improve build times, as Ninja generally offers faster and more efficient builds compared to the default make system. The changes involve adding `ninja-build` as a build dependency in the `debian/control` files and adding `-GNinja` to the `dh_auto_configure` commands in the `debian/rules` files for all three packages. This ensures that CMake uses Ninja to generate the build files. chore: 在 deb 打包过程中强制使用 Ninja 构建 此提交强制在 treeland、qwlroots 和 waylib 的 debian 包创建过程中使用 Ninja 作为构建系统。 此更改旨在显着缩短构建时间,因为与默认的 make 系统 相比,Ninja 通常提供更快、更高效的构建。 更改包括在 `debian/control` 文 件中添加 `ninja-build` 作为构建依赖项,并在所有三个包的 `debian/rules` 文件中的 `dh_auto_configure` 命令中添加 `-GNinja`。 这确保 CMake 使用 Ninja 来生成构建文件。
|
cppcheck 的 ci 失败无法避免,因为文件数量太多,导致它无法审查 |
Removed qwlroots and waylib from git submodules, and merged their source code directly into the treeland repository. This change reduces development overhead during the rapid iteration phase of treeland, as frequent coordinated changes are required across treeland, qwlroots, and waylib. By merging them now, we simplify development and maintenance. In the future, when the project stabilizes, we may consider splitting them back into independent repositories.
To prepare for this possible future split, the original directory structures and all files from qwlroots and waylib are preserved and placed under separate subdirectories in treeland.
Original project commits at the time of merge:
重构:将 qwlroots 和 waylib 项目代码合并到 treeland
将 qwlroots 和 waylib 从 git 子模块中移除,直接把它们的代码合并
到 treeland 项目中。这样做是为了在 treeland 快速迭代期间减少开发
成本,因为经常需要同时修改 treeland、waylib 和 qwlroots,合并后
开发会更方便,待项目稳定后再考虑重新拆分为独立项目。
为方便将来拆分,保留了原项目的目录结构和全部文件,并使用独立子
目录维护代码。
合并时原项目的提交信息如下: