Skip to content
This repository has been archived by the owner on Mar 16, 2022. It is now read-only.

getting Falcon version #142

Closed
dgordon562 opened this issue Jul 22, 2015 · 18 comments
Closed

getting Falcon version #142

dgordon562 opened this issue Jul 22, 2015 · 18 comments

Comments

@dgordon562
Copy link

I have various versions of Falcon. Is there a way to look at the Falcon installation directory and get the version?

@pb-cdunn
Copy link

What about the commit SHA in git? That's not enough?

Integration is always a hard problem, so we only release contours of consistent packages. Those are the submodules of FALCON-integrate. FALCON itself doesn't have versioning. That lets us be "agile" in some sense.

@pb-cdunn
Copy link

Slightly off-topic: I know you had problems with virtualenv. What if we removed all the activate calls from the FALCON-integrate scripts? Instead, we could expect the environment to be set up already. Would that simplify the work you had to do?

@dgordon562
Copy link
Author

I was hoping there was something in FALCON-master or FALCON-integrate that would have the same v0.3.0 or v0.2.2 or whatever. I guess not?

Regarding virtualenv: I don't know. I would suspect it would be easier. I think the main thing is to figure out what python packages must be available. You probably don't know because you have all you need already installed.

When I was trying to make consed user-friendly to install, I would find various people in different labs that would allow me to install consed. I would find out in a hurry how various environments differed from my own.

@pb-cdunn
Copy link

In git, given a commit, you can easily find the nearest prior tag:

cd FALCON-integrate
git describe --tags

@pb-cdunn
Copy link

No, there is no version number within individual packages. We consider the version number to be meta-data, and we don't want to worry about it when we merge branches.

@dgordon562
Copy link
Author

Hi, Chris,

I need to document the version of Falcon that I am using for different assemblies. The version that was the default branch when I downloaded on June 5, 2015--what version was that? What version was the default branch when I downloaded on July 10, 2015?

Your command above:
git describe --tags
works great for the latest version, but for the June 5 version, it gives:

git describe --tags
0.2JASM-34-g58ebe7e
{dgordon}e186:~/falcon150609/FALCON-master/install/FALCON

I also need the versions of daligner both for the June 5 and for July 15 default branch. Can you tell me that? I can't get the daligner executable to tell me.

Thanks!
David

@pb-jchin
Copy link
Contributor

you can use git log to see the last commit close to the date that you download the code and check the commit out. Then, you can use git submodule to see the commit revsions of the dependent submodules.

git clone [email protected]:PacificBiosciences/FALCON.git
cd FALCON
git log
git checkout bd77340fa2acbceee839b0a38449e9a39bd574d4
git submodule

This gives

-f5ca2a0bb2a5f939da57cc842e02fc7cbf075407 DALIGNER
-1b53112462bfa3b391c2d7538fcdcd278fae62e3 DAZZ_DB
-6e7fc34d45b92b7363fb7dd5a0f98ce94fdb2085 pypeFLOW

@pb-cdunn
Copy link

For the old version of FALCON, that is. E.g. this commit from June 7, which has the same submodule versions as April 16. (It's possible to use dates, but I'm not sure of the syntax.)

We don't store any submodules in FALCON anymore. But you can follow similar steps for FALCON-integrate.

@dgordon562
Copy link
Author

Is there any simple number to distinguish the different version of daligner? If I say I used version -f5ca2a0bb2a5f939da57cc842e02fc7cbf075407, I think that will not fly (grin).

@pb-jchin
Copy link
Contributor

the convention is to use the first 8 digits. :) I think this is more "reproducible" than somehow abitrary version numbers.

@dgordon562
Copy link
Author

Thanks to both of you.

Please forgive one more novice git question:

If I got to the 0.2.2 page and click on DALIGNER, it brings up a web page
https://github.com/pb-jchin/DALIGNER
that has all of the familiar DALIGNER modules such as daligner.c

In the upper right corner it says:

"latest commit: 7d41b3f7 " (copy SHA)
and there is a hyperlink:
pb-jchin/DALIGNER@7d41b3f

So it is correct to say that the version of daligner I used (when using 0.2.2 downloaded on June 5) was 7d41b3f7 ?

Thanks in advance. I'm sure this is a silly question for those more familiar with git.

Best wishes,
David

@pb-jchin
Copy link
Contributor

yes. if you happen to still have your initial FALCON directory generated by git clone and you have not done any git pull or git fetch, you can also use git submodule to check your original local repository.

@dgordon562
Copy link
Author

Thanks, Jason. I'm seeing a different version of daligner than the version you see on the github website for 0.2.2 (as I describe above). I'm seeing this:

git submodule
-aea1a1dfbdac10a50a4bfbd81292842c7a7b4828 DALIGNER
-454ae5fe2ff4de6e03343480ae80f03f665d5992 DAZZ_DB
-23a0a9da3ab4584a59dafc35243987ff74a52b05 pypeFLOW
{dgordon}e186:~/falcon150609/FALCON-master/install/FALCON

which differs from the 7d41b3f7a005c3d26c3fe1b64557d2769cc26087 on the web site for daligner of falcon v. 0.2.2

This brings up a frightening question:

Might there be various versions of daligner for the same Falcon version (v.0.2.2)? If so, is there any way for another lab or referee who wants to reproduce our work to guarantee they are using the same code as we did? Is the v.0.2.2 not sufficient to uniquely identify the code we used?

Thanks!
David

@pb-cdunn
Copy link

David, One thing that might help you is the compare API in GitHub:

That shows all differences, including changes to submodules SHA1s. (In the case above, we stopped using submodules within FALCON.)

Consider this link:

If you visit that, you'll see your hashes precisely. That is a June 7 commit, and those hashes were unchanged since mid-April:

I captured precisely the state of the v0.2.2 release in FALCON-integrate and tagged it 0.2.2:

If you visit that link, clicking on FALCON@c67434c will take you here:

If you click on the commit, and then click on "parent" repeatedly, you'll eventually get back to the June 7 commit above, and then the April 16 commit. If you want to compare source code, you can construct a compare URL as above.

You can rely 100% on a tag on the FALCON-integrate repo. We won't move those tags.

We now follow the convention that "0.2.2" is a tag and "v0.2" is a branch. Branch tips move, so you cannot rely on branches. Rely on either tags or SHA1s.

I hope that helps.

@dgordon562
Copy link
Author

Thanks, Chris!

@dgordon562
Copy link
Author

When I cd to ~/falcon150609/FALCON-master/install/FALCON

git describe --tags
0.2JASM-34-g58ebe7e

Is this the same Falcon version as v0.2.2 ?

@pb-cdunn
Copy link

You're at this FALCON commit:

commit 58ebe7e7f4632e85a44aaac58ee7bd1778ef3fe4
Author: pb-jchin <[email protected]>
Date:   Thu Apr 16 09:22:53 2015

    fix another missing local variable

So yes, it's the same code as 0.2.2.

@dgordon562
Copy link
Author

Thank you!

pacbbbbot pushed a commit that referenced this issue Apr 29, 2018
…pt to develop

* commit 'f3001318b6cfb284fe67f871137810e940013e21':
  Better logging
  Add pa_HPCTANmask_option and ovlp_
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants