2 Commits

Author SHA1 Message Date
6529094fa7 Добавлен go-generate hook в pre-commit и лицензионные заголовки в автогенерируемые файлы
Some checks failed
Pre-commit / pre-commit (push) Failing after 3m21s
Изменения:
- Добавлен hook go-generate перед update-license в .pre-commit-config.yaml
- Добавлены лицензионные заголовки в pkg/alrsh/package_gen.go
2025-12-07 11:19:42 +03:00
c2d48c1a13 Исправлена проблема дублирования обновлений пакетов с подпакетами
Some checks failed
Pre-commit / pre-commit (push) Failing after 8m9s
Create Release / changelog (push) Successful in 3m30s
Изменения:
- Заменён вызов InstallALRPackages на InstallPkgs в upgrade.go
- Переименована функция mapUptatesInfoToPackages в mapUpdatesToPackageNames
- Добавлена дедупликация подпакетов по полному имени (package+repo)
- Теперь возвращаются строки с именами пакетов вместо объектов Package
2025-12-06 13:08:13 +03:00
2 changed files with 19 additions and 6 deletions

View File

@@ -29,6 +29,12 @@ repos:
language: system
pass_filenames: false
- id: go-generate
name: Run go generate
entry: bash -c 'go generate ./...'
language: system
pass_filenames: false
- id: update-license
name: Update license
entry: make update-license

View File

@@ -114,7 +114,7 @@ func UpgradeCmd() *cli.Command {
}
if len(updates) > 0 {
err = builder.InstallALRPackages(
_, err = builder.InstallPkgs(
ctx,
&build.BuildArgs{
Opts: &types.BuildOpts{
@@ -124,7 +124,7 @@ func UpgradeCmd() *cli.Command {
Info: deps.Info,
PkgFormat_: build.GetPkgFormat(deps.Manager),
},
mapUptatesInfoToPackages(updates),
mapUpdatesToPackageNames(updates),
)
if err != nil {
return cliutils.FormatCliExit(gotext.Get("Error checking for updates"), err)
@@ -138,12 +138,19 @@ func UpgradeCmd() *cli.Command {
}
}
func mapUptatesInfoToPackages(updates []UpdateInfo) []alrsh.Package {
var pkgs []alrsh.Package
func mapUpdatesToPackageNames(updates []UpdateInfo) []string {
seen := make(map[string]bool)
var pkgNames []string
for _, info := range updates {
pkgs = append(pkgs, *info.Package)
fullName := fmt.Sprintf("%s+%s", info.Package.Name, info.Package.Repository)
if !seen[fullName] {
seen[fullName] = true
pkgNames = append(pkgNames, fullName)
}
}
return pkgs
return pkgNames
}
type UpdateInfo struct {