Python distribute pyc only

Sep 13, 2017 In this article we go over the Python file types . Oct 18, 2018 py2exe turns Python programs into packages that can be run on other Windows . PYC File Summary. . pyc file, which, after some basic googling, I found is a 'bytecode' file (whatever that means' and it's made as a tool to quicken the process. It turns out there are quite a few alternatives to consider. Boa · Eric Python IDE · IDLE · PyCharm · PyDev · SPE · Ninja-IDE · more. py with lots of options under PyCharm's Tools menu, but the only thing I've been able to get to work is to create an "egg" file, which  I updated my python script from ArcGIS 9. Your encryption program shouldn't care whether you are encrypting text files, JPEGs, mp3 audio files, executable binary code, Python scripts, or a giant file of all ASCII nulls. Aside from the obvious (distribute sources with an appropriate commer This article is for Python beginners who wish to study how to compile Python souce code (. pyc files. pyc suffix. pyc files it will be easy to (decompile and) remove the code that checks the license file. Python distribute pyc only Since people typically only distribute bytecode files for code obfuscation purposes or smaller distribution size then only having to distribute a single . I have a decent size application written in 100% Python. Pure python modules are compiled into . 4. Built Distribution A Distribution format containing files and metadata that only need to be moved to the correct location on the target system, to be installed. When I open the file, it is COMPLETELY blank. 7. 12, 2014. pyc format install and it would only contain python source, and the you want to distribute your application in a non-human readable Getting Started With setuptools and setup. pyc" exists in the directory where "spam. py ) or bytecode ( . pyc file generated with Python 2. Only after Python 3. py` and `. mll in that respect then The Python Package Index (PyPI) is a repository of software for the Python programming language. Third party tools offer easier to use and more secure alternatives. Faster installation for pure Python and native C extension packages. py script, intended for building, distributing, and installing modules. I know of course that the recommended wa I've started working on a commercial application in Python, and I'm weighing my options for how to distribute the application. pyc (or . Distributing bytecode. That's not to say you can't just distribute . Download unpyc3. exclusive right to copy, reproduce in any form, distribute and make derivative works of the furnished by express license agreement only and may be used only in accordance with either a . But step 2 is a very significant step, and it is the most difficult to do in reverse, i. 6, doesn't have a different solution, so this is redundant. We are on belongs to version 2. 6 Version: Python 3. Visit the Windows IoT Dev Center for more information. Support is offered in pip >= 1. . py the trace handlers are only  Feb 26, 2012 You can tell it's there, though: look at the . That's what those pyc files are. We'll statically link the Python interpreter to our application, and distribute the Python standard library in an archive, which will be loaded at runtime. pyc' files from the directory. g. Typically, you might distribute the source (. pyc files that existed in the same place. I set out to find out how exactly do you distribute a Python program, sans source code, on various operating systems. Become a Member Donate to the PSF Python Wheels What are wheels? Wheels are the new standard of Python distribution and are intended to replace eggs. pyc’ -print0 | xargs -0 rm -rdf` to remove the files. pyc files to remain compatible for: - the operating system (e. ) , you can distribute your application without requiring Results. in Python. 1. pyc. pyc or . pyc files instead of the . This method is almost same as method1 except it does not expose source code directly. py’ file; the only thing that's faster about ‘. There are two ways to distribute Python modules. Here is an example Python module which we want to import. pyc files it will be easy to (decompile and) remove the code that This guide only covers the basic tools for building and distributing extensions that are provided as part of this version of Python. Importing a module only works once per Python session. However, this will only make it harder. is that the source of a python program is what you use and distribute, from  Python is a general purpose scripting language used in many different industries. win32\winexe\temp\bz2. pyc bytecode is decompileable and the obfuscation is From my experience, the only thing it couldn't do is asynchronous generators. When anyone with write access imports this package, the network drive gets spammed with . The incorrect . pyo files. C:\Tutorial\build\bdist. Use the ZipFile class to work directly with a ZIP archive. pyc should actually be beneficial to these use-cases. Apr 9, 2011 The benefits (and limitations) of PYC-only Python distribution then removing all of the original . Distribute EXE files Pyarmor (obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts) FredrikLundh discussed some of these in 2003. py to gendibal. x versions of Python, and not Python 3. 2 is it possible to share libraries across Python versions, as only then can you have . Of course, you can distribute the Python executable, but it may be easier to just distribute a separate . This article will introduce 3 methods to compile PY to PYC, all of which can be used on both Python2 and Python3. Home > Python > Python; you can distribute the . Make sure to run `compileall. Jan 23, 2014 Path. However, PyInstaller bundles compiled Python scripts ( . PEP 3147 was implemented in Python 3. zip file which contains only the compiled (pyc) python files. Wheel can install (pure Python) packages built with previous versions of Python so you don't always have to wait for the packager to catch up. py file or module. of the license agreement to distribute only one of the dlls without the others  May 7, 2019 Typical SPEC file description for a Python RPM package. pyo files that indicates the system architecture that the python file was compiled in. Options and special cases are covered below, under Using PyInstaller. pyo files in a temporary directory. Python’s meaningful indentation (one of its most controversial features) make it very hard to maintain this kind of code. Release – Python 3. I am developing a piece of software in Python that will be distributed to my employer's customers. To distribute our pathology package, we need to upload it to PyPI and provide some extra metadata PyPI Here are the steps to build PYC-only python distribution. Is what I'm distributing a "derived work" of the GPL'd python? Or is py2exe's packaging of the module's . To distribute a program to people who already have Python installed, you can ship either the PY files or the PYC files. Python-2. pyc . 2 it already would be outdated thanks to the 3. For this and other reasons, it's just a poor choice to distribute pyc files. pyc ) files. pyo` and remove all the `. py. pyc / *. News about the dynamic, interpreted, interactive, object-oriented, extensible programming language Python. (17 replies) In short: Is there any way to run Python WITHOUT trying to create . py file in the same directory of the project folder. But at the end of the day, python at the end user will generate those pyc files themselves, don't they? If that's the case then it's a relatively small overhead. Mailing List Archive. exe *. pyo files . pxd - Cython script which is equivalent to a C I managed to compile it with pyc but I must’ve misunderstand the topic since when I compiled it still requires python lib and Ironpython dlls. pyc files (or. PyPI helps you find and install software developed and shared by the Python community. Expected Behavior. py files if . py files directly is because you have the line #!/usr/bin/python or #!/usr/bin/env python or something similar on the first line in the . The implementation only contains the pello. Python produces . Python as installed in OS X will usually be executable in either 64- or 32-bit mode. 5 to ArcGIS 10. You can however get a I don't use virtualenv-burrito, but ended up here after a link from a discussion of this on distribute. The . Currently, Python and Flask understand how to use the flaskr package only flaskr/schema. So, as Bart says, the difference between "compiled" and "interpreted" is somewhat subjective. the unpyc3 module is able de decompile itself! (try import unpyc3; unpyc3. Python already compiles your code when you run it. Let's also say I use py2exe to package and distribute said application. pyc - compiled script (Bytecode) *. 3. 0. The interpreter cannot load Python modules with C code; it is a "pure" Python environment. x. Windows, Mac, Linux); - bug-release versions (e. pyc files for several versions of Python in the same directory. Someone who looks at the source will notice nothing amiss, and in fact if the update the source the pyc will be rebuilt cleanly (until it gets reinfected). pyc is a valid file, but instead of having the code object of the original . e. The library itself is not pure-Python: parts of it core functionality is written in C/C++. Is there a way to do this? I've read up a little on the logic by which python creates . The Python interpreter can run any Python code, including Python modules you include with your application, as well as the Python standard library. not in the __pycache__ directory. sql graft flaskr/static graft flaskr/templates global-exclude *. But please note that PYC file can be decompiled very easily by a Python Decompiler. pyc file and my application code's . 2. but you can expect the . pyc file for the right version of Maya! so a lot like an . You only need to distribute the . My employer wants to limit the usage of the software with a time restricted license file. EmbeddedPython for details of minimal or reduced size Python distributions and implementations. 3? You need to recompile it in order to get the . Questions: I am developing a piece of software in Python that will be distributed to my employer’s customers. The main binary was simply a modified Python interpreter that to the byte-compiled pyc-files at the time, I ended up taking a Python . 2. If you distribute one of these files into an environment of a different type, it will break. So what do i gave to do with the . 3 Python 2. py Or make your script executable by adding #!/usr/bin/env python to the top of the script, making the file executable with chmod +x hello. pyd files) and Python source ( . Steven D'Aprano The same as the ways to encrypt any other file. pyc file type. The Twisted Plugin System is the preferred way to write extensible twisted applications. 3 be You certainly could distribute the . 8. py source files from the distributed version. pyo and . It's still happening for me but I discovered that a workaround is to add zip_safe=False to setup. Third, can distributing code in pyc files, speed up the application? Or would speed increases only be seen upon application A non-python programming friend of mine has said that any programs made with Python must be distributed with, or an alternative link, to the source of the program. Compiled extension modules (. Advantages of wheels. Applications such as ‘Dropbox’, ‘Eve Online’, ‘Civilization IV’, and BitTorrent clients do this. Zappa only packages up . py file if it is imported by another . py) files, but if you don't want to do that, you can distribute the compiled . py to bz2. 3 “Freezing” your code is creating a single-file executable file to distribute to end-users, that contains all of your application code as well as the Python interpreter. pyo’ file than when it is read from a ‘. pyc files would override the previous correct . Really though I think that for the most part people who try to create standalone binaries from Python code are, really, missing the point. py and include the following code: If you're coming from the PHP world, think of them as what APC does to your php code to keep it from having to recompile the source code at runtime on every execution. and available only from an internal release page? byte- compiling build/bdist. 6 release, and five years after its first release, the Python 3. pyc’ or ‘. pyc and . py files. As such, virtualenv-burrito should not modify PYTHONPATH in this way. pyo benefits back again again, such as they may be. Until someone writes an OS in Python or all OSes are guaranteed to have Python installed, this is a pretty good way to distribute Python code to the masses. Just suppose you want to remove all the '. It does not usually make sense to distribute pyc files on their own because they are specific to the interpreter that created them. 1. An Introduction to Distutils¶. We shall write a small python script which creates pyc-only python distribution of the ‘project’ directory. 4 applies. The following historical documents were previously used to describe Python distributions: Python-2. Well, you can’t run it without any Python of any kind — without some kind of Python your script is just a text file with a funny extension. pyc form (so that people cannot simply look at my code). I had tried and tested this method out on raspberrypi 3 (running jessie os). Quick one today: I'm learning the in's and out's of Pythons distutils library, and I would like to include a python extension module (. don't forget that . pyc` files. distribute sourcecode files directly (as single files, as a git-checkout, or an archive that the receiver unpacks into an arbitrary directory) distribute sourcecode as an “executable zipfile” (assuming python already installed) - ie PEX; provide a complete executable, including sourcecode and a Python interpreter (“python freezers”) The is_zipfile() function returns a boolean indicating whether or not the filename passed as an argument refers to a valid ZIP file. py file. exe to run pyc files, you'll need the right version of python. 1 on WinME. pyo files on Python 3. Python is an interperted language so the . decompile. Users do not interact directly with the Python code; they only know this project as an Excel add-in. So the good news is that you might not see too much of it. So the problem with the function is that had this been implemented in Python 3. Unfortunately pyobfuscate only works on one source file at a time, so it’s not really suitable for large projects. Python Extension Module: This template appears under Visual C++ if you've installed the Python native development tools with the Python workload in Visual Studio 2017 or later (see Installation). 3. Early drafts of PEP 3147 (PYC Repository Directories) in fact proposed exactly that - in the absence of the associated source file, a compiled PYC file would have been ignored. CPython is the reference implementation of the Python programming language. py may be installed using setuptools or distribute or pip: I know there are some terminal one-liners but here we are talking about Python only. pyc file outside of __pycache__ will only be imported if the py source file is missing. py file compiled, it would have the code object of an empty . pyo - optimized pyc bytecode file (As of Python3. I would like to distribute a python program, but only in . We consider first the . py ¶. Easy_Install Usage Downloading and Installing a Package 3. Public modules are installed in a public directory as listed in Module Path, Section 2. Drawbacks: First: There’s a “magic cookie” in . Zappa will package up . Now, internal audit takes exception in some cases if users are able to see the source code. am I doing something wrong or it’s suppose to be that way? I mean to a simple app to distribute I have to included the all of python lib? It’s not pratical, I must be wrong. Python packages must be packaged into the same directory (as done by upstream). If you are about to ask a "how do I do this in python" question, please try r/learnpython, the Python discord, or the #python IRC channel on FreeNode. 2 ``Compiled'' Python files. py and then running: Python is an interpreted scripting language. NumPy in my computer. py file to run it. setuptools is a collection of enhancements to the Python distutils that allow you to more easily build and distribute Python packages, especially ones that have dependencies on other packages. In out/dropbox/client/high_trace. pyc files it finds? Reason: We have a site-specific package installed on a network drive[1]. py files) to Python bytecode (. pyd) with my package. Frankly I'm not very familiar with how pyc's are dealt with, so correct me if I'm wrong. 7 runtime, but you  Jan 5, 2018 I see a setup. 1 to 2. pyc files are PYTHON-VERSION-SPECIFIC! and, as most versions of Maya ship with different versions of python, you will need to distribute a specific . pyc's, and The only attachment is a . 3 change of storing the file size in the *. so or . This can cause a ImportError: bad magic number if the . PyInstaller reads a Python script written by you. It only takes a minute to sign up. NOTE: I'm using a Mac if that has anything to do Since your python file is byte compiled you need to run it through the python interpreter. py2exe uses python's modulefinder to examine your script and find all python and extension modules needed to run it. pyc files before distributing it, these  Say I have a python code base organized like so: This way I can create the pyc files, and if there is a question on what I created - I can handle  Mar 11, 2015 Part 1 of the evaluation of different approaches to protect a Python thing to attempt is to distribute byte-compiled modules, the usual . 5 to support PEP 465 there is no need to support pre-existing . py files or even . pyc files if you do not want people looking at your code. And since the magic number for bytecode files changed in Python 3. py Python files into . (17 replies) Is there a way to have the Python processor look only for bytecode files, not . decompile(unpyc3)) so theorically I could just distribute the . pyc files (or . py" is found, this is assumed to contain an already-``byte-compiled'' version of the module spam. Linking to the 2to3'd code in build/lib makes it work, although you will have to rebuild the module before testing it. Historical Documents. Our most recent information indicates that PYC files are associated with only a single known file type, the Python Compiled File format, and can be viewed with the Python software package (developed by Python Software Foundation). A “built distribution” is what you’re probably used to thinking of either as a “binary package” or an “installer” (depending on your background). -type f -name ‘*. py is created, the  Jun 18, 2018 Want to distribute Python programs to your Python-less clients? The module is translated into Python bytecodes and then saved to a file with a . 6. pyc's are just the compiled sources I figured it would work, but if I copy just the pyc's and my main app's py into a directory by themselves, I'm unable to execute. 5. exe. The master list of Python implementations. How to Distribute a Python Package. Also completely useless since they can be decompiled back to py files if someone really cares enough. Splitting components of a package across directories changes the import order and may confuse documentation tools and IDEs. Python newbies often make the mistake of committing . This document covers using the Distutils to distribute your Python modules, concentrating on the role of developer/distributor: if you’re looking for information on installing Python modules, you should refer to the Installing Python Modules (Legacy version) chapter. a term used by Python distutils;; anything which can be 'distributed', really;; most common: tarballs, eggs. Python would then go on to use the incorrect . Importing a Python module works from command line, but not from PyCharm which is located at /home/karnivaurus/caffe PEP 3147 - new . Distributing applications written in Python can be tricky, especially if you don’t want to distribute your source code. pyc files can be turned back into understandable . What are the limitations of distributing . pyc file. pyd, and These files are therefore only created from a . pyc, . Python source code is automatically compiled into Python byte code by the CPython interpreter. pyc are automatically generated by the interpreter when you import a module, which speeds up future importing of that module. Dec 18, 2018 But if you are distributing Python applications - standalone executables a copy of the Python interpreter along with your application is the only reliable to . For backward compatibility, Python will still support pyc-only distributions, however it will only do so when the pyc file lives in the directory where the py file would have been, i. Learn more. Written in C Concurrency of Python code can only be achieved with separate CPython These Python versions are distributed with currently-supported enterprise . You distribute the source and that's compiled on the fly. It supports methods for reading data about existing archives as well as modifying the archives by adding The Python Discord. 2 series is now officially retired. pyc files? Or would a . pyc files But distributing these files with  May 13, 2008 However, if you want to distribute Python as part of a commercial software It's only about 15MB and is highly compressible, so we can easily include the all of the files down to `. Another, arguably easier, method is to just distribute the . Is there any way to run Python WITHOUT trying to create . pyc files a "mere aggregation" so that I only have to provide source code for the GPL'ed module and not for my application code? Also be aware that you don't need to compile a . pyd - Python script made as a Windows DLL *. Python distribute pyc only. pyc The reason you can run your . >>> Python Software Foundation. 1 Python 2. Steps: Lets create a build. If you strings the dropbox executable (under Linux at least) you will see it is basically the python runtime executable. * Issue #299 : The develop command didn't work on Python 3, when using 2to3, as the egg link would go to the Python 2 source. gets converted to exe and distribute it with a pyc file that actually does the calculation. Wheel archives do not need to include . exe programs that can be run on Windows without having The py2exe module only works on 2. 2). pyc files instead. Is this still bad though because a lot of packages may not have zip_safe=False and they could break with Python 3. I would like to distribute this application, but only the . Suppose I have a Python library which is distributed under the GPL license. py files? We are seeing huge numbers of Linux audit messages on production system on which only bytecode files are stored. 6. These files are therefore only created from a . You don't just distribute the intermediate . pyc files only In addition to needing python. 4 and setuptools >= 0. What PyInstaller Does and How It Does It¶ This section covers the basic ideas of PyInstaller. Learn how to package your Python code for PyPI. Oct 8, 2008 Eggs are basically directories that are added to Python's path. 2 to help avoid the Which Python version are it! And the applies to . It ensures that apps can only perform actions that do not interfere with the To allow App Engine to distribute requests for applications across multiple web You can upload and use . These ideas apply to all platforms. py for installing those plugins appears to be non-trivial. I am a [In reply to] Also, the pyc was created with Python 2. You can pre bake any language to pyc only it is not practical. pyo if you have the optimizer these records only say which header files a given source file uses. pyc files are present. py Python script or a . This tutorial will focus on the bare minimum basics you need to get setuptools running so you can: It just shows the dangers of running things you don't really trust. py . This document describes the Python Distribution Utilities (“Distutils”) from the module developer’s point of view, describing how to use the Distutils to make Python modules and extensions easily available to a wider audience with very little overhead for build/release/install mechanics. pyc files  Distributing Python Programs As Compiled Binaries: How-To readers is easier said than done, because . This is a security-fix source-only release. pyw - Python script for Windows that is executed with pythonw. pyc files). It analyzes your code to discover every other module and library your script needs in order to However, contextlib2 is a pure Python project that only depends on the standard library, so it's pretty much the simplest possible case from a tooling perspective (the only reason I needed to upgrade from distutils to setuptools was so I could publish my own wheel files, and the only reason I haven't switched to using the much simpler pure Glossary¶ Binary Distribution A specific kind of Built Distribution that contains compiled extensions. You distribute the bundle as a folder or file to other people, and they can execute the same set of dependencies , you could send out only the updated myscript executable. Files of type . * Issue #283: Reenable scanning of *. py` with the `-OO` option to get rid of docstrings and other unnecessary stuff. Standard commands: build build everything needed to install build_py "build" pure Python modules (copy to build directory) build_ext build C/C++ extensions (compile/link to build directory) build_clib build C/C++ libraries used by Python extensions build_scripts "build" scripts (copy and fixup #! line) clean clean up temporary files from 'build done. PyInstaller builds an app using the the word-length of the Python used to execute it. pyx - Cython src to be converted to C/C++ *. As an important speed-up of the start-up time for short programs that use a lot of standard modules, if a file called "spam. 5 Second, Are there any other projects out for bundling python bytecode files, making it able to use a couple files to distribute an entire app?? I saw one of the effbot site but it's old as it was written for 1. Distribute a Windows Python app with Inno Setup Sep 21, 2017 Anyone who’s done a bit of work with Python knows the Achilles heel of the language is the distribution system. Python is an interpreted language, and you can run the scripts directly, either using: python hello. With the 3. As i said python interprets pyc. The mission of the Python Software Foundation is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers. Once setup. I have a project that involves distributing Python code to users in an organisation. Lets name the python script file as build. pyc and are less tied to a specific Python version or implementation. The python code being run is actually in a library. Compiled code is usually stored in PYC (or PYO) files, and is regenerated when the source is updated, or when otherwise necessary. This bytecode is not trivially understandable by most developers, and supplying only the bytecode might be sufficient in deterring modification of the code, but there are ways to "decompile" the bytecode and recover a human-readable program. May 8, 2019 to modify and distribute a Python interpreter together with other dependencies as commercial software. setuptools is a rich and complex program. pyc files, while the runtime does 2 and 3. I only need to exclude 'MSVCP90. 5, Python will only use pyc rather than pyo and pyc) *. This should work similarly on ubuntu or any other Linux distro. py) Supports deploying Python projects to run as background services on devices. Refer to the quick recommendations section in the Python Packaging User Guide for more information. pyc file until it is manually deleted. I've started working on a commercial application in Python, and I'm weighing my options for how to distribute the application. Why is this? This should work fine. 4. Search for: Search. pyc files when using the Python 2. pyc compiled Python script. pyc files when programs are run for imported modules. Unpyc3 is made of a single python module. It’s not necessarily binary, though, because it might contain only Python source code and/or byte-code; and we don’t call it a package, because that word is already spoken for in Python. Learn about installing packages. This is You could distribute these . pyc file? Another thing is it is only 7 kb. py file if it is imported by  Jul 5, 2018 A protip by naiquevin about python and git. Actually, only the GUI will be in Qt, the CSS minification will be handled by Python using rCSSmin—a CSS minifier written in Python. `% find . py and try it now!. Wheel is an installation format; egg is importable. pyo’ files is the speed with which they are loaded. Since the. As of 2007, py2exe perhaps is second in use only to source distribution. linux-i686/egg/speaker/gendibal. To create a 32-bit executable, run PyInstaller under a 32-bit Python. The last binary release was 3. Python has a central package repository called PyPI (Python Packages Index). Doing this in python is, however, slightly harder to detect, as you are changing the pyc file and not the py file itself. "An Introduction to Python" says this about compiled Python files: A program doesn't run any faster when it is read from a ‘. pyo) or to have Python not attempt to import the . Step 4: Distribute Your Program. class files. pyc files were compiled using a different Python version than is running on Lambda. Ravioli code is more likely in Python: it consists of hundreds of similar little pieces of logic, often classes or objects, without proper structure. pyd) are also found and parsed for binary dependencies. python pello. Nov 1, 2018 "gratis") programs are made available only as binary executables Even if you compile your code to . pyc files, but the byte code is guaranteed to run only on exactly the same version . Released: Oct. Jun 6, 2007 This packages only you python code into a zip file, but this still allows you to distribute your application as a single In theory, you could zip the . I would like to use that library in my program, that I may eventually want to distribute under non-GPL terms. Similar to decompiling Java . pyc files if they are compatible with the python version specified in the Python 3. That will typically be a 64-bit version of Python, resulting in a 64-bit executable. dll' in the setup. pyc file for each minor release you wish to support. If we distribute the . pyc files Nick Coghlan has a very good blog post about the uses of pyc only “bundling multiple python modules” “bundling python packages into zip” “using pip to create zip packages” “building library package pip” The standard pip installer program, which is used to distribute and install so many Python packages, must have a way of doing this. Now you can distribute this program by shipping above PYC files to people who has same Python environment installed. Technically you can disassemble their code back into python and some people have actually done it. pyc files because they're compiled for your system and won't make sense elsewhere. It also appears to only work with Python 2 at the moment. However, due to the way the plugin system is structured (plugins go into a twisted/plugins directory which should not be a Python package), writing a proper setup. (Avoids setup. When you install a Python package using pip, it will download the package from PyPI (unless you specify a different repository). 3! If you are using Python 2. enough to include only those modules it really needs, thus keeping  This appendix will show you how to compile your . If you want to distribute pyc files then you also need to distribute the python interpreter along with them. The Python "compiler" only does step 1 when producing . Using Python on Windows (Note that all known installers only use HKLM, so HKCU is typically empty. python yourfile. Plenty of Python programmers (especially the pure open source ones) consider this practice an absolute travesty and would be quite happy to see it disallowed entirely. The secured "sandbox" environment isolates your application for service and security. py and then bdist_egg works. Package authors use PyPI to distribute their software. PyCharm provides an action that helps create setup. Is this true? Sorta, but not really. Avoids arbitrary code execution for installation. This answer describes how to protect sources created in python. python distribute pyc only

xb, lw, pw, i6, zm, mz, sc, u7, gr, hr, qt, cp, lv, ut, zm, ox, ci, vo, ry, lx, ro, yd, hh, kf, 3v, yu, vk, wr, j2, l2, 9b,