Documentation
¶
Overview ¶
Package endoflife provides a client for the endoflife.date API. It returns product lifecycle data including release dates, EOL dates, and support status for software products and runtimes.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client queries the endoflife.date API.
func (*Client) GetAllProducts ¶
GetAllProducts returns the list of all product names tracked by endoflife.date.
type Cycle ¶
type Cycle struct {
Name string `json:"cycle"`
ReleaseDate Date `json:"releaseDate"`
EOL DateOrBool `json:"eol"`
Latest string `json:"latest"`
LatestReleaseDate Date `json:"latestReleaseDate"`
LTS DateOrBool `json:"lts"`
Support DateOrBool `json:"support"`
ExtendedSupport DateOrBool `json:"extendedSupport"`
}
Cycle contains lifecycle information for a single release cycle of a product.
func (*Cycle) IsSupported ¶
IsSupported reports whether this cycle still receives active support (bug fixes, not just security patches).
type Date ¶
Date is a date parsed from the "YYYY-MM-DD" format used by the API.
func (Date) MarshalJSON ¶
func (*Date) UnmarshalJSON ¶
type DateOrBool ¶
DateOrBool represents a field that can be either a date string ("2025-04-30") or a boolean (true/false). The endoflife.date API uses this for eol, lts, support, and extendedSupport fields.
func (DateOrBool) MarshalJSON ¶
func (d DateOrBool) MarshalJSON() ([]byte, error)
func (*DateOrBool) UnmarshalJSON ¶
func (d *DateOrBool) UnmarshalJSON(data []byte) error