Documentation
¶
Overview ¶
Package php provides dependency resolution for PHP Composer packages.
Overview ¶
This package implements deps.Language for PHP, supporting:
- Packagist registry resolution via packagist client
- composer.json manifest parsing
Registry Resolution ¶
Use [Language.Resolver] to fetch dependencies from Packagist:
resolver, _ := php.Language.Resolver()
g, _ := resolver.Resolve(ctx, "symfony/console", deps.Options{MaxDepth: 10})
Manifest Parsing ¶
Parse composer.json files:
parser, _ := php.Language.Manifest("composer", nil)
result, _ := parser.Parse("composer.json", deps.Options{})
Note: composer.json contains direct dependencies in "require". The resolver fetches transitive dependencies from Packagist.
packagist: github.com/matzehuels/stacktower/pkg/integrations/packagist deps.Language: github.com/matzehuels/stacktower/pkg/deps.Language
Index ¶
Constants ¶
This section is empty.
Variables ¶
var Language = &deps.Language{ Name: "php", DefaultRegistry: "packagist", ManifestTypes: []string{"composer"}, ManifestAliases: map[string]string{"composer.json": "composer"}, NewResolver: newResolver, NewManifest: newManifest, ManifestParsers: manifestParsers, }
Language provides PHP dependency resolution via Packagist. Supports composer.json manifest files.
Functions ¶
This section is empty.
Types ¶
type ComposerJSON ¶
type ComposerJSON struct {
// contains filtered or unexported fields
}
ComposerJSON parses composer.json files. It extracts direct and dev dependencies and optionally resolves them via Packagist.
func (*ComposerJSON) IncludesTransitive ¶
func (c *ComposerJSON) IncludesTransitive() bool
func (*ComposerJSON) Parse ¶
func (c *ComposerJSON) Parse(path string, opts deps.Options) (*deps.ManifestResult, error)
func (*ComposerJSON) Supports ¶
func (c *ComposerJSON) Supports(name string) bool
func (*ComposerJSON) Type ¶
func (c *ComposerJSON) Type() string