Skip to content

{bio}[foss/2016b] GroopM 0.3.4 w/ Python 2.7.12 + deps#4650

Merged
boegel merged 46 commits intoeasybuilders:developfrom
manifestoso:addeasyconfigs
Sep 6, 2017
Merged

{bio}[foss/2016b] GroopM 0.3.4 w/ Python 2.7.12 + deps#4650
boegel merged 46 commits intoeasybuilders:developfrom
manifestoso:addeasyconfigs

Conversation

@manifestoso
Copy link
Copy Markdown
Contributor

{bio}[foss/2016b] GroopM and deps

@boegel
Copy link
Copy Markdown
Member

boegel commented May 31, 2017

@robqiao For foss/2016b, you may want to stick to Python 2.7.12?

('Python', '2.7.13'),
('Cython', '0.25.2', versionsuffix),
('numpy', '1.11.1', versionsuffix),
('scipy', '0.17.1', versionsuffix),
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robqiao Python already includes both numpy and scipy, if those versions are recent enough there's no reason to include stand-alone installations for them as dependencies?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boegel This package is compiled against specific numpy and scipy version, any suggestions?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you clarify? How exactly does it require these specific versions of numpy/scipy?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boegel Sorry, my fault, version for numpy and scipy are correct in Python/2.7.12-foss-2016b

@manifestoso
Copy link
Copy Markdown
Contributor Author

@boegel merge this PR?

exts_filter = ("python -c 'import %(ext_name)s'", '')

exts_list = [
('pysam', version, {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robqiao Why is this being installed as a bundle when there's only one extension?

It should just be installed via PythonPackage directly, like in https://github.com/hpcugent/easybuild-easyconfigs/blob/master/easybuild/easyconfigs/p/Pysam/Pysam-0.10.0-intel-2016b-Python-2.7.12.eb?

It makes sense to do it as a bundle if you include Cython as an extension in the Pysam installation, but that's not done here?


sanity_check_paths = {
'files': [],
'dirs': ['lib/python%(pyshortver)s/site-packages/pysam-%(version)s-py%(pyshortver)s-linux-x86_64.egg'],
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is quite specific, and may cause trouble on some system, we usually just check for lib/python%(pyshortver)s/site-packages, which suffices since it's combined with the import check done by EasyBuild


toolchain = {'name': 'foss', 'version': '2016b'}

parallel = 1
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this can be removed?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, done

dependencies = [
('Python', '2.7.12'),
('numexpr', '2.6.1', versionsuffix),
('HDF5', '1.8.18'),
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

existing PyTables easyconfigs also include LZO and Blosc as dependencies?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now included: LZO, BLOSC

relatively short nucleotide sequences against a long reference sequence such as the human genome."""

toolchain = {'name': 'foss', 'version': '2016b'}
toolchainopts = {'optarch': True, 'pic': True, 'usempi': True}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

existing BWA easyconfigs don't enable usempi, so it's not needed?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are right.

@manifestoso
Copy link
Copy Markdown
Contributor Author

manifestoso commented Aug 4, 2017

@verdurin do you mind to run checks on this PR again? Thx ;)

@verdurin
Copy link
Copy Markdown
Member

verdurin commented Aug 6, 2017

Test report by @verdurin
FAILED
Build succeeded for 21 out of 25 (18 easyconfigs in this PR)
ca005.camp.thecrick.org - Linux centos linux 7.3.1611, Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz, Python 2.7.5
See https://gist.github.com/68694a7a90a753978fab6659cb094d7e for a full test report.

]

builddependencies = [
('Automake', '1.11.3'),
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robqiao Can you clarify the need for using an old version of Automake here?

Also, you're adding two versions of both Automake and Autoconf (as a dep to Automake), but using only one of them, so remove the others to clean up the PR a bit?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robqiao yes, I did spot quite a bit of duplication during my failed build attempt yesterday, so I echo the comment by @boegel

Copy link
Copy Markdown
Contributor Author

@manifestoso manifestoso Aug 8, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boegel @verdurin Thanks guys for pointing out. BamM-1.7.3 distribution can only be built by specific Automake/Autoconf version, we have filed the issue, but until we get an update on this, stick to those versions is the safest bet.
I have other files that require additional Automake/Autoconf versions, but I guess I can clean up for the time being and includes in the corresponding pr.

source_urls = ['https://github.com/macroevolution/bamm/archive']
sources = ['v%(version)s.tar.gz']

checksums = ['526eef85ef011780ee21fe65cbc10ecc62efe54044102ae40bdef49c2985b4f4', 'sha256']
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is wrong, should be either:

checksums = [('526eef85ef011780ee21fe65cbc10ecc62efe54044102ae40bdef49c2985b4f4', 'sha256')]

or

checksums = ['526eef85ef011780ee21fe65cbc10ecc62efe54044102ae40bdef49c2985b4f4']

I suggest the latter, where eb detects the checksum type automatically to be SHA256 based on the length, as we do elsewhere.

Copy link
Copy Markdown
Contributor Author

@manifestoso manifestoso Aug 8, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boegel Thanks for the tips. Fixed tuple() obj.

sources = [SOURCELOWER_TAR_BZ2]
source_urls = [('http://sourceforge.net/projects/bio-bwa/files/', 'download')]

checksums = ['fcf470a46a1dbe2f96a1c5b87c530554', 'md5']
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please use a SHA256 checksum instead, and drop the md5, this doesn't do what you think (it specifies a 2nd checksum md5, which is never used, rather than specifying the checksum type of the provided checksum value), see also other remark

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

source_urls = ['https://github.com/Blosc/c-blosc/archive/']
sources = ['v%(version)s.tar.gz']

checksums = ['e04535e816bb942bedc9a0ba209944d1eb34e26e2d9cca37f114e8ee292cb3c8', 'sha256']
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please drop the sha256, see also other remark

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

sources = [SOURCELOWER_TAR_GZ]
source_urls = [homepage + 'download/']

checksums = ['c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072', 'sha256']
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please drop the sha256, see also other remark

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 7, 2017

Test report by @boegel
SUCCESS
Build succeeded for 18 out of 18 (18 easyconfigs in this PR)
node2573.golett.os - Linux centos linux 7.3.1611, Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz, Python 2.7.5
See https://gist.github.com/8acb0c2e0c2487f7a61aefecce755928 for a full test report.

@manifestoso
Copy link
Copy Markdown
Contributor Author

manifestoso commented Aug 11, 2017

@boegel Thanks for the tips. do you mind to check this pr again? Thx

@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@easybuilders easybuilders deleted a comment from boegelbot Aug 12, 2017
@boegel boegel changed the title {bio}[foss/2016b] GroopM {bio}[foss/2016b] GroopM 0.3.4 w/ Python 2.7.12 + deps Aug 12, 2017
@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 12, 2017

We're working towards requiring SHA256 checksums for sources/patches in all easyconfigs touched in pull requests (see #5001), so I went through the trouble of adding the missing ones here, see manifestoso#1 (if you merge that PR, your PR here will be updated accordingly).

I'm looking into adding support for something like eb --add-checksums=sha256 foo.eb to make including checksums less painful..

consistently add SHA256 checksums for easyconfigs added in PR easybuilders#4650
@manifestoso
Copy link
Copy Markdown
Contributor Author

@boegel --add-checksums will be awesome. But what's the checking mechanism will be like? If the check is only based on the URL provided by source_urls, malicious package can also been introduced, unless the purpose of the check is really to stop the man in the middle attack?

@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 12, 2017

Test report by @boegel
SUCCESS
Build succeeded for 16 out of 16 (16 easyconfigs in this PR)
node2432.golett.os - Linux centos linux 7.3.1611, Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz, Python 2.7.5
See https://gist.github.com/fac0a413c3facc8b2cb5d73318ea267f for a full test report.

@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 12, 2017

Test report by @boegel
SUCCESS
Build succeeded for 16 out of 16 (16 easyconfigs in this PR)
node2040.delcatty.os - Linux centos linux 7.3.1611, Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz, Python 2.7.5
See https://gist.github.com/ee9e468fbf2a5b8af159c6f16e0cc0c9 for a full test report.

@boegel boegel dismissed verdurin’s stale review September 6, 2017 21:46

remarks tackled

@boegel
Copy link
Copy Markdown
Member

boegel commented Sep 6, 2017

Going in, thanks @robqiao!

@boegel boegel merged commit 3a0f9e7 into easybuilders:develop Sep 6, 2017
@manifestoso manifestoso deleted the addeasyconfigs branch September 10, 2017 02:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants