Skip to main content

The 'pysourceinfo' package provides utilities for simplified gain of runtime information related to source code locations. The information is mainly based on 'inspect', butextended where required.

Project description

pysourceinfo
==============

The *pysourceinfo* package provides basic runtime information on executed
sourcefiles based on *inspect*, *sys*, *os*, and additional sources.
The covered objects include packages, modules/files and functions/methods/scripts.
::


+--------------------------------------------------------+
| pysourceinfo |
+--------------------------------------------------------+
| | | |
V V V V
+----------+ +---------+ +---------+ +----------+
| inspect | | sys | | os | | dis |
+----------+ +---------+ +---------+ +----------+


The The *pysourceinfo* package provides the modules:

* *pysourceinfo.fileinfo* - [File System Names](https://pythonhosted.org/pysourceinfo/namebinding.html#FILENAMEBINDING)

* *pysourceinfo.objectinfo* - [Object Identifier](https://pythonhosted.org/pysourceinfo/namebinding.html#OBJECTNAMEBINDING)

* *pysourceinfo.bininfo* - [Compiled Binaries](https://pythonhosted.org/pysourceinfo/namebinding.html#OBJECTNAMEBINDING)

* *pysourceinfo.infolists* - [Sets and Entities](https://pythonhosted.org/pysourceinfo/namebinding.html#SETSANDENTITIES)

* *pysourceinfo.helper* - [Helper](https://pythonhosted.org/pysourceinfo/helper.html#)

The extension packackage *stackinfo* provides for object addresses within modules - Object Identifier OID.

* *stackinfo* - *PyStackInfo* \[[doc](https://pythonhosted.org/pystackinfo/)] \[[src](https://pypi.python.org/pypi/pystackinfo/)]

The old interface is now deprecated, kept for some releases for compatibility:

* *pysourceinfo.PySourceInfo* - deprecated old module for compatibility, going to be canceled


For code examples refer to the source package 'pysourceinfo.UseCases' and 'pysourceinfo.tests'.

**Downloads**:

* Sourceforge.net: https://sourceforge.net/projects/pysourceinfo/files/

* Github: https://github.com/ArnoCan/pysourceinfo/

**Online documentation**:

* https://pypi.python.org/pypi/pysourceinfo/

* https://pythonhosted.org/pysourceinfo/

setup.py
--------

The installer adds a few options to the standard setuptools options.

* *build_doc*: Creates *Sphinx* based documentation with embeded javadoc-style API documentation by *Epydoc*, html only.

* *build_sphinx*: Creates Sphinx part of the documentation as standalone html. Calls 'callDocSphinx.sh'.

* *build_epydoc*: Creates Epydoc part of the documentation as standalone html.

* *install_project_doc*: Install a local copy into the doc directory of the project.

* *instal_doc*: Install a local copy of the previously build documents in accordance to PEP-370.

* *test*: Runs PyUnit tests by discovery.

* *usecase*: Runs PyUnit tests on UseCases subdirectory by discovery.


* *--help-pysourceinfo*: Displays this help.

* *--no-install-required*: Suppresses installation dependency checks, requires appropriate PYTHONPATH.

* *--offline*: Sets online dependencies to offline, or ignores online dependencies.

* *--exit*: Exit 'setup.py'.


After successful installation the 'selftest' verifies basic checks by:

*pysourceinfo --selftest*

with the exit value '0' when OK.

The option '-v' raises the degree of verbosity for inspection

*pysourceinfo --selftest -v -v -v -v*


Project Data
------------

* PROJECT: 'pysourceinfo'

* MISSION: Extend the standard PyUnit package for arbitrary ExecUnits.

* VERSION: 00.01

* RELEASE: 00.01.022

* STATUS: alpha

* AUTHOR: Arno-Can Uestuensoez

* COPYRIGHT: Copyright (C) 2010,2011,2015-2017 Arno-Can Uestuensoez @Ingenieurbuero Arno-Can Uestuensoez

* LICENSE: Artistic-License-2.0 + Forced-Fairplay-Constraints
Refer to enclose documents:

* ArtisticLicense20.html - for base license: Artistic-License-2.0

* licenses-amendments.txt - for amendments: Forced-Fairplay-Constraints

VERSIONS and RELEASES
---------------------

**Planned Releases:**

* RELEASE: 00.00.00x - Pre-Alpha: Extraction of the features from hard-coded application into a reusable package.

* RELEASE: 00.01.00x - Alpha: Completion of basic features.

* RELEASE: 00.02.00x - Alpha: Completion of features, stable interface.

* RELEASE: 00.03.00x - Beta: Accomplish test cases for medium to high complexity.

* RELEASE: 00.04.00x - Production: First production release.

* RELEASE: 00.05.00x - Production: Various performance enhancements.


**Current Release: 00.01.022 - Alpha:**

Python support:

* Standard Python(CPython) - Python2.7, and Python3.5+

* PyPy - 5.10+ - Python2.7+, and Python3.5+

OS-Support:

* Linux: Fedora, CentOS-6, CentOS-7, Debian-9, RHEL-6, RHEL-7 - others should work, Python-Release

* Windows: Win7, Win10 - others see Cygwin

* Mac-OS: Snow Leopard - others should work too.

* Cygwin: 2.874/64 bit - 32bit should just work

* BSD: OpenBSD-6 - others should work

* Raspbian: on RaspberryPI(2,3), Asus-Tinker-Board

* OpenWRT: on RaspberryPI(2)

Major Changes:

* Python2.6 support dropped.

* Python3.5+ support introduced.

* PyPy tests added.

* Changed module structure and fitting names into overall category based naming schema.

* Split more stack related parts into package *PyStackInfo* \[[doc](https://pythonhosted.org/pystackinfo/)] \[[src](https://pypi.python.org/pypi/pystackinfo/)]

* Added special support for decorators.

* Added support for some special cases of Python syntax elements, e.g. support of nested-classes.

* Added several new functions.

* Enhanced documentation
nn

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

pysourceinfo-0.1.23.tar.gz (27.4 kB view details)

Uploaded Source

File details

Details for the file pysourceinfo-0.1.23.tar.gz.

File metadata

  • Download URL: pysourceinfo-0.1.23.tar.gz
  • Upload date:
  • Size: 27.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pysourceinfo-0.1.23.tar.gz
Algorithm Hash digest
SHA256 eaae5d89bc830c82c5631134165204f0611936985513cc489b4c258e1abdd9ff
MD5 3831b6ce6d6ef69e88eda0c261ca9792
BLAKE2b-256 9d610e0dcf7afbc747e5c7cc58063e149456ce53098791e7e63b39766c5ae36b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page