Versions in this module Expand all Collapse all v0 v0.1.4 Jun 10, 2026 Changes in this version + const MethodAuto + const MethodGit + const MethodTarball + var ErrArchiveTooLarge = errors.New("archive too large") + var ErrRateLimited = errors.New("github api rate limited") + var ErrUnexpectedArchiveLayout = errors.New("unexpected archive layout") + var ErrUnsafeArchive = errors.New("unsafe archive entry") + var ErrVersionNotFound = errors.New("wordpress version not found upstream") + func EnsureRepo(ctx context.Context, opts DownloadOptions) (repoPath, version string, err error) + func NewCakePHPFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewCarbonFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewCodeIgniterFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewComposerFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewDoctrineFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewFlightFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewGuzzleFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewHyperfFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewLaminasFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewLaravelFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewLivewireFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewMonologFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewPHPUnitFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewPestFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewPhalconFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewSlimFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewSwooleFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewSymfonyFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewTwigFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewWordPressFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewWorkermanFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + func NewYiiFactory(repoPath string, opts registry.FactoryOptions) (source.Source, error) + type DownloadOptions struct + APIBaseURL string + CacheDir string + GitRepoURL string + MaxExtractedB int64 + MaxRetries int + Method string + Refresh bool + TarballBaseURL string + Token string + UserAgent string + Version string + type Option func(*PHPSource) + func WithConfig(cfg PHPConfig) Option + func WithRef(ref string) Option + type PHPConfig struct + Description string + LibraryID string + Name string + SourceDirs []string + SourceURL string + type PHPSource struct + func New(repoPath string, opts ...Option) *PHPSource + func (s *PHPSource) DetectWrapper(method *source.Method) (bool, string, string) + func (s *PHPSource) DiscoverEntities(ctx context.Context, fetch source.FetchFunc) ([]string, error) + func (s *PHPSource) ID() string + func (s *PHPSource) Meta() source.LibraryMeta + func (s *PHPSource) ParseEntity(ctx context.Context, url string, body []byte) (*source.Entity, []string, error) + func (s *PHPSource) ParseMethod(ctx context.Context, url string, body []byte) (*source.Method, error) + func (s *PHPSource) ParseSourceCode(url string, body []byte) (string, error) + func (s *PHPSource) ResolveWrapperURL(targetName, targetKind, entitySlug string) string