Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#11887 closed defect (fixed)

cython.py: don't create .html and .c files when running compile_and_load

Reported by: jhpalmieri Owned by: jason
Priority: blocker Milestone: sage-4.7.2
Component: misc Keywords:
Cc: leif Merged in: sage-4.7.2.rc0
Authors: Leif Leonhardy, John Palmieri Reviewers: Jeroen Demeyer
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

This ticket should fix for the problem discussed at at #11680: the patch there causes some .c and .html files to be created when doctesting.

Attachments (1)

trac_11887-cython.patch (2.4 KB) - added by jhpalmieri 8 years ago.

Download all attachments as: .zip

Change History (14)

Changed 8 years ago by jhpalmieri

comment:1 Changed 8 years ago by leif

I was just about to open such a ticket... (with priority "trivial" though) :)

If my patch is sufficient for you, you could review it... :P

comment:2 Changed 8 years ago by jhpalmieri

Leif: I've listed both of us as authors for the patch. I took your patch from #11680 and added a little bit. There is a lot more to be done here (see for example the "TODO" in the patch), but I don't want to work on it right now.

comment:3 Changed 8 years ago by jhpalmieri

  • Status changed from new to needs_review

I'm happy with your part of the patch, by the way.

comment:4 Changed 8 years ago by leif

    See the function :func:`sage.misc.cython.cython` for documentation 
    for the other inputs.

which leads to TODO... :)

I'm almost ok with your changes, will test them shortly, so we should have a positive review then.

I think compile_and_load() should also take keyword arguments, but that's for another ticket. Perhaps just add another TODO.

comment:5 follow-up: Changed 8 years ago by jhpalmieri

I would consider the phrasing

    The other inputs should be described in the documentation for the
    function :func:`sage.misc.cython.cython`.

I couldn't think of any way to say it which wouldn't require changing if (when) the cython function actually gets documented.

comment:6 in reply to: ↑ 5 Changed 8 years ago by leif

Replying to jhpalmieri:

I would consider the phrasing

    The other inputs should be described in the documentation for the
    function :func:`sage.misc.cython.cython`.

I couldn't think of any way to say it which wouldn't require changing if (when) the cython function actually gets documented.

That's pretty ok XD

comment:7 Changed 8 years ago by dimpase

  • Status changed from needs_review to needs_info

After applying this patch make ptestlong ends with

...
----------------------------------------------------------------------
The temporary doctesting directory
   /home/dima/.sage/tmp/spms_banana-30578
was not removed: it is not empty, presumably because doctests
failed or doctesting was interrupted.

----------------------------------------------------------------------

The following tests failed:

        sage -t  -long -force_lib devel/sage/sage/interfaces/sage0.py # 11 doctests failed
----------------------------------------------------------------------
Total time for all tests: 2884.8 seconds
make: *** [ptestlong] Error 128

The test in question gives the following:

sage -t -long -force_lib "devel/sage/sage/interfaces/sage0.py"
**********************************************************************
File "/usr/local/src/sage/sage-4.7.2.alpha3/devel/sage/sage/interfaces/sage0.py", line 448:
    sage: F == sage0(F)._sage_()
Exception raised:
    Traceback (most recent call last):
      File "/usr/local/src/sage/sage-4.7.2.alpha3/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/usr/local/src/sage/sage-4.7.2.alpha3/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/usr/local/src/sage/sage-4.7.2.alpha3/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_20[4]>", line 1, in <module>
        F == sage0(F)._sage_()###line 448:
    sage: F == sage0(F)._sage_()
      File "/usr/local/src/sage/sage-4.7.2.alpha3/local/lib/python/site-packages/sage/interfaces/sage0.py", line 458, in _sage_
        return load(P._local_tmpfile())
      File "sage_object.pyx", line 775, in sage.structure.sage_object.load (sage/structure/sage_object.c:7811)
    IOError: [Errno 2] No such file or directory: '/home/dima/.sage//temp/spms_banana/6133//interface//tmp6170.sobj'
**********************************************************************
File "/usr/local/src/sage/sage-4.7.2.alpha3/devel/sage/sage/interfaces/sage0.py", line 466:
    sage: four_gcd(6)
Expected:
    2
Got:
    <BLANKLINE>
**********************************************************************
(truncated)

any clue?

Dima

comment:8 follow-up: Changed 8 years ago by jhpalmieri

I'm unable to duplicate this failure. On the other hand, I think I've seen failures for the file sage0.py randomly and nonrepeatably, having nothing to do with this ticket. Is this failure repeatable, and if so, can you confirm that it happens because of the patch here?

comment:9 in reply to: ↑ 8 Changed 8 years ago by dimpase

  • Status changed from needs_info to needs_review

Replying to jhpalmieri:

I'm unable to duplicate this failure. On the other hand, I think I've seen failures for the file sage0.py randomly and nonrepeatably, having nothing to do with this ticket. Is this failure repeatable, and if so, can you confirm that it happens because of the patch here?

Yesterday I had duplicated it like 5 or 6 times, and today it doesn't want to be duplicated. Scary...

comment:10 Changed 8 years ago by jdemeyer

This ticket is listed as the only remaining blocker for sage-4.7.2. Could somebody please review this ticket or somehow decide it's not worth merging in sage-4.7.2.

comment:11 Changed 8 years ago by jhpalmieri

I can give line 633 of the patch a positive review: that was contributed by Leif. The rest of it should be reviewed by someone other than me.

comment:12 Changed 8 years ago by jdemeyer

  • Merged in set to sage-4.7.2.rc0
  • Resolution set to fixed
  • Reviewers set to Jeroen Demeyer
  • Status changed from needs_review to closed

comment:13 Changed 8 years ago by jhpalmieri

See #11954 for a follow-up.

Note: See TracTickets for help on using tickets.