Bug#854456: unblock: debdelta/0.59

2017-02-10 Thread A Mennucc
Dear Niels,

I uploaded. I attach the final debdiff.

thanks. a.

diff -Nru --exclude debpatch-url --exclude debpatch --exclude debdeltas --exclude debdelta-upgrade debdelta-0.56/debdelta debdelta-0.59/debdelta
--- debdelta-0.56/debdelta	2017-01-01 23:59:34.0 +0100
+++ debdelta-0.59/debdelta	2017-02-08 11:28:50.0 +0100
@@ -181,7 +181,7 @@
 OLD = []
 ACT = True
 DO_MD5  = True
-DEB_POLICY = ['b','s','e']
+DEB_POLICY = ['b','s','e','t','f']
 DO_PROGRESS = terminalcolumns != None
 
 #where/how debpatch/debdelta-upgrade will send forensic data, when patching fails
@@ -912,9 +912,9 @@
   
   os.close(temp_fd)
   
-  if VERBOSE > 1 or p.returncode:
+  if VERBOSE > 2 or p.returncode:
 for j in open(temp_name):
-  print '  GPG> ',j,
+  print '   GPG> ',j,
   
   os.unlink(temp_name)
   
@@ -2901,6 +2901,10 @@
 PARS=['-6e','-9','-9e']
 if par:
   PARS.append(par)
+  if par == '--lzma2=dict=1MiB':
+# dbgsym deb files are compressed with -1e
+PARS.append('-1')
+PARS.append('-1e')
 if check:
   redo=True
   while redo and PARS:
@@ -3975,8 +3979,11 @@
 except DebDeltaError,s:
   if not VERBOSE : print _('Creating:'),delta
   print ' Creation of delta failed, reason: ',str(s)
-  if os.path.exists(deltatmp) and DEBUG == 0:
-os.unlink(deltatmp)
+  if os.path.exists(deltatmp):
+if KEEP:
+  print(' '+_('You may want to examine:')+' '+str(deltatmp))
+else:
+  os.unlink(deltatmp)
   if not s.retriable :
 open(delta+'-fails','w').close()
   exitstatus=max(exitstatus, s.exitcode)
@@ -4011,8 +4018,11 @@
 pret=do_patch(deltatmp,old_File,None , info=info_delta, do_gpg=None)
   except DebDeltaError,s:
 print ' '+_('Error: testing of delta failed:')+' '+str(s)
-if os.path.exists(deltatmp) and DEBUG==0:
-  os.unlink(deltatmp)
+if os.path.exists(deltatmp):
+  if KEEP:
+print(' '+_('You may want to examine:')+' '+str(deltatmp))
+  else:
+os.unlink(deltatmp)
 if not  s.retriable :
   open(delta+'-fails','w').close()
   except KeyboardInterrupt:
@@ -4022,8 +4032,11 @@
   except Exception,s:
 exitstatus=max(exitstatus,4)
 puke(" *** Error while testing delta  "+delta,s)
-if os.path.exists(deltatmp) and DEBUG==0:
-  os.unlink(deltatmp)
+if os.path.exists(deltatmp):
+  if KEEP:
+print ' '+_('You may want to examine:')+' '+str(deltatmp)
+  else:
+os.unlink(deltatmp)
 open(delta+'-fails','w').close()
   if pret == None:
 return max(exitstatus, 4)
@@ -4607,8 +4620,8 @@
 if uri_p.scheme == 'http':
   a=[copy(z) for z in uri_p]
   a[2]=urllib2.quote(uri_p[2])
-  url=urlunparse(a)
-req = urllib2.Request(url, headers=headers)
+  uri=urlunparse(a)
+req = urllib2.Request(uri, headers=headers)
 r = urllib2.urlopen(req)
 #print r.info(),dir(r),r.code
 return r, getattr(r,'code',None), getattr(r,'msg','(no message)'), r.info()
