Skip to main content

Crate ephemeris_forge

Crate ephemeris_forge 

Source
Expand description

Forge-independent reconciliation types shared by forge adapters.

ModulesΒ§

access πŸ”’
Team and collaborator access policy and the planning shared by every forge.
backend πŸ”’
The contract between the shared planner and a forge adapter.
codec πŸ”’
A planned [Value] round-tripped through JSON into a concrete shape, which is how a forge adapter decodes a planned field back into the typed request or response body a write expects.
collection πŸ”’
diff πŸ”’
label πŸ”’
Repository label policy shared by every forge.
limitation πŸ”’
mode πŸ”’
name πŸ”’
name_set πŸ”’
comparison and write.
operation πŸ”’
plan πŸ”’
Planning and application independent of a forge transport.
refusal πŸ”’
release πŸ”’
Release and pull request wire shapes both forges speak.
repo πŸ”’
The <owner>/<name> pair the CLI operates on.
report πŸ”’
segment πŸ”’
state πŸ”’
Evaluated repository-settings input consumed by the forge adapters.
string_enum πŸ”’
transport πŸ”’
HTTP transport shared by every forge adapter.
variable_name πŸ”’
webhook πŸ”’

MacrosΒ§

non_empty_name
Define a string newtype that is never empty.
operation_enum
Define the enum that wraps the operations of each resource.
string_enum
Define an enum whose variants have fixed wire names.

StructsΒ§

Access
Repository team and collaborator access policy.
AccessState
The team and collaborator grants a forge reports for one repository.
AssetWire
A release asset as the forge returns it.
Collection
A keyed collection of forge items, such as labels or webhooks.
DraftRelease
The body that creates a draft release.
EmptyTeamName
A team name was the empty string.
EmptyUserName
A user name was the empty string.
FieldChange
One field that differs, with its live and desired values.
FieldDiff
Fields compared on one resource, split into those that differ and those that already match.
FieldValue
A field value kept in a form that renders on one line.
Grants
What the forge reports about team access to one repository.
Http
Shared HTTP transport for a forge’s REST API.
InvalidLabelColor
A label color was not six hexadecimal digits.
Label
A label with the fields every forge has.
LabelColor
A label color of six hexadecimal digits, stored in lowercase and without a leading hash.
Labels
Repository label policy.
NameSet
Names, sorted and deduplicated on construction.
ObjectWire
A Git object wrapper, as returned for an annotated tag.
Plan
A pure reconciliation plan bound to one target repository.
Planned
The result of Backend::plan.
PublishRelease
The body that publishes a draft release.
PullRequestCreate
The body that opens a pull request.
RefObject
The object a Git ref points at.
ReleaseWire
A release as the forge returns it.
RemoteState
A forge-tagged repository configuration.
RepoRef
A repository named on the command line.
RepoRefParseError
A RepoRef could not be parsed from its <owner>/<name> form.
Report
The plan result used by both text and machine reports.
RequestLabel
The method and path of a request, as it appears in an error.
RetryPolicy
How a retryable failure is retried before it is reported.
Shadowing
Effective protection of the default branch.
TeamName
A team name, which is never empty.
TransportBuildError
Failure building the underlying HTTP client.
UnknownValue
A string that names none of the variants of an enum.
UserName
A user name, which is never empty and is compared in lowercase.
VariableNameRules
The names a forge refuses for Actions variables, beyond the shared shape.

EnumsΒ§

AccessDecision
One step toward the declared team access.
AccessOperation
A write to team or collaborator grants that every forge has.
Caller
The account the tool runs as.
Change
What the plan does to one resource.
CollaboratorDecision
One step toward the declared collaborator access.
Forge
Supported forges.
Limitation
A setting the forge exposes but the plan cannot change or manage.
Lockout
A grant that carries the caller’s own access and that a plan would remove.
Mode
How items that the configuration does not declare are treated.
Observed
A permission read from a forge, which may be one this tool cannot set.
PermissionScope
Where a forge stores a team’s permission.
PlanError
A planning or application error.
Refusal
A reason a plan cannot be applied.
TransportError
Anything that stops a request from producing a usable answer.
VariableNameError
A set of Actions variable names that a forge cannot store.
WebhookContentType
The body format of a webhook delivery.

TraitsΒ§

Backend
An adapter that reads one forge and applies planned writes to it.

FunctionsΒ§

encode
Encode a request body that always encodes: a facet-derived struct of plain fields or a [Value] this crate built.
path_segment
Percent-encode value for use as one segment of a request path.
query_value
Percent-encode value for use as a query parameter value.
redecode
Round-trip value through JSON into T.
summarize
Trim a forge error body so a huge HTML page cannot flood the output.