{"_id":"grunt-sync","_rev":"204811","name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","dist-tags":{"latest":"0.8.2"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"time":{"modified":"2021-06-03T13:11:16.000Z","created":"2013-02-23T19:28:36.566Z","0.8.2":"2020-01-14T09:11:34.586Z","0.8.1":"2019-05-20T14:13:38.127Z","0.8.0":"2018-06-22T22:31:47.029Z","0.7.0":"2017-09-24T22:01:26.008Z","0.6.2":"2016-08-09T09:43:56.289Z","0.5.2":"2016-02-02T08:26:26.207Z","0.5.1":"2015-12-11T18:48:53.023Z","0.5.0":"2015-12-10T08:53:43.686Z","0.4.1":"2015-08-31T20:35:00.806Z","0.4.0":"2015-08-31T20:30:24.662Z","0.3.0":"2015-08-21T06:21:48.483Z","0.2.4":"2015-07-26T21:02:51.873Z","0.2.3":"2015-01-11T10:34:13.308Z","0.2.2":"2014-11-23T11:45:37.980Z","0.2.1":"2014-11-08T12:33:11.184Z","0.2.0":"2014-09-04T21:47:47.648Z","0.1.1":"2014-08-26T06:25:23.454Z","0.1.0":"2014-08-25T16:28:42.907Z","0.0.8":"2014-07-31T15:03:32.076Z","0.0.7":"2014-04-21T20:52:10.300Z","0.0.6":"2014-03-25T17:21:19.145Z","0.0.5":"2013-12-16T08:22:14.844Z","0.0.4":"2013-04-02T16:21:54.986Z","0.0.3":"2013-02-23T19:36:41.874Z","0.0.2":"2013-02-23T19:28:36.566Z"},"users":{"mjagetia":true,"dfosco":true,"veloz":true,"sofiarose":true,"brandonpapworth":true,"wenbing":true,"brainuxdev":true,"saidgeek":true,"giovannipds":true,"toledano":true,"ttian226":true,"tdmalone":true,"npmlincq":true,"largepuma":true,"angusgrant":true},"author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"versions":{"0.8.2":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.8.2","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"license":"MIT","main":"Gruntfile.js","engines":{"node":">=6 <7 || >=8"},"scripts":{"lint":"semistandard","test":"grunt simplemocha","grunt":"grunt"},"dependencies":{"fs-extra":"^6.0.1","glob":"^7.0.5","md5-file":"^2.0.3"},"devDependencies":{"chai":"4.1.2","grunt":"0.4.x","grunt-cli":"1.2.0","grunt-complexity":"0.1.71","grunt-contrib-jshint":"0.1.1","grunt-simple-mocha":"0.4.1","mocha":"3.5.3","semistandard":"11.0.0","time-grunt":"1.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"ef469d1c189e27f32a7ad97be03984b2e11c7b4f","_id":"grunt-sync@0.8.2","_nodeVersion":"13.1.0","_npmVersion":"6.12.1","dist":{"shasum":"815696056cc188bc559cb2e76987f80eba024029","size":6743,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.8.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.8.2.tgz"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grunt-sync_0.8.2_1578993094442_0.31472006684685505"},"_hasShrinkwrap":false,"publish_time":1578993094586,"_cnpm_publish_time":1578993094586},"0.8.1":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.8.1","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"license":"MIT","main":"Gruntfile.js","engines":{"node":">=6 <7 || >=8"},"scripts":{"lint":"semistandard","test":"grunt simplemocha","grunt":"grunt"},"dependencies":{"fs-extra":"6.0.1","glob":"7.0.5","md5-file":"2.0.3"},"devDependencies":{"chai":"4.1.2","grunt":"0.4.x","grunt-cli":"1.2.0","grunt-complexity":"0.1.71","grunt-contrib-jshint":"0.1.1","grunt-simple-mocha":"0.4.1","mocha":"3.5.3","semistandard":"11.0.0","time-grunt":"1.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"864aed57a9dfa5bb3fd832af5ce5413dfc341203","_id":"grunt-sync@0.8.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"dist":{"shasum":"8e14bf894d6c18738a62439295ff5661eeda7861","size":6689,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.8.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.8.1.tgz"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grunt-sync_0.8.1_1558361618021_0.3337147791427304"},"_hasShrinkwrap":false,"publish_time":1558361618127,"_cnpm_publish_time":1558361618127},"0.8.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.8.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"license":"MIT","main":"Gruntfile.js","engines":{"node":">=4.0.0"},"scripts":{"lint":"semistandard","test":"grunt simplemocha","grunt":"grunt"},"dependencies":{"fs-extra":"6.0.1","glob":"7.0.5","md5-file":"2.0.3"},"devDependencies":{"chai":"4.1.2","grunt":"0.4.x","grunt-cli":"1.2.0","grunt-complexity":"0.1.71","grunt-contrib-jshint":"0.1.1","grunt-simple-mocha":"0.4.1","mocha":"3.5.3","semistandard":"11.0.0","time-grunt":"1.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"c4edec650b2c130def9a7661aa3a7aac99d0e232","_id":"grunt-sync@0.8.0","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"dist":{"shasum":"68c718e81f6d4c8761db66e4155b050a7640101a","size":6703,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.8.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.8.0.tgz"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grunt-sync_0.8.0_1529706706928_0.2900446214354724"},"_hasShrinkwrap":false,"publish_time":1529706707029,"_cnpm_publish_time":1529706707029,"deprecated":"Incorrect engines tags"},"0.7.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.7.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"license":"MIT","main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"grunt simplemocha","grunt":"grunt"},"dependencies":{"glob":"7.0.5","lodash":"4.17.4","md5-file":"2.0.3","promised-io":"0.3.5"},"devDependencies":{"chai":"4.1.2","grunt":"0.4.x","grunt-cli":"1.2.0","grunt-complexity":"0.1.71","grunt-contrib-jshint":"0.1.1","grunt-simple-mocha":"0.4.1","mocha":"3.5.3","semistandard":"11.0.0","time-grunt":"1.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"46969e7fae2b19e9e6741ebab6f2d6d5bba02c84","_id":"grunt-sync@0.7.0","_npmVersion":"5.4.2","_nodeVersion":"8.1.2","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"bd5399f29938da4add6586d5bf3316d28ccccd2c","size":6719,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.7.0.tgz"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grunt-sync-0.7.0.tgz_1506290485030_0.5399994165636599"},"directories":{},"publish_time":1506290486008,"_hasShrinkwrap":false,"_cnpm_publish_time":1506290486008},"0.6.2":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.6.2","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^7.0.5","lodash":"^4.14.2","md5-file":"^2.0.3","promised-io":"0.3.5"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"ca10eb6f815d0c502e54dfbe667adab4854f644d","_id":"grunt-sync@0.6.2","_shasum":"d9acb65b4205d017bd6462e49fec2d9071ace47b","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"d9acb65b4205d017bd6462e49fec2d9071ace47b","size":6611,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.6.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.6.2.tgz"},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/grunt-sync-0.6.2.tgz_1470735833718_0.6419425178319216"},"directories":{},"publish_time":1470735836289,"_cnpm_publish_time":1470735836289,"_hasShrinkwrap":false},"0.5.2":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.5.2","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^3.10.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"ab914cb1424db9ac7d8c42fde2d5f2802ce306a0","_id":"grunt-sync@0.5.2","_shasum":"6162c48f42e1b9a96f5f930433e1f3a880d8a6ec","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.3.0","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"6162c48f42e1b9a96f5f930433e1f3a880d8a6ec","size":6605,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.5.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.5.2.tgz"},"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/grunt-sync-0.5.2.tgz_1454401585161_0.0285185684915632"},"directories":{},"publish_time":1454401586207,"_cnpm_publish_time":1454401586207,"_hasShrinkwrap":false},"0.5.1":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.5.1","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^3.10.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"9ec3d1048e779d9bd552a3e7164c89d9e8eccf2e","_id":"grunt-sync@0.5.1","_shasum":"9844b07dd2b36dfb639a6d1cc139c4d13854e2ea","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"9844b07dd2b36dfb639a6d1cc139c4d13854e2ea","size":6499,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.5.1.tgz"},"directories":{},"publish_time":1449859733023,"_cnpm_publish_time":1449859733023,"_hasShrinkwrap":false},"0.5.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.5.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"1e979b3179a055d6847f3147103378a6ab35a57e","_id":"grunt-sync@0.5.0","_shasum":"c7164e13a3dee90fbbe49c4078dffb877d3b2598","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"c7164e13a3dee90fbbe49c4078dffb877d3b2598","size":6547,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.5.0.tgz"},"directories":{},"publish_time":1449737623686,"_cnpm_publish_time":1449737623686,"_hasShrinkwrap":false},"0.4.1":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.4.1","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"79415eeb4aa0f0b42b67fee471bd202e6c7408a2","_id":"grunt-sync@0.4.1","_shasum":"72c29baf225de5574bbcd1b7dd17559fe9cd7aba","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"72c29baf225de5574bbcd1b7dd17559fe9cd7aba","size":6527,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.4.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.4.1.tgz"},"directories":{},"publish_time":1441053300806,"_cnpm_publish_time":1441053300806,"_hasShrinkwrap":false},"0.4.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.4.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"4b3f9b69c34e1c05d115a922e8a551f0aefdc4db","_id":"grunt-sync@0.4.0","_shasum":"522d59365a6c56d248cc03ee1afd304ed0980842","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"522d59365a6c56d248cc03ee1afd304ed0980842","size":6418,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.4.0.tgz"},"directories":{},"publish_time":1441053024662,"_cnpm_publish_time":1441053024662,"_hasShrinkwrap":false},"0.3.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.3.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","md5-file":"^2.0.3","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"b80ffe957c784a2825e27598196de9537c99a535","_id":"grunt-sync@0.3.0","_shasum":"3560ca41c187360eaa85c87df9bbda52bd175acd","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"3560ca41c187360eaa85c87df9bbda52bd175acd","size":6432,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.3.0.tgz"},"directories":{},"publish_time":1440138108483,"_cnpm_publish_time":1440138108483,"_hasShrinkwrap":false},"0.2.4":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.2.4","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"lint":"semistandard","test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","semistandard":"^6.1.2","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"3a4476380bba40ffe5c0232a5d3e5902d69d5aa6","_id":"grunt-sync@0.2.4","_shasum":"39f79950efaeafee3c3ba37fca98cf594ebc54fe","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"39f79950efaeafee3c3ba37fca98cf594ebc54fe","size":6057,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.2.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.2.4.tgz"},"directories":{},"publish_time":1437944571873,"_cnpm_publish_time":1437944571873,"_hasShrinkwrap":false},"0.2.3":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.2.3","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","lodash":"^2.4.1","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"9be58600f579343d6ed8a0d6015636b51951343c","_id":"grunt-sync@0.2.3","_shasum":"0109f8ac223ac8660877c1ea1f7e9c89b91568fd","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"0109f8ac223ac8660877c1ea1f7e9c89b91568fd","size":5705,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.2.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.2.3.tgz"},"directories":{},"publish_time":1420972453308,"_cnpm_publish_time":1420972453308,"_hasShrinkwrap":false},"0.2.2":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.2.2","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"d104fec115b2e78f94afed2df92a1596c54443ed","_id":"grunt-sync@0.2.2","_shasum":"dc3f1e2ad116f0e2c0075712b393b3201fa19b7b","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"dc3f1e2ad116f0e2c0075712b393b3201fa19b7b","size":5580,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.2.2.tgz"},"directories":{},"publish_time":1416743137980,"_cnpm_publish_time":1416743137980,"_hasShrinkwrap":false},"0.2.1":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.2.1","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"036d9a0c93de8c531069739892e401dd7a4fced4","_id":"grunt-sync@0.2.1","_shasum":"ca98cd1cec24150d3e9b317d49a85082a2a0da1e","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"ca98cd1cec24150d3e9b317d49a85082a2a0da1e","size":5280,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.2.1.tgz"},"directories":{},"publish_time":1415449991184,"_cnpm_publish_time":1415449991184,"_hasShrinkwrap":false},"0.2.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.2.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"85bb923c6dfae7e27d17ec5f1ef927c0d8ecda3c","_id":"grunt-sync@0.2.0","_shasum":"46e9c734ef1d5b0463e57168c0dbc9928370737e","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"46e9c734ef1d5b0463e57168c0dbc9928370737e","size":5196,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.2.0.tgz"},"directories":{},"publish_time":1409867267648,"_cnpm_publish_time":1409867267648,"_hasShrinkwrap":false},"0.1.1":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.1.1","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"6dd1d81d41f54b71957927cb9f876d6f8c9e6b61","_id":"grunt-sync@0.1.1","_shasum":"9ea2c65a7c510bee35e0452d4fe62db1db617a3f","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"9ea2c65a7c510bee35e0452d4fe62db1db617a3f","size":4783,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.1.1.tgz"},"directories":{},"publish_time":1409034323454,"_cnpm_publish_time":1409034323454,"_hasShrinkwrap":false},"0.1.0":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.1.0","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"glob":"^4.0.5","promised-io":"0.3.3"},"devDependencies":{"chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"^0.1.51","grunt-contrib-jshint":"0.1.x","grunt-simple-mocha":"0.3.x","mocha":"~1.8.1","time-grunt":"^0.4.0"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"671f88dff8d3b0f84eb2d9d30f41f3dc0a675948","_id":"grunt-sync@0.1.0","_shasum":"07c3b4b53ba909c754038b045628d63494bb51e1","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"07c3b4b53ba909c754038b045628d63494bb51e1","size":4623,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.1.0.tgz"},"directories":{},"publish_time":1408984122907,"_cnpm_publish_time":1408984122907,"_hasShrinkwrap":false},"0.0.8":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.8","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x","grunt-complexity":"^0.1.51"},"keywords":["gruntplugin","sync","synchronize","copy"],"gitHead":"5758eccc112428bc16f7e03725f6c735f0919386","_id":"grunt-sync@0.0.8","_shasum":"cc8335c31738f504e820af8c78b84d9b970a6f86","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"dist":{"shasum":"cc8335c31738f504e820af8c78b84d9b970a6f86","size":3305,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.8.tgz"},"directories":{},"publish_time":1406819012076,"_cnpm_publish_time":1406819012076,"_hasShrinkwrap":false},"0.0.7":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.7","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x","grunt-complexity":"^0.1.51"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.7","dist":{"shasum":"89529ba417abf47b384089ee5b7a503bcbcb2831","size":3230,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.7.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1398113530300,"_cnpm_publish_time":1398113530300,"_hasShrinkwrap":false},"0.0.6":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.6","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"git+ssh://git@github.com:tomusdrw/grunt-complexity.git","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.6","dist":{"shasum":"6b6865bc3abe10fe563a8aa4ab7f2c3e0805ce94","size":2405,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.6.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"tomusdrw","email":"tomusdrw@gmail.com"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1395768079145,"_cnpm_publish_time":1395768079145,"_hasShrinkwrap":false},"0.0.5":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.5","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","readmeFilename":"readme.md","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"0.1.x","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.5","dist":{"shasum":"12eb7d48a0847b4443573be887ab7ccc1afe64d1","size":2383,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.5.tgz"},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"tomusdrw","email":"tomusdrw@blacksoft.eu"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1387182134844,"_cnpm_publish_time":1387182134844,"_hasShrinkwrap":false},"0.0.4":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.4","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"git://github.com/tomusdrw/grunt-sync.git"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","readmeFilename":"readme.md","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"git+ssh://git@github.com:tomusdrw/grunt-complexity.git","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.4","dist":{"shasum":"8d3d28134f79f6d4a5c4fca452ebf941d1b5d3aa","size":2368,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.4.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"tomusdrw","email":"tomusdrw@blacksoft.eu"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1364919714986,"_cnpm_publish_time":1364919714986,"_hasShrinkwrap":false},"0.0.3":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.3","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"https://github.com/tomusdrw/grunt-sync"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","readmeFilename":"readme.md","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"promised-io":"0.3.3"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2","grunt":"0.4.x","grunt-complexity":"git+ssh://git@github.com:tomusdrw/grunt-complexity.git","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.3","dist":{"shasum":"ed14a62c5c4ed972ab6511a8b27d44a5b84520e2","size":5940799,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.3.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"tomusdrw","email":"tomusdrw@blacksoft.eu"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1361648201874,"_cnpm_publish_time":1361648201874,"_hasShrinkwrap":false},"0.0.2":{"name":"grunt-sync","description":"Task to synchronize two directories. Similar to grunt-copy but updates only files that have been changed.","version":"0.0.2","homepage":"https://github.com/tomusdrw/grunt-sync.git","author":{"name":"Tomasz Drwiega","email":"tomusdrw@blacksoft.eu","url":"http://blacksoft.eu"},"repository":{"type":"git","url":"https://github.com/tomusdrw/grunt-sync"},"bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"licences":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"main":"Gruntfile.js","readmeFilename":"readme.md","engines":{"node":">=0.8.0"},"scripts":{"test":"mocha"},"dependencies":{"grunt":"0.4.x","promised-io":"0.3.3","grunt-complexity":"git+ssh://git@github.com:tomusdrw/grunt-complexity.git","grunt-simple-mocha":"0.3.x","grunt-contrib-jshint":"0.1.x"},"devDependencies":{"mocha":"~1.8.1","chai":"1.4.2"},"keywords":["gruntplugin","sync","synchronize","copy"],"_id":"grunt-sync@0.0.2","dist":{"shasum":"249313164cfeb1aa0be062147e4445db79eaac41","size":5940795,"noattachment":false,"key":"/grunt-sync/-/grunt-sync-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/grunt-sync/download/grunt-sync-0.0.2.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"tomusdrw","email":"tomusdrw@blacksoft.eu"},"maintainers":[{"name":"tomusdrw","email":"tomusdrw@gmail.com"}],"directories":{},"publish_time":1361647716566,"_cnpm_publish_time":1361647716566,"_hasShrinkwrap":false}},"readme":"# Grunt-sync\n\nA [grunt](http://github.com/gruntjs/grunt/) task to keep directories in sync.\nIt is very similar to [grunt-contrib-copy](https://github.com/gruntjs/grunt-contrib-copy) but\ntries to copy only those files that has actually changed.\n\n\n## Deprecation notice\n\nThis package is not actively developed any more.\n\n## Usage\n\n```bash\nnpm install grunt-sync --save\n```\n\nWithin your grunt file:\n\n```javascript\ngrunt.initConfig({\n  sync: {\n    main: {\n      files: [{\n        cwd: 'src',\n        src: [\n          '**', /* Include everything */\n          '!**/*.txt' /* but exclude txt files */\n        ],\n        dest: 'bin',\n      }],\n      pretend: true, // Don't do any IO. Before you run the task with `updateAndDelete` PLEASE MAKE SURE it doesn't remove too much.\n      verbose: true // Display log messages when copying files\n    }\n  }\n});\n\ngrunt.loadNpmTasks('grunt-sync');\ngrunt.registerTask('default', 'sync');\n```\n\n## More examples\n```javascript\nsync: {\n  main: {\n    files: [\n      {src: ['path/**'], dest: 'dest/'}, // includes files in path and its subdirs\n      {cwd: 'path/', src: ['**/*.js', '**/*.css'], dest: 'dest/'}, // makes all src relative to cwd\n    ],\n    verbose: true, // Default: false\n    pretend: true, // Don't do any disk operations - just write log. Default: false\n    failOnError: true, // Fail the task when copying is not possible. Default: false\n    ignoreInDest: \"**/*.js\", // Never remove js files from destination. Default: none\n    updateAndDelete: true, // Remove all files from dest that are not found in src. Default: false\n    compareUsing: \"md5\" // compares via md5 hash of file contents, instead of file modification time. Default: \"mtime\"\n\n  }\n}\n```\n\n## Installation\n```\nnpm install grunt-sync --save\n```\n\n## How it works?\nIn the first phase the plugin compares modification times of files in `src` and `dest`. It only copies files with newer modification time. Second phase deletes files that exists in `dest` but have not been found in `src`.\n\nDetails:\n\n1. [1st phase] Read modification time of all files in `src`.\n1. [1] Overwrite destination if modification time is newer or destination is directory not file.\n1. [2nd phase]* Get a list of the files in `dest` and calculate difference between destination and source.\n1. [2]* Delete all files (and directories) that have been found in `dest` but are not found `src` excluding ignored files.\n\n*second phase only occurs if updateAndDelete is set to true (whitch is set to false by default)\n\n## Changelog\n* 0.7.0 - Pass down grunt-copy options\n* 0.6.2 - Bumped major versions of important dependencies\n* 0.5.0 - Synchronous removal of directories (to avoid race conditions)\n* 0.4.0 - Adding better patterns support for `ignoreInDest`\n* 0.3.0 - Comparison using md5 hash of file contents or modification time\n* 0.2.4 - `failOnError` option\n* 0.2.3 - Fixed issue with files defined as array when using `updateAndDelete`.\n* 0.2.2 - Fixed issue with `updateAndDelete` when source patterns matches only files.\n* 0.2.1 - Fixed grunt Compact Format.\n* 0.2.0 - Default configuration will not remove any files any more. You have to specify `updateAndDelete` option to remove any files from destination.\n* 0.1.2 - Deleting all files in destination on Windows solved.\n* 0.1.1 - Fixed issue with trailing slash in destination.\n* 0.1.0 - Files missing that are not in `src` are deleted from `dest` (unless you specify `updateOnly`)\n\n\n## Migration 0.1.x -> 0.2.x\nIn version 0.2 you have to explicitly specify that you want the plugin to remove files from destination. See `updateAndDelete` option and run with `pretend:true` first to make sure that it doesn't remove any crucial files. You can tune what files should be left untouched with `ignoreInDest` property.\n\nIf you have `updateOnly:true` in your 0.1 config you can remove this option. For those who used `updateOnly:false` you have to include `updateAndDelete:true` in 0.2 config to keep the same behavior.\n\n\n## Contributors\n* Michael Mifsud ([xzyfer](https://github.com/xzyfer))\n* Erwan Jegouzo ([erwanjegouzo](https://github.com/erwanjegouzo))\n* Janek Lasocki-Biczysko ([janeklb](https://github.com/janeklb))\n\n\n## TODO\n* Research if it's possible to have better integration with `grunt-contrib-watch` - update only changed files instead of scanning everything.\n* Some tests for common problems\n* Some tests to assure performance\n* Rewrite `updateAndDelete` in more elegant way (maybe use patterns from source?)\n","_attachments":{},"homepage":"https://github.com/tomusdrw/grunt-sync.git","bugs":{"url":"https://github.com/tomusdrw/grunt-sync/issues"},"license":"MIT"}