On Wednesday, May 18, 2016, Brian Beavers <drbeavers...@gmail.com> wrote:

> Looks like there's more going on than just a lack of pty. Here's the
> result:
>
>
Well that is just another test of pty...



> sage: gp.eval('2+2')
> ---------------------------------------------------------------------------
> OSError                                   Traceback (most recent call last)
> <ipython-input-1-e5d4083fb83e> in <module>()
> ----> 1 gp.eval('2+2')
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
> in eval(self, code, strip, synchronize, locals, allow_use_file,
> split_lines, **kwds)
>    1237                 elif split_lines:
>    1238                     return '\n'.join([self._eval_line(L,
> allow_use_file=allow_use_file, **kwds)
> -> 1239                                         for L in code.split('\n')
> if L != ''])
>    1240                 else:
>    1241                     return self._eval_line(code,
> allow_use_file=allow_use_file, **kwds)
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
> in _eval_line(self, line, allow_use_file, wait_for_prompt,
> restart_if_needed)
>     437         a = Expect._eval_line(self, line,
>     438                               allow_use_file=allow_use_file,
> --> 439                               wait_for_prompt=wait_for_prompt)
>     440         if a.find("the PARI stack overflows") != -1:
>     441             verbose("automatically doubling the PARI stack and
> re-executing current input line")
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
> in _eval_line(self, line, allow_use_file, wait_for_prompt,
> restart_if_needed)
>     848         try:
>     849             if self._expect is None:
> --> 850                 self._start()
>     851             E = self._expect
>     852             try:
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
> in _start(self, alt_message, block_during_init)
>     237
>     238     def _start(self, alt_message=None, block_during_init=True):
> --> 239         Expect._start(self, alt_message, block_during_init)
>     240         # disable timer
>     241         self._eval_line('default(timer,0);')
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
> in _start(self, alt_message, block_during_init)
>     423                         env=pexpect_env,
>     424                         name=self._repr_(),
> --> 425                         quit_string=self._quit_string())
>     426             except (ExceptionPexpect, pexpect.EOF) as e:
>     427                 # Change pexpect errors to RuntimeError
>
> sage/interfaces/sagespawn.pyx in
> sage.interfaces.sagespawn.SageSpawn.__init__
> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1331)()
>
> sage/interfaces/sagespawn.pyx in
> sage.interfaces.sagespawn.SageSpawn.__init__
> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1284)()
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
> in __init__(self, command, args, timeout, maxread, searchwindowsize,
> logfile, cwd, env, ignore_sighup, echo, preexec_fn, encoding, codec_errors,
> dimensions)
>     191             self.name = '<pexpect factory incomplete>'
>     192         else:
> --> 193             self._spawn(command, args, preexec_fn, dimensions)
>     194
>     195     def __str__(self):
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
> in _spawn(self, command, args, preexec_fn, dimensions)
>     286
>     287         self.ptyproc = self._spawnpty(self.args, env=self.env,
> --> 288                                      cwd=self.cwd, **kwargs)
>     289
>     290         self.pid = self.ptyproc.pid
>
> sage/interfaces/sagespawn.pyx in
> sage.interfaces.sagespawn.SageSpawn._spawnpty
> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1520)()
>
> /usr/lib/sagemath/local/lib/python2.7/site-packages/ptyprocess/ptyprocess.pyc
> in spawn(cls, argv, cwd, env, echo, preexec_fn, dimensions)
>     218
>     219         if use_native_pty_fork:
> --> 220             pid, fd = pty.fork()
>     221         else:
>     222             # Use internal fork_pty, for Solaris
>
> /usr/lib/sagemath/local/lib/python/pty.pyc in fork()
>     105         return pid, fd
>     106
> --> 107     master_fd, slave_fd = openpty()
>     108     pid = os.fork()
>     109     if pid == CHILD:
>
> /usr/lib/sagemath/local/lib/python/pty.pyc in openpty()
>      27     except (AttributeError, OSError):
>      28         pass
> ---> 29     master_fd, slave_name = _open_terminal()
>      30     slave_fd = slave_open(slave_name)
>      31     return master_fd, slave_fd
>
> /usr/lib/sagemath/local/lib/python/pty.pyc in _open_terminal()
>      68                 continue
>      69             return (fd, '/dev/tty' + x + y)
> ---> 70     raise os.error, 'out of pty devices'
>      71
>      72 def slave_open(tty_name):
>
> OSError: out of pty devices
>
>
> Brian Beavers, Ph.D., Associate Professor
> Department of Mathematics & Statistics
> Stephen F. Austin State University
>
> On Wed, May 18, 2016 at 8:50 AM, William Stein <wst...@gmail.com
> <javascript:_e(%7B%7D,'cvml','wst...@gmail.com');>> wrote:
>
>>
>>
>> On Wednesday, May 18, 2016, Brian Beavers <drbeavers...@gmail.com
>> <javascript:_e(%7B%7D,'cvml','drbeavers...@gmail.com');>> wrote:
>>
>>> I've discovered why the notebook server (and administrative pages
>>> within) loads but notebooks do not load: WSL does not yet suppot pty. When
>>> I try to create a worksheet, back in the terminal Sage throws an error that
>>> it is out of pty instances.
>>>
>>>
>> What happens if you do
>>
>> gp.eval('2+2')
>>
>> in the terminal?
>>
>> Also, unlike sagenb, jupyter doesn't use pty's so it won't have this
>> obstruction.
>>
>>
>>>
>>>
>>> Brian Beavers, Ph.D., Associate Professor
>>> Department of Mathematics & Statistics
>>> Stephen F. Austin State University
>>>
>>> On Mon, May 16, 2016 at 2:31 AM, Dima Pasechnik <dimp...@gmail.com>
>>> wrote:
>>>
>>>> one can do graphics in a browser running on the host, so this is not
>>>> really a big limitation.
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "sage-devel" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to sage-devel+unsubscr...@googlegroups.com.
>>>> To post to this group, send email to sage-devel@googlegroups.com.
>>>> Visit this group at https://groups.google.com/group/sage-devel.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "sage-devel" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to sage-devel+unsubscr...@googlegroups.com.
>>> To post to this group, send email to sage-devel@googlegroups.com.
>>> Visit this group at https://groups.google.com/group/sage-devel.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>> Sent from my massive iPhone 6 plus.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-devel+unsubscr...@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');>
>> .
>> To post to this group, send email to sage-devel@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');>.
>> Visit this group at https://groups.google.com/group/sage-devel.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>




> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com
> <javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');>
> .
> To post to this group, send email to sage-devel@googlegroups.com
> <javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');>.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Sent from my massive iPhone 6 plus.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to