Skip to content

Conversation

@wineee
Copy link
Member

@wineee wineee commented Sep 10, 2025

This commit transitions the project's license management from the deprecated .reuse/dep5 format to the modern REUSE.toml configuration. The changes include:

  1. Removed old .reuse/dep5 file and multiple license text files (Apache- 2.0, GPL-3.0-only, LGPL-3.0-only)
  2. Renamed GPL-2.0-only.txt to GPL-2.0-or-later.txt to reflect actual license usage
  3. Added comprehensive REUSE.toml file with detailed SPDX annotations for different file types
  4. Updated README.md to reference REUSE file instead of direct LICENSE file
  5. Modified debian/copyright to use GPL-2+ instead of LGPL-3+ and added proper file-specific copyright attributions
  6. Updated SPDX license identifiers in several source files from complex multi-license expressions to GPL-2.0-or-later

The migration ensures better compliance with REUSE specification and simplifies license management across the project.

Influence:

  1. Verify all source files contain proper SPDX headers
  2. Test build process to ensure license changes don't affect compilation
  3. Check that debian packaging still works correctly with updated copyright file
  4. Validate that the new REUSE.toml configuration covers all file types appropriately

chore: 更新许可证配置以符合 REUSE 规范

本次提交将项目的许可证管理从过时的 .reuse/dep5 格式迁移到现代的
REUSE.toml 配置。变更包括:

  1. 移除了旧的 .reuse/dep5 文件和多个许可证文本文件(Apache-2.0、GPL-3.0- only、LGPL-3.0-only)
  2. 将 GPL-2.0-only.txt 重命名为 GPL-2.0-or-later.txt 以反映实际许可证使 用情况
  3. 添加了包含详细 SPDX 注解的 REUSE.toml 文件,涵盖不同文件类型
  4. 更新了 README.md 以引用 REUSE 文件而不是直接的 LICENSE 文件
  5. 修改了 debian/copyright 使用 GPL-2+ 替代 LGPL-3+ 并添加了适当的文件特 定版权归属
  6. 更新了多个源文件中的 SPDX 许可证标识符,从复杂的多许可证表达式改为 GPL-2.0-or-later

此次迁移确保了更好地符合 REUSE 规范,并简化了整个项目的许可证管理。

Influence:

  1. 验证所有源文件包含正确的 SPDX 头信息
  2. 测试构建过程以确保许可证更改不影响编译
  3. 检查 Debian 打包在更新版权文件后仍能正常工作
  4. 验证新的 REUSE.toml 配置是否适当覆盖所有文件类型

Summary by Sourcery

Update license management to comply with the REUSE specification by migrating from the deprecated .reuse/dep5 format to a unified REUSE.toml configuration, removing old license files, and updating related references.

Enhancements:

  • Consolidate license metadata into a new REUSE.toml and remove obsolete .reuse/dep5 and standalone license text files
  • Rename GPL-2.0-only.txt to GPL-2.0-or-later.txt to reflect actual licensing terms
  • Standardize SPDX identifiers in source headers to GPL-2.0-or-later
  • Adjust Debian packaging copyright to use GPL-2+ with file-specific attributions

Documentation:

  • Update README to reference the REUSE file for licensing details instead of the standalone LICENSE

This commit transitions the project's license management from the
deprecated .reuse/dep5 format to the modern REUSE.toml configuration.
The changes include:
1. Removed old .reuse/dep5 file and multiple license text files (Apache-
2.0, GPL-3.0-only, LGPL-3.0-only)
2. Renamed GPL-2.0-only.txt to GPL-2.0-or-later.txt to reflect actual
license usage
3. Added comprehensive REUSE.toml file with detailed SPDX annotations
for different file types
4. Updated README.md to reference REUSE file instead of direct LICENSE
file
5. Modified debian/copyright to use GPL-2+ instead of LGPL-3+ and added
proper file-specific copyright attributions
6. Updated SPDX license identifiers in several source files from complex
multi-license expressions to GPL-2.0-or-later

The migration ensures better compliance with REUSE specification and
simplifies license management across the project.

Influence:
1. Verify all source files contain proper SPDX headers
2. Test build process to ensure license changes don't affect compilation
3. Check that debian packaging still works correctly with updated
copyright file
4. Validate that the new REUSE.toml configuration covers all file types
appropriately

chore: 更新许可证配置以符合 REUSE 规范

本次提交将项目的许可证管理从过时的 .reuse/dep5 格式迁移到现代的
REUSE.toml 配置。变更包括:
1. 移除了旧的 .reuse/dep5 文件和多个许可证文本文件(Apache-2.0、GPL-3.0-
only、LGPL-3.0-only)
2. 将 GPL-2.0-only.txt 重命名为 GPL-2.0-or-later.txt 以反映实际许可证使
用情况
3. 添加了包含详细 SPDX 注解的 REUSE.toml 文件,涵盖不同文件类型
4. 更新了 README.md 以引用 REUSE 文件而不是直接的 LICENSE 文件
5. 修改了 debian/copyright 使用 GPL-2+ 替代 LGPL-3+ 并添加了适当的文件特
定版权归属
6. 更新了多个源文件中的 SPDX 许可证标识符,从复杂的多许可证表达式改为
GPL-2.0-or-later

此次迁移确保了更好地符合 REUSE 规范,并简化了整个项目的许可证管理。

