Our spec files have always created a VersionInfo struct on the fly and
passed that as the value for 'version' to the EXE:
>>> from install.pi_utils import create_version_info
>>> version_info = create_version_info(exe_name, prod_name='JobScheduler')
>>>
>>> exe = EXE(
>>> ...
>>> version = version_info,
.>>> ...
>>> )
But in 3.5 that appears to be disallowed by the check in api.py at line
427, which is specifically requiring a path.
File "install\jobScheduler.spec", line 67, in <module>
version = version_info,
File
"C:\PROGRA~1\Python37\lib\site-packages\PyInstaller\building\api.py", line
427, in __init__
if not os.path.isabs(self.versrsrc):
File "C:\PROGRA~1\Python37\lib\ntpath.py", line 69, in isabs
s = os.fspath(s)
TypeError: expected str, bytes or os.PathLike object, not VSVersionInfo
Here's the source at the crash site:
if self.versrsrc:
if not os.path.isabs(self.versrsrc): *** Crashes
here.
# relative version-info path is relative to spec file
self.versrsrc = os.path.join(
CONF['specpath'], self.versrsrc)
Is this a regression, i.e., should I still be able to do this, or do I need
to rewrite things to generate a file from the spec and feed that in?
--
You received this message because you are subscribed to the Google Groups
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/pyinstaller.
To view this discussion on the web visit
https://groups.google.com/d/msgid/pyinstaller/aaf9dae8-44da-459a-9492-eb013e557b25%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.