Anvil Extras v2.1

We’ve just released Anvil Extras v2.1.0 with:

Notable Change

  • @auto_refreshing - the original item will now be proxied rather than copied.
    Changes to the proxied item will make changes to the original item.
  • MultiSelectDropDown - the change event will only fire with user interaction.
    Previously also fired when the selected property was changed in code.
    This behaviour now matches other anvil Components - e.g. changing the selected_value
    of a DropDown does not fire the DropDown change event.

New Features

  • routing - a template argument was added to the @routing.route decorator.
    This argument determines which templates a route can be added to.
  • routing - a template can take multiple paths @routing.template(path=["admin", "user"])
  • routing - @routing.redirect() decorator added
  • hashlib module: implementation of some common hashing algorithms
  • utils.import_module: similar implementation to python’s importlib.import_module
  • MultiSelectDropDown: add events opened and closed

Bug Fixes

  • MultiSelectDropDown: fix change event should only fire on user interaction
  • @auto_refreshing: support auto_refreshing when the item is not explicitly set

v.2.1.1 released with:

Minor changes

  • augment ensure that "mouseenter" is always correct event type in "hover" events
  • augment adjust handling of RadioButton to work correctly with the augment module
  • routing - to catch arbirtrary query params in a route use url_keys=[routing.ANY]

Bug fixes

  • augment - DataGrid’s pagination click event prevented other events from being added
  • MultiSelectDropDown - all properties are now dynamic and can be updated in code
  • serialisation - support accelerated tables with linked columns
  • navigation - Now handles links with roles defined when setting ‘selected’
  • popovers fix bug scrolling on mobile

New Features

  • MultiSelectDropDown: add width property with options for fit and auto sizing
  • navigation - new set_title function for custom click handlers

v2.1.2 released today with:

Bug Fixes

  • routing - remove_from_cache will work across templates
  • MultiSelectDropDown - fix setting certain attributes dynamically cause events to stop firing

v2.1.3 released 03-Nov-2022 with:

Minor Changes

Bug Fixes

(Sorry, forgot to announce this one)!

v 2.1.4 released today with:

Bug Fixes


  • anvil_extras.uuid module can be replaced wholesale by uuid from stdlib
    DeprecatedWarning added to uuid.uuid4()

Minor Changes

  • Some component properties adjusted to type enum so they can be selected, rather than typed, in the designer