{"_id":"limestone","_rev":"17-b1a1beac6f1ac0cc55cadefc852cc509","name":"limestone","description":"Sphinx search server connector for Node.js","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.1":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.1.1","keywords":"sphinx, search, searchd, text","maintainers":[{"name":"Serge Shirokov","email":"bolter.fire@gmail.com","web":"http://kuroikaze85.wordpress.com"}],"bugs":"http://github.com/kurokikaze/limestone/issues","licenses":[{"type":"Creative Commons - Attribution 3.0","url":"http://creativecommons.org/licenses/by/3.0/"}],"repositories":[{"type":"git","url":"git://github.com/kurokikaze/limestone"}],"engine":"node","implements":["CommonJS/Modules/1.0"],"_id":"limestone@0.1.1","engines":{"node":"*"},"_nodeSupported":true,"dist":{"tarball":"https://registry.npmjs.org/limestone/-/limestone@v0.1.1.tgz","shasum":"4d3bcb189293f4659c75e0b85d8e53b94423b7ee","integrity":"sha512-zRzZ27c4Dif6FpxRoPCDnglYCiqa2ukpWKEusAIxk3/tNn3DTSPu9YKSnBOmQ7dpYp8+Mo7ur2aSyPhvcr+yIw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFDP4n9UiMVM/s2xM6tf0dvJTq314+Y8DFpAd4dkf6ApAiACYVwLEROkJk+NUPoudzCQRZ0cDU1P4rC9wqFccbPl4g=="}]},"directories":{}},"0.1.2":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.1.2","keywords":["sphinx","search","searchd","text"],"main":"./limestone.js","maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"bugs":{"name":"http://github.com/kurokikaze/limestone/issues"},"licenses":[{"type":"Creative Commons - Attribution 3.0","url":"http://creativecommons.org/licenses/by/3.0/"}],"repositories":[{"type":"git","url":"git://github.com/kurokikaze/limestone"}],"engine":"node","implements":["CommonJS/Modules/1.0"],"dependencies":{},"devDependencies":{},"engines":{"node":"*"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"homepage":"http://kurokikaze.github.com/limestone","repository":{"type":"git","url":"git://github.com/kurokikaze/limestone.git"},"scripts":{"test":"node ls-test.js"},"_npmUser":{"name":"kurokikaze","email":"bolter.fire@gmail.com"},"_id":"limestone@0.1.2","_engineSupported":true,"_npmVersion":"1.0.94","_nodeVersion":"v0.5.8","_defaultsLoaded":true,"dist":{"shasum":"07d5a57261175c3452fd32045f85d01e984b2edd","tarball":"https://registry.npmjs.org/limestone/-/limestone-0.1.2.tgz","integrity":"sha512-he6xGA52wEzUBaOsnIyCaPDEED3k+Q1aFbfLmhJVgJZsb6WKeeyn/YrmL7UQTlht7W4ZxKs8304izzePtgZvew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEtV/tesdNWEXFfr4nk1HY1vxUk64Jq2N79zF6McTDgwIhAL6Vm6eBaZtHloLPwh6MifX3JcaPvquEvZYkVbPV1I4p"}]},"directories":{}},"0.1.3":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.1.3","keywords":["sphinx","search","searchd","text"],"main":"./limestone.js","maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"bugs":{"name":"http://github.com/kurokikaze/limestone/issues"},"licenses":[{"type":"Creative Commons - Attribution 3.0","url":"http://creativecommons.org/licenses/by/3.0/"}],"repositories":[{"type":"git","url":"git://github.com/kurokikaze/limestone"}],"engine":"node","implements":["CommonJS/Modules/1.0"],"dependencies":{},"devDependencies":{},"engines":{"node":"*"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"homepage":"http://kurokikaze.github.com/limestone","repository":{"type":"git","url":"git://github.com/kurokikaze/limestone.git"},"scripts":{"test":"node ls-test.js"},"_npmUser":{"name":"kurokikaze","email":"kurokikaze@yandex.ru"},"_id":"limestone@0.1.3","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.16","_nodeVersion":"v0.6.14","_defaultsLoaded":true,"dist":{"shasum":"014984a1f44f84b1292f081cef75d6ab52df7b65","tarball":"https://registry.npmjs.org/limestone/-/limestone-0.1.3.tgz","integrity":"sha512-AmDC43FFqpbMG92wjxj183/zvZ9xtnGGY+Mhgh8FBTFwZTDQ4BkirAfC8m+dEXC5PVhBZE6CNWYKusHE2gIPfw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGMa+jGCY+WhV7vUo778VWP3gKpFlX1tGwYfhI4r9hcuAiEAq/QyGSqI9oKS3DXvhEhFANw8OFEMp3/KzHnLOdz909k="}]},"directories":{}},"0.1.4":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.1.4","keywords":["sphinx","search","searchd","text","fulltext"],"main":"./limestone.js","maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"bugs":{"url":"http://github.com/kurokikaze/limestone/issues"},"licenses":[{"type":"Creative Commons - Attribution 3.0","url":"http://creativecommons.org/licenses/by/3.0/"}],"repositories":[{"type":"git","url":"git://github.com/kurokikaze/limestone"}],"engine":"node","implements":["CommonJS/Modules/1.0"],"dependencies":{},"devDependencies":{},"engines":{"node":"*"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"homepage":"http://kurokikaze.github.com/limestone","repository":{"type":"git","url":"git://github.com/kurokikaze/limestone.git"},"scripts":{"test":"node ls-test.js"},"_id":"limestone@0.1.4","dist":{"shasum":"cf5b94c8e51b389c3550b395a1e19c7174d87c15","tarball":"https://registry.npmjs.org/limestone/-/limestone-0.1.4.tgz","integrity":"sha512-jFbwvREhiguc+FIxPvdL64T5P2SSTj6FQtR2PpJ5QAF1XNY2a0oeJf1ERrqt64GYuDchXM87sBM/UfPVSAxGjA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXiT5lNx7/7F5jSH5Q/wmRhcb6TxHmII1Y/IwuRYjxGgIgJh6hbl73rwLCSy0L2Sg9Pf7lfu0LGZ+0XeKqcHMxKOc="}]},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"kurokikaze","email":"bolter.fire@gmail.com"},"directories":{}},"0.1.5":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.1.5","keywords":["sphinx","search","searchd","text","fulltext"],"main":"./limestone.js","maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"bugs":{"url":"http://github.com/kurokikaze/limestone/issues"},"licenses":[{"type":"Creative Commons - Attribution 3.0","url":"http://creativecommons.org/licenses/by/3.0/"}],"repositories":[{"type":"git","url":"git://github.com/kurokikaze/limestone"}],"engine":"node","implements":["CommonJS/Modules/1.0"],"dependencies":{},"devDependencies":{},"engines":{"node":"*"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"homepage":"http://kurokikaze.github.com/limestone","repository":{"type":"git","url":"git://github.com/kurokikaze/limestone"},"scripts":{"test":"node ls-test.js"},"_id":"limestone@0.1.5","dist":{"shasum":"572b104884068fae161a8e2c3f03a2d151e2ddbc","tarball":"https://registry.npmjs.org/limestone/-/limestone-0.1.5.tgz","integrity":"sha512-UiIB7OYtvtSvvsnAmW8YilFQWVCLbBfaN6yN19oI/wvc/yvd9XyQfDpCJErX5EfVhRhITFas2k1dPI1/GygDSg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRhxs00Q9BCbOmcU6Xtt3KCG86hFpzt4ERRbiIsbu9+wIhAN8BXElAnxoz6JpS72sfnHHhXeNxxvqnekRu6H1koS4Q"}]},"_from":"limestone","_npmVersion":"1.4.3","_npmUser":{"name":"kurokikaze","email":"bolter.fire@gmail.com"},"directories":{}},"0.2.0":{"name":"limestone","description":"Sphinx search server connector for Node.js","version":"0.2.0","keywords":["sphinx","search","searchd","text","fulltext"],"main":"./limestone.js","maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"bugs":{"url":"http://github.com/kurokikaze/limestone/issues"},"license":"MIT","engine":"node","implements":["CommonJS/Modules/1.0"],"dependencies":{},"devDependencies":{"eslint-config-airbnb-base":"^13.1.0","eslint-plugin-import":"^2.14.0","jasmine":"*"},"engines":{"node":"*"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"homepage":"http://kurokikaze.github.com/limestone","repository":{"type":"git","url":"git://github.com/kurokikaze/limestone.git"},"scripts":{"test":"node tests/persistent.js"},"gitHead":"3ba75d0cfea5b88ac08031743f6de9adb1139b5b","_id":"limestone@0.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"kurokikaze","email":"bolter.fire@gmail.com"},"dist":{"integrity":"sha512-wzYQAwHuC6qBH/6KrMVfvYkjjwLnYn8TgedhgbfTzKGPoQcXH+WK3g241GUM7UD7mXTZLoL/avH9c4d/Jngkbg==","shasum":"b56663b5872121e8efe865958bed430df1e7f1eb","tarball":"https://registry.npmjs.org/limestone/-/limestone-0.2.0.tgz","fileCount":13,"unpackedSize":44919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4b+TCRA9TVsSAnZWagAAWJ0P/1HSE+y5XMj2n9tT0OjH\nj0d2NlEsbdTomO3MnliSV5RCElbyBtqnPfpxPrrKrWlSa150wfdkIjaX8bDj\n36A2nrv4wENRdda13vUGoE2TcqXp13ENKUFHnSKC17gVySglTVpNNWu6jr0U\nRRHNfUfTUFPenyMY/GgZkN5fFFuVOkgNISMpxTqS5xFjRaTTmkkg/6OwphIz\nirhH/TnzDToVx/ObP6tA/pwy6FBqLbG1Nm9hQDBgkOt9kAAuD0OseRb0htuJ\neDwZbX4ULn08S4qkR4js1g1+7q/3RkYb74FxGTt0XNMhTJrVaiFOaq7PR8E2\nJdcOO4uq46whbdRMcOa9ZGxEokMtf2lunQFRQqTVsUJZnfoxpKGe/k/ZJZdD\nxLZ3WofRO8AGB/1iUIGw+zxkb3pK/zSE2JKwO3D/WgWoaI1g7iV5Xlk9xrYY\n6XGe4YCkjUfLCDyYME0EQ8a/U/95JKpe+8yF21Ggt3XHkCfhPntrxaX7QjJX\no4jEST38gNKiBfcG0i8YBdTO6pc5oAXBD7OL2bYHKoLEnwiNAh49sOGS8HXJ\nuHyZq0So1PTyr7tZ1ybcMe+/DVvRWRQk/pzNY7FYgm8N6fPVzKaeS4HngJmz\nyUBkN3pjmDnBXr4TP1CLK4Xg2kpEuq0qLPiydqY+o6gysMHLQPP0TnwcsJkQ\nWwER\r\n=Gq3J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClM6BP4cV64DQhjFm/wnsvQ5ts7WnDBo3kAJvicUnVhAIhALFYLf1t9Yun6ewKqvuIa1TjAYh4Nkr5f0y9JIdEnYiK"}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/limestone_0.2.0_1541521299403_0.6696042350348261"},"_hasShrinkwrap":false}},"maintainers":[{"name":"kurokikaze","email":"bolter.fire@gmail.com"}],"time":{"modified":"2022-06-19T12:25:06.614Z","created":"2011-01-26T10:31:58.061Z","0.1.1":"2011-01-26T10:31:58.390Z","0.1.2":"2011-10-10T15:12:58.737Z","0.1.3":"2012-04-09T10:28:20.069Z","0.1.4":"2013-04-17T16:56:31.284Z","0.1.5":"2014-02-19T14:56:39.313Z","0.2.0":"2018-11-06T16:21:39.522Z"},"author":{"name":"Sergey Shirokov","email":"bolter.fire@gmail.com","url":"http://kuroikaze85.wordpress.com"},"repository":{"type":"git","url":"git://github.com/kurokikaze/limestone.git"},"readme":"## Limestone is a Sphinx search server connector for Node.js\r\n\r\nUsage:\r\n\r\n    var limestone = require(\"./limestone\").SphinxClient(),\r\n\r\n    limestone.connect(9312, // port. 9312 is standard Sphinx port. also 'host:port' allowed\r\n\t\t      function(err) { // callback\r\n\t\t\t  if (err) {\r\n\t\t\t      console.log('Connection error: ' + err.message);\r\n\t\t\t\t  process.exit();\r\n\t\t\t  }\r\n\t\t\t  console.log('Connected, sending queries');\r\n\t\t\t  \r\n\t\t\t  limestone.query('test', function(err, answer) { // Simple query\r\n\t\t\t\tconsole.log('Simple query returned ' + answer.match_count + 'results');\r\n\t\t\t  });\r\n\t\t\t  \r\n\t\t\t  limestone.query( // Query with options\r\n\t\t\t      {'query':'test', maxmatches:1}, \r\n\t\t\t      function(err, answer) {\r\n\t\t\t\t  limestone.disconnect();\r\n\t\t\t\t  console.log(\"Extended search for 'test' yielded \" + \r\n\t\t\t\t\t   answer.match_count + \" results: \" + \r\n\t\t\t\t\t   JSON.stringify(answer));\r\n\t\t\t      });\r\n\t\t      });\r\n\r\nTo Use Build_Excerpts:\r\n\r\n    limestone.connect(9312,  // port\r\n\t\tfunction(err) { //callback\r\n\t\t\tif (err) {\r\n\t\t\tconsole.log('Connection error: ' + err);\r\n\t\t\t}\r\n\t\t\tconsole.log('Connected Build Excerpts');\r\n\t\t\tlimestone.build_excerpts(\r\n\t\t\t\t[\r\n\t\t\t\t\t'this is my teste text to be highlighted', \r\n\t\t\t\t\t'this is another test text to be highlighted'\r\n\t\t\t\t], // docs\r\n\t\t\t\t'questions_1',\r\n\t\t\t\t'test text',\r\n\t\t\t\t{},\r\n\t\t\t\tfunction(err, answer) {\r\n\t\t\t\t\tlimestone.disconnect();\r\n\t\t\t\t\tconsole.log(JSON.stringify(answer));\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t);\r\n\r\nBonus: persistent connection:\r\nYou can ask sphinx to open a persistent connection. You can then make several request through the same connection\r\n\r\n    limestone.connect(9312, // port\r\n\t\ttrue, // persistent (optional)\r\n\t\tfunction(err) { // callback\r\n\t\t\tif (err){\r\n\t\t\t\tconsole.log('Connection error: ' + err);\r\n\t\t\t}\r\n\t\t\tconsole.log('Connected Search'); \r\n\t\t\tconsole.log('sending query');  \r\n\t\t\tlimestone.query({\r\n\t\t\t\t'query' : 'test', // query object with sphinx options\r\n\t\t\t\t'maxmatches' : 1,\r\n\t\t\t\t'indexes':'questions_1,products_3'},\r\n\t\t\t\tfunction(err, answer){ \t\t\t// callback\r\n\t\t\t\t\tconsole.log('Extended search yielded ' + \r\n\t\t\t\t\t\tanswer.match_count + \" results\\n\" +\r\n\t\t\t\t\t\tJSON.stringify(answer));\r\n\t\t\t\t\r\n\t\t\t\t\tlimestone.build_excerpts([\r\n\t\t\t\t\t\t\t'this is my test text to be highlighted', \r\n\t\t\t\t\t\t\t'this is another test text to be highlighted'\r\n\t\t\t\t\t\t], // docs\r\n\t\t\t\t\t\t'questions_1', // index\r\n\t\t\t\t\t\t'test text', // words\r\n\t\t\t\t\t\t{},\r\n\t\t\t\t\t\tfunction(err, answer){\r\n\t\t\t\t\t\t\tlimestone.disconnect();\r\n\t\t\t\t\t\t\tconsole.log(JSON.stringify(answer));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\t\t\t\t\t  \r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t);\r\n\r\nLimestone is queueing now:\r\nYou can safely call limestone.query or limestone.build_excerpts methods outside the scope of the callback functions, provided the connection is made persistent. Limestone will enqueue the sphinx commands and run them sequentially.\r\n\r\nThis works:\r\n\r\n    limestone.connect(9312, // port. 9312 is standard Sphinx port\r\n\t\t      function(err) { // callback\r\n\t\t          ...\r\n\t\t\t  limestone.query(\r\n\t\t\t      {'query':'test', maxmatches:1}, \r\n\t\t\t      function(err, answer) {\r\n\t\t\t          ....\r\n\t\t\t      });\r\n\t\t      });\r\n\r\n    limestone.query({'second query':'test'}, function(err, answer){..}); // won't crash with previous\r\n","readmeFilename":"README.markdown","homepage":"http://kurokikaze.github.com/limestone","keywords":["sphinx","search","searchd","text","fulltext"],"bugs":{"url":"http://github.com/kurokikaze/limestone/issues"},"users":{"ferx":true},"license":"MIT"}