Skip to main content

Cadence Virtuoso SKILL library

Project description

VIRTUE

GitHub release (latest by date including pre-releases) Conda PyPI GitHub issues PyPI - License

Cadence Virtuoso SKILL++ framework

Features:

  • A standard library of packages with functions for common tasks
  • A test framework modeled after pytest
  • A TOML config file reader and writer
  • A SKILL code packaging system
    • Define SKILL++ modules
    • Create a SKILL++ package from a set of modules
    • Import modules into a SKILL++ environment using the top-level "Import" table
  • Support for SKILL environment management using Python environments with Conda and Pip
  • Supports seamless execution of SKILL from Python using SkillBridge

Example Test File

Note the package imports at the top

let(((Str Import['Str])
     (Test Import['Test])
     (Virtue Import['Virtue])
    )

procedure(Test_emptyp()
    assert(Str->emptyp(""))
    assert(!Str->emptyp("test"))
)

procedure(Test_str2bool()
    assert(Str->str2bool("true"))
    assert(Str->str2bool("TRUE"))
    assert(!Str->str2bool("false"))
)

procedure(Test_str2bool_error()
    assert(!errset(Str->str2bool("Nothing")))
)

Test->RunFile(list(nil
  'Test_emptyp Test_emptyp
  'Test_str2bool Test_str2bool
  'Test_str2bool_error Test_str2bool_error
  )
  ?filepath Virtue->GetCurrentFilePath()
)

)

Prints out the following when ran in the CIW:

FILE: /path/to/file/test_Str.ils
  passed: Test_emptyp
  passed: Test_str2bool
  passed: Test_str2bool_error
3 / 3 tests passed

Installation

Virtue requires Python >= 3.7 and can be installed using several methods:

  • Conda
  • Pip
  • From source

See the installation instructions in the documentation for detailed instructions.

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

virtue-skill-0.3.1.tar.gz (54.2 kB view hashes)

Uploaded Source

Built Distribution

virtue_skill-0.3.1-py3-none-any.whl (31.8 kB view hashes)

Uploaded Python 3

Supported by

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