Opened 12 years ago

Closed 12 years ago

Last modified 5 years ago

#6568 closed enhancement (fixed)

[with patch, positive review] Migrate Notebook to Jinja

Reported by: timdumol Owned by: timdumol
Priority: major Milestone: sage-4.1.2
Component: notebook Keywords: notebook, jinja, templating engine
Cc: jason Merged in: Sage 4.1.2.alpha0
Authors: Tim Dumol Reviewers: William Stein, Minh Van Nguyen
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description

Jinja is a templating engine based on Django's. It's already included in Sage due to the inclusion of Sphinx. Migrating from HTML to templates should make it easier to make future changes to the code, and make things easier to read.

Additionally, this will give us the option of switching to a web framework such as Django.

Attachments (21)

sage-trac-6568.1.patch (101.0 KB) - added by timdumol 12 years ago.
Migrated notebook.py from HTML to Jinja. Base: r12658 (Sage 4.4.1)
sage-trac-6568.2.patch (99.7 KB) - added by timdumol 12 years ago.
Migrated worksheet.py to Jinja. Added doctests. Removed html_slide_controls. Incremental patch from the first patch.
12659.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12660.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12661.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12662.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12663.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12664.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12665.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12666.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
12667.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
_12659.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
_12660.patch (2 bytes) - added by timdumol 12 years ago.
OBSOLETE.
sage-trac-6568.3.patch (17.4 KB) - added by timdumol 12 years ago.
Fixed several bugs. Incremental patch from sage-trac-6568.2.patch
sage-trac-6568.4.patch (2.5 KB) - added by timdumol 12 years ago.
Fixed bug in styling of documentation pages.
sage-trac-6568.5.patch (4.3 KB) - added by timdumol 12 years ago.
Fixed a few bugs in templating.
sage-trac-6568.6.patch (56.4 KB) - added by timdumol 12 years ago.
Removed hack in twist.py for documentation page creation. Removed unused files.
sage-trac-6568.6.cumulative.patch (257.5 KB) - added by timdumol 12 years ago.
Cumulative patches from sage-trac-6568.2.patch to sage-trac-6568.6.patch. Incremental patch from sage-trac-6568.1.patch.
trac_6568-jinja_migration.patch (136.9 KB) - added by mpatel 12 years ago.
All-in-one. Apply only this patch.
trac_6568-jinja_migration_v2.patch (137.4 KB) - added by mpatel 12 years ago.
Fixed introspection, minor clean-ups. Apply only this patch.
trac_6568-manifest.patch (716 bytes) - added by mvngu 12 years ago.

Download all attachments as: .zip

Change History (60)

comment:1 Changed 12 years ago by timdumol

  • Status changed from new to assigned
  • Summary changed from Migrate Notebook to Jinja to [with patch, not ready for review] Migrate Notebook to Jinja

comment:2 Changed 12 years ago by timdumol

  • Priority changed from major to minor

comment:3 follow-up: Changed 12 years ago by mvngu

timdumol: There should be a proper username on the patch. At the moment I see this

# User deadlyx@localhost.localdomain

The username should not be a leet handle or anything like that. In order to properly credit contributors to Sage, the username should following this format:

# User Full Name <email@somewhere.com>

You can set a proper username in the file ~/.hgrc with something like

[ui]
username = Full Name <email@somewhere.com>

I say "should", not "must". If you don't want to, then at least fill in the "Author(s):" field with your full name. That way, it makes it easy to credit you.

comment:4 in reply to: ↑ 3 Changed 12 years ago by timdumol

Replying to mvngu:

timdumol: There should be a proper username on the patch. At the moment I see this

# User deadlyx@localhost.localdomain

The username should not be a leet handle or anything like that. In order to properly credit contributors to Sage, the username should following this format:

# User Full Name <email@somewhere.com>

You can set a proper username in the file ~/.hgrc with something like

[ui]
username = Full Name <email@somewhere.com>

I say "should", not "must". If you don't want to, then at least fill in the "Author(s):" field with your full name. That way, it makes it easy to credit you.

Thank you very much for noticing that. I didn't realize that my local username was included in the patch. I'll fix it asap.

comment:5 Changed 12 years ago by timdumol

  • Authors set to Tim Joseph Dumol
  • Keywords changed from notebook, jinja,templating engine to notebook, jinja, templating engine
  • Summary changed from [with patch, not ready for review] Migrate Notebook to Jinja to [with patch, needs review, unfinished] Migrate Notebook to Jinja

comment:6 Changed 12 years ago by timdumol

  • Summary changed from [with patch, needs review, unfinished] Migrate Notebook to Jinja to [with patch, needs review] Migrate Notebook to Jinja

comment:7 Changed 12 years ago by was

  • Summary changed from [with patch, needs review] Migrate Notebook to Jinja to [with patch, needs work] Migrate Notebook to Jinja

Hi,

I get 8 rejects when trying to apply the first patch to a 100% clean build of sage-4.1:

wstein@sage:~/build/sage-4.1$ ./sage
----------------------------------------------------------------------
| Sage Version 4.1, Release Date: 2009-07-09                         |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
Loading Sage library. Current Mercurial branch is: ref3
sage: hg_sage.apply('http://trac.sagemath.org/sage_trac/attachment/ticket/6568/12659.patch')
Attempting to load remote file: http://trac.sagemath.org/sage_trac/raw-attachment/ticket/6568/12659.patch
Loading: [.........]
cd "/scratch/wstein/build/sage-4.1/devel/sage" && hg status
/scratch/wstein/build/sage-4.1/local/lib/python2.6/site-packages/sage/misc/hg.py:240: DeprecationWarning: os.popen3 is deprecated.  Use the subprocess module.
  x = os.popen3(s)
cd "/scratch/wstein/build/sage-4.1/devel/sage" && hg status
cd "/scratch/wstein/build/sage-4.1/devel/sage" && hg import   "/scratch/wstein/sage/temp/sage.math.washington.edu/5378/tmp_1.patch"
applying /scratch/wstein/sage/temp/sage.math.washington.edu/5378/tmp_1.patch
patching file sage/server/notebook/notebook.py
Hunk #1 FAILED at 23
Hunk #2 FAILED at 32
Hunk #3 FAILED at 1355
Hunk #4 FAILED at 1402
Hunk #5 FAILED at 1506
Hunk #6 FAILED at 1704
Hunk #7 FAILED at 1903
Hunk #8 FAILED at 2162
8 out of 8 hunks FAILED -- saving rejects to file sage/server/notebook/notebook.py.rej
file sage/server/notebook/templates/debug_window.html already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/debug_window.html.rej
file sage/server/notebook/templates/guest_top_bar_and_worksheet.html already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/guest_top_bar_and_worksheet.html.rej
file sage/server/notebook/templates/head.html already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/head.html.rej
file sage/server/notebook/templates/top_bar_and_worksheet.html already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/top_bar_and_worksheet.html.rej
file sage/server/notebook/templates/user_controls.tmpl already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/user_controls.tmpl.rej
file sage/server/notebook/templates/worksheet_body.html already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/worksheet_body.html.rej
file sage/server/notebook/templates/worksheet_topbar.tmpl already exists
1 out of 1 hunks FAILED -- saving rejects to file sage/server/notebook/templates/worksheet_topbar.tmpl.rej
abort: patch failed to apply

What should I do? What are these patches against exactly?

comment:8 Changed 12 years ago by timdumol

@was: It seems something went wrong with the patch exporting. I cleaned up my hg history and combined a few changesets to make the patches easier to apply. The new patches are _12659.patch and _12660.patch. Sorry for the inconvenience.

The new patches are against r12658. The old ones were as well, but I don't know what happened to them.

