You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To be more elaborate, maven doesn't re-download from the internet every time. It has a local cache in ~/.m2 . However, invoking maven itself is a source of slowness.
Possible design:
maven_downloads.json
{
"comment": "This file avoids the need to invoke maven every time, which can be slow. Delete this file to force refresh""downloaded_on": "date""source_deps": [""]
"jar_deps": [""]
}
TODO: Invalidation
Re-download is triggered when:
conservative caching:
Any file in the directory is older than jnigen.yaml
aggressive caching:
Compare maven_downloads spec by content. If any dependency is changed
Other criteria to invalidate: (can be used in conjunction)
stale downloads: If downloads are older than a predefined timeout
anomalies: JSON file older than any of the downloads.
TODO: Manual invalidation
by CLI-only flag --force-invoke-maven
or
disable caching in YAML, which can be overridden by CLI as well.
I think there is a case to be made to completely remove maven support from jnigen's main workflow. We might instead add some helper scripts like dart run jnigen:maven_init that create the intial pom.xml files in the directory.
maven commands take significant time in tests. So why not
The text was updated successfully, but these errors were encountered: