Differences between revisions 14 and 21 (spanning 7 versions)
Revision 14 as of 2009-12-24 10:45:18
Size: 2260
Editor: Minh Nguyen
Comment: heading for page
Revision 21 as of 2010-01-15 19:38:34
Size: 3905
Comment:
Deletions are marked like this. Additions are marked like this.
Line 16: Line 16:
 * [[SageClusterGuidelines | Sage cluster guidelines]] --- guidelines for using machines on the Sage cluster
Line 18: Line 17:
 * [[UpdateCopyright | Update the copyright notice]] = Sage development =
Line 20: Line 19:
 * [[Software | Ideas for software to integrate with Sage]] Much of the Sage library is written in Python. Some performance critical parts of the Sage library is written in Cython. Information is available to help [[devel/BeginSageDevelopment | beginners on developing]] the Sage library. Also consult the list of [[devel/PythonCythonResources | Python and Cython resources]] for beginner to advanced information on the Python and Cython languages. You can also do [[devel/FunctionalProgramming | functional programming with Python and Sage]]. You should avoid as much as possible using non-ASCII characters in a source file. See this page for information on [[devel/nonASCII | avoiding non-ASCII characters]] in source files. However, there are also cases in which you need put such characters in a source file. That page also has tips on specifying the character encoding of a source file. The page on [[combinat/HelpOnTheDoc | docstring documentation]] contains information on the format (ReSTructured text) used in the docstrings of functions, classes, methods and modules. The page also includes special Sage doctest conventions. Before updating the copyright notices in the Sage library, read the page on [[devel/UpdateCopyright | copyright notices]] for a list of files to update as well.
Line 22: Line 21:
 * [[Software_that_may_be_useful | Software that may be useful]] If you have an account on the Sage cluster, ensure that you read the [[devel/SageClusterGuidelines | Sage cluster guidelines]] on using computer resources on the Sage cluster.
Line 24: Line 23:
 * [[SEP | Sage Enhancement Proposals]]  * [[devel/DevelFAQ | Frequently asked questions regarding Sage development]]
Line 26: Line 25:
 * [[Software_surveys | Software surveys]] = Sage notebook =
Line 28: Line 27:
 * [[DebianSAGE | Sage in Debian]] The Sage notebook provides a graphical user interface to Sage. To help out with developing the Sage notebook, you need to know how to code in JavaScript. The page on [[devel/JavascriptResources | JavaScript resources]] contains many resources on JavaScript and JavaScript libraries. The Sage [[devel/SageNotebook | notebook technical overview]] provides a technical overview of the Sage notebook server, including how it responds to user requests, delegates tasks, etc. See also the page on [[devel/SageUsability | usability improvements]] for a list of development tasks relating to enhancing the notebook and its usability.
Line 30: Line 29:
 * [[HowToBeginSageDevelopment | How to begin Sage development]]
Line 32: Line 30:
 * [[devel/nonASCII | non-ASCII characters]] in source files = Miscellaneous =

 * [[devel/SoftwareToIntegrate | Ideas for software to integrate with Sage]]

 * [[devel/UsefulSoftware | Software that may be useful]]

 * [[devel/SEP | Sage Enhancement Proposals]]

 * [[devel/SoftwareSurveys | Software surveys]]

 * [[devel/DebianSage | Sage in Debian]]
Line 36: Line 44:
 * [[combinat/HelpOnTheDoc | Docstring documentation]] for help on the format (ReSTructured text) used in the docstrings, including special Sage doctest conventions  * [[devel/SageTasks | Sage usability task list]]
Line 38: Line 46:
 * [[JavascriptResources | JavaScript and related resources]]

 * [[PythonResources | Python and Cython resources]]

 * [[SageUsability | Sage usability improvements list]]

 * [[SageTasks | Sage usability task list]]

 * [[SageNotebook | Technical overview of the Sage notebook]]
 * [[devel/BuildFarm | Build farm]]
 
 * [[http://www.research-service.com/custom-research-paper.html | research papers]]

Sage developer center

Welcome to the Sage developer center!

This wiki page helps in organizing the development of Sage. Information and links to Sage development should be organized under "devel/". For answers to commonly asked questions, see the FAQ.

Note: The trac server contains patches awaiting review. Michael Abshoff wrote a set of general guidelines for using the trac server. See also the Developers' Guide for further information on using the trac patch server.

Release management

Each release cycle of Sage is managed by at least one release manager. For example, a release manager produces the various alpha and rc releases for the sage-x.y.z release cycle. Release management is a complex task. The release management page contains a rough set of guidelines for Sage release management. If you want to help out with release management, please subscribe to the sage-release mailing list.

Sage development

Much of the Sage library is written in Python. Some performance critical parts of the Sage library is written in Cython. Information is available to help beginners on developing the Sage library. Also consult the list of Python and Cython resources for beginner to advanced information on the Python and Cython languages. You can also do functional programming with Python and Sage. You should avoid as much as possible using non-ASCII characters in a source file. See this page for information on avoiding non-ASCII characters in source files. However, there are also cases in which you need put such characters in a source file. That page also has tips on specifying the character encoding of a source file. The page on docstring documentation contains information on the format (ReSTructured text) used in the docstrings of functions, classes, methods and modules. The page also includes special Sage doctest conventions. Before updating the copyright notices in the Sage library, read the page on copyright notices for a list of files to update as well.

If you have an account on the Sage cluster, ensure that you read the Sage cluster guidelines on using computer resources on the Sage cluster.

Sage notebook

The Sage notebook provides a graphical user interface to Sage. To help out with developing the Sage notebook, you need to know how to code in JavaScript. The page on JavaScript resources contains many resources on JavaScript and JavaScript libraries. The Sage notebook technical overview provides a technical overview of the Sage notebook server, including how it responds to user requests, delegates tasks, etc. See also the page on usability improvements for a list of development tasks relating to enhancing the notebook and its usability.

Miscellaneous

devel (last edited 2023-02-23 20:20:48 by mkoeppe)