Skip to content

Latest commit

 

History

History
72 lines (55 loc) · 2.11 KB

README.md

File metadata and controls

72 lines (55 loc) · 2.11 KB

Apache OpenDAL™ Lua Binding (WIP)

Example

local opendal = require("opendal")

local op, err = opendal.operator.new("fs",{root="/tmp"})
if err ~= nil then
    print(err)
    return
end
op:write("test.txt","hello world")
print("read: ", op:read("test.txt"))

Lua version

You have to enable one of the features: lua54, lua53, lua52, lua51, luajit(52) or luau in Cargo.toml, according to the chosen Lua version. Default Lua version is 5.2.

Build from source

  1. Build OpenDAL LUA Interface
$ cd bindings/lua
$ cargo build --package opendal-lua --release
  1. Install opendal lua library
# copy to lua share library directory
# default lua5.2 share library directory is /usr/lib/lua/5.2
$ cp ../../target/release/libopendal_lua.so /usr/lib/lua/5.2/opendal.so

Install from luarocks

$ luarocks make

Usage

$ lua5.2 example/fs.lua
read:   hello world

Test

$ busted -o gtest test/opendal_test.lua
[==========] Running tests from scanned files.
[----------] Global test environment setup.
[----------] Running tests from test/opendal_test.lua
[ RUN      ] test/opendal_test.lua @ 24: opendal unit test opendal fs schema operator function in fs schema
[       OK ] test/opendal_test.lua @ 24: opendal unit test opendal fs schema operator function in fs schema (1.52 ms)
[ RUN      ] test/opendal_test.lua @ 36: opendal unit test opendal fs schema meta function in fs schema
[       OK ] test/opendal_test.lua @ 36: opendal unit test opendal fs schema meta function in fs schema (0.24 ms)
[----------] 2 tests from test/opendal_test.lua (3.47 ms total)

[----------] Global test environment teardown.
[==========] 2 tests from 1 test file ran. (3.54 ms total)
[  PASSED  ] 2 tests.

License and Trademarks

Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0

Apache OpenDAL, OpenDAL, and Apache are either registered trademarks or trademarks of the Apache Software Foundation.