PyOxidizer | A modern Python application packaging and distribution tool

 by   indygreg Rust Version: 0.24.0 License: MPL-2.0

kandi X-RAY | PyOxidizer Summary

kandi X-RAY | PyOxidizer Summary

PyOxidizer is a Rust library. PyOxidizer has no bugs, it has no vulnerabilities, it has a Weak Copyleft License and it has medium support. You can download it from GitHub.

PyOxidizer is a utility for producing binaries that embed Python. The over-arching goal of PyOxidizer is to make complex packaging and distribution problems simple so application maintainers can focus on building applications instead of toiling with build systems and packaging tools. PyOxidizer is capable of producing a single file executable - with a copy of Python and all its dependencies statically linked and all resources (like .pyc files) embedded in the executable. You can copy a single executable file to another machine and run a Python application contained within. It just works. PyOxidizer exposes its lower level functionality for embedding self-contained Python interpreters as a tool and software library. So if you don't want to ship executables that only consist of a Python application, you can still use PyOxidizer to e.g. produce a library containing Python suitable for linking in any application or use PyOxidizer's embedding library directly for embedding Python in a larger application. The Oxidizer part of the name comes from Rust: executables produced by PyOxidizer are compiled from Rust and Rust code is responsible for managing the embedded Python interpreter and all its operations. If you don't know Rust, that's OK: PyOxidizer tries to make the existence of Rust nearly invisible to end-users. While solving packaging and distribution problems is the primary goal of PyOxidizer, a side-effect of solving that problem with Rust is that PyOxidizer can serve as a bridge between these two languages. PyOxidizer can be used to easily add a Python interpreter to any Rust project. But the opposite is also true: PyOxidizer can also be used to add Rust to Python. Using PyOxidizer, you could bootstrap a new Rust project which contains an embedded version of Python and your application. Initially, your project is a few lines of Rust that instantiates a Python interpreter and runs Python code. Over time, functionality could be (re)written in Rust and your previously Python-only project could leverage Rust and its diverse ecosystem. Since PyOxidizer abstracts the Python interpreter away, this could all be invisible to end-users: you could rewrite an application from Python to Rust and people may not even know because they never see a libpython, .py files, etc.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              PyOxidizer has a medium active ecosystem.
              It has 4771 star(s) with 201 fork(s). There are 59 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 297 open issues and 232 have been closed. On average issues are closed in 100 days. There are 18 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of PyOxidizer is 0.24.0

            kandi-Quality Quality

              PyOxidizer has no bugs reported.

            kandi-Security Security

              PyOxidizer has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              PyOxidizer is licensed under the MPL-2.0 License. This license is Weak Copyleft.
              Weak Copyleft licenses have some restrictions, but you can use them in commercial projects.

            kandi-Reuse Reuse

              PyOxidizer releases are available to install and integrate.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of PyOxidizer
            Get all kandi verified functions for this library.

            PyOxidizer Key Features

            No Key Features are available at this moment for PyOxidizer.

            PyOxidizer Examples and Code Snippets

            No Code Snippets are available at this moment for PyOxidizer.

            Community Discussions

            QUESTION

            Package my python project into exe file that requires nothing to be installed on customer side
            Asked 2021-Nov-25 at 13:47

            I have developed a python application that records the users' actions on the web using the following packages

            ...

            ANSWER

            Answered 2021-Nov-25 at 13:47

            I have found a solution/workaround

            My application has this line where I am trying to invoke SeleniumBase on the customer side by the following python snippet import os; os.system("sbase mkrec recording.py") which is not possible as the customer does not have seleniumbase on his/her PC

            The solution is as follows:

            1. Copy from your env Python Folder C:\Users\\AppData\Local\Programs\Python\Python38 and paste it inside your project files.

              • The folder is called Python38 as I am working with multiple python versions on my PC, this one is named Python38 as it is python version 3.8.10
            2. Edit the code to be as following

            Source https://stackoverflow.com/questions/70100654

            QUESTION

            Alternative to using __file__ find the binary folder in my python package
            Asked 2020-Feb-02 at 20:01

            I published a library to PyPI ('nmrsim') that has the following structure (edited to only include the relevant files/folders):

            ...

            ANSWER

            Answered 2020-Feb-02 at 20:01

            I found a working solution:

            1. Add an __init__.py to the bin folder.
            2. Import the bin folder as a module, e.g. qm.py will have an 'import nmrsim.bin' statement.
            3. Use importlib.resources.path to create a context manager object:

            Source https://stackoverflow.com/questions/59997347

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install PyOxidizer

            You can download it from GitHub.
            Rust is installed and managed by the rustup tool. Rust has a 6-week rapid release process and supports a great number of platforms, so there are many builds of Rust available at any time. Please refer rust-lang.org for more information.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            Install
          • PyPI

            pip install pyoxidizer

          • CLONE
          • HTTPS

            https://github.com/indygreg/PyOxidizer.git

          • CLI

            gh repo clone indygreg/PyOxidizer

          • sshUrl

            git@github.com:indygreg/PyOxidizer.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link