Review: strftime4j 1.0.6-1
Package Information
| Description | Java implementation of the C strftime() function strftime4j is a Java implementation of the strftime() function defined in ISO C and POSIX: a time formatter for Java that supports all the standard syntax of the strftime function in C, following the Ruby implementation as its specification. It formats java.util.Date, java.util.Calendar and the java.time types (any TemporalAccessor), in a strict mode that fails when the object lacks a field the pattern needs, or a safe mode that leaves it out. |
|---|---|
| Maintainer | Debian Java Maintainers <pkg-java-maintainers@lists.alioth.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/java-team/strftime4j.git (browse) |
| Closes | #1149768 |
| Tracker | https://tracker.debian.org/pkg/strftime4j |
| Uploaded | 3 hours ago |
New Package Report
.changes
| Version | 1.0.6-1 |
|---|---|
| Changed-By | Juan Manuel Méndez Rey <juan.mendezr@proton.me> |
| Architecture | source all |
| Distribution | unstable |
| Date | Fri, 02 Oct 2026 21:50:05 +0200 |
| Source | strftime4j |
Changelog
strftime4j (1.0.6-1) unstable; urgency=medium . * Initial release. (Closes: #1149768)
.dsc
| Section | java |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | libstrftime4j-java deb java optional arch=all |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: strftime4j Upstream-Contact: Vasyl Khrystiuk <h6.msangel@gmail.com> Source: https://github.com/msangel/strftime4j Files: * Copyright: 2021, Vasyl Khrystyuk License: Expat Comment: The source files carry no headers; LICENSE (MIT, "Copyright (c) 2021 Vasyl Khrystyuk") covers the project. pom.xml spells the author's name "Vasyl Khrystiuk" (inceptionYear 2021). spec.rb and a few code comments quote Ruby's one-line strftime flag descriptions (time.c); no Ruby code is copied. 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.
DFSG Assistant LLM REVIEW 0 blocker, 0 important, 0 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 2 hours ago.
Report
DFSG NEW review for strftime4j version 1.0.6-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 0 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
The whole upstream tree is MIT/Expat under the root LICENSE, whose notice ("Copyright (c) 2021 Vasyl Khrystyuk") debian/copyright reproduces in its Files: * stanza; pom.xml additionally declares MIT, and no source file carries a conflicting header. The only third-party text is a handful of one-line strftime flag descriptions quoted from Ruby's Time#strftime documentation in spec.rb and one test comment, which the copyright file's Comment documents and which is de minimis quoting, not copied Ruby code. debian/copyright is DEP-5 with a correct Format line, matches every file in the tree, and includes the full Expat text.
Packaging
Standard maven-debian-helper packaging: dh auto-selects the maven build system from pom.xml (verified in Dh_Buildsystems.pm/Buildsystem/maven.pm, so the bare dh $@ is right), junit4 is remapped to the 4.x alias by maven.rules, and the build dependencies and their transitive plugins all exist in the archive. Both patches carry DEP-3 headers and match the reasons given in debian/README.source and debian/maven.ignoreRules; the autopkgtest exercises the installed jar, and the changelog (initial 1.0.6-1, unstable, ITP closed) and Standards-Version 4.7.4 (Policy is 4.7.4.1) are in order.
Issues
None.
Verified
- Read debian/copyright, control, rules, changelog, README.source, gbp.conf, source/format, tests/control, tests/format, upstream/metadata, both patches and series, maven.rules, maven.ignoreRules and libstrftime4j-java.poms in full; the whole upstream tree was reviewed (6 top-level files plus src/main and src/test, 26 Java/ruby/text files) and contains no binaries, images, minified or generated files.
- The prescan's author check reported "every holder found is named in debian/copyright"; checked by hand: LICENSE says
Copyright (c) 2021 Vasyl Khrystyukand the Files: * stanza saysCopyright: 2021, Vasyl Khrystyuk. The "Vasyl Khrystiuk" spelling in pom.xml and Upstream-Contact is the same person, as the Comment explains. - A grep over src/, pom.xml, README.md and spec.rb for copyright/licence wording found only pom.xml's
<name>MIT License</name>and README's "Standard MIT license"; no file has a header with other terms, soFiles: *with Expat is complete, and the stand-aloneLicense: Expatparagraph has the full MIT text (not in /usr/share/common-licenses). - spec.rb:12-21 and the comment at StrftimeFormatterTest.java:61-62 quote Ruby's one-line strftime descriptions (apidock/ruby time.c), as the copyright file's Comment states (
spec.rb and a few code comments quote Ruby's one-line strftime flag descriptions); no Ruby code is copied, so no Ruby/GPL licence text is required. - No vendored third-party code: every file under src/ declares package ua.co.k.strftime or ua.co.k and imports only java.* and org.junit.
- maven build system is auto-detectable: Dh_Buildsystems.pm lists maven in @THIRD_PARTY_BUILDSYSTEMS and load_buildsystem's autoselection includes it, and Buildsystem/maven.pm's check_auto_buildable triggers on pom.xml, so
dh $@in debian/rules:4 is correct and the exported JAVA_HOME is the same path maven.pm itself defaults to. - Build-Depends resolvable: junit4 4.13.2-6 and default-jdk-headless exist in the archive, maven-debian-helper 2.8.1 pulls maven-compiler/jar/resources/surefire-plugin, and /usr/share/maven-repo/junit/junit/4.x exists for the maven.rules
s/.*/4.x/mapping. - Both patches are DEP-3 (Description/Author/Forwarded/Last-Update); no-jacoco-argline.patch matches maven.ignoreRules removing jacoco, and eet-standard-time-name.patch relaxes a JDK 9+ CLDR name expectation in a test.
- debian/tests/control declares
Tests: formatwith Depends libstrftime4j-java and default-jdk-headless (which provides javac), matching the debian/tests/format script that compiles against /usr/share/java/strftime4j.jar. - Standards-Version 4.7.4 against Policy 4.7.4.1 (policy tool), first two components equal; Architecture: all is right for a pure-Java library; changelog 1.0.6-1 is unstable, initial release closing #1149768, dated a Friday as given.
- uscan found the packaged version as the newest upstream release (upstream
1.0.6, packaged1.0.6).
Not confirmed
None.
Proposed changes
None.
Uploader's response to the LLM review
The uploader was emailed about the review 2 hours ago.
Review Information
accepted — allocated to mechtilde 0 hours ago, started 0 hours ago, completed 0 hours ago.