#11734: sage_wraps should only read the sources of wrapped functions when
needed.
-----------------------------------------------------------+----------------
Reporter: SimonKing | Owner:
jason
Type: defect | Status:
closed
Priority: blocker | Milestone:
sage-4.7.2
Component: misc | Resolution:
fixed
Keywords: sage_wraps sources gentoo startuptime sd32 | Work_issues:
Upstream: N/A | Reviewer:
Simon King
Author: Julian Rueth | Merged:
sage-4.7.2.alpha3
Dependencies: |
-----------------------------------------------------------+----------------
Old description:
> According to private conversation with Francois Bissey, #9976 has
> introduced a problem that makes it impossible start sage-4.7.1 on Gentoo.
> That's pretty serious, and so this ticket is a blocker.
>
> The problem is that sage_wraps reads the sources of to-be-wrapped
> functions and methods. The sources are stored as an attribute to the
> wrapper, which, on the one hand, is a waste of memory. Worse: Reading the
> Cython sources is impossible for sage-on-gentoo. Therefore, sage can't
> start.
>
> My patch introduces some lightweight classes, that simply store a
> reference to an object (e.g., the to-be-wrapped function) and return the
> sources or source lines or the argument list ''only when called''.
>
> Apply only [attachment:trac11734_sage_wraps_no_sourceread_lambda.patch]
> to the Sage library.
New description:
According to private conversation with Francois Bissey, #9976 has
introduced a problem that makes it impossible start sage-4.7.1 on Gentoo.
That's pretty serious, and so this ticket is a blocker.
The problem is that sage_wraps reads the sources of to-be-wrapped
functions and methods. The sources are stored as an attribute to the
wrapper, which, on the one hand, is a waste of memory. Worse: Reading the
Cython sources is impossible for sage-on-gentoo. Therefore, sage can't
start.
My patch introduces some lightweight classes, that simply store a
reference to an object (e.g., the to-be-wrapped function) and return the
sources or source lines or the argument list ''only when called''.
----
Apply only
[attachment:trac11734_sage_wraps_no_sourceread_lambda.proper.patch] to the
Sage library.
--
Comment(by leif):
I've attached a `*.proper.patch`, which is identical except that I removed
the "garbage" before "`# HG changeset patch`", i.e., I deleted the first
line "`exporting patch:`", since Jeroen's current merger rejects such
patches.
For now, please make sure all your patches start with "`# HG changeset
patch`", i.e., have it on the first line without any preceding messages or
whatever.
I've relaxed that in ''my version'' of the merger, but Jeroen and maybe
others are likely to use his more restrictive one.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11734#comment:24>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.