DFSG NEW Queue

DFSG, Licensing & New Packages Team

Review: git-diff-html 1.1-1

Package Information

Descriptiongenerate side-by-side HTML diff reports for Git repositories

git-diff-html renders the differences in a Git repository as a Gerrit/BeyondCompare-style side-by-side HTML report.

It supports comparing the working tree against HEAD or any commit, two commits against each other, and staged changes. Reports feature line-level and character-level (inline) diff highlighting, lightweight C/C++ syntax highlighting, a navigable file list, a change summary, and an interactive two-pane viewer with draggable splitters and synchronized horizontal scrolling. The report is a single self-contained HTML file.

MaintainerLu Haoran <luhaoran1981@icloud.com>
Changed ByLu Haoran <luhaoran1981@icloud.com>
SponsorDLange@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/luhaoran/git-diff-html.git (browse)
Trackerhttps://tracker.debian.org/pkg/git-diff-html
Uploaded12 days ago

New Package Report

.changes◂
Distributionunstable
DateThu, 22 Oct 2026 22:38:53 +0800
Sourcegit-diff-html
Version1.1-1
Changed-ByLu Haoran <luhaoran1981@icloud.com>
Architecturesource all
Changelog◂
git-diff-html (1.1-1) unstable; urgency=medium
 .
   * New upstream release 1.1.
     - Add plain two-file diff outside a git repository (thanks to Daniel Lange).
     - Add Symthosm brand to the report header.
   * Add Lu Haoran and Daniel Lange to debian/copyright.
.dsc◂
Package-Listgit-diff-html deb vcs optional arch=all
Sectionvcs
Priorityoptional
Componentmain
debian/copyright◂
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: git-diff-html
Upstream-Contact: 芦浩然 (Lu Haoran) <luhaoran1981@icloud.com>
Source: https://github.com/LuHaoran1981/GitDiffLocal

Files: *
Copyright: 2026 上海先道智觉科技有限责任公司 (Shanghai Xiandao Zhijue Technology Co., Ltd.), Symthosm
           2026 芦浩然 (Lu Haoran) <luhaoran1981@icloud.com>
           2026 Daniel Lange <DLange@debian.org>
License: GPL-3+

Files: debian/*
Copyright: 2026 上海先道智觉科技有限责任公司 (Shanghai Xiandao Zhijue Technology Co., Ltd.), Symthosm
License: GPL-3+

License: GPL-3+
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 .
 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <https://www.gnu.org/licenses/>.
 .
 On Debian systems, the complete text of the GNU General Public License
 version 3 can be found in "/usr/share/common-licenses/GPL-3".

DFSG Assistant LLM REVIEW 0 blocker, 0 important, 2 minor

This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.

Reviewed 11 days ago.

Proposes a replacement debian/watch: debian/watch in version 5 format

Report◂

DFSG NEW review for git-diff-html version 1.1-1

Summary

  • Licensing is DFSG-compliant and debian/copyright is accurate: Yes
  • Packaging is of good quality: Yes
  • Issues: 0 blocker, 0 important, 2 minor
  • debian/watch: old format (version 4)
  • debian/copyright: machine-readable
  • Scan before the review: nothing found

Licensing

Every upstream file is GPL-3-or-later: git_diff_html.py carries the full GPL-3+ notice naming 上海先道智觉科技有限责任公司 (Symthosm), README.md states GPL-3.0 with the same holder, and LICENSE is the unmodified GPL-3 text. debian/copyright is DEP-5, uses the catch-all Files: * plus a debian/* stanza, names all three holders (the Symthosm company, Lu Haoran, Daniel Lange), and includes the GPL-3+ notice with a pointer to /usr/share/common-licenses/GPL-3. The tree contains no binaries, generated data, fonts, images or embedded third-party code, so there is nothing to exclude and no licence to add.

Packaging

Clean, minimal packaging: 3.0 (quilt), debhelper compat 13, Standards-Version 4.7.0 (Policy is 4.7.4.1, so current), Architecture: all, correct runtime dependencies (python3:any, git), Rules-Requires-Root: no, and a rules file that installs the single script with an absolute /usr/bin/python3 shebang and relies on debian/git-diff-html.manpages and debian/docs. No patches, maintainer scripts or autopkgtest; the only defect is that the man page still declares version 1.0 and does not document the two-file comparison mode added in 1.1.

Issues

minor packaging 1. Man page still declares version 1.0 and omits the two-file compare mode added in 1.1 ◂
  • Files: git-diff-html.1:1, git-diff-html.1:4-10, debian/changelog:3-4
  • Basis: checked, in the package or with a reference tool
  • Evidence: .TH GIT-DIFF-HTML 1 "September 2026" "git-diff-html 1.0" "User Commands"; the DESCRIPTION/SYNOPSIS document only [ref] [file ...], while the 1.1 changelog entry says Add plain two-file diff outside a git repository.
  • Problem: The shipped manual page is the 1.0 one: it advertises the wrong version in the page footer and does not document the new plain two-file mode that git_diff_html.py supports (_plain_file_diff, the usage git-diff-html FILE_OLD FILE_NEW outside a repository). Documentation does not match the installed program.
  • Fix: Update the .TH header to the 1.1 version (or drop the version string) and document the two-file compare form in SYNOPSIS/DESCRIPTION; send the change upstream or as a quilt patch.
minor packaging 2. debian/watch is in the old version 4 format ◂
  • Files: debian/watch
  • Basis: found by the review tooling's own checks
  • Evidence: version=4
  • Problem: Version 5 is the current format of debian/watch.
  • Fix: Convert it to version 5; a mechanical conversion is under Proposed changes.
Verified ◂
  • Prescan holder: README.md:117 and README.md:231 ('Shanghai Xiandao Zhijue Technology Co., Ltd. (上海先道智觉科技有限责任公司), Symthosm') is named in debian/copyright:7 in the Files: * stanza, so the apparent omission is a matching artefact. git_diff_html.py:3's shorter spelling '上海先道智觉科技有限责任公司 (Symthosm(Xian Dao Zhi Jue))' is the same entity.
  • Read all five upstream files (git_diff_html.py, README.md, LICENSE, git-diff-html.1, .gitignore) and every file under debian/; the orig tarball git-diff-html_1.1.orig.tar.gz contains exactly those five files, so the tree is complete and unrepacked.
  • LICENSE is the verbatim 674-line GPL-3 text; git_diff_html.py:1-16 and README.md's licence sections state GPL-3-or-later for the same holder, matching the GPL-3+ short name in debian/copyright. No other licence wording (MIT/BSD/Apache/non-commercial/no-modification) occurs anywhere in the tree.
  • The HTML/CSS/JS in git_diff_html.py's HTML_TEMPLATE is the package's own code: no external script/link elements, no @font-face, no base64 assets, and the only URL is https://www.gnu.org/licenses/ in the licence header.
  • No build artifacts, bytecode, ELF objects, archives, images or fonts in the tree; .gitignore is the only other file and is covered by Files: *.
  • Packaging files: source/format 3.0 (quilt), debian/control (compat 13, Standards-Version 4.7.0, Vcs-* fields, ${misc:Depends} present, python3:any and git dependencies), debian/rules (empty override_dh_auto_build; override_dh_install installs git_diff_html.py as /usr/bin/git-diff-html and rewrites the shebang from the /usr/bin/env form, which matches line 1 of the script), debian/docs, debian/git-diff-html.manpages, debian/gbp.conf, debian/changelog. No debian/patches, maintscripts or tests exist, so no DEP-3 review applies.
  • dh_installman(1) confirms that names in debian/*.manpages are looked up in the current directory before debian/tmp at compat 11 and above, so the top-level git-diff-html.1 is found and installed.
  • Policy check: the policy tool reports Debian Policy 4.7.4.1; the package's Standards-Version 4.7.0 shares its first two components and is not an issue. Section: vcs and Architecture: all are appropriate for a VCS helper script.
  • Changelog: unstable, non-native 1.1-1, well-formed entries and ITP closure (#1148520) in the initial release.
  • uscan found the packaged version as the newest upstream release (upstream 1.1, packaged 1.1).
  • Every pointer of debian/copyright to /usr/share/common-licenses names a file that is there (GPL-3).
Not confirmed ◂
  • Homepage, Vcs-Git and Vcs-Browser URLs could not be fetched from the review environment, so their reachability and the correspondence of the salsa repository were not checked.
  • The copyright attribution of debian/* to the company rather than to Lu Haoran (the changelog author) rests on no file notice; it is plausible for Debian-packaging work and was not reported.
Proposed: debian/watch in version 5 format ◂

debian/watch is in an old format. This is the conversion made by uscan --update-watchfile, which has not been run against the upstream site: some defaults differ in version 5, so test it with uscan --report before use.

Version: 5

Template: Github
Dist: https://github.com/LuHaoran1981/GitDiffLocal

Uploader's response to the LLM review

All good. I mentioned these minor issues on mentors already, we will fix them with the next upload. But please process the package through NEW.

— Daniel Lange (dlange), 11 days ago

Review Information

accepted — allocated to awm 11 days ago, started 11 days ago, completed 11 days ago.

Final Comment

Back to Dashboard | View all reviews for this package