Feature Request: Support optimization flags in the build actions
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 381
- Forks
- 162
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 2
Description
Description:
We can support several optimizations to improve the build process. This is a feature request to support optimization flags that can be passed to each build action. If an action cannot support a particular optimization, it should error out:
Optimization 1: Use prebuilt binaries
Benefit: Makes build faster
When building dependencies with native modules, use pre-built binaries that are available locally or download from internet. This saves time in recompiling the same binaries over and over again. It can also make the build more stable because sometimes compilation fails or times out.
Requested by build actions:
- node-npm
- python-pip
Optimization 2: Remove unnecessary dependencies
Benefit: Produces slim zips
Remove unnecessary dependency libraries, or files or folders from the output artifact. For example, remove tests, test data files, or dependencies that are already available in transitive closure.
Requested by build actions:
- node-npm
- python-pip
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names the node-npm and python-pip build actions but no files or tests. Start by locating those action implementations and their build-output paths; then determine how each optimization is requested, rejected when unsupported, and verified in the resulting artifacts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- node.js, python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100