Skip to content

Commit 00b2a13

Browse files
committed
[ls] return unresolved packages as a warning instead of an error
1 parent 0e154db commit 00b2a13

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

internal/devbox/packages.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ type UpdateVersion struct {
5252
func (d *Devbox) Outdated(ctx context.Context) (map[string]UpdateVersion, error) {
5353
lockfile := d.Lockfile()
5454
outdatedPackages := map[string]UpdateVersion{}
55+
var warnings []string
5556

5657
for _, pkg := range d.AllPackages() {
5758
// For non-devbox packages, like flakes, we can skip for now
@@ -61,7 +62,8 @@ func (d *Devbox) Outdated(ctx context.Context) (map[string]UpdateVersion, error)
6162

6263
lockPackage, err := lockfile.FetchResolvedPackage(pkg.Versioned())
6364
if err != nil {
64-
return nil, errors.Wrap(err, "failed to fetch resolved package")
65+
warnings = append(warnings, fmt.Sprintf("Note: unable to check updates for %s", pkg.CanonicalName()))
66+
continue
6567
}
6668
existingLockPackage := lockfile.Packages[pkg.Raw]
6769
if lockPackage.Version == existingLockPackage.Version {
@@ -71,6 +73,12 @@ func (d *Devbox) Outdated(ctx context.Context) (map[string]UpdateVersion, error)
7173
outdatedPackages[pkg.Versioned()] = UpdateVersion{Current: existingLockPackage.Version, Latest: lockPackage.Version}
7274
}
7375

76+
if len(warnings) > 0 {
77+
for _, warning := range warnings {
78+
fmt.Fprintf(d.stderr, "%s\n", warning)
79+
}
80+
}
81+
7482
return outdatedPackages, nil
7583
}
7684

0 commit comments

Comments
 (0)