comment:9 Changed 12 years ago by timdumol

  • Summary changed from [with patch, needs work] Migrate Notebook to Jinja to [with patch, needs review] Migrate Notebook to Jinja

comment:10 Changed 12 years ago by mpatel

I can't apply/review this patch immediately, but it seems that each change appears twice in the latest version. For example,

$ grep "sage/server/notebook/templates/notebook/worksheet.html" _12660.patch
diff -r d3be9e0b1090 -r a60e86f38be7 sage/server/notebook/templates/notebook/worksheet.html
+++ b/sage/server/notebook/templates/notebook/worksheet.html    Sun Jul 26 14:08:17 2009 +0800
diff -r d3be9e0b1090 -r 1335daa5adcd sage/server/notebook/templates/notebook/worksheet.html
+++ b/sage/server/notebook/templates/notebook/worksheet.html    Tue Jul 28 21:33:54 2009 +0800

Also, should "reviisons" appear in the patch? Sorry, if I'm wrong.

comment:11 Changed 12 years ago by mpatel

The transition to templates is much needed and appreciated. Thanks very much for doing this. Is it possible to break up the changes into a few separate pieces, possibly logically independent? This might make it easier to review them and to get feedback on and track down any changes in the behavior of the notebook. On the other hand, it may be better to do it all at once. Thoughts?

comment:12 Changed 12 years ago by timdumol

@mpatel

Thanks for the feedback. Yeah, that's a typo. Thanks for catching it.

It seems that the patches are messed up. I've fixed them up with hg histedit. I don't see any repeated changes in the patches anymore. Please tell me if there are anymore problems.

Breaking them up seems like a good idea. There are quite a lot of functions though, so there'll be a lot of patches. It may be inconvenient to try them all. Anyways, I'll work on them asap.

Changed 12 years ago by timdumol

Migrated notebook.py from HTML to Jinja. Base: r12658 (Sage 4.4.1)

Changed 12 years ago by timdumol

Migrated worksheet.py to Jinja. Added doctests. Removed html_slide_controls. Incremental patch from the first patch.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

Changed 12 years ago by timdumol

OBSOLETE.

comment:13 Changed 12 years ago by mpatel

#4808 appears to be a duplicate of this ticket. When one is merged, please consider closing the other.

comment:14 Changed 12 years ago by mpatel

From some testing in Firefox 3.5 on Linux, with both new patches applied:

  • Live doc worksheets do not load their stylesheets.
  • Published worksheets are now [partially] editable.
  • The "re-publish" and "stop publishing" buttons do not work, apparently.
  • The print representation of a worksheet is missing cell boundaries.

Also, a number of doctests in notebook.py and worksheet.py failed with sage -t -long -option -verbose -randorder. For worksheet.py, there are mostly just small changes in expected HTML output. I think some of the randomized failures are pre-existing:

sage -t -long -optional -randorder=87873 "4.1.1.rc1/devel/sage-main/sage/server/notebook/worksheet.py"
**********************************************************************
File "/home/apps/sage-4.1.1.rc1/devel/sage-main/sage/server/notebook/worksheet.py", line 178:
    sage: sage.server.notebook.worksheet.one_prestarted_sage(None,None)
Expected:
    Sage
Got nothing
**********************************************************************
File "/home/apps/sage-4.1.1.rc1/devel/sage-main/sage/server/notebook/worksheet.py", line 148:
    sage: sage.server.notebook.worksheet._a_sage
Expected nothing
Got:
    Sage
**********************************************************************
2 items had failures:
   1 of   6 in __main__.example_1270084472
   1 of   5 in __main__.example_1700749147
***Test Failed*** 2 failures.
For whitespace errors, see the file /home/apps/sage/tmp/.doctest_worksheet.py
         [7.9 s]
exit code: 1024
 
