bold-brew/internal/models/cask.go
Vito Castellano 6c80585431
chore: release version 2.0.0 - Cask support and XDG compliance (#30)
* feat: add leaves filter to show explicitly installed packages (#25)

Add new filter [L] to display only "leaf" packages - those installed
explicitly by the user and not as dependencies of other packages.

* refactor: Migrate to Podman with OCI Containerfile and enhanced Makefile (#26)

* refactor: migrate from Docker to Podman with OCI Containerfile

Replace Docker with Podman for better security and OCI compliance.
Switch from Dockerfile to standard Containerfile format.

* chore: upgrade Go from 1.24 to 1.25

Update Go version to 1.25 to support latest goreleaser v2 and benefit from improved performance and language features.

* refactor: migrate to Podman and enhance Makefile

Replace Docker with Podman and upgrade Makefile with help system and new developer-friendly targets.

* chore: upgrade to Go 1.25 and golangci-lint v2.5.0

Update Go to 1.25 and golangci-lint to v2.5.0 for better tooling support.

* feat: add security scanning with govulncheck and gosec (#27)

Add comprehensive security scanning to the project with vulnerability checks and static analysis tools.

* feat: Add complete Casks support with unified UI (#28)

* feat(cask): add backend support for Homebrew casks

Implement complete backend infrastructure for managing Homebrew casks alongside formulae, preparing for unified UI.

* feat(cask): add complete Homebrew casks support with unified UI

Implement full backend and UI support for managing Homebrew casks alongside formulae in a unified interface.

* fix(cask): parse cask analytics correctly

Fix cask analytics not being displayed (showing 0 for all casks).

* feat(cask): add complete Homebrew casks support with unified UI

Implement full backend and UI support for managing Homebrew casks alongside formulae in a unified interface.

* fix: create copy to avoid implicit memory aliasing

* feat: implement XDG Base Directory Specification with github.com/adrg/xdg (#29)

Implement XDG Base Directory Specification using the github.com/adrg/xdg package for robust cross-platform support.
2025-10-13 21:26:18 +02:00

31 lines
1.8 KiB
Go

package models
// Cask represents a Homebrew cask (GUI application).
type Cask struct {
Token string `json:"token"`
FullToken string `json:"full_token"`
OldTokens []string `json:"old_tokens"`
Tap string `json:"tap"`
Name []string `json:"name"`
Description string `json:"desc"`
Homepage string `json:"homepage"`
URL string `json:"url"`
Version string `json:"version"`
Installed *string `json:"installed"` // Null if not installed, version string if installed
InstalledTime *int64 `json:"installed_time"` // Unix timestamp
Outdated bool `json:"outdated"`
SHA256 string `json:"sha256"`
Deprecated bool `json:"deprecated"`
DeprecationDate interface{} `json:"deprecation_date"`
DeprecationReason interface{} `json:"deprecation_reason"`
Disabled bool `json:"disabled"`
DisableDate interface{} `json:"disable_date"`
DisableReason interface{} `json:"disable_reason"`
TapGitHead string `json:"tap_git_head"`
RubySourcePath string `json:"ruby_source_path"`
RubySourceChecksum RubySourceChecksum `json:"ruby_source_checksum"`
Analytics90dRank int // Internal: Populated from analytics
Analytics90dDownloads int // Internal: Populated from analytics
LocallyInstalled bool `json:"-"` // Internal flag
IsCask bool `json:"-"` // Internal flag to distinguish from formulae
}