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 the --noarchive option. #3546

Merged
merged 2 commits into from Jun 5, 2018

Conversation

Projects
None yet
3 participants
@bjones1
Member

bjones1 commented May 31, 2018

This introduces a new command-line switch to PyInstaller, --noarchive, which places all Python source files as regular files in the output (dist) directory, rather than bundling them into the resulting executable. The primary purpose is for debugging: it clearly shows what PyInstaller finds and what it doesn't, making it easier to modify hooks. This will also be helpful for new users: a first step is to run with the --noarchive option then inspect the output to see if everything was packaged.

@htgoebel, I'd like your approval before merging.

@bjones1 bjones1 requested a review from htgoebel May 31, 2018

@tallforasmurf

This comment has been minimized.

Contributor

tallforasmurf commented May 31, 2018

Docs? The add-argument() help string will make it into the options summary automatically, but some words somewhere on the intention and when to use? Perhaps under finding-the-files? Or maybe not, but certainly under when things go wrong?

@bjones1

This comment has been minimized.

Member

bjones1 commented May 31, 2018

That's a good point. I'll probably work on this after @htgoebel approves -- I don't want to spend more time on it if it won't go in.

@htgoebel

This comment has been minimized.

Member

htgoebel commented Jun 3, 2018

I like the idea! Do keep the number of command-line switches low: What do you think about using --debug for this, or enhance --debug to accept an an optional value? (https://stackoverflow.com/a/40324463 shows how this could be done.)

I already had the idea to make --debug also set the v OPTION for the bootloader. If we enhance --debug, this would a another option, something like --debug {imports,bootloader,archive} with

  • imports: set the v OPTION for the bootloader
  • bootloader: current behaviour
  • archive: this pull-request

@bjones1 bjones1 force-pushed the bjones1:noarchive_option branch from f5c064a to 4c586d4 Jun 4, 2018

@bjones1

This comment has been minimized.

Member

bjones1 commented Jun 4, 2018

That sounds good. I've implemented this. One minor caveat: the new --debug option doesn't format in Sphinx correctly, since the docutils option list doesn't recognize the argparse-generated text in the auto-generated https://pyinstaller.readthedocs.io/en/v3.3.1/usage.html#options section.

@bjones1 bjones1 force-pushed the bjones1:noarchive_option branch from 4c586d4 to 399dc84 Jun 5, 2018

@bjones1 bjones1 merged commit 399dc84 into pyinstaller:develop Jun 5, 2018

0 of 3 checks passed

continuous-integration/appveyor/pr AppVeyor build failed
Details
continuous-integration/travis-ci/pr The Travis CI build failed
Details
continuous-integration/travis-ci/push The Travis CI build is in progress
Details

@bjones1 bjones1 deleted the bjones1:noarchive_option branch Jun 5, 2018

@htgoebel htgoebel added this to the PyInstaller 3.4 milestone Sep 2, 2018

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