----------------------------------------------------------------------
The following tests failed:
        sage -t -long -optional -randorder=87873 "4.1.1.rc1/devel/sage-main/sage/server/notebook/worksheet.py"
Total time for all tests: 7.9 seconds

For notebook.py, there are other error types.

comment:15 Changed 12 years ago by mpatel

Also,

$ grep reviisons sage-trac-6568.*
sage-trac-6568.2.patch:+<a class="listcontrol" href="reviisons?rev={{ rev }}&action=publis">Publish this one</a>&nbsp;&nbsp;

comment:16 follow-up: Changed 12 years ago by timdumol

  • Summary changed from [with patch, needs review] Migrate Notebook to Jinja to [with patch, needs work] Migrate Notebook to Jinja

I've checked the doctests out on a fresh install (r12659). They also fail, so I assume they're pre-existing. I'm not too familiar with the Notebook code, but I'll see if I can fix them up. Meanwhile, perhaps they should be put on a new ticket.

I'm working on the rest of the problems now.

comment:17 in reply to: ↑ 16 Changed 12 years ago by timdumol

Replying to timdumol:

I've checked the doctests out on a fresh install (r12659). They also fail, so I assume they're pre-existing. I'm not too familiar with the Notebook code, but I'll see if I can fix them up. Meanwhile, perhaps they should be put on a new ticket.

I'm working on the rest of the problems now.

I'm sorry, I meant r12658.

Changed 12 years ago by timdumol

Fixed several bugs. Incremental patch from sage-trac-6568.2.patch

Changed 12 years ago by timdumol

Fixed bug in styling of documentation pages.

comment:18 Changed 12 years ago by timdumol

  • Summary changed from [with patch, needs work] Migrate Notebook to Jinja to [with patch, needs review] Migrate Notebook to Jinja

I've fixed all the outlined bugs, and one more. The doctests all seem to pass, except for the pre-existing failures that you pointed out.

comment:19 Changed 12 years ago by mpatel

  • Cc jason added
  • Priority changed from minor to major
  • Summary changed from [with patch, needs review] Migrate Notebook to Jinja to [with patch, needs work] Migrate Notebook to Jinja
  • I think clicking "No" in reply to "Do you want to publish this worksheet" unpublishes the worksheet, but it does not return the sheet to interactive mode.
  • jsMath is not included in printed worksheets. The page itself is missing the title.
  • How does the morecss block work? Can we now avoid twist.py's "hack" altogether?
  • Should, e.g., server/notebook/templates/doc.html still be there?

If you're not already using the Mercurial Queues extension, it may be worth trying. hg qrefresh can be very helpful.

I've added Jason Grout to the CC: list, since my checks may not cover the range of notebook usage patterns. Perhaps we can get other volunteers?

comment:20 Changed 12 years ago by timdumol

  • The morecss inserts the code in the block after the first css include. It should be possible to avoid it by creating another template specifically for documentation pages.
  • Probably not. I'll work on cleaning up the file tree asap.
  • I'll work on the rest of the bugs.

I've actually been using histedit to combine changesets. Although I'm guessing patch queues are more idiomatic.

I'm pretty new to the Sage community, so I don't know.

comment:21 Changed 12 years ago by mvngu

The official site of Mercurial contains many tutorials on using Mercurial itself. In particular, I recommend that you go through its tutorial for beginners. After that, you might want to look through a section on using Mercurial queues to manage patches. Anyway, please tell me if you have problems with using Mercurial or its queue extension.

comment:22 Changed 12 years ago by jason

Also, you might look at http://wiki.sagemath.org/MercurialQueues for a quick hands-on introduction to queues.

comment:23 Changed 12 years ago by timdumol

Actually, I meant "I don't know." as in I don't know about the possibility of finding other volunteers. I'm familiar with patch queues. Thanks for the help.

Changed 12 years ago by timdumol

Fixed a few bugs in templating.

Changed 12 years ago by timdumol

