diff --git a/CHANGELOG.md b/CHANGELOG.md index fb1c5fdd..4e01d43e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,6 +33,8 @@ overall our implementation was very close. - **ACL Policy**: Fix autogroup:self handling for tagged nodes - tagged nodes no longer incorrectly receive autogroup:self filter rules [#3036](https://github.com/juanfont/headscale/pull/3036) - **ACL Policy**: Use CIDR format for autogroup:self destination IPs matching Tailscale behavior [#3036](https://github.com/juanfont/headscale/pull/3036) - **ACL Policy**: Merge filter rules with identical SrcIPs and IPProto matching Tailscale behavior - multiple ACL rules with the same source now produce a single FilterRule with combined DstPorts [#3036](https://github.com/juanfont/headscale/pull/3036) +- Remove deprecated `--namespace` flag from `nodes list`, `nodes register`, and `debug create-node` commands (use `--user` instead) [#3093](https://github.com/juanfont/headscale/pull/3093) +- Remove deprecated `namespace`/`ns` command aliases for `users` and `machine`/`machines` aliases for `nodes` [#3093](https://github.com/juanfont/headscale/pull/3093) ## 0.28.0 (2026-02-04) diff --git a/cmd/headscale/cli/debug.go b/cmd/headscale/cli/debug.go index e9eff4ce..b519dbc2 100644 --- a/cmd/headscale/cli/debug.go +++ b/cmd/headscale/cli/debug.go @@ -19,12 +19,6 @@ func init() { createNodeCmd.Flags().StringP("name", "", "", "Name") createNodeCmd.Flags().StringP("user", "u", "", "User") - - createNodeCmd.Flags().StringP("namespace", "n", "", "User") - createNodeNamespaceFlag := createNodeCmd.Flags().Lookup("namespace") - createNodeNamespaceFlag.Deprecated = deprecateNamespaceMessage - createNodeNamespaceFlag.Hidden = true - createNodeCmd.Flags().StringP("key", "k", "", "Key") mustMarkRequired(createNodeCmd, "name", "user", "key") diff --git a/cmd/headscale/cli/nodes.go b/cmd/headscale/cli/nodes.go index 632095d9..06631012 100644 --- a/cmd/headscale/cli/nodes.go +++ b/cmd/headscale/cli/nodes.go @@ -20,24 +20,12 @@ import ( func init() { rootCmd.AddCommand(nodeCmd) listNodesCmd.Flags().StringP("user", "u", "", "Filter by user") - - listNodesCmd.Flags().StringP("namespace", "n", "", "User") - listNodesNamespaceFlag := listNodesCmd.Flags().Lookup("namespace") - listNodesNamespaceFlag.Deprecated = deprecateNamespaceMessage - listNodesNamespaceFlag.Hidden = true - nodeCmd.AddCommand(listNodesCmd) listNodeRoutesCmd.Flags().Uint64P("identifier", "i", 0, "Node identifier (ID)") nodeCmd.AddCommand(listNodeRoutesCmd) registerNodeCmd.Flags().StringP("user", "u", "", "User") - - registerNodeCmd.Flags().StringP("namespace", "n", "", "User") - registerNodeNamespaceFlag := registerNodeCmd.Flags().Lookup("namespace") - registerNodeNamespaceFlag.Deprecated = deprecateNamespaceMessage - registerNodeNamespaceFlag.Hidden = true - registerNodeCmd.Flags().StringP("key", "k", "", "Key") mustMarkRequired(registerNodeCmd, "user", "key") nodeCmd.AddCommand(registerNodeCmd) @@ -71,7 +59,7 @@ func init() { var nodeCmd = &cobra.Command{ Use: "nodes", Short: "Manage the nodes of Headscale", - Aliases: []string{"node", "machine", "machines"}, + Aliases: []string{"node"}, } var registerNodeCmd = &cobra.Command{ diff --git a/cmd/headscale/cli/root.go b/cmd/headscale/cli/root.go index 69c135e3..66241bce 100644 --- a/cmd/headscale/cli/root.go +++ b/cmd/headscale/cli/root.go @@ -14,10 +14,6 @@ import ( "github.com/tcnksm/go-latest" ) -const ( - deprecateNamespaceMessage = "use --user" -) - var cfgFile string = "" func init() { diff --git a/cmd/headscale/cli/users.go b/cmd/headscale/cli/users.go index 3210fa26..33f40229 100644 --- a/cmd/headscale/cli/users.go +++ b/cmd/headscale/cli/users.go @@ -65,7 +65,7 @@ var errMissingParameter = errors.New("missing parameters") var userCmd = &cobra.Command{ Use: "users", Short: "Manage the users of Headscale", - Aliases: []string{"user", "namespace", "namespaces", "ns"}, + Aliases: []string{"user"}, } var createUserCmd = &cobra.Command{