[LyX/master] Make the directories in LyX application bundle read only.
Stephan Witt
st.witt at gmx.net
Fri Feb 21 22:43:38 UTC 2020
Am 21.02.2020 um 19:45 schrieb Guenter Milde <milde at users.sf.net>:
>
> On 2020-02-21, Jean-Marc Lasgouttes wrote:
>> Le 21/02/2020 à 17:45, Stephan Witt a écrit :
>>> commit ca7defab45a685bbc0303c32b94afb5ec98d4118
>>> Author: Stephan Witt <switt at lyx.org>
>>> Date: Fri Feb 21 18:04:28 2020 +0100
>
>>> Make the directories in LyX application bundle read only.
>
>>> Python produces files with cached on-the-fly compiled code on disk inside the bundle.
>>> This should be avoided in case of a signed application bundle.
>
>> Are the .pyc file still present? I think they are needed
>> performance-wise (for startup time).
No, they are not produced then anymore.
IMO that’s not a performance problem in reality.
> The .pyc files are created on the fly, if they are missing or outdated and
> the directory can be written to.
> Generally, you would not include them in a source archive or distribution.
> Binary packages may contain them.
>
>> I am not sure about the portability, though. Assuming we require python3
>> are there different pyc versions?
>
> While Python2 places .pyc files in the same directory as the source file,
> Python3 creates a sub-directory "__pycache__/„.
Yes, that’s true. I’ve seen this:
$ codesign -v -v lyx-build/LyX-2.4.0dev.app
lyx-build/LyX-2.4.0dev.app: a sealed resource is missing or invalid
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/lyx2lyx_tools.cpython-37.pyc
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/lyx_2_4.cpython-37.pyc
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/LyX.cpython-37.pyc
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/lyx2lyx_version.cpython-37.pyc
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/parser_tools.cpython-37.pyc
file added: /Users/stephan/git/lyx-build/LyX-2.4.0dev.app/Contents/Resources/lyx2lyx/__pycache__/unicode_symbols.cpython-37.pyc
and
/Users/stephan/git/lyx/lib/scripts/__pycache__/lyxpreview_tools.cpython-37.pyc
/Users/stephan/git/lyx/lib/scripts/__pycache__/lyxpreview_tools.cpython-36.pyc
/Users/stephan/git/lyx/lib/scripts/__pycache__/lyxpreview_tools.cpython-34.pyc
The 2.x python cache files are in the same place as the source file name .pyc extension - as Günther said.
Stephan
More information about the lyx-devel
mailing list