AG Grid Changelog

This page covers the full Changelog for all items for 8.x and above. For the Summary Changelog, or the legacy changelog covering versions 7.x and above, please go here. For a list of up and coming Bug Fixes and Features please refer to our Pipeline. Documentation for previous versions can be found here.
Filter By Breaking Changes
Filter By Deprecations
Bug Feature Request Documentation URL D Deprecation B Breaking Changes R Rejected Changes
Key Issue
Type
Fix
Version
Summary
AG-5477 25.3.1 ag-grid-vue3/@ag-grid-community/vue3 reactivity broken
AG-5381 25.3.0 callout.colors theme config has no effect in pie/donut charts
AG-5369 25.3.0 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 25.3.0 When providing an invalid filterOption for the specific filter type, the grid throws an exception - it should be a warning
AG-5366 25.3.0 [Regression] When using SSRM and expanding a group row with an empty name, the group row chevron disappears
AG-5365 25.3.0 Saving and Restoring Charts Example doesn't work with Angular
AG-5363 25.3.0 When setting deprecated Excel export property skipGroups, hundreds of console warnings are output
AG-5359 25.3.0 When using a custom column header renderer and removing a column, a handled error appears
AG-5358 25.3.0 [Regression] When infiniteInitialRowCount>1 and providing new data to the infinite row model, the custom cell renderer doesn't re-render
AG-5357 25.3.0 [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 25.3.0 [Regression] When using SSRM before data is loaded, sorting by a column header throws an exception
AG-5349 25.3.0 When using SSRM with storeType=full and exporting to Excel, all records are exported, not just the filtered ones
AG-5348 25.3.0 [Regression] When using immutable data and removing a column, its valueGetter still gets called
AG-5347 25.3.0 [Row Grouping] Add "Open by Default" feature to the Client Side Row Model
AG-5345 25.3.0 When typing inside a agRichSelectCellEditor to search the items the incorrect item is highlighted
AG-5344 25.3.0 [Regression] When clicking a checkbox in the columns tool panel, the shadow is clipped along the left edge
AG-5342 25.3.0 When switching to legacy mode after ClipboardAPI is blocked by the user, the pasted value is blank More Info
Only the first paste would paste a blank value, while subsequent paste operations will work fine. This initial blank pasted value is unavoidable as the browser is first trying to use the Clipboard API, and when that fails, it falls back to the old legacy workaround that AG Grid has. However the legacy workaround no longer works when we execute it directly after trying the Clipboard API. This is because of Chrome changing its behaviour around the API - this used to work before. Note that the Clipboard API is an experimental feature of Chrome, so it can change. To get around this, the grid will try the Clipboard API once. If it fails, the grid will remember and never try it again. This means the paste will fail once only, and then succeed on all subsequent attempts (after Clipboard API fails, we will only use the AG Grid legacy way going forward). In order to avoid the paste failing the first time because of the Clipboard API error, please either resolve the Clipboard API limitation (such as the user clicking DENY/BLOCK access to Clipboard API when opening the page), or set suppressClipboardApi=true to use the legacy clipboard implementation which doesn't rely on Clipboard API.
AG-5341 25.3.0 When using server-side row model with serverSideFilteringAlwaysResets: true, filter is also applied client-side
AG-5330 25.3.0 When exporting to Excel empty cell values, keyboard navigation in Excel doesn't treat them as empty
AG-5326 25.3.0 Chart axis label rotation values are not updated in the formatting panel
AG-5323 25.3.0 [Regression] When using pivot mode and groupHideOpenParent=true, exporting to Excel doesn't export the cell values, only the column header values
AG-5322 25.3.0 When setting rightAligned on a group column, its header cell value gets right-aligned, but its data cells are still aligned left
AG-5318 25.3.0 When using groupMultiAutoColumn or groupHideOpenParent with total footer row, Total string is rendered for every group in the total footer row
AG-5317 25.3.0 [Regression] When filtering using custom React-Hook filter components an exception in thrown
AG-5315 25.3.0 When setting updated columnDefs with a different minWidth value, it doesn't get applied
AG-5311 25.3.0 Treemap should not render value labels for top level tiles
AG-5308 25.3.0 When using client-side row model with row grouping, calling getRowNode on a group node returns undefined
AG-5306 25.3.0 [Docs] Update the row models comparison to indicate that update transactions are no longer available in the infinite row model
AG-5302 25.3.0 Treemap tiles titles are clipped in Safari with larger font sizes
AG-5288 25.3.0 [Regression][Angular] When using infinite row model with cellRendererFramework, ngTemplate defined in a custom control is not applied More Info
An enhancement implemented in v25.2 is that IRM no longer destroys the loading row, instead it updates its values. When the grid gets new values for a row, it checks to see if the value for a particular cell has changed, and if so it gets the Cell Renderer to refresh. If the value for that cell has not changed, the Cell Renderer is not refreshed. Because there is no field or valueGetter provided for the column containing the Cell Comp, the grid isn't aware that the value has changed. To fix, add a field or valueGetter to the column with the custom Cell Renderer. AG Grid has been updated so that it will always refresh if field, valueGetter and showRowGroup are missing (generally speaking one of these three are needed to show values, if they are all missing, then we always refresh rather than never refresh).
AG-5284 25.3.0 [Regression] When using a floating filter, floating filter inputs and button get announced by JAWS and NVDA with each cell value
AG-5283 25.3.0 [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 25.3.0 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 25.3.0 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 25.3.0 When setting floatingFilter property in the columnType, the value is not respected by the column
AG-5249 25.3.0 ARIA labels for row drag handles contain an invalid reference
AG-5225 25.3.0 When pressing a key when a full-width row is focused, cellKeyDown and cellKeyPress events don't get fired
AG-5224 25.3.0 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 25.3.0 [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 25.3.0 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 25.3.0 Read Only Floating Filter Doesn't Work With Hooks or VueJS
AG-5193 25.3.0 When setting cellRendererSelector in autoGroupColumnDef, an exception is thrown
AG-5180 25.3.0 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 25.3.0 When using server-side row model with full store type with grouping, defaultGroupSortComparator isn't called More Info
We have updated the code to output a warning message if defaultGroupSortComparator is used with Server-Side Row Model or Infinite Row Model. For server-side row model, storeType=full, then the client should pass the rows to the server-side row model sorted. For server-side row model, storeType=partial, then sorting is done on the server side. For Infinite Row model, sorting is done on the server side.
AG-5161 25.3.0 When using SSRM with storeType=partial and showing 0 rows in grid, calling refreshServerSideStore doesn't make a request when purge=false More Info
There's a workaround you can use until this is resolved. Just set purge: true when the grid has 0 records to ensure a data request gets made. Please see this implemented here: https://plnkr.co/edit/I8ewg40GcP7HGvOo
AG-5139 25.3.0 When using server-side row model with full store type, returning an empty array in getRows() throws an exception
AG-5128 25.3.0 Multiple declarations of the same CSS classes with : and :: in the class name in themes fresh, dark, blue, bootstrap
AG-5121 25.3.0 [Chart] Add legend item label renderer More Info
This was closed as a duplicate of AG-3116.
AG-5116 25.3.0 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 25.3.0 Screen reader announces second set filter item as unchecked when it is checked
AG-5099 25.3.0 Setting fills and strokes on pie charts doesn't work for integrated charts
AG-5091 25.3.0 Allow setting the tabIndex of the Grid
AG-5035 25.3.0 When using a custom chart theme chart y-axis label rendered with rotation even though rotation=0
AG-4957 25.3.0 [API] Remove suppressSideButtons property from product and docs example More Info
'ToolPanelParams.suppressSideButtons' has no effect and doesn't belong in the columns TP params.
AG-4950 25.3.0 Checkbox Selection issues - 1) checkboxSelection not responsive to data changes 2) when checkboxSelection returns false, text values in cell are not indented
AG-4774 25.3.0 [Chart] Allow customizing the mouse pointer when over a clickable node in the chart
AG-4733 25.3.0 [Row Dragging] Allow dragging full width rows
AG-4668 25.3.0 [Chart] Allow separate properties to set X-axis and Y-Axis thickness
AG-4438 25.3.0 [Chart] Add support for bins for Integrated Charts histograms
AG-3922 25.3.0 Make series tooltips use the same value format as axis labels
AG-3724 25.3.0 [Vue] Add support for Vue Composition API
AG-3435 25.3.0 [Sidebar] Allow sidebar to be visible but the button bar to be hidden (the user will change toolpanels via API) More Info
Closed as a duplicate. Please track this requirement in AG-4240.
AG-1474 25.3.0 [Row Grouping] Allow providing a comparator for each of the grouped columns (currently only one comparator is used for grouped column sorting) More Info
Closed as a DUPLICATE of: AG-1153 [Row Grouping] Allow using different comparators for the values of each group column in the auto column group
AG-5301 25.2.1 [Regression] Build failing with error "cannot find module '@ag-grid-enterprise/excel-export'"
AG-5364 25.2.0 Screen reader announces the page title while moving focus R More Info
This isn't a bug in AG Grid. Instead, this incorrect announcement is due to an issue in NVDA when navigating from one container to another. We've logged this issue with NVDA: https://github.com/nvaccess/nvda/issues/12451 Once NVDA fixes this bug, you'll no longer see this incorrect announcement in NVDA.
AG-5360 25.2.0 [Regression] Website demo page doesn't finish loading in Internet Explorer 11 More Info
Our website no longer supports IE11.
AG-5354 25.2.0 When using rowClassRules with viewport row model, console exceptions are thrown for every row R More Info
These styling errors are expected behavior because it is possible for data to be missing. The client code needs to cater for this.
AG-5353 25.2.0 When using getRowClass with viewport model, an exception is thrown R More Info
Similar to AG-5352, it is possible for data to be missing. The client code needs to cater for this.
AG-5352 25.2.0 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 R More Info
This is a bug in the example. The Row Class Rule is as follows: 'blue-class': 'data.country === "United States"' However ‘data’ is missing for loading rows. Thus the correct Row Class Rule should be: 'blue-class': 'data && data.country === "United States"' Having no data present is common. It can happen for loading rows, but also it can happen for CSRM when grouping (as groups don’t have data either). What we could do is disable Cell Class Rules for loading rows, however someone could want to apply a class in this way. Ditto for when data is missing, as data missing is a valid use case, especially if CSRM grouping.
AG-5340 25.2.0 When editing a grid cell, clicking a column header cell doesn't end the cell edit R More Info
This is solved by setting the property stopEditingWhenGridLosesFocus=true. To assist, I've renamed this property to stopEditingWhenCellsLoseFocus.
AG-5329 25.2.0 When having a focused cell and sorting by clicking the column header cell pressing CTRL+C doesn't copy the focused cell value anymore R More Info
This is rejected because the current behavior is in fact correct because clicking the column header focuses it, so pressing CTRL+C has no effect. However, I implemented this behavior to return focus to the last focused cell after the user clicks a column header to sort the grid to allow pasting in the focused cell after sorting by clicking the column header. Please open plunker in a full window (using the small button above the preview): https://plnkr.co/edit/jzYT6vg1HP7q6LNG
AG-5287 25.2.0 Changing iChartOptions can mutate chart theme
AG-5282 25.2.0 [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-5270 25.2.0 Document testing React Hooks with Enzyme
AG-5269 25.2.0 When using SSRM, if you call api.getDisplayedRowAtIndex on a row that is not displayed, the page will hang
AG-5262 25.2.0 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 25.2.0 When using serverSideRowType=PARTIAL, isServerSideGroupOpenByDefault callback is not called
AG-5259 25.2.0 When calling applyColumnState to clear sort for all columns, sort isn't cleared on auto-group column
AG-5258 25.2.0 When calling applyColumnState using row grouping and aggregation, value column header and aggFunc state don't get applied
AG-5255 25.2.0 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 More Info
To address this issue set: “popupParent: document.body” as shown in this plunker: https://plnkr.co/edit/YeK4miAseZp6WpTt When using document.body as the document parent, the only way it would be a problem is if the grid is also against the edit of the document.body, which is unlikely in a modern app.
AG-5251 25.2.0 [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 25.2.0 [Regression] When calling onRowHeightChanged(), custom cell editor closes
AG-5247 25.2.0 Pivot + Unbalanced Groups don't show data correctly R
AG-5244 25.2.0 When stopEditingWhenGridLosesFocus=true, editing a cell in a master row doesn't stop when clicking inside the detail grid
AG-5242 25.2.0 [Excel Export] Separate default export params for CSV and Excel
AG-5241 25.2.0 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 25.2.0 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 25.2.0 [Regression][Angular] When disabling ngZone, clicking a row in AG Grid throws an exception in console
AG-5236 25.2.0 [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 25.2.0 [Regression] When setting dynamic row height and filtering, not all matching records are rendered until you scroll
AG-5232 25.2.0 [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 25.2.0 When using multi filter, modifying the set filter item selection and setting new data throws an exception
AG-5230 25.2.0 When using grouping or tree data, group column cell value doesn't respect CSS class to center value vertically R More Info
This is not a bug with AG Grid - it can be implemented using a CSS class. In order to center the group cells in AG Grid use the selector below: .ag-cell, .ag-row-group { display: flex !important; align-items: center !important; } Please see this implemented here: https://plnkr.co/edit/Ps2ecgBM3l6RwBK8?preview
AG-5229 25.2.0 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 More Info
This behavior was due to an issue in Safari that was fixed as part of Safari v14.1, released on April 30, 2021. Please update your version of Safari to v14.1 to address this issue.
AG-5228 25.2.0 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 25.2.0 When exporting to Excel, grid column group header rows aren't exported by default
AG-5222 25.2.0 When using infinite row model, displayed cell values get rendered a second time when a new block of data is loaded
AG-5217 25.2.0 [Excel Export] Add support for Headers and Footers in the Excel export
AG-5214 25.2.0 AgGrid columns don't work when wrapped with a React higher-order component More Info
AgGridColumn wrapped with/as a Higher Order Component is not supported.
AG-5212 25.2.0 [Regression] When using viewport row model, cells containing value '0' are rendered as empty
AG-5206 25.2.0 [Regression] When using infinite row model with paging and pagesize=blockSize, pagination panel showing "1 to ? of more"
AG-5205 25.2.0 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 25.2.0 When using with the new ClipboardAPI, pasting while preventing the onPaste event clears value of target cell R More Info
The logic around the Clipboard API changed in v25, to support native Clipboard API. With this change, we refactored the code around the clipboard. The solution proposed (listening to native browser 'paste' event and preventing default) is not guaranteed to work, as the grid does some 'behind the scenes magic' when this event gets fired (it puts focus onto a temporary textfield to catch the contents of the textfield, and has a timeout and then reads from the temporary textfield in the next VM turn). So how it was working in the proposed solution dependended on some timings and worked by coincidence. Even if we "fixed" it, there is no guarantee it won't break again. Instead we propose the application uses the grid option "suppressClipboardPaste" to suppress the paste operation. If this is not providing the desired behaviour, then please advise what needs to be extended with this property, as this is the recommended way to prevent clipboard paste.
AG-5194 25.2.0 headerGroupComponentParams aren't applied to column group cell R More Info
Not a bug, it was never intended for Header Group Comp to support templates like this. The preferred way to customers Header Group Comp is to provide your own Header Group Comp. Also the user did not raise this as a bug (they raised something similar). Providing templates complicates matters, as it's an alternative to providing components (which we have to do), and providing components is a definite requirement. Adding templates adds unnecessary noise.
AG-5192 25.2.0 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 25.2.0 [website] Add debounce to the search textbox on the changelog page
AG-5186 25.2.0 In Chromium-based browsers sidebar tool panel labels aren't centered next to images, but appear aligned to the left More Info
This is a BUG in Chromium - https://bugs.chromium.org/p/chromium/issues/detail?id=1189046 One temporary solution is to add a custom style: .ag-side-button-label { width: fit-content }
AG-5185 25.2.0 [Regression] When grid cells are refreshed, '0' cell values change to blanks
AG-5181 25.2.0 [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 25.2.0 [Excel Export] Allow setting page size and layout orientation for the Excel export file
AG-5178 25.2.0 [Excel Export] Allow exporting an image in Excel export above or below the grid, not in the exported grid data cells
AG-5177 25.2.0 Chart legend formatter is not called
AG-5172 25.2.0 When special characters without a visual representation are present in grid cells, exported Excel file produces errors in Excel
AG-5166 25.2.0 [Regression] When setting a filterModel and then clearing column definitions, exception is thrown
AG-5164 25.2.0 When using a provided filter with two conditions and clearing the top filter input value, second filtering condition is hidden and no longer applied R More Info
Working as expected. We do not want to show the second filter value (value2) if the first filter value (value1) is removed. If we did otherwise, then it would result in value2 showing a value, but if the user edits the value2 and removes it (hits backspace) then the textfield for value2 would disappear. This would be bad UX, as the text field you are editing should not disappear! So changes to value2 should not impact visibility of value2.
AG-5152 25.2.0 When 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 More Info
This behavior isn't an issue in AG Grid but is instead caused by an issue in Chrome: https://bugs.chromium.org/p/chromium/issues/detail?id=1209170 Please star this issue to have it resolved by the Chromium team.
AG-5150 25.2.0 When Multi Row Dragging, clicking on drag handle collects rows before drag is performed (apart from first row)
AG-5149 25.2.0 When clicking the column filter CANCEL button with a blank filter value an exception is thrown
AG-5144 25.2.0 [React] Add support for Reactive callbacks
AG-5141 25.2.0 When using SSRM, calling api.ExpandAll() twice in short succession displays flashing loading rows which never finish loading R More Info
This behavior is not a bug. The grid rows do finish loading, you just have to wait. What you can do is scroll to the bottom of the grid, you can see they are loading form the bottom up Also there are 100's (maybe more???) of rows, so you have just asked the grid to load a large number of groups, and the example has wait time. You're seeing rows flashing because the loading rows get redrawn every time a load finishes.
AG-5140 25.2.0 Adding rows using Transaction with a supplied addIndex is slow
AG-5137 25.2.0 When using MacOS with Chrome and Firefox, scrolling using the wheel when hovering over the pinned column area causes blank areas when rendering R More Info
The issue cannot be seen when using any browser on a Windows PC or when using Safari on a Mac. The issue can only be seen on Mac when using Chrome and Firefox browsers. It is caused by the specific way Chrome for Mac and Firefox for Mac implement Animated Frame services. This is why we have rejected this bug. You can minimize this whitespace effect by increasing the value of the rowBuffer property (default value is 10). This allows the grid to render more records before they appear into view and to this have them ready for rendering. See this property documented here: https://www.ag-grid.com/javascript-grid/dom-virtualisation/#row-virtualisation
AG-5135 25.2.0 [Regression] When using tree data, applying a transaction or calling setRowData exits an ongoing cell editing operation
AG-5133 25.2.0 [Regression] ValueParser parses 0 as empty value
AG-5132 25.2.0 [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-5125 25.2.0 [Regression] React context not updated after a change
AG-5115 25.2.0 [Regression] When calling applyColumnState with applyOrder=true, the auto group column (ag-Grid-AutoColumn) is placed last in the order of columns
AG-5113 25.2.0 [Angular] Add Angular 8 to the peers dependencies for Angular projects
AG-5111 25.2.0 Marker formatter isn't called when using scatter chart
AG-5110 25.2.0 [Docs] Project built following instructions on "Getting started with Vue3" docs page doesn't compile
AG-5109 25.2.0 [Excel Export] Add property to change the default font size
AG-5107 25.2.0 Header tooltip doesn't make the string value safe for showing
AG-5102 25.2.0 Column group with a hidden column returns 2 top-level columns for api.getColumnDefs()
AG-5101 25.2.0 Memory leak when applying high-frequency batch inserts with sorting applied
AG-5096 25.2.0 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 R More Info
This is not an issue with AG Grid. Instead, this is caused by a Chrome bug: https://bugs.chromium.org/p/chromium/issues/detail?id=797708 Please star this Chrome issue to increase its priority with the Chromium team.
AG-5092 25.2.0 Call to get scrollbarWidth leaks DOM elements
AG-5090 25.2.0 [Regression] When toggling column visibility using checkboxes in column menu/column tool panel, onColumnVisible params not populated with visible/column values
AG-5084 25.2.0 When using tree data, calling setColumnDefs displays group column but with blank cell values More Info
As a workaround, please specify Col ID as shown in this plunker: https://plnkr.co/edit/anwqZYa2JeTjHARW
AG-5079 25.2.0 Deprecate `suppressColumnStateEvents` D More Info
suppressColumnStateEvents has been deprecated
AG-5073 25.2.0 Setting suppressColumnStateEvents=true prevents restoring column row grouping and aggregation state
AG-5070 25.2.0 When returning false in fillHandle fillOperation callback, the fill value is changed for subsequent cells R
AG-4980 25.2.0 [Regression] Unable to save customized theme and render the value in integrated chart
AG-4810 25.2.0 [Chart] Introduce an option that prevents chart tooltips to show up immediately
AG-4647 25.2.0 [Infinite Row Model] Selected cell loses focus when scrolled far out of view
AG-4471 25.2.0 [Excel Export] Allow exporting cell date-type values to Excel date format
AG-4095 25.2.0 [Charts] Allow suppressing chart highlight
AG-4087 25.2.0 [Charts] Allow positioning bar/column labels outside of bars/columns
AG-4060 25.2.0 Allow disabling chart highlight when hovering over a chart element
AG-3921 25.2.0 [Chart] Improve layout of overlapping bubbles in bubble charts
AG-3835 25.2.0 [Chart] Add a label formatter for pie/doughnut charts similar to the label formatter option for bar charts
AG-3833 25.2.0 [Excel Export] Allow column spanning with Excel export
AG-3754 25.2.0 Allow charts to handle long labels without breaking the layout
AG-3664 25.2.0 [Chart] Add support for placing multiple axes on a single side of the chart
AG-3650 25.2.0 [Excel Export] Set the Excel export default font size to the default font size used by Excel for Windows
AG-3571 25.2.0 [Charts] Provide scrollbar for big charts
AG-3439 25.2.0 [Excel Export] Allow carriage-returns/multiple line formatting when exporting to Excel More Info
You can export long text values on multiple lines using the code below: excelStyles: [{ id: 'address', alignment: { wrapText: true } }] See this shown below: https://plnkr.co/edit/kYtvuYCpTNgRtvM3
AG-2607 25.2.0 [SSRM] When trying to scroll to a particular row far away given a large number of records (
AG-2553 25.2.0 [Excel Export] Allow customising of group column headers when exporting to Excel
AG-2432 25.2.0 [Excel Export] Allow exporting images to Excel in the exported grid data cells
AG-2370 25.2.0 [Excel Export] Allow exporting multiple grids to a single Excel file by supporting multiple sheets
AG-2333 25.2.0 [Excel export] Allow inserting hyperlinks in the cells of the exported Excel file
AG-2303 25.2.0 [Excel Export] Allow exporting formulas to Excel
AG-1504 25.2.0 [Excel Export] Add author value to generated XML Excel to avoid edit error
AG-5159 25.1.0 [Layout & Theming] Investigate styling scrollbar thumb according to Light/Dark mode More Info
This is an application-level concern. If the web application detects that the iOS/MacOS Light/Dark mode is selected, it should change the ag-grid theme accordingly to ensure that the scrollbar thumb is visible in the selected Light/Dark iOS/MacOS theme.
AG-5129 25.1.0 When rendered near the right edge of the viewport, Angular custom tooltip components are positioned incorrectly and clipped by viewport edge R More Info
This issue was due to missing styles causing the width calculation to be wrong. See this fixed example: https://plnkr.co/edit/deeZ4VrfX0RQOYdL
AG-5085 25.1.0 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 25.1.0 [Regression] Empty string or null value is pasted as a string with a space character
AG-5074 25.1.0 [Regression] When using the new clipboard implementation, empty values cannot be pasted into grid cells
AG-5054 25.1.0 [Charts] When using cross-filtering, pie chart tooltips are showing the same value for the filtered and non-filtered segments of the chart
AG-5051 25.1.0 [Regression] Master rows without children are rendered without indentation
AG-5050 25.1.0 When using tree data, inserting a group row via transaction doesn't insert at correct index R More Info
This is not a bug. The user is not inserting one group, they are inserting one LEAF and then the grid is creating a Filler Group group: https://www.ag-grid.com/documentation/javascript/tree-data/#filler-groups The grid keeps the items in the same order as provided, however if the item is not provided (which is the case for Filler Group), then the order is indeterminate. To fix this, please don't depend on Filler Groups - instead create the group row (at the required location) first and then add the child row as a separate item. Here is an updated plunker implementing this approach: http://plnkr.co/edit/o6hizbX8kr1BsqoX Note that the new row is inserted at the correct position.
AG-5049 25.1.0 Ungrouping a hidden column makes it visible again R More Info
In order to prevent the column from becoming visible after ungrouping, you need to set suppressMakeColumnVisibleAfterUnGroup: true This approach is shown here: https://plnkr.co/edit/RnZJPcw3AJPkmBon?preview
AG-5048 25.1.0 Allow RowDragComp to be rendered in a custom target
AG-5047 25.1.0 When refreshValuesOnOpen=true, async set filter values are loaded twice the first time set filter is opened
AG-5043 25.1.0 RowDropZoneParams should be exported
AG-5042 25.1.0 Remove performance issue around calling rowNode.setExpanded() multiple times
AG-5041 25.1.0 When Column Definitions are updated, column groups lose expand/collapse state More Info
In order to keep expand/collapse state, you must have groupId set on the column group as shown in sample below. Open sample, expand column group, click button above grid - group header expand state is kept. https://plnkr.co/edit/VN3mZ7PKDRzShcqq
AG-5040 25.1.0 Column autoSize respects text size of cell values modified via cellClassRules but not rowClassRules More Info
The issue was caused by the specific implementation route chosen. Instead of cell class rules, you should be putting settings that alter text size in CSS classes instead of setting styles for each cell individually. In order to implement this, we recommend to instead create a CSS selector `ag-row .ag-cell` and set any setting that changes font-size there, as shown here: https://plnkr.co/edit/UtKQGQ4e7JYEpGOS
AG-5036 25.1.0 Update React Props if refresh is invoked but not implemented on custom component
AG-5033 25.1.0 [React] Allow ternary expressions when adding Ag-Grid React Column More Info
Note that applyColumnDefOrder will need to be set in order for column order to be maintained.

See the Applying Column Order documentation for more information.
AG-5032 25.1.0 [Regression] Column Group expand/collapse button shown unnecessarily
AG-5029 25.1.0 When using master/detail grid, horizontal scrollbar on detail grid (using flex) flashes on/off when grid is resized R More Info
Not possible to fix. The browser is showing the scrollbar (because the contents don't fit) before the grid is given the chance to rectify the situation. We do exaggerate the problem by debouncing by 50ms, so the scrollbar is visible for longer, however even if taking the debounce out, there will still be a flicker. What the user can do to fix is use grid property suppressHorizontalScroll on the detail grid - which would then never show the horizontal scroll, which could make sense for them - however if user widens a column via the grid's UI, then this will create a UX issue for them (as no scrollbar to view all the columns).
AG-5028 25.1.0 React Component attempts to modify frozen props
AG-5021 25.1.0 Expanding groups with Footer causes the grid to lose focus
AG-5019 25.1.0 When using autoHeight on a column with paging, top area of the grid is blank after purging server-side cache
AG-5017 25.1.0 Deprecate Declarative Support for Angular D More Info
Declarative support for column definitions (i.e.
AG-5016 25.1.0 [Regression] Missing indeterminate state icon for 'Select All' checkbox in the set filter
AG-5011 25.1.0 Regression in Combination of Different Series Types Chart Example
AG-5007 25.1.0 [Regression] When updating records using tree data and immutable data records to be removed are shown as blank
AG-5006 25.1.0 [Regression] Screen readers announces clicking on the header checkbox selection as "space" instead of "checked/unchecked"
AG-5002 25.1.0 Add alwaysShowHorizontalScroll to gridOptions
AG-5001 25.1.0 For Print Example logs errors in the React FW
AG-4998 25.1.0 [Regression] React - Context not updated after a change and returns the old value
AG-4995 25.1.0 [Regression] Applying filter model in onGridReady doesn't work in v25 server-side row model
AG-4994 25.1.0 All floating filter components recreated unnecessarily when applying column state to one column
AG-4993 25.1.0 Cell editor is closed when new row is added to grid R
AG-4988 25.1.0 enableBrowserTooltips doesn't work for Headers
AG-4987 25.1.0 [Regression] Out-of-place textbox in the upper-left corner of the chart
AG-4986 25.1.0 [Regression] Pasting using ClipboardAPI doesn't work and throws an exception in Firefox More Info
Until this is resolved, temporarily revert to the old (pre-v25) Clipboard API by setting: suppressClipboardApi: true This is demonstrated in this sample: https://plnkr.co/edit/lUD6gTYSlqPmlATA
AG-4985 25.1.0 Improved performance for when 100+s of columns
AG-4979 25.1.0 dnd-ghost isn't rendered when grid is on fullscreenMode
AG-4972 25.1.0 [Angular] Master-Detail - detailRowAutoHeight does not work in Angular with customDetailCellRenderer R More Info
Not a bug. To fix, include the following CSS. app-detail-cell-renderer { display: inline-block; } Basically Angular leaves in the Angular DOM elements which don't have any style by default, including not getting sized correctly.
AG-4971 25.1.0 [Regression] When using server-side row model with paging, pagination panel showing "1 to ? of more"
AG-4970 25.1.0 When using infinite scrolling, pressing CTRL+DOWN ARROW causes grid to lose focus
AG-4969 25.1.0 [Regression] All previously loaded cell renderers refresh when a new data block is loaded
AG-4968 25.1.0 [Regression] Set filter - filterParams.cellRenderer throws error when given null/empty string/undefined data value
AG-4965 25.1.0 [Regression] Horizontal scrollbar flickers off and on for specific grid height R More Info
This flickering happens because the size of the viewport is changing from page to page when using paginationAutoPageSize:true. There are 2 ways to resolve this depending on the layout you want: 1) Set `flex: 1` or `sizeColumnsToFit` - this will change the column layout 2) Set alwaysShowHorizontalScrollbar: true to always display a horizontal scrollbar, keeping the column layout
AG-4962 25.1.0 When clicking a grouped row, the grid returns two rows with the same rowIndex
AG-4961 25.1.0 ClipboardApi doesn't work when grid is hosted in an iframe More Info
Until this bug is resolved, temporarily revert to the old (pre-v25) Clipboard API by setting: suppressClipboardApi: true This is demonstrated in this sample: https://plnkr.co/edit/lUD6gTYSlqPmlATA
AG-4955 25.1.0 When enableRTL=true and zooming (to produce certain resolutions) horizontal scrollbar doesn't scroll viewport at all and scrolls headers in opposite direction
AG-4949 25.1.0 Add Angular 11 to list of peerDependencies
AG-4948 25.1.0 [Regression] Cannot paste a copied single value in multiple cells anymore
AG-4947 25.1.0 [Typings] API Method setModel(model: ProvidedFilterModel) doesn't accept set filter models, just ProvidedFilterModel
AG-4946 25.1.0 [Regression] When scrolling fast vertically, React cell renderer throws console exception "React Component not created within 500ms"
AG-4944 25.1.0 npm install ag-grid-angular breaks on Angular 11/npm 7.3/node 15.5.1
AG-4942 25.1.0 [Regression] After a column is made invisible, Column Header Component Framework still renders its header text
AG-4941 25.1.0 Browser freezes if getRowHeight() returns zero
AG-4938 25.1.0 CSRM and Transactions, empty groups are not removed
AG-4915 25.1.0 [Typing] setModel method doesn't allow null parameters needed to reset filter
AG-4914 25.1.0 Applying column state to one grid doesn't propagate to aligned grids
AG-4913 25.1.0 [Regression] Column visibility change events don't propagate across aligned grids
AG-4904 25.1.0 Allow theming chart axes by position
AG-4902 25.1.0 Floating filter input value doesn't get reset after changing to a custom filter operator
AG-4901 25.1.0 When using specific numeric values with decimal fraction parts, aggregated value is incorrect R
AG-4899 25.1.0 Grid container with fractional width value causes unnecessary horizontal scrollbar at zoom level = 150%
AG-4897 25.1.0 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 25.1.0 When using multi-filter, the first time the set filter is modified, onFilterModified has filterInstance model= null
AG-4891 25.1.0 [Regression] Changing suppressMovable from true to false does not work using setColumnDefs
AG-4890 25.1.0 [Regression] Grid filter not refreshed after setting a modified filterModel More Info
Until this is addressed, please use a workaround as shown in this sample: 1. Open https://plnkr.co/edit/BAvD6JVQjdqhNd20 2. Open filter for LETTER column 3. Uncheck 'C' 4. Click SET FILTER BUTTON above grid to remove 'b' from filterModel and reapply filter Actual & Expected: Only row 'a' remains in grid
AG-4879 25.1.0 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 More Info
Two things were done when applyOrder=true is passed to applyColumnsState: a) Columns missing the the state list were previously ignore and thus ended up in unintended locations. Now columns that are missing are added to the end in the same order they were before. b) After the new order of all columns is worked out, if it breaks rules of Married Children, then the new order is discarded and the state is applied as if applyOrder=false.
AG-4878 25.1.0 [Regression] Row-drag handle not displayed in cells after column definitions are updated and refreshCells is called
AG-4872 25.1.0 Filter menu closes when filtering values causes a scroll (ag-grid-community only)
AG-4861 25.1.0 In a numeric column sort, NaN and null values are not sorted correctly R
AG-4834 25.1.0 Column group hides completely when hiding its last visible column when there's a sub-group
AG-4827 25.1.0 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 25.1.0 When enableRTL=true on certain resolutions (with browser zoom), horizontal scrollbar scrolls viewport but column headers scroll lags or scrolls in opposite direction
AG-4790 25.1.0 [Chart] Add a formatter for chart legend items
AG-4784 25.1.0 [Column Filters] Allow text filter to keep trailing white space while the user is typing
AG-4750 25.1.0 [Chart] Add event for legendClick
AG-4738 25.1.0 [Regression] Pressing TAB key no longer allows to move from one floating filter editor to another R
AG-4709 25.1.0 [Excel Export] Allow returning Excel export file in Object format (as BLOB)
AG-4679 25.1.0 [Frameworks] None of the frameworks allow range selection in detail grid
AG-4513 25.1.0 [Excel export] getDataAsExcel does not match exportDataAsExcel, xlsx not supported
AG-4459 25.1.0 [Frameworks] Remove warnings when using v23+ with Angular version More Info
We will not be addressing this issue in v23 where it was reported. This issue is no longer reported in subsequent ag-Grid versions. This is why we encourage you to update to a newer version of ag-Grid which doesn't issue these npm warnings.
AG-3787 25.1.0 [Keyboard Navigation] Allow keyboard navigation for full-width group rows (groupUseEntireRow: true)
AG-3756 25.1.0 groupHideOpenParents is not respected in Excel export
AG-3710 25.1.0 Grid loses focus when keyboard navigating into a full-width row using the TAB key
AG-3572 25.1.0 [Updating Data] Allow suppressing sort and/or grouping after updating data unless the user requests another sort/group More Info
To prevent sorting, filtering and grouping after an update transaction, set the grid property suppressModelUpdateAfterUpdateTransaction=true. There is a new example in the docs in the Transactions page.
AG-3482 25.1.0 [React] Adjust ag-grid react naming conventions so that they adapt to the default ts-lint provided by create-react-app
AG-3263 25.1.0 Resizing pinned columns when using domLayout='print' breaks column headers layout
AG-3028 25.1.0 [Charts] Add Treemap Chart Series
AG-1583 25.1.0 [React] Improve life cycle of call when calling setFilterModel on a React filter component
AG-113 25.1.0 [Scrolling] Allow always showing scrollbars More Info
The `alwaysShowHorizontalScrollbar` and `alwaysShowVerticalScroll` can be used to always display both scrollbars.
AG-4964 25.0.1 [Regression] When using immutable data, group records without any child records are no longer removed from grid
AG-4954 25.0.1 [Regression] Dragging a column header out of the grid doesn't remove it anymore
AG-4829 25.0.1 [Regression][React] Column visibility change events don't propagate across aligned grids
AG-5307 25.0.0 [Github packaging] Github source code for ag-grid-enterprise v23.1.0 contains code for v25.0.0
AG-4909 25.0.0 Add support for synchronous callbacks when using hooks
AG-4907 25.0.0 Accessing a missing field returns undefined, while accessing a property of a missing field returns null
AG-4905 25.0.0 Applying column filter state via applyColumnState resets page index when using server-side row model More Info
Tested and works in v25.0.1. This plunker demonstrates: http://plnkr.co/edit/CPxWhJJLwSLmMU3e
AG-4885 25.0.0 [Chart] In scatter series, having a series with a just one distinct X-value creates an invalid X-axis range
AG-4884 25.0.0 [Regression] Vertically scrolling fast causes bottom rows to appear as whitespace
AG-4867 25.0.0 [Regression] agSelectCellEditor long text items wrapped on multiple lines over each other instead of shortened with ellipsis (...)
AG-4866 25.0.0 [Regression] Calling setColumnDefs twice throws an exception
AG-4860 25.0.0 Scatter charts render invalid data points at the top left corner of the chart (shouldn't be rendered)
AG-4841 25.0.0 [Chart] nodeClick event doesn't fire for integrated charts More Info
Fixed by AG-4760 - Support nodeClick and seriesNodeClick in themes and on touch devices.
AG-4838 25.0.0 [Accessibility] Allow setting the aria-label in the row selection checkbox
AG-4832 25.0.0 NPM 7.0 throws exception upon installing ag-grid with React v17.0.0
AG-4828 25.0.0 [Column Header] Allow headerValueGetter to use different values for params.location to distinguish between header, columnToolPanel and filterToolPanel
AG-4812 25.0.0 When user presses CTRL+C, grid unnecessarily scrolls to focused cell thus triggering unneeded data request
AG-4811 25.0.0 While selecting rows with SHIFT+click, the selected rows range cannot be reduced
AG-4805 25.0.0 [Regression] When setting multiple filtering conditions in date filter, time is unnecessarily added to floating filter input value
AG-4803 25.0.0 [Regression] Multi-column sort order changes unexpectedly
AG-4798 25.0.0 Using setModel() does not apply filter if providing async values in filterParams
AG-4795 25.0.0 [Regression] Custom filter options are not localized by a call to localeTextFunc
AG-4792 25.0.0 If range selection is not enabled, it's not possible to paste single cells
AG-4787 25.0.0 Add Cross Filtering to Integrated Charts
AG-4786 25.0.0 [Regression] When using Chrome on an Android device, column groups fail to expand on touch
AG-4785 25.0.0 [Regression] Right-clicking a cell to open context menu doesn't select cell to indicate which cell was clicked
AG-4783 25.0.0 [Website] Set filter showing duplicate (Select All) and broken image on home page
AG-4778 25.0.0 [Internet Explorer 11] Typing in outside text input enters text in the last open agLargeTextCellEditor in the grid
AG-4777 25.0.0 Implement support for simultaneous grouping and stacking in bar series
AG-4776 25.0.0 [Docs] Selecting data for export example doesn't work when only exporting selected rows to CSV or Excel
AG-4772 25.0.0 [Internet Explorer 11, Firefox] Number filter value editor doesn't apply validation and allows entering text values
AG-4769 25.0.0 colDef.minWidth ignored when minWidth == 0
AG-4767 25.0.0 [Regression] Horizontal scrolling breaks at specific zoom levels (due to invalid call to isIOSUserAgent in shouldBlockScrollUpdate)
AG-4760 25.0.0 Support nodeClick and seriesNodeClick in themes and on touch devices
AG-4759 25.0.0 [Regression] When using enableRTL=true, scrolling all the way left breaks horizontal scrolling
AG-4758 25.0.0 [Column Tool Panel] Calling api.setColumnDefs() resets the expanded state of column groups in column tool panel
AG-4755 25.0.0 [Regression] When applying a custom column layout in columns tool panel, changing column visibility reverts to original column layout
AG-4754 25.0.0 [Regression] Clicking row checkboxes while holding SHIFT key selects individual records instead of the range
AG-4753 25.0.0 When groupRemoveSingleChildren=true, the group column value is not displayed in the group column for the single nodes More Info
New property added showOpenedGroup. When showOpenedGroup=true, then group columns will show the opened group.
AG-4749 25.0.0 onCellFocused called twice after context menu close
AG-4748 25.0.0 [Regression] Column header text does not change to 'sum(column name)' after column aggregated
AG-4746 25.0.0 Tree data & filtering aggregated values More Info
There is a new grid property suppressAggFilteredOnly which when enabled, removes this issue. The problem is aggregation results are changing when the filters change. So filtering by aggregated values is actually filtering by a moving target. The filter is working of the 'last current value', which means when you change the filter, it is filtering against the aggregated result from the last filter. The new property 'suppressAggFilteredOnly' gets aggregations to ignore the filter, thus showing the non-filtered aggregated result always. This givens consistent filtering as the aggregation result doesn't change dependent on the filter.
AG-4743 25.0.0 [Functional React] When using a custom date filter adding a second date value clears entire filter popup and removes filtering condition
AG-4741 25.0.0 When a part of agMultiColumnFilter, set filter doesn't apply its cellRenderer
AG-4739 25.0.0 [Regression] Floating filter popup doesn't close even though closeOnApply=true
AG-4736 25.0.0 [API] Header Cell params now gets passed eGridHeader, so events can be added by client code
AG-4735 25.0.0 suppressHeaderKeyboardEvent is not preventing Enter (sorting / open menu / expand / collapse)
AG-4732 25.0.0 Using applyTransactionAsync to add a new row at a specific index doesn't work with tree data -
AG-4730 25.0.0 Master/Group row expansion on the last row increases row height by 1px
AG-4726 25.0.0 [API] The refresh function on ICellRenderer should type params as ICellRendererParams, not any
AG-4722 25.0.0 Histogram 'bins' config doesn't work with a single bin
AG-4721 25.0.0 [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 More Info
Until we resolve this, please use workaround: https://plnkr.co/edit/hth0RuCKa29BLudB
AG-4720 25.0.0 Add ability to restore charts using model only
AG-4719 25.0.0 [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-4718 25.0.0 Custom themes 'defaults' are not recognized, expected 'overrides' instead
AG-4716 25.0.0 Add support for strictNullChecks in TypeScript
AG-4713 25.0.0 Column menu button rendered outside column header and inaccessible when column is too narrow
AG-4710 25.0.0 Filtering multiple values of complex objects when using floating filters throws an exception
AG-4708 25.0.0 Default valueGetter for columns with a field specified doesn't support empty strings
AG-4707 25.0.0 Having many instances of ag-grid on the same page makes editors less responsive to user input
AG-4706 25.0.0 Improve groupHideOpenParents performance when using many groups More Info
After profiling the grid with the provided example, it showed getColumn() method in Column Controller was a bottleneck. This was doing looping over columns. Now instead the columns are also stored in a map (ID -> Column) and the map is now used instead of looping over the list. This gives a performance boost.
AG-4703 25.0.0 [Regression] Using FireFox date editor clear button in ag-Grid filter clears value but doesn't update grid rows
AG-4701 25.0.0 Make colDef.shouldWrap reactive
AG-4699 25.0.0 [Accessibility] Allow setting the values for aria-label and aria-labelledby for the top grid element More Info
The grid API now has a `setGridAriaProperty` method that can be called to set any ARIA property in the grid panel.
AG-4686 25.0.0 Icons Example - JS Version not showing FA icons (showing X and ticks)
AG-4683 25.0.0 Interface GetDetailRowDataParams is missing from the list of exported types
AG-4682 25.0.0 [Example Runner React] Cannot edit text field
AG-4681 25.0.0 [Export] - Example broke
AG-4676 25.0.0 Exception thrown when double-clicking a URL inside a grid cell
AG-4675 25.0.0 Auto-group column state isn't reset when clicking RESET COLUMNS in column menu