Removed hack in twist.py for documentation page creation. Removed unused files.

Changed 12 years ago by timdumol

Cumulative patches from sage-trac-6568.2.patch to sage-trac-6568.6.patch. Incremental patch from sage-trac-6568.1.patch.

comment:24 Changed 12 years ago by timdumol

  • Summary changed from [with patch, needs work] Migrate Notebook to Jinja to [with patch, needs review] Migrate Notebook to Jinja

I've fixed all the bugs pointed out, and the kludge/"hack" was removed. I've also cleaned up the templates file tree. Thanks for noting them.

Changed 12 years ago by mpatel

All-in-one. Apply only this patch.

comment:25 Changed 12 years ago by mpatel

I've attached a solo patch comprised of Tim Dumol's six recent patches. (I did not use the cumulative patch.) I've ignored a few small rejected hunks from the sixth patch --- in notebook.py, twist.py, and base.html --- since it appears that the rejected changes are applied by an earlier patch. Of course, all credit for the hard work of migrating the notebook to Jinja should go to Tim.

I haven't tested the latest changes extensively, but I've noticed no unwelcome surprises.

Changed 12 years ago by mpatel

Fixed introspection, minor clean-ups. Apply only this patch.

comment:26 Changed 12 years ago by mpatel

Version 2 (of the uber-patch) should fix introspection. It also

  • Simplifies Notebook.plain_text_worksheet_html().
  • Indents Notebook.html_debug_window()'s docstring.

There's still some HTML generation in

  • Notebook.object_list_html(), Notebook.list_window_javascript(), Notebook.html_settings().
  • Worksheet.html_ratings_into()

but these methods are unused or minor. Of course, there's markup in interact.py, etc.

Should we make a separate ticket for moving css.py's stylesheets to templates/? Rebasing other tickets against this one may be easier than the opposite.

My review is positive, though someone else should check the most recent changes. It would be useful to get feedback from other testers.

comment:27 Changed 12 years ago by timdumol

The patch seems quite large enough as is without including the sheets from css.py. I think another ticket would be more suitable.

Actually, I hope to clean the HTML up and replace the table layout with CSS once this gets committed, so it may be nice to put those changes into a new ticket as well.

comment:28 Changed 12 years ago by mpatel

Sounds great. I'll steer clear. In the near term, I'll try to simplify the jsMath-related code for #4714, along the lines of #6673.

I should add that v2 of the uni-patch also fixes the "User Management" page at, e.g., http://localhost:8000/users (for admins). The problem was a misuse of template.template() in twist.py.

comment:29 Changed 12 years ago by AlexGhitza

  • Milestone changed from sage-wishlist to sage-4.1.2

comment:30 follow-up: Changed 12 years ago by was

  • Summary changed from [with patch, needs review] Migrate Notebook to Jinja to [with patch, positive review] Migrate Notebook to Jinja

REFEREE REPORT:

The Sphinx docstrings that you added, which are very good, have a formatting problem, namely below there needs to be a newline before each - (i.e., lots of whitespace):

 	1315	        INPUT: 
 	1316	        - ``username`` - a string 
 	1317	        - ``worksheet`` - an instance of Worksheet 
 	1318	 
 	1319	        OUTPUT: 
 	1320	        - a string containing the HTML 

See this screenshot: http://wstein.org/home/wstein/tmp/jinja1.png which illustrates how the ReST is messed up. This isn't a big deal, since I don't think this code is even in the reference manual yet... But it would be good to go through and fix.

All doctests pass, and *using* the notebook after applying the patches seems to work fine -- I can't find any visible difference.

I give this a positive review. Proper Sphinxing of docs can go in a future patch, and be done throughout the notebook server code.

comment:31 in reply to: ↑ 30 Changed 12 years ago by timdumol

  • Summary changed from [with patch, positive review] Migrate Notebook to Jinja to [with patch, positive review] Migrate Notebook to JinjaFixed docstrings added by patch #6568 in `notebook.py` and `worksheet.py`

