From 42992d6504d6cd111f000dd3aae912f18510e8e2 Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Thu, 24 May 2018 15:55:11 -0300 Subject: update changelog --- CHANGELOG.md | 52 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 971d220d..0cbf3d35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,34 @@ What's new in LuaRocks 3.0 ========================== +* *Breaking change:* The support for deprecated unversioned paths + (e.g. `/usr/local/lib/luarocks/rocks/` and `/etc/luarocks/config.lua`) + was removed, LuaRocks will now only create and use paths versioned + to the specific Lua version in use + (e.g. `/usr/local/lib/luarocks/rocks-5.3/` and `/etc/luarocks/config-5.3.lua`). +* *New rockspec format:* if you add `rockspec_format = "3.0"` to your + rockspec, you can use all features listed in the section "[Rockspec 3.0]" below. + Note that these rockspecs will only work with LuaRocks 3.0 and above, but + older versions will detect that directive and fail gracefully, giving the + user a message telling them to upgrade. +* *New feature:* [namespaces](https://github.com/luarocks/luarocks/wiki/Namespaces): + you can use `luarocks install user/package` to install a package from a + specific user of the repository. +* *New command:* `luarocks test`. It runs a rock's test suite, as specified + in the new `test` section of the rockspec file. It also does some + autodetection, so it already works with many existing rocks as well. +* *New command:* `luarocks which`. Given the name of an installed, it tells + you which rock it is a part of. For example, `luarocks which lfs` + will tell you it is a part of `luafilesystem` (and give the full + path name to the module). In this sense, `luarocks which` is the + dual command to `luarocks show`. +* *New flag* `--temp-key` for `luarocks upload`, allowing you to easily + upload rocks into an alternate account without disrupting the + stored configuration of your main account. +* *New flag* `--dev`, for enabling development-branch sub-repositories. + This adds support for easily requesting `dev` modules from LuaRocks.org, as in: + `luarocks install --dev luafilesystem`. The list of URLs configured + in `rocks_servers` is prepended with a list containing "/dev" in their paths. * `luarocks path` now exports versioned variables `LUA_PATH_5_x` and `LUA_CPATH_5_x` instead of `LUA_PATH` and `LUA_CPATH` when those are in use in your system. @@ -9,22 +37,27 @@ What's new in LuaRocks 3.0 For example, if you have `/some/dir/lua/5.1/` in your `$LUA_PATH` and you are running Lua 5.2, `luarocks.loader` and the `luarocks` command-line tool will convert it to `/some/dir/lua/5.2/`. -* New flag `--temp-key` for `luarocks upload`, allowing you to easily - upload rocks into an alternate account without disrupting the - stored configuration of your main account. -* New flag `--dev`, for enabling development-branch sub-repositories. - This adds support for easily requesting `dev` modules from LuaRocks.org, as in: - `luarocks install --dev luafilesystem`. The list of URLs configured - in `rocks_servers` is prepended with a list containing "/dev" in their paths. * Wrappers installed using `--tree` now prepend the tree's prefix to their package paths. +* `luarocks-admin` commands no longer creates an `index.html` file in the + repository by default (it does update it if it alroady exists) +* `luarocks-admin add` now works with `file://` repositories Rockspec 3.0 ------------ These features are only enabled if `rockspec_format = "3.0"` is set in the rockspec: -* `build.macosx_deployment_target = "10.9"` is supported in Mac platforms, +* New table `build_dependencies`: dependencies used only for running `luarocks build` + but not when installing binary rocks. +* New table `test_dependencies`: dependencies used only for running `luarocks test` +* New table `test`: settings for configuring the behavior of `luarocks test`. + Supports a `test.type` field so that the test backend can be specified. + Currently supported test backends are: + * `"busted"`, for running [Busted](https://olivinelabs.com/busted) + * `"command"`, for running a plain command. + * Custom backends can be loaded via `test_dependencies` +* New field `build.macosx_deployment_target = "10.9"` is supported in Mac platforms, and adjusts `$(CC)` and `$(LD)` variables to export the corresponding environment variable. * LuaJIT can be detected in dependencies and uses version reported by the @@ -48,3 +81,6 @@ Internal changes (Notably, `luarocks.core` does not use `luarocks.fs`.) * Modules representing `luarocks` commands were moved into the `luarocks.cmd` namespace. * Modules representing `luarocks-admin` commands were moved into the `luarocks.admin.cmd` namespace. +* New internal objects for representing interaction with the repostories: + `luarocks.queries` and `luarocks.results` +* Type checking rules of file formats were moved into the `luarocks.type` namespace. -- cgit v1.2.3-55-g6feb