From be2d47ea8bc75958851c91e544dd727638d38b35 Mon Sep 17 00:00:00 2001 From: richardjgowers Date: Fri, 5 Oct 2018 11:59:00 -0500 Subject: [PATCH] made GSD unsupported in Windows --- package/MDAnalysis/coordinates/GSD.py | 9 ++++++-- package/MDAnalysis/topology/GSDParser.py | 8 ++++++- package/setup.py | 29 +++++++++++++----------- 3 files changed, 30 insertions(+), 16 deletions(-) diff --git a/package/MDAnalysis/coordinates/GSD.py b/package/MDAnalysis/coordinates/GSD.py index 9db0bb3b77d..860790d763f 100644 --- a/package/MDAnalysis/coordinates/GSD.py +++ b/package/MDAnalysis/coordinates/GSD.py @@ -47,9 +47,11 @@ from __future__ import absolute_import, division import numpy as np -from . import base -import gsd.hoomd +import os +if os.name != 'nt': + import gsd.hoomd +from . import base class GSDReader(base.ReaderBase): """Reader for the GSD format. @@ -70,6 +72,9 @@ def __init__(self, filename, **kwargs): .. versionadded:: 0.17.0 """ + if os.name == 'nt': + raise NotImplementedError("GSD format not supported on Windows") + super(GSDReader, self).__init__(filename, **kwargs) self.filename = filename self.open_trajectory() diff --git a/package/MDAnalysis/topology/GSDParser.py b/package/MDAnalysis/topology/GSDParser.py index 0137b19068d..422c81820f3 100644 --- a/package/MDAnalysis/topology/GSDParser.py +++ b/package/MDAnalysis/topology/GSDParser.py @@ -52,7 +52,10 @@ """ from __future__ import absolute_import -import gsd.hoomd +import os +if os.name != 'nt': + # not supported on windows + import gsd.hoomd import numpy as np from . import guessers @@ -106,6 +109,9 @@ def parse(self, **kwargs): .. versionadded:: 0.17.0 """ + if os.name == 'nt': + raise NotImplementedError("GSD format not supported on Windows") + attrs = {} with gsd.hoomd.open(self.filename,mode='rb') as t : diff --git a/package/setup.py b/package/setup.py index b43edc3a94b..b67280bf552 100755 --- a/package/setup.py +++ b/package/setup.py @@ -511,6 +511,21 @@ def dynamic_author_list(): config = Config() exts, cythonfiles = extensions(config) + install_requires = [ + 'numpy>=1.10.4', + 'biopython>=1.71', + 'networkx>=1.0', + 'GridDataFormats>=0.4.0', + 'six>=1.4.0', + 'mmtf-python>=1.0.0', + 'joblib', + 'scipy>=1.0.0', + 'matplotlib>=1.5.1', + 'mock', + ] + if not os.name == 'nt': + install_requires.append('gsd>=1.4.0') + setup(name='MDAnalysis', version=RELEASE, description=('An object-oriented toolkit to analyze molecular dynamics ' @@ -545,19 +560,7 @@ def dynamic_author_list(): setup_requires=[ 'numpy>=1.10.4', ], - install_requires=[ - 'gsd>=1.4.0', - 'numpy>=1.10.4', - 'biopython>=1.71', - 'networkx>=1.0', - 'GridDataFormats>=0.4.0', - 'six>=1.4.0', - 'mmtf-python>=1.0.0', - 'joblib', - 'scipy>=1.0.0', - 'matplotlib>=1.5.1', - 'mock', - ], + install_requires=install_requires, # extras can be difficult to install through setuptools and/or # you might prefer to use the version available through your # packaging system