Also see Breaking changes in 8.0.
Breaking changes
- Aggregations
 - 
- Percentiles aggregation: disallow specifying same percentile values twice #52257 (issue: #51871)
 - Remove Adjacency_matrix setting #46327 (issues: #46257, #46324)
 - 
Remove 
MovingAveragepipeline aggregation #39328 - 
Remove deprecated 
_timeand_termsort orders #39450 - Remove deprecated date histo interval #75000
 
 - Allocation
 - Analysis
 - Authentication
 - CCR
 - Cluster Coordination
 - Distributed
 - Engine
 - Features/CAT APIs
 - Features/Features
 - Features/ILM+SLM
 - Features/Indices APIs
 - 
- Change prefer_v2_templates parameter to default to true #55489 (issues: #53101, #55411)
 - 
Remove deprecated 
_upgradeAPI #64732 (issue: #21337) - Remove local parameter for get field mapping request #55100 (issue: #55099)
 - 
Remove 
include_type_nameparameter from REST layer #48632 (issue: #41059) - 
Remove the 
templatefield in index templates #49460 (issue: #21009) 
 - Features/Watcher
 - 
- Move watcher history to data stream #64252
 
 - Geo
 - Infra/Circuit Breakers
 - 
- Fixed synchronizing inflight breaker with internal variable #40878
 
 - Infra/Core
 - 
- Fail when using multiple data paths #72184 (issue: #71205)
 - Limit processors by available processors #44894 (issue: #44889)
 - 
Remove 
nodes/0folder prefix from data path #42489 - 
Remove 
bootstrap.system_call_filtersetting #72848 - 
Remove 
fixed_auto_queue_sizethreadpool type #52280 - 
Remove 
node.max_local_storage_nodes#42428 (issue: #42426) - Remove camel case named formats #60044
 - Remove legacy role settings #71163 (issues: #54998, #66409, #71143)
 - 
Remove 
processorssetting #45905 (issue: #45855) - 
Remove the 
localparameter of/_cat/nodes#50594 (issues: #50088, #50499) - Remove the listener thread pool #53314 (issue: #53049)
 - Remove the node local storage setting #54381 (issue: #54374)
 - 
Remove the 
pidfilesetting #45940 (issue: #45938) - 
Removes 
week_yeardate format #63384 (issue: #60707) 
 - Infra/Logging
 - Infra/Plugins
 - Infra/REST API
 - Infra/Resiliency
 - Infra/Scripting
 - Infra/Settings
 - Machine Learning
 - Mapping
 - Network
 - Packaging
 - Recovery
 - Reindex
 - Rollup
 - Search
 - 
- Decouple shard allocation awareness from search and get requests #45735 (issue: #43453)
 - Fix range query on date fields for number inputs #63692 (issue: #63680)
 - Make fuzziness reject illegal values earlier #33511
 - Make remote cluster resolution stricter #40419 (issue: #37863)
 - Parse empty first line in msearch request body as action metadata #41011 (issue: #39841)
 - 
Remove 
CommonTermsQueryandcutoff_frequencyparam #42654 (issue: #37096) - 
Remove 
typequery #47207 (issue: #41059) - 
Remove 
use_field_mappingformat option for docvalue fields #55622 - 
Remove deprecated 
SimpleQueryStringBuilderparameters #57200 - 
Remove deprecated 
search.remotesettings #42381 (issues: #33413, #38556) - 
Remove deprecated sort options: 
nested_pathandnested_filter#42809 (issue: #27098) - Remove deprecated vector functions #48725 (issue: #48604)
 - 
Remove support for 
_typein searches #68564 (issues: #41059, #68311) - Remove support for sparse vectors #48781 (issue: #48368)
 - 
Remove the object format for 
indices_boost#55078 - 
Removes type from 
TermVectorsAPIs #42198 (issue: #41059) - Removes typed endpoint from search and related APIs #41640
 - Set max allowed size for stored async response #74455 (issue: #67594)
 - 
indices.query.bool.max_clause_countnow limits all query clauses #75297 
 - Security
 - 
- Remove obsolete security settings #40496
 - Remove support of creating CA on the fly when generating certificates #65590 (issue: #61884)
 - 
Remove the 
idfield from theInvalidateApiKeyAPI #66671 (issue: #66317) - Remove the migrate tool #42174
 - Compress audit logs #64472 (issue: #63843)
 - Remove insecure settings #46147 (issue: #45947)
 
 - Snapshot/Restore
 - TLS
 
Breaking Java changes
- Authentication
 - CCR
 - 
- 
Remove the 
CcrClient#42816 
 - 
