Bug#851697: Cannot push when archive access method is `aptget'

2017-01-18 Thread Ian Jackson
peter green writes ("Bug#851697: Cannot push when archive access method is 
`aptget'"):
> here is a debdiff adding the stub implementation

Thanks.  I will apply it.

I don't think there a better solution is easy.  To find out whether
anna archive like this had a particular .orig, it would be necessary
to find all the suites and download all of their Sources files.  I
think that would usually be prohibitively time- and
bandwidth-consuming.

It would be possible, I suppose, if you could guarantee that the
archive a particular `pool'-style layout, to simply probe for the
expected location of the .orig.  (That guarantee could be provided
in the form of a config option.)

I probably won't implement that soon I'm afraid.

Ian.

-- 
Ian Jackson <ijack...@chiark.greenend.org.uk>   These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.



Bug#851697: Cannot push when archive access method is `aptget'

2017-01-17 Thread peter green

On 17/01/17 20:42, peter green wrote:

On 17/01/17 19:00, Ian Jackson wrote:

Package: dgit
Version: 3.4

If one tries to set up dgit push support for a distro which does not
have an ftpmaster api interface, and instead uses the aptget archive
access method, this happens:

Undefined subroutine ::file_in_archive_aptget called at /usr/bin/dgit line 
1023.

This functionality is missing and needs to be implemented.

Having taken a quick look myself it seems that some of the access methods have a stub 
implementation of that function that just returns "undef". Furthermore it seems 
that the code that calls that function has a path for handling such a return value.

So I copied the stub function from "dummycat" to "aptget".

I'll post up a debdiff with this and any other changes I end up making to dgit 
later.

here is a debdiff adding the stub implementation


diff -Nru dgit-3.2/debian/changelog dgit-3.2+rpi1/debian/changelog
--- dgit-3.2/debian/changelog   2017-01-12 02:11:34.0 +
+++ dgit-3.2+rpi1/debian/changelog  2017-01-17 19:52:37.0 +
@@ -1,3 +1,10 @@
+dgit (3.2+rpi1) stretch-staging; urgency=medium
+
+  * Add dummy implementation of file_in_archive_aptget copied from
+file_in_archive_dummycat (partially fixes: 851697)
+
+ -- Peter Michael Green   Tue, 17 Jan 2017 19:52:37 
+
+
 dgit (3.2) unstable; urgency=medium
 
   Bugfixes:
diff -Nru dgit-3.2/dgit dgit-3.2+rpi1/dgit
--- dgit-3.2/dgit   2017-01-12 01:36:35.0 +
+++ dgit-3.2+rpi1/dgit  2017-01-17 19:52:11.0 +
@@ -1318,6 +1318,8 @@
 return [ (getfield $pre_dsc, 'Version'), $uri ];
 }
 
+sub file_in_archive_aptget () { return undef; }
+
 #-- `dummyapicat' archive query method --
 
 sub archive_query_dummycatapi { archive_query_ftpmasterapi @_; }


Bug#851697: Cannot push when archive access method is `aptget'

2017-01-17 Thread Ian Jackson
peter green writes ("Bug#851697: Cannot push when archive access method is 
`aptget'"):
> So I copied the stub function from "dummycat" to "aptget".

Hrm.  Yes.  That would do.  It's not briliiant because it will mean
you have to pass --ch:--sa or --ch:--sd.

> I'll post up a debdiff with this and any other changes I end up making to 
> dgit later.

Thanks.

Ian.

-- 
Ian Jackson <ijack...@chiark.greenend.org.uk>   These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.



Bug#851697: Cannot push when archive access method is `aptget'

2017-01-17 Thread peter green

On 17/01/17 19:00, Ian Jackson wrote:

Package: dgit
Version: 3.4

If one tries to set up dgit push support for a distro which does not
have an ftpmaster api interface, and instead uses the aptget archive
access method, this happens:

Undefined subroutine ::file_in_archive_aptget called at /usr/bin/dgit line 
1023.

This functionality is missing and needs to be implemented.

Having taken a quick look myself it seems that some of the access methods have a stub 
implementation of that function that just returns "undef". Furthermore it seems 
that the code that calls that function has a path for handling such a return value.

So I copied the stub function from "dummycat" to "aptget".

I'll post up a debdiff with this and any other changes I end up making to dgit 
later.



Bug#851697: Cannot push when archive access method is `aptget'

2017-01-17 Thread Ian Jackson
Package: dgit
Version: 3.4

If one tries to set up dgit push support for a distro which does not
have an ftpmaster api interface, and instead uses the aptget archive
access method, this happens:

Undefined subroutine ::file_in_archive_aptget called at /usr/bin/dgit line 
1023.

This functionality is missing and needs to be implemented.

Ian.

-- 
Ian Jackson    These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.