Ticket #240 (closed defect: fixed)
Opened 6 years ago
Last modified 5 years ago
add support for svn/hg/git/cvs retrival of files in place of tarballs
| Reported by: | scottmc | Owned by: | augiedoggie |
|---|---|---|---|
| Priority: | normal | Milestone: | haikuporter version 1.0 |
| Component: | haikuporter | Version: | |
| Severity: | normal | Keywords: | |
| Cc: |
Description
In cases where we are getting the source code from svn/hg/git/cvs/other we need a way to have it skip the normal download step. For now I just point it at a tarball and ignore the download. Perhaps if the download url = "" just skip the download step?
Change History
comment:1 Changed 5 years ago by scottmc
- Milestone set to haikuporter version 1.0
comment:2 Changed 5 years ago by augiedoggie
comment:3 Changed 5 years ago by mmadia
it may be worth looking at Build-O-Matic's rewrite2 branch, as there may be some classes or snippets that could be reused.
comment:4 Changed 5 years ago by augiedoggie
- Owner changed from brecht to augiedoggie
- Status changed from new to assigned
I have a crude prototype written and will commit it in a day or two.
comment:5 Changed 5 years ago by augiedoggie
- Resolution set to fixed
- Status changed from assigned to closed
comment:6 follow-up: ↓ 7 Changed 5 years ago by scottmc
I haven't tried out the new features yet, but we may want to add a way for haikuporter to be able to build the latest version in a home repo. Right now if you leave off the version number it and there's only a single .bep file it just take and uses that one, but if there's more than one it shows a list to pick from. Haikuporter seems to only like numbers for the version, perhaps add a feature so that portname-svn(/cvs/git/hg) will go and grab the latest version from head/master/etc and try to build that? For the case of getting a specifc version i think that's already cover just by naming the .bep file?
comment:7 in reply to: ↑ 6 Changed 5 years ago by augiedoggie
Replying to scottmc:
I haven't tried out the new features yet, but we may want to add a way for haikuporter to be able to build the latest version in a home repo. Right now if you leave off the version number it and there's only a single .bep file it just take and uses that one, but if there's more than one it shows a list to pick from. Haikuporter seems to only like numbers for the version, perhaps add a feature so that portname-svn(/cvs/git/hg) will go and grab the latest version from head/master/etc and try to build that? For the case of getting a specifc version i think that's already cover just by naming the .bep file?
Yes, there are known limitations with the regular expression that determines the port version. I did start to look into this at one time but gave up because there are so many variations on package/version naming and I couldn't get it to handle all cases. If the regular expression is fixed it would be just a matter of creating some alternate bep files(xyz-1.2.bep and xyz-svn.bep). If you are checking out a specific revision or date you can use some creative naming technique so that haikuporter will pick it up(like xyz-r123.bep or xyz-01022010.bep or ...)

I have already thought about implementing this. I just need to know more details. Is it just basic checkout support? If that is the case it would only take me a few minutes to add this in. If it needs advanced things like username/password support and checking out specific revisions or specific branches of code then it would become a little more complex.