← Back to team overview

dolfin team mailing list archive

Re: [Bug 824862] [NEW] make doc fails

 

On Thu, Aug 11, 2011 at 11:11:46PM -0700, Johan Hake wrote:
> On Thursday August 11 2011 22:54:11 Anders Logg wrote:
> > On Thu, Aug 11, 2011 at 11:10:06PM -0000, Doug Arnold wrote:
> > > Public bug reported:
> > >
> > > I built a fresh version of 0.9.11+ with dorsal under Ubuntu lucid. I
> > > have sphinx 1.0.7 installed and dorsal showed that it had found it and
> > > had enabled generation of documenation. I then sourced dolfin.conf,
> > > changed to the
> > >
> > > dolfin build directory and typed "make doc". This failed with the
> following message:
> > > : zeno 557; make doc
> > >
> > > Scanning dependencies of target doc_demo
> > >
> > > Traceback (most recent call last):
> > > File &quot;copy_and_split_demo_doc.py&quot;, line 157, in <module>
> > >
> > > copy_split_demo_doc(args[0], args[1], args[2])
> > >
> > > File &quot;copy_and_split_demo_doc.py&quot;, line 105, in
> copy_split_demo_doc
> > >
> > > bzr_files = subprocess.check_output([&quot;bzr&quot;, &quot;ls&quot;,
> &quot;-R&quot;, &quot;-V&quot;,
> > > input_dir])
> > >
> > > AttributeError: 'module' object has no attribute 'check_output'
> > > make[3]: *** [doc/CMakeFiles/doc_demo] Error 1
> > > make[2]: *** [doc/CMakeFiles/doc_demo.dir/all] Error 2
> > > make[1]: *** [doc/CMakeFiles/doc.dir/rule] Error 2
> > > make: *** [doc] Error 2
> > >
> > > ** Affects: dolfin
> > >
> > > Importance: Undecided
> > >
> > > Status: New
> >
> > The problem seems to be the check_output function in the Python
> > subprocess module. I've used it since it is the new recommended way to
> > run shell commands. It looks like it was added to the Python
> > subprocess module in Python 2.7 and I assume you have 2.6. The
> > corresponding command for 2.6 is commands.getstatusoutput but it's
> > deprecated and removed in Python 3.
> >
> > Don't know what the best solution is, either:
> >
> > 1. Require Python >= 2.7, or
> > 2. Try/except and use one of check_output/getstatusoutput
>
> 3. Use instant.get_status_output()[1]
>
> I think we still need to support python 2.6.

Sounds good. Will fix but not today (anyone else feel free to fix).

--
Anders


References