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

fix: binary execution mode compatibility #406

Merged
merged 40 commits into from
Feb 8, 2024
Merged

Conversation

negar-abbasi
Copy link
Contributor

@negar-abbasi negar-abbasi commented Feb 5, 2024

Proposed Changes

402

  • Implementing multiprocessing.freeze_support() to prevent execution failures when running algokit task vanity-address in binary.
  • Addressing the issue where algokit init fails during the execution of copier tasks in the fullstack template. The proposed solution involves using the system's Python path as a temporary substitute for _copier_python. This change is temporary until the issue with copier is resolved.

407

  • Adding portability tests against doctor, init, vanity-address and help commands.
  • Minor bumps in versions of several github actions (setup-python to v5, download-artifacts to v4 and etc). Fixes several minor deprecation warnings in github workers logs

Further notes

  • Make sure to merge fullstack PR first (marking it as a breaking change with a bump in min algokit version requirement)

@negar-abbasi negar-abbasi changed the title Pyinstaller issues fix: Pyinstaller issues Feb 5, 2024
src/algokit/__main__.py Outdated Show resolved Hide resolved
src/algokit/cli/init.py Outdated Show resolved Hide resolved
Copy link

github-actions bot commented Feb 6, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
src/algokit
   __init__.py15753%6–13, 17–24, 32–34
   __main__.py440%1–7
src/algokit/cli
   completions.py108298%83, 98
   deploy.py72790%44, 46, 92–94, 158, 182
   dispenser.py121199%77
   doctor.py48394%142–144
   explore.py501276%34–39, 41–46
   generate.py67396%74–75, 140
   goal.py44198%71
   init.py1951692%284–285, 335, 338–340, 351, 395, 421, 461, 470–472, 475–480, 493
   localnet.py1191587%74–78, 111, 123, 138–148, 161, 206, 227–228
   task.py34391%25–28
src/algokit/cli/common
   utils.py26292%120, 123
src/algokit/cli/tasks
   analyze.py81199%81
   assets.py821384%65–66, 72, 74–75, 105, 119, 125–126, 132, 134, 136–137
   ipfs.py51884%52, 80, 92, 94–95, 105–107
   mint.py66494%48, 70, 91, 250
   send_transaction.py651085%52–53, 57, 89, 158, 170–174
   sign_transaction.py59886%21, 28–30, 71–72, 109, 123
   transfer.py39392%26, 90, 117
   utils.py994555%26–34, 40–43, 75–76, 100–101, 125–133, 152–162, 209, 258–259, 279–290, 297–299
   vanity_address.py561082%41, 45–48, 112, 114, 121–123
   wallet.py79495%21, 66, 136, 162
src/algokit/core
   bootstrap.py1171091%101–102, 124, 151, 180–185
   conf.py54885%12, 24, 28, 36, 38, 71–73
   deploy.py691184%61–64, 73–75, 79, 84, 91–93
   dispenser.py2022687%91, 123–124, 141–149, 191–192, 198–200, 218–219, 259–260, 318, 332–334, 345–346, 356, 369, 384
   doctor.py65789%67–69, 92–94, 134
   generate.py48394%44, 81, 99
   goal.py60395%30–31, 41
   log_handlers.py68790%50–51, 63, 112–116, 125
   proc.py45198%98
   sandbox.py2181892%62, 73–75, 96, 142–149, 160, 456, 472, 497, 505
   typed_client_generation.py80594%55–57, 70, 75
   utils.py1043170%44–45, 49–68, 129, 132, 138–152
   version_prompt.py72889%26–27, 39, 58–61, 79, 108
src/algokit/core/tasks
   analyze.py94397%106–113, 188
   ipfs.py63789%58–64, 140, 144, 146, 152
   nfd.py491373%25, 31, 34–41, 70–72, 99–101
   vanity_address.py903462%49–50, 54, 59–75, 92–108, 128–131
   wallet.py71593%37, 129, 155–157
src/algokit/core/tasks/mint
   mint.py781087%123–133, 187
   models.py901188%50, 52, 57, 71–74, 85–88
TOTAL348740388% 

Tests Skipped Failures Errors Time
402 0 💤 0 ❌ 0 🔥 22.195s ⏱️

@aorumbayev aorumbayev changed the title fix: Pyinstaller issues fix: binary execution mode compatibility Feb 6, 2024
@aorumbayev
Copy link
Collaborator

Hey @negar-abbasi, i figured i'll combine this with portability tests issue (will update pr description later), still need a bit more time to refactor the pipelines a bit, i have wip progress on a fork will finalize this pr tomorrow for @neilcampbell and yourself to review. In the meantime feel free to proceed with other items

Copy link
Collaborator

@aorumbayev aorumbayev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@neilcampbell approving Negar's bits but lmk if you have any further comments for the portability tests changes

@aorumbayev aorumbayev marked this pull request as ready for review February 7, 2024 11:16
.github/actions/build-binaries/action.yaml Outdated Show resolved Hide resolved
src/algokit/cli/init.py Show resolved Hide resolved
tests/init/test_init.py Outdated Show resolved Hide resolved
@aorumbayev aorumbayev merged commit 5cb9b1f into main Feb 8, 2024
13 checks passed
@aorumbayev aorumbayev deleted the pyinstaller_issues branch February 8, 2024 12:18
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 this pull request may close these issues.

4 participants