@@ -4659,7 +4672,11 @@
   r, status, msg, responseheaders=_connect(uri, re)
   if not hasattr(r,'read') and responseheaders==None:
 return r, None, None, None
-  if status == 206:
+  if status == 301 and 'location' in responseheaders:
+r.read()
+r.close()
+return download_10k_uri(responseheaders['location'], outname)
+  elif status == 206:
 outnametemp=os.path.join(os.path.dirname(outname),'partial',os.path.basename(outname))
 try:
   l = _parse_ContentRange(responseheaders['Content-Range'])[2]
@@ -4713,7 +4730,12 @@
   start_time=time.time()
   r, status, message, responseheaders = _connect(uri, re)
   if not hasattr(r,'read') and responseheaders==None:
-return 
+return
+  if status == 301 and 'location' in responseheaders:
+r.read()
+r.close()
+if VERBOSE > 1 : print(_('  Redirect to:')+' '+repr(responseheaders['location']))
+return download_uri(responseheaders['location'], outname, conn_time, len_downloaded, statusdb)
   if not ( status == None or status == 200 or ( status == 206 and l != None ) ):
 if VERBOSE :
   print 'Connection problem, status:'+str(status)+' msg:'+str(message)+' uri:'+str(uri)
@@ -4840,6 +4862,7 @@
   deb_uri=candidate.uri
   installed_version=p.installed.version
   candidate_version=p.candidate.version
+  newsize=p.candidate.size
   deb_path=string.split(deb_uri,'/')
   try:
 thepoolindex=deb_path.index('pool')
@@ -4925,23 +4948,39 @@
 
   if status == 404: 
 not_available_deltas.append(p.name)
-if 

Bug#854456: unblock: debdelta/0.59

2017-02-08 Thread Niels Thykier
A Mennucc:
> Dear Niels,
> 
> thanks a lot for the review!
> 
> may I add also this patch attached, would close  bug 708022, it seems it
> was but a typo
> 
> a.
> 

Its fine, please go ahead with that included.

~Niels



Bug#854456: unblock: debdelta/0.59

2017-02-08 Thread A Mennucc
Dear Niels,

I attach the debdiff where I fixed the problems you noted, and bug
708022 as well

If you say it's OK, I will upload it.

thanks. a.



signature.asc
Description: OpenPGP digital signature


Bug#854456: unblock: debdelta/0.59

2017-02-08 Thread A Mennucc
Dear Niels,

thanks a lot for the review!

may I add also this patch attached, would close  bug 708022, it seems it
was but a typo

a.

From d32a369499427c0f69a451adb1834a4450f001dc Mon Sep 17 00:00:00 2001
From: A Mennucc 
Date: Tue, 7 Feb 2017 14:45:26 +0100
Subject: [PATCH] rename mismatched "url" variable, possible correction for
 Debian bug 708022

---
 debdelta/debdelta | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/debdelta/debdelta b/debdelta/debdelta
index 95acb24..7e307d1 100755
--- a/debdelta/debdelta
+++ b/debdelta/debdelta
@@ -4620,8 +4620,8 @@ def delta_upgrade_(args):
 if uri_p.scheme == 'http':
   a=[copy(z) for z in uri_p]
   a[2]=urllib2.quote(uri_p[2])
-  url=urlunparse(a)
-req = urllib2.Request(url, headers=headers)
+  uri=urlunparse(a)
+req = urllib2.Request(uri, headers=headers)
 r = urllib2.urlopen(req)
 #print r.info(),dir(r),r.code
 return r, getattr(r,'code',None), getattr(r,'msg','(no message)'), r.info()
-- 
2.1.4



signature.asc
Description: OpenPGP digital signature


Processed: Re: Bug#854456: unblock: debdelta/0.59

2017-02-07 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 moreinfo confirmed
Bug #854456 [release.debian.org] unblock: debdelta/0.59
Added tag(s) confirmed and moreinfo.

