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

Add instructions to release on PyPI and conda forge #101

Closed
jtpio opened this issue Oct 5, 2020 · 9 comments · Fixed by #163
Closed

Add instructions to release on PyPI and conda forge #101

jtpio opened this issue Oct 5, 2020 · 9 comments · Fixed by #163

Comments

@jtpio
Copy link
Member

jtpio commented Oct 5, 2020

At the moment the 3.0 branch of the cookiecutter mentions how to install the extension, but doesn't say how to release to PyPI and conda-forge:

https://github.com/jupyterlab/extension-cookiecutter-ts/tree/d8c08687f8661545a65d65ab8eb9433267a45b35/%7B%7Bcookiecutter.python_name%7D%7D

We should a section with the following commands:

python setup.py sdist bdist_wheel
twine upload dist/*
@jtpio
Copy link
Member Author

jtpio commented Oct 5, 2020

The widget cookiecutter has some instructions here:

https://github.com/jupyter-widgets/widget-ts-cookiecutter#releasing-your-initial-packages

@goanpeca
Copy link
Member

goanpeca commented Oct 5, 2020

How about automating the release process on GH CI, so that the tag triggers the whole process and publishes things using a PyPI token, hopefully associated to the bot account.

Thoughts?

@jtpio
Copy link
Member Author

jtpio commented Oct 5, 2020

Sounds good!

Maybe this could be made as an opt-in (or opt-out) option while going through the steps of the cookiecutter?

@jtpio
Copy link
Member Author

jtpio commented Oct 5, 2020

I've used the "GitHub Release" event before to trigger automated releases to PyPI and npm, but doing it on a tag could also work.

@goanpeca
Copy link
Member

goanpeca commented Oct 5, 2020

Cool, I will take a look at ti :-)

@jtpio
Copy link
Member Author

jtpio commented Oct 5, 2020

Awesome, thanks!

@chrisjsewell
Copy link

chrisjsewell commented May 14, 2021

Yeh added to this, it would be good to have some minimal instructions for uploading to npm (so it can be found by the Extension Manager), and a CI setup 👍
As a "Python first" developer; PyPI and Conda I know well, but I've never released to npm before 😬 I imagine I won't be the only one with this kind of user profile.

@jtpio
Copy link
Member Author

jtpio commented May 14, 2021

so it can be found by the Extension Manager

Yes, and also so it can be used by other extensions or alternative distributions if needed 👍

Usually for npm a single npm publish is enough (and an initial npm login to authenticate)

@chrisjsewell
Copy link

Thanks, that what I had hoped!
I assume the package.json section:

  "jupyterlab": {
    "discovery": {
      "server": {
        "managers": [
          "pip"
        ],
        "base": {
          "name": "jlab_aiidatree"
        }
      }
    },

is all I need to have the manager aware of the server side requirement

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

Successfully merging a pull request may close this issue.

3 participants