scons build system extension
Project description
// If you are reading this in plaintext or on PyPi, checkout the rendered version
// at https://gitlab.dev.ifs.hsr.ch/ifs/sconsider/blob/master/README.adoc
== SConsider
https://gitlab.dev.ifs.hsr.ch/ifs/sconsider[SConsider] is a https://scons.org[SCons] extension to provide a recursive target detection and dependency handling mechanism.
Instead of manually tracking locations of dependent projects and files, https://gitlab.dev.ifs.hsr.ch/ifs/sconsider[SConsider] will scan your directory tree for `*.sconsider` files and interpret the setting for building up the _package_ and it’s _targets_ during a later phase.
To reference a _target_ from another _package_, you can simply reference it like `SomePackage.TargetA`.
=== Install the development version into your virtualenv
Please check the https://packaging.python.org/distributing/#working-in-development-mode[packaging] information to learn more about this topic.
==== Install
The following command installs a development version into the current virtualenv: `pip install --editable .`
If you want to omit installing dependencies, add `--no-deps` to the command.
Alternatively you can use the _old style_ command: `python setup.py develop`
==== Uninstall
To uninstall a previously installed editable version use: `pip uninstall sconsider`
In case you used the _old style_ command, you need to use the following command: `python setup.py develop --uninstall`
=== Running tests
I recommend using http://tox.testrun.org/[tox] to execute the tests as it properly sets up the right environment.
To see a list of available test environment to execute, list them using `tox -l` and either
* run the default environment(s) `tox`
* run a specific environment `tox -e some-env`
=== Create a source/wheel package
The http://python-packaging-user-guide.readthedocs.org/en/latest/tutorial.html[packaging guide] will show you how to deploy a package and a short http://wheel.readthedocs.org/en/latest[guide on wheels] will explain you what wheels are.
Creating a wheel package is also handled by http://tox.testrun.org/[tox] and the corresponding environment is `wheel`.
It will create the wheel package and if you additionally want to get a source tarball, you can add `sdist` as argument to tox like: `tox -e wheel sdist`
=== (Test-) Upload to pypi
A specific http://tox.testrun.org/[tox] environment `upload` exists in link:tox.ini#L96[tox.ini] which can be used to either https://test.pypi.org/legacy/[test upload] the package or to finally upload it to https://pypi.org/pypi[pypi].
More on this can be found https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html[in this thread] and in the https://packaging.python.org/guides/using-testpypi/#using-t[python packaging docu].
In order to run this environment, a `~/.pypirc` containing at least the following sections must exist and you need to register on both sites:
[source,ini]
----
[distutils]
index-servers =
pypi
testpypi
[pypi]
#recommended to leave default
#repository:https://pypi.org/pypi
username:MyPypiUserName
password:MyPypiPass
[testpypi]
repository:https://test.pypi.org/legacy/
username:MyTestpypiUserName
password:MyTestpypiPass
----
Issue the following command to test the package, `testpypi` is the default upload location:
tox -e upload
or use the following to finally upload it to https://pypi.org/pypi[pypi]:
PYPI_REPO_NAME=pypi tox -e upload
To use a different https://pypi.org/pypi[pypi] `rc` file, use `PYPIRC_LOCATION=/path/to/pypirc` prefix to the previous commands.
=== Overview of available `setup.py` commands
To get an overview of available commands use:
python setup.py --help-commands
Help regarding a specific command can be retrieved using:
python setup.py <command> --help
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
SConsider-0.3.21.tar.gz
(141.3 kB
view hashes)
Built Distribution
SConsider-0.3.21-py2-none-any.whl
(159.3 kB
view hashes)
Close
Hashes for SConsider-0.3.21-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eec9dab3358d2c4443ee3cf9538aeeca7f3729f80ea62fc28722a304003f84c7 |
|
MD5 | e30fa9dcce277f18bf8c9eb71aec2f89 |
|
BLAKE2b-256 | e83b8da913326c883b56ff4a460b5b02fa0bcbdd292ba0e5d17c5c7fab2132c0 |