(1) Sage developers could be better informed of what are they are going to 
affect if sage, as an "author tool",  send usage statistics about each 
"sage-lib" related function:

- Author should put sage in "send usage statistics mode"
- The same author would be warned if any of those functions starts to be 
deprecated.
- And maybe, if authors freely send files to be kept and seen as "testing 
examples" like in "sage -t <author-example>.sage"


But after a new deprecation warning, I'm thinking of implement one of this 
solutions to my code:

(2) A tool to automatically change the deprecated "simplify_exp" for 
"canonicalize_radical" inside sage files;

(3) Create my own local "simplify_exp" that mimics original "simplify_exp" 
because here authors enjoy applying "simplify_exp" to exponential 
expressions.

Pedro
(a developer of a package that uses sagemath and will be in pypi as 
suggested)


sexta-feira, 8 de Abril de 2016 às 17:43:46 UTC+1, William escreveu:
>
> On Fri, Apr 8, 2016 at 9:33 AM, Luca De Feo <de...@lix.polytechnique.fr 
> <javascript:>> wrote: 
> >> How often do you feel that changes in Sage breaks your code? 
> > 
> > Looking at my log (this project 
> > https://github.com/defeo/ss-isogeny-software) 
> > 
> > - Sage 6.2: module renamed in Pari/GP interface (without deprecation, as 
> far 
> > as I recall) 
> > - Sage 6.4: frankly, I don't know, but possibly a change in the finite 
> > fields implementation 
> > - Sage 6.7: changes in cython, not really Sage's fault, I guess 
> > - Sage 6.7: changes in the finite fields implementation (with proper 
> > deprecation, this time) 
> > - Sage 6.10: changes in richcmp (did not get deprecation warnings, but 
> the 
> > change concerns an internal function) 
> > - Sage 7.1: affected by #19941 (properly deprecated, note that 7.1 is 
> stable 
> > right now, but not yet in SMC) 
> > 
> > It may be argued that I'm taking risks because I sometimes fiddle with 
> "the 
> > internals" of Sage, but one other problem of Sage is that it does not 
> define 
> > clearly what's the public API and what's internal. 
>
> +1 -- this "one other problem of Sage is that it does not define 
> clearly what's the public API and what's internal." is a HUGE problem 
> -- and we're not aware of it because "user code" is typically private. 
>
> If there were a large body of pip-installable packages, which are user 
> code, this would help *define* what the public API of Sage really is, 
> and also give us a much larger body of code to test against before 
> making new releases. 
>
> As an example, when working on 
>
>   https://github.com/williamstein/sage_modabvar 
>
> the first thing I noticed in that from sage-6.10 to sage-7.x 
>
>    import sage.rings.arith 
>
> completely BROKE.  It became "import sage.arith". 
>
> This is (who knows?) a change in the public api of the core sage 
> library.  Maybe it's a gratituous one, and in this case one I'm 
> puzzled by why this change was made.  (I wrote sage.rings.arith in the 
> first place, and it was meant to be some misc arith needed to 
> implement rings.  Why move it to its own top level module like that?) 
>
> By writing Python packages that depend on "the core sage library" we 
> will be forced to define what the core library is and stabilize it. 
> If you guys want Sage to survive/thrive, this **MUST HAPPEN**.   The 
> core sage library should -- like with Python -- be the place where 
> code, which has been tested/used by people and got stable, goes to 
> stay stable (at least API-wise).  Like the standard Python library. 
>
> William 
>
> > 
> > Luca 
> > 
> > -- 
> > 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+...@googlegroups.com <javascript:>. 
> > To post to this group, send email to sage-...@googlegroups.com 
> <javascript:>. 
> > Visit this group at https://groups.google.com/group/sage-devel. 
> > For more options, visit https://groups.google.com/d/optout. 
>
>
>
> -- 
> William (http://wstein.org) 
>

-- 
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