On Wednesday November 16 2011 10:43:52 Anders Logg wrote: > On Wed, Nov 16, 2011 at 10:37:49AM -0800, Johan Hake wrote: > > On Wednesday November 16 2011 06:16:12 Garth N. Wells wrote: > > > On 16 November 2011 13:13, Anders Logg <l...@simula.no> wrote: > > > > On Wed, Nov 16, 2011 at 01:06:41PM +0000, Garth N. Wells wrote: > > > >> On 16 November 2011 12:12, Anders Logg <l...@simula.no> wrote: > > > >> > On Wed, Nov 16, 2011 at 01:04:54PM +0100, Anders Logg wrote: > > > >> >> On Wed, Nov 16, 2011 at 10:10:38AM +0000, Garth N. Wells wrote: > > > >> >> > I get > > > >> >> > > > > >> >> > [100%] Built target dolfin > > > >> >> > [100%] Swig source > > > >> >> > /home/garth/code/fenics/dolfin.d/1.0.d/working/dolfin/swig/docs > > > >> >> > trin gs.i:3081: Error: Syntax error in input(1). > > > >> >> > make[2]: *** [dolfin/swig/dolfinPYTHON_wrap.cxx] Error 1 > > > >> >> > make[1]: *** [dolfin/swig/CMakeFiles/_cpp.dir/all] Error 2 > > > >> >> > > > > >> >> > How was this not picked up by a local build? > > > >> >> > > > >> >> Strange, my branch builds fine here and so does my buildbot: > > > >> >> > > > >> >> http://fenicsproject.org:8082/ > > > >> >> > > > >> >> Could it be a merge problem from when Johan merged his changes? > > > >> > > > > >> > The problem was that Johan ran generate.py to regenerate the > > > >> > docstrings and I didn't so the problem never showed up for me or > > > >> > on my buildbot which does not have that changeset. > > > >> > > > > >> > When should we run generate.py? > > > >> > > > >> It should be run when a header file is added or a doc string > > > >> changes. Adding functions or changing function signatures doesn't > > > >> require generate.py to be run. > > > > > > > > Why not? The function signature will be part of the online > > > > documentation and if a new function is added, then the corresponding > > > > docstring must be generated. > > > > AFAIK, generate.py only considers changes in docstrings. > > > > Previously we did include the signature in the docstrings, using: > > %feature("autodoc") > > > > As a matter of fact it is still outcommented in dolfin.i. This feature > > included information about the signature directly in the docstring. > > However it conflicted with some of our typemaps, and it was disabled. > > However, it was never dependent on generate.py. > > Check these two lines in generate.py: > > from documentation import generate_docstrings > generate_docstrings() > > It calls generate_docstrings defined in documentation.py, which does > among other things this:
I guess you're right. Johan > def get_args(signature): > "Get argument names (for Python) from signature." > # print "sig: ", signature > arg_string = signature.split("(")[-1].split(")")[0] > # print "arg_string: '%s'" % arg_string > args = [] > if arg_string: > # This does not handle ',' inside type declaration, > # e.g. std::pair<uint, uint>. > # args = [a.split()[-1] for a in arg_string.split(",")] > for a in arg_string.split(","): > arg = a.split()[-1] > # Assuming '::' is never in a name, but always > # present when dealing with e.g. 'std::pair' > # or boost::unordered_map. > if not "::" in arg: > args.append(arg) > > -- > Anders > > > Johan > > > > > I quote from my email: > > > "or a doc string changes." > > > > > > The addition of a doc string is a change. > > > > > > Garth > > > > > > > > > _______________________________________________ > > > Mailing list: https://launchpad.net/~dolfin > > > Post to : dolfin@lists.launchpad.net > > > Unsubscribe : https://launchpad.net/~dolfin > > > More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : dolfin@lists.launchpad.net Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp