Skip to main content

CI Coverage PyPI License

vdct2template

Converts EPICS vdct templates to pure msi compatible EPICS db templates

This tool is designed to modify an EPICS support module in order to remove its dependency on the vdct tool. This is useful for support modules that we want to build with the upstream vanilla EPICS base that does not include vdct.

What Where
Source https://github.com/epics-containers/vdct2template
PyPI pip install vdct2template
Releases https://github.com/epics-containers/vdct2template/releases

Installation

To install the latest release from PyPI, create a virtual environment and pip install like this:

python -m venv venv
source venv/bin/activate

pip install vdct2template

Usage

$ vdct2template --help
                                                                                          
 Usage: vdct2template [OPTIONS] FOLDER                                                    
                                                                                          
                          VDCT to template conversion function.

 This function assumes that all referenced VDCT files in the expand() blocks will be   
    in the same folder.                                                                   
 We can use the builder.py file to check for direct references to template files Use   
    --no-use-builder to disable this feature. Direct references to a template file is an  
    error because we need to modify all macro names to add a _ prefix in templated files. 
 Files referenced in expand() blocks will have their macro names updated to all have a 
    _ prefix, because MSI does not support substituting a macro with it's own name and    
    passing a default. This is a workaround to that limitation.                           
 The original expands() block is replaced with a series of substitute MSI directives   
    and an include MSI directive.                                                         
 The resulting set of templates can be expanded natively by MSI without the need for   
    VDCT.                                                                                 
 The DB files created by such an expansion should be equivalent to the original VDCT   
    generated ones.                                                                       

╭─ Arguments ────────────────────────────────────────────────────────────────────────────╮
│ *    folder      DIRECTORY  folder of vdb files to convert to template files.          │
│                             [default: None]                                            │
│                             [required]                                                 │
╰────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────────────────╮
│ --version                                         Print the version and exit           │
│ --use-builder           --no-use-builder          Use the builder.py file to look for  │
│                                                   direct references to template files. │
│                                                   [default: use-builder]               │
│ --builder                                   FILE  Path to the builder file.            │
│                                                   [default: None]                      │
│ --help                                            Show this message and exit.          │
╰────────────────────────────────────────────────────────────────────────────────────────╯

Download files

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

Source Distribution

vdct2template-1.0.3.tar.gz (306.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vdct2template-1.0.3-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file vdct2template-1.0.3.tar.gz.

File metadata

  • Download URL: vdct2template-1.0.3.tar.gz
  • Upload date:
  • Size: 306.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vdct2template-1.0.3.tar.gz
Algorithm Hash digest
SHA256 70370c4f8485ccdd6f07416f82b850e6b1d5102b354610590cdb0204dd3f4270
MD5 5d90bf26dccd694bbe31a0ea6ced7b58
BLAKE2b-256 2df1599825189118401ad3f6ea4dea17398bc8e46daf2ebe96d0d5f65e84cb2a

See more details on using hashes here.

File details

Details for the file vdct2template-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: vdct2template-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 17.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vdct2template-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b133fa3cddc4a9de53ac856c2b37dcfd760858b6eda62861012f0eb6ceac5e98
MD5 42913181c6500b8cd81208cbd0230e17
BLAKE2b-256 197f034d516d39c69c893ea526313ee1269f452758c57bb41934b83bc2a4e1d0

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 Sentry Error logging StatusPage Status page