{"id":21733,"library":"pyats-contrib","title":"pyATS Contrib","description":"A collection of community-contributed extensions for the Cisco pyATS framework, including additional libraries, parsers, triggers, and utilities for network testing and automation. Current version: 26.3. Released monthly alongside pyATS core.","status":"active","version":"26.3","language":"python","source_language":"en","source_url":"https://github.com/CiscoTestAutomation/pyats-contrib","tags":["cisco","network-testing","automation","pyats"],"install":[{"cmd":"pip install pyats-contrib","lang":"bash","label":"default"}],"dependencies":[{"reason":"Core pyATS framework required for pyats-contrib to function.","package":"pyats","optional":false},{"reason":"Used by many contrib modules for test jobs.","package":"pyats.aetest","optional":false}],"imports":[{"note":"pyats-contrib is installed as pyats.contrib package; importing directly from 'contrib' is incorrect.","wrong":"from contrib import <module>","symbol":"contrib_library","correct":"from pyats.contrib import <module>"},{"note":"EIGRP parser is under pyats.contrib.eigrp, not pyats.eigrp.","wrong":"from pyats.eigrp import EIGRP","symbol":"eigrp_lib","correct":"from pyats.contrib.eigrp import EIGRP"}],"quickstart":{"code":"from pyats.contrib.eigrp import EIGRP\n\neigrp = EIGRP()\nresult = eigrp.parse('show ip eigrp neighbors')\nprint(result)","lang":"python","description":"Parse EIGRP neighbors using the contrib library."},"warnings":[{"fix":"Ensure pyats and pyats-contrib versions match: pip install 'pyats==26.3' 'pyats-contrib==26.3'","message":"pyATS 26.x requires pyats-contrib 26.x. Mixing major versions will cause import errors or runtime crashes.","severity":"breaking","affected_versions":"26.0 and above"},{"fix":"Always import pyats.aetest before using contrib modules: from pyats import aetest","message":"Many contrib modules (e.g., parsers, triggers) depend on pyats.aetest. Failing to import aetest first may cause cryptic AttributeErrors.","severity":"gotcha","affected_versions":"all"},{"fix":"Replace 'from pyats.contrib import contrib_utils' with 'from pyats import utils'","message":"The 'contrib_utils' module is deprecated in 26.3 and will be removed in a future release. Use 'pyats.utils' instead.","severity":"deprecated","affected_versions":"26.3"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use 'from pyats.contrib.eigrp import EIGRP' instead of 'from pyats.contrib import EIGRP'","cause":"The EIGRP parser is in a submodule pyats.contrib.eigrp, not directly in pyats.contrib.","error":"ImportError: cannot import name 'EIGRP' from 'pyats.contrib'"},{"fix":"Import triggers explicitly: 'from pyats.contrib.triggers import some_trigger'","cause":"Triggers are not automatically imported; you must import the specific trigger submodule.","error":"AttributeError: module 'pyats.contrib' has no attribute 'triggers'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}