From 469d7dfebe3853902f0a742e3a3ad4e223c4230b Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 11:27:52 -0300 Subject: [PATCH 1/7] remove redundant check --- cli.js | 3 +++ db/copay.db/000013.ldb | Bin 0 -> 1113 bytes db/copay.db/CURRENT | 1 + db/copay.db/LOCK | 0 db/copay.db/LOG | 3 +++ db/copay.db/LOG.old | 3 +++ db/copay.db/MANIFEST-000021 | Bin 0 -> 65536 bytes lib/server.js | 3 +-- 8 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 cli.js create mode 100644 db/copay.db/000013.ldb create mode 100644 db/copay.db/CURRENT create mode 100644 db/copay.db/LOCK create mode 100644 db/copay.db/LOG create mode 100644 db/copay.db/LOG.old create mode 100644 db/copay.db/MANIFEST-000021 diff --git a/cli.js b/cli.js new file mode 100644 index 0000000..d4f0dd4 --- /dev/null +++ b/cli.js @@ -0,0 +1,3 @@ +var _ = require('lodash'); +var request = require('request'); +var program = require('commander'); diff --git a/db/copay.db/000013.ldb b/db/copay.db/000013.ldb new file mode 100644 index 0000000000000000000000000000000000000000..877671a6e93cbfb7c82c4ddf9d12acf4ec88022c GIT binary patch literal 1113 zcmaJ=J8YX(6#oA_nnW#9h!mBfs>oFb20PsM!z?6C(ln_<^H7kRWVp}7s{PyXZzndv z5)&X0MM8+Vteucp7yzNFI~x*WsDzk0Ssl7m3S2i*M~?0t?)lF7?m6dvckssGNkTtQ zZKJ7szBLCi<`N=Q_(@5MAoB%<01=WXDWV5EuViVG8B8b=5R zXP9Ablu0$dhhMi@o#U$;5sPb0?5WMHS@M^ck&1} zedc265o~r$t!iTfTj}&pY44x_v~w+==eINGyPyOMp!je)=IotKef{83ItB{g{F7Xv zOcrK;n)Z>Q%N`CI-N?f^D)-8#3&&f=uH4zWe^mKsUHVPe=$&q?uI=V)H_MwFOO5jV zoSA#QdZ%oAONW(^?QT|%@utd}*>2tKEVPd*w=CHpoo=1w%P!k#ZXYjNTB+3Z3|0xGG(I;(3TrP2Wll*LC<_Wo<2bQaI}WXf6btB}FbV~v zl~XuAu7*Mrse@z~rb~lG7C{&Ua*ld2jDg%?0=eYab0djh9udv4MJi66IKictk{TWi zivo)y$$_*^wc+nehx_;MXWvT3M$ntdZ%dbk-l@1RCwtQeFO#{^P_4CnYrf`Be9f8p z#ZEj|v&CAYQD1olJ)W2uCJm{QpZ`G5lc~{e`tOA$zf8QwethxX@}Cp$el>Y@==y*A N@Z~38-ss%=>px-PLJ9x? literal 0 HcmV?d00001 diff --git a/db/copay.db/CURRENT b/db/copay.db/CURRENT new file mode 100644 index 0000000..e60e154 --- /dev/null +++ b/db/copay.db/CURRENT @@ -0,0 +1 @@ +MANIFEST-000021 diff --git a/db/copay.db/LOCK b/db/copay.db/LOCK new file mode 100644 index 0000000..e69de29 diff --git a/db/copay.db/LOG b/db/copay.db/LOG new file mode 100644 index 0000000..dc60017 --- /dev/null +++ b/db/copay.db/LOG @@ -0,0 +1,3 @@ +2015/02/09-15:18:43.041206 106a0a000 Recovering log #20 +2015/02/09-15:18:43.042521 106a0a000 Delete type=0 #20 +2015/02/09-15:18:43.042604 106a0a000 Delete type=3 #19 diff --git a/db/copay.db/LOG.old b/db/copay.db/LOG.old new file mode 100644 index 0000000..26e8958 --- /dev/null +++ b/db/copay.db/LOG.old @@ -0,0 +1,3 @@ +2015/02/09-15:18:03.323403 103704000 Recovering log #18 +2015/02/09-15:18:03.324683 103704000 Delete type=0 #18 +2015/02/09-15:18:03.324769 103704000 Delete type=3 #17 diff --git a/db/copay.db/MANIFEST-000021 b/db/copay.db/MANIFEST-000021 new file mode 100644 index 0000000000000000000000000000000000000000..c99d283ea7f922815452dcff5afa28bdbca2a23d GIT binary patch literal 65536 zcmeIuF-ikb6a~;3BNz)?1-mR@uWt6+ynB4kx2vahx9PU4%}H_gK2F1G-R<*c5@KxT zVLGjvHs&fVVq0~oX{&w~LaY~Q-uIy#6~9;Sy5%x&C)3d8hnV`R&eyR@DW<9)(!2^o zKTCNCDb!6_9y%YN-*@ApJUTxuMi<9_Lx-0nK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB=F2 G6Zipc$|-LE literal 0 HcmV?d00001 diff --git a/lib/server.js b/lib/server.js index 6ac2dd3..0b4ae74 100644 --- a/lib/server.js +++ b/lib/server.js @@ -548,7 +548,6 @@ CopayServer.prototype.signTx = function(opts, cb) { id: opts.txProposalId }, function(err, txp) { if (err) return cb(err); - if (!txp) return cb(new ClientError('Transaction proposal not found')); var action = _.find(txp.actions, { copayerId: self.copayerId @@ -602,7 +601,7 @@ CopayServer.prototype.rejectTx = function(opts, cb) { id: opts.txProposalId }, function(err, txp) { if (err) return cb(err); - if (!txp) return cb(new ClientError('Transaction proposal not found')); + var action = _.find(txp.actions, { copayerId: self.copayerId }); From 628dc12d00caf93f46fc6bdee312f55c9baa8d70 Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 11:40:48 -0300 Subject: [PATCH 2/7] do not allow locks on undefined --- lib/utils.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/utils.js b/lib/utils.js index 905d798..b39fb7a 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -7,6 +7,8 @@ var Utils = {}; Utils.runLocked = function(token, cb, task) { var self = this; + $.shouldBeDefined(token); + Lock.get(token, function(lock) { var _cb = function() { cb.apply(null, arguments); From 15798be382d04949849e98cdc4e3e8fdb71c9a0b Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 12:05:21 -0300 Subject: [PATCH 3/7] improve error messages --- lib/server.js | 15 ++++++--------- test/integration.js | 4 ++-- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/lib/server.js b/lib/server.js index 0b4ae74..14ec1bd 100644 --- a/lib/server.js +++ b/lib/server.js @@ -496,25 +496,22 @@ CopayServer.prototype.removePendingTx = function(opts, cb) { Utils.runLocked(self.walletId, cb, function(cb) { - self.storage.fetchTx(self.walletId, opts.id, function(err, txp) { + self.getTx({ + id: opts.id + }, function(err, txp) { if (err) return cb(err); - if (!txp) - return cb(new ClientError('Transaction proposal not found')); if (!txp.isPending()) return cb(new ClientError('Transaction proposal not pending')); if (txp.creatorId !== self.copayerId) - return cb(new ClientError('Not allowed to erase this TX')); + return cb(new ClientError('Only creators can remove pending proposals')); var actors = txp.getActors(); - if (actors.length > 1) - return cb(new ClientError('Not allowed to erase this TX')); - - if (actors.length == 1 && actors[0] !== self.copayerId) - return cb(new ClientError('Not allowed to erase this TX')); + if (actors.length > 1 || (actors.length == 1 && actors[0] !== self.copayerId)) + return cb(new ClientError('Cannot remove a proposal signed/rejected by other copayers')); self.storage.removeTx(self.walletId, opts.id, cb); }); diff --git a/test/integration.js b/test/integration.js index 1f632a3..e34b5d3 100644 --- a/test/integration.js +++ b/test/integration.js @@ -1310,7 +1310,7 @@ describe('Copay server', function() { server2.removePendingTx({ id: txp.id }, function(err) { - err.message.should.contain('Not allowed'); + err.message.should.contain('creators'); server2.getPendingTxs({}, function(err, txs) { txs.length.should.equal(1); done(); @@ -1330,7 +1330,7 @@ describe('Copay server', function() { server.removePendingTx({ id: txp.id }, function(err) { - err.message.should.contain('Not allowed'); + err.message.should.contain('other copayers'); done(); }); }); From 86b51f6501286a205ccf28c9aa694a0924fb201a Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 12:09:12 -0300 Subject: [PATCH 4/7] simplify utxo creation --- test/integration.js | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/test/integration.js b/test/integration.js index e34b5d3..9e2aa30 100644 --- a/test/integration.js +++ b/test/integration.js @@ -104,7 +104,7 @@ helpers.createUtxos = function(server, wallet, amounts, cb) { return { txid: helpers.randomTXID(), vout: Math.floor((Math.random() * 10) + 1), - satoshis: amount, + satoshis: helpers.toSatoshi(amount), scriptPubKey: addresses[i].getScriptPubKey(wallet.m).toBuffer().toString('hex'), address: addresses[i++].address, }; @@ -570,7 +570,7 @@ describe('Copay server', function() { }); it('should create a tx', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([100, 200]), function(utxos) { + helpers.createUtxos(server, wallet, [100, 200], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 80, 'some message', copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -625,7 +625,7 @@ describe('Copay server', function() { }); it('should fail to create tx for address invalid address', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([100, 200]), function(utxos) { + helpers.createUtxos(server, wallet, [100, 200], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('invalid address', 80, null, copayerPriv[0].privKey); @@ -640,7 +640,7 @@ describe('Copay server', function() { }); it('should fail to create tx for address of different network', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([100, 200]), function(utxos) { + helpers.createUtxos(server, wallet, [100, 200], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('myE38JHdxmQcTJGP1ZiX4BiGhDxMJDvLJD', 80, null, copayerPriv[0].privKey); @@ -655,7 +655,7 @@ describe('Copay server', function() { }); it('should fail to create tx when insufficient funds', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([100]), function(utxos) { + helpers.createUtxos(server, wallet, [100], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 120, null, copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -680,7 +680,7 @@ describe('Copay server', function() { it.skip('should fail to create tx for dust amount', function(done) {}); it('should create tx when there is a pending tx and enough UTXOs', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([10.1, 10.2, 10.3]), function(utxos) { + helpers.createUtxos(server, wallet, [10.1, 10.2, 10.3], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 12, null, copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -706,7 +706,7 @@ describe('Copay server', function() { }); it('should fail to create tx when there is a pending tx and not enough UTXOs', function(done) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([10.1, 10.2, 10.3]), function(utxos) { + helpers.createUtxos(server, wallet, [10.1, 10.2, 10.3], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 12, null, copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -734,9 +734,9 @@ describe('Copay server', function() { it('should create tx using different UTXOs for simultaneous requests', function(done) { var N = 5; - helpers.createUtxos(server, wallet, helpers.toSatoshi(_.times(N, function() { + helpers.createUtxos(server, wallet, _.times(N, function() { return 100; - })), function(utxos) { + }), function(utxos) { helpers.stubBlockExplorer(server, utxos); server.getBalance({}, function(err, balance) { should.not.exist(err); @@ -776,7 +776,7 @@ describe('Copay server', function() { copayerPriv = c; copayerIds = ids; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([1, 2, 3, 4, 5, 6, 7, 8]), function(utxos) { + helpers.createUtxos(server, wallet, _.range(1, 9), function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 10, null, copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -826,7 +826,7 @@ describe('Copay server', function() { copayerPriv = c; copayerIds = ids; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([1, 2, 3, 4, 5, 6, 7, 8]), function(utxos) { + helpers.createUtxos(server, wallet, _.range(1, 9), function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 10, null, copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { @@ -968,7 +968,7 @@ describe('Copay server', function() { wallet = w; copayerPriv = c; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([1, 2, 3, 4, 5, 6, 7, 8]), function(inutxos) { + helpers.createUtxos(server, wallet, _.range(1, 9), function(inutxos) { utxos = inutxos; done(); }); @@ -1042,7 +1042,7 @@ describe('Copay server', function() { wallet = w; copayerPriv = c; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([1, 2, 3, 4, 5, 6, 7, 8]), function(inutxos) { + helpers.createUtxos(server, wallet, _.range(1, 9), function(inutxos) { utxos = inutxos; done(); }); @@ -1090,7 +1090,7 @@ describe('Copay server', function() { wallet = w; copayerPriv = c; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi(_.range(10)), function(utxos) { + helpers.createUtxos(server, wallet, _.range(10), function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 0.1, null, copayerPriv[0].privKey); async.eachSeries(_.range(10), function(i, next) { @@ -1177,7 +1177,7 @@ describe('Copay server', function() { wallet = w; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi(_.range(2)), function(utxos) { + helpers.createUtxos(server, wallet, _.range(2), function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = { toAddress: '18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', @@ -1225,7 +1225,7 @@ describe('Copay server', function() { wallet = w; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi(_.range(2)), function(utxos) { + helpers.createUtxos(server, wallet, _.range(2), function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = { toAddress: '18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', @@ -1261,7 +1261,7 @@ describe('Copay server', function() { wallet = w; copayerPriv = c; server.createAddress({}, function(err, address) { - helpers.createUtxos(server, wallet, helpers.toSatoshi([100, 200]), function(utxos) { + helpers.createUtxos(server, wallet, [100, 200], function(utxos) { helpers.stubBlockExplorer(server, utxos); var txOpts = helpers.createProposalOpts('18PzpUFkFZE8zKWUPvfykkTxmB9oMR8qP7', 80, 'some message', copayerPriv[0].privKey); server.createTx(txOpts, function(err, tx) { From 9d3001434b6a28c91719eb0c8371e0dba3c208ae Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 12:10:47 -0300 Subject: [PATCH 5/7] split long lines --- lib/server.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/server.js b/lib/server.js index 14ec1bd..bf07053 100644 --- a/lib/server.js +++ b/lib/server.js @@ -88,7 +88,8 @@ CopayServer.prototype.createWallet = function(opts, cb) { var self = this, pubKey; - if (!Utils.checkRequired(opts, ['name', 'm', 'n', 'pubKey'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['name', 'm', 'n', 'pubKey'])) + return cb(new ClientError('Required argument missing')); if (_.isEmpty(opts.name)) return cb(new ClientError('Invalid wallet name')); if (!Wallet.verifyCopayerLimits(opts.m, opts.n)) @@ -154,7 +155,8 @@ CopayServer.prototype._verifySignature = function(text, signature, pubKey) { CopayServer.prototype.joinWallet = function(opts, cb) { var self = this; - if (!Utils.checkRequired(opts, ['walletId', 'name', 'xPubKey', 'xPubKeySignature'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['walletId', 'name', 'xPubKey', 'xPubKeySignature'])) + return cb(new ClientError('Required argument missing')); if (_.isEmpty(opts.name)) return cb(new ClientError('Invalid copayer name')); @@ -236,7 +238,8 @@ CopayServer.prototype.getAddresses = function(opts, cb) { CopayServer.prototype.verifyMessageSignature = function(opts, cb) { var self = this; - if (!Utils.checkRequired(opts, ['message', 'signature'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['message', 'signature'])) + return cb(new ClientError('Required argument missing')); self.getWallet({}, function(err, wallet) { if (err) return cb(err); @@ -389,7 +392,8 @@ CopayServer.prototype._selectUtxos = function(txp, utxos) { CopayServer.prototype.createTx = function(opts, cb) { var self = this; - if (!Utils.checkRequired(opts, ['toAddress', 'amount'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['toAddress', 'amount'])) + return cb(new ClientError('Required argument missing')); Utils.runLocked(self.walletId, cb, function(cb) { self.getWallet({}, function(err, wallet) { @@ -536,7 +540,8 @@ CopayServer.prototype._broadcastTx = function(txp, cb) { CopayServer.prototype.signTx = function(opts, cb) { var self = this; - if (!Utils.checkRequired(opts, ['txProposalId', 'signatures'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['txProposalId', 'signatures'])) + return cb(new ClientError('Required argument missing')); self.getWallet({}, function(err, wallet) { if (err) return cb(err); @@ -592,7 +597,8 @@ CopayServer.prototype.signTx = function(opts, cb) { CopayServer.prototype.rejectTx = function(opts, cb) { var self = this; - if (!Utils.checkRequired(opts, ['txProposalId'])) return cb(new ClientError('Required argument missing')); + if (!Utils.checkRequired(opts, ['txProposalId'])) + return cb(new ClientError('Required argument missing')); self.getTx({ id: opts.txProposalId From 0dd4dad1034424a0bda22efc8c7546f0573cbc53 Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 12:17:19 -0300 Subject: [PATCH 6/7] remove files --- cli.js | 3 --- db/copay.db/000013.ldb | Bin 1113 -> 0 bytes db/copay.db/CURRENT | 1 - db/copay.db/LOCK | 0 db/copay.db/LOG | 3 --- db/copay.db/LOG.old | 3 --- db/copay.db/MANIFEST-000021 | Bin 65536 -> 0 bytes 7 files changed, 10 deletions(-) delete mode 100644 cli.js delete mode 100644 db/copay.db/000013.ldb delete mode 100644 db/copay.db/CURRENT delete mode 100644 db/copay.db/LOCK delete mode 100644 db/copay.db/LOG delete mode 100644 db/copay.db/LOG.old delete mode 100644 db/copay.db/MANIFEST-000021 diff --git a/cli.js b/cli.js deleted file mode 100644 index d4f0dd4..0000000 --- a/cli.js +++ /dev/null @@ -1,3 +0,0 @@ -var _ = require('lodash'); -var request = require('request'); -var program = require('commander'); diff --git a/db/copay.db/000013.ldb b/db/copay.db/000013.ldb deleted file mode 100644 index 877671a6e93cbfb7c82c4ddf9d12acf4ec88022c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1113 zcmaJ=J8YX(6#oA_nnW#9h!mBfs>oFb20PsM!z?6C(ln_<^H7kRWVp}7s{PyXZzndv z5)&X0MM8+Vteucp7yzNFI~x*WsDzk0Ssl7m3S2i*M~?0t?)lF7?m6dvckssGNkTtQ zZKJ7szBLCi<`N=Q_(@5MAoB%<01=WXDWV5EuViVG8B8b=5R zXP9Ablu0$dhhMi@o#U$;5sPb0?5WMHS@M^ck&1} zedc265o~r$t!iTfTj}&pY44x_v~w+==eINGyPyOMp!je)=IotKef{83ItB{g{F7Xv zOcrK;n)Z>Q%N`CI-N?f^D)-8#3&&f=uH4zWe^mKsUHVPe=$&q?uI=V)H_MwFOO5jV zoSA#QdZ%oAONW(^?QT|%@utd}*>2tKEVPd*w=CHpoo=1w%P!k#ZXYjNTB+3Z3|0xGG(I;(3TrP2Wll*LC<_Wo<2bQaI}WXf6btB}FbV~v zl~XuAu7*Mrse@z~rb~lG7C{&Ua*ld2jDg%?0=eYab0djh9udv4MJi66IKictk{TWi zivo)y$$_*^wc+nehx_;MXWvT3M$ntdZ%dbk-l@1RCwtQeFO#{^P_4CnYrf`Be9f8p z#ZEj|v&CAYQD1olJ)W2uCJm{QpZ`G5lc~{e`tOA$zf8QwethxX@}Cp$el>Y@==y*A N@Z~38-ss%=>px-PLJ9x? diff --git a/db/copay.db/CURRENT b/db/copay.db/CURRENT deleted file mode 100644 index e60e154..0000000 --- a/db/copay.db/CURRENT +++ /dev/null @@ -1 +0,0 @@ -MANIFEST-000021 diff --git a/db/copay.db/LOCK b/db/copay.db/LOCK deleted file mode 100644 index e69de29..0000000 diff --git a/db/copay.db/LOG b/db/copay.db/LOG deleted file mode 100644 index dc60017..0000000 --- a/db/copay.db/LOG +++ /dev/null @@ -1,3 +0,0 @@ -2015/02/09-15:18:43.041206 106a0a000 Recovering log #20 -2015/02/09-15:18:43.042521 106a0a000 Delete type=0 #20 -2015/02/09-15:18:43.042604 106a0a000 Delete type=3 #19 diff --git a/db/copay.db/LOG.old b/db/copay.db/LOG.old deleted file mode 100644 index 26e8958..0000000 --- a/db/copay.db/LOG.old +++ /dev/null @@ -1,3 +0,0 @@ -2015/02/09-15:18:03.323403 103704000 Recovering log #18 -2015/02/09-15:18:03.324683 103704000 Delete type=0 #18 -2015/02/09-15:18:03.324769 103704000 Delete type=3 #17 diff --git a/db/copay.db/MANIFEST-000021 b/db/copay.db/MANIFEST-000021 deleted file mode 100644 index c99d283ea7f922815452dcff5afa28bdbca2a23d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65536 zcmeIuF-ikb6a~;3BNz)?1-mR@uWt6+ynB4kx2vahx9PU4%}H_gK2F1G-R<*c5@KxT zVLGjvHs&fVVq0~oX{&w~LaY~Q-uIy#6~9;Sy5%x&C)3d8hnV`R&eyR@DW<9)(!2^o zKTCNCDb!6_9y%YN-*@ApJUTxuMi<9_Lx-0nK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB=F2 G6Zipc$|-LE From 8e7a3a77f3ea6cbc6ae4dad0e80912c2819c981b Mon Sep 17 00:00:00 2001 From: Ivan Socolsky Date: Wed, 11 Feb 2015 12:19:38 -0300 Subject: [PATCH 7/7] ignore db/ --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 465aa8a..34b12be 100644 --- a/.gitignore +++ b/.gitignore @@ -28,4 +28,5 @@ node_modules .lock-wscript *.swp -out/ \ No newline at end of file +out/ +db/ \ No newline at end of file