[petsc-dev] Updating MOAB version during download
Barry Smith
bsmith at mcs.anl.gov
Mon Jun 16 21:19:12 CDT 2014
On Jun 16, 2014, at 9:07 PM, Jed Brown <jed at jedbrown.org> wrote:
> Barry Smith <bsmith at mcs.anl.gov> writes:
>
>>> If you find a bug, you have to fix it within the workflow of THAT
>>> project. If they use a workflow similar to PETSc, then a good option
>>> would be to start a new branch from that critical commit and ask for it
>>> to be merged.
>>
>> Sure. and If —download-moab had gotten me into the right branch I
>> would branch off my fix branch from that, test it with my PETSc
>> stuff and then make a pull request.
>
> Branching from the bad commit is arguably better because it means people
> can get *only* your fix without the other random crap in the branch.
> That fix should be merged according to the workflow of that project.
>
>>> --download-package is a feature for USING a third-party package, not a
>>> framework for CONTRIBUTING to that project.
>>
>> Sure it is! Why the fuck should I be manually download/installing
>> packages when a tool can do it for me? What are computers for if it
>> is not to remove the manual process that can be automated.
>>
>> When I am inside a PETSc branch and I say —download-xxx I am saying
>> given me the appropriate beasty that I can work with inside this
>> branch AND "WORK WITH" MEANS DO AS MUCH AS I COULD HAVE IF I HAD
>> MANUALLY DOWNLOADED IT MYSELF. I don’t want —download-xxx to mean
>> download a crippled version of the stuff, I want it to mean give me
>> everything I would get if I downloaded it myself and manually set
>> the branch etc.
>
> This is way more involved and error-prone. Git submodule and hg subrepo
> aren't really designed for this use case (they work better when the
> package is developed separately and you occasionally update) and I don't
> think it's something we should try to do.
I never suggested using git submodule or anything like that.
> Merging different
> modifications of the remote repository is one major problem. Also, so
> long as the build systems are decoupled, it's even more error-prone.
>
>>> For you, what is wrong with updating gitcommit when you change an
>>> interface in MOAB? If other people are also developing MOAB, they
>>> should have their own clone and "git pull" each time, not use
>>> --download-moab.
>>
>> 1) I will of course forget to update gitcommit
>>
>> 2) I don’t even want to freaking know where moab is hosted. If I
>> want to run some tests on a linux machine (because Apple sucks and
>> doesn’t have valgrind) you think I want to manually figure out where
>> moab is hosted, use some git clone command to download it, manually
>> checkout the correct branch and then tell PETSc where I downloaded
>> it when —download-moan can do that for me? Why should I do all that
>> (which I won’t do) when —download-moab can take care of it for me?
>
> If you want to contribute to moab, you damn well better know where they
> are hosted and how they accept contributions.
But when I get my first dump of stuff from moab I don’t need to know any of that stuff (i.e. when I do —download-moab) and when I later decide I want to contribute a fix why should I have to go back and manually do a new clone and checkout etc. I just want to use the one I already got when I did —download-xxx
I am confused because I had assumed this was why you added git support to —download-xxx. Now you are telling me that I should ignore the fact that —download-xxx gives me a git repository and I should go and get it manually with git?
>
>> You are very much hung up on —download-xxx is for users. As I said
>> before I wrote —download-xxx for developers (me) and want to
>> continue to extend it to help developers (including me).
>
> For developers of PETSc, sure, but for developers of the upstream
> package? Now PETSc is in the business of managing contributions to
> other projects?
Where do you get that from? In no way am I suggesting that PETSc is in the business of managing contributions to other packages. I am only saying that I want —download-xxx to give me the same stuff as if I manually went through the process so I never need manually go through the process. What is so wrong with that?
Barry
More information about the petsc-dev
mailing list