Changelog

Synapse-Spur Changelog

v2.0.0 - 2026-11-04

Automatic Migrations

  • Migrated existing API key, tag prefix and IP context URL settings to the new configuration manager. Per-user API keys were migrated to user-scoped configurations named synapse-spur:<useriden>. Settings which cannot be migrated, including an IP context URL which is not a base URL followed by /v2/context/{addr}, are left in place and reported in the Cortex log; use spur.config.add to add them.

Features and Enhancements

  • Added support for proxy, SSL verification, tag prefix and base URL configurations on a per-vault basis.

  • Added new configuration manager commands:

    • spur.config.add

    • spur.config.del

    • spur.config.list

    • spur.config.show

    • spur.config.update

    • spur.config.migrate

  • Added a --config argument to spur.ipcontext to override the default configuration.

  • Added the power-ups.spur.admin permission, which grants access to all Synapse-Spur commands and the spur.privsep module.

  • Updated spur.ingestIpContext() to use the tagPrefix option, or the tag prefix of the default configuration.

  • Replaced the Optic configuration workflow with one for synapse-spur vaults.

  • Updated the spur.setup.prop.behavior command help to state that the property set behavior is a global setting.

  • Removed the spur.setup.apikey and spur.setup.tagprefix commands. Use spur.config.add / spur.config.update instead.

  • Removed the spur.setup.setIpContextUrl() API. Use the --baseurl option to spur.config.add / spur.config.update instead.

Bugfixes

  • Fixed spur.ipcontext --debug printing the whole HTTP response, including the API key in the request headers.

  • Fixed the data migrations failing when a view is deleted while they run. They now warn when they skip a view whose write layer is read-only.

v1.0.0 - 2026-05-22

Automatic Migrations

  • Added a migration to apply the per-operator tunnel tag to existing spur-ingested tunnel-related nodes.

Features and Enhancements

  • Updated Power-Up to use $lib.auth.users.get() instead of $lib.user.

  • Added a <prefix>.tunnel.<operator> tag to inet:tunnel, inet:server, inet:ipv4, and inet:ipv6 nodes created by spur.ipcontext so the tunnel operator is reflected in tags.

v0.5.0 - 2024-04-26

Features and Enhancements

  • Update deprecated $lib.dict() usage to JSON style syntax.

  • Update ingest code to use customizable property set behavior when creating inet:asn:owner properties.

  • Add spur.setup.prop.behavior command to customize how synapse-spur sets the inet:asn:owner property when ingesting Spur data.

  • Add --prop-behavior <propname>=<behavior> argument to spur.ipcontext command to override the global configuration on a per-execution basis.

v0.4.0 - 2024-03-04

Features and Enhancements

  • Add spur.setup.setIpContextUrl() API to set alternate Spur URLs. Context URLs should contain a {addr} to indicate where the queried IP address is inserted into the URL. Example: https://mirror.my.domain/spur/{addr}?version=2.

v0.3.0 - 2024-02-06

Features and Enhancements

  • Add an API method to the spur module for ingesting v2/context API results.

Bugfixes

  • Tunnel related nodes had tags added to them even when the --no-tags option was specified. The --no-tags option now applies to tunnel specific tags.

v0.2.1 - 2023-07-12

Bugfixes

  • Lower Synapse minimum version to v2.118.0 instead of latest (v2.141.0).

v0.2.0 - 2023-07-12

Features and Enhancements

  • Update Power-Up to create inet:tunnels for any tunnels returned by the spur.ipcontext command.

v0.1.0 - 2023-03-22

Features and Enhancements

  • Update Power-Up to build with code signing.

v0.0.1 - 2022-08-08

Features and Enhancements

  • Initial release of the Synapse-Spur Power-Up