Math-KDTree #5

Merged
merged 1 commit into from May 13, 2012

Conversation

Projects
None yet
2 participants

WernerK commented May 13, 2012

i added a directory Math-KDTree.
would you be so kind to have look, whether i did that correctly. this git thing makes me nervous.
werner

werner kassens Math-KDTree 842ef55

@djuber djuber added a commit that referenced this pull request May 13, 2012

@djuber djuber Merge pull request #5 from WernerK/master
Math-KDTree
24812a4

@djuber djuber merged commit 24812a4 into SergeStinckwich:master May 13, 2012

Collaborator

djuber commented May 13, 2012

Werner,

the pull request has been incorporated, and looks good.

Now the problem is on my side, since monticello/filetree seems to
flatten the directory structure for me, and I don't want lose that level
of distinction, or your good looking documentation.

Thanks, I should get a chance to test it out this morning.

Dan Uber

On 05/13/2012 06:15 AM, WernerK wrote:

i added a directory Math-KDTree.
would you be so kind to have look, whether i did that correctly. this git thing makes me nervous.
werner

You can merge this Pull Request by running:

git pull https://github.com/WernerK/SciSmalltalk master

Or you can view, comment on it, or merge it online at:

#5

-- Commit Summary --

  • Math-KDTree

-- File Changes --

A Math-KDTree/.filetree (1)
A Math-KDTree/Math-KDTree.package/.filetree (4)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/README.md (1)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/class/withAll..st (6)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/instance/addData.at..st (12)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/instance/nnSearch.i..st (7)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/instance/nnSearch.near..st (8)
A Math-KDTree/Math-KDTree.package/IndexedKDTree.class/properties.json (16)
A Math-KDTree/Math-KDTree.package/KDTree.class/README.md (1)
A Math-KDTree/Math-KDTree.package/KDTree.class/class/withAll..st (6)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/addData.at..st (11)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/farChild..st (3)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/left.st (3)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/nearChild..st (3)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/nnSearch.i..st (8)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/nnSearch.near..st (8)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/printOn..st (11)
A Math-KDTree/Math-KDTree.package/KDTree.class/instance/right.st (3)
A Math-KDTree/Math-KDTree.package/KDTree.class/properties.json (19)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/README.md (1)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/instance/setUp.st (3)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/instance/testKDTree1Dimension.st (21)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/instance/testKDTree2Dimensions.st (17)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/instance/testKDTree4Dimensions.st (14)
A Math-KDTree/Math-KDTree.package/KDTreeTest.class/properties.json (16)
A Math-KDTree/Math-KDTree.package/NNStore.class/README.md (3)
A Math-KDTree/Math-KDTree.package/NNStore.class/class/new..st (3)
A Math-KDTree/Math-KDTree.package/NNStore.class/class/new.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/class/newFrom..st (5)
A Math-KDTree/Math-KDTree.package/NNStore.class/class/withAll..st (5)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/add..st (6)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/completeData.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/copyEmpty.st (3)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/data.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/freeIndex..st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/initialize.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/isEmpty.st (3)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/isFull.st (3)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/maxDistance.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/sort.st (4)
A Math-KDTree/Math-KDTree.package/NNStore.class/instance/sortFor..st (6)
A Math-KDTree/Math-KDTree.package/NNStore.class/properties.json (17)
A Math-KDTree/Math-KDTree.package/StupidNN.class/README.md (1)
A Math-KDTree/Math-KDTree.package/StupidNN.class/instance/nnSearch.i..st (9)
A Math-KDTree/Math-KDTree.package/StupidNN.class/instance/sortFor..st (6)
A Math-KDTree/Math-KDTree.package/StupidNN.class/properties.json (16)
A Math-KDTree/Math-KDTree.package/monticello.meta/categories.st (1)
A Math-KDTree/Math-KDTree.package/monticello.meta/initializers.st (0)
A Math-KDTree/Math-KDTree.package/monticello.meta/package (1)
A Math-KDTree/Math-KDTree.package/monticello.meta/version (1)
A Math-KDTree/Math-KDTree.package/properties.json (2)
A Math-KDTree/NNPlot.jpg (0)
A Math-KDTree/README.md (1)

-- Patch Links --

https://github.com/SergeStinckwich/SciSmalltalk/pull/5.patch
https://github.com/SergeStinckwich/SciSmalltalk/pull/5.diff


Reply to this email directly or view it on GitHub:
#5

WernerK commented May 13, 2012

Daniel Uber a écrit :

Werner,

the pull request has been incorporated, and looks good.

Now the problem is on my side, since monticello/filetree seems to
flatten the directory structure for me, and I don't want lose that level
of distinction, or your good looking documentation.

Hi Daniel,
unfortunately i dont understand that problem. if i open
monticello-browser, press +repository, choose filetree as type and as
directory /home/user/SciSmalltalk/Math-KDTree and then open that
repository i see Math-KDTree and nothing else, that i can load from
there. perhaps you could specify the problem a little bit?
werner

Collaborator

djuber commented May 13, 2012

Werner,

what I mean is that when I use Nautilus to commit, and select
Math-KDTree, the entire Math package is written, to the Math.package
directory. I'm not sure how to write sub-packages to separate
directories. I think this is the right thing to do, so that KDTree,
Random, Numerical, etc, can be loaded independently of the others. Right
now, monticello groups everything in Math into one package when committing.

It is very likely a beginner's problem on my side, since I am very
unfamiliar with the Pharo packaging tools. Serge had to point me in the
right direction earlier to learn how to commit to multiple repositories
with the same version (Copy in Monticello), since that was also
non-obvious to me. (updating squeaksource and github with identical
versions at the same time).

So my main question is, if you have several packages Math-X, Math-Y,
Math-Z in the image, how do you commit (in filetree or just monticello)
only Math-X as Math-X.package or Math-X.mcz, rather than all of Math-*
into Math.package. If I knew how to do this, I will definitely separate
the packages into multiple directories.

It occurs to me that either you know the secret to this, and used it, or
you had Math-KDTree without having loaded Math into the image.

Thanks,

Dan

Hi Daniel,

unfortunately i dont understand that problem. if i open
monticello-browser, press +repository, choose filetree as type and as
directory /home/user/SciSmalltalk/Math-KDTree and then open that
repository i see Math-KDTree and nothing else, that i can load from
there. perhaps you could specify the problem a little bit?

werner

WernerK commented May 13, 2012

and just one more comment, quite often you want to have several packages
in one repository, for example if the tests are in a separate package,
you want to see both packages in one repository so that you can decide
whether to load the tests too, hence i would think that such a structure
as Math-KDTree could make sense.
werner

Collaborator

djuber commented May 13, 2012

I think I figured it out, rather than committing from Nautilus, I used
MonticelloBrowser, then +Package, select Math-Random, and save to a
subdirectory. I will look at the resulting tree structure to make sure
everything is right.

Pretty sure this is 90% figured out. Thanks for the feedback

WernerK commented May 13, 2012

Hi Daniel,
now i think i get it, if you add a package (make a new package to store
it) all packages who begin with the name you chose, will be
automatically added, if you dont pay attention. hence making a package
'Math' without a suffix can be problematic.
werner

Collaborator

djuber commented May 13, 2012

Werner,

thanks. I figured out what I needed to do, and made separate packages
for each of the subsystems.

Is it best to make both a package for code and a separate package for
tests? Right now, I think only the main code is going into the package.
It looks like you put the test cases in the KDTree package. I may follow
suit for now.

Now I need to experiment with Nautilus to see if it always tries to
commit the largest package possible. That would be too bad.

Thanks,

Dan

Collaborator

djuber commented May 13, 2012

Okay, once I have the right package structure, Nautilus gives me the option of committing to the smaller section. Very happy to have gotten that out of the way.

Thanks for your help, Werner.

Dan

WernerK commented May 13, 2012

Daniel Uber a écrit :

Is it best to make both a package for code and a separate package for
tests? Right now, I think only the main code is going into the package.
It looks like you put the test cases in the KDTree package. I may follow
suit for now.

Daniel,
if you look at the code in pharo, you see that the standard way is to
put tests in a separate package. the obvious advantage is that you can
have a smaller image, that does what it should do without further
irritation. i dont do it with small packages, because im extremely lazy
and dont want to first search for the tests, if want to have a look at
them, because tests can be useful as documentation, because i want them
anyway and because i am just stubborn. imo it depends a bit on how big a
package is (eg whether you can see all objects in the browser). but its
not the standard way.
werner

WernerK commented May 13, 2012

Hi Daniel,
i just had a look at SciSmalltalk and saw that you were able to divide
the packages in separate directories, looks like a lot of work.
Congratulations!
what you could eventually consider, is putting things like eg
Math-Complex.package and Math-ComplexTests.package both into directory
Math-Complex. that would be the way it is done eg in SqueakSource and if
one would open the repository Math-Complex one could see and load both
packages.
Congratulations again,
werner

Collaborator

djuber commented May 13, 2012

Werner,

thanks for the tip. That sounds like a workable plan, and should just
involve pointing the package to the right repository (Math-Complex
instead of Math-ComplexTest). I will play around with it.

That also opens the door for better submissions to squeaksource, since
parts of this exist elsewhere (Nicolas Cellier made many of the packages
from Squeak available in Pharo, and I have 'borrowed' them wholly here),
and if I have extended them, it's a good idea to make sure they are
pushed back where I got them from.

Thanks again for the advice.

Dan Uber

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment