- reusing es downloads to make local testing faster
- periodic checks will kill the script on failure
- coveralls report is only sent once per build
- failures sending the coveralls report won't cause the build to fail
- removed several unneeded devDeps
- removed old get_spec.js script
- the client's ping method will now send back true as the body when the ping
succceeds, and false when it does not. When the ping fails, the error will
still be sent back and the connection's status will still be set to "dead".
- All of the client's methods now have a spec property, which will provide the
JSON spec used to run that method.
- The yaml test runner will only camelCase param names that are documented, uses
the client's method's new spec property
- Trace log events will now have their proper original query string parameters
- The "tracer" logger will now write to elasticsearch-tracer.log by default, and
will truncate the file if it already exists.
- When running the integration tests, the client will now use a tracer logger which
writes to stderr. The default level is "warning", but with the VERBOSE environment
var it becomes "trace" and the logger will write to it's default file
- Added .idea to the .gitignore, it was being published to NPM
- Cleanup of the grunt tasks. Consilidated several tiny files into seperate moderately sized ones.
- connection's ping method now accepts requestTimeout, path, and method params like
all the grown-up API calls
- ConnectionPool now managed connection timeouts. When a connection dies a
timeout object is created to track when the timeout is scheduled and the function
to call when it does. It also tracks how many times it has run to allow the timeout
to grow
- Timeouts now grow with use of `config.calcDeadTimeout` which is set to 'exponential'
by default, but can also be set to flat in order to always use the standard
deadTimeout. Exponential growth of the deadTimeout is stopped at config.maxDeadTimeout
which is set to 30 minutes by default.
- Connections no longer have a resuscitate method (too hard to spell). Now the
method is created dynamically as a part of the timeout object as it just calls
the connection's ping method and needed to access variables like revive attempts.
- Timeouts were moved to the transport layer, meaning that you need to capture the
abort method and abort the request yourself if you are handling connections
directly, ConnectionsAbstract's ping method does this.
- updated copyright
- several tempalate changes for the docs
- added a config for grunt-contrib-watch
- updated nock commit number
- fixed the coverage script
- removed the export_docs script
- added error message for legacy "es" users who don't have a version locked and have not upgraded
- host will now add auth to urls created with `#makeUrl()`
- Log class no longer looks for `config.loggers`
- The log class now properly escapes single quotes in trace logs
- Removed compiled yaml_tests.js from the repo
- Yaml suite will only log error and warning messages unless the VERBOSE env var is set
- createDefer is now a global setting, changed by modifying Transport.createDefer fubction
- wrote tests for Content-Type checking
- callbacks will now return the body and status of the request (if the request has completed) when an error occurs
- Stdio logger now adds "Elasticsearch " to the front of log messages to distinguish it from other output to stdout.
receive both the "message" and the "curlCommand".
Added a "tracer" logger which allows you to create log files that a executable scripts. Those scripts
will write all of the log messages as script comments, and not comment out the curlCommands, so that they
can trace their application and use the generated script to recreate the issue.
Most changes are simply cased by adding the "unused" rule to jshint.
Replaced the transport, giving it all of the functionality that was brought over to the client and making the client simply a place for the API to live. Essentially a shell that can easily be removed.
spec'd out the TransportRequest which will eventually inherit from one of server possible promise implementations and will be plugable. It will also implement the "abort" functionality needed in an environment like node.js
also exposes itself on the module.exports so that is can be referenced externally.
Added "grunt run" task which currently has a single config, generate_js_api.
Removed the api spec submodule, generator just downloads master when it runs.
Mocha now runs from grunt, just run "grunt"
Copied es-php's README.md, will modify later
More logging around sending a request, including stack traces for debug messages
Connections now manage their own state, and emit a "status changed" event which
the connection pool listens for
Fixed the custom errors
Stream loggers will dump their buffered output to stderr when the process exits
so that log messages will be sort of saved, File logger overrides this and
writes to the file syncronously
Added _.handler(), _.scheduled(), and _.makeBoundMethods() to the utils