mirror of
https://github.com/juanfont/headscale.git
synced 2026-02-20 19:50:30 +09:00
Some checks failed
Build / build-nix (push) Has been cancelled
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Has been cancelled
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Has been cancelled
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Has been cancelled
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Has been cancelled
Check Generated Files / check-generated (push) Has been cancelled
NixOS Module Tests / nix-module-check (push) Has been cancelled
Tests / test (push) Has been cancelled
Close inactive issues / close-issues (push) Has been cancelled
This commit upgrades the codebase from Go 1.25.5 to Go 1.26rc2 and adopts new language features. Toolchain updates: - go.mod: go 1.25.5 → go 1.26rc2 - flake.nix: buildGo125Module → buildGo126Module, go_1_25 → go_1_26 - flake.nix: build golangci-lint from source with Go 1.26 - Dockerfile.integration: golang:1.25-trixie → golang:1.26rc2-trixie - Dockerfile.tailscale-HEAD: golang:1.25-alpine → golang:1.26rc2-alpine - Dockerfile.derper: golang:alpine → golang:1.26rc2-alpine - .goreleaser.yml: go mod tidy -compat=1.25 → -compat=1.26 - cmd/hi/run.go: fallback Go version 1.25 → 1.26rc2 - .pre-commit-config.yaml: simplify golangci-lint hook entry Code modernization using Go 1.26 features: - Replace tsaddr.SortPrefixes with slices.SortFunc + netip.Prefix.Compare - Replace ptr.To(x) with new(x) syntax - Replace errors.As with errors.AsType[T] Lint rule updates: - Add forbidigo rules to prevent regression to old patterns
55 lines
1.6 KiB
YAML
55 lines
1.6 KiB
YAML
# prek/pre-commit configuration for headscale
|
|
# See: https://prek.j178.dev/quickstart/
|
|
# See: https://prek.j178.dev/builtin/
|
|
|
|
# Global exclusions - ignore generated code
|
|
exclude: ^gen/
|
|
|
|
repos:
|
|
# Built-in hooks from pre-commit/pre-commit-hooks
|
|
# prek will use fast-path optimized versions automatically
|
|
# See: https://prek.j178.dev/builtin/
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v6.0.0
|
|
hooks:
|
|
- id: check-added-large-files
|
|
- id: check-case-conflict
|
|
- id: check-executables-have-shebangs
|
|
- id: check-json
|
|
- id: check-merge-conflict
|
|
- id: check-symlinks
|
|
- id: check-toml
|
|
- id: check-xml
|
|
- id: check-yaml
|
|
- id: detect-private-key
|
|
- id: end-of-file-fixer
|
|
- id: fix-byte-order-marker
|
|
- id: mixed-line-ending
|
|
- id: trailing-whitespace
|
|
|
|
# Local hooks for project-specific tooling
|
|
- repo: local
|
|
hooks:
|
|
# nixpkgs-fmt for Nix files
|
|
- id: nixpkgs-fmt
|
|
name: nixpkgs-fmt
|
|
entry: nixpkgs-fmt
|
|
language: system
|
|
files: \.nix$
|
|
|
|
# Prettier for formatting
|
|
- id: prettier
|
|
name: prettier
|
|
entry: prettier --write --list-different
|
|
language: system
|
|
exclude: ^docs/
|
|
types_or: [javascript, jsx, ts, tsx, yaml, json, toml, html, css, scss, sass, markdown]
|
|
|
|
# golangci-lint for Go code quality
|
|
- id: golangci-lint
|
|
name: golangci-lint
|
|
entry: golangci-lint run --new-from-rev=HEAD~1 --timeout=5m --fix
|
|
language: system
|
|
types: [go]
|
|
pass_filenames: false
|