Skip to content

chore: add REUSE compliance - #4268

Open
mpivchev wants to merge 1 commit into
masterfrom
reuse
Open

chore: add REUSE compliance#4268
mpivchev wants to merge 1 commit into
masterfrom
reuse

Conversation

@mpivchev

@mpivchev mpivchev commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

馃 AI (if applicable)

  • The content of this PR was partly or fully generated using AI

Signed-off-by: Milen Pivchev <milen.pivchev@gmail.com>
Copilot AI lite review requested due to automatic review settings August 18, 2026 12:27
@@ -1,5 +1,5 @@
// SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
// SPDX-License-Identifier: GPL-2.0-or-later

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

If you are 100% contributor to this, can we change to GPL 3? @marinofaggiana

@@ -1,5 +1,5 @@
// SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors
// SPDX-License-Identifier: GPL-2.0-or-later

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

If you are 100% contributor to this, can we change to GPL 3? @marinofaggiana

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Adds REUSE/SPDX compliance metadata across the repo and introduces automated REUSE checks in CI.

Changes:

  • Added REUSE.toml plus SPDX license texts and .license sidecar files to support REUSE tooling.
  • Replaced legacy Xcode/GPL boilerplate headers with SPDX header lines across many Swift/Obj鈥慍/header/script/config files.
  • Added a GitHub Actions workflow to enforce REUSE compliance on pull requests.

Reviewed changes

Copilot reviewed 83 out of 83 changed files in this pull request and generated no comments.

Show a summary per file
File Description
iOSClient/Viewer/NCViewerMedia/Core/NCMediaViewerLoadingPolicy.swift Switch SPDX license identifier (and keep SPDX header style).
iOSClient/Viewer/NCViewerMedia/Content/Video/VLC/NCVideoVLCViewControls.swift Add SPDX header lines to source file.
iOSClient/Viewer/NCViewerDocument/NCDocumentEditorSupport.swift Switch SPDX license identifier (and keep SPDX header style).
iOSClient/Utility/NCPopupViewController.swift Replace legacy header with SPDX + short attribution comment.
iOSClient/Share/NCShareUserCell.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCSharePaging.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShareNetworking.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShareLinkCell.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShareHeader.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShareCommon.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShareCommentsCell.swift Replace legacy header with SPDX header lines.
iOSClient/Share/NCShare.swift Replace legacy header with SPDX header lines (multiple copyright holders).
iOSClient/Share/NCShare+NCCellDelegate.swift Replace legacy header with SPDX header lines.
iOSClient/Share/Advanced/NCShareNewUserAddComment.swift Replace legacy header with SPDX header lines.
iOSClient/Share/Advanced/NCShareCells.swift Replace legacy header with SPDX header lines.
iOSClient/Share/Advanced/NCShareAdvancePermissionFooter.swift Replace legacy header with SPDX header lines.
iOSClient/Share/Advanced/NCShareAdvancePermission.swift Replace legacy header with SPDX header lines.
iOSClient/Settings/Advanced/Capabilities/NCCapabilitiesView.swift Replace legacy header with SPDX header lines.
iOSClient/Settings/Advanced/Capabilities/NCCapabilitiesModel.swift Replace legacy header with SPDX header lines.
iOSClient/Select/NCSelectOpen+SelectDelegate.swift Add SPDX header lines to source file.
iOSClient/Select/NCSelect.swift Replace legacy header with SPDX header lines.
iOSClient/Scan document/NCUploadScanDocument.swift Replace legacy header with SPDX header lines.
iOSClient/Scan document/NCScanCell.swift Replace legacy header with SPDX header lines.
iOSClient/Scan document/NCScan.swift Replace legacy header with SPDX header lines.
iOSClient/Scan document/NCScan+CollectionView.swift Replace legacy header with SPDX header lines.
iOSClient/Scan document/NCDocumentCamera.swift Replace legacy header with SPDX header lines.
iOSClient/Offline/NCOffline.swift Replace legacy header with SPDX header lines.
iOSClient/Notification/NCNotification.swift Replace legacy header with SPDX header lines.
iOSClient/Media/Cell/NCMediaCell.swift Replace legacy header with SPDX header lines.
iOSClient/Main/Create/NCCreateFormUploadConflictCell.swift Replace legacy header with SPDX header lines.
iOSClient/Main/Create/NCCreateFormUploadConflict.swift Replace legacy header with SPDX header lines.
iOSClient/Login/NCViewCertificateDetails.swift Replace legacy header with SPDX header lines.
iOSClient/Login/NCLoginQRCode.swift Replace legacy header with SPDX header lines.
iOSClient/Groupfolders/NCGroupfolders.swift Replace legacy header with SPDX header lines.
iOSClient/GUI/Test/NCBlurEffectsTestView.swift Add SPDX header lines to source file.
iOSClient/Extensions/View+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIView+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIToolbar+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UITabBarController+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UITabBar+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UILabel+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIImage+animatedGIF.m Add SPDX header lines; reduce legacy attribution text.
iOSClient/Extensions/UIImage+animatedGIF.h Add SPDX header lines; reduce legacy attribution text.
iOSClient/Extensions/UIImage+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIControl+Extension.swift Add SPDX header lines; keep brief attribution comment.
iOSClient/Extensions/UIColor+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIBarButton+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIApplication+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/UIAlertController+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/Optional+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/NotificationCenter+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/NSMutableAttributedString+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/DateFormatter+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/Data+Extension.swift Replace legacy header with SPDX header lines.
iOSClient/Extensions/Array+Extension.swift Add SPDX header lines; keep brief attribution comment.
iOSClient/Data/NCManageDatabase+Share.swift Replace legacy header with SPDX header lines.
iOSClient/Data/NCManageDatabase+E2EE.swift Replace legacy header with SPDX header lines.
iOSClient/Assistant/Task Detail/NCAssistantTaskDetail.swift Replace legacy header with SPDX header lines.
iOSClient/Assistant/Create Task/NCAssistantCreateNewTask.swift Replace legacy header with SPDX header lines.
WidgetDashboardIntentHandler/IntentHandler.swift Replace legacy header with SPDX header lines.
Widget/Widget-Brinding-header.h Add SPDX header lines; simplify existing comment.
Tests/Server.sh Add SPDX header lines to test helper script.
Tests/NextcloudIntegrationTests/LoginIntegrationTests.swift Replace legacy header with SPDX header lines.
Share/Share-Bridging-Header.h Add SPDX header lines; simplify existing comment.
REUSE.toml Add REUSE configuration and aggregated annotations.
README.md.license Add sidecar SPDX metadata for README.
Notification Service Extension/Notification_Service_Extension-Bridging-Header.h Replace legacy header with SPDX header lines.
Notification Service Extension/NotificationService.swift Replace legacy header with SPDX header lines.
LICENSES/OFL-1.1.txt Add OFL license text for REUSE.
LICENSES/MIT.txt Add MIT license text for REUSE.
LICENSES/LicenseRef-NextcloudTrademarks.txt Add trademark license reference for REUSE.
LICENSES/LicenseRef-Icons8.txt Add Icons8 license reference for REUSE.
LICENSES/GPL-3.0-or-later.txt Add GPL-3.0-or-later license text for REUSE.
LICENSES/CC0-1.0.txt Add CC0 license text for REUSE.
File Provider Extension UI/DocumentActionViewController.swift Replace legacy header with SPDX header lines.
CODE_OF_CONDUCT.md.license Add sidecar SPDX metadata for Code of Conduct.
Action Assistant/ActionViewController.swift Replace legacy header with SPDX header lines.
AGENTS.md Update documentation to reference the new REUSE CI workflow and REUSE.toml.
.swiftlint.yml Add SPDX header lines to config file.
.github/workflows/xcode.yml Add SPDX header lines to workflow.
.github/workflows/reuse.yml Add REUSE compliance workflow.
.github/workflows/lint.yml Add SPDX header lines to workflow.
.github/workflows/additional-targets.yml Add SPDX header lines to workflow.
Suppressed comments (5)

