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.4.tar.gz (306.1 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.4-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vdct2template-1.0.4.tar.gz
  • Upload date:
  • Size: 306.1 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.4.tar.gz
Algorithm Hash digest
SHA256 eac2625348e381f67275c9c5de30f800ba52fba89960eadb893b2bc32e3f7975
MD5 7cf75ebc20aec41d5cc366ce26a551d3
BLAKE2b-256 d03d81422a1bcd13ae55f714a8fe10d99a8ecd3fbe23075e7103c7799488ff44

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vdct2template-1.0.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9f38c11ec1df557c7346223f8253ae72fc7d6ac0d3b5bccde603027b9bae1848
MD5 8d67a4bc25eb7392ac6c632cab1988f3
BLAKE2b-256 1fb2074c6cf3c88703cef7fbe7a8bd22190fcab62c8a0f94bc4669c14c57f2c9

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