Remove the 
 - CRUD
 - Client
 - 
- 
Remove 
SecurityClientfrom x-pack #42471 
 - 
Remove 
 - Features/ILM+SLM
 - Features/Monitoring
 - 
- 
Remove 
MonitoringClientfrom x-pack #42770 
 - 
Remove 
 - Features/Watcher
 - 
- 
Remove 
WatcherClientfrom x-pack #42815 
 - 
Remove 
 - Infra/Core
 - Infra/REST API
 - 
- 
Copy HTTP headers to 
ThreadContextstrictly #45945 
 - 
Copy HTTP headers to 
 - Machine Learning
 - 
- 
Remove the 
MachineLearningClient#43108 
 - 
Remove the 
 - Mapping
 - 
- 
Remove type filter from 
GetMappingsAPI #47364 (issue: #41059) - 
Remove 
typeparameter fromPutMappingRequest.buildFromSimplifiedDef()#50844 (issue: #41059) - 
Remove unused parameter from 
MetadataFieldMapper.TypeParser#getDefault()#51219 - 
Remove 
typeparameter fromCIR.mapping(type, object...)#50739 (issue: #41059) 
 - 
Remove type filter from 
 - Search
 - 
- 
Removes types from 
SearchRequestandQueryShardContext#42112 
 - 
Removes types from 
 - Snapshot/Restore
 
Enhancements
- Analysis
 - 
- 
Move 
reload_analyzersendpoint to x-pack #43559 
 - 
Move 
 - Authentication
 - EQL
 - Engine
 - Features/CAT APIs
 - Features/Stats
 - Features/Watcher
 - 
- Remove Watcher history clean up from monitoring #67154
 
 - Infra/Core
 - Infra/Logging
 - Infra/REST API
 - 
- Allow for field declaration for future compatible versions #69774 (issue: #51816)
 - Introduce stability description to the REST API specification #38413
 - Parsing: Validate that fields are not registered twice #70243
 - Support response content-type with versioned media type #65500 (issue: #51816)
 - [REST API Compatibility] Typed endpoints for index and get APIs #69131 (issue: #54160)
 - [REST API Compatibility] Typed endpoints for put and get mapping and get field mappings #71721 (issues: #51816, #54160)
 - 
[REST API Compatibility] Allow 
copy_settingsflag for resize operations #75184 (issues: #38514, #51816) - [REST API Compatibility] Allow for type in geo shape query #74553 (issues: #51816, #54160)
 - 
[REST API Compatibility] Always return 
adjust_pure_negativevalue #75182 (issues: #49543, #51816) - [REST API Compatibility] Clean up x-pack/plugin rest compat tests #74701 (issue: #51816)
 - 
[REST API Compatibility] Do not return 
_docfor empty mappings in template #75448 (issues: #51816, #54160, #70966, #74544) - 
[REST API Compatibility] Dummy REST action for 
indices.upgradeAPI #75136 (issue: #51816) - [REST API Compatibility] REST Terms vector typed response #73117
 - 
[REST API Compatibility] Rename 
BulkItemResponse.Failuretype field #74937 (issue: #51816) - [REST API Compatibility] Type metadata for docs used in simulate request #74222 (issues: #51816, #54160)
 - 
[REST API Compatibility] Typed 
TermLookups#74544 (issues: #46943, #51816, #54160) - [REST API Compatibility] Typed and x-pack graph explore API #74185 (issues: #46935, #51816, #54160)
 - [REST API Compatibility] Typed endpoint for bulk API #73571 (issue: #51816)
 - [REST API Compatibility] Typed endpoint for multi-get API #73878 (issue: #51816)
 - 
[REST API Compatibility] Typed endpoints for 
RestUpdateActionandRestDeleteAction#73115 (issues: #51816, #54160) - 
[REST API Compatibility] Typed endpoints for 
get_sourceAPI #73957 (issues: #46587, #46931, #51816) - [REST API Compatibility] Typed endpoints for explain API #73901 (issue: #51816)
 - 
[REST API Compatibility] Typed endpoints for search 
_countAPI #73958 (issues: #42112, #51816) - [REST API Compatibility] Typed indexing stats #74181 (issues: #47203, #51816, #54160)
 - [REST API Compatibility] Types for percolate query API #74698 (issues: #46985, #51816, #54160, #74689)
 - [REST API Compatibility] Validate query typed API #74171 (issues: #46927, #51816, #54160)
 - [REST API Compatibility] Voting config exclusion exception message #75406 (issues: #51816, #55291)
 - 
