Skip to main content

some small helpers used in many scripts

Project description

lib_platform

Pypi Status license maintenance jupyter

Build Status Codecov Status Better Code Maintainability snyk security

some convenience functions used in many scripts

supports python 2.7 - python 3.7, pypy and possibly other dialects.

this is also a working example for travis.yml for multi-platform testing :

  • install WINE
  • install python 2.7 on wine 32 Bit
  • install python 2.7 on wine 64 Bit
  • install python 3.7 on wine 32 Bit
  • install python 3.7 on wine 64 Bit
  • run pytest on wine (all Versions mentioned above)
  • run code coverage on wine (all Versions mentioned above)
  • osx Build for Python 2.7, Python 3.7
  • pypy Build for Python 2.7, Python 3.7
  • Windows Build Python 2.7
  • Windows Build Python 3.7
  • build rst documentation with rst_include for github and PyPi

100% code coverage, mypy static type checking, tested under Linux, OsX, Windows and Wine, automatic daily builds and monitoring



Try it Online

You might try it right away in Jupyter Notebook by using the “launch binder” badge, or click here

Installation and Upgrade

From source code:

# normal install
python setup.py install
# test without installing
python setup.py test

via pip latest Release:

# latest Release from pypi
pip install lib_platform

# test without installing
pip install lib_platform --install-option test

via pip latest Development Version:

# upgrade all dependencies regardless of version number (PREFERRED)
pip install --upgrade https://github.com/bitranox/lib_platform/archive/master.zip --upgrade-strategy eager
# normal install
pip install --upgrade https://github.com/bitranox/lib_platform/archive/master.zip
# test without installing
pip install https://github.com/bitranox/lib_platform/archive/master.zip --install-option test

via requirements.txt:

# Insert following line in Your requirements.txt:
# for the latest Release:
lib_platform
# for the latest Development Version :
https://github.com/bitranox/lib_platform/archive/master.zip

# to install and upgrade all modules mentioned in requirements.txt:
pip install --upgrade -r /<path>/requirements.txt

via python:

# for the latest Release
python -m pip install upgrade lib_platform

# for the latest Development Version
python -m pip install upgrade https://github.com/bitranox/lib_platform/archive/master.zip

Basic Usage

>>> import lib_platform

>>> # get system as string
>>> system = lib_platform.system

>>> # bool is_platform_linux
>>> is_platform_linux = lib_platform.is_platform_linux

>>> # bool is_platform_darwin
>>> is_platform_darwin = lib_platform.is_platform_darwin

>>> # bool is_platform_posix
>>> is_platform_posix = lib_platform.is_platform_posix        # either darwin or linux

>>> # bool is_platform_windows
>>> is_platform_windows = lib_platform.is_platform_posix      # also True for windows_xp or windows_wine

>>> # bool is_platform_windows_xp
>>> is_platform_windows_xp = lib_platform.is_platform_windows_xp

>>> # bool is_platform_windows_wine
>>> is_platform_windows_wine = lib_platform.is_platform_windows_wine

>>> # bool is_platform_windows_wine_xp
>>> is_platform_windows_wine_xp = lib_platform.is_platform_windows_wine_xp

>>> # string username lib_platform.username
>>> username = lib_platform.username

>>> # string fqdn hostname
>>> hostname = lib_platform.hostname

>>> # string hostname short
>>> hostname_short = lib_platform.hostname_short

>>> # bool is_python2
>>> is_python2 = lib_platform.is_python2

>>> # bool is_python3
>>> is_python3 = lib_platform.is_python3

>>> # path to userhome
>>> path_userhome = lib_platform.path_userhome

>>> # is user administrator (has user admin rights)
>>> is_user_admin = lib_platform.is_user_admin

Requirements

following modules will be automatically installed :

pytest          # see : https://github.com/pytest-dev/pytest
typing          # see : https://pypi.org/project/typing/
lib_registry    # see: https://pypi.org/project/lib-registry/

Acknowledgements

  • special thanks to “uncle bob” Robert C. Martin, especially for his books on “clean code” and “clean architecture”

Contribute

I would love for you to fork and send me pull request for this project. - please Contribute

License

This software is licensed under the MIT license

Changelog

1.0.3

2019-06-14: add is_user_admin (check for administration rights)

1.0.2

2019-04-28: Documentation Update, minor Fixes in setup.py

1.0.0

2019-03-28: Initial public release, PyPi Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
lib_platform-1.0.3-py3-none-any.whl (5.9 kB) Copy SHA256 hash SHA256 Wheel py3
lib_platform-1.0.3.tar.gz (5.5 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page