Make sure ubuntu package has docstrings

Issue #948 resolved
Douglas Arnold created an issue

I am running FEniCS 2017.1.0 installed under Ubuntu 17.04 using the PPA package. When in an ipython shell I can't read most docstrings. Here is an example:

: weil 579; ipython
Python 2.7.13 (default, Jan 19 2017, 14:48:08) 
Type "copyright", "credits" or "license" for more information.

IPython 5.1.0 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: from fenics import *

In [2]: ?UnitSquareMesh
Init signature: UnitSquareMesh(self, *args)
Docstring:      Dummy docstring. Reason: Missing doxygen
Init docstring: Dummy docstring. Reason: Missing doxygen
File:           /usr/lib/python2.7/dist-packages/dolfin/cpp/mesh.py
Type:           type

Note that I do have doxygen installed (have tried both versions 1.8.13 and 1.8.11).

If I run the same version of FEniCS using the docker image, the docstrings show up correctly. So the problem is not missing docstrings, but an incorrectly built package.

With the API documentation for to 2017.1.0 not available the docstrings are quite crucial, so I regard this as a high priority fix. I reported it on allanswered.com and Chris Richardson replied:

I reported this at allanswered.com and Chris Richardson replied that "This looks like a bug in the construction of the 2017.1.0 dolfin package."

Comments (4)

  1. Jan Blechta

    This will be hopefully done correctly in the upcoming release. Assigning to @chris_richardson as he might try to build a package.

    With the released package there is even a worse problem, that there isn't a Python 3 build. We don't want encourage users to stay on Python 2 and moreover we don't have a crew to maintain the old binaries. We encourage users to use FEniCS Docker images which are much better maintained and supported thanks to the community and especially @jackhale.

  2. Chris Richardson

    It should be possible. Building PPA packages is very time consuming, anyone with experience would be welcome to help.

  3. Chris Richardson

    I think this could be as simple as adding doxygen as a build dependency. I am trying that.

  4. FEniCS Bot

    Should be fixed by including doxygen in build process. This will work for current version. Future versions without SWIG will require new documentation effort.

  5. Log in to comment