luci-app-pbr: update to 1.2.2-r6
Update luci-app-pbr from 1.2.1-r87 to 1.2.2-r6.
This release bumps compat to 25, fixes split-uplink
WAN6 interface filtering in the rpcd backend, adds
error handling to the status overview widget,
normalizes all README anchor links to kebab-case,
and updates the translation template.
Signed-off-by: Stan Grishin <redacted>
---
- **6 files changed**, +90 / -83 lines (net +7)
- **1 commit**: `
cc43913` —
`luci-app-pbr: update to 1.2.2-r6`
---
- Version bumped from `1.2.1-r87` to `1.2.2-r6`
- URL updated from `github.com/stangri/...` to
`github.com/mossdef-org/...`
- No dependency changes
---
`rpcdCompat` bumped from `24` to `25`.
`get_supported_interfaces()` now filters out the
WAN6 interface in split-uplink configurations so
it does not appear as a policy target in the UI.
Two filter points added:
1. **`_build_ifaces_supported()` callback** —
When iterating netifd interfaces, skips any
interface where `is_split_uplink()` is true
and `is_uplink6()` matches. Prevents WAN6
from being added to the supported list.
2. **Firewall zone enumeration loop** — Same
check applied when iterating interfaces from
the firewall WAN zone. Skips WAN6 via
`continue` before the `is_supported_interface`
check.
**Impact:** In split-uplink setups (separate
interfaces for IPv4 and IPv6 uplinks), the WAN6
interface no longer appears in the policy target
dropdown. Policies should target the WAN4
interface; IPv6 routing follows automatically.
---
**Compat bumps:**
- `LuciCompat`: `24` → `25`
- `ReadmeCompat`: `1.2.1` → `1.2.2`
**README anchor link fixes (2 locations):**
- `#WarningMessagesDetails` →
`#warning-messages-details`
- `#ErrorMessagesDetails` →
`#error-messages-details`
**README anchor link fixes (10 locations):**
| Old Anchor | New Anchor |
|-------------------------------|-------------------------------|
| `#ServiceConfigurationSettings` | `#service-configuration-settings` |
| `#StrictEnforcement` | `#strict-enforcement` |
| `#UseResolversSetSupport` | `#use-resolvers-set-support` |
| `#WireGuardServerUseCases` (×2) | `#wireguard-server-use-cases` |
| `#IgnoreTarget` | `#ignore-target` |
| `#PolicyOptions` | `#policy-options` |
| `#DNSPolicyOptions` | `#dns-policy-options` |
| `#DSCPTag-BasedPolicies` | `#dscp-tag-based-policies` |
| `#CustomUserFiles` | `#custom-user-files` |
All anchors converted from PascalCase to
kebab-case to match the current README heading
format.
**Error handling added:**
- Entire `render()` function body wrapped in
`try/catch` block
- On exception, renders a yellow warning banner:
`"Unable to retrieve PBR status"` instead of
crashing the status page
- Prevents unhandled errors from breaking the
LuCI overview when PBR data is malformed or
unavailable
**Data access simplified:**
- Old: Verbose fallback object with explicit null
fields (`enabled: null`, `running: null`,
`version: null`, `gateways: null`, etc.)
- New: `var reply = (data[0] && data[0][pkg.Name])`
`|| {};` — single-line fallback to empty object
- All downstream property access already handles
undefined values, making the verbose defaults
unnecessary
**No behavioral changes** to the status table
rendering logic itself (Active/Inactive/Disabled
states, iptables/nft/fw4 mode detection).
---
**1 new string added:**
- `"Unable to retrieve %s status"` — Error
fallback message for the status overview widget
**0 strings removed, 0 strings reworded.**
All other changes are source line number updates
from the `72_pbr.js` refactoring. Existing
translations remain valid; translators only need
to handle the 1 new entry.
---
- `rpcdCompat` bumped from `24` to `25`
- `LuciCompat` bumped from `24` to `25`
- Requires companion `pbr` package >= 1.2.2
(for `is_split_uplink()` and `is_uplink6()`
functions used by the rpcd backend)
- All existing RPC methods preserved; no new
methods added
- All existing UI functionality preserved
Signed-off-by: Stan Grishin <redacted>