{chem,math,lib}[intel/2017b] NAMD 2.12, MDTraj 1.9.1, molmod 1.4.3, yaff 1.4.2#5317
{chem,math,lib}[intel/2017b] NAMD 2.12, MDTraj 1.9.1, molmod 1.4.3, yaff 1.4.2#5317boegel merged 6 commits intoeasybuilders:developfrom
Conversation
|
@tovrstra Which comment are you referring to for NAMD, I don't see it in the easyconfig file? If the source filename is incorrectly named, you probably need to specify the correct extraction command yourself, since EasyBuild relies on the file extension being correct. See http://easybuild.readthedocs.io/en/latest/Writing_easyconfig_files.html#common-easyconfig-param-sources-alt. To fix the Tcl issue, why not bump the Tcl version for NAMD to 8.6.7? Note that |
| # https://github.com/mdtraj/mdtraj/blob/master/devtools/conda-recipe/meta.yaml | ||
| sanity_check_paths = { | ||
| 'files': [], | ||
| 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s-%(version)s-py%(pyshortver)s-linux-x86_64.egg/%(namelower)s'], |
There was a problem hiding this comment.
This line is too long, so it should be trimmed somehow (that's also why the tests are failing in Travis, we're stricter w.r.t. style now in easyconfigs).
You can just check for lib/python%(pyshortver)s/site-packages here, since EasyBuild already does an import mdtraj check.
There was a problem hiding this comment.
Good. How does easybuild now that it should try import mdtraj? The module name is not necessarily related to the package name.
There was a problem hiding this comment.
By default is uses name.lower(), you can override it with:
options = {'modulename': 'foo'}There was a problem hiding this comment.
Allright! Thanks. In that case, I can remove this line from the yaff eb file.
| toolchain = {'name': 'intel', 'version': '2017b'} | ||
| toolchainopts = {'pic': True, 'usempi': True} | ||
|
|
||
| sources = ['NAMD_%(version)s_Source.tar.gz'] |
There was a problem hiding this comment.
@tovrstra Please include a SHA256 checksum here too (you can use --inject-checksums for that).
|
|
||
| source_urls = ['https://github.com/molmod/yaff/releases/download/%(version)s'] | ||
| sources = [SOURCE_TAR_GZ] | ||
| patches = ['yaff-1.4.2-add-missing-include.patch'] |
There was a problem hiding this comment.
Please include SHA256 checksums for both sources and patches (pro tip: use --inject-checksums).
Also avoid hardcoding the yaff version in patches, use %(version)s instead.
There was a problem hiding this comment.
Hmm, seems like I have been modifying the downloaded sources myself (i.e. by zipping it again) up until now, because the source file I have is gzipped. It's not when I redownloaded it though.
Does this ring a bell for you @akesandgren?
There was a problem hiding this comment.
I just subscribed to the NAMD mailinglist and posted a question for this. I'll post the replies I'll get here.
There was a problem hiding this comment.
The file I have on disk is NAMD_2.12_Source.tar.gz
But i don't remember having done anything to it.
And the older files i have are also tar.gz
There was a problem hiding this comment.
Yes, the extension is tar.gz, but can you run the file command on it? When I do this, I get
$ file NAMD_2.12_Source.tar.gz
NAMD_2.12_Source.tar.gz: POSIX tar archive (GNU)
So not gzipped, despite the extension.
There was a problem hiding this comment.
@akesandgren Indeed, the downloaded file has .tar.gz extension, but it's really just a (non-gzipped) tarball.
I see the same thing when re-downloading it, so I suspect I just fixed that myself manually by gzipping it after downloading.
This approach here is better, but then we should also make it consistent (i.e. apply the same change, including a checksum, in the existing NAMD 2.12 easyconfigs).
There was a problem hiding this comment.
You can follow up my message on the mailing list here: http://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l.2016-2017/2442.html
No replies yet. Nobody seems to care, so don't expect this to change anytime soon.
I've looked around a bit: you can also get the source code here apparently: https://github.com/divijverma/NAMD/releases I'm not sure how legal and reliable that is. At least you'll get a .tar.gz when you're told so :)
There was a problem hiding this comment.
We should stick to the official sources, and just deal with the faulty naming, it's an easy/clean fix now in the easyconfig.
|
It seems that |
There was a problem hiding this comment.
@tovrstra Don't bump dependency versions in existing easyconfigs, since that may cause problems elsewhere (e.g. version conflicts on Tcl when this NAMD is reinstalled and then combined with existing modules).
Also, there's no easyconfig file for Tcl 8.6.7 that is compatible with inte/2017a.
There was a problem hiding this comment.
Hmm, this worked fine without this patch though?
There was a problem hiding this comment.
I really have no idea. I also don't understand why it passed the unit tests without setting lowopt=True. I'll check.
There was a problem hiding this comment.
This is weird! Indeed, the patch is not needed for yaff-1.4.2-intel-2017b-Python-2.7.14.eb but it is still needed to let the tests pass for yaff-1.4.2-intel-2017b-Python-3.6.3.eb. Even stranger, the tests run fine on Delcatty without lowopt=True, while on Golett lowopt=True is needed. I'll revert the changes in yaff-1.4.2-intel-2017b-Python-2.7.14.eb but I can't make much sense out of the current behavior.
There was a problem hiding this comment.
@tovrstra Delcatty is Intel Sandy Bridge, Golett is Intel Haswell, which may explain why lowopt=True is only needed for the latter for yaff.
|
@tovrstra For But you shouldn't be updating dep versions in existing easyconfigs anyway... :) |
|
ok. I'll fix that. Sorry... |
|
I've removed the dependency change. It should be OK now. |
|
Changes in |
| thermochemistry and reaction kinetics. It uses a Hessian computation from a | ||
| standard computational chemistry program as its input.""" | ||
|
|
||
| toolchain = {'name': 'intel', 'version': '2016a'} |
There was a problem hiding this comment.
Hmm, this is the only one using intel/2016a rather than intel/2017b, does it belong to the same batch of software?
There was a problem hiding this comment.
No, this is an older one, in fact unrelated to the other ones. I haven't converted TAMkin to work with Python 3 yet.
|
Are there any other changes needed. I think all is fixed now? |
|
@tovrstra The Maybe it's better to remove the TAMkin easyconfig here, and open a separate pull request for it to avoid it blocking this PR? |
|
The TAMkin easyconfig was moved to separate PR: #5333 |
|
Test report by @boegel |
|
Test report by @boegel |
|
Going in, thanks @tovrstra! |
I have some questions about the NAMD easyconfig:
tarfile and not atar.gzfile. Still, the.gzextension is present. I've added a comment to reduce the confusion. I hope this is OK.Tcl/8.6.7-GCCcore-6.4.0instead ofTcl/8.6.6-intel-2017b. The former is loaded with Python/3.6.3-intel-2017b and may cause conflicts when loading NAMD afterwards. How should we deal with this?