(self-contained build) Only rebuild dependencies if necessary

Open
#370 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
javascript, node.js

Research direction

Start with the ui5 build self-contained --all entry point in the ui5-cli and ui5-builder components, then trace how dependency rebuild decisions are made. Done means a second unchanged build skips rebuilding dependencies while missing resources, a changed declared version, or changed project dependencies still trigger the rebuild.

Written by the indexing model from the issue text.

Description

module/ui5-builder

Expected Behavior

When running ui5 build self-contained --all, UI5 dependencies should only be rebuilt if necessary (i.e. resources folder is missing, declared version changed, dependencies of the project changed).

Current Behavior

The full set of libraries gets rebuilt, leading to very long build times (esp. on CI servers where it's not as easy to switch between build commands).

Steps to reproduce the issue

  1. Run ui5 build self-contained --all
  2. Run ui5 build self-contained --all again
  3. Everything gets rebuilt

Context

  • UI5 Module Version (output of ui5 --version when using the CLI): 0.2.6
  • Node.js Version: 10.13.0
  • npm Version: 6.4.1
  • OS/Platform: Windows 10 1803
  • Browser (if relevant):
  • Other information:

Affected components (if known)

Log Output / Stack Trace

n/a

Dominant language
JavaScript
Stars
511
Forks
83
Avg merge
1d 5h
Merged PRs (30d)
55

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from UI5/cli

All issues in UI5/cli

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.