Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-28 Thread Daniel Pocock


On 28/12/15 08:03, Francois Marier wrote:
> On 2015-12-28 at 07:44:01, Daniel Pocock wrote:
>> Yes, I was in a repository with a ".git" directory
>>
>> I frequently build packages that way when I am tinkering with them so it
>> would be good to find a way to support that reliably.  Maybe upstream
>> needs to test for some environment variable or the existence of some
>> other file that tells it not to do this ChangeLog update.
> 
> Thanks for confirming. I agree that the check done upstream could be better
> though I'm not sure exactly what it should be.
> 


My own approach to things like this has been to use an environment variable

I create a patch against upstream's build script, so it checks for the
environment variable.  Then I send that to upstream through Github or
whatever they use.

Then I set the environment variable in debian/rules



Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-27 Thread Francois Marier
On 2015-12-28 at 07:44:01, Daniel Pocock wrote:
> Yes, I was in a repository with a ".git" directory
> 
> I frequently build packages that way when I am tinkering with them so it
> would be good to find a way to support that reliably.  Maybe upstream
> needs to test for some environment variable or the existence of some
> other file that tells it not to do this ChangeLog update.

Thanks for confirming. I agree that the check done upstream could be better
though I'm not sure exactly what it should be.

Francois

-- 
http://fmarier.org/



Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-27 Thread Francois Marier
On 2015-12-06 at 09:00:06, Daniel Pocock wrote:
> > Are you sure you're trying this on a clean and up-to-date jessie system?
> 
> Yes
> 
> I had noticed that the gnulib package was required and was not mentioned
> in the build-deps.  Could there be any other missing build dependency
> that you have on your system but I don't have on mine?

So I took another look at this. Are you running "git pbuilder" directly in
the package directory by any chance?

I just noticed this in README.distributors:

"To make this as easy as possible, setup.py does the following:
  - create or refresh (overwriting) ChangeLog from ChangeLog.init and the Git
log if there is a .git subdirectory in the current directory. This is very
quick and done every time setup.py is run. For this to work,
gitlog-to-changelog must be in the PATH and executable."

So basically, it's detecting you're in a git repo and (wrongly) assuming
that it's the upstream repo so it runs through this unnecessary Changelog
generation.

On the other hand, if you create a jessie LXC container and build from there
using "gbp buildpackage", it never sees a .git directory and works just
fine.

Francois

-- 
http://fmarier.org/



Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-27 Thread Daniel Pocock


On 28/12/15 07:40, Francois Marier wrote:
> On 2015-12-06 at 09:00:06, Daniel Pocock wrote:
>>> Are you sure you're trying this on a clean and up-to-date jessie system?
>>
>> Yes
>>
>> I had noticed that the gnulib package was required and was not mentioned
>> in the build-deps.  Could there be any other missing build dependency
>> that you have on your system but I don't have on mine?
> 
> So I took another look at this. Are you running "git pbuilder" directly in
> the package directory by any chance?
> 
> I just noticed this in README.distributors:
> 
> "To make this as easy as possible, setup.py does the following:
>   - create or refresh (overwriting) ChangeLog from ChangeLog.init and the Git
> log if there is a .git subdirectory in the current directory. This is very
> quick and done every time setup.py is run. For this to work,
> gitlog-to-changelog must be in the PATH and executable."
> 
> So basically, it's detecting you're in a git repo and (wrongly) assuming
> that it's the upstream repo so it runs through this unnecessary Changelog
> generation.
> 
> On the other hand, if you create a jessie LXC container and build from there
> using "gbp buildpackage", it never sees a .git directory and works just
> fine.
> 

Yes, I was in a repository with a ".git" directory

I frequently build packages that way when I am tinkering with them so it
would be good to find a way to support that reliably.  Maybe upstream
needs to test for some environment variable or the existence of some
other file that tells it not to do this ChangeLog update.



Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-06 Thread Daniel Pocock


On 06/12/15 06:37, Francois Marier wrote:
> On 2015-11-28 at 15:57:20, Daniel Pocock wrote:
>> dh clean --with python2 --buildsystem=pybuild
>>dh_testdir -O--buildsystem=pybuild
>>dh_auto_clean -O--buildsystem=pybuild
>> I: pybuild base:170: python2.7 setup.py clean
>> Converting the Git log into ChangeLog format... Traceback (most recent
>> call last):
>>   File "setup.py", line 39, in run_gitlog_to_changelog
>> subprocess.check_call(args, stdout=output)
>>   File "/usr/lib/python2.7/subprocess.py", line 535, in check_call
>> retcode = call(*popenargs, **kwargs)
>>   File "/usr/lib/python2.7/subprocess.py", line 522, in call
>> return Popen(*popenargs, **kwargs).wait()
>>   File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
>> errread, errwrite)
>>   File "/usr/lib/python2.7/subprocess.py", line 1335, in _execute_child
>> raise child_exception
>> OSError: [Errno 2] No such file or directory
>>
>> Error (see above for a traceback): unable to run gitlog-to-changelog
>> 
>> Maybe this program is not installed on your system. You can download it
>> from:
>>
>>
>> http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f=build-aux/gitlog-to-changelog
>>
>> Note: if you have problems with the infamous shell+Perl crap in the
>> first lines
>> of that file, you can replace it with a simple shebang line such as
>> "#! /usr/bin/perl".
>> E: pybuild pybuild:256: clean: plugin distutils failed with: exit
>> code=1: python2.7 setup.py clean
>> dh_auto_clean: pybuild --clean -i python{version} -p 2.7 --dir .
>> returned exit code 13
>> debian/rules:9: recipe for target 'clean' failed
>> make: *** [clean] Error 13
>> dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit
>> status 2
> 
> That's weird. I would think that a problem like that would also affect sid.
> But looking into it, I was able to build it just fine on jessie without
> applying your patch.
> 
> Are you sure you're trying this on a clean and up-to-date jessie system?
> 


Yes

I had noticed that the gnulib package was required and was not mentioned
in the build-deps.  Could there be any other missing build dependency
that you have on your system but I don't have on mine?

Regards,

Daniel



Bug#806532: [Letsencrypt-devel] Bug#806532: FTBFS on jessie

2015-12-05 Thread Francois Marier
On 2015-11-28 at 15:57:20, Daniel Pocock wrote:
> dh clean --with python2 --buildsystem=pybuild
>dh_testdir -O--buildsystem=pybuild
>dh_auto_clean -O--buildsystem=pybuild
> I: pybuild base:170: python2.7 setup.py clean
> Converting the Git log into ChangeLog format... Traceback (most recent
> call last):
>   File "setup.py", line 39, in run_gitlog_to_changelog
> subprocess.check_call(args, stdout=output)
>   File "/usr/lib/python2.7/subprocess.py", line 535, in check_call
> retcode = call(*popenargs, **kwargs)
>   File "/usr/lib/python2.7/subprocess.py", line 522, in call
> return Popen(*popenargs, **kwargs).wait()
>   File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
> errread, errwrite)
>   File "/usr/lib/python2.7/subprocess.py", line 1335, in _execute_child
> raise child_exception
> OSError: [Errno 2] No such file or directory
> 
> Error (see above for a traceback): unable to run gitlog-to-changelog
> 
> Maybe this program is not installed on your system. You can download it
> from:
> 
> 
> http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f=build-aux/gitlog-to-changelog
> 
> Note: if you have problems with the infamous shell+Perl crap in the
> first lines
> of that file, you can replace it with a simple shebang line such as
> "#! /usr/bin/perl".
> E: pybuild pybuild:256: clean: plugin distutils failed with: exit
> code=1: python2.7 setup.py clean
> dh_auto_clean: pybuild --clean -i python{version} -p 2.7 --dir .
> returned exit code 13
> debian/rules:9: recipe for target 'clean' failed
> make: *** [clean] Error 13
> dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit
> status 2

That's weird. I would think that a problem like that would also affect sid.
But looking into it, I was able to build it just fine on jessie without
applying your patch.

Are you sure you're trying this on a clean and up-to-date jessie system?

Francois

-- 
http://fmarier.org/