Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: OCamlPro/opam
base: 377425a98d
head fork: OCamlPro/opam
compare: 0.8.0
Checking mergeability… Don't worry, you can still create the pull request.
Commits on Oct 16, 2012
@samoht samoht Revert "Bump trunk version to 0.8.0"
This reverts commit 8a688ab.
@samoht samoht Fix installation of OPAM when installing from opam c6e5948
@samoht samoht Remove autogenerated file a67b041
@samoht samoht Bump trunk version to 0.8.0 cd00969
@samoht samoht Revert "Bump trunk version to 0.8.0"
This reverts commit 8a688ab.
@samoht samoht Fix META file dbb5887
@samoht samoht Bump trunk version to 0.8.0 0fcda0d
@samoht samoht Update to dose 3.1.2 5356f04
@samoht samoht Apply the patches before substituting files 9ac285a
Commits on Oct 17, 2012
@samoht samoht Upgrade opam to dose 3.1.2 4cf7dd6
@samoht samoht First, substitute patches, then apply patches, then substitute files 4f6439b
@samoht samoht Merge branch 'master' of
@venator venator [fix] Adding the OpamRepositoryName module to installed libs ee4b38f
@samoht samoht Merge pull request #251 from venator/master
Installing the OpamRepositoryName lib
Commits on Oct 18, 2012
@avsm avsm the Jenkins scripts weren't initialising ocaml4 PATH early enough, so…
… the OPAM/config system-ocaml-version was incorrect. The PATH was set to ocaml4 only after the init before.

For some reason, the detections of 'incorrect system ocaml version' was not output here. Is this because of the `--yes` flag?
@samoht samoht Merge pull request #252 from avsm/master
the Jenkins scripts weren't initialising ocaml4 PATH early enough
@samoht samoht Big spring clean-up in the solver API. Now, all the cudf/debian thing…
…s only appear here, everywhere else we only use opam packages.
@samoht samoht Spring clean-up in the client API.
* add back reinstall code
* do something about the heuristics
Commits on Oct 19, 2012
@samoht samoht Various fixes following the API change in the solver.
Install heuristic and hanlde of reinstall are still missing
@samoht samoht More simplifications. We always give raw package names to the solver,…
… unless a version constraint is explicitely stated by the user.
@samoht samoht Add back an install heuristic to always try to install the latest ver…
…sions of the packages
@samoht samoht Add back package minimization on installation. 741c029
@samoht samoht Add back the reinstall mechanism 9a0f723
@samoht samoht Install seems to work on real example (ie. on core).
As the state space grew quite large very easily, do not try to explore it completely if there are too many possibilites.

Upgrade seems to 'almost work'.

The reinstall thing is not yet completly implemented (need to effectively recompile the package when we build actions from universe diff).
Commits on Oct 28, 2012
@samoht samoht Fix libinstall target 1fb2cf9
Commits on Oct 30, 2012
@chambart chambart Use server provided name when downloading files
It allows to detect the kind of file using the extension when the url is redirected ( like tarballs of tags on github )
Pietro Abate Add python-based unit tests 742e2d6
Commits on Nov 03, 2012
@samoht samoht Merge pull request #271 from chambart/master
Allow to use github tag tarballs as compiler sources
Commits on Nov 05, 2012
@samoht samoht Merge pull request #273 from abate/unittest
Add python-based unit tests
Commits on Nov 06, 2012
@samoht samoht Fix reinstall 294c368
@samoht samoht More clever handling of optional dependencies.
Now the optional dependencies are automatically added to the depends field when it is installed. This ensure that the solver checks that the right package versions are installed, and also it should solve the case where we have an optional conjunction.

For instance:
depopts: [ "async" ("lwt" & "ssh") ]

is translated to:
depends += [ "lwt" & "ssh" ]

if either any version of lwt or ssh is installed.
@samoht samoht Simplify the code for reinstall
Now reinstalling a package just means recompiling the packages dependings on the packages we want to reinstall, without trying to upgrade these packages at all.
@samoht samoht Improve the heuristic to select a shorter range of versions to try.
For each package, we now try all the versions from min(currenlty-installed, installed-in-the-first-approximation) and max-version.
@samoht samoht Enumerate the solution in the right order, so now we can always explo…
…re the first 10_000 states, even if the state space is bigger.
@samoht samoht Update CHANGES e1e214a
@samoht samoht Merge branch 'master' of 2368c70
@samoht samoht Cosmetic changes. Add some comments to explain the order in which we …
…explore the state space.
@samoht samoht [solver] explore the state space for at most 5 seconds ca54cb7
Commits on Nov 07, 2012
@samoht samoht [solver] fix the versions for packages which have nothing to do with …
…what we are upgrading
@samoht samoht [solver] More API clean-ups
split opamSolver into 3 files:
* contains the interaction with CUDF engine
* contains the heuristics implemented in OPAM (and which can be reuse for any CUDF-based system)
* contains the OPAM-specific interfaces with the solver
@samoht samoht [solver] use external solver if available
Original patch from @rdicosmo

So now, if opam detects 'aspcud' in the path (apt-get install aspcud) it tries to use it instead of the custom-made heuristics.
@samoht samoht Update CHANGES 5c5924c
@samoht samoht Rename OpamAlias -> OpamSwitch f926210
@samoht samoht Remove system-ocaml-version from ~/.opam/config as now this informati…
…on is stored into ~/.opam/compilers/system.comp:version
@samoht samoht [client] Start splitting into pieces. was 3k line-long, it was becoming difficult to maintain it properly.
@samoht samoht Continue to split into pieces.
Now we have to handle configuration requests
@samoht samoht Re-organize the source files in a more consistent way. 32282c8
@samoht samoht Update META and opam.install.
Ideally these should be generated by ocp-build ...
@samoht samoht Fix distclean rule now has changed location 237bc5c
@samoht samoht Continue to split into pieces.
Now there is which deals with interfacing with asking the solver and applying the results.
@samoht samoht Update API doc a41c6cc
@samoht samoht Upgrade ~/.opam/config each time we upgrade opam to help preserving b…
@samoht samoht Update prerequesites
curl -J only works with curl >= 7.20.0, which is not available under leopard (but a newest version is in homebrew)
@samoht samoht [solver] Packages should appear either in wish_update or in wish_inst…
…all, not in both, otherwise the solver is confused.
@samoht samoht Sorting is not necessary 38d2f72
@samoht samoht Fix #270
Catch the exception if $HOME is not defined.
@samoht samoht Fix #275
Don't really what happened there, but do not let the user in a inconstent state: in case of error, just roll-back to the current compiler switch.
@samoht samoht Fix #277
Do not display scary messages on stdout when running 'patch --dryrun' (when guessing the -pX argument)
@samoht samoht Fix #266
Build directories are now removed when builds are successful.
@samoht samoht Fix #262
OpamParallel now writes errors of its child nodes in ~/.opam/$PID
Commits on Nov 08, 2012
@samoht samoht Fix #264
This bring a more consistent semantics to install/reinstall.

So now you can install even if foo is already installed (ie = explicit downgrade or upgrade)
And you can't reinstall if foo is installed with version gna.
@samoht samoht Prepare 0.8.0 release b3a3b92
@samoht samoht Fix 'opam update' for curl backends ... 2b6ea79
Commits on Nov 09, 2012
@samoht samoht Fix typo, thx to @pygatea c9823d6
@samoht samoht Small improvment in the brute-force state explorer. 77501f6
@samoht samoht Fix downloading of archive for rsync repositories. Regression introdu…
…ced by 641c07f