-- 
854456: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854456
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#854456: unblock: debdelta/0.59

2017-02-07 Thread Niels Thykier
Control: tags -1 moreinfo confirmed

A Mennucc:
> Package: release.debian.org
> Severity: normal
> User: release.debian@packages.debian.org
> Usertags: unblock
> 
> Please unblock package debdelta
> 
> Dear release team, the version 0.56 of debdelta in testing suffers of
> many bugs, and in particular #852087 that is release-critical
> 
> In 07 Jan I had prepared debdelta 0.57 to the archives, but it was not
> accepted (I suspect that "debsign" chose the wrong key :-(  )
> 
> I have now uploaded 0.58exp in experimental;
> and I have prepared 0.59 to upload into testing,
> but I need advice, if it may be accepted or not.
> 
> Here is a streamlined changelog, to help you read the attached debdiff
> 
>  [...]
> 
> Note that, when solving bug 779897 , I added new features, and these
> are documented and then translated in the PT and IT translations.
> 
> I remark that I did not yet upload 0.59 to unstable.
> 
> Thanks again for any help. A.
> 
> unblock debdelta/0.59
> 
> [...]

I am considering to grant an exception.  I do have a few minor remarks
in my review:


in debdelta:
> +#check if delta failed upstream
> +if uri[:7] == 'http://' and not proxies and 200 ==  
> test_uri(uri+'-fails'): # FIXME support ftp or proxies
> +  print _('Delta missing, server failed to create it:')+' '+uri
> +  if 'f' in DEB_POLICY:
>  no_delta.append( (deb_uri, newdeb) )
>elif VERBOSE > 1 : print '  No deb-policy "u", no download of 
> ',deb_uri

Inconsistent: Checks for "f" in DEB_POLICY, but warns about "u".


> +if DEBUG and VERBOSE:
  ^

Should this have been an "or"?  (either way is fine, it just looked weird).

> +  print _('Delta is not present:')+' '+uri
> +else:
> +  print _('Delta is not present:')+' '+delta_name
> +


in d/rules:
> + for L in $(LANGS) ; do install -d 
> $(D)/usr/share/locale/$${L}/LC_MESSAGES ; done
> [...]
> 
> + for L in $(LANGS) ; do  cp po/$${L}.mo 
> $(D)/usr/share/locale/$${L}/LC_MESSAGES/debdelta.mo ; done

Both of these for loops need a "set -e;" in front of them to ensure
"fails on error".  As in:

"""
set -e ; for L in $(LANGS) ; do ... ; done
"""

Feel free to upload to unstable fixing at least the d/rules remark.

Thanks,
~Niels



Bug#854456: unblock: debdelta/0.59

2017-02-07 Thread A Mennucc
Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: unblock

Please unblock package debdelta

Dear release team, the version 0.56 of debdelta in testing suffers of
many bugs, and in particular #852087 that is release-critical

In 07 Jan I had prepared debdelta 0.57 to the archives, but it was not
accepted (I suspect that "debsign" chose the wrong key :-(  )

I have now uploaded 0.58exp in experimental;
and I have prepared 0.59 to upload into testing,
but I need advice, if it may be accepted or not.

Here is a streamlined changelog, to help you read the attached debdiff

  * Bug fix: "cannot handle redirects",
thanks to Paul Wise (Closes: #835655).
  * Bug fix: "[INTL:pt] Updated Portuguese translation for program",
thanks to Miguel Figueiredo (Closes: #852087).
  * Installation leaves gpg-agent process running <- *release critical*
Thanks Andreas Beckmann (Closes: #85135).
  * Lintian fixes:
- rewrite copyright using  copyright-format/1.0/
- bump standards version to 3.9.8
  * Various code fixes.
- Fix guessing of xz parameters for dbgsym files
- do not print gnupg messages in verbosity <= 2
- keep some more temporary files when -k
- add option "mirrors-exclude" in server
  * Autodetect and install all available translations.
Thanks Carlos Maddela. Closes: #849908
  * Update Italian translation.
  * debdelta-upgrade: explain why the delta is not available; and also add
corresponding --deb-policies.
Thanks  shirish शिरीष . Closes: #779897
  * debdelta-upgrade handles redirects. Thanks Paul Wise. Closes: #835655

Note that, when solving bug 779897 , I added new features, and these
are documented and then translated in the PT and IT translations.

I remark that I did not yet upload 0.59 to unstable.

Thanks again for any help. A.

unblock debdelta/0.59

-- System Information:
Debian Release: 8.7
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.8.0-0.bpo.2-amd64 (SMP w/2 CPU cores)
Locale: LANG=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

--- debdelta-0.56/debdelta	2017-01-01 23:59:34.0 +0100
+++ debdelta-0.59/debdelta	2017-02-07 10:30:24.0 +0100
@@ -181,7 +181,7 @@
 OLD = []
 ACT = True
 DO_MD5  = True
-DEB_POLICY = ['b','s','e']
+DEB_POLICY = ['b','s','e','t','f']
 DO_PROGRESS = terminalcolumns != None
 
 #where/how debpatch/debdelta-upgrade will send forensic data, when patching fails
@@ -912,9 +912,9 @@
   
   os.close(temp_fd)
   
-  if VERBOSE > 1 or p.returncode:
+  if VERBOSE > 2 or p.returncode:
 for j in open(temp_name):
-  print '  GPG> ',j,
+  print '   GPG> ',j,
   
   os.unlink(temp_name)
   
@@ -2901,6 +2901,10 @@
 PARS=['-6e','-9','-9e']
 if par:
   PARS.append(par)
+  if par == '--lzma2=dict=1MiB':
+# dbgsym deb files are compressed with -1e
+PARS.append('-1')
+PARS.append('-1e')
 if check:
   redo=True
   while redo and PARS:
@@ -3975,8 +3979,11 @@
 except DebDeltaError,s:
   if not VERBOSE : print _('Creating:'),delta
   print ' Creation of delta failed, reason: ',str(s)
-  if os.path.exists(deltatmp) and DEBUG == 0:
-os.unlink(deltatmp)
+  if os.path.exists(deltatmp):
+if KEEP:
+  print(' '+_('You may want to examine:')+' '+str(deltatmp))
+else:
+  os.unlink(deltatmp)
   if not s.retriable :
 open(delta+'-fails','w').close()
   exitstatus=max(exitstatus, s.exitcode)
@@ -4011,8 +4018,11 @@
 pret=do_patch(deltatmp,old_File,None , info=info_delta, do_gpg=None)
   except DebDeltaError,s:
 print ' '+_('Error: testing of delta failed:')+' '+str(s)
-if os.path.exists(deltatmp) and DEBUG==0:
-  os.unlink(deltatmp)
+if os.path.exists(deltatmp):
+  if KEEP:
+print(' '+_('You may want to examine:')+' '+str(deltatmp))
+  else:
+os.unlink(deltatmp)
 if not  s.retriable :
   open(delta+'-fails','w').close()
   except KeyboardInterrupt:
@@ -4022,8 +4032,11 @@
   except Exception,s:
 exitstatus=max(exitstatus,4)
 puke(" *** Error while testing delta  "+delta,s)
-if os.path.exists(deltatmp) and DEBUG==0:
-  os.unlink(deltatmp)
+if os.path.exists(deltatmp):
+  if KEEP:
+print ' '+_('You may want to examine:')+' '+str(deltatmp)
+  else:
+os.unlink(deltatmp)
 open(delta+'-fails','w').close()
   if pret == None:
 return max(exitstatus, 4)
@@ -4659,7 +4672,11 @@
   r, status, msg, responseheaders=_connect(uri, re)
   if not