Influence:
1. 验证所有源文件包含正确的 SPDX 头信息
2. 测试构建过程以确保许可证更改不影响编译
3. 检查 Debian 打包在更新版权文件后仍能正常工作
4. 验证新的 REUSE.toml 配置是否适当覆盖所有文件类型
@sourcery-ai
Copy link

sourcery-ai bot commented Sep 10, 2025

Reviewer's Guide

This PR migrates project licensing from legacy DEP5 and individual license texts to a centralized REUSE.toml configuration, renames the GPL-2.0-only text file to reflect or-later usage, updates SPDX headers in source files to a single GPL-2.0-or-later identifier, and adjusts documentation and Debian packaging to align with the REUSE specification.

Entity relationship diagram for license annotation coverage in REUSE.toml

erDiagram
    REUSE_TOML ||--o| ANNOTATION : contains
    ANNOTATION ||--|{ FILE : covers
    REUSE_TOML {
      string version
      string SPDX-PackageName
      string SPDX-PackageDownloadLocation
    }
    ANNOTATION {
      string path
      string precedence
      string SPDX-FileCopyrightText
      string SPDX-License-Identifier
    }
    FILE {
      string filename
      string filetype
    }
Loading

File-Level Changes

Change Details Files
Migrate to modern REUSE.toml license configuration
  • Remove deprecated .reuse/dep5 file
  • Delete legacy license texts for Apache-2.0, GPL-3.0-only, LGPL-3.0-only
  • Add REUSE.toml with comprehensive SPDX annotations covering all file patterns
.reuse/dep5
LICENSES/Apache-2.0.txt
LICENSES/GPL-3.0-only.txt
LICENSES/LGPL-3.0-only.txt
REUSE.toml
Rename GPL license file for clarity
  • Rename GPL-2.0-only.txt to GPL-2.0-or-later.txt
LICENSES/GPL-2.0-only.txt
LICENSES/GPL-2.0-or-later.txt
Standardize SPDX headers in source files
  • Replace multi-license identifiers with a single GPL-2.0-or-later SPDX header
src/daemon/SingleWaylandDisplayServer.cpp
src/daemon/SingleWaylandDisplayServer.h
src/daemon/TreelandConnector.cpp
src/daemon/TreelandConnector.h
src/helper/HelperStartSingleMode.cpp
src/helper/singlewaylandhelper.cpp
src/helper/singlewaylandhelper.h
Update project documentation to reference REUSE
  • Modify README.md license section to point to the REUSE configuration
README.md
Adjust Debian packaging for updated licensing
  • Update debian/copyright to use GPL-2+ instead of LGPL-3+
  • Add proper file-specific copyright attributions
debian/copyright

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@deepin-ci-robot
Copy link

deepin pr auto review

根据提供的git diff,这是一个关于许可证变更的提交。主要变化包括:

  1. 删除了原有的dep5和多个LICENSE文件(Apache-2.0、GPL-2.0-only、GPL-3.0-only、LGPL-3.0-only)
  2. 新增了REUSE.toml文件,用于标准化许可证声明
  3. 更新了README.md中的许可证说明
  4. 修改了debian/copyright文件
  5. 更新了多个源代码文件中的SPDX许可证标识符

改进建议:

  1. 许可证变更的合理性:

    • 从多种许可证(Apache-2.0、LGPL-3.0等)统一为GPL-2.0-or-later,这简化了许可证管理
    • 使用REUSE.toml是现代开源项目的良好实践,有利于许可证合规性管理
  2. 潜在问题:

    • 删除了原有的LICENSE文件而没有保留副本,这可能导致历史版本的可追溯性问题
    • 建议在仓库中保留这些LICENSE文件的副本,至少在git历史中可以找到
  3. 改进建议:

    • 考虑在LICENSE目录下保留所有曾经使用过的许可证文件
    • 在REUSE.toml中添加对历史LICENSE文件的引用
    • 确保所有源代码文件的SPDX许可证标识符都已更新
    • 在变更日志中记录此次许可证变更的具体原因和时间
  4. 合规性建议:

    • 确保所有贡献者都同意此次许可证变更
    • 考虑添加一个迁移指南,说明如何处理基于旧许可证的代码分支
    • 在项目文档中明确说明许可证变更的影响
  5. 代码质量:

    • 所有源代码文件的SPDX许可证标识符都已正确更新为GPL-2.0-or-later
    • 建议验证所有文件的版权声明是否完整

总体而言,这次许可证变更简化了项目的许可证管理,采用REUSE标准是良好的做法。但需要注意保留历史许可证信息,确保项目的完整性和可追溯性。

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Hey there - I've reviewed your changes - here's some feedback:

  • It looks like debian/copyright.bak was accidentally committed—please remove that backup file from the PR.
  • The final REUSE.toml annotation block lists every source file individually—consider using broader glob patterns to keep the list maintainable.
  • Make sure any Debian packaging scripts or lintian configuration no longer reference the old dep5 format and are updated to use REUSE.toml.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- It looks like debian/copyright.bak was accidentally committed—please remove that backup file from the PR.
- The final REUSE.toml annotation block lists every source file individually—consider using broader glob patterns to keep the list maintainable.
- Make sure any Debian packaging scripts or lintian configuration no longer reference the old dep5 format and are updated to use REUSE.toml.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@deepin-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Groveer, wineee

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@wineee wineee merged commit 42d20c3 into linuxdeepin:master Sep 10, 2025
9 checks passed
@wineee wineee deleted the test branch September 10, 2025 08:49
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.

3 participants