Scrapli

Latest version: v2024.1.30

Safety actively analyzes 638819 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 13

2020.03.27

Actual tests (even if they aren't particularly amazing)
Fixed a few bugs
Added an actual README
I even tested it and it does stuff!

2020.03.26

2020.03.21

- lots of readme updates
- regen docs
- makefile adds/tweaks
- totally overhauled tests to hopefully suck less
- added "functional" tests -- scrapli is now tested against all core platforms ++ linux
- improve telnet auth handling
- improve ssh auth handling
- minor channel improvements
- renamed "auth_public_key" -> "auth_private_key" since its actually looking for the... private key...
- some minor priv clean up for the core drivers
- improved on_close method for core drivers
- set telnet username prompts for nxos/junos
- fixed issue that left failed key auth system sessions hanging
- actually running coverage against the core drivers now
- add base configs for vrnetlab functional devices ++ NAPALM to push configs before running tests

2020.03.08

- improve prompt patterns
- add ssh config file example
- examples clean up
- lots of readme changes/improvements
- lots of docstring clean up
- channel now has send_input and send_inputs for singular or plural inputs respectively
- improve unit testing a bit -- more fixtures, try to cover more possible cases
- NetworkDriver is an ABC as it should be now
- few random little bug fixes
- update dev requirement pinned versions
- regen docs

2020.03.05

- improve docs hopefully everywhere basically
- minor improvements to channel reading
- added message to timeout decorator to be more clear why/where things time out
- migrated away from signals (yay for windows i guess) for decorator -- due to systemssh doing things in new procs signal wouldn't work there, new implementation is concurrent futures threads
- added `timeout_exit` to kill connections if timeout occurs (or not)
- a little bit better/more logging especially in decorator (more to go for sure though)
- updated all core drivers to reflect on_open/on_close callabales, removed "exit_command" entirely
- simplified network driver due to moving to on_open/on_close
- modified netowrk driver `send_commands` to only accept a list of commands to send, added `send_command` which only accepts a single command
- due to above change only return a list of responses if using `send_commands` -- if using `send_command` just return a response object
- added exception for keepalive failure -- raised by keepalive thread if/when keepalives are missed for > 3x the keepalive interval -- this may need to get changed/tweaked in the future and/or add a `keepalive_exit` flag like the timeout
- `textfsm_parse_output` no longer updates the response object w/ results (in place operation), it now returns results and there is no "structured_result" attribute of the response object
- removed external function validation stuff from helper -- was neat maybe but not necessary for now, on_open/on_close simply accept callables no need to parse a text string to try to import things... could be added back in the future easy enough if it seems useful
- transport base class now has a useful init method that sub classes can super
- transport child classes that create a socket (paramiko/ssh2) now do so via composition instead of inheritance -- mro was just annoying, plus couldnt (easily? at all?) super w/ different args to transport vs socket (didnt look hard, composition seems fine)
- systemssh/telnet transport store channel args needed for authenticaiton (prompt pattern/ansi/return char) as private args now. they are used for initial auth then ignored...
- systemssh ssh args/open cmd improvements
- add keepalive for systemssh/telnet (network only)
- systemssh/telnet store _timeout_ops (channel timeout basically) as a private arg for same reasons as the auth stuff -- timeout authentication things, this is ignored after auth occurs
- systemssh improved pty authentication handling
- driver/driver (scrape) now doesnt store most arguments passed to it in the object itself -- they are instead stored in `_initialization_args` and passed to the channel and transport as needed
- way way way better repr for scrape
- significantly better netmiko compatability setup

2020.02.23

readme updates
add "smoke tests" -- basic helpful scripts i use when making changes
remove unused blocking method from transport
improve auth handling for system ssh
move some things from `scrape` -> `networkdriver` where they make more sense
add transport keepalive support
regen docs

Page 8 of 13

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.