Releases: rancher-sandbox/hypper
v0.3.1
This is a bugfix release of Hypper that fixes issues with transitive dependencies.
You can connect with the developers via:
- The issue queue
- Rancher Users Slack in the #hypper channel
Changelog
babea4a Fixing db not looking at repos
249f231 Fixing issue when handing no scheme local charts
0c76a77 Fixing issue where charts in repos not erroring on dep issues
2029e94 Updating descriptive comment
v0.3.0
This is a feature release of Hypper and incorporates a SAT solver for transitive dependencies.
You can connect with the developers via:
- The issue queue
- Rancher Users Slack in the #hypper channel
Changelog
e3ece63 Add GetNameFromAnnot(), GetNamespaceFromAnnot()
5715edd Add Pkg.ChartHash, drop Pkg.{Depends,DependsOptional}
9589aa8 Add database.go.{IsDependency(),IsDependencyOptional()}
ab3f52c Add docs on strategies and todos
86a0cd7 Add gophersat to go.{mod,sum}
e5cc93e Add internal/pkg/*
6a9cd23 Add internal/solver/* with basic tests
91e3b00 Add internal/solver/main.go, that will be example.go
7c9a628 Add mitchellh/hashstructure to go.{mod,sum}
45f9db4 Drop InstallAllSharedDeps(), not needed anymore
87f841e Fix: sort output of the solver properly
588ef77 Generate ./internal/solver goldenfiles on make gen-test-golden
30ecefc Iterate through repos on CreateWorld()
ce9c1d0 Move Filling pkg dependency relations on pkg.NewPkg()
a1dcca0 Move db printing to PkgDB.DebugPrintDB()
a7686f0 Move internal/pkg to internal/package
ad2a430 Remove package.ID, use fingerprints everywhere
6914377 Revert "Revert "refactor: Concurrently generate constraints""
cdf7169 Revert "refactor: Concurrently generate constraints"
33d7cc6 Solve dependencies for semver ranges
25f3c62 Updates based on feedback
ae48093 Updating the docs for the 0.3.0 release
ed63f63 Updating to use Helm v3.6.0 as the base
6972c9d WIP
f17f995 WIP cmd/hypper/install tests
48bf116 We ensure dependency versions
296a2f0 bugfix: respect flag no-shared-deps
1d933c2 chore: Add couple of inline comments
2d13cda chore: Drop optional deps contraints, not needed
2b66859 chore: Drop unneeded comments
e297574 feat: Add CreateDependencyRelations(), finish solver.BuildWorld()
93df1f6 feat: Add hypper install --dry-run
flag
1c55232 feat: Add constraint AtLeast1 with weights
68b63f9 feat: Add deps not in repos (local) to DB by pulling their chart
c949c31 feat: Add logger prints for constraints and result
bc4a77f feat: Add more output when hypper install --debug
b96241e feat: Add p.Repostory, needed by action clients
bbb42a2 feat: Add pkg.ChartName, rename pkg.Name to pkg.RelName
0a13b78 feat: Add pkg.String() and consume it
16b40e2 feat: Add simple inconsistency on missing dependency
7619d74 feat: Add upgrade incosistency, print incons in FormatOutput()
f5082a4 feat: Correctly implement action.BuildWorld() with repo entries
f53a450 feat: Correctly install pkgs in action.Install.Run()
252ce93 feat: Create polytree of installed packages and consume it
0d9d93a feat: Default to create ns on hypper upgrade
b47220f feat: Default to not create ns on hypper install
fa52d96 feat: Don't tab hypper install
output
93a0397 feat: Honour values for parent chart. Default to empty for deps
ab73407 feat: Implement solver.go.BuildWorld()
f5eb673 feat: Import helm/internal/resolver in internal/third-party/
9a067bb feat: Make PrintPkgTree() print an ASCII tree and consume it
c1f814e feat: Make repository: file://
relative to parent chart
e10e382 feat: Process deps that are local charts recursively
a807abb feat: Promote Optional shared deps using the existing strategy
4198d0b feat: Return inconsistencies when UNSAT in install.Run()
6c496f9 feat: Sort pkg sets in GeneratePkgSets()
ffa37aa feat: Use pkg.ChartName for fingerprint and base fp
7fca920 feat: Use solver to perform hypper upgrade
324fcc3 feat: install.Run() returns []*release, instead of 1 rel
96af66e feat: recursively install packages in post-order (deps first)
e0c5a3d fix: Actually lint optional-dependencies stanza
8c70365 fix: Actually print tree output on solver.FormatOutput(table)
6f2e4ae fix: Actually recursively pull charts with local repos
d6f0693 fix: Add parent node as visited on solver.recBuildTree()
f19146a fix: Continue if no repository is present
7356f8b fix: Correctly GetAllReleases()
ef65331 fix: Correctly calculate wantedPkg.ReleaseName
7b325d4 fix: Correctly consume wantedPkg once it has depRels built
eed1e5f fix: Correctly download dependency charts not in repos
b82ae80 fix: Correctly merge DepRel and DepOptionalRel
eb5fbf3 fix: Correctly pick dependency chart version from repos
ace0ea1 fix: Correctly uninstall releases, add testcase
d2738b6 fix: Create only 1 constraint for A depends on B1,B2..
8009004 fix: Don't double-check p.CurrentState in buildConstraintsPresent()
4e5d9ac fix: Don't download wantedChart, we already have it
deb01d5 fix: Don't initialize config in GetAllReleases()
b0a6676 fix: Drop Chart, ChartHash from Pkg type
025010c fix: Funnel all log output to buf in cmd tests
08c2bd9 fix: Go vet simplifications
0a95a38 fix: Honour --version=foo in constraints, giving correct result
9183864 fix: Honour dependency repos using file://
8303c8f fix: Honour hypper install --version flag on wantedPkg creation
22ddc0b fix: Honour settings.NamespaceFromFlag in action.Install
8ef6101 fix: Make "main" testcase pass, don't pull noninstalled pkgs
a572293 fix: Make semver weights consecutive, fixes package order
0422022 fix: Merge packages in db
2cc8cd8 fix: Move BuildWorld(), CreateDependencyRelations() to action
bcc36ae fix: Move to gophersat/maxsat, use semver distances correctly
402ba47 fix: Only call s.GeneratePkgSet on SAT
aa54fd2 fix: Only generete toInstall tree if s.Strategy is InstallOne
d985884 fix: Only print floated errors, tell cobra to not print them
6665b3e fix: Respect dependency rels from local charts
2da09cc fix: Return UNSAT when unmet unknown dependencies
71dc71e fix: Return err when linting if Chart.yaml doesn't exist
7f52105 fix: Run internal/solver/example_test.go in tests
96f3488 fix: Skip dependencies that are not found in repos
ed04f88 fix: Skip deps that are releases when building tree
fbec7bd fix: Use Error instead of Debug on cmd/hypper/hypper.go
d2539ee fix: Use correct NS, rel for deps without annot (Helm charts)
70371ba fix: Use correct action.Install client in InstallPkg()
30ce09e fix: Use dep name and not parent name when building relations
d14023d fix: Use maxsat.Solve() instead of maxsat.Optimal()
d09e1e7 fix: Wrap error with emoji in newInstallCmd()
1525a6f fix: generate correct constraints pkgs and deps with semver
265875f fix: make releases not on the repo work.
2e6d295 fix: save our errors into goldenfiles
c8ef337 refactor: Add solver.logger field, and consume it
7c8a3ae refactor: Concurrently generate constraints
1d56e49 refactor: Don't call kubeclient once per chart version
58a9303 refactor: Drop LoadChartFromPkg(), use LoadChart()
c90b1d0 refactor: Drop pkg.ID, not needed anymore
cec5922 refactor: Make DB.Add() (and consecuently, merge) thread-safe
413a0be refactor: Reduce solver debug output to deterministic ones
60ea630 refactor: Remove uneeded err handling in semverSatisfies()
3919122 refactor: pkg.PkgRel{} with RelName and NS instead of base fingerprint
5f95aef revert: fix: Don't initialize config in GetAllReleases()
v0.2.0
Changelog
a3dd17a Add filtering by annotations on search
41f48e1 Add flag optional-deps
to the install command
7965c1d Add new type column to shared-dep list
9de8e79 Add nolint to environment test line
f41d2e2 Add prompt for installing optional shared dependencies
6242954 Add tests for pkg.action.SharedDependency.List
1c6c77c Check for field differences in our settings
ca87913 Expand struct description for Settings
75f5cf4 Move check for helm settings field to test files
8b0f409 Move testing function out of environment
9626b99 Refactor shared dependencies to support optional shared dependencies
00eeae7 Remove small leftover from testing
a6bb736 add consistency rules to contributing.md
9e9293e add eyecandy to install.go
17a9f28 add testdata for optional deps
1cc9a47 chore: Bump go.{mod,sum} for thediveo/enumflag
1263f47 chore: Refactor yamlDeps var name
49f59f4 chore: Remove duplicated :
in output
7b68ba9 chore: Remove leftover TODO
9af5f2d chore: clapping_hands emoji is 2 chars wide
6535217 chore: go fmt TestValidateChartHypper*
e771436 feat: Add OptionalDepsStrategy consts in pkg/action/install.go
06c011d feat: Add chart.Mock(), chart.MockChartOptions{}
fbad421 feat: Add pkg/cli/environment.go.NewWithNamespace()
b9d2561 feat: Check semver range on shared-dep install
b798b6d feat: Check shared-dep ver, show out-of-range if needed
a7805f0 feat: Lint for optional-dependencies in hypper lint
11437e1 feat: Lint shared dep versions as semver ranges
5d6465e fix shellcheck issue
afbceb1 fix: Catch incorrect values for --optional-deps
b7b4c3e fix: Drop promptui, use builtin reader for prompt
864b1bc fix: Honour settings.NamespaceFromFlag and -n foo
in hypper install
fd9228b fix: Lint all hypper annotations as INFO, not WARNING
641e92c fix: Lint shared-dep and optional-dep as info level
5f24dd6 fix: Look for dependency in correct ns when ns from flag
f5eb6db fix: Skip prompt if optional-deps is not installed
330f510 fix: Update windows goldenfile for lint test
af6c1b8 fix: Use parent ns when shared-dep doesn't have annot
3abf3a4 fixup: replace manifoldco's implmentation by a fork with thread safety
b4aab22 refactor: Extract prompt into own function and add tests
aacfd7a refactor: TestInstallSharedDep()
95652fa refactor: Use enumflag for hypper install --optional-deps
4ecfa1a rework existing eyecandy output to match style guide
4d2f87e tests: Update windows golden file for hypper lint
02f5992 tests: fix windows test
123c669 update golden files
v0.1.0
Changelog
83b60c5 Add docs for pull command
ee88cb9 Add docs generation to workflows
24627c9 Add howto on How to expand a chart with hypper
ae6a123 Add hypper lint
4e23873 Add missing packages from go.sum
171b0eb Add more reference comments
88bcb85 Add pull command
d47d522 Add search repo command
d9c406d Add sh installer
1a827fa Catch unknown type in SetNamespace
4afd3ca Drop "Merge pull request" from changelog
1a753ba Enhance version set
3f285dc Expand on the install tutorial
4419616 Fix 2 small vet issues
ebed428 Fix 2 typos
8582bb0 Fix Unmarshall of the shared-deps for linting
692258e Fix copyright headers
6860c49 Fix helm settings for flags
2b3ea68 Fix tests on windows
e168866 Introduce common method for Name
53c8716 Introduce common method for setNamespace
26700a8 Keep empty folders for lint testing
89af6a5 Only run shellcheck if scripts have changed
a2851bc Re-run lint tests in all os
ae7cd2a Remove print statement from version
0947ee1 Reuse FillHelmSettings to fill the helm settings on init
b125f15 Run helm lint rules ourselves
669c9f7 Set proper dir for publishing docs
d929a52 Small typo in user docs
f87c5de Updating readme with hypper-charts repo
275f19a Updating readme with more detail
b4fd562 add slack link to the readme
47fef13 chore: Drop TODO from runInstall()
5fa65b5 chore: Fix comment of p/a/utils.go.GetName()
98ca550 chore: Import docs{,_test}.go verbatim
9c088f9 chore: Set ns in pkg's List(), not in cmd's runList()
e9101b9 feat: Add CI and doc book badges to README.md
dd1a8dd feat: Add InstallAllSharedDeps, InstallSharedDep
f7ff36e feat: Add hypper docs
command
b42606d feat: Add install --noshared-deps
flag
e6089b9 feat: Add p/a/install.go.LoadChartFromDep()
e8fefb1 feat: Add pkg/action/utils.go.GetNamespace()
2436f97 feat: Error when nested install calls >= 10
c4b2e47 feat: Move CheckIfInstallable() to pkg/action/
f646e85 feat: Padded output for when installing shared-deps
85f2730 feat: Run mdbook test in docs-book gha workflow
1c42369 fix: Add missing Debug output in cmd/ runInstall()
b6674b9 fix: Check against releases in current ns under search
214a083 fix: Check releases vs depChart name and ns
dc71574 fix: Don't pass settings to runInstall(), not needed
a3d7955 fix: Drop action.SharedDependency.Namespace, not needed
618afaa fix: Honour annotations' namespaces of shared-deps
0bdc7f5 fix: Make ShareDependency.List() iterate through ns
4ede26f fix: No debug in "deps get correctly installed" test
0781934 fix: Use shared-dep testchart in TestSharedDepsList()
4ac9f4a fix: warning message in dependency_shared.go
166e3e2 refactor: vars in pkg/action/dependency_shared.go
8e90e7f tests: Add "deps are already installed" test
70468fc tests: Add install-with-shared-deps to cmd/hypper
8e27fc9 tests: Add shared-dep test chart and test for ns
f9fef49 tests: Expand hypper shared-dep list
tests
535d4f8 tests: add new shared-dep chart to cmd/testdata
v0.0.2
Changelog
accb628 Add docs/user/tutorials/{installing,quickstart}.md
9c50f50 Add missing action/upgrade.go license
14b024b Add missing flag to Install
b10eae6 Add new upgrade command
efe7886 Add phrase for installing development releases
0f51f33 Add version command
2d74356 Allow overriding release name via flag
b72f54f Auto pick release name from chart
b3c8e33 Create temp dir with hypper pattern
bdd1b65 Documentation changes based on feedback
28adca7 Don't use --generate-name in quickstart.md
8ec8d2a Fix copyright & license headers
d99c9c0 Fix namespace set on upgrade command
4caa308 Fix upgrade tests
d226e2b Merge pull request #64 from Itxaka/upgrade_command
480f6c9 Merge pull request #66 from rancher-sandbox/update_license_headers
476e5ac Merge pull request #69 from Itxaka/fix_test_temp_dir
1a686aa Merge pull request #71 from Itxaka/fix_values_missing_install
ab3de8f Merge pull request #72 from Itxaka/fix_upgrade_license_header
273427a Merge pull request #74 from Itxaka/fix_upgrade_namespace
aa80681 Merge pull request #79 from mattfarina/fix-ns-store
8911fe0 Merge pull request #80 from rancher-sandbox/viccuad/add-shared-deps
8d18ace Merge pull request #81 from rancher-sandbox/deterministic_names
9508eff Merge pull request #82 from Itxaka/fix_uninstall_namespace_flag
57b90b7 Merge pull request #86 from rancher-sandbox/viccuad/add-tutorials
60ce9dd Merge pull request #87 from rancher-sandbox/viccuad/gha-artifacts
1b35a23 Merge pull request #88 from mattfarina/cleanup-from-80
510bdd2 Merge pull request #91 from mattfarina/bump-helm-3.5.3
64b5c8d Merge pull request #96 from Itxaka/releaser
ae7a96e Merge pull request #98 from Itxaka/add_version
5ff9c14 Merge pull request #99 from Itxaka/fix_bindir_win
a5c23de Minor fixes on top of #80
54309b6 Mock the helm timestamper
095fc87 Move license check to own gh action
e09b9b6 Moving to helm 3.5.3 release
f5c5ecc Remove --generate-name
flag from hypper
8bf6d34 Remove os matrix from license-check.yml
680832e Rudiementary copyright/license checker
284533a Save GHA job results as artifacts, for 20 days
d8dfdf1 Set the client namespace on uninstall
e03c3b9 Small fixes and comments addressed
0b19606 Use our Envsettings
19e58a4 Use relative path for bin dir in Makefile
91ad2cb chore: Add shared-deps annota to cmd/hypper/testdata/testcharts/hypper-annot
ebe8a78 chore: Drop old //TODO in cmd/hypper/hypper_test.go
46bfe39 chore: Refactor line in cmd/hypper_test.go, closer to err
b6dfbe9 doc: Reword pkg/action/list.go.NewList() doc comment
9b63dbd feat: Implement hypper shared-dep list
in cmd/hypper/
9010afe feat: Implement functions in pkg/action/dependency_shared*
e434917 feat: Import cmd/helm/dependency* as cmd/hypper/dependency_shared*
869361f feat: Import helm/pkg/action/dependency* as dependency_shared*
b766b50 fix bug in test
341d519 fix(storage): Fixing namespace of install storage
0ba6417 fix: Make pkg/action/action_test.go.with*() composable
c416987 fix: Reinitialize release stores with correct ns in tests
2958a8e use goreleaser to provide hypper builds
8116441 use the name from the chart as default if none is specified