Commit Graph

1481 Commits

Author SHA1 Message Date
ad6f56c3f1 Doc updates (#791)
Updates for better displaying the documentation in the website.
2019-03-27 07:44:19 +01:00
46bd14a36c Better api error handling (#790)
* API generation

* Updated code generation

* Updated test
2019-03-26 12:04:44 +01:00
7d1c660f4e Remove url in jenkins job configuration 2019-03-21 11:15:03 -04:00
3c912d626c CI config (#786)
* Updated ci config

* Minor fixes

* Minor fixes

* Added Node v11
2019-03-21 11:02:09 +01:00
49b79922e2 Updated ci config 2019-03-19 14:17:50 +01:00
747a61c7f8 Updated ci jobs 2019-03-19 12:33:43 +01:00
1c3541a740 Updated ci jobs 2019-03-19 11:27:58 +01:00
5c60d98180 Inspect Connection (#784)
Handles `console.log` and `utils.inspect` invocations for a better debugging experience.

`agent` and `ssl` are hidden since they made the logs very hard to read.
The user can still access them with `instance.agent` and `instance.ssl`.
2019-03-19 09:50:36 +01:00
3b41c555ae Feat: Support bundlers (#783)
With this change, we support code bundlers, such as webpack.
Fixes: https://github.com/elastic/elasticsearch-js/issues/781
2019-03-19 07:50:05 +01:00
532ded5d5c Added a note about the new client 2019-03-18 19:01:10 +01:00
c53c798899 feat: add support for querystring in options object (#779)
In very few cases, some API uses the same key for both url and query params, such as the bulk method.
The client is not designed to handle such cases since accepts both url and query keys in the same object, and the url parameter will always take precedence.
This pr fixes this edge case by adding a `querystring` key in the options object.

Fixes: https://github.com/elastic/elasticsearch-js/pull/778

```js
client.bulk({
  index: 'index',
  type: '_doc',
  body: [...]
}, {
  querystring: {
    type: '_doc'
  }
}, console.log)
```
2019-03-15 18:09:44 +01:00
851e839c70 Updated coverage script 2019-03-15 16:58:21 +01:00
d6982d5152 Added codecov badge 2019-03-15 16:58:13 +01:00
c446225f3c Updated ignore files 2019-03-15 16:57:58 +01:00
9f17f820de Added codecov (#777) 2019-03-15 15:55:34 +01:00
5aa8226a4c Updated README 2019-03-14 18:32:47 +01:00
38157d634e Updated pull request template 2019-03-14 14:20:36 +01:00
925b758418 Added stale bot 2019-03-14 12:22:20 +01:00
95acb31dfc Added pull request and issue templates (#776) 2019-03-13 19:12:11 +01:00
c4879203a7 Updated CI setup 2019-03-13 17:57:25 +01:00
e901b89e35 Updated code generation 2019-03-13 16:12:24 +01:00
a90e9e1fe1 Revert d4d7d0bef5 2019-03-13 14:13:02 +01:00
2ca3754d20 API generation 2019-03-13 14:12:38 +01:00
4663738cf4 Merge branch 'next' 2019-03-13 13:35:45 +01:00
6b69e17b21 Clean master 2019-03-13 13:35:34 +01:00
a713e28853 WIP: benchmarks (#745)
* Updated dependencies

* Updated .gitignore

* WIP: macro and micro benchmarks

* Updated benchmark suite

* Use the same suite for both macro and micro benchmarks

* WIP: benchmark report

* Updated benchmark suite

* Updated docker scripts

* Updated benchmark suite

* Updated scripts

* Updated benchmark suite

* Added split2
2019-03-12 16:45:49 +01:00
3396b5d818 Updated docs 2019-03-12 12:04:13 +01:00
dc27cb11ed Updated docs 2019-03-12 10:50:58 +01:00
40023c53a7 Bumped v0.1.0-beta.2 2019-03-12 10:14:00 +01:00
69fd7768f2 Updated dependencies 2019-03-12 10:13:39 +01:00
d4d7d0bef5 Updated code generation 2019-03-11 18:37:33 +01:00
6eb4f874cc Updated docs 2019-03-11 18:37:29 +01:00
5c6c5dea78 API generation 2019-03-11 18:34:39 +01:00
45c31df5c1 Updated docs 2019-03-11 17:15:39 +01:00
ae028b2ae2 Consistency for the win
- The result object contains also the metadata about the request
- The events emits the same object of the API response
- The errors, where possible, exposes the APi response object under the
meta key
2019-03-11 17:13:02 +01:00
c990ed43d4 Updated test 2019-03-11 17:12:53 +01:00
46df19fd7d Updated types 2019-03-11 17:12:31 +01:00
cae38e6b2b License (#773)
- Added license header
- Added license checker
- Fixed tap
2019-03-08 07:47:24 +01:00
4f02fd5509 Bumped v0.1.0-beta.1 2019-03-01 14:56:09 +01:00
f175f83d34 Workaround for keepAlive false 2019-03-01 09:02:31 +01:00
ed3cca0fe6 Platinum integration test (#772)
🎉
2019-03-01 08:42:56 +01:00
36163f4822 Use a safe default for keep alive maxSockets (#770) 2019-02-28 16:08:14 +01:00
945fe1f605 Updated docs 2019-02-28 10:57:59 +01:00
fe3c48e83e Updated test 2019-02-28 10:57:48 +01:00
8398ae2f4b Updated Elastic Cloud config 2019-02-28 10:57:42 +01:00
a56327058b Updated docs 2019-02-21 15:39:15 +01:00
d9b2a969d6 Updated test 2019-02-21 15:39:10 +01:00
7e318cb334 Enable compression for both request and response when using Elastic Cloud 2019-02-21 15:39:01 +01:00
5b856cd4c2 Child client support (#768)
With this pr we introduce the `client.child` API, which returns a new client instance that shares the connection pool with the parent client.
This feature can be handy if you need to have multiple client instances with different configurations, but with a shared connection pool.

Example:

```js
const { Client } = require('@elastic/elasticsearch')
const client = new Client({ node: 'http://localhost:9200' })
const child = client.child({
  headers: { 'x-foo': 'bar' },
  requestTimeout: 1000
})

client.info(console.log)
child.info(console.log)
```

**Open questions:**

* Currently, the event emitter is shared between the parent and the child(ren), is it ok?
* Currently, if you extend the parent client, the child client will have the same extensions, while if the child client adds an extension, the parent client will not be extended. Is it ok?

**Caveats:**

* You can override _any_ option except for the connection pool specific options (`ssl`, `agent`, `pingTimeout`, `Connection`, and `resurrectStrategy`).
* You can't specify a new `Connection` class.
* If you call `close` in any of the parent/child clients, every client will be closed.

_Note: the `nodeFilter` and `nodeSelector` options are now `Transport` options and no longer `ConnectionPool` options._
2019-02-21 12:48:49 +01:00
66e8d61476 Updated test 2019-02-20 12:43:15 +01:00