A simple module to install Python packages programmatically
Project description
nopip
A simple module to install Python packages programmatically, without needing to use pip
to install nopip
. Useful for quick scripts, testing, or when you want to embed all the requirements of your app into your code.
Usage
Embed all the requirements of your app into your code for simplicity. You can even try importing packages and install them in case of an error:
from nopip import install
try:
from flask import Flask
except:
install.module('Flask==2.2.3', verbose=True)
from flask import Flask
Other examples
install.from_requirements('./requirements.txt', verbose=True)
install.module('requests', verbose=True)
install.modules(['requests==2.5.1', 'beautifulsoup4==4.10.0'], verbose=True)
Installation
There is no need to install nopip
via pip
. Simply copy the nopip
directory to your project, and you're good to go.
If you find it challenging to copy the entire nopip directory, there's an even simpler solution. You can just copy the contents of the __init__.py
file and save it as nopip.py
in your project directory. This way, you can still access and use the nopip functionality with minimal setup.
Note
I'd like to clarify that I don't hate pip
or intend to undermine its value in the Python ecosystem. pip
is an essential tool for managing Python packages and their dependencies. However, I have observed that some people, particularly beginners or those working on very simple applications, might face issues with pip
when trying to set up their environment or resolve dependencies. The nopip
module aims to provide an alternative way to install packages for those specific scenarios where ease of use is a priority. It's important to note that using nopip
is not a substitute for proper dependency management, and it's always recommended to use pip
, pipenv
, or poetry
for production code.
Collaboration
We welcome and appreciate any contributions to improve the nopip module. If you have ideas, suggestions, or bug fixes, feel free to collaborate by following these steps:
- Fork the repository on GitHub (assuming the project is hosted on GitHub).
- Clone your fork locally.
- Create a new branch for your proposed changes. For example, use git checkout -b feature/my-new-feature to create and switch to a new branch called feature/my-new-feature.
- Make your changes in the new branch, and commit them with meaningful commit messages.
- Push your changes to your fork on GitHub.
- Open a pull request on the original repository, describing your proposed changes and why they would be beneficial.
- We will review pull requests on a regular basis and provide feedback. If your changes are accepted, they will be merged into the main repository.
If you encounter any issues or have questions, feel free to open an issue on the GitHub repository, and we'll do our best to address it.
Let's work together to make nopip
even better!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nopip-0.2.1.tar.gz
.
File metadata
- Download URL: nopip-0.2.1.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cef23fdf812c1c7d3bc489792d9ed916630b6c17b1e2eb8f87f43aa1add1d1b5 |
|
MD5 | 2ce67db0a3796ded6a944cefa78a1ba4 |
|
BLAKE2b-256 | 84487450c1b659eff259c9d249c19ad6b3bdb212fe926ee73a77df4404a90b28 |
File details
Details for the file nopip-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: nopip-0.2.1-py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c69857fa9ddea275ea8d2109114d4d77d537aec0335b4723ecd6a0af7689d27 |
|
MD5 | 6f6c21a74d0c794e38d14b985b5eedc1 |
|
BLAKE2b-256 | 8d49b28a8f117b9a61f93e467d82512e15bcdb626c649f3f7ae8011abc889c4d |