Hi,


I am thinking of developing an external package in the direction of 
 "experimental feature branches" among the work flows described 
in https://wiki.sagemath.org/CodeSharingWorkflow. Examples for this work 
flow, I think, could be found in  the numerous track tickets with milestone 
"sage-feature" or type "task". We may enhance the support for this work 
flow and these "feature" trac tickets by providing a separate repository. I 
envision the following:


We would have a "features trac" similar to the current development trac. A 
ticket in the features trac keeps a feature branch (Git) that provides a 
feature or extended functionality that can be merged to the Sage core at 
the user's build time. The ticket is not reviewed (in the development trac 
sense) and its branch is not supposed to be merged to Sage proper. The user 
can select a feature set at his/her build time. Then "make-sage-with 
feature_set" will fetch the feature branches from the features trac and 
merge them with the master branch of Sage core and start to make in the 
usual way. 


The features trac can provide


1. Description about the feature

2. info about authors or maintainers. 

3. Info about the latest Sage release with which the feature works. We may 
have "feature-bots" for doctesting.

4. info about dependencies, that is, other features that this feature 
depends on.

5. link to the host at which actual development occurs, like Github repos.

6. branch name in a standardized format. Example: 
"feature/klee/rings/super_field" where "klee" is the author's id.


Remarks:


R1. The feature branch should contain source code and documentation, of 
course. The documentation may have links toward the documentation of Sage 
core but not vice versa. After build, the user will have a single 
documentation as usual.


R2. The features in the features trac are either orthogonal or competent to 
other features in their functionality.


R3. Some parts of the present Sage library may be turned into features. For 
example, we may have "feature/sage/modular/abvar". 


What do you think? I don't know about technical difficulties in 
implementing this infrastructure. So would you comment?


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