Skip to content

Commit 59ac5ab

Browse files
authoredNov 12, 2017
Merge pull request #10 from tanmaykm/tan/compat
make it Julia 0.5 compatible
2 parents 481ed9c + c4ba195 commit 59ac5ab

File tree

7 files changed

+18
-18
lines changed

7 files changed

+18
-18
lines changed
 

‎.travis.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ env:
66
- ARCH="i686"
77
- ARCH="x86_64"
88
julia:
9-
- release
9+
- 0.5
10+
- 0.6
1011
- nightly
1112
matrix:
1213
exclude:

‎REQUIRE

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
julia 0.4-
2-
BinDeps
1+
julia 0.5
2+
BinDeps

‎src/common.jl

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
typealias Cmode_t Cushort
1+
const Cmode_t = Cushort
22

33
"Generic structure used for passing keys and data in and out of the database."
44
type MDBValue
@@ -89,7 +89,7 @@ function version()
8989
minor = Cint[0]
9090
patch = Cint[0]
9191
ver_str = ccall( (:mdb_version, liblmdb), Cstring, (Ptr{Cint}, Ptr{Cint}, Ptr{Cint}), major, minor, patch)
92-
return VersionNumber(major[1],minor[1],patch[1]), bytestring(ver_str)
92+
return VersionNumber(major[1],minor[1],patch[1]), unsafe_string(ver_str)
9393
end
9494

9595
"""Return a string describing a given error code
@@ -99,7 +99,7 @@ Function returns description of the error as a string. It accepts following argu
9999
"""
100100
function errormsg(err::Cint)
101101
errstr = ccall( (:mdb_strerror, liblmdb), Cstring, (Cint,), err)
102-
return bytestring(errstr)
102+
return unsafe_string(errstr)
103103
end
104104

105105
"""LMDB exception type"""

‎src/cur.jl

+2-2
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ function get{T}(cur::Cursor, key, ::Type{T}, op::CursorOps=FIRST)
7979
# Convert to proper type
8080
mdb_val = mdb_val_ref[]
8181
if T <: AbstractString
82-
return bytestring(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
82+
return unsafe_string(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
8383
else
8484
nvals = floor(Int, mdb_val.size/sizeof(T))
8585
value = pointer_to_array(convert(Ptr{T}, mdb_val.data), nvals)
@@ -118,4 +118,4 @@ function count(cur::Cursor)
118118
(Ptr{Void}, Csize_t), cur.handle, countp)
119119
(ret != 0) && throw(LMDBError(ret))
120120
return Int(countp[1])
121-
end
121+
end

‎src/dbi.jl

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ isopen(dbi::DBI) = dbi.handle != zero(Cuint)
1212

1313
"Open a database in the environment"
1414
function open(txn::Transaction, dbname::String = ""; flags::Cuint=zero(Cuint))
15-
cdbname = length(dbname) > 0 ? bytestring(dbname) : convert(Cstring, Ptr{UInt8}(C_NULL))
15+
cdbname = length(dbname) > 0 ? dbname : convert(Cstring, Ptr{UInt8}(C_NULL))
1616
handle = Cuint[0]
1717
ret = ccall((:mdb_dbi_open, liblmdb), Cint,
1818
(Ptr{Void}, Cstring, Cuint, Ptr{Cuint}),
@@ -107,10 +107,10 @@ function get{T}(txn::Transaction, dbi::DBI, key, ::Type{T})
107107
# Convert to proper type
108108
mdb_val = mdb_val_ref[]
109109
if T <: AbstractString
110-
return bytestring(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
110+
return unsafe_string(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
111111
else
112112
nvals = floor(Int, mdb_val.size/sizeof(T))
113113
value = pointer_to_array(convert(Ptr{T}, mdb_val.data), nvals)
114114
return length(value) == 1 ? value[1] : value
115115
end
116-
end
116+
end

‎src/env.jl

+2-3
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,9 @@ end
4444
"""
4545
function open(env::Environment, path::String; flags::Cuint=zero(Cuint), mode::Cmode_t = 0o755)
4646
env.path = path
47-
cpath = bytestring(path)
4847
ret = ccall((:mdb_env_open, liblmdb), Cint,
4948
(Ptr{Void}, Cstring, Cuint, Cmode_t),
50-
env.handle, cpath, flags, mode)
49+
env.handle, path, flags, mode)
5150
(ret != 0) && throw(LMDBError(ret))
5251
return ret::Cint
5352
end
@@ -176,4 +175,4 @@ function show(io::IO, env::Environment)
176175
print(io,"\nMax reader slots in the environment: $(ei.maxreaders)")
177176
print(io,"\nMax reader slots used in the environment: $(ei.numreaders)")
178177
end
179-
end
178+
end

‎test/common.jl

+4-4
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ module LMDB_Common
1414
val = "abcd"
1515
mdb_val_ref = Ref(MDBValue(val))
1616
mdb_val = mdb_val_ref[]
17-
@test val == bytestring(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
17+
@test val == unsafe_string(convert(Ptr{UInt8}, mdb_val.data), mdb_val.size)
1818

1919
val = [1233]
2020
T = eltype(val)
2121
val_size = sizeof(val)
2222
mdb_val = MDBValue(val[1])
2323
@test val_size == mdb_val.size
2424
nvals = floor(Int, mdb_val.size/sizeof(T))
25-
value = pointer_to_array(convert(Ptr{T}, mdb_val.data), nvals)
25+
value = unsafe_wrap(Array, convert(Ptr{T}, mdb_val.data), nvals)
2626
@test val == value
2727

2828
val = [0x0003, 0xff45]
@@ -31,6 +31,6 @@ module LMDB_Common
3131
mdb_val = MDBValue(val)
3232
@test val_size == mdb_val.size
3333
nvals = floor(Int, mdb_val.size/sizeof(T))
34-
value = pointer_to_array(convert(Ptr{T}, mdb_val.data), nvals)
34+
value = unsafe_wrap(Array, convert(Ptr{T}, mdb_val.data), nvals)
3535
@test val == value
36-
end
36+
end

0 commit comments

Comments
 (0)
Please sign in to comment.