Raxol.Core.Runtime.Plugins.DependencyManager.Version (Raxol v0.3.0)
View SourceHandles version parsing and constraint checking for plugin dependencies. Provides sophisticated version constraint handling with support for complex requirements.
Summary
Functions
Checks if a version satisfies a version requirement.
Parses a single version requirement.
Parses a version requirement string into a format suitable for version matching.
Functions
Checks if a version satisfies a version requirement.
Parameters
version
- The version string to checkrequirement
- The version requirement string
Returns
:ok
- If the version satisfies the requirement{:error, reason}
- If there's an error or the version doesn't satisfy the requirement
Parses a single version requirement.
Parameters
req
- The version requirement string
Returns
{:ok, parsed}
- The parsed requirement{:error, :invalid_requirement}
- If the requirement is invalid
Parses a version requirement string into a format suitable for version matching.
Parameters
requirement
- The version requirement string
Returns
{:ok, parsed_requirement}
- The parsed requirement{:error, :invalid_requirement}
- If the requirement is invalid
Examples
iex> Version.parse_version_requirement(">= 1.0.0")
{:ok, ">= 1.0.0"}
iex> Version.parse_version_requirement(">= 1.0.0 || >= 2.0.0")
{:ok, {:or, [">= 1.0.0", ">= 2.0.0"]}}