#976823 uscan: have an official way to document that there's no upstream source anymore

Package:
devscripts
Source:
devscripts
Description:
scripts to make the life of a Debian Package maintainer easier
Submitter:
Raphaël Hertzog
Date:
2026-04-29 09:31:02 UTC
Severity:
wishlist
#976823#5
Date:
2020-12-08 10:36:19 UTC
From:
To:
There are cases where there's no upstream source anymore so we have
nothing to put into debian/watch (either because there never was a real
upstream or because the upstream repository disappeared). At the same
time, the lack of debian/watch might just mean that someone forgot to
create the file. So what I usually do is that I create a debian/watch
file documenting the fact that I can't put anything in it... but the
result is that uscan will fail and tools like the janitor bot that try to
import a new upstream release will log an error, drawing the attention of
developers on this specific package.

Example:
$ cat debian/watch
version=3
# This is just a script that was posted on a website. No download available.
$ uscan --report; echo $?
1

It would be better if there was a way to document that there's no upstream
source and let uscan succeed while printing a warning. Maybe with a
specific optional flag say "no-upstream".

Desired result:
$ cat debian/wa
version=4
opts=no-upstream
$ uscan --report; echo $?
uscan info: no upstream sources are known, skipping without failing
0

Thank you for considering this request!

#976823#10
Date:
2026-04-10 16:16:59 UTC
From:
To:
With debian/watch v5 this is partially (but only partially) done,

$ cat debian/watch
Version: 5
Untrackable: Testing that this is untrackable.

$ uscan --report ; echo $?
uscan warn: Untrackable project: Testing that this is untrackable.
1

So exit status is not what I would have expected (that is why I am not
closing this bug report).

By the way, for some of my packages I am using the fake packages hack
by Eriberto Mota,

https://people.debian.org/~eriberto/#fake-packages

It has been very useful for my packages in the absence of a better
mechanism. It would be nice if something like this is implemented in uscan
itself.

Hope this helps,

#976823#15
Date:
2026-04-27 16:04:17 UTC
From:
To:
...

I have been playing with a template for uscan that tries to do what
Eriberto hack does (cc'ing Eriberto in case he wants to add
something). It is sort of hackish, there should be no need of
connecting to an external page to have this work, but I am attaching
it as a proof of concept. I kept the '||=' to help with testings, but
they should probably be just '='.

It can be used with something like

$ cat debian/watch
Version: 5
Template: Untrackable
Reason: norelease
# Forced-Version: 0.Custom-Excuse

This does now show info with "uscan --report" and uscan returns 1; but
I expect it to work similarly to Eriberto's hack.

Hope this is useful in some way.

#976823#20
Date:
2026-04-29 09:28:37 UTC
From:
To:
El lun, 27 abr 2026 a las 18:04, Agustin Martin
(<agmartin@debian.org>) escribió:

s/does now/does not/

Attaching a minimally improved version of the template, also made
perltidy clean.