diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2019-11-08 18:19:17 -0300 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2019-11-29 18:36:42 -0300 |
commit | acf8bcb82ae697a5bac94bfbe93c3ad9d7487795 (patch) | |
tree | 62b7239b8701526d69833d9a64f5757bdee2e1df /spec/fixtures | |
parent | dfc277954d2fe2586dc491cdc1216bae22399251 (diff) | |
download | luarocks-acf8bcb82ae697a5bac94bfbe93c3ad9d7487795.tar.gz luarocks-acf8bcb82ae697a5bac94bfbe93c3ad9d7487795.tar.bz2 luarocks-acf8bcb82ae697a5bac94bfbe93c3ad9d7487795.zip |
dependency pinning: luarocks.lock file and --pin flag
This adds support for pinning dependencies in projects and rocks:
* Adds a new flag called `--pin` which creates a `luarocks.lock`
when building a rock with `luarocks build` or `luarocks make`.
This lock file contains the exact version numbers of every
direct or indirect dependency of the rock (in other words,
it is the transitive closure of the dependencies.)
For `make`, the `luarocks.lock` file is created in the current
directory.
The lock file is also installed as part of the rock in
its metadata directory alongside its rockspec.
When using `--pin`, if a lock file already exists, it is
ignored and overwritten.
* When building a rock with `luarocks make`, if there is a
`luarocks.lock` file in the current directory, the exact
versions specified there will be used for resolving dependencies.
* When building a rock with `luarocks build`, if there is a
`luarocks.lock` file in root of its sources, the exact
versions specified there will be used for resolving dependencies.
* When installing a `.rock` file with `luarocks install`, if the
rock contains a `luarocks.lock` file (i.e., if its dependencies
were pinned with `--pin` when the rock was built), the exact
versions specified there will be used for resolving dependencies.
Diffstat (limited to 'spec/fixtures')
-rw-r--r-- | spec/fixtures/a_repo/a_rock-2.0-1.src.rock | bin | 0 -> 541 bytes | |||
-rw-r--r-- | spec/fixtures/a_repo/manifest | 5 | ||||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.1 | 5 | ||||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.1.zip | bin | 350 -> 358 bytes | |||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.2 | 5 | ||||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.2.zip | bin | 350 -> 358 bytes | |||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.3 | 5 | ||||
-rw-r--r-- | spec/fixtures/a_repo/manifest-5.3.zip | bin | 350 -> 358 bytes |
8 files changed, 20 insertions, 0 deletions
diff --git a/spec/fixtures/a_repo/a_rock-2.0-1.src.rock b/spec/fixtures/a_repo/a_rock-2.0-1.src.rock new file mode 100644 index 00000000..5824c767 --- /dev/null +++ b/spec/fixtures/a_repo/a_rock-2.0-1.src.rock | |||
Binary files differ | |||
diff --git a/spec/fixtures/a_repo/manifest b/spec/fixtures/a_repo/manifest index 3b01b427..5ab87d25 100644 --- a/spec/fixtures/a_repo/manifest +++ b/spec/fixtures/a_repo/manifest | |||
@@ -19,6 +19,11 @@ repository = { | |||
19 | { | 19 | { |
20 | arch = "rockspec" | 20 | arch = "rockspec" |
21 | } | 21 | } |
22 | }, | ||
23 | ["2.0-1"] = { | ||
24 | { | ||
25 | arch = "src" | ||
26 | } | ||
22 | } | 27 | } |
23 | }, | 28 | }, |
24 | busted_project = { | 29 | busted_project = { |
diff --git a/spec/fixtures/a_repo/manifest-5.1 b/spec/fixtures/a_repo/manifest-5.1 index 3b01b427..5ab87d25 100644 --- a/spec/fixtures/a_repo/manifest-5.1 +++ b/spec/fixtures/a_repo/manifest-5.1 | |||
@@ -19,6 +19,11 @@ repository = { | |||
19 | { | 19 | { |
20 | arch = "rockspec" | 20 | arch = "rockspec" |
21 | } | 21 | } |
22 | }, | ||
23 | ["2.0-1"] = { | ||
24 | { | ||
25 | arch = "src" | ||
26 | } | ||
22 | } | 27 | } |
23 | }, | 28 | }, |
24 | busted_project = { | 29 | busted_project = { |
diff --git a/spec/fixtures/a_repo/manifest-5.1.zip b/spec/fixtures/a_repo/manifest-5.1.zip index 7b53aeb0..65e316df 100644 --- a/spec/fixtures/a_repo/manifest-5.1.zip +++ b/spec/fixtures/a_repo/manifest-5.1.zip | |||
Binary files differ | |||
diff --git a/spec/fixtures/a_repo/manifest-5.2 b/spec/fixtures/a_repo/manifest-5.2 index 3b01b427..5ab87d25 100644 --- a/spec/fixtures/a_repo/manifest-5.2 +++ b/spec/fixtures/a_repo/manifest-5.2 | |||
@@ -19,6 +19,11 @@ repository = { | |||
19 | { | 19 | { |
20 | arch = "rockspec" | 20 | arch = "rockspec" |
21 | } | 21 | } |
22 | }, | ||
23 | ["2.0-1"] = { | ||
24 | { | ||
25 | arch = "src" | ||
26 | } | ||
22 | } | 27 | } |
23 | }, | 28 | }, |
24 | busted_project = { | 29 | busted_project = { |
diff --git a/spec/fixtures/a_repo/manifest-5.2.zip b/spec/fixtures/a_repo/manifest-5.2.zip index d2eddc40..b4334a65 100644 --- a/spec/fixtures/a_repo/manifest-5.2.zip +++ b/spec/fixtures/a_repo/manifest-5.2.zip | |||
Binary files differ | |||
diff --git a/spec/fixtures/a_repo/manifest-5.3 b/spec/fixtures/a_repo/manifest-5.3 index 3b01b427..5ab87d25 100644 --- a/spec/fixtures/a_repo/manifest-5.3 +++ b/spec/fixtures/a_repo/manifest-5.3 | |||
@@ -19,6 +19,11 @@ repository = { | |||
19 | { | 19 | { |
20 | arch = "rockspec" | 20 | arch = "rockspec" |
21 | } | 21 | } |
22 | }, | ||
23 | ["2.0-1"] = { | ||
24 | { | ||
25 | arch = "src" | ||
26 | } | ||
22 | } | 27 | } |
23 | }, | 28 | }, |
24 | busted_project = { | 29 | busted_project = { |
diff --git a/spec/fixtures/a_repo/manifest-5.3.zip b/spec/fixtures/a_repo/manifest-5.3.zip index 686fe232..bab15712 100644 --- a/spec/fixtures/a_repo/manifest-5.3.zip +++ b/spec/fixtures/a_repo/manifest-5.3.zip | |||
Binary files differ | |||