benthayer / git-gud

Wanna git gud? Then get git-gud, and git gud at git!
MIT License
401 stars 42 forks source link

Conda package for git gud #312

Open sahansk2 opened 3 years ago

sahansk2 commented 3 years ago

A company rep mentioned that a conda package would be good for git gud, especially for onboarding junior devs and teaching others about the git workflow (e.g. data scientists).

Feel free to edit this issue

benthayer commented 3 years ago

The packaging tutorial starts here: https://enterprise-docs.anaconda.com/en/latest/data-science-workflows/packages/build.html https://www.youtube.com/watch?v=xiI1i525ljE https://conda.io/projects/conda-build/en/latest/concepts/index.html https://docs.anaconda.com/anaconda-cloud/user-guide/tasks/work-with-packages/#uploading-packages https://gomss-nowcast.readthedocs.io/en/latest/conda_pkgs.html

sahansk2 commented 3 years ago

It should be noted that since git-gud is pip installable, we can use conda skeleton.

benthayer commented 3 years ago

Git gud is now available through conda install -c benthayer git-gud for specifically python 3.7 on Linux 64 bit. We'll need to figure out how to automate this process for other systems (I smell CI) and for other versions of python. Additionally, we should make it available through the conda default channel or conda-forge.

On Thu, Sep 3, 2020, 3:42 PM Sahan Kumarasinghe notifications@github.com wrote:

It should be noted that since git-gud is pip installable, we can use conda skeleton https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs-skeleton.html .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/benthayer/git-gud/issues/312#issuecomment-686754642, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABORCYYGH6TC3E47WEN7XKTSD75U5ANCNFSM4QVM6EWQ .

benthayer commented 3 years ago

I found this, which should be able to help us with building for other versions and platforms https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs-skeleton.html#python-versions

conda skeleton pypi git-gud

GG_VERSION=0.3.1

for PY_VERSION in 3.6 
do
    conda-build --python $PY_VERSION --croot git-gud git-gud
    conda convert --platform all /home/ben/canvas/git-gud/linux-64/git-gud-$GG_VERSION-py${PY_VERSION//.}_0.tar.bz2 -o outputdir/
done

There's also the possibility of "noarch" as stated in that guide, but I haven't looked into it

sahansk2 commented 3 years ago

For public reference. This works:

conda skeleton pypi git-gud
conda-build --python 3.6 git-gud
conda convert --platform all /home/sahan/.local/opt/miniconda/conda-bld/linux-64/git-gud-0.3.1-py36_0.tar.bz2 -o ./git-gud-3.6

https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs-skeleton.html#optional-converting-conda-package-for-other-platforms


From: Ben Thayer notifications@github.com Sent: Thursday, September 3, 2020 6:10:43 PM To: benthayer/git-gud git-gud@noreply.github.com Cc: Kumarasinghe, Sahan Sandipa sahansk2@illinois.edu; Author author@noreply.github.com Subject: Re: [benthayer/git-gud] Conda package for git gud (#312)

I found this, which should be able to help us with building for other versions and platforms https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs-skeleton.html#python-versions

conda skeleton pypi git-gud

GG_VERSION=0.3.1

for PY_VERSION in 3.6 do conda-build --python $PY_VERSION --croot git-gud git-gud conda convert --platform all /home/ben/canvas/git-gud/linux-64/git-gud-$GG_VERSION-py${PY_VERSION//.}_0.tar.bz2 -o outputdir/ done

There's also the possibility of "noarch" as stated in that guide, but I haven't looked into it

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/benthayer/git-gud/issues/312#issuecomment-686789727, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ANGED5PC5IU45EKORRPK4KLSEAH6HANCNFSM4QVM6EWQ.

benthayer commented 3 years ago

Marking as part of the 1.x milestone because although this is useful, it can still be installed by people using conda, it would just be by using the pip command. We can still deploy version 1.0 on conda after the official release