Skip to content
This repository was archived by the owner on Mar 23, 2023. It is now read-only.

Commit 19fe886

Browse files
authored
fix: remove node buffers (#39)
This module didn't have a lot of buffer use in the first place, but we remove any references to buffers in favour of Uint8Arrays. When querying, values come back as Buffers which are Uint8Arrays so the conversion was unnecessary. BREAKING CHANGE: remove node buffers in favour of Uint8Arrays
1 parent 62e8aca commit 19fe886

File tree

5 files changed

+18
-8
lines changed

5 files changed

+18
-8
lines changed

.aegir.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
'use strict'
2+
3+
module.exports = {
4+
webpack: {
5+
node: {
6+
// this is needed until level stops using node buffers in browser code
7+
Buffer: true
8+
}
9+
}
10+
}

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@
3737
},
3838
"homepage": "https://github.com/ipfs/js-datastore-level#readme",
3939
"dependencies": {
40-
"datastore-core": "^1.1.0",
41-
"interface-datastore": "^1.0.2",
40+
"datastore-core": "^2.0.0",
41+
"interface-datastore": "^2.0.0",
4242
"level": "^5.0.1"
4343
},
4444
"devDependencies": {
45-
"aegir": "^22.0.0",
45+
"aegir": "^25.0.0",
4646
"chai": "^4.2.0",
47-
"cids": "^0.8.0",
47+
"cids": "^0.8.3",
4848
"dirty-chai": "^2.0.1",
4949
"level-mem": "^5.0.1",
5050
"rimraf": "^3.0.0"

src/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ class LevelDatastore extends Adapter {
133133
it = map(it, ({ key, value }) => {
134134
const res = { key: new Key(key, false) }
135135
if (values) {
136-
res.value = Buffer.from(value)
136+
res.value = value
137137
}
138138
return res
139139
})

test/index.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ chai.use(require('dirty-chai'))
66
const expect = chai.expect
77
const levelmem = require('level-mem')
88
const level = require('level')
9-
const os = require('os')
109
const LevelStore = require('../src')
10+
const { utils } = require('interface-datastore')
1111

1212
describe('LevelDatastore', () => {
1313
describe('initialization', () => {
@@ -43,7 +43,7 @@ describe('LevelDatastore', () => {
4343
;[levelmem, level].forEach(database => {
4444
describe(`interface-datastore ${database.name}`, () => {
4545
require('interface-datastore/src/tests')({
46-
setup: () => new LevelStore(`${os.tmpdir()}/datastore-level-test-${Math.random()}`, { db: database }),
46+
setup: () => new LevelStore(utils.tmpdir(), { db: database }),
4747
teardown () {}
4848
})
4949
})

test/node.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ describe('LevelDatastore', () => {
6363
const cids = []
6464

6565
for await (const e of store.query({})) {
66-
cids.push(new CID(1, 'dag-cbor', e.key.toBuffer()))
66+
cids.push(new CID(1, 'dag-cbor', e.key.uint8Array()))
6767
}
6868

6969
expect(cids[0].version).to.be.eql(0)

0 commit comments

Comments
 (0)