* saved objects: allow partial update without references
For normal attributes, the update API for saved objects supports partial
updates, where it will only attempt to change those attributes you
specify. References should behave the same way otherwise they will be
replaced entirely if you call update without specifying the original
references.
* expose createRouter, prepare route handler for context introduction.
* fix tests
* update examples in docs
* update tests
* re-genereated docs
* remove registerRouter from http service contract
createRouter registers a router under the hood. that reduces API surface
for consumers
* address comments
* update docs
* add response factory to the interceptors
* adopt x-pack code to the changes
* Add a separate response factory for lifecycles.
Only route handler can respond with 2xx response.
Interceptors may redirect or reject an incoming request.
* re-generate docs
* response.internal --> response.internalError
* use internalError for exceptions in authenticator
* before Security plugin proxied ES error status code. now sets explicitly.
* provide error via message field of error response for BWC
* update docs
* add customError response
* restore integration test and update unit tests
* update docs
* support Hapi error format for BWC
* add a couple of tests
* Move SavedObjectClient files to core/public
* Initial SavedObjectsService in public Core
* Public SavedObjectsClient tests
* Import SimpleSavedObject from src/core/public
* Use types from source files for kibana.d.ts
* Add html raw loader to x-pack/jest
* Cleanup
* Drop case utilities and improve test coverage
* Update types and documentation
* Fix build breaking when importing directly from /server in /public
* Ensure that all option paramaters are picked and renamed
* Fix option mapping and introduce stronger types
* Eslint: allow imports from src/core/*/types
* Add compatibility layer for kfetch vs http.fetch error responses
* Improve documentation
* Expose SavedObjectsMigrationLogger
* Documentation and type tweaks
* Revert type changes from 73e601f and update api docs
* Refactor request into savedObjectFetch + test
* Make legacy SavedObject compatible with http.fetch exceptions
* Fix types and tests
* simple_saved_object import from src/core/server
* server imports from root instead of server/types
* Make SavedObjectsService a class
* Don't pick unkown keys from server response
* Rename SavedObjectsFindResponse to SavedObjectsFindResponsePublic
* Remove err.response from SavedObjects fetch errors
* Revert "Remove err.response from SavedObjects fetch errors"
This reverts commit 61705ca361.
* Don't introduce err.response until we deprecate err.res
* improving naming, add TSDoc
* re-genereate docs
* use response name in migration guide
* Apply suggestions from code review
Co-Authored-By: Josh Dover <me@joshdover.com>
* place docs near the related code
* re-generate docs
* mark code as example to reduce noise in http-service.md
* [ftr/docs] replace leadfoot with webdriver
* [ftr/docs] more details about running tests in Firefox
* [ftr/docs] update references to ftr services
* [ftr/docs] fix links and update description
* [ftr/docs] update services information
* [ftr/docs] fix more links
* small fix
* [ftr/docs] Firefox run example
* revert link changes
* review fix
* review fixes
* add details on how to start x-pack tests
* lost fix for tags description
* Update docs/development/core/development-functional-tests.asciidoc
Co-Authored-By: Spencer <email@spalger.com>
* Update docs/development/core/development-functional-tests.asciidoc
Co-Authored-By: Spencer <email@spalger.com>
* Allow mtask definitions to overwrite default setting maxAttemps
* Leverage scheduledAt from task manager
* Treat maxAttempts like attempts and not retries
* Add support for second intervals
* Min 1 attempt
* Reverse relying on scheduledAt
* Add new startedAt attribute in task manager that keeps track when task started running
* Don't extend runAt when claiming a task
* Remove startedAt from state
* Attempt trying to define custom getBackpressureDelay function
* Pass error object to getBackpressureDelay
* Cleanup processResultForRecurringTask code
* Add backpressure to timed out tasks
* Change default timeout backpressure calculation
* getBackpressureDelay to return seconds instead of milliseconds
* Add comment for task store query
* Compress query
* Revert alert / actions specific code
* Add more interval tests
* Fix failing jest tests
* Fix test
* Add more unit tests
* Fix integration tests
* Fix sorting of tasks to process
* WIP
* Always provide error when getBackpressureDelay is called
* Rename getBackpressureDelay to getRetryDelay
* retryAt to be calculated from timeout time by default
* Remove invalid test
* Add unit tests
* Consider timeout before scheduling a retryAt
* Remove backpressure terminology
* Remove support for 0 based intervals and timeouts
* Apply PR feedback
* Fix last place using Math.abs
* Modify migrations to allow running a script when converting an index to an alias
* Convert task manager to use saved objects
* Fix broken test
* Fix broken tests pt1
* Remove index from task manager config schema
* Accept platform changes
* PR feedback
* Apply PR feedback
* Apply PR feedback pt2
* Apply PR feedback pt3
* Apply PR feedback pt4
* Fix feedback pt3
* Rename RawSavedObjectDoc to SavedObjectsRawDoc
* [ts] upgrade to 3.5.3 (#40228)
* [ts] upgrade to 3.5.2
* [ts] run from cwd so that relative paths are correct
* move eslint-disable-line comment into jsx attribute
* autofix eslint violations
* avoid generic type, it's not necessary and problematic
* make elasticsearch.cluster optional, many instances don't have them
* remove invalid prop
* expand AllowUnknownProperties to cleanly handle arrays
* esfilter values can sometimes be an array of strings
* allow exception objects to have unknown properties
* define accumulator as a boolean
* fix return type
* return a 404 if beat isn't found after update
* use Object.values for better types
* define return type of get() call
* define value type for Set
* define return value of get()
* define State property type
* use less get(), so ts can infer types
* define Set item type
* map state type
* make default_operator optional, since it's not always defined
* remove seemingly unused prop
* define return type of get() fn
* define inner type for state
* don't define base types are objects with index signatues
* regenerate public api docs
* make indices privileges optional too
* remove unnecessary index-signature from Exception interface
* use variadic _arg instead
* [core/plugin] use Record<string, any> rather than {}
* replace a couple more instances of {}
* revert some unnecessary changes
* remove unused types
* [reporting] output, payload, and meta are required properties
* bump to latest patch version
# Conflicts:
# x-pack/legacy/plugins/canvas/server/usage/custom_element_collector.ts
# x-pack/legacy/plugins/canvas/server/usage/workpad_collector.ts
* define inner type for Set
* default `config.get()` to any instead of unknown
* Mocks for CoreStart, CoreSetup and PluginInitializerContext
* Public CoreStart, CoreSetup mocks
* Update api signature/docs
* Convert embaddable_api tests to new core mocks
* CR Feedback
* Introduce ui_new_platform.test.mocks and refactor embedabble tests
* Hack to get TS warnings for Core mocks
* Core mocks types cleanup & hack to get TS warnings for Server Core mocks
* Use __mocks__ new_platform
* Remove accidently commited auto-mock
* Introduce MockedKeys type for Core mocks
* Better typing/docs for UiSettings
* Revert "Use __mocks__ new_platform"
This reverts commit 2d666facc8.
* Add missing mock to test
* Cleanup UiSettings types
* crude test updates
* remove custom server typedef
* allow spaces to aquire security plugin after init
* split CoreSetup into CoreSetup and PluginsSetup
* move interfaces to new plugin
* init interceptors in legacy plugin
* fix import
* add placeholder kibana.json
* use NP Elasticsearch service instead of legacy ES Plugin
* cleanup imports
* don't destructure the es client
* introduce request facade
* document reason for getSecurity
* prefer relative imports from src/core
* fix typo in filename: inteceptors --> interceptors
* fix imports; remove stray ts-ignore
* improve typings for spaces client
* rename InterfaceExcept --> Omit
* don't use legacy config in NP
* additional comment
* shim NP config service
* fix merge from master
* revert relative imports into src/core and src/legacy
* shim capabilities modifier into new platform
* removing placeholder kibana.json
* fix prettier problem
* temporary: patch NP 'setUrl'
* migrate onRequest interceptor to NP, without tests
* fix ts error
* testing and deps cleanup for onRequestInterceptor
* replace spaces's usages of request.getBasePath with http.getBasePathFor
* add explicit timeouts for jest interceptor tests
* attempt to fix imports
* use NP logging instead of faked implementation
* revert stray yarn.lock change
* attempt to stablize and fix tests
* update jest config to include src/core/server/mocks
* fix plugin config typings
* add service tests
* fix merge
* allow spaces service to also work with legacy requests
* update interfaces to confirm to new internal/external API convention
* re-enable some post auth interceptor tests
* add explicit timeouts for tests
* prefer modifyUrl instead of manual url modification
* update logger shim to conform to PluginInitializerContext
* remove spaces ConfigClass
* don't weaken type declaration for scoped cluster client calls
* remove legacy server from SpacesCoreSetup
* remove spaces service cache
* remove legacy server as an interceptor dependency
* use modifyUrl on the raw request too
* remove unused import
* cleanup typings
* replace onRequest interceptor with new onPreAuth interceptor
* fix onPostAuth tests
* temporarily copy modifyUrl into spaces plugin
* fix mock export
* fix merge from master
* spaces scopedClient always uses updated ES client and config
* improve typings for usage collector
* rename isLegacyRequest -> isFakeRequest
* use updated NP base path API
* remove commented code
* only expose scoped spaces client
* use OptionalPlugin instead of getSecurity
* update imports of Saved Objects Service to use new src/core/server location
* update core docs
* New and Legacy platforms share http server instance.
Required to use a common security interceptor for incoming http requests
* generate docs
* remove excessive contract method
* add test for New platform compatibility
* address comments part #1
* log server running only for http server
* fix test. mutate hapi request headers for BWC with legacy
* return 503 on start
* address @eli comments
* address @joshdover comments