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=7a902ac41ad9da83a0e80576c9d9c122
sha512=a447dab252e93ea81e0cf4ab1a64c9386911af5fd45344f1ac5f71eb0abb472f660e542c645e3b0657715b5ed81903a581152cdac9e24cabc72c5bf654743ae8
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