[REST API Compatibility] 
MoreLikeThisQuerywith types #75123 (issues: #42198, #51816, #54160) - [REST API Compatibility] Update and delete by query using size field #69606
 - [REST API Compatibility] Indicies boost in object format #74422 (issues: #51816, #55078)
 - [REST API Compatibility] Typed endpoints for search and related endpoints #72155 (issues: #51816, #54160)
 - 
[REST API Compatibility] Allow to use size 
-1#75342 (issues: #51816, #69548, #70209) - 
[REST API Compatibility] Ignore 
use_field_mappingoption for docvalue #74435 (issue: #55622) - 
[REST API Compatibility] 
_timeand_termsort orders #74919 (issues: #39450, #51816) - 
[REST API Compatability] 
templateparameter and field on PUT index template #71238 (issues: #49460, #51816, #68905) - [REST API Compatibility] Make query registration easier #75722 (issue: #51816)
 - [REST API Compatibility] Typed query #75453 (issues: #47207, #51816, #54160)
 - [REST API Compatibility] Deprecate the use of synced flush #75372 (issues: #50882, #51816)
 - 
[REST API Compatibility] Licence 
accept_enterpriseand response changes #75479 (issues: #50067, #50735, #51816, #58217) 
 - Infra/Scripting
 - Infra/Settings
 - License
 - Machine Learning
 - 
- The Windows build platform for the machine learning C++ code now uses Visual Studio 2019 #1352
 - The macOS build platform for the machine learning C++ code is now Mojave running Xcode 11.3.1, or Ubuntu 20.04 running clang 8 for cross compilation #1429
 - The Linux build platform for the machine learning C++ code is now CentOS 7 running gcc 9.3 #1170
 - Add a new application for evaluating PyTorch models. The app depends on LibTorch - the C++ front end to PyTorch - and performs inference on models stored in the TorchScript format #1902
 
 - Mapping
 - 
- Sparse vector to throw exception consistently #62646
 
 - Packaging
 - Recovery
 - Reindex
 - Rollup
 - SQL
 - 
- Add text formatting support for multivalue #68606
 - Add xDBC and CLI support. QA CSV specs #68966
 - Export array values through result sets #69512
 - Improve alias resolution in sub-queries #67216 (issue: #56713)
 - Improve the optimization of null conditionals #71192
 - 
Push 
WHEREclause inside subqueries #71362 - 
Use Java 
Stringmethods forLTRIM/RTRIM#57594 - QL: Make canonical form take into account children #71266
 - QL: Polish optimizer expression rule declaration #71396
 - QL: Propagate nullability constraints across conjunctions #71187 (issue: #70683)
 
 - Search
 - Security
 - 
- Add a tool for creating enrollment tokens #74890
 - Add the Enroll Kibana API #72207
 - Change default hashing algorithm for FIPS 140 #55544
 - Create enrollment token #73573 (issues: #71438, #72129)
 - Enroll node API #72129
 - Not encoding the Api Key in Enrollment token #74510 (issue: #73573)
 - Configure security for the initial node CLI #74868
 
 - Snapshot/Restore
 - TLS
 
Bug fixes
- Aggregations
 - 
- 
Fix BWC issues for 
x_pack/usage#55181 (issue: #54847) - 
Fix 
DoubleBoundsnull serialization #59475 - 
Fix 
TopHitsAggregationBuilderadding duplicate_scoresort clauses #42179 (issue: #42154) - 
Fix 
t_testusage stats #54753 (issue: #54744) - 
Throw exception if legacy interval cannot be parsed in 
DateIntervalWrapper#41972 (issue: #41970) 
 - 
Fix BWC issues for 
 - CCR
 - Cluster Coordination
 - Distributed
 - Features/CAT APIs
 - Features/Java High Level REST Client
 - Geo
 - Infra/Core
 - Infra/Logging
 - Infra/REST API
 - Infra/Scripting
 - Machine Learning
 - 
- 
Handle null value of 
FieldCapabilitiesResponse#64327 
 - 
Handle null value of 
 - Mapping
 - Packaging
 - SQL
 - Search
 - 
- 
Check for negative 
fromvalues in search request body #54953 (issue: #54897) - 
Fix 
VectorsFeatureSetUsageserialization in BWC mode #55399 (issue: #55378) - 
Handle total hits equal to 
track_total_hits#37907 (issue: #37897) - Improve error msg for CCS request on node without remote cluster role #60351 (issue: #59683)
 
 - 
Check for negative 
 - Snapshot/Restore
 
Upgrades
- Lucene
 - 
- Upgrade to Lucene 8.9.0 #74729