Skip to content

Commit

Permalink
Added PyInstallerConfig isOneFile attribute to ConfigFactory wrapper.
Browse files Browse the repository at this point in the history
  • Loading branch information
BuvinJ committed Dec 29, 2020
1 parent e8065c1 commit 02e211e
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 5 deletions.
2 changes: 1 addition & 1 deletion distbuilder/_version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.7.8.24"
__version__ = "0.7.8.25"
6 changes: 4 additions & 2 deletions distbuilder/master.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ def __init__( self, cfgId=None ) :
# PyInstaller
self.entryPointPy = None
self.specFilePath = None
self.isOneFile = True # this differs from the PyInstaller default
self.distResources = []

# Python Obfuscation
Expand Down Expand Up @@ -123,9 +124,10 @@ def pyInstallerConfig( self ):
cfg = PyInstallerConfig()
cfg.name = self.binaryName
cfg.sourceDir = self.sourceDir
cfg.entryPointPy = self.entryPointPy
cfg.entryPointPy = self.entryPointPy
cfg.isOneFile = self.isOneFile
cfg.isGui = self.isGui
cfg.iconFilePath = self.iconFilePath
cfg.iconFilePath = self.iconFilePath
cfg.distResources = self.distResources
if self.specFilePath :
cfg.pyInstSpec = PyInstSpec( self.specFilePath )
Expand Down
21 changes: 19 additions & 2 deletions docs/HighLevel.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ Attributes & default values:

entryPointPy = None
specFilePath = None
isOneFile = True (note this differs from PyInstaller default)
distResources = []
<Python Obfuscation>
Expand Down Expand Up @@ -99,8 +100,10 @@ Attributes & default values:
pkgExeWrapper = None

startOnBoot = False <CURRENT_USER, ALL_USERS>
qtCppConfig = None

<"Special" Contexts>
qtCppConfig = None

Object creation functions:

Expand Down Expand Up @@ -221,6 +224,20 @@ config factory provide an `onMakeSpec( spec )` function. And, if writing your
own low level equivalents of the process class operations, the library provides
an [makePyInstSpec](LowLevel.md#makePyInstSpec) function.

#### isOneFile

This switch controls a notable PyInstaller feature, i.e. bundling dependencies
into a single (compressed) exe when creating a
[Stand Alone Executable](LowLevel.md#stand-alone-executables) vs leaving the
dependencies outside of the exe. Unlike PyInstaller, this library wrapper
defaults to employing the single file feature. That produces a more "clean", streamlined, product which appears (on the surface) nearly identical across
build environments - including cross platform. But, this comes at the expense
of slowing down the launching of an executable.

We recommend using the one file option for "small" programs, or ones which will
not likely be opened very often. Set this to `False`, however, to boost
a program's performance as far as load time is concerned.

#### iconFilePath

Based upon context, this attribute is used to embedded (or bundle) an icon for
Expand Down

0 comments on commit 02e211e

Please sign in to comment.