Thanks for sharing your tool!
I also considered implementing such a tool, but ultimately decided against
it for a number of reasons:
1. I think that infrastructure which the pkg-go team critically and very
visibly depends on should eventually be hosted by DSA under debian.org. I
don’t see them hosting this special “workaround” service, when there
already is infrastructure in place to run uscan.
2. I have concerns regarding the scalability of such a service if we
actually adopted this approach: the GitHub quota permits 5000 requests per
hour (when authenticated). This sounds like a lot at first glance, but
consider that we already have 845 Go packages. Your code does 4 requests
per repository (IIUC), so already we are fairly close to reaching the
limit, if we don’t take any precautions.
Most likely, point ② could be addressed with some careful limiting on our
end, and changing the processing model from generating a response upon
end-user request to iterating through all Go packages in Debian and
querying GitHub in a rate-limited fashion. This significantly complicates
the program, though, to the point where we duplicate the logic behind the
Debian Package Tracker. Worse, it introduces accidental complexity, not
inherent complexity :).
Hence, I think extending uscan is a much much more elegant route to achieve
our goal, and I’d like to ask people to hold off providing/using custom
services as a stop-gap measure. Thanks!
On Wed, Aug 9, 2017 at 7:38 AM, Shengjing Zhu <i...@zhsj.me> wrote:
> Hi all,
> I spent some time playing around GitHub api, and results a small tool,
> I didn't implement it in uscan. But it can work well with uscan.
> A demo service is at https://watch.zhsj.me/
> Take one of packages I maintained,
> https://watch.zhsj.me/github/xiaq/persistent is the watch url.
> And the following d/watch works fine,
> https://watch.zhsj.me/github/xiaq/persistent \
> This tool works both as web service and cli.
> I hope you find this tool useful.
> Shengjing Zhu
Pkg-go-maintainers mailing list