iOSClient/Viewer/NCViewerMedia/Core/NCMediaViewerLoadingPolicy.swift:1

  • This PR is titled as adding REUSE compliance, but it also changes the SPDX license identifier from GPL-2.0-or-later to GPL-3.0-or-later (also in iOSClient/Viewer/NCViewerDocument/NCDocumentEditorSupport.swift). If the project鈥檚 intended license for these files is still GPL-2.0-or-later, this should be reverted; if the intent is to relicense, the PR title/description should explicitly call that out since it鈥檚 more than a formatting/compliance change.
    iOSClient/Utility/NCPopupViewController.swift:1
  • Typo in comment: progect should be project.
    iOSClient/Share/Advanced/NCShareNewUserAddComment.swift:1
  • The newly added SPDX copyright year for TSI-mc is 2006, but the previous header indicated creation in 2021. If 2006 isn鈥檛 correct provenance for this file鈥檚 contents, update it to the correct year (or year range) to avoid incorrect REUSE metadata.
    iOSClient/Extensions/UIImage+animatedGIF.m:1
  • For third-party sourced code, the attribution Found in Internet is too vague for SPDX/REUSE purposes, and the license identifier may not match the actual upstream license. Consider adding a concrete source reference (URL/repo + version/commit if possible) and ensuring the SPDX copyright/license reflect the original authorship and the actual upstream license (or cover it via REUSE.toml annotations if needed).
    iOSClient/Viewer/NCViewerMedia/Content/Video/VLC/NCVideoVLCViewControls.swift:1
  • Some newly added SPDX copyright lines omit a year/range for Nextcloud GmbH (e.g., this file). For consistency and clearer provenance, consider including the year (or year range) and, where appropriate, and Nextcloud contributors like other files in this PR.

馃挕 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

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.

2 participants