Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify Vaadin config parameters vs Vaadin modes #4041

Open
mshabarov opened this issue Dec 20, 2024 · 1 comment · May be fixed by #4094
Open

Clarify Vaadin config parameters vs Vaadin modes #4041

mshabarov opened this issue Dec 20, 2024 · 1 comment · May be fixed by #4094
Assignees
Labels

Comments

@mshabarov
Copy link
Contributor

Tell us about your request

Vaadin can operate in different modes and exposes a lot of configuration parameters.
Despite the modes and parameters are already described, it's sometimes not clear or problematic:

  • for which mode/configuration a particular parameter is valid (dev or prod mode, pre-compiled bundles or hot-deploy with Vite, routing with react or with vaadin router), or is it valid for all possible modes of running and configuring an application.
  • which parameter could fix what problem, e.g. when one would need to force the prod bundle or disable bundle optimisation.

We may want to have:

  • a kind of mapping / table that could list all relevant parameters per mode.
  • troubleshooting / FAQ article that recommends a parameter value change vs an example of possible problem.

If you think this issue is important, add a 👍 reaction to help the community and maintainers prioritize this issue.

@jcgueriaud1
Copy link
Contributor

jcgueriaud1 commented Jan 9, 2025

There are so many different configurations for the bundle that is really hard to debug it easily.

  • dev mode:
    • frontend hotdeploy true/false
    • default dev bundle
    • built dev bundle
    • optimizeBundle ?
  • production mode:
    • forceProductionBuild
    • optimizeBundle
    • LoadDependenciesOnStartup

One example in the documentation: devmode.optimizeBundle

Optimizes frontend resource bundles. All frontend resources in the classpath are included by default in the generated bundle in development mode. When set to true, the frontend build creates an optimized bundle by including only frontend resources that are used from the application entry points. It uses bytecode scanning, which increases application start-up time. Set to false to skip the optimization in production mode.

Set to false to skip the optimization in production mode

is confusing

Maybe we should guide our users about when to use it or a troubleshooting guide.

For example, in the troubleshooting guide we could have:
Missing component in production then you should probably check this parameter LoadDependenciesOnStartup.

@mshabarov mshabarov added this to Roadmap Jan 9, 2025
@github-project-automation github-project-automation bot moved this to Under consideration in Roadmap Jan 9, 2025
@mshabarov mshabarov moved this from Under consideration to March 2025 (24.7) in Roadmap Jan 9, 2025
@caalador caalador self-assigned this Jan 20, 2025
@caalador caalador moved this from 🪵Product backlog to ⚒️ In progress in Vaadin Flow ongoing work (Vaadin 10+) Jan 20, 2025
caalador added a commit that referenced this issue Jan 28, 2025
Update missing parameters and
add to the table mode the
parameter targets and
system property written out
for clarity

Closes #4041
@caalador caalador linked a pull request Jan 28, 2025 that will close this issue
@caalador caalador moved this from ⚒️ In progress to 🔎Iteration reviews in Vaadin Flow ongoing work (Vaadin 10+) Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: March 2025 (24.7)
Status: 🔎Iteration reviews
Development

Successfully merging a pull request may close this issue.

3 participants