On 11 lip, 19:34, "William Stein" <[EMAIL PROTECTED]> wrote:
> On Wed, Jun 11, 2008 at 10:24 AM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> > I've started to study the code and play with it, and then of course,
> > other
> > obligations took the priority. But I'll have more time during the
> > summer.
> > It seems like that the extending of the web interface would be pretty
> > easy,
> > but the real problem is that the current notebook infrastructure
> > doesn't
> > suit our needs. The first change would be to enable the possibility
> > that (sage) users have their own sage_notebook directory. This is not
> > a big problem, and I already made a (more or less) working code for
> > that. But in order to do that I had to change the behavior of some
> > core
> > classes in notebook.
>
> It would be really really good if this were something that could
> be merged back into the existing notebook, so we can benefit
> from each other's work longterm.
Sure. That's what I had in mind.
>
> > The tricky part is security. If I understood correctly, the code from
> > the
> > worksheets is executed via yet another sage instance by the use of
> > pseudo-terminal.
>
> Yep. And for a public service such as sagenb.org, that is all done
> over an ssh connection to another account!
>
> > I wasn't able to pin-point the exact spot in the code where this is
> > happening. It
>
> It happens when the interface Sage object is created in worksheet.py,
> near the top of the file. That creates a pseudotty interface to an ssh
> session when you use the server_pool option to the notebook command.
>
>
OK. I think I got it. It doesn't help that are several classes/
functions with name sage.
So sage function from the class Worksheet is using class sage from
interfaces/sage0 which
creates new sage instance, and _send is probably a function inherited
from the Expect class.
I can see why you want to execute code from the worksheet in separate
sage instance,
but what is the reason for the creation of new sage instance in
notebook_twisted()?
If it's ok with you my first step would be to refactor the code to
make notebook a real multisuer environment,
with zero security for a start. This looks like a doable project.
Ivica
>
> > looks like this is done with the function _send() from sage class, but
> > I could not
> > find where is this function defined. Then there is evaluate() from
> > cell.py, which is
> > also a mystery for me. I think the easiest solution would be to
> > decorate the function
> > which executes the code from the worksheets with a function that would
> > check the
> > rights of the user to execute the code. The default function would do
> > nothing, and if,
> > for example, one wants to use sage on a server with sage users being
> > the regular
> > users of that server, that function would check wether the user has
> > the rights to
> > execute the code.
> > I'm not sure what is the best way to do that. This should be done in
> > such a way to be easily configurable to enable the use of sage server
> > in various settings.
> > Any suggestions?
>
> > Ivica
>
> > On 11 lip, 04:13, "William Stein" <[EMAIL PROTECTED]> wrote:
> >> On Wed, May 28, 2008 at 8:25 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]>
> >> wrote:
>
> >> > OK.
> >> > Source code seems reasonably readable.
> >> > I'll start playing with the code, and see where I'll end up.
>
> >> Have you guys got anywhere? As was mentioned before, starting
> >> small is often a very good idea.
>
> >> William
>
> >> > On 29 svi, 03:10, "Timothy Clemans" <[EMAIL PROTECTED]> wrote:
> >> >> Hi,
>
> >> >> Thanks for showing your interest in working on the Notebook. I'm one
> >> >> of the Notebook developers.
>
> >> >> I did some work on some an administrator portal over a week ago
> >> >> however I forgot about it, and it was deleted today when I was
> >> >> cleaning up my home directory. I had implemented an administration
> >> >> page with a frontend to banning individual users from logging in.
>
> >> >> I don't plan on writing new code until after the work I've already
> >> >> done on some other Notebook stuff has been merged into Sage,
> >> >> seehttp://groups.google.com/group/sage-devel/browse_thread/thread/624262....
> >> >> You could get started on Notebook development by reviewing one of
> >> >> those. E-mail Michael Abshoff at [EMAIL PROTECTED] for a
> >> >> TRAC account so you can add and contribute to tickets.
>
> >> >> We have a tutorial on doing general development
> >> >> athttp://sagemath.org/doc/html/prog/index.html. The Notebook source code
> >> >> is in sage/server/notebook,
> >> >> seehttp://www.sagemath.org/hg/sage-main/file/6a6766d05f3b/sage/server/no....
>
> >> >> I recommend working on implementing your administration ideas as small
> >> >> projects. For example the user settings page in the Notebook now was
> >> >> originally just a change password page and then a more general page
> >> >> was created out of it,
> >> >> seehttp://trac.sagemath.org/sage_trac/ticket/3213. Then on top of that
> >> >> there is a patch up that implements better styling for that page and
> >> >> also a change auto-save interval control.
>
> >> >> Timothy
>
> >> >> On Wed, May 28, 2008 at 5:22 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]>
> >> >> wrote:
>
> >> >> > Hi,
> >> >> > I would like to incorporate Sage in a web-application which, among
> >> >> > other things, enables remote editing and executing of programs in
> >> >> > various programming languages and mathematical/engineering tools,
> >> >> > written by the group of researchers from our university.
> >> >> > Specifically, we would like to extend the capabilities of notebook so
> >> >> > that we can add/delete users and their data programatically while the
> >> >> > Sage web server is running. Perhaps it would be also interesting to
> >> >> > include user management in the Setting part of the notebook web
> >> >> > interface?
> >> >> > I have some experience in Python, but none in Twisted framework. Could
> >> >> > you give me some hints where to look in Sage source? Do you already
> >> >> > have some plans in this direction?
>
> >> >> > Thanks for a great application.
>
> >> >> > Ivica Nakic
> >> >> > Assistant Professor of Mathematics
> >> >> > University of Zagreb
> >> >> > Croatia
>
> >> --
> >> William Stein
> >> Associate Professor of Mathematics
> >> University of Washingtonhttp://wstein.org
>
> --
> William Stein
> Associate Professor of Mathematics
> University of Washingtonhttp://wstein.org
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---