Skip to content

Conversation

@edavalosanaya
Copy link
Collaborator

Hello @adipandas

Okay, I think we finally got it right. Just had to fix minor issues with pyproject.toml and the GA workflow. I was able to publish a test version of the package here: motrackers-test. I will delete the package after you get motrackers published.

Now the GA action should pass, only failing now because I am running in a fork. Here is the GA action report, it successfully publishes to PyPI but fails later because its a fork (according to Google and ChatGPT).

Things you need to do:

  1. Delete local tag v0.0.1 with the following command
$ git tag -d v0.0.1 
  1. Delete remote tag v0.0.1. You can do so by selecting the tag from the Tags/Releases right-side panel on GitHub and deleting it from the ... menu button.
  2. Triple-check that you have a PYPI_API_TOKEN in your GitHub repo secrets
  3. Try again to publish (hopefully this time is much smoother), with the following command:
git tag v0.0.1 git push origin --tags 
  1. Wait and see if the GitHub actions are successful

Again, thanks for trying this out! Hopefully, soon we can get the package up in PyPI and make uploads a breeze in the future!

@edavalosanaya edavalosanaya mentioned this pull request May 10, 2023
@adipandas adipandas merged commit 78f4d85 into adipandas:master May 11, 2023
@adipandas
Copy link
Owner

Hello @edavalosanaya,
Thank you for the help. Package is now available through PyPI.

@adipandas
Copy link
Owner

adipandas commented May 11, 2023

Although package is successfully uploaded, I see some of the jobs are still failing in GitHub Action. See debug log below.

Publish distribution to PyPI ##[debug]Evaluating condition for step: 'Publish distribution to PyPI' ##[debug]Evaluating: success() ##[debug]Evaluating success: ##[debug]=> true ##[debug]Result: true ##[debug]Starting: Publish distribution to PyPI ##[debug]Loading inputs ##[debug]Evaluating: secrets.PYPI_API_TOKEN ##[debug]Evaluating Index: ##[debug]..Evaluating secrets: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'PYPI_API_TOKEN' ##[debug]=> '***' ##[debug]Result: '***' ##[debug]Loading env Run pypa/gh-action-pypi-publish@release/v1 ##[debug]Evaluating: inputs.user ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'user' ##[debug]=> '__token__' ##[debug]Result: '__token__' ##[debug]Evaluating: inputs.password ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'password' ##[debug]=> '***' ##[debug]Result: '***' ##[debug]Evaluating: inputs.repository-url ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'repository-url' ##[debug]=> '' ##[debug]Result: '' ##[debug]Evaluating: inputs.packages-dir ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'packages-dir' ##[debug]=> '' ##[debug]Result: '' ##[debug]Evaluating: inputs.verify-metadata ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'verify-metadata' ##[debug]=> '' ##[debug]Result: '' ##[debug]Evaluating: inputs.skip-existing ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'skip-existing' ##[debug]=> '' ##[debug]Result: '' ##[debug]Evaluating: inputs.verbose ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'verbose' ##[debug]=> 'false' ##[debug]Result: 'false' ##[debug]Evaluating: inputs.print-hash ##[debug]Evaluating Index: ##[debug]..Evaluating inputs: ##[debug]..=> Object ##[debug]..Evaluating String: ##[debug]..=> 'print-hash' ##[debug]=> '' ##[debug]Result: '' /usr/bin/docker run --name ed866e1b3e43ec[2](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:2)8a241[3](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:3)aa9[4](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:4)8a[5](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:5)99cb[6](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:6)b38bf_a84a59 --label ed866e --workdir /github/workspace --rm -e "pythonLocation" -e "LD_LIBRARY_PATH" -e "INPUT_USER" -e "INPUT_PASSWORD" -e "INPUT_REPOSITORY-URL" -e "INPUT_REPOSITORY_URL" -e "INPUT_PACKAGES-DIR" -e "INPUT_PACKAGES_DIR" -e "INPUT_VERIFY-METADATA" -e "INPUT_VERIFY_METADATA" -e "INPUT_SKIP-EXISTING" -e "INPUT_SKIP_EXISTING" -e "INPUT_VERBOSE" -e "INPUT_PRINT-HASH" -e "INPUT_PRINT_HASH" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_REPOSITORY_OWNER_ID" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_REPOSITORY_ID" -e "GITHUB_ACTOR_ID" -e "GITHUB_ACTOR" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKFLOW_REF" -e "GITHUB_WORKFLOW_SHA" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "RUNNER_DEBUG" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/multi-object-tracker/multi-object-tracker":"/github/workspace" ed866e:1b3e43ec28a2413aa948a599cb6b38bf "__token__" "***" "" "" "" "" "false" "" Notice: Using a user-provided API token for authentication against https://upload.pypi.org/legacy/ Checking dist/motrackers-0.0.1-py3-none-any.whl: PASSED Checking dist/motrackers-0.0.1.tar.gz: PASSED Uploading distributions to https://upload.pypi.org/legacy/ Uploading motrackers-0.0.1-py3-none-any.whl 25l 0% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0/43.1 kB • --:-- • ? 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • 8[7](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:7).4 MB/s 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • [8](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:8)7.4 MB/s [10](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:10)0% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • 87.4 MB/s 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • 87.4 MB/s 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • 87.4 MB/s 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.1/43.1 kB • 00:00 • 87.4 MB/s 25hWARNING Error during upload. Retry with the --verbose option for more details. ERROR HTTPError: [40](https://github.com/adipandas/multi-object-tracker/actions/runs/4949389404/jobs/8851646394#step:6:41)0 Bad Request from https://upload.pypi.org/legacy/ File already exists. See https://pypi.org/help/#file-name-reuse for more information. ##[debug]Docker Action run completed with exit code 1 ##[debug]Finishing: Publish distribution to PyPI 
@edavalosanaya
Copy link
Collaborator Author

Yay, congrats for getting the package in PyPI 🎉🥳!

So that error is because there was already version 0.0.1 in PyPI. This won't happen in the future (as long as you are careful about your versions), as I know the GitHub Action workflow works because I tested it in a separate repo and a test package.

You are all set for any future releases. For example, once you fix some bug or add new features, just bump the version (e.g. 0.0.1 to 0.0.2 in pyproject.toml), add the tag, and push it to GitHub. That should automatically publish the new version to PyPI.

If you encounter any issues, just contact me via this email: eduardo.davalos.anaya at vanderbilt.edu, or at me via GitHub. I plan on using motrackers for my research and will keep an eye on the repo.

@adipandas
Copy link
Owner

I plan on using motrackers for my research and will keep an eye on the repo.

I started developing this repo for a MOTRACK challenge. But wasn't able to invest enough time to finish the project. There are few things I never pushed to this repo like LSTM-based tracker and DeepSORT. In case you have any ideas to add other features, do let me know. Happy to collaborate and support.

Thank you for contributing and helping to publish this repo on PyPI.

Cheers! 🍻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants