tintoy / seqlog

Python logging integration for Seq (https://getseq.net)
https://seqlog.readthedocs.io/
MIT License
15 stars 11 forks source link

Please add to anaconda or udpate setup.py to work with conda skeleton #8

Closed summerela closed 6 years ago

summerela commented 6 years ago

Description

I'm trying to use anaconda for the intel CPU accelerated python packages that come integrated with it. My script uses seqlog (which I love!) but seqlog cannot currently be installed via conda install.

What I Did

I tried to create a build for conda using conda skeleton pypi seqlog But an error in setup.py is preventing this from working.

tintoy commented 6 years ago

Thanks!

I haven't used Anaconda before but I'll work on getting this fixed (sorry for the delay, it may take me a day or 2 to get up to speed).

tintoy commented 6 years ago

Could you post the error you're seeing, BTW? I'm on my phone and it'd be good to have a think about it before I get back to my computer :)

summerela commented 6 years ago

Thanks so much for looking into this! I've never had the need to use Anaconda before either, but in reading about potential speed gains from accelerated python for numpy and scipy I would love to test out performance difference :woman_shrugging:

It seems like for whatever reason, it's not finding the setup.py file. Andaconda appears to be creating a temp folder each time it tries to install, looks for the setup.py in that location, and then deletes the temp folder upon error.

Here's the dump of what I get when I run conda skeleton pypi seqlog

Warning, the following versions were found for seqlog
0.0.1
0.0.2
0.0.3
0.0.4
0.0.6
0.0.7
0.1.0
0.3.0
0.3.1
0.3.2
0.3.3
0.3.4
0.3.5
0.3.6
0.3.7
0.3.8
0.3.9
Using 0.3.9
Use --version to specify a different version.
Using url https://files.pythonhosted.org/packages/4b/8e/42ac2540c153554c61ea15422572e2ebd8                                                          84d47a8141c61f3e618cd41c2b/seqlog-0.3.9.linux-x86_64.tar.gz (13 KB) for seqlog.
Downloading seqlog
PyPI URL:  https://files.pythonhosted.org/packages/4b/8e/42ac2540c153554c61ea15422572e2ebd                                                          884d47a8141c61f3e618cd41c2b/seqlog-0.3.9.linux-x86_64.tar.gz
Using cached download
Unpacking seqlog...
done
working in /tmp/tmpxc2_4c30conda_skeleton_seqlog-0.3.9.linux-x86_64.tar.gz

Leaving build/test directories:
  Work:
 /home/selasady/anaconda3/conda-bld/skeleton_1529980460568/work
  Test:
 /home/selasady/anaconda3/conda-bld/skeleton_1529980460568/test_tmp
Leaving build/test environments:
  Test:
source activate  /home/selasady/anaconda3/conda-bld/skeleton_1529980460568/_test_env_place                                                          hold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place                                                          hold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place                                                          ho
  Build:
source activate  /home/selasady/anaconda3/conda-bld/skeleton_1529980460568/_build_env

Traceback (most recent call last):
  File "/home/selasady/anaconda3/bin/conda-skeleton", line 11, in <module>
    sys.exit(main())
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/cli/main_skeleton                                                          .py", line 65, in main
    return execute(sys.argv[1:])
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/cli/main_skeleton                                                          .py", line 61, in execute
    version=args.version, config=config)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/api.py", line 281                                                          , in skeletonize
    recursive=recursive, config=config, **kwargs)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/skeletons/pypi.py                                                          ", line 274, in skeletonize
    setup_options=setup_options)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/skeletons/pypi.py                                                          ", line 665, in get_package_metadata
    config=config)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/skeletons/pypi.py                                                          ", line 970, in get_pkginfo
    setup_options=setup_options)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/skeletons/pypi.py                                                          ", line 998, in run_setuppy
    with open(os.path.join(src_dir, "setup.py")) as setup:
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpxc2_4c30conda_skeleton_se                                                          qlog-0.3.9.linux-x86_64.tar.gz/usr/setup.py'
tintoy commented 6 years ago

