Opened 9 years ago

Last modified 9 years ago

#9433 closed enhancement

Put more files under revision control. — at Version 8

Reported by: jhpalmieri Owned by: tbd
Priority: blocker Milestone: sage-4.7
Component: distribution Keywords:
Cc: was, ddrake, kcrisman, leif Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description (last modified by jhpalmieri)

Put the text files in $SAGE_ROOT, and also the text files in spkg, under revision control. (See the discussion at the end of #9351.)

Here are the instructions:

  • apply the patches trac_9433-sage-repo.patch and trac_9433-scripts.patch

and create the Mercurial repository:

  • move the attached file "hgignore" to SAGE_ROOT/.hgignore
  • cd $SAGE_ROOT
  • hg init .
  • hg add .hgignore COPYING.txt README.txt makefile sage sage-python
  • cd spkg
  • hg add README.txt gen_html install pipestatus
  • cd standard
  • hg add README.txt deps libdist_filelist newest_version
  • hg add notes.txt numeric-24.2.txt
  • hg commit

Change History (10)

comment:1 Changed 9 years ago by jhpalmieri

  • Status changed from new to needs_review

I'm marking this as "needs review", but consider this patch experimental.

comment:2 Changed 9 years ago by jhpalmieri

A little explanation: this patch creates a directory "other-scripts" in SAGE_ROOT/local/bin. This new directory contains a brief README.txt and also subdirectories "root" and "spkg". "root" contains the text files from SAGE_ROOT. The only one with any changes is README.txt which explains how these files are under revision control. Similarly, "spkg" contains various text files from SAGE_ROOT/spkg, and the only one with any changes is README.txt.

comment:3 Changed 9 years ago by jhpalmieri

This probably needs to be rebased. When people are ready to look at it, let me know and I'll see what I can do.

Changed 9 years ago by jhpalmieri

rebased against 4.5.alpha4 + #9456

comment:4 Changed 9 years ago by jhpalmieri

New approach, after a discussion on sage-devel: create a new repo at the top level tracking the appropriate files. I'm attaching a new version of the patch for the scripts repo. Someone -- the release manager, I guess -- also needs to create the top level repo, because I don't know how to do this in such a way that it can be posted on a ticket. Here are the instructions:

  • move the attached file "hgignore" to SAGE_ROOT/.hgignore
  • cd $SAGE_ROOT
  • hg init .
  • hg add .hgignore COPYING.txt README.txt makefile sage sage-python
  • cd spkg
  • hg add README.txt gen_html install pipestatus
  • cd standard
  • hg add README.txt deps libdist_filelist newest_version
  • hg add notes.txt numeric-24.2.txt

(I don't know if we really need these last two files, but this is probably not the ticket for making such decisions.) Finally, do

  • hg commit

When you run "sage -sdist ..." it should add a tag for the new version of Sage.

This does not create a new spkg for the files in SAGE_ROOT, since those files have to be in place when you unpack the sage tar file. But it creates the repository so that people can post patches to the trac server, etc.

comment:5 follow-up: Changed 9 years ago by was

  • Cc was added

Looking with my eyes, this looks good. I don't have time to test right now. The test would be to take a clean Sage, do the above, then do "sage -sdist ..." and make sure that in the sdist the above is all still there.

Changed 9 years ago by jhpalmieri

main repo: add "hg_root" command to Sage

comment:6 in reply to: ↑ 5 Changed 9 years ago by jhpalmieri

Replying to was:

The test would be to take a clean Sage, do the above, then do "sage -sdist ..." and make sure that in the sdist the above is all still there.

This works for me, but other people should definitely look at it carefully.

comment:7 Changed 9 years ago by jhpalmieri

This probably needs work: how will it work with "sage -upgrade"?

comment:8 Changed 9 years ago by jhpalmieri

  • Description modified (diff)

Here's a new version of the patch for the scripts repo. I think this should deal with upgrading: the script "sage-upgrade" now runs "sage --hg branch" from SAGE_ROOT, and if this fails, it assumes that there is no Mercurial repository and creates it.

Note: See TracTickets for help on using tickets.