Changes between Version 69 and Version 70 of Commentary/Compiler/NewCodeGen


Ignore:
Timestamp:
Apr 28, 2011 3:12:38 PM (3 years ago)
Author:
ezyang
Comment:

HooplMirror? no longer necessary

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/NewCodeGen

    v69 v70  
    3232We have the following repositories: 
    3333 
    34  * HEAD: the main GHC Darcs repo. `http://darcs.haskell.org/ghc` 
     34 * HEAD: the main GHC git repo. `http://darcs.haskell.org/ghc` 
    3535 
    3636 * !HooplMaster: the master Hoopl Git repository. 
     
    3838   [[BR]] (Physical location: `linux.cs.tufts.edu:/r/ghc/www/hoopl/hoopl.git`) 
    3939 
    40  * !HooplMirror: a Darcs mirror of the !HooplMaster repo.  Any push  
    41    to !HooplMaster is automatically mirrored to !HooplMirror.  Do not (ever)  
    42    push to !HooplMirror. 
    43    [[BR]] '''Location''': `http://ghc.cs.tufts.edu/hoopl-mirror/`  
    44    [[BR]] (Physical location: 'linux.cs.tufts.edu:/r/ghc/darcs-mirrors/hoopl') 
    45  
    46  * !HooplLag: a Darcs repo that is guaranteed to work with GHC HEAD.    It is 
     40 * !HooplLag: a Git repo that is guaranteed to work with GHC HEAD.    It is 
    4741   not automatically updated by pushes to !HooplMaster.  Instead a manual 
    48    process (below) updates it; hence "lag".   
    49    [[BR]] '''Location''': `http://darcs.haskell.org/packages/hoopl`. 
    50  
     42   process (below) updates it; hence "lag". 
     43   [[BR]] '''Location''': `http://darcs.haskell.org/packages/hoopl.git`. 
    5144 
    5245Normal GHC developers, who are uninterested in Hoopl, ignore all 
    53 this.  If they download HEAD, and then do `darcs-all get` they'll get 
     46this.  If they download HEAD, and then do `./sync-all get` they'll get 
    5447!HooplLag, which is always guaranteed to work with HEAD. 
    5548 
    56 Developers who work on GHC and also need to modify Hoopl have a more torrid time. 
     49Developers who work on GHC and also need to modify Hoopl need to ensure their changes end up in both repositories. 
    5750 
    58  * Create two trees: 
    59    * Development tree (mixed Darcs and Git):  
    60      * Download HEAD and `darcs-all get`   
    61      * Remove `libraries/hoopl` and do a `git clone` of !HooplMaster instead.  
    62    * Validation tree (pure Darcs): 
    63      * Download HEAD and `darcs-all get`   
    64  
    65  * Hack away in the development tree.  You can pull freely: 
    66      * Subsequent `darcs-all pull` operations will [check!] no-op in the `libraries/hoopl` directory. 
    67      * For `hoopl` you have to manually do `git pull` in `libraries/hoopl to pull patches from !HooplMaster. 
    68  
    69  * Record Darcs patches and Hoopl patches. 
    70  
    71  * Validate changes as follows: 
    72    * Run validate in the development tree 
    73    * `git push` patches to !HooplMaster 
    74    * Wait for !HooplMirror to see these patches 
    75    * In the validation tree,  
    76        * `darcs-all pull` patches from the development tree (this will [check!]  
    77          no-op for `hoopl`, because the dev-tree has a Git repo) 
    78        * Manually pull patches from !HooplMirror 
    79    * Validate in the validation tree 
    80    * Push the validation tree to HEAD and the !HooplLag Darcs repo 
     51 * In your hoopl directory in your development tree, add !HooplMaster as a remote and update your reference there.  
     52 * Hack away in the development tree. 
     53 * Record Hoopl commits. 
     54 * Run validate in the development tree 
     55 * Push the commits in hoopl to the !HooplMaster Git repo and the !HooplLag Git repo 
    8156 
    8257