Skip to content

Remove deprecated API in Vaadin 25.0 #21396

@mshabarov

Description

@mshabarov

The following classes/methods/feature flags have to be removed in Vaadin 25.0:

Deprecated Classes

  1. HTML Components

    • Label class in com.vaadin.flow.component.html (marked for removal in version 24.1)
    • LabelElement class in com.vaadin.flow.component.html.testbench (marked for removal in version 24.1)
  2. Router Related

    • ClientRoutesProvider interface in com.vaadin.flow.router.internal (marked for removal)
  3. Security Related

    • ViewAccessChecker class in com.vaadin.flow.server.auth (marked for removal in version 24.3) and ViewAccessCheckerTest
    • SpringViewAccessChecker class in com.vaadin.flow.spring (marked for removal in version 24.3) and related test class SpringViewAccessCheckerTest
    • ViewAccessCheckerInitializer class in com.vaadin.flow.spring.security (marked for removal in version 24.3)
    • setSharedObjects method in VaadinStatelessSecurityConfigurer
  4. Spring Related

    • SpringVaadinSession class in com.vaadin.flow.spring (marked for removal)
  5. Maven Plugin Related

    • Fragment class in com.vaadin.flow.plugin.maven (marked for removal)

Deprecated Methods

  1. UI Class Methods

    • Methods in com.vaadin.flow.component.UI:
      • doInit(VaadinRequest) (replaced by doInit(VaadinRequest, int, String))
      • Methods marked with @deprecated(forRemoval=true) as "not enabled for client side"
  2. ValueContext Methods

    • Multiple constructors and methods in com.vaadin.flow.data.binder.ValueContext (replaced by versions with binder reference)
  3. ReactAdapterComponent Methods

    • readFromJson(String, Class) (replaced by readFromJson(JsonNode, Class))
    • readFromJson(String, TypeReference) (replaced by readFromJson(JsonNode, TypeReference))
    • writeToString(Object) (replaced by writeToJson(Object))
  4. Router Methods

    • Methods in com.vaadin.flow.router.Router
    • Methods in com.vaadin.flow.router.NavigationEvent
    • Methods in com.vaadin.flow.router.ErrorNavigationEvent
    • parsePathToSegments(String) in com.vaadin.flow.router.LocationUtil (replaced by parsePathToSegments(String, boolean))
    • Constructor in com.vaadin.flow.router.MenuData (replaced by a different constructor)
  5. Configuration Methods

    • Methods in com.vaadin.flow.spring.VaadinConfigurationProperties:
      • getBlacklistedPackages() (replaced by getBlockedPackages())
      • setBlacklistedPackages(List) (replaced by setBlockedPackages(List))
      • getWhitelistedPackages() (replaced by getAllowedPackages())
      • setWhitelistedPackages(List) (replaced by setAllowedPackages(List))
    • Method in com.vaadin.flow.server.AbstractConfiguration

6. PolymerUtils Methods
- Multiple methods in com.vaadin.client.PolymerUtils marked as "not in use anywhere and can be removed"

  1. BuildFrontendUtil Methods

    • updateBuildFile(File, boolean) in com.vaadin.flow.plugin.base.BuildFrontendUtil (replaced by updateBuildFile(PluginAdapterBuild, boolean))
    • getClasspathElements(MavenProject) in BuildDevBundleMojo and in FlowModeAbstractMojo.
  2. Security Methods

    • Method getViewAccessChecker in com.vaadin.flow.spring.security.VaadinWebSecurity related to ViewAccessChecker (marked for removal in version 24.3)
  3. Options

    • withWebpack in Options
    • isEnableWebpackConfigUpdate in Options
  4. UI

  • connectClient method
  • leaveNavigation method
  1. Feature Flags
  • SYSTEM_PROPERTY_PREFIX variable
  • FORM_FILLER_ADDON flag
  1. Other Methods - [ ] Method in com.vaadin.flow.dom.ElementConstants (replaced by ARIA_LABEL_ATTRIBUTE_NAME) - [ ] Constructor in com.vaadin.flow.server.menu.AvailableViewInfo (marked for removal)
  • Method in com.vaadin.flow.server.InitParameters
  • Method initDevModeHandler in DevModeInitializer
  • Method getOwner in ShortcutRegistration
  • Methods in TypeScriptBootstrapModifier
  • Methods in FrontendDependenciesScannerFactory
  • Method inlineImports in CssBundler

NOTE Polymer API is already deprecated, but we have to keep it as we still support Polymer.
The list above can be supplemented with other findings.

Metadata

Metadata

Assignees

Labels

Type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions