JonasKs / aioci

Python Bindings for Cisco ACI REST API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

aioci

aioci was a proof of concept fork of pyaci, with typing, asyncio and PEP8 in mind.

You can read more about it in the original documentation

Work to be done:

  • rewrite to be more pythonic
    • function names should be up(), .json, .dn, .parent and not Up(), .Json, .Dn, .Parent
    • files should be formatted by black
  • implement typing
    • typing for configurable objects
      • Automatically generate stub file (see scripts/)
    • typing for all objects*
  • remove clutter, such as scripts for generating meta, flask implementations etc.
  • rewrite tests from nose / nosetests to pytest
  • rewrite to asyncio
    • requests to httpx / aiohttp
    • websocket and threading -> websockets / aiohttp

*Only configurable objects has types at the moment. This is due to the 2.6mb cap PyCharm has on file-inspection. The stub file (aioci/core.pyi) generated for all objects is about 8.6mb, compared to the ~1mb with only configurable objects. All objects could be implemented by updating PyCharm intellisense max filesize to 10mb (idea.max.intellisense.filesize=10000000), but that will not be done until it is needed.
Another idea could be to utilize imports differently, but I have not experienced with this yet. See docs

About

Python Bindings for Cisco ACI REST API

License:Apache License 2.0


Languages

Language:Python 100.0%