Package: dh-make
Version: 1.20150601
Severity: normal

I was experimenting with dh_make for my first time, and used the literal git
tag "v1.3-beta" as version.

$ cd my-app-v1.3-beta
$ dh_make -p my-app_v1.3-beta

As a result, I was greeted with a very generic error message saying:
"The directory name you have specified is invalid!"

The cause of this message is that it doesn't match the regex /(.*)_([0-9][0-9a-
zA-Z+.~-]*)$/
(source: dh_make, sub get_package)

So dh_make requires that versions start with a digit, but nothing ever
explicitly says so, which is why it took me a lot of experimenting and looking
at the source to find out *why* it is "invalid".

I suggest that the error message contains (at least when the regex-match fails)
something like:
"Note that versions must start with a digit."

Furthermore, the manual page currently says:
"The <packagename> must be all lowercase, digits and dashes."

I suggest this should be changed into:
"The <packagename> and <version> must be all lowercase, digits and dashes. The
<version> can also contain digits, and the symbols plus, dot, tilde. The
<version> must start with a digit."

This way, a user that didn't read the source of dh_make and doesn't know that
rule about versions has a chance of using dh_make correctly.



-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'oldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.1.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages dh-make depends on:
ii  debhelper  9.20150811
ii  dpkg-dev   1.18.2
ii  make       4.0-8.2
ii  perl       5.20.2-6

dh-make recommends no packages.

Versions of packages dh-make suggests:
ii  build-essential  11.7

-- no debconf information

Reply via email to