aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--docs/creating_a_makefile_that_plays_nice_with_luarocks.md15
-rw-r--r--docs/creating_a_rock.md8
-rw-r--r--docs/download.md16
-rw-r--r--docs/index.md2
-rw-r--r--docs/luarocks.md135
-rw-r--r--docs/release_history.md597
6 files changed, 72 insertions, 701 deletions
diff --git a/docs/creating_a_makefile_that_plays_nice_with_luarocks.md b/docs/creating_a_makefile_that_plays_nice_with_luarocks.md
index d6d43a6b..a6187659 100644
--- a/docs/creating_a_makefile_that_plays_nice_with_luarocks.md
+++ b/docs/creating_a_makefile_that_plays_nice_with_luarocks.md
@@ -16,18 +16,19 @@ For building:
16 16
17* `CFLAGS` - flags for the C compiler 17* `CFLAGS` - flags for the C compiler
18* `LIBFLAG` - the flags needed for the linker to create shared libraries 18* `LIBFLAG` - the flags needed for the linker to create shared libraries
19* `LUA_LIBDIR` - where to find the lua libraries 19* `LUA_LIBDIR` - where to find the Lua libraries
20* `LUA_BINDIR` - where to find the lua binary 20* `LUA_BINDIR` - where to find the Lua binary
21* `LUA_INCDIR` - where to find the lua headers 21* `LUA_INCDIR` - where to find the Lua headers
22* `LUALIB` - the name of the lua library. This is not available nor needed on all platforms. 22* `LUALIB` - the name of the Lua library. This is not available nor needed on all platforms.
23* `LUA` - the name of the lua interpreter 23* `LUA` - the name of the Lua interpreter
24* `LUA_VERSION` - the version of Lua
24 25
25For installing: 26For installing:
26 27
27* `PREFIX` - basic installation prefix for the module 28* `PREFIX` - basic installation prefix for the module
28* `BINDIR` - where to put user callable programs or scripts 29* `BINDIR` - where to put user callable programs or scripts
29* `LIBDIR` - where to put the shared libraries 30* `LIBDIR` - where to put the shared libraries implementing modules
30* `LUADIR` - where to put the lua files 31* `LUADIR` - where to put the Lua scripts implementing modules
31* `CONFDIR` - where to put your modules configuration 32* `CONFDIR` - where to put your modules configuration
32 33
33Most of these variables point immediately where you'd expect them to, but 34Most of these variables point immediately where you'd expect them to, but
diff --git a/docs/creating_a_rock.md b/docs/creating_a_rock.md
index 1d42b07f..a5441ea4 100644
--- a/docs/creating_a_rock.md
+++ b/docs/creating_a_rock.md
@@ -148,6 +148,14 @@ and `5.3`, but not yet-to-be-released `5.4`. There are a few other operators
148for specifying version constraints, see 148for specifying version constraints, see
149[Rockspec format](rockspec_format.md#dependency-information). 149[Rockspec format](rockspec_format.md#dependency-information).
150 150
151Rockspecs from [`rockspec_format = "3.1"`](rockspec_format.md#package-metadata)),
152have access to special variables with the path of the installed rocks of its
153dependencies. See the [section below](#including-documentation-and-other-files)
154for information on how rocks can include files in their installation. Each
155variable is the name of the dependency followed by the suffix `_ROCKDIR`. For
156the example above, variable `LUAKNIFE_ROCKDIR` will be provided with the path of
157the installed rock.
158
151#### C modules linking to external libraries 159#### C modules linking to external libraries
152 160
153*If your code does not use third-party libraries, you may skip this subsection.* 161*If your code does not use third-party libraries, you may skip this subsection.*
diff --git a/docs/download.md b/docs/download.md
index 9413ed10..b580ff8a 100644
--- a/docs/download.md
+++ b/docs/download.md
@@ -1,17 +1,11 @@
1# Download 1# Download
2 2
3# Downloading 3# Downloading
4 4
5Latest release: **LuaRocks 3.11.1** - '31/May/2024' 5* [Releases](https://luarocks.github.io/luarocks/releases/)
6* [Changelog](../CHANGELOG.md)
6 7
7* [Tarball for Unix](https://luarocks.org/releases/luarocks-3.11.1.tar.gz) 8# Installing
8* [Windows all-in-one executable (32-bit)](https://luarocks.org/releases/luarocks-3.11.1-windows-32.zip)
9* [Windows all-in-one executable (64-bit)](https://luarocks.org/releases/luarocks-3.11.1-windows-64.zip)
10* [other files](https://luarocks.github.io/luarocks/releases/)
11
12For release notes and older versions, see the [release history](release_history.md).
13
14# Installing
15 9
16* [Installation instructions for Unix](installation_instructions_for_unix.md) (Linux, BSDs, etc.) 10* [Installation instructions for Unix](installation_instructions_for_unix.md) (Linux, BSDs, etc.)
17* [Installation instructions for macOS](installation_instructions_for_macos.md) 11* [Installation instructions for macOS](installation_instructions_for_macos.md)
@@ -25,7 +19,7 @@ package already includes them and a binary of Lua, as a convenience.
25Once LuaRocks is installed, make sure to read the 19Once LuaRocks is installed, make sure to read the
26[Documentation](index.md) for more information! 20[Documentation](index.md) for more information!
27 21
28# The bleeding edge 22# The bleeding edge
29 23
30Development is done using Git. To get the latest development sources, run: 24Development is done using Git. To get the latest development sources, run:
31 25
diff --git a/docs/index.md b/docs/index.md
index 075593e7..f4d60b49 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -76,7 +76,7 @@
76 * [luarocks-admin refresh cache](luarocks_admin_refresh_cache.md) 76 * [luarocks-admin refresh cache](luarocks_admin_refresh_cache.md)
77 * [luarocks-admin remove](luarocks_admin_remove.md) 77 * [luarocks-admin remove](luarocks_admin_remove.md)
78 78
79 * [Release history](release_history.md) 79 * [Release history](../CHANGELOG.md)
80 80
81* [Credits](credits.md) 81* [Credits](credits.md)
82* [License](license.md) 82* [License](license.md)
diff --git a/docs/luarocks.md b/docs/luarocks.md
index 6338743b..99dff011 100644
--- a/docs/luarocks.md
+++ b/docs/luarocks.md
@@ -2,101 +2,66 @@
2 2
3**luarocks** is the command-line interface for LuaRocks, the Lua package manager. 3**luarocks** is the command-line interface for LuaRocks, the Lua package manager.
4 4
5# Usage 5## Usage
6 6
7``` 7```
8luarocks [--server=<server> | --only-server=<server>] [--tree=<tree>] [--only-sources=<url>] [--deps-mode=<mode>] [<VAR>=<VALUE>]... <command> [<argument>] 8luarocks [--server=<server> | --only-server=<server>] [--tree=<tree>] [--only-sources=<url>] [--deps-mode=<mode>] [<VAR>=<VALUE>]... <command> [<argument>]
9``` 9```
10 10
11Variables from the "variables" table of the [configuration file](config_file_format.md) can be overriden with VAR=VALUE assignments. 11Variables from the "variables" table of the [configuration file](config_file_format.md) can be overridden with `VAR=VALUE` assignments.
12 12
13{| 13### Options
14| --server=_server_ || Fetch rocks/rockspecs from this server (takes priority over config file)
15|-
16| --only-server=_server_ || Fetch rocks/rockspecs from this server only (overrides any entries in the config file)
17|-
18| --only-sources=_url_ || Restrict downloads of sources to URLs starting with the given URL. For example, --only-sources=https://luarocks.org will allow LuaRocks to download sources only if the URL given in the rockspec starts with https://luarocks.org .
19|-
20| --tree=_tree_ || Which tree to operate on.
21|-
22| --local || Use the tree in the user's home directory. To enable it, see `[luarocks path](luarocks_path.md)`
23|-
24| --deps-mode=_mode_ || Select dependencies mode:
25 14
26How to handle the list of rocks servers given in the rocks_servers array in the [config file](config_file_format.md). 15- `--server=<server>`: Fetch rocks/rockspecs from this server (takes priority over config file).
16- `--only-server=<server>`: Fetch rocks/rockspecs from this server only (overrides any entries in the config file).
17- `--only-sources=<url>`: Restrict downloads of sources to URLs starting with the given URL. For example, `--only-sources=https://luarocks.org` will allow LuaRocks to download sources only if the URL given in the rockspec starts with `https://luarocks.org`.
18- `--tree=<tree>`: Which tree to operate on.
19- `--local`: Use the tree in the user's home directory. To enable it, see [`luarocks path`](luarocks_path.md).
20- `--deps-mode=<mode>`: Select dependencies mode:
21 - **one**: Consider only the tree at the top of the list (possibly, the one given by the `--tree` flag, overriding all entries from `rocks_trees`).
22 - **all**: Consider all trees: if a dependency is installed in any tree of the `rocks_trees` list, we have a positive match.
23 - **order**: Consider only trees starting from the "current" one in the order, where the "current" is either:
24 - the one at the bottom of the `rocks_trees` list,
25 - or one explicitly given with `--tree`,
26 - or the "home" tree if `--local` was given or `local_by_default=true` is configured (usually at the top of the list).
27- `--verbose`: Display verbose output of commands executed.
28- `--timeout`: Timeout on network operations, in seconds. `0` means no timeout (wait forever). Default is `30`.
27 29
28* **one** - Consider only the tree at the top of the list (possibly, the one given by the --tree flag, overriding all entries from rocks_trees), ignore all others 30---
29* **all** - Consider all trees: if a dependency is installed in any tree of the rocks_trees list, we have a positive match.
30* **order** - Consider only trees starting from the "current" one in the order, where the "current" is either:
31 * the one at the bottom of the rocks_trees list,
32 * or one explicitly given with --tree
33 * or the "home" tree if --local was given or local_by_default=true is configured (usually at the top of the list)
34|-
35| --verbose || Display verbose output of commands executed.
36|-
37| --timeout || Timeout on network operations, in seconds. 0 means no timeout (wait forever). Default is 30.
38|}
39 31
40# Supported commands 32## Supported Commands
41 33
42{| 34- **[build](luarocks_build.md)**: Build/compile and install a rock.
43| [build](luarocks_build.md) || Build/compile and install a rock. 35- **[doc](luarocks_doc.md)**: Shows documentation for an installed rock.
44|- 36- **[download](luarocks_download.md)**: Download a specific rock or rockspec file from a rocks server.
45| [doc](luarocks_doc.md) || Shows documentation for an installed rock. 37- **[help](luarocks_help.md)**: Help on commands.
46|- 38- **[install](luarocks_install.md)**: Install a rock.
47| [download](luarocks_download.md)|| Download a specific rock or rockspec file from a rocks server. 39- **[lint](luarocks_lint.md)**: Check syntax of a rockspec.
48|- 40- **[list](luarocks_list.md)**: Lists currently installed rocks.
49| [help](luarocks_help.md) || Help on commands. 41- **[config](luarocks_config.md)**: Query and set the LuaRocks configuration.
50|- 42- **[make](luarocks_make.md)**: Compile package in the current directory using a rockspec and install it.
51| [install](luarocks_install.md) || Install a rock. 43- **[new_version](luarocks_new_version.md)**: Auto-write a rockspec for a new version of a rock.
52|- 44- **[pack](luarocks_pack.md)**: Create a rock, packing sources or binaries.
53| [lint](luarocks_lint.md) || Check syntax of a rockspec. 45- **[path](luarocks_path.md)**: Return the currently configured package path.
54|- 46- **[purge](luarocks_purge.md)**: Remove all installed rocks from a tree.
55| [list](luarocks_list.md) || Lists currently installed rocks. 47- **[remove](luarocks_remove.md)**: Uninstall a rock.
56|- 48- **[search](luarocks_search.md)**: Query the LuaRocks repositories.
57| [config](luarocks_config.md) || Query and set the LuaRocks configuration. 49- **[test](luarocks_test.md)**: Run the test suite in the current directory.
58|- 50- **[show](luarocks_show.md)**: Shows information about an installed rock.
59| [make](luarocks_make.md) || Compile package in current directory using a rockspec and install it. 51- **[unpack](luarocks_unpack.md)**: Unpack the contents of a rock.
60|- 52- **[upload](luarocks_upload.md)**: Upload a rockspec to the public rocks repository.
61| [new_version](luarocks_new_version.md) || Auto-write a rockspec for a new version of a rock. 53- **[write_rockspec](luarocks_write_rockspec.md)**: Write a template for a rockspec file.
62|-
63| [pack](luarocks_pack.md) || Create a rock, packing sources or binaries.
64|-
65| [path](luarocks_path.md) || Return the currently configured package path.
66|-
67| [purge](luarocks_purge.md) || Remove all installed rocks from a tree.
68|-
69| [remove](luarocks_remove.md) || Uninstall a rock.
70|-
71| [search](luarocks_search.md) || Query the LuaRocks repositories.
72|-
73| [test](luarocks_test.md) || Run the test suite in the current directory.
74|-
75| [show](luarocks_show.md) || Shows information about an installed rock.
76|-
77| [unpack](luarocks_unpack.md) || Unpack the contents of a rock.
78|-
79| [upload](luarocks_upload.md) || Upload a rockspec to the public rocks repository.
80|-
81| [write_rockspec](luarocks_write_rockspec.md) || Write a template for a rockspec file.
82|}
83 54
84# Overview of the difference between "make", "build", "install" and "pack" 55---
85
86{|
87| luarocks install modulename || downloads a binary .rock file and installs it to the local tree (falls back to "luarocks build modulename" behavior if a binary rock is not found)
88|-
89| luarocks build modulename || downloads a .src.rock or a rockspec and builds+installs it to the local tree.
90|-
91| luarocks build modulename-1.0-1.linux-x86.rock || extracts the rockspec from the rock and builds it as if the rockspec was passed in the command-line (i.e., redownloading sources and recompiling C modules if any).
92|-
93| luarocks build modulename-1.0-1.rockspec || builds+installs the rock using the given rockspec downloading the sources
94|-
95| luarocks make modulename-1.0-1.rockspec || builds+installs the rock using the rockspec using the contents of your current directory (kind of like the way make uses a Makefile) instead of downloading sources
96|-
97| luarocks pack modulename || grabs the rock from your local tree and packs it into a binary .rock file
98|-
99| luarocks pack modulename-1.0-1.rockspec || downloads the sources from the url and packs it into a .src.rock file
100|}
101 56
57## Overview of the Difference Between `make`, `build`, `install`, and `pack`
102 58
59| Command | Description |
60|-------------------------------------------|-------------------------------------------------------------------------------------------------|
61| `luarocks install modulename` | Downloads a binary `.rock` file and installs it to the local tree (falls back to `luarocks build modulename` behavior if a binary rock is not found). |
62| `luarocks build modulename` | Downloads a `.src.rock` or a rockspec and builds+installs it to the local tree. |
63| `luarocks build modulename-1.0-1.linux-x86.rock` | Extracts the rockspec from the rock and builds it as if the rockspec was passed in the command-line (i.e., redownloading sources and recompiling C modules if any). |
64| `luarocks build modulename-1.0-1.rockspec` | Builds+installs the rock using the given rockspec, downloading the sources. |
65| `luarocks make modulename-1.0-1.rockspec` | Builds+installs the rock using the rockspec and the contents of your current directory (kind of like the way `make` uses a Makefile) instead of downloading sources. |
66| `luarocks pack modulename` | Grabs the rock from your local tree and packs it into a binary `.rock` file. |
67| `luarocks pack modulename-1.0-1.rockspec` | Downloads the sources from the URL and packs it into a `.src.rock` file. |
diff --git a/docs/release_history.md b/docs/release_history.md
deleted file mode 100644
index 52c61893..00000000
--- a/docs/release_history.md
+++ /dev/null
@@ -1,597 +0,0 @@
1# Release history
2
3**Version 3.11.1** - 31/May/2024 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.11.1.tar.gz) -
4[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.1-windows-32.zip) -
5[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.1-windows-64.zip) -
6[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.1-linux-x86_64.zip) -
7[other files](https://luarocks.github.io/luarocks/releases/)
8
9**Version 3.11.0** - 13/Mar/2024 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.11.0.tar.gz) -
10[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.0-windows-32.zip) -
11[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.0-windows-64.zip) -
12[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.11.0-linux-x86_64.zip) -
13[other files](https://luarocks.github.io/luarocks/releases/)
14
15**Version 3.10.0** - 27/Feb/2024 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.10.0.tar.gz) -
16[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.10.0-windows-32.zip) -
17[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.10.0-windows-64.zip) -
18[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.10.0-linux-x86_64.zip) -
19[other files](https://luarocks.github.io/luarocks/releases/)
20
21**Version 3.9.2** - 08/Dec/2022 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.9.2.tar.gz) -
22[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.2-windows-32.zip) -
23[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.2-windows-64.zip) -
24[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.2-linux-x86_64.zip) -
25[other files](https://luarocks.github.io/luarocks/releases/)
26
27**Version 3.9.1** - 01/Jul/2022 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.9.1.tar.gz) -
28[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.1-windows-32.zip) -
29[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.1-windows-64.zip) -
30[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.1-linux-x86_64.zip) -
31[other files](https://luarocks.github.io/luarocks/releases/)
32
33**Version 3.9.0** - 17/Apr/2022 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.9.0.tar.gz) -
34[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.0-windows-32.zip) -
35[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.0-windows-64.zip) -
36[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.9.0-linux-x86_64.zip) -
37[other files](https://luarocks.github.io/luarocks/releases/)
38
39* `builtin` build mode now always respects CC, CFLAGS and LDFLAGS
40* Check that lua.h version matches the desired Lua version
41* Check that the version of the Lua C library matches the desired Lua version
42* Fixed deployment of non-wrapped binaries
43* Fixed crash when `--lua-version` option is malformed
44* Fixed help message for `--pin` option
45* Unix: use native methods and don't always rely on $USER to determine user
46* Windows: use native CLI tooling more
47* macOS: support .tbd extension when checking for libraries
48* macOS: add XCode SDK path to search paths
49* macOS: add best-effort heuristic for library search using Homebrew paths
50* macOS: avoid quoting issues with LIBFLAG
51* macOS: deployment target is now 11.0 on macOS 11+
52* added DragonFly BSD support
53* LuaRocks test suite now runs on Lua 5.4 and LuaJIT
54* Internal dependencies of standalone LuaRocks executable were bumped
55
56**Version 3.8.0** - 08/Nov/2021 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.8.0.tar.gz) -
57[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.8.0-windows-32.zip) -
58[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.8.0-windows-64.zip) -
59[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.8.0-linux-x86_64.zip) -
60[other files](https://luarocks.github.io/luarocks/releases/)
61
62**Version 3.7.0** - 13/Apr/2021 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.7.0.tar.gz) -
63[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.7.0-windows-32.zip) -
64[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.7.0-windows-64.zip) -
65[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.7.0-linux-x86_64.zip) -
66[other files](https://luarocks.github.io/luarocks/releases/)
67
68**Version 3.6.0** - 30/Mar/2021 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.6.0.tar.gz) -
69[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.6.0-windows-32.zip) -
70[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.6.0-windows-64.zip) -
71[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.6.0-linux-x86_64.zip) -
72[other files](https://luarocks.github.io/luarocks/releases/)
73
74**Version 3.5.0** - 10/Dec/2020 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.5.0.tar.gz) -
75[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.5.0-windows-32.zip) -
76[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.5.0-windows-64.zip) -
77[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.5.0-linux-x86_64.zip) -
78[other files](https://luarocks.github.io/luarocks/releases/)
79
80**Version 3.4.0** - 25/Sep/2020 - [Source tarball for Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.4.0.tar.gz) -
81[Windows binary (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.4.0-windows-32.zip) -
82[Windows binary (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.4.0-windows-64.zip) -
83[Linux binary (x86_64)](https://luarocks.github.io/luarocks/releases/luarocks-3.4.0-linux-x86_64.zip) -
84[other files](https://luarocks.github.io/luarocks/releases/)
85
86* `luarocks make` now supports `--only-deps`
87* `luarocks make` new flag: `--no-install`, which only performs the compilation step
88* `--deps-only` is now an alias for `--only-deps` (useful in case you always kept getting it wrong, like me!)
89* `luarocks build` and `luarocks make` now support using `--pin` and `--only-deps` at the same time, to produce a lock file of dependencies in use without installing the main package.
90* `luarocks show` can now accept a substring of the rock's name, like `list`.
91* `luarocks config`: when running without system-wide permissions, try storing the config locally by default. Also, if setting both lua_dir and --lua-version explicitly, auto-switch the default Lua version.
92* `luarocks` with no arguments now prints more info about the location of the Lua interpreter which is being used
93* `luarocks new_version` now keeps the old URL if the MD5 doesn't change.
94* `DEPS_DIR` is now accepted as a generic variable for dependency directories (e.g. `luarocks install foo DEPS_DIR=/usr/local`)
95* Handle quoting of arguments at the application level, for improved Windows support
96* All-in-one binary bundles `dkjson`, so it runs `luarocks upload` without requiring any additional dependencies.
97* Tweaks for Terra compatibility
98* win32: generate proper temp filename
99* No longer assume that Lua 5.3 is built with compat libraries and bundles `bit32`
100* `luarocks show`: do not crash when rockspec description is empty
101* When detecting the location of `lua.h`, check that its version matches the version of Lua being used
102* Fail gracefully when a third-party tool (wget, etc.) is missing
103* Fix logic for disabling mirrors that return network errors
104* Fix detection of Lua path based on arg variable
105* Fix regression on dependency matching of luarocks.loader
106
107**Version 3.3.1** - 07/Feb/2020 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.3.1.tar.gz) -
108[Windows all-in-one executable (32-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.3.1-windows-32.zip) -
109[Windows all-in-one executable (64-bit)](https://luarocks.github.io/luarocks/releases/luarocks-3.3.1-windows-64.zip) -
110[other files](https://luarocks.github.io/luarocks/releases/)
111
112* Fix downgrades of rocks containing directories: stop it from creating spurious 0-byte files where directories have been
113* Fix error message when attempting to copy a file that is missing
114* Detect OpenBSD-specific dependency paths
115
116**Version 3.3.0** - 28/Jan/2020 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.3.0.tar.gz) -
117[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.3.0-windows-32.zip) -
118[other files](https://luarocks.github.io/luarocks/releases/)
119
120**Version 3.2.1** - 05/Sep/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.2.1.tar.gz) -
121[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.2.1-windows-32.zip) -
122[other files](https://luarocks.github.io/luarocks/releases/)
123
124**Version 3.2.0** - 28/Aug/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.2.0.tar.gz) -
125[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.2.0-windows-32.zip) - [other files](https://luarocks.github.io/luarocks/releases)
126
127* Bugfix: luarocks path does not change the order of pre-existing path items when prepending or appending to path variables
128* Bugfix: fix directory detection on the Mac
129* When building with --force-config, LuaRocks now never uses the "project" directory, but only the forced configuration
130* Lua libdir is now only checked for commands/platforms that really need to link Lua explicitly
131* LuaJIT is now detected dynamically
132* RaptorJIT is now detected as a LuaJIT variant
133* Improvements in Lua autodetection at runtime
134* luarocks new_version: new option --dir
135* luarocks which: report modules found via package.path and package.cpath as well
136* install.bat: Improved detection for Visual Studio 2017 and higher
137* Bundled LuaSec in all-in-one binary bumped to version 0.8.1
138
139**Version 3.1.3** - 06/Jun/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.1.3.tar.gz) -
140[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.1.3-windows-32.zip)
141
142**Version 3.1.2** - 07/May/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.1.2.tar.gz) -
143[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.1.2-windows-32.zip)
144
145**Version 3.1.1** - 06/May/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.1.1.tar.gz) -
146[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.1.1-windows-32.zip)
147
148**Version 3.1.0** - 30/Apr/2019 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.1.0.tar.gz) -
149[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.1.0-windows-32.zip)
150
151* config: add git-like modes for setting and inspecting configuration
152* make: run rockspec patches on first `luarocks make` run and use a lockfile to avoid double patching
153* persist selected Lua version when setting `luarocks config lua_version 5.x`
154* new flag --global for overriding local_by_default = true
155* do not complain if home cache cannot be created (use temp dir instead)
156* caching improvements for increased performance
157* project-based workflow: if ./.luarocks/config-5.x.lua exists, assume Lua 5.x
158* install, pack, build, make: new flags --sign and --verify (using GPG)
159* install: new flag --no-doc
160* Improve Lua paths auto-detection
161* Various bugfixes
162
163**Version 3.0.4** - 30/Oct/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.0.4.tar.gz) -
164[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.0.4-windows-32.zip)
165
166* Fork-free platform detection at startup
167* Improved detection of the default rockspec in commands such as `luarocks test`
168* Various minor bugfixes
169
170**Version 3.0.3** - 15/Sep/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.0.3.tar.gz) -
171[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.0.3-windows-32.zip)
172
173* Minor bugfixes
174
175**Version 3.0.2** - 07/Sep/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.0.2.tar.gz) -
176[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.0.2-windows-32.zip)
177
178* Improvements in luarocks init, new --reset flag
179* write_rockspec: --lua-version renamed to --lua-versions
180* Improved behavior in module autodetection
181* Bugfixes in luarocks show
182* Fix upgrade/downgrade when a single rock has clashing module filenames
183* Fix for autodetected external dependencies with non-alphabetic characters
184
185**Version 3.0.1** - 14/Aug/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.0.1.tar.gz) -
186[Windows all-in-one executable](https://luarocks.github.io/luarocks/releases/luarocks-3.0.1-windows-32.zip)
187
188* Numerous bugfixes
189* Store Lua location in config file, so that a user can run `luarocks init --lua-dir=/my/lua/location` and have that location remain active for that project
190* Various improvements to the Unix makefile, including $(DESTDIR) support and an uninstall rule
191* Autodetect FreeBSD-style include paths (/usr/include/lua5x/)
192
193**Version 3.0.0** - 25/Jul/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-3.0.0.tar.gz) -
194[Windows batch installer](https://luarocks.github.io/luarocks/releases/luarocks-3.0.0-win32.zip)
195
196* New rockspec format
197* New commands, including `luarocks init` for per-project workflows
198* New flags, including `--lua-dir` and `--lua-version` for using multiple Lua installs with a single LuaRocks
199* New build system, gearing towards a new distribution model
200* General improvements, including namespaces
201* User-visible changes, including some breaking changes
202* Internal changes
203
204**Version 2.4.4** - 12/Mar/2018 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.4.4.tar.gz) -
205[Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.4.4-win32.zip)
206
207* Do not halt a package deletion process when a file from the package is missing
208* Updated bundled binaries in Windows package: Lua 5.1.5, Wget 1.19.4, 7zip 18.01
209* Updated Windows installer to better handle gcc toolchains
210* Fix detection of directories on Windows
211* Fixes .def generation on Windows
212
213**Version 2.4.3** - 12/Sep/2017 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.4.3.tar.gz) -
214[Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.4.3-win32.zip)
215
216* Fixed display of pathnames in `luarocks show`
217* Improved check for write permissions when installing
218* Plus assorted bugfixes and improvements
219
220**Version 2.4.2** - 30/Nov/2016 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.4.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.4.2-win32.zip)
221
222* Fixed conflict resolution on deploy/delete
223* Improved dependency check messages
224* Performance improvements when removing packages
225* Support user-defined `platforms` array in config file
226* Improvements in Lua interpreter version detection in Unix configure script
227* Relaxed Lua version detection to improve support for alternative implementations (e.g. Ravi)
228* Plus assorted bugfixes and improvements
229
230**Version 2.4.1** - 06/Oct/2016 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.4.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.4.1-win32.zip)
231
232* Avoid coroutine use in luarocks.loader
233* Fix upgrade issues for very old versions
234
235**Version 2.4.0** - 08/Sep/2016 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.4.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.4.0-win32.zip)
236
237* New test suite based on Busted; runs on Linux, OSX and Windows
238* git+ssh:// fetch protocol
239* Improved behavior preserving permissions
240* Improved listing of dependencies on installation
241* Improved behavior of argument handling in `pack`
242* MSYS and Haiku platform detection
243* Feature-based detection of internal bit32 and utf8 modules
244* Internal reorganization of luarocks.fs code
245* `remove` option --force=fast renamed to --force-fast
246* Plus assorted bugfixes and cleanups
247
248**Version 2.3.0** - 09/Jan/2016 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.3.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.3.0-win32.zip)
249
250* Windows: major redesign of the install tree structure
251* Windows: Auto setup of MSVC environments
252* Improve error messages when tools are not installed
253* CMake: generate 64-bit builds when appropriate
254* Improve check of location of config files
255* MacOSX: set MACOSX_DEPLOYMENT_TARGET using env
256* Remove --extensions flag; use rockspec_format instead
257* New `luarocks config` command to query configuration
258* Improved UI for messages when external deps are missing
259* Unix: Robustness improvement in configure script
260* Plus tweaks and bugfixes. See the changelog for details.
261
262**Version 2.2.2** - 24/Apr/2015 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.2.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.2.2-win32.zip)
263
264* `luarocks build --only-deps` and `luarocks install --only-deps` for installing dependencies only
265* Mercurial support
266* Improved command-line argument parser, now validates arguments (it previously ignored unrecognized arguments) and accepts both `--flag=option` and `--flag option` in flags that take arguments.
267* For consistency with `luarocks show`, `luarocks doc --homepage` is now `luarocks doc --home`
268* Improvements to CMake build backend
269* Improved Makefiles for handling simultaneous bootstrapped installations
270* Various bugfixes
271
272**Version 2.2.1** - 17/Mar/2015 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.2.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.2.1-win32.zip)
273
274* Improved compatibility with Lua 5.3
275* `luarocks list --outdated` for listing modules with available upgrades
276* Assorted bugfixes
277
278**Version 2.2.0** - 15/Aug/2014 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.2.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.2.0-win32.zip)
279
280* MoonRocks is the new default repository: http://rocks.moonscript.org - Rocks don't need to be sent to the LuaRocks mailing list anymore, you can upload them directly at the website or using...
281* ...`luarocks upload` command for uploading rocks to MoonRocks via the command-line
282* Preliminary support for Lua 5.3
283* No longer uses the module() function, for Lua 5.2 installations built without Lua 5.1 compatibility
284* --branch flag for `luarocks build` and `luarocks make`
285* various improvements in `luarocks doc` command
286* "git+http" transport for source.url
287
288**Version 2.1.2** - 10/Jan/2014 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.1.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.1.2-win32.zip)
289
290* major improvements in the Windows install.bat script. Now installs by default on standard Windows locations, while the old self-contained all-under-one-dir installation is still supported through an option flag. The documentation at luarocks.org didn't catch up with it yet, so please refer to "install /?" for instructions.
291* a new command, "luarocks doc <module>" that tries to find any installed documentation. Due to the lack of documentation standards for Lua, this uses a few heuristics. Feedback on the feature is appreciated.
292* a rocks_provided configuration entry in which you can preload dependencies that are already fulfulled in your system; a few defaults are included (bit32 is auto-provided in Lua 5.2; luabitop is auto-provided in LuaJIT)
293* generated script wrappers are now more robust
294* Graceful handling of permission errors on Windows
295* Minor performance improvements
296* Support for "named trees", so you can label your rocks trees and use flags such as --tree=system or --tree=user instead of the full path
297* "luarocks" with no arguments presents more useful diagnostics
298* Improved Lua detection in Unix installer
299* plus assorted bugfixes
300
301**Version 2.1.1** - 29/Oct/2013 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.1.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.1.1-win32.zip)
302
303* Remote manifests are now compressed and locally cached, making commands faster
304* New command "write_rockspec" which generates rockspec file templates
305* detection of multiarch directories on Linux
306* environment and performance improvements on Windows
307* New --force=fast option for 'luarocks remove'
308* New --local-tree flag for 'luarocks-admin make-manifest'
309* Improved error checking
310* plus assorted bugfixes
311
312**Version 2.1.0** - 09/Aug/2013 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.1.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.1.0-win32.zip)
313
314* accesses manifest-{5.1,5.2} in remote servers to provide properly filtered results for Lua 5.1 or 5.2
315* Remove old versions when installing a new one and old versions are no longer needed to honor dependencies.
316* 'make bootstrap' is now an advertised option for installing LuaRocks itself as a rock on Unix systems
317* 'luarocks purge --old-versions' for cleaning up a local tree
318* --keep flag to produce the old behavior of keeping old versions around (can be made permanent setting keep_old_versions=true in the config file)
319* security config options 'accepted_build_types' and 'hooks_enabled'
320* 'lua_version' is now available as a global for your config.lua
321* new flags --lr-path, --lr-cpath, --lr-bin for 'luarocks path' for use in scripts
322* friendlier error messages
323* plus bugfixes
324
325**Version 2.0.13** - 16/Apr/2013 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.13.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.13-win32.zip)
326
327* Support for Lua 5.2 is no longer marked as experimental
328* Support for installing two instances of LuaRocks, for Lua 5.1 and 5.2, in parallel
329* Improvements for the 'builtin' build mode on Windows
330* rclauncher on Windows does not rely on a precompiled object anymore
331* Improvements for the Windows installer, including optional registry entries for context-menu operations
332* Improvements in 'luarocks new_version` command for autogenerating updated rockspecs
333* 'luarocks remove' command accepts rock and rockspec filenames
334
335**Version 2.0.12** - 05/Nov/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.12.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.12-win32.zip)
336
337* "Dependencies mode" selection to configure how to work with multiple local trees
338* New command "purge" that erases a local tree
339* --porcelain flag for "list" and "search"
340* More consistent user-agent reporting
341* Code cleanups, removal of dead code
342* Fixes regressions on Mac and Windows
343
344**Version 2.0.11** - 21/Sep/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.11.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.11-win32.zip)
345
346* Work around LuaSocket crash when given proxy URLs without the scheme part
347* Save manifest file in a single fs operation to make it more atomic
348* Fix tree loading order on luarocks.loader with multiple trees
349* Fix detection of write permissions
350* Improve dependency detection using configurable patterns, now a file like "libfoo.so.1" satisfies "libfoo.so"
351* --bin flag for "luarocks path" command, exports $PATH
352* Support for mirrors in the rocks_servers list, default list of mirrors included
353* Avoid using Lua modules internally on Windows, to avoid file system locking
354* Add NetBSD support
355* Rename luarocks.rep to luarocks.repos
356* Fail gracefully on the absence of cmake, on cmake build mode
357* New command "lint", to check the syntax of a rockspec
358* Fix builtin build mode on Mac OSX < 10.5
359* Improve configure tests for Debian-based platforms
360
361**Version 2.0.10** - 12/Jul/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.10.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.10-win32.zip)
362
363* Fix fetching Git tags/branches
364* Fix strictness issue with parameter of io.open
365* Builtin mode sets rpath when compiling on Unix
366* Use full path in $(LUA) when configured with --with-lua
367* Cleanup of .svn dir in svn-based rocks
368* Improvement for 'make bootstrap'
369
370**Version 2.0.9** - 31/May/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.9.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.9-win32.zip)
371
372* Experimental support for Lua 5.2 (auto-detection and explicit --lua-version flag in configure)
373* Solaris support and BSD fixes
374* --nodeps flag for forced installation without dependencies
375* "new_version" command to streamline writing of updated rockspecs
376* Improved handling of LUAROCKS_SYSCONFIG variable
377* Clickable URLs in descriptions in rocks repo index.html
378* Nicer-looking persisted tables
379* Assorted bugfixes
380
381**Version 2.0.8** - 29/Feb/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.8.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.8-win32.zip)
382
383* Fix in CMake build backend
384* Fix handling error condition of --pack-binary-rock
385* Fixes for Windows .bat installer
386* Improved arch detection when packing binary rocks
387* Workaround LuaPosix 5.1.15 problem with chmod()
388* Proper error messages when config files are invalid
389* Avoid checking permissions when it's not necessary
390* Fix behavior of 'builtin' rocks which install init.lua scripts
391* git+file:// pseudoprotocol for local Git repos
392* New binaries from GnuWin32 shipped in Win32 zip
393* Nicer-looking help
394
395**Version 2.0.7.1** - 10/Jan/2012 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.7.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.7.1-win32.zip)
396
397* Fix installation of files in build operation
398* Deprecate --to and --from, use --server and --tree instead
399* Improved documentation, thanks to LDoc
400
401**Version 2.0.7** - 10/Dec/2011 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.7.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.7-win32.zip)
402
403* Quieter git checkout
404* --only-sources flag to restrict download of sources from a single domain
405* Copy entries to bin/ with proper permissions
406* Fix --pack-binary-rock and add support for it in "luarocks make" as well
407* Isolate references to "5.1" to luarocks.cfg module
408* More logical names for flags: --tree, --server
409* Improved documentation
410
411**Version 2.0.6** - 04/Oct/2011 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.6.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.6-win32.zip)
412
413* Fixes for rockspecs missing 'description' or the contents of 'source.url'
414* Escape fixes for LuaJIT/Metalua
415* Support for building a rock without installing it
416* Site-local configuration is now at luarocks.site_config
417* Support for Mercurial
418* Flag for experimental extensions
419* Plus assorted bugfixes
420
421**Version 2.0.5** - 17/Aug/2011 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.5.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.5-win32.zip)
422
423* External commands are overridable through variables or config.lua
424* No longer uses print() - output goes to stdout, errors to stderr
425* Handle redirects between http (LuaSocket) and https (LuaSec)
426* Avoid relying on the $PWD variable
427* Code cleanups
428
429**Version 2.0.4.1** - 17/Jan/2011 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.4.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.4.1-win32.zip)
430
431* Minor bugfix release
432
433**Version 2.0.4** - 23/Dec/2010 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.4.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.4-win32.zip)
434
435* Command "remove" for luarocks-admin
436* Check for write permissions in repository and suggest --local
437* Remove .git from source tree when downloading from Git
438* Display of external dependencies in index.html
439* OpenBSD support
440* More thorough search for external libraries
441* Normalize paths to fix behavior when LFS is used under Windows
442* Add HTTPS support using LuaSec when using LuaSocket, for consistency
443* Better propagation of error messages
444* Stable sort of persisted files such as manifests
445* Plus assorted bugfixes
446
447**Version 2.0.3** - 14/Sep/2010 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.3.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.3-win32.zip)
448
449* Check for permissions and warn user instead of just installing in local tree
450* --local flag for operations on the local tree
451* -fPIC is always set in CFLAGS exported to makefiles
452* respect permissions when copying files in Unix systems
453* display license after build/installation
454* svn:// protocol for scm rockspecs
455* "luarocks list" and "luarocks search" are now case-insensitive
456* "luarocks-admin add" supports adding multiple files at once
457* "luarocks-admin add" supports rsync for download and upload and scp for upload
458* new command: "luarocks show" displays information about an installed rock
459* new command: "luarocks path" to make it easy to export Lua env variables
460* plus assorted bugfixes
461
462**Version 2.0.2** - 01/Apr/2010 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.2-win32.zip)
463
464* use LuaSocket if available for downloading files
465* use LuaZip if available for unzipping files
466* MinGW support in builtin build backend
467* updated installation files for Windows, including a LuaForWindows-compatible package
468
469**Version 2.0.1** - 27/Oct/2009 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0.1-win32.zip)
470
471* luarocks.cfg is no longer edited during installation; a separate site-local luarocks.config module is created.
472* robustness fixes and improvements for luarocks.add
473* cleanup of configure options and references to the old LuaForge URLs
474* install LuaRocks as a rock
475* plus assorted bugfixes
476
477**Version 2.0** - 17/Oct/2009 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-2.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-2.0-win32.zip)
478
479* module files are now deployed to standard Lua-style paths
480* new package loader module luarocks.loader, superseding the require()-override module luarocks.require
481* new abstraction system for file system operations: the OS-specific back-ends for luarocks.fs were split between native-Lua and tool-based implementations
482* new format for local manifest
483* new command for luarocks: "download", to fetch .rock and .rockspec files
484* new commands for luarocks-admin: "add", to upload rocks to a repository, and "refresh_cache", to refresh the cache used by the "add" command
485* plus a number of cleanups and bugfixes
486
487**Version 1.0.1** - 13/Mar/2009 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-1.0.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-1.0.1-win32.zip)
488
489* Improve portability in usage of Unix tools
490* Allow use of local rocks servers in the --from flag
491* Improve detection of external libraries on Mac OSX
492* Fix build of the 'builtin' backend under Windows
493* Support for the 'md5' binary as a MD5 checker
494
495**Version 1.0** - 01/Sep/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-1.0.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-1.0-win32.zip)
496
497* Add support for post-install hooks
498* Path helper scripts for binaries on Windows systems.
499* Git support, contributed by Thomas Harning.
500* Improve shell compatibility for different Unix systems.
501* Add the @ operator for no-upgrade dependencies.
502* Add check for rockspec version format.
503* Generate index.html when building a manifest for a repository.
504* Plus assorted bugfixes.
505
506**Version 0.6** - 30/Jun/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.6.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.6-win32.zip)
507
508* Check external deps on binary installs. Allow rockspecs to specify supported platforms. Support platform-agnostic specification of external deps files. Allow overriding external deps subdirs.
509* Structured build systems in subdirectories.
510* Smarter check to decide if a rock is pure Lua or not, also checking bin/
511* Restructuring of fs code.
512* Modularized fetch code to support multiple SCMs.
513* Added specific support for 'doc' directory in rockspecs. Auto-install files in 'lua' in builtin builds.
514* Support for Surround SCM, contributed by Ignacio BurgueƱo.
515* "module" build type renamed to "builtin"; "cvs_tag" and "cvs_module" renamed to "tag" and "module". Old names still supported for compatibility for now, to be cleaned up by 1.0.
516* Plus many bugfixes.
517
518**Version 0.5.2** - 13/May/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.5.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.5.2-win32.zip)
519
520* Fixes problems with removal of read-only files on Windows
521* Fixes issues with external libraries on the 'module' build type on Windows
522* Fixes the --only-from flag
523* Renames the luarocks.config module to luarocks.cfg avoiding conflict's with the user configuration file config.lua
524
525**Version 0.5.1** - 25/Apr/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.5.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.5.1-win32.zip)
526
527* Added function get_rock_from_module in luarocks.require, allowing apps to inspect which rock they're getting modules from.
528* Added variables LUA, LIB_EXTENSION and OBJ_EXTENSION, now available for rockspec authors.
529* Assorted bugfixes, especially for the Windows package.
530* Build system improvements: add DESTDIR variable to makefile to make things easier for distros packaging LuaRocks.
531
532**Version 0.5** - 03/Apr/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.5.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.5-win32.zip)
533
534* New flags in the ./configure on Unix (see configure --help) and install.bat on Windows (see install.bat /?)
535* Support for multiple local repositories. By extension, LuaRocks features more intuitive configuration defaults (it installs rocks to $PREFIX/lib/luarocks if you have the permission, and to $HOME/.luarocks if you don't).
536* Flags --from=_server_, --only-from=_server_ and --to=_tree_, to allow specifying exactly where to get rocks from and where to install them to.
537* The manifest file now stores dependency info -- luarocks.require no longer scans rockspec files.
538* 'unpack' command allows unpacking binary and pure-Lua rocks, for inspecting.
539* Plus assorted bugfixes.
540
541**Version 0.4.3** - 03/Mar/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.4.3.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.4.3-win32.zip)
542
543* The MD5 check feature added in 0.4.2 can now use openssl instead of md5sum (making LuaRocks friendlier to OSX).
544* Added a license file in the tarball (making LuaRocks friendlier to Debian).
545* Plus assorted bugfixes.
546
547**Version 0.4.2** - 09/Feb/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.4.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.4.2-win32.zip)
548
549* Support .lua files directly in the URL field.
550* Perform check of MD5 checksum in sources.
551* Accept plain strings in all fields of the source table of the "module" build type.
552* Bugfixes.
553
554**Version 0.4.1** - 25/Jan/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.4.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.4.1-win32.zip)
555
556* New configure/install.bat flags for setting scripts dir and local repository dir.
557* "unpack" command now supports rockspec files as well.
558* Complete code documentation.
559* Many assorted bugfixes.
560
561**Version 0.4** - 18/Jan/2008 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.4.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.4-win32.zip)
562
563* Adds the "unpack" command for debugging rocks (.src.rock only at this point).
564* Support curl as an alternative downloader for OSX, removing the dependency on wget.
565* Support for installing non-Lua entries in bin/ dirs.
566* Support for specifying libdirs, incdirs, libraries and defines in "module"-type builds.
567* x86_64 support, by Brian Hetro.
568* FreeBSD support, by Matthew M. Burke.
569* Performance improvements.
570* Many assorted bugfixes.
571
572**Version 0.3.2** - 21/Dec/2007 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.3.2.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.3.2-win32.zip)
573
574* Support for patching and inclusion of extra files (such as Makefiles) through a rockspec.
575* Support "platforms" overrides table for dependencies, external dependencies and source URLs.
576* Many assorted bugfixes.
577
578**Version 0.3.1** - 18/Dec/2007 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.3.1.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.3.1-win32.zip)
579
580* Improved search: results now feature separate lists for source and binary rocks.
581* Windows support for the "module" build type (using Visual Studio).
582* Many assorted bugfixes.
583
584**Version 0.3** - 04/Dec/2007 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.3.tar.gz) - [Windows](https://luarocks.github.io/luarocks/releases/luarocks-0.3-win32.zip)
585
586* Includes Windows package.
587* Adds the "module" build type.
588* Performance improvements.
589
590**Version 0.2** - 23/Oct/2007 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.2.tar.gz)
591
592* Bugfixes and improvements to build infrastructure.
593* Adds the LuaRocks "remove" command.
594
595**Version 0.1** - 09/Aug/2007 - [All Unix](https://luarocks.github.io/luarocks/releases/luarocks-0.1.tar.gz)
596
597* Initial release.