I've created a new ticket for notebook documentation at #6840. The docstrings fixes are there.

comment:32 Changed 12 years ago by mpatel

In part, the patch "v2" at #5360 is an attempt to include some server/ docstrings in the reference manual.

comment:33 follow-up: Changed 12 years ago by mvngu

  • Merged in set to Sage 4.1.2.alpha0
  • Resolution set to fixed
  • Reviewers set to William Stein
  • Status changed from assigned to closed

The patch trac_6568-jinja_migration_v2.patch results in over 20 warnings when building the reference manual:

WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html:15: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html:20: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_beforepublish_window:14: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_beforepublish_window:19: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_debug_window:8: (WARNING/2) Literal block expected; none found.
WARNING: <autodoc>:0: (ERROR/3) Unexpected indentation.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.DIR:1: (ERROR/3) Unexpected indentation.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_debug_window:15: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_doc:15: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_doc:17: (WARNING/2) Definition list ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_download_or_delete_datafile:17: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_download_or_delete_datafile:25: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_plain_text_window:18: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_plain_text_window:24: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_share:16: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_share:24: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_upload_data_window:13: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_upload_data_window:18: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_worksheet_revision_list:16: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_worksheet_revision_list:23: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_worksheet_settings:13: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.html_worksheet_settings:20: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.worksheet_html:16: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/notebook.py:docstring of sage.server.notebook.notebook.Notebook.worksheet_html:23: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
WARNING: /scratch/mvngu/release/sage-4.1.1/local/lib/python2.6/site-packages/sage/server/notebook/worksheet.py:docstring of sage.server.notebook.worksheet.Worksheet.html_menu:10: (WARNING/2) Block quote ends without a blank line; unexpected unindent.

When I ran the test suite with the patch, I received a timed out error:

sage -t -long devel/sage-main/sage/interfaces/ecm.py
*** *** Error: TIMED OUT! PROCESS KILLED! *** ***
*** *** Error: TIMED OUT! *** ***
*** *** Error: TIMED OUT! *** ***
	 [1800.1 s]

This error has nothing to do with the patch. It might be due to sage.math being too busy or its system resources (probably RAM) nearing capacity. Merged trac_6568-jinja_migration_v2.patch.

comment:34 Changed 12 years ago by timdumol

  • Summary changed from [with patch, positive review] Migrate Notebook to JinjaFixed docstrings added by patch #6568 in `notebook.py` and `worksheet.py` to [with patch, positive review] Migrate Notebook to Jinja

comment:35 in reply to: ↑ 33 Changed 12 years ago by mpatel

Replying to mvngu:

The patch trac_6568-jinja_migration_v2.patch results in over 20 warnings when building the reference manual:

I think #6840 will take care of these.

Changed 12 years ago by mvngu

comment:36 Changed 12 years ago by mvngu

  • Reviewers changed from William Stein to William Stein, Minh Van Nguyen

The patch trac_6568-manifest.patch prevents repository corruption. A repository corruption can happen because trac_6568-jinja_migration_v2.patch adds two new directories:

  1. sage/server/notebook/templates/notebook/
  2. sage/server/notebook/templates/worksheet/

If the file SAGE_ROOT/devel/sage-main/MANIFEST.in is not patched to handle files under these new directories, those files won't be picked up when making a source release with sage -sdist.

comment:37 Changed 12 years ago by mpatel

The "manifest" patch should fix #6884. If so, please close that ticket.

comment:38 Changed 12 years ago by mvngu

Merged patches in this order:

  1. trac_6568-jinja_migration_v2.patch
  2. trac_6568-manifest.patch

comment:39 Changed 5 years ago by chapoton

  • Authors changed from Tim Joseph Dumol to Tim Dumol
  • Report Upstream set to N/A
Note: See TracTickets for help on using tickets.