DFSG NEW Queue

DFSG, Licensing & New Packages Team

Review: strftime4j 1.0.6-1

Package Information

DescriptionJava 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.

MaintainerDebian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org>
Changed ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Sponsortsimonq2@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/java-team/strftime4j.git (browse)
Closes#1149768
Trackerhttps://tracker.debian.org/pkg/strftime4j
Uploaded5 hours ago

New Package Report

.changes◂
Changed-ByJuan Manuel Méndez Rey <juan.mendezr@proton.me>
Architecturesource all
Distributionunstable
DateFri, 02 Oct 2026 21:50:05 +0200
Sourcestrftime4j
Version1.0.6-1
Changelog◂
strftime4j (1.0.6-1) unstable; urgency=medium
 .
   * Initial release. (Closes: #1149768)
.dsc◂
Priorityoptional
Componentmain
Package-Listlibstrftime4j-java deb java optional arch=all
Sectionjava
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 5 hours ago.

Report◂

DFSG NEW review for strftime4j version 1.0.6-1

Summary

  • Licensing is DFSG-compliant and debian/copyright is 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 Khrystyuk and the Files: * stanza says Copyright: 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, so Files: * with Expat is complete, and the stand-alone License: Expat paragraph 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: format with 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, packaged 1.0.6).

Not confirmed

None.

Proposed changes

None.

Uploader's response to the LLM review

The uploader was emailed about the review 4 hours ago.

Review Information

accepted — allocated to mechtilde 3 hours ago, started 3 hours ago, completed 3 hours ago.

Final Comment

Back to Dashboard | View all reviews for this package