Changelog — Bootstrap-Flask 2.5.x documentation

# Changelog

## 2.5.0

Release date: 2025/5/2

- Drop Python 3.8 support.

- Upgrade to Bootstrap 5.3.5, including Bootswatch (adding theme Brite).

- Fix icon font loading issue when `BOOTSTRAP_SERVE_LOCAL` is `True`.

- Add support for customzing the form input with `label_class`, `radio_class`, and `description_class` parameters in the `render_kw` dict.

## 2.4.2

Release date: 2025/3/9

- Add support for icon classes.

- Upgrade to Bootstrap Icons 1.11.3.

- Replace deprecated color `muted` with `secondary`.

## 2.4.1

Release date: 2024/10/3

- Fix the badge classes in the `render_nav_item` macro for Bootstrap 5.

- Add `_badge_classes` param to the `render_nav_item` macro to set badge classes.

- Support `bootswatch_theme` as parameter to `load_css`.

## 2.4.0

Release date: 2024/4/7

- Test against Python 3.12.

- Replaced deprecated color “muted” with “secondary” (#340).

- Adding `body_classes` parameter to `render_table` (#350).

- Migrate setup.py to pyproject.toml.

## 2.3.3

Release date: 2023/11/30

- Upgrade to Bootstrap Icons 1.11.2.

## 2.3.2

Release date: 2023/10/11

- Fix the incorrect JS file integrity value.

## 2.3.1

Release date: 2023/10/11

- Upgrade to Bootstrap 5.3.2, Bootswatch 5.3.1, and Bootstrap Icons 1.11.1.

- Set up the Azure web app for the example application.

## 2.3.0

Release date: 2023/7/24

- Drop Python 3.7 support, and test against Python 3.11.

- Render enums in tables by their labels.

- Support creating action URLs for dict data (#268).

- Upgrade to Bootstrap 5.3.0, Bootstrap Icons 1.10.5, and Popper 2.11.8.

## 2.2.0

Release date: 2022/11/20

- Drop Python 3.6 support, and test against Python 3.10.

- Add support for strict Content Security Policy (CSP) (#252)

- Upgrade to Bootstrap 5.2.2, Popper 2.11.6, Bootswatch 5.2.2, and Bootstrap Icons 1.9.1.

- Fix Flask-SQLAlchemy `paginate` named parameters in tests and examples.

- Support to preview available Bootswatch theme in the example application.

- Remove `.DS_Store` files from the distribution files.

## 2.1.0

Release date: 2022/8/20

- Add `safe_columns` and `urlize_columns` parameters to `render_table` macro to support rendering table column as HTML/URL (#204).

- Rename the `badge` parameter of `render_nav_item` macro to `_badge`.

- Rename the `use_li` parameter of `render_nav_item` macro to `_use_li`.

## 2.0.2

Release date: 2022/2/27

- Add the missing `form-select` class for Bootstrap 5 form select fields (#211).

## 2.0.1

Release date: 2022/1/27

- Remove extra quotation mark in `render_nav_item` (#201).

- Fix signature of `Bootstrap.__init__()` incompatible with older version (#198).

## 2.0.0

Release date: 2022/1/13

- Drop Python 2 and 3.5 support.

- Combine `class` argument of `render_field` or `field.render_kw.class` with Bootstrap classes (#159).

- Add initial support for Bootstrap 5 (#161):

    - Add `Bootstrap4` class and deprecate `Bootstrap`.

    - Add `Bootstrap5` class for Bootstrap 5 support.

    - Move Bootstrap 4-related files to `bootstrap4` subfolder, and deprecate template path `bootstrap/`.

    - Bootstrap 4 macros are in the `bootstrap4/` template folder, and Bootstrap 5 macros are in `bootstrap5/`.

    - Add separate tests, templates, static files, and examples for Bootstrap 5.

- Remove the deprecated `form_errors` macro and the URL string variable support in `render_table`.

- Render boolean field as a Bootstrap switch with `SwitchField` class (#175).

- Add `BOOTSTRAP_FORM_GROUP_CLASSES` config for Bootstrap 5, defaults to `mb-3`. Also add a `form_group_classes` parameter for `render_form`, `render_field`, and `render_form_row` (#184).

- Add `BOOTSTRAP_FORM_INLINE_CLASSES` config for Bootstrap 5, defaults to `row row-cols-lg-auto g-3 align-items-center`. Also add a `form_inline_classes` parameter for `render_form` (#184).

- Add `form_type` and `horizontal_columns` parameters to `render_form_row` (#192).

- Add support for WTForms range fields (`DecimalRangeField` and `IntegerRangeField`) (#194).

- Bump Bootstrap Icons to v1.7.2.

- Bump Bootstrap & Bootswatch to 4.6.1/5.1.3.

## 1.8.0

Release date: 2021/9/5

- Fix bootswatch theme bug: remove theme name `'default'` (#141).

- Add configuration `BOOTSTRAP_TABLE_VIEW_TITLE`, `BOOTSTRAP_TABLE_EDIT_TITLE`, `BOOTSTRAP_TABLE_DELETE_TITLE`, `BOOTSTRAP_TABLE_NEW_TITLE` to support changing the icon title of table actions (#140).

- Introduce a new and better way to pass table action URLs (#146, #151).

- Deprecate `action_pk_placeholder` and placeholder action URLs in `render_table`.

- Support SRI for JS/CSS resources (#142).

## 1.7.0

Release date: 2021/6/10

- Add a `custom_actions` parameter for the `render_table` macro. When passing a list of tuples `[(title, bootstrap icon, link)]` to the `custom_actions` parameter, the `render_table` macro will create an icon (link) on the action column for each tuple in the list. The title text (first index of each tuple) will show when hovering over each `custom_actions` button (#134).

- Update Bootstrap Icons to v1.5.0.

- Improve action icons for `render_table`, now the icons can be styled with the `action-icon` CSS class (#137).

- Change the default `action_pk_placeholder` to `':id'`. The support to the old value will be removed in version 2.0 (#138).

## 1.6.0

Release date: 2021/5/29

- Add a `new_url` parameter for the `render_table` macro. When passing an URL to the `new_url` parameter, the `render_table` macro will create an icon (link) on the action header (#133).

- Fix the display of the delete icon for `render_table` macro (#132).

## 1.5.3

Release date: 2021/5/18

- Fix class for horizontal form label (#131).

- Fix hidden field label issue for `render_field` macro (#130).

- Refactor tests (#125).

## 1.5.2

Release date: 2021/4/13

- Fix render_table macro for SQLAlchemy >= 1.4 (#124).

## 1.5.1

Release date: 2020/11/9

- Fix missing end angle bracket for bootswatch CSS link tag (#110).

- Migrate tests to pytest (#109).

## 1.5

Release date: 2020/8/30

- Fix `tox` broken environments.

- Fix `ResourceWarning` in `test_local_resources` (#78).

- Fix `IndexError` when using `render_table` with empty data (#75).

- Add support for actions column in `render_table` macro (#76).

- Add support for Bootswatch theme via configuration `BOOTSTRAP_BOOTSWATCH_THEME` (#88).

- Fix checkbox render issue: add `for` attribute to link `<label>` with checkbox, only add `is-invalid` class when there are errors.

- Change default button style class from `btn-secondary` to `btn-primary` (#62).

- Deprecated `form_errors` macro and it will be removed in 2.0, add `render_hidden_errors` macro as replacement.

- Add `render_icon` macro to render Bootstrap icon with Bootstrap Icon SVG Sprite (#99).

- Add configuration `BOOTSTRAP_MSG_CATEGORY` to set default message category.

## 1.4

Release date: 2020/6/15

- Add `render_table` macro to render a Bootstrap table (#71).

## 1.3.2

Release date: 2020/5/30

- Support display error message for `RadioField` and `BooleanField`, display description for `RadioField`.

## 1.3.1

Release date: 2020/4/29

- Fix add `field.render_kw.class` to form label class attribute.

- Fix append extra space in class attribute when no `field.render_kw.class` presents (#63).

## 1.3.0

Release date: 2020/4/23

- Fix `enctype` attribute setting for WTForms `MultipleFileField` (Flask-Bootstrap #198).

- Fix WTForms field class append bug when using `render_kw={'class': 'my-class'}` (#53).

- Fix WTForms field description not showing for `BooleanField` (Flask-Bootstrap #197).

- Add configuration variable `BOOTSTRAP_BTN_STYLE``(default to ``primary`) and `BOOTSTRAP_BTN_SIZE``(default to ``md`) to set default form button style and size globally.

- Add parameter `button_style` and `button_map` for `render_form` and `render_field` to set button style and size.

## 1.2.0

Release date: 2019/12/5

- Add macro `render_messages` for rendering flashed messages.

- Fix rendering bug for WTForms `FormField` (#34).

## 1.1.0

Release date: 2019/9/9

- Update Bootstrap version to 4.3.1

## 1.0.10

Release date: 2019/3/7

- Added macro `render_form_row` for rendering a row of a bootstrap grid form.

## 1.0.9

Release date: 2018/11/14

- Fix missing error message when form type was horizontal.

- Fix missing input label for RadioField.

- Fix RadioField grid when form type was horizontal.

## 1.0.8

Release date: 2018/9/6

- Correct macro name used in `templates/bootstrap/form.html`: `form_field` –> `render_field`.

## 1.0.7

Release date: 2018/8/30

- Built-in resources loading not based on``FLASK_ENV``.

## 1.0.6

Release date: 2018/8/7

- Fix unmatched built-in jQuery filename. (#8)

## 1.0.5

Release date: 2018/8/7

- Fix KeyError Exception if ENV isn’t defined. (#7)

## 1.0.4

Release date: 2018/7/24

- Add missing `<script>` tag in resources URL. (#3)

## 1.0.3

Release date: 2018/7/22

- Built-in resources will be used when `FLASK_ENV` set to `development`.

- Change CDN provider to jsDelivr.

## 1.0.2

Release date: 2018/7/21

- Include `popper.js` before `bootstrap.js` in `bootstrap.load_js()`. (#2)

## 1.0.1

Release date: 2018/7/1

- Fix local resources path error

- Add basic unit tests

## 1.0

Release date: 2018/6/11

Initial release.