Commit Graph
26 Commits
Author SHA1 Message Date
Mateusz FilipowiczandGitHub ebc01e985b test 2025-02-18 15:49:55 +01:00
Mateusz FilipowiczandGitHub 51d523f334 chore: use input-based bug report template 2025-02-18 15:48:43 +01:00
Mateusz FilipowiczandGitHub 0667fc722a chore: disable blank issues 2025-02-18 15:44:02 +01:00
Mateusz FilipowiczandGitHub b54dbc5e6d chore: add issue templates 2025-02-18 15:36:57 +01:00
Mateusz FilipowiczandGitHub 7432260d3e feat: expose all available actions on all resources through Client (#27) 2025-02-18 10:23:18 +01:00
Mateusz FilipowiczandGitHub 87d0c6e28d feat(experimental): add support for reading and updating all settings (#26) 2025-02-18 09:32:02 +01:00
Mateusz FilipowiczandGitHub 7b35725921 feat(experimental): add support for reading and updating all settings (#25) 2025-02-18 07:43:04 +01:00
Mateusz FilipowiczandGitHub 0e2736fa54 feat: remove deprecated SettingProviderCapabilities (#24) 2025-02-17 17:06:14 +01:00
Mateusz Filipowicz ede158ad33 chore(deps): update golang to 1.23.5 2025-02-17 15:47:19 +01:00
Mateusz FilipowiczandGitHub aa188a6faa feat: add API v2 support by adding APGroup and DNSRecord resource handling with generated code (#23)
* feat: add API v2 support by adding APGroup and DNSRecord resource handling with generated code

* fix tests
2025-02-17 15:39:54 +01:00
Mateusz FilipowiczandGitHub dca894e8e7 feat: use Client interface instead of client struct when interacting with UniFi SDK (#21)
* feat: use Client interface instead of client struct when interacting with UniFi SDK

Breaking change!

* chore: linting

* chore: linting
2025-02-17 09:38:41 +01:00
Mateusz FilipowiczandGitHub fadc5ada8b feat: add client customization option (#20)
* feat: add client customization

* chore: fix linting

* feat: allow excluding client function by resource name
2025-02-16 23:00:05 +01:00
Mateusz FilipowiczandGitHub 5a403dbb39 feat: simplified generated resources code customizations with yaml file config (#17)
* feat: simplified generated code customizations with yaml file config

* chore: apply linting
2025-02-12 09:18:44 +01:00
Mateusz FilipowiczandGitHub bb21419c0e test: add comprehensive testing of codegen (#14) 2025-02-12 00:10:46 +01:00
Mateusz FilipowiczandGitHub 6016a3d34a feat: add code generation for Unifi client interface (#11)
* feat: add code generation for Unifi client interface

* chore: apply linter hints

* chore: add tests

* fix: nondeterministic client function signature due to iteration of map params

* chore: add move version tests

* chore: add more generator tests

* chore: lint
2025-02-11 16:28:29 +01:00
Mateusz Filipowicz c6e20b675c refactor: major refactor of unifi.go to split it into multiple files for cohesiveness and readability.
Even more documentation
2025-02-10 22:59:39 +01:00
Mateusz Filipowicz 473a5d0d5c chore: increase test coverage of unifi 2025-02-10 19:02:30 +01:00
Mateusz FilipowiczandGitHub 35b786277c feat: use sysinfo API for getting system information with fallback to old API (#10)
* feat: use sysinfo API for getting system information with fallback to old API

* chore: apply linting
2025-02-10 18:43:20 +01:00
Mateusz FilipowiczandGitHub 7f5968314d feat: make error handling more verbose and collect more error information from API errors, support API V2 error format (#8)
feat: make error handling more verbose and collect more error information from Unifi Controller, support API V2 error format
2025-02-10 03:03:56 +01:00
Mateusz FilipowiczandGitHub 53bb1a13b9 feat: generate fields validation and use it when sending requests to API (#7)
* feat: generate fields validation and use it when issuing requests to API with soft (default) or hard modes

* chore: apply linter fixes

* feat: enable field validation on int fields

* feat: add validation for ^[\w]+$ fields

* feat: add validation for MAC address fields

* fix: trim wrappers for all comments

* feat: add validation for IPv4, IPv6 and IP(IPv4/IPv6) fields

* feat: add validation for numeric, non-zero based fields

* fix: one of validation can contain dot (.) sign in values

* feat: add second notation of MAC address validation

* fix: one of validation can start with ^( and end with )$

* feat: add option to disable validation and use soft validation by default

* chore: fix test

* docs: add readme about client-side validation
2025-02-09 21:08:21 +01:00
Mateusz Filipowicz 9f4fe33d07 ci: code coverage reporting in PR 2025-02-09 14:24:03 +01:00
Mateusz Filipowicz 6d239a890b ci: enable coverage generation 2025-02-09 14:19:00 +01:00
Mateusz FilipowiczandGitHub c7e81e2b18 feat: add validation of ClientConfig fields for improved data integrity (#5)
* feat: add validation of ClientConfig fields for improved data integrity

* chore: add tests for client config validation
2025-02-09 04:21:15 +01:00
Mateusz FilipowiczandCopilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> 2cfed99cf5 fix: arbitrary file access during archive extraction
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-02-07 17:42:05 +01:00
Mateusz FilipowiczandGitHub 9b82c99bde Merge branch 'paultyng:main' into main 2025-02-04 18:02:30 +01:00
Mateusz FilipowiczandGitHub bee7bea744 feat: improve logging of code generator, including debug log option (#232) 2025-01-02 11:30:34 +11:00