Yes, I was just about to send the following email:
On Mon, Mar 30, 2009 at 8:20 PM, Brian Granger <elliso...@gmail.com> wrote:
>
> Nice! What are the dependencies fir this?
I think just twisted, maybe openssl.
So I tried to strip the whole sage-...spkg package, but I didn't
manage to make it installable in the end -- almost everything depended
on everything (like rings, polynomials, NTL, etc.) - and it once
looked I managed to get rid of it, but it failed to install in the
end.
https://bitbucket.org/certik/sage-341alpha0/
The problem was that I needed to delete everything between the
installs, but I was just doing sage -b.
Tomorrow I am busy, but on Wednesday I'll try the other approach, just
take the notebook and put in things that are needed, that should be
fairly simple, hopefully. I will have to write my own setup.py
probably, but since that is needed anyway in the long term, it should
work.
Or maybe combinations of the above. I think I know understand a bit
what is needed for what.
Ondrej
I looked at magma.py. It's a python file, thus it doesn't affect the
actual installation, only runtime (correct?).
Here is what gets imported in it:
from sage.structure.parent import Parent
from sage.structure.element import RingElement
from expect import console, Expect, ExpectElement, ExpectFunction,
FunctionElement
import sage.misc.misc
import sage.misc.sage_eval
So shiping the Parent, RingElement etc. with the notebook should fix
it, doesn't it?
I had bigger problems, that some stuff in .pyx files from
sage/categories depended on rings and NTL etc., and that was giving me
hard time to get rid of. Also getting rid of sage/rings turned very
hard, as I think some stuff in sage.structure.parent depended on it.
So I think before refactoring interfaces, I first need to fix the pyx
files to actually compile.
Or did you mean, that the notebook should *not* ship Parent,
RingElement, etc. And to do that, some refactoring is needed?
I see, that makes sense. Well, I think I should be able to make it at
least install. If it fails at runtime, that for example
interface/magma.py doesn't import, well, that could be fixed later.
Looking at the notebook, it seems to me that magma.py is imported
dynamically, e.g. if the user doesn't set the magma interpreter, maybe
it is not imported at all?
>
>
>> looked I managed to get rid of it, but it failed to install in the
>> end.
>>
>> https://bitbucket.org/certik/sage-341alpha0/
>>
>> The problem was that I needed to delete everything between the
>> installs, but I was just doing sage -b.
>
> Yes, I suspected that.
>
>>
>> Tomorrow I am busy, but on Wednesday I'll try the other approach, just
>> take the notebook and put in things that are needed, that should be
>> fairly simple, hopefully. I will have to write my own setup.py
>> probably, but since that is needed anyway in the long term, it should
>> work.
>
> It will be absolutely essential to do some refactoring of code in
> sage/interfaces/. That can't be avoided, and won't be trivial (but
> certainly not impossible).
Ah, ok. In this case it is a little more work than I expected. I have
most of Wednesday to work on it, but I suspect I would need more time
for it.
Ondrej
Ok, that makes sense. I'll try to look into it.
Ondrej