@cryptotaxi247 / kubo / commits / 5fa31f8e6

deps(go-datastore) update

This commit updates go-datastore in order to access new LevelDb Close() method License: MIT Signed-off-by: Brian Tiger Chow <brian@perfmode.com>

Brian Tiger Chow committed Nov 17, 2014 at 00:42 UTC 5fa31f8e6c6f833ed82426fa583c7b56ba9cdad4
7 files changed +40 -53
Godeps/Godeps.json
+1 -1
@@ -99,7 +99,7 @@
99 },
100 {
101 "ImportPath": "github.com/jbenet/go-datastore",
102 - "Rev": "da593f5071b3ce60bf45b548193863bc3c885c3c"
102 + "Rev": "b31aad9b9b22e46d99a270ed5aebb259fab64dcc"
103 },
104 {
105 "ImportPath": "github.com/jbenet/go-is-domain",
Godeps/_workspace/src/github.com/jbenet/go-datastore/Godeps/Godeps.json
+7 -2
@@ -1,6 +1,6 @@
1 {
2 "ImportPath": "github.com/jbenet/go-datastore",
3 - "GoVersion": "go1.3.1",
3 + "GoVersion": "go1.3.3",
4 "Packages": [
5 "./..."
6 ],
@@ -33,11 +33,16 @@
33 },
34 {
35 "ImportPath": "github.com/syndtr/goleveldb/leveldb",
36 - "Rev": "9bca75c48d6c31becfbb127702b425e7226052e3"
36 + "Rev": "cd2b8f743192883ab9fbc5f070ebda1dc90f3732"
37 },
38 {
39 "ImportPath": "gopkg.in/check.v1",
40 "Rev": "91ae5f88a67b14891cfd43895b01164f6c120420"
41 + },
42 + {
43 + "ImportPath": "launchpad.net/gocheck",
44 + "Comment": "87",
45 + "Rev": "gustavo@niemeyer.net-20140225173054-xu9zlkf9kxhvow02"
46 }
47 ]
48 }
Godeps/_workspace/src/github.com/jbenet/go-datastore/Makefile
+9
@@ -1,6 +1,12 @@
1 build:
2 go build
3
4 +# saves/vendors third-party dependencies to Godeps/_workspace
5 +# -r flag rewrites import paths to use the vendored path
6 +# ./... performs operation on all packages in tree
7 +vendor: godep
8 + godep save -r ./...
9 +
10 deps:
11 go get ./...
12
@@ -10,3 +16,6 @@ watch:
16 # for portability, use watchmedo -- pip install watchmedo
17 @watchmedo shell-command --patterns="*.go;" --recursive \
18 --command='make' .
19 +
20 +godep:
21 + go get github.com/tools/godep
Godeps/_workspace/src/github.com/jbenet/go-datastore/fs/fs_test.go
+4 -18
@@ -2,7 +2,6 @@ package fs_test
2
3 import (
4 "bytes"
5 - "sort"
5 "testing"
6
7 ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore"
@@ -13,7 +12,10 @@ import (
12 // Hook up gocheck into the "go test" runner.
13 func Test(t *testing.T) { TestingT(t) }
14
16 -type DSSuite struct{}
15 +type DSSuite struct {
16 + dir string
17 + ds ds.Datastore
18 +}
19
20 var _ = Suite(&DSSuite{})
21
@@ -52,22 +54,6 @@ func (ks *DSSuite) TestBasic(c *C) {
54 c.Check(err, Equals, nil)
55 c.Check(bytes.Equal(v.([]byte), []byte(k.String())), Equals, true)
56 }
55 -
56 - listA, errA := mpds.KeyList()
57 - listB, errB := ktds.KeyList()
58 - c.Check(errA, Equals, nil)
59 - c.Check(errB, Equals, nil)
60 - c.Check(len(listA), Equals, len(listB))
61 -
62 - // sort them cause yeah.
63 - sort.Sort(ds.KeySlice(listA))
64 - sort.Sort(ds.KeySlice(listB))
65 -
66 - for i, kA := range listA {
67 - kB := listB[i]
68 - c.Check(pair.Invert(kA), Equals, kB)
69 - c.Check(kA, Equals, pair.Convert(kB))
70 - }
57 }
58
59 func strsToKeys(strs []string) []ds.Key {
Godeps/_workspace/src/github.com/jbenet/go-datastore/leveldb/datastore.go
+18 -12
@@ -1,19 +1,25 @@
1 package leveldb
2
3 import (
4 + "io"
5 +
6 ds "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-datastore"
7 "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb"
8 "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/opt"
9 )
10
9 -// Datastore uses a standard Go map for internal storage.
10 -type Datastore struct {
11 +type Datastore interface {
12 + ds.ThreadSafeDatastore
13 + io.Closer
14 +}
15 +
16 +type datastore struct {
17 DB *leveldb.DB
18 }
19
20 type Options opt.Options
21
16 -func NewDatastore(path string, opts *Options) (ds.ThreadSafeDatastore, error) {
22 +func NewDatastore(path string, opts *Options) (Datastore, error) {
23 var nopts opt.Options
24 if opts != nil {
25 nopts = opt.Options(*opts)
@@ -23,7 +29,7 @@ func NewDatastore(path string, opts *Options) (ds.ThreadSafeDatastore, error) {
29 return nil, err
30 }
31
26 - return &Datastore{
32 + return &datastore{
33 DB: db,
34 }, nil
35 }
@@ -32,7 +38,7 @@ func NewDatastore(path string, opts *Options) (ds.ThreadSafeDatastore, error) {
38 //
39 // Note: using sync = false.
40 // see http://godoc.org/github.com/syndtr/goleveldb/leveldb/opt#WriteOptions
35 -func (d *Datastore) Put(key ds.Key, value interface{}) (err error) {
41 +func (d *datastore) Put(key ds.Key, value interface{}) (err error) {
42 val, ok := value.([]byte)
43 if !ok {
44 return ds.ErrInvalidType
@@ -40,7 +46,7 @@ func (d *Datastore) Put(key ds.Key, value interface{}) (err error) {
46 return d.DB.Put(key.Bytes(), val, nil)
47 }
48
43 -func (d *Datastore) Get(key ds.Key) (value interface{}, err error) {
49 +func (d *datastore) Get(key ds.Key) (value interface{}, err error) {
50 val, err := d.DB.Get(key.Bytes(), nil)
51 if err != nil {
52 if err == leveldb.ErrNotFound {
@@ -51,11 +57,11 @@ func (d *Datastore) Get(key ds.Key) (value interface{}, err error) {
57 return val, nil
58 }
59
54 -func (d *Datastore) Has(key ds.Key) (exists bool, err error) {
60 +func (d *datastore) Has(key ds.Key) (exists bool, err error) {
61 return ds.GetBackedHas(d, key)
62 }
63
58 -func (d *Datastore) Delete(key ds.Key) (err error) {
64 +func (d *datastore) Delete(key ds.Key) (err error) {
65 err = d.DB.Delete(key.Bytes(), nil)
66 if err == leveldb.ErrNotFound {
67 return ds.ErrNotFound
@@ -63,18 +69,18 @@ func (d *Datastore) Delete(key ds.Key) (err error) {
69 return err
70 }
71
66 -func (d *Datastore) KeyList() ([]ds.Key, error) {
72 +func (d *datastore) KeyList() ([]ds.Key, error) {
73 i := d.DB.NewIterator(nil, nil)
74 var keys []ds.Key
69 - for ; i.Valid(); i.Next() {
75 + for i.Next() {
76 keys = append(keys, ds.NewKey(string(i.Key())))
77 }
78 return keys, nil
79 }
80
81 // LevelDB needs to be closed.
76 -func (d *Datastore) Close() (err error) {
82 +func (d *datastore) Close() (err error) {
83 return d.DB.Close()
84 }
85
80 -func (d *Datastore) IsThreadSafe() {}
86 +func (d *datastore) IsThreadSafe() {}
Godeps/_workspace/src/github.com/jbenet/go-datastore/namespace/example_test.go
+1 -1
@@ -24,7 +24,7 @@ func Example() {
24 v3, _ := mp.Get(k3)
25 fmt.Printf("mp.Get %s -> %s\n", k3, v3)
26 // Output:
27 - // ns.Put /beep -> boop
27 + // ns.Put /beep boop
28 // ns.Get /beep -> boop
29 // mp.Get /foo/bar/beep -> boop
30 }
Godeps/_workspace/src/github.com/jbenet/go-datastore/query.go deleted
-19
@@ -1,19 +0,0 @@
1 -package datastore
2 -
3 -// type KeyIterator struct {
4 -// HasNext() bool
5 -// Next() interface{}
6 -// }
7 -
8 -// type Query struct {
9 -// }
10 -
11 -/*
12 -QueryDatastores support a Query interface. Queries are used to support
13 -searching for values (beyond simple key-based `Get`s).
14 -*/
15 -// type QueryDatastore interface {
16 -// // Query returns an Iterator of Keys whose Values match criteria
17 -// // expressed in `query`.
18 -// Query(Query) (iter Iterator, err error)
19 -// }