golang-github-apparentlymart-go-textseg-v17 17.0.1-1
Package Information
| Description | Unicode 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. |
|---|---|
| Maintainer | Debian Go Packaging Team <team+pkg-go@tracker.debian.org> |
| Changed By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Sponsor | tsimonq2@debian.org |
| Distribution | unstable |
| Architecture | all |
| VCS | git: https://salsa.debian.org/go-team/packages/golang-github-apparentlymart-go-textseg-v17.git (browse) |
| Closes | #1153351 |
| Tracker | https://tracker.debian.org/pkg/golang-github-apparentlymart-go-textseg-v17 |
| Uploaded | 1 hour ago |
New Package Report
.changes
| Date | Fri, 30 Oct 2026 18:27:06 +0100 |
|---|---|
| Source | golang-github-apparentlymart-go-textseg-v17 |
| Version | 17.0.1-1 |
| Changed-By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Architecture | source all |
| Distribution | unstable |
Changelog
golang-github-apparentlymart-go-textseg-v17 (17.0.1-1) unstable; urgency=medium . * Initial release (Closes: #1153351).
.dsc
| Package-List | golang-github-apparentlymart-go-textseg-v17-dev deb golang optional arch=all |
|---|---|
| Section | golang |
| Priority | optional |
| Component | main |
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/copyrightis 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 earlierFiles: *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 stanzaFiles: textseg/internal/charprops/ucd/READMEwithCopyright: 2017 Martin AtkinsandLicense: 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 against1991-2026in 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.configline only teaches licensecheck the short nameUnicode-3.0and is not a licence statement. - The top-level LICENSE is the Expat text reproduced under
License: Expatin debian/copyright, withCopyright (c) 2017 Martin AtkinsmatchingCopyright: 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.gointernal/charprops/ucd/auxiliary/GraphemeBreakTest.txt- andDH_GOLANG_INSTALL_EXTRA := textseg/internal/charprops/ucdis 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/_buildis safe: golang.pm's source-copy File::Find preprocess skips the top-leveldebiandirectory (and.pc,.gitand 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
golangaddon and buildsystem and Conflicts with dh-golang, so--with=golangis 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, packaged17.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.