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

create allspec repo? #24

Open
joelbrownstein opened this issue Apr 22, 2024 · 7 comments
Open

create allspec repo? #24

joelbrownstein opened this issue Apr 22, 2024 · 7 comments
Assignees

Comments

@joelbrownstein
Copy link

Hi @albireox,

I haven't use the python_template in a very long while, so here's my attempt and the error received, if you can have a look and let me know if I did something incorrect, or if I should try it in an older miniconda than 3.11?

$ cookiecutter https://github.com/sdss/python_template.git
  [1/14] full_name (John Doe): Joel Brownstein
  [2/14] email ([email protected]): [email protected]
  [3/14] package_name (myproject): allspec
  [4/14] repo_name (allspec):
  [5/14] pip_name (sdss-allspec):
  [6/14] version (0.1.0-alpha.0):
  [7/14] year (2024):
  [8/14] short_description (Simple Template package for creating SDSS Python projects): Simple package to generate the allspec file which would extract sdss_ids from the pipeline's database including boss and apogee spectra, or all spectra with an sdss_id
  [9/14] Select packaging_system
    1 - setuptools
    2 - poetry
    Choose from [1/2] (1):
  [10/14] Select sphinx_template
    1 - sphinx-bootstrap
    2 - alabaster
    Choose from [1/2] (1):
  [11/14] Select use_releases
    1 - no
    2 - yes
    Choose from [1/2] (1):
  [12/14] Select create_git_repo
    1 - yes
    2 - no
    Choose from [1/2] (1):
  [13/14] Select exists_on_github
    1 - no
    2 - yes
    Choose from [1/2] (1):
  [14/14] github_organisation (sdss):
Traceback (most recent call last):
  File "/var/folders/dz/0sxcvbqd48700v2k7mnc5b8w0000gn/T/tmp46a2p62_.py", line 53, in <module>
    @invoke.task
     ^^^^^^^^^^^
  File "/software/pkg/miniconda/3.11/lib/python3.11/site-packages/invoke/tasks.py", line 331, in task
    return klass(args[0], **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/software/pkg/miniconda/3.11/lib/python3.11/site-packages/invoke/tasks.py", line 76, in __init__
    self.positional = self.fill_implicit_positionals(positional)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/software/pkg/miniconda/3.11/lib/python3.11/site-packages/invoke/tasks.py", line 167, in fill_implicit_positionals
    args, spec_dict = self.argspec(self.body)
                      ^^^^^^^^^^^^^^^^^^^^^^^
  File "/software/pkg/miniconda/3.11/lib/python3.11/site-packages/invoke/tasks.py", line 153, in argspec
    spec = inspect.getargspec(func)
           ^^^^^^^^^^^^^^^^^^
AttributeError: module 'inspect' has no attribute 'getargspec'. Did you mean: 'getargs'?
ERROR: Stopping generation because post_gen_project hook script didn't exit successfully
Hook script failed (exit status: 1)
@albireox
Copy link
Member

That sounds vaguely familiar. And seems to be this issue. Did you pip install cookiecutter? What version of cookiecutter are you using?

Can you try doing

pip install --upgrade cookiecutter
pip install --upgrade invoke

and then run cookiecutter again? If that works I think it must be an out of date version of cookiecutter.

@joelbrownstein
Copy link
Author

I confirmed that this issue is for python 3.11, so I was able to create https://github.com/sdss/allspec using miniconda/3.9

@joelbrownstein
Copy link
Author

For the broken 3.11, I did pip install it (today) and it has:
$ cookiecutter -V
Cookiecutter 2.6.0 from /software/pkg/miniconda/3.11/lib/python3.11/site-packages (Python 3.11.4 (main, Jul 5 2023, 08:41:25) [Clang 14.0.6 ])

@joelbrownstein
Copy link
Author

sdsstools 1.1.0 requires invoke<2.0.0,>=1.3.0, but you have invoke 2.2.0 which is incompatible.

@joelbrownstein
Copy link
Author

so I think reverting invoke would work (in principle).

@albireox
Copy link
Member

Ah, good catch. Yes, that sounds very familiar. If 3.9 works for you I'd say use that for now, but I'll test and fix it. If you want to use 3.11, I think if you manually do pip install --upgrade invoke that will upgrade invoke regardless of the sdsstools requirement (which anyways should work fine with invoke 2.x) and then cookiecutter will work.

@joelbrownstein
Copy link
Author

3.9 worked so I'm happy to go on to other tasks!

$ pip install --upgrade invoke
Requirement already satisfied: invoke in /software/pkg/miniconda/3.11/lib/python3.11/site-packages (2.2.0)

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

2 participants