package opam-state
Install
Dune Dependency
Authors
-
David Allsopp
-
VVincent Bernardoff <vb@luminar.eu.org>
-
RRaja Boujbel <raja.boujbel@ocamlpro.com>
-
KKate Deplaix <kit-ty-kate@outlook.com>
-
RRoberto Di Cosmo <roberto@dicosmo.org>
-
TThomas Gazagnaire <thomas@gazagnaire.org>
-
LLouis Gesbert <louis.gesbert@ocamlpro.com>
-
FFabrice Le Fessant <Fabrice.Le_fessant@inria.fr>
-
AAnil Madhavapeddy <anil@recoil.org>
-
GGuillem Rieu <guillem.rieu@ocamlpro.com>
-
RRalf Treinen <ralf.treinen@pps.jussieu.fr>
-
FFrederic Tuong <tuong@users.gforge.inria.fr>
Maintainers
Sources
md5=0fb8e9f62683772592b1bc2d80a763b8
sha512=1c617b1c1656817a47ef65d02fc990357476f6c1b406c02717e5ff702a2c42e9f3818c2ddd54470926b2c5344c1c285216471a684d261be7a3ec84b05a32e726
doc/opam-state/OpamFormatUpgrade/index.html
Module OpamFormatUpgrade
Source
This modules handles the conversion from older repository and package versions to the current one
Raised when the opam root has been updated to a newer format, and further action (opam init/update) is needed. Upgrade_done conf reinit
specifies the new config file and a reinit function to call instead of default (see OpamCliMain.main_catch_all
).
The latest version of the opam root format, that normal operation of this instance of opam requires
val as_necessary :
?reinit:(OpamFile.Config.t -> unit) ->
'a OpamStateTypes.lock ->
OpamSystem.lock ->
OpamTypes.dirname ->
OpamFile.Config.t ->
OpamFile.Config.t * OpamStateTypes.gt_changes
as_necessary requested_lock global_lock root config
Runs the upgrade from its current format to the latest compatible version for the opam root at root
directory. Performs an on-the-fly upgrade (loaded state, not written) if possible: no hard upgrade needed, and no write lock required (requested_lock
). If upgrade need to be written (hard upgrade), a write lock on the global state (global_lock
) is taken and when it's done raises Upgrade_done updated_config
. Otherwise, it returns the upgraded or unchanged config file and a status of remaining upgrades.
val as_necessary_repo_switch_light_upgrade :
'a OpamStateTypes.lock ->
[ `Repo | `Switch ] ->
'b OpamStateTypes.global_state ->
unit
val hard_upgrade_from_2_1_intermediates :
?reinit:(OpamFile.Config.t -> unit) ->
?global_lock:OpamSystem.lock ->
OpamTypes.dirname ->
unit
val opam_file_from_1_2_to_2_0 :
?filename:OpamFile.OPAM.t OpamFile.t ->
OpamFile.OPAM.t ->
OpamFile.OPAM.t
Converts the opam file format, including rewriting availability conditions based on OCaml-related variables into dependencies. The filename is used to report errors
val opam_file :
?quiet:bool ->
?filename:OpamFile.OPAM.t OpamFile.t ->
OpamFile.OPAM.t ->
OpamFile.OPAM.t
Runs the opam file format from the file's format to current. Supplying filename
enables additional notification messages
val comp_file :
?package:OpamTypes.package ->
?descr:OpamFile.Descr.t ->
OpamFile.Comp.t ->
OpamFile.OPAM.t
Convert the comp file to an opam one, using OpamFile.Comp.to_package
and applying filter rewriting
val opam_file_with_aux :
?quiet:bool ->
?dir:OpamTypes.dirname ->
files:bool ->
?filename:OpamFile.OPAM.t OpamFile.t ->
OpamFile.OPAM.t ->
OpamFile.OPAM.t
Runs the opam file format from the file's format to current, and adds data from 'url' and 'descr' files found in the specified dir or the opam file's metadata dir, if not already present in the opam file. If files
is true
, also adds the names and hashes of files found below 'files/'. Supplying filename
enables additional notification messages