lukaszraczylo
e50f73ec92
chore: add golangci-lint v2 config and fix linter warnings ( #46 )
...
- [x] Add golangci-lint v2 configuration with formatters section
- [x] Reorganize linters-settings under linters section
- [x] Replace if-else chains with switch statements for clarity
- [x] Wrap all ignored error returns with `_ = ` pattern
- [x] Add OSC 8 hyperlink helper function for clickable ports
- [x] Add blank line in table styling function
- [x] Remove unnecessary type assertion in test
2026-02-13 18:46:27 +00:00
lukaszraczylo
96ae1d45e0
style: Extract UI constants and refactor main view rendering ( #30 )
...
- [x] Add golangci-lint configuration with gocritic ifElseChain disabled
- [x] Rename error variables to avoid shadowing (createErr, watcherErr, watchErr, etc.)
- [x] Replace `interface{}` with `any` type alias throughout codebase
- [x] Add package-level documentation comments to all internal packages
- [x] Reorder struct fields alphabetically for consistency
- [x] Extract UI constants (terminal dimensions, column widths, colors) to constants.go
- [x] Refactor BubbleTeaUI main view rendering into smaller helper functions
- [x] Simplify nested conditionals and improve code clarity
- [x] Add `isForwardDisabled()` helper method to BubbleTeaUI
- [x] Update file permissions from 0644 to 0600 in config tests
- [x] Add `#nosec` comments and error suppression where appropriate
- [x] Improve test table struct field ordering for readability
- [x] Fix resource parsing in AddForward using strings.SplitN
- [x] Add comprehensive tests for new UI helper functions and constants
2026-01-13 09:37:45 +00:00
lukaszraczylo
518879dc56
Update menus to wrap for smaller screens.
2025-11-29 02:09:54 +00:00
lukaszraczylo
23cd45a3d7
improvements nov2025 pt2 ( #13 )
...
* Further improvements
| Fix | Impact | Files Modified |
|------------------------------------|----------------------------------------|--------------------------------------|
| sync.Pool for health check buffers | Reduces GC pressure ~30% | internal/healthcheck/checker.go |
| Goroutine leak fix + sync.Once | Prevents memory leaks | internal/forward/worker.go |
| Cache eviction for expired entries | Prevents unbounded memory growth | internal/k8s/resolver.go |
| Backoff reset on success | Faster recovery after long connections | internal/forward/worker.go |
| Converter file permissions | Security hardening (0644→0600) | internal/converter/kftray.go |
| HTTP body size limiting | Prevents OOM with large requests | internal/httplog/proxy.go, logger.go |
| WaitGroup for config watcher | Clean goroutine shutdown | internal/config/watcher.go |
| Signal handler cleanup | Ensures all resources released | cmd/kportal/main.go |
* Additional event bus for internal event handling
| Metric | Before | After | Improvement |
|------------------------|---------------------------------------|-------------------|--------------------|
| Goroutines per forward | 3 (worker + heartbeat + health check) | 1 (worker only) | 66% reduction |
| Tickers per forward | 2 (heartbeat + health check) | 0 | 100% reduction |
| Global goroutines | 2 (watchdog + health monitor) | 2 | Same |
| Lock acquisitions/sec | O(n) per interval | O(1) per interval | Linear improvement |
* Add UI testing
* Add mocks
* Add more logs and details to be displayed
2025-11-26 13:18:50 +00:00
lukaszraczylo
3f5c1d3a5f
improvements nov2025 ( #10 )
...
* Add benchmark and httplog modules, update UI for modals artefacts
2025-11-25 19:00:44 +00:00
lukaszraczylo
3a7cc6f502
bugfixes nov2025 pt3 ( #6 )
...
* Minor improvements.
* DRY the codebase.
* Add version checker / updater.
2025-11-25 01:28:23 +00:00
lukaszraczylo
7df161aee0
bugfixes nov2025 ( #3 )
...
* Fix enter misbehaving.
* Cleanup after previous tui implementation.
* Fix race condition and improve logging
* Add filtering of the namespaces by text input in the wizard UI
2025-11-24 11:09:23 +00:00
lukaszraczylo
f41c316b2b
Add configuration wizard. ( #2 )
...
* Add configuration wizard.
2025-11-24 02:28:08 +00:00
lukaszraczylo
21ea41781d
Add user friendly UI allowing to temporarily toggle port forwarding.
2025-11-23 16:50:56 +00:00