The Docs are a work in progress. New sections and improvements are being worked on.

Portmaster Changelog

Portmaster consists of many individual components that work together. The "primary" version number - the one you see everywhere - is the version of the Portmaster Core Service - simply called "Portmaster" below.

Usually, the other components are released together with a new version number of the Portmaster Core Service. Sometimes, however, minor changes or bug fixes are released without a version update of the Portmaster Core Service in order to get them out faster.

Current Stable Version: v1.0.7 Current Beta Version: v1.0.9

How can I use Beta?


Portmaster v1.0.9

Current Beta
  • Update SPN
  • Warn when query fails
  • Improve network proximity thresholds
  • Fix traceroute location checking
Component: SPN v0.6.4
  • Fix findnearest test
  • Fix connect op in/out data histogram
  • Add connect op TTCR and TTFB metrics
  • Improve home hub errors and home hub routing handling
  • Lower destination cost for better balance in routing
  • Randomize top nearby pins and routes for load balancing
  • Switch to cost-based calculation for finding nearest pins, include more cost data
  • Use new ping op for pinging Home Hub
  • Fix hub comparison for superseding


Portmaster v1.0.8

  • Update SPN + deps
  • Move log cleaner from core to base module
Component: SPN v0.6.3
  • Initialize and reset slot pace stats correctly
  • Improve unit scheduler debugging
  • Test IPv4 and IPv6 connectivity separately
  • Simplify and stabilize unit scheduling
  • Increase the timeout for initial auth and ping checks
  • Merge multiple bootstrap transports from same hub
  • Build hub for arm64
  • Avoid only Hub, not full country if connection fails
  • Add timeout to DFQ flush
  • Measure less often
  • Fix handling of 1 byte crane messages


Portmaster v1.0.7

Current Stable


  • Bump core version
  • Update deps (including SPN)
  • Add technical introduction to Portmaster README
Component: SPN v0.6.2
  • Bump hub version
  • Update deps
  • Update map intel test file
  • Add reachability checking using new ping operation
  • Add ping operation
  • Fix unit leak in capacity operation
  • Fix crane context usage
  • Improve unit scheduling debug messages
  • Do not deliver msgs to stopped operations
  • Raise default hub log level to warning


Portmaster v1.0.6

  • Disable prompting when re-evaluating connections
  • Send DNS queries to special domain only to local resolvers
  • Add resolvers in device’s network to LAN resolvers
  • Force resolvers to reconnect after connecting to SPN
  • Android support for getting network addresses and interfaces (#1056)
Component: SPN v0.6.1
  • Update account subscription data
  • Fix advisory rule application
  • Use public docker image for simple testnet
  • Expose SPN connected event
  • Improve invalid device HTTP status
  • Add patrol module to check network connectivity on hubs and react and client
  • Add cli flag for unit scheduler debugging
  • Fix proper shutdown of connect ops
  • Fix 32 bit support and add desktop client config. (#148)


Portmaster v1.0.5

  • Migrate puddle lib to new version
  • Update deps, including SPN

Component: SPN v0.6.0
  • Improve usage of context and timeouts
  • Enable ui module for SPN Hub.
  • Improve naming of Unit methods
  • Implement review suggestions
  • Fix rate limiting
  • Improve unit scheduler
  • Fix new operation init
  • Improve terminal error handling, stick to idiomatic Go
  • Add different scheduling config for clients
  • Fix and improve scheduling config
  • Add unit scheduling metrics
  • Add epochs to unit slot scheduler
  • Give clearance to all units when stopping
  • Add unit leak debugger and fix unit leaks
  • Update connect request tags
  • Remove submit control and improve terminal
  • Apply unit scheduling to remaining operations
  • Fix crane destruction and expansion terminal init
  • Apply new unit scheduling and terminal interfaces to docks
  • Expose unit scheduler state snapshot
  • Improve unit scheduler
  • Improve terminal and terminal bases, including unit handling
  • Improve operation and operation bases
  • Simplify terminal interfacing and sending upstream
  • Apply unit scheduling to terminal and operation bases
  • Move scheduler to struct and improve documentation
  • Add unit: a packet focused scheduling approach


Portmaster v1.0.4

  • Improve rule doc
  • Add update versions debug data
Component: SPN v0.5.8
  • Fix account updating
Component: UI v0.4.5
Current Stable
  • Fix account showing switches


Portmaster v1.0.3

  • Bump core version
  • Update SPN
  • Improve DNS validation regex doc
  • Fix kext service log wording
  • Delete old kext service on startup
  • Merge branch ‘develop’ into fix/doh-failing
  • Better wording for failed DoH request.
  • revert commit pushed by mistake
  • Fix DoH base64 encoding
  • Fix DoH base64 encoding
  • Added shutdown request for kext
  • Allow single character tld (for internal usage)
  • Add support for snap
Component: SPN v0.5.7
  • Only enable SPN after login if it can be used.
  • Fix and improve account messages
  • Improve SPN client bootstrap error messages
  • Notify user when package is about to end
  • Add account view for consistent messages
Component: UI v0.4.4
  • Bump portmaster module version
  • Fix typos and update URLs
  • Update SPN status widget for new account type
  • Add new account messages to account pop up

Component: SPN v0.5.6
  • Add support for feature IDs to account


Portmaster v1.0.2

  • Improve rule help
  • Fix building


Portmaster v1.0.1

  • Improve SPN routing algorithm setting description
  • More efficient verdict update structure
  • fix sending update verdict info
  • fix stopping of the kext service
  • better kext service handling
  • Removed legacy code and refactoring
  • Add safe fallbacks for untrusted home nodes
  • fix slow system calls windows kext
  • Version and update verdict kernel functions
  • Linux reset verdict of individual connections
  • remove kext glue dll from dependencies
  • Refactoring and more comments
  • Update itsfoss link to newest feature
  • remove the need for the glue library (.dll)
Component: SPN v0.5.5
  • Add bigger timeout to golangci-lint CI test
  • Fix navigator test
  • Improve max delay calculation and documentation
  • Configure microtask threshold
  • Require a trusted home hub when global routing profile requires less than two hops
  • Increase max hops of routing profiles to give more flexibility
  • Expose getting routing profile
  • Expose pin state helpers
  • Fix and improve updating intel data
  • Add API endpoint for importing intel data for testing
  • Remove already logged in check
  • Adapt according to Daniel’s input
  • Update
Component: UI v0.4.3
  • Various improvements for smaller screen sizes. Fix network rating
  • Add default windows icon to ignore list

Component: UI v0.4.2
  • Hide SPN tunnel info for LAN and localhost connections
  • Fix settings not being saved and the SPN feature carousel leaking CSS


Portmaster v1.0.0

  • Bump version to v1.0.0
  • Fix restart button on Windows
Component: Notifier v0.3.5
Current Stable
  • initialize library on startup, lib api update
Component: UI v0.4.1
  • Fix nodejs version for github action
  • Only load app-icon if presentation path is set
  • Fix linting errors and add github action
  • Improve styling of shared “More” dropdown and add “App Settings” link to grouped-by-app row
  • Fix styling of netquery search bar
  • Update side-dash to navigate to app connections and only expand when clicking the chevron
  • Add a “all-done” icon to prompt and notification list if they are empty
  • Fix abort-button not working when editing/creating a new rule
  • Hide app-icon for some special profiles and fix incorrect profile source
  • Fix support page layout changing depending on issue-title length
  • Fix SPN map behaving strange on pan and zoom
  • Do not show path and binary name if they are empty
  • Add tooltips to all main navigation items
  • Fix broken styling of text-input in confirmation dialog used when asking for an email
  • Fix URL query parameter mangling when reloading the current router URL


Portmaster v0.9.11

  • Update unidentified profile name
  • Allow any own local connection
  • Explicitly allow all connections of Portmaster Core Service
  • Use constants for default action values
  • Improve logging
  • Switch to FilterConnection as main decision function
  • Fix profile migration iteration error handling and only warn, not fail
  • Integrate special profiles into regular profile fetching for correct profile udpates
  • Classify unidentified localhost connections as unidentified instead of unsolicited
  • Make restart and shutdown APIs work without module
Component: UI Assets v0.3.1
Current Stable
Component: Notifier v0.3.4
  • Remove security level code
  • Added ActionInvoked check on linux notifications
  • Fix notification event handling

Component: SPN v0.5.4
  • Remove persistent connected notification


Portmaster v0.9.10

  • Check if active profile is outdated before using
  • Improve logging and context usage
  • Use interception config only when ready
  • Use per-user lock file when unlocking
  • Fix fs error handling

Portmaster v0.9.9

  • Add support for cmdline matching and add basic interpreter support
  • Add default icon for Windows services
  • Add migration for profiles
  • Improve profile metadata handling
  • Expose registered process tags via API
  • Check all regex fingerprint matches
  • Improve network tags for external requests
  • Add support for Windows Store tags
  • Use new profile functions in firewall
  • Add first tag handlers for svchost, app image, net
  • Collect env, tags and and matching path for processes
  • Move from LinkedPath to Fingerprints and PresentationPath
  • Fix darwin build
Component: SPN v0.5.3
  • Fix fs error handling
Component: UI v0.4.0
  • Add support to open parent process details
  • Add process details dialog. A bunch of minor improvements and fixes
  • Add support to create and edit profiles and fingerprints. Minor improvements for the v1 release
  • Add SPN feature carousel and multiple fixes


Portmaster v0.9.8

  • replaced snoretoast with wintoast
  • Update SPN dep
  • Update deps
  • Fix rebase error and clean up
  • Allow verdict to change from initial non-allow state
  • Improve use of packet in connection decision making
  • Improve logging
  • Stop tunnels if they are not needed anymore due to verdict change
  • Improve verdict handling and switch to immediate re-evaluation
  • fix array allocation
  • add defer to unlock
  • preallocate array
  • better wording for log
  • Small fixes
  • Refactoring
  • Fixes
  • fix linter errors
  • Windows implementation
  • Removed comments
  • Fix merge error
  • Refactoring
  • Tunnel flag bugfix and refactoring
  • issue new verdict on configuration change
  • Reset connection PoC
Component: SPN v0.5.2
  • Reset SPN exceptions again
  • Add StopTunnel method to TunnelContext
  • Add spn connect event
  • Update portmaster-start in Hub Dockerfile
  • Update deps
  • Add testsuite cmd
  • Expose token zone init
  • Increase default client timeout
Component: Notifier v0.3.3


Portmaster v0.9.7

  • Add per-user locking option to portmaster-start run cmds
  • Improve and fix verification and fixing
  • Start with same verification config on all channels
  • Move all filter/interception config to interception module
  • Add verify cmd to portmaster-start
  • Improve signing with updatemgr
  • Add signature support to updatemgr
  • Enable signature checking in beta and staging release channels
  • Add support for signed updates

Component: UI v0.3.6
  • Don’t group by app by default. Load results chart after the first page has been loaded
  • Show tooltip with allow/block reason when hoving the verdict color indicator. Fixes #298
  • Fix different values for boolean allowed filter. Fixes safing/portmaster#804
  • Fix whitespace break in connection reason. Fixes #287
  • Increase button hit box in network scout and correctly handle developermode
  • Fix SPN account state handling in account details and login page
  • Trim whitespace from ordered list before saving. Fixes #221
  • Add inidcation that sub-filter lists are selected. Fixes #296
  • Fix change detection not being triggered correctly in app-icon
  • Reverse collapse/expand button for SPN hub details
  • Reverse the side-dash button in the navigation
  • Fix scrolling when side-dash overflows the app height
  • Apply user-supplied query in exide-node profile stats
  • Fix dialog styles not being applied correctly
  • Fix sfng-select incorrectly adding an empty option
  • Allow bulk deletion of rules and ask for confirmation. Save on enter. Fixes safing/portmaster#806. fixes #220
  • Decrease polling timeout and use correct command to stop on windows. Fixes #234


Portmaster v0.9.6

  • Add exit code for controlled failures
  • Add search domain info to resolver debug info
  • Fix repeating broadcast notifications
  • Improve incoming rules quick actions
  • Remove default incoming rules
  • Implement review suggestion
  • incoming: force block by default, apply default action and allow LAN per rules
  • Reset connection handling channel when firewall handler is stopped
  • Fix feature links in README
Component: SPN v0.5.1
  • Add docker support for hub
  • Increase UDP read size for now
  • Only start sluice for IPv6 if IPv6 stack is enabled
  • Stop using module management for the hub
  • Build hub without cgo
  • Fail nicely when Hub is misconfigured

Component: UI v0.3.5
  • Add new side-dash and improved SPN page
  • Add another default app icon from Windows to ignore
  • Fix background color for notification and prompt overlays
  • Fix no-prompts/no-notification position and remove max-height of network-activity widget for now
  • Migrate notification and prompt widgets to overlays accessible from the main menu


Portmaster v0.9.5

  • Show update failed notification only after some failed tries
  • Switch to zipfs lib for loading files from a zip
  • Move resolving unbreak filter list IDs to filterlists module
  • Improve logging of loaded intel data
  • Add new geoip metadata fields
  • Set tunneling options for (not) using community nodes
  • Add special Wayland args to Electron on Linux only
Component: SPN v0.5.0
  • Validate stickied Pins and sticky them by profile
  • Improve finding nearest pins with anycast IPs
  • Switch ConnectRequest encoding to CBOR
  • Use global default value for max find matches
  • Enable priority data messages by default
  • Send capacity and latency message with high priority
  • Add new config option: use community nodes

Component: UI App v0.2.5
Current Stable
  • Specifically enable node integration for electron 20+


Portmaster v0.9.4

  • Improve wording of custom filter list setting
  • Disable restarting on failure for UI components
  • Enable WaylandWindowDecorations feature for electron run on wayland
  • Use correct ICMP message for blocking connections in iptables
  • Abort restarts if updated version is rolled back
  • Enable filter list category Unbreak Popular Websites by default
  • Set default log level to warning for portmaster-core
Component: UI App v0.2.4

Changelog app-electron-v0.2.4:

  • Upgrade electron to v20

Component: UI v0.3.4
  • Bump portmaster module version
  • Fix regression with allow/block buttons
  • Remove debugger statement
  • Fix minor regressions and add support for query parameters in open-page action
  • Add error message to error button and abort change instead of reset
  • Use correct method to get app profile by scoped ID
  • Fix lazy loading of group-by results ignoring the current filter
  • Force a reload of the UI after the Portmaster restarted

Component: SPN v0.4.15
  • Bump portmaster to v0.9.3
  • Add support for running old hub bins in hybrid in simple testing
  • Fix crane context usage


Portmaster v0.9.3

  • Fixed unstable SQL statement causing memory leaks due to prepared stmt caching
Component: UI v0.3.3
  • Fix environment configuration not being passed to @safing/portmaster-api

Component: UI v0.3.2
  • Fix navigation menu actions not working anymore
Component: UI v0.3.1
  • Bump portmaster module version
  • Add notice if all connections of a group have been garbage collected
  • Fix app settings being reset on graph update
  • Remove deprecated field spn_used and switch to tunneled instead
  • Save and re-use the filter for the global network activity viewer
  • Show loading indicator in select-boxes and support presetting the netquery filter
  • Lighten up the background color of the searchbar overlay
  • Improve disabled state handling for select items
  • Set default connection group-by to profile
  • Fix default sort order in network activity monitor
  • Fix rediction to app settings not working
  • Fix broken styling of overlay-stepper
  • Accept “no” and “yes” for boolean values
  • Implement various small changes based on first user feedback
  • Refactored portmaster API related code to @safing/portmaster-api


Portmaster v0.9.2

  • Improve custom filter list config key

Portmaster v0.9.1

  • Fix write/readonly connection usage and linter error
  • Add metadata to special responder responses
  • Mitigate double read locks on the layered profile
  • Use a dedicated write connection for persisting in sqlite and switch pool to read-only
  • Remove locking from SQlite access
  • Add connection pooling for sqlite database access
  • Update portbase to v0.15.0
  • Improve broadcasts test data
  • Use new microtask function
  • Removed duplicated field SPNUsed from netquery module
  • Minor improvements and documentation
  • Move checking custom filter list behind main filter lists to get entity data
  • Api ednpoint to custom filter list added
  • Change worning for invalid lines in filter list
  • Refactoring
  • Bug fixes and performence fixes: Synchronization bug fixed map reseting performence improvment Added more notificationa and better wording better scheduling of file parsing task
  • Custom filter list: subdomain and cname cheks Automatic realod when settings is changed periodicly check for file changes
  • Refactoring
  • Custom filter list proof of concept
  • Remove use of event log viewer
  • Ignore disabled event log viewer at startup
  • Improve app-auth request flow and implement review suggestions
  • Fix merge issues
  • Merge branch ‘develop’ into develop
  • Set DNS http maximu idle connection to 3 minutes
  • Minor fixes
  • Bugs and lint warning fixex Fix domain map cuncurrent access Fix ResolverInfo Domain was not copied bug Fix linter warnings
  • tls protocol for DoT added, minor refactoring
  • Resolver Info fill missing field
  • Fix config url typo
  • DoT support for domain name only Configed resolvers skip ther own domains
  • Refatoring and removed pre resolving of dot, doh
  • Add endpoint to retrieve the current profile ID
Component: SPN v0.4.14
  • Improve op capacity test
  • Improve module dependencies and context usage
  • Update deps
  • Update portbase and portmaster
  • Disable nolintlint linter
  • Add current main intel as test file
  • Increase health check timeout to mitigate flow bug a little
  • Consolidate Hub related intel and add VerifiedOwner
  • Use JSON and CBOR for introducing tags instead
  • Improve find nearest error handling
  • Fix access tests
  • Improve unknown op logging
  • Add more prioritized scheduling
  • Add MsgTypePriorityData and scheduling via prioritized microtasks
  • Fix logging prefixes


Portmaster v0.9.0

Note: This release will be in staging and beta slightly longer.

  • Fix linter error and make identifier check more explicit
  • Automatically append arguments required by Electron to run on wayland
  • Merge branch ‘develop’ into feature/query
  • Implement some review suggestions
  • Fix go.mod
  • Add additional field to internal SQL model
  • Bump from 1.7.1 to 1.8.0
  • Bump from 1.5.0 to 1.6.0
  • Create codeql-analysis.yml
  • Create dependabot.yml
  • Update Primary Tag-Line
  • Update dependencies
  • Add broadcast notifications test data
  • Add broadcasts module
  • Simplify and improve update version export
  • Fix linter error
  • Remove filter lists help
  • Improve rules and filterlists config options
  • Stop using deprecated function
  • Fix detection of incoming localhost packets on Linux
  • Make intel index override-able by other indexes
  • Add check to ensure matching PID constants
  • Fix direction detection for unsupported protocols
  • Add support for free-text search and minor bug fixes in netquery
  • Add support for pagination to netquery module
  • Add query and chart support with multiple fixes to ORM package
  • Add support for new query API
  • Use new(record.Meta) instead of a dedicated call to SetMeta
  • Add and update netquery code based on review discussions
  • Add netquery module to main
  • Add documentation to query runner
  • Add initial sqlite support in netquery
  • Add basic, tailored SQL ORM mapper
  • Improve device location system with more safeguards
  • Add geoip.IsInitialized to expose if the databases have been loaded
  • Deactivate IPv6 integrations when no IPv6 stack is detected
  • Suppress error when stopping during filterlist update
  • Improve read rights on log files
Component: SPN v0.4.13
  • Let operations override end error to be sent
  • Add missing doc
  • Add helper to get the exit node
Component: UI v0.3.0

This version includes the new Network Activity view, which is responsible for most commits:

  • Strip FAQ prefix and flex-grow collision
  • Fix codelyzer dependency
  • Add FAQs to support page
  • Fix build errors due to incorrect rebasing/merging of feature branches
  • Fix showing default stackable config values
  • Fix opening tip-up link in new tab in browser
  • Add reset broadcast notification state debug button
  • Add broadcast notification styling
  • Merge branch ‘feature/safing-ui-lib’ into develop
  • Implement review suggestions
  • Upgrade all other packages and fix linting errors due to stricter angular/rxjs types
  • Fix linter errors due to stricter Angular 14 template checking
  • Updated to Angular@14
  • Partial broken upgrade to angular@13
  • Ditch ngx-build-plus as tailwind has native support in angular now
  • Ditch ngx-build-plus as tailwind has native support in angular now
  • Fix tailwind configuration and move component scss out of @layers for now
  • Run “Organize Imports” on all files
  • Switch from app- prefix to sfng- prefix in tab components
  • Migrated toggle-switch and overlay-stepper to new @safing/ui
  • Migrated most shared common components to a new @safing/ui library
  • Minor changes to imports and build config
  • Add “more” dropdown with additional filters to netquery viewer and update stylign
  • Add more translations for connection fields
  • Update tag-bar styling
  • Add missing provider to searchbar overlay
  • Add groupby/orderby support to netquery searchbar and update styling
  • Update connection details component styling
  • Update connection details component stylign
  • Add missing animation declaration to network-activity-widget
  • Use fixed width for connection counter
  • Fix focus component not running after the view has been initialized
  • Add group-by and order-by support to text query language
  • Remove version info bar in settings and add new menus in navigation
  • Fix redirect to settings action to open the correct tab
  • Add dedicated module for app-icon
  • Fix button outline class in pagination component
  • Refactor select component styling
  • Add menu component inputs that proxy through to the dropdown
  • Upgrade tailwind version
  • Add additional allowed position and offset-x support to dropdown
  • Add pagination support to new netquery viewer
  • Various improvements to the new netquery/network monitor search system
  • Bump notifier version
  • Auto-scale icons to better size for tray
  • Update systray lib to include fix for setting icon
  • Add new basic netquery viewer using the new query interface. Includes various refactoring
  • Move network overview from monitor to dedicated widget
  • Move icon changer to own goroutine in icon test program

Component: SPN v0.4.12
  • Fix SPN reinit api permission
  • Update dependencies
  • Add safeguard to stop uncontrolled operation
  • Add captain.GetSPNStatus to export the current SPN status
  • Remove incorrect config annotations
  • Make navigator wait for the geoip databases to load before starting
  • Add safeguards and improve logging
  • Add api endpoint to re-initialize the SPN


Portmaster v0.8.13


  • Update SPN
  • Fix multicast detection on ended connections as well as some linter errors
  • Add support for upcoming UNBREAK filter list
  • Send notification instead of killing conflicting DNS service
  • Improve wording on setting dns/noInsecureProtocols
  • Improve support for DNS-SD and fall back to cached data for non-ICANN queries
  • Detect responses to multi/broadcast queries
  • Calm down and relax dns query check
  • Reset system self-check after network change
Component: SPN v0.4.11
  • Improve error usage and wording
  • Lower log level for expansion terminal OK errors
  • Allow OpEnd to change the sent error message
  • Remove bootstrap flag from client state

Component: Notifier v0.3.2
  • Update in notifier
  • Enable notifier arm64 builds for Windows and Linux


Portmaster v0.8.12

  • Update SPN
Component: SPN v0.4.10
  • Do not special UDP socket options on windows
  • Add nil guards to crane hooks


Portmaster v0.8.11

  • Use alternative approach to fix nfqueue closing process


Portmaster v0.8.10

  • Increase supported size of windows network state table entries
  • Fix shutting down nfq interception with go-nfqueue v1.3.1
Component: SPN v0.4.9
  • Enable submit control system and add default terminal options

Component: SPN v0.4.8
  • Update terminal opts for production
  • Add submit control to terminal
  • Integrate duplex flow queue into terminal
  • Fix home hub policy check, add ID as Hub entity domain
  • Fix crane update hook handler on client


Portmaster v0.8.9

  • Add MatchMulti function to match endpoints list against multiple entities
  • Only warn about unexpected parent process when not in dev mode
  • Resolve to real file paths before checking path based API access
  • Use more verbose names for iptables chains
  • Show notification about manual DNS setup instead of compatibility notice
  • Block DNS requests if bypass prevention is active
  • Add config option to disable dns query interception
Component: SPN v0.4.7
  • Add traced logging to SPN tunnel building
  • Correctly fail when tunnel creation fails.
  • Add sluice UDP listener with socket options to fix packet response addresses
Component: Notifier v0.3.1
  • Auto-scale icons to better size for tray
  • Update systray lib to include fix for setting icon
  • Move icon changer to own goroutine in icon test program
  • Fix status handling
  • Switch to


Portmaster v0.8.8

  • Improve IP scope classification
  • Reset device locations when network changes
  • Only fix chrome sandbox permission when needed
  • Add intel-only flag for initializing intel data only
  • Ignore comments on rule parsing
  • Only warn when registry cleanup fails
  • Improve wording on block bypassing notification and setting
  • Raise dns/nameservers config to expertise level user
  • Improve prevented bypass attempt notification
  • Fix connection locking in firewall packet handler
  • Add notify threshold for app related notification
  • Fix secure DNS bypass notification to reflect reality
  • Increase self-check timeouts and threshold
  • Improve resolver config for intro slides
  • Clear DNS cache when DNS resolver config changes in any way
Component: SPN v0.4.6
  • Bump hub version
  • Update deps
  • Stick destinations to Hubs or avoid them in case pure network error
  • Increase sluice request expiry
  • Fix index error in region optimizer
  • Fix broken controller stop message
  • Improve SPN graph rendering with new data
  • Synchronize stopping state
  • Improve hub installer
Component: UI v0.2.4
  • Remove y-offset in intro drop-downs
  • Finish intro screen steps for MVP
  • Update code to use new modules and component selectors
  • Fix background color of dialogs
  • Create dedicated module for config components and add more customization support to generic-component
  • Create dedicated modules for shared components
  • Change current menu to be based on new dropdown module
  • Split drop-down and select into different modules with multiple changes
  • wip: Use OverlayStepper to display intro MVP on page load. Still needs refactoring
  • Add first version of the intro MVP using the new OverlayStepper
  • Add OverlayStepper module that supports wizard-like stepping through pages
  • Workaround for button hover with blue background. Still needs a proper fix
  • Fix dialog typings and allow access to dialog content reference
  • Add DialogModule as a depdendency to tip-up and fix imports
  • Disable electron’s internal secure DNS system
  • Create dedicated module for dialog service
  • Add arm64 building for electron


Portmaster v0.8.7

  • Update SPN
Component: SPN v0.4.5
  • Reset crane update hook when stopping SPN
  • Stop SPN client manager correctly when not yet connected


Portmaster v0.8.6

  • Fix metrics for connections going through SPN
  • Show system notification when fixing electron sandbox fails
  • Always apply electron sandbox SUID fix
  • Mark config options as sensitive
  • Add debug interfaces for wfp and iptables
  • Set recursion available flag on nameserver responses
  • Validate resolver config for unknown parameters
  • Add documentation for new parameters
  • Expand special service TLDs
  • Add support for search-only resolvers
  • Improve search scope validation and add configuration support
  • Split unattributed connections into to Unidentified App and Network Noise
  • Exempt IPv6 LAN (broadcast domain only) from SPN
  • Fix checking if existing pid-lock process is portmaster-start
Component: UI Assets v0.3.0
  • Update js assets for graph rendering
  • Refactor notifier icons, copy to go source tree for embedding
Component: Notifier v0.3.0
  • Switch to new embedded icon
  • Add SPN status support
  • Refactor notifier icons, copy to go source tree for embedding
Component: UI v0.2.3
  • Always use “view all” as the defautl for app settings
  • Show blue dots for settings-subsystems as well

Component: SPN v0.4.4
  • Improve SPN client health check triggers and stop old connection when reconnecting
  • Mark config options as sensitive
  • Add debug info for SPN
  • Improve spn client lifecycle
  • Improve terminal abandoning

Component: SPN v0.4.3


  • Abort crane msg submitting when crane is shutting down
  • Add function to check if any hub policies are set
  • Improve and add home / dns exit hub policy parsing
  • Fix and improve session path checking
  • Update SPN settings order
  • Check existing hub route before using in new route
  • Integrate SPN route manipulation settings
  • Add home and DNS exit node rules
Component: UI v0.2.2
  • Use drop-down option tooltips for value description
  • Add support for option descriptions in the drop-down via tooltips
  • Add maximum width for tooltip
  • Display blue dots when settings got changed. Fixes #206

Component: UI v0.2.1
  • Only show interfering settings for SPN quick setting button when SPN is enabled
  • Fix “Use SPN” not correctly detecting disabled state
  • Only show interfering settings for SPN quick setting button when enabled
  • Implement review suggestions
  • Use default shadow in app-view statistics due to visual gliches
  • Add support for custom rule list verdict names
  • Use correct settings key for use-spn interfering settings detection
  • Add quick settings support for Internet and Use SPN
  • Fix global value not being displayed for toggle-switches in app settings
  • Support jumping to the global setting from an app-settings tooltip
  • Add rich tooltip support and keep open when hovering the tooltip content
  • Update Accordion components to use sfng prefix
  • Remove obsolete debug components
  • Rename AppSettingsPageComponent to AppViewComponent to better match the new purpose
  • Rename app-settings to app-view to match new purpose
  • Cleanup MutationObserver in tooltip on destroy
  • Add tooltip component for small inline-help
  • Update issue manager workflow

Component: SPN v0.4.2
  • Remove test phase button from SPN status notification

Component: SPN v0.4.1
  • Update deps
Component: UI v0.2.0
  • Change order of icons and add small border
  • Show message if no apps match the search term
  • Fix tip up anchor size in app settings
  • Show app description and add warning to details tab name
  • Fix spacing in app overview
  • Remove deprecated ApproxLastUsed
  • Add tab component and rework app settings to new app-centric design
  • Implement changes as discussed in review
  • Move “Reset to” label in settings to the right
  • Add blue line to setting if it was changed by the user
  • Add space at the end of the settings list
  • Change color of settings key and remove commented code
  • Increase toggle-switch size a bit
  • Fix disabled state not working for dropdown
  • Allow settings to be changed even when locked and unlock automatically
  • Update app settings component to enable user-changed markers for config settings
  • Update config view component to new style and support collapsible categories
  • Update styling of generic settings component
  • Update styling for ordered list settings and remove use of legacy color names
  • Update styling for rule list settings and remove use of legacy color names
  • Update basic settings component for better input focus UX
  • Update security level switch to use toggle-switch in on/off mode
  • Update multi-switch box and spacing to allow better centering
  • Update styling of drop-down component and remove use of legacy color names
  • Menu component should have the same minimum width than it’s trigger
  • Removed testing code in support-page that should not have been merged
  • Improved tip up components to handle stacking and support dynamic tip up contents
  • Update styling of text inputs and search highlighting
  • Create dedicated toggle-switch component instead of using (ab)using multi-switch
  • Update tailwindcss configuration for better color support

Component: SPN v0.3.19
  • Increase queue sizes

Component: Notifier v0.2.4
  • Update notifier deps
  • Use warning color when restarting
  • Cleanup app resources properly
  • Don’t hide status message
  • Shorten status message
  • Update notifier to wait for connection loss in shutdown/restart
  • Hide network rating buttons in notifier according to setting
Component: UI v0.1.25
  • Display alive connection count in developer mode and add dbl-click to SPN page
  • Add shutdown/restart overlays
  • Update UI dependencies to latest patch version
  • Use hostname instead of a hardcoded localhost for websocket connections
  • Hide network rating buttons in notifier according to setting
  • Use on/off toggles instead of security level switch if network rating is disabled