P23 — Skinny Packages: - Break conf→bib circular dependency with lazy guarded import - Extract aco.table.base → conf.table_base (shared foundation) - Add try/except ImportError guards on all cross-module imports - Define per-module optional-dependencies in pyproject.toml - Slim base deps to just pydantic; all heavy deps in optional groups - Add gen_config.py --check validation for module/dep sync - Add skinny-install CI matrix job (tests each extra in isolation) P24 — Tree Reorganization: - Move service configs to infra/ (traefik, coredns, grafana, etc.) - Consolidate Dockerfiles under infra/images/ - Move styles/ → assets/css/ + assets/icons/ + assets/nature.py - Update compose.yml, stack.toml, gen_config.py, all backend emitters - Update bootstrap scripts and install_certs.sh P25 — Cloud Provider Abstraction: - Add cloud/ directory with self-hosted, aws, gcp, azure stubs - Add cloud contexts (aws, gcp, azure) to stack.toml - Add conf/storage.py — get_filesystem() dispatches per context - Add aws, gcp, azure optional dependency groups - Document service mapping for each provider All 11955 tests pass. Zero functionality lost.
74 lines
1.8 KiB
YAML
74 lines
1.8 KiB
YAML
run:
|
|
timeout: 3m
|
|
skip-files: []
|
|
skip-dirs: []
|
|
linters-settings:
|
|
govet:
|
|
check-shadowing: false
|
|
golint:
|
|
min-confidence: 0
|
|
gocyclo:
|
|
min-complexity: 12
|
|
maligned:
|
|
suggest-new: true
|
|
goconst:
|
|
min-len: 3
|
|
min-occurrences: 4
|
|
misspell:
|
|
locale: US
|
|
funlen:
|
|
lines: 60
|
|
statements: 40
|
|
ireturn:
|
|
# ireturn allows using `allow` and `reject` settings at the same time.
|
|
# Both settings are lists of the keywords and regular expressions matched to interface or package names.
|
|
# keywords:
|
|
# - `empty` for `interface{}`
|
|
# - `error` for errors
|
|
# - `stdlib` for standard library
|
|
# - `anon` for anonymous interfaces
|
|
|
|
# By default, it allows using errors, empty interfaces, anonymous interfaces,
|
|
# and interfaces provided by the standard library.
|
|
allow:
|
|
- anon
|
|
- error
|
|
- empty
|
|
- stdlib
|
|
# You can specify idiomatic endings for interface
|
|
- (or|er)$
|
|
- github.com/packruler/rewrite-body/logger.LogWriter
|
|
linters:
|
|
enable-all: true
|
|
disable:
|
|
- scopelint
|
|
- golint
|
|
- interfacer
|
|
- maligned
|
|
- bodyclose
|
|
- goerr113
|
|
- wrapcheck
|
|
- maligned
|
|
- exhaustivestruct
|
|
- testpackage
|
|
- paralleltest
|
|
- tparallel
|
|
issues:
|
|
exclude-use-default: false
|
|
max-per-linter: 0
|
|
max-same-issues: 0
|
|
exclude:
|
|
- don't use an underscore in package name
|
|
- "ST1003: should not use underscores in package names"
|
|
- "SA1019: http.CloseNotifier has been deprecated since Go 1.11 and an alternative has been available since Go 1.7: the CloseNotifier interface predates Go's context package. New code should use Request.Context instead."
|
|
exclude-rules:
|
|
- path: (.+)_test.go
|
|
linters:
|
|
- goconst
|
|
- funlen
|
|
- godot
|
|
- lll
|
|
- path: config.go
|
|
linters:
|
|
- lll
|