migrations

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 3, 2025 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ExecCommand = exec.Command

ExecCommand is used to run external commands. It can be replaced in tests.

View Source
var Migrations = []Migration{
	{From: ">=1.0.0-0", To: ">=0.0.0-0", Functions: []MigrationFn{MigrateGoPkgs}},
	{
		From: ">=2.0.0-0",
		To:   "<4.0.0-0",
		Functions: []MigrationFn{
			v3migrations.MigrateHandlerSignatures,
			v3migrations.MigrateViewBind,
			v3migrations.MigrateParserMethods,
			v3migrations.MigrateRedirectMethods,
			v3migrations.MigrateGenericHelpers,
			v3migrations.MigrateAddMethod,
			v3migrations.MigrateMimeConstants,
			v3migrations.MigrateLoggerTags,
			v3migrations.MigrateLoggerGenerics,
			v3migrations.MigrateStaticRoutes,
			v3migrations.MigrateTrustedProxyConfig,
			v3migrations.MigrateMount,
			v3migrations.MigrateConfigListenerFields,
			v3migrations.MigrateListenerCallbacks,
			v3migrations.MigrateShutdownHook,
			v3migrations.MigrateListenMethods,
			v3migrations.MigrateContextMethods,
			v3migrations.MigrateCORSConfig,
			v3migrations.MigrateCSRFConfig,
			v3migrations.MigrateMonitorImport,
			v3migrations.MigrateUtilsImport,
			v3migrations.MigrateHealthcheckConfig,
			v3migrations.MigrateProxyTLSConfig,
			v3migrations.MigrateAppTestConfig,
			v3migrations.MigrateMiddlewareLocals,
			v3migrations.MigrateFilesystemMiddleware,
			v3migrations.MigrateLimiterConfig,
			v3migrations.MigrateCacheConfig,
			v3migrations.MigrateEnvVarConfig,
			v3migrations.MigrateSessionConfig,
			v3migrations.MigrateSessionExtractor,
			v3migrations.MigrateSessionStore,
			v3migrations.MigrateKeyAuthConfig,
			v3migrations.MigrateTimeoutConfig,
			v3migrations.MigrateBasicauthAuthorizer,
			v3migrations.MigrateBasicauthConfig,
			v3migrations.MigrateBasicauthStorePassword,
			v3migrations.MigrateReqHeaderParser,
			MigrateGoVersion("1.25"),
		},
	},
}

Migrations is a list of all migrations Example structure: {"from": ">=2.0.0", "to": "<=3.*.*", "fn": [MigrateFN, MigrateFN]}

Functions

func DoMigration

func DoMigration(cmd *cobra.Command, cwd string, curr, target *semver.Version, skipGoMod, verbose bool, includeFiles, excludeFiles []string) error

DoMigration runs all migrations It will run all migrations that match the current and target version

func MigrateDependencies added in v0.4.0

func MigrateDependencies(cmd *cobra.Command, cwd string, current map[string]map[string]*semver.Version, target *semver.Version) error

MigrateDependencies ensures that dependencies shared with Fiber are at least the versions required by the target Fiber release, and preserves higher versions already declared by the project.

The current map contains the dependency versions present before any migrations ran, keyed by module directory.

func MigrateGoPkgs

func MigrateGoPkgs(cmd *cobra.Command, cwd string, _, target *semver.Version) error

func MigrateGoVersion

func MigrateGoVersion(minVersion string) func(*cobra.Command, string, *semver.Version, *semver.Version) error

MigrateGoVersion ensures that all go.mod files referencing Fiber declare at least the provided Go version. Vendor directories are skipped.

Types

type Migration

type Migration struct {
	From      string
	To        string
	Functions []MigrationFn
}

Migration is a single migration

type MigrationFn

type MigrationFn func(cmd *cobra.Command, cwd string, curr, target *semver.Version) error

MigrationFn is a function that will be called during migration

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL