Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
L
lambda-rust
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3
    • Issues 3
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Iris
  • lambda-rust
  • Merge Requests
  • !2

Merged
Opened Nov 27, 2016 by Ralf Jung@jungOwner

New opam-based CI and build system

  • Overview 16
  • Commits 1
  • Pipelines 6
  • Changes 11

Submodules are gone. If you have opam set up, make build-dep will install the right version of everything.

This is not exactly what we discussed last week; I think I found something better. In particular, this approach lets us also figure out for historic lambdaRust versions, which commit of iris they needed. No magic branches in other repositories are needed, everything is local here.

Essentially, since the opam files do not support documenting detailed enough version information, I added a new file opam.pins that "enhances" the opam file appropriately. This file contains pins (one per line) that have to be set to compile lambdaRust. The script in build/opam-pins.sh applies those pins - and crucially, it does so recursively: When it finds a pin that is one of our git repositories, it will download the opam.pins files for that commit and also apply its pins. So if lambdaRust pins a particular commit of iris, and iris pins a particular commit of the prelude, then doing make build-dep in lambdaRust will follow this transitive chain and install the correct versions of iris and the prelude.

Cc @jjourdan @robbertkrebbers

Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Reference: iris/lambda-rust!2
Source branch: ci

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.