Thanks Travis, Your directions are very helpful and much appreciated. Chuck On 7/1/06, Travis Oliphant <oliphant.travis@ieee.org> wrote:
Charles R Harris wrote:
On 6/30/06, *Robert Kern* <robert.kern@gmail.com <mailto:robert.kern@gmail.com>> wrote:
Travis Oliphant wrote:
> Comments?
Whatever else you do, leave arange() alone. It should never have accepted floats in the first place.
Hear, hear. Using floats in arange is a lousy temptation that must be avoided. Apart from that I think that making float64 the default for most things is the right way to go. Numpy is primarily for numeric computation, and numeric computation is primarily in float64. Specialist areas like imaging can be dealt with as special cases.
BTW, can someone suggest the best way to put new code into Numpy at this point? Is there a test branch of some sort?
My favorite is to make changes in piece-meal steps and just commit them to the turnk as they get created. I think your projects 2 and 4 could be done that way.
If a change requires a more elaborate re-write, then I usually construct a branch, switch over to the branch and make changes there. When I'm happy with the result, the branch is merged back into the trunk.
Be careful with branches though. It is easy to get too far away from main-line trunk development (although at this point the trunk should be stabilizing toward release 1.0).
1) To construct a branch (just a copy of the trunk):
(Make note of the revision number when you create the branch-- you can get it later but it's easier to just record it at copy).
svn cp http://svn.scipy.org/svn/numpy/trunk http://svn.scipy.org/svn/numpy/branches/<somename>
2) To switch to using the branch:
svn switch http://svn.scipy.org/svn/numpy/branches/<somename>
You can also just have another local directory where you work on the branch so that you still have a local directory with the main trunk. Just check out the branch:
svn co http://svn.scipy.org/svn/numpy/branches/<somename> mybranch
3) To merge back:
a) Get back to the trunk repository:
svn switch http://svn.scipy.org/svn/numpy/trunk
or go to your local copy of the trunk and do an svn update
b) Merge the changes from the branch back in to your local copy of the trunk:
svn merge -r <branch#>:HEAD http://svn.scipy.org/svn/numpy/branches/<somename>
This assumes that <branch#> is the revision number when the branch is created
c) You have to now commit your local copy of the trunk (after you've dealt with and resolved any potential conflicts).
If your branch is continuing a while, you may need to update your branch with changes that have happened in the main-line trunk. This will make it easier to merge back when you are done.
To update your branch with changes from the main trunk do:
svn merge -r <lastmerge#>:<end#> http://svn.scipy.org/svn/numpy/trunk
where <lastmerge#> is the last revision number you used to update your branch (or the revision number at which you made your branch) and <end#> is the ending revision number for changes in the trunk you'd like to merge.
Here is a good link explaining the process more.
http://svnbook.red-bean.com/en/1.1/ch04s03.html
-Travis
-Travis