func NewUpdater(r Release, opts ...Option) (*Updater, error) {
	u := &Updater{
		release: r,
	}
	for _, o := range opts {
		if err := o(u); err != nil {
			return nil, err
		}
	}
	if u.Fetcher.Client == nil {
		u.Fetcher.Client = http.DefaultClient
	}
	if u.Fetcher.URL == nil {
		var err error
		u.Fetcher.URL, err = upstreamBase.Parse(string(u.release) + ".xml")
		if err != nil {
			return nil, err
		}
	}
	return u, nil
}
// NewUpdater configures an updater to fetch the specified Release.
NewUpdater configures an updater to fetch the specified Release.
// NewUpdater configures an updater to fetch the specified Release .
func NewUpdater(r Release, opts ...Option) (*Updater, error) {
	u := &Updater{
		release: r,
	}
	for _, o := range opts {
		if err := o(u); err != nil {
			return nil, err
		}
	}
	if u.Fetcher.Client == nil {
		u.Fetcher.Client = http.DefaultClient
	}
	if u.Fetcher.URL == nil {
		var err error
		u.Fetcher.URL, err = upstreamBase.Parse(string(u.release) + ".xml")
		if err != nil {
			return nil, err
		}
	}
	return u, nil
}
func NewUpdater ( r Release , opts ... Option ) ( * Updater , error ) { u := & Updater { release : r , } for _ , o := range opts { if err := o ( u ) ; err != nil { return nil , err } } if u . Fetcher . Client == nil { u . Fetcher . Client = http . DefaultClient } if u . Fetcher . URL == nil { var err error u . Fetcher . URL , err = upstreamBase . Parse ( string ( u . release ) + " " ) if err != nil { return nil , err } } return u , nil }
NewUpdater configures an updater to fetch the specified Release.
NewUpdater configures an updater to fetch the specified Release .