Interesting!

Ok, I'll have a play around with this tonight and see if I can get it to work.

tintoy commented 6 years ago

I added a couple of files to the repository (development/v1.0 branch), and am now able to run conda-build seqlog from the parent directory (followed these steps here because I can't use conda skeleton either). Before I go an publish anything would you be willing to try running conda-build yourself and installing the resulting package? Or if you can't install conda-build, would you be willing to try installing the package I built before I publish it?

summerela commented 6 years ago

@tintoy I'm working on trying to get it to run. I'll keep you posted!

summerela commented 6 years ago

I'm running this off CentOS. Here's what I did:

#On branch development/v0.1
nothing to commit, working directory clean

source tree in: /home/selasady/anaconda3/conda-bld/seqlog_1530040075738/work
/home/selasady/anaconda3/conda-bld/seqlog_1530040075738/work/conda_build.sh: line 62: setup.py:                                     command not found
Traceback (most recent call last):
  File "/home/selasady/anaconda3/bin/conda-build", line 11, in <module>
    sys.exit(main())
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/cli/main_build.py", lin                                    e 420, in main
    execute(sys.argv[1:])
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/cli/main_build.py", lin                                    e 411, in execute
    verify=args.verify)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/api.py", line 200, in b                                    uild
    notest=notest, need_source_download=need_source_download, variants=variants)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/build.py", line 2177, i                                    n build_tree
    notest=notest,
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/build.py", line 1417, i                                    n build
    utils.check_call_env(cmd, env=env, cwd=src_dir, stats=build_stats)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/utils.py", line 310, in                                     check_call_env
    return _func_defaulting_env_to_os_environ('call', *popenargs, **kwargs)
  File "/home/selasady/anaconda3/lib/python3.6/site-packages/conda_build/utils.py", line 290, in                                     _func_defaulting_env_to_os_environ
    raise subprocess.CalledProcessError(proc.returncode, _args)
subprocess.CalledProcessError: Command '['/bin/bash', '-e', '/home/selasady/anaconda3/conda-bld/  

I've tried quite a few things to get this to work, but not sure what else to troubleshoot.

tintoy commented 6 years ago

Hmm, me neither unfortunately - this is the first time I've used Anaconda. But since I can build a package how about I post it here and you can try installing it?

summerela commented 6 years ago

Sounds good! @tintoy Let me know when you've posted it, and I'll give it a whirl.

On Tue, Jun 26, 2018, 1:44 PM Adam Friedman notifications@github.com wrote:

Hmm, me neither unfortunately - this is the first time I've used Anaconda. But since I can build a package how about I post it here and you can try installing it?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/tintoy/seqlog/issues/8#issuecomment-400455981, or mute the thread https://github.com/notifications/unsubscribe-auth/AIrSniG5G8XapTW20kRrNT6KuPgrQnY1ks5uAp1BgaJpZM4U3Cox .

tintoy commented 6 years ago

Hi - can you give this a try?

seqlog-0.3.9-py36_0.tar.bz2.zip

You'll need to unzip it first (GitHub won't let me upload a .tar.bz2 file, but it will let me upload a .zip file).

summerela commented 6 years ago

Hello! The package builds successfully! I think you just now have to upload it to http://anaconda.org/ and people should be able to install it on anaconda. Super exciting!

tintoy commented 6 years ago

Great to hear! Thanks for that; I'll organise to publish it in the next couple of days :)

tintoy commented 6 years ago

Hi @summerela - sorry for the delay (work's been a little crazy) but it's now been published 😄

https://anaconda.org/tintoy/seqlog

tintoy commented 6 years ago

BTW, feel free to reopen this issue if you have any problems using the published package.

summerela commented 6 years ago

Hi, I'm sorry for the delay on getting back to you. Work has been crazy here, as well. I am not able to get this installed without an error, but I'm in the process of determining if that's something to do with our conda environment, or the package itself. I'll keep you posted.