Skip to content
This repository has been archived by the owner on Jun 4, 2024. It is now read-only.

Breaking Changes Log #207

Open
chriddyp opened this issue Nov 2, 2018 · 3 comments
Open

Breaking Changes Log #207

chriddyp opened this issue Nov 2, 2018 · 3 comments
Labels
dash-type-epic Placeholder for multiple related issues attaining a specific goal

Comments

@chriddyp
Copy link
Member

chriddyp commented Nov 2, 2018

👋 Dash Community 👋

We'll keep this issue updated when we make breaking changes to the DataTable. Subscribe to this issue to stay aware of these changes.

Note that we'll indicate breaking changes through our versioning system (semver). If we bump the major version number (major.minor.micro), then it means that we've made a breaking change to the API.

Not all breaking changes will be large, so don't worry. We'll always include steps for upgrading between major versions in our CHANGELOG.md.

Thank you for your diligence and support ❤️

@Marc-Andre-Rivet Marc-Andre-Rivet added the dash-type-epic Placeholder for multiple related issues attaining a specific goal label Nov 5, 2018
@plotly plotly deleted a comment from grahamford Feb 6, 2019
@chriddyp
Copy link
Member Author

chriddyp commented Feb 6, 2019

Breaking change notice

In 3.2.0, column.type: 'dropdown' has been moved to column.presentation: 'dropdown'.

That is, before you had:

DataTable(columns=[{'id': 'column-1', 'name': 'Column 1', 'type': 'dropdown'}]

This would now be:

DataTable(columns=[{'id': 'column-1', 'name': 'Column 1', 'presentation': 'dropdown'}]

@GitTorres
Copy link

Thanks for incorporating this component!

Is DataTable still officially in Alpha, as mentioned in the docs, dated Nov 1, 2018? I'd like to use this for a work project but there will be certain push-back if so. Thanks!

@alexcjohnson
Copy link
Collaborator

#446 introduced a big chunk of breaking changes. This is released in dash-table 4.0.0, included in dash 1.0.0, and officially removes the alpha designation - we will not be introducing any more breaking changes in the forseeable future, and if we do it would constitute a new major version of dash and dash-table.

From the CHANGELOG:

NEW

- `column.sort_as_null`: Allows sorting behavior customization.
    Accepts an array of string, number or booleans.

REMOVED

- `column.clearable`: Allows clearing the value of a dropdown cell.
    Removed in favor of `dropdown_**` `clearable` nested property.
- `column.options`
    Removed. Redundant with `dropdown`.
- `pagination_settings`
    Replaced by two props `page_current` and `page_size`.

RENAMED

- `column_static_tooltip`
    Renamed to `tooltip`.
- `column_conditional_tooltips`
    Renamed to `tooltip_conditional`.
- `filter`
    Renamed to `filter_query`.
- `sort_type`
    Renamed to `sort_mode`.
- `derived_filter_structure`
    Renamed to `derived_filter_query_structure`.

MODIFIED

- `column.deletable`: Allows column deletion.
    Now accepts a boolean or an array of booleans (for multi-line headers).
    For example, if there are multiple headers and you want the second header row to be deletable, this would be `[False, True]`.
- `column.editable_name`: Allows column renaming.
    Renamed to `column.renamable`
    Now accepts a boolean or an array of booleans (for multi-line headers).
    For example, if there are multiple headers and you want the second row's header's name to be editable, this would be `[False, True]`.
- `column.id`
    Now accepts `string` only -- `number` column ids can be casted to string.
- `n_fixed_columns`: Will fix columns to the left.
    Renamed to `fixed_columns`
    Now accepts an object { headers: boolean, data: number } instead of a number.
    { headers: true } determines the number of columns to fix automatically. For example, if the rows are selectable or deletable, { headers: true } would fix those columns automatically. If { headers: true, data: 2 }, it would fix the first two data columns in addition to the selectable and deletable if visible. 
- `n_fixed_rows`: Will fix rows to the top.
    Renamed to `fixed_rows`
    Now accepts an object { headers: boolean, data: number } instead of a number.
    { headers: true } determines the number of rows to fix automatically (i.e. if there are multiple headers, it will fix all of them as well as the filter row).
    { headers: true, data: 2} would fix all of the header rows as well as the first 2 data rows.
-  `pagination_mode`
    Renamed to `page_action`.
    `'fe'` is now `'native'`, `'be'` is now `'custom'`, and `false` is now '`none'`
-  `column_static_dropdown`
    Renamed to `dropdown`.
    Now an object with each entry refering to a Column ID. Each nested prop expects.
    `clearable` and `options`.
- `column_conditional_dropdowns`
    Renamed to `dropdown_conditional`.
    `condition` changed to the same `if` nested prop used by styles.
    `dropdown` renamed to `options`.
- `dropdown_properties`
    Renamed to `dropdown_data`.
    Matches the `data` structure.
- `tooltips`
    Renamed to `tooltip_data`.
    Matches the `data` structure.
- `filtering`
    Renamed to `filter_action`.
- `sorting`
    Renamed to `sort_action`.
- `sorting_treat_empty_string_as_none`
    Renamed to `sort_as_null`.
    Now accepts an array of string, number or booleans that can be ignored during sort.
    Table-level prop for the `column.sort_as_null` column nested prop.
- `style_data_conditional`
    Renamed `filter` to `filter_query`.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dash-type-epic Placeholder for multiple related issues attaining a specific goal
Projects
None yet
Development

No branches or pull requests

4 participants