Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

continuous integration stuff #3

Open
gregjohnso opened this issue Dec 4, 2018 · 6 comments
Open

continuous integration stuff #3

gregjohnso opened this issue Dec 4, 2018 · 6 comments
Assignees

Comments

@gregjohnso
Copy link
Member

No description provided.

@heeler
Copy link
Member

heeler commented Dec 6, 2018

TeamCity or Travis or ...? Rory is suggesting Travis barring objects I'll start looking into that.

@heeler
Copy link
Member

heeler commented Dec 10, 2018

I'm trying to make travis work and I have the integration mostly configured but when it runs the pytest block it runs into problems with torch

ImportError while importing test module '/home/travis/build/AllenCellModeling/geneselection/geneselection/tests/dataset_test.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
geneselection/tests/dataset_test.py:3: in <module>
    import geneselection.datasets.dataset as gds
geneselection/datasets/__init__.py:1: in <module>
    from .dataset import *
geneselection/datasets/dataset.py:4: in <module>
    from ..utils.dataloader import default_collate
geneselection/utils/__init__.py:1: in <module>
    from .utils import *  # noqa
geneselection/utils/utils.py:2: in <module>
    import torch
../../../miniconda/envs/gsel/lib/python3.6/site-packages/torch/__init__.py:84: in <module>
    from torch._C import *
E   ImportError: dlopen: cannot load any more object with static TLS```

@donovanr
Copy link
Contributor

this issue looks relevant if unhelpful pytorch/pytorch#2083

@donovanr
Copy link
Contributor

could it be an issue with the import * in our __init__.py file? that might be importing not just the functions we defined ourselves but e.g. all the numpy and pandas functions that are exposed via our own imports.

@donovanr
Copy link
Contributor

using an __all__ = ["foo", "bar"] statement as in https://github.com/AllenCellModeling/geneselection/blob/master/geneselection/__init__.py is (I think?) usually considered the "right" way to do it so that you're only exposing an explicit list of the functions you actually want users to see.

@heeler
Copy link
Member

heeler commented Dec 12, 2018

I tried the above changes modifying the init.py to use the all = [] mechanism but it still couldn't load and run pytorch.
I eventually dug into the default build environment and realized the default build is Ubuntu 14.04 (trusty). That worried me so I specified the more recent Ubuntu 16.04 (xenial). All of a sudden the tests successfully built and ran all the tests.

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

No branches or pull requests

3 participants