ALBA controls meta package
Project description
ALBA synchrotron python meta package
This is ALBA synchrotron python meta package.
Namespaces are one honking great idea -- let's do more of those!
source: The Zen of Python, by Tim Peters
How to create an alba sub-module
Let's say a new high pressure lab has been installed at ALBA which requires specific software. The goal is the user can type:
import alba.hplab
... to have access to ALBA's specific high pressure lab software.
Preparation
In the future there might be a cookie cutter for this. For now we have to bootstrap the project by hand:
- create a directory called
hplab
and enter it. - create a directory called
alba
- create a
alba/__init__.py
file with a single line:
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
It is crucial that the alba/__init__.py
has this precise contents
and no more.
- create a setup.py has usual. Here is a minimal version:
# setup.py
from setuptools import setup, find_packages
setup(
name="alba-hplab",
author="ALBA controls team",
author_email="controls-software@cells.es",
packages=find_packages(),
description="ALBA controls HP Lab software",
version="0.0.1"
)
- create a
alba/hplab
directory. This is where you should put the specific code for ALBA's HP lab.
By now you should have a structure like this
hplab/
├── alba
│ ├── hplab
│ │ └── __init__.py
│ └── __init__.py
└── setup.py
That's it! If you publish your package on pypi you will be able to install your software anywere with:
pip install alba-hplab
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.