---
title: "AG Grid Changelog"
description: "Every completed AG Grid change by release, with all breaking changes and deprecations listed across releases."
---

# AG Grid Changelog

Completed AG Grid changes, newest release first. The Breaking Changes and Deprecations sections collect those items across every release; All Changes lists every entry.

## Breaking Changes

Breaking changes across all releases, newest first.

### 36.1.0

- **AG-17561** - [Core] Make content-visibility:auto opt-in and work around buggy browser implementations: This ticket deprecates suppressContentVisibilityAuto. The default of suppressContentVisibilityAuto was `true` Anyone setting `suppressContentVisibilityAuto:false` should set `enableContentVisibilityAuto: true` instead.

### 36.0.0

- **AG-17349** - [Angular] Update Min Version to v20: Angular 18/19 support no longer available due to reaching their end of life. Minimum Angular version is now v20. Minimum TypeScript version is now 5.8.3 across all frameworks and JS.
- **AG-17039** - [Aggregation] Reorder aggregation functions in list to reflect usage frequency: Aggregation functions are now displayed in usage-frequency order (Sum, Average, Max, Min, Count, First, Last) instead of alphabetically.
- **AG-16834** - [Core] Render grid rows & columns in a single scrolling container (instead of separate containers for pinned columns/rows): Changed the DOM structure of the grid replacing the 9+ containers with a single container. This will affect anyone who’s built themes against the separate pinned column/pinned row containers. Potential changes in sticky row containers, breaking themes referencing that. Pre-recorded Tests will fail depending on how they’ve written them Any references to CSS selectors of the old pinned contianers will fail Any assumptions related to DOM structure of pinned containers will fail
- **AG-16296** - [Column Filters] Return Date-Only Values in Filter Model for cellDataType = 'date': When cellDatatType='date' the Filter Model returns date-only values
- **AG-15808** - [Overlay] Update the DOM structure so the overlay is rendered as a sibling of the grid rather than its child to be fully compliant with ARIA specs: DOM element for overlay is now rendered as a sibling of the grid viewport DOM element, not as its child anymore.
- **AG-14740** - [Pagination Panel] [Status Bar] Improve Responsive Behaviour in Narrow Layouts: The Pagination Panel and Status Bar now use horizontal scroll overflow when space is constrained.
- **AG-14628** - [Tooltip] Inherit colDef Tooltips in Group Columns and Group Headers: Grouped rows now use tooltip properties inherited from the underlying grouped column colDef, including tooltipField, tooltipValueGetter, and tooltipComponent. autoGroupColumnDef tooltip properties now apply to leaf rows only.
- **AG-5601** - [Column State] Allow saving/restoring the order of aggregated value columns as part of column state when pivoting by a column: The value column order in the columns tool panel is now saved and reloaded as part of state. Pivot result value column header order remains the same, since that's also saved and reloaded from state.

### 35.0.0

- **AG-16383** - [Row Dragging] Allow row drag icon to show "Not available" icon when hovering on it after sorting: When using managed row dragging and the user is sorting, filtering or pivoting, the row drag handles are now shown as disabled instead of hidden.
- **AG-16280** - [Integrated] Refine Handling of Row-Grouped Columns in the Charting API: Previously, Integrated Charts automatically used the group column as the chart category when the grid was row-grouped and values were added to leaf nodes. This implicit behaviour has been removed. A new chart option `useGroupColumnAsCategory` must now be set to true to display grouped categories.
- **AG-15995** - [Typing] Remove cellDataType from columnTypes type as it's not supported: columnTypes.cellDataType is now removed from the TypeScript definition as it's never been supported.
- **AG-15015** - [Frameworks] Remove support for Angular 17 due to reaching its end of life: Angular 17 support no longer available due to reaching its end of life. Minimum TypeScript version is now 5.4.5
- **AG-14772** - TypeScript definition for autoGroupColumnDef includes colId which actually cannot be set: autoGroupColumnDef.colId is now removed from the TypeScript definition as its value has always been ignored. Use the autoGroupColumnDef.context to store any auto-group column specific data.
- **AG-10672** - [Excel Export] Allow displaying an overlay while the CSV/Excel export is in progress: Exporting to CSV or Excel via the context menu or API call shows an overlay during the export duration. To revert to the previous behavior where the export overlay isn't shown, set gridOptions.suppressOverlays=['exporting']
- **AG-9995** - [Column Filters] Add a new overlay to display message "No matching rows" when no results from filtering: When a filter is applied and there are no matching rows to show, the grid shows an overlay to indicate this. To revert to the previous behavior where the no matching rows overlay isn't shown, set gridOptions.suppressOverlays=['noMatchingRows']
- **AG-6477** - [Column Filter] Allow in-range filters to ensure that the "from" value is smaller than the "to" value: In the Number and Date/DateTime filters when providing a range values using the Between filter option, entering values which result in an empty interval displays a validation error. When this validation error occurs: - The filter does not automatically run. - The invalid input is visually highlighted with a red border and accessible error messaging. - If filter buttons are enabled, the Apply button is disabled and the filter does not get applied. This prevents the application of invalid filter conditions and clarifies to the end-user the entered condition cannot produce any matches in principle.

### 33.0.0

- **AG-13600** - Update minimum supported Vue version to 3.5: Minimum supported Vue version is now 3.5. See the <a href="https://www.ag-grid.com/vue-data-grid/compatibility/#ag-grid--vue-compatibility-chart">Vue compatibility table</a>
- **AG-13374** - [API] Add type for default column, context and chart menu items: The types for the grid options `getMainMenuItems` and `getContextMenuItems`, as well as the column definition properties `mainMenuItems` and `contextMenuItems`, have changed. Instead of `string` values in the arrays (and in `defaultItems` in the callback`), this is now typed to `DefaultMenuItem` which only allows the available values. The type for the grid option `chartMenuItems` has changed. Instead of `string` values in the array (and in `defaultItems` in the callback`), this is now typed to `ChartDefaultMenuItem` which only allows the available values.
- **AG-13250** - [Theming] Allow providing separate icons for cases where icons are shared across multiple UI elements of the grid: Setting any of the custom icons below will have the provided custom icon only apply in the 1 use case its name indicates instead of all cases as before. In order to have the custom icon apply to the remaining cases please set the additional icon keys pointing to the same custom icon. See list of icons changed: smallDown (deprecated) - advancedFilterBuilderSelect for Advanced Filter Builder dropdown, selectOpen for Select cell editor and dropdowns (e.g. Integrated Charts menu), richSelectOpen for Rich Select cell editor. smallLeft (deprecated) - panelDelimiterRtl for Row Group Panel / Pivot Panel, subMenuOpenRtl for sub-menus. smallRight (deprecated) - panelDelimiter for Row Group Panel / Pivot Panel, subMenuOpen for sub-menus. previous - previous for pagination, chartsThemePrevious for Integrated Charts theme picker. next - next for pagination, chartsThemeNext for Integrated Charts theme picker. cancel - cancel for column drag pills, richSelectRemove for Rich Select cell editor pills. menu - menu for button to launch legacy column menu, legacyMenu for legacy column menu tab header. menuAlt - menuAlt for new column menu, chartsMenu for Integrated Charts menu. columns - columns for the column menu/column chooser, columnsToolPanel for the Columns Tool Panel tab icon. filter - filter for buttons that open the filter (header/menu), filtersToolPanel for the Filters Tool Panel tab icon, filterActive for displaying the filter is active (header with legacy column menu, Filters Tool Panel item), filterTab for the filter tab of the legacy tabbed column menu. save - save for export menu, chartsDownload for Integrated Charts download. columnSelectClosed - columnSelectClosed for the Columns Tool Panel/Column Chooser/column tab in legacy tabbed column menu, accordionClosed for accordions (Filters Tool Panel, Integrated Charts tool panels). columnSelectOpen - columnSelectOpen for the Columns Tool Panel/Column Chooser/column tab in legacy tabbed column menu, accordionOpen for accordions (Filters Tool Panel, Integrated Charts tool panels). columnSelectIndeterminate - columnSelectIndeterminate for the Columns Tool Panel/Column Chooser/column tab in legacy tabbed column menu, accordionIndeterminate for accordions (Filters Tool Panel, Integrated Charts tool panels).See comments
- **AG-13170** - [API] Update RowDragEvent interface vDirection property type: RowDragEvent interface vDirection property is now typed as 'up' | ' down' | null
- **AG-13128** - [v33] Angular Minimum Version to v17: Angular Minimum version is now 17. Please upgrade to Angular 17 to use this AG Grid version.
- **AG-13101** - [Selection] Rename the grid state colId ag-Grid-ControlsColumn to ag-Grid-SelectionColumn: Grid state ag-Grid-ControlsColumn is now named ag-Grid-SelectionColumn
- **AG-13070** - Setup Integrated Support via external Charts Import: ag-grid-enterprise no longer includes ag-charts-community as a dependency. Also the package ag-grid-charts-enterprise is no longer published. For Integrated Charts and Sparklines, the application must now explicitly included either ag-charts-community / ag-charts-enterprise in its package.json and register the module AgChartsCommunityModule / AgChartsEnterpriseModule as follows. The GridChartsModule has been replaced by the IntegratedChartsModule ``` import { AgChartsEnterpriseModule } from 'ag-charts-enterprise'; import { ModuleRegistry } from 'ag-grid-community'; import { IntegratedChartsModule } from 'ag-grid-enterprise'; ModuleRegistry.registerModules([ IntegratedChartsModule.with(AgChartsEnterpriseModule) // sparklines SparklinesModule.with(AgChartsEnterpriseModule) ]); ```
- **AG-13027** - [Row Selection][API] Merge 6 row (de)selection-related API methods into two parameterized methods - selectAll, selectAllFiltered, selectAllOnCurrentPage, deselectAll, deselectAllFiltered, deselectAllOnCurrentPage: First argument of `selectAll` and `deselectAll` grid API methods is now the selection mode, the event source is now the second argument. Both are optional.
- **AG-12994** - [SSRM] Remove deprecated SSRM mode 'fullStore'/'suppressServerSideInfiniteScroll'/'suppressInfiniteScroll': Server-side Row Model full store (activated by suppressServerSideInfiniteScroll property) now removed. Please use the standard server-side row model functionality as documented. suppressServerSideInfiniteScroll - removed without replacement Interface getServerSideGroupLevelParams - suppressInfiniteScroll property removed without replacement
- **AG-12847** - [Bundle Size] Modularise the grid core module - create separate modules containing feature-specific code: `api.getRowDropZoneParams()` can now return `undefined` if the `RowDragModule` is not registered. Floating filters provided via the `colDef.filter` values `text`, `number`, `date`, `set`, `multi` and `group` no longer work. Use the values `agTextColumnFilter`, `agNumberColumnFilter`, `agDateColumnFilter`, `agSetColumnFilter`, `agMultiColumnFilter` and `agGroupColumnFilter` instead. Column state properties in the column definition are no longer parsed to number/boolean. Provide the correct types instead of strings.
- **AG-12701** - Column flex treats values 0 and less than 1 incorrectly according to CSS flexbox specification: The `flex` coldef property now follows the CSS flexbox spec more closely, resulting in two breaking changes: 1. `flex: 0` will now result in a minimum width column (previously it was treated the same as `undefined` and disabled flexing). If you are using `0` to disable flex, use `undefined` instead. 2. `flex: 0.5` will now result in the column filling at most half of the available space (previously flex values greater than 0 and less than 1 were not treated specially and would fill all available space). If you want to always fill the available space, ensure that all flex values are 1 or greater.
- **AG-12651** - [Column Menu] Allow getMainMenuItems to be called when right-clicking group column header cells, pivot groups column cells and empty header space: The `column` property is now optional in the callback to get column menu items (in the grid option `getMainMenuItems` or `colDef.mainMenuItems`). `column` will be `null` when a column group header or empty column space is right-click on. A new property `columnGroup` will be provided when a column group header is right-clicked on.
- **AG-12287** - Remove AG Grid global browser stubbing in server side environments: AG Grid no longer patches global properties that are not present in a Server environment, i.e HTMLElement and others. If possible you should avoid rendering AG Grid on the server as this is not supported.
- **AG-12029** - [Integrated] Doc update to reflect new chart tool panel config: `navigator` is removed from `ChartFormatPanelGroup`. Navigator setting is now part of the Integrated Charts Advanced Settings.
- **AG-11375** - [API] Remove null return type from grid API methods tabToNextCell and tabToNextHeaderCell: null return type removed from tabToNextCell and tabToNextHeaderCell. Return false instead.
- **AG-10811** - [Theming] Make ThemingAPI the default theming method for the grid: Instead of setting a theme class (class="ag-theme-quartz") on the parent element of the grid, applications using CSS file-based themes must either pass a theme object to the theme grid option, or the string "legacy" to keep using class name based themes.

### 32.1.0

- **AG-12173** - [CodeMods] Allow processing the .gitignore file: Breaking change for codemods only - files specified in .gitignore will NOT be processed anymore when running the command without a list of files to process (all files in the directory)

### 32.0.0

- **AG-11820** - [React] Enable reactiveCustomComponents mode by default for custom components: `reactiveCustomComponents` now defaults to `true`. If custom components have been declared imperatively, they should be migrated as the imperative behaviour was deprecated in `v31.1`. See the migration guide here: https://ag-grid.com/react-data-grid/upgrading-to-ag-grid-31-1/#migrating-custom-components-to-use-reactivecustomcomponents-option.
- **AG-11501** - Respond to changes in CSS variable values after creation of grid: The grid now reads the CSS variables `--ag-row-height`, `--ag-header-height` and `--ag-virtual-list-item-height` to establish the heights of these items. If any customers are bypassing the variables and setting the heights directly on a CSS class name, the grid will not be correctly sized. ``` /* Worked in v31.x to change the default Quartz row height: */ .ag-theme-quartz .ag-row { height: 50px; } /* In v32, the appropriate variable must be used: */ .ag-theme-quartz { --ag-row-height: 50px; } ```
- **AG-11494** - [Frameworks] Remove Vue 2 support: Vue 2 is no longer supported. The last version to support Vue 2 is v31.3.2.
- **AG-11444** - [SSRM] Make skeleton loading renderers show different width values: Skeleton loaders of different width are shown across rows.
- **AG-11440** - [Interfaces] Setup column interfaces to only expose public methods: `Column`, `ColumnGroup` and `ProvidedColumnGroup` are now interfaces instead of classes. Some public methods that were part of the internal grid API were previously exposed on the classes, but are not exposed on the interfaces. The `IProvidedColumn` interface has been removed in favour of `Column | ProvidedColumnGroup`. The `IHeaderColumn` interfaces has been removed in favour of `Column | ColumnGroup`. If previously using `instanceof` to differentiate, it is now possible to check the `isColumn` property, which can be used as a type differentiator.
- **AG-11420** - [API] Remove Deprecated Method / Properties for v32: The Grid API methods listed below have been removed. Please use Grid API methods setGridOption and updateGridOptions to set properties instead. setPivotMode setPinnedTopRowData setPinnedBottomRowData setPopupParent setSuppressModelUpdateAfterUpdateTransaction setDataTypeDefinitions setPagination paginationSetPageSize setSideBar setSuppressClipboardPaste setGroupRemoveSingleChildren setGroupRemoveLowestSingleChildren setGroupDisplayType setGroupIncludeFooter setGroupIncludeTotalFooter setRowClass setDeltaSort setSuppressRowDrag setSuppressMoveWhenRowDragging setSuppressRowClickSelection setEnableAdvancedFilter setIncludeHiddenColumnsInAdvancedFilter setAdvancedFilterParent setAdvancedFilterBuilderParams setQuickFilter setExcludeHiddenColumnsFromQuickFilter setIncludeHiddenColumnsInQuickFilter setQuickFilterParser setQuickFilterMatcher setAlwaysShowHorizontalScroll setAlwaysShowVerticalScroll setFunctionsReadOnly setColumnDefs setAutoGroupColumnDef setDefaultColDef setColumnTypes setTreeData setServerSideDatasource setCacheBlockSize setDatasource setViewportDatasource setRowData setEnableCellTextSelection setHeaderHeight setDomLayout setFillHandleDirection setGroupHeaderHeight setFloatingFiltersHeight setPivotHeaderHeight setPivotGroupHeaderHeight setAnimateRows setIsExternalFilterPresent setDoesExternalFilterPass setNavigateToNextCell setTabToNextCell setTabToNextHeader setNavigateToNextHeader setRowGroupPanelShow setGetGroupRowAgg setGetBusinessKeyForNode setGetChildCount setProcessRowPostCreate setGetRowId setGetRowClass setIsFullWidthRow setIsRowSelectable setIsRowMaster setPostSortRows setGetDocument setGetContextMenuItems setGetMainMenuItems setProcessCellForClipboard setSendToClipboard setProcessCellFromClipboard setProcessPivotResultColDef setProcessPivotResultColGroupDef setPostProcessPopup setInitialGroupOrderComparator setGetChartToolbarItems setPaginationNumberFormatter setGetServerSideGroupLevelParams setIsServerSideGroupOpenByDefault setIsApplyServerSideTransaction setIsServerSideGroup setGetServerSideGroupKey setGetRowStyle setGetRowHeight gridOptions suppressParentsInRowNode&#xA0;removed without replacement. enterMovesDown removed, use enterNavigatesVertically&#xA0;instead. enterMovesDownAfterEdit&#xA0;removed, use enterNavigatesVerticallyAfterEdit instead. excludeHiddenColumnsFromQuickFilter removed, use includeHiddenColumnsInQuickFilter instead. suppressAggAtRootLevel&#xA0;removed, use alwaysAggregateAtRootLevel instead. serverSideFilterAllLevels&#xA0;removed, use serverSideOnlyRefreshFilteredGroups instead. enableChartToolPanelsButton&#xA0;removed, use suppressChartToolPanelsButton instead. functionsPassive removed without replacement. onColumnRowGroupChangeRequest removed without replacement. onColumnPivotChangeRequest removed without replacement. onColumnValueChangeRequest removed without replacement. onColumnAggFuncChangeRequest removed without replacement. Interfaces ChangeDetectionStategyType removed without replacement. ICellRendererParams removed, used node.rowIndex instead.
- **AG-11419** - [API] Remove ColumnApi From the Grid: Column API is now removed. API methods previously available via Column API are now available in Grid API instead.
- **AG-11396** - [Frameworks] Upgrade Dependencies and Angular compatibility: The minimum Angular version is now Angular 16.
- **AG-11386** - [API] Remove cell position "floating" fallback from tabToNextCell: The `floating` property has been removed from `CellFocusedEvent`. Use `rowPinned` instead.
- **AG-11261** - [Column Menu] Make new column menu layout default: The new format column menu is now enabled by default. The legacy tabbed column menu can be enabled via `columnMenu = 'legacy'`.
- **AG-10307** - [Cell Rendering] Remove auto-params-refresh from Vue 3 wrapper: auto-params-refresh / autoParamsRefresh removed
- **AG-10173** - [Localization] Use upper case for c in autosizeThiscolumn in the sample localisation file: Localisation key `autosizeThiscolumn` has been renamed to `autosizeThisColumn`
- **AG-7026** - [Row Pinning] Allow calling getRowId callback to set row ids for pinned rows instead of using automatically generated ones: getRowId callback is called to set row ids for pinned rows.
- **AG-6860** - [Keyboard Navigation] Allow pressing TAB key when focusing a list item to move focus out of the list instead of focusing the next list item (for example set filter list items): Pressing TAB key moves focus out of the list instead of moving it to next item. Navigation through the different items inside lists only happens with UP/DOWN ARROW keys.
- **AG-5916** - [Cell Rendering] Update text wrapping to break at word boundaries by default for grid cells and column headers and allow customizing it: Header and grid cells text wrapping uses word-break:'break-word' mode instead of 'normal'. This can be overridden via CSS.

### 31.0.0

- **AG-9862** - [Integrated] Change themes to use new AG Charts themes: The `solar` and `pastel` integrated chart themes have been removed. Any saved chart models will be migrated to the new `polychroma` and `sheets` themes respectively.
- **AG-9598** - Make grid animate rows by default and columns sortable and resizable by default: Grid columns are now sortable and resizable by default. Also, the grid animates rows by default. In order to avoid this, please set defaultColDef.resizable=false, defaultColDef.sortable=false and gridOptions.animateRows=false
- **AG-9463** - Support multiple grids sharing a single GridOption object: Javascript - Mutating gridOptions after the grid has been created will no longer be picked up by the grid. Instead use api.setGridOption('property', newValue) to update grid options.
- **AG-9458** - [API] Removal of v28 deprecations in v31 release: Column Api - getAllColumns: Use `api.getColumns` - getPrimaryColumns: Use `api.getColumns` - getSecondaryColumns: Use `api.getPivotResultColumns` - setSecondaryColumns: Use `api.setPivotResultColumns` - getSecondaryPivotColumn: Use `api.getPivotResultColumn` Grid API - refreshServerSideStore: Use `refreshServerSide` - getServerSideStoreState: use `getServerSideGroupLevelState` - setProcessSecondaryColDef: Use `api.setGridOption('processPivotResultColGroupDef', newValue)` - setProcessSecondaryColGroupDef: Use `api.setGridOption('setProcessPivotResultColGroupDef', newValue)` - setGetServerSideStoreParams: Use `api.setGridOption('getServerSideGroupLevelParams', newValue)`` GridOptions - serverSideStoreType: removed in favour of suppressServerSideInfiniteScroll. When false, Partial Store is used. When true, Full Store is used. - serverSideSortingAlwaysResets: Use `serverSideSortAllLevels` - serverSideFilteringAlwaysResets: Use `serverSideOnlyRefreshFilteredGroups` - processSecondaryColDef: Use `processPivotResultColDef` - processSecondaryColGroupDef: Use `processPivotResultColGroupDef` - getServerSideStoreParams: Use `getServerSideGroupLevelParams` - onRowDataChanged: No longer fired, use `onRowDataUpdated` SSRM Interfaces - ServerSideGroupLevelParams.storeType: removed in favour of suppressInfiniteScroll. When false, Partial Store is used. When true, Full Store is used. - IsApplyServerSideTransactionParams.storeInfo: use IsApplyServerSideTransactionParams.groupLevelInfo instead - LoadSuccessParams.storeInfo: Use LoadSuccessParams.groupLevelInfo instead - IServerSideGetRowsParams.successCallback: Use `success` method instead with `LoadSuccessParams` params - IServerSideGetRowsParams.failCallback: Use `fail` instead. - interface ServerSideStoreParams: Use ServerSideGroupLevelParams - interface GetServerSideStoreParamsParams: Use GetServerSideGroupLevelParamsParams - interface RefreshStoreParams: Use RefreshServerSideParams - interface ServerSideGroupState: Use ServerSideGroupLevelState ExportParams - columnGroups: groups are exported by default. - skipGroups: Use `skipRowGroups` - skipHeader: Use `skipColumnHeaders` - customFooter: Use `appendContent` - customHeader: Use `prependContent` - interfaces RangeSelection: Use CellRange - interface AddRangeSelectionParams: Use CellRangeParams React - rowDataChangeDetectionStrategy: Identity / reference equals always used
- **AG-9067** - [Column Filters] Add Advanced Filter support when using SSRM: IServerSideGetRowsRequest.filterModel can now be of type AdvancedFilterModel | null if Advanced Filter is enabled, or FilterModel otherwise (for Column Filters). ([docs](https://www.ag-grid.com/javascript-data-grid/server-side-model-filtering/#advanced-filter))
- **AG-8934** - [React v31] Remove Legacy React Rendering: Legacy React Rendering, enabled via suppressReactUi property is deprecated since v28 and is now removed. AG Grid now only renders via React components as has been the default since v28.
- **AG-8902** - [API] Remove simpleHttpRequest static method: simpleHttpRequest is removed, please use browser 'fetch' API method instead
- **AG-8722** - [Export] Remove XML export-related code from AG Grid codebase: ExcelExportParams no longer have the following options (removed without replacement): exportMode suppressTextAsCDATA
- **AG-6773** - [Column Filtering] Allow filter operations to follow the same order across filter types and naming convention (just like Excel): There are new localisation keys for the Date Filter - `lessThan` is now `before`, and `greaterThan` is now `after`. As these are new localization keys which don't appear in your localization dictionaries, you will see the English strings for "before" and "after" used in the date filter options list. Please provide translations for these 2 new keys in your localized dictionaries to display your translation instead.
- **AG-6381** - [Pagination] Allow pagination panel to set the page size via a dropdown: When showing the pagination controls, the page size selector is shown by default.
- **AG-5734** - [Row Grouping] Allow keeping the row groups/pivot columns value original type instead of converting it to string to support grouping by complex objects: Group values will no longer be typeless, and will be inferred from the first row when they were created. When using row grouping with groupDisplayType='singleColumn' (which is the default behavior) and displaying checkboxes in the auto-group column, checkboxes in leaf rows are only displayed if autoGroupColumnDef provides a field or a valueGetter to show values in leaf row cells. If you'd like to show checkboxes in the group columns for leaf rows, provide a field or valueGetter in the autoGroupColumnDef.
- **AG-1535** - [State] Allow save/restore of initial grid state as a single object: In order to apply initial state to the grid, columns need to be loaded. This is why until columnDefs are provided, a loading overlay will be displayed until column definitions are set. To go back to the earlier behavior of showing a grid without any columns (when not setting columnDefs), please set columnDefs=[] explicitly.

### 30.0.0

- **AG-8671** - [Quick Filter] Update quick filter to exclude values in hidden columns by default: excludeHiddenColumnsFromQuickFilter property has been deprecated. Hidden columns are now excluded from the Quick Filter by default. To include them, set the grid option `includeHiddenColumnsInQuickFilter = true`.
- **AG-8630** - [Column Filters] Ignore filterParams.defaultToNothingSelected=true when filterParams.excelMode is used: The Set Filter parameter `defaultToNothingSelected` will be ignored when `excelMode` is set.
- **AG-8629** - [Column Headers] Make column group header cells span multiple rows by default when other groups have more levels: `colDef.spanHeaderHeight` has been removed and made the default behaviour that can be suppressed by using the `colDef.suppressSpanHeaderHeight` property.
- **AG-8600** - [Aggregation] Refining top level and root level aggregation logic: suppressAggAtRootLevel property has been deprecated. The root level aggregation is now suppressed by default, except when using groupIncludeTotalFooter=true. This can be toggled using `alwaysAggregateAtRootLevel`.
- **AG-8584** - [API] Deprecate the keypress event (onCellKeyPressed event): The `CellKeyPress` and `FullWidthCellKeyPress` events are no longer fired by the Grid. These events have been replaced by `CellKeyDown` and `FullWidthCellKeyDown`. All events that source `spacePressed` and `deleteKeyPressed` now have the source as `spaceKey` and `deleteKey`. charPress was also removed from ICellEditorParams and StartEditingCellParams. You can now detect a key press by using: if (eventKey.length === 1)
- **AG-8510** - [API] Removal of v27 deprecations in v30 release: <p><strong>Breaking Changes:</strong></p><p><u>Angular Upgrade</u></p><ul> <li>The minimum Angular dependency supported by AG Grid v30 is now Angular v12. Previous versions of Angular aren't supported by AG Grid v30.</li> <li>There is no v30 for <code>@ag-grid-community/angular-legacy</code> or <code>ag-grid-angular-legacy</code> as these are only required for Angular versions <= v11</li> <li>See <a href=\"https://ag-grid.com/archive/30.0.0/angular-data-grid/angular-compatibility/\" rel=\"nofollow\">Angular Compatibility</a> for more information.</li></ul><p><u>ColDef</u></p><p>The following properties were previously deprecated and have now been removed.</p><p>Cell Rendering</p><ul><li><code>cellRendererFramework</code> - removed, use <code>cellRenderer</code> instead.</li><li>Return type of <code>cellRendererSelector</code> property <code>frameworkComponent</code> removed - use <code>component</code> instead.</li></ul><p>Cell Editing</p><ul><li><code>cellEditorFramework</code> - removed, use <code>cellEditor</code> instead.</li><li>Return type of <code>cellEditorSelector</code> property <code>frameworkComponent</code> removed - use <code>component</code> instead.</li><li><code>'agPopupTextCellEditor'</code> removed - use <code>{cellEditor: \"agTextCellEditor\"; cellEditorPopup: true}</code> instead.</li><li><code>'agPopupSelectCellEditor'</code> removed - use <code>{cellEditor: \"agSelectCellEditor\"; cellEditorPopup: true}</code> instead.</li></ul><p>Components</p><ul><li><code>tooltipComponentFramework</code> - removed, use <code>tooltipComponent</code> instead.</li><li><code>headerComponentFramework</code> - removed, use <code>headerComponent</code> instead.</li><li><code>headerGroupComponentFramework</code> - removed, use <code>headerGroupComponent</code> instead.</li></ul><p><u>ColumnGroup</u></p><p>The following properties were previously deprecated and have now been removed.</p><ul><li><code>getOriginalColumnGroup</code> - removed, use <code>getProvidedColumnGroup</code> instead.</li></ul><p><u>Column Api</u></p><p>The following methods were previously deprecated and have now been removed.</p><ul><li><code>getOriginalColumnGroup</code> - removed, use <code>getProvidedColumnGroup</code> instead.</li></ul><p><u>GridOptions</u></p><p>The following properties were previously deprecated and have now been removed.</p><p>Clipboard</p><ul><li><code>clipboardDeliminator</code> - removed, use <code>clipboardDelimiter</code> instead.</li></ul><p>Components</p><ul><li><code>frameworkComponents</code> - removed, use <code>components</code> instead.</li><li><code>loadingCellRendererFramework</code> - removed, use <code>loadingCellRenderer</code> instead.</li><li>Return type of <code>loadingCellRendererSelector</code> property <code>frameworkComponent</code> removed - use <code>component</code> instead.</li><li><code>detailCellRendererFramework</code> - removed, use <code>detailCellRenderer</code> instead.</li><li><code>loadingOverlayComponentFramework</code> - removed, use <code>loadingOverlayComponent</code> instead.</li><li><code>noRowsOverlayComponentFramework</code> - removed, use <code>noRowsOverlayComponent</code> instead.</li><li><code>fullWidthCellRendererFramework</code> - removed, use <code>fullWidthCellRenderer</code> instead.</li><li><code>groupRowRendererFramework</code> - removed, use <code>groupRowRenderer</code> instead.</li></ul><p>Editing</p><ul><li><code>stopEditingWhenGridLosesFocus</code> - removed, use <code>stopEditingWhenCellsLoseFocus</code> instead.</li></ul><p>Full Width</p><ul><li><code>isFullWidthCell</code> - removed, use <code>isFullWidthRow</code> instead.</li></ul><p>Grouping</p><ul><li><code>groupMultiAutoColumn</code> - removed, set <code>groupDisplayType='multipleColumns'</code> instead.</li><li><code>groupUseEntireRow</code> - removed, set <code>groupDisplayType='groupRows'</code> instead.</li><li><code>defaultGroupOrderComparator</code> - removed, use <code>initialGroupOrderComparator</code> instead.</li><li><code>groupRowAggNodes</code> - removed, use <code>getGroupRowAgg</code> instead.</li></ul><p>Immutable Data</p><ul><li><code>immutableData</code> - removed, implement <code>getRowId()</code> to enable immutable data mode.</li><li><code>getRowNodeId</code> - removed, use <code>getRowId()</code> instead.</li></ul><p>Localisation</p><ul><li><code>localeTextFunc</code> - removed, use <code>getLocaleText</code> instead.</li></ul><p>Selection</p><ul><li><code>suppressCellSelection</code> - removed, use <code>suppressCellFocus</code> instead.</li></ul><p>Sorting</p><ul><li><code>postSort</code> - removed, use <code>postSortRows</code> instead.</li></ul><p>React</p><ul><li><code>reactUI</code> - removed as this is now the default.</li></ul><p>Row Dragging</p><ul><li><code>enableMultiRowDragging</code> - removed, use <code>rowDragMultiRow</code> instead.</li></ul><p><u>Grid API</u></p><p>The following methods were previously deprecated and have now been removed.</p><p>Full Width</p><ul><li><code>setIsFullWidthCell</code> - removed, use <code>setIsFullWidthRow</code> instead.</li></ul><p>Grouping</p><ul><li><code>setGroupRowAggNodes</code> - removed, use <code>setGetGroupRowAgg</code> instead.</li><li><code>setDefaultGroupOrderComparator</code> - removed, use <code>setInitialGroupOrderComparator</code> instead.</li></ul><p>Immutable Data</p><ul><li><code>setGetRowNodeId</code> - removed, use <code>setGetRowId</code> instead.</li></ul><p>Sorting</p><ul><li><code>setPostSort</code> - removed, use <code>setPostSortRows</code> instead.</li></ul><p><u>IFilterOptionDef</u></p><ul><li><code>test</code> removed - use <code>predicate</code> instead.</li><li><code>hideFilterInput</code> removed - use <code>numberOfInputs: 0</code> instead.</li></ul><p><u>ISetFilterParams</u></p><ul><li><code>cellRendererFramework</code> removed - use <code>cellRenderer</code> instead.</li></ul><p><u>ToolPanelDef</u></p><ul><li><code>toolPanelFramework</code> removed - use <code>toolPanel</code> instead.</li></ul><p><u>StatusPanelDef</u></p><ul><li><code>statusPanelFramework</code> removed - use <code>statusPanel</code> instead.</li></ul><p><u>IGroupCellRendererParams</u></p><ul><li><code>innerRendererFramework</code> removed - use <code>innerRenderer</code> instead.</li></ul><p><u>IMultiFilterDef</u></p><ul><li><code>filterFramework</code> removed - use <code>filter</code> instead.</li><li><code>floatingFilterComponentFramework</code> removed - use <code>floatingFilterComponent</code> instead.</li></ul>
- **AG-8351** - [Column Group] Make horizontal sticky group column header default behavior: `colGroupDef.stickyLabel` has been removed and made the default behaviour that can be suppressed by using the `colGroupDef.suppressStickyLabel` property.
- **AG-8347** - [Row Grouping] Make group rows sticky default in row grouping, tree data and master detail: `gridOptions.groupRowsSticky` has been removed and made the default behaviour that can be suppressed by using the `gridOptions.suppressGroupRowsSticky` property.
- **AG-8234** - [Cell Editing] Add cell data types and cell data type inference: Cell data type inference is active by default. This means that by default grid columns with boolean values will display checkboxes representing the boolean values. The valueFormatter set on the column definition will be run, but its result will be ignored and the unformatted value will be used for the checkbox shown in the cell. You can disable this behavior for specific columns and show the formatted boolean value as text by setting colDef.cellDataType=false. ([docs](https://www.ag-grid.com/react-data-grid/cell-data-types/))
- **AG-7948** - [Side Bar] Enhance toolPanelVisibleChanged event to provide more information: The `toolPanelVisibleChanged` event has been updated (https://ag-grid.com/javascript-data-grid/tool-panel/#reference-accessories-toolPanelVisibleChanged). It now fires twice when switching between panels (once for the old panel and once for the new panel), but has new fields to indicate the change. The source property now refers to the event source rather than the panel name.
- **AG-7883** - [Column Filter] Add support for HTML5 number inputs in non-Chrome-based browsers: All browsers now use HTML number inputs for the Number Filter by default. The old behaviour (in browsers other than Chrome or Edge) can be replicated by setting `filterParams.allowedCharPattern = '\\d\\-\\.'` for the desired browsers.
- **AG-6947** - [Typings] Allow ColDef field property to use TData: Minimum version of Typescript is now v4.3 for v30 of AG Grid. You may have type errors if a `TData` generic is provided to `GridOptions` but the `columnDefs` is set from an untyped external property. To resolve provide explicit typing to your `columnDefs`.
- **AG-5525** - [Modules] Allow AG Grid module registration on a per-grid basis: <p><u>Module Registration</u></p><ul><li>Modules register individually to a grid are now only available to that instance of the grid.Previously individually registered modules were actually globally registered leading to a leaking of features across different grids.</li><li>See <a href=\"https://ag-grid.com/archive/30.0.0/javascript-data-grid/modules/#registering-ag-grid-modules\"rel=\"nofollow\">Registering AG Grid Modules</a> for more information.</li></ul>
- **AG-3473** - [API] Allow introducing column/editor/renderer type information in typescript: Callbacks which had the generic TValue type may now be slightly stricter with regards to null values. See https://ag-grid.com/javascript-data-grid/typescript-generics/#cell-value-tvalue

### 29.0.0

- **AG-8039** - [Layout & Styling] Remove deprecated themes ag-theme-bootstrap, ag-theme-dark, ag-theme-blue and ag-theme-fresh from grid: The ag-theme-dark, ag-theme-bootstrap, ag-theme-fresh and ag-theme-blue themes are removed because they are using legacy stylesheets which aren't supported by the new theming mechanism introduced in AG-6370. You can rebuild these themes using the new theming mechanism by overriding Sass variables as shown here: https://github.com/ag-grid/ag-grid-customise-theme You can modify the balham theme to look like the fresh theme like this: https://plnkr.co/edit/SFMFkg1nvCSpXJax?open=main.js You can modify the balham theme to look like the blue theme like this: https://plnkr.co/edit/ei5ngTH1CslUT94x?open=main.js&preview
- **AG-7779** - [SSRM] Allow displaying a single loading row when filtering instead of all grid rows as loading rows: When using SSRM and filtering or purging a level, only one loading row is displayed instead of all grid rows shown in loading state.
- **AG-7675** - [SSRM] Change default SSRM behaviour to Infinite Scroll: Default grid behaviour when using server-side row model is now using infinite scroll enabled. If you'd like to revert to the previous behavior of not using infinite scroll by default, please set suppressServerSideInfiniteScroll=true. Grid options (applies to all levels of server-side stores): Removed serverSideInfiniteScroll property Added suppressServerSideInfiniteScroll property ServerSideGroupLevelState options: (used in groupLevelParams to apply to group-specific server-side stores) Removed infiniteScroll property Added suppressInfiniteScroll property
- **AG-7658** - [Layout & Styling] Allow correctly rendering cell values when using row border greater than 1px: The CSS variable `--ag-borders-row` has been removed and will no longer work. Use the combination of `ag-row-border-style` and `ag-row-border-width` to replace it.
- **AG-7620** - [API] Remove deprecated property padding from IGroupCellRendererParams: GroupCellRendererParams.padding has been removed as it was no longer used from v26. To configure padding for groupCellRenderer use Sass variables and themes. Please see the AG Grid documentation page for Themes, in particular the property $row-group-indent-size.
- **AG-7619** - [API] Remove deprecated suppressRefresh, autoHeight from IDetailCellRendererParams: `suppressRefresh` and `autoHeight` have been removed from the IDetailCellRendererParams interface. Instead of `suppressRefresh` please set `refreshStrategy='nothing'. Instead of using `autoHeight` please set `gridOptions.detailRowAutoHeight = true`.
- **AG-7618** - [API] Remove deprecated addRowCompListener property from ICellRendererParams: cellRendererParams.addRowCompListener has been removed following its previous deprecation. This method was originally provided as a work around to know when cells were destroyed in AG Grid before custom Cell Renderers could be provided.
- **AG-7604** - [Layout & Styling] Remove deprecated legacy SASS styles: In AG Grid v28, we have ported our grid layout system to use CSS variables. AG Grid v27 and earlier used SASS. In order to ease the upgrade to AG Grid v28, we have continued to include the legacy Sass API and CSS stylesheets at their old file paths. However, in AG Grid v29 SASS is now removed and you need to change the import paths for CSS and Sass (.scss) files. The v27 import paths are now invalid in v29 and the themes won't work. Please see more here: https://www.ag-grid.com/javascript-data-grid/global-style-upgrading-to-v28/ ([docs](https://www.ag-grid.com/javascript-data-grid/global-style-upgrading-to-v28/))
- **AG-7534** - [API] Remove deprecated API methods from the Column object: <p><u>Column</u></p> <p>The following Column methods were previously deprecated and have now been removed.</p> <ul> <li><code>isLockPosition()</code> - removed, use <code>col.getColDef().lockPosition</code> instead.</li> <li><code>isLockVisible()</code> - removed, use <code>col.getColDef().lockVisible</code> instead.</li> <li><code>isLockPinned()</code> - removed, use <code>col.getColDef().lockPinned</code> instead.</li> </ul>
- **AG-7533** - [API] Remove the deprecated defaultGroupComparator API member: The deprecated defaultGroupComparator has been removed as it is not necessary. Please remove this from your colDef.
- **AG-7520** - [React] Remove React ChangeDetectionStrategyType.DeepValueCheck: In previous versions of AG Grid, we introduced a `DeepValueCheck` change detection strategy that performed an additional deep value comparison above and beyond reference equality. This was to help React users who were unintentionally setting their `rowData` prop when the row data had not actually changed. This resulted in additional grid re-renders as the grid reapplies the rows despite there being no real change. However, the DeepValueCheck introduced a number of issues, as well as introducing an additional cost for users who correctly manage their grid state. i.e only updating the `rowData` prop when there are real data changes. When correctly using Hooks, i.e setState and dependency arrays, `DeepValueCheck` is not required and so it has been removed to avoid the issues described above. If you now see additional re-renders please check that you are only updating grid state properties when they have actually changed. See https://ag-grid.com/react-data-grid/react-hooks/ for more information.
- **AG-7481** - [Angular] Upgrade Legacy Project to Angular v10: The minimum Angular dependency supported by AG Grid v29 is now Angular v10 via legacy packages. Previous versions of Angular aren't supported by AG Grid v29.
- **AG-7473** - [API] Remove legacy deprecated properties from GridOptions and ColDefs: <p><u>ColDef</u></p> <p>The following properties were previously deprecated and have now been removed.</p> <ul> <li><code>newValueHandler()</code> - removed, use <code>valueSetter</code> instead.</li> <li><code>sortedAt</code> - removed, use <code>sortIndex</code> instead.</li> <li><code>pinnedRowCellRenderer</code> - removed, use <code>cellRendererSelector</code> instead and use <code>params.node.rowPinned</code> to distinguish.</li> <li><code>pinnedRowCellRendererFramework</code> - removed, use <code>cellRendererSelector</code> instead and use <code>params.node.rowPinned</code> to distinguish.</li> <li><code>pinnedRowCellRendererParams</code> - removed, use <code>cellRendererSelector</code> instead and use <code>params.node.rowPinned</code> to distinguish.</li> <li><code>pinnedRowValueFormatter</code> - removed, use <code>valueFormatter</code> instead and use <code>params.node.rowPinned</code> to distinguish.</li> </ul> <p><u>GridOptions</u></p> <p>The following properties were previously deprecated and have now been removed.</p> <p><u>Grouping</u></p> <ul> <li><code>groupRowInnerRenderer</code> - removed, use <code>groupRowRendererParams.innerRenderer</code> instead.</li> <li><code>groupRowInnerRendererFramework</code> - removed, use <code>groupRowRendererParams.innerRenderer</code> instead.</li> <li><code>groupMultiAutoColumn</code> - removed, use <code>groupDisplayType = 'multipleColumns'</code> instead.</li> <li><code>groupUseEntireRow</code> - removed, use <code>groupDisplayType = 'groupRows'</code> instead.</li> <li><code>groupSuppressAutoColumn</code> - removed, use <code>groupDisplayType = 'custom'</code> instead.</li> <li><code>defaultGroupSortComparator</code> - removed, use <code>initialGroupOrderComparator</code> instead.</li> </ul> <p><u>Column State</u></p> <ul> <li><code>deltaColumnMode, immutableColumns, applyColumnDefOrder</code> - removed, the grid now works like this as default. To keep column order maintained, set grid property <code>maintainColumnOrder=true</code>.</li> <li><code>suppressEnterpriseResetOnNewColumns</code> - removed as no longer required.</li> <li><code>suppressSetColumnStateEvents, suppressColumnStateEvents</code> - removed, use <code>event.source = "api"</code> to identify events due to setting column state via the API.</li> <li><code>colWidth</code> - removed, use <code>defaultColDef.width</code> instead.</li> <li><code>minColWidth</code> - removed, use <code>defaultColDef.minWidth</code> instead.</li> <li><code>maxColWidth</code> - removed, use <code>defaultColDef.maxWidth</code> instead.</li> </ul> <p><u>Full Width</u></p> <ul> <li><code>deprecatedEmbedFullWidthRows</code> - removed, use <code>embedFullWidthRows</code> instead.</li> </ul> <p><u>Editing</u></p> <ul> <li><code>stopEditingWhenGridLosesFocus</code> - removed, use <code>stopEditingWhenCellsLoseFocus</code> instead.</li> </ul> <p><u>Export</u></p> <ul> <li><code>defaultExportParams</code> - removed, use <code>defaultCsvExportParams</code> for CSV or <code>defaultExcelExportParams</code> for Excel exports instead.</li> </ul> <p><u>Keyboard</u></p> <ul> <li><code>suppressKeyboardEvent</code> - removed, use <code>colDef.suppressKeyboardEvent</code> or for every column via <code>defaultColDef.suppressKeyboardEvent</code>.</li> </ul> <p><u>Selection</u></p> <ul> <li><code>rowDeselection</code> - removed. Now true by default and should be suppressed by using <code>suppressRowDeselection</code>.</li> </ul> <p><u>Updating Data</u></p> <ul> <li><code>batchUpdateWaitMillis</code> - removed, use <code>asyncTransactionWaitMillis</code> instead.</li> <li><code>deltaRowDataMode</code> - removed, use <code>getRowId()</code> callback to enable immutable data mode.</li> </ul>
- **AG-7472** - [Integrated] Enable Chart Tool Panels Button by default: Integrated charts display the chart tool panels button by default instead of the toolbar hamburger button. In order to display the toolbar hamburger button, please set suppressChartToolPanelsButton=true
- **AG-7403** - [API] Remove deprecated ag-grid-column/AgGridColumn components: <p><u>AG Grid Column / AgGridColumn Components</u></p> <p>The framework column components were previously deprecated and have now been removed. Define your column definitions in code via <code>gridOptions.columnDefs</code> or set directly on the AG Grid Component via the <code>columnDefs</code> property.</p>
- **AG-7352** - [API] Introduce IRowNode to show the public facing interface instead of the internal object RowNode: Typescript users may get type errors if accessing internal properties of `RowNode` following the introduction of `IRowNode`. Please resolve this by casting to `RowNode` or updating your code to use properties available on `IRowNode`.
- **AG-7267** - [Frameworks] Upgrade Typescript Version to 4.0.8: Minimum Typescript version is now 4.0
- **AG-7264** - [API] Remove legacy deprecated methods from gridApi and columnApi: <p><u>Column Api</u></p> <p>The following methods were previously deprecated and have now been removed.</p> <p><u>Column State</u></p> <ul> <li><code>setState, setColumnState</code> - removed, use <code>applyColumnState</code> instead.</li> <li><code>getState</code> - removed, use <code>getColumnState</code> instead.</li> <li><code>resetState</code> - removed, use <code>resetColumnState</code> instead.</li> <li><code>hideColumn, hideColumns</code> - removed, use <code>setColumnVisible, setColumnsVisible</code> instead.</li> <li><code>columnGroupOpened</code> - removed, use <code>setColumnGroupOpened</code> instead.</li> </ul> <p><u>Aggregation</u></p> <ul> <li><code>getAggregationColumns</code> - removed, use <code>getValueColumns</code> instead.</li> <li><code>addAggregationColumn, addAggregationColumns</code> - removed, use <code>addValueColumn, addValueColumns</code> instead.</li> <li><code>removeAggregationColumn, removeAggregationColumns</code> - removed, use <code>removeValueColumn, removeValueColumns</code> instead.</li> <li><code>resetState</code> - removed, use <code>resetColumnState</code> instead.</li> <li><code>setColumnAggFunction</code> - removed, use <code>setColumnAggFunc</code> instead.</li> </ul> <p><u>Display</u></p> <ul> <li><code>getDisplayNameForCol</code> - removed, use <code>getDisplayNameForColumn</code> instead.</li> </ul> <p><u>Grid Api</u></p> <p>The following methods were previously deprecated and have now been removed.</p> <p><u>Pinned Rows</u></p> <ul> <li><code>setFloatingTopRowData, setFloatingBottomRowData</code> - removed, use <code>setPinnedTopRowData, setPinnedBottomRowData</code> instead.</li> <li><code>getFloatingTopRowCount, getFloatingBottomRowCount</code> - removed, use <code>getPinnedTopRowCount, getPinnedBottomRowCount</code> instead.</li> <li><code>getFloatingTopRow, getFloatingBottomRow</code> - removed, use <code>getPinnedTopRow, getPinnedBottomRow</code> instead.</li> </ul> <p><u>Selection</u></p> <ul> <li><code>selectIndex, deselectIndex</code> - removed, use <code>rowNode.setSelected(isSelected)</code> instead.</li> <li><code>selectNode, deselectNode</code> - removed, use <code>rowNode.setSelected(isSelected)</code> instead.</li> <li><code>getSelectedNodesById</code> - removed, use <code>getSelectedNodes</code> instead.</li> <li><code>isNodeSelected</code> - removed, use <code>rowNode.isSelected</code> instead.</li> <li><code>getRangeSelections</code> - removed, use <code>getCellRanges</code> instead.</li> <li><code>addRangeSelection</code> - removed, use <code>addCellRange</code> instead.</li> </ul> <p><u>Grouping</u></p> <ul> <li><code>onGroupExpandedOrCollapsed(param)</code> - method no longer accepts an optional parameter.</li> </ul> <p><u>Display</u></p> <ul> <li><code>ensureColIndexVisible</code> - removed, use <code>ensureColumnVisible</code> instead.</li> <li><code>doLayout</code> - removed, no longer required as grid now responds to size changes.</li> <li><code>checkGridSize</code> - removed as was legacy and no longer required.</li> <li><code>getFirstRenderedRow, getLastRenderedRow</code> - removed, use <code>getFirstDisplayedRow, getLastDisplayedRow</code> instead.</li> <li><code>addVirtualRowListener</code> - removed, use <code>addRenderedRowListener</code> instead.</li> </ul> <p><u>Client Side Row Model</u></p> <ul> <li><code>refreshInMemoryRowModel</code> - removed, use <code>refreshClientSideRowModel(step)</code> instead.</li> <li><code>recomputeAggregates</code> - removed, use <code>refreshClientSideRowModel('aggregate')</code> instead.</li> <li><code>updateRowData</code> - removed, use <code>applyTransaction</code> instead.</li> <li><code>batchUpdateRowData, insertItemsAtIndex, addItems, removeItems</code> - removed, use <code>applyTransactionAsync</code> instead.</li> </ul> <p><u>Infinite Row Model</u></p> <ul> <li><code>refreshVirtualPageCache, refreshInfinitePageCache</code> - removed, use <code>refreshInfiniteCache</code> instead.</li> <li><code>purgeVirtualPageCache, purgeInfinitePageCache</code> - removed, use <code>purgeInfiniteCache</code> instead.</li> <li><code>getVirtualRowCount</code> - removed, use <code>getInfiniteRowCount</code> instead.</li> <li><code>isMaxRowFound</code> - removed, use <code>isLastRowIndexKnown</code> instead.</li> <li><code>setVirtualRowCount, setInfiniteRowCount</code> - removed, use <code>setRowCount</code> instead.</li> <li><code>getVirtualPageState, getInfinitePageState</code> - removed, use <code>getCacheBlockState</code> instead.</li> </ul> <p><u>Server Side Row Model</u></p> <ul> <li><code>setEnterpriseDatasource</code> - removed, use <code>setServerSideDatasource</code> instead.</li> <li><code>purgeEnterpriseCache, purgeServerSideCache</code> - removed, use <code>refreshServerSide({purge: true})</code> instead.</li> </ul>
- **AG-6692** - [API] Remove deprecated "key" property from ICellEditorParams: The deprecated `key` property on `ICellEditorParams` has been removed. Use `eventKey` instead.
- **AG-5724** - [Row Grouping] Make unbalanced row groups an optional behavior: Unbalanced groups have now been disabled by default. Rows with empty/undefined/null values for the group column will now be grouped under a `(Blanks)` group unless unbalanced groups are explicitly enabled by setting groupAllowUnbalanced=true. ' ' (one singular space) is no longer treated as equivalent to null and undefined when pivoting. However, '' (empty string) now is treated as equivalent to null and undefined. ([docs](https://www.ag-grid.com/javascript-data-grid/grouping-unbalanced-groups/))
- **AG-129** - [Column Filters] Allow set filter to support complex objects as provided set filter values: Set Filters now maintain the type of the values, instead of everything being converted to strings: - Primitive types (e.g. number, boolean, etc.) are strings when used as keys in the Filter Model, but maintain their type otherwise (e.g. for Value Formatters, Comparators, etc.). - Complex objects support separate keys and display values. Value Formatter is now mandatory. Supplied Values for the Filter List require the full complex object. - Key Creator is applied after splitting arrays for Multiple Values with complex objects, rather than before. The old behaviour of always converting all filter values to strings can be replicated by setting `filterParams.convertValuesToStrings = true` in the Column Definition.

### 28.0.0

- **AG-6848** - [SSRM] Allow Server-Side Sorting & Filtering when using server-side row model without Infinite Scroll: Deprecated grid property serverSideSortingAlwaysResets. Please use the serverSideSortAllLevels property instead. Deprecated grid property serverSideFilteringAlwaysResets. Please use the serverSideFilterAllLevels property instead. The default behaviour of SSRM partial store filtering has changed. The old behaviour caused the grid to purge all rows from the root level on change. This has now been updated in line with the behaviour of sorting to selectively refresh only groups which could have been affected by the change in filters. The old behaviour of always performing a reset is available by enabling the grid option `serverSideFilterAllLevels`. When using SSRM with tree data, the default behaviour when filtering used to be refresh data from the server. The new default behaviour is to filter on the client side. The old behaviour can be recovered by enabling serverSideFilterAllLevels
- **AG-6707** - [Events] Remove rowDataChanged event in favor of rowDataUpdated event, and call filter.onNewRoadsLoaded consitently: Previous behavior when adding new data in a filtered grid: 1/ Providing new RowData by calling setRowData (getRowId callback missing): rowDataChanged fired, filter.onNewRowsLoaded called 2/ Providing new RowData by calling setRowData (getRowId callback provided): rowDataUpdated fired, rowDataChanged fired 3/ Calling Apply Transaction: rowDataUpdated fired With the changes made, the grid now never fires rowDataChanged (which is deprecated). Instead it fires rowDataUpdated in all occasions as well as filter.onNewRowsLoaded in all occasions. 1/ Providing new RowData by calling setRowData (getRowId missing): rowDataUpdated fired, filter.onNewRowsLoaded called 2/ Providing new RowData by calling setRowData (getRowId provided): rowDataUpdated fired, filter.onNewRowsLoaded called 3/ Calling Apply Transaction: rowDataUpdated fired, filter.onNewRowsLoaded called
- **AG-6587** - [Row Grouping] Allow sorting different group columns separately by clicking the grouped column items in the row group panel: In CSRM, sorting a group column now applies the sort to the columns it represents. Sorting a column which has been row grouped now applies the sort to its groups. Any sort models which have been saved prior to this change will now behave differently, as sorted row grouped columns would have no impact previously, but now will apply the sort to the group column.
- **AG-5203** - [Aggregation] Improve performance of column aggregation calculation: The length getter and setter as well as the forEach function have been removed from the IAggFuncParams, no longer providing backwards compatibility for aggregate functions expecting an array type as the parameter.
- **AG-3069** - [Excel Export] Allow exporting row groups and tree data to Excel so that you can expand/collapse them in Excel: The properties appendContent, prependContent and getCustomContentBelowRow of the Excel Export now use a new ExcelRow[] interface and no longer use ExcelCell[][].

### 27.0.0

- **AG-6321** - [React] getReactContainerClasses() API Method no longer needed: React only: The interface method getReactContainerClasses() is no longer used on the following Custom React Components: +) Cell Renderer +) Cell Editor +) Header Comp +) Header Group Comp +) Floating Filter Comp This is because such components used to live inside React Portals, and this method allowed to put CSS Class onto the React Portal DIV item. However now React Portals are not used for these components, they live directly inside the grid's DOM. The React Portal DIV doesn't exist, thus there's nothing to style. For Tooltips Components, a React Portal is still used, however there is no longer a need to put the CSS {position: absolute; pointer-events: none} onto the parent as these are now done for you. This was an oversight on our side, they should have been there all along.
- **AG-6186** - Allow Framework Components to be registered without xxxFramework: JavaScript Functional Components are no longer supported. This means if you are using JavaScript Functions for Cell Renderers, you will need to convert these to: a) React Functional Components, b) React Class Components or c) JavaScript Class Components. This breaking change was necessary as there is no way for the grid to differentiate between JavaScript Functional Components and React Functional Components.
- **AG-6111** - [Integrated Charts] Change chartType to a string literal instead of enum type: Typescript users will need to replace the ChartType enum to the corresponding the string literal, i.e. ChartType.GroupedColumn should be changed to 'groupedColumn'.
- **AG-6089** - When filtering a grouped column and ungrouping/regrouping the column, modifying the group filter doesn't update the floating filter input values: When removing a column group, any filter model applied to the column group will also be removed.
- **AG-6029** - [SSRM] Make getRowNodeId callback required when using SSRM and selection: When using Server-Side Row Model and Row Selection, it is now mandatory to implement getRowNodeId(). Previously this was optional and led to confusing behaviour. To prevent this confusion, it's best that it is now mandatory.
- **AG-5902** - [Clipboard] Allow normalizing copied cell ranges and pasting copied values in the order they appear in the grid (just like Excel) instead of in the order they were selected: 1. Cell values copied exclusively from the same row are now pasted in the same row (previously each copied value was pasted on a separate row) 2. Cell values are now copied in the order they appear in the grid (previously cell values were copied in the order of selection)
- **AG-5718** - refreshView API method is deprecated, but used in example code: Removed the following deprecated methods from the GridApi: - `refreshView`: use `refreshCells` or `redrawRows` instead - `refreshRows`: use `refreshCells` or `redrawRows` instead - `rowDataChanged`: call `rowNode.setRowData(newData)` to set value on a particular node, or `redrawRows` to refresh everything - `softRefreshView`: Check refresh documentation for alternative - `refreshGroupRows`: call `refreshCells` instead. Because `refreshCells` now does dirty checking, it will only refresh cells that have changed, so it should not be necessary to only refresh the group rows
- **AG-5268** - [Column Filter] Set Filter - make newRowsAction 'keep' by default: 'newRowsAction' has now been removed where newRowsAction is 'keep' by default.
- **AG-5169** - [Column Filter] Use valueGetterParams in the filterParams valueGetter instead of just the node as param: The parameters for IFiliterParams.valueGetter() are no longer a solitary RowNode, but an object conforming to the ValueGetterFunc interface contract for consistency with other valueGetter parameters across the grid.
- **AG-2824** - [Clipboard] Allow the context menu "Copy with Column Headers" to work with multiple column header levels (column groups / secondary columns): The interfaces for the following methods have been updated: `copySelectedRowsToClipboard` and `copySelectedRangeToClipboard`. Going forward, please use the calls below: copySelectedRowsToClipboard(params?: IClipboardCopyRowsParams) copySelectedRangeToClipboard(params?: IClipboardCopyParams)

### 26.0.0

- **AG-5558** - [Charts] Add getChartImageDataURL() to the GridAPI: getChartImageDataURL() has been removed from the ChartModel, and is now now available through the gridAPI, `api.getChartImageDataURL()`. ([docs](https://www.ag-grid.com/javascript-grid/integrated-charts-api/#downloading-chart-image))
- **AG-5447** - [Regression] When calling JSON.stringify on an integrated chart model, an exception is thrown: The chart property has been removed from the ChartModel to support serialisation. To access the chart use the new gridApi.getChartRef(chartId) which returns the chart instance. ([docs](https://www.ag-grid.com/javascript-grid/integrated-charts-events/#accessing-chart-instance))
- **AG-5410** - [Layout & Styles] Update styles to use DART SASS only (no longer using deprecated API for division - use math.div() instead to avoid console warnings when building): Node-sass is now deprecated and no longer supported in AG Grid v26.0 and later. Node-Sass was deprecated in favour of Dart-Sass: https://www.npmjs.com/package/node-sass This is why Ag Grid v26.0 and later uses DART SASS only. If you're upgrading from versions of AG Grid before 26, we would highly recommend using Sass: https://sass-lang.com/ See more about how AG Grid, Sass and themes and styles work, please visit our documentation: https://www.ag-grid.com/javascript-data-grid/themes-customising/#sass-mixins-and-functions
- **AG-4952** - Cjs files are self-contained units preventing LicenseManager from recognizing the license key: The <code>.cjs<files> files previously included all AG Grid related dependencies. These files now only contain the relevant code for that module, which is the correct behaviour.

### 25.0.0

- **AG-2837** - [SSRM] Server Side Row Model Changes: These two breaking changes only apply if using the Server-Side Row Model. 1) There is a new property serverSideStoreType which must be set to 'partial'. Stores are a new concept and there are two store types, 'partial' and 'full'. It was decided to make 'full' the default despite this decision creating a breaking change. The reason is that 'full' is what most people will probably use and is easier to learn before moving to 'partial', thus it's a breaking change for all current users with the value of simplifying how the SSRM works. 2) The undocumented property RowNode.childrenCache is now called RowNode.childStore. As this is an undocumented property, nobody should be using it. However if you are using it, it's now changed. 3) purgeServerSideCache is deprecated, replaced with refreshServerSideStore which provides the same functionality but with purge=true as an option. This allows for silent refreshes without showing the loading indicator, but instead updating the data in place.

### 24.1.0

- **AG-4610** - [Master/Detail] Detail-level autoHeight does not work when used with custom detail renderer: Detail Cell Renderer Property autoHeight replaced with Grid Property detailRowAutoHeight. So instead of this: gridOptions.detailCellRendererParams.autoHeight Have this: gridOptions.detailRowAutoHeight This was to make the property and feature work with custom detail cell renderers - so the logic is at the grid level now, rather than hidden in the default Detail Cell Renderer (and hence was only available to the default Detail Cell Renderer).

### 24.0.0

- **AG-4388** - Cleanup Legacy Properties (> 1 year old): The following properties that have been deprecated for over a year have been removed: gridOptions ------------ - pivotTotals (use pivotColumnGroupTotals = 'before' | 'after') - gridAutoHeight (use domLayout = 'autoHeight') - groupSuppressRow (remove row groups and perform custom sorting) - suppressTabbing (use the grid callback suppressKeyboardEvent(params)) - showToolPanel (use gridOptions.sideBar) - toolPanelSuppressRowGroups (use toolPanelParams.suppressRowGroups) - toolPanelSuppressValues (use toolPanelParams.suppressValues) - toolPanelSuppressPivots (use toolPanelParams.suppressPivots) - toolPanelSuppressPivotMode (use toolPanelParams.suppressPivotMode) - toolPanelSuppressColumnFilter (use toolPanelParams.suppressColumnFilter) - toolPanelSuppressColumnSelectAll (use toolPanelParams.suppressColumnSelectAll) - toolPanelSuppressSideButtons (use toolPanelParams.suppressSideButtons) - toolPanelSuppressColumnExpandAll (use toolPanelParams.suppressColumnExpandAll) - contractColumnSelection (use toolPanelParams.contractColumnSelection) - enableSorting / enableServerSideSorting (use sortable=true on the column definition) - enableFilter / enableServerSideFilter (use filter=true on the column definition) - enableColResize (use resizable = true on the column definition) - getNodeChildDetails() (use new tree data) - doesDataFlower() ColDef ------- - suppressSorting (use colDef.sortable=false) - suppressFilter (use colDef.filter=false) - suppressResize (use colDef.resizable=false) - suppressToolPanel (use coldDef.suppressColumnsToolPanel) - tooltip (use colDef.tooltipValueGetter) RowNode ---------- - canFlower - flower - childFlower Events ------- - floatingRowDataChanged (use pinnedRowDataChanged)
- **AG-4366** - Make default value rowDeselection: true and add new option to allow to suppress it so they can have old behavior: rowDeselection has been deprecated and now the grid allows row deselection by default. To block row deselection set suppressRowDeselection to true.
- **AG-4291** - Reactive Columns: See 'More Info' for full details, these changes make more sense in context of the wider changes. 1) Column stateful items (width, flex, hide, sort, aggFunc, pivot, pivotIndex, rowGroup, rowGorupIndex, intitialPinned) always get re-applied when Column Definitions are updated. 2) Grid Property 'immutableColumns' is now gone. Columns are immutable by default. 3) Grid API 'getColumnState()' now returns back more information about columns. This is only a breaking change if your application isn't able to work with the extra details. 4) Grid API 'setColumnsState()' is replaced with 'applyColumnState()'. The new method is similar but more powerful / flesible. 5) Grid Property 'suppressSetColumnStateEvents' renamed to 'suppressColumnStateEvents' 6) Column Definition property sortedAt replaced with sortIndex 7) Grid API's 'getSortModel()' and 'setSortModel()' are deprecated as sort information is now part of Column State. Use get/applyColumnState() for sort information instead.
- **AG-1959** - [Aggregation] Add additional parameters to the Custom Aggregation methods: Custom aggregation functions now take a params object, previous they took a list of values. If you have any custom aggregation functions, you will need to update as follows: OLD function myCustomAggFunc(values) { values.forEach(... } OLD function myCustomAggFunc(params) { params.values.forEach(... }

### 22.0.0

- **AG-2764** - Columns toolpanel - Allow preventing dragging columns from the columns tool panel into the grid: By default columns can't be dragged from the Columns Tool Panel to the grid. This change was made as users were unintentionally changing the column order in the grid when dragging columns to the drop zones, i.e. row grouping / pivot. To restore original behaviour, enable the following grid option property: 'allowDragFromColumnsToolPanel'.

### 20.2.0

- **AG-2677** - IE11 when no rows overlay is shown and the filter is opened the layout is misplaced: Components within ag-overlay no longer wrap the whole grid width by default.

### 20.0.0

- **AG-2405** - Convert ag-grid-vue to Typescript: vue-property-decorator is now a dependency of ag-grid-vue
- **AG-2280** - Allow event handler in Vue too support more idiomatic conventions v-on:cellClicked=“onCellClicked“ or @cellClicked=“onCellClicked“: Events are now bound with @ instead of : ([docs](https://www.ag-grid.com/best-vuejs-data-grid/#configuring-ag-grid-in-vuejs))
- **AG-2235** - SASS Themes revamp: We have restructured our theme files, so If you create your custom themes extending our sass files, you will need to update the @import path.
- **AG-939** - Improve horizontal and vertical scrolling in other browsers: If you created themes from scratch, this change will probably break some selectors as some of our containers were removed/renamed. To learn about the new structure, see our updated theming guide.

### 19.1.1

- **AG-1591** - Allow delta changes to columns: From v19.1.0 delta columns are available, this means that now you can change the column definitions dynamically without causing the grid to reset. Note that this feature is still being polished and we are thinking about possibly changing the way it works, but for the time being the key points are: 1- If you want to update some existing columns, DON'T do it through setColumnDefs. Instead get a reference to that column, change it any way you want and then call refreshHeader https://www.ag-grid.com/javascript-grid-column-definitions/#changing-column-headers 2.- If you want to add or remove columns, then you need to call setColumnDefs, note that changes to already existing columns passed here are not going to be picked up, but new or removed columns will be deleted from the grid https://www.ag-grid.com/javascript-grid-column-definitions/#column-changes As mentioned above, we are considering consolidating the setColumnDefs as the golden source of truth, the investigation that we are carrying for this is tracked with this issue: AG-2289 Delta Columns - Investigate if it we should consider setColumnDefs as the golden source for delta columns.

### 19.0.0

- **AG-1266** - Remove theme-material (deprecated): The new material theme introduces new CSS classes.
- **AG-1201** - Allow customising the status bar: <ul> <li><strong>enableStatusBar</strong>: Removed - please specify <strong>statusPanel</strong> components</li> <li><strong>alwaysShowStatusBar</strong>: Removed - Please specify a min-height on the <strong>ag-status-panel</strong> css class</li> </ul> ([docs](https://www.ag-grid.com/javascript-grid-status-panel/))

### 18.0.0

- **AG-1800** - Events - Make event param mandatory: All event parameters are now mandatory. This might cause a compilation error if you're using TypeScript and have an event listener with no parameter specified.
- **AG-1210** - Add event when the tool panel open/hidden: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))

### 17.1.1

- **AG-1675** - Add filterType to FilterModel for SetFilter: By default <code>gridApi.getFilterModel()</code> now returns an object in the following format: { values: [], filterType: 'set' }; To revert to the old format of an array enable the following property: <code>gridOptions.enableOldSetFilterModel=true</code>

### 17.0.0

- **AG-1527** - New UI to have tool panel like a side bar in intelliJ: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-1440** - Allow tool panel to handle long column names: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-1367** - Allow tool panel to drag up & down columns and trigger the scroll if necessary (happens when lots of columns): Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-1215** - Allow toolpanel to be configured so you can add elements in the header/footer: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-982** - Tool Panel with Search Option to filter the columns showing in the right hand size: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-632** - [toolpanel] Allow column menu column panel to be have grouped entries collapsed by default: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))
- **AG-432** - [toolpanel touch]Scrolling Tool Panel on touch devices doesn't work: Check the documentation for tool panel. Tool panel has been revamped and changed considerably from v16 ([docs](https://www.ag-grid.com/javascript-grid-tool-panel/))

## Deprecations

Deprecations across all releases, newest first.

### 34.3.0

- **AG-15965** - [Pivoting] Allow date column values to be pivoted with multiple levels, just like they're grouped: rowGroupingHierarchy deprecated, use groupHierarchy instead

### 34.0.0

- **AG-13727** - [Column Filters] Split out filter evaluation and filter model from filter UI components: The `ISetFilter` interface is deprecated. When retrieving via `api.getColumnFilterInstance(column)`, use `SetFilterUi`. To access the methods that were previously available on `ISetFilter` (but not on `SetFilterUi`), instead retrieve the filter handler via `api.getColumnFilterHandler(column)` and use interface `SetFilterHandler`. `getModel()` and `setModel()` on all grid-provided filter instances are deprecated. Use `api.getColumnFilterModel(column)` and `api.setColumnFilterModel(column)` instead.

### 33.3.0

- **AG-14662** - [React] Deprecate unused properties from public AgGridReactProps interface: Deprecated props on the AgGridReactProps interface: * setGridApi - deprecated without replacement as it is not used anymore * children - deprecated without replacement as it is not used anymore * maxComponentCreationTimeMs - deprecated without replacement as it is not used anymore

### 33.1.0

- **AG-13728** - [API] Deprecate filterParams.rowModel: `IFilterParams.rowModel` and `CustomFilterProps.rowModel` are deprecated. Use the corresponding methods on the grid API instead.

### 33.0.0

- **AG-13471** - [API] Deprecate gridOption sortingOrder: Deprecated gridOptions.sortingOrder, use defaultColDef.sortingOrder
- **AG-13470** - [API] Deprecate gridOptions.unSortIcon property: Deprecated gridOptions.unSortIcon, use defaultColDef.unSortIcon
- **AG-13237** - [API] Deprecate row node properties firstChild, lastChild and childIndex and corresponding events: Row node properties: `firstChild` - deprecated. Use `rowNode.parent?.childrenAfterSort?.[0] === rowNode` instead. `lastChild` - deprecated. Use `!!rowNode.parent?.childrenAfterSort && (rowNode.parent.childrenAfterSort[rowNode.parent.childrenAfterSort.length - 1] === rowNode)` instead. `childIndex` - deprecated. Use `rowNode.parent?.childrenAfterSort?.findIndex(r => r === rowNode)` instead. Row node events: `firstChildChanged` - deprecated. Use global `modelUpdated` event to determine when row children have changed. `lastChildChanged` - deprecated. Use global `modelUpdated` event to determine when row children have changed. `childIndexChanged` - deprecated. Use global `modelUpdated` event to determine when row children have changed.
- **AG-13153** - [API] Deprecate suppressPropertyNamesCheck property: suppressPropertyNamesCheck - deprecated without replacement. This property was previously used as a way to allow adding user properties storing user metadata in `gridOptions` and `columnDefs`. However, now that both have a `context` property that should be used to store arbitrary user metadata. This means that column definitions and gridOptions should only contain valid properties making this property redundant.
- **AG-13115** - [Selection] Allow setting checkbox based on grid's grouping state: cellRendererParams.checkbox has been deprecated, use rowSelection.checkboxLocation = "autoGroupColumn" instead
- **AG-13027** - [Row Selection][API] Merge 6 row (de)selection-related API methods into two parameterized methods - selectAll, selectAllFiltered, selectAllOnCurrentPage, deselectAll, deselectAllFiltered, deselectAllOnCurrentPage: selectAllFiltered has been deprecated, please use selectAll('filtered') instead selectAllOnCurrentPage has been deprecated, please use selectAll('currentPage') instead deselectAllFiltered has been deprecated, please use deselectAll('filtered') instead deselectAllOnCurrentPage has been deprecated, please use deselectAll('currentPage') instead
- **AG-12981** - [API] Deprecate column.isHovered() method: `Column.isHovered()` is deprecated. Use `api.isColumnHovered(column)` instead.
- **AG-12942** - [API] Merge `suppressRowGroupHidesColumns` and `suppressMakeColumnVisibleAfterUnGroup`: suppressMakeColumnVisibleAfterUnGroup - deprecated, use suppressGroupChangesColumnVisibility: "suppressShowOnUngroup" instead. suppressRowGroupHidesColumns - deprecated, use suppressGroupChangesColumnVisibility: "suppressHideOnGroup" instead. When setting both suppressMakeColumnVisibleAfterUnGroup and suppressRowGroupHidesColumns to true, use suppressGroupChangesColumnVisibility: true instead.
- **AG-12923** - [API] Merge `groupRemoveSingleChildren` and `groupRemoveLowestSingleChildren` grid properties as they're mutually exclusive: groupRemoveSingleChildren deprecated, use groupHideParentOfSingleChild: true instead groupRemoveLowestSingleChildren deprecated, use groupHideParentOfSingleChild: 'leafGroupsOnly' instead
- **AG-12847** - [Bundle Size] Modularise the grid core module - create separate modules containing feature-specific code: `ModuleRegistry.register(module)` is deprecated. Use `ModuleRegistry.registerModules([module])` instead. `MenuModule` is deprecated. Use `ColumnMenuModule` for the Column Menu and/or `ContextMenuModule` for the Context Menu instead. `RangeSelectionModule` is deprecated. Use `CellSelectionModule` instead.

### 32.2.0

- **AG-12669** - [API] Deprecate grid API method getInfiniteRowCount: getInfiniteRowCount - deprecated, use getDisplayedRowCount instead
- **AG-12652** - [API] Remove resizeObserverService and deprecate suppressBrowserResizeObserver grid option: GridOption suppressBrowserResizeObserver - deprecated without replacement
- **AG-12648** - [Events] Deprecate the grid columnEverythingChanged event: columnEverythingChanged deprecated, use `displayedColumnsChanged` which is fired at the same time instead, or one of the more specific column events: https://www.ag-grid.com/react-data-grid/grid-events/#reference-columns
- **AG-12593** - [API] Deprecate rangeDeleteStart, rangeDeleteEnd, rangeSelectionChanged events and clearRangeSelection API method and grid state object field rangeSelection: Events rangeDeleteStart - deprecated, use cellSelectionDeleteStart instead rangeDeleteEnd - deprecated, use cellSelectionDeleteEnd instead rangeSelectionChanged - deprecated, use cellSelectionChanged instead Grid API clearRangeSelection - deprecated, use clearCellSelection method instead Grid State object fields rangeSelection - deprecated, when setting this manually use cellSelection field instead
- **AG-12528** - [API] Split RowNode class into a shared interface with classes per feature: isFullWidthCell - deprecated, Check `node.detail` then user-provided callback `isFullWidthRow` instead.

### 32.0.0

- **AG-11679** - Prevent --tab-min-width from affecting chart settings menu: `--ag-tab-min-width` used to set the width of all tab components: both the legacy tabbed column menu and the chart settings menu panel. Now it only affects the legacy tabbed column menu. Customers who were using it to change the width chart settings menu panel should use `--ag-chart-menu-panel-width` instead.
- **AG-11443** - [Drag & Drop] Reinstate the previously deprecated colDef.dndSource and colDef.dndSourceOnRowDrag properties: Column options dndSource and dndSourceOnRowDrag are reinstated (no longer deprecated) as they're necessary to support drag and drop use cases when the drop target isn't known.
- **AG-10420** - [Types] Allow improving types for addEventListener / removeEventListener for rxjs@7: The following interfaces are deprecated and replaced with the equivalent interface suffixed with Event: - ChartCreated -> ChartCreatedEvent - ChartRangeSelectionChanged -> ChartRangeSelectionChangedEvent - ChartOptionsChanged -> ChartOptionsChangedEvent - ChartDestroyed -> ChartDestroyedEvent - AsyncTransactionsFlushed -> AsyncTransactionsFlushedEvent
- **AG-5497** - [Overlay] Allow showing the loading overlay using a loading property: The api.showLoadingOverlay method is now deprecated (overlay available by setting loading=true) The gridOptions.suppressLoadingOverlay property is now deprecated (overlay disabled by by setting loading=false)

### 31.3.1

- **AG-11376** - [API] Allow using tabToNextCell and tabToNextHeader methods to move focus to the next focusable element (default browser behavior): tabToNextCell - null input param type deprecated, provide boolean input param type instead. tabToNextHeaderCell - null input param type deprecated, provide boolean input param type instead. Returning `null` from tabToNextCell is deprecated. Instead, return `true` to stay on the current cell, or `false` to let the browser handle the tab behaviour. Returning `null` from tabToNextHeader is deprecated. Instead, return `true` to stay on the current header, or `false` to let the browser handle the tab behaviour.
- **AG-11216** - [API] Deprecate gridApi.getValue method and introduce gridApi.getCellValue method to replace it: getValue - deprecated, use getCellValue instead
- **AG-2953** - Allow adding a sticky/pinned grand total row at the top/bottom of the grid: groupIncludeFooter - deprecated, use groupTotalRow instead groupIncludeTotalFooter - deprecated, use grandTotalRow instead footerValueGetter - deprecated, use totalValueGetter instead

### 31.2.0

- **AG-10986** - [API] Deprecate grid option enableCellChangeFlash and colDef option suppressCellFlash: gridOptions.enableCellChangeFlash is deprecated, set enableCellChangeFlash in columnDefs instead colDef.suppressCellFlash is deprecated, set colDef.enableCellChangeFlash=false instead

### 31.1.0

- **AG-10606** - [SSRM] Deprecate SSRM full store and related properties: The following gridOptions have been deprecated without replacement: suppressServerSideInfiniteScroll serverSideSortOnServer serverSideFilterOnServer
- **AG-10276** - [React] Deprecate api.getFilterInstance method: `api.getFilterInstance` is deprecated. To get/set individual filter models, use `api.getColumnFilterModel` or `api.setColumnFilterModel` instead. To get hold of the filter instance, use `api.getColumnFilterInstance` which returns the instance asynchronously.
- **AG-10261** - [API] Deprecate legacy React custom component format: React only - using custom components without `reactiveCustomComponents = true` is now deprecated. You can continue using these deprecated custom components. Please see the migration guide for this version for help to migrate your existing custom components to use the new format
- **AG-10238** - [API] Deprecate IDate.onParamsUpdated and IFloatingFilter.onParamsUpdated: When implementing a custom date component,`IDate.onParamsUpdated` has been deprecated in favour of `IDate.refresh`. When implementing a custom floating filter component,`IFloatingFilter.onParamsUpdated` has been deprecated in favour of `IFloatingFilter.refresh`.
- **AG-10172** - [React] Deprecate legacy React interfaces: `AgReactUiProps` is deprecated, use `AgGridReactProps` instead. The properties `AgGridReactProps.disableStaticMarkup` and `AgGridReactProps.legacyComponentRendering` are deprecated, as these are no longer used. The following React custom component interfaces are deprecated along with their methods `getReactContainerStyle` and `getReactContainerClasses` (apply styling directly to the CSS class `.ag-react-container` if needed) - `IHeaderGroupReactComp` (use `IHeaderGroup` instead), `IHeaderReactComp` (use `IHeader` instead), `IDateReactComp` (use `IDate` instead), `IFilterReactComp` (use `IFilter` instead), `IFloatingFilterReactComp` (use `IFloatingFilter` instead), `ICellRendererReactComp` (use `ICellRenderer` instead), `ICellEditorReactComp` (use `ICellEditor` instead), `ILoadingCellRendererReactComp` (no interface needed), `ILoadingOverlayReactComp` (use `ILoadingOverlay` instead), `INoRowsOverlayReactComp` (use `INoRowsOverlay` instead), `IStatusPanelReactComp` (use `IStatusPanel` instead), `IToolPanelReactComp` (use `IToolPanel` instead), and `ITooltipReactComp` (no interface needed).
- **AG-9559** - iRowModel interface incorrectly exposes too much on the public interface: gridApi.getModel() method is now deprecated. Instead, please use the corresponding methods on the gridApi: IRowModel.getRow(index) → api.getDisplayedRowAtIndex(index) IRowModel.getRowNode(id) → api.getRowNode(id) IRowModel.getRowCount() → api.getDisplayedRowCount() IRowModel.isEmpty() → !!api.getDisplayedRowCount() IRowModel.forEachNode() → api.forEachNode()
- **AG-9369** - [API] Deprecate api.getFirstDisplayedRow and api.getLastDisplayedRow in favor of api.getFirstDisplayedRowIndex and api.getLastDisplayedRowIndex: gridApi methods getFirstDisplayedRow and getLastDisplayedRow are now deprecated. Please use their replacements as listed below: api.getFirstDisplayedRow → api.getFirstDisplayedRowIndex api.getLastDisplayedRow → api.getLastDisplayedRowIndex
- **AG-9062** - [Layout & Styling] Add new properties to customize cell flash animations durations and deprecate cellFlashDelay and cellFadeDelay: gridOptions properties cellFlashDelay and cellFadeDelay are now deprecated. Use replacements as shown below: gridOptions.cellFlashDelay -> gridOptions.cellFlashDuration gridOptions.cellFadeDelay -> gridOptions.cellFadeDuration api.flashCells flashDelay and fadeDelay params are deprecated in favor of flashDuration and fadeDuration.
- **AG-9056** - [Column Menu] Column menu redesign: `colDef.columnsMenuParams` is deprecated - use `colDef.columnChooserParams` instead. `ColumnsMenuParams` is deprecated - use `ColumnChooserParams` instead. `column.getMenuTabs` is deprecated - use `column.getColDef().menuTabs ?? defaultValues` instead. `colDef.floatingFilterComponentParams.suppressFilterButton` is deprecated - use `colDef.suppressFloatingFilterButton` instead. `api.showColumnMenuAfterButtonClick` is deprecated - use `IHeaderParams.showColumnMenu` within a header component, or `api.showColumnMenu` elsewhere. `api.showColumnMenuAfterMouseClick` is deprecated - use `IHeaderParams.showColumnMenuAfterMouseClick` within a header component, or `api.showColumnMenu` elsewhere.
- **AG-7254** - [API] Deprecate API methods with single arguments when an identical method for a list inputs exists: The following gridApi methods have been deprecated, please use their plural variation, providing the single string argument as an element in an array. removeRowGroupColumn → removeRowGroupColumns addRowGroupColumn → addRowGroupColumns setColumnPinned → setColumnsPinned removePivotColumn → removePivotColumns addPivotColumn → addPivotColumns addAggFunc → addAggFuncs removeValueColumn → removeValueColumns addValueColumn → addValueColumns autoSizeColumn → autoSizeColumns moveColumn → moveColumns setColumnWidth → setColumnWidths setColumnVisible → setColumnsVisible
- **AG-6713** - [Column Menu][Accessibility] Allow column menu to be opened pressing ALT+DOWN ARROW key (just like Excel): `colDef.suppressMenu` is deprecated - use `colDef.suppressHeaderMenuButton` instead.

### 31.0.0

- **AG-9876** - [API] Deprecate gridOptions property suppressAsyncEvents: gridOptions.suppressAsyncEvents is now deprecated - events should be handled asynchronously.

### 30.2.0

- **AG-9317** - [Cell Editing] When filters are enabled for No Click editing, row Index returns incorrect cell: ICellRendererParams.rowIndex is now deprecated. Use ICellRendererParams.node.rowIndex instead

### 30.0.0

- **AG-8408** - v30 Remove Angular Legacy From Codebase: There is no v30 of `ag-grid-angular-legacy` or `ag-charts-angular-legacy` as these are no longer required as Angular 12 is a minimum requirement of AG Grid v30. See https://ag-grid.com/angular-data-grid/angular-compatibility/ for more details.
- **AG-1826** - [Keyboard Navigation] Allow enterMovesDown and enterMovesDownAfterEdit to focus the cell above when pressing SHIFT + ENTER: enterMovesDown and enterMovesDownAfterEdit properties have been deprecated. Use enterNavigatesVertically and enterNavigatesVerticallyAfterEdit respectively.

### 29.2.0

- **AG-8032** - [API] Deprecate the undocumented functionsPassive property and related event callbacks: The API members below are undocumented and not officially supported. They are now deprecated so they can potentially be integrated as officially supported API in the product later. Grid Property deprecated: functionsPassive Grid Events deprecated: onColumnRowGroupChangeRequest onColumnPivotChangeRequest onColumnValueChangeRequest onColumnAggFuncChangeRequest
- **AG-2558** - [Column Filters] Allow more than two conditions in the column filters: suppressAndOrCondition - deprecated, set maxConditions = 1 alwaysShowBothConditions - deprecated, set alwaysVisibleConditions = 2

### 29.0.0

- **AG-7674** - [API] Deprecate getCacheBlockState() API method: Deprecated getCacheBlockState() api function as it is no longer valid with the default store type.
- **AG-7520** - [React] Remove React ChangeDetectionStrategyType.DeepValueCheck: As the `DeepValueCheck` change detection strategy has been removed the `rowDataChangeDetectionStrategy` has now been deprecated as it no longer supports a different strategy then the default reference equals comparison.
- **AG-7472** - [Integrated] Enable Chart Tool Panels Button by default: enableChartToolPanelsButton property is now deprecated because the chart is now showing the chart tool panels button by default.
- **AG-129** - [Column Filters] Allow set filter to support complex objects as provided set filter values: `filterParams.convertValuesToStrings = true` in the Column Definition is deprecated. This is a new setting to enable the legacy behaviour for converting values in the Set Filter to strings. Instead, handle the values with the correct/original type, including the processing of complex objects. `ISetFilter.getValues()` is deprecated. Use `getFilterValues` to get the values in the Set Filter (e.g. complex objects if provided), or `getFilterKeys` to get the string keys.

### 28.0.0

- **AG-6858** - [SSRM] Simplify SSRM by removing Store concept: Grid property serverSideStoreType=full/partial is replaced with serverSideInfiniteScroll=true/false Instead of serverSideStoreType='partial' use serverSideInfiniteScroll=true Instead of serverSideStoreType='full' use serverSideInfiniteScroll=false gridApi.getServerSideStoreParams(GetServerSideStoreParamsParams) replaced with gridApi.getServerSideGroupLevelParams(GetServerSideGroupLevelParamsParams) gridApi.getServerSideStoreState() replaced with gridApi.getServerSideGroupLevelState() gridApi.refreshServerSideStore() replaced with gridApi.refreshServerSide() IsApplyServerSideTransactionParams.storeInfo replaced with IsApplyServerSideTransactionParams.groupLevelInfo, LoadSuccessParams.storeInfo replaced with LoadSuccessParams.groupLevelInfo
- **AG-6707** - [Events] Remove rowDataChanged event in favor of rowDataUpdated event, and call filter.onNewRoadsLoaded consitently: rowDataChanged event is now deprecated and no longer fired from the grid. Instead rowDataUpdated is fired in all scenarios where either rowDataChanged or rowDataUpdated event was previously fired.
- **AG-6539** - [Pivoting] Rename Secondary Columns to Pivot Columns (API members) and update documentation: Certain API methods have been deprecated as part of this item. =Column API= getSecondaryPivotColumn is now deprecated, please use getPivotResultColumn API method instead setSecondaryColumns is now deprecated, please use setPivotResultColumns API method instead getSecondaryColumns is now deprecated, please use getPivotResultColumns API method instead getPrimaryColumns is now deprecated, please use getColumns API method instead =Grid Options= processSecondaryColDef is now deprecated, please use processPivotResultColDef callback instead processSecondaryColGroupDef is now deprecated, please use processPivotResultColGroupDef callback instead

### 27.2.0

- **AG-3353** - [API] Standardize all callbacks so that they all receive a params object with gridApi / columnApi / context etc..: Deprecations in callbacks: -groupRowAggNodes callback is now deprecated, please use getGroupRowAgg instead -defaultGroupOrderComparator callback is now deprecated, please use initialGroupOrderComparator instead -postSort callback is now deprecated, please use postSortRows instead -localeTextFunc callback is now deprecated, please use getLocaleText instead -isFullWidthCell callback is now deprecated, please use isFullWidthRow instead

### 27.1.0

- **AG-6453** - [Regression] When using React, custom Cell Editor props (ICellEditorParams) don't allow accessing key property value due to naming conflict with React: ICellEditorParams.key is now deprecated. Please use the new ICellEditorParams.eventKey property instead.
- **AG-6394** - Replace getRowNodeId() with getRowId() to make a) immutable data the default and b) provide more info in params: Grid property immutableData is deprecated. Grid callback getRowNodeId() is deprecated. Instead implement getRowId(), and the grid will then also treat the data as immutable data automatically. The old method getRowNodeId provided the parameter 'data' only. The callback getRowId provides a params object with the following attributes: data -> as before parentKeys -> if grouping, provides the keys of all parent groups level -> if grouping, provides how many levels from the top the row is parentKeys and level are provided for Serverside Row Model only.

### 27.0.0

- **AG-6319** - [React] Remove isPopup() and getPopupPosition() API methods for Custom Cell Editors: This change applies to React only The Cell Editor interface methods isPopup() and getPopupPosition() do not work when using the new React rendering engine (introduced as the optional ReactUI mode in AG Grid 26.0 and default rendering mode in AG Grid 27+). Instead use colDef.cellEditorPopup and cellEditorPopupPosition. This change was unavoidable as we moved to pure React Rendering by default in AG Grid 27. To call these methods on the Cell Editor required first creating the Cell Editor. However in React, you have to place the Component into the DOM in order to instantiate the Component, which is too late, as the results from these methods is needed to know where to place the Component in the DOM.
- **AG-6186** - Allow Framework Components to be registered without xxxFramework: All xxxFramework properties are deprecated, use the xxx version instead. Eg instead of cellRendererFremwork, use cellRenderer. Grid Option frameworkComponents is now deprecated, register all components using Grid Option components instead. For React Full support is present for React Functional and React Class Components. However JavaScript Functional Components are no longer supported. If you are using JavaScript Functions for Cell Renderers, you will need to convert these to one of the below: a) React Functional Components b) React Class Components c) JavaScript Class Components This breaking change was necessary as there is no way for the grid to differentiate between JavaScript Functional Components and React Functional Components.
- **AG-6022** - Rename 'Original Group' in Grid API: Column API method `getOriginalColumnGroup()` renamed to `getProvidedColumnGroup()`. The old method `getOriginalColumnGroup()` is now deprecated. The Column API is the Grid's main Column API. ColumnGroup method `getOriginalColumnGroup()` renamed to `getProvidedColumnGroup()`. The old method `getOriginalColumnGroup()` is now deprecated. The ColumnGroup is the object that represents a Column Group and is used as a return type of some API methods, as well as a parameter passed to ColumnGroupCellRenderer.
- **AG-5953** - [Keyboard Navigation] Deprecate suppressCellSelection and rename it to suppressCellFocus to better reflect its effect on cell focus, not selection: `suppressCellSelection` has been deprecated, use `suppressCellFocus` instead.
- **AG-5044** - [Column Filters] Add more params to the textCustomComparator including rowNode, valueFormatter and actual value: <code>TextFilterParams.textCustomComparator</code> is deprecated; use <code>textMatcher</code> instead.
- **AG-4624** - [Deprecation] KeyboardEvent.which and KeyboardEvent.keyCode should be deprecated: The following interfaces have the `keyPress: number` property deprecated and replaced with `key: string`. StartEditingCellParams { keyPress: number } (use StartEditingCellParams { key: string } instead) ICellEditorParams { keyPress: number } (use ICellEditorParams { key: string } instead) IRichCellEditorParams { keyPress: number } (use IRichCellEditorParams { key: string } instead) ILargeTextEditorParams { keyPress: number } (use ILargeTextEditorParams { key: string } instead) ISelectCellEditorParams { keyPress: number } (use ISelectCellEditorParams { key: string } instead) ITextCellEditorParams { keyPress: number } (use ITextCellEditorParams { key: string } instead) The following interface had a property type change from `key: number` to `key: string` NavigateToNextCellParams { key: number } (use NavigateToNextCellParams { key: string } instead)

### 26.1.0

- **AG-3986** - [Drag & Drop] Entire Row Dragging without the need for a drag handle: `enableMultiRowDragging` has been deprecated, use `rowDragMultiRow` instead. ([docs](https://www.ag-grid.com/javascript-data-grid/row-dragging/#entire-row-dragging))

### 26.0.0

- **AG-5563** - The 'defaultGroupSortComparator' grid option is incorrectly named, should be renamed to 'defaultGroupOrderComparator': The grid option 'defaultGroupSortComparator' has been deprecated, use 'defaultGroupOrderComparator' instead.
- **AG-5524** - [Row Grouping] Simplify configuration of Row Grouping Display Types: The following grid options have been deprecated: - groupMultiAutoColumn (use groupDisplayType = 'multipleColumns' instead) - groupUseEntireRow (use groupDisplayType = 'groupRows' instead) - groupSuppressAutoColumn (use groupDisplayType = 'custom' instead) ([docs](https://www.ag-grid.com/javascript-data-grid/grouping-display-types/))

### 25.2.0

- **AG-5089** - [Regression] When suppressColumnStateEvents=true, the selectAll checkbox in the columnsMenuTab/columnsToolPanel does not check column items in list: suppressColumnStateEvents is now deprecated. You can achieve the same effect by inspecting event.source on column change events, which is set to "api" when the change is due to setting state.

### 24.1.0

- **AG-4335** - [Keyboard Navigation] Allow suppressing built-in column header keyboard navigation and allow custom header keyboard navigation: suppressKeyboardEvent Grid Callback has been deprecated. This is because a similar callback exists on Column Definitions and setting such on the Default Column Definition has the same effect.

### 23.2.0

- **AG-4220** - Create Excel mode for set filter: Provided filter filterParams.applyButton has been deprecated. Use filterParams.buttons instead. Provided filter filterParams.clearButton has been deprecated. Use filterParams.buttons instead. Provided filter filterParams.resetButton has been deprecated. Use filterParams.buttons instead. ([docs](https://www.ag-grid.com/javascript-grid-filter-set-excel-mode/))
- **AG-3040** - Allow date floating filters to have a debouncesMs: debounceMs is already available for date filters, and if applied in the filterParams will be respected by the floating filter as well.

### 17.1.0

- **AG-1730** - Deprecate for print, the same functionality can be achieved with domLayout: 'autoHeight': This is getting deprecated since the preferred way to achieve the same results is to set domLayout: 'autoHeight' ([docs](https://www.ag-grid.com/javascript-grid-width-and-height/#autoHeight))

## All Changes

Every changelog entry, grouped by release.

### 36.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17969 | Defect | [Regression] When pivoting and adding a value column, resizing a column causes pivot result column cell values to collide |
| AG-17967 | Defect | [Side Bar] Columns Tool Panel — pressing Enter in filter input no longer toggles column visibility (regression since v33) |
| AG-17965 | Defect | ARIA attribute value in Page Size dropdown in the pagination panel is incorrect |
| AG-17960 | Feature Request | [Master Detail] [React] Master/Detail grids using legacy themes on React incorrectly apply theme class to detail grid wrapper |
| AG-17956 | Defect | [Regression] When pinning a column with row span, column cells are rendered over each other and keyboard navigation is out of sequence |
| AG-17944 | Defect | [Cell Editing] agRichSelectCellEditor ignores enterNavigatesVerticallyAfterEdit |
| AG-17933 | Defect | [Edit] invalidEditValueMode: "block" doesn't work with editType: "fullRow" |
| AG-17910 | Defect | [Calculated Cols] Calculated cols are not saved in grid state |
| AG-17903 | Defect | [Regression][React] When using startTransition to update columnDefs, an exception is thrown |
| AG-17899 | Defect | [Typescript] Generic-typed properties are excluded from ColDefField / NestedFieldPaths |
| AG-17885 | Defect | When tooltipInteraction=true, hovering a cell while previously shown tooltip is fading sometimes doesn't open tooltip again |
| AG-17878 | Defect | [Toolbar] [React] [Angular] Toolbar Custom Components Do Not Fill Full Toolbar Height Due to Framework Wrapper |
| AG-17871 | Defect | [Clipboard] When pasting a large number of cells in batch-edit, paste is very slow |
| AG-17868 | Defect | [Regression] Row Span Is Not Updated After Dynamic Row Group Changes |
| AG-17864 | Defect | [Row Grouping] [Regression] Auto group column for a newly added row group is placed at the front instead of appended with groupDisplayType 'multipleColumns' |
| AG-17859 | Defect | Context Menu Tooltip Is Not Constrained to the Viewport for Long Unbroken Content |
| AG-17819 | Defect | [Column Filters] [React] Custom floating filter using onModelChange triggers spurious deprecation warning #286 |
| AG-17818 | Defect | [Regression] [macOS] Row Dragging Resets Vertical Scroll Position After Auto-Scroll Drop |
| AG-17794 | Defect | [Theming] pinnedRowBackgroundColor not applied to rows set via pinnedTopRowData / pinnedBottomRowData |
| AG-17789 | Defect | [Regression] When using new filters tool panel, not setting enableFilterHandlers=true throws an exception |
| AG-17741 | Defect | [Viewport] RowModel leaves nodes at stale indexes, orphaning row ctrls |
| AG-17736 | Defect | [SSRM] expandAll() and node.setExpanded() expand non-expandable last pivot group level |
| AG-17735 | Feature Request | Setup TypeDoc Validation To avoid breaking End Users |
| AG-17725 | Defect | [TreeData] [RowDragging] rowDragMultiRow drags only one row when groupSelects='filteredDescendants' |
| AG-17718 | Defect | params.setTooltip not reset when a same-class cell renderer instance is replaced or re-rendered |
| AG-17702 | Defect | [Regression] ARIA description container changes scroll size of containing page |
| AG-17700 | Defect | [Theming] themeMaterial.withPart(colorSchemeDark) does not apply dark header colors |
| AG-17696 | Defect | [Keyboard Navigation] When pressing ESC from Column chooser focus returns to viewport instead of original element |
| AG-17691 | Defect | [Tooltips] When using cellRendererSelector tooltipShowMode is not respected |
| AG-17690 | Defect | [Regression] Integrated Charts Do Not Render Data from Columns with hide: true |
| AG-17689 | Defect | [TreeData] Filler nodes always show a checkbox even if isRowSelectable returns false |
| AG-17688 | Defect | [Cell Editing] When using a Popup editor with invalidEditValueMode set to 'block' and stopEditingWhenCellsLoseFocus set to true grid becomes uneditable |
| AG-17685 | Defect | [Cell Editing] Custom Editors error values are not reset when triggering filter change if previous value is undefined/null |
| AG-17663 | Defect | [Angular] Cell renderer tooltip not destroyed when cellRendererSelector swaps the renderer on setGridOption('rowData', ...) |
| AG-17662 | Defect | [Cell Data Type] Cell values which contain a date/datetime value as part of a string incorrectly are auto-detected as date data type |
| AG-17656 | Defect | [State] setState/initialState filter reports wrong onFilterChanged source |
| AG-17655 | Defect | [Pivoting] Filtering a pivot value column gives non-deterministic results |
| AG-17635 | Defect | Pressing SPACE key in a group row with a checkbox doesn't toggle it but scrolls the grid instead |
| AG-17617 | Feature Request | [Documentation] Clarify getValue parameter naming in ValueGetterParams |
| AG-17572 | Defect | [SSRM] Last page never fetches its data block when paginateChildRows is true |
| AG-17561 | Feature Request | [Core] Make content-visibility:auto opt-in and work around buggy browser implementations |
| AG-17470 | Defect | [Column Filters] Date Filter – "inRange" Validation Tooltip Blinks on Re-open |
| AG-17385 | Defect | Apply button remains disabled after re-adding Values column in Pivot Mode with deferred updates when pivoting but not pivot active |
| AG-17245 | Defect | [Editing][React] First cell of new row is not in edit mode when tabbing through virtualized columns |
| AG-17223 | Feature Request | [Documentation] Clarify partialColumnState per-section expectations |
| AG-17220 | Defect | Custom Inner Header Components get destroyed every time column definitions are updated |
| AG-17120 | Defect | [Tooltips] When in a batch edit, hovering cells with pending values does not show the tooltip |
| AG-17118 | Feature Request | [Pagination] Add Page Number Navigation Component (with Ellipsis) |
| AG-17054 | Defect | [Regression] [Column Filters] Floating Filter Drops Characters with Multi Filter When Typing (Timing-Sensitive) |
| AG-17044 | Defect | [bigInt] Custom bigintParser not applied during filtering and not used by Advanced Filter |
| AG-16723 | Defect | [Column Pinning] Pin indicator is shown during drag even when pinning is locked |
| AG-16527 | Defect | [Regression] When wrap text is toggled off the header height is not reducing |
| AG-16390 | Defect | [Cell Editing] When a column which uses rich select cell editor is only partly displayed, starting an edit opens the editor but show its filter list popup |
| AG-16350 | Defect | Column Header filter/menu buttons reopen their popups when clicked a second time instead of simply closing |
| AG-16257 | Defect | [Firefox] When editing just a single component of the date value in Firefox, cell value is not updated |
| AG-16228 | Defect | Custom Columns Tool Panel layout not preserved when columnDefs are programmatically reset despite suppressSyncLayoutWithGrid=true |
| AG-16158 | Defect | When using multi-sort including the group column, clearing the group column sort from the row group panel still shows the sort index in the group column |
| AG-15954 | Feature Request | Investigate potential memory leak in React due to grid cells detached |
| AG-15636 | Defect | Navigating vertically through colSpanned rows loses column position |
| AG-12609 | Feature Request | [Columns Tool Panel] Allow displaying a custom context menu for items in the columns list of the column tool panel |
| AG-11476 | Feature Request | [Master/Detail] Allow isGroupOpenByDefault callbacks to apply to master/detail grid |
| AG-9664 | Feature Request | [Pivoting] Allow sorting the pivot columns by clicking their headers in the pivot panel or the column tool panel |
| AG-5004 | Defect | When setting colDef.tooltipField, hovering an aggregated column cell in a group row, the tooltip shows the underlying value, not the aggregated one shown in the cell |
| AG-115 | Feature Request | [Column Header] Allow editing column header text via the UI |

### 36.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17882 | Defect | [Regression] When typing in a floating filter input with a multi-filter typing and pressing backspace key while rows are refreshed doesn't clear the typed value |
| AG-17865 | Defect | [Regression] When a Floating Filter Is Focused horizontal scrolling snaps back to floating filter input location |

### 36.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17821 | Defect | [Regression] Group row values are horizontally scrolled by default and setting embedFullWidthRows has no effect |
| AG-17790 | Defect | [Regression] When auto-sizing columns in a grid with no rows, column headers are collapsed to minHeight instead of fit the header value |
| AG-17779 | Defect | [Pinned Rows] [Regression] [React] Updating pinnedTopRowData/pinnedBottomRowData via state does not render new rows |
| AG-17717 | Defect | [Regression][Accessibility] setGridAriaProperty sets attributes to the wrong element |

### 36.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17587 | Defect | Empty filter objects not applying to table when calling gridApi.setState |
| AG-17586 | Defect | When grandTotalRow is shown, calling api.setState() asynchronously hides the grand-total row |
| AG-17580 | Defect | [Column Sizing] [React] Two pending auto-size operations during a row-data update freeze the tab in an infinite loop |
| AG-17559 | Feature Request | [API] Expose Grid Container Element via GridAPI |
| AG-17514 | Defect | [Column State] getColumnState() returns undefined for sortType instead of null on unsorted columns |
| AG-17479 | Defect | [Regression] Set Filter Incorrectly Shows Underlying Values on Pivot Result Columns |
| AG-17446 | Defect | [Bug] Custom filters MultiFilter break getStructuredSchema |
| AG-17401 | Feature Request | [Pagination] Add Object-Based Configuration for pageSize and rowSummary Panels |
| AG-17396 | Defect | [Layout] Column auto-size gives incorrect size when the grid is inside a scaled parent |
| AG-17395 | Feature Request | [Quick Access Toolbar] Improve Responsive Overflow Behaviour in Narrow Layouts |
| AG-17383 | Defect | [Regression] [Set Filter] Async values callback throws error if grid is destroyed before callback resolves |
| AG-17380 | Feature Request | [Documentation] Clarify Set Filter default-mode behaviour when setFilterModel is applied against an empty value |
| AG-17362 | Defect | [Grid] Checkbox test IDs disappear in column chooser when virtual list is scrolled |
| AG-17350 | Feature Request | Add a skill for upgrading the grid/chart versions |
| AG-17349 | Feature Request | [Angular] Update Min Version to v20 |
| AG-17303 | Defect | Column tool panel shows 0 columns when switching pivot mode off in SSRM with api.setPivotResultColumns |
| AG-17235 | Feature Request | [Zero Configuration] Support Auto-Generated Columns from Data Sources |
| AG-17039 | Feature Request | [Aggregation] Reorder aggregation functions in list to reflect usage frequency |
| AG-16834 | Feature Request | [Core] Render grid rows & columns in a single scrolling container (instead of separate containers for pinned columns/rows) |
| AG-16668 | Defect | [Pivoting] enableStrictPivotColumnOrder: true does not re-sort pivot columns on second pivot-mode entry |
| AG-16524 | Feature Request | [Styling] Use col-resize mouse cursor when resizing columns and row-resize mouse cursor when resizing rows |
| AG-16308 | Defect | Row hover and alignment issues when Auto Group Column is pinned with pagination enabled |
| AG-16296 | Feature Request | [Column Filters] Return Date-Only Values in Filter Model for cellDataType = 'date' |
| AG-15808 | Feature Request | [Overlay] Update the DOM structure so the overlay is rendered as a sibling of the grid rather than its child to be fully compliant with ARIA specs |
| AG-15213 | Feature Request | [Theming] Add a theming parameter to allow customising the minimum height of the grid |
| AG-14985 | Defect | [Firefox] When scrolling to the middle of the grid and filtering not all rows are rendered |
| AG-14740 | Feature Request | [Pagination Panel] [Status Bar] Improve Responsive Behaviour in Narrow Layouts |
| AG-14628 | Feature Request | [Tooltip] Inherit colDef Tooltips in Group Columns and Group Headers |
| AG-14408 | Feature Request | [Scrolling] Avoid header row rendering lag when scrolling horizontally |
| AG-13924 | Feature Request | [Integrated] Allow keeping the chart series order state when the grid is restored, or sort/groups/columns are updated |
| AG-9850 | Feature Request | [Aggregation] Show Aggregated Values Relative to Other Column Values |
| AG-6841 | Feature Request | [Calculated Columns] End-user-defined computed columns via expression |
| AG-6377 | Feature Request | [Pagination] Support Direct Page Navigation via Input |
| AG-5835 | Feature Request | [Excel Export] Allow CSV/Excel export via context menu on iOS devices |
| AG-5601 | Feature Request | [Column State] Allow saving/restoring the order of aggregated value columns as part of column state when pivoting by a column |
| AG-4956 | Feature Request | [Charts] Add a Gantt chart |
| AG-4323 | Feature Request | Allow refData mapping to work for fields used as pivot labels |
| AG-3357 | Feature Request | [Accessibility] Allow screen reader to read correct column names and rows when using pinned columns |

### 35.3.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17384 | Defect | [SSRM] [Row Pinning] Duplicate Grand Total Rows rendered when filtering |

### 35.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17286 | Defect | [React] Bulk adds causes cells to flicker |
| AG-17228 | Defect | [Column Spanning] Focus lost and incorrect cell update when using Page Down / CMD+Down with column spanning |
| AG-17221 | Defect | [Row Grouping] agGroupCellRenderer + grandTotalRow + innerRenderer causes "Maximum update depth exceeded" when changing row groupings |
| AG-17197 | Defect | [React] Default Rendering of Cells is now Flashing in more cases |
| AG-17129 | Feature Request | [Theming] Bottom row border is missing in auto height mode when height of rows is less than minimum viewport height |
| AG-17116 | Defect | [Formulas] Integrated Charts not evaluating formulas for axis labels |
| AG-17114 | Defect | [RowGrouping] When suppressGroupChangesColumnVisibility is suppressShowOnUngroup the column is made visible on ungroup |
| AG-17106 | Defect | [SSRM] Collapsing a parent group with a custom group cell renderer does not preserve scroll position |
| AG-17102 | Defect | [Column Sizing] sizeColumnsToFit reverses columns order |
| AG-17093 | Defect | [Grid] Cell selection RAF callbacks accumulate unboundedly when tab is backgrounded during refreshCells |
| AG-17086 | Defect | [Column Headers] setTooltip in custom innerHeaderComponent throws when column virtualizes before React portal flush |
| AG-17053 | Defect | [Context Menu] [Popup Parent] Column Chooser not destroyed on grid unmount when using popupParent |
| AG-17051 | Defect | [SSRM] AG Grid skeleton cell loader do not appear when using SSRM and suppressServerSideFullWidthLoadingRow, and groupDisplayType is 'groupRows' is groupRows |
| AG-17050 | Defect | ValidationModule doesn't warn about missing RowSelectionModule when ServerSideRowModelModule is registered |
| AG-17046 | Defect | [Rich Select] agRichSelectCellEditor search does not return item matching keyboard entry |
| AG-17020 | Defect | [Aggregation][Staging only] the suppressAggFilteredOnly is not working properly |
| AG-17009 | Feature Request | [Row Grouping] Allow Horizontal Scrolling in Row Group and Pivot Panels |
| AG-17007 | Defect | When using Set Filter within Multi Filter with enableFilterHandlers and floating filters, the Set Filter list does not update when the floating filter is used after the filter UI has been opened |
| AG-16998 | Defect | [Cell Editing] Rich select editor throws error when a custom cell renderer function is used |
| AG-16974 | Defect | [Regression] pinnedTopRowData/pinnedBottomRowData values not shown in pivot mode columns |
| AG-16878 | Feature Request | [Formulas] Allow formulaDataSource to have better performance |
| AG-16845 | Feature Request | [Column Filters] [Docs] Custom Filter Logic page incorrectly lists Set Filter and Multi Filter as supported |
| AG-16844 | Defect | [Row Pinning] [Row Height] Only last pinned row expands to fit content |
| AG-16818 | Defect | [Regression] [Row Grouping] groupMaintainOrder not restoring original group order after clearing Quick Filter |
| AG-16643 | Defect | [Regression] When using Suspense and changing columnDefs the pinned columns disappear |
| AG-16543 | Feature Request | [Excel Export] Preserve Empty Cells on Excel Export Across Parsers |
| AG-16517 | Defect | Setting colDefs twice causes total cols to be recreated with the wrong id |
| AG-16487 | Defect | [SSRM] [Regression] Calling api.refreshServerSide to load rows doesn't re-sort and also doesn't clear the column header sort indicator |
| AG-16267 | Defect | [Regression] valueParser is called multiple times before editing stops |
| AG-12557 | Feature Request | [Toolbar] Add Configurable Quick Access Toolbar |
| AG-12304 | Feature Request | [Sidebar] Allow scrolling through the buttons in the sidebar when they can't all be rendered |
| AG-9670 | Feature Request | [Pagination] Allow hiding/reordering Pagination Panel components |
| AG-9654 | Feature Request | [React] Make colDef. pivotComparator property reactive |
| AG-8439 | Feature Request | [SSRM] Add support for grand total footer row when using server-side row model |
| AG-5377 | Feature Request | [Excel Export] Allow adding comments into the exported cells in Excel |
| AG-4695 | Feature Request | [Sidebar] Allow rendering the sidebar buttons horizontally on top above column header row |
| AG-4081 | Feature Request | [Row Grouping] Allow scrolling through the group columns in the row group panel/pivot panel |
| AG-3773 | Feature Request | [Cell Rendering] Allow adding/showing Excel-like comments to grid cells |

### 35.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-17026 | Defect | [Docs] frameworkTransform throws error when code snippet has variables |
| AG-17024 | Defect | [Regression] ColumnChooser requires ColumnsToolPanelModule |
| AG-17001 | Defect | [Theming] themeCssLayer breaks with multiple grids |

### 35.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16930 | Defect | [Regression] When dragging along the grid left vertical edge, dragged row stops moving together with mouse pointer and remains in place while mouse keeps moving |
| AG-16898 | Defect | [Regression] [Set Filter] Filter list values incorrectly formatted using valueFormatter |
| AG-16880 | Feature Request | [Documentation] Update Row Span support in Row Model Comparison documentation |
| AG-16876 | Defect | [Column Filtering] When switching from BETWEEN to EQUALS date filter shows error message |
| AG-16847 | Defect | [Sidebar] Calling api.openToolPanel with a parent element creates duplicate buttons and mutates the tool panel's config |
| AG-16837 | Defect | [Regression] [Angular] [Testing] Angular + Jest: Timeout when using fixture.whenStable() |
| AG-16816 | Defect | [Rich Select Editor] Selected value is not highlighted on open |
| AG-16813 | Defect | [Regression] When using the Group Column Filter and an underlying column does not have a filter defined, an error is thrown |
| AG-16812 | Defect | [Column Sorting] When using api.setState() Absolute Sorting is ignored |
| AG-16805 | Defect | [Regression] Inconsistent onCellValueChanged.newValue behaviour with valueGetter across versions |
| AG-16804 | Defect | [Cell-Editing] Virtualization causes onRowEditingStopped event to fire multiple times |
| AG-16800 | Defect | [Regression] Cell Loses Focus After Closing Popup Editor with ESC |
| AG-16789 | Feature Request | Allow different versions of the grid to be used on the same page |
| AG-16708 | Defect | Calling rowNode.setDataValue during batch mode does not write in the batch |
| AG-16676 | Defect | [Regression] [Cell Editing] Cell change flashing is delayed for Undo/Redo, Delete, and Fill Handle |
| AG-16635 | Feature Request | [Website] Changelog version column filter does not order by version |
| AG-16514 | Feature Request | [Cell Editing] Incremental / Server-side Loading for Rich Select Cell Editor Options |
| AG-16468 | Feature Request | [API] Consistently export interfaces as type only exports |
| AG-16467 | Feature Request | [API] Add jsDoc tags to all internally exported functions and Types |
| AG-16420 | Defect | [Accessibility] When using JAWS the date filter operators are not announced when going through the dropdown list |
| AG-16238 | Feature Request | [Rich Select Editor] Add support for allowTyping and multiSelect in the agRichSelectCellEditor |
| AG-16034 | Feature Request | [Row Dragging] Always show row dragger and show mouse cursor "not allowed" over the row dragger and a tooltip when it's not available instead of hiding it |
| AG-15833 | Defect | [Touch] When using an iOS device, tapping and holding a column header cell/columns tool panel item doesn't open context menu |
| AG-15521 | Feature Request | [Animation] Allow showing an animated sliding effect for the tool panels when they are shown and hidden |
| AG-15313 | Defect | When using object-based editors with plain values, objects are incorrectly shown as strings |
| AG-14783 | Defect | [Regression] When using Vue the custom processDataFromClipboard function to insert rows at the bottom of grid does not work first time |
| AG-14654 | Defect | [Regression][Vue] Change Detection - rows are not refreshed on update when being used with row ids |
| AG-14608 | Feature Request | [Cell Rendering] Add support for custom cell renderers in the row numbers column |
| AG-14550 | Defect | [Scrolling] When refreshing the page in Firefox and React, the scroll position does not reset to the top of the grid and no rows are shown |
| AG-14250 | Defect | [Vue] When using v-model pressing TAB after editing loses focus |
| AG-13467 | Feature Request | [Keyboard Navigation] Allow overriding the default focus moving between inner grid containers |
| AG-7444 | Feature Request | [Accessibility] Allow cells displaying a sparkline to be announced by screen readers |
| AG-4324 | Feature Request | [Row Grouping] Allow automatically hiding an auto-group column if none of the row groups in its parent row-group levels are expanded |
| AG-3471 | Feature Request | [Column Tool Panel] Allow Deferred Updates in columns tool panel |
| AG-3373 | Feature Request | [Cell Editing] Allow editing aggregated cell values when pivoting |
| AG-1190 | Feature Request | [Row Grouping] Allow keeping the expanded/collapsed state of group rows when adding or removing group columns |

### 35.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16726 | Defect | [Themes] Components inside sticky footer have incorrect border-box when using MUI CssBaseline |
| AG-16700 | Feature Request | [Localisation] Allow interpolating "Group By"/"Ungroup by" translation instead of concatenating |
| AG-16688 | Defect | [Regression] Editor remains open when focusing another cell after editing an empty cell |
| AG-16687 | Defect | Duplicate Tooltips are created after edit |
| AG-16678 | Defect | [Regression] onCellValueChanged does't use valueSetter and valueGetter values accurately |
| AG-16664 | Defect | [Regression] suppressCellSelectionIntegration breaks when dragging a row number cell |
| AG-16636 | Feature Request | [Excel Export] Allow adding custom metadata support to Excel exports |
| AG-16634 | Defect | Pressing BackSpace key on an unedited cell causes null value in valueFormatter |
| AG-16622 | Defect | [MCP] Latest versions aren't picked up by MCP tools |
| AG-16607 | Defect | valueSetter called twice on paste |
| AG-16542 | Defect | [Row Selection] When collapsing/expanding detail grids the row selection state is not retained |
| AG-16534 | Defect | [Column Filters] When using the Multi Filter with buttons and providing new column definitions, the buttons disappear if the filter had been interacted with |
| AG-16533 | Defect | [Cell Editing] When using Fill Mode and setting `valueSetter: () => false` cell value is removed |
| AG-16483 | Feature Request | [Theming] Allow element as themeStyleContainer |
| AG-16480 | Defect | [Filters Tool Panel] When using the new filters tool panel and setting an initial set filter model with asynchronous values, the summary in the panel is not formatted correctly |
| AG-16479 | Defect | [Selection] Regression: sourceRowIndex is -1 for all rows when row selection is enabled |
| AG-16477 | Defect | [Column Sizing] scaleUpToFitGridWidth causes header and cell content truncation |
| AG-16476 | Defect | [Column Filters] Mini set filter displays [object Object] instead of values |
| AG-16470 | Defect | [Grid State] rowGroupExpansion.collapsedRowGroupIds populated incorrectly and should be optional |
| AG-16469 | Defect | Initial row data provided by props is triggering a watch update in Vue 3 |
| AG-16466 | Feature Request | [Theming] Build error when using inferred types for themes with TS declaration emit |
| AG-16465 | Defect | [Regression] When using Set Filter asynchronous values with complex objects and setting an initial filter model, the floating filter value is not formatted correctly |
| AG-16459 | Defect | [Grid State] rowGroupExpansion.collapsedRowGroupIds includes leaf node IDs |
| AG-16455 | Defect | [Row Sorting] Sorted header styling lost after column pin or hide/show |
| AG-16443 | Defect | [Regression] When row grouping, right-clicking “Ungroup” or “Remove from Values” Columns Tool Panel column list clears all other columns instead of the selected one |
| AG-16430 | Feature Request | [Cell Editing] Add a formula cell editor for editing formula expressions |
| AG-16340 | Defect | Aggregations remain stale when toggling Pivot Mode with filters applied |
| AG-16322 | Defect | Sticky group headers disappear on subsequent pages after scrolling |
| AG-16293 | Feature Request | [Angular] Slow cell selection dragging and scrolling when pivoted grid has virtualised columns |
| AG-16255 | Defect | [Overlays] When using React 19 on slower machines the loading overlay shows a white square |
| AG-16227 | Defect | [React] In SSRM, Tabbing Into The Grid From The Bottom Loses Focus |
| AG-16202 | Defect | [Filtering] When using cellDataType dateTime the min & max valid date validations do not work |
| AG-16187 | Feature Request | [Theme Builder] Allow uploading an existing theme into the theme builder so it can be edited |
| AG-16182 | Feature Request | [API] Separate exports from ag-grid-community into public and internal files |
| AG-16157 | Defect | [Regression][Column Sizing] Scrollbars don't disappear when data inside the grid is reduced to fit within the viewport |
| AG-16104 | Defect | [Regression] Aggregation not triggering for parent item when using treeData with a valueSetter |
| AG-16090 | Defect | [Regression] When many grids are shown on page, theming via Theming API is slower |
| AG-16019 | Defect | [SSRM] Repeating remove transaction corrupts store and deletes unrelated rows |
| AG-16017 | Feature Request | [Column Sizing] Allow vertical scrollbar to be assumed visible during initial column sizing to avoid unnecessary column resizing |
| AG-15513 | Defect | When using the Material theme with autoSizePadding, column resizing causes cell content to be truncated |
| AG-15351 | Defect | When using React custom drag and drop components, the drag move icon flickers from the left and remains stuck on the last state when quickly moving out of the grid |
| AG-15310 | Feature Request | [Tooltips] Add a new property to allow delaying tooltip appearance upon subsequent hovers |
| AG-14571 | Feature Request | [Filters] Built-in named & relative date ranges |
| AG-14338 | Feature Request | [Excel Export] Allow sheets to be passed in any order when using exportMultipleSheetsAsExcel |
| AG-14335 | Defect | [Regression] When using range/cell selection, creating a range and changing its size is slower |
| AG-14324 | Defect | [Pagination] When using standard DPI screens the pagination text is not aligned with the page chevrons |
| AG-13743 | Defect | [Pagination] When using smaller screen sizes the pagination bar is clipped |
| AG-12960 | Feature Request | [Types] Add Named types for Top level GridOptions and ColDefs |
| AG-12920 | Feature Request | [Cell Data Types] Add Native BigInt Data Type Support |
| AG-12473 | Feature Request | [Website] Update the Performance demo example and provide source code |
| AG-12397 | Defect | Total row sticky container shows full-width border when positioned at bottom |
| AG-12324 | Defect | When row grouping, tooltips are shown for non-truncated values in the auto-group columns even though tooltipShowMode: 'whenTruncated' |
| AG-9710 | Defect | [Layout & Styling] Grid header has a default 1px border regardless of headerHeight or custom border |
| AG-5459 | Feature Request | [Excel Export] Allow exporting a password-protected Excel worksheet |

### 35.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16614 | Defect | [Regression] When dragging leaf row into another group node is not created |
| AG-16610 | Defect | [Regression] Full Row Editing leaves empty cell editors active when tabbing to the next row |
| AG-16509 | Defect | [Regression] When using tree data sorting the autoGroupColumn doesn't apply to group rows, only leaf rows |
| AG-12426 | Feature Request | [Excel Export] Allow adding Azure Information Protection sensitivity labels to exported Excel files |

### 35.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16415 | Defect | [Theming] Periods are incorrectly escaped in CSS layer names |
| AG-16383 | Feature Request | [Row Dragging] Allow row drag icon to show "Not available" icon when hovering on it after sorting |
| AG-16356 | Defect | [Regression] Exception thrown when suppressMaintainUnsortedOrder=true, providing a row Id value and updating row data with a removed row |
| AG-16345 | Defect | Batch Editing displays “[object Object]” when editing object values using the Rich Select Editor |
| AG-16338 | Defect | [Regression] [Safari] Significant slowdown when initialising a grid and when grouping columns in Safari |
| AG-16330 | Defect | [Regression] Column Filter not applied when the Clear button is clicked when an Apply button isn't present |
| AG-16327 | Defect | Grand total row disappears after restoring grid state when grandTotalRow: "pinnedBottom" |
| AG-16319 | Defect | [Regression] Batch Editing session misses last change when stopEditingWhenCellsLoseFocus=true |
| AG-16310 | Defect | ChildrenAfterSort of parent node returns an empty array during isGroupOpenByDefault invocation |
| AG-16301 | Defect | [Regression] Batch Editing session does not capture clipboard-pasted values |
| AG-16297 | Defect | [Regression] onCellValueChanged reports newValue as oldValue for boolean fields after another cell is edited |
| AG-16294 | Defect | [Regression] "startEditingCell" on a non-editable cell does not start full-row edit when editType='fullRow' |
| AG-16292 | Defect | [Regression] "Clear" button in agDateColumnFilter does not clear invalid input |
| AG-16290 | Defect | [Column Headers] InnerHeaderComponent does not call refresh method |
| AG-16286 | Feature Request | [Theming] Documentation and themeStyleContainer update to support users of themeCssLayer |
| AG-16285 | Defect | [Regression] Highlighted divider appears on wrong side when moving columns in RTL mode |
| AG-16282 | Defect | Translation keys missing for pinned row context menu items, so they cannot be localized |
| AG-16280 | Feature Request | [Integrated] Refine Handling of Row-Grouped Columns in the Charting API |
| AG-16279 | Feature Request | [Loading] Allow all loading UI to show a spinner alongside the text |
| AG-16278 | Defect | When enabling Advanced Filter whilst the New Filters Tool Panel is open with Set Filters expanded, the grid crashes |
| AG-16277 | Defect | [Regression] Tabbing through Floating Filters focuses the filter cell instead of the input field |
| AG-16271 | Defect | [Regression] When rowDragEntireRow=true, clicking on a cell does not focus it via a touch |
| AG-16230 | Feature Request | [Theming] Prevent legacy grid themes from conflicting with Charts |
| AG-16224 | Defect | [Regression] Updating className prop in React after grid initialisation removes theme styles |
| AG-16211 | Defect | [Regression] When a cell editor is closed, the fill handle for the cell can't be dragged anymore |
| AG-16210 | Defect | [Regression] When enableGroupEdit=true changing a cell value causes valueChanged=false in onCellEditingStopped |
| AG-16203 | Defect | [Regression] When returning false for tabToNextCell the focus incorrectly moves into the next row after tabbing |
| AG-16197 | Defect | When in a batch edit, the colDef.valueFormatter is not applied to a new value entered in the cell |
| AG-16194 | Defect | [Regression] When using boolean checkboxes undo/redo is not working |
| AG-16193 | Defect | [Regression] When setting a Multi Filter model with Set Filter values that are not in the data, the filter is not applied correctly |
| AG-16174 | Defect | [Regression] When pivoting with sparklines shown in columns, missing data causes an exception and stops subsequent cell rendering |
| AG-16159 | Feature Request | [Column Sizing] Animate column width changes due to column auto-sizing and size-to-fit |
| AG-16127 | Feature Request | [API] Expose the gridApi in the viewport and infinite row model data sources |
| AG-16115 | Feature Request | [Column Moving] Increase column insertion indicator line from 1px to 3px for better visibility when suppressMoveWhenColumnDragging=true |
| AG-16089 | Defect | [Regression] When a grid is initialised detached from the DOM, theming via Theming API is slower |
| AG-16085 | Defect | [Regression] When providing no cellEditor component, editing a cell throws an exception |
| AG-15995 | Feature Request | [Typing] Remove cellDataType from columnTypes type as it's not supported |
| AG-15892 | Feature Request | [Row Dragging] Increase insertion indicator line from 1px to 3px for better visibility when suppressing dragging |
| AG-15813 | Feature Request | [Integrated] Refactor the Integrated Charts tooltips to use the Global formatter |
| AG-15731 | Defect | [State] When using agSelectableColumnFilter in the new filter tool panel, the selected filter type isn't kept in grid state |
| AG-15493 | Defect | When using a touch device with rowDragEntireRow = true, grid can't be scrolled via touch |
| AG-15285 | Feature Request | [Selection] Allow CTRL+Click on row numbers to deselect rows within a range |
| AG-15015 | Feature Request | [Frameworks] Remove support for Angular 17 due to reaching its end of life |
| AG-14772 | Feature Request | TypeScript definition for autoGroupColumnDef includes colId which actually cannot be set |
| AG-14210 | Feature Request | [Filter Tool Panel] Allow the filter tool panel to show "filtered" icon when a column filter is applied instead of an "unapplied" filtering icon |
| AG-13834 | Feature Request | [Row Selection] Allow clicking the cell but outside the checkbox in selectionColumn not to reset selection |
| AG-13490 | Feature Request | [Row Sorting] Allow absolute sort as a built-in column sort option |
| AG-13321 | Defect | [Transactions] When changing groups, rows don't adhere to their source order |
| AG-13043 | Feature Request | [Floating Filters] Display default and custom placeholder text and a magnifying glass icon in the floating filter input |
| AG-11989 | Feature Request | [Integrated] Allow restoring to original Chart category selection when the row grouping is removed |
| AG-10917 | Defect | [Integrated] Charts cannot save or restore non-group columns as the category |
| AG-10672 | Feature Request | [Excel Export] Allow displaying an overlay while the CSV/Excel export is in progress |
| AG-9995 | Feature Request | [Column Filters] Add a new overlay to display message "No matching rows" when no results from filtering |
| AG-9792 | Feature Request | [Cell Editing] Allow async loading of matches when typing in the agRichSelectCellEditor input |
| AG-6477 | Feature Request | [Column Filter] Allow in-range filters to ensure that the "from" value is smaller than the "to" value |
| AG-6151 | Feature Request | [Overlay] Allow building custom overlays, instead of just providing components for loadingOverlayComponent and noRowsOverlayComponent |
| AG-5382 | Feature Request | [Row Dragging] Add support for row dragging when row grouping (for row groups and child rows) |
| AG-4178 | Feature Request | [Column Sizing] Allow suppressing auto-size on a column via any means by the user (Column Menu Auto-size THIS column/ auto-size ALL columns, user double-click on column header edge) when colDef.suppressAutoSize=true |
| AG-3953 | Feature Request | [Cell Editing] Allow users to enter a formula in a grid cell to compute its value based on other cells (just like in Excel) and use a cell range for formula input |
| AG-3792 | Feature Request | [Column Menu] Allow adding custom menu tabs to the column menu |
| AG-1792 | Feature Request | [Range Selection] Allow selecting all the cells in a column (the entire column) or multiple columns by holding CTRL/CTRL+SHIFT key pressed and clicking the column header cell (just like Excel) |

### 34.3.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16208 | Defect | [Regression] Changelog shows DEPRECATION NOTES and BREAKING CHANGE values as [object Object] |
| AG-16200 | Defect | [Regression] initialGroupOrderComparator does not get called |
| AG-16188 | Defect | [Regression] When editing a cell with a null value cancelling the edit changes the value to undefined |
| AG-16183 | Defect | [Regression] Read-only columns become editable when only read-only columns are visible |
| AG-16138 | Defect | When pivoting is enabled, the Add Filter functionality in the New Filters Tool Panel lists pivot result columns instead of underlying columns |

### 34.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-16139 | Defect | [Regression] When using cross-filtering in charts, legend items aren't fully displayed if there are more segments than defined fill colours and colors are reused |
| AG-16117 | Defect | When enabling Advanced Filter whilst the New Filters Tool Panel is open with active filters, the grid crashes |
| AG-16073 | Defect | [Regression] When sorting a column header, calling api.autoSizeAllColumns and scrolling to the right edge hides the column headers from the column header row or scrolls back to the sorted column |
| AG-16072 | Feature Request | [Theme Builder] Add dataBackgroundColor variable to Theme Builder |
| AG-16069 | Defect | [Regression] When using SSRM unmanaged row drag throws null reference exception when dragging a row |
| AG-16065 | Defect | [Regression] When pivoting in SSRM with expanded groups the groups expansion state is preserved incorrectly |
| AG-16064 | Feature Request | [Theme builder] "Search theme params" field not to clear upon blur event |
| AG-16063 | Defect | [Filters Tool Panel New] When filtering on a Date column, with real Dates, the date value is not shown in the collapsed filter card |
| AG-16039 | Defect | [Regression] When copying a cell range and pasting inside a range double its size, the copied cell range is pasted an extra time outside of the selected cell range |
| AG-16031 | Defect | [Regression] When row grouping with a group total row, expanding the row group still shows aggregated column values in the group row |
| AG-16015 | Defect | [Regression][React] RichSelectEditor with readOnlyEdit fires extra CellEditingStopped events |
| AG-16012 | Defect | [Regression] Chrome only - Some rows don't render after changing grid's container CSS height property |
| AG-16008 | Defect | [Charts] Console error when using paired mode control in integrated charts |
| AG-16007 | Defect | When providing initialState with a sort for a non-existing colDef the grid returns an invalid state object |
| AG-16006 | Defect | [Regression][Tree Data] When executing an update creating a new filler node ignores its expanded state |
| AG-16003 | Defect | [Column Filters] Allow filter being applied when buttons are defined on filter params of child filters of Multi Filter |
| AG-16002 | Defect | [Regression] When using rich select editor and providing a custom cell renderer for the editor, the cellRendererParams are not passed to the renderer inside the editor |
| AG-16001 | Defect | [Regression][Column Filter] SSRM Multi Column Filter goes into an infinite loop with certain filtering actions |
| AG-16000 | Feature Request | [Website] SSRM Multi Column Filter example refreshes unnecessarily |
| AG-15999 | Defect | [Regression] Pivot Chart not showing all pivot level labels in the legends unless the pivot group is expanded |
| AG-15997 | Defect | When entering a text filter in a multi-filter, clicking the reset button clears the text filter but doesn't update the set filter |
| AG-15989 | Defect | [Regression][React][Filter Tool Panel] New Filter Tool Panel initial state filter model not loading with React 18 |
| AG-15985 | Defect | [Regression] When suppressDragLeaveHidesColumns=true, reordering a column in the grid, calling getColumnDefs returns the old column defs order |
| AG-15984 | Defect | [Regression] When using set filter with defaultToNothingSelected and providing values, checking the SELECT ALL item doesn't filter out items which don't appear in values |
| AG-15981 | Defect | [Excel Export] When exporting to Excel as a table, the table range isn't named the same as the table |
| AG-15965 | Feature Request | [Pivoting] Allow date column values to be pivoted with multiple levels, just like they're grouped |
| AG-15956 | Feature Request | [Localization] Add localisation of the date part names when using date row grouping hierarchy |
| AG-15950 | Defect | With spanRows + enableCellSpan, toggling rowGroup throws error |
| AG-15947 | Feature Request | [Row Grouping] Allow grouping/pivoting dateString values when row Grouping/pivoting by Dates and Times |
| AG-15937 | Defect | [Regression] When a column has flex and autoSizeStrategy set, no columns are shown |
| AG-15918 | Defect | [Grid Options] Global Grid Options Ignored when updating via props |
| AG-15901 | Defect | [Regression] When using the Multi Filter and updating the filter model via API, the child filter UIs are not updated correctly |
| AG-15858 | Defect | [Regression] When using floating filter focus gets lost if dynamically setting other gridOptions based on filter |
| AG-15845 | Defect | [Regression] Complex values from valueGetter aren't being persisted before valueSetter is called |
| AG-15842 | Defect | When focusing a cell with a select or rich select editors and pressing Backspace key, the editor popup opens but the value isn't cleared |
| AG-15827 | Defect | [Clipboard] When pasting cells from clipboard into a larger selection sometimes selection is incorrectly enlarged |
| AG-15819 | Defect | [Regression] Calling api.refreshHeader() no longer updates the group headers |
| AG-15817 | Defect | [Regression] Grouped rows of duplicate x values are stacked incorrectly in Integrated Charts |
| AG-15811 | Defect | [Row Grouping] When using context menu in sidebar to add column groups to row grouping enableRowGroup=false is not respected |
| AG-15793 | Defect | When using custom cell editor and enterNavigatesVerticallyAfterEdit onCellFocus prints excessively and increments rowIndex |
| AG-15791 | Defect | ag-row-inline-editing Class Not Getting Removed After Inline Editing |
| AG-15757 | Defect | Drag and drop not working when scrolling the grid while dragging |
| AG-15751 | Defect | [Theming] When setting headerHeight via theme parameters, column chooser title bar gets the same height |
| AG-15438 | Feature Request | Provide an MCP server for the grid |
| AG-15114 | Feature Request | Add an AI Toolkit to enable AI to interact with the grid |
| AG-14987 | Defect | [Firefox] When scrolling directly to middle of grid, rows do not appear upon refresh of page |
| AG-14958 | Defect | [SSRM] When setting colDef.cellEditorPopup=true and scrolling beyond the cached block rows, the cell editor is closed |
| AG-14766 | Defect | [Firefox] When pasting in a cell, a popup menu with a paste option is displayed |
| AG-14761 | Defect | [Integrated] Pie / donut sectorLabel control not working in custom themes |
| AG-14592 | Defect | [Accessibility] When using master/details the role is set as grid instead of treegrid |
| AG-14428 | Defect | [Styling] When enableCellTextSelection={true} boolean data type checkboxes get cut off when clicked on |
| AG-14416 | Defect | When using tree data, setting colDef.aggFunc works but the column menu doesn't show an aggregations submenu and the header doesn't show the aggFunc name |
| AG-14171 | Defect | When row grouping, the grid does not respect the group column order provided unless rowGroupIndex is set |
| AG-13835 | Feature Request | [Selection] Allow pressing CTRL+A to select all rows instead of all cells when both row and cell selection are enabled |
| AG-13548 | Defect | When using aligned grids with flex columns, resizing the grid width causes the column widths to be misaligned |
| AG-13149 | Defect | cellEditorPopup causes onCellFocused to be called when losing focus |
| AG-13005 | Defect | [Scrolling] *Mac only* - When opening a context menu or charts next to a scrollbar and scrolling the z-index breaks and scrollbar renders on top |
| AG-12862 | Defect | [Integrated] RTL related UI issues in Integrated Charts |
| AG-12851 | Defect | [Column Spanning] colSpan is not reactive |
| AG-11882 | Feature Request | [SSRM] Allow Master rows to update their master row status (whether they display an expansion button) after a refresh, row, or transaction update |
| AG-11091 | Feature Request | When using minified client side row model a typeError occurs |
| AG-10043 | Feature Request | [Tooltip] Allow setting header tooltip via a functional callback (colDef.headerTooltipValueGetter) to generate header tooltips dynamically |
| AG-9985 | Defect | When grandTotalRow is set without row grouping the "value aggregation" submenu in the column menu isn't shown for columns with colDef.enableValue=true |
| AG-9704 | Feature Request | [Column Sizing] Add a new column auto-sizing mode that auto-sizes columns first and if there's leftover space, it scales them proportionally to fill the grid width |
| AG-8778 | Defect | When using Angular, console warning is shown "Added non-passive event listener to a scroll-blocking 'wheel' event." |
| AG-6844 | Feature Request | [Master/Detail] Allow expandAll/collapseAll API methods to expand/collapse all nested levels in a master/detail grid |
| AG-5088 | Feature Request | [Tooltip] Allow using TooltipComponentSelector to provide different tooltip components depending on the tooltip location |

### 34.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15891 | Defect | When using autoSizeStrategy=fitGridWidth/fitProvidedWidth, column headers flicker on initial render as they resize from default to desired width |
| AG-15889 | Defect | [Regression] When closing the agNumberCellEditor without changing the value, onCellEditingStopped event isn't fired anymore |
| AG-15883 | Defect | [Filter] Clearing Set Filter does not reset filtered rows if filter list previous filtered |
| AG-15882 | Defect | [State] Focus State not cleared on clearFocusedCell |
| AG-15848 | Defect | [Regression] [SSRM] When editing an SSRM cell with an aggFunc, the value is not populated in the editor |
| AG-15846 | Defect | [Regression] valueParser is called during edits |
| AG-15844 | Defect | [Regression] Row not recalculating row height on tab after edit |
| AG-15816 | Defect | [Regression] When providing new column definitions and the selected filter values match the available filter values, the Set Filter model resets |
| AG-15803 | Defect | [Tree Data] Regression - null reference in certain trees with path with multiple fillers |
| AG-15797 | Defect | [Regression] [React] When scrolling horizontally across large numbers of column editors in full row, grid loses edit state |
| AG-15796 | Defect | [Regression] Tabbing Off Cell Editing Full Row Reverts Edits |
| AG-15795 | Defect | [Selection] When using SHIFT + Click in the same row, all rows below it are selected |
| AG-15794 | Defect | [Regression] onCellEditRequest returns incorrect event source when using readOnlyEdit with agRichSelectCellEditor |
| AG-15792 | Defect | [Regression][Cell Editing] onCellEditingStopped Event returns wrong values for pivot columns when using enableGroupEdit: true |
| AG-15776 | Defect | [Typing] Stateful colDef properties should allow null value |
| AG-15775 | Feature Request | [Integrated] Allow sorting crossfiltering charts independently of the grid |
| AG-15762 | Defect | When calling api.setState with an empty object, column state is not cleared |
| AG-15740 | Defect | [Row Selection] When we switch groupSelects=filteredDescendants to 'descendants', parent rows become selectable even though all child rows remain unselectable |
| AG-15729 | Defect | [Row Grouping] When groupMaintainOrder={true}, new row groups are added out of order |
| AG-15728 | Defect | [Docs] SSRM pivoting Typescript (no framework) example doesn't generate pivot result columns |
| AG-15724 | Defect | When using enableFilterHandlers with SSRM and updating column definitions, the filter model gets reset |
| AG-15721 | Defect | [Regression] When using React, grid horizontal scrolling causes rows with autoHeight columns to flicker |
| AG-15720 | Defect | [Regression] onCellEditingStarted and onCellEditingStopped don't return correct values for value, oldValue, newValue and valueChanged |
| AG-15719 | Defect | [Regression] onCellEditingStopped event does not return correct valueChanged and newValue when using editType: 'fullRow' |
| AG-15715 | Defect | [Integrated] Treemap labels no longer displayed in Pivot Charts |
| AG-15712 | Defect | When providing an invalid cell data type and using the Multi Filter, the grid crashes |
| AG-15709 | Defect | When using filler rows in tree data boolean checkboxes cannot have an indeterminate state |
| AG-15707 | Feature Request | [Docs] Clarify Advanced Filter behaviour for columns with the same name |
| AG-15704 | Feature Request | [Testing] Test IDs for floating filters don't identify individual filter due to missing attribute in DOM node |
| AG-15692 | Defect | [Regression] When providing the buttons filter param, the group column filter incorrectly displays buttons |
| AG-15684 | Defect | [Regression] When typing into focused editable cells with object values and a value formatter, a type error is thrown |
| AG-15670 | Defect | [React] Investigate React 19 Strict Mode Compatibility Issues |
| AG-15664 | Defect | [Navigation] When using Page Down or Home/End inside a column spanning cell, focus is lost |
| AG-15663 | Defect | [Regression] When using React with SSRM, refreshing rows causes grid flicker |
| AG-15639 | Defect | [Regression] When using the Rich Select Editor with stopEditingWhenCellsLoseFocus, moving focus to another cell causes an error to be thrown |
| AG-15631 | Feature Request | [Frameworks] Review all setTimeout and setInterval usages for teardown safety |
| AG-15613 | Defect | [Regression] Text filter trim input doesn't allow typing values with space |
| AG-15579 | Defect | [Regression] When using the date filter, dateFrom in the filter model is returned as ISO string instead of plain string |
| AG-15572 | Defect | When forcing a data reload that scrolls the grid, row numbers are removed before rendering and an error is thrown |
| AG-15555 | Feature Request | [SSRM] Add support for expand all/collapse all in SSRM |
| AG-15525 | Defect | [Regression] When using a custom cell editor component, the sequencing for the getValue method is incorrect |
| AG-15523 | Feature Request | [Accessibility] Elements with role = "presentation" and tabIndex=-1 raise the warning "Ensure elements with an ARIA role that require child roles contain them" with AXE tools |
| AG-15477 | Defect | When setting the side bar dynamically, SHIFT + TAB causes focus to loop within the side bar |
| AG-15476 | Defect | [Regression] When using class instances as row data, Object.assign removes class methods and breaks functionality |
| AG-15421 | Defect | [Performance] [SSRM] [Clipboard] When selecting a cell range spanning many rows, pressing Ctrl+C to copy the cell range, performance is slow |
| AG-15252 | Feature Request | [Row Dragging] When the isRowValidDropPosition returns false, show a “not allowed” icon in the drag ghost popup |
| AG-15087 | Feature Request | [Accessibility] Investigate why when rows are shown or the "no rows" overlay is shown, AXE tools shows an accessibility error "Ensure elements with an ARIA role that require child roles contain them" |
| AG-15086 | Defect | [Regression] When loading overlay is shown, AXE tools shown an accessibility error "Ensure elements with an ARIA role that require child roles contain them" |
| AG-15021 | Defect | [Cell Editing] When setting suppressCellFocus={true} cell editors do not close after double click editing |
| AG-14991 | Defect | [Column Header] When updating column definitions InnerHeaderComponent does not refresh |
| AG-14989 | Defect | [Row Numbers] When selecting all via rowNumber header the cells cannot be copied |
| AG-14947 | Defect | [Cell Editing] When using Safari the cell editor loses focus when typing |
| AG-14789 | Defect | [Regression] When running an accessibility audit, an "Ensure elements with an ARIA role that require child roles contain them" error is reported |
| AG-14681 | Defect | [Editing] When the custom cell renderer calls setValue() cellEditRequest is bypassed |
| AG-14577 | Defect | [React] When using the loading overlay in SSRM, the reactivity is delayed |
| AG-14403 | Defect | [Integrated] Crossfiltering charts are not generating the correct filter models |
| AG-14220 | Defect | When tooltipTrigger='focus', tooltips aren't shown for truncated values in the default grid lists and inputs |
| AG-13742 | Defect | [Export] Excel file has extra grouping when multiple level column group headers are used in grid |
| AG-13434 | Defect | When exporting to Excel with groupRemoveSingleChildren set, the rows with a single child are contained with other group rows |
| AG-13402 | Defect | [Regression] When rendering the grid with flex set on a column that is not the last, the last column flickers |
| AG-13130 | Defect | When using React, calling api.autoSizeColumns/autoSizeAllColumns in the onRowGroupOpened event handler, the columns are not auto-sized |
| AG-11746 | Feature Request | [SSRM][Row Height] Allow calling api.resetRowHeights when using SSRM to reset row heights |
| AG-10372 | Feature Request | [Cell Rendering] Simplify handling of mouse events in custom cell renderers |
| AG-6694 | Feature Request | [Clipboard] Allow pasting copied cell ranges into smaller and larger cell ranges only pasting the cell range or multiples of it but not partially (just like Excel) |
| AG-5867 | Defect | When setting rowDrag as a function, calling api.refreshCells({ force: true }) does not re-evaluate |
| AG-4663 | Feature Request | [Drag&Drop] Allow changing the dragged ghost element renderer while dragging on onRowDragEnter (hover), move or leave event of another row |
| AG-4648 | Feature Request | [Row Grouping][Pivoting] Allow automatically grouping/pivoting date values using a date hierarchy (day, week, month, quarter, year) just like in Excel |
| AG-4640 | Feature Request | [Tool Panel] Allow tool panels (built-in and custom) to render outside of the grid as a component in an external container |
| AG-4240 | Feature Request | [Sidebar] Allow hiding the sidebar (containing the buttons) and keeping the tool panel visible |
| AG-2360 | Feature Request | [Clipboard] Allow pasting by clicking the "Paste" item in the context menu |

### 34.1.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15847 | Defect | [Regression] Pasted string pushed into Undo/Redo stack instead of cell value |
| AG-15758 | Defect | [Regression] [React] When tabbing to next/previous rows across large numbers of column editors in full row, an exception is thrown |
| AG-15726 | Defect | [Regression] [React] When hiding columns with a pinned column, the headers do not disappear |
| AG-15722 | Defect | [Regression] Updating aggFunc primary columns causes pivot grid crash when using pivotRowTotals |
| AG-15718 | Defect | [Localisation] Update missing localisation keys for Advanced Filter and ToolTips |
| AG-15699 | Defect | [Regression] onCellValueChanged always prints "commit" as source |
| AG-15698 | Defect | [Regression] When editing a cell, the value getter is not called to update the new value and valueSetter isn't invoked |
| AG-15696 | Defect | [Regression] [React] When typing into a focused editable cell without entering edit mode, the value formatter is called causing a type error when using toFixed |
| AG-15694 | Defect | [Regression] When using the Large Text Editor with undefined cell values, a Type Error is thrown |

### 34.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15675 | Defect | [React] Column Group Header Lifecycle Issue |
| AG-15659 | Defect | [Regression] When columns contain GUIDs, they are incorrectly inferred as dateString cell data type |
| AG-15575 | Feature Request | [Set Filter] Add a new method on the Set Filter UI component to return the set filter handler |

### 34.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15563 | Defect | getCellValue does not return formatted value for auto cols |
| AG-15561 | Defect | [Tree Data] When using unmanaged row dragging getFileDropIndicator does not allow you to reorder children within the same parent |
| AG-15551 | Defect | [Regression] Cell edit request not getting updated newValue if the value returned from editor is undefined |
| AG-15547 | Defect | Mouse hover row highlight fires on touch-enabled devices |
| AG-15546 | Defect | When exporting to Excel as a table, header names with '&' cause an Excel warning |
| AG-15539 | Defect | [Regression] Slow performance when pasting large cell ranges |
| AG-15530 | Defect | [Sparklines] Sparklines mis-render when AG Grid runs inside a Shadow DOM WebComponent |
| AG-15528 | Defect | [Theming] iconButtonActiveIndicatorColor parameter does not work |
| AG-15524 | Defect | Filler column group headers have incorrect level |
| AG-15511 | Feature Request | [Column Filters] Allow the Set Filter to keep the filter model if the provided values are refreshed to match the selected values in the filter model |
| AG-15490 | Defect | [Regression][React] When using custom floating filter components without inferred cell data types, the custom floating filter does not render initially |
| AG-15467 | Defect | [Regression] When editing with enableGroupEdit= true, onCellEditingStopped event is no longer fired |
| AG-15457 | Feature Request | [Accessibility] Allow the selected column menu pinning option to be announced in the column menu as checked |
| AG-15456 | Defect | When using multiline styling and adjusting row heights, tooltips with tooltipShowMode: 'whenTruncated' are not shown |
| AG-15454 | Defect | [Fill Handle] Cursor style should be 'crosshair' instead of 'cell' when using the fill handle |
| AG-15449 | Feature Request | [Typing] Update selectedNodes typing to use Generic Type |
| AG-15434 | Feature Request | [Filter][API] Add an API method hideColumnFilter to close the filter popup |
| AG-15416 | Defect | Updates to integrated chart component to avoid false positives in security vulnerability scanning |
| AG-15366 | Defect | When using Rich Select Editor with null values in the list, a TypeError is thrown in the console |
| AG-15364 | Defect | [React] When re-rendering beans.registry is sometimes undefined |
| AG-15361 | Defect | When using groupHideOpenParents with groupDefaultExpanded, group row selection selects incorrect leaf rows |
| AG-15355 | Defect | [Frameworks] When using VUE and single click edit, the grid scrolls back up after editing |
| AG-15352 | Defect | [Selection] When removing column labels while pivoting checkboxes get hidden |
| AG-15344 | Defect | When pasting rows with row numbers and checkboxes, the values are shifted a column to the left |
| AG-15335 | Feature Request | Fix all outstanding security issues |
| AG-15312 | Defect | [Regression] When calling api.getSelectedRows it returns an array with undefined for selected group rows |
| AG-15300 | Feature Request | [Selection] Allow headerName to be specified in the typing for selectionColumnDef |
| AG-15266 | Defect | In batch edit, pressing ESC key reverts a pending value when editing the cell |
| AG-14937 | Defect | When moving a collapsed group with `marryChildren` the column order is not preserved |
| AG-14864 | Defect | [Memory Leak] When using "agAnimateShowChangeCellRenderer" rows are not correctly disposed of |
| AG-14714 | Feature Request | [Integrated] Provide `chartId` in the `chartMenuItems` callback params. |
| AG-14693 | Defect | [Events] When using SSRM expandOrCollapseAll is not fired |
| AG-14560 | Defect | [Regression] When using the Rich Select Editor with searchType = 'fuzzy', entering uppercase values show an incorrect match |
| AG-14498 | Defect | When dynamically enabling row numbers with api.setGridOption(), they are not displayed |
| AG-14192 | Defect | When filtering with tree data with groupDisplayType: 'custom', parent groups are shown even when all their children are filtered out |
| AG-13120 | Defect | When colDefs field or valueGetter are updated reactively, groups are not regenerated |
| AG-12980 | Feature Request | [Integrated] Allow maximizing the Integrated Charts programmatically on chart creation |
| AG-12957 | Defect | [Row Pinning] When using a pinned grand total row it shouldn't be counted in the number of paginated rows |
| AG-12866 | Feature Request | [API] Expose GridApi via Root Dom Node and Vice Versa |
| AG-11914 | Feature Request | [Cell Editing][React] Allow startEditingCell to be functional when called immediately after ensureIndexVisible |
| AG-11151 | Feature Request | [API] Add a new API method as a replacement for api.getModel().getType() |
| AG-10919 | Feature Request | [Docs] Add docs example showing an extra row at the bottom/top of grid for user to add new rows to grid |
| AG-10459 | Feature Request | [Testing] Allow providing grid configuration to be used for testing only via a separate testing module in AG Grid |
| AG-10255 | Feature Request | [Advanced Filter] Allow configuration of buttons shown in advanced filter UI |
| AG-9122 | Feature Request | [Accessibility] Allow appropriate NVDA announcements when toggling the column header/row selection checkbox |
| AG-8515 | Defect | When updating Primary Column Definitions, Pivot Result Column Definitions aren't updated |
| AG-7914 | Defect | When full-row edit is used and not starting the edit from agRichSelectCellEditor cell, its popup is open |
| AG-7702 | Defect | When typing in a cell without entering edit mode, agLargeTextCellEditor doesn't capture first keystroke and appends to the current cell value |
| AG-7528 | Feature Request | [Accessibility] Allow announcing the column name the editor is for when cell editing and tabbing to a RichSelectCellEditor or LargeTextCellEditor |
| AG-7248 | Feature Request | [Column Groups] Allow the number of header rows to change according to the currently visible and expanded group column levels instead of showing header row for all levels (growing and shrinking the group column header height as needed) |
| AG-7079 | Feature Request | [Integrated] Add the grid row/grid API to the params of the chart formatter callbacks of the Integrated Charts |
| AG-6838 | Defect | When editing a cell and deleting a row shown above it, cell editing stops |
| AG-6800 | Feature Request | [Fill Handle] Allow double-clicking fill handle to apply the fill value to all cell values under the fill handle (just like in Excel) |
| AG-5914 | Feature Request | [Framework] Determine which properties to allow passing based on whether ReactUI is used |
| AG-5797 | Feature Request | [Accessibility] Allow not counting hidden columns when announcing column index and total columns (aria-colcount) - only announce the index as per the actually visible columns |
| AG-5652 | Feature Request | [Testing] Allow providing ids to elements of the grid via custom attributes to facilitate testing |
| AG-3388 | Feature Request | [Integrated] Allow access to all row data for chart tooltips |
| AG-2394 | Feature Request | [Cell Editing] Allow stopping cell editing when edited cell loses focus when tabbing on cells |
| AG-1752 | Feature Request | [Tree Data] Allow tree data rows to serve as master rows for detail grids (Tree Data hosting Master/Detail) |

### 34.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15445 | Defect | [Regression] onCellEditingStarted and onCellEditingStopped browser events are null |
| AG-15400 | Defect | [Regression] When using Rich Select Editor with allowTyping, spacebar input is ignored |
| AG-15220 | Defect | [Regression] Exporting group rows does not call processRowGroupCallback |
| AG-15111 | Defect | [Regression] When copying cells from group rows/tree data, processCellForClipboard isn't fired |
| AG-14719 | Defect | [Regression][State] When horizontal scrollbar is at the right end recreating the grid recreates it with the scrollbar at the left end |

### 34.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15411 | Defect | [Regression] When using readOnlyEdit the grid does not refresh to retain old value until focus is moved from cell |
| AG-15382 | Defect | [Regression] When applying API data updates in CSRM and VPRM, edited cells exit edit mode |
| AG-15348 | Defect | [Regression] When editing a cell via API, editable= false in the column definition isn't respected |
| AG-15341 | Defect | [Regression] Text Filter params not working - textFormatter, textMatcher, caseSensitive |
| AG-15338 | Defect | [Regression][Integrated] When clicking a sparkline cell and moving the mouse, unintended cell range is selected |
| AG-15319 | Defect | [Regression] When editing Custom Text editors triggers multiple events |
| AG-15316 | Defect | [Regression] When cellEditorPopup={true} undo does not work |
| AG-15315 | Defect | [Regression] When editing onCellEditRequest is fired with the wrong oldValue |
| AG-15307 | Defect | [Regression] React custom floating filter gets rendered initially with empty props |
| AG-15302 | Defect | [Regression] SetDataValue and undoCellEditing stop editing and closes the editor |
| AG-15297 | Defect | [Regression] cellEditingStopped Event doesn't have newValue and oldValue props |
| AG-15296 | Defect | [Regression] When defining cellDataType=true on a column definition, an error is thrown |
| AG-15272 | Defect | When fullRow editing with blocking behavior, a cell editor/row in error mode doesn't allow to TAB away from the editor/edited row |

### 34.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15200 | Feature Request | [Performance] Improve performance in treeData, rowDragging also on flat grids |
| AG-15187 | Defect | [Scrolling] When scrolling over a pinned container with outer containers the scrolling stops when reaching the bottom of the pinned container |
| AG-15180 | Defect | [Sparklines] Bar/column sparklines missing params |
| AG-15158 | Defect | When using processCellCallback, it's not fired for cells in the grand total row |
| AG-15153 | Defect | [Export] When exporting to Excel with a valueOf method that throws an error the export is unsuccessful |
| AG-15151 | Defect | [Docs] Update the customising content Excel Export docs example as incorrect information is shown |
| AG-15150 | Defect | [Regression] Sparklines not rendered correctly when value is undefined |
| AG-15147 | Feature Request | [Row Dragging] Add a callback to allow specifying whether row location can be dragged on |
| AG-15141 | Defect | When using group rows display type with cell data types, the formatted value is not passed to the renderer |
| AG-15132 | Defect | [Row dragging] When using managed row dragging, dragging should not be enabled for total rows |
| AG-15059 | Feature Request | [Column Filters] Infer the filter params for the cell data type regardless of set filter default behaviour |
| AG-15050 | Defect | [Regression] When data is updated, the onModelUpdated event is not fired |
| AG-15040 | Defect | When a cell is being edited and it has invalid input (error state), pressing ENTER/TAB/focusing elsewhere in the grid clears the cell value |
| AG-15037 | Defect | When using React 19 and calling onModelChange outside of React lifecycle, doesFilterPass is called before the model is updated |
| AG-15030 | Defect | [Regression] When using rowSelection.checkboxes callback it is not longer possible to display all three checkbox states (shown, disabled, hidden) |
| AG-15018 | Feature Request | [Accessibility] Allow adding an empty string to an aria- locale to prevent aria-live announcements |
| AG-15002 | Feature Request | [Filtering] Allow passing non-model state to the custom filter component |
| AG-14998 | Defect | [Column Filtering] When single-digit day values (0-9) are shown in set filter a leading 0 is missing in the format/padding |
| AG-14994 | Defect | [Row Pinning] When pinning grandtotalrow the total is not updated when adding rows |
| AG-14980 | Defect | When providing a custom tooltip component for a column, it is not used within the filter tool panel |
| AG-14974 | Defect | [SSRM] When setting groupTotalRow in pivot mode, the aggregated cell values are shown in the group row even when it's expanded |
| AG-14951 | Defect | [React] When pinning the grandTotalRow the value does not update after filtering |
| AG-14949 | Feature Request | [Row Pinning] Allow grandTotalRow to be pinned via API without enabling row pinning |
| AG-14941 | Feature Request | [Theming] Add a borderWidth parameter to set a default width for all borders |
| AG-14927 | Feature Request | [Cell Rendering] Allow deferred loading of slow cell renderers |
| AG-14921 | Feature Request | [Filters Tool Panel] Add a new Filter Tool Panel with a flat UI design |
| AG-14909 | Feature Request | [Cell Data Types] Add dateTime and dateTimeString to cell data types |
| AG-14906 | Defect | When using Japanese Input (IME) with the Rich Select Editor, the list collapses incorrectly |
| AG-14904 | Defect | When adding new row groups for which isGroupOpenByDefault returns true, the row group expansion state is not reflected in grid state |
| AG-14891 | Defect | When adding new column groups that are open by default, the column group expansion state is not reflected in grid state |
| AG-14762 | Feature Request | [Integrated] Allow setting the tooltip mode in Integrated Charts theme overrides |
| AG-14741 | Defect | When using postSortRows to reduce row count, the pagination panel uses the original row/page count for the UI |
| AG-14703 | Defect | When right-clicking a row number, the selected cell range is reset |
| AG-14671 | Defect | [Selection] When autoSizeStrategy="fitCellContents" the selectionColumn size is bigger than expected |
| AG-14650 | Defect | When using 'agAnimateShowChangeCellRenderer', the difference isn't shown using agg funcs/complex objects |
| AG-14482 | Feature Request | [API] Allow displaying the border indicating the drop position via API (to be used with unmanaged row dragging) |
| AG-14384 | Feature Request | [Validation] Allow cell editing values to be synchronously validated while editing |
| AG-14155 | Defect | [React] When using React 19 "Maximum update depth exceeded" error occurs when resizing grid |
| AG-14151 | Feature Request | [Vue] Avoid rendering an empty div element in the DOM when no components are returned when using conditional rendering (v-if) in the custom cell renderer component |
| AG-13727 | Feature Request | [Column Filters] Split out filter evaluation and filter model from filter UI components |
| AG-13551 | Feature Request | [Events] Add a onColumnsReset event to fire when column state is reset via column menu or calling api.resetColumnState method |
| AG-13336 | Feature Request | [Bundle Size] Investigate ways to include the validation module (dev mode, or bundle in) |
| AG-13267 | Feature Request | [Filter Tool Panel] Allow adding a 'Reset All Filters' button in the Filter Tool Panel to reset filters across all columns |
| AG-13261 | Feature Request | [Filtering] Allow returning the filter model from the initial state whilst the React custom filter is initialising (SSRM) |
| AG-13074 | Defect | [Master Detail][Row Grouping] Classlist for the row doesn't reflect correct .ag-row-odd/even class when row expanded |
| AG-12817 | Feature Request | [Column Filters] Allow applying column filters without having to first initialise the filter UI components (CSRM) |
| AG-12229 | Feature Request | [Filtering] Allow returning the filter model from the initial state whilst the Set Filter is initialising |
| AG-11608 | Feature Request | [Column Filtering] Allow multi-filter to automatically set the correct simple filter and improve Multi Filter Params inheritance |
| AG-11572 | Feature Request | [Column Filters] Typing in floating filters doesn't fire filterModified event when using filter APPLY button |
| AG-10936 | Feature Request | [State] Allow restoring grid state without recreating grid (only possible with initialState now) |
| AG-10097 | Feature Request | [Column Filters] Allow extracting the current filter option evaluation into reusable functions so custom filters can only provide filtering UI |
| AG-9295 | Feature Request | [Types] Update all the relevant types that include context to have a TContext generic parameter |
| AG-8609 | Feature Request | [React] Add support for lazy-loaded React cell renderer |
| AG-7954 | Feature Request | [Tree Data] Allow users to drag and drop to reorder tree data rows on the same level, move a row to any other group |
| AG-6591 | Feature Request | [SSRM] Allow adding new columns using setColumnDefs() API method without purging the data cache and loading data via a call to the getRows method |
| AG-5667 | Feature Request | [Filters Tool Panel] Allow the user to configure multiple filters in the filter tool panel without triggering a data request, which only gets made when the user clicks an APPLY button |
| AG-5023 | Feature Request | [Column Filter] Add Apply/Clear/Reset buttons in multi-filter to apply/clear/reset all filters in the multi-filter |
| AG-4497 | Feature Request | [Integrated] Allow users to set chart axis title through UI in integrated charts |
| AG-3870 | Feature Request | [Column Sizing] Allow setting column minWidth/maxWidth to be used only when calling autoSizeColumns/autoSizeAllColumns API (this minWidth/maxWidth will not apply when resizing manually) |
| AG-3848 | Feature Request | [Cell Editing] Allow keeping the edited row/cell in edit mode if the entered value in the edited cell fails validation |
| AG-3729 | Feature Request | [Cell Editing] Allow bulk update of the selected cell range by entering edit mode and pressing CTRL+ENTER keys to set the provided value to all cells in the selected range (just like Excel) |
| AG-1195 | Feature Request | [Cell Editing] Allow queueing multiple cell edits and flushing all of the pending updates to the backend later via API call (batch row editing) |
| AG-304 | Feature Request | [Column Filters] Allow date input/filter to support entering/filtering by time values |

### 33.3.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15000 | Defect | [Regression] When using viewport row model and focusing a cell in a row beyond the updated row count, the row remains rendered in the grid |
| AG-14971 | Defect | [Regression] When setting groupDisplayType=groupRows the valueFormatter does not get applied to group rows |
| AG-14948 | Defect | [Regression] When exporting to CSV setting useValueFormatterForExport to false does not affect the export |
| AG-14938 | Defect | [Regression] When setting pivotResultCols by API, omitting colId causes errors |
| AG-13364 | Defect | [Pivoting] When toggling pivot mode, grid isn't rendered and a "Resize Observer loop" exception is thrown |

### 33.3.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14972 | Defect | [Regression] When domLayout: 'autoHeight', hovering pinned column cells and scrolling down, page doesn't scroll vertically |
| AG-14945 | Defect | Remove SelectAll warning when pressing CTRL+A when using viewport row model |

### 33.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14968 | Defect | [RTL] When setting browser zoom to 80% and scrolling horizontally the header bar moves opposite to scroll direction |
| AG-14858 | Defect | Conversation CSS not being included in development builds |
| AG-14853 | Defect | [SSRM] [Pivot] Numeric pivot groups and columns are sorted, not respecting the provided order |
| AG-14842 | Feature Request | [Row Pinning] Move position of row pinning item in the context menu |
| AG-14812 | Defect | [Regression] When using agGroupCellRenderer in a tree table, the expand/collapse icons are not displayed |
| AG-14811 | Defect | [React] When using React 19, an error is thrown due to events firing before onGridReady |
| AG-14804 | Feature Request | [Row Pinning] Pinned rows should have the same row numbers as their source row |
| AG-14803 | Feature Request | [Row Pinning] Fire an event whenever pinned rows change |
| AG-14790 | Feature Request | [Docs] Add notes to the feature sections of the docs to mention they can be saved/restored via initial state |
| AG-14788 | Feature Request | [Row Selection] When enableClickSelection={enableDeselection} rows should not be selectable with CTRL |
| AG-14786 | Feature Request | [Row Pinning] Fix 1px border on staging for pinned rows |
| AG-14784 | Defect | [Column Menu] When using showColumnMenu for legacy menu the incorrect menu tab is displayed |
| AG-14782 | Defect | [Regression] Symbols like "&" are not rendered correctly |
| AG-14774 | Defect | Angular Framework Event Listener Not Clearing Removed Event Listeners |
| AG-14747 | Feature Request | [Row Pinning] Remove grey styling of pinned row and add target font-weight of 600 |
| AG-14745 | Defect | [Row Pinning] Row height of pinned row resets when resizing viewport row |
| AG-14730 | Defect | [Docs] Fix small error in Text Formatting example |
| AG-14721 | Defect | [Selection] When using Shift + Space with custom row selection logic not all rows in the range are selected |
| AG-14720 | Defect | [Layout & Styling] An extra pixel is visible between the first row and header and the bottom row and grid border |
| AG-14718 | Defect | Theming API default text input styles are overridden by application CSS resets |
| AG-14716 | Feature Request | [Theming] Add support for theming API with module federation |
| AG-14715 | Defect | When using row auto height, calling api.ensureIndexVisible doesn't scroll far enough to scroll the desired row into view |
| AG-14707 | Defect | [Export] [Full Width Groups] [Group/Grand Total Rows] When using full width group rows and total rows, exporting to excel shows "Total" not the column value |
| AG-14697 | Defect | [Accessibility] Floating number filter input is announced as a spin button but doesn't support value stepping when pressing UP/DOWN ARROW keys |
| AG-14687 | Defect | When using the Material theme, header parameter styling is not applied |
| AG-14678 | Defect | When using unmanaged row dragging with pagination, the overNode and overIndex values are incorrect in onRowDragMove |
| AG-14672 | Defect | When destroying the grid, the filter model is always empty in the pre destroy event on Firefox |
| AG-14667 | Defect | [Performance] Investigate memory leak and detached DOM increase when using SSRM and treeData={true} |
| AG-14662 | Feature Request | [React] Deprecate unused properties from public AgGridReactProps interface |
| AG-14661 | Defect | [Row Selection] When downloading the headerCheckbox does not reset |
| AG-14645 | Feature Request | [Row Pinning] Add icons for pinning in context menu and column menu |
| AG-14644 | Feature Request | [Row Pinning] Make the border between containers of pinned/unpinned rows/columns more prominent |
| AG-14634 | Feature Request | [Modules] Allow checking whether a module is registered via API |
| AG-14630 | Defect | [Regression] When using theming API, Set Filter does not launch when clicking on the floating filter input |
| AG-14626 | Defect | [Group Cell] Grand Total Row shows "Total" suffixed with value from autoColDef.valueGetter |
| AG-14621 | Defect | [Column headers] When the grid re-renders, the contents of the innerHeaderComponent completely disappears |
| AG-14614 | Defect | When setting suppressHeaderContextMenu = true, the context menu is still shown when clicking the border |
| AG-14613 | Defect | [Angular] Run isFilterActive outside of NgZone |
| AG-14612 | Defect | [Regression] [Group Cell] When using grandTotalRow and groupDisplayType='multiple' TOTAL is displayed in multiple column cells of the grand total row |
| AG-14609 | Defect | [Tree Data] When filtering the "Does not equal" operator does not work |
| AG-14603 | Defect | When using React and rowHeight is small, cell editor textboxes are too large, input value is partially offset vertically and clipped by the input top edge |
| AG-14595 | Defect | Drag'n'drop, sourceRowIndex was not correctly computed on drag and drop |
| AG-14579 | Defect | [Integrated] Without`autoGroupColumnDef`, the axis label is missing when there's only one group with aggFunc applied to Chart |
| AG-14578 | Defect | When setting selectionColumnDef in onGridReady/onFirstDataRendered, the column properties aren't set correctly |
| AG-14565 | Feature Request | [Cell Rendering] Allow AnimateShowChangeCellRenderer to show differences in leaf objects |
| AG-14564 | Defect | [Integrated] Objects from custom aggFunc cannot be charted in Integrated Charts |
| AG-14535 | Defect | [Integrated] Console error when the Integrated Chart value contains a dot |
| AG-14520 | Defect | [Integrated] Making series change in Integrated Charts Tool Panel will stop user from drawing another chart of the same range |
| AG-14519 | Defect | [Demo] Performance demo has 2 columns shown as [object Object] in the Integrated Charts series selection menu |
| AG-14511 | Defect | [Charts] Toggling on aggregation for donut charts sometimes results in missing donut segments |
| AG-14502 | Defect | [Regression] Custom column header via template params doesn't support missing eText label |
| AG-14483 | Feature Request | [Context menu] Allow opening the context menu via API for column group headers by adding showColumnMenu to the IHeaderGroupParams |
| AG-14413 | Feature Request | [Excel Export] Allow exporting master grid rows in a table when using master detail grids |
| AG-14348 | Defect | [Row Numbers] When a row number is selected addCellRange selects all columns |
| AG-14204 | Feature Request | [Row Pinning] Allow transactions to work with pinned rows |
| AG-14071 | Defect | When pinning the checkbox column and resetting all columns, it is no longer the left-most column |
| AG-13984 | Feature Request | [Column Tool Panel] Allow showing an item "Scroll column into view" in the context menu for columns in the columns list of the columns tool panel and column chooser dialog |
| AG-13950 | Defect | [Selection] When groupSelectChildren='descendants' and enableClickSelection=true, clicking a group row doesn't select it |
| AG-13546 | Feature Request | [Rows] Allow showing the grand total row as pinned |
| AG-13198 | Feature Request | [Row Pinning] Allow api.redrawRows() to refresh/update pinned rows |
| AG-12784 | Defect | [Integrated] Statistical charts are not aggregating results if columns are grouped |
| AG-12174 | Feature Request | [Row Pinning] Allow users to manually pin/unpin rows |
| AG-11874 | Feature Request | [Scrolling] Allow scrolling vertically and horizontally when hovering over pinned rows/columns |
| AG-11340 | Feature Request | [Performance][Column Headers] Display a console warning when duplicate colId values are provided in column definitions |
| AG-10773 | Feature Request | [State] Allow applying column state directly into grid state |
| AG-9308 | Defect | When providing autoGroupColumnDef a valueFormatter, it's called but the value isn't displayed |
| AG-9147 | Feature Request | [Integrated] Allow using non-adjacent row cell ranges for creating integrated charts |
| AG-7027 | Feature Request | [Row Pinning] Add a new callback to iterate over all rows including pinned ones (forEachNode callback only iterates over the unpinned rows) |
| AG-6697 | Feature Request | [Cell Rendering] Performance improvements for high-volume transaction by sharing setTimeout to flash cell on update |
| AG-6573 | Feature Request | [Row Pinning] Allow calling setPinnedTopData to refresh components in the pinned rows instead of re-initialize (just like calling setRowData refreshes cell renderer components in regular rows) when using a getRowId callback |
| AG-3444 | Feature Request | [Integrated] Allow selecting multiple columns via `ctrl` key to create integrated charts |
| AG-3167 | Feature Request | [Row Pinning] Allow sorting / filtering pinned rows |
| AG-2339 | Feature Request | [Row Pinning] Allow row selection for pinned rows |
| AG-2055 | Feature Request | [Row Height] Allow row height to be changed via mouse dragging of the row number cell (just like in Excel) |
| AG-832 | Feature Request | [SSRM][Row Height] Allow navigating to row index (calling api.ensureIndexVisible) to support row auto height/dynamic row height |

### 33.2.4

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14723 | Defect | [SSRM] [React] [Regression] Error thrown when rows are re-rendered due to purge refresh |
| AG-14590 | Defect | [React][Regression] When using suppressCellFocus in specific configurations or removing a focused cell from the grid, the grid throws an exception and isn't rendered anymore |

### 33.2.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14701 | Defect | Cell values are not rendered when using RTL, screen scaling and Zoom due to a Chrome 135+ issue |
| AG-14610 | Defect | [Regression] When using groupDisplayType={custom} and providing agGroupCellRenderer the expansion chevrons are not displayed |

### 33.2.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14659 | Defect | Cell values are not rendered when using RTL and Zoom due to a Chrome 135+ issue |
| AG-14399 | Defect | [Regression] When scrolling horizontally and selecting a row, the pinned bottom row is aligned incorrectly |

### 33.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14746 | Defect | [Integrated] Donut series Callout line color theme overrides not working in versions before 33.2 |
| AG-14459 | Defect | [Integrated] Clicking on the chart tool panel button will submit the form the grid is part of |
| AG-14448 | Defect | [Charts] Missing calloutLabel and incorrect sectorLabel on Pie Cross-filtering Charts |
| AG-14444 | Defect | [Rich Select Editor] When clicking on the edge of the dropdown of agRichSelectCellEditor the value becomes blank |
| AG-14425 | Defect | [Selection] When lockPosition: "true", resetting columns changes the order of pinned selectionColumn |
| AG-14418 | Defect | Pagination panel shows 0 rows when using SSRM with groupRows and only one row |
| AG-14400 | Defect | [Regression] When using the paginationPageSizeSelector, the selected page size is not highlighted |
| AG-14383 | Defect | When using the set filter with large amounts of data, fill handle/paste operations are slow |
| AG-14382 | Defect | [Regression] When in pivot mode and calling api.getColumnDefs(), an error is thrown |
| AG-14381 | Defect | When using the advanced filter with localisation, filtering by 'does not contain' does not apply the filter |
| AG-14374 | Defect | [React] Dev StrictMode calls ref callback against destroyed ctrl |
| AG-14373 | Defect | When a grid cell is focused, calling api.paginationGoToPage causes grid to lose focus |
| AG-14356 | Defect | [Charts] Console Error when restoring Integrated Charts after changing the series selection |
| AG-14341 | Feature Request | [Charts] Include `domain` in the axis formatter params |
| AG-14339 | Defect | [Accessibility] When using row groups aria roles are missing particular children |
| AG-14329 | Defect | When enabling Advanced Filter, api.getFilterModel() still returns filter models set as initial state |
| AG-14325 | Defect | [Row Selection] When using agGroupCellRenderer and using checkboxLocation the selectionColumn is not hidden |
| AG-14317 | Defect | When exporting to Excel as a table, splitting the header text using '\n', generates an error when opening the exported Excel file |
| AG-14305 | Defect | [Regression] When using colSpan and row autoHeight, all rows are default height and don't increase height to fit in wrapped cell values |
| AG-14296 | Defect | [Regression] When using the fill handle with suppressMultiRanges, an error is shown in the console |
| AG-14291 | Defect | When a cell is focused and not editable, default is prevented on keydown event |
| AG-14282 | Defect | Change detection does not trigger footer row updates |
| AG-14279 | Defect | Copying a combination of pinned and normal rows causes error in console |
| AG-14272 | Defect | [Context Menu] iOS only - When opening the context menu in a detail grid, multiple menus are shown |
| AG-14268 | Defect | When removing a selected item from the grid, focus is lost |
| AG-14264 | Defect | [Regression] Cannot turn on aggFunc for SSRM Integrated Charts |
| AG-14244 | Defect | [Regression] Group rows cannot enable row drag |
| AG-14234 | Feature Request | [Accessibility] Allow announcing input validation errors when using screen readers |
| AG-14218 | Defect | [Row Spanning][SSRM] Cell focus is lost when a merged cell loads across different server fetches |
| AG-14215 | Defect | [Reactivity] groupHideOpenParents doesn't work when groupDisplayType is explicitly set |
| AG-14213 | Defect | [Regression] When using UI to select a row the source is returned as API |
| AG-14205 | Feature Request | Export ISimpleFilterModelType from community |
| AG-14203 | Defect | [Filtering] When using firefox, a re-edited value on the date filter does not get applied |
| AG-14198 | Defect | [Regression] When destroying the grid row nodes are not disposed properly causing increase in memory consumption |
| AG-14191 | Defect | Header Inner Component Receives Wrong Params on Re-Render |
| AG-14183 | Defect | [Regression] When using pinned rows, a cell range which spans top pinned rows and unpinned rows cannot be copied/pasted into |
| AG-14170 | Defect | [Layout & Styling] DnD is not picking up changes in CSS class |
| AG-14169 | Feature Request | [Security] Add CSP nonce support to Theming API to avoid the need for CSP unsafe-inline |
| AG-14168 | Defect | [Regression] When pivoting is enabled, getColumnDefs API throws an error |
| AG-14163 | Defect | [Regression] When using the Rich Select Editor with searchType = 'fuzzy', an incorrect match is shown when the value list is sorted |
| AG-14157 | Defect | When calling showContextMenu API and getContextMenuItems returns a promise, an error is thrown |
| AG-14153 | Defect | [Rich Select Editor] When using Complex Objects and Multi Select duplicate entries are created |
| AG-14148 | Defect | When returning an empty string from a value formatter, the formatted value is not exported to excel |
| AG-14138 | Feature Request | [Search Highlight] Master/Detail Support for Find Feature |
| AG-14134 | Feature Request | [Vue] Top level class instances in RowData converted to raw js object |
| AG-14091 | Defect | [Regression] Status bar components count changed for Tree Data |
| AG-14083 | Defect | [Vue] Objects with methods in the rowData are converted to raw objects |
| AG-14079 | Defect | When using custom keyboard navigation with tabToNextHeader callback to prevent moving focus out of grid, focus still leaves the grid |
| AG-14078 | Defect | When using the 'agFilteredRowCountComponent' with grouped data, 'filter' is shown in the status bar incorrectly |
| AG-14074 | Defect | When row grouping with groupDisplayType: 'multipleColumns' and showOpenedGroup: true, a cell renderer set on the second grouped column is applied to both |
| AG-14062 | Feature Request | [ColDef] Add dateComponent, dateComponentParams to colDef |
| AG-14047 | Feature Request | [Styling] Add border outline for context/column menu navigating with keyboard to legacy theme |
| AG-14044 | Feature Request | [Row Spanning] Add support for Row Pagination |
| AG-14024 | Feature Request | [Row Numbers] Allow always showing row numbers when scrolling with SSRM |
| AG-14004 | Defect | [Regression] When grouping by a number type column with groupDisplayType: 'multipleColumns', groupHideOpenParents: true, expanding the row group shows "Invalid Number" in the group column cell |
| AG-13997 | Defect | When columns fit the viewport already, the min/max width params are ignored |
| AG-13995 | Feature Request | [Performance] Add debounce to column auto-height behaviour to improve performance |
| AG-13973 | Feature Request | [Performance] Investigate SSRM memory leaks when Node Manager keeps old rowIds in rowNodes |
| AG-13957 | Defect | When row grouping with groupDisplayType: 'groupRows', the group key value is converted to String |
| AG-13761 | Defect | api.resetColumnState breaks group column order when using groupDisplayType=multipleColumns |
| AG-13755 | Defect | When `suppressPaginationPanel` is enabled, keyboard focus navigates to next page |
| AG-13752 | Defect | When a pivotComparator returns 0, numeric data is still being sorted |
| AG-13676 | Feature Request | [Pivoting] Allow pivotColumnGroupTotals to display the column containing the total value for a pivot column group even if it's expanded |
| AG-13608 | Defect | [Regression] When using group and grand total rows with the vertical and horizontal scrollbar, the totals disappear or become misaligned at certain scroll positions |
| AG-13518 | Defect | [Integrated] Integrated Charts ignores row grouping on tree data |
| AG-13272 | Defect | [Row Grouping] When using master detail and row grouping do not use the agGroupCellRenderer from the master column in group rows |
| AG-12794 | Feature Request | [Tree Data] Allow self-referential dataset for providing hierarchical tree data by providing parent id value |
| AG-11875 | Defect | When using ensureNodeVisible sticky rows will cover the node that is scrolled to (sticky parent nodes, grandTotalRow, groupTotalRow) |
| AG-11318 | Defect | When toggling column highlighting via API, hovering column headers doesn't highlight the column |
| AG-10692 | Defect | When using row grouping, `showOpenedGroup` values aren't formatted using the group column valueFormatter |
| AG-10592 | Feature Request | [Events] Add change context to `onSelectionChanged` event |
| AG-9680 | Feature Request | [Status Bar] Allow changing numeric formatting in the default Status Bar component |
| AG-9644 | Feature Request | [Accessibility] Allow users to reorder columns using the keyboard in the row groups/pivot panel |
| AG-9643 | Feature Request | [Accessibility] Allow users to reorder columns in the columns tool panel using the SHIFT+UP/DOWN ARROW keys |
| AG-8812 | Defect | When using infinite row model, onFirstDataRendered event is fired before data is rendered |
| AG-7887 | Feature Request | [Cell Rendering][Angular] Profile Performance Of Angular Cell Renderers |
| AG-7642 | Feature Request | [Charts] Allow changing series fill and stroke for Cross-Filtering charts via custom themes |
| AG-7024 | Feature Request | [Integrated] Add support for grouped category axis in cross-filtering integrated charts |
| AG-6927 | Feature Request | [Row Spanning] Allow using row/cell range selection when using row spanning |
| AG-3658 | Feature Request | [Cell Editing] Allow grid editing to be based on a Redux Store |
| AG-2692 | Feature Request | [Security] Update CSP to reflect current requirements for legacy themes |
| AG-119 | Feature Request | Add Find Feature to highlight text matches in the grid (just like browser page search) |

### 33.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14137 | Defect | [Charts] Library references unpublished `ag-charts-core` in typings |

### 33.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14041 | Defect | [Regression] When using backspace after choosing the column the grid throws an error |
| AG-14039 | Defect | [Website] "Installing Your Licence Key" website page generates an incorrect version for the ag-charts-enterprise module |
| AG-14029 | Defect | [Regression] When rows are ungrouped using the keyboard, focus is lost |
| AG-14025 | Defect | When the grid viewport gets too narrow pinned columns with colDef.lockPinned=true get unpinned as part of the automatic unpinning |
| AG-14014 | Feature Request | [Range Selection] Allow highlighting column headers and row number cells when for the selected cell range (just like Excel) |
| AG-14010 | Defect | [Regression] When focusing the pagination page size selector and pressing SHIFT+TAB, focus does not move to the last grid cell |
| AG-14008 | Defect | [Angular] When destroying the grid without destroying a filter, a TypeError is thrown |
| AG-13982 | Defect | Investigating whether the CellStyle interface in Excel Exporter clashes with Grid’s CellStyle interface |
| AG-13968 | Defect | When using flex 0 in column state, width overrides are lost |
| AG-13966 | Defect | [Theming] Theming API produces TypeScript errors when compiled in isolatedDeclarations mode |
| AG-13964 | Defect | [React] When using custom filter onUiChange callback, filterChanged event is fired instead of filterModified |
| AG-13948 | Defect | When focusing a rich select editor which loads values async, pressing any key throws an exception in console |
| AG-13943 | Defect | [Regression] When using singleRow selection mode grand and group total rows cannot be selected individually |
| AG-13936 | Defect | When suppressContextMenu=true, this prevents showing the context menu when calling the showContextMenu API method |
| AG-13918 | Defect | [Charts] Occasional exception when destroying a cross-filter chart |
| AG-13907 | Defect | [Regression] When calling api.setColumnGroupState() before columnDefs are set throws an exception |
| AG-13902 | Defect | [Regression] No rows overlay with SSR disappear if columns are updated |
| AG-13901 | Defect | [Events] When triggered by setAdvancedFilterModel the filterChanged event does not specify API as source |
| AG-13887 | Defect | [Integrated] Missing Integrated Charts option events for aggregation and switch category/series |
| AG-13885 | Defect | [Theming][Regression] Custom floating filter not showing |
| AG-13883 | Defect | [R][Docs] Custom panel example icon is missing |
| AG-13880 | Defect | [Integrated] Pivot Chart performance issue in v33 |
| AG-13873 | Defect | When navigating with the keyboard, focus is not returned to the cell after exporting from the context menu |
| AG-13872 | Defect | [Selection] When multiple rows are selected, clicking a row should deselect all other rows |
| AG-13853 | Defect | [State] When using infinite row model state does not save for rowSelection & pagination |
| AG-13850 | Defect | [Regression] Initializing grid columns after row data does not trigger refreshModel |
| AG-13849 | Defect | [Scrolling] When scrolling using the scroll bar and instantly using the mouse wheel after the grid goes blank |
| AG-13846 | Feature Request | [Accessibility] Allow keyboard navigation inside a scrollable context menu |
| AG-13845 | Defect | [Pivoting] When pivoting filtering value columns returns incorrect count |
| AG-13843 | Defect | [Regression] When using row styling with master details the rows do not get styled |
| AG-13842 | Defect | Grid allows grouping by the auto-group column |
| AG-13833 | Feature Request | [Theming] Allow users to set a layer for the CSS generated by Theming API |
| AG-13827 | Defect | When using removePivotHeaderRowWhenSingleValueColumn, the penultimate level of pivoting can't be collapsed |
| AG-13821 | Defect | Exposed component not found if deep in a component hierarchy |
| AG-13817 | Defect | [Integrated][Regression] Extra comma in pie series label and legend when charting from grouped column |
| AG-13809 | Defect | [API] When loading api functions that are tied to specific row models an error is thrown |
| AG-13797 | Feature Request | [Selection] Make the selectionColumnDef reactive |
| AG-13789 | Defect | [Regression] When row dragging cells with values containing symbols, the symbols are shown incorrectly |
| AG-13787 | Defect | [Regression] When using getContextMenuItems or getMainMenuItems in TS, a TypeError occurs |
| AG-13785 | Feature Request | [Documentation] Update API docs for enableClickSelection to clarify need to use CTRL |
| AG-13784 | Defect | When singleClickEdit is enabled, the cellEditingStarted event is missing the event property |
| AG-13783 | Defect | When wrapText and rowDrag are set on a column, the row drag icons are misaligned |
| AG-13779 | Defect | [Navigation] When suppressing CTRL + S the default save functionality of the browser is still triggered |
| AG-13778 | Defect | [Regression][Cell Editing] Scrolling causes rendering issues after editing and scrolling when singleClickEdit and ensureDomOrder are enabled |
| AG-13775 | Feature Request | [Filtering] Allow users to easily determine type of a column filter |
| AG-13774 | Defect | [Events] onFillStart triggers at the same time as onFillEnd |
| AG-13773 | Defect | [Regression] When agSelectCellEditor is shown in a detail grid cell, it loses focus when trying to scroll the values list in the popup |
| AG-13770 | Defect | Error shown when trying to drag and drop a column over another when suppressMoveWhenColumnDragging = true |
| AG-13763 | Defect | InnerRenderer in the headerComponent does not call refresh method |
| AG-13758 | Defect | When using groupDisplayType=multipleColumns, group footers do not include Total headings in the SSRM |
| AG-13750 | Defect | [Regression] sparklineOptions.axis.paddingInner/paddingOuter property value is ignored, padding values cannot be changed from default |
| AG-13740 | Defect | [Navigation] When using custom menu items, disabled items cannot be focused |
| AG-13728 | Feature Request | [API] Deprecate filterParams.rowModel |
| AG-13695 | Defect | When an empty object is returned for the number filter, using 'Less than' or 'Less than or Equal to' incorrectly displays the object row when it doesn't match the filter |
| AG-13691 | Defect | [Styling] Column positions do not take into account padding variable with row selection on |
| AG-13637 | Defect | When destroying the grid immediately after refreshing a Set Filter, an error is thrown |
| AG-13597 | Defect | [Integrated] Pie Chart not rendering correctly with object-based category |
| AG-13496 | Defect | When returning an empty object for the date filter, the object row is shown when it does not match the filter |
| AG-13459 | Defect | When copying a cell in a group row, processCellForClipboard is called twice |
| AG-13429 | Feature Request | [Integrated] Add `funnel`, `cone-funnel` and `pyramid` charts to Integrated Charts |
| AG-13425 | Defect | When filtering with Tree List and checking a parent node, all child rows are displayed instead of only the matching filtered rows |
| AG-13412 | Defect | [Row Grouping] When calling api.getRenderedNodes or api.forEachNode methods, sticky/group total rows shown in the unpinned container aren't returned |
| AG-13410 | Defect | When setting headerHeight=0, the floating filter row is hidden |
| AG-13406 | Defect | When creating a custom submenu for the context menu in React, the submenu is aligned incorrectly |
| AG-13385 | Defect | [Sparklines] Incorrect sparklines tooltip position in a React createPortal popup window |
| AG-13350 | Defect | When using `suppressFullWidthLoadingRow` stub rows trigger `onFirstDataRendered` event |
| AG-13344 | Defect | [Regression] When toggling the visibility of enableAdvancedFilter, the filter icon in the column header is still displayed |
| AG-13271 | Defect | [Styling] When using pagination, the pagination arrows are not disabled when end of pagination reached |
| AG-13268 | Feature Request | [Docs] Clarify that if you are providing a custom filter option, you need to set the first filter as empty |
| AG-13240 | Defect | [Clipboard] When using getContextMenuItems you are unable to copy full-width rows |
| AG-13215 | Defect | [Regression] When adding an aggFunc via the column menu and toggling grandTotalRow, the aggregated value in the grand total row is not in line with the correct column |
| AG-13105 | Defect | When exporting with the `exportedRows` property in pivot mode, the property is ignored |
| AG-13104 | Defect | [Regression] Focus is lost or stuck in a loop when going forward or backward between grid and other elements |
| AG-13076 | Defect | [Regression] When using a set filter and clearing rowData the filter state and icon are not reset |
| AG-13072 | Defect | When suppressMenuHide = false, opening the (new) column menu and clicking the column header causes the icon to disappear and prevents the column menu from being opened |
| AG-13059 | Defect | When there is an empty value in the Rich Select Editor provided list, having an empty input doesn't focus that value in the list |
| AG-12979 | Defect | When using column groups, the header row scrolls independently of the viewport |
| AG-12938 | Feature Request | [Cell Editing] Allow agRichSelectCellEditor pill renderer to support complex objects when multi-selection is used |
| AG-12781 | Feature Request | [Integrated] Update default chartDataType to leverage cell data type when the first cell has no value |
| AG-12719 | Defect | When enableTextSelection = true text selection gets deselected in Firefox/Safari |
| AG-12272 | Feature Request | [Tree data] Allow supplying tree data in hierarchical format using a children array |
| AG-12218 | Feature Request | [Row Spanning] Allow row spanning to render cell values when scrolling vertically |
| AG-11967 | Feature Request | [Accessibility] ARIA "role" for column menu and submenus to change to "menu" and "menuitems" |
| AG-11943 | Defect | Checkboxes in Checkbox Column Are Not Aligned in the Cell Center Vertically |
| AG-11511 | Defect | [Row Grouping] When grouping more than one column and having pivot enabled, setting agGroupColumnFilter breaks pivotRowTotals functionality |
| AG-11447 | Feature Request | [Row Spanning] Allow editing cells without row spanning whilst maintaining row spanning in the grid |
| AG-11257 | Defect | [Regression][SSRM] When using SSRM and showOpenedGroup=true, the expanded group values are shown in the group columns only when all the levels are expanded |
| AG-11126 | Defect | [Accessibility] When using CTRL + ARROW keys to move across cells the wrong column name is announced |
| AG-10820 | Feature Request | [Theming] Implement Material design preset theme for Theming API |
| AG-10167 | Feature Request | [Cell Editing] Add support for filtering complex objects in agRichSelectCellEditor |
| AG-9517 | Feature Request | [Column Filters] Allow filterParams.defaultToNothingSelected=true by default when not using Excel mode for set filter |
| AG-9010 | Feature Request | [Row Spanning] Allow row spanning to automatically merge cells when the span value is repeated in consecutive rows |
| AG-6070 | Defect | When using ReactUI, running "npm test" throws errors |
| AG-5975 | Feature Request | [Row Spanning] Allow seeing correct cell borders when using a large rowSpan and scrolling vertically |
| AG-5713 | Defect | [Integrated] When using integrated charting, setting the axis tick count with an every function throws an exception |
| AG-5211 | Feature Request | [Master/Detail] Allow support for group checkbox selection for master/detail grid (tri-state checkbox selection) |
| AG-3103 | Feature Request | [Column Filters] Allow displaying a custom loading spinner icon next to the "Loading..." text in the set filter popup while loading set filter values asynchronously |
| AG-2951 | Feature Request | [Row Spanning] Allow row spanning to work with column sorting / filtering |
| AG-2323 | Feature Request | [Row Spanning] Allow the rowspans not to disappear when using row spanning and the rowspan > rowBuffer, and scrolling beyond the rowBuffer |
| AG-2095 | Feature Request | [Row Spanning] Allow Row span to support dynamic and auto row height |
| AG-227 | Feature Request | [Column Headers] Add a row numbers column showing row indexes (just like in Excel) |
| AG-56 | Feature Request | [Column Headers] Allow providing styles dynamically for column headers and column group headers via headerStyle (similar to cellStyle for cells) |

### 33.0.4

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13832 | Defect | Build warning 'Failed to parse source map' shown when building with ag-grid packages |
| AG-13824 | Defect | [Regression] Column header name is not rendered when executing unit tests in JSDOM environment |
| AG-13735 | Defect | [Regression][Vue] Class instances in RowData are converted to raw JS object |

### 33.0.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13732 | Defect | Add exports field to package.json for better end-user consumption |
| AG-13716 | Defect | [Regression] Custom variables no longer work as font values in Theming API |
| AG-13714 | Defect | [Regression][Angular] When unpinning a column using column menu console throws "Cannot read properties of null" error |
| AG-13705 | Defect | CellContextMenu event doesn't get fired when ContextMenuModule isn't present |
| AG-13702 | Feature Request | [Docs] Update the Angular docs example generator to use arrow functions for grid callbacks |
| AG-13328 | Defect | [Regression] When using treedata and exporting to Excel, the valueGetter for autoGroupColumn is not called for group nodes |
| AG-12124 | Defect | AgGridReact Component is not found when using the CDN link of ag-grid-react.min.js from bundle |

### 33.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13687 | Defect | [Regression] When calling params.getValue function within the filterValueGetter option a undefined error thrown |
| AG-13685 | Defect | Changelog grid truncates long SUMMARY column values and the ISSUE column is too wide |
| AG-13684 | Defect | [Vue] When using in a *.vue file, complains that the argument is missing around 400 types |

### 33.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13710 | Defect | When using Vue3, console warnings are shown for all unset props as all props are listed as required |

### 33.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13641 | Defect | [Website] Expanding a row in changelog grid throws exception about missing RowApiModule |
| AG-13600 | Feature Request | Update minimum supported Vue version to 3.5 |
| AG-13572 | Defect | [Integrated] Cross-filtering `ctrl + click` is not working unless click and drag on the chart components |
| AG-13567 | Defect | When updating column definitions and the column menu is not being used, header components are recreated instead of refreshed |
| AG-13529 | Feature Request | [Excel Export] Allow adding extra information when you export as a table (with exportDataAsExcelTable) |
| AG-13522 | Defect | When exporting to Excel with exportAsExcelTable in getSheetDataForExcel, adding a cover page throws an error |
| AG-13517 | Defect | When exporting to Excel with exportAsExcelTable set, exporting more than 26 columns displays a warning |
| AG-13515 | Defect | When copying and pasting selected rows with a checkbox column, the first column contains empty values |
| AG-13486 | Defect | [Regression] When selecting the value "false" in the Rich Select Editor via keyboard, the value is not updated |
| AG-13485 | Feature Request | [Angular] Investigate slower application of built-in filter types when custom filter component is also used |
| AG-13471 | Feature Request | [API] Deprecate gridOption sortingOrder |
| AG-13470 | Feature Request | [API] Deprecate gridOptions.unSortIcon property |
| AG-13456 | Defect | [Row Selection] When cell selection changes the grid is re-drawing rows |
| AG-13444 | Defect | [Regression] When using custom header templates, an error is thrown if the filter button element is not included |
| AG-13443 | Defect | [Cell Selection] When onCellSelectionChanged with rowSelection and cellSelection enabled you cannot select a range of cells |
| AG-13427 | Defect | When using multi-sort with a selection column, only the initially selected nodes are sorted |
| AG-13395 | Defect | When exporting to Excel with a checkbox column, a blank column is exported |
| AG-13381 | Defect | Cell text is incorrectly aligned when using Theming API and thick row borders |
| AG-13374 | Feature Request | [API] Add type for default column, context and chart menu items |
| AG-13334 | Feature Request | [Bundle Size] Build a configurator which provides list of modules to import based on features used |
| AG-13312 | Defect | When using custom date string format, the Advanced Filter Builder displays a validation error |
| AG-13300 | Defect | [Charts][Website] Incorrect Z index for search box on the options API pages |
| AG-13292 | Defect | When opening the filter in the column menu while only the grid header is visible, the page scrolls up |
| AG-13278 | Defect | When pressing ENTER on the search input in the columns tool panel, all column visibility is toggled |
| AG-13262 | Feature Request | [Typing] Export ManagedGridOptionKey Type |
| AG-13259 | Defect | [Regression] When updating column definitions with an active multi-filter, the floating filter displays undefined |
| AG-13254 | Defect | When using the fill handle with refData, the cell values are blank |
| AG-13250 | Feature Request | [Theming] Allow providing separate icons for cases where icons are shared across multiple UI elements of the grid |
| AG-13237 | Feature Request | [API] Deprecate row node properties firstChild, lastChild and childIndex and corresponding events |
| AG-13195 | Defect | [Regression][Theming API] Column group headers are no longer sticky when scrolling horizontally |
| AG-13192 | Defect | [Selection] When selecting a row (row selection changes), the grid re-renders cells |
| AG-13171 | Feature Request | [Selection] Allow in-range bulk deselection of rows |
| AG-13170 | Feature Request | [API] Update RowDragEvent interface vDirection property type |
| AG-13164 | Defect | [Tree data] When setting groupSelected={descendants} getBestCostNodeSelection does not return correct nodes |
| AG-13157 | Defect | [Theming API] When using built-in themes, double-clicking cells with checkboxes causes their alignment to shift to the left |
| AG-13156 | Defect | [Regression] [Theming API] When using an imported built-in theme and setting grandTotalRow = "bottom", the grand total row is not sticky |
| AG-13153 | Feature Request | [API] Deprecate suppressPropertyNamesCheck property |
| AG-13151 | Feature Request | Suppress All Logging via GridOption |
| AG-13134 | Defect | When providing new column definition for number columns, the Set Filter model resets |
| AG-13129 | Feature Request | [Docs] Port CSS theme customisation docs to Theming API |
| AG-13128 | Feature Request | [v33] Angular Minimum Version to v17 |
| AG-13121 | Feature Request | [State] Allow the grid state to save the selectionColumnDef column order |
| AG-13115 | Feature Request | [Selection] Allow setting checkbox based on grid's grouping state |
| AG-13112 | Defect | [Regression] When exporting to Excel/CSV with skipRowGroups=true a blank sheet is exported |
| AG-13102 | Feature Request | [State] Allow the grid state to save the selectionColumnDef width |
| AG-13101 | Feature Request | [Selection] Rename the grid state colId ag-Grid-ControlsColumn to ag-Grid-SelectionColumn |
| AG-13100 | Feature Request | [Selection] Allow selectionColumnDef to be defined with width only without need for maxWidth |
| AG-13081 | Defect | Grid fails to load when extending Object.prototype with custom methods |
| AG-13070 | Feature Request | Setup Integrated Support via external Charts Import |
| AG-13066 | Defect | [Regression][Integrated] When closing the chart pop-up, the horizontal scrollbar returns to the beginning of the grid |
| AG-13054 | Defect | [Website] Allow resetting left-hand side menu scroll position when navigating to a doc page |
| AG-13053 | Defect | [Row Selection] When hiding all columns via column chooser the SelectionColumnDef does not hide |
| AG-13038 | Defect | When using the apply button, the date floating filter runs filtering when scrolling the month in the date picker |
| AG-13027 | Feature Request | [Row Selection][API] Merge 6 row (de)selection-related API methods into two parameterized methods - selectAll, selectAllFiltered, selectAllOnCurrentPage, deselectAll, deselectAllFiltered, deselectAllOnCurrentPage |
| AG-12999 | Feature Request | [Website] Add Symfony Ux bundle to Tools & Extensions in Community section |
| AG-12994 | Feature Request | [SSRM] Remove deprecated SSRM mode 'fullStore'/'suppressServerSideInfiniteScroll'/'suppressInfiniteScroll' |
| AG-12981 | Feature Request | [API] Deprecate column.isHovered() method |
| AG-12974 | Defect | When pasting into a cell with the Rich Select Editor, the text doesn't match the provided values on the first paste attempt |
| AG-12942 | Feature Request | [API] Merge `suppressRowGroupHidesColumns` and `suppressMakeColumnVisibleAfterUnGroup` |
| AG-12939 | Feature Request | [Docs] Update all vue2 code to vue3 in the documentation |
| AG-12923 | Feature Request | [API] Merge `groupRemoveSingleChildren` and `groupRemoveLowestSingleChildren` grid properties as they're mutually exclusive |
| AG-12917 | Feature Request | [API] Make `suppressAggFuncInHeader` reactive |
| AG-12915 | Feature Request | [Website] Add validation/error pages that can be linked from the grid library |
| AG-12861 | Feature Request | [State] Allow the grid state to save the selectionColumnDef sorting state |
| AG-12847 | Feature Request | [Bundle Size] Modularise the grid core module - create separate modules containing feature-specific code |
| AG-12760 | Feature Request | [Sparklines] Update Sparklines to use grid tooltips (to avoid custom tooltips clipped at the bottom of the grid) |
| AG-12732 | Feature Request | [Row Selection] Allow deselecting rows by clicking on them without need for CTRL/COMMAND |
| AG-12701 | Defect | Column flex treats values 0 and less than 1 incorrectly according to CSS flexbox specification |
| AG-12651 | Feature Request | [Column Menu] Allow getMainMenuItems to be called when right-clicking group column header cells, pivot groups column cells and empty header space |
| AG-12432 | Feature Request | [Row Selection] Allow row selection API (node.setSelected and gridApi.setNodesSelected) methods to select grid rows which aren't selectable |
| AG-12287 | Feature Request | Remove AG Grid global browser stubbing in server side environments |
| AG-12044 | Defect | When width of columns equals the provided grid parent width a scrollbar flickering occurs |
| AG-12029 | Feature Request | [Integrated] Doc update to reflect new chart tool panel config |
| AG-11889 | Feature Request | [API] Remove new Grid() constructor and stop mutating gridOptions with api from createGrid constructor |
| AG-11795 | Defect | [Regression] When using colSpan with auto-sizing columns, all spanned columns take the width of the widest column |
| AG-11585 | Feature Request | [Vue] Re-write Vue 3 wrappers primarily to fully support Composition API |
| AG-11496 | Feature Request | Investigate synchronous component in Next JS |
| AG-11417 | Feature Request | Type parentNode data in IServerSideGetRowsParams |
| AG-11375 | Feature Request | [API] Remove null return type from grid API methods tabToNextCell and tabToNextHeaderCell |
| AG-11061 | Feature Request | [Checkboxes] Allow grand total row to be copied when selected |
| AG-10811 | Feature Request | [Theming] Make ThemingAPI the default theming method for the grid |
| AG-10708 | Defect | [Frameworks] - Error when using Custom Vue 3 Components in |
| AG-9171 | Feature Request | [Column Filters] Add a CSS variable to set the floating filter row height |
| AG-8628 | Feature Request | [Row Selection] Allow CTRL+A to select all rows when rowSelection='multiple' |
| AG-8014 | Feature Request | [Accessibility] Allow setting the role attribute for the grid element to "grid" or "treegrid" dynamically based on whether it's showing hierarchical data or not |
| AG-7688 | Feature Request | [Frameworks] Add support for NuxtJS Auto Component Discovery |
| AG-7440 | Feature Request | [API] Allow detailed console warnings only with ValidationModule and a short one when it's not imported |
| AG-7238 | Feature Request | [Accessibility] Allow the selected column menu pinning option to be announced in the column menu as checked |
| AG-7186 | Feature Request | [Column Filters] Allow certain rows to be excluded from/override the column filter applied and to always be shown even if they don't match the filter (filter bypass for certain non-pinned rows) |
| AG-7111 | Feature Request | [Column Sizing] Allow auto-sizing columns to work with ReactUI and asynchronous rendering of React 18 |
| AG-6421 | Feature Request | [Layout & Styles] Allow CSS modularity to only load the styles for the imported AG Grid modules |
| AG-6390 | Feature Request | [Context Menu] Add the Event object to the params of the getContextMenuItems() API method to allow detecting whether CTRL or SHIFT key is pressed when the cell was clicked |
| AG-4489 | Feature Request | [Range Selection] Allow keeping the selected cell range when clicking the row's drag handle (for row dragging) |
| AG-4078 | Feature Request | Allow IHeaderComp to be exported from @ag-grid-community/core |
| AG-2613 | Feature Request | [Context Menu] Allow context menu items to be provided asynchronously |
| AG-2392 | Feature Request | [Column Headers] Add an innerRenderer in the headerComponent to let column header name content to be customized without creating a custom column header component |

### 32.3.9

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15711 | Defect | [v32LTS] Events Held Until After GridReady receive the wrong event body |
| AG-15357 | Defect | [v32LTS][Selection] When removing column labels while pivoting checkboxes get hidden |

### 32.3.8

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15044 | Defect | [v32LTS] When using React 19, an exception "Maximum update depth exceeded" is thrown when scrolling with keyboard |
| AG-15036 | Defect | [v32LTS] When using React 19, an error is thrown due to events firing before onGridReady |

### 32.3.7

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14750 | Defect | [v32LTS] Angular Framework Event Listener Not Clearing Removed Event Listeners |

### 32.3.6

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14706 | Defect | [v32LTS] Cell values are not rendered when using RTL, screen scaling and Zoom due to a Chrome 135+ issue |

### 32.3.5

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14660 | Defect | [v32LTS] Cell values are not rendered when using RTL and Zoom due to a Chrome 135+ issue |

### 32.3.4

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14294 | Defect | [v32LTS][Regression][Cell Editing] Scrolling causes rendering issues after editing and scrolling when singleClickEdit and ensureDomOrder are enabled |
| AG-14292 | Defect | [v32LTS][Regression] When exporting to Excel/CSV with skipRowGroups=true a blank sheet is exported |
| AG-14202 | Defect | [v32LTS] When using removePivotHeaderRowWhenSingleValueColumn, the penultimate level of pivoting can't be collapsed |

### 32.3.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13379 | Defect | [Charts] Charts are not displaying in Safari versions < 16.2 |

### 32.3.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13297 | Defect | When running 'npm install ag-grid-react' with React 19 errors are thrown |

### 32.3.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13233 | Defect | [Regression] Integrated chart legend has overlapping text |

### 32.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-13184 | Defect | When deselecting the header checkbox on Chrome, "Blocked aria-hidden" error is shown in console |
| AG-13139 | Defect | [API] Show context menu params row node type is incorrect |
| AG-13131 | Defect | When reordering rows by dragging with suppressMoveWhenRowDragging, the drop line indicator disappears when hovering |
| AG-13093 | Defect | When using postProcessPopup, applying styles does not apply to submenus in the column menu |
| AG-13090 | Defect | [Regression] When pivoting in SSRM, drag and drop in the columns tool panel is not allowed until a row group is set via the checkbox in the columns tool panel list |
| AG-13088 | Defect | [Layout & Styling] When using the Theming API there are no styles for ag-header-menu-icon |
| AG-13039 | Defect | [Rich Select Editor] When searchType: "fuzzy", list items are not matched in order of their distance from the search term |
| AG-13013 | Defect | [Row Selection] When using lockPosition={true] and moving pinned columns the selectionColumnDef moves from first/most-left position |
| AG-13009 | Defect | [React] When using stopEditingWhenCellsLoseFocus and editing a cell at the start of the grid, a type error is thrown |
| AG-12997 | Defect | [Regression] When passing an initial state value that is non-extensible, an error is thrown in strict mode |
| AG-12992 | Defect | [Regression] When exporting to Excel, processRowGroupCallback is not called for (Blank) row groups |
| AG-12989 | Defect | When switching focus by clicking/toggling a checkbox, two clicks are required |
| AG-12963 | Defect | [Regression] When exporting a JPG image converted to base64 the image does not render in Excel |
| AG-12959 | Defect | [Regression] When selection mode = "cell", editing a cell and highlighting the contents throws a type error |
| AG-12930 | Defect | Column header of a column with autoHeaderHeight doesn’t span the total height of the column group header |
| AG-12927 | Defect | [Regression] Incorrect deprecation message for suppressRowDeselection |
| AG-12916 | Defect | [Regression] suppressRowClickSelection causes rows to be deselected when clicking on selected row |
| AG-12839 | Defect | When focusing a cell and displaying a tooltip, scrolling with keyboard and changing focus causes the tooltip to stick |
| AG-12737 | Defect | When OS scaling is enabled and scrolling to the end of the grid horizontally the right cell border of the grid is not visible |
| AG-12674 | Defect | When editing a cell with autoheight, the fill handle takes up the full height of the cell |
| AG-12626 | Defect | When deselecting checkboxes from columns tool panel on Chrome, "Blocked aria-hidden" error is shown in console |
| AG-12616 | Defect | When suppressStickyLabel=true, and a group column is resized down, the group column header text isn't truncated and overlaps other group column header text |
| AG-12595 | Defect | [Export] When exporting tree data with 8 or more parent nodes, Excel throws error alert |
| AG-12462 | Defect | When updating with row styling properties in React, focus is lost |
| AG-12040 | Defect | [Export] When exporting hyperlinks autoConvertFormulas converts semi colons to vertical bars which breaks some formuli |
| AG-10214 | Defect | When moving focus out of the grid, the tabindex isn't respected and focus passes to the nearest element in the DOM |

### 32.2.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12933 | Defect | Grid doesn't render in Safari 16.3 and earlier because of regex error |
| AG-12924 | Defect | [Bug] Accessing themes from packages causes typescript errors |

### 32.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12929 | Feature Request | [Selection] Allow cellSelection in conjunction with checkbox rowSelection |
| AG-12902 | Feature Request | [Row Selection] Allow enableMultiSelectWithClick to work with selection.singleRow |

### 32.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-14431 | Feature Request | [Pivot] Allow reordering value columns in the value panel of the column tool panel to reorder pivot result columns |
| AG-13019 | Defect | [Rich select editor] When searchType = 'fuzzy' and highlightMatch=true, the matching characters in the editor list items aren't highlighted |
| AG-12859 | Feature Request | [API] Make `removePivotHeaderRowWhenSingleValueColumn` reactive |
| AG-12853 | Defect | When opening a custom React filter component for the first time with SSRM, getRows is called again |
| AG-12842 | Defect | [codemods] .d.ts files are not ignored nor parsed correctly |
| AG-12833 | Defect | [Regression] When there's no valueParser set, pressing DELETE sets the cell to an empty string instead of null |
| AG-12823 | Defect | [Localization] When using non-English provided locales, the column chooser header is still in English |
| AG-12813 | Defect | [Integrated] '0' is not shown on the grouped category axis |
| AG-12806 | Defect | Resizing columns tool panel sections on small grid upwards instead collapses them |
| AG-12804 | Defect | When using autoHeight=true and group total rows, resizing the group column causes the group total cell value to wrap and bleed into the row below |
| AG-12789 | Defect | When using an editable checkbox cell renderer with a value setter, the wrong value is displayed when the value setter returns false |
| AG-12788 | Defect | When using cell data types, the value formatter does not run correctly for group rows, including when using tree data |
| AG-12787 | Feature Request | [API] Allow gridOptions properties to supercede API actions |
| AG-12762 | Feature Request | [Row Selection] Adjust all console message to match new selection API |
| AG-12746 | Defect | [Regression] When using a valueFormatter in defaultColDef, it does not apply to columns with cell data type 'number' |
| AG-12720 | Feature Request | [API] Add `gridApi.isRowDataEmpty` method for CSRM |
| AG-12702 | Defect | [Regression] Custom editor test fails after upgrading to version 31.0.3+ |
| AG-12696 | Defect | [ToolTip] When using Angular, custom tooltips are clipped at the bottom of the grid |
| AG-12673 | Defect | When enableGroupEdit=true, pasting inside a group row cell for an aggregated column doesn't fire onCellEditRequestEvent (when readOnlyEdit=true) and doesn't update column value |
| AG-12670 | Defect | [Docs] Update api.paginationGetRowCount method description to clarify the rowCount value can be impacted by paginateChildRows |
| AG-12669 | Feature Request | [API] Deprecate grid API method getInfiniteRowCount |
| AG-12666 | Defect | Setting reactiveCustomComponents via global grid options does not work |
| AG-12662 | Defect | [Regression] When using the Set Filter with text cell data type and updating the value formatter, the filter is reset |
| AG-12656 | Defect | When tabbing to a new row with full row editing in React, focus is lost |
| AG-12652 | Feature Request | [API] Remove resizeObserverService and deprecate suppressBrowserResizeObserver grid option |
| AG-12648 | Feature Request | [Events] Deprecate the grid columnEverythingChanged event |
| AG-12637 | Defect | [Regression] When tabbing using the rich select editor with stopEditingWhenCellsLoseFocus=true in React, focus is lost |
| AG-12636 | Defect | [Regression] When destroying the grid row nodes are not disposed properly causing increase in memory consumption |
| AG-12634 | Feature Request | [Date Filter] Allow Date Filter "not equal" option to include blanks |
| AG-12632 | Defect | [Regression][Date Filter] includeBlanksInEquals applies also to "Not Equal" filter option |
| AG-12621 | Defect | [Regression] When all data is filtered out and grandTotalRow and pagination are set, TypeError is shown |
| AG-12619 | Feature Request | [API] Add `gridApi.isLastRowIndexKnown` method for SSRM |
| AG-12615 | Defect | [Codemod] Wrong devDependency may cause the package to not be installed |
| AG-12599 | Feature Request | [Pivoting] Add enableStrictPivotColumnOrder property to reset pivot result column order |
| AG-12593 | Feature Request | [API] Deprecate rangeDeleteStart, rangeDeleteEnd, rangeSelectionChanged events and clearRangeSelection API method and grid state object field rangeSelection |
| AG-12591 | Defect | [Tree Data] When adding/removing entries tree data expansion state is not retained |
| AG-12585 | Defect | [Regression] When using Rich Select Cell Editor, opening the dropdown requires multiple clicks to open with async values |
| AG-12581 | Feature Request | [Typing] Pass Generics to Sub Api Interfaces |
| AG-12573 | Feature Request | [API] Deprecate agGridReact and frameworkComponentWrapper in IDetailCellRendererParams |
| AG-12567 | Defect | Export font CSS files from packages |
| AG-12546 | Defect | Root node `getRoute` should return `[]` but is returning `undefined` |
| AG-12532 | Defect | [Docs][Filtering] Filter icon in header does not reset when rowData is empty |
| AG-12528 | Feature Request | [API] Split RowNode class into a shared interface with classes per feature |
| AG-12527 | Defect | [Performance] When scrolling Master-Detail grid with many expanded detail grids, this forces reflows |
| AG-12507 | Defect | [Vue][Master Detail] null parent error when using cellRenderer custom component inside detail grid |
| AG-12505 | Feature Request | Improve Support For Hot Module Reloading |
| AG-12504 | Defect | [React] AG Grid Throws if used within Suspense |
| AG-12446 | Defect | [Regression] Cannot select text within celleditor in Safari with RangeSelection in Safari |
| AG-12431 | Feature Request | [React] Improve rendering performance to prevent cell value rendering collisions when frequently setting new data |
| AG-12425 | Feature Request | [Column Headers] Allow setting suppressHeaderContextMenu to apply to group column header cells and suppress the column menu |
| AG-12299 | Defect | [Regression] Tree Data - Upon data changing, expansion state is lost |
| AG-12284 | Defect | [Regression] Tree data performance decline in v32.0.1 |
| AG-12275 | Feature Request | [State] Allow partial application of column state properties in initial state |
| AG-12241 | Defect | [React] When using detailRowAutoHeight and updating row data, the grid sometimes throws an error |
| AG-12109 | Feature Request | [API] Allow Global Options to be merged and not overridden |
| AG-12049 | Feature Request | [Theming] Add public Theming API |
| AG-11992 | Defect | When starting editing by typing minus, the number editor drops the minus character |
| AG-11856 | Feature Request | [React] Support React 19 in AG Grid |
| AG-11786 | Defect | [Layout] When resizing column headers rendering issues appear |
| AG-11512 | Defect | [Pivoting] When filtering out all pivot columns, filtering them back in causes pivotRowTotals column position to be lost |
| AG-11472 | Feature Request | [Column Filtering] Allow displaying column filter type matching the inferred data type in ag-grid-enterprise (just like in ag-grid-community) instead of defaulting to set filter |
| AG-11445 | Defect | When changing pivotRowTotals property value, row totals column position doesn't update |
| AG-10954 | Defect | [Pagination] When using paginationPageSizeSelector a warning about values appears |
| AG-10566 | Defect | [Selection] When using Firefox cellTextSelection highlights all text above currently selected cell if moving cursor to top of cell |
| AG-10522 | Defect | [Master Detail] When using a grid with three nested levels or more, users cannot tab out of nested grid |
| AG-9877 | Defect | [Context Menu] When using Firefox and using the keyboard to open the context menu for a cell further down the grid, the popup is shown aligned at the top edge of the grid |
| AG-9867 | Defect | [Checkbox Selection] When deselecting a checkbox row in server-side row model, focus remains and causes range selection problems |
| AG-9759 | Feature Request | [Column Filters] Allow using simple provided filters for columns when using ag-grid-enterprise |
| AG-9484 | Feature Request | [Row Selection] Allow always displaying the selection checkbox in the first displayed column |
| AG-9289 | Defect | [Integrated] Unable to disable doughnut series title in integrated charts if customChartThemes is present |
| AG-8599 | Feature Request | [Row Selection] Align checkbox, multi-select SHIFT, CTRL actions in AG Grid |
| AG-8355 | Defect | When sparkline data changes, context doesn't update |
| AG-4689 | Defect | [Integrated] When using a column definition headerValueGetter , chart legend items and field list in Data tab use the column definition headerName value instead |
| AG-3776 | Feature Request | [Accessibility] Allow users to cancel drag and drop operations by pressing ESC key |
| AG-2980 | Feature Request | [Column Moving] Allow column moving to only take effect after the user drops the column, not while the column is still being dragged |
| AG-2786 | Feature Request | [Column Moving] Prevent column moving on the grid when it is dropped into row group panel |
| AG-125 | Feature Request | [Drag&Drop] Allow providing a custom component for ghost drag elements |

### 32.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12752 | Defect | Filter State is Reset Unexpectedly on ColDef Change |
| AG-12463 | Defect | Custom menu item components are not destroyed on close |
| AG-12433 | Defect | [Regression] When using Angular firstDataRendered event fires before the gridReady event fires |
| AG-12420 | Defect | [Regression] When using grandTotalRow and setting paginationPageSize equal to number of rows the grid throws an exception |
| AG-12408 | Feature Request | [Overlays] Add a console warning to inform that hideOverlay does not hide loading overlay when loading=true |
| AG-12407 | Defect | [Theme Builder] downloaded themes have incorrect indentation on first-level group headings |
| AG-12405 | Defect | Theme Builder themes don't correctly style popups when popupParent is outside the grid |
| AG-12374 | Defect | [Regression] [React] Grid steals focus from filter input when sort is enabled and data updates via API |
| AG-12373 | Defect | When refreshing Set Filter values with the same key, the formatted value is not updated |
| AG-12367 | Defect | When updating Set Filter params, read only status is not updated correctly |
| AG-12359 | Defect | [Overlays] When overlayNoRowsTemplate/overlayLoadingTemplate has been provided an empty string the grid crashes |
| AG-12351 | Defect | [Regression] When using row grouping with groupTotalRow="top/bottom", pasting inside grid cells freezes the browser |
| AG-12349 | Defect | When using groupDefaultExpanded, grid state is not updating correctly |
| AG-12344 | Defect | Only first input digit is captured when entering data into numeric fields in Safari |
| AG-12337 | Defect | When using group column filter with server-side pivoting, two calls to load data are made |
| AG-12336 | Defect | [Regression] Focus is stuck in a loop when pagination is enabled and tabToNextCell returns false |
| AG-12327 | Defect | [Regression] When rowData is supplied via applyTransaction after initial loading the loading overlay is not removed |
| AG-12323 | Defect | When providing multiple sort values but no sortIndex on column definitions, grid state does not return all sort values |
| AG-12322 | Feature Request | [Typings] Export AgPublicEventType |
| AG-12313 | Defect | [Theme builder] Incorrect search input padding in theme builder generated themes |
| AG-12311 | Defect | [Theme builder] Generated themes contain no styles for simple community version column filter |
| AG-12298 | Defect | When copy/pasting into a grid cell, the cell flashes sometimes even if cellFlashDuration=0 |
| AG-12297 | Defect | When calling api.getFilterModel() in gridReady event with a filter model passes in initial state, an empty filter model is returned |
| AG-12283 | Defect | [Regression] Cannot edit tree data group rows without setting `enableGroupEdit` |
| AG-12279 | Defect | [Docs] Remove page "Scrolling scenarios" and link to it in docs API |
| AG-12276 | Defect | [codemod] Vue does not parse typescript |
| AG-12239 | Defect | [Localisation] JS modules example is not importing necessary file |
| AG-12201 | Defect | gridApi cannot be mocked and any names are automatically added to grid api as functions |
| AG-12200 | Defect | [Column Menu] When a submenu is opened the postProcessPopup function does not run |
| AG-12198 | Defect | [Regression] Tree Data - when lower levels precede higher levels hierarchy is not displayed correctly |
| AG-12197 | Defect | [Regression] Tree data group rows don't show checkboxes for boolean-type value columns anymore |
| AG-12193 | Defect | When using getRowId, updating existing pinned rows by setting pinnedTopRowData, pinnedBottomRowData doesn't refresh the existing rows |
| AG-12173 | Feature Request | [CodeMods] Allow processing the .gitignore file |
| AG-12113 | Defect | [Accessibility] Screen readers announce pagination toolbar page numbers incorrectly |
| AG-12103 | Defect | [Figma] Column based grids |
| AG-12084 | Defect | [SSRM] suppressServerSideInfiniteScroll crashes when filtering |
| AG-12057 | Defect | When using ShadowDOM, closing the column menu by pressing ESC key doesn't focus the column header cell |
| AG-12050 | Defect | Stick Footer Rows sector does not account for borders taller than 1px |
| AG-12043 | Feature Request | Allow postProcessPopup callback to be called for dialogs such as Column Chooser |
| AG-12038 | Defect | Page jumps when Choose Columns pop up opens from new format column menu |
| AG-12013 | Defect | [Accessibility] Parent groups are wrongly announced as collapsed when groupHideOpenParents=true |
| AG-11984 | Feature Request | [Docs] Add a docs example showing how to sort unbalanced rows together with group rows at the same level |
| AG-11983 | Defect | When pivotColumnGroupTotals = true, suppressExpandablePivotGroups = true does not work |
| AG-11982 | Feature Request | [Overlays] Allow overlays to be focusable and prevent header cells from focus when using loading overlay |
| AG-11934 | Defect | [Regression] Edited cell is clipped by the row below when scrolling to the right |
| AG-11923 | Feature Request | [React] Make suppressCellFocus update without forcing a re-render in React |
| AG-11880 | Defect | Cannot click to expand row groups via touch when `rowDragEntireRow: true` |
| AG-11766 | Defect | Chrome throws "TypeError: Cannot read properties of undefined" exception when selecting autofill popup items on a Custom Cell Edit component |
| AG-11748 | Defect | When dragging (not dropping) column group outside of grid it loses its children visibility state |
| AG-11722 | Feature Request | [CodeMod] Allow passing in a custom import path and a custom component name to the code mod |
| AG-11692 | Defect | Pagination row counts are wrong when using SSRM, grid is filtered with no matching rows, and sorting |
| AG-11587 | Defect | [Regression] Scrollbars rapidly flashing on and off when grid height and width hardcoded to specific pixel values (Mac only) |
| AG-11478 | Defect | [Events] When editing in line and selecting a checkbox cellValueChanged is not triggered |
| AG-11373 | Feature Request | [Icons] When using provided icons they are not showing on custom tool panels |
| AG-11372 | Defect | [Regression] When using React, calling api.refreshHeader() after a column is hidden causes column headers to be rendered in the wrong place |
| AG-11350 | Defect | [Column Pinning] When a column is pinned dragging another column which has lockPinned = true over the pinned column, still shows the pin drag icon |
| AG-11342 | Defect | [Cell Renderer] When expanding rows into full-width row mode scrolling out of view reverts full width automatically |
| AG-11285 | Defect | [Regression] When using React with Firefox or Safari, dragging a column to pin over a pinned column with lockPosition=true renders the two column header text over each other |
| AG-11247 | Defect | [Cell Editing] React only - When stopEditingWhenCellsLoseFocus=true cell cannot be edited in "no-click editing" mode |
| AG-11124 | Defect | [SSRM] When using cacheBlockSize the warning for duplicate row IDs is not displayed and grid rows load persistantly |
| AG-11031 | Feature Request | [Security] Enhance Protection against Prototype Pollution Vulnerability |
| AG-10987 | Feature Request | [Integrated] Allow data tool panel series selection menu to display Column Labels in the dropdown |
| AG-10909 | Defect | [Overlays] When reducing screen size the "no rows to show" message appears on top of header cells |
| AG-10902 | Defect | [Pagination] When clicking on the text "Page Size" the page selector dropdown opens |
| AG-10846 | Defect | [Editing] When using async values for the rich select editor for a cell at the bottom of the grid, the dropdown editor cuts values off and does not open upwards |
| AG-10801 | Feature Request | [Documentation] Add clarification note when groupRemoveSingleChildren=true, child rows are always paginated |
| AG-10488 | Feature Request | [Docs] Initial state docs don't clarify that restoring current page with SSRM/IRM requires setting serverSideInitialRowCount property |
| AG-10324 | Feature Request | [Excel Export] Allow setting the active sheet in an Excel file after an AG Grid export |
| AG-10294 | Defect | [Clipboard] Holding CTRL+C causes highlighted selection of cells to flicker |
| AG-10165 | Defect | [Website] Page scroll upwards when typing into search input field |
| AG-10107 | Defect | [Column Sizing] When flex is set, columns on the right hand side do not cause resizing like they should |
| AG-10008 | Defect | [Cell Editing] Angular only - Cell editor component displays Popup editors "under" instead of "over" cell by default |
| AG-9947 | Defect | When using React, pinning a column via the keyboard, keyboard focus is lost |
| AG-9855 | Defect | onColumnRowGroupChanged event params do not include the removed group column when ungrouping via column menu |
| AG-9635 | Defect | [Cell Editing] When using material theme the height of the Large Text Cell Editor is being overridden |
| AG-9633 | Defect | [Row Height] When autoHeight=true AND hidden=true, row height calculation should not be skipped |
| AG-9616 | Defect | [Column Filters] Set Filter gets applied automatically without clicking Apply button after a transaction is applied |
| AG-9555 | Defect | [Printing] When grid uses absolute position to hide other elements on page, printing causes duplicates and overlapping rows |
| AG-8979 | Defect | [Regression] When setting applyColumnState onGridReady the state is not applied |
| AG-8523 | Defect | [Integrated] When using charts during pivot mode, the data labels between the data tab and the chart legends do not match |
| AG-8385 | Defect | Using the sparklines module appends an empty at the end of the DOM |
| AG-7427 | Feature Request | [Column Groups] Allow group column headers to size themselves according to group header component height/content or wrap their text on multiple lines like regular column headers when wrapHeaderText=true |
| AG-5749 | Defect | [Integrated] When toggling the pivot switch or the select all columns checkbox in the columns tool panel, the chart isn't displayed anymore |
| AG-3798 | Defect | Excel export ignores RTL mode and only exports data in LTR direction |
| AG-3095 | Feature Request | [Excel Export] Allow exporting grid header, rows and columns to Excel as frozen |
| AG-2576 | Feature Request | [Scrolling] Allow full-width rows to horizontally scroll the viewport using the mouse wheel or touchpad on Windows |
| AG-2389 | Feature Request | [SSRM] Allow server-side row model to support groupHideOpenParents=true |
| AG-2065 | Feature Request | [Scrolling] Allow scrolling horizontally using the trackpad/mouse wheel when hovering over header/sticky rows/pinned rows |
| AG-1100 | Feature Request | [SSRM] Allow unbalanced Row Groups in SSRM |

### 32.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12252 | Defect | When using Codemods on Windows, error is shown - Cannot find module '@ag-grid-devtools\codemods\version\31.3.0 |
| AG-12067 | Defect | Update specific chart functions to avoid prototype pollution |

### 32.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12141 | Defect | [Integrated] Hovering over the legend items when a pie chart is cross-filtered will show a line or a dot in the hovered pie chart segment in error |
| AG-12105 | Defect | [Regression] When enableRtl=true and a column has lockPosition=true, other columns cannot be moved |
| AG-12100 | Defect | [Regression] RowSelectedEvent interface for row node events clashes with the RowSelectedEvent from gridOptions |
| AG-12087 | Defect | getOriginalParent method not available in the Column interface |
| AG-12085 | Defect | [Regression] When setting new pinned row data, the old pinned row data is still shown |
| AG-12065 | Defect | Update mergeDeep, _ModuleSupport.jsonApply, _ModuleSupport.setPath, _Util.jsonApply functions to avoid prototype pollution |
| AG-12064 | Defect | [Regression] When setting overlayNoRowsTemplate element.getAttribute error occurs |
| AG-12055 | Defect | [Regression] When enableCellTextSelection=true, dragging a row highlights text across cells |
| AG-12047 | Defect | [Regression] When using the grid API with async/await, an error is thrown |

### 32.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-11979 | Feature Request | [Localisation] Remove full stop from end of aria prop descriptions |
| AG-11977 | Feature Request | [React] Delay Autosizing until React has rendered |
| AG-11975 | Feature Request | [CodeMods] Add Code Mods for deprecations in AG Grid v32 |
| AG-11961 | Defect | [Regression] When excel exporting with strings that contain a carrier return the file generated is invalid |
| AG-11928 | Feature Request | [Localisation] Allow grid to load localisation translations via an external module |
| AG-11913 | Feature Request | [Typing] Correct IRowNode.allLeafChildren typing |
| AG-11907 | Feature Request | Run Popup Menu Positioning Interval outside of Angular Zone |
| AG-11901 | Feature Request | [CodeMod] Allow applying changes on optional chaining code |
| AG-11881 | Defect | Source not correctly passed when setting cols via API or column menu |
| AG-11878 | Defect | [Regression][SetFilter] ExcelMode does not work properly after refreshing columnDefs via API |
| AG-11872 | Defect | [React] When new props are pushed to the grid whilst rows are being redrawn, an error is thrown |
| AG-11871 | Feature Request | [Advanced Filter] Allow closing advanced filter builder via an API method |
| AG-11868 | Defect | When tabbing through the Set Filter with the new column menu, the focus is not trapped within the popup |
| AG-11866 | Defect | When using the legacy tabbed column menu, the afterGuiDetached custom filter component method is not called |
| AG-11865 | Defect | [Figma] Design tokens .json output for Alpine light theme has incorrect colours |
| AG-11843 | Defect | [SSRM] onSelectionChanged logs unselected rows that are in between rows selected via SHIFT + mouse click |
| AG-11842 | Defect | [React] When using custom status bar components and updating the status bar, the component can be duplicated |
| AG-11836 | Defect | [React] When updating custom filters with reactiveCustomComponents and using effects, the filter uses an old value |
| AG-11821 | Defect | Grid tries to focus on the Full Width Row when inner components are already focused (onBlur triggers) |
| AG-11820 | Feature Request | [React] Enable reactiveCustomComponents mode by default for custom components |
| AG-11819 | Defect | [Regression] When typing in the floating filter whilst the row data is updated, the input value resets |
| AG-11762 | Defect | [Regression] When using grid in a modal with a button on top focus navigation with TAB is trapped inside a loop |
| AG-11741 | Defect | [Integrated] `suppressChartRanges` ignored when restoring charts |
| AG-11739 | Defect | [Integrated] Charting with Master Detail causes duplicate data when expanded |
| AG-11728 | Feature Request | Allow customisation of any CSS variable in Theme Builder |
| AG-11714 | Defect | [Total Rows] Vertical scrollbar not shown when reducing grid height with grandTotalRow=bottom and paginationAutoPageSize=true |
| AG-11710 | Feature Request | [API] Add a context property to column definitions to support custom meta-data on the column-level |
| AG-11691 | Defect | When using groupRemoveSingleChildren and a filter is applied, groups with a single filtered child are not copied to clipboard |
| AG-11679 | Feature Request | Prevent --tab-min-width from affecting chart settings menu |
| AG-11677 | Defect | [Regression] When exporting a large dataset to Excel browser crashes and the export doesn't complete |
| AG-11660 | Feature Request | [Localisation] Provide out-of-the-box language pack/localisation files for the grid to support different languages |
| AG-11658 | Defect | Tree data indeterminate state not deselecting rows when `groupSelectsFiltered` enabled |
| AG-11657 | Defect | [Regression] When using multiple grids in Vue rows do not render |
| AG-11652 | Feature Request | [Styling] Prevent font icons and checkboxes from being removed when setting the font on *::after |
| AG-11643 | Defect | Sticky total rows stop sticking after pivoting |
| AG-11642 | Defect | When using unbalanced groups, the set filter tree list does not work properly |
| AG-11638 | Feature Request | [Integrated] Prevent users editing chart title |
| AG-11634 | Defect | [Column Pinning] When pinning columns in RTL mode with already pinned columns preset with lockPosition:right the RTL order breaks |
| AG-11633 | Defect | [Regression] In Angular, when invoking methods or setting filter model on custom filter components before they are opened, the filter component is rendered at the bottom of the grid |
| AG-11632 | Defect | [React] When updating sideBar property on initialisation while using a custom tool panel, an error is thrown |
| AG-11631 | Defect | When using custom filters, the filterChanged event has the wrong source property |
| AG-11627 | Defect | [Styling] --ag-tab-min-width does not work on Quartz |
| AG-11621 | Defect | SSRM Refresh on duplicate ID performing extra request |
| AG-11615 | Feature Request | Portfolio Positions - "Showcase" app |
| AG-11586 | Feature Request | [Tree Data] Improve row loading performance with tree data with large datasets (>100000 rows) |
| AG-11563 | Defect | When using AG Charts Community, Integrated Charts shows a console warning about enterprise features |
| AG-11555 | Defect | Theme Builder exports have incorrect indentation for grouped rows |
| AG-11542 | Feature Request | [React] Allow reactiveCustomComponents to support React class-based custom components |
| AG-11508 | Defect | PasteStart event fired after valueSetter event instead of before it |
| AG-11501 | Feature Request | Respond to changes in CSS variable values after creation of grid |
| AG-11494 | Feature Request | [Frameworks] Remove Vue 2 support |
| AG-11493 | Defect | [Regression] Using react and angular types imported from ag-grid-enterprise cause error |
| AG-11464 | Defect | [Regression] When using Shadow DOM, filter closes upon selecting an operator |
| AG-11444 | Feature Request | [SSRM] Make skeleton loading renderers show different width values |
| AG-11443 | Feature Request | [Drag & Drop] Reinstate the previously deprecated colDef.dndSource and colDef.dndSourceOnRowDrag properties |
| AG-11440 | Feature Request | [Interfaces] Setup column interfaces to only expose public methods |
| AG-11420 | Feature Request | [API] Remove Deprecated Method / Properties for v32 |
| AG-11419 | Feature Request | [API] Remove ColumnApi From the Grid |
| AG-11413 | Defect | When updating column definitions, the set filter resets sometimes when it shouldn't |
| AG-11396 | Feature Request | [Frameworks] Upgrade Dependencies and Angular compatibility |
| AG-11386 | Feature Request | [API] Remove cell position "floating" fallback from tabToNextCell |
| AG-11374 | Defect | [Regression] When opening a column group that introduces the need of horizontal scrolling the horizontal scrollbar is missing |
| AG-11349 | Defect | When exporting empty cell values, the exported cells don't return TRUE when calling the Excel ISBLANK formula on the cell |
| AG-11261 | Feature Request | [Column Menu] Make new column menu layout default |
| AG-11059 | Defect | When editing a cell, opening the context menu and pressing ESC key loses focus |
| AG-11033 | Defect | [Cell Renderer] When toggling cell renderer checkboxes in filter tools panel a flicker can be observed |
| AG-10935 | Feature Request | Allow Algolia search returns matches for text shown in docs pages |
| AG-10611 | Feature Request | [Docs] Clarify how to find out whether a tree data node has child rows (use node.hasChildren() instead of node.group) |
| AG-10420 | Feature Request | [Types] Allow improving types for addEventListener / removeEventListener for rxjs@7 |
| AG-10315 | Feature Request | [Integrated] Allow users to enter colour codes instead of using colour picker |
| AG-10307 | Feature Request | [Cell Rendering] Remove auto-params-refresh from Vue 3 wrapper |
| AG-10269 | Defect | [Column Menu] When enableRtl=true, hiding columns from the column menu, the column menu popup moves |
| AG-10186 | Feature Request | [Keyboard Navigation] Allow setting where the focus goes when tabbing into the grid |
| AG-10173 | Feature Request | [Localization] Use upper case for c in autosizeThiscolumn in the sample localisation file |
| AG-10032 | Feature Request | Add sideEffects: false to modules package.json |
| AG-9620 | Defect | [Regression] When using multiple row selection, SHIFT+click can be used to select a range of rows but not to deselect a range |
| AG-9548 | Defect | [Tooltips] When using Interactive Custom Tooltips, tooltip doesn't always disappear |
| AG-9318 | Defect | [Overlays] When calling multiple updates in React previous overlay content stays in React's render tree |
| AG-9259 | Feature Request | [SSRM] Add warning message when numeric ids are returned from getRowId function |
| AG-9214 | Feature Request | Investigate using custom modules to patch AG Grid code |
| AG-9084 | Defect | When aligning the grid with the bottom of the page, opening the floating filter popup or column menu popup shows a second scrollbar and clips the grid |
| AG-8955 | Feature Request | [Cell Editing] Add support for multi-select in agRichSelectCellEditor |
| AG-8389 | Defect | isRowSelectable called before group flag is set for tree data nodes |
| AG-8134 | Feature Request | [Column Filters] Update simple filter model interface |
| AG-7365 | Feature Request | [API] Add API methods to set the focused column header cell and event fired when column header is focused |
| AG-7026 | Feature Request | [Row Pinning] Allow calling getRowId callback to set row ids for pinned rows instead of using automatically generated ones |
| AG-6860 | Feature Request | [Keyboard Navigation] Allow pressing TAB key when focusing a list item to move focus out of the list instead of focusing the next list item (for example set filter list items) |
| AG-5916 | Feature Request | [Cell Rendering] Update text wrapping to break at word boundaries by default for grid cells and column headers and allow customizing it |
| AG-5497 | Feature Request | [Overlay] Allow showing the loading overlay using a loading property |
| AG-4447 | Feature Request | [Row Pinning] Allow autoHeight to work with pinned rows |
| AG-3463 | Feature Request | [Row Selection] Allow row/checkbox selection in the opposite directions with SHIFT key |
| AG-3332 | Feature Request | [Cell Editing] Allow rich text editor popup to have dynamic height based on number of items |
| AG-2393 | Feature Request | [Column Menu] Allow dragging a column from the column chooser into the grid to reorder columns |
| AG-1926 | Feature Request | [Tree Data] Allow entries of the same first column value in tree data |

### 31.3.4

| Issue | Type | Summary |
| --- | --- | --- |
| AG-12254 | Defect | [Security] Enhance Protection against Prototype Pollution Vulnerability |

### 31.3.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-11618 | Defect | When using grandTotalRow, checkbox does not properly update |
| AG-11578 | Defect | [Total Rows] GrandTotalRow and GroupTotalRow don't scroll horizontally when their value is set to "bottom" |
| AG-11557 | Defect | Sticky Rows don't refresh when calling `api.redrawRows()` |
| AG-11547 | Defect | [Regression] Horizontal scrollbar doesn't appear when columns are increased beyond viewport width |
| AG-11495 | Defect | [Vue2] Erroneous warning when using rowData |
| AG-11490 | Defect | When changing page size, all rows/cells are force rerendered |
| AG-11486 | Defect | [SSRM] Row drag while using `groupSelectsChildren` or `headerCheckboxSelection` logs console warning |
| AG-11409 | Defect | [Regression] Dragging column group twice unhides hidden columns |
| AG-11314 | Defect | When setting gridOptions.pagination via API for the first time the grid does not load rows |
| AG-10910 | Defect | When enabling pagination at runtime, page size selector is empty and grid shows no rows |
| AG-10884 | Defect | [Regression] Vue3 no longer tracks changes in mutated datasets |
| AG-9437 | Defect | When calling api.setGridAriaProperty, this sets the aria- attribute, not the attribute |

### 31.3.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-11463 | Feature Request | [Row IDs] Improve built-in support for number-type row id values by converting value types internally |
| AG-11453 | Feature Request | Theme builder css download and upload |
| AG-11421 | Feature Request | [SSRM] Allow displaying the aggregated columns when pivoting and showing no other pivot result columns |
| AG-11384 | Defect | When hovering a checkbox item in the set filter, the focus outline of the checkbox is cropped |
| AG-11376 | Feature Request | [API] Allow using tabToNextCell and tabToNextHeader methods to move focus to the next focusable element (default browser behavior) |
| AG-11364 | Defect | When updating Set Filter values callback, an error is thrown |
| AG-11361 | Defect | Console warning shown when a detail grid accessed from a destroyed master grid |
| AG-11347 | Defect | SetFilter throws an exception when grid is destroyed |
| AG-11313 | Defect | [Regression] Minified version of styles cannot be imported |
| AG-11311 | Feature Request | [API] Make colDef.suppressHeaderFilterButton property reactive |
| AG-11292 | Defect | When showing/hiding group columns in pivot mode, filter active status is not updated correctly |
| AG-11256 | Defect | When setting dateType="Number" in the gridOptions.excelStyles for a column, null values are exported as 0 in Excel |
| AG-11253 | Defect | [Styling] When using autoWrap=true, word-break is not set to normal |
| AG-11243 | Defect | [Regression] When destroying the grid, an exception occurs if the multi filter has a certain filter model |
| AG-11233 | Defect | [Integrated] Missing `chartDataType=series` will omit the column from charting when filter is reapplied |
| AG-11231 | Defect | When recreating the grid using initial state, an error occurs if a range includes a column that no longer exists |
| AG-11223 | Feature Request | [SSRM] Allow skeleton loading indicators to be shown inside cells of rows in loading state |
| AG-11216 | Feature Request | [API] Deprecate gridApi.getValue method and introduce gridApi.getCellValue method to replace it |
| AG-11209 | Feature Request | [Filtering] Add an option to apply quickFilter to primary columns when pivoting |
| AG-11208 | Feature Request | [Row Grouping] Allow a group total row to be displayed as the first (top) row instead of last (bottom) row in groups |
| AG-11177 | Defect | [Regression] When expanding a group row with a footer row, aggregation values are shown in group row only the first time it's expanded |
| AG-11176 | Feature Request | [Integrated] Allow charting Time Axis with ISO 8601 Format |
| AG-11156 | Feature Request | [Pipeline] Allow search to accept "AG-" prefix when searching for issues |
| AG-11127 | Feature Request | [Shadow DOM] Allow date filter to work with Shadow DOM |
| AG-11123 | Defect | [Regression] When using SSRM with pagination, the pagination panel shows "1 to ?" instead of the page size |
| AG-11113 | Defect | [Row Grouping] When aggFunc is used in row groups, the values do not render upon repeated expand/collapse |
| AG-11065 | Defect | [Regression] Unable to clear cross-filtering on line chart via clicking blank space |
| AG-10924 | Defect | [Regression] Initialise chart with no column causes console error and unresponsive UI |
| AG-10897 | Defect | [Regression] When toggling wrapText and autoHeight, cell values from different rows get rendered over one another |
| AG-10871 | Defect | [Regression] If a set filter is open when its column is updated, the filter list disappears |
| AG-10707 | Defect | [Frameworks] [Vue] Support Custom Vue 2 Components in |
| AG-10562 | Defect | When focusing an editable cell and pressing DELETE key, the valueParser isn't called |
| AG-10306 | Feature Request | [Advanced Filter] Allow the advanced filter to work without unsafe-eval |
| AG-9652 | Feature Request | [Accessibility] Add a filter icon in filter inputs and set filter mini-filter to provide a visual cue for its use apart from the placeholder |
| AG-9300 | Feature Request | Theme Builder |
| AG-8734 | Feature Request | [SSRM] Allow showing loading cell renderers (loadingCellRenderer) on a per-cell basis instead of full-width loading row just like the IRM does |
| AG-8337 | Defect | [Integrated] '&' character in column header being displayed as '&' in chart data panel |
| AG-7645 | Feature Request | [Keyboard Navigation] Allow using HOME/END/PG UP/PG DN keys to focus items in lists of cell editors, columns tool panel list, set filter, filter options |
| AG-7519 | Feature Request | [React] Investigate potential memory leak in React after calling setRowData |
| AG-7128 | Feature Request | [Fill Handle] Add to the public API events onFillStart and onFillEnd |
| AG-5855 | Feature Request | [Accessibility] Allow date filter input to support accessible UI by adding a form label |
| AG-5851 | Feature Request | [API] Allow rowNode.setExpanded(param) typing to indicate it is async, and document it as such |
| AG-5402 | Defect | [Integrated] Hidden columns cannot be charted in Integrated Charts |
| AG-5297 | Feature Request | [Excel Export] Allow displaying a watermark image in the exported Excel file |
| AG-4892 | Feature Request | [State] Add a statically-defined global Grid Options object to set a default configuration for all ag-grid instances |
| AG-4764 | Feature Request | [Row Grouping] Allow the group footer for opened group rows to stick/float at the bottom while scrolling through the group's child rows |
| AG-4399 | Feature Request | [Context Menu] Allow context menu to fire ContextMenuVisibleChanged events when opened/closed |
| AG-4246 | Feature Request | [Pivoting] Allow showing a grand totals row as a pinned row or footer row at top or bottom when pivoting |
| AG-3924 | Feature Request | [Context Menu] Allow opening the context menu from the API |
| AG-3889 | Feature Request | [API] Allow getting the formatted value for a cell in via API call |
| AG-3396 | Feature Request | [Row Grouping] Allow using group footers and still displaying the aggregated values in the group row when expanding the row |
| AG-2953 | Feature Request | Allow adding a sticky/pinned grand total row at the top/bottom of the grid |

### 31.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-11131 | Defect | [Regression] ag-grid-vue/dist/ag-grid-vue.umd.js file missing |
| AG-11114 | Defect | [Regression] SASS import in Angular is broken |

### 31.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-11222 | Defect | [Integrated] API generated grouped range chart only draws the first row of each group |
| AG-11152 | Defect | [Integrated] Unable to chart with Time Axis when the Date Object/Timestamp is used in a Row Group |
| AG-11054 | Feature Request | [Tooltips] Allow agRichSelectCellEditor, agSelectCellEditor, built-in dropdown lists to automatically show a tooltip with the full value when it is truncated inside the element |
| AG-11027 | Feature Request | [Integrated] Allow customisation of Integrated Chart menu |
| AG-11004 | Defect | When setting sparkline values to null via transactions, sparkline still shows non-empty (stale) rendering |
| AG-10986 | Feature Request | [API] Deprecate grid option enableCellChangeFlash and colDef option suppressCellFlash |
| AG-10920 | Defect | [React] Calling redraw rows while updating span crashes grid |
| AG-10918 | Defect | reactiveCustomComponents full width rows lose user params when refreshed |
| AG-10889 | Defect | Accessibility audit tests fail because checkboxes don't have an aria-label |
| AG-10887 | Defect | [Regression] When setting numberFormat.format=null in excelStyles, exporting to Excel throws an exception |
| AG-10886 | Defect | GridPreDestroyed is called async if setup via api.addEventListener / api.addGlobalEventListener |
| AG-10885 | Defect | [Regression] api.isAnyFilterPresent is returning undefined when not using advanced filter and no filters are present |
| AG-10883 | Defect | When using `groupRows`, the groupRowRendererParams callback function does not work |
| AG-10882 | Feature Request | [Drag & Drop] Deprecate the legacy Drag & Drop feature |
| AG-10868 | Feature Request | [Integrated] Split Axes controls to 3 sections |
| AG-10866 | Feature Request | [Integrated] Allow additional Navigator controls in tool panel |
| AG-10857 | Defect | sortIndex applies incorrectly to group column |
| AG-10849 | Defect | [Column Menu] When a checkbox is present in a narrow column header the column menu overlaps into the neighbouring border |
| AG-10828 | Defect | Aria Announcement Service throws error after destroyed |
| AG-10788 | Defect | [Regression] When calling node.setExpanded grid freezes |
| AG-10777 | Feature Request | [Integrated] Add crosshairs control to Integrated Chart in tool panel |
| AG-10776 | Feature Request | [Integrated] Add animation control to Integrated Chart in tool panel |
| AG-10756 | Feature Request | Integrated Charts Menu Redesign |
| AG-10706 | Defect | [Types] When pinned to other than the latest patch a build error occurs |
| AG-9662 | Defect | When opening a docs page showing two examples, focusing a grid cell adds a page to browser history and pressing the browser BACK button clears the example |
| AG-9354 | Defect | [Drag and drop] When more than two grids are interacting an error message is displayed in the console |
| AG-9334 | Feature Request | [SSRM] Change block loading to rows closest to viewport start and display stub rows for child rows |
| AG-9314 | Feature Request | [Columns] Allow setting a max pivot result column count and aborting pivot result column generation and firing an event when it's exceeded |
| AG-9238 | Defect | [Integrated] When editing integrated charts title, previous text remains |
| AG-8529 | Feature Request | [Integrated] Add zoom options to Integrated charts in tool panel |
| AG-8484 | Feature Request | [Excel Export] Allow AG Grid data exported to Excel to be marked as a table so it offers added features |
| AG-7459 | Feature Request | [Integrated] Allow users to change the x-axis type in the FORMAT tab of the chart tool panel |
| AG-7418 | Feature Request | [Integrated] Allow date/time format configuration from the formatting panel |
| AG-7317 | Feature Request | [Integrated] Allow keeping the chart configuration panel open even if user clicks the chart area |
| AG-6508 | Feature Request | [Row Dragging] Allow highlighting the top border of the hovered row when dragging a row with unmanaged dragging (same as suppressMoveWhenDragging=true when using managed row dragging) |
| AG-5999 | Feature Request | [Integrated] Allow setting the aggregation function (aggFunc) for user created charts |
| AG-3856 | Feature Request | [Tooltip] Allow tooltip to be shown only when a value in grid cell/column header/column menu tab/set filter list item is truncated |
| AG-3640 | Feature Request | [Excel Export] Allow the exported file when opened in Excel to show the filter in the header row |
| AG-2831 | Feature Request | [Integrated] Allow charts to be created using rows instead of columns for data |

### 31.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-10829 | Defect | [Charts] Integrated charts cross-filter bar chart shows 'null' tooltip when changing selection |

### 31.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-15460 | Feature Request | [Grid][Themes] - Specific Icon color theme params has no effect if `iconColor` is set |
| AG-10947 | Defect | [Scrolling] When pressing down the mouse wheel to scroll you can only scroll one way (horizontally or vertically) |
| AG-10748 | Defect | [Accessibility] When using grouping, auto group columns have duplicate nested gridcell elements |
| AG-10726 | Defect | When keepDetailRows is enabled and a master detail row that was expanded is collapsed, it does not refresh on data update |
| AG-10721 | Defect | Group column state can have sort index without sort |
| AG-10712 | Defect | Add missing charts exports to @ag-grid-enterprise/charts and ag-grid-enterprise |
| AG-10697 | Defect | [Regression] [React] When using TreeData or row grouping, group column cells have role="gridcell" rendered both for the DIV and for the SPAN elements of the same cell |
| AG-10691 | Defect | [Editing] Api.startEditingCell does not scroll column into view when required |
| AG-10673 | Defect | When setting the filter model on a custom filter with reactiveCustomComponents enabled, the filter is not applied properly |
| AG-10666 | Defect | [Types] Incorrect type value in ColumnEventType |
| AG-10659 | Defect | Toolpanel columns `collapseColumnGroups` can fail without columnDefs |
| AG-10639 | Defect | [Styling] When using Safari an additional transform attribute is present which is inconsistent with other browsers |
| AG-10631 | Feature Request | [Excel Export] Add support for escaping cell values containing formulas so they don't get executed after an Excel export |
| AG-10616 | Defect | [Styling] Fix inconsistent resize handle sizes for column header cells |
| AG-10606 | Feature Request | [SSRM] Deprecate SSRM full store and related properties |
| AG-10590 | Defect | [Integrated] `range-area` mini-chart is not aligned correctly in the setting panel |
| AG-10589 | Defect | [Cell Editing] When using a custom cellEditor and rangeSelection + fillHandle = {true} unmounting grid causes error |
| AG-10580 | Defect | [Column Sizing] When autosizing the grid with a column that has content cut off, horizontal scrollbar flickers |
| AG-10575 | Defect | [State] When using openByDefault:true, the column group state does not restore correctly upon grid recreation |
| AG-10569 | Defect | [React] HeaderCellComp is running against destroyed Header Cell Ctrl |
| AG-10568 | Defect | api.isAnyFilterPresent does not return true when the advanced filter is applied |
| AG-10560 | Defect | [State] When updating the grid using state an updateflushSync error is triggered |
| AG-10552 | Defect | [Angular] ColDef Events Running Outside Zone |
| AG-10550 | Defect | [Grid Size] When using a css container and resizing the grid (specifically reducing size), a horizontal scrollbar appears/flickers |
| AG-10549 | Feature Request | [Column Menu] Allow top item in general menu tab to appear focused |
| AG-10523 | Defect | When providing custom data type definitions, date parser and formatter are read from the base cell data type |
| AG-10521 | Defect | [Regression] When using Balham theme and grid height of less than 150px the floating filter has to reposition itself after opening |
| AG-10484 | Defect | When using cell editor with reactiveCustomComponents, onValueChanged prop reference is changing with every render |
| AG-10481 | Defect | [Regression] setGridOption('columnDefs', [...] ) unable to call with implicit generic type |
| AG-10437 | Defect | When column definitions are updated multiple times before row data is set, set filter model in initial state is not applied |
| AG-10388 | Defect | [Regression] When using applyColumnState or initialState the column width is not restored |
| AG-10367 | Defect | [SSRM] groupSelectsChildren incorrectly propagates deselection to parent nodes |
| AG-10364 | Defect | [SSRM] Refreshed rows which move down inside the block don't retain state/flash |
| AG-10296 | Feature Request | [Typings] Investigate performance improvements for compile time |
| AG-10287 | Feature Request | Add product links dropdown to site header |
| AG-10276 | Feature Request | [React] Deprecate api.getFilterInstance method |
| AG-10261 | Feature Request | [API] Deprecate legacy React custom component format |
| AG-10244 | Defect | [Regression] When cell editing is stopped in React after the grid has been destroyed (due to the tab change) a TypeError occurs |
| AG-10238 | Feature Request | [API] Deprecate IDate.onParamsUpdated and IFloatingFilter.onParamsUpdated |
| AG-10232 | Defect | When pressing ESC key, the entire column/context menu popup is closed instead of just the expanded submenu |
| AG-10218 | Defect | [Regression] When expanding filter tool panel on grid init, Set Filters with number type show empty lists |
| AG-10172 | Feature Request | [React] Deprecate legacy React interfaces |
| AG-10114 | Feature Request | [Tooltip] Allow tooltips to be displayed indefinitely |
| AG-10073 | Feature Request | [Performance] Investigate improving the performance of the calculation stage when pivoting with many row groups |
| AG-10049 | Feature Request | [Accessibility] Improve the aria-live implementation to announce dynamic element descriptions |
| AG-10048 | Defect | Unable to get getCellEditorInstances() for non-visible columns of full row edit |
| AG-9559 | Feature Request | iRowModel interface incorrectly exposes too much on the public interface |
| AG-9369 | Feature Request | [API] Deprecate api.getFirstDisplayedRow and api.getLastDisplayedRow in favor of api.getFirstDisplayedRowIndex and api.getLastDisplayedRowIndex |
| AG-9246 | Feature Request | [SSRM] Add client side sorting for SSRM |
| AG-9210 | Feature Request | [Testing] Add an example showing how to test row clicks in React |
| AG-9085 | Feature Request | [Accessibility] Allow ARIA attributes for column headers to be named correctly (removing uses of aria-description attribute) |
| AG-9062 | Feature Request | [Layout & Styling] Add new properties to customize cell flash animations durations and deprecate cellFlashDelay and cellFadeDelay |
| AG-9056 | Feature Request | [Column Menu] Column menu redesign |
| AG-8807 | Feature Request | [Column Menu] Update column menu UI to display a flat menu with sub-menus instead of tabs |
| AG-8776 | Feature Request | [Integrated] Add `treemap` chart to integrated charts |
| AG-8443 | Feature Request | [Column Headers] Allow suppressing column header cell focus |
| AG-8221 | Feature Request | [Integrated] Add support for bar/column series with time axis in Integrated Charts |
| AG-8140 | Defect | [Integrated] When filtering a cross-filtering chart, clicking the chart navigator resets the applied chart filter |
| AG-7570 | Feature Request | [Accessibility] Allow all cells in a row (instead of just the checkbox cell) to announce its selection status and key to toggle selection |
| AG-7254 | Feature Request | [API] Deprecate API methods with single arguments when an identical method for a list inputs exists |
| AG-6780 | Feature Request | [Clipboard] Allow copied rows to flash when using row selection and pressing CTRL+C to copy rows to clipboard |
| AG-6713 | Feature Request | [Column Menu][Accessibility] Allow column menu to be opened pressing ALT+DOWN ARROW key (just like Excel) |
| AG-6462 | Feature Request | [Accessibility] Allow clicking a menu item in the column menu to return focus to the column header cell if no grid cell was previously focused |
| AG-6284 | Feature Request | [Context Menu] Add parameters to the action callback in the custom context item (MenuItemDef object) |
| AG-5886 | Feature Request | [Column Header] Allow displaying a filter icon in the column header which opens the column filter popup when clicked (just like in Excel) |
| AG-5795 | Feature Request | [Column Menu] Allow first visual element to get focus when opening a popup (filter popup/column menu/context menu) |
| AG-5789 | Feature Request | [Column Menu] Allow resizing the column menu popup to prevent long values clipped in the set filter and column tabs |
| AG-5456 | Feature Request | [Integrated] Allow mapping the group column data path in the tree data to levels in the chart category axis label (when using tree data with integrated chart) just like this is done when using row grouping |
| AG-5057 | Feature Request | [Column menu] Add events to be fired when column menu is opened/closed and column menu tabs switched |
| AG-4737 | Feature Request | [Accessibility] Allow screen reader to announce row as selectable by SPACE key and announce row selection changes (potentially using aria-live attribute) |
| AG-4567 | Feature Request | [Column Menu] Add an option to show the group columns in the column chooser as expanded/collapsed by default |
| AG-4434 | Feature Request | [Excel Export] Allow providing export file name and sheet name via a callback |
| AG-4430 | Feature Request | [Accessibility] When pressing UP/DOWN arrows, wrap around the menu items in context menu and column menu |
| AG-3879 | Feature Request | [Excel Export] Allow compressing the generated Excel export file before saving it |
| AG-3236 | Feature Request | [Integrated] Allow X-labels to get their values from the column headers |
| AG-3233 | Feature Request | [Column Menu] Allow restoring grid columns after they have all been hidden from the column menu UI when the columns tool panel is not shown |
| AG-1820 | Feature Request | [Column Menu] Allow configuring column menu to stay visible until users click outside out of it |
| AG-1606 | Feature Request | [Column Menu] Allow providing custom renderer components for menu items (for both context menu and column menu) |

### 31.0.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-10461 | Defect | Jest / jsdom no longer renders all columns in tests |
| AG-10453 | Defect | Overlays Not Working Under Tests jsdom / Jest |
| AG-10422 | Defect | [Regression] When using React/Angular/Vue, setting column definitions resets the state of custom filter components |
| AG-10419 | Defect | [Regression] When using sequence fixture.detectChanges(), await fixture.whenStable() the gridReady event is not triggered |
| AG-10405 | Defect | [Angular] Custom Component Templates Running Outside Angular Zone |

### 31.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-10314 | Defect | [Integrated] Combination Pivot Chart - can't set title and background |
| AG-10297 | Defect | ColDef has wrong generic type in Column class methods |
| AG-10279 | Defect | [Accessibility] When using row grouping or master/detail, aria-expanded is set on the wrong cell element |
| AG-10260 | Defect | When providing custom data type definitions, filter types are not inherited from the base cell data type |
| AG-10259 | Feature Request | [Typings] Improve performance of NestedFieldPath |
| AG-10258 | Defect | When pinning columns via the column menu the aria-colindex does not get updated |
| AG-10253 | Defect | Investigate the checkbox toggle VoiceOver announcements after pagination details |
| AG-10252 | Defect | Investigate the extra VoiceOver pagination detail announcements before data load |
| AG-10241 | Feature Request | [Accessibility] Update pinned column containers to only set aria-hidden=true when hidden and (aria-hidden=false and role="rowgroup") when visible |
| AG-10229 | Feature Request | [Reactive] Remove Initial Flag from AlignedGrids |
| AG-10216 | Defect | [Angular] When using material tabs, grid row renders act as if viewport height=0 |
| AG-10215 | Defect | `SHIFT` deselects incorrect rows within the selected range in CSRM checkbox selection |
| AG-10207 | Defect | RefreshHeader Throws if called before columnDefs are provided |
| AG-10206 | Defect | Set filter not applied via `api.setFilterModel` onGridReady |
| AG-10205 | Defect | When using initial state, pivot column order is not applied |
| AG-10192 | Defect | [State] Set Filter state is not restored when `initialState` property is applied |
| AG-10170 | Defect | valueFormatter not used for clipboard or exporting of group columns |
| AG-10168 | Defect | [Regression] When applying loading state for a custom tool panel, grid throws an exception |
| AG-10147 | Defect | [Regression] agRichSelectEditor interface has typing errors |
| AG-10145 | Feature Request | [Fill Handle] Add a parameter to fillOperationParams with the initial values in non-aggregated format |
| AG-10142 | Feature Request | [State] Allow stateUpdated event to fire upon initialisation with user-driven events only |
| AG-10137 | Defect | When expanding or collapsing all via the api, the grid state updated event does not fire |
| AG-10132 | Feature Request | [State] Allow restoration of Grid initial states where `true` becomes `false` |
| AG-10109 | Defect | [Row Dragging] When filtering, non-visualised rows are not losing/gaining their drag handles |
| AG-10104 | Defect | [Regression] ARIA description of column header has a leading space |
| AG-10102 | Defect | [SSRM] Generated pivot cols don't inherit primary col def attributes |
| AG-10098 | Defect | [Regression] When using React, grid crashes when applying col state before changing pivot mode |
| AG-10093 | Defect | [Regression] When setting new columnDefs and updating an existing column def to use a custom cellRenderer, the default cell renderer is still used instead |
| AG-10092 | Defect | [Themes] When extending the quartz dark theme, the styling breaks |
| AG-10082 | Defect | Global scrollbar styles leak into AG Grid scrollbars |
| AG-10075 | Defect | Remove initial classification for autoGroupColumnDef |
| AG-10064 | Defect | When using autoHeight, wrapText and sticky group rows, scrolling sometimes freezes grid |
| AG-10060 | Defect | Missing locale string for 'Total' in Group footer and grand total footer rows |
| AG-10053 | Defect | When a cell in a read-only column is present in the selected cell range, clearing the cell range doesn't clear values in cells in columns shown after the read-only column |
| AG-10041 | Defect | [Integrated] Grouped bar not not showing duplicate categories, grouped column does |
| AG-10030 | Defect | SSRM - Tree Data with groupSelectsChildren provides insufficient information to recreate state |
| AG-10010 | Feature Request | [Angular] Allow AG Grid to reduce triggering Angular Change Detection |
| AG-9999 | Defect | Full-width cell renderers not returned by api.getCellRendererInstances() method with embedFullWidthRows |
| AG-9978 | Defect | Duplicate tree data columns exported to Excel when allColumns=true |
| AG-9943 | Defect | Focus in column menu filter and columns tabs leaves the grid when tabbing off the last item in scrollable list instead of moving back to tab item |
| AG-9912 | Defect | When using row grouping, groupDefaultExpanded=-1, updating domLayout='print', collapsing a row group changes the row group order |
| AG-9902 | Defect | When using SSRM with a getRowId callback which returns duplicate row ids, sorting the grid causes it to make repeated server requests |
| AG-9777 | Feature Request | [Theme] Automatic theme dark mode application according to OS dark mode settings |
| AG-9684 | Defect | When using a larger number of columns, displaying filter tool panel makes column moving very slow |
| AG-9683 | Defect | [Advanced Filter] When window screen size cannot fit dropdowns below or above Filter builder pill, dropdowns get rendered on top of the pill |
| AG-9678 | Feature Request | [React] Allow refreshing React custom cell renderers/custom detail cell renderers without the use of useImperativeHandle |
| AG-9660 | Feature Request | [Docs] Update Cell Renderer documentation to provide better explanation and example on how to update params |
| AG-9613 | Defect | When using Set Filter with defaultToNothingSelected=true and setting new row data, the filter is not reset if all selected values are no longer in the data |
| AG-9493 | Defect | When using headerSelectionCheckbox for filtered only selection, even if all rows are filtered out the header checkbox is still shown |
| AG-9478 | Defect | When flex is enabled calling applyColumnState doesn't apply column width settings |
| AG-9382 | Defect | When disabling pivot mode, new auto group columns are placed last, not first |
| AG-9319 | Feature Request | [React] Make noRowsOverlayComponent / params reactive |
| AG-9264 | Defect | [Regression] When groupMaintainOrder=true, sorting on a group column and then removing the sort doesn't restore the natural order |
| AG-9200 | Defect | [Performance] When switching between combination charts in pivot mode, memory leak causes browser to crash |
| AG-8996 | Feature Request | [State] Allow applying a filter model for set filters in onGridReady for both CSRM and SSRM to ensure filter model gets applied |
| AG-8877 | Defect | [Row Grouping] When using sticky group rows and scrolling a flicker can be observed |
| AG-8565 | Defect | When using pivot mode, filtering a primary pivoted column causes secondary column order to be lost |
| AG-7820 | Defect | When using npm rollup AG Grid outputs a circular dependency error |
| AG-7769 | Feature Request | [Column Headers] Add events to fire when the default column header is hovered/no longer hovered or clicked, right clicked |
| AG-7743 | Feature Request | [Tool Panel] Allow the custom tool panel to be updated instead of recreated when tool panel parameters change |
| AG-7728 | Feature Request | [Cell Rendering] Investigate initial rendering performance improvements |
| AG-5928 | Feature Request | [Events] Add a columns property to sortChanged event to indicate which columns changed sort |
| AG-3825 | Feature Request | [Accessibility] Allow overlays to be accessible so overlay message is announced by screen readers and any elements in it are navigable and announced |
| AG-3569 | Defect | DevTools - IPad Emulator + Changing bound property on template: Does not cause Angular to refresh the template with the new value bound (this also happens in MS Surface devices) |

### 31.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-10091 | Defect | Codemod throws errors when used with large repositories |
| AG-10072 | Defect | [Regression] Custom cell renderer refresh does not work in Vue 3 |
| AG-10056 | Defect | [Regression] When pivoting and setting groupTypeDisplay to other than "singleColumn" the second group row breaks and does not display values |
| AG-10054 | Defect | [Regression] When updating pivot mode via both the grid UI and the API, the setting can get out of sync |

### 31.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-10435 | Defect | [Regression] onColumnRowGroupChanged doesn't correctly provide column grouping orders |
| AG-10410 | Defect | When reducing grid width, columns with lockPinned=true get unpinned and can't be pinned later |
| AG-10404 | Defect | [Regression] When using Firefox, the vertical scrollbar partially covers the right-most column cells |
| AG-10221 | Defect | Horizontal scrollbar flashing when calling `sizeColumnsToFit` API in onGridSizeChanged when scrollbar is set to always on |
| AG-10106 | Defect | [Accessibility] When row grouping and setting groupDisplayType: "groupRows", screen reader reads out rowCount incorrectly |
| AG-10079 | Feature Request | [Accessibility] Prevent performance decrease when using ensureDomOrder=true |
| AG-9901 | Defect | When pasting a null value into a boolean column on a Mac, it is converted to false |
| AG-9884 | Feature Request | [Cell Editing] Allow agNumberCellEditor to suppress the stepping behavior so input value doesn't change when user presses UP/DOWN ARROW keys |
| AG-9876 | Feature Request | [API] Deprecate gridOptions property suppressAsyncEvents |
| AG-9864 | Feature Request | Integrated Charts does not handle repeated category values |
| AG-9863 | Feature Request | Cross-filter pie charts don't show tooltip titles |
| AG-9862 | Feature Request | [Integrated] Change themes to use new AG Charts themes |
| AG-9856 | Defect | When using agRichSelectCellEditor with async values, hovering over the popup while values are loaded throws an exception |
| AG-9839 | Defect | Setting row data when using TreeData is significantly slower than normal grouping |
| AG-9838 | Defect | colDef.filterValueGetter is typed incorrectly |
| AG-9828 | Defect | Select/Unselect All Columns checkbox in the columns tool panel remains enabled even when functionsReadOnly=true |
| AG-9825 | Defect | [Charts] Error when creating integrated pivot chart |
| AG-9813 | Feature Request | [Layout & Styling] Allow adding styles to the first and last columns of the grid |
| AG-9812 | Defect | [React] ensureDomOrder={true} doesn't work for grid headers when the `field` property is not set |
| AG-9793 | Defect | [Regression] When using a Mac with scrollbars shown "when scrolling only" and displaying right pinned columns, the column header is narrower than the column cells |
| AG-9788 | Defect | [Regression] - Header Styles - wrong focus border padding and resizer height |
| AG-9719 | Feature Request | [Theme] Add a new theme - Quartz |
| AG-9718 | Defect | Incorrect Warning for CellDataType object with cellRenderer / cellEditor |
| AG-9699 | Defect | Drag and Drop throws an error on fullscreen |
| AG-9693 | Defect | [Column Type] Custom column types allow setting the type property within a custom type |
| AG-9692 | Defect | [SSRM] Incorrect server-side filtering request when using multiple column definitions with the same colId value |
| AG-9681 | Defect | [React] Aggregation Data Not Displayed in initial Render |
| AG-9651 | Feature Request | [Accessibility] Add a magnifying glass icon in search boxes in the columns tool panel and filters tool panel to provide a visual queue for its use apart from the placeholder |
| AG-9648 | Feature Request | [React] Investigate getRows stale React state |
| AG-9634 | Defect | When an element with display=none or visibility=hidden is present in the custom tool panel component, pressing SHIFT+TAB doesn't skip this element and move focus to the previous element |
| AG-9630 | Defect | [Regression] When using a screen filter, unchecked set filter items are marked with aria-checked=true and announced as checked |
| AG-9627 | Feature Request | [Accessibility] Update the agSelect dropdown with role=combobox so it's announced as a combobox |
| AG-9622 | Defect | Adding the Grid to a container with custom white-space breaks layout |
| AG-9619 | Feature Request | Select Cell Editor & Rich Select Cell Editor have inconsistent horizontal padding |
| AG-9608 | Defect | [Performance] When using useMemo with defaultColDef AgGrid crashes |
| AG-9607 | Defect | [Regression] Vertical overflowed content not displayed beyond cell boundaries |
| AG-9606 | Defect | When filter not applied, filter option is not reset when opening the filter once again |
| AG-9599 | Defect | When providing async values to the Set Filter, the callback is not provided the latest context reference |
| AG-9598 | Feature Request | Make grid animate rows by default and columns sortable and resizable by default |
| AG-9595 | Defect | [Regression] When using React, toggling true/false autoHeaderHeight and wrapHeaderText, the header formatting breaks |
| AG-9590 | Feature Request | [Column Sizing] Add grid option for autosizing columns on initial render |
| AG-9550 | Defect | [Cell Editing] When clearing values in the agRichSelectCellEditor by selecting all and delete, the filter/highlight function does not work anymore |
| AG-9529 | Defect | [React] Updating Row Data / Columns Ordering Issue |
| AG-9523 | Defect | [Regression] When defining Agg function names, the naming convention is inconsistent between sidebar and column menu |
| AG-9512 | Defect | [Regression] When scrolling below sticky row after row expansion and selection by API the grid crashes |
| AG-9508 | Defect | [Filtering] When grid has been destroyed, custom filters should be prevented from updates |
| AG-9507 | Defect | [Cell Rendering] When using getRowID is provided and rowData is updated, cell renderer data is one step behind |
| AG-9494 | Defect | [Pivoting] ValueFormatter doesn't run consistently in pivot mode |
| AG-9479 | Feature Request | Make rowGroupPanelSuppressSort reactive |
| AG-9467 | Feature Request | [Import] Allow useValueParserForImport to be true by default and introduce suppress property |
| AG-9466 | Feature Request | [Export] Allow useValueFormatterForExport to be true by default and introduce suppress property |
| AG-9465 | Defect | When export params have skipRowGroups=true, CSV/Excel exported file shouldn't include the autoGroupColumn or collapsible row groups |
| AG-9463 | Feature Request | Support multiple grids sharing a single GridOption object |
| AG-9461 | Defect | [Regression] Grid cells aren't rendered under the column header when there are right pinned columns - Windows Firefox and Mac only |
| AG-9458 | Feature Request | [API] Removal of v28 deprecations in v31 release |
| AG-9448 | Defect | [Events] When multiple grids are initialised with the same gridOptions object, the last grid events override the events of other grids |
| AG-9447 | Defect | [SSRM] When rowSelection='multiple', purging the cache does not clear row selection |
| AG-9446 | Defect | [Cell Editing] Incorrect agRichSelectCellEditor dropdown width when enableCellTextSelection=true |
| AG-9439 | Feature Request | [React] Make GridOptions properties reactive |
| AG-9432 | Defect | [Editing] When navigating via pagination during full row editing, rowValueChanged does not fire |
| AG-9425 | Defect | [Regression] Grid hangs when user clicks Expand All Groups while in Pivot Mode |
| AG-9423 | Feature Request | [React] Make gridOptions.rowDragManaged property reactive |
| AG-9420 | Feature Request | [React] Make gridOptions suppressHorizontalScroll, alwaysShowHorizontalScroll and alwaysShowVerticalScroll reactive |
| AG-9350 | Defect | [SSRM] When using SSRM pivot mode and mixed group sorting, sorting on individual group columns doesn't refresh grid rows |
| AG-9207 | Defect | EventService - Investigate cleaning up of user events after Grid has been destroyed |
| AG-9154 | Feature Request | [Column Headers] Make colDef.headerTooltip property reactive |
| AG-9067 | Feature Request | [Column Filters] Add Advanced Filter support when using SSRM |
| AG-9042 | Defect | [Integrated] Allow integrated charts to work with complex object fields |
| AG-9030 | Defect | When using row grouping, a tooltip is not displayed for non-empty cells in group rows |
| AG-9019 | Defect | When an element with display=none is present in the detailCellRenderer, focus leaves the grid when pressing TAB key instead of moving to the next master row |
| AG-9012 | Feature Request | [React] Make gridOptions.rowSelection property reactive |
| AG-8988 | Feature Request | [React] Make gridOptions.masterDetail property reactive |
| AG-8948 | Defect | [Styling] 100% Column header cell separator height doesn't work when using multiple levels of column groups |
| AG-8934 | Feature Request | [React v31] Remove Legacy React Rendering |
| AG-8909 | Defect | When setting colDef.suppressColumnsToolPanel=true, the column still appears in the row group, pivot and values panels of the columns tool panel |
| AG-8902 | Feature Request | [API] Remove simpleHttpRequest static method |
| AG-8785 | Feature Request | [React] Make colDef.cellRendererParams reactive |
| AG-8722 | Feature Request | [Export] Remove XML export-related code from AG Grid codebase |
| AG-8615 | Feature Request | GridApi - Remove Timeout for clearing out api Methods to avoid undefined behaviour |
| AG-8454 | Feature Request | [API] Make suppressMovableColumns property reactive |
| AG-8433 | Feature Request | [React] Make gridOptions.groupDefaultExpanded property reactive |
| AG-8274 | Feature Request | Support Custom Vue 3 Components in |
| AG-8236 | Feature Request | [Row Selection] Allow using row range selection together with checkbox selection |
| AG-8107 | Feature Request | [React] Make groupDisplayType property reactive |
| AG-7980 | Feature Request | [React] Make gridOptions.isRowSelectable callback reactive |
| AG-7873 | Feature Request | [React] Make gridOptions.cacheBlockSize property reactive for Infinite Row Model |
| AG-7822 | Feature Request | [State] Allow getting/setting (saving/restoring) horizontal/vertical scroll positions |
| AG-7680 | Feature Request | [React] Make gridOptions.pivotRowTotals property reactive |
| AG-7654 | Feature Request | [Events] Allow a global state change event to be fired when any state in the grid changes |
| AG-7557 | Feature Request | Make gridOptions top level prop reactive |
| AG-7446 | Feature Request | [Accessibility] Allow filtered columns to be announced as filtered when focusing their column header cell |
| AG-7096 | Feature Request | [Integrated] Allow the integrated chart-related grid options to be reactive |
| AG-6831 | Feature Request | [Row Selection] Allow unselecting indeterminate header checkbox |
| AG-6823 | Feature Request | [React] Allow wrapText and autoHeight to be reactive to update row height each time they're changed |
| AG-6773 | Feature Request | [Column Filtering] Allow filter operations to follow the same order across filter types and naming convention (just like Excel) |
| AG-6541 | Feature Request | [Accessibility] Allow announcing the number of matching list items when using the search box in the columns/filter tool panel |
| AG-6381 | Feature Request | [Pagination] Allow pagination panel to set the page size via a dropdown |
| AG-6249 | Feature Request | [Accessibility] Allow users to reorder columns using the keyboard via the column headers |
| AG-6243 | Defect | [Regression] When using row autoheight, rendering rows produces a flicker as the rows change height from the default value to the auto-height value |
| AG-6179 | Feature Request | [Column Filter] Allow delta changes to colDef.filter and colDef.floatingFilter |
| AG-5854 | Feature Request | [React] Make colDef.filterParams a reactive property |
| AG-5814 | Feature Request | [Accessibility] Allow users to resize columns width using the keyboard |
| AG-5777 | Feature Request | [Column Pinning] Allow accessing the unpinned columns area when pinning a wide column covering the entire width of the grid |
| AG-5734 | Feature Request | [Row Grouping] Allow keeping the row groups/pivot columns value original type instead of converting it to string to support grouping by complex objects |
| AG-5343 | Feature Request | [Row Selection] Allow deselecting row range from the selected rows range when using SHIFT+click |
| AG-5201 | Feature Request | [Accessibility] Allow specifying a column as a rowheader, so its cell values are announced before announcing the cell value of any other column in this row (setting role="rowheader" scope="row" for the cells in the specific column) |
| AG-5147 | Feature Request | [Columns Tool Panel] Allow displaying a custom name for a column in the columns tool panel columns list |
| AG-5024 | Feature Request | [Accessibility] Resolve ARIA failures aria-required-children, and scrollable-region-focusable reported by Accessibility Insights plugin |
| AG-4628 | Feature Request | [Row Selection] Allow api.getSelectedRows() to return the selected rows in order of selection in Client Side Row Model |
| AG-4627 | Feature Request | [React] Make gridOptions suppressCellFocus and suppressRowClickSelection properties reactive |
| AG-4598 | Feature Request | [Row Grouping] Allow preventing ungrouping and reordering columns in row group panel on a per-column basis |
| AG-4436 | Feature Request | [React] Make chart series label properties reactive |
| AG-3915 | Feature Request | [Column Pinning] Allow automatically unpinning/preventing the pinning of grid columns when total pinned width exceeds grid width |
| AG-3875 | Feature Request | [Scrolling] Add support for sticky scroll bars |
| AG-3868 | Feature Request | [Drag & Drop] Add event for column dragging outside the grid |
| AG-3830 | Feature Request | [Row selection] Allow choosing Windows/Mac row selection mode |
| AG-3774 | Feature Request | Allow dynamically configuring if the group cell renderer should be used on a node by node basis based on its indentation level / key being used to group |
| AG-3655 | Feature Request | [React] Make gridOptions.groupHideOpenParent property reactive |
| AG-3331 | Feature Request | [Tooltip] Allow conditionally rendering tooltips |
| AG-3315 | Feature Request | [Column Menu] Allow configuring renderers for custom column menu tab |
| AG-3152 | Feature Request | Revamp theming to simplify customization of different areas of the grid including (border transparency, size units not tied to px, provide more defaults to be overridden) |
| AG-3114 | Feature Request | [Layout & Styling] Allow users to use SVG icons as pre v20, so that they can seamlessly choose between using web fonts or SVG icons. |
| AG-2976 | Feature Request | [SSRM] Show warning when using SSRM + set filter and not specifying newRowsAction: 'keep' |
| AG-2924 | Feature Request | [Clipboard] Allow to format process for cells in specific columns |
| AG-2913 | Feature Request | Allow combining multiple themes |
| AG-2843 | Feature Request | [Drag & Drop] Add to drag and drop events (over and drop) information about the target column |
| AG-2815 | Feature Request | [Column Headers] Allow refreshHeaders to also update the columns in the toolPanel when using a custom column header component |
| AG-2745 | Feature Request | [Aggregation] Allow configuring where aggregation should be displayed so that they can be shown in group columns |
| AG-2706 | Feature Request | [Row Selection] - Add rowClickedEvent listener to mouse middle click |
| AG-2635 | Feature Request | [Pivoting] Allow secondary columns to reuse colDef properties like hiding when used for values |
| AG-2615 | Feature Request | Allow getFirstRenderedRow method to return the first row in the viewport even when rowBuffer > 0 |
| AG-2600 | Feature Request | [Column Sizing] Improve performance of batch updating of column widths |
| AG-2596 | Feature Request | [Rendering] Allow ensureRow or ensureCol to be called so that it changes the scroll without changing the focused cell |
| AG-2559 | Feature Request | [Export] Add callback to all exports CSV/XLS/XLSX - processGroupHeaderCallback |
| AG-2538 | Feature Request | Allow rowData to be based on position instead of column key |
| AG-2522 | Feature Request | [Excel Export] Automatically export boolean values to boolean native Excel types |
| AG-2513 | Feature Request | [API] Add API method to check if the currently loaded grid is enterprise or not |
| AG-2494 | Feature Request | [Layout & Styling] Allow material theme to have some air at the bottom of the grid to allow for material editing in the last row |
| AG-2450 | Feature Request | [Aurelia] Allow ag-grid-aurelia colDefs to work without .bind |
| AG-2367 | Feature Request | [Layout & Styling] Allow styling the selection state/area |
| AG-2354 | Feature Request | [Aligned grids] Allow column groups to have different child columns showing while keeping the overall width |
| AG-2190 | Feature Request | [Infinite row model] enableServerSideSorting ensure only one request is made initially |
| AG-2107 | Feature Request | [Updating Data] Add a method to batchUpdateRowData allow clearing the queue |
| AG-2090 | Feature Request | [Layout & Styling] Add new SASS variable to allow configuring the border-type for rows |
| AG-2022 | Feature Request | [React] Allow batch update of node selection with a single render |
| AG-1998 | Feature Request | [Infinite Row Model] Prevent users from applying Pivot and Row Grouping in Infinite Row Model |
| AG-1989 | Feature Request | [Full-width rows] Add support for Total Footers when using full-width rows |
| AG-1983 | Feature Request | [Events] Allow users to access event objects to stopPropagation and avoid bubbling |
| AG-1963 | Feature Request | Improve performance of batchUpdateRowData |
| AG-1929 | Feature Request | [Master/Detail] Allow retaining state per detail grid |
| AG-1856 | Feature Request | [Updating Data] Allow batch updates somehow when using deltaRowDataMode |
| AG-1836 | Feature Request | [React] Make StatusBar a reactive property |
| AG-1801 | Feature Request | [Master/Detail] Allow Aurelia templates to work with m/d |
| AG-1696 | Feature Request | [React] Make gridOptions.enableRangeSelection property reactive |
| AG-1628 | Feature Request | add semantic classes to ag-menu so users can target styles for different sections of the app |
| AG-1611 | Feature Request | [Drag & Drop] Add API method to recalculate the row drag & drop on demand |
| AG-1597 | Feature Request | [Tree Data] Allow returning all sub-nodes for a specific node |
| AG-1563 | Feature Request | [React] Allow reactiveness for the data when using infinite/server-side row models |
| AG-1535 | Feature Request | [State] Allow save/restore of initial grid state as a single object |
| AG-1461 | Feature Request | [Layout & Styling] Allow styling for pivot columns |
| AG-1377 | Feature Request | Allow configuring what to do when tabbing on the last row, ideally allow tabbing to the next HTML element. |
| AG-1364 | Feature Request | [API] Make gridOptions.domLayout a reactive property |
| AG-1317 | Feature Request | [Performance] Overcome limitation of maximum div size so that the grid can handle millions of rows |
| AG-1302 | Feature Request | [Clipboard] Allow specifying what should be copied to the clipboard if rows selected and a single cell selected |
| AG-1280 | Feature Request | [Context Menu] Allow adding the column panel into the context menu |
| AG-1274 | Feature Request | [Scrolling] Have no lag with vertical scroll |
| AG-1253 | Feature Request | [Column Pinning] Allow pinning to only take effect when the user drops the column not as they move it around |
| AG-1244 | Feature Request | [Excel export] Allow grouped rows to export padding to Excel file |
| AG-1218 | Feature Request | [SSRM] Allow getRowHeight to provide smooth transition in SSRM if called dynamically |
| AG-1168 | Feature Request | [Cell Rendering] Allow creating and registering a custom row renderer |
| AG-797 | Feature Request | [clipboard/export] Allow to specify as source not only selected rows or range, but any rows/range |
| AG-670 | Feature Request | [Performance] Vertical repaint issue with certain browsers |

### 30.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-9592 | Defect | [Regression] When pressing TAB, currently focused value is not selected in agRichSelectCellEditor |
| AG-9581 | Defect | [Regression] When agRichSelectCellEditor value set to null, cellValueChanged event gets triggered upon cancelling edit |
| AG-9580 | Defect | [Regression] When agRichSelectCellEditor value set to null, cellEditRequest event gets triggered upon cancelling edit |
| AG-9566 | Defect | [Regression] Unable to scroll horizontally using trackpad on Mac or SHIFT+mouse wheel on Windows when mouse is not hovering grid rows |

### 30.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-9487 | Defect | [Packaging] LICENSE.txt file contains error |
| AG-9360 | Defect | Sorting Row Groups with non-row group columns doesn't work when a 'field' or 'valueGetter' is present on the auto column. |
| AG-9357 | Defect | When using the viewport row model, row-id values get out of sync when row data is updated |
| AG-9347 | Defect | [Solid] Header Classes Not applied correctly |
| AG-9317 | Defect | [Cell Editing] When filters are enabled for No Click editing, row Index returns incorrect cell |
| AG-9309 | Defect | When selecting a range with SHIFT + click, focus is not restored to the grid if it has been lost |
| AG-9296 | Defect | [Rendering] When using print domlayout, rendering/spacing at the top of the grid is incorrect |
| AG-9276 | Defect | [React] RowComp being rendered for Non Displayed RowCtrl with animateRows |
| AG-9269 | Defect | [Pivot] Grid crashes when modifying agg columns with large pivoted dataset |
| AG-9265 | Defect | [Row Grouping] When sorting the primary column of the group with maintainGroupOrder=true, the group column does not sort |
| AG-9248 | Defect | [Regression] When setting an undefined cell value to null, the new value is discarded |
| AG-9230 | Feature Request | [Import/Export] Allow Excel and CSV exports to respect row grouping logic |
| AG-9222 | Defect | [Regression] When updating columnDef via setColumnDefs the columnGroupShow state is reset |
| AG-9218 | Defect | [Regression] When pinned columns exceed the width of the grid, two vertical scrollbars are displayed |
| AG-9204 | Defect | When setting a value in the number floating filter, numberFormatter is called with the already formatted value |
| AG-9193 | Defect | [SSRM] [Tree data] Reordering tree data parent nodes with refresh loses state |
| AG-9190 | Defect | Setting gridOptions.rowHeight a value smaller than default row height clips cells when using domLayout=print |
| AG-9183 | Defect | [SSRM] When updating datasource while groupincludefooter=true, max call stack error appears in console |
| AG-9175 | Feature Request | Add typing, filter, async population of values to Rich Select Editor |
| AG-9145 | Defect | When using React, scrolling horizontally through many columns, the column header values are rendered after a brief lag |
| AG-9137 | Defect | [Regression] When setting rowHeight in infinite row model, the first row does not get affected |
| AG-9052 | Defect | [Selection] When rangeSelection is enabled using CTRL + Click for Right Click on Macs loses selected range |
| AG-9032 | Defect | When overlay is shown in a small grid, column header resizers are displayed over the overlay |
| AG-8999 | Feature Request | Add Advanced Filter Builder UI for building filter expressions |
| AG-8981 | Defect | [Column Sizing] When there is no timeout, autosizing for group column does not work in React 18 |
| AG-8941 | Defect | [Cell Rendering] When calling api.setRowData more than once isFullWidthRow callback does not get called anymore |
| AG-8925 | Defect | When using row grouping with checkbox selection and the leaf row value in group column cell is null/undefined, no checkbox is shown |
| AG-8804 | Feature Request | [Column Definition] Add support for Recursive Types in colDef.field |
| AG-8632 | Feature Request | [Row Grouping] Simplify using a valueFormatter on the grouped column or auto-group column |
| AG-8138 | Feature Request | [Column Filters] Allow Date Filter to support min/max dates |
| AG-7953 | Feature Request | Make groupIncludeTotalFooter and groupIncludeFooter properties reactive |
| AG-7275 | Feature Request | Make suppressDragLeaveHidesColumns property reactive |
| AG-5989 | Feature Request | [API] Make treeData property reactive |
| AG-5565 | Feature Request | Allow providing custom matching logic to Quick Filter |
| AG-5196 | Feature Request | [SSRM] Allow setting the initial number of records to load in SSRM |
| AG-4483 | Feature Request | Add a new list option "Add current selection to filter" to set filter in Windows mode |
| AG-4316 | Feature Request | [SSRM] Allow loading SSRM blocks via API without requiring user to scroll to them (to load the block containing a specific row index before calling ensureIndexVisible for that row index) |
| AG-2960 | Feature Request | When minWidth > width show warning in console and increase width to minWidth |
| AG-2920 | Feature Request | [Drag & Drop] Allow preventing the scroll in the grid when dragging a row outside the viewport |
| AG-2882 | Feature Request | [Column Headers] Make header component reactive |
| AG-2810 | Feature Request | [Tool Panel] Allow using a custom icon for a custom tool panel |
| AG-2787 | Feature Request | [Scrolling] Allow displaying horizontal scrollbar at the top of the viewport in Macs when using a trackpad and using the option scroll 'Automatically based on mouse or trackpad' |
| AG-2699 | Feature Request | [SSRM] Allow specifying lastRow independently of the rows in the SSRM in a different asynchronous call |
| AG-2581 | Feature Request | [Context Menu] Allow configuring icons for default context menu items that have no icons for default (ie Excel export) |
| AG-2368 | Feature Request | [Row Selection] Allow reevaluating whether headerCheckboxSelection is enabled through an API call |
| AG-2297 | Feature Request | [API] Add a method to the Grid API to return the context |
| AG-2228 | Feature Request | Allow lazy loading of rows when using autoHeight, ie on scroll to configured amount of rows, append N more rows at the bottom |
| AG-2219 | Feature Request | Improve performance of row auto height when resizing the columns |
| AG-2082 | Feature Request | [Columns Headers] Allow specifying in the colDef the position of a column |
| AG-2032 | Feature Request | [Column Filters] Allow suppressing quickFilter lookup in hidden columns |
| AG-1962 | Feature Request | Allow showing Group Footer Rows based on custom logic |
| AG-1567 | Feature Request | Allow extending properties of colDef specified in both a colDef and the defaultColDef |
| AG-1235 | Feature Request | [Clipboard] Allow copying entire row and pasting entire row from the clipboard |
| AG-684 | Feature Request | Add new gridPreDestroyed event |

### 30.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-9364 | Defect | When using Firefox on Windows, the last detail grid cannot be scrolled horizontally |
| AG-9307 | Defect | When useValueFormatterForExport=true, exporting to Excel doesn't export the formatted value |
| AG-9162 | Defect | [Regression] When moving a child column out of the Column Group Header, the Column Group Header and all its columns move with it |
| AG-9151 | Feature Request | [Column Filters] Allow formatting the filter model value to display in the number filter input when using the numberParser |
| AG-9146 | Defect | [SSRM] When header checkbox is checked, and the user scrolls to load a new block of rows, newly loaded unselectable rows are also selected |
| AG-9127 | Defect | When using enableRtl=true, using ngClass to set grid height to not render the rows, restoring a larger grid height shows 2 vertical scrollbars |
| AG-9096 | Feature Request | [React] Display warning message when setting detailCellRendererParams.template in React saying this isn't supported |
| AG-9080 | Defect | Guard VirtualList against error when model not yet set |
| AG-9068 | Defect | When using unbalanced groups, the Set Filter Tree List does not display all groups |
| AG-9065 | Defect | [Docs] Install with NPM React link leads to empty page |
| AG-9053 | Defect | [Scrolling] When using Firefox alwaysShowHorizontalScroll and alwaysShowVerticalScroll properties are not working |
| AG-9051 | Feature Request | [Layout & Styling] Add a Figma Design System to design & customise AG Grid |
| AG-9048 | Feature Request | [Column Filters] Add a source parameter to the filterChanged event to indicate the type of filter that fired it |
| AG-9031 | Defect | Changelog for v30.0 misspells rowNode.setSelected method name |
| AG-9013 | Defect | When using React, changing the height of the grid while calling autoSizeAllColumns truncates a column unnecessarily |
| AG-8967 | Defect | When using React and Viewport Row Model with rapid updates, calling flashCell throws an exception |
| AG-8958 | Defect | When providing a set filter model with empty string, it doesn't filter records with empty strings |
| AG-8949 | Defect | [Columns] When removing a pivot/row group/aggregation the wrong column is provided to the onColumnRowGroupChanged, onColumnValueChanged, onColumnPivotChanged |
| AG-8945 | Defect | [Cell Rendering] When using groupRowRenderer and checkboxes in Angular, checked row groups are hidden unless hovered over |
| AG-8924 | Defect | When using React and calling the api to start editing a cell from the context menu (that was opened from a different cell), editing does not start |
| AG-8921 | Defect | [Selection][SSRM] Pressing SPACE key triggers onRowSelected event even when row wasn't selectable |
| AG-8898 | Defect | [Regression] When sorting by one of the group columns by clicking the pill in the row group panel, leaf values shown in the row group column are sorted as well and the group column is showing a sort direction instead of mixed direction |
| AG-8870 | Defect | [Column Sizing] Column width does not retain when flex enabled and Group Column set as row group |
| AG-8824 | Defect | When calling api.refreshServerSide with purge=false and there are fewer groups than previously loaded, an infinite reload loop can occur |
| AG-8817 | Defect | When calling api.sizeColumnsToFit() it doesn't grow column width if it has a minWidth set and the grid's width is less than 1400px |
| AG-8802 | Defect | [SSRM] When maxConcurrentRequests=-1 (no limit), refreshing the rows loads cache blocks one at a time still using a limit for the number of requests |
| AG-8775 | Feature Request | [Column Filters] Allow Advanced Column Filtering with filtering expression support |
| AG-8657 | Feature Request | [Row Grouping] Allow ungrouping via the column menu item on auto-grouped columns |
| AG-8585 | Defect | When crossfiltering an integrated chart to a blank value, blank entries are not shown in grid |
| AG-8559 | Defect | [Performance] When initiating a grid with a large number of columns (thousands), the UI freezes |
| AG-8243 | Feature Request | [Column Filters] Disable auto-fill prompts for floating filter inputs by default and add a filterParams property to optionally enable them |
| AG-8061 | Feature Request | [Pivoting] Allow setting the default expanded level of pivot columns (similar to the groupDefaultExpanded property for the expanded row group level) |
| AG-7921 | Feature Request | [SSRM] Allow users to modify the value aggregation function from a secondary column when using SSRM and pivoting and improve secondary column workflow when pivoting |
| AG-7724 | Defect | When calling redrawRows API method, pinned rows are always redrawn regardless of the parameters |
| AG-7712 | Feature Request | [SSRM] Allow postSortRows callback to fire when using SSRM |
| AG-6278 | Defect | When pivoting and updating a state variable in React, secondary column order is reset |
| AG-4461 | Defect | When showing long options in a agRichSelectCellEditor they are clipped instead of truncated |
| AG-3757 | Defect | When calling api.resetRowHeights, footer row heights aren't updated |
| AG-3523 | Feature Request | [Tooltip] Allow interactive tooltips which remain visible as long as the mouse hovers the tooltip |
| AG-2655 | Feature Request | [Cell Editing] Improve rich cell editor rendering, customization, CSS variable support, popup sizing matching column width |
| AG-2278 | Feature Request | Allow automatically creating pivot result columns (secondary columns) with SSRM |
| AG-2211 | Feature Request | [Cell Editing] Allow agRichSelectCellEditor to automatically shrink vertically if the options provided aren't high enough to fill the default height |

### 30.0.6

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8998 | Feature Request | [Build] Default AG Grid Packages to use CommonJS |
| AG-8918 | Defect | [Mobile view] Date placeholder does not show up for mobile devices |

### 30.0.5

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8916 | Defect | When using cell data types, columns are incorrectly inferred as dateString if text partially contains a date |
| AG-8894 | Defect | SSRM refresh inconsistently persists group state |
| AG-8879 | Defect | [Regression] When scrolling Master Detail grid horizontally with the mousepad the main grid prevents scrolling |
| AG-8875 | Defect | [Regression] When using row grouping with groupSelectsFiltered = true, indeterminate selection checkboxes cannot be unchecked |
| AG-8857 | Defect | [Regression] When setting filter model and applying column state with pinned columns and animate rows, an error is thrown |
| AG-8851 | Defect | [Regression] Calling setRowData with Immutable Data and FullWidthRow throws an error |
| AG-8848 | Defect | [Regression] When updating a parent node with master detail, the detail grid is not refreshed the first time |
| AG-8843 | Defect | [Regression] When using server-side row model FULL, client-side sorting prevents range row selection |
| AG-8836 | Defect | When long column header names are shown in the columns tool panel or column menu columns tab, they're clipped instead of truncated |
| AG-8835 | Defect | [Regression] When setting a React state variable, any custom filters applied are reset |
| AG-8830 | Defect | MouseMove fires angular change detection impacting profiling DX |
| AG-8829 | Defect | [Regression] When working with non-string value columns, filterParams do not work if set inside defaultColDefs |
| AG-8825 | Defect | Rename ariaDropZoneColumnComponentAggFuncSeperator to ariaDropZoneColumnComponentAggFuncSeparator |
| AG-8823 | Feature Request | [Types] Improve Support for Discriminated Union Types as TData |
| AG-8819 | Defect | When using a set filter cell renderer without a refresh method, the renderer is not recreated on refresh |
| AG-8816 | Defect | [Regression] SuppressScrollWhenPopupsAreOpen doesn't work with Column Menus |
| AG-8813 | Defect | [Regression] When calling api.getColumnDefs API method, column groups aren't returned |
| AG-8801 | Defect | [Filtering] When using closeOnApply with accordion filter displays the column menu does not close |
| AG-8788 | Defect | [Regression] When using React with full-width rows and setting new row data with the same row id for a full-width row that was previously used by a non-full-width row, flushSync exception is thrown |
| AG-8786 | Defect | When enableRtl=true, floating filter popup cannot be resized horizontally or popup moves to incorrect place |
| AG-8784 | Defect | [Regression] When using groupIncludeFooter or groupIncludeTotalFooter, for columns with aggFunc='count' the footer row cells display the row count, not the sum of aggregated values |
| AG-8781 | Defect | [Regression] When applying column state before setting row data with cell data types, the column state is overwritten |
| AG-8780 | Defect | [Regression] When using frameworks and importing modules on the master grid (instead of globally), no detail grids are shown |
| AG-8772 | Defect | When setting a tabindex on the grid, not all components are respecting the property |
| AG-8746 | Defect | When moving focus away from the aggregation function popup via keyboard, the popup remains open |
| AG-8730 | Defect | DragAndDrop Ghost gets wrong position when ShadowDOM has offset |
| AG-8693 | Defect | [Regression] domLayout='AutoHeight' can no longer be used with SSRM even with small dataset |
| AG-8527 | Defect | When using Safari and dragging a row or column to the top of of the page, content above the grid is highlighted |
| AG-8518 | Defect | [Regression] When calling api.autoSizeColumns on a grid, this is much slower when there are other grids shown on page |
| AG-8415 | Defect | [SSRM] Console error when synchronously applying column state with pinned column after setting filters |
| AG-8411 | Defect | When using React 18, focusing the bottom right cell, pressing TAB key focus is lost |
| AG-8357 | Feature Request | [Bundle Size Reduction] Reduce license header being repeated in all generated files |
| AG-8023 | Feature Request | [Typing] Type the location property in callbacks |
| AG-7629 | Defect | [IRM] Excessive component initialisation and destroy |
| AG-7375 | Defect | When using ReactUI, calling the setDataValue API method to update a cell value causes cell focus to be lost |
| AG-7258 | Defect | When sticky group rows are used with pagination on non-first page, scrolling down causes group column cell values to disappear |
| AG-6523 | Defect | When using a custom aggregation function, integrated charts line and area series can't be plotted for cells showing a complex aggregation object |
| AG-4527 | Feature Request | [Cell Editing] Improve performance of Undo when undoing a large amount of changes |

### 30.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8756 | Defect | [Regression] ag-grid-community/ag-grid-enterprise with Next: Cannot use import statement outside a module |

### 30.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8718 | Feature Request | [Cell Editing] Add a built-in checkbox cell editor |
| AG-8691 | Defect | When viewing a docs page with a short video, two play buttons are displayed |
| AG-8684 | Defect | [Regression] Column Group Headers with `marryChildren: true` cannot be moved after a column group header child is hidden |
| AG-8683 | Defect | [Regression] When using transactions with row grouping/tree data and full-width rows with agGroupCellRenderer.checkbox=true, grid becomes slow/crashes |
| AG-8679 | Defect | CellStyles with `!important` are not applied to grid cells |
| AG-8673 | Defect | [SSRM] Master Detail with groupRowsSticky crashes the grid |
| AG-8671 | Feature Request | [Quick Filter] Update quick filter to exclude values in hidden columns by default |
| AG-8669 | Defect | [SSRM] Refreshing a successfully loaded row, where the refresh request fails will continue to refresh until successful |
| AG-8660 | Defect | [Regression] When using row grouping and setting enableGroupEdit=true, pasting a copied range of values skips group row cells |
| AG-8655 | Feature Request | [Clipboard] Add API method to paste from clipboard into the grid |
| AG-8639 | Defect | When using RTL, with sticky group rows, expanding a row group and scrolling renders the group name on the left |
| AG-8633 | Defect | [Regression] When using agMultiColumnFilter or agGroupColumnFilter opening the column menu scrolls the grid back to the top |
| AG-8630 | Feature Request | [Column Filters] Ignore filterParams.defaultToNothingSelected=true when filterParams.excelMode is used |
| AG-8629 | Feature Request | [Column Headers] Make column group header cells span multiple rows by default when other groups have more levels |
| AG-8625 | Defect | [Regression] When setting groupDisplayType property, grid crashes |
| AG-8613 | Defect | [SSRM] rows do not render when rowHeight is decimal |
| AG-8612 | Defect | [React] Browser Hangs Calling api after unmount when there are columnGroups |
| AG-8600 | Feature Request | [Aggregation] Refining top level and root level aggregation logic |
| AG-8588 | Defect | [Clipboard] When copying a value with quotation marks, paste does not paste the quotation marks |
| AG-8584 | Feature Request | [API] Deprecate the keypress event (onCellKeyPressed event) |
| AG-8567 | Defect | Grid shows error ResizeObserver loop limit exceeded |
| AG-8553 | Defect | [Sorting] When moving sorted column group column gets re-triggered as secondary sort |
| AG-8542 | Defect | [Accessibility] When using buttons on filterParams for column filters, the TAB key does not navigate to them |
| AG-8541 | Feature Request | [Accessibility] Add extra aria properties to elements in sidebar and toolpanel tabs |
| AG-8520 | Defect | [Export] When exporting a BigInt value to Excel, grid throws an exception |
| AG-8516 | Defect | When using a custom filter in a multi filter as an accordion, the wrong container is passed to the afterGuiAttached method |
| AG-8510 | Feature Request | [API] Removal of v27 deprecations in v30 release |
| AG-8509 | Defect | When exporting to Excel, number formats that contain quotes are not encoded properly |
| AG-8504 | Defect | [Regression] When running WAVE, each column header has a missing aria label error when not using headerCheckboxSelection=true |
| AG-8494 | Defect | [Clipboard] When using the browser's edit menu user cannot cut, copy or paste |
| AG-8474 | Defect | When a simple filter has only one option, the dropdown is not disabled |
| AG-8472 | Defect | [Regression] When selecting and unselecting checkboxes, NVDA does not read the correct prompt |
| AG-8464 | Feature Request | [Integrated] Allow updating a chart via the Grid API |
| AG-8452 | Defect | [Regression] When selecting a range of cells with objects with empty string values, all AggFuncs are shown in status bar instead of just the applicable ones |
| AG-8435 | Defect | When pivoting, quick filter doesn't filter the pivoted data |
| AG-8431 | Defect | When using tree data or row grouping, selecting a range of rows also selects the children of the last row |
| AG-8422 | Defect | [Regression] When pivoting and client-side sorting, clicking a group column header doesn't sort the grid rows |
| AG-8408 | Feature Request | v30 Remove Angular Legacy From Codebase |
| AG-8406 | Defect | Auto Size Columns causes group column headers to be stuck with `ag-column-resizing` class |
| AG-8405 | Defect | When setting ensureDomOrder=true, Columns do not maintain DOM order after being moved |
| AG-8370 | Defect | [Regression] When using SSRM and setting serverSideInitialRowCount, grid shows correct rows but vertical scrollbar thumb is still in top position |
| AG-8358 | Defect | [Charts] Not possible to correctly set y-axis titles in integrated combination charts |
| AG-8351 | Feature Request | [Column Group] Make horizontal sticky group column header default behavior |
| AG-8349 | Defect | When using groupHideOpenParents, if a group column filter has been instantiated and the group is then removed, an error is thrown |
| AG-8347 | Feature Request | [Row Grouping] Make group rows sticky default in row grouping, tree data and master detail |
| AG-8331 | Defect | Clicking the floating filter input does not open the Set Filter popup |
| AG-8328 | Feature Request | [Excel Export] Allow suppressing outline for rows and columns when exporting |
| AG-8294 | Defect | [Charts] Integrated chart subscription for series click events not working - regression from 29.1 |
| AG-8234 | Feature Request | [Cell Editing] Add cell data types and cell data type inference |
| AG-8220 | Defect | Grid Throws an Error when used within React Suspense Component |
| AG-8096 | Feature Request | [Events] Add events to fire at the start and end of cell range delete operations |
| AG-8095 | Feature Request | [Events] Add events to fire at the start and end of cut operations (onCutStart/onCutEnd) |
| AG-8067 | Defect | `rowUngroup` menu item does not remove grouping when on an autoGroupColumn |
| AG-8005 | Feature Request | [Cell Editing] Allow default cell editor to use the valueFormatter if its value isn't coercible to string |
| AG-7948 | Feature Request | [Side Bar] Enhance toolPanelVisibleChanged event to provide more information |
| AG-7895 | Feature Request | [Clipboard] Allow copy down to support complex objects |
| AG-7894 | Feature Request | [Clipboard] Allow fallback to valueFormatter/valueParser if no custom copy function provided to better support complex objects |
| AG-7892 | Feature Request | [Fill Handle] Allow horizontal fill handle to better support columns with complex objects |
| AG-7883 | Feature Request | [Column Filter] Add support for HTML5 number inputs in non-Chrome-based browsers |
| AG-7569 | Feature Request | [Accessibility] Allow JAWS to announce changes in the expanded state of row groups |
| AG-7513 | Feature Request | [Charts] Add grid API to call the chart link/unlink |
| AG-7413 | Feature Request | [Cell Editing] Add a built-in numeric editor in the grid |
| AG-7256 | Feature Request | [API] Make Sticky Group Row setting (gridOptions.suppressGroupRowsSticky) a reactive property |
| AG-7228 | Defect | [Selection] When setting suppressFinishActions=true in the call to row.setSelected API method, rowSelection='single' is not respected and multiple rows are selected |
| AG-7227 | Defect | [Column Filters] Filter and floating filter cannot be enabled/changed retrospectively |
| AG-7044 | Defect | When using readOnlyEdit=true and undoRedoCellEditing=true, onCellEditRequest event isn't fired for undo |
| AG-6947 | Feature Request | [Typings] Allow ColDef field property to use TData |
| AG-6828 | Feature Request | [Events] Ensure no events are fired before the GridReady event is fired |
| AG-6399 | Defect | When row grouping, column menu items named "Expand All" and "Collapse All" are misleading |
| AG-6106 | Feature Request | [Chart] Allow updating the integrated chart cell range via API (currently only possible by dragging the chart cell range in the grid) |
| AG-5719 | Feature Request | [Excel Export] Allow exporting row groups to Excel preserving their collapsed/expanded state |
| AG-5525 | Feature Request | [Modules] Allow AG Grid module registration on a per-grid basis |
| AG-5429 | Feature Request | [Cell Editing] Allow correctly parsing a numeric value following a cell edit |
| AG-5165 | Feature Request | [Chart] Allow looking up chartRef using chartId |
| AG-4763 | Feature Request | [API] Allow identifying grid instances via a unique id |
| AG-4358 | Feature Request | [Accessibility] Allow screen readers specific keyboard navigation shortcuts to navigate in and out of the pinned column area |
| AG-4043 | Feature Request | [Charts] Allow switching x-axis with y-axis in line-charts |
| AG-4037 | Feature Request | [Cell Editing] Add a Date picker cell editor |
| AG-3746 | Feature Request | [Accessibility] Allow VoiceOver to work with enableCellSelection=true and not announce cells as 'presentation' |
| AG-3473 | Feature Request | [API] Allow introducing column/editor/renderer type information in typescript |
| AG-3427 | Feature Request | [Excel Export] Allow exporting the formatted cell value instead of the underlying cell value |
| AG-2919 | Feature Request | [SSRM] Allow a callback to be passed to purgeServerSideCache |
| AG-2662 | Feature Request | [State] Allow applying a filter model in onGridReady for both CSRM and SSRM |
| AG-2474 | Feature Request | [Row Grouping] Allow custom cell renderers to be used inside the group footer/total footer row |
| AG-2396 | Feature Request | [Clipboard] Allow the formatted cell value to be used with copy/fill handle/copy range down |
| AG-1900 | Feature Request | [Clipboard] Allow Value Parser to run on paste/fill handle/copy range down |
| AG-1826 | Feature Request | [Keyboard Navigation] Allow enterMovesDown and enterMovesDownAfterEdit to focus the cell above when pressing SHIFT + ENTER |
| AG-929 | Feature Request | Improve life cycle of events (gridReady should be the first thing to fire) |
| AG-870 | Feature Request | [Row Grouping] Allow group selection without checkboxes |
| AG-687 | Feature Request | [SSRM] Add support for group footer row when using server-side row model |

### 29.3.5

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8538 | Defect | getCacheBlockState incorrectly returns 'loaded' if block exists before request is made |
| AG-8475 | Defect | [Regression] When using SSRM with paging, changing from last to previous page index or last page to first doesn't load the correct blocks |
| AG-8419 | Defect | [SSRM] groupLevelInfo not being set in the new SSRM |

### 29.3.4

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8458 | Feature Request | Avoid FlushSync warnings |
| AG-8444 | Defect | [Regression] When using Tree Data, the auto column can't be sorted |
| AG-8428 | Defect | [Regression] When using SSRM and pagination domLayout='autoHeight' is ignored |
| AG-8420 | Defect | [Regression] When using SSRM with group pagination, expanding the top row group hides the group row |

### 29.3.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8424 | Defect | Multiple flushSync console warning messages shown after upgrading to v29.3.2 |

### 29.3.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8404 | Defect | [Regression] Grid body can scrolled horizontally past the width of the headers |
| AG-8399 | Defect | React 18 Async Rendering Issues causing whiteouts when scrolling |
| AG-8072 | Defect | When using React 18 with createRoot API in a grid with many columns and rows, pressing CTRL+DOWN/RIGHT ARROW/HOME/END keys focus is lost |
| AG-7653 | Feature Request | [React] Investigate how to speed up cell values rendering when scrolling with React 17 |

### 29.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8356 | Defect | Reintroduce support for requirejs |
| AG-8352 | Defect | When using row AutoHeight=true with Custom Cell Renderers, toggling Keyboard Mode resets Row Heights |
| AG-8348 | Defect | Tabbing does not flow correctly between aligned grids |
| AG-8346 | Defect | [Regression] When setting a large value for cacheBlockSize, loading data is slow and becomes slower for each new cache block |
| AG-8343 | Defect | When using excludeHiddenColumnsFromQuickFilter, Quick Filter excludes row group values if the grouped column is hidden |
| AG-8341 | Defect | [Safari] Text within elements that should not allow selection is still selectable |
| AG-8327 | Defect | [Sparklines] Sparkline tooltip renderer is not isolated to a single column |
| AG-8297 | Defect | ColumnToolPanel can enter infinite loop if child group given groupId 0 |
| AG-8283 | Defect | [Regression] When using SSRM, setting maxBlocksInCache causes too many rows to be retained instead of reloaded from the data source |
| AG-8281 | Defect | [Excel Export] Footer row is not exported to Excel when using groupHideOpenParents=true |
| AG-8275 | Defect | When pressing SPACE key to expand/collapse column groups, the page scrolls |
| AG-8273 | Defect | [Regression] When using the set filter, clicking the CANCEL button doesn't reset unapplied changes and doesn't close the filter popup when using excel-windows mode |
| AG-8272 | Defect | When using AG Grid Enterprise, there's no way to show ag-grid-community column menu tabs |
| AG-8270 | Defect | Cannot expand group rows with double click when enableGroupEdit=true |
| AG-8242 | Defect | When removing a column from the row group panel, the columns list in the columns tool panel is scrolled to the bottom |
| AG-8241 | Defect | [Regression] When popup parent has a height larger than the browser, the column menu displays with zero height |
| AG-8235 | Defect | [Regression] headerCheckboxSelectionFilteredOnly is not reversible |
| AG-8232 | Defect | [Regression] When selecting grid rows, status bar selection count doesn't take into account de-selected rows |
| AG-8229 | Defect | [Regression] When using Mac and showing scrollbars "only when scrolling", full width row bounds exceeds grid viewport |
| AG-8226 | Defect | [SSRM] refreshServerSide(purge: false) does not load rows if grid empty |
| AG-8225 | Defect | [SSRM] Calling api.setRowCount does not correctly unset store length |
| AG-8216 | Feature Request | [SSRM] Fire an event when a SSRM refresh has fully completed |
| AG-8213 | Defect | AgGrid ColumnResizeEvent emitted with incorrect source property when calling api |
| AG-8141 | Defect | api.resetColumnState() breaks columns with aggFuncs supplied as functions |
| AG-8139 | Defect | [Regression] When setting popupParent option, opening the column column menu popup scrolls down the HTML body |
| AG-8064 | Feature Request | [API] Display a warning in console when using domLayout="autoHeight" and rowModelType="serverSide" or "infinite" and ignore domLayout="autoHeight" |
| AG-7996 | Defect | When using pivoting and enableGroupEdit=true, editing a group row cell an exception is thrown |
| AG-7920 | Defect | When using React with ag-grid-enterprise packages, destroying the grid is slow |
| AG-7888 | Defect | paginationGoToLastPage() goes to wrong page when paginationAutoPageSize:true |
| AG-7541 | Defect | When using SSRM, full width rows don't update after a SSRM refresh |
| AG-7523 | Defect | When a column with autoHeight & wrapText=true spans into another column with autoHeight & wrapText=true, the row has default instead of auto-height and the cell value appears on a single row instead of wrapped |
| AG-7080 | Feature Request | [Master/Detail] Add support for sticky rows for master rows when using a master/detail grid |
| AG-7013 | Feature Request | [SSRM] Add support for sticky group rows |
| AG-6984 | Feature Request | [Pivoting] Allow aggregating the values of multiple pivot columns and rows in a single aggregation value |
| AG-6880 | Feature Request | [Tree Data] Add support for sticky group rows and tree data |
| AG-6846 | Feature Request | [API] Add to API docs the currently undocumented Column.isCellEditable(RowNode) API method |
| AG-6716 | Feature Request | [Sparklines] Allow per-column sparkline tooltip instances |
| AG-6260 | Feature Request | [SSRM] Allow localizing the "?" string in the pagination panel when using SSRM paging and still loading records |
| AG-4989 | Feature Request | Allow drag and drop operations inside AG Grid to work from inside a Shadow DOM |
| AG-2720 | Feature Request | [Column Groups] Allow horizontal sticky group column headers |
| AG-1175 | Feature Request | [SSRM] Allow hinting how big the scroll bar should be (maybe passing the row number, AND how many rows to cater for in the scroll) |

### 29.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8265 | Defect | When toggling row groups expanded state and groupHideOpenParents=true, rows get hidden |
| AG-8205 | Defect | When using React 18 and calling autoSize from firstDataRendered event handler and a column group header is just out of view an error is thrown |
| AG-8189 | Defect | When scrolling the viewport to the right edge, up or paging, cell values are rendered from the bottom row up instead of from the top row down |
| AG-8164 | Defect | autoGroupColumn sortIndex incorrect |
| AG-8153 | Defect | When using tree data and groupIncludeFooter=true, grid throws exception and shows no rows |
| AG-8151 | Defect | When pivoting, column sort indexes should omit sorts with no impact |
| AG-8133 | Defect | [Column Filters] When entering non-numeric characters in number filters with allowedCharPattern set, filter value of NaN is applied |
| AG-8106 | Defect | [Column Filters] When using join operator OR in the filter tool panel, entering a value floating filter input resets the join operator to AND |
| AG-8104 | Defect | When enabling masterDetail on group column without a field, 'undefined' is shown instead of empty cell |
| AG-8103 | Feature Request | [SSRM] Allow row selection across multiple group levels |
| AG-8102 | Defect | SSRM - Old datasource requests still fired when datasource changed |
| AG-8091 | Defect | [Column Filters] When setting a single model on a simple filter component, multiple filterModified events are fired |
| AG-8086 | Defect | When using React with group columns with a sibling column that's not a group, calling setColumnDefs causes column groups headers to flicker |
| AG-8085 | Feature Request | [Accessibility] Avoid duplicated announcements for cells with auto-height / selection checkbox / drag and drop / row drag without using aria-hidden attribute |
| AG-8081 | Defect | When using React, applying new column state doesn't animate column headers |
| AG-8079 | Defect | [Regression] When using SSRM, after calling `setColumnDefs()` any new sort model not applied anymore and grid cannot be sorted |
| AG-8075 | Defect | [Regression] When opening a column filter and unmounting/hiding the grid, the page freezes and becomes unresponsive |
| AG-8073 | Defect | When using readOnlyEdit and editing a group cell value, the group row allLeafChildren property excludes the edited child row |
| AG-8070 | Defect | [Column Filters] Copy/paste using keyboard shortcuts does not work in Number Filter using Safari |
| AG-8065 | Defect | When using React 18, dragging a column only animates the first time |
| AG-8063 | Feature Request | [Clipboard] Allow suppressing cut (CTRL+X) operation |
| AG-8062 | Defect | When using multi-line column header text with type=rightAligned, the header text isn't aligned to the right edge of the header cell |
| AG-8059 | Defect | When sparkline data changes, tooltip values don't update |
| AG-8042 | Defect | When using autoHeight=true, computed cell height is incorrect because it doesn't include the cell border size |
| AG-8040 | Defect | [Docs] Localisation for Ctrl+X string missing from localisation docs |
| AG-8032 | Feature Request | [API] Deprecate the undocumented functionsPassive property and related event callbacks |
| AG-8021 | Defect | [Column Filters] When using tree list with tree data or grouping, the floating filter value formatter is passed the wrong value |
| AG-8016 | Defect | When setting rowHeight grid property, cell editor height doesn't match the row height |
| AG-8008 | Defect | onFirstDataRendered event should not be fired for pinned rows. |
| AG-8001 | Defect | [Sparklines] Tooltip position is incorrect after scrolling the grid |
| AG-7992 | Feature Request | [Column Filters] Allow limiting floating filter inputs of numeric filters to numeric values only |
| AG-7564 | Defect | groupMaintainOrder prevents sort being unset |
| AG-7560 | Defect | [Column Filters] Read-Only Floating Filters don't work with Multi Filters by default |
| AG-7522 | Feature Request | Provide Generic Type for Context |
| AG-7429 | Defect | When using React 18, adding new rows and scrolling down causes cell values to flicker |
| AG-5384 | Defect | [Column Filter] When there are two filter conditions in a simple filter and the first filter condition is removed, the second filter condition disappears |
| AG-3446 | Feature Request | [Pivoting] Allow accessing data in a pivot table as you would in a non-pivot table |
| AG-3354 | Feature Request | [SSRM] Add support for tri-state checkbox group selection |
| AG-3072 | Feature Request | [Column Headers] Allow column group header cell to span multiple rows when other groups have more levels |
| AG-2558 | Feature Request | [Column Filters] Allow more than two conditions in the column filters |
| AG-2223 | Feature Request | [SSRM] Allow select all / deselect all via header checkbox selection |
| AG-2077 | Feature Request | [Pagination] Improve the display of the number of records in the pagination panel when SSRM + Pagination + Grouping |

### 29.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8017 | Feature Request | [React] Make gridOptions property columnTypes reactive |
| AG-8007 | Defect | postProcessPopup gets overridden if popup changes its size asynchronously |
| AG-7995 | Defect | Transactions cause focused cell to be lost when row is moved |
| AG-7978 | Defect | [Regression] When suppressAnimationFrame=true, scrolling by dragging the vertical scrollbar thumb displays white areas in grid viewport |
| AG-7971 | Defect | [VPRM] Setting a new datasource with row count 0 does not clear the viewport |
| AG-7970 | Defect | [SSRM] setRowCount should work for SSRM when not using grouping. |
| AG-7965 | Feature Request | [Column Filters] Allow tree list filter to support complex objects in the tree data group field |
| AG-7958 | Defect | Export RedrawRowsParams publicly |
| AG-7955 | Defect | [Regression] When using a touch device, grid columns cannot be resized by touch |
| AG-7952 | Defect | [Sparklines] Tooltip position is incorrect when enclosing viewport is scrolled |
| AG-7946 | Defect | Context Menu with SubMenus leak references to configuration object |
| AG-7944 | Defect | [Column Filter] When using multi-filter and applying filter model to a set filter with asynchronous values, floating filter input does not update |
| AG-7942 | Defect | When sorting a grouped column, the auto column state does not correctly update |
| AG-7938 | Feature Request | [SSRM] Allow tracking changes for the existing grid rows in the backend dataset |
| AG-7934 | Defect | [Regression] When using MacOS with Scrollbars displayed “When Scrolling”, horizontal scrollbar is still shown after calling api.sizeColumnsToFit method |
| AG-7931 | Defect | [Filter Tool Panel] Changing column definitions via api.setColumnDefs method resets filter tool panel expansion state |
| AG-7922 | Defect | agRichSelectCellEditor fuzzy search does not use displayed values if refData / formatValue is used |
| AG-7919 | Defect | When entering an empty string in agLargeTextCellEditor, it incorrectly changes it to undefined |
| AG-7917 | Defect | When null value passed in cellStyle, the grid breaks |
| AG-7915 | Feature Request | [Clipboard] Allow cutting cell values via keyboard shortcut CTRL+X and in context menu |
| AG-7903 | Defect | [Regression] When using a cellStyle with numeric values an exception is thrown |
| AG-7893 | Defect | event.composedPath() is not equivalent to deprecated event.path on Chrome due to async handling |
| AG-7885 | Defect | When expanding/collapsing a column group, the onCellFocused event fires unnecessarily |
| AG-7878 | Defect | When setting Sass variables to "none", "false" or "true", theme fails to build |
| AG-7872 | Feature Request | [SSRM] Allow not requesting rows from the datasource when removing a column with an aggregation |
| AG-7852 | Defect | [SSRM] Sorting group column in SSRM needlessly refreshes rows |
| AG-7845 | Defect | [Regression] When using complex objects, the undo service and fill handle are converting values to strings instead of maintaining the complex objects |
| AG-7844 | Defect | [Regression] headerHeight, pivotGroupHeaderHeight properties value is ignored, column header row always shown with default height |
| AG-7836 | Defect | [SSRM] getServerSideGroupLevelState missing properties |
| AG-7829 | Defect | [Regression] When typing in the Set Filter Mini Filter in Excel Mode, the Select All item name does not update |
| AG-7821 | Defect | When using React and importing AG Grid with packages, pressing SHIFT+TAB key doesn't return focus to last grid cell from paging panel |
| AG-7806 | Defect | [Column Filters] Filter in Filters Tool Panel is unusable when destroyed |
| AG-7782 | Defect | When using master/detail and the master row group column has null value, expansion chevron is not displayed so detail cannot be viewed |
| AG-7768 | Defect | [Cell Editing] When focusing an editable cell and pressing Delete key in readOnlyEdit mode, cellEditRequest event is not fired |
| AG-7767 | Defect | [Regression] addIndex parameter in applyTransaction API method does not work when sorting is applied |
| AG-7740 | Defect | [Regression] When pressing Tab when editing master grid with expanded detail, an uncaught TypeError is shown in console |
| AG-7717 | Defect | [Column Filters] When using set filter with excelMode=windows/mac and defaultToNothingSelected=true, selecting all items doesn't allow de-selecting items |
| AG-7681 | Defect | [SSRM] When copying multiple rows, copied row order follows rowId rather than displayed order |
| AG-7671 | Defect | When calling api.resetRowHeights method root node doesn't get reset |
| AG-7667 | Feature Request | [Layout & Styling] Allow grid row height to respond to changes in CSS variable values |
| AG-7664 | Feature Request | [Quick Filter] Add option to ignore cells in hidden columns when using quick filter |
| AG-7648 | Defect | When hiding second pivot column after filtering grouped rows an exception is thrown and column header borders are misaligned |
| AG-7644 | Feature Request | [Accessibility] Allow focusing the checkbox of the search panel in columns menu tab and columns tool panel instead of the entire search panel (checkbox and search input) |
| AG-7549 | Defect | When calling getCellRendererInstances method, it doesn't return an instance for the detail row |
| AG-7521 | Feature Request | [Fill Handle] Allow firing onCellEditRequest event when readOnlyEdit=true and using paste or fill handle |
| AG-7167 | Feature Request | [Pivoting] Add API method to expand a specific path of pivot column levels |
| AG-7151 | Feature Request | [Pivoting] Add API methods to expand and collapse all pivot columns levels |
| AG-7124 | Feature Request | [Column Filter] Allow displaying date picker for Safari browser |
| AG-7030 | Feature Request | [Clipboard] Allow clipboard paste to only fire an event instead of updating data (so it can support readOnlyEdit mode) |
| AG-7021 | Feature Request | [Fill Handle] Allow Fill Handle and Copy Range Down to only fire cellEditRequest events instead of updating affected cell values (so it can support readOnlyEdit mode) |
| AG-6387 | Defect | When using the date filter with browserDatePicker=true on Safari, typing in the filter input produces a console exception |
| AG-6050 | Feature Request | [Cell Editing][Undo/Redo] Add new API onUndoStart, onUndoEnd and onRedoStart, onRedoEnd events to fire before and after the undo/redo operation execution |
| AG-5522 | Defect | When using Windows Excel-style filtering with multiple columns, updating a cell value reduces the column filter conditions |
| AG-4958 | Feature Request | [Column Filter] Provide a built-in generic way to filter group columns by selecting the group field |
| AG-4406 | Feature Request | [Column Filters] Add API to get the quick filter value to allow the use of custom component for quick filter |
| AG-4309 | Feature Request | [Row Grouping] Add API method to expand the entire row group path to a child row |
| AG-3859 | Feature Request | [Row Selection] Allow HeaderCheckboxSelection to select all the rows shown on the current page after filter and sort |
| AG-2571 | Feature Request | [SSRM] Allow cell editing in group rows when using tree data SSRM |

### 29.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-8363 | Defect | When using Chrome 112 on Mac, horizontal scrolling using the trackpad causes headers to scroll slower than grid viewport |
| AG-8039 | Feature Request | [Layout & Styling] Remove deprecated themes ag-theme-bootstrap, ag-theme-dark, ag-theme-blue and ag-theme-fresh from grid |
| AG-7960 | Feature Request | [Scrolling] Allow column headers to scroll without a delay from the grid viewport in Safari and Firefox on MacOS/iOS |
| AG-7779 | Feature Request | [SSRM] Allow displaying a single loading row when filtering instead of all grid rows as loading rows |
| AG-7736 | Defect | When using camel case in getRowStyle, style not applied correctly |
| AG-7732 | Defect | "columnMoved" wrong event source from ColumnTool panel |
| AG-7731 | Defect | [Regression] Filter popups only resize when opened for the first time |
| AG-7727 | Defect | When using React 18 (createRoot) with SSRM with infinite scroll, adding data and refreshing the grid produces a brief flash |
| AG-7726 | Defect | [Column Filters] When searching in Set Filter Mini Filter, raw values are matched as well as formatted values |
| AG-7719 | Defect | [Column Filters] Set Filter List "no matches" text is not updated when other filters change |
| AG-7714 | Defect | Floating filters of multi-filter ignore filter params because multi Filter params not passed properly to underlying floating filters |
| AG-7713 | Defect | [Regression] When using React, setting column group groupId property, changing column visibility via state throws an exception and doesn't render the grid |
| AG-7710 | Feature Request | [Typings] Type columnGroupShow to open \| closed |
| AG-7701 | Defect | RichSelectCellEditor doesn't select correct values when typing repeated letter |
| AG-7700 | Defect | When using floating column filters, frequent row updates prevent typing in the floating filter input |
| AG-7691 | Defect | Memory leak in the ProvidedColumnGroup causes the onColumnVisibilityChanged event to be called before the new ColumnGroups are created |
| AG-7682 | Defect | When opening a popup, postProcessPopup callback gets overridden and popup gets returned to original position |
| AG-7676 | Defect | [SSRM] Row groups take a long time to start loading if parent has many groups |
| AG-7675 | Feature Request | [SSRM] Change default SSRM behaviour to Infinite Scroll |
| AG-7674 | Feature Request | [API] Deprecate getCacheBlockState() API method |
| AG-7673 | Defect | Grid columns cannot be moved via drag and drop when AG Grid is contained in a Shadow DOM |
| AG-7666 | Defect | [Regression] getRowStyle does not add CSS variables as properties |
| AG-7661 | Defect | [Regression] When suppressFilterSearch=true in toolPanelParams the Filter Search is still displayed in the filters tool panel |
| AG-7659 | Feature Request | [Typings] Export Provided CellEditor params interfaces |
| AG-7658 | Feature Request | [Layout & Styling] Allow correctly rendering cell values when using row border greater than 1px |
| AG-7652 | Defect | When using Chrome on Mac, horizontal scrolling using the trackpad causes headers to scroll slower than grid viewport |
| AG-7630 | Defect | [Charts] Series labels become corrupt in several scenarios. |
| AG-7621 | Defect | SSRM Store size is not purged when filter is applied |
| AG-7620 | Feature Request | [API] Remove deprecated property padding from IGroupCellRendererParams |
| AG-7619 | Feature Request | [API] Remove deprecated suppressRefresh, autoHeight from IDetailCellRendererParams |
| AG-7618 | Feature Request | [API] Remove deprecated addRowCompListener property from ICellRendererParams |
| AG-7612 | Feature Request | [Column Menu] Reorder the pin submenu items to place "No Pin" as first item |
| AG-7604 | Feature Request | [Layout & Styling] Remove deprecated legacy SASS styles |
| AG-7578 | Feature Request | [Integrated] Allow customizing the chart tool panel DATA Tab items |
| AG-7577 | Feature Request | [API] Pass through source property value when updating DefaultColDefs |
| AG-7575 | Defect | Set filter list doesn't show a (Blanks) item to represent an empty array cell value in the column |
| AG-7565 | Feature Request | [website] Changelog/Pipeline grid - some columns are too wide and use up valuable space |
| AG-7562 | Defect | [Regression] When enableRtl=true, unpinned column headers don't show resize handles |
| AG-7561 | Defect | When opening filters displayed in the Filter Tool Panel event.eGui is an empty div for the filterOpened event |
| AG-7558 | Defect | When clicking checkbox or pressing SPACE key to select a row, onRowSelected params event property is always null |
| AG-7556 | Defect | `isServerSideGroup` callback is not reevaluated after transaction update |
| AG-7554 | Defect | When using React 18, editing a grid cell and calling api.stopEditing() to end the editing causes the editor to flash briefly |
| AG-7552 | Defect | SolidJS Example isn't loading |
| AG-7550 | Defect | [Regression][Chart] Cross-filtering Pie chart `tooltip.renderer` not applied when set |
| AG-7547 | Defect | [SSRM] When using infinite scroll leaf nodes are not re-used on refresh |
| AG-7544 | Feature Request | [SSRM] Prioritise row block loader order to load visible rows more quickly |
| AG-7534 | Feature Request | [API] Remove deprecated API methods from the Column object |
| AG-7533 | Feature Request | [API] Remove the deprecated defaultGroupComparator API member |
| AG-7531 | Defect | When pivot result column is hidden, changing grouped columns throws exceptions |
| AG-7520 | Feature Request | [React] Remove React ChangeDetectionStrategyType.DeepValueCheck |
| AG-7518 | Defect | [React v18] Calling columnApi.autoSizeColumns(false) within onFirstDataRendered incorrectly ignores header cell width |
| AG-7505 | Defect | Tooltip background-color cannot be modified by CSS variable |
| AG-7504 | Defect | When using ReactUI and a column with wrapText, autoHeight=true, switching to print layout causes the grid's rows to flicker |
| AG-7501 | Defect | [Integrated] ChartOptionsChangedEvent should be called when combination series types are changed |
| AG-7487 | Defect | When using React and VoiceOver, cell content is announced twice when using checkboxSelection, rowDrag, autoHeight, enableCellTextSelection=true |
| AG-7485 | Defect | When using React typing in an editor component enters the first character of an invalid value in the cell |
| AG-7481 | Feature Request | [Angular] Upgrade Legacy Project to Angular v10 |
| AG-7473 | Feature Request | [API] Remove legacy deprecated properties from GridOptions and ColDefs |
| AG-7472 | Feature Request | [Integrated] Enable Chart Tool Panels Button by default |
| AG-7439 | Feature Request | [Accessibility] Remove from the DOM unused row/column pinned containers and unused empty rows |
| AG-7434 | Defect | [SSRM] Unexpected getRows request made when using row drag |
| AG-7430 | Defect | [Regression] When using domLayout="autoHeight" and dragging a cell range to the right/left edges of the viewport, it doesn't scroll horizontally |
| AG-7414 | Defect | When rowData=null the loading overlay is displayed but calling setRowData(null) displays the empty overlay instead |
| AG-7403 | Feature Request | [API] Remove deprecated ag-grid-column/AgGridColumn components |
| AG-7395 | Defect | When using group rows with empty keys, row rendering breaks |
| AG-7394 | Feature Request | [SSRM] Add support for transactions when Infinite Scrolling is enabled |
| AG-7381 | Defect | When using case-insensitive set filter, items with the same value but a different case are unchecked unnecessarily |
| AG-7352 | Feature Request | [API] Introduce IRowNode to show the public facing interface instead of the internal object RowNode |
| AG-7330 | Feature Request | [Aggregations] Allow removing column aggregation function from the column menu |
| AG-7267 | Feature Request | [Frameworks] Upgrade Typescript Version to 4.0.8 |
| AG-7264 | Feature Request | [API] Remove legacy deprecated methods from gridApi and columnApi |
| AG-7213 | Defect | [ReactUI] When a set column filter with cell renderers changes, filter list cell renderers are refreshed and flash |
| AG-7173 | Defect | [Filters] Floating filter unapplied value reset on grid data update |
| AG-7091 | Defect | [Integrated] Chart padding not working consistently with supplied container |
| AG-6994 | Feature Request | [Column Filters] Investigate potential performance improvements when updating set filters with many items |
| AG-6958 | Feature Request | [Column Filter] Update set filter codebase to avoid searching through entire list to improve performance when using many set filter items |
| AG-6692 | Feature Request | [API] Remove deprecated "key" property from ICellEditorParams |
| AG-6662 | Defect | [Regression] When using set filter with ExcelMode=Windows and no items in the set filter are selected, the OK button is still enabled |
| AG-6555 | Defect | [Regression] When using React, calling columnApi using React useRef causes the grid to stop rendering and throws an exception |
| AG-6396 | Feature Request | [Column Filter] Allow Set Filter values to be displayed in a hierarchical list |
| AG-6300 | Defect | [Regression] When displaying set filter item values wider than the dialog width, they're not truncated with ellipsis |
| AG-6296 | Defect | When setting multiple column filters, subsequently applied column filters update the number of unique values shown in the set filter UI, but don't update the set filter filterModel which still contains the original values when the set filter was applied |
| AG-6114 | Feature Request | [Clipboard] Allow including the column header text just once before multiple cell range values in case all the copied cell ranges include exactly the same columns |
| AG-5882 | Feature Request | [Scrolling] Prevent temporary blank area rendered when quickly scrolling by dragging the vertical scrollbar thumb |
| AG-5724 | Feature Request | [Row Grouping] Make unbalanced row groups an optional behavior |
| AG-5683 | Feature Request | [SSRM] Allow keeping the context menu popup open when calling api.refreshServerSide() |
| AG-5514 | Defect | When setting set filter values and applying a filter model, column is not filtered |
| AG-5238 | Feature Request | [Column Moving] Add a finished property in the columnMoved event arguments so it can identify the final place the column was dropped |
| AG-5124 | Feature Request | [React] Make gridOptions property suppressModelUpdateAfterUpdateTransaction reactive |
| AG-5117 | Feature Request | [Integrated] Allow integrated charts to customize settings for pie chart sector labels via the format panel |
| AG-5069 | Feature Request | [SSRM][Transactions][Tree Data] Allow adding a child row under a leaf row, turning the leaf row into a group row |
| AG-4680 | Defect | When opening a dialog and changing grid cell values, there's a memory leak |
| AG-4008 | Feature Request | [Column Filters] Allow set filter to interpret and group date values in a hierarchy of week/month/quarter/year |
| AG-3826 | Feature Request | [Accessibility] Allow blank cells to be announced by Windows Narrator screen reader |
| AG-3744 | Feature Request | [Chart] Allow the chart menu panel to be closed with a close button |
| AG-3591 | Feature Request | [Column Menu] Allow custom column layouts in the column menu columns |
| AG-3258 | Feature Request | [Keyboard Navigation] Link in custom cell renderer not accessible via Keyboard ENTER key |
| AG-2606 | Feature Request | [SSRM] Allow for cacheBlockSize to be specified differently when grouping for each level of the grouping. |
| AG-2461 | Feature Request | [React] Make animateRows a reactive property |
| AG-1896 | Feature Request | [API] Add a source property to rowSelected and selectionChanged events to help distinguish between user and API-driven selection changes |
| AG-1282 | Feature Request | [React] Allow pagination properties to be reactive - pagination, paginationPageSize |
| AG-145 | Feature Request | [Excel Export] Allow exporting row group footers (group subtotal rows and grand total row) to Excel/CSV |
| AG-129 | Feature Request | [Column Filters] Allow set filter to support complex objects as provided set filter values |

### 28.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7465 | Defect | When using the fill handle to populate cells with null values, undoing the change, then redo throws an exception |
| AG-7452 | Feature Request | Improve column aggregation performance after fixing AG-7107 |
| AG-7426 | Feature Request | [Integrated] Support migration during restore of pre-27.1.0 chart models. |
| AG-7419 | Defect | [Integrated] Format panel X axis configuration appears to be non-functional |
| AG-7412 | Feature Request | [Column Filters] Allow providing custom column filter input placeholder text |
| AG-7411 | Feature Request | [Cell Editing] Allow limiting value length in built-in text cell editor - agTextCellEditor |
| AG-7400 | Defect | [Regression] When grouping by a column, column order for the remaining columns is reset |
| AG-7390 | Defect | [Regression] When using the alpine and balham dark themes and a loading overlay, the overlay is shown in a light gray color |
| AG-7386 | Defect | When printing, there's whitespace on the right of the right-most column and the top row on every page doesn't have its top border shown |
| AG-7349 | Defect | [Regression] Changing the group column order in a multi column row grouping creates blank space on the left side of the table |
| AG-7347 | Defect | [React] When using ReactUI and having a column without a floating filter, clicking inside the empty space throws an exception |
| AG-7338 | Defect | Cells in pinned rows and pivot result columns behave differently when the pivot result column field contains a dot |
| AG-7334 | Defect | Failed server side loading string 'ERR' missing from localisation dictionary |
| AG-7320 | Defect | When showing a radio button in a custom cell renderer, calling columnApi.autoSizeAllColumns() API method clears the selected radio button |
| AG-7315 | Defect | When using domLayout='autoHeight' on Safari, editing with a popup editor and clicking any other cell scrolls the entire page down |
| AG-7247 | Defect | [React] When column definitions have a dependency on a state variable, changing the state variable value causes column group headers to flicker |
| AG-7237 | Feature Request | [Accessibility] Allow the select all header checkbox to be announced by adding an aria-label attribute to it |
| AG-7214 | Defect | When opening a custom popup editor in the last grid row, the popup is shown outside the bounds of the grid |
| AG-7192 | Defect | When using AG Grid on an iOS device (iPhone/iPad) displaying a grid with no rows, tapping and holding inside the grid doesn't open the custom context menu |
| AG-7185 | Defect | [Filters] Floating filter input doesn't respect localisation for Blank/Not Blank filter option |
| AG-7164 | Feature Request | [Touch] Allow using touch to scroll the grid horizontally |
| AG-6602 | Feature Request | [Chart] Add support for time axis in integrated combination charts |
| AG-6485 | Feature Request | [Charts] Support legacy iChartOptions |
| AG-5550 | Feature Request | [Column Filters] Allow applying the current filter when ENTER key is pressed in a filter dialog |
| AG-3699 | Feature Request | [Charts] Allow expanding specific groups inside the chart panel tabs by default |
| AG-3416 | Feature Request | [React] Make rowGroupPanelShow a reactive property |
| AG-1835 | Feature Request | [React] Make enableRowGroup a reactive property |
| AG-1685 | Feature Request | [Docs] Add a docs example to show adding new rows dynamically if needed to fit all the pasted rows |

### 28.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7350 | Defect | When sorting unbalanced groups, unbalanced nodes are incorrectly comparing to row groups |
| AG-7346 | Defect | When all grid rows are filtered out and no data is shown in the integrated chart, removing the filter doesn't display any points in the chart |
| AG-7311 | Defect | When using wrapText=true and autoHeight=true, rendering the grid with print layout causes repeated re-rendering |
| AG-7304 | Defect | When populating cells using the fill handle and a complex object, editing a cell throws an exception |
| AG-7294 | Feature Request | [Row Grouping] Allow suppression of sort click event and indicator in row group panel and side bar |
| AG-7272 | Defect | Status Bar aggregations for ranges including zero values contained within complex objects are not calculated correctly |
| AG-7262 | Defect | When row order changes sorting is not applied inside row groups |
| AG-7259 | Defect | When pivoting, the column menu value aggregation submenu doesn't display a check next to the selected aggregation function |
| AG-7244 | Defect | When clicking above or below a checkbox, the clicked row isn't selected |
| AG-7243 | Defect | [React] Exception thrown when aggregating a group column |
| AG-7242 | Defect | When using Windows and not displaying a horizontal scrollbar, no mouse events are fired for the bottom half of the bottom row in the grid viewport |
| AG-7218 | Defect | [Rendering] ModelUpdatedEvent is raised too often - raised per row change |
| AG-7210 | Defect | [Filters] When using multiple filtering conditions, floating filter displays displayKey instead of displayName |
| AG-7206 | Feature Request | [Row Dragging] Allow displaying the text returned in rowDragText when dragging entire row |
| AG-7199 | Defect | When double-clicking a non-editable grid cell, row editing events are still fired |
| AG-7187 | Defect | [Columns Tool Panel] Not possible to update column name on the Columns Tool Panel using the grid context (React) |
| AG-7183 | Defect | [Regression] When pivoting, processPivotResultColGroupDef callback no longer called for pivotRowTotals |
| AG-7176 | Feature Request | [Tool Panel] Add event to be fired when tool panel is resized |
| AG-7163 | Defect | When using columns with autoHeight and wrapText in print layout, clicking a cell or scrolling the grid is slow and less responsive |
| AG-7110 | Feature Request | [Chart] Allow changing the name of the histogram series in integrated charts |
| AG-7107 | Defect | When using enableCellChangeFlash with some aggregations, changing a cell in a different column triggers a flash |
| AG-7010 | Feature Request | [Accessibility] Add a role attribute to the detail container element in a master-detail grid |
| AG-6899 | Feature Request | [Chart] Allow showing chart configuration panel as open by default |
| AG-6637 | Defect | When auto-sizing a column via the column menu, the horizontal scrollbar position is reset to show the focused cell |
| AG-5434 | Feature Request | [Chart] Add API to call the chart toolbar buttons (open menu/download) |
| AG-5026 | Feature Request | [Integrated] Allow customizing the list of available series types in the settings tab of the chart toolbar (to allow some series types to be hidden) |
| AG-4875 | Feature Request | [Chart] Allow displaying chart toolbar buttons by default (currently only displayed when hovered) |
| AG-4801 | Defect | [Cell Editing] When selecting a cell range and pressing the Delete key on Windows (and Backspace on Mac), selected cell values don't get cleared |
| AG-4460 | Feature Request | [Integrated] Allow setting the size of the exported image when saving chart as an image (fixed-size image) |
| AG-1937 | Feature Request | [Column Groups] Allow horizontally scrolling through the child columns of each column group |
| AG-1924 | Feature Request | [Excel Export] Allow providing different styles for different column headers when exporting to Excel |
| AG-302 | Feature Request | [Export] Allow exporting rows in a filtered grid even if they don't match the filter |

### 28.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7271 | Defect | When using material theme, editing a pinned row clips the editor popup and shifts the rest of the pinned row cell values up |
| AG-7170 | Defect | Cell edits that result in row height changes (AutoHeight) incorrectly clears the cell edit undo / redo stack |
| AG-7157 | Defect | When grouping columns via the Column Header Context Menu or the Side Bar Column Context Menu, the columns are never hidden |
| AG-7148 | Feature Request | [Row Grouping] Allow sorting row groups when using row grouping displayType=groupRows when sorting the group column |
| AG-7146 | Defect | When using React 18, dragging the fill handle down so the viewport is scrolled throws an exception and doesn't enter new values in the cells in the fill handle range |
| AG-7141 | Defect | When using server-side row model, modifying the auto group column filter does not filter the data |
| AG-7137 | Defect | When setting suppressColumnVirtualization=true, focusing a column header that's out of view initially and auto-sizing all columns, column headers no longer align with column cells or lose focus |
| AG-7130 | Defect | [Regression] When using pinned rows, and copying a grid cell or cell range, cell values from pinned rows are also copied |
| AG-7129 | Defect | When editing a cell using a custom editor, the fill handle is still available (it shouldn't be) |
| AG-7127 | Defect | When using master-detail with the server-side row model, the detail row does not get refreshed when a parent row is updated via transaction |
| AG-7106 | Defect | When calling setAutoGroupColumnDef() after the initial render, the auto-group column is not updated |
| AG-7105 | Defect | When pivoting using multiple group columns, changing group column order changes the row grouping hierarchy but doesn't change the column order |
| AG-7093 | Defect | When using a larger number of columns and setting autoHeaderHeight=true, vertically scrolling the grid renders cell values after a delay |
| AG-7076 | Defect | When setting popupParent to a container of the grid that's offset from the body element, the context menu is displayed at an offset from the cursor location |
| AG-7075 | Defect | [Regression] When modifying theme CSS variables, they remain with their default values |
| AG-7051 | Defect | When exporting to Excel, processRowGroupCallback is only invoked if the group column is the left-most column |
| AG-6911 | Defect | [Regression] When using domLayout='autoHeight', checkboxSelection=true and setting a smaller than default row height, the column header is not aligned from the column cells in a pinned column on the other side of the grid |
| AG-6870 | Defect | When using React with pivotMode=true, changing the value of groupDisplayType isn't reflected in the group columns |
| AG-6138 | Defect | [Integrated Charts] Clicking a bubble in the cross-filtering chart example hides it |
| AG-5464 | Feature Request | [Column Sizing] Allow setting column minWidth/maxWidth to be used only when calling sizeColumnsToFit API (this minWidth/maxWidth will not apply when resizing manually) |
| AG-3211 | Feature Request | [SSRM] Add event to fire when using server-side row model after data loaded and rendered (as onFirstDataRendered only works reliably with client-side row model and fires before data is rendered when using SSRM) |
| AG-2299 | Feature Request | [API] Add grid context to all grid event parameters, change docs accordingly |
| AG-2225 | Feature Request | [React] Allow changing cacheBlockSize dynamically |

### 28.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7310 | Defect | When entering a value in the filter input and pressing the ENTER key, the HTML form is submitted |
| AG-7049 | Defect | When dragging column headers to the row group panel, the initial hover over the row group panel applies an incorrect group order |
| AG-7047 | Defect | New sorting localisation fields not included in localization key dictionary in docs |
| AG-7046 | Defect | When the left-most header cell receives focus and the LEFT ARROW key is pressed, the navigateToNextHeader event is not called |
| AG-7037 | Defect | Fix Vue 3 Declarative Columns |
| AG-7032 | Defect | When returning string values as the row id in getRowId callback, the order of rows selected by pressing the SHIFT key is different from the selected row order in the grid |
| AG-7029 | Defect | Memory leak in Filters Tool Panel when adding columns via setColumnDefs() |
| AG-7018 | Defect | When using React 18, the firstDataRendered event is fired before all column headers are displayed and calling autoSizeAllColumns doesn't auto-size columns |
| AG-7017 | Defect | [Regression] When dragging a grouped column from the group panel into the grid, it is displayed in the column header row |
| AG-7011 | Defect | When using React and a component is rendered with `createRoot`, column header keyboard navigation is broken |
| AG-7009 | Defect | When using floating date filter with in-range operator, the floating filter input shows the dates in format yyyy-mm-dd instead of according to the browser locale |
| AG-7008 | Defect | [Regression] When column sort is removed sortIndex is not set to null |
| AG-7005 | Defect | [Regression] When using a touch device, dragging a column header into the row group panel throws a console exception |
| AG-7003 | Defect | [Regression] When using cell editor components, setting editType=fullRow and stopEditingWhenCellsLoseFocus=true editing a cell doesn't focus it and ending the edit throws a console exception |
| AG-7002 | Defect | When using sticky group rows with tree data, scrolling down throws an exception |
| AG-7000 | Defect | [Regression] When editing cells in some columns in the website demo, pressing ENTER key doesn't complete the edit |
| AG-6998 | Defect | [Regression] When using React, falsy values are displayed as empty cell values |
| AG-6997 | Defect | [Regression] When using resizing a column with autoHeight=true, scrolling causes the grid to freeze |
| AG-6995 | Defect | [Regression] When setting enableCellTextSelection=true and dragging a row, cell values below the dragged row are selected |
| AG-6992 | Defect | [Regression] When displaying the row group panel and dragging a column with enableRowGroup=true up and out of the grid, the column briefly displays the icon showing it will be hidden, but it is not |
| AG-6989 | Defect | When using row grouping with sticky group rows, calling setGroupRemoveSingleChildren API method displays empty row groups and throws an exception |
| AG-6988 | Defect | When using groupDisplayType=groupRows, selecting a cell range, expanding and collapsing row groups doesn't clear the selected cell range and displays a different set of cells as selected |
| AG-6987 | Defect | When using React and calling setRowData and startEditingCell API methods, an exception is thrown and the cell is not in edit mode |
| AG-6983 | Defect | When using Windows-style overlay scrolling in Edge, the horizontal scrollbar is not displayed at the bottom of the viewport and only displayed when the grid is scrolled to the bottom row |
| AG-6982 | Defect | [Regression] When using React with enableCellTextSelection=true or autoHeight=true, editing a cell displays its value in the cell below |
| AG-6981 | Defect | When using React 18 with stopEditingWhenCellsLoseFocus=true, editing a cell and pressing TAB key causes editing to stop and focus to be lost |
| AG-6980 | Defect | [Regression] When copying a large number of cells a console exception is thrown and the selected cell range isn't copied |
| AG-6965 | Defect | When setting suppressClipboardApi=true, copying a value and holding CTRL+V key to paste the value in a grid cell, the copied value gets pasted multiple times in the same cell |
| AG-6959 | Defect | [Regression] When using editType='fullRow', stopEditingWhenCellsLoseFocus=true and a custom cell editor, editing an agSelectCellEditor and pressing ESCAPE key onCellValueChanged and onRowValueChanged events to be fired |
| AG-6956 | Defect | [Regression] When focusing/selecting a cell in the group or total footer rows, copying it to clipboard copies an empty value |
| AG-6949 | Defect | When using rowDrag=true, dragging a row and accessing rowNodes inside the rowDragText callback throws an exception |
| AG-6944 | Defect | [Regression] When using editType=fullRow and stopEditingWhenCellsLoseFocus=true, editing a row with only null values and focusing away from it throws an exception |
| AG-6873 | Feature Request | [Row Selection] Allow displaying disabled (read-only) checkboxes instead of no checkboxes when the row is not selectable |
| AG-6847 | Defect | [Regression] When starting an edit with agSelectCellEditor the valueFormatter is not called and console warnings are displayed |
| AG-6829 | Defect | When changing the visibility of a column by toggling the column checkbox in the columns tool panel, onGridColumnsChanged event is fired (it shouldn't be fired) |
| AG-6825 | Defect | [Regression] When using set filter with suppressSorting=true, set filter values are still sorted |
| AG-6758 | Defect | [Regression] When using Firefox, the horizontal scrollbar doesn't appear when hovered |
| AG-6562 | Defect | [Regression][Vue] When using Vue, dynamically changing components using the components property and grid throws exception |
| AG-6137 | Defect | [Integrated Charts] Changes to the Series Fill Opacity are not reflected in the Legend |
| AG-5103 | Defect | [Framework] In onGridReady the setState() callback hook gets called before the row data is set, preventing the application of an initial filter model |
| AG-4251 | Defect | [React] Memory leak when updating React cell renderers |
| AG-1063 | Feature Request | [SSRM] Allow setting the initial page and scroll position to a particular row index |

### 28.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7863 | Feature Request | [React] Make enableRangeHandle property reactive |
| AG-7548 | Defect | Set filters item text rendered over another item when filter item contains `\n` character |
| AG-7280 | Defect | When using groupDisplayType=multipleColumns, the group column innerRenderer is only called for the left-most group column and not for all group columns |
| AG-7050 | Feature Request | [React] Make enableFillHandle a reactive property |
| AG-7035 | Defect | [Regression] When setting pivotTopRowData, values in the pivotRowTotals column cannot be set anymore |
| AG-6915 | Feature Request | [Row Sorting] Rename colDef.comparator parameter isInverted to isDescending |
| AG-6903 | Defect | When using Windows-style overlay scrolling in Edge, the horizontal scrollbar doesn't appear when hovered and cannot be dragged |
| AG-6900 | Defect | When enableRangeSelection=true the rangeSelectionChanged event is fired twice instead of once on mousedown |
| AG-6898 | Feature Request | [Charts] Add Legend Item click listener |
| AG-6884 | Defect | [Regression] When setting groupHideOpenParents=true, collapsed group row cell values cannot be copied |
| AG-6883 | Defect | When calling setColumnDefs with colDefs with a column that's locked on the left but isn't first in the array or locked to the right but isn't the last, the locked column isn't rendered on the correct side of the grid |
| AG-6878 | Defect | [Regression] When using integrated line/area/scatter charts both x and y axis labels are clipped |
| AG-6874 | Feature Request | Improve the way Cell Class is handled to avoid React’s memory leak |
| AG-6863 | Defect | When readOnlyEdit=true, editing a grid cell causes flicker and lost focus |
| AG-6858 | Feature Request | [SSRM] Simplify SSRM by removing Store concept |
| AG-6857 | Defect | When dragging the fill handle in a pinned column, the fill area dashed border isn't shown in the border between the pinned and unpinned columns |
| AG-6856 | Defect | When focusing agNumberColumnFilter, entering a number and turning the mouse wheel increases/decreases the value |
| AG-6848 | Feature Request | [SSRM] Allow Server-Side Sorting & Filtering when using server-side row model without Infinite Scroll |
| AG-6836 | Defect | [Regression] When using non-QWERTY keyboards (French/German/etc), keyboard shortcuts CTRL+Z/Y don't work |
| AG-6832 | Defect | When using tree data with group selection but not all rows are selectable, the top-level checkbox is indeterminate state and cannot be un-selected |
| AG-6826 | Defect | [Regression] When using React and setting a filter model, filtered rows are rendered with incorrect heights |
| AG-6824 | Defect | When rowSelected event is fired, its event property (storing the browser event) is always undefined |
| AG-6812 | Defect | When destroying grid while the Column Menu Tab of the Column Menu is open, an exception is thrown |
| AG-6806 | Defect | [Regression] When enableRangeSelection=true, clicking a grid cell fires dragStopped event unnecessarily |
| AG-6805 | Defect | When using React, applying column state and then filter model produces empty lines inside the grid rows |
| AG-6801 | Feature Request | [Accessibility] Allow row group, values, pivot areas in columns tool panel to comply with accessibility standards (currently using aria-role attribute instead of role attribute) |
| AG-6795 | Defect | When using row grouping, selecting all rows with header checkbox selection, expanding a row group and dragging a row, console exceptions are thrown |
| AG-6771 | Defect | When using Chrome on Windows with a grid with big number of rows (>50,000) and multiple levels of row grouping, pressing the DOWN ARROW button to scroll the grid, the viewport doesn't keep up and renders with a delay |
| AG-6765 | Defect | [Regression] When using Windows, enabling range selection and suppressing row and column virtualization, using the arrow keys to scroll the viewport, focused cell freezes and doesn't change for a few seconds at a time |
| AG-6757 | Defect | When dragging a row from a grid into another grid which is partly displayed over the source grid, the row can only be dropped into the target grid part that's not over the source grid |
| AG-6754 | Defect | When using SSRM and setting the aria-rowcount property, its value gets reset each time the grid is scrolled |
| AG-6731 | Feature Request | [Accessibility] Allow row group panel to use correct accessibility attribute (role instead of aria-role) |
| AG-6707 | Feature Request | [Events] Remove rowDataChanged event in favor of rowDataUpdated event, and call filter.onNewRoadsLoaded consitently |
| AG-6706 | Defect | When removing a column from the row group panel, onColumnVisible event isn't fired even though the column visibility changes |
| AG-6703 | Defect | [Regression] When using external filtering and changing the external filter, isExternalFilterPresent callback is called multiple times instead of just once |
| AG-6660 | Defect | When pivoting, reordering secondary columns and then expanding a secondary column resets the secondary column order |
| AG-6635 | Defect | [Docs] Large text editor docs section code segment incorrectly uses agTextCellEditor instead of agLargeTextCellEditor |
| AG-6601 | Defect | When using Angular 13 and importing AG Grid, a compiler warning is output when building codebase |
| AG-6587 | Feature Request | [Row Grouping] Allow sorting different group columns separately by clicking the grouped column items in the row group panel |
| AG-6539 | Feature Request | [Pivoting] Rename Secondary Columns to Pivot Columns (API members) and update documentation |
| AG-6398 | Feature Request | [Layout & Styles] Add parameter to set the number of levels of row-group and column-select indents to produce in the CSS |
| AG-6370 | Feature Request | [Themes] Extend CSS variables in themes |
| AG-5946 | Defect | When using master/detail grids, cells at multiple levels can be focused |
| AG-5900 | Defect | When grouping a pinned column used as category in integrated charting, the integrated chart has two category columns - the grouped and ungrouped version of the same column is used as category and the chart is invalid |
| AG-5203 | Feature Request | [Aggregation] Improve performance of column aggregation calculation |
| AG-5000 | Defect | Memory leak when using custom cell renderer component built on CellRendererFramework, pinnedRowCellRendererFramework |
| AG-4953 | Defect | Memory leak when using custom header component built on HeaderComponentFramework |
| AG-4912 | Feature Request | [Row Grouping] Allow column to be hidden when grouping by dragging from the grid header and from the columns tool panel list |
| AG-4807 | Feature Request | [Typings] Add Generics to row data and cell value |
| AG-4670 | Feature Request | Investigate error when using CSS-variables when customizing ag-Grid themes |
| AG-4229 | Feature Request | [Range Selection] Allow deselecting cells from the selected cell range by CTRL+click a cell or SHIFT+drag to a cell (just like in Excel) |
| AG-3069 | Feature Request | [Excel Export] Allow exporting row groups and tree data to Excel so that you can expand/collapse them in Excel |
| AG-2609 | Feature Request | [Row Selection] Allow isRowSelectable callback to be invoked after cell value edit (currently only called once on initial render) |
| AG-2328 | Feature Request | [SSRM] Allow to combine auto height with SSRM without having to purge cache |
| AG-1555 | Feature Request | [Column Headers] Allow column headers to support word wrapping for multi-line text and auto-height |
| AG-463 | Feature Request | [Row Grouping] Allow the group row for the expanded row group to float/stick at the top of the viewport while scrolling through its child rows |

### 27.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6802 | Feature Request | [Accessibility] Allow column header cell to announce keyboard shortcuts without generating accessibility failure for its use of aria-description |
| AG-6794 | Defect | [Regression] When using rowDrag=true and setting rowHeight to 0, the row drag element is still displayed |
| AG-6772 | Defect | [Charts] When restoring integrated charts, an exception is thrown because of a version parsing issue |
| AG-6762 | Feature Request | [Row Selection] Allow copying selected rows when using range selection and only a single cell is selected |
| AG-6760 | Defect | When using row grouping and groupSelectsChildren=true or tree data and selecting a child row, its parent rows are also unnecessarily selected |
| AG-6755 | Defect | When handling the cellValueChanged event on the column definition and pasting values inside grid cells, the pasteEnd event gets fired before the cellValueChanged event defined in the column definition |
| AG-6752 | Defect | When using row grouping and getRowId callback producing unbalanced groups, setting grid data via rowData property or via setRowData API method produces different row order |
| AG-6749 | Defect | When using row selection and setting enableRangeSelection=true, selecting a single cell copies the row instead |
| AG-6746 | Defect | When using integrated cross-filtering charts, using a valueGetter for a column prevents multiple selection in the chart |
| AG-6743 | Defect | [Regression] When using React, ag-full-width-container DOM element is set incorrect aria role="rowgroup" |
| AG-6739 | Defect | When using SSRM and providing an undefined/null/not an array data source to setServerSideDatasource API method, focusing a column header cell and pressing DOWN ARROW key throws an exception |
| AG-6738 | Defect | When using autoHeight and wrapText in print layout, scrolling causes cell content to shift and resize as they are rendered |
| AG-6737 | Defect | [Regression] When using React, expanding a group row briefly displays chevrons on the left side of child rows |
| AG-6736 | Defect | [Regression] When using tree data, leaf rows display child count number |
| AG-6735 | Defect | [Regression] When using tree data, group row children count represents leaf rows instead of all rows |
| AG-6733 | Defect | [Regression] When pivoting with multiple value columns, the value column totals are incorrect |
| AG-6730 | Defect | When using multiple row selection and setting suppressRowDeselection=true, pressing SHIFT it's still possible to de-select rows |
| AG-6723 | Feature Request | [Updating Data] Add a new property, so that rowData updates never uses immutable data |
| AG-6709 | Defect | [Regression] When using React with custom filters in columns which are out of view, custom filter value is reset to initial value |
| AG-6704 | Defect | When using master-detail grid with groupHideOpenParents=true, expanding a master row hides it |
| AG-6702 | Defect | When setting row style dynamically, adding new rows via applyTransaction causes row styles to flicker |
| AG-6700 | Defect | When using React and setting rowClass via state, this doesn't cause a re-rendering of the rows with the new rowClass value |
| AG-6698 | Defect | [Regression] When using React with autoHeight and wrapText=true scrolling up from the bottom causes rows to jump up and down |
| AG-6688 | Defect | When onRowGroupOpened event is fired, its event property is always undefined (it should contain the browser event) |
| AG-6668 | Defect | [Regression] When using range selection, focusing a cell that's initially scrolled out of view horizontally, holding SHIFT key pressed and pressing LEFT ARROW key a few times, only some of the cells are selected |
| AG-6641 | Defect | [Regression] When using Windows with a non-Latin keyboard layout, keyboard shortcuts CTRL+C and CTRL+V to copy and paste grid cell values no longer work |
| AG-6609 | Feature Request | [Column State] Allow keeping currently selected cell range (range selection) when new Column Definitions are loaded |
| AG-6524 | Defect | When showing a grid with data and a loading overlay, calling setColumnDefs to add columns hides the loading overlay |
| AG-6492 | Feature Request | [Events] Add event source property to the sortChanged event params |
| AG-6367 | Defect | [Regression] When using custom theme colors in the integrated chart and saving state, the custom theme colors aren't restored when state is reloaded |
| AG-6239 | Defect | [Regression] When using deltaSort=true and updating cells via a transaction, the rows are not reordered according to the sort, and an exception is thrown |
| AG-5922 | Feature Request | [Accessibility] Allow focused cell style to be visible when using high-contrast mode in Windows |
| AG-5629 | Defect | [Regression] When using deltaSort=true and adding rows via a transaction, an exception is thrown |
| AG-5263 | Feature Request | [Aggregation] Allow defining a defaultAggFunc for a column to be used when the column is used as a value column |
| AG-4392 | Feature Request | [Accessibility] Add aria-label on a column header to announce the keyboard shortcuts for column menu/sorting if column has column menu or is sortable |
| AG-4273 | Feature Request | [Accessibility] Allow announcing the expanded/collapsed state of group and master rows (add the ARIA-expanded attribute) |
| AG-4223 | Feature Request | [Master/Detail] Allow keyboard navigation in and out of the detail grid (place the detail grid in the DOM order after the master node) |
| AG-3692 | Feature Request | [Row Grouping] Allow grouped columns to not reset their width after a change in the order of grouping columns |
| AG-3241 | Feature Request | [Tree Data] Allow tri-state checkbox group selection in tree data |
| AG-2923 | Feature Request | [SSRM] Add the grid context to the IServerSideGetRowsParams in the server-side row model getRows callback |
| AG-2883 | Feature Request | [Pivoting] Allow removing the value header column row if only adding one single value column to pivoting |
| AG-2377 | Feature Request | [Clipboard] Allow copying the focused cell instead of the selected rows |
| AG-2174 | Feature Request | [Range Selection] Allow pressing CTRL + SHIFT+ ARROW key to select all cells in the direction of the ARROW key press (just like Excel) |

### 27.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6687 | Defect | When calling api.getSheetDataForExcel API method, the fontSize setting in the params is ignored and values are exported with default font-size |
| AG-6663 | Defect | When using React 18 with StrictMode in development mode an exception is thrown |
| AG-6266 | Feature Request | [React] Investigate AG Grid ReactUI rendering when using React 18 |

### 27.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6705 | Defect | [Regression] When displaying non-plain-text elements in grid cells, they're displayed at a smaller vertical offset than needed |
| AG-6699 | Defect | When using SSRM storeType=full, filtering on the auto-group column only filters out its children but the group row remains displayed in the grid |
| AG-6674 | Defect | [Sparkline] Sparklines label `fontSize` property type is string instead of number |
| AG-6638 | Defect | [Regression] When using React, rendering a grid with many columns is slower than when using legacy React |
| AG-6636 | Defect | When using server-side row model-partial with a hidden column with autoHeight: true, and setting a column filter value, filtered rows are shown in reduced or stretched height |
| AG-6632 | Defect | [Regression] When using enableRangeSelection=true, selecting a cell range and holding the mouse button pressed moving mouse pointer below the grid, the grid doesn't scroll anymore |
| AG-6622 | Defect | [Regression] When using getRowId callback and calling setRowData API method, onRowDataChanged event not fired |
| AG-6621 | Defect | [Regression] When using master-detail with enableRangeSelection=true and embedFullWidthRows=true and enableCellTextSelection=true on the detail level, detail-level cells text cannot be selected |
| AG-6614 | Defect | [Regression] When using Mac and AG Grid row autoHeight=true, scrolling the viewport down quickly some rows remain at default height and auto-height isn't calculated and cell text displayed in a single line |
| AG-6611 | Defect | [Regression] When using row autoHeight=true, focusing a cell near the bottom of the viewport and holding the PAGE DOWN key, the viewport scrolls but the cell focus is lost and scrolling stops |
| AG-6610 | Defect | When using React and row grouping, the autogroup column cells flicker on each call to setDefaultColDef with a valueSetter, valueGetter, cellRenderer, headerName, sort update |
| AG-6607 | Defect | When calling setDefaultColDef API method, auto-group column menu popup closes |
| AG-6606 | Defect | When calling setDefaultColDef API method, grid auto-group column cells lose focus |
| AG-6605 | Defect | [Regression] When groupMaintainOrder=true and sorting a non-grouped column, group row order is not maintained |
| AG-6598 | Defect | When using pivoting with multi-level grouping (groupHideOpenParents=true) and pagination, expanding all row groups from the group column menu displays an empty grid with no rows |
| AG-6597 | Defect | When filtering a grouped column, modifying the grouped columns (reorder, remove, add a group column), the previously filtered grouped column no longer appears as filtered and changing the filter values doesn't update the floating filter anymore |
| AG-6592 | Defect | When using SSRM-partial, focusing a grid cell and pressing the END key doesn't focus the last row grid cell |
| AG-6590 | Defect | When resizing a column down and clicking the resize handle of a column 2 columns left, the middle column cell values render over the right-most column's cell values |
| AG-6589 | Defect | [Regression] When using SSRM-partial, filtering on a grouped column then ungrouping that column causes two calls to getRows instead of one |
| AG-6584 | Defect | When using localization, aria labels of values and column labels areas in the columns tool panel are incorrect |
| AG-6583 | Defect | When using localization, right-clicking a column with enableValue=true in the columns tool panel, displays ${variable} instead of the column name in the context menu |
| AG-6571 | Defect | [Regression] When using tree data with autoHeight=true on a column, row height values returned by getRowHeight for parent rows are ignored and parent rows are set to default row height |
| AG-6565 | Feature Request | [Pivoting] Preserve Pivot State when toggling Pivot Mode |
| AG-6564 | Defect | [Regression] When using React with immutable data and a custom cellRenderer, an exception is thrown |
| AG-6563 | Defect | [Regression] When using headerClass or cellClass to provide multiple CSS classes inside the same string, an exception is thrown and the grid isn't rendered |
| AG-6561 | Feature Request | [Pivoting] Preserve secondary columns expanded state when inserting data that adds a new secondary columns |
| AG-6558 | Defect | When creating multiple integrated charts via API, modifying the series order of the first chart, the series order of the chart created second cannot be changed |
| AG-6557 | Defect | When exporting to Excel, using '&' (ampersand) character in sheetName exports a corrupt file |
| AG-6556 | Defect | [Regression] When using autoHeight=true, cell content does not fill the entire width of the cell |
| AG-6545 | Defect | When providing duplicate row ids in getRowId callback, the console warning incorrectly refers to the old getRowNodeId callback instead |
| AG-6542 | Defect | [Regression] When using React with a custom sidebar component, a re-render of the grid throws an exception in the console |
| AG-6527 | Defect | [Regression] When enableRangeSelection=true, content in the edited cell cannot be selected |
| AG-6518 | Defect | When using tabToNextCell and navigateToNextCell callbacks, params.previousCellPosition.rowPinned is undefined when it should be null |
| AG-6512 | Defect | [Filtering] SetFilter Excel Mode filter-list behaviour inconsistent with mini-filter behaviour |
| AG-6500 | Defect | [Regression] When setting headerClass in defaultColGroupDef, having an empty column group cell has incorrect CSS class and all subsequent column group cells to have an incorrect CSS classes set |
| AG-6498 | Defect | When using server-side row model (SSRM) partial, returning non-unique ids via getRowNodeId causes grid to display loading indicators for all rows |
| AG-6375 | Defect | [Regression] When using React, building the application code produces a lot of warnings about missing source maps |
| AG-6303 | Defect | When pivoting a string-type column, column filtering resets secondary column state (column width, order, pinning, etc) |
| AG-6231 | Defect | When using tree data, calling applyTransaction to insert new rows at the lower levels (not root) adds the new row at addIndex-1, not at the addIndex value |
| AG-5421 | Feature Request | [Row Sorting] Add multi-column sorting option to always sort on multiple columns without pressing SHIFT key |
| AG-4571 | Feature Request | [Pivoting] Allow saving and restoring ColumnState with Primary/Secondary Columns in pivot mode |
| AG-3353 | Feature Request | [API] Standardize all callbacks so that they all receive a params object with gridApi / columnApi / context etc.. |
| AG-3326 | Feature Request | [Column Pinning] Allow columns to be 'locked' to the RHS of the grid |
| AG-2168 | Feature Request | [Pivoting] Allow filtering in secondary columns when pivoting |
| AG-1722 | Feature Request | [Master/Detail] Allow detail-level rows to be selected |
| AG-1228 | Feature Request | [Column Filtering] Allow filtering on aggregated group level values |

### 27.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6626 | Defect | [Regression] When using React with editor component, pressing ENTER, TAB, ESCAPE keys, the editor component onKeyDown event not fired |
| AG-6608 | Defect | When calling setDefaultColDef API method, column order is reset |
| AG-6585 | Defect | [Regression] When using React, calling setRowData causes cell values to flicker |
| AG-6559 | Defect | [Firefox] Combined filter (agMultiColumnFilter) with a vertical scrollbar also renders a horizontal scrollbar |
| AG-6553 | Defect | When using JS or React, editing a cell causes the valueSetter to be called twice |
| AG-6538 | Defect | [Vue only] When providing the tabToNextCell callback through the gridOptions object and the focused cell is in edit mode, calling tabToNextCell/tabToPreviousCell which returns a non-editable cell, the grid becomes unresponsive |
| AG-6525 | Defect | [React] Grid incorrectly resizes columns back to default value after re-render |
| AG-6497 | Defect | [Regression] When using enableCellChangeFlash=true, changing the value of a cell by editing, it doesn't flash |
| AG-6488 | Defect | [Regression] When using React, hovering over a custom header removes CSS classes from it |
| AG-6478 | Defect | [Regression] When setting a column filter (either on a per-instance level of via applying a filterModel) in onGridReady, the filter is not applied |
| AG-6474 | Defect | [Regression] When filtering grouped data and checking a group header row checkbox, it cannot be unchecked |
| AG-6473 | Defect | When editing a grid cell by double-clicking or pressing F2 key, the onCellEditingStarted params event property should hold the browser event but it is always null |
| AG-6470 | Defect | [Regression] When using React, the status bar components agTotalRowCountComponent, agTotalAndFilteredRowCountComponent, agFilteredRowCountComponent don't display the correct number of rows |
| AG-6469 | Defect | When using master/detail with legacy React with a hook in the custom cell renderer, a React exception is thrown |
| AG-6459 | Defect | [Regression] When using master-detail with Angular & Vue, Framework Components aren't supported in the detail grid |
| AG-6458 | Defect | [Regression] When using React, setting ensureDomOrder=true doesn't order the elements in the DOM |
| AG-6457 | Defect | [Regression] When using React, setting enableCellTextSelection=true, cells in columns with type=numericColumn align values to the left instead the right |
| AG-6456 | Feature Request | [Cell Editing] Allow cellEditorPopup and cellEditorPopupPosition to be dynamic |
| AG-6455 | Defect | When using unmanaged row dragging (rowDragManaged=false), the nodes property is undefined inside the params of the grid events onRowDragEnter, onRowDragMove,onRowDragLeave,onRowDragEnd |
| AG-6453 | Defect | [Regression] When using React, custom Cell Editor props (ICellEditorParams) don't allow accessing key property value due to naming conflict with React |
| AG-6449 | Defect | [Regression] When editing a cell in a column with autoHeight=true which has a larger height, the editor slowly shrinks in height down to default row height |
| AG-6448 | Defect | [Regression] When using master-detail with React/Angular/Vue, providing a custom header component on a detail grid level using the components property throws an exception |
| AG-6447 | Defect | [Regression] When focusing a partially-visible floating filter and pressing TAB, headers are scrolled horizontally but the rows viewport aren't |
| AG-6446 | Defect | [Regression] When using master/detail with custom cell renderer in the detail grid, expanding a row throws an exception |
| AG-6437 | Defect | [Regression] When using ReactUI with SSRM, calling api.setFilterModel method for a custom filter before opening the custom filter via UI throws an exception |
| AG-6435 | Defect | When setting tooltipShowDelay, the delay only applies for the first cell the tooltip is displayed for |
| AG-6434 | Feature Request | [Frameworks][Vue] Add support for v-model to @ag-grid-community/vue3 / ag-grid-vue3 |
| AG-6432 | Defect | [Regression] When entering a non-numeric value in the floating filter input for a numeric column, the floating filter displays 'equals' instead of 'NaN' |
| AG-6431 | Defect | [Regression] When ungrouping all grouped columns, opening the column menu and resetting columns the auto-group column is rendered as the right-most column |
| AG-6426 | Defect | When using theme ag-grid-material or ag-grid-balham, checkboxes of grouped columns in the columns tool panel are displayed to the left of remaining checkboxes on the same level |
| AG-6425 | Defect | When using a full-width cell renderer, calling refreshCells() API method, doesn't call the full-width cell renderer refresh() method |
| AG-6415 | Defect | [Regression] When importing AG Grid on a page, console warning is displayed about missing source map |
| AG-6413 | Defect | When using ReactUI with autoHeight=true and a JavaScript class renderer, the column cells display empty values |
| AG-6411 | Defect | When using ReactUI with server-side row model (SSRM), activating pivot mode by calling columnApi.setPivotMode() throws an exception and leaves the pivot mode switch off |
| AG-6405 | Defect | When using ReactUI rendering with column autoHeight=true, setting column definition type:'rightAligned', or type:'numericColumn' aligns cell values to left instead of to the right |
| AG-6403 | Defect | When using ReactUI rendering, column reordering is slower due to rendering lag |
| AG-6402 | Defect | [Regression] When rendering cells without values, checkbox and row drag elements inside these cells are aligned to the top of the cell instead of centered in the middle |
| AG-6397 | Defect | Update afterGuiAttached typing and documentation to reflect it is called for every framework |
| AG-6394 | Feature Request | Replace getRowNodeId() with getRowId() to make a) immutable data the default and b) provide more info in params |
| AG-6393 | Defect | [Regression] When returning an empty string in cellClass, an exception is thrown and no grid rows are displayed |
| AG-6388 | Defect | [Regression] When using React with master-detail and editing a master cell with cellEditorPopup=true, entering a new value in the cell editor is not then displayed in the cell after editing finishes |
| AG-6385 | Defect | When calling columnApi.getColumnState() API method, in the returned ColumnState, colId can't be null |
| AG-6376 | Defect | [Regression] When using agTextColumnFilter, agNumberColumnFilter, agDateColumnFilter there's no way to keep filter state after refreshing the data by calling setRowData() |
| AG-6369 | Defect | [Regression] When using a compact theme and returning a small height from getRowHeight(), cell values get rendered outside of the rows |
| AG-6364 | Defect | When using React and setting column definitions via state on a grouped grid with groupDisplayType='groupRows' (full-width group rows), an exception is thrown |
| AG-6359 | Defect | [Regression] When setting a column as lockPosition=true, its drag handle is disabled in the columns tool panel and it cannot be dragged to the row groups panel |
| AG-6349 | Defect | When using React with row grouping and groupHideOpenParents=true, expanding all the row groups and sorting on a non-group column, the top row values don't include the group names anymore |
| AG-6331 | Defect | [Regression] When filtering using the number filter, entering a decimal fraction value displays a validation error |
| AG-6330 | Defect | When using React with server-side row model with column grouping, calling columnApi.resetColumnState() API method doesn't clear the grouped column from the row group panel and shows an error in console |
| AG-6326 | Defect | [Regression] When using ReactUI and filtering using the floating filter, scrolling the filtered column out and then back into view clears its floating filter input value |
| AG-6317 | Defect | When using column filtering and reordering columns, the filter tool panel no longer displays filtered icons for the filtered columns |
| AG-6316 | Defect | [Regression] When using agNumberColumnFilter, setting allowedCharPattern is ignored and all user input is entered as valid in the filter input |
| AG-6306 | Defect | When using a Mac with setting show scrollbars="When scrolling" or "Automatically based on mouse or track", scrolling the grid right displays two horizontal scrollbars on Chrome, Firefox and Safari |
| AG-6304 | Defect | When dragging multiple rows from the grid, an untranslated string is used for 'rows' |
| AG-6298 | Defect | [Changelog] When providing the version number as a parameter in the URL, the version isn't set in the dropdown or the grid |
| AG-6295 | Defect | When the focused cell is in edit mode, calling tabToNextCell/tabToPreviousCell which returns a non-editable cell, the grid freezes with an infinite loop |
| AG-6276 | Defect | [Docs] Aggregation function example using a cell value that's a complex object with a toString method, throws an exception when exporting to CSV |
| AG-6263 | Defect | When using the theme icon "none" as a tool panel icon, the grid can't load it and doesn't display it |
| AG-6261 | Defect | When using pagination and changing the page size, the row styles don't get reapplied |
| AG-6015 | Feature Request | Create isolated version of ESM bundles |
| AG-4030 | Feature Request | [Column State] Allow defaultColDef to be reactive, and provide api.setDefaultColDef() for when not using a framework |
| AG-3284 | Feature Request | [Charts] Add Integrated Combination Charts |

### 27.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6404 | Feature Request | [React] Investigate improving cell rendering speed when using ReactUI rendering |
| AG-6351 | Defect | [Regression] When using agGroupCellRenderer or default cell renderer, the content is rendered vertically offset from the middle of the cell |
| AG-5966 | Defect | When rows are narrow, clicking inside a selection checkbox doesn't check it |

### 27.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-7684 | Feature Request | [SSRM] The SSRM getRows method requests an extra row over the cacheBlockSize value |
| AG-7040 | Defect | When using infinite/viewport row model, the first data request includes an extra row |
| AG-6526 | Feature Request | [Row Selection] Investigate improving the performance of row selection by a user for a large number of rows |
| AG-6522 | Defect | [Regression] When using headerCheckboxSelection=true and enumerating and selecting all the nodes via API is quite slow |
| AG-6499 | Defect | [Regression] When using Chrome on a Mac with MacOS scrollbar settings "automatically based on mouse or trackpad" or "when scrolling", horizontal scrollbar cannot be clicked and scrolled |
| AG-6465 | Defect | [Regression] When using React and editing a cell in a column with agRichSelectCellEditor, the editor gets clipped by the cell bounds instead of displayed over the cell as a popup |
| AG-6454 | Defect | [Regression] When using React, ref cannot be accessed inside a useEffect on initialisation |
| AG-6436 | Defect | When using ReactUI, returning background-color instead of backgroundColor in the cellStyle produces a console exception |
| AG-6433 | Defect | Missing properties providedColumnGroup, groupId in TypeScript IHeaderColumn type |
| AG-6430 | Defect | [Regression] When using React, accessing a custom filter instance in onFirstDataRendered callback or via API before opening the filter via UI throws an exception |
| AG-6428 | Defect | [Regression] When using autoHeight=true and setting rowBuffer property, the rows included in the rowBuffer don't get their height set until scrolled into view, causing the vertical scrollbar to jump |
| AG-6418 | Defect | When using infinite row model or server-side row model with infinite scrolling with a large number of records (100,000s of records), scrolling down many records, clicking a grid cell doesn't focus it |
| AG-6401 | Defect | When setting aggFunc='min' or aggFunc='max' on a column with string or date values, the aggregation returns empty values |
| AG-6400 | Defect | When using SSRM-partial with row autoHeight=true, calling ensureIndexVisible to scroll to a row, the grid scrolls down too little and the requested row is not displayed in the viewport |
| AG-6391 | Defect | [Regression] When using React, returning an empty string in the cellStyle callback throws an exception and doesn't render the grid |
| AG-6374 | Defect | When setting style display=flex and flex-direction=column, the horizontal scrollbar is displayed unnecessarily |
| AG-6321 | Feature Request | [React] getReactContainerClasses() API Method no longer needed |
| AG-6319 | Feature Request | [React] Remove isPopup() and getPopupPosition() API methods for Custom Cell Editors |
| AG-6312 | Defect | [Regression] When using SSRM-partial and autoHeight=false, adding a new row reduces the heights of all visible rows |
| AG-6311 | Defect | When using ReactUI, clicking on a grid cell removes the hovered style for the row |
| AG-6309 | Defect | When using ReactUI=true and a custom cell editor with an input field firing an onBlur event, navigating away from the edited cell does not trigger the onBlur event |
| AG-6308 | Defect | When using ReactUI with pivoting, adding a value column displays an error in console |
| AG-6307 | Defect | When using ReactUI with master/detail detailRowAutoHeight=true, providing a custom detail cell renderer uses default height (300px) instead of correct auto-height |
| AG-6294 | Defect | When using ReactUI=true and valueGetter in the auto-group column, the grid throws an exception |
| AG-6292 | Defect | When using ReactUI=true with pinned columns, a second set state causes the pinned column cells to not display any data (because the pinned column has lost its width) |
| AG-6290 | Defect | When using ReactUI=true and agMultiColumnFilter as a floating filter, opening the floating filter or column menu and unmounting the grid throws an exception |
| AG-6287 | Feature Request | [Accessibility] Allow using the keyboard to move columns in the column tool panel to the row groups, values, column labels panels |
| AG-6286 | Defect | [Regression] When setting enableCharts=true, initially rendering the grid in Chrome, multiple console warnings are output about non-passive touchstart and wheel event listeners being added |
| AG-6279 | Defect | When using ReactUI and enableRangeSelection=true, adding a group column via API throws an exception and doesn't render the group column values |
| AG-6274 | Defect | [Regression] When setting autoHeight=true on a column and using a custom cell background color, the horizontal borders between rows aren't displayed in the autoHeight=true column |
| AG-6271 | Defect | When using ReactUI and selecting a cell range, setting new column definitions via a state variable throws an exception |
| AG-6262 | Defect | When calling api.setQuickFilter with a non-string value, an exception in thrown |
| AG-6256 | Defect | [Regression] When getting the set filter instance for a column with filter=false, calling api.onFilterChanged throws an exception |
| AG-6255 | Defect | [Regression] When using a custom header component inside a column group, the init method gets invoked for the custom header component even if the group is already removed |
| AG-6251 | Defect | [Regression] When using master-detail, updating a master row sets its detailGridInfo to null |
| AG-6250 | Defect | [Regression] When importing AG Grid with modules, using server-side row model-partial and setting a column filter value, result rows are stretched in height to occupy the total height of the unfiltered rows |
| AG-6247 | Defect | [Regression] When pivoting and updating a state variable in React, secondary column header name isn't updated |
| AG-6246 | Defect | [Regression] When setting autoHeight:true and wrapText:true and defining a style with a right cell border, for a row with a cell that's wrapped the border is not rendered in cells that don't have wrapped cell values |
| AG-6245 | Feature Request | [Accessibility] Allow announcing the filter operation select element as a combobox (it is currently simply announced as "clickable") |
| AG-6238 | Defect | When using ReactUI=true, calling grid API methods while grid is first rendering is throwing an exception |
| AG-6235 | Defect | [Regression] When setting cellClass for a column but not returning any value for some cells, an exception is thrown and cells without a style set aren't rendered |
| AG-6233 | Defect | When using ReactUI=true and filterValueGetter on the group column, updating state throws an exception |
| AG-6226 | Feature Request | [Docs] Add a docs example showing how to build a progress bar using a bar sparkline |
| AG-6224 | Defect | When reactUI=true and using grid inside a third party component, calling api.sizeColumnsToFit inside onGridReady throws an exception |
| AG-6223 | Defect | When providing row node ids via the getRowNodeId callback, providing a 0 value returns it as a number instead of a string |
| AG-6222 | Defect | [Regression] When using agNumberColumnFilter, a filter model with value 0 for any filter operation cannot be restored |
| AG-6220 | Defect | [Regression] When using automatic row height (autoHeight=true), the grid enters an infinite loop in measureHeight |
| AG-6204 | Feature Request | [Charts] Preserve scroll position when tabbing between integrated chart menu tabs |
| AG-6186 | Feature Request | Allow Framework Components to be registered without xxxFramework |
| AG-6185 | Defect | When using ReactUI=true and a JavaScript cell renderer component, updating the cell value appends multiple instances of the cell renderer output |
| AG-6180 | Feature Request | [Accessibility] Allow screen reader announcements of group column items in row group panel and keyboard navigation for enumerating and removing row group panel group column items |
| AG-6178 | Feature Request | [Excel Export] Allow exporting collapsible column groups in AG Grid as collapsible column groups in the Excel export |
| AG-6172 | Defect | When using tree-data with server-side row model and calling refreshServerSideStore for a route with a leaf node which becomes a parent node, the row doesn't get refreshed |
| AG-6167 | Defect | [Regression] When exporting grid data to XML format, the exported content format no longer includes style data in the header |
| AG-6161 | Defect | [Regression] When using autoHeight=true and wrapText=true calling the api.resetRowHeights method sets rows height to default and renders the cell value wrapped text over the cells below |
| AG-6155 | Defect | [Regression] When setting suppressAnimationFrame: true, console warnings are output |
| AG-6143 | Defect | [Regression] When a column has autoHeight: true and rendering a null/undefined/empty cell value, the default cell renderer has no height and cannot be clicked |
| AG-6142 | Defect | [Regression] When using provided set filter values including nulls and an empty string, the empty string is represented with a separate set filter item instead of included in the (Blanks) item |
| AG-6132 | Defect | When using ReactUI with tree data, quick-filtering and deleting the quick filter text throws an exception |
| AG-6120 | Defect | When using ReactUI=true, providing column definition aggFunc values 'avg' or 'count' throws an exception |
| AG-6111 | Feature Request | [Integrated Charts] Change chartType to a string literal instead of enum type |
| AG-6109 | Defect | [Regression] When using a pinned column with row auto-height, the vertical separator between the pinned column and the rest of the columns doesn't extend the entire height of the cell |
| AG-6105 | Feature Request | [Docs] Clarify that registering a grid module makes it available to all grids |
| AG-6104 | Defect | When using ReactUI=true, auto-sizing a column is significantly slower |
| AG-6089 | Defect | When filtering a grouped column and ungrouping/regrouping the column, modifying the group filter doesn't update the floating filter input values |
| AG-6086 | Defect | [Regression] When setting an in-range filter with 0 as a lower bound, the filter is not applied |
| AG-6084 | Defect | [Regression] When filtering boolean values using the set filter, no records are displayed in the grid |
| AG-6083 | Feature Request | [Typing] Create ISetFilter and IMultiFilter interface to type public methods |
| AG-6078 | Defect | When using ReactUI, dragging a column resize handle is slow and not responsive |
| AG-6061 | Feature Request | [Sparkline] Allow a crosshair (a horizontal and a vertical line crossing at the mouse pointer location) to displayed when hovering the sparkline area |
| AG-6059 | Defect | When tabbing through floating filter inputs, tabbing into a column without a floating filter or without a floating filter button prevents focusing the next column floating filter input |
| AG-6057 | Defect | [Regression] When using React with useEffect hook to load data in the grid, data is loaded twice |
| AG-6056 | Defect | When providing grid data via a state variable, row dragging/dropping doesn't update the row data |
| AG-6052 | Defect | [Regression] When using an agNumberColumnFilter to filter for values equal to 0, no values are returned |
| AG-6051 | Defect | When using integrated charts to chart all rows in a grid, grand/group total footer rows shouldn't be included |
| AG-6049 | Feature Request | [Typing] HeaderClass type needs checking |
| AG-6046 | Defect | [Regression] When de-selecting any non-blank set filter item, blank values also get filtered out from the grid even though the (blanks) set filter item is selected |
| AG-6041 | Defect | [Regression] When re-ordering grid columns via drag and drop in Safari, all elements on the page are selected |
| AG-6039 | Feature Request | [Typing] Set header height types incorrect |
| AG-6031 | Defect | [Regression] When using SSRM (partial and full store types) with master-detail, calling setExpanded on master rows throws an exception |
| AG-6030 | Defect | When using React with TypeScript, error is displayed about the api object not being a member of AgGridReact |
| AG-6029 | Feature Request | [SSRM] Make getRowNodeId callback required when using SSRM and selection |
| AG-6027 | Defect | When using ReactUI and not registering ClientSideRowModelModule, rendering the grid throws an exception |
| AG-6026 | Defect | [React] When using ReactUI with enableRangeSelection=true, clicking a grid cell and then modifying a state variable throws an exception and the grid doesn't render anymore |
| AG-6022 | Feature Request | Rename 'Original Group' in Grid API |
| AG-5987 | Defect | [Regression] When enableBrowserTooltips=true, the displayed tooltip value is escaped twice |
| AG-5969 | Defect | When exporting to Excel, the patternColor setting is not applied to the cells in the exported Excel file |
| AG-5953 | Feature Request | [Keyboard Navigation] Deprecate suppressCellSelection and rename it to suppressCellFocus to better reflect its effect on cell focus, not selection |
| AG-5948 | Defect | When setting suppressCellSelection: true, only cell focus styling is suppressed, not cell focus |
| AG-5931 | Defect | [Regression] When setting autoHeight to a non-boolean value, grid rows are continuously resizing |
| AG-5902 | Feature Request | [Clipboard] Allow normalizing copied cell ranges and pasting copied values in the order they appear in the grid (just like Excel) instead of in the order they were selected |
| AG-5899 | Defect | When using custom detail with autoHeight: true, expanding a master row causes flicker as detail row changes size |
| AG-5862 | Defect | When using an infinite row model or server-side row model (partial), the default value for maxConcurrentDatasourceRequests is not respected and AG Grid makes more concurrent requests than allowed |
| AG-5836 | Feature Request | [Sparkline] Allow displaying the sparkline tooltip at a custom offset from the mouse cursor location |
| AG-5718 | Defect | refreshView API method is deprecated, but used in example code |
| AG-5703 | Defect | [React] When opening grid instance in new window using React portal, grid doesn't respond to column resizing, context menu closing, cell copying |
| AG-5681 | Feature Request | [Layout & Styles] Allow reevaluating the rowClassRules without redrawing the entire row and recreating cellRenderers |
| AG-5310 | Defect | When the column menu is opened via the column header cell, return focus to column header cell after the column menu is closed |
| AG-5268 | Feature Request | [Column Filter] Set Filter - make newRowsAction 'keep' by default |
| AG-5169 | Feature Request | [Column Filter] Use valueGetterParams in the filterParams valueGetter instead of just the node as param |
| AG-5044 | Feature Request | [Column Filters] Add more params to the textCustomComparator including rowNode, valueFormatter and actual value |
| AG-4839 | Feature Request | [Column Headers] Allow setting the horizontal position of the column (start,end,middle) when using ensureColumnVisible |
| AG-4797 | Feature Request | [Tooltip] Allow setting a custom hide tooltip timeout value |
| AG-4734 | Feature Request | [Column Filtering] Add a "non-blank" filter operation to all simple filters |
| AG-4624 | Feature Request | [Deprecation] KeyboardEvent.which and KeyboardEvent.keyCode should be deprecated |
| AG-3616 | Feature Request | [Row Height] Allow minimum row height to be set when using autoHeight=true |
| AG-3565 | Feature Request | [Column Sizing] Allow group column header values to be considered when performing column autosize |
| AG-2824 | Feature Request | [Clipboard] Allow the context menu "Copy with Column Headers" to work with multiple column header levels (column groups / secondary columns) |
| AG-2733 | Defect | When focusing a cell whose height exceeds available viewport height, PAGE DOWN and PAGE UP keys don't scroll the viewport anymore |
| AG-2358 | Feature Request | [Status bar] Allow changing the title and formatting the number value of the default status bar components (avg, count, min, max and sum) |

### 26.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6297 | Defect | [Regression] When using Polymer and unchecking or checking an item in the filter pop-out, the console logs an error and the grid is not filtered due to missing unwrap() method in polymer PolymerFrameworkComponentWrapper code |
| AG-6159 | Defect | When using SSRM with infinite scrolling, scrolling outside of the first block, purging and calling ensureIndexVisible for a row index outside of the first block, scrolling up puts the blocks in an inconsistent state |

### 26.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-6291 | Defect | [Regression] When using a valueFormatter on a column, reordering columns and updating rowData via a state variable in React, column order gets reset |
| AG-6282 | Defect | When using Chrome on Windows with alpine or alpine-dark theme, setting cellStyle font color value, hovering grid cells with the mouse makes the cell values font thinner |
| AG-6275 | Defect | [Regression] When using React, resizing flexed columns and setting a new cell value via a hook, the column widths are reset back to flex |
| AG-6273 | Defect | When using Chrome on Windows with balham or balham-dark theme, setting cellStyle font color to specific values (such as red), scrolling up quickly makes the cell values font thinner |
| AG-6267 | Defect | [Regression] When using autoHeight=true, cellStyle isn't always applied to cell content but to its parent element |
| AG-6242 | Defect | When using Firefox, hovering the grid cells and pressing down the mouse wheel, the grid only allows the viewport to be scrolled horizontally |
| AG-6129 | Defect | [Regression] When customising grid theme using mixins an error is thrown |
| AG-6124 | Defect | [Regression] When calling api.refreshHeader, grid floating filter row isn't refreshed |
| AG-6076 | Feature Request | [Framework] Add support for using Angular in "ngZone: noop"-Mode |
| AG-6009 | Defect | [React] When changing the grid SSRM data source via a React hook, the data source is changed twice |
| AG-5996 | Defect | When using Angular/React/Vue, the Filter Component destroy method is never fired when the grid is destroyed |
| AG-5995 | Defect | When using a mixin class with a name not starting with "ag-theme" and using popupParent, popup components do not inherit the styles from the mixin class |
| AG-5994 | Defect | [Regression] When using declarative columns in Angular, settings in defaultColDef are not applied to the columns |
| AG-5984 | Defect | When a column has lockVisible=true, it cannot be dragged inside the column tool panel to be reordered or grouped/aggregated/pivoted |
| AG-5983 | Defect | [Regression] When using Internet Explorer 11 and auto-sizing (a single or all) columns, the columns are not auto-sized and an exception is thrown |
| AG-5982 | Defect | [React] When using reactUi=true and providing rowData via a state variable, editing a cell causes stale state and resets the rowData to empty |
| AG-5980 | Defect | When using AG Grid community, setting groupMaintainOrder=true prevents column sorting |
| AG-5973 | Defect | [Regression] When using pivot chart and setting the series type to line, no chart is rendered |
| AG-5972 | Defect | When setting groupMaintainOrder: true, column filtering doesn't work |
| AG-5964 | Defect | When column definition is setting width=undefined, it doesn't take the value of the defaultColDef width |
| AG-5956 | Defect | When displaying a submenu in a popup (the PIN COLUMN submenu of the columns menu or a sub-menu in a multi-filter), clicking a submenu item hides and displays the popup even if it's already displayed |
| AG-5942 | Defect | When tapping a grid cell on a iOS mobile device, its custom tooltip shows up briefly and disappears |
| AG-5941 | Defect | [Regression] When using a column filter with subMenu or accordion type multi-filter pressing ESC key doesn't close the filter popup |
| AG-5936 | Defect | When using row autoHeight: true with server-side row model (partial), scrolling down to another block and purging the cache leaves the grid blank |
| AG-5933 | Defect | [Regression] When using server-side row model pressing DOWN ARROW key, when a loading cell renderer is reached focus is lost |
| AG-5925 | Feature Request | [Column Filters] Display a red border around the date picker filter input when invalid input is provided |
| AG-5915 | Defect | [Regression] When providing a field in the autoGroupColumn, the autoGroupColumn can no longer be sorted |
| AG-5905 | Defect | [Column Filters] SetFilter Filter List should be case insensitive by default |
| AG-5903 | Defect | When using Vue3, updating row data with a call to setDataValue resets row selection state |
| AG-5901 | Defect | When updating the rowData, the GroupTotalFooter node's leafchildren property is not updated |
| AG-5898 | Defect | When pivoting and paging without displaying any columns, pagination panel row count is incorrect (1 instead of 0) |
| AG-5897 | Defect | [Regression] When using infinite row model, the first row cannot be made a full-width row |
| AG-5896 | Defect | When using ReactUI=true, api can be accessed via ref before the grid is fully ready, which can trigger exceptions |
| AG-5892 | Defect | [Docs] Add the missing defaultExcelExportParams property to the Excel export API page |
| AG-5890 | Defect | applyColumnState does not use minWidth as boundary |
| AG-5884 | Defect | [Regression] When selecting a cell range of strings and applying the Fill Handle, the first cell string value is not entered into the filled cells, only the subsequent ones |
| AG-5880 | Defect | When changing sparkline rendering options while updating sparkline data an exception is thrown |
| AG-5879 | Feature Request | [Accessibility] Allow full-width rows to have valid ARIA fields for static accessibility tests |
| AG-5878 | Feature Request | [Accessibility] Add ARIA labels to the set filter virtual list container |
| AG-5874 | Defect | [Regression] When using row autoHeight=true and applying top or bottom cell padding, the padding settings are ignored when rendering |
| AG-5873 | Defect | When setting set filter model for a grouped column and ungrouping/regrouping the column, resetting the filter model doesn't clear the text in the floating filter input |
| AG-5870 | Feature Request | [Sparkline] Add a bar sparkline |
| AG-5868 | Defect | [Regression] When using row autoHeight: true and calling setRowData, the rows flicker as they change their height |
| AG-5861 | Defect | When new column definitions are set with an updated cellClass property value, the grid only applies that class on the first update, not the subsequent ones |
| AG-5860 | Defect | [Docs] Clarify in the docs how to use Vue provide/inject methods with components inside in the grid |
| AG-5844 | Defect | When using a column filter with multiple conditions and the first filter operator in the list hides the filter input, it is always applied by default as the second condition |
| AG-5843 | Defect | [Regression] When loading the ESM build of ag-grid-enterprise, the imports do not resolve |
| AG-5839 | Defect | Export all types from community in enterprise (ag-grid-enterprise with typescript) |
| AG-5838 | Defect | When displaying data points with missing Y-values, area sparklines do not render them |
| AG-5735 | Defect | [Regression] When setting preventDefaultOnContextMenu=true and right-clicking the ag-grid-community grid, the default context menu is still displayed |
| AG-5685 | Feature Request | [Column Filters] Allow maxValidYear to be set when using a date filter |
| AG-5588 | Defect | [Regression] When exiting cell edit mode, React Cell Renderer for edited cell flickers |
| AG-5587 | Defect | When adding styles to a custom React grid component, the style is unnecessarily added to the outer div container created by the grid |
| AG-5576 | Feature Request | [Column Filter] Allow disabling filter inputs so users can see the filter conditions/selection but not modify it |
| AG-5426 | Feature Request | [Row Height] Allow maximum row height to be set in cellStyle/rowStyle when using autoHeight=true |
| AG-4584 | Feature Request | [Column Filters] Add grid api, column and context to SetFilterValuesFuncParams interface |
| AG-3453 | Feature Request | [Column Filters] Add support for range filters (i.e. two values, "from" and "to") in custom filter options |
| AG-2416 | Defect | ag-row-odd class is applied to even rows, not odd ones |
| AG-2151 | Feature Request | [Column Filters] Add to filterChanged event parameters a reference to the column whose filter changed |
| AG-2093 | Feature Request | [Column Filters] Allow fast tabbing through floating filter inputs when focused |
| AG-2043 | Feature Request | [Column Filters] Add column information to the set filter cellRenderer params (filterParams.cellRenderer) |
| AG-393 | Feature Request | [Column Headers] Allow different group columns to display different header tooltip values (currently all group columns display the same header tooltip defined in autoGroupColumnDef) |
| AG-275 | Feature Request | [Column Filters] Add new column filter option: "outside range" |

### 26.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5967 | Defect | [Regression] When using React and column definition editable is a function on a declarative column, a state variable update causes expanded filter menus in filter tool panel to collapse |
| AG-5945 | Defect | When setting enableCellTextSelection: true, focusing a cell and pressing CTRL+C keys doesn't copy its contents |
| AG-5927 | Defect | [Regression] When setting checkboxSelection property via a function returning false, cell values in the checkbox columns are indented unnecessarily |
| AG-5919 | Defect | When using immutable data and editing a cell and pressing TAB, the value of the cell tabbed into is not updated if it was dependent on the edited cell |
| AG-5913 | Defect | When deleting a row from the Redux store, grid column sizes change |
| AG-5883 | Defect | When using a custom group column header component and pivoting on more than one column, the non-top level column headers are not provided the display name of the column in the params object |
| AG-5875 | Defect | [Regression] When stopEditingWhenCellsLoseFocus=true, editing a cell with a date picker and selecting one of the dates throws an exception |
| AG-5858 | Defect | [Regression] When opening the Column Menu and clicking on the filters tab, react-tabs navigates to next tab |
| AG-5845 | Defect | When opening an agDateColumnFilter for the right-most column, the date picker popup renders out of the grid and gets clipped on mobile devices |
| AG-5806 | Defect | [Regression] When modifying headerClass of a column definition via React state, the new class value doesn't take effect |
| AG-5802 | Defect | Enum properties cannot be assigned plain string values |
| AG-5794 | Feature Request | [Scrolling] Add option to block scrolling when grid popups are open (editor popups, Context Menu) |
| AG-5772 | Defect | [Regression] When using autoHeight columns and scrolling vertically, cell text flickers when it gets rendered |
| AG-5767 | Defect | Problems with SelectorFunc |
| AG-5765 | Defect | [Regression] When cell class rules are used only the last class of the matching condition is applied to the cell |
| AG-5764 | Defect | [Regression] When using groupUseEntireRow=true, ValueFormatter not applied to group row values |
| AG-5757 | Defect | [Regression] When setting the current column definitions, grid cells flash (by a call to setColumnDefs ) |
| AG-5755 | Defect | When selecting an item in the agRichSelectCellEditor and pressing TAB key the selected value isn't entered as the new cell value |
| AG-5754 | Defect | When using full-row editing, pressing UP/DOWN ARROW keys in the popup of the agRichSelectCellEditor doesn't change the selected item |
| AG-5753 | Defect | [Regression] When using master-detail and expanding a master row, its detail grid cannot be immediately accessed |
| AG-5752 | Defect | When clicking the input in the floating filter row, the set filter popup opens in Chrome but remains closed in Firefox |
| AG-5748 | Defect | When using aligned grids, removing a group column from the row group panel doesn't make it visible in aligned grid, only in source grid |
| AG-5747 | Feature Request | [Accessibility] Allow column tool panel items to be announced with their index in the columns list and provide labels to checkboxes |
| AG-5745 | Defect | When using the infinite row model and reordering the selected row above the rest of the rows with refreshInfiniteCache, the selected row cannot be de-selected anymore |
| AG-5737 | Defect | Inaccurate type definition for GetContextMenuItemsParams['node'] |
| AG-5732 | Defect | When displaying an image inside a grid cell, that image cannot be dragged like an image outside of the grid (dragging the image, not the row) |
| AG-5731 | Feature Request | [Accessibility] Allow announcing number of matching records after column filtering |
| AG-5729 | Feature Request | [Row Grouping] Prevent displaying a row drag handle or allowing entire row dragging when rows are grouped |
| AG-5727 | Feature Request | [Accessibility] Allow column menu to indicate to screen readers it's a dialog (via an aria-role label) |
| AG-5714 | Defect | When using integrated charting, the series formatter doesn't get called |
| AG-5710 | Defect | When calling setColumnDefs with a different group column order, the grouping is not updated |
| AG-5708 | Defect | [Regression] When pivoting, changing the visibility of a column resets the aggFunc to 'sum' |
| AG-5702 | Defect | [Angular] When using a function to provide gridOptions instead of a property, there's an increase in CPU usage |
| AG-5689 | Defect | loadingCellRendererSelector not used when set on the Angular/React/Vue grid wrapper |
| AG-5688 | Defect | [Docs] loadingCellRenderer, loadingCellRendererParams, loadingCellRendererSelector grid properties missing in API documentation |
| AG-5687 | Defect | When using loadingCellRendererSelector a console error message is printed out saying it's an invalid property |
| AG-5680 | Defect | When calling setColumnDefs, group row selection is broken |
| AG-5679 | Defect | [Regression] When using declarative columns and an inline cell renderer, updating data closes all expanded filters tool panels |
| AG-5676 | Defect | When using MacOS and only showing the scroll bar when scrolling, cells appearing under the scrollbar are visible but not clickable |
| AG-5661 | Defect | When using reactUI and the getRowStyle callback, an exception is thrown |
| AG-5653 | Defect | [Docs] Correct broken links to stylesheet files in documentation segments |
| AG-5636 | Defect | Row drag not updated after a call to api.setColumnDefs |
| AG-5635 | Defect | When using the grid with pinned columns on any browser on OSX there's incorrect border between the main viewport and that of the pinned column |
| AG-5633 | Defect | [Typing] Update typing for return value of CellRendererSelectorFunc to include undefined |
| AG-5631 | Defect | [Regression] When enableCellTextSelection=true, dragging a row highlights text across cells |
| AG-5622 | Defect | When many extra DOM elements are rendered on a page, focusing a grid cell happens after a delay |
| AG-5616 | Defect | When setting domLayout="print" grid fits within the current page instead of increasing its width, causing columns to get clipped |
| AG-5615 | Feature Request | [Typing] Add Cell Renderer function params |
| AG-5612 | Defect | When a column header cell is focused and then refreshed via refreshHeader(), focus is lost |
| AG-5604 | Defect | When the grid has a cell range selected, clicking the drag handle element focuses the cell and clears the selected cell range |
| AG-5600 | Defect | When using full-width group rows, cellClass doesn't get called |
| AG-5543 | Defect | [React] Typings for React tooltips are missing |
| AG-5520 | Defect | [Regression] When changing column visibility, the column menu popup moves and is clipped by the viewport |
| AG-5498 | Defect | [Regression] When entering a value which produces no matches in the filter value input, the filter popup is moved and clipped on the right |
| AG-5420 | Feature Request | [Context Menu] Allow GetContextMenuItemsParams to be nullable to support opening the context menu on an empty area of the grid |
| AG-5305 | Feature Request | [Accessibility][Keyboard Navigation] Allow focus to move from the sidebar button into the active tool panel controls |
| AG-5299 | Feature Request | [Accessibility] Allow correct announcements for the column menu tabs (via the use of role=tablist) |
| AG-5248 | Feature Request | [Column Filter] Add named ranges for date filtering - Last Week, Last Month, YTD, etc (just like in Excel) |
| AG-5246 | Feature Request | [Accessibility] Resolve broken ARIA label reference error for column header cell select-all checkbox |
| AG-5120 | Defect | [Pivoting] Improve pivoting calculation performance on large datasets ( > 50K rows) |
| AG-5082 | Feature Request | [Accessibility] Allow filter tool panel items to be expanded using the SPACE key and announce their current expanded/collapsed state |
| AG-4705 | Feature Request | [Accessibility] Allow JAWS screen reader to announce visible records when using pagination after previous/next button clicked (using aria-live regions with paging) |
| AG-4661 | Feature Request | [Accessibility] Add ARIA form label to checkboxes in column tool panel |
| AG-4361 | Feature Request | [Accessibility] Allow pressing SHIFT+TAB when focusing the columns tool panel button to return focus to the last data cell instead of the column header cell |
| AG-4139 | Feature Request | [Column Tool Panel] Allow drag&drop to reorder columns inside Columns tool panel |
| AG-4059 | Feature Request | [API] Add column API to IToolPanelParams |
| AG-3986 | Feature Request | [Drag & Drop] Entire Row Dragging without the need for a drag handle |
| AG-3761 | Defect | When you paste a new value in a cell, rowClassRules do not get refreshed |
| AG-3680 | Feature Request | [Range Selection] Allow disabling the Fill Handle on a per-column basis |
| AG-3085 | Feature Request | [API] Add "column" and "node" as additional params in keyCreator callback |
| AG-3033 | Feature Request | [Row Height] Allow taking CSS class margin values into consideration when using row autoHeight: true |
| AG-2932 | Feature Request | [Accessibility] Add ARIA label to filter tool panel - filter columns input |
| AG-2863 | Feature Request | [API] Allow colDef.template to take a callback with params specifying the column and other useful information |
| AG-2608 | Feature Request | [API] Add the api param to NavigateToNextCellParams |
| AG-2568 | Feature Request | [Column Filter] Allow set filter popup to automatically size to fit the width of its contents |
| AG-2314 | Feature Request | [Row Height] Allow taking cellClass/rowClass into consideration when using row autoHeight: true |
| AG-824 | Defect | [Regression] Editor popups don't keep relative positioning to grid when viewport scrolled |

### 26.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5733 | Defect | Vue 3: params not available inside setup function |
| AG-5699 | Feature Request | [Framework] Add support for grid components that use vue-class-component and/or vue-property-decorator |
| AG-5632 | Defect | When using frameworks like Next.js, a race condition causes an error - ReferenceError: document is not defined |

### 26.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5791 | Defect | [Regression] When a cell with agSelectCellEditor is edited, the first list value is immediately entered |
| AG-5743 | Feature Request | [Accessibility] Allow screen reader to announce correct row index when using column pinning |
| AG-5726 | Defect | When using enableCellTextSelection=true, moving a row and then selecting rows including its earlier position, row moved earlier gets selected |
| AG-5712 | Defect | [React] When updating columns via useState hook, the refresh method on Custom Header Component doesn't fire |
| AG-5697 | Defect | When exporting to Excel and the export file name contains a dot character, it prevents the addition of the correct Excel file extension |
| AG-5625 | Feature Request | Update and Improve Types on Angular Interfaces |
| AG-5623 | Feature Request | [Tool Panel] Remove unused old API showToolPanel |
| AG-5609 | Feature Request | Add source to setColumnWidth api's |
| AG-5585 | Defect | When using master-detail, long tooltips are clipped by the detail grid viewport instead of being wrapped on multiple lines |
| AG-5583 | Defect | [Typing] getRowNode gridApi method has incorrect return type null, and actual return type undefined which isn't documented |
| AG-5582 | Feature Request | [Row Grouping] Allow custom Cell Renderers to be used with Group Footer Rows |
| AG-5580 | Feature Request | [Status Bar] IStatusPanelComp does not have the getFrameworkComponentInstance or setVisible or isVisible properties |
| AG-5579 | Defect | When pressing CTRL+LEFT/RIGHT ARROW key to navigate into a pinned column cell, a console warning message is output |
| AG-5571 | Defect | When using a long value for a column menu item, column menu gets clipped for the right-most column |
| AG-5570 | Defect | [Regression] When pivoting, auto-sizing the group column doesn't make it wide enough and cell values get truncated |
| AG-5567 | Defect | When using server-side row model with full store, opening the last master row doesn't display a detail-level grid |
| AG-5563 | Defect | The 'defaultGroupSortComparator' grid option is incorrectly named, should be renamed to 'defaultGroupOrderComparator' |
| AG-5558 | Feature Request | [Charts] Add getChartImageDataURL() to the GridAPI |
| AG-5549 | Defect | When editing a cell, undoing a previous edit twice reverts the previously edited cell to the new value instead of the original one |
| AG-5540 | Defect | [Regression] When scrolling the grid down, dragging a column header out of the grid doesn't remove it anymore |
| AG-5538 | Feature Request | Type onGridSizeChanged event callback |
| AG-5535 | Defect | [Regression] When the context menu is displayed, calling ensureColumnVisible doesn't scroll the viewport |
| AG-5524 | Feature Request | [Row Grouping] Simplify configuration of Row Grouping Display Types |
| AG-5521 | Defect | When calling resetColumnState, initialHide column property value not applied |
| AG-5512 | Defect | When tapping a grid cell on a mobile device, cellMouseDown doesn't fire until the touch ends |
| AG-5510 | Defect | When using aligned grids and scrolling horizontally using the mouse wheel, the viewport doesn't get scrolled |
| AG-5505 | Defect | [Regression] When suppressing AG Grid context menu (suppressContextMenu=true) and suppressing browser context menu (preventDefaultOnContextMenu=true), right-clicking still shows browser context menu |
| AG-5499 | Defect | [Regression] When using pivoting with a column label and checking the columns tool panel visibility checkbox for a hidden column with enableValue=true, column doesn't get added to values list or displayed in grid |
| AG-5496 | Defect | Charts - createCrossFilterChart() is missing from the grid interface docs |
| AG-5492 | Defect | [Regression] When expanding and collapsing a master-row quickly, master-row indexes are not valid |
| AG-5488 | Defect | [Angular] When using full-row editing with custom renderer for a column that's out of view, cell renderer above the column previously out of view displays multiple cell renderer instances |
| AG-5487 | Defect | [Regression] When using pivoting and hiding a value column, it's still displayed |
| AG-5486 | Defect | When cell content including special characters, exporting to Excel produces a corrupted Excel file |
| AG-5475 | Defect | [Regression] When using Internet Explorer 11 and opening a agRichSelectCellEditor, pressing the ARROW keys doesn't move focus to the items in the list |
| AG-5470 | Defect | [Regression][Angular] When opening the column menu or context menu, ngDoCheck called repeatedly |
| AG-5469 | Defect | [Regression] When returning an object in the tooltipValueGetter, the object gets returned as a string instead - [object Object] |
| AG-5468 | Defect | When using CellRendererSelector that returns agGroupCellRenderer, innerRenderer params are not passed |
| AG-5467 | Defect | When editing a cell with a popup editor and pressing ESC key, the fill handle is no longer visible for the edited cell |
| AG-5466 | Defect | When using removed property stopEditingWhenGridLosesFocus (replaced by stopEditingWhenCellsLoseFocus), the console warning message isn't correct |
| AG-5457 | Defect | [Regression] When using special characters for headerTooltip with enableBrowserTooltips=true, the tooltip displays an encoded version of the character |
| AG-5453 | Defect | When using AG Grid Community, holding SHIFT key and double-clicking cells, you can open multiple cells for editing |
| AG-5451 | Defect | [Regression] When exporting to Excel, styles are not applied to cells with null values |
| AG-5449 | Defect | [Regression] When using infinite row model with 0 rows displayed, calling api.getDisplayedRowAtIndex calls getRows unnecessarily |
| AG-5447 | Defect | [Regression] When calling JSON.stringify on an integrated chart model, an exception is thrown |
| AG-5446 | Defect | [Regression] When using an AngularJS component within a custom cell renderer, the cell is blank |
| AG-5443 | Defect | [Regression] When allowDragFromColumnsToolPanel: true and dragging a column in the columns tool panel, it scrolls the grid viewport to move the column instead |
| AG-5442 | Defect | When you have a cell range selected and call setColumnDefs, the selected range remains visible, but is empty when accessing it via API |
| AG-5441 | Defect | Missing locale string for "Total" text in pivot column group total header |
| AG-5440 | Defect | [Regression] [React] When using a React-based Cell Renderer Selector, cell renderer params is empty after data update |
| AG-5439 | Defect | Missing locale string for average in status bar aggregation component |
| AG-5424 | Defect | [Regression] When using tooltips on the rightmost column, the right border of both custom and standard tooltip is cut off |
| AG-5422 | Defect | When a column header cell is focused and then refreshed via setColumnDefs(), focus is lost |
| AG-5419 | Defect | [Regression] When using React components and setting autoHeight=true, row height doesn't increase and only fits a single line of text |
| AG-5416 | Defect | [Regression] When using the fill handle to drag a number value using scientific (exponential) notation to populate more than one cell, the grid throws an exception |
| AG-5415 | Defect | When exporting to an Excel file with multiple sheets with styles on one grid but not another, the exported file is corrupted |
| AG-5413 | Defect | [Regression] When using specific ESLINT configs, the build fails with an error related to ag-grid-base-icons |
| AG-5412 | Feature Request | [Row Sorting] Allow setting sort directions for each group column separately |
| AG-5410 | Feature Request | [Layout & Styles] Update styles to use DART SASS only (no longer using deprecated API for division - use math.div() instead to avoid console warnings when building) |
| AG-5407 | Defect | [Regression] When a column has rowGroupIndex set to null or an integer, the column gets grouped even if rowGroup is not true |
| AG-5405 | Defect | When exporting a hyperlink to Excel using non-ASCII characters in the link name, the Excel file is corrupted |
| AG-5389 | Defect | [Regression][Angular] When using addGlobalListener, events don't get handled |
| AG-5387 | Defect | When grouping on multiple column and applying column state with a modified rowGroupIndex property the grid doesn't update |
| AG-5351 | Defect | When using React v17 with a framework component and an onClick event on the grid container which contains event.stopPropagation(), the onCellClicked grid event isn't fired |
| AG-5209 | Defect | When importing AgGridVue from the ag-grid-vue3 package - the loading overlay doesn't work |
| AG-5146 | Feature Request | [Typing] Export interface ComponentSelectorResult through @ag-grid-community/core |
| AG-5122 | Feature Request | [React] Improve the speed of React component rendering |
| AG-4952 | Defect | Cjs files are self-contained units preventing LicenseManager from recognizing the license key |
| AG-4775 | Feature Request | Allow valueGetter to work in cells where groupHideOpenParent is used |
| AG-4724 | Defect | [Regression] Row autoHeight doesn't work with cellRendererFramework and styled components |
| AG-4485 | Defect | Row AutoHeight doesn't work with async components (disableStaticMarkup=true) |
| AG-4395 | Feature Request | [Accessibility] Allow displaying the clicked column header cell as focused |
| AG-4377 | Feature Request | [Typing] Export the GroupCellRendererParams interface |
| AG-4058 | Feature Request | [Column Filters] Add horizontal scrollbar to set filter list |
| AG-4028 | Feature Request | [Column Filter] Allow floating set filter popup to be resized |
| AG-3944 | Feature Request | [Typing] Add missing types to grid interfaces |
| AG-3897 | Feature Request | [Excel export] Allow skipping top level row groups only when exporting a pivot grid |
| AG-3723 | Defect | When dragging a column header from the grid into the columns tool panel aggregation panel, the aggregated column is hidden |
| AG-3411 | Feature Request | [Typings] Add specific missing events and params types (overlay params types, some events) |
| AG-3406 | Feature Request | [Columns Tool Panel] Allow user to resize/collapse the different areas (row groups, values, column labels) of the columns tool panel |
| AG-3279 | Feature Request | [Typing] Allow for stronger typing of main classes in ag-grid |
| AG-2536 | Defect | [React] React innerRenderer places a div inside a span |
| AG-2139 | Feature Request | [Row Grouping] Add option to maintain group order when sorting on non-group columns |
| AG-2060 | Feature Request | [Typescript] Add typings for onFirstDataRendered event |
| AG-2050 | Defect | When updating a cell with agRichSelectCellEditor, pressing TAB key moves focus to next cell but exits edit mode |
| AG-1945 | Feature Request | [Tool Panel] Allow setting Tool Panel width (current/min/max/initial) |
| AG-1816 | Feature Request | [Row Grouping] Allow sorting on non-grouped columns when the group column is sorted with a custom comparator |
| AG-1153 | Feature Request | [Row Grouping] Allow sort comparators defined on columns to also sort group columns |

### 25.3.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5608 | Defect | When providing header tooltip content, it is unnecessarily sanitised even though it's not provided by the user |
| AG-5590 | Defect | When editing a group row cell in tree data, the cellRenderer init method is called instead of refresh |
| AG-5586 | Defect | [Regression] When using tree data with groupSuppressAutoColumn: true and agGroupCellRenderer, group cell values at different levels are displayed with the same indentation |
| AG-5578 | Defect | [Regression][React] When adding a prop to the grid component and then updating that prop through setState, the model updated and new columns loaded event are fired |
| AG-5551 | Defect | When defining multiple group column definitions with the same groupId, they're not logically a part of the same group |
| AG-5500 | Defect | When the grid mixin is imported in a nested CSS declaration, nested row groups do not have the appropriate padding-left |
| AG-5489 | Defect | [Regression] When refreshing column header (calling refreshHeader()), the column menu/filtering popups are closed |
| AG-5476 | Defect | [Regression] When calling setRowData with setState when the debugger is run inside componentDidUpdate the grid is not displayed |
| AG-5474 | Defect | [Regression] When editing with an Angular/React-based custom cell editor component with a popup and stopEditingWhenCellsLoseFocus: true, the popup element closes when clicked and the cell value is not updated |
| AG-5458 | Defect | [Regression] When using a mobile device (Android/iOS), a horizontal scrollbar is not displayed in AG Grid |
| AG-5448 | Defect | [Regression] When using immutable data and modifying the data path of a row as part of an update, the row order is invalid |
| AG-5436 | Defect | [Regression] When infiniteInitialRowCount=0, the grid is displaying an initial row |
| AG-5433 | Defect | [Firefox] When the horizontal scrollbar is visible and you're vertically scrolling the grid using the mouse wheel in Firefox on Windows, you can't scroll using the vertical scrollbar thumb anymore |
| AG-5431 | Defect | [Regression] When calling redrawRows() API with custom cell renderers, the cell contents flash |
| AG-5427 | Defect | When adding new rows via setRowData, onNewRowsAdded doesn't have access to the new nodes to update the custom filter values |
| AG-5423 | Defect | [Regression] When refreshing the row, React framework components don't have their useEffect hook fired |
| AG-5418 | Defect | [Regression][React] When using tree data and modifying any state variable, column order in the grid is reset |
| AG-5408 | Defect | [Regression] When using domLayout='autoHeight' with a single row, grid displays unnecessary whitespace that can fit a few more rows |
| AG-5404 | Defect | When adding a class to ag-theme-custom-component.scss, selection checkbox padding is removed |
| AG-5391 | Feature Request | [Row Grouping] Allow correctly setting the group column key when using groupHideOpenParent=true and sorting to keep to group key in the top row |
| AG-5369 | Defect | When exporting to Excel with a cell background color, background colors are correctly shown by Excel but missing in Excel for Office 365 |
| AG-5368 | Defect | When providing an invalid filterOption for the specific filter type, the grid throws an exception - it should be a warning |
| AG-5366 | Defect | [Regression] When using SSRM and expanding a group row with an empty name, the group row chevron disappears |
| AG-5365 | Defect | Saving and Restoring Charts Example doesn't work with Angular |
| AG-5363 | Defect | When setting deprecated Excel export property skipGroups, hundreds of console warnings are output |
| AG-5359 | Defect | When using a custom column header renderer and removing a column, a handled error appears |
| AG-5358 | Defect | [Regression] When infiniteInitialRowCount>1 and providing new data to the infinite row model, the custom cell renderer doesn't re-render |
| AG-5357 | Defect | [Regression] When updating the filter model on a column that uses custom filter options causes the default option key to appear in the floating filter |
| AG-5350 | Defect | [Regression] When using SSRM before data is loaded, sorting by a column header throws an exception |
| AG-5349 | Defect | When using SSRM with storeType=full and exporting to Excel, all records are exported, not just the filtered ones |
| AG-5348 | Defect | [Regression] When using immutable data and removing a column, its valueGetter still gets called |
| AG-5347 | Feature Request | [Row Grouping] Add "Open by Default" feature to the Client Side Row Model |
| AG-5345 | Defect | When typing inside a agRichSelectCellEditor to search the items the incorrect item is highlighted |
| AG-5344 | Defect | [Regression] When clicking a checkbox in the columns tool panel, the shadow is clipped along the left edge |
| AG-5342 | Defect | When switching to legacy mode after ClipboardAPI is blocked by the user, the pasted value is blank |
| AG-5341 | Defect | When using server-side row model with serverSideFilteringAlwaysResets: true, filter is also applied client-side |
| AG-5330 | Defect | When exporting to Excel empty cell values, keyboard navigation in Excel doesn't treat them as empty |
| AG-5323 | Defect | [Regression] When using pivot mode and groupHideOpenParent=true, exporting to Excel doesn't export the cell values, only the column header values |
| AG-5322 | Defect | When setting rightAligned on a group column, its header cell value gets right-aligned, but its data cells are still aligned left |
| AG-5318 | Defect | When using groupMultiAutoColumn or groupHideOpenParent with total footer row, Total string is rendered for every group in the total footer row |
| AG-5317 | Defect | [Regression] When filtering using custom React-Hook filter components an exception in thrown |
| AG-5315 | Defect | When setting updated columnDefs with a different minWidth value, it doesn't get applied |
| AG-5308 | Defect | When using client-side row model with row grouping, calling getRowNode on a group node returns undefined |
| AG-5306 | Defect | [Docs] Update the row models comparison to indicate that update transactions are no longer available in the infinite row model |
| AG-5288 | Defect | [Regression][Angular] When using infinite row model with cellRendererFramework, ngTemplate defined in a custom control is not applied |
| AG-5284 | Defect | [Regression] When using a floating filter, floating filter inputs and button get announced by JAWS and NVDA with each cell value |
| AG-5283 | Defect | [Regression] When using enableRTL=true, column header dragging causes horizontal scrollbar to immediately go all the way to the right or cycle through the columns endlessly |
| AG-5276 | Defect | When using drag and drop in the grid when hosted in a modal window, the ghost icon appears can't be seen by the user because it appears below the modal window |
| AG-5275 | Defect | When using print layout with a pinned group column and a multi-level column group, sorting via API moves the group column header in the auto-group column area |
| AG-5260 | Defect | When setting floatingFilter property in the columnType, the value is not respected by the column |
| AG-5249 | Defect | ARIA labels for row drag handles contain an invalid reference |
| AG-5225 | Defect | When pressing a key when a full-width row is focused, cellKeyDown and cellKeyPress events don't get fired |
| AG-5224 | Defect | When using aligned grids in Chrome with Windows Display text scaling=150%, changing zoom level to 90% causes horizontal scrollbar to slowly move to the left by itself |
| AG-5208 | Defect | [Regression] When using Internet Explorer 11 with flex/resizable columns in AG Grid, the set filter popup doesn't display the distinct values in the list |
| AG-5207 | Defect | When using Safari with MacOS setting "show scroll bars"="auto based on mouse or trackpad" OR "when scrolling", the AG Grid vertical scrollbar thumb cannot be dragged using the trackpad |
| AG-5202 | Defect | Read Only Floating Filter Doesn't Work With Hooks or VueJS |
| AG-5193 | Defect | When setting cellRendererSelector in autoGroupColumnDef, an exception is thrown |
| AG-5180 | Defect | When using server-side row model with store type=FULL removing the last remaining child of a row group or tree level, an exception is thrown |
| AG-5162 | Defect | When using server-side row model with full store type with grouping, defaultGroupSortComparator isn't called |
| AG-5161 | Defect | When using SSRM with storeType=partial and showing 0 rows in grid, calling refreshServerSideStore doesn't make a request when purge=false |
| AG-5139 | Defect | When using server-side row model with full store type, returning an empty array in getRows() throws an exception |
| AG-5128 | Defect | Multiple declarations of the same CSS classes with : and :: in the class name in themes fresh, dark, blue, bootstrap |
| AG-5116 | Defect | When using MacOS, with Show Scroll Bars=When Scrolling, Chrome/Firefox don't show horizontal scrollbar unless you've scrolled vertically all the way down |
| AG-5100 | Defect | Screen reader announces second set filter item as unchecked when it is checked |
| AG-5099 | Defect | Setting fills and strokes on pie charts doesn't work for integrated charts |
| AG-5091 | Feature Request | Allow setting the tabIndex of the Grid |
| AG-4957 | Feature Request | [API] Remove suppressSideButtons property from product and docs example |
| AG-4733 | Feature Request | [Row Dragging] Allow dragging full-width rows |
| AG-4668 | Feature Request | [Chart] Allow separate properties to set X-axis and Y-Axis thickness |
| AG-4438 | Feature Request | [Chart] Add support for bins for Integrated Charts histograms |
| AG-3724 | Feature Request | [Vue] Add support for Vue Composition API |
| AG-1474 | Feature Request | [Row Grouping] Allow providing a comparator for each of the grouped columns (currently only one comparator is used for grouped column sorting) |

### 25.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5301 | Defect | [Regression] Build failing with error "cannot find module '@ag-grid-enterprise/excel-export'" |

### 25.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5364 | Defect | Screen reader announces the page title while moving focus |
| AG-5360 | Defect | [Regression] Website demo page doesn't finish loading in Internet Explorer 11 |
| AG-5354 | Defect | When using rowClassRules with viewport row model, console exceptions are thrown for every row |
| AG-5353 | Defect | When using getRowClass with viewport model, an exception is thrown |
| AG-5352 | Defect | When using infinite row model or server-side row model with RowClassRules, an exception is output to console for the first row before data is set |
| AG-5340 | Defect | When editing a grid cell, clicking a column header cell doesn't end the cell edit |
| AG-5329 | Defect | When having a focused cell and sorting by clicking the column header cell pressing CTRL+C doesn't copy the focused cell value anymore |
| AG-5282 | Defect | [Regression] When using master-detail with dynamic detail row height without a vertical scrollbar shown, master-level records below the expanded detail don't get rendered |
| AG-5269 | Defect | When using SSRM, if you call api.getDisplayedRowAtIndex on a row that is not displayed, the page will hang |
| AG-5262 | Defect | When selecting multiple rows and clicking the row drag handle of the lower one, the upper one moves down to it instead of remaining in place |
| AG-5261 | Defect | When using serverSideRowType=PARTIAL, isServerSideGroupOpenByDefault callback is not called |
| AG-5259 | Defect | When calling applyColumnState to clear sort for all columns, sort isn't cleared on auto-group column |
| AG-5258 | Defect | When calling applyColumnState using row grouping and aggregation, value column header and aggFunc state don't get applied |
| AG-5255 | Defect | When opening the filter popup for the right-most column and the filter results don't need a vertical scrollbar, the filter popup moves partially out of view |
| AG-5251 | Defect | [Regression] When using tree data with more than 19 depth levels, the 20th level is not indented but instead displayed on the left side of the cell |
| AG-5250 | Defect | [Regression] When calling onRowHeightChanged(), custom cell editor closes |
| AG-5247 | Defect | Pivot + Unbalanced Groups don't show data correctly |
| AG-5244 | Defect | When stopEditingWhenGridLosesFocus=true, editing a cell in a master row doesn't stop when clicking inside the detail grid |
| AG-5242 | Feature Request | [Excel Export] Separate default export params for CSV and Excel |
| AG-5241 | Defect | When using full-row editing with one editable cell, pressing TAB focuses the next editable cell instead of the next cell in the navigation order |
| AG-5239 | Defect | When pressing BACKSPACE or DELETE key over a cell without entering edit mode first, the cell value saved is undefined instead of empty string |
| AG-5237 | Defect | [Regression][Angular] When disabling ngZone, clicking a row in AG Grid throws an exception in console |
| AG-5236 | Defect | [Regression] When using column groups and moving a leaf column header into another column group, column group header width doesn't get refreshed correctly |
| AG-5233 | Defect | [Regression] When setting dynamic row height and filtering, not all matching records are rendered until you scroll |
| AG-5232 | Defect | [Regression] When using infinite row model and setting lastRow=0 in successCallback, calling refreshInfiniteCache no longer gets new data as getRows is not called anymore |
| AG-5231 | Defect | When using multi filter, modifying the set filter item selection and setting new data throws an exception |
| AG-5230 | Defect | When using grouping or tree data, group column cell value doesn't respect CSS class to center value vertically |
| AG-5229 | Defect | When using Safari and filtering on a column that needs to be scrolled into view, checking/unchecking the SELECT ALL item resets the horizontal scrollbar position to extreme left |
| AG-5228 | Defect | When using multi-filter and not setting any value in the text filter, saving and restoring filter state doesn't display the selected set filter value in the floating filter input |
| AG-5227 | Defect | When exporting to Excel, grid column group header rows aren't exported by default |
| AG-5222 | Defect | When using infinite row model, displayed cell values get rendered a second time when a new block of data is loaded |
| AG-5217 | Feature Request | [Excel Export] Add support for Headers and Footers in the Excel export |
| AG-5214 | Defect | AgGrid columns don't work when wrapped with a React higher-order component |
| AG-5212 | Defect | [Regression] When using viewport row model, cells containing value '0' are rendered as empty |
| AG-5206 | Defect | [Regression] When using infinite row model with paging and pagesize=blockSize, pagination panel showing "1 to ? of more" |
| AG-5205 | Defect | When pasting into AG Grid, full-width group rows and detail-level grid prevent correctly pasting values in leaf-level/master-level rows |
| AG-5199 | Defect | When using with the new ClipboardAPI, pasting while preventing the onPaste event clears value of target cell |
| AG-5194 | Defect | headerGroupComponentParams aren't applied to column group cell |
| AG-5192 | Defect | When focus is in a custom detail renderer with form, pressing TAB key doesn't move focus to next input but to next master row instead |
| AG-5188 | Feature Request | [website] Add debounce to the search textbox on the changelog page |
| AG-5186 | Defect | In Chromium-based browsers sidebar tool panel labels aren't centered next to images, but appear aligned to the left |
| AG-5185 | Defect | [Regression] When grid cells are refreshed, '0' cell values change to blanks |
| AG-5181 | Defect | [Regression] When using IE11 when a vertical scrollbar is shown in the grid, calling SizeColumnsToFit doesn't stretch columns all the way across, but leaves some whitespace |
| AG-5179 | Feature Request | [Excel Export] Allow setting page size and layout orientation for the Excel export file |
| AG-5178 | Feature Request | [Excel Export] Allow exporting an image in Excel export above or below the grid, not in the exported grid data cells |
| AG-5177 | Defect | Chart legend formatter is not called |
| AG-5172 | Defect | When special characters without a visual representation are present in grid cells, exported Excel file produces errors in Excel |
| AG-5171 | Defect | [Safari] When hosting ag-grid in an iframe and entering a value in the column filter popup in Safari, horizontal scroll jumps to left end |
| AG-5168 | Defect | [Regression] When a new column is added under a group column, the group column header width doesn't expand across the new column |
| AG-5166 | Defect | [Regression] When setting a filterModel and then clearing column definitions, exception is thrown |
| AG-5164 | Defect | When using a provided filter with two conditions and clearing the top filter input value, second filtering condition is hidden and no longer applied |
| AG-5153 | Defect | [Regression] When calling onRowHeightChanged when starting cell edit, editing cannot be used |
| AG-5152 | Defect | When using Chrome, rows fill the viewport without any vertical scrollbar displayed, calling size to fit on columns renders a horizontal scrollbar at the bottom, partially covering up the last row |
| AG-5151 | Defect | [Regression] When infiniteInitialRowCount=1 and field isn't set on the column, data is undefined |
| AG-5149 | Defect | When clicking the column filter CANCEL button with a blank filter value an exception is thrown |
| AG-5144 | Feature Request | [React] Add support for Reactive callbacks |
| AG-5141 | Defect | When using SSRM, calling api.ExpandAll() twice in short succession displays flashing loading rows which never finish loading |
| AG-5140 | Defect | Adding rows using Transaction with a supplied addIndex is slow |
| AG-5137 | Defect | When using MacOS with Chrome and Firefox, scrolling using the wheel when hovering over the pinned column area causes blank areas when rendering |
| AG-5135 | Defect | [Regression] When using tree data, applying a transaction or calling setRowData exits an ongoing cell editing operation |
| AG-5133 | Defect | [Regression] ValueParser parses 0 as empty value |
| AG-5132 | Defect | [Regression] When using Chrome and clicking a button in a partially visible full-width row (or detail row in master-detail), the viewport scrolls down to bring the entire (full-width/detail container) row into view and doesn't fire the button click event |
| AG-5131 | Defect | Calling applyColumnState with a subset of the current columns doesn't remove the extra columns |
| AG-5125 | Defect | [Regression] React context not updated after a change |
| AG-5115 | Defect | [Regression] When calling applyColumnState with applyOrder=true, the auto group column (ag-Grid-AutoColumn) is placed last in the order of columns |
| AG-5113 | Feature Request | [Angular] Add Angular 8 to the peers dependencies for Angular projects |
| AG-5110 | Defect | [Docs] Project built following instructions on "Getting started with Vue3" docs page doesn't compile |
| AG-5109 | Feature Request | [Excel Export] Add property to change the default font size |
| AG-5107 | Defect | Header tooltip doesn't make the string value safe for showing |
| AG-5102 | Defect | Column group with a hidden column returns 2 top-level columns for api.getColumnDefs() |
| AG-5101 | Defect | Memory leak when applying high-frequency batch inserts with sorting applied |
| AG-5096 | Defect | When using Chrome on Mac, scrolling up with a non-Apple mouse when the vertical scrolling is in its top position prevents any further vertical scrolling |
| AG-5090 | Defect | [Regression] When toggling column visibility using checkboxes in column menu/column tool panel, onColumnVisible params not populated with visible/column values |
| AG-5089 | Defect | [Regression] When suppressColumnStateEvents=true, the selectAll checkbox in the columnsMenuTab/columnsToolPanel does not check column items in list |
| AG-5084 | Defect | When using tree data, calling setColumnDefs displays group column but with blank cell values |
| AG-5073 | Defect | Setting suppressColumnStateEvents=true prevents restoring column row grouping and aggregation state |
| AG-5070 | Defect | When returning false in fillHandle fillOperation callback, the fill value is changed for subsequent cells |
| AG-4980 | Defect | [Regression] Unable to save customized theme and render the value in integrated chart |
| AG-4647 | Defect | [Infinite Row Model] Selected cell loses focus when scrolled far out of view |
| AG-4471 | Feature Request | [Excel Export] Allow exporting cell date-type values to Excel date format |
| AG-4095 | Feature Request | [Charts] Allow suppressing chart highlight |
| AG-3833 | Feature Request | [Excel Export] Allow column spanning with Excel export |
| AG-3650 | Feature Request | [Excel Export] Set the Excel export default font size to the default font size used by Excel for Windows |
| AG-3439 | Feature Request | [Excel Export] Allow carriage-returns/multiple line formatting when exporting to Excel |
| AG-2607 | Defect | [SSRM] When trying to scroll to a particular row far away given a large number of records (<1M) the scroll movement is not precise |
| AG-2553 | Feature Request | [Excel Export] Allow customising of group column headers when exporting to Excel |
| AG-2432 | Feature Request | [Excel Export] Allow exporting images to Excel in the exported grid data cells |
| AG-2370 | Feature Request | [Excel Export] Allow exporting multiple grids to a single Excel file by supporting multiple sheets |
| AG-2333 | Feature Request | [Excel export] Allow inserting hyperlinks in the cells of the exported Excel file |
| AG-2303 | Feature Request | [Excel Export] Allow exporting formulas to Excel |
| AG-1504 | Feature Request | [Excel Export] Add author value to generated XML Excel to avoid edit error |

### 25.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5218 | Defect | [Regression] When using headerComponentFramework, column menu popup closes when the column menu button element is destroyed |
| AG-5197 | Feature Request | [Framework] Add support for bootstrapping between community/enterprise versions |
| AG-5159 | Feature Request | [Layout & Theming] Investigate styling scrollbar thumb according to Light/Dark mode |
| AG-5129 | Defect | When rendered near the right edge of the viewport, Angular custom tooltip components are positioned incorrectly and clipped by viewport edge |
| AG-5085 | Defect | When ag-grid hosted in an iframe, pasting a value loses focus (Windows+Mac) and pastes an empty value in target cell (Windows) |
| AG-5075 | Defect | [Regression] Empty string or null value is pasted as a string with a space character |
| AG-5074 | Defect | [Regression] When using the new clipboard implementation, empty values cannot be pasted into grid cells |
| AG-5067 | Defect | Updating a single cell value calls cellClassRules for cells in all rendered rows |
| AG-5066 | Defect | [Regression] Pressing ENTER key in columns tool panel search box toggles select all checkbox |
| AG-5051 | Defect | [Regression] Master rows without children are rendered without indentation |
| AG-5050 | Defect | When using tree data, inserting a group row via transaction doesn't insert at correct index |
| AG-5049 | Defect | Ungrouping a hidden column makes it visible again |
| AG-5047 | Defect | When refreshValuesOnOpen=true, async set filter values are loaded twice the first time set filter is opened |
| AG-5041 | Defect | When Column Definitions are updated, column groups lose expand/collapse state |
| AG-5040 | Defect | Column autoSize respects text size of cell values modified via cellClassRules but not rowClassRules |
| AG-5033 | Feature Request | [React] Allow ternary expressions when adding Ag-Grid React Column |
| AG-5032 | Defect | [Regression] Column Group expand/collapse button shown unnecessarily |
| AG-5029 | Defect | When using master/detail grid, horizontal scrollbar on detail grid (using flex) flashes on/off when grid is resized |
| AG-5028 | Defect | React Component attempts to modify frozen props |
| AG-5019 | Defect | When using autoHeight on a column with paging, top area of the grid is blank after purging server-side cache |
| AG-5016 | Defect | [Regression] Missing indeterminate state icon for 'Select All' checkbox in the set filter |
| AG-5007 | Defect | [Regression] When updating records using tree data and immutable data records to be removed are shown as blank |
| AG-5006 | Defect | [Regression] Screen readers announces clicking on the header checkbox selection as "space" instead of "checked/unchecked" |
| AG-5001 | Defect | For Print Example logs errors in the React FW |
| AG-4998 | Defect | [Regression] React - Context not updated after a change and returns the old value |
| AG-4995 | Defect | [Regression] Applying filter model in onGridReady doesn't work in v25 server-side row model |
| AG-4994 | Defect | All floating filter components recreated unnecessarily when applying column state to one column |
| AG-4993 | Defect | When a new row is added to grid while editing a cell, the open cell editor is closed |
| AG-4986 | Defect | [Regression] Pasting using ClipboardAPI doesn't work and throws an exception in Firefox |
| AG-4985 | Feature Request | Improved performance for when 100+s of columns |
| AG-4976 | Defect | When expanding sub-groups in server-side row model, calling api.expandAll() doesn't load any data for second-level groups |
| AG-4975 | Defect | When context menu is destroyed, focus directly moves to the active cell taking focus away from any element open from context menu |
| AG-4972 | Defect | [Angular] Master-Detail - detailRowAutoHeight does not work in Angular with customDetailCellRenderer |
| AG-4971 | Defect | [Regression] When using server-side row model with paging, pagination panel showing "1 to ? of more" |
| AG-4970 | Defect | When using infinite scrolling, pressing CTRL+DOWN ARROW causes grid to lose focus |
| AG-4969 | Defect | [Regression] All previously loaded cell renderers refresh when a new data block is loaded |
| AG-4968 | Defect | [Regression] Set filter - filterParams.cellRenderer throws error when given null/empty string/undefined data value |
| AG-4965 | Defect | [Regression] When using specific grid height values, horizontal scrollbar flickers off and on |
| AG-4962 | Defect | When clicking a grouped row, the grid returns two rows with the same rowIndex |
| AG-4961 | Defect | ClipboardApi doesn't work when grid is hosted in an iframe |
| AG-4960 | Defect | When using text wrapping and font-size changes, cell height isn't updated |
| AG-4959 | Defect | When horizontal scrollbar is displayed for certain grid heights it covers up last row on page |
| AG-4955 | Defect | When enableRTL=true and zooming (to produce certain resolutions) horizontal scrollbar doesn't scroll viewport at all and scrolls headers in opposite direction |
| AG-4948 | Defect | [Regression] Cannot paste a copied single value in multiple cells anymore |
| AG-4947 | Defect | [Typings] API Method setModel(model: ProvidedFilterModel) doesn't accept set filter models, just ProvidedFilterModel |
| AG-4946 | Defect | [Regression] When scrolling fast vertically, React cell renderer throws console exception "React Component not created within 500ms" |
| AG-4945 | Defect | [Regression][Angular] GridApi, ColumnApi, getColumnState are undefined in ngOnDestroy event handler |
| AG-4944 | Defect | npm install ag-grid-angular breaks on Angular 11/npm 7.3/node 15.5.1 |
| AG-4942 | Defect | [Regression] After a column is made invisible, Column Header Component Framework still renders its header text |
| AG-4938 | Defect | CSRM and Transactions, empty groups are not removed |
| AG-4915 | Defect | [Typing] setModel method doesn't allow null parameters needed to reset filter |
| AG-4914 | Defect | Applying column state to one grid doesn't propagate to aligned grids |
| AG-4913 | Defect | [Regression] Column visibility change events don't propagate across aligned grids |
| AG-4902 | Defect | Floating filter input value doesn't get reset after changing to a custom filter operator |
| AG-4901 | Defect | When using specific numeric values with decimal fraction parts, aggregated value is incorrect |
| AG-4899 | Defect | Grid container with fractional width value causes unnecessary horizontal scrollbar at zoom level = 150% |
| AG-4897 | Defect | Starting a column drag near the border of a column header element and dropping in the group panel doesn't remove column from column headers |
| AG-4894 | Defect | When using multi-filter, the first time the set filter is modified, onFilterModified has filterInstance model= null |
| AG-4891 | Defect | [Regression] Changing suppressMovable from true to false does not work using setColumnDefs |
| AG-4890 | Defect | [Regression] Grid filter not refreshed after setting a modified filterModel |
| AG-4879 | Defect | When using column groups with marryChildren=true and applying partial column state using the applyOrder=true, marryChildren is not respected for the column group that was partially updated |
| AG-4878 | Defect | [Regression] Row-drag handle not displayed in cells after column definitions are updated and refreshCells is called |
| AG-4872 | Defect | Filter menu closes when filtering values causes a scroll (ag-grid-community only) |
| AG-4834 | Defect | Column group hides completely when hiding its last visible column when there's a sub-group |
| AG-4833 | Defect | When a column definition has suppressMovable=true, calling setColumnDefs() with suppressMovable=false still prevents column from being moved |
| AG-4827 | Defect | Pasting a value when the grid is partially out of view scrolls the page up to headers then back down to pasted cell |
| AG-4804 | Defect | When enableRTL=true on certain resolutions (with browser zoom), horizontal scrollbar scrolls viewport but column headers scroll lags or scrolls in opposite direction |
| AG-4784 | Defect | [Column Filters] Allow text filter to keep trailing white space while the user is typing |
| AG-4738 | Defect | [Regression] Pressing TAB key no longer allows to move from one floating filter editor to another |
| AG-4709 | Feature Request | [Excel Export] Allow returning Excel export file in Object format (as BLOB) |
| AG-4679 | Defect | [Frameworks] None of the frameworks allow range selection in detail grid |
| AG-4513 | Defect | [Excel export] getDataAsExcel does not match exportDataAsExcel, xlsx not supported |
| AG-4459 | Feature Request | [Frameworks] Remove warnings when using v23+ with Angular version < 10.0 |
| AG-3787 | Feature Request | [Keyboard Navigation] Allow keyboard navigation for full-width group rows (groupUseEntireRow: true) |
| AG-3756 | Defect | groupHideOpenParents is not respected in Excel export |
| AG-3710 | Defect | When keyboard navigating into a full-width row using the TAB key, grid loses focus |
| AG-3572 | Feature Request | [Updating Data] Allow suppressing sort and/or grouping after updating data unless the user requests another sort/group |
| AG-3482 | Feature Request | [React] Adjust ag-grid react naming conventions so that they adapt to the default ts-lint provided by create-react-app |
| AG-3263 | Defect | Resizing pinned columns when using domLayout='print' breaks column headers layout |
| AG-1583 | Feature Request | [React] Improve life cycle of call when calling setFilterModel on a React filter component |
| AG-113 | Feature Request | [Scrolling] Allow always showing scrollbars |

### 25.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4964 | Defect | [Regression] When using immutable data, group records without any child records are no longer removed from grid |
| AG-4954 | Defect | [Regression] Dragging a column header out of the grid doesn't remove it anymore |
| AG-4829 | Defect | [Regression][React] Column visibility change events don't propagate across aligned grids |

### 25.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5307 | Defect | [Github packaging] Github source code for ag-grid-enterprise v23.1.0 contains code for v25.0.0 |
| AG-4907 | Defect | Accessing a missing field returns undefined, while accessing a property of a missing field returns null |
| AG-4905 | Defect | When using server-side row model, applying column filter state via applyColumnState resets page index |
| AG-4884 | Defect | [Regression] Vertically scrolling fast causes bottom rows to appear as whitespace |
| AG-4876 | Defect | [Regression] Inline editor cell clips the editor component border |
| AG-4867 | Defect | [Regression] agSelectCellEditor long text items wrapped on multiple lines over each other instead of shortened with ellipsis (...) |
| AG-4866 | Defect | [Regression] Calling setColumnDefs twice throws an exception |
| AG-4841 | Defect | [Chart] nodeClick event doesn't fire for integrated charts |
| AG-4838 | Feature Request | [Accessibility] Allow setting the aria-label in the row selection checkbox |
| AG-4832 | Defect | NPM 7.0 throws exception upon installing ag-grid with React v17.0.0 |
| AG-4830 | Defect | TypeError thrown when calling getColumnDefs for column definitions which has a null property value |
| AG-4828 | Feature Request | [Column Header] Allow headerValueGetter to use different values for params.location to distinguish between header, columnToolPanel and filterToolPanel |
| AG-4825 | Defect | Calling ResetRowHeights clears out the undo stack |
| AG-4814 | Defect | [Regression] Last-focused grid cell retains focused styling even after grid loses focus |
| AG-4812 | Defect | When user presses CTRL+C, grid unnecessarily scrolls to focused cell thus triggering unneeded data request |
| AG-4811 | Feature Request | While selecting rows with SHIFT+click, the selected rows range cannot be reduced |
| AG-4808 | Defect | [Regression] In the column tool panel, changing the visibility of a column expands all groups |
| AG-4805 | Defect | [Regression] When setting multiple filtering conditions in date filter, time is unnecessarily added to floating filter input value |
| AG-4803 | Defect | [Regression] Multi-column sort order changes unexpectedly |
| AG-4798 | Defect | Using setModel() does not apply filter if providing async values in filterParams |
| AG-4796 | Feature Request | [Clipboard] Improve copy to clipboard speed with large datasets |
| AG-4795 | Defect | [Regression] Custom filter options are not localized by a call to localeTextFunc |
| AG-4792 | Defect | If range selection is not enabled, it's not possible to paste single cells |
| AG-4791 | Defect | Blur of custom input component is not fired in Firefox |
| AG-4787 | Feature Request | Add Cross Filtering to Integrated Charts |
| AG-4786 | Defect | [Regression] When using Chrome on an Android device, column groups fail to expand on touch |
| AG-4785 | Defect | [Regression] Right-clicking a cell to open context menu doesn't select cell to indicate which cell was clicked |
| AG-4783 | Defect | [Website] Set filter showing duplicate (Select All) and broken image on home page |
| AG-4780 | Defect | [Regression] Protractor: Clicking on an menu option on the column menu causes the test to fail and timeout |
| AG-4779 | Defect | [Regression] Protractor: Clicking on an menu option on the context menu causes the test to fail and timeout |
| AG-4778 | Defect | [Internet Explorer 11] Typing in outside text input enters text in the last open agLargeTextCellEditor in the grid |
| AG-4776 | Defect | [Docs] Selecting data for export example doesn't work when only exporting selected rows to CSV or Excel |
| AG-4772 | Defect | [Internet Explorer 11, Firefox] Number filter value editor doesn't apply validation and allows entering text values |
| AG-4770 | Defect | Column Flex attribute state is reset instead of kept |
| AG-4769 | Defect | colDef.minWidth ignored when minWidth == 0 |
| AG-4768 | Defect | [Regression] Editor value not selected when moving from one editable cell to another with TAB key |
| AG-4767 | Defect | [Regression] Horizontal scrolling breaks at specific zoom levels (due to invalid call to isIOSUserAgent in shouldBlockScrollUpdate) |
| AG-4761 | Defect | [Regression] Size to fit sizes columns equally and allocates unnecessarily wide widths to columns with short values |
| AG-4759 | Defect | [Regression] When using enableRTL=true and scrolling all the way left, scrolling right doesn't scroll the grid viewport |
| AG-4758 | Defect | [Column Tool Panel] Calling api.setColumnDefs() resets the expanded state of column groups in column tool panel |
| AG-4755 | Defect | [Regression] When applying a custom column layout in columns tool panel, changing column visibility reverts to original column layout |
| AG-4754 | Defect | [Regression] Clicking row checkboxes while holding SHIFT key selects individual records instead of the range |
| AG-4753 | Defect | When groupRemoveSingleChildren=true, the group column value is not displayed in the group column for the single nodes |
| AG-4749 | Defect | onCellFocused called twice after context menu close |
| AG-4748 | Defect | [Regression] Column header text does not change to 'sum(column name)' after column aggregated |
| AG-4747 | Defect | [Angular] When opening a select editor in Firefox, it flashes and closes immediately |
| AG-4746 | Defect | Tree data & filtering aggregated values |
| AG-4743 | Defect | [Functional React] When using a custom date filter adding a second date value clears entire filter popup and removes filtering condition |
| AG-4742 | Defect | [Master/detail] Adding master-level grid as a drop zone prevents detail-level grid drop zones from working |
| AG-4741 | Defect | When a part of agMultiColumnFilter, set filter doesn't apply its cellRenderer |
| AG-4739 | Defect | [Regression] Floating filter popup doesn't close even though closeOnApply=true |
| AG-4736 | Feature Request | [API] Header Cell params now gets passed eGridHeader, so events can be added by client code |
| AG-4732 | Defect | Using applyTransactionAsync to add a new row at a specific index doesn't work with tree data |
| AG-4730 | Defect | Master/Group row expansion on the last row increases row height by 1px |
| AG-4729 | Defect | [Regression] Using an in a CellRenderer requires two clicks inside cell instead of one to start editing in Internet Explorer 11 |
| AG-4726 | Defect | [API] The refresh function on ICellRenderer should type params as ICellRendererParams, not any |
| AG-4721 | Defect | [Regression] In Safari, editing a cell with a custom editor, and then clicking another cell above it or below it the same column causes viewport to scroll up a few lines |
| AG-4719 | Defect | [Regression] When body has width including a half-pixel, horizontally scrolling using the trackpad to the end on a Windows machine prevents the horizontal scrollbar from working |
| AG-4713 | Defect | Column menu button rendered outside column header and inaccessible when column is too narrow |
| AG-4710 | Defect | Filtering multiple values of complex objects when using floating filters throws an exception |
| AG-4708 | Defect | Default valueGetter for columns with a field specified doesn't support empty strings |
| AG-4707 | Defect | Having many instances of ag-grid on the same page makes editors less responsive to user input |
| AG-4706 | Defect | Improve groupHideOpenParents performance when using many groups |
| AG-4703 | Defect | [Regression] Using FireFox date editor clear button in ag-Grid filter clears value but doesn't update grid rows |
| AG-4701 | Defect | Make colDef.shouldWrap reactive |
| AG-4699 | Feature Request | [Accessibility] Allow setting the values for aria-label and aria-labelledby for the top grid element |
| AG-4683 | Defect | Interface GetDetailRowDataParams is missing from the list of exported types |
| AG-4681 | Defect | [Export] - Example broke |
| AG-4676 | Defect | Exception thrown when double-clicking a URL inside a grid cell |
| AG-4675 | Defect | Auto-group column state isn't reset when clicking RESET COLUMNS in column menu |
| AG-4662 | Feature Request | [Updating Data] Improve performance of applyTransaction when data is grouped |
| AG-4657 | Feature Request | [Charts] add series lineDash/lineDashOffset options to the formatting panel |
| AG-4652 | Defect | [Regression] For columns initially out of view, filter popup disappears by itself after filter value is entered |
| AG-4600 | Feature Request | [Clipboard] Improve performance when copy/pasting large amounts of data from the grid |
| AG-4547 | Feature Request | [Columns Tool Panel] Allow displaying tooltips for columns and column groups in the columns tool panel |
| AG-4401 | Feature Request | [SSRM] Allow applying newly retrieved data after purgeServerSideCache call silently (without showing any loading cell renderers, as in infinite row model refreshInfiniteCache()) |
| AG-4355 | Defect | [React] Unable to retrieve updated component props within grid callbacks when using React hooks |
| AG-4320 | Defect | [Frameworks] rowSelected runs outside instead of inside the Angular zone |
| AG-4313 | Defect | Keyboard navigation broken when using Windows Narrator |
| AG-4259 | Defect | [Framework] Double rendering each cell to reduce flicker doesn't work well when using Material-ui |
| AG-4211 | Defect | [React] Regression: Material-UI icons get resized when using themes overriding Material UI CSS |
| AG-4180 | Defect | [React] React function component cell renderer briefly shows two copies of the cell value in a cell |
| AG-4109 | Feature Request | [Charts] Add a more convenient way to save and restore charts |
| AG-4049 | Defect | [React] ag-react-grid unable to update state after cell edit (Warning: unstable_flushDiscreteUpdates) |
| AG-3972 | Defect | [Angular] ResizeObserver callback runs outside of the Angular zone |
| AG-3799 | Defect | [Angular] Angular change detection too aggressive with drag and drop |
| AG-3796 | Feature Request | [SSRM] Allow performing filter/sort and other operations in the already loaded data as if the user was working on the client side row model |
| AG-3697 | Feature Request | [Charts] Add tooltips to toolbar icons |
| AG-3459 | Feature Request | Improve change detection to minimize the callbacks generated from within the angular zone |
| AG-3365 | Defect | [Regression] WebComponent only works in Chrome and not in any other browser |
| AG-3362 | Defect | [Angular] Ensure that all grid events fire in Angular zone |
| AG-3005 | Feature Request | [SSRM] Allow failCallback to provide with a strategy to retry/stop loading data |
| AG-2837 | Feature Request | [SSRM] Server Side Row Model Changes |
| AG-2823 | Feature Request | [Charts] Add Integrated Cross Filtering |
| AG-2620 | Feature Request | [Frameworks] Allow support for importing typescript directly without using npm |
| AG-2605 | Feature Request | [SSRM] Allow for cacheBlockSize to take -1, meaning try to get everything from the backend in one go. |
| AG-2525 | Feature Request | [Framework] Allow creation of framework components from template |
| AG-1950 | Feature Request | [Clipboard] Allow copy-pasting the focused cell without having to enable range selection |
| AG-1543 | Feature Request | [Keyboard Navigation] Allow using keyboard navigation to access elements hosted inside column headers |
| AG-1238 | Feature Request | Add markup for Angular 1. Grid and Columns |
| AG-1019 | Feature Request | [SSRM] Add support for expandAll/collapseAll and groupDefaultExpanded in SSRM to allow expanding group nodes on load and via API |

### 24.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4723 | Defect | [Regression] When building an ag-Grid Vue.Js application, you get error AgGridVue.js dependency was not found |
| AG-4712 | Defect | [Regression] React functional component is shown twice in the first row until scrolled out of view |

### 24.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4882 | Defect | Custom material-ui theme is reset to default material-ui theme after setting row data |
| AG-4727 | Defect | Incorrect cursor placement in editor when typing in a RTL language unless enableRTL=true |
| AG-4702 | Defect | When grouping, Filter Tool Panel no longer displays "filtered" icon next filtered columns |
| AG-4691 | Defect | [Regression] onCellKeyDown and onCellKeyPress don't fire for pressing the ENTER key in a group node |
| AG-4688 | Defect | filterParams are not passed correctly to a child set filter by the multi filter |
| AG-4685 | Defect | When gridOptions.api.setColumnDefs() with colDefs from gridOptions.api.getColumnDefs(), column menu disappear |
| AG-4684 | Defect | [Docs] Theming > CDN Links reference v23 CSS which is incompatible with v24 (prevents users from clicking filter checkboxes) |
| AG-4672 | Defect | [Aggregation] Built-in aggregations produce incorrect aggregation result with values of type BigInt |
| AG-4671 | Defect | [Regression] Reduced performance on computing built-in aggregations due to using functional filter/reduce instead of manual loops |
| AG-4669 | Defect | [Regression] PivotChart x-axis labels duplicated in AREA series type |
| AG-4666 | Defect | CustomHeader refresh(...) method incorrectly called with IHeaderParams instead of the current CustomColumnHeaderParams |
| AG-4665 | Defect | Incorrect changeDetectionStrategy set when immutableData set directly in gridOptions |
| AG-4659 | Defect | Deselecting all items in set filters for two columns prevents filter being removed again |
| AG-4658 | Defect | When getRowHeight returns NaN, the page freezes |
| AG-4656 | Defect | [Row Selection] Infinite row model - pressing SHIFT+clicking row checkbox - checkbox checked, but row not selected |
| AG-4653 | Defect | [Regression] Calling sizeColumnsToFit causes column values to bleed into neighboring column instead of being shortened with ellipsis |
| AG-4649 | Defect | [Filtering] Defining defaultColDef.floatingFilterComponentParams causes the last column's colDef.floatingFilterComponentParams to apply to all columns |
| AG-4646 | Defect | [Filtering] Using NumericFilter with InRange option wrongly includes null values in filter result |
| AG-4645 | Defect | [Regression] defaultColDef.filterParams produces invalid column filter options when a column has a filter defined in coldef.filterParams object |
| AG-4644 | Defect | [Pagination] Changing the paginationPageSize property value produces incorrect pagination panel counts |
| AG-4643 | Defect | [Regression] Range selection area broken up in parts by columns - sizeToFit operation |
| AG-4642 | Defect | [Accessibility][Master/Detail] Expanding a master row doesn't set ARIA-expanded=true |
| AG-4641 | Defect | [Regression] [Master/Detail] Master row missing ag-row-group-expanded class and aria-expanded shows false when expanded |
| AG-4637 | Defect | [Regression] autoGroupColDef cellClassRules overrides defaultColDef cellClassRules |
| AG-4620 | Feature Request | [Editors] Support custom debounce time and backspace in richCellEditor search |
| AG-4614 | Defect | When using master/detail full-width rows and keepDetailRows, if the detail panel is opened, collapsed, and then reopened, the panel is blank |
| AG-4612 | Defect | rowSelection property deprecated in error (rowDeselection had to be deprecated instead) |
| AG-4610 | Defect | [Master/Detail] Detail-level autoHeight does not work when used with custom detail renderer |
| AG-4604 | Feature Request | [Charts] Add support for time axes in integrated charts with theme based configuration |
| AG-4603 | Defect | After row dragging in tree data, group node row count is null instead of 0 |
| AG-4597 | Defect | Providing default filterParams causes per column filterParams to be shared for all columns |
| AG-4591 | Feature Request | [Charts] Allow range chart to support server-side row model |
| AG-4589 | Feature Request | [API] Reintroduce addIndex to allow inserting records at a specific index |
| AG-4586 | Defect | [React] the afterGuiAttached hook does not fire the first time a custom React filter component is mounted |
| AG-4583 | Defect | [Drag & Drop] Selecting all rows and drag-dropping them shouldn't reorder the top row |
| AG-4580 | Defect | When using 'field dot notation', empty strings are returned as null |
| AG-4578 | Defect | Editing the last cell in the grid with a popup editor and pressing TAB breaks keyboard navigation |
| AG-4576 | Defect | [Regression] agLargeTextCellEditor doesn't render on multiple lines anymore |
| AG-4574 | Defect | No ellipsis shown for long text value in Internet Explorer 11 |
| AG-4568 | Defect | [Range Selection] Holding SHIFT and click-dragging on a grid cell throws an exception |
| AG-4564 | Defect | Quickly drag & dropping a column into the row group panel doesn't hide it |
| AG-4557 | Defect | Quickly draging & dropping a column outside the grid doesn't hide it in the grid |
| AG-4543 | Defect | Memory leak when using animateRows and custom cellRenderers |
| AG-4525 | Defect | [Regression] Setting whitespace for filtering value doesn't apply filter |
| AG-4521 | Defect | columnApi.setColumnAggFunc throws an error |
| AG-4518 | Defect | [Events] cellKeyDown and cellKeyPress events don't fire when using agPopupTextCellEditor or agLargeTextCellEditor |
| AG-4517 | Defect | [React] React wrapper shouldn't try check for equality on the property with a React component on it |
| AG-4511 | Defect | Misaligned border of pinned column when using the "toggle device toolbar" in Chrome |
| AG-4505 | Defect | Default floating date filter with Apply button gets triggered without pressing ENTER key |
| AG-4504 | Defect | When using Safari, Column Tool Panel Values rows overlap with the "Values" label |
| AG-4482 | Feature Request | [Chart] Allow manipulating the chart options object at runtime |
| AG-4470 | Defect | onGridReady still fires if the component is mounted and dismounted quickly |
| AG-4439 | Defect | Slow column header dragging when sidebar is on |
| AG-4409 | Defect | Changes in last row not saved when you TAB away from full-row edit mode |
| AG-4408 | Defect | Ghost dragging element does not update after updating cell value |
| AG-4384 | Defect | Material theme editor incorrectly rendered under column header (it should be over the column header) |
| AG-4373 | Defect | Horizontal/vertical scroll stuttering when scrolling from the edge on iOS devices (iPad, iPhone) |
| AG-4339 | Defect | dragging the dndSourceComp incorrectly activates range selection |
| AG-4335 | Feature Request | [Keyboard Navigation] Allow suppressing built-in column header keyboard navigation and allow custom header keyboard navigation |
| AG-4334 | Defect | Memory leak when calling gridAPI.refreshToolPanel |
| AG-4315 | Defect | Column header dragging out of grid doesn't work when vertical scrollbar not in top position |
| AG-4312 | Defect | [Regression] Dragging leaf nodes from grid to grid always appends the data |
| AG-4290 | Defect | When holding Enter key pressed on an editable cell with a custom tooltip component, moving the mouse displays multiple instances of the same tooltip |
| AG-4274 | Defect | [Tooltip] Certain params props not set in the ITooltipParams object |
| AG-4257 | Defect | Horizontal scrollbar rendered over last record |
| AG-4255 | Defect | Column and context menu popups don't keep relative positioning to grid when container scrolled |
| AG-4241 | Defect | [Frameworks] Memory not freed if api(s) not dereferenced |
| AG-4215 | Defect | [Accessibility] SSRM ARIA-rowcount should be total of all rows, including collapsed rows in row groups |
| AG-3978 | Defect | [React] When async filter components, floating filter params.parentFilterInstance() and params.currentParentModel() not working |
| AG-3877 | Defect | Sidebar with many columns slows down grid initialisation in Internet Explorer |
| AG-3857 | Defect | [React] Custom Filter Component + React: Filter Component renders incorrectly when opened for the first time in the last column |
| AG-3809 | Defect | [Regression] React filter component placement is unexpected on initial opening |
| AG-3719 | Feature Request | [Charts] Allow unlinking/linking of charts via the API |
| AG-3608 | Feature Request | [Charts] Add a mechanism to refresh existing charts |
| AG-3458 | Defect | Popups containing React components are incorrectly positioned |
| AG-3399 | Defect | [Regression] Angular race condition, the grid is partially destroyed by the time ngOnDestroy is called |
| AG-3308 | Feature Request | [Charts] Add support for Server-side and Viewport Row Models |
| AG-2530 | Feature Request | Improve gridReady & FW lifecycle timing for consistency |
| AG-779 | Feature Request | [React] Improve performance when pasting into range when using React / Redux |

### 24.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-5961 | Defect | When using custom header components and calling setColumnDefs, all column header components get rerendered even if there's no change in their (newly applied) column definition |
| AG-4575 | Defect | suppressKeyboardEvent doesn't suppress HOME and END keys |
| AG-4565 | Defect | Copying to Clipboard Footer Value - word 'Total' is missing |
| AG-4558 | Defect | Tooltips are not created if the cell is initially empty |
| AG-4551 | Defect | Changing column visibility when using rowHeight=auto doesn't recalculate row height |
| AG-4548 | Defect | [Context Menu] Material-UI icon doesn't get displayed inside ag-grid context menu item |
| AG-4546 | Feature Request | Provide example of internationalized file |
| AG-4542 | Defect | [Regression] RTL scrolling breaks with Chrome 85 |
| AG-4539 | Defect | [React] Using Material-UI icon in a cell renderer throws an exception |
| AG-4536 | Feature Request | Improve speed of moving around grid cells with ARROW keys |
| AG-4535 | Defect | [Chart] Setting chart options resets chart area correctly but not legend items |
| AG-4533 | Defect | When dragged row is deleted dropping it generates an exception and invalid preview element |
| AG-4532 | Defect | On first render, the data prop is missing from ICellRendererParams if field doesn't match a key in data |
| AG-4528 | Defect | [SSRM] Row auto-height fails when using SSRM with an infinite dataset |
| AG-4514 | Feature Request | [Row Height] Add new column property wrapText to allow wrapping cell values |
| AG-4512 | Defect | ag-Grid DOM contains detached elements |
| AG-4510 | Defect | Params from columnDefs, defaultColDef and columnTypes should be merged, not replaced, when merging column definitions |
| AG-4508 | Defect | [Regression] Custom Tooltip Component params.column no longer exists |
| AG-4499 | Defect | Docs bug : Install with NPM docs section imports needs to be corrected |
| AG-4494 | Defect | [Regression] Editing a cell in the last row with enterMovesDownAfterEdit=true throws an exception |
| AG-4491 | Feature Request | [Fill Handle] Current cell value should be added to the fill handle operation FillOperationParams |
| AG-4490 | Defect | onCellKeyPress is not raised on enter key press when entering edit mode |
| AG-4480 | Defect | [Regression] Context menu shown when right-clicking below last row in grid area |
| AG-4478 | Defect | When row data is updated, set filter options can no longer be checked/unchecked |
| AG-4472 | Defect | [Regression] Right-clicking on a cell and pressing CTRL+C to copy not working from V23 |
| AG-4466 | Defect | [Regression] Range selection breaks pinned column border styling |
| AG-4465 | Defect | [Regression] Slower scrolling speed in IE11 when using ag-Grid v23 vs v22 |
| AG-4455 | Defect | Scrolling issue with Master Detail and auto height |
| AG-4454 | Defect | ColumnsToolPanel SELECT ALL un-hides columns with hide=true and suppressToolPanel=true |
| AG-4453 | Defect | DOCS: Export page - change export #export-on-an-ipad to "export-on-ios" |
| AG-4446 | Defect | Filter popup in Excel-mode=windows closes on each data update |
| AG-4442 | Defect | Unmanaged RowDragging with SSRM throws exceptions in console |
| AG-4432 | Defect | [Accessibility-regression] Broken keyboard navigation in the context menu when using a screen reader |
| AG-4429 | Feature Request | Allow API to flush async transaction queue |
| AG-4425 | Defect | When using immutable data, setting new tree data causes the expand/collapse chevron to disappear |
| AG-4424 | Defect | Calling setColumnDefs with updated columnDefs throws a console error |
| AG-4422 | Defect | Custom tooltip doesn't disappear when pressing ENTER to finish editing the cell |
| AG-4420 | Defect | Status bar incorrectly shows 0 of 0 of -1 when using the Viewport Row Model |
| AG-4415 | Feature Request | [Accessibility] Allow setting ARIA role on the column header when using a custom header renderer |
| AG-4412 | Defect | Adding a leaf node doesn't immediately apply the group-expanded/collapsed styles to the group node |
| AG-4410 | Defect | Row autoHeight does not work with auto group column in SSRM |
| AG-4405 | Defect | Flickering when expanding detail grid when using SSRM and embedFullWidthRows=true |
| AG-4400 | Defect | Row dragging across many records not inserted in new location and throws an exception |
| AG-4394 | Feature Request | [Accessibility] Add ARIA tags in the paging panel |
| AG-4393 | Feature Request | [Keyboard Navigation] Allow using keyboard navigation to navigate to and access the pagination panel |
| AG-4391 | Feature Request | [Accessibility] Add aria-label to provided filter menu inputs |
| AG-4390 | Feature Request | [Accessibility] Allow updates to sort order to be announced |
| AG-4389 | Feature Request | [Accessibility] Allow column menu tabs to be announced correctly in JAWS |
| AG-4388 | Feature Request | Cleanup Legacy Properties (> 1 year old) |
| AG-4386 | Defect | Bean reference error thrown when set filter is open and grid is destroyed |
| AG-4382 | Defect | [Regression] Filtering pivot column labels causes pivoted values to disappear from grid area |
| AG-4381 | Defect | Using checkbox selection prevents leaving ag-grid by pressing the TAB key |
| AG-4380 | Feature Request | Allow the ag-Grid angular component to be wrapped |
| AG-4379 | Defect | Quickly filtering Columns Menu using the mini filter clears out all columns and rows |
| AG-4375 | Defect | RowClassRules are not refreshed when a cell is updated via the fill handle |
| AG-4368 | Defect | Scrollbar position changes when calling resetRowHeights without changing rowHeight |
| AG-4367 | Defect | Custom header template without column menu icon throws style error in console |
| AG-4366 | Feature Request | Make default value rowDeselection: true and add new option to allow to suppress it so they can have old behavior |
| AG-4364 | Feature Request | Allow zero value for grid property autoSizePadding |
| AG-4363 | Feature Request | [Accessibility] Add ARIA labels to cell editors |
| AG-4356 | Defect | When dragging a collapsed column group, it reverts to original order of its child columns |
| AG-4351 | Defect | Incorrect event source set in onColumnVisible when using column menu and column tool panel |
| AG-4349 | Defect | [Provided filters] Empty filter operator option is called Empty as per docs, while in product it's "Choose One" (no localization possible either) |
| AG-4346 | Defect | Floating numeric filter parses MINUS sign as NaN |
| AG-4345 | Defect | When enterMovesDown=true/enterMovesDownAfterEdit=true, pressing ENTER key on last row causes console error |
| AG-4338 | Defect | [Regression][Pivot] Calling resetRowHeight with secondary columns doesn't resize the rows properly |
| AG-4327 | Defect | Context is not defined in params for the following callbacks: getDetailRowData and filterParams.cellRenderer |
| AG-4325 | Defect | enterMovesDownAfterEdit throws error when enter key is pressed on the last row |
| AG-4322 | Feature Request | [Accessibility] Update ARIA role, label, title, sort tags for column headers |
| AG-4319 | Defect | Header should not do hard refresh of entire row when only small changes to columns |
| AG-4314 | Feature Request | [Accessibility] Allow passing the WAVE, AXE accessibility audit |
| AG-4310 | Feature Request | Ensure function name is extracted correctly for all browsers |
| AG-4306 | Defect | Balham Theme doesn't allow foreground-color to be a CSS variable |
| AG-4303 | Defect | Resetting many set filters makes SELECT ALL in a set filter slower each time |
| AG-4301 | Defect | When grid has no rows, the No Rows Overlay is rendered over the column headers in PRINT layout |
| AG-4299 | Defect | [React] Using setState to update columnDefs when rowData is not empty shows an empty grid and console error |
| AG-4293 | Defect | Grid selection / focus status CSS doesn't match the grid state |
| AG-4292 | Defect | Calling setAutoGroupColumnDef with pinned: true results in a broken layout with different column widths for header and grid cells |
| AG-4291 | Feature Request | Reactive Columns |
| AG-4286 | Defect | Output Error when colDefs are not provided and treeData is true |
| AG-4279 | Feature Request | [Accessibility] Add ARIA label to row selection checkbox cell |
| AG-4271 | Defect | Tree data indentation not correctly updated when rows are moved |
| AG-4266 | Feature Request | [API] Add API methods indicating whether the undo/redo stack is empty |
| AG-4254 | Feature Request | [Accessibility] Allow screen readers to read column names in the column tool panel |
| AG-4250 | Feature Request | [Accessibility] Add role definitions to grouped rows to allow them to be read correctly by screen readers |
| AG-4248 | Defect | IE11 - Column / Value Drop Zones look too small |
| AG-4247 | Defect | IE11 - Header tooltips never disappear |
| AG-4243 | Defect | [Column Flex] When using column flex and maxWidth, last column header text isn't shown |
| AG-4236 | Defect | [Regression] When a cell with agSelectCellEditor is focused, pressing ENTER key doesn't open editor popup |
| AG-4235 | Defect | [Cell Editing] Regression: When stopEditingWhenGridLosesFocus=true, clicking or pressing ENTER on agSelectCellEditor doesn't open popup to edit values |
| AG-4231 | Defect | [Styling] AgComponent combobox has oversize border - restore old look with thin border |
| AG-4225 | Feature Request | Change default text for filter buttons |
| AG-4224 | Defect | [Master/Detail] Broken layout of detail grid when paging master grid |
| AG-4214 | Defect | [Column Sizing] Auto-sized column still truncates text (Alpine theme only) |
| AG-4210 | Defect | [Regression] When using immutableData and CellClassRules, applying two classes in the same condition throws a DOMException |
| AG-4204 | Defect | [Column Menu] Group by/Ungroup by column menu items are always shown (shouldn't be according to docs) |
| AG-4203 | Defect | [DOCS] Revise "Performance">>"Create Fast Cell Renderers" section to NOT advise against use of frameworks (react, angular, etc) in cell-renderers |
| AG-4202 | Feature Request | React - Getting Started Guide - Make Idiomatic |
| AG-4184 | Defect | [Column Groups] Column group can be dragged but not dropped between two columns |
| AG-4157 | Defect | [Column Sizing] When all columns are flex, "Reset Columns" doesn't reset column widths |
| AG-4140 | Feature Request | [Pivoting] Allow aggregation without totalling (show multiple sum(values) separately for a column value instead of summing them into a single TOTAL) |
| AG-4132 | Defect | Scroll not working when row autoHeight + row height > viewport |
| AG-4116 | Defect | investigate possible memory leak when using master/detail and expanding nodes |
| AG-4111 | Defect | [Row Height] Row AutoHeight=true doesn’t size rows correctly with cell renderer using ng-repeat |
| AG-4051 | Defect | onCellFocused event fired twice when expanding or collapsing a group row |
| AG-4050 | Defect | [Tree-data] Using “constructor“ as group name throws an error |
| AG-4041 | Defect | [React] React Cell Renderers are being destroyed and recreated when window is resized vertically |
| AG-4004 | Feature Request | [API] Allow accessing oldValue in onCellEditingStopped event |
| AG-3997 | Feature Request | Allow configuring the set filter to be able to toggle the brackets of the "(Select All)" checkbox text |
| AG-3975 | Defect | Custom grouping example has wrong indentation |
| AG-3955 | Defect | [React] React + Delta column mode + HOF to create column callback properties: AgGrid does not react to the callback change (works in JS) |
| AG-3954 | Defect | [Column Menu] Allow column menu columns order to be unsynchronized with grid column (v21 behavior) |
| AG-3945 | Defect | [Touch devices] Drag & Drop does not work |
| AG-3943 | Defect | When using a column group header, row autoHeight erroneously takes into account the height of hidden columns |
| AG-3923 | Defect | [Excel] Spaces shouldn't be trimmed from value before output for export |
| AG-3913 | Defect | Autosize columns + flex columns distorts columns |
| AG-3901 | Defect | [Regression] refData only shows the defined key value pairs in the grid |
| AG-3853 | Defect | blockLoadDebounceMillis blocks the user from rapid switching of the pages |
| AG-3842 | Defect | [Pivot] pivot: true + grouping by a column + column label by same column + move column label moved to grouping: The grid displays twice the grouping |
| AG-3840 | Defect | Excel export puts the formatted second-column group value in the first column of the export instead |
| AG-3823 | Defect | setColumnState gives warning when reloading state with rowgroups |
| AG-3819 | Defect | Grid moves scroll position when resetRowHeights is called |
| AG-3769 | Defect | FullWidthRows not animated when rows are added to the grid |
| AG-3690 | Feature Request | [Column Filters] Add a filter comparator for agNumberColumnFilter so that you can parse user-entered values |
| AG-3684 | Feature Request | [Fill Handle] Allow setting the direction of use of fill handle (horizontal, vertical, both) |
| AG-3632 | Feature Request | Allow a new property to change the default AND / OR option for simple filters |
| AG-3614 | Defect | Popups are clipped by the grid |
| AG-3521 | Defect | [React] cellRendererFramework + autoSizeAllColumns not working when reactNext is true |
| AG-3474 | Defect | [SSRM] Pinned rows break when rowcount > 1143000 |
| AG-3443 | Defect | [Touch devices] Click event is not fired in custom header components + touch devices |
| AG-3394 | Defect | onColumnPivotChanged + api.showLoadingOverlay: The grid does not show the overlay until the contents are settled. |
| AG-3376 | Defect | [Regression] When using pinned columns, printing does not work |
| AG-3358 | Feature Request | [Accessibility] Allow unchecking a checkbox using a key press (SPACE key) |
| AG-3180 | Defect | When updating columns when using autoSize or sizeToFit, grid flickers |
| AG-3146 | Defect | context menu shows twice if right-click while is opened very close to the edge of the already opened context menu |
| AG-3126 | Defect | [DOCS] Themes are missing the explanation of how to configure padding for group cell renderers using ag-row-group-indent-x |
| AG-3084 | Feature Request | When first filter condition is cleared, second AND/OR filter condition is hidden (it shouldn't be) |
| AG-3053 | Defect | Allow reverting the way grouped columns are displayed to pre v20 |
| AG-2958 | Defect | When using null groups + groupDefaultExpanded, a new level is expanded for every grouping field that has a null value |
| AG-2944 | Feature Request | [Excel Export] Allow 'xml:space="preserve"' to be added to the XLSX file so that Excel doesn't ignore empty spaces when exporting data |
| AG-2896 | Defect | columnTypes set in defaultColDef are not applied |
| AG-2847 | Defect | [SSRM] Row selection does not work on group rows with SSRM |
| AG-2805 | Feature Request | [Column Filters] Support custom formatting/parsing for values entered in number filters |
| AG-2721 | Defect | Setting cellClass on a column overrides type:numericColumn and aligns numeric values to the left |
| AG-2710 | Defect | RTL: Scroll is laggy in Windows + Firefox |
| AG-2683 | Defect | [Docs] Value Cache Example is broken |
| AG-2671 | Defect | Excel borders lineStyle "Continuous" exports as a Dotted line instead of straight. |
| AG-2629 | Feature Request | [Accessibility] Allow screen readers/keyboard navigation to access the column headers sort and filtering elements |
| AG-2625 | Feature Request | [Columns Tool Panel] Allow column drag handle icon to be customisable |
| AG-2557 | Defect | API - Provide a column in the params to getContextMenuItems even when right-clicking in the edge between cells |
| AG-2554 | Defect | .ag-row-group class is not applied consistently to all row groups on Tree Data |
| AG-2547 | Defect | Rendering - When scrolling on the horizontal bar to the right and keeping the mouse clicked, when the mouse leaves the grid area, the scroll resets - IE11 Issue |
| AG-2524 | Feature Request | [Framework] Add "auto refresh" of properties to framework components |
| AG-2523 | Feature Request | [Frameworks] Add "auto init" of properties to framework components |
| AG-2467 | Defect | Infinite row model: When loading rows in small chunks, if rows are returned for a range that is previous to some other range already loaded, the grid shows loading |
| AG-2399 | Defect | Infinite row model + custom renderer + scroll fast: the renderer sometimes is not refreshed after the data is present |
| AG-2345 | Defect | [Context Menu] Clicking on cell border gives inconsistent results |
| AG-2329 | Defect | getRowHeight and auto page height in pagination are not working |
| AG-2221 | Defect | Allow value getters in group column defs to affect also the labels of the group nodes, not just the leaf nodes |
| AG-2217 | Feature Request | Add support for strictNullChecks in TypeScript |
| AG-2167 | Feature Request | Ensure that second value must be greater than first value for range filters |
| AG-2101 | Defect | [Events] cellContextMenu event does not trigger on column header |
| AG-2078 | Defect | Filter Cell Renderer refreshes before grid has finished updating |
| AG-2062 | Defect | Double click to auto size column, does not take into account font size from rowStyles |
| AG-2017 | Defect | Filter + Switching between Selection Modes; Causes odd selection behaviour |
| AG-2000 | Feature Request | [Tree Data] Allow setting the Sort Model of auto-group columns in tree data |
| AG-1967 | Feature Request | [Accessibility] Add Accessibility attributes across column header Filter/Sorting elements |
| AG-1959 | Feature Request | [Aggregation] Add additional parameters to the Custom Aggregation methods |
| AG-1873 | Feature Request | Allow more combining multiple column filters on one column |
| AG-1766 | Feature Request | [Row Sorting] Allow sorting with setSortModel with user sorting disabled |
| AG-1765 | Defect | Grouping - Pinned grouped column not saving state |
| AG-1592 | Feature Request | [Row Grouping] Allow in row grouping to have only one row group expanded at a time (collapse sibling row groups when opening a row group) |
| AG-1245 | Feature Request | [Row Grouping] Allow configuring grouping so all expanded subgroups are collapsed when collapsing a parent row group |
| AG-786 | Defect | [pivot header / cell renderer] colDef.cellRenderer ignored for PivotMode columns |
| AG-753 | Feature Request | [State] Allow saving/restoring auto-group column state |
| AG-456 | Defect | [scroll] in Safari not working as expected |

### 23.2.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4298 | Defect | ColumnState missing from "@ag-grid-enterprise/all-modules" |
| AG-4282 | Defect | [SSRM][Master/Detail] Child rows rendered over master rows when using auto-height for detail grid in SSRM |
| AG-4276 | Defect | [API] Regression: detailCellRendererParams was changed to ICellRendererParams in 23.2. Need to revert back to 'any' |
| AG-3674 | Feature Request | [Fill Handle] Allow fill handle to work both horizontally and vertically at the same time |
| AG-3300 | Defect | Cell focus lost when setting column definitions + deltaColumnMode |
| AG-1732 | Defect | [Clipboard] Pasting text into a cell with double quote removes quoted text |

### 23.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4486 | Defect | When applying a filter dynamically to the grid, getRows is called twice |
| AG-4449 | Defect | Overlapping cell values when using pivoting with async updates and filtering column values |
| AG-4448 | Defect | Overlapping cell values when using pivoting and adding data |
| AG-4427 | Defect | Calling ResetRowHeight when using column flex, paging and row auto-height blanks out the top row on every page |
| AG-4414 | Defect | TextCustomComparator incorrectly converts Turkish I character to i |
| AG-4376 | Defect | Column moving behaves differently depending on whether a pinned column was pinned via UI or via API |
| AG-4369 | Defect | When using set filter with excelMode=windows, set filter popup closes each time there's a data update |
| AG-4360 | Feature Request | [Keyboard Navigation] Add keyboard navigation to expand/collapse chevron in a group row |
| AG-4281 | Feature Request | [API] Allow suppressing cell mouse down and mouse click events to prevent cells from being announced as clickable by screen readers |
| AG-4256 | Defect | Fix typings for IViewportDatasourceParams |
| AG-4252 | Defect | ColDef.cellEditorSelector definition is wrong |
| AG-4249 | Defect | IE - Keyboard navigation doesn't work on cells with wrappers |
| AG-4245 | Feature Request | Make AutoGroupColumnDef a reactive property |
| AG-4244 | Defect | AutoGroupColumnDef does not force the group columns to get the new column definition |
| AG-4220 | Feature Request | Create Excel mode for set filter |
| AG-4212 | Feature Request | [Column Filters] Add selectAllOnMiniFilter property to set filter |
| AG-4209 | Defect | Theme material has missing borders and wrong sizes |
| AG-4207 | Defect | Bug in Value Handler Example - when editing, Value Handler doesn't accept valid value |
| AG-4196 | Defect | Visual defect when tool panel filter is loading |
| AG-4195 | Defect | getRowNodeId fails when the string provided is a negative number, producing invalid row layout |
| AG-4183 | Defect | [Fill Handle] Fill Handle disappears after cell editing with ENTER key |
| AG-4181 | Defect | [Editor] agLargeTextCellEditor adds extra new line each time user hits ENTER to edit cell |
| AG-4179 | Defect | [Regression] When using pivoting, primary column is not available |
| AG-4150 | Feature Request | List minimum supported version of Angular on ag-Grid NPMJS page |
| AG-4142 | Defect | DeltaRowDataMode + updating data does not unselect already selected nodes that have become unselectable |
| AG-4130 | Defect | (Blanks) option not rendered correctly in floating filter |
| AG-4123 | Defect | setFilterModel does not work with async filter values (unable to setFilterModel before the params.success gets called) |
| AG-4110 | Defect | SELECT ALL in set filter shouldn't select filtered out set filter items |
| AG-4057 | Defect | [Column Sizing] Calling sizeColumnsToFit repeatedly in pivot mode shrinks column widths |
| AG-4055 | Feature Request | [Keyboard Navigation] Add keyboard navigation to the set filter |
| AG-4046 | Defect | Interface mentioned in docs ICombinedSimpleModel is not exported |
| AG-4038 | Defect | CTRL+D does not suppress pasting when suppressPaste=true |
| AG-3916 | Feature Request | Master/Detail + master and detail: deltaRowDataMode + update detail through master: Allow for the detail grid to be delta updated (is redrawn at the moment) |
| AG-3908 | Feature Request | Add suppressFlash property to gridApi.refreshCells() |
| AG-3905 | Defect | Horizontal scrolling issue using Edge, Firefox, Chrome on Windows |
| AG-3899 | Feature Request | Allow configuring enableCellChangeFlash duration |
| AG-3884 | Defect | When editing, cell value is not updated when set via cellValueChanged and tabbing to that cell |
| AG-3831 | Defect | When using Firefox, enableCellTextSelection incorrectly selects values from row above |
| AG-3818 | Defect | Batch updates + grouping gives unexpected behaviour |
| AG-3789 | Feature Request | [Accessibility] Add ARIA labels to floating filter input field and floating filter button |
| AG-3785 | Feature Request | Show different text for "select all" checkbox when mini filter is in use |
| AG-3779 | Defect | When trying to override a default column Type the grid shows no warnings |
| AG-3758 | Defect | Columns do not resize correctly when mouse pointer dragged too fast outside of the grid |
| AG-3722 | Feature Request | Allow set filter to show no match when user types text that is not found in the mini filter (like excel) |
| AG-3709 | Feature Request | [Column Filters] Allow the mini filter in the set filter to be applied as the user types (without requiring the Enter key to be pressed) |
| AG-3656 | Defect | Horizontal scrolling large datasets in Firefox causes bouncing of headers |
| AG-3589 | Feature Request | Allow for dynamically changing master rows into leaf nodes |
| AG-3534 | Defect | CellEditingStopped isn’t working in IE 11 |
| AG-3412 | Defect | Header and body move at different speeds when scrolling horizontally on iPad |
| AG-3385 | Feature Request | Allow set filter to apply the filter immediately if no apply button is used as user types into the mini filter |
| AG-3359 | Feature Request | [Row Grouping] Allow updating autoGroupColumn after creation |
| AG-3341 | Defect | First row under the header isn’t always displayed full height |
| AG-3314 | Defect | DeltaColumn mode updates while popup editing, cause the editing to stop in the background |
| AG-3281 | Feature Request | Add option to have all values in set filter deselected by default |
| AG-3253 | Feature Request | [Keyboard Navigation] Allow keyboard navigation through all parts of the grid / columns / menu's / filters / tool panels |
| AG-3228 | Defect | SSRM + floating filters: set filter.params.debounceMs has no effect on the floating filter (this works in the CSRM) |
| AG-3089 | Feature Request | Update all asynchronously-loaded set filter values when any filters change |
| AG-3040 | Feature Request | Allow date floating filters to have a debouncesMs |
| AG-2987 | Feature Request | Allow isRowMaster to be reevaluated when a row is refreshed |
| AG-2937 | Feature Request | Master/Detail Allow detail rows to scroll with the main scroll (only ever have one scroll for the entire grid) |
| AG-2857 | Feature Request | [SSRM] Allow changing the filter values of a set filter after it has been initialized |
| AG-2814 | Feature Request | api.resetRowHeights() should work with detail rows (from master / detail) |
| AG-2681 | Defect | [Clipboard] CTRL+Click on the same cell many times, then copy causes duplicated values on the copy |
| AG-2657 | Defect | Last row is 1px smaller than the rest of the rows |
| AG-2651 | Feature Request | Master/Detail refresh isRowMaster when updating data for a row |
| AG-2546 | Feature Request | Allow Master / Detail to auto-height as detail data changes |
| AG-2385 | Defect | Columns - Hiding and showing the same column in succession causes the column to decrease in width |
| AG-2301 | Feature Request | Show customisable message if there are no matches from the mini filter search |
| AG-2298 | Feature Request | Allow async set values to be fetched on-demand via an API, not only when filter opened initially |
| AG-2255 | Defect | Unbalanced Groups + Multi Column Group + groupRemoveLowestSingleChildren is not working |
| AG-2216 | Feature Request | Allow filter values to be loaded every time the user opens the set filter |
| AG-1645 | Feature Request | When using asynchronous values for set filter, setting filter model should work |
| AG-1607 | Feature Request | Apply button should have same effect as hitting Enter key in set filter |
| AG-1594 | Feature Request | All row values to be expanded to multiple values in set filter |
| AG-1479 | Feature Request | [Keyboard Navigation] Allow keyboard navigation through column headers/side bar/tool panels |
| AG-1458 | Feature Request | Fix Angular filter component example |

### 23.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4200 | Defect | getPopupPosition returns the wrong position |
| AG-4187 | Defect | Array cell value formatting ignored |
| AG-3797 | Feature Request | Investigate improving DART support for Sass build |

### 23.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4166 | Defect | Setting browserDatePicker: false has no effect on Chrome, a plain input should be used instead the browser native editor |
| AG-4162 | Defect | [Internationalization] inRangeStart, inRangeEnd localized versions aren't applied |
| AG-4161 | Defect | [Keyboard navigation] LEFT, RIGHT arrow keys don't work in numeric filter |
| AG-4160 | Defect | [Numeric Filter] Numeric filter doesn't remove leading zeros from numeric input |
| AG-4156 | Defect | [Master-Detail]When using embedFullWidthRows=true with master-detail, getDetailRowData is called 3 times instead of once |
| AG-4147 | Defect | The Set Filter is showing incorrect values when there is a column Value Formatter |
| AG-4141 | Defect | Grid "jumps" when menu is invoked on auto height example |
| AG-4136 | Feature Request | [API] Add ColumnsApi to params in IToolPanelParams |
| AG-4133 | Defect | [Docs] Correct documentation listing which context menu options are shown by default |
| AG-4128 | Defect | [Tool Panel] Using the Balham theme the FilterToolPanel - search box under column is too close to SELECT ALL checkbox |
| AG-4127 | Defect | [Tool Panel] FilterToolPanel long column name gets wrapped and leaks outside of bounds |
| AG-4126 | Defect | [SSRM] Loading a new block of records causes focus to disappear |
| AG-4113 | Defect | Asynchronous loading of set filter values causes duplicate requests for data in server side row model |
| AG-4112 | Defect | [Regression] When using IE 11 Floating Filter Text Filter shows 'null' |
| AG-4106 | Defect | ellipses do not apply to leaf nodes in Balham themes |
| AG-4091 | Feature Request | [Column Sizing] Allow setting column widths across many columns at once using gridApi.setColumnWidths() API method |
| AG-4088 | Defect | [Regression] When using enableCellTextSelection and cell style align=right does not align the cell to the right |
| AG-4083 | Defect | Vertical scrollbar not shown even though alwaysShowVerticalScroll=true |
| AG-4080 | Defect | [Docs] Custom Tooltips React example does not unmount |
| AG-4079 | Feature Request | Remove demo file from dist folder when building with vue-cli |
| AG-4077 | Defect | purgeServerSideCache does not reset the infinite scroll (i.e. lastRow index) |
| AG-4075 | Defect | Memory leak when destroying the grid |
| AG-4072 | Defect | [Regression] autoSizeAllColumns doesn't take into account size of text in lower levels of tree data |
| AG-4068 | Defect | Pagination + SSRM + Master/Detail + Expanding last detail row in last page loaded: Causes pagination to break |
| AG-4067 | Defect | [Regression] Moving column with custom header sorts the column now |
| AG-4063 | Defect | [Master-Detail] Pagination + SSRM - Last master row in the cacheBlock doesn't expand its children |
| AG-4062 | Defect | Making range chart from first line of grid makes chart using whole grid data |
| AG-4056 | Defect | [FillHandle] When using a decimal fraction value, FillHandle enters wrong value in other cells |
| AG-4047 | Defect | [Master-Detail] When embedFullWidthRows=true detail-grid api doesn't update row data |
| AG-4042 | Defect | The left edge of the dialog moves left when its top-right corner is dragged beyond the right edge of container |
| AG-4039 | Feature Request | [License Manager] License Manager should strip the license key from special zero-width space characters which make it invalid |
| AG-4032 | Defect | Chart Range disappears when Row Groups are expanded / collapsed |
| AG-4022 | Defect | Values in set filter are no longer truncated with an ellipsis |
| AG-4021 | Defect | agTextCellEditor editor in materials theme does show fully in last row |
| AG-4019 | Defect | Styling issue with input range in firefox |
| AG-4018 | Defect | Custom components still have their styles altered by theme CSS |
| AG-4016 | Defect | Chart Resizing issue in Pivot Chart |
| AG-4014 | Defect | Choice of filter for second condition is blanked out after floating filter is used |
| AG-4012 | Defect | Cannot disable browser date picker for Chrome |
| AG-4011 | Defect | agSelect scrolls the page when expanded |
| AG-4000 | Defect | Incorrect chart created when single row is created at row index 0 |
| AG-3995 | Defect | NPE thrown when using row group edit |
| AG-3992 | Defect | React custom components with useLayoutEffect cause console errors |
| AG-3982 | Defect | groupIncludeTotalFooter + charting + invalid range should be handled gracefully. |
| AG-3977 | Defect | When enabling pivotmode the autoGroupColumn header is misaligned with its column content (because the chevron is missing when pivoting) |
| AG-3974 | Defect | Separator missing from pinned right columns on Alpine Theme |
| AG-3968 | Defect | Clicking on an editor disables editing in Edge browser |
| AG-3961 | Defect | Tree data + delta row data mode - updating data where you only change the ids causes unexpected behaviour |
| AG-3960 | Defect | Column autosizing breaks when grid is open in a hidden tab |
| AG-3952 | Feature Request | Column flex should be updated by setColumnState |
| AG-3951 | Defect | Generate ASCII-compatible CSS files |
| AG-3950 | Defect | localeText bug, average does not work. (use avg as a workaround) |
| AG-3939 | Defect | Multiple context menu popups gets created when rapidly right-clicking the grid |
| AG-3917 | Feature Request | Tooltip Manager should support async Tooltips |
| AG-3886 | Defect | numericColumn styling is not being applied when setting checkboxSelection in defaultColDefs |
| AG-3871 | Defect | Moving row group using the row group bar in iOS 13, the group lingers |
| AG-3855 | Defect | Drag and Drop: Vertical scrolling when dragging a ghost icon onto a grid does not work when horizontal scroll is active |
| AG-3806 | Defect | Context Menu renders incorrectly when importing ClientSideRowModelModule + ClipboardModule + MenuModule |
| AG-3784 | Defect | [Master/Detail] Cannot edit detail grid through api when using embedFullWidthRows |
| AG-3775 | Defect | [Regression] When dynamically changing the number of rows in SSRM and then purging the cache, an incorrect number of rows is displayed when number of rows is increased |
| AG-3771 | Defect | Dragging Between Grids example focusses wrong element in IOS 13+ |
| AG-3625 | Feature Request | Allow the grid to respond to DnD data based on the row position |
| AG-3581 | Defect | Column headers freeze when dragged on iOS |
| AG-3579 | Defect | Group Headers allow for HTML injection via colDef.headerName (this was removed from normal headers and templates introduced) |
| AG-3576 | Feature Request | Allow dragging multiple columns between grids |
| AG-3507 | Defect | [Regression] groupSuppressAutoColumn has no effect in pivot mode |
| AG-3487 | Defect | Master/Detail + embedFullWidthRows = true, the detail grid ignores changes |
| AG-3472 | Feature Request | Add the ability to listen to click events on Charts |
| AG-3425 | Defect | When pinning columns + master detail + embedFullWidthRows: The detail row is split in two |
| AG-3312 | Feature Request | Add Histogram Charts |
| AG-3306 | Defect | Investigate improving the performance of calling resetFilterValues when calling it for all columns in the screen |
| AG-3235 | Defect | [SSRM] When maxBlocksInCache is too small, an infinite server call is initiated |
| AG-3206 | Defect | Using Master Detail with embedFullWidthRows and pinned columns should not render multiple detail grids |
| AG-2968 | Feature Request | Allow configuring how long it takes a tooltip to popup |
| AG-2788 | Feature Request | Allow customising of line spacing between items in the set filter |
| AG-2739 | Defect | Ensure valid date is selected before applying date filter |
| AG-2551 | Feature Request | Add support and an example of how to build with AMD |
| AG-2187 | Feature Request | Allow floating filters to be enabled/disabled on a per-column basis |
| AG-2162 | Feature Request | Add option to close filter popup when Apply button is clicked |
| AG-1650 | Feature Request | Allow set filter to ignore `valueFormatter()` |
| AG-588 | Feature Request | Add tooltip to Set Filter List |

### 23.0.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4040 | Defect | [Frameworks] Decorator Metadata not present for Angular7 Applications |
| AG-4020 | Defect | [React] Duplicate cell contents when using framework components in IE11 |

### 23.0.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4010 | Defect | Update integrated chart examples to set the document.body as the popupParent |
| AG-3969 | Defect | DOCS: Angular Material example not working in Plunker |

### 23.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-4563 | Feature Request | [Column Groups] Allow preventing columns from being moved out of their column group |
| AG-4194 | Defect | Enterprise results in different layout behaviour when using flex (compared to community) |
| AG-4129 | Defect | [Regression] When using custom editors increment/decrement arrows buttons are not rendered |
| AG-4115 | Defect | Infinite loop triggered when using setFilterValues on set filter with an onFilterChanged event listener |
| AG-4114 | Defect | Setting filter model for set filter causes asynchronous values to be loaded twice |
| AG-4099 | Defect | [Regression] When suppressColumnToolPanel=true, you can toggle hidden columns from the sidebar |
| AG-4098 | Defect | Pasting a data URI into the grid slows the grid down for a few seconds |
| AG-4048 | Defect | Horizontal scrollbar missing when scrolling full-width row grouping with pinned columns |
| AG-3973 | Feature Request | "Investigate memory related performance issue when update data with React and Redux" |
| AG-3942 | Defect | using stylesheet to add height + width to grid container makes grid disappear when context menu is opened |
| AG-3938 | Defect | [Regression] Incorrect classes being used for overlays |
| AG-3930 | Defect | Internationalisation - Add Column Tool Bar '(None)' label to localeText |
| AG-3910 | Defect | Floating filter getting out of sync with the main filter |
| AG-3909 | Defect | Using DeltaRowDataMode, the filter doesn't get applied when the store is set to empty |
| AG-3903 | Defect | SSRM + autoHeight + pagination - prevent the grid height from shrinking while fetching rows |
| AG-3900 | Defect | filter + applyButton requires enter key before the button works |
| AG-3892 | Feature Request | Include Downloader in ag-grid-community exports |
| AG-3891 | Feature Request | Include PropertyKeys in ag-grid-community exports |
| AG-3869 | Feature Request | [Column Filters] Prevent UI changes being lost from set filter when data in grid changes |
| AG-3837 | Feature Request | Perform filtering in the Columns Tool Panel when columns are changed |
| AG-3829 | Defect | CSS bundle size increase from v21 to v22 |
| AG-3765 | Defect | Dev Regression - incorrect padding in Columns Tool Panel |
| AG-3764 | Defect | Dev Regression - incorrect padding on SSRM loading spinner |
| AG-3742 | Feature Request | [Row Grouping][Master/Detail] Allow suppressing expand/collapse of group/master rows when double clicked |
| AG-3717 | Defect | [Regression] Pasting with row selection clears first cell of next row from v22.1.0 |
| AG-3707 | Defect | rangeSelectionChanged event.finished / started flags are not as expected |
| AG-3703 | Defect | [Regression] Pasting empty strings ('') from clipboard will edit two grid cells |
| AG-3683 | Feature Request | SPIKE: Run a React app within docs |
| AG-3681 | Defect | SetFilter not exported |
| AG-3595 | Feature Request | React - Data Change Can Result In Flicker |
| AG-3592 | Defect | [Regression] preventDefaultOnContextMenu + suppressContextMenu prevent cell selection |
| AG-3564 | Defect | Internationalisation - Add Columns Tool Panel Column Filter to localeText |
| AG-3410 | Defect | React - Data Change Can Result In Flicker |
| AG-3361 | Defect | When using complex values in agRichSelectCellEditor, opening the editor and pressing a key doesn't focus the item matching the key pressed |
| AG-3239 | Defect | innerRenderers for GroupCellRenderers are not automatically refreshed if any of their child data is updated (Handy if innerRenderer is used for instance to show count of child rows…) |
| AG-3127 | Defect | [SSRM] getDisplayedRowCount returns one more row than what it should while it has not reached the end of data to be streamed |
| AG-2956 | Feature Request | When using suppressDragLeaveHidesColumns and dragging a column outside the viewport, don't show the hide icon on the ghost as it is missleading |
| AG-2910 | Defect | Error when clicking onto a row with pressed shift key for server-side row model |
| AG-2906 | Defect | Submenus should hide with a small delay |
| AG-2832 | Feature Request | New Theme Alpine |
| AG-2785 | Feature Request | Allow customizing the timeout times to show/hide the tooltip |
| AG-2767 | Defect | Highlight Dragging with TreeData breaks when dragging a folder into another folder |
| AG-2659 | Defect | If cache block size is larger than the number of rows added to the DOM, or grid size is less than cacheBlockSize, calling setRowHeight has unexpected effects |
| AG-2472 | Feature Request | [Accessibility] Allow keyboard navigation in column menu and focus column menu when opened |
| AG-2336 | Feature Request | Add option to clear filter from grid immediately when Clear button is clicked |
| AG-2309 | Feature Request | Notify user if they set values in the set filter as numbers instead of strings as this will cause issues in the grid |
| AG-2261 | Feature Request | Allow configuring the text associated to the label on rowDrag |
| AG-2212 | Feature Request | [Column Headers] Allow column header to be narrower when hiding the column menu button (suppressMenu: true) |
| AG-2183 | Feature Request | Allow configuring which filter operations are shown in the text, number and date filters |
| AG-2173 | Defect | [Column Filters] IE11 Date range does not work |
| AG-2172 | Defect | Set Filter - sync filter values for the column after data updates |
| AG-2025 | Feature Request | [Accessibility] Add keyboard navigation to context menu items and focus context menu when opened |
| AG-1925 | Defect | Column headers - console.log("kipping sort cos of moving " message to be removed |
| AG-1790 | Defect | Mini-filter compares against keys in set filter values rather than displayed values |
| AG-1782 | Defect | Filter - add internationalisation for In Range filter |
| AG-1781 | Feature Request | Allow quick filter to use result of textFormatter from filterParams |
| AG-1754 | Defect | Rendering - tooltip/dropdown renderer elements showing behind the grid |
| AG-1386 | Feature Request | [Range Selection] Allow using SHIFT + Arrow keys to change range selection |
| AG-1334 | Defect | TAB key doesn't follow the correct order when tabbing in and out of floating filters |
| AG-1138 | Feature Request | Grouping by drag and drop, and grouping by column menu have different behaviour. Make them consistent |
| AG-975 | Feature Request | [Row Pinning] Display horizontal scrollbar below pinned rows |
| AG-540 | Defect | [floating filter] We register two times to the onFilterChanged so we get double calls onParentModelChanged |

### 22.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3612 | Defect | Pasting cells beyond grid size raises error |
| AG-3602 | Feature Request | React - add documentation on returning null in renderers |
| AG-3600 | Defect | React - memoized functions don't render |
| AG-3599 | Feature Request | Add 'Reset Filter' button to provided filters which clear filter UI and removes active filter |
| AG-3578 | Defect | Remove warning message when using Select / Collapse All in the columns tool panel |
| AG-3575 | Defect | When pinning a row and Ctrl + A copying to clipboard, only first pinned row is pasted |
| AG-3441 | Defect | Dragging with Tree Data example bug, when dragging a group node inside another group the chevron loses its state |
| AG-3395 | Defect | [DOCS - Changelog] Items flag as Done / Rejected appear as Done / Solved |
| AG-3387 | Defect | DOCS: TypeScript error in Angular getting started docs @ViewChild('agGrid') missing an argument |
| AG-3278 | Defect | ag-grid vue example produces error when running test using Jest |
| AG-3045 | Feature Request | [Excel export] Allow specifying the width of a column when exporting to Excel |
| AG-2566 | Feature Request | Allow setting the last column width to span the entire remaining grid width |
| AG-2552 | Feature Request | React - Add support for higher order components in react for styling |
| AG-2516 | Feature Request | Columns - Allow autosize methods to not take column header width into consideration |
| AG-2459 | Defect | Allow internationalisation of the text used in the status bar (rows, of, selected...) |
| AG-2378 | Feature Request | [SSRM] Allow purging the cache only for the data block that's currently in view |
| AG-2304 | Feature Request | [Fill Handle] Allow dragging the bottom right corner of a cell to allow Excel-like copy functionality |
| AG-2224 | Feature Request | [SSRM] Allow purging the cache only for the current page while paginating |
| AG-1630 | Feature Request | Add Excel-like Fill Handle |
| AG-1486 | Feature Request | Allow configuring row groups/cells when exporting to excel/csv |
| AG-1038 | Feature Request | Support tooltips in group columns |
| AG-332 | Feature Request | Allow exporting Master Detail to Excel |

### 22.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3615 | Feature Request | [Row Grouping] Allow running the group sort comparator following a change in filter conditions |
| AG-3613 | Feature Request | [Scrolling] Allow changing the minimum height of the grid (to accommodate for domLayout=”autoHeight” and grid with 1 row) |
| AG-3380 | Feature Request | Add Tree Search to Columns Tool Panel |
| AG-3347 | Feature Request | sync filters tool panel with grid when columns are moved |
| AG-3345 | Feature Request | sync columns tool panel with grid when columns are moved |
| AG-3313 | Defect | ag-theme fresh/dark/blue/bootstrap set filter values are overlapping |
| AG-3295 | Defect | 'Select All' option in Set Filter is misaligned in ag-theme-fresh, ag-theme-dark, ag-theme-blue, and ag-theme-bootstrap |
| AG-3246 | Defect | setFilterModel onGridReady + data is received later async + deltaRowMode: the filter associated with the setFilterModel does not work properly anymore |
| AG-2927 | Defect | Tooltip on screen + Ctrl Left / Right Arrow: Tooltip position in wrong |
| AG-2914 | Feature Request | DOCS - Add docs around react hooks with editors. |
| AG-2905 | Defect | Custom filter components are remounting and losing their state with reactNext |
| AG-2867 | Feature Request | Remove flickering of the sidebar when configured to be hidden by default |
| AG-2764 | Feature Request | Columns toolpanel - Allow preventing dragging columns from the columns tool panel into the grid |
| AG-2743 | Defect | When using reactNext editor loses current input while editing if scrolling it out of the viewport and back again |
| AG-2466 | Feature Request | Column headers - Allow sizecolumnstofit to take into consideration the sidebar |
| AG-2386 | Defect | [SSRM] On sortChanged does not get triggered when using the SSRM |
| AG-2240 | Feature Request | Allow to hide/show the sections of the columns tool panel after it has been loaded |
| AG-2152 | Defect | Shift + Key Down + Loading new block on SSRM: Places the focus on the first cell |
| AG-2132 | Defect | [SSRM] Group level values are shown by default with the SSRM |
| AG-2019 | Defect | Hiding all columns via Tool Panel is significantly slower than via setColumnVisible |
| AG-2015 | Defect | [Context Menu] Separators missing in Firefox and IE 11 |
| AG-2003 | Feature Request | Allow user to control which columns will show in tool panel |
| AG-1991 | Feature Request | Allow filters and columns tool panel to have API calls to expand/collapse column groups/filters |
| AG-1976 | Feature Request | [Accessibility] Add attributes aria-rowcount to grid and aria-rowindex to rows |
| AG-1862 | Feature Request | Allow custom column layouts in the Columns Tool Panel |
| AG-1329 | Feature Request | Modularise Grid Features to reduce grid bundle size |

### 21.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3209 | Defect | Styling - Row Group and Values labels are misaligned |
| AG-3190 | Defect | Docs - Fix wrong statement around editing and the key down, it does not stop editing anymore |
| AG-3163 | Defect | Unable to override $virtual-item-height to set the height in the set filter. |
| AG-3162 | Defect | ag-theme-blue sass var $input-disabled-background-color is missing !default flag |
| AG-3143 | Defect | Changing column visibility in a Cell Ranges does not update status panel |
| AG-3105 | Defect | Custom filter option + hideFilterInput: true + Floating filters + User selects this option as the active filter in the UI, the floating filter input box should be read only |
| AG-3097 | Defect | Set filter + select value API call + onFilterChanged, does not cause the filter to change/update |
| AG-3073 | Defect | api.getCellRendererInstances returns an object which ‘value’ does not match the rendered data for pinned rows |
| AG-3038 | Defect | Reset Columns doesn't take "lockPosition: true" into account |
| AG-3000 | Defect | When combining columnGroupShow, in some cases, when expanding the column group, the columns meant to be shown are not shown |
| AG-2991 | Defect | When loading a grid in pivot mode, even with enableRangeSelection: true, CTRL+A does not select all rows |
| AG-2900 | Defect | processHeaderForClipboard not firing when a single cell is selected when copying with headers |
| AG-2876 | Defect | Inconsistent count of records shown in the status bar after filtering |
| AG-2808 | Defect | Docs, clarify suppressMiddleClickScrolls |
| AG-2762 | Feature Request | Pagination - prevent separating children from their parent rows with Master Detail and Row Grouping |
| AG-2736 | Defect | Accessibility - Enhance support for Screen Readers with additional ARIA Roles |
| AG-2707 | Feature Request | [Row selection] Allow for bulk row selection to select many rows and to fire the onSelectionChanged event just once at the end |
| AG-2478 | Feature Request | allow aria-rowindex to always have the correct row index |
| AG-2451 | Defect | Remove code injection potential issues caused by templateUrl |
| AG-1643 | Feature Request | RichSelect - Allow typing to automatically scroll to item |

### 21.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3207 | Defect | XSS: When using the agGroupCellRenderer cell renderer + passing data that has parsed HTML, is possible to inject code that will run on the client |
| AG-3145 | Defect | Row Grouping fails when there are custom tooltips with null cell values |
| AG-3119 | Defect | React div container not available when using reactNext |
| AG-3112 | Defect | fast mount/unmount with reactNext throws error |
| AG-3111 | Defect | ReactNext doesn't work when used with custom headers |
| AG-3108 | Defect | Full-width renderer + custom inner renderer + input box. When the user presses enter in the input box, the grid throws an exception |
| AG-3107 | Defect | headerGroupTooltip is not working anymore |
| AG-3106 | Defect | GridOptions reference page is missing the documentation for columnTypes |
| AG-3104 | Defect | Floating filter shows unformatted values as opposed to the column menu filter |
| AG-3087 | Defect | RowNodeTransaction interface misnamed in documentation |
| AG-3086 | Defect | [Regression] colDef.suppressKeyboardEvent does not get called when pressing arrows in 21.x it did for 20.2 |
| AG-3068 | Defect | cellRenderer + autoHeight not working in the latest version |
| AG-3030 | Defect | Floating filter is not populated when the Apply Filter button is clicked |
| AG-3027 | Defect | Fix Polymer Examples |
| AG-3016 | Defect | Tree Data node contains a '&' this node shows up encoded as '&' |
| AG-2997 | Defect | Docs - Pagination example is printing the wrong IDs (is adding +1 to a string) |
| AG-2996 | Defect | Pagination and row drag unmanaged are not supported, it should only fail for managed |
| AG-2995 | Defect | [Docs] Remove grid option enableGroupEdit from the docs API page |
| AG-2994 | Defect | Lock pinning not working anymore |
| AG-2993 | Defect | Not possible to translate the Total label through an internationalistaion key in a group row node |
| AG-2929 | Defect | Column header groups don’t use custom tooltips, they show plain tooltips |
| AG-2898 | Defect | DOCS- Misleading documentation around isAnimationFrameQueueEmpty |
| AG-2873 | Defect | Docs - Fix typo cliked => clicked in filter text docs |
| AG-2789 | Defect | Column name text is clipped in filter tool panel. |
| AG-2193 | Defect | Memory leak when destroying/recreating grids |
| AG-1708 | Feature Request | [Row Dragging] Allow dragging between grids or between the grid and an external element |

### 21.0.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3013 | Defect | Scrolling quickly with reactNext causes runtime exception to be thrown |
| AG-2839 | Defect | AngularJS - rowNode not available when angularCompileRows set |
| AG-2827 | Defect | [Regression] Navigating to a cell that isn't rendered (scrolled after focus) throws an error |
| AG-2799 | Defect | Extra indentation included when selection-checkbox is hidden |
| AG-2797 | Defect | Group Headers - dragging group columns only works from titles |

### 21.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2977 | Defect | Tooltips, after sorting, tooltips don’t match the data on the screen |
| AG-2957 | Defect | Tab doesn't work when combined with colSpan |
| AG-2930 | Defect | When using Full width group rows + group footer the total row does not show the count of totals |
| AG-2926 | Defect | Viewport row model - Last request for setViewportRange index is off by 1 |
| AG-2922 | Defect | groupIncludeTotalFooter: true causes an error to be thrown when combined with pivot mode. |
| AG-2921 | Defect | When pinning right + reducing to minimum column width or cell content aligned to the right. Column label leaks out of the boundaries of the column |
| AG-2915 | Defect | Docs - Add filterParams to the column properties docs |
| AG-2911 | Defect | Export - Special characters not supported in excel export |
| AG-2902 | Defect | Column can’t be removed by dragging it outside the viewport after the grid has been scrolled to the bottom |
| AG-2897 | Feature Request | Rework icon theming design, so it will be easy to change the color of the icons with css/sass |
| AG-2893 | Defect | Docs - Master detail examples throw error when pressing a key in the detail form - (Custom Detail Cell Renderer with a Form) |
| AG-2892 | Defect | When using autoHeight the range selection is limited to the columns in the viewport, the horizontal scroll doesn't move. |
| AG-2891 | Defect | Docs - Spark guide doesn’t run following the build steps in the github |
| AG-2890 | Defect | Full row grouping causes pivoting to stop working correctly |
| AG-2885 | Defect | Grouping - combining of groupHideOpenParents, groupIncludeFooter and groupIncludeFooter together prevents horizontal scroll |
| AG-2880 | Defect | Docs - Unable to load examples with plunker using ag-grid-vue 20.2.0 |
| AG-2879 | Feature Request | Investigate performance issues when using delta row mode and emptying/removing large amounts of data in the grid |
| AG-2877 | Defect | IE11 Floating date filter in IE11 not working |
| AG-2872 | Defect | Docs - Add missing filter options to the date filter |
| AG-2864 | Defect | On Edge - Select a cell navigating with the keyboard + Select a different cell selecting it with the mouse + Press Enter. The wrong cell gets in edit mode |
| AG-2862 | Defect | Full width row grouping, when trying to navigate across group nodes from leaf node, the navigation becomes locked |
| AG-2861 | Defect | When using pagination and focusing on the last cell, pressing down causes an error "Cannot read property 'getGridCell' of null". |
| AG-2846 | Defect | Add onToolPanelVisibleChanged to the interface |
| AG-2844 | Defect | Docs - Fix statement "Changing the row height is only supported in the Client-side row model." On row height section |
| AG-2828 | Defect | DOCS - Variable names mixup in column definitions example day month and year should be year, month and day |
| AG-2826 | Defect | internationalization: There are no internationalization keys to translate the default pagination toolbar |
| AG-2825 | Defect | Server side row model - suppressLoadingOverlay not working with SSRM |
| AG-2813 | Defect | enableGroupEdit doesn't work |
| AG-2809 | Defect | Docs - clarify how colDs are generated, they are not kept unique based on the field. You need to specify if expecting to update them |
| AG-2804 | Feature Request | Scroll Performance Improvements |
| AG-2802 | Defect | groupIncludeTotalFooter + groupIncludeTotalFooter throws an error |
| AG-2792 | Defect | auto-height + angular Js not working after v20.0 |
| AG-2791 | Defect | Error binding click events to AngularJs + MasterDetail |
| AG-2753 | Defect | Floating Date Filter - many FW components created, resulting in incorrect filtering |
| AG-2749 | Defect | Floating Date Filter Throws Exception with reactNext |
| AG-2663 | Feature Request | Framework semantic column definitions: Allow them to be reactive |
| AG-2641 | Feature Request | Angular - Allow support for noUnusedLocals |
| AG-2465 | Feature Request | Minimize the amount of change detection events fired using Angular2 |
| AG-2202 | Defect | React - Grid functionalities misbehaving when opening a grid in new window |
| AG-2042 | Feature Request | Create an event which fires when pivot is (de)activated |
| AG-2040 | Defect | Events - ColumnPivotModeChangedEvent never fires |
| AG-2033 | Feature Request | [Column Menu] Allow overriding column menu width |
| AG-1601 | Feature Request | Allow pasting in not editable cells |
| AG-1489 | Feature Request | Make selected rows a reactive property |
| AG-655 | Defect | [Column Menu] Right-click on column menu dismisses it |
| AG-441 | Feature Request | Add support for Passive Event Listeners in order to avoid browser warning messages |

### 20.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2772 | Defect | Docs - change ros to rows in the grip properties page |
| AG-2763 | Defect | Docs: Fix typo in filter docs page options => options |
| AG-2746 | Defect | Add translations for the default status bar component |
| AG-2741 | Defect | Functional components don't work with reactNext |
| AG-2735 | Defect | suppressKeyboardEvent in colDefs not working as expected when used with a popup |
| AG-2734 | Defect | groupHideOpenParents + groupIncludeFooter + groupIncludeTotalFooter cuses an error |
| AG-2732 | Feature Request | AngularJs, on rowClicked, params.data has a property value appended to it. |
| AG-2726 | Defect | Add typing for CellComp.getFrameworkComponentInstance() |
| AG-2724 | Defect | Docs - getting started guide shows grouping section showssidebar button (pre 20) |
| AG-2718 | Defect | Docs - Reference column properties doesn't have cellClassRules in the list |
| AG-2716 | Defect | Filters - Add translations for AND/OR in the filters |
| AG-2715 | Defect | Filters - Condition Filter not cleared properly when Main filter is cleared |
| AG-2714 | Defect | Docs - Fix typos in filter date page |
| AG-2711 | Defect | groupHideOpenParents is not working as expected in 20.1.0 |
| AG-2708 | Defect | Error transpiling the dependency for getSuppressKeyboardEventFunc (includes inlined import) |
| AG-2702 | Defect | Docs fix example typo for showRowGroup |
| AG-2697 | Defect | Side Bar - changing setSideBar ('columns') + setSideBar (false) does not hide the sideBar |
| AG-2696 | Defect | [Docs] Update context menu docs - getContextMenuItems should be getMainMenuItems |
| AG-2695 | Defect | cellKeyDown and cellKeyPress throw exception in Firefox |
| AG-2693 | Defect | Typescript error in 20.1.0 when using typescript > 3.x |
| AG-2691 | Defect | Selection - suppressMultiRangeSelection=true does not work when combined with click selection |
| AG-2682 | Defect | Excel Export with customHeader only works if at least two columns are exported |
| AG-2680 | Defect | Status bar - content overflows out when is bigger than the container |
| AG-2679 | Defect | Export - Special characters in the sheet name/header name causes corrupted xlsx while exporting |
| AG-2677 | Defect | IE11 when no rows overlay is shown and the filter is opened the layout is misplaced |
| AG-2656 | Feature Request | Allow equality checking for rowData to be configurable (ie use equality checking, deep checking and so on) |
| AG-2647 | Defect | Android tab does not move the edit focus to the next cell |
| AG-2646 | Defect | Hidden columns are used to calculate height when using autoHeight |
| AG-2638 | Defect | Docs - When combining vertical headers and filter sidebar the filter sidebar is displayed incorrectly |
| AG-2632 | Defect | IE11 menu buttons misaligned |
| AG-2630 | Defect | IE11+Windows 7: out of the box calendar filter does not show upon clicking on it |
| AG-2610 | Defect | Rendering - table loses focus after key scrolling beyond viewport |
| AG-2588 | Defect | Rendering - Issue with flex 1 requiring height 0 |
| AG-2562 | Feature Request | Tree data - Allow tree data filters to be displayed and filter like a tree |
| AG-2544 | Feature Request | API - adjust optional types to represent if they are passed as opposed as if they are mandatory when overwritten |
| AG-2452 | Defect | Custom FW Date Component in Float Filter creates multiple instances |
| AG-2419 | Defect | Docs - Angular version of the examples not working in IE11 |
| AG-2165 | Defect | React CellRendererFramework Component is hidden when using checkboxSelection |
| AG-2143 | Feature Request | Add new property to load the grid with the sidebar hidden |
| AG-2121 | Feature Request | Column Groups - Allow column-spanning across row header groups when they belong to the same column group |
| AG-2104 | Feature Request | Filters - Add the ability to Internationalise the "AND" and "OR" words of the filter |
| AG-2045 | Defect | Keyboard navigation - Cannot navigate to/from spanned columns in multiple directions |
| AG-1936 | Feature Request | Add the ability to change the header checkbox and the drag handle icons |
| AG-1707 | Feature Request | Change Tree Data filtering to additionally include child nodes when parent node passes filter |
| AG-1520 | Defect | React wrapper causes styling issues for components |
| AG-1230 | Feature Request | Allow nullCheck in the filter to have the option for nonEquals and the remainder ones... |
| AG-1192 | Feature Request | Add indicator of pinned to columns that are pinned (Ideally configurable icon) |
| AG-1069 | Feature Request | Set Filter - Allow hierarchical selection for tree data |

### 20.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2674 | Defect | frameworkFilter does not enable filter dropdown/icon |
| AG-2667 | Defect | suppressMiddleClickScrolls doesn’t affect the behaviour of the middle click |
| AG-2666 | Feature Request | Allow all the layout of the grid (columnDefs, sorting, filtering), to be centralized so it can be managed together following ACID principles |
| AG-2658 | Defect | SSRM - Server Side Row Model: Null data can’t be selected in the set filter model by itself |
| AG-2653 | Feature Request | Put React Hook example together, update docs |
| AG-2650 | Defect | Themes - Material editor associated with agPopupTextCellEditor is not styled accordingly to the Material theme |
| AG-2645 | Defect | Selection - Indeterminate state for mixed selection of rows with group header selection is not working |
| AG-2644 | Defect | Status Bar - When filtering and using the default row count component in the status bar, the row count is not updated |
| AG-2643 | Defect | IE11 - Multi-column sort with shift key pressed caused cells to be selected |
| AG-2642 | Defect | Rendering - When refreshing a custom cell renderer, the `cellRendererParams` are not passed to `refresh`. |
| AG-2636 | Defect | Pinned row - Grid scrolls vertically when range selecting cells within pinnedRows |
| AG-2634 | Defect | [Regression] AngularJS Editor component throws Change detection exception |
| AG-2631 | Defect | IE11 Menu separators not being displayed |
| AG-2628 | Feature Request | Provide capability to suppress keyboard actions from the grid |
| AG-2627 | Defect | syntax error in angular getting started guide |
| AG-2623 | Defect | Getting started guides have wrong css/scss paths |
| AG-2622 | Defect | Setting styles in scss doesn't work if icon path isn't specified |
| AG-2621 | Defect | React + Editing: When shift+tab into a cell editor that is a popup, the editor is opened inline not in a poup |
| AG-2614 | Defect | angularCompileRows does not work with deltaRowDataMode |
| AG-2611 | Defect | ie11 - Enter Key Navigation not working |
| AG-2604 | Defect | Sidebar - suppressColumnExpandAll doesn't work |
| AG-2602 | Defect | Rendering - Renderers are not getting called into afterGuiAttached |
| AG-2601 | Defect | ie11 - Clicking the left or right arrows, OR clicking on the empty space on the scroll bar does not scroll ag-grid. |
| AG-2597 | Feature Request | Allow editable cells to be refreshed via API. ie a cell in edit mode to be refreshed so that it exits edit mode on the back of the editable callback being reevaluated |
| AG-2592 | Defect | Sidebar - Special Characters are being converted into an HTML code in filter section of the side panel |
| AG-2591 | Defect | SSRM - Server side row mode fails if returning no data: params.successCallback([], 0); |
| AG-2590 | Defect | Angular JS - Master/Detail Checkbox Selection selects all rows |
| AG-2589 | Defect | React - Warning appears when unmounting AgGridReact with cell renderer |
| AG-2583 | Defect | ie11 domLayout autoHeight is not working |
| AG-2582 | Defect | Export - Special characters not supported in excel export |
| AG-2580 | Defect | Tree Data - Missing 'ag-row-group-expanded' and 'ag-row-group' with tree data |
| AG-2578 | Defect | Master/detail - Click events propagate from the detail grid to the master grid using AngularJs |
| AG-2577 | Defect | Themes - Update material repo so that date picker works using ag-custom-component-popup |
| AG-2573 | Defect | Editing - Cannot stop enter from propagating in a popup editor |
| AG-2572 | Defect | Floating Filters - Floating Filter broken if filterMenuTab not included in menuTabs |
| AG-2570 | Defect | SSRM - Delete unused code that performs division by 0 |
| AG-2567 | Defect | Set Filter model cannot be set with (Blanks), via API - the grid ignores it |
| AG-2563 | Defect | Aligned Grids - suppressHorizontalScroll doesn't work with different data sources for each grid |
| AG-2561 | Defect | Context Menu - Allow for the context menu to appear when clicking on an empty area of the grid |
| AG-2560 | Defect | Sidebar - refreshToolPanel doesn't refresh tool panel |
| AG-2556 | Defect | Master/Detail - Dropdown button in detail row is hidden |
| AG-2543 | Defect | Themes - Material theme ag-menu does not display box-shadow |
| AG-2541 | Defect | Rendering - Fix slight misalignment of nodes in tree data when one has children and the other doesn't |
| AG-2535 | Defect | Selection - Copy range down in not working since v20 (Ctrl-D) |
| AG-2527 | Feature Request | Refresh of functional/stateless react components |
| AG-2508 | Defect | Columns - When changing dynamically from row group on to row group off, the columns marked as rowGroup: true and hide:true, are shown, they should be hidden |
| AG-2496 | Defect | IE11 - Selecting multiple checkboxes while holding shift selects all text |
| AG-2479 | Defect | Docs - Remove clipboard paragraph that refers to events like if they were callbacks |
| AG-2477 | Defect | api.purgeServerSideCache() is not mentioned under Reference > Grid API |
| AG-2476 | Defect | React - clipboard example doesn't log clipboard events |
| AG-2468 | Defect | Filters - If passing values to params.success synchronously the grid fails to render the filter |
| AG-2464 | Defect | Editing - When tabbing into a cell, uses old values if the value has just been updated |
| AG-2463 | Defect | Columns - Hidden columns used in column groups are shown if the parent column group is selected in the column menu |
| AG-2426 | Defect | Filters - In range filter: Specifying 0 causes all rows to be filtered out |
| AG-2379 | Defect | Angular - Issues with Server Side Model Infinite Scrolling on production server |
| AG-2369 | Defect | Stateless react components don't work with delta row data |
| AG-2334 | Defect | docs - Controlling keyboard while editing broken for all FW/s |
| AG-2205 | Defect | Editing - problem editing when using deltaRowMode and reactive data source |
| AG-2194 | Defect | Row Dragging - Mouse cursor display, is inconsistent during drag actions |
| AG-2185 | Feature Request | New Server-side Row Model guide for Node.js with MySql |
| AG-2180 | Defect | React. Custom header not detecting touch events [likely because of synthetic events] |
| AG-2166 | Feature Request | Allow for defining Custom Filters that appear in Filter Option List |
| AG-2125 | Defect | Rendering - Handle new line character in a consistent fashion |
| AG-2110 | Defect | Status Bar - The Model is not loaded fully before initialising a Custom Status Bar Component |
| AG-2106 | Defect | Angularjs - templated cells don't update when setting new row data |
| AG-2066 | Feature Request | Create an opt out of the native ResizeObserver |
| AG-2028 | Defect | Fix issue with infinite looping and ResizeObserver |
| AG-1972 | Defect | Performance improvements for small changes to large datasets |
| AG-1791 | Defect | Column Header- The smallest lateral motion results in column shuffle |
| AG-1617 | Feature Request | Allow for Custom Tooltip Components |
| AG-1485 | Feature Request | Raise events for cellKeyPress and cellKeyDown |
| AG-1475 | Feature Request | Allow searching for blanks not blanks while filtering |
| AG-1049 | Feature Request | Allow for Custom Loading Component |
| AG-1046 | Feature Request | [Context Menu] Allow opening context menu from an empty area of the grid |

### 20.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2481 | Defect | Chrome 71 is not detected in ag-grid as Chrome |
| AG-2448 | Feature Request | Add declarative support to vue component (column defs) |
| AG-2447 | Feature Request | A v-model support to vue component |
| AG-2441 | Feature Request | Skip props check of rowData when using deltaRowMode in react |
| AG-2439 | Feature Request | Add support for react-redux v6 |
| AG-2438 | Defect | website - sortingOrder is not included in Column Properties documentation |
| AG-2418 | Defect | Docs - Add more documentation around how to create a valid template in master/detail |
| AG-2417 | Defect | Issue with React 6: withRef is removed. To access the wrapped instance, use a ref on the connected component |
| AG-2413 | Defect | XML Export, not possible to integrate with ExcelSheet + Reintroduce example in the latest docs |
| AG-2412 | Defect | Docs - Example full row editing rich select editor values are incomplete |
| AG-2410 | Defect | Columns - Ellipsis strange behavior when column is resized |
| AG-2406 | Feature Request | Add ability to inject vue component dependencies |
| AG-2405 | Feature Request | Convert ag-grid-vue to Typescript |
| AG-2404 | Feature Request | Add i18n support and example repo |
| AG-2403 | Feature Request | Add UMD support and example repo |
| AG-2402 | Feature Request | Add Router support and example repo |
| AG-2401 | Feature Request | Add Vuex support and example repo |
| AG-2387 | Defect | Status Bar - The min value in the status bar doesn't work. |
| AG-2350 | Defect | Status Bar Aggregation, Selected Rows and Total Rows Components don't work in SSRM |
| AG-2280 | Feature Request | Allow event handler in Vue too support more idiomatic conventions v-on:cellClicked=“onCellClicked“ or @cellClicked=“onCellClicked“ |
| AG-2279 | Feature Request | Investigate possible memory leak/inefficiency using Vue |
| AG-2272 | Feature Request | Improve Vue Dev Experience |
| AG-2250 | Defect | Keyboard Control While Editing Example - broken for frameworks |
| AG-2248 | Defect | Custom Keyboard Navigation Example broken for frameworks |
| AG-2247 | Defect | Accessing Data Example throwing errors |
| AG-2246 | Defect | Custom Controls React Example Broken |
| AG-2235 | Feature Request | SASS Themes revamp |
| AG-2209 | Feature Request | Automatically update Vue component params on refresh |
| AG-2181 | Defect | Master/Detail - not rendering custom components for 'detail' table when using angularJs |
| AG-2149 | Defect | Vue component throws warning about mutating props |
| AG-2129 | Defect | Themes- revamp themes docs |
| AG-2114 | Defect | React Components are rendered to the root of the DOM tree |
| AG-2085 | Defect | Column Menu stays open when dragging Column Headers around |
| AG-2072 | Feature Request | Pinned row - Position pinnedBottomRowData above the scrollbar (windows) |
| AG-2070 | Defect | Doc change: Update theme doc links, all SASS variable and clarify the hierarchy of files |
| AG-2031 | Feature Request | Website - Add more vue and other framework examples |
| AG-1974 | Feature Request | Export - Prevent Excel Export XLS Warning |
| AG-1965 | Defect | When a cell value has multiple spaces, they are rendered as a single space |
| AG-1928 | Defect | Themes - Some sass overrides are non functional |
| AG-1891 | Feature Request | Filters - Add a mechanism for keeping the filter menu open |
| AG-1858 | Feature Request | Clipboard - Add a property to allow the default ctrl + c behaviour to include headers |
| AG-1789 | Defect | Column Menu - Remove '[Deprecation] Using unescaped '#' characters in a data...' message |
| AG-1709 | Feature Request | Server-side Row Model - Add support for Master / Detail |
| AG-1641 | Feature Request | Master/Detail - Allow it to work with the Server-side Row Model. |
| AG-1614 | Feature Request | For react prevent object comparison for delta updates since react already does this |
| AG-1579 | Feature Request | Vue.js Investigate and improve grid event binding (especially gridReady) |
| AG-1565 | Feature Request | Add horizontal scroll to pinned section always if not pinned section has scroll (nicer UI) |
| AG-1539 | Defect | Unable to scroll main body if one of the columns is default pinned to the right |
| AG-1502 | Defect | Scroll not working correctly in master-detail, only smooth through the scrollbar |
| AG-1267 | Feature Request | Automatically export all classes and interfaces to main.ts / main.js |
| AG-1211 | Feature Request | IE 11 Performance improvements |
| AG-1117 | Feature Request | Improve integration of datasource for react so it can be set through properties |
| AG-939 | Feature Request | Improve horizontal and vertical scrolling in other browsers |
| AG-775 | Defect | Memory leaks when used in combination with vue-i18n version 5 |
| AG-626 | Defect | [domLayout] Grid option domLayout set to autoHeight causes detail component to be instantiated many times |
| AG-613 | Defect | Master/Detail in Angular can have a flicker/delay in rendering the detail |
| AG-581 | Feature Request | Change scrolling for pinned and master/detail to use native scrolling, not the mimicked version. |

### 19.1.3

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2203 | Defect | popupParent option doesn't correctly position columnMenus/contextMenus/popup editors on small grids |

### 19.1.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2294 | Feature Request | Add support for Vuex in components |
| AG-2269 | Defect | Default popupParent to containing div for Polymer components |
| AG-2249 | Defect | Cell Editing Example - next() button throws an error |

### 19.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2206 | Feature Request | Angular 7 Support |
| AG-2201 | Defect | iOS - suppressMenuHide is ignored |
| AG-2198 | Defect | Columns - column header is not aligned with the rest of the grid when RTL mode is enabled on android |
| AG-2197 | Defect | Cell Styling - cellClass callback retains expired styles when refreshCells is called |
| AG-2195 | Defect | Verbose warnings in console when sorting |
| AG-2192 | Defect | When calling refreshCells API method pinned Row Cell Renderer is re-instantiated instead of refreshed by calling `refresh` method |
| AG-2191 | Defect | Docs + TS typings: Ensure that they typings in ts and the docs document properly the foreach functions. They take node AND index |
| AG-2188 | Defect | Add support for automatically injection of Vue Router for Vue Components |
| AG-2179 | Defect | Filters - TextFilter.doesFilterPass fn doesn't call comparator if value is false |
| AG-2177 | Defect | React Example - allow force refresh (routing breaks) |
| AG-2176 | Defect | Vue Components Not Instantiated With Parent |
| AG-2171 | Defect | Editing - when setting focus on a non visible cell, typing does not start editing automatically |
| AG-2164 | Defect | Website - Add missing keys on the i18n example |
| AG-2163 | Defect | Website - fix docs so that is obvious that getGui is not called once, is called many times |
| AG-2161 | Defect | Range Selection - Clicking inside a selected range does not deselect the range |
| AG-2159 | Defect | Quick filter misses some '0' values |
| AG-2154 | Defect | Floating Date Filter with apply: true and server side row model is applying before enter key is hit |
| AG-2153 | Defect | ag-pivot-(on/off) CSS classes are not applied to header on load, only when pivot is switched |
| AG-2150 | Defect | Firefox - Can't scroll vertically when grid has only pinned columns |
| AG-2147 | Defect | Floating filter for dates becomes read-only even with only one filter condition |
| AG-2146 | Defect | Change 'fullHeight' to 'autoHeight' in the Grid Size docs |
| AG-2145 | Defect | domLayout='autoHeight' adds a vertical scrollbar |
| AG-2141 | Defect | groupRowAggNodes does not work properly with pivoting |
| AG-2140 | Defect | Auto height is not recalculated for the autogroupcolumn |
| AG-2136 | Defect | Fix bug on React numeric cell editor in docs |
| AG-2134 | Defect | Tooltip is not getting displayed for boolean value 'false' and number value '0' |
| AG-2133 | Defect | Deleting floating filter value raises exception when no parent filter present |
| AG-2131 | Defect | Rendering - Add additional condition for browser check in isSafari to revert to false on edge cases (when there is a NPE) |
| AG-2128 | Defect | Pinned rows - Wrong row nodes passed to the isEditable callback when using pinned rows |
| AG-2127 | Defect | Filters - Deselect All Filtered not deselecting on edge cases |
| AG-2126 | Defect | Rendering - Edge browser tooltips not sticking |
| AG-2123 | Defect | cellRendererFramework - params not refreshed with deltaRowDataMode enabled |
| AG-2122 | Defect | Aligned grids - column group open/close event not working on Firefox |
| AG-2119 | Defect | Events - firstDataRendered fires before data is rendered with server side row model |
| AG-2116 | Defect | Column Menu - Positioning is broken with master/detail and auto height |
| AG-2115 | Defect | headerComponentParams template with line breaks followed by spaces ('\n ') causes TypeError |
| AG-2109 | Defect | Status Bar - getStatusPanel is documented as getStatusBarComponent in Grid Api |
| AG-2108 | Defect | Rendering IE11 - multiple rows with shift key selects window too |
| AG-2102 | Feature Request | Typescript - Improve typescript typings |
| AG-2098 | Defect | Server-side Row Model - Pagination with Dynamic Row Heights stops fetching rows |
| AG-2097 | Defect | Viewport Row Model - empty result now has viewport range 0 to -1 (not 0 to 0 which means 1 row) |
| AG-2092 | Defect | Frameworks - typeScript agInit should not be required for React custom cell renderers |
| AG-2089 | Defect | Inconsistent behaviour when pasting special characters into a cell |
| AG-2088 | Defect | Column Pinning - Columns not rendered when used in tabs |
| AG-2087 | Defect | Filter panel text is illegible in ag-theme-blue |
| AG-2086 | Defect | Row borders disappear when using browser zoom (firefox) |
| AG-2081 | Defect | autoHeight is not picked up from autoGroupColumnDef |
| AG-2080 | Defect | firstDataRendered event not available through Typescript definitions |
| AG-2073 | Defect | IToolPanelParams differs from the documentation |
| AG-2063 | Defect | Keyboard - non-printable characters in charPress |
| AG-2059 | Defect | Website - Warning following vue getting started |
| AG-2052 | Defect | domLayout autoHeight causes opening large row groups to lag |
| AG-2051 | Defect | domLayout autoHeight with row grouping is adding an extra scrollbar, jamming the main scroll |
| AG-2048 | Defect | Master Detail - Expanded Detail row is being treated as a selectable row |
| AG-2047 | Defect | Column Pinning - Both the pinned column and main grid show scrollbars |
| AG-2044 | Defect | Website - vue-getting-started - example has typo error |
| AG-2041 | Defect | Read only Floating Filter does not work with filterFramework |
| AG-2038 | Defect | Odd behaviour when pinning columns to the right and then resizing the viewport to a narrow space |
| AG-2036 | Defect | Master/Detail - 100% Width generates a line at the bottom of the detail grid. |
| AG-2034 | Defect | Editing example uses incorrect column id |
| AG-2029 | Defect | groupRemoveSingleChildren is ignored by excel export |
| AG-1997 | Defect | Excel export is not compatible with Numbers application (Mac OS) |
| AG-1892 | Feature Request | Add error message to be displayed when non-unique row IDs are returned by getRowNodeId callback |
| AG-1861 | Feature Request | Add event for expandAll/collapseAll |
| AG-1845 | Defect | When pasting from ag-grid into excel (mac + latest excel), it pastes an additional blank line at the bottom |
| AG-1823 | Defect | Excel export issue with older versions of excel |
| AG-1747 | Feature Request | performance for 10k + columns |
| AG-1591 | Feature Request | Allow delta changes to columns |
| AG-1293 | Feature Request | Server-side Operations with GraphQL Guide |
| AG-822 | Defect | Polymer doesn't support Edge |

### 19.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2758 | Feature Request | Sidebar - Columns toolpanel - Allow enabling/disabling if a column can be made visible/invisible through the columns toolpanel |
| AG-2030 | Defect | Can not deselect headerCheckboxSelection rows when filtered |
| AG-2027 | Defect | IE11 Filter component closes after interaction with third party picker components (ng-bootstrap, ng-select) |
| AG-2026 | Defect | cellRendererFramework in autoGroupColumnDef throws an error, as agGroupCellRenderer is used by default |
| AG-2023 | Defect | linting / usage issue |
| AG-2021 | Feature Request | Introduce event to facilitate reliable hook for autosize of columns on async data |
| AG-2020 | Defect | Safari Floating Filter line height hides text |
| AG-2014 | Defect | fullWidthCellRenderer does not get reinitialised when data is updated, if deltaRowDataMode is on |
| AG-2011 | Defect | Column Menu - Show only one scrollbar when there isn't enough space. |
| AG-2010 | Defect | Filters - case-insensitive column filter down 'cases' entered text |
| AG-2007 | Defect | Pinning - RTL causes disorder with column headers (Safari) |
| AG-2005 | Defect | When using filterOptions inRange only, on agDateColumnFilter, an error is thrown |
| AG-1999 | Defect | Accessing detailGridInfo for a non-rendered (out of view) detail grid does not work |
| AG-1996 | Defect | Excel export with allColumns parameter is not working with pivot mode |
| AG-1995 | Defect | Fix issue causing non Chrome browsers to crash when using ag-grid 18 + angular 6 + ngBottstrap |
| AG-1994 | Defect | iPad iOS 10.3 is not displaying rows |
| AG-1993 | Defect | Columns - sizeColumnsToFit doesn't shrink column width for columns with long names |
| AG-1990 | Defect | Scrolling over a Row Group can offset the rendering of rows |
| AG-1988 | Defect | isRowMaster callback is not being propagated when row data is updated |
| AG-1987 | Defect | Exporting empty pivot headers shows null |
| AG-1985 | Defect | website - IE11 react-datagrid.github.io does not display correctly |
| AG-1984 | Defect | Pinned row - grid will not stop editing the currently editing cell when the grid loses focus |
| AG-1979 | Defect | Master Detail will break at doLayout when scrolling quickly |
| AG-1978 | Defect | Server-side Row Model - Editing is lost when row moves out of the viewport |
| AG-1975 | Defect | Columns - ColumnResizedEvent, finished is never set to true at min point |
| AG-1973 | Defect | Master Detail Animation is glitchy when animateRows is on |
| AG-1971 | Defect | Grouping - Clicking on a full-width row with groupSelectsChildren deselects all rows |
| AG-1970 | Defect | styling - toolPanelSuppressSideButtons doubles width of the right border |
| AG-1968 | Defect | Rendering - rowSpan breaks with "autoHeight": true |
| AG-1964 | Defect | Grouping - Cannot restore autoGroupColumn details |
| AG-1958 | Defect | Install - bower install ag-grid-enterprise does not install the latest version |
| AG-1957 | Defect | Set Filter - Filter should remove escape sequences |
| AG-1956 | Defect | Investigate possible call loop in browsers - Application freezes with Angular 6 and ag-grid 18.1.0 |
| AG-1955 | Defect | Column Menu - Long press in ios not opening correctly column menu. It orders the column and sometimes disappears |
| AG-1953 | Defect | ValueGetter and Field not used in autoGroupColumnDef when using Tree Data |
| AG-1952 | Defect | Pivot - setting groupSuppressRow to true no data is displayed in the pivot mode. |
| AG-1949 | Defect | Copy with headers not calling processHeaderForClipboard when copying a single row selection |
| AG-1946 | Defect | Grouping - Group should be shown as fully selected if any of its children are 'invisible' |
| AG-1944 | Defect | agRichSelectCellEditor hover CSS is not working properly in the dropdown when using ag-theme-material |
| AG-1942 | Defect | Error when setting sortModel before server side datasource is set |
| AG-1941 | Defect | CSV Export - Group Headers not being wrapped in double quotes |
| AG-1938 | Defect | groupSuppressRow breaks sorting on group columns |
| AG-1935 | Defect | Add missing properties to Aurelia column definitions |
| AG-1934 | Defect | Fix the memory issue with large amount of cell renderers in vue |
| AG-1932 | Defect | SortModel does not pick up custom column IDs |
| AG-1931 | Defect | Sorting - groupUseEntireRow stops sorting from working |
| AG-1927 | Defect | Columns - lockVisible can be circumvented in either the enterprise column menu or the enterprise tool panel |
| AG-1910 | Defect | Column Resizing with Column Pinning (right side) breaks the display |
| AG-1906 | Defect | Improve AgGridColumnProps typing to be a union, instead of extening both ColDef and ColGroupDef |
| AG-1905 | Defect | Future proof ag-grid-react by removing dependency on unstable_renderSubtreeIntoContainer |
| AG-1895 | Defect | ag-theme-balham-dark loading overlay is illegible |
| AG-1893 | Defect | Server-side Row Model - purgeCache with no results should reload data |
| AG-1881 | Feature Request | Add support for Tree Data |
| AG-1874 | Defect | Website - Pipeline, matching issues returning incorrect number |
| AG-1857 | Defect | Angular Custom floating filter example resets when destroyed |
| AG-1841 | Defect | Clipboard - copySelectedRowsToClipboard - doesn't |
| AG-1785 | Feature Request | Tool panel - Allow creating custom side tool panel components |
| AG-1750 | Defect | Themes - Change CSS on headers so small headers don't lose alignment |
| AG-1742 | Defect | getDataAsExcel issues with leading zeros and string containing only numbers. |
| AG-1727 | Defect | Column Groups are not exported with Tree data |
| AG-1698 | Feature Request | [SSRM] Maintain the group rows open/closed state when purging the enterprise row model |
| AG-1590 | Feature Request | Allow configuring max-width and min-width that applies only for auto resizing |
| AG-1559 | Feature Request | Allow delta updates to column definitions, this should include all CRUD operations |
| AG-1429 | Feature Request | Debounce Server-side Row Model operations - like filter, grouping... |
| AG-1363 | Feature Request | Allow columnApi.resetColumnState to optionally throw events like onColumnRowGroupChanged |
| AG-1266 | Feature Request | Remove theme-material (deprecated) |
| AG-1216 | Feature Request | Allow configuring the state of the auto column group via setColumnState |
| AG-1201 | Feature Request | Allow customising the status bar |
| AG-826 | Defect | params in refresh not refreshed |

### 18.1.2

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1966 | Defect | Ag-grid-angular crashes on Firefox/IE/Edge/safari if ng-bootstrap dropdown is clicked |

### 18.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1889 | Defect | Website - Master/Detail JS Example includes vue renderer code |
| AG-1887 | Defect | agSetColumnFilter with textFormatter creates extra items in the list with formatted text |
| AG-1886 | Defect | Line break between icon and 'Drag here to set row groups' using theme ag-fresh |
| AG-1883 | Defect | Server-side - sorting doesn't always invoke server side |
| AG-1882 | Defect | Reference data + Set Filter: Add flag so reference data is not searchable by value as it was pre v17.0.0 |
| AG-1875 | Defect | Master/Detail - AutoHeight property not working for details grid |
| AG-1872 | Defect | Selection - one operation in the grid should result in one instance of selectionChanged event. |
| AG-1871 | Defect | Pinning - RTL cause disorder between columns |
| AG-1870 | Defect | Aggregation - Grouped row displays wrong value for aggregation 1st function |
| AG-1869 | Defect | ag-grid-angular-cli-example v6 not working on ie11 |
| AG-1868 | Feature Request | Remove dependency on react-dom-factories in ag-grid-react |
| AG-1864 | Defect | Clipboard - spanned cells multi select allows paste |
| AG-1863 | Defect | bring back gridSizeChanged event |
| AG-1855 | Defect | suppressLoadingOverlay: true not working |
| AG-1852 | Defect | Sorting - sortingOrder: ['asc', null, 'desc'] Doesn't work the grid does asc, desc null instead |
| AG-1851 | Defect | When grouping, suppressing group row and resetting column state an exception is thrown |
| AG-1850 | Defect | cellHeight parameter for dropdown editor doesn't highlihgt the whole height of the option, just the text |
| AG-1849 | Defect | Website - https://www.ag-grid.com/archive/18.0.0/javascript-grid-cell-expressions/ doesn't work |
| AG-1848 | Defect | Floating Filters not disabled when set to readonly in IE |
| AG-1846 | Defect | Website - javascript-grid-filtering/#example-filter-api invalid gridOptions property 'suppressMenu' message in console. |
| AG-1843 | Defect | Tabbing outside a set floating filter causes the column to filter out all the rows |
| AG-1842 | Defect | Floating filter for date filters is always in edit mode, even when using the in range filter type |
| AG-1839 | Defect | Row Dragging: Doesn't work on iPhone |
| AG-1837 | Defect | React - immutable/frozen data causes runtime errors |
| AG-1830 | Defect | Aurelia not supporting full column dragging behaviour |
| AG-1829 | Defect | Dragging Service - if not enabled, it should not update in the background |
| AG-1828 | Defect | getColumnState - hide value is incorrect for collapsed columns |
| AG-1827 | Defect | Status Bar - if not enabled, it should not update in the background |
| AG-1824 | Defect | Editing - Multi sort breaks inline editing |
| AG-1821 | Defect | Header should disappear (and go to footer) when rowNode.setExpanded(true) is called. |
| AG-1808 | Defect | vue - symlink causes $attr read only |
| AG-1798 | Defect | set pinned data asynchronously cancels editing |
| AG-1797 | Defect | setFitlterValues + setFilterModel Only works when newRowsAction: 'keep' |
| AG-1788 | Defect | Scrolling - Holding down page down with large dataset freezes up the browser |
| AG-1787 | Defect | Enterprise - Unable to override cell loading renderer |
| AG-1784 | Defect | Master/Detail - Last row in the grid is not on the same page when autoPageSize is set and there is no available space under the grid |
| AG-1778 | Defect | Website - For Print 'For Print and RTL' Doesn't Work |
| AG-1777 | Defect | Website - For Print Complex Example Doesn't Work |
| AG-1774 | Defect | IE - Double click on Filter to uncheck 'Select All' instead of single click. |
| AG-1764 | Defect | Scrollwheel freezes grid if scrolled past the end |
| AG-1762 | Defect | Scrollwheel freezes grid if scrolled past the end |
| AG-1759 | Defect | cellEditorSelector and cellRendererSelector not in the docs for column properties |
| AG-1758 | Feature Request | Allow shift-resizing by default |
| AG-1751 | Defect | Check scrollbar width is same for both horizontal and vertical scrolls |
| AG-1735 | Defect | Memory leak when using static data |
| AG-1733 | Defect | Pagination - Pressing next does not display page 2 if you clicked the set filter first. |
| AG-1728 | Defect | cellContextMenu Event not firing when the user triggers the context menu via right click |
| AG-1717 | Defect | Grouping Toolbar - Adding many columns causes layout to break |
| AG-1711 | Defect | Filters - right most column, the right side of the drop down is clipping |
| AG-1700 | Defect | Floating Filters + Set filter: Filter changes when pressing random keys while focusing on the read only text box |
| AG-1679 | Defect | [Keyboard Navigation] Pressing Home key jumps to the top of the page, if there is a pinned column in the table |
| AG-1664 | Defect | CellRender/innerRenderer framework components not destroyed, when set to new columnDef |
| AG-1663 | Defect | Grid not releasing React components in DOM |

### 18.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-3260 | Feature Request | Column Tool Panel - Allow hiding of columns |
| AG-1822 | Defect | ColumnResized event listener, when completed:true, params.column is null, should tell the src column |
| AG-1819 | Defect | UMD version of ag-Grid Enterprise fails to load |
| AG-1815 | Defect | groupSelectsFiltered+ groupSelectsChildren + autoGroupColumn more than one column + filter + Selecting 2nd level of grouping: Selects all leaf nodes, not only the filtered ones |
| AG-1811 | Defect | Wrong type in ColDef for autoHeight should be boolean not number |
| AG-1805 | Defect | Website - Improve docs around renderer instances |
| AG-1803 | Defect | Website - Pivoting examples missing enableRowGroup |
| AG-1802 | Defect | Filters - External filter does not work, If all rows were selected |
| AG-1800 | Defect | Events - Make event param mandatory |
| AG-1799 | Defect | Columns - ColumnState should have strong typing |
| AG-1796 | Defect | domLayout='autoHeight' issues when grid is empty |
| AG-1795 | Defect | groupSelectsFiltered + groupHideOpenParents + multi auto group column + filtering + selecting all in a parent group column. Selects only the leaf nodes for categories that have at least one leaf node filtered in |
| AG-1794 | Defect | Scroll Bars - Infinite scroll shows scrollbar for the first time it loads |
| AG-1793 | Feature Request | Pivot - Provide a method to produce total columns like excel |
| AG-1786 | Defect | Overlay - Panel doesn't hide last selected row |
| AG-1783 | Defect | Columns - API change in onColumnResized callback |
| AG-1780 | Defect | Grouping - Group column doesn't respect minimum width |
| AG-1779 | Defect | Substitute template for render in Vue component wrapper |
| AG-1771 | Defect | Memory leak using angularCompileFilters |
| AG-1770 | Defect | Website - Auto Row Height Angular Example doesn't work |
| AG-1763 | Defect | IE - Pressing period key at numeric keypad does not start edit |
| AG-1761 | Defect | Selection - viewport, multiple rows select doesn't highlight the whole row |
| AG-1760 | Defect | suppressColumnVirtualisation - column contents not rendered |
| AG-1757 | Feature Request | New callback processDataFromClipboard() to process data from clipboard |
| AG-1753 | Defect | Remove 'onExpandOrContract' console message upon expand/collapse of a row group/tree data |
| AG-1749 | Defect | Tree Data with Delta Updates - insertion order of new items has changed |
| AG-1746 | Defect | Fix fw versions of dynamic parameters (editor) example |
| AG-1745 | Defect | defaultColGroupDef.headerGroupComponent - Doesn't accept a value |
| AG-1741 | Defect | New AutoHeight option breaks on angularcompilerows=true |
| AG-1740 | Defect | Range selection: Multi-range selection not working. |
| AG-1736 | Defect | noRowsOverlayComponentParams Not passed to the custom NoRowsOverlayComponent.init method |
| AG-1729 | Defect | stopEditing() moves focus to the cell below if the "enterMovesDownAfterEdit" properties are set to true |
| AG-1726 | Defect | Vue guide - Styling is off |
| AG-1725 | Defect | OLD tree data getNodeChildDetails - Unable to deselect all rows using the header checkbox |
| AG-1724 | Defect | Tree data + rowMultiSelectWithClick - Group row is not selected when clicked on. |
| AG-1723 | Defect | Code snippets need to be formatted on Aurelia Getting Started - post release |
| AG-1720 | Defect | [Regression] groupRowRendererFramework not working |
| AG-1718 | Defect | Column Groups + Toolpanel - HeaderValueGetter not used to render the name of the column |
| AG-1714 | Defect | Rendering. Grid in full screen mode starts to collapse |
| AG-1701 | Defect | Row Focus - Tabbing out of first/lat row leaves the row focused on the grid |
| AG-1350 | Feature Request | Add support for row spanning |
| AG-1346 | Feature Request | Add support for afterGuiAttached to dateComponents |
| AG-1210 | Feature Request | Add event when the tool panel open/hidden |
| AG-1202 | Feature Request | Allow rendering rows dynamically adapting their height to their content |
| AG-1145 | Feature Request | [Row Grouping] Allow setting the pinned order for the auto-group column (by default it's always the left-most pinned column) |
| AG-1139 | Feature Request | Add support for rememberGroupStateWhenNewData with Tree Data |
| AG-1034 | Feature Request | Add paste completed event |
| AG-678 | Feature Request | Allowing an easy way to create a total footer |
| AG-424 | Feature Request | [filter] allow complex filters, more than just 'AND' the column filters |
| AG-100 | Feature Request | [toolpanel] allow searching / filtering column names in toolpanel |

### 17.1.1

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1734 | Defect | Remove unnecessary forPrint deprecated warning messages |
| AG-1676 | Feature Request | Supply individual auto group columns in EnterpriseGetRowsRequest |
| AG-1675 | Feature Request | Add filterType to FilterModel for SetFilter |
| AG-1665 | Defect | Using rowNode.setRowHeight with a master/detail grid row not rendering rows correctly |
| AG-1642 | Defect | Pagination + Master Detail =Last row on the page when expanded doesn't show body |
| AG-1635 | Defect | Master detail stops working and cannot expand the rows when the set filter is active |
| AG-1631 | Defect | Master/Detail Grid example-custom-detail-cell-renderer-with-a-grid doesn't display correctly |
| AG-1582 | Defect | React cell editing raises error when tabbing before saving |
| AG-1545 | Defect | innerRendererFramework doesn't work in the group column for the master grid in a master/detail configuration |
| AG-1418 | Feature Request | SetFilter's search doesn't work with ColDef.refData property |
| AG-1371 | Defect | Overlay component should not require getGui with frameworks |

### 17.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1730 | Feature Request | Deprecate for print, the same functionality can be achieved with domLayout: 'autoHeight' |
| AG-1719 | Defect | Typescript definition missing row drag events |
| AG-1716 | Defect | Error thrown when using angular component within the detail grid of a master/detail setup |
| AG-1712 | Defect | ColDef.keyCreator() isn't getting called with the Enterprise Row Mode |
| AG-1710 | Defect | [drag event] Drag events fired on a single click |
| AG-1705 | Defect | Tool Panel Row Group Section: Long column names overflow into next row. |
| AG-1704 | Defect | shift range selection gave error when range selected extends boundary of the selectable area |
| AG-1702 | Defect | Master/Detail + Selection enabled: Clicking on plus icon to expand ALSO selects row |
| AG-1697 | Defect | Checkbox selection in tree data: Child nodes are not selected until unless we close the group and expand it again. |
| AG-1695 | Defect | ToolPanel: Clicking on Label(text) checkbox should toggle |
| AG-1694 | Defect | cellEditorSelector is missing from colDefUtil.ts |
| AG-1692 | Defect | rowValueChanged callback not triggered while copy paste |
| AG-1691 | Defect | Reverse the sorting arrows in the headers |
| AG-1690 | Defect | grid RTL pagination icons(next page, prev page, first/last page) are opposite |
| AG-1688 | Defect | Cannot access the API of detail grids via the master grid |
| AG-1687 | Defect | Copy Single Cell to selected range not working |
| AG-1684 | Defect | adding "resetColumns" as built-in menu item causing a javascript error |
| AG-1680 | Defect | Pivoting: Uncaught TypeError: this.rowModel.forEachPivotNode is not a function Error when exporting data |
| AG-1678 | Defect | Remove unnecessary tool panel console.log messages onExpandClicked, onFilterTextChanged, onSelectClicked |
| AG-1673 | Defect | groupRowRendererParams with checkbox true causes an error |
| AG-1669 | Feature Request | [Master/Detail] Allow Framework Cell Renderers in Detail Grid |
| AG-1666 | Defect | Fixed bug where editing cells in pinned rows produced 'isActive' error |
| AG-1651 | Defect | New property suppressMakeColumnVisibleAfterUnGroup |
| AG-1649 | Defect | Column spanning outside of viewport causes DOM elements to be removed incorrectly |
| AG-1647 | Defect | checkbox:true causes full row grouping to fail |
| AG-1646 | Defect | Memory leak with angularjs due to DOM elements not being removed on destroy |
| AG-1644 | Defect | Toolbar doesn't resize correctly when using autoHeight in the grid |
| AG-1640 | Feature Request | Dynamically resize columns relative to a fixed width while holding shift pressed |
| AG-1636 | Defect | Warnings in console from tool panel |
| AG-1634 | Defect | Customizing the balham theme through webpack fails with missing icons error |
| AG-1627 | Defect | Performing grouping operation on the enterprise row model changes the order of columns |
| AG-1626 | Feature Request | Quick filter to search on multiple words |
| AG-1625 | Defect | Touch Devices Unable to expand column by double tapping on edges. |
| AG-1619 | Defect | Invalid spacing for deeply nested items |
| AG-1615 | Defect | using suppressCellSelection cells are kept in edit mode even after they receive a foucs out event |
| AG-1613 | Defect | groupDefaultExpanded not working when using multi auto group and master/detail |
| AG-1612 | Feature Request | New agGroupCellRenderer property: suppressDoubleClickExpand |
| AG-1610 | Defect | Column state reverted after grouping applied dynamically |
| AG-1609 | Defect | Enterprise row model when there are no rows api.paginationGetRowCount() returns 1 |
| AG-1608 | Defect | IE11 headers and content are not aligned in Print Preview / Print |
| AG-1604 | Defect | Row dragging seems to not work properly if a pinned right column is defined |
| AG-1602 | Defect | Tree Data: api.expandAll Not working |
| AG-1600 | Defect | Row dragging - functions not re-executed when cell contents change. |
| AG-1599 | Defect | When selecting a row and sort the column the "ag-row-focus" is still at the previous selected index |
| AG-1598 | Defect | Numeric columns exported to excel with white spaces cause the file to be corrupt |
| AG-1593 | Defect | When reducing the width of a group header, display an ellipsis if shrunk so that the content doesn't fit (same as non group header) |
| AG-1588 | Defect | paginationNumberFormatter not working in Angular or React |
| AG-1585 | Defect | gridOptions mandatory in Vue.js - should be optional |
| AG-1581 | Defect | groupHideOpenParents didn't work when selecting row groups |
| AG-1578 | Defect | Tool tips in group column don't work |
| AG-1577 | Defect | Added filterValueGetter to allow better filtering while grouping |
| AG-1576 | Defect | When dragging a column to a new position, sometimes it gets sorted |
| AG-1574 | Defect | Error thrown when using FW component within the detail grid of a simple master/detail setup |
| AG-1564 | Defect | docs updated - setColDefs will reset row group expanded state or tree expanded state |
| AG-1549 | Defect | Column ordering resets to default ordering after de-grouping |
| AG-1544 | Defect | Grid API - expand/collapse all does not work with tree data |
| AG-1512 | Defect | setFilterModel + async set filter values: While the async set filter values are computed, the calls to setFilterModel are ignored |
| AG-1511 | Defect | Grouped data - grouped row and summary row selected at the same time |
| AG-1498 | Defect | Provide documentation on using Angular 1 in Headers |
| AG-1455 | Feature Request | Provide column information in set filter async function to facilitate generic implementations |
| AG-1441 | Feature Request | Add ability to process headers for clipboard (i.e. add processHeaderForClipboard) |
| AG-1434 | Defect | For pagination and Enterprise Row Model, when no rows are present shows "1 of 0" instead of "0 of 0" |
| AG-1405 | Feature Request | Support automatic text wrapping / variable row height |
| AG-1389 | Defect | defaultColDef not applied to auto generated column definition |
| AG-1316 | Defect | When changing "filter type" and no value present, filter should not be refreshed |
| AG-1207 | Feature Request | Holding shift while column resizing will now resize columns on either side of the drag handle. |

### 17.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1713 | Defect | Investigate possible issue with size columns to fit not working after initialisation |
| AG-1689 | Defect | Set Filter text is wrapping around on its self with text that exceeds filter width |
| AG-1661 | Defect | newRowsAction = true + many columns with set filters + filter one set column Causes the other set filters not to refine their values |
| AG-1562 | Defect | Warn when grouping by null or undefined in enterprise row model |
| AG-1561 | Defect | Can't align to the right column group header |
| AG-1553 | Defect | Add mouseevent to our list of objects that are not in the DOM so ag-grid can compile headless |
| AG-1542 | Defect | Fix bug when using innerRendererFramework in a detail framework grid using Master/Detail and React |
| AG-1540 | Feature Request | Add auto properties check for grid options and colDefs so that it shows a warning if not using the right property |
| AG-1530 | Feature Request | Add Expand All/Collapse All to Column Menu for Tree Data |
| AG-1527 | Feature Request | New UI to have tool panel like a side bar in intelliJ |
| AG-1525 | Defect | isRowMaster doesn't work with React |
| AG-1519 | Feature Request | Allow for more rows than then ones we are constrained by the height of the div that contains the grid |
| AG-1503 | Defect | Allow styling the background of a cell without a group header when other columns do have a group header |
| AG-1493 | Feature Request | Allow paste from clipboard to selected range |
| AG-1484 | Defect | First (Basic AngularJS 1.x Example) angularjs example doesn't render |
| AG-1478 | Feature Request | Allow enter key to go to next row directly without going through edit mode |
| AG-1473 | Defect | Cell renderer function throws an error if it returns a number, but works if it returns a string |
| AG-1472 | Defect | Material Theme moves last cell to front on grid resize |
| AG-1469 | Defect | Angular innerRendererFramework - ngOnDestroy not being called |
| AG-1460 | Defect | While editing pinned rows delta updates in the no pinned data causes the editing to be cancelled |
| AG-1449 | Defect | headerTooltip doesn't work with grouped columns |
| AG-1440 | Feature Request | Allow tool panel to handle long column names |
| AG-1432 | Defect | Typings for colDef incorrect for framework components |
| AG-1430 | Defect | Deleted rows flicker out of view when animateRows is enabled |
| AG-1425 | Defect | On pivot mode updating data so that it should be o a different secondary column not working when using splice |
| AG-1395 | Defect | Tabbing through headers makes headers and columns out of sync |
| AG-1367 | Feature Request | Allow tool panel to drag up & down columns and trigger the scroll if necessary (happens when lots of columns) |
| AG-1347 | Feature Request | New API: api.getEditingCells() |
| AG-1331 | Feature Request | Do not allow page breaks inside rows in print layout |
| AG-1321 | Feature Request | Add destroy callback to all row models |
| AG-1320 | Defect | Tooltip AND css classes not updated when using a transaction and tooltip field using dotted field syntax |
| AG-1261 | Feature Request | When user hovers a column header, add class to column header and cells |
| AG-1221 | Feature Request | Allow components in Angular 1 to be compiled automatically by the componentProvider |
| AG-1215 | Feature Request | Allow toolpanel to be configured so you can add elements in the header/footer |
| AG-1196 | Defect | Memory leak using angular1 |
| AG-1174 | Feature Request | Allow insertion of rows in any model to facilitate CRUD. This rows should be maintained locally. [should work with grouping] |
| AG-1135 | Feature Request | Allow multiple row selections with mouse only |
| AG-1102 | Feature Request | Allow pinning columns to take remaining space if there is any |
| AG-1101 | Feature Request | Allow column resizing in mobile devices |
| AG-1097 | Feature Request | Allow having a callback to refine the sort of the rows after the grid sorts them. |
| AG-1052 | Feature Request | add suppressCellFlash in the colDef |
| AG-1036 | Feature Request | Allow scrollbars to be always present by configuration |
| AG-982 | Feature Request | Tool Panel with Search Option to filter the columns showing in the right hand size |
| AG-918 | Feature Request | [performance] implement batch update for transactions - and webpage |
| AG-883 | Feature Request | Add additional shortcuts for range selection |
| AG-732 | Feature Request | Allow full width rows sorting |
| AG-700 | Feature Request | Add method to allow changing the values of a rich select component on the fly and also let it be different depending on the row |
| AG-677 | Feature Request | [sort] multi-column sorting with ctrl |
| AG-632 | Feature Request | [toolpanel] Allow column menu column panel to be have grouped entries collapsed by default |
| AG-612 | Feature Request | [cell flasing] Allow for easy row flashing and create api calls to force flashing |
| AG-460 | Feature Request | [range] Scroll grid as range selection changes (as per excel) |
| AG-432 | Defect | [toolpanel touch]Scrolling Tool Panel on touch devices doesn't work |
| AG-426 | Feature Request | Add support and examples for CSS grid |
| AG-309 | Feature Request | Add a callback to gridOptions to refine which rows can be selectable. [isSelectable] |
| AG-183 | Feature Request | Added CellMouseDownEvent for left and middle click events. |
| AG-130 | Feature Request | Add better support for FlexBox |

### 16.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-2908 | Feature Request | Allow disabling column dragging on a column by column basis |
| AG-1632 | Defect | After filtering a grid with treedata by one column, the filter entries of the other columns are not updated properly. |
| AG-1481 | Defect | v16- Error in main.d.ts including non existing files |
| AG-1439 | Defect | Fix issue creating detail row in master/detail with react |
| AG-1435 | Feature Request | Maintain cell focus on data updates |
| AG-1431 | Defect | "Ctrl & A" does not select pinned bottom rows correctly |
| AG-1422 | Defect | Overlay blocks mouse pointers events in IE10 |
| AG-1421 | Defect | new property popupParent - so popups (eg menu) don't get clipped into grid |
| AG-1419 | Feature Request | Allow quickfilter to work with tree data |
| AG-1390 | Feature Request | Row drag icon needs better graphic design |
| AG-1388 | Feature Request | Support for Enter to commit changes to cell and to navigate to the next row |
| AG-1385 | Defect | Column headers are not exported to Excel when in pivot mode |
| AG-1384 | Feature Request | Create cellStyleParams interface as per https://www.ag-grid.com/javascript-grid-cell-styles |
| AG-1382 | Feature Request | Allow the detail grid of master detail to be defined with callback |
| AG-1374 | Defect | innerRendererFramework doesn't work in the group column for the master grid in a master/detail configuration |
| AG-1373 | Defect | Can't nest a framework detail grid in a master detail grid. [ag-Grid: unable to find bean reference agGridReact while initialising frameworkComponentWrapper] |
| AG-1365 | Feature Request | Add example of dynamic renderer |
| AG-1362 | Defect | columnVisibleChange triggered when column is moved independently if it is visibility changes |
| AG-1361 | Defect | Header Group Columns are not getting "ag-header-group-cell-moving" CSS class while being dragged&dropped |
| AG-1351 | Defect | New components naming not backward compatible when using floating filters (filter: 'date' or filter:'text') |
| AG-1345 | Defect | Number filter defaultOption: "notEqual" not working |
| AG-1342 | Defect | When press Tab while editing, grid checks "editable" callback of next cell before current cell applied |
| AG-1339 | Defect | Home/End keys not working in Windows10 |
| AG-1338 | Feature Request | Allow tooltips to be a callback |
| AG-1333 | Defect | getNodeId makes the row render incorrectly if returning partial HTML |
| AG-1285 | Feature Request | Allow disabling ctrl to add cells to a currently existing range |
| AG-1283 | Defect | Cannot override default components with framework components, only with plain JS ones |
| AG-1279 | Defect | In range date filter breaks if the data contains null dates |
| AG-1278 | Defect | deprecated api.recomputeAggregates(), use api.api.refreshInMemoryRowModel('aggregate') instead |
| AG-1273 | Defect | Pagination + Grouping + Enterprise when expanding a group rows bubble up unexpectedly |
| AG-1272 | Defect | Null pointer exception when trying to save the state of the columns and the passed state is null |
| AG-1258 | Defect | Have consistent behaviour for indeterminate checkbox across selection and set filter |
| AG-1243 | Defect | IE Edge issue on colum nenu/columns clicking on the column label is good, clicking on checkbox closes the menu |
| AG-1217 | Feature Request | Allow providing minWidth for group column definitions |
| AG-1208 | Feature Request | Make setFilter mini search case insensitive |
| AG-1206 | Feature Request | Add source information in the column events so that the user knows where the event came from ie From reset columns button |
| AG-1194 | Feature Request | Add double click = expand/collapse column group |
| AG-1186 | Defect | Using font icons in a renderer in chrome causes them to not be repainted when resizing the column |
| AG-1181 | Defect | No rows overlay displayed when col defs are supplied after row data |
| AG-1171 | Defect | setFilterModel is ignored in an async Filter until the async is resolved |
| AG-1166 | Defect | Inconsistent timing when calling gridReady/ngAfterViewInit in Angular |
| AG-1134 | Defect | Remove cyclic dependency - Calling setFocusedCell from within onCellValueChanged causes an infinite loop |
| AG-1125 | Defect | Context menu not working for cells in ipad |
| AG-1120 | Defect | Dragging an ungrouped column by its group shows empty hint |
| AG-1119 | Feature Request | Add api call to hideContextMenu |
| AG-1068 | Defect | Ipad - Safari/Chrome Csv Export doesn't work |
| AG-976 | Defect | Ctrl+C, V, A, and D events should use stopPropagation |
| AG-958 | Defect | On mobile devices - Hiding/Showing columns through the column menu doesn't work |
| AG-818 | Feature Request | Add better support/consistency for addIndex |
| AG-798 | Defect | [drag event] DragStopped and DragStarted get fired in grid |
| AG-663 | Defect | [react headerComponent drag&drop] Cannot drag & drop header with a custom component into the row groups by |
| AG-608 | Defect | Default sort is not passed to getRows with 'infinite' rowModelType in AngularJS 1.x |
| AG-514 | Feature Request | Allow columns to be fixed so they can not be moved from their configured position |
| AG-128 | Feature Request | Add suppressHidden and suppressPinning to ColDefs |
| AG-116 | Feature Request | Allow row drag and drop |

### 15.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1381 | Defect | Date filter doesn't work when using header templates |
| AG-1262 | Defect | Formatted values ignored for leaf nodes using Tree Data |
| AG-1233 | Defect | When editing a cell in pinned row which is on the edge of the hor scroll it breaks the scrolling |
| AG-1223 | Defect | Tree Data, delta update ON + change that causes node to go to a different PATH AND name change not working |
| AG-1219 | Defect | $cell-horizontal-padding not working with material Theme |
| AG-1212 | Defect | ensureNodeVisible non-backward compatible behaviour |
| AG-1209 | Defect | Wrong deprecated error message when using refreshView - Points to refreshRows, should say refreshCelss |
| AG-1200 | Defect | iOs double click doesn't make a cell enter in edit mode, but zooms in |
| AG-1197 | Defect | Setting floatingFilterComponentParams for column cause removing styles from header |
| AG-1191 | Feature Request | Show context menu when the user right clicks on the header |
| AG-1188 | Defect | Can't use detailCellRendererFramework. Metadata not provided! |
| AG-1183 | Defect | Misleading warning given when using your own col group and the new tree data |
| AG-1172 | Feature Request | Allow configuring which rows are selectable, and also the header selection |
| AG-1169 | Defect | Key creator not working on pivot mode |
| AG-1167 | Feature Request | Allow specifying different name for column in the tool panel |
| AG-1164 | Defect | When there are checkboxes enabled and you open the context menu. Clicking on the checkboxes don't close the popup |
| AG-1162 | Defect | ensureDomOrder: true seems to not work when pinning more than one column (for the column order in the pinning section) |
| AG-1161 | Defect | Issue using ag-fresh and auto group column defs - No padding in the auto group col def |
| AG-1159 | Feature Request | Rework example menu on the website |
| AG-1156 | Defect | afterGuiAttached not called anymore after a filter is rendered in the screen |
| AG-1141 | Defect | Consistency of notEqual and notEquals in FilterParams.filterOptions, defaultOptions, nullComparator |
| AG-1140 | Defect | Filter, when specifying both filterOptions and defaultOption, default option is ignored and the first item is picked |
| AG-1124 | Defect | Error opening set filter in infinite scrolling |
| AG-1082 | Defect | Angular CLI 1.5 - ng build --prod causes a stack error |
| AG-1076 | Defect | row-index not getting updated and containing dupes after group expand |
| AG-1074 | Defect | Set Filter wrong behaviour when changing values underneath it via editing and selecting deselecting all from filter |
| AG-955 | Defect | Checkbox is unchecked after scrolling fast with infinite scrolling |
| AG-940 | Defect | When using animateCellRenderer, and the values are updated, the tooltip is not updated. Also tooltip for nullables seems to be broken (not displayed) |
| AG-799 | Defect | [enterprise row model] purgeEnterpriseCache render problem |
| AG-702 | Defect | [auto height] scrolling does not work if 'autoHeight' and pinned columns are used together |
| AG-690 | Defect | [overlay] Overlays should be consistent across row models |
| AG-637 | Defect | [printable character] Missing backslash means \ is not a printable character |
| AG-605 | Defect | [edit] Ctrl-Enter resets cell editor to blank |
| AG-596 | Defect | [menu] Context menu event not firing on full width group rows |
| AG-589 | Defect | [range] Pressing tab while selecting a range throws an error |
| AG-330 | Defect | [iPad] hamburger occasionally appears but cannot be clicked |
| AG-146 | Feature Request | Add doubleclick support on iphone/ipad |
| AG-76 | Feature Request | [component] Allow providing component for overlay (not just string template) |
| AG-46 | Feature Request | [accessibility] tab into the grid |

### 14.2.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1098 | Defect | Angular 1 Issue with filters |
| AG-1094 | Defect | Async set filter doesn't work in enterprise row model |
| AG-1060 | Feature Request | Add SSR Examples |
| AG-944 | Defect | domLayout:autoHeight not working when autoGroupColumn and the group column in pinned left |

### 14.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-1185 | Defect | When using an out of the box editor the first keystroke is passed to it. When using a custom one, is not |
| AG-1158 | Defect | Bug scrolling in IE Edge |
| AG-1126 | Defect | Is not possible to drag and drop image in cell renderer (there is no ghost of the image) |
| AG-751 | Feature Request | [Excel Export] Allow cellExcelStyle in the colDef |
| AG-491 | Feature Request | [trackpad scroll - selection] Support trackpad scroll selection, is working with the wheel and not with the scroll |
| AG-490 | Feature Request | [CSV/Excel export] Allow a callback to return many rows |
| AG-357 | Feature Request | Add event for checkbox selection selected |
| AG-158 | Defect | XSS vulnerability: Angular expression injection |

### 13.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-748 | Feature Request | [Infinite Row Model] Allow infinite row model to handle unlimited rows |

### 10.1.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-337 | Feature Request | Allow for refreshing not to impact currently editing cells |

### 10.0.0

| Issue | Type | Summary |
| --- | --- | --- |
| AG-79 | Feature Request | [rendering] Multi-line cell support with ellipsis on the last line (line-clamping) |
