DFSG NEW Queue

DFSG, Licensing & New Packages Team

golang-github-apparentlymart-go-textseg-v17 17.0.1-1

Package Information

DescriptionUnicode text segmentation for Go (Unicode 17)

This is an implementation of the Unicode Text Segmentation specification for Go. Specifically, it currently includes only the "grapheme cluster" segmentation algorithm.

MaintainerDebian Go Packaging Team <team+pkg-go@tracker.debian.org>
Changed ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Sponsortsimonq2@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/go-team/packages/golang-github-apparentlymart-go-textseg-v17.git (browse)
Closes#1153351
Trackerhttps://tracker.debian.org/pkg/golang-github-apparentlymart-go-textseg-v17
Uploaded1 hour ago

New Package Report

.changes◂
DateFri, 30 Oct 2026 18:27:06 +0100
Sourcegolang-github-apparentlymart-go-textseg-v17
Version17.0.1-1
Changed-ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Architecturesource all
Distributionunstable
Changelog◂
golang-github-apparentlymart-go-textseg-v17 (17.0.1-1) unstable; urgency=medium
 .
   * Initial release (Closes: #1153351).
.dsc◂
Package-Listgolang-github-apparentlymart-go-textseg-v17-dev deb golang optional arch=all
Sectiongolang
Priorityoptional
Componentmain
debian/copyright◂
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: https://github.com/apparentlymart/go-textseg
Upstream-Name: go-textseg

Files: *
Copyright: 2017 Martin Atkins
License: Expat
Comment: textseg/internal/machine/state.go is a port of the author's own Rust
 crate grapheme_machine (MIT).

Files: textseg/internal/charprops/ucd/*
       textseg/internal/charprops/property_table_raw.go
Copyright: 1991-2026 Unicode, Inc.
License: Unicode-3.0
Comment: ucd/ holds Unicode Character Database files. property_table_raw.go
 is generated from them by generate.go.

Files: debian/*
Copyright: 2026 Juan Manuel Méndez Rey <juan.mendezr@proton.me>
License: Expat

License: Expat
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
 in the Software without restriction, including without limitation the rights
 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 copies of the Software, and to permit persons to whom the Software is
 furnished to do so, subject to the following conditions:
 .
 The above copyright notice and this permission notice shall be included in all
 copies or substantial portions of the Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 SOFTWARE.

License: Unicode-3.0
 UNICODE LICENSE V3
 .
 COPYRIGHT AND PERMISSION NOTICE
 .
 Copyright © 1991-2026 Unicode, Inc.
 .
 NOTICE TO USER: Carefully read the following legal agreement. BY
 DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR
 SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE
 TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT
 DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE.
 .
 Permission is hereby granted, free of charge, to any person obtaining a
 copy of data files and any associated documentation (the "Data Files") or
 software and any associated documentation (the "Software") to deal in the
 Data Files or Software without restriction, including without limitation
 the rights to use, copy, modify, merge, publish, distribute, and/or sell
 copies of the Data Files or Software, and to permit persons to whom the
 Data Files or Software are furnished to do so, provided that either (a)
 this copyright and permission notice appear with all copies of the Data
 Files or Software, or (b) this copyright and permission notice appear in
 associated Documentation.
 .
 THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
 KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
 THIRD PARTY RIGHTS.
 .
 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE
 BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES,
 OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA
 FILES OR SOFTWARE.
 .
 Except as contained in this notice, the name of a copyright holder shall
 not be used in advertising or otherwise to promote the sale, use or other
 dealings in these Data Files or Software without prior written
 authorization of the copyright holder.

DFSG Assistant LLM REVIEW 0 blocker, 0 important, 1 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 0 hours ago.

Report◂

DFSG NEW review for golang-github-apparentlymart-go-textseg-v17 version 17.0.1-1

Summary

  • Licensing is DFSG-compliant and debian/copyright is accurate: No
  • Packaging is of good quality: Yes
  • Issues: 0 blocker, 0 important, 1 minor
  • debian/watch: version 5
  • debian/copyright: machine-readable
  • Scan before the review: nothing found

Licensing

All code is MIT (Expat) and the Unicode Character Database files are under Unicode License V3, a free licence whose full text debian/copyright reproduces; nothing in the tree has non-free terms and every UCD file the scan listed is accounted for. The file is accurate except for one over-broad stanza: Files: textseg/internal/charprops/ucd/* also matches the upstream-authored ucd/README, which is not Unicode, Inc.'s work and is not under Unicode-3.0, so one file in the tree is described with the wrong holder and licence.

Packaging

Clean, conventional Go team packaging: dh-go with the golang buildsystem, correct dh_golang environment (DH_GOLANG_EXCLUDES for the nested autoversion module, DH_GOLANG_INSTALL_EXTRA for the UCD data the tests read), all Build-Depends present in unstable, current Standards-Version 4.7.4, Multi-Arch: foreign as in other Go -dev packages, no patches or maintainer scripts, and a sensible initial changelog entry. The only non-standard touch, --builddirectory=debian/_build, is harmless because dh-golang's copy step skips the top-level debian directory.

Issues

minor licensing 1. Files: textseg/internal/charprops/ucd/* attributes upstream's own ucd/README to Unicode, Inc. under Unicode-3.0 ◂
  • Files: debian/copyright:10-15, textseg/internal/charprops/ucd/README
  • Basis: inferred from what was read, not seen directly
  • Evidence: Stanza reads Files: textseg/internal/charprops/ucd/* / Copyright: 1991-2026 Unicode, Inc. / License: Unicode-3.0. The matched file textseg/internal/charprops/ucd/README (present in the orig tarball, 351 bytes) says: The files in this directory are a subset of files from the Unicode Character Database, used here under the Unicode License whose text is provided in license.txt. These files each originate from a matching path under the following prefix: https://www.unicode.org/Public/UNICODE_VERSION/ucd/.
  • Problem: DEP-5 * matches /, so the wildcard stanza swallows every file below ucd/, including this README, which is a note written by the upstream (go-textseg) project, not a Unicode document. debian/copyright therefore states a wrong copyright holder and a wrong licence for that file, and the Unicode-3.0 grant cannot cover it; the README belongs to the earlier Files: * stanza (Martin Atkins, Expat).
  • Fix: Either narrow the UCD stanza to the actual data and licence files, e.g. Files: textseg/internal/charprops/ucd/*.txt textseg/internal/charprops/ucd/auxiliary/* textseg/internal/charprops/ucd/emoji/* textseg/internal/charprops/property_table_raw.go, or add a later stanza Files: textseg/internal/charprops/ucd/README with Copyright: 2017 Martin Atkins and License: Expat.
Verified ◂
  • Read debian/copyright, control, rules, changelog, gbp.conf, source/format, upstream/metadata, lrc.config, salsa-ci.yml and gitlab-ci.yml in full, and all 34 upstream files of the tree (debian/ excepted as instructed, .pc/ ignored).
  • The four UCD files the scan listed - textseg/internal/charprops/ucd/DerivedCoreProperties.txt, ucd/auxiliary/GraphemeBreakProperty.txt, ucd/auxiliary/GraphemeBreakTest.txt, ucd/emoji/emoji-data.txt - each begin # © 2025 Unicode®, Inc. with # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. and a pointer to the Unicode terms; they are matched by the Unicode-3.0 stanza, whose text is verbatim the Unicode License V3 of textseg/internal/charprops/ucd/license.txt. The 2025 header year against 1991-2026 in the copyright file is year drift only.
  • Unicode License V3 is a free licence (permission to use, copy, modify, merge, publish, distribute and sell, subject to notice retention), so the UCD data is DFSG-compliant; the lrc.config line only teaches licensecheck the short name Unicode-3.0 and is not a licence statement.
  • The top-level LICENSE is the Expat text reproduced under License: Expat in debian/copyright, with Copyright (c) 2017 Martin Atkins matching Copyright: 2017 Martin Atkins. No other file in the tree carries a copyright or licence notice (grep for Copyright/(C)/©/SPDX/Licensed under/public domain/All rights reserved over all files).
  • Textseg/internal/machine/state.go says it is a Go port of a Rust implementation in the "grapheme_machine" package on crates.io; debian/copyright's Comment records this, and it is the same author's MIT crate, so no extra holder or licence is needed.
  • textseg/internal/charprops/property_table_raw.go is the only generated file in the tree (// Generated by generate.go. DO NOT EDIT!); its generator (charprops/generate.go, //go:generate go run ./generate.go) and its inputs (gentable/, ucdparse/ and the ucd/*.txt files) are all present, so it is shipped with its preferred form for modification. No binaries, bytecode, minified files, archives or PDFs are in the tree.
  • autoversion/ is a separate Go module whose go.mod requires github.com/apparentlymart/go-textseg/v15; DH_GOLANG_EXCLUDES := ^(github.com/apparentlymart/go-textseg/v17/)?autoversion(/|$)$$ matches both the full import path and the relative directory, and with compat 14 DH_GOLANG_EXCLUDES_ALL defaults to true, so the module is neither built nor installed and its v15 dependency needs no Build-Depends (autoversion/textseg/version_agnostic.go imports v15).
  • The tests open the UCD data by relative path - property_table_test.go os.Open("ucd/auxiliary/GraphemeBreakProperty.txt"), textseg/grapheme_clusters_test.go internal/charprops/ucd/auxiliary/GraphemeBreakTest.txt - and DH_GOLANG_INSTALL_EXTRA := textseg/internal/charprops/ucd is what puts those files into the build workspace: the installed Debian::Debhelper::Buildsystem::golang runs a second File::Find over the extras and copies them to $builddir/src/$DH_GOPKG/, which is where those relative paths resolve. The same files are then installed into /usr/share/gocode, so the generated autopkgtest-pkg-go test can use them too.
  • --builddirectory=debian/_build is safe: golang.pm's source-copy File::Find preprocess skips the top-level debian directory (and .pc, .git and the builddir), so the build directory under debian/ cannot be copied into itself, and golang.pm's clean stage removes it. GO111MODULE=off/GOPROXY=off are the buildsystem's defaults, so the empty root go.sum is fine.
  • Build-Depends all resolve in unstable: debhelper-compat (= 14); dh-go 1.69, which provides the golang addon and buildsystem and Conflicts with dh-golang, so --with=golang is right; golang-any; and dpkg-build-api (= 1), provided by dpkg-dev 1.23.11.
  • Per dpkg-build-api(7), level 1 makes Rules-Requires-Root default to no, so leaving the field out is correct; Depends: ${misc:Depends} at compat 14 is harmless and dh_gencontrol fills the relationship substvars itself.
  • Standards-Version 4.7.4 against the reviewing system's Policy 4.7.4.1: first two components match, so it is current.
  • Multi-Arch: foreign on the Architecture: all -dev package is the Debian Go team convention (golang-github-spf13-cobra-dev is the same), and the package installs no binaries, so no sharing question arises.
  • No debian/patches/series, no patches, no maintainer scripts, no *.maintscript, no debian/tests directory (the Testsuite: autopkgtest-pkg-go metarunner plus dh_golang_autopkgtest covers testing); changelog is an initial release to unstable closing #1153351, matching Source/version 17.0.1-1 in the .dsc and the .dsc's Go-Import-Path.
  • uscan found the packaged version as the newest upstream release (upstream 17.0.1, packaged 17.0.1).
Not confirmed ◂
  • Not built or tested here, so the build workspace layout the tests depend on is reasoned from the dh-golang buildsystem source, not observed; no build failure is suspected.
  • The exact author of textseg/internal/charprops/ucd/README is inferred from its text (it describes the upstream project's vendoring of the UCD) - it is certainly not a Unicode, Inc. document, which is what the reported issue rests on.
Proposed changes ◂

None.

Uploader's response to the LLM review

The uploader was emailed about the review 0 hours ago.

Back to Dashboard | View all reviews for this package