-
v0.0.3 Stable
released this
2026-01-07 18:53:25 +00:00 | 12 commits to main since this releaseThis is a breaking release to clean up some final things for a 1.0.0 release. The biggest changes are
- Import path has changed! This packge is now
nemith.io/netconf. Please update! Do()andExec()now deal with full<rpc-reply>messages. So when decoding custom types you could include the<rpc-reply. For usingencoding/xmlyou can just embednetconf.RPCReplyinto your types, but really it doesn't matter.- There is a new
session.Prepare(*RPC) RPCwhich will clone and add amessage-idif one is missing. - When using the low-level
Do()method you will get back aMessageobject. This is aio.ReadCloserthat MUST BE CLOSED. This means stream is direcly from the underlying transport. This should drastically increase performance and move allocations to the client. For those who don't care there is stillnetconf.Execwhich will inspect<rpc-errors>and decode into your objects usingencoding/xml. - Another side affect of the streaming nature is that you can use any XML library to process the results! Use your favorite xpath or regexp (this is a joke. seriously don't do this)
- RPC have been moved into their own package
nemith.io/netconf/rpcand are no longer methods onSession. Also full RPC coverage for RFC6241 is provided! Open()has been renamed toNewSession()This is to prepare for a pool like session manager with retries, etc.
What's Changed
- build(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 by @dependabot[bot] in https://github.com/nemith/netconf/pull/88
- transport: use uint32 to track chuck length by @nemith in https://github.com/nemith/netconf/pull/91
- Fix inttests using docker-compose instead of docker compose by @nemith in https://github.com/nemith/netconf/pull/93
- build(deps): bump golang.org/x/crypto from 0.30.0 to 0.32.0 by @dependabot[bot] in https://github.com/nemith/netconf/pull/96
- build(deps): bump golang.org/x/crypto from 0.32.0 to 0.33.0 by @dependabot[bot] in https://github.com/nemith/netconf/pull/97
- build(deps): bump golang.org/x/crypto from 0.33.0 to 0.34.0 by @dependabot[bot] in https://github.com/nemith/netconf/pull/98
- build(deps): bump github.com/stretchr/testify from 1.10.0 to 1.11.0 by @dependabot[bot] in https://github.com/nemith/netconf/pull/102
- migrate import path to nemith.io/netconf by @nemith in https://github.com/nemith/netconf/pull/105
- Bump Go to 1.24/1.25 by @nemith in https://github.com/nemith/netconf/pull/106
- chore: bump dependencies by @nemith in https://github.com/nemith/netconf/pull/107
- chore: refactor Framer transport by @nemith in https://github.com/nemith/netconf/pull/108
- chore(transport/ssh): Increase test coverage (+bug fixes) by @nemith in https://github.com/nemith/netconf/pull/109
- chore(transport/tls): Increase test coverage by @nemith in https://github.com/nemith/netconf/pull/110
- feat: Make CapabilitySet public by @nemith in https://github.com/nemith/netconf/pull/111
- feat!: Rework Request/Respose to be lower level + streaming by @nemith in https://github.com/nemith/netconf/pull/112
- refactor!: rename Response->Message and remove Response types by @nemith in https://github.com/nemith/netconf/pull/114
- feat: add custom structured logger support by @nemith in https://github.com/nemith/netconf/pull/115
- bug: fix race on closing recvLoop by @nemith in https://github.com/nemith/netconf/pull/118
- bug: discard logs if a nil logger is provided by @nemith in https://github.com/nemith/netconf/pull/116
- feat: restore notification support using streaming messages by @nemith in https://github.com/nemith/netconf/pull/117
- refactor: rename NotificationHandler -> NotifHandler by @nemith in https://github.com/nemith/netconf/pull/121
- test: add more Session tests and fix TestServer by @nemith in https://github.com/nemith/netconf/pull/120
- feat: add discard-changes rpc call by @nemith in https://github.com/nemith/netconf/pull/122
- fix: don't log warn/errors on connection close after a legit close by @nemith in https://github.com/nemith/netconf/pull/123
- refactor!: rename Open()->NewSession() by @nemith in https://github.com/nemith/netconf/pull/124
- feat: Add hello timeouts by @nemith in https://github.com/nemith/netconf/pull/125
- fix: use a larger maxChunk size when using 64-bit platforms by @nemith in https://github.com/nemith/netconf/pull/126
- fix: add logging when closing transport by @nemith in https://github.com/nemith/netconf/pull/127
- chore: Update README by @nemith in https://github.com/nemith/netconf/pull/128
Full Changelog: https://github.com/nemith/netconf/compare/v0.0.2...v0.0.3
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Import path has changed! This packge is now