ConSol-Lab / gourd

a command-line tool for configuring, running, and analysing algorithm comparison experiments on supercomputers
4 stars 0 forks source link

Add versioning functionality #22

Closed mgazeel closed 1 month ago

mgazeel commented 1 month ago

Part of the roadmap

mgazeel commented 1 month ago

very clean! I think it is prudent to add just one integration test to show this works.

I would like to avoid integration tests that depend on the internet.

mgazeel commented 1 month ago

@andtsa let me know if you're happy, and if you are, add the prepare milestone. It should run all required checks before a merge.

lchladek commented 1 month ago

I understand that this was a quick solution, but to me it looks like you didn't even read the relevant issue (#20). git clone in what is already a Git repository is far less preferable to using submodules.

andtsa commented 1 month ago

very clean! I think it is prudent to add just one integration test to show this works.

I would like to avoid integration tests that depend on the internet.

We already have unit tests that depend on the internet, I don't think this is a good argument. We can reference an old commit of our own repository and use one of the Fibonacci examples as a binary.

mgazeel commented 1 month ago

I understand that this was a quick solution, but to me it looks like you didn't even read the relevant issue (#20). git clone in what is already a Git repository is far less preferable to using submodules.

I did read it, but I dislike using submodules. The whole system is considered kind of a mess and it tethers us to using a git repository. Thus I disagree git clone in a repository being less preferable.

That is: you wouldn't be able to version algorithms without placing your entire project in a git repository

lchladek commented 1 month ago

Submodules were a specific request from the lab. Next time I would appreciate some discussion or at least a notice so that we do not both work on the same feature.

mgazeel commented 1 month ago

Submodules were a specific request from the lab. Next time I would appreciate some discussion or at least a notice so that we do not both work on the same feature.

Signal group, message from aug 26, 2024 at 9:25PM and the discussion before that.

Edit: Ah nevermind it's me that cannot read.

mgazeel commented 1 month ago

The original request for algorithm versions is as follows:

At the moment we consider the cloning/downloading of the algorithms outside the scope of Gourd. But it would be nice if the gourd CLI offered a way to define where algorithms are published (likely git), download them, build them and run them. We could, e.g., make an experiment comparing two different commits from Pumpkin to identify the differences between them. It would be convenient to say e.g. gourd algorithms add pumpkin <commit> where the configuration defines how to set up Pumpkin.

@lchladek There is no mention of submodules, and frankly the amount of time we are behind on this feature is leads me to say: Lets add this MVP and deliberate about submodules later. You can add a new PR if you see fit to that same issue, but perfecting this system is not a priority now.

@andtsa integration tests in 20 minutes.

lchladek commented 1 month ago

I would comment but it would slow you down. Type on.

mgazeel commented 1 month ago

Guess who didn't use the internet after all... @andtsa