diff --git a/src/global/url.ml b/src/global/url.ml index 87814bebdb..aadb5751ba 100644 --- a/src/global/url.ml +++ b/src/global/url.ml @@ -3,15 +3,15 @@ let packages = "/packages" let packages_search = "/packages/search" let packages_autocomplete_fragment = "/packages/autocomplete" let with_hash = Option.fold ~none:"/p" ~some:(( ^ ) "/u/") -let package ?hash v = with_hash hash ^ "/" ^ v let package_docs v = "/p/" ^ v ^ "/doc" -let with_version = Option.value ~default:"latest" -let package_with_version ?version ?hash v = - with_hash hash ^ "/" ^ v ^ "/" ^ with_version version +let with_version = + Option.fold ~none:"/latest" ~some:(fun v -> if v = "" then v else "/" ^ v) + +let package ?version ?hash v = with_hash hash ^ "/" ^ v ^ with_version version let package_doc ?hash ?version ?(page = "index.html") v = - with_hash hash ^ "/" ^ v ^ "/" ^ with_version version ^ "/doc/" ^ page + with_hash hash ^ "/" ^ v ^ with_version version ^ "/doc/" ^ page let community = "/community" let success_story v = "/success-stories/" ^ v diff --git a/src/ocamlorg_frontend/components/package_breadcrumbs.eml b/src/ocamlorg_frontend/components/package_breadcrumbs.eml index 9c99c6178f..6aaf2e7dee 100644 --- a/src/ocamlorg_frontend/components/package_breadcrumbs.eml +++ b/src/ocamlorg_frontend/components/package_breadcrumbs.eml @@ -51,7 +51,7 @@ let render_package_and_version = let version = if is_latest_url then None else Some package.version in
  • - <%s package.name %> + <%s package.name %>