Skip to main content

oa_registry_hosts

Function oa_registry_hosts 

Source
pub fn oa_registry_hosts() -> Vec<UserExtensionHost>
Expand description

Returns the built-in curated set of open-access registry host patterns.

Activated via [network] trust_oa_registries = true in config.toml (issue #405). Companion to academic_repo_hosts, and deliberately a separate flag: that set is “institutions publish their own Green OA here”, this one is “cross-publisher registries and repositories index or host Gold OA here”. They are different trust arguments, so a user can take either without the other.

Why this exists: the default allowlist covers publishers, so a Green-OA copy on an institutional repository was reachable behind one flag while cross-publisher OA registries were not reachable at all.

DOAJ is deliberately NOT in this set. ADR-0037 promoted doaj.org to the default oa_publisher_allowlist unconditionally, because the project had already trusted it under the "doaj" metadata key and the two keys simply disagreed. The hosts below are different: none of them appears anywhere in http.rs, so for them this flag is genuinely new trust and opt-in is correct.

Every entry is a registry or repository whose purpose is open distribution – or, since ADR-0066, a national open-access platform whose default is free access (J-STAGE) – and never a commercial publisher platform: enabling this must not become a way to reach paywalled content. Both the apex and the *. wildcard are listed where the apex itself serves content: a single-suffix wildcard does not match the apex (validate_pattern), and the DOAJ redirect in #405 targeted the bare apex.