abpframework / abpframework/abp

Support release configuration for bundling instead of always debug

Open
#19,603 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request
Dominant language
C#
Stars
14.4k
Forks
3.7k
Avg merge
15h 32m
Merged PRs (30d)
106

Description

Is there an existing issue for this?
  • I have searched the existing issues
Is your feature request related to a problem? Please describe the problem.

When changes happen in assets (js, css, images, etc) we need to execute abp bundle command to get new global.css and global.js files. But to do this every time for each branch when you make a change this is kind of undoable. Also when having multiple PR's with such changes, completing 1 PR results in unnecessary conflicts where the developer needs to merge latest changes into the PR/branch, then execute abp bundle, commit the 2 new files and push them back to the PR.

Our idea was to add the global.js and global.css to gitignore and in our builds always add the abp bundle command.
However this is not working since abp bundle command is always looking in bin/debug directory, but we use release (bin/release) in our builds.

I've checked the source:
File: framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Bundling/BundlerBase.cs
Method: BundleWebAssemblyFiles
First line of code is hardcoded to look in bin/debug.

Describe the solution you'd like

File: framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Bundling/BundlerBase.cs
Method: BundleWebAssemblyFiles

Make the hardcoded bin/debug configurable in order to support release configuration, maybe introduce extra parameter to abp bundle command like abp bundle debug and abp bundle release

Additional context

No response

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.

Research direction

Start in framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Bundling/BundlerBase.cs at BundleWebAssemblyFiles, then trace how the abp bundle command receives its options. Check how builds select bin/debug or bin/release. Done means bundling can target the release configuration without requiring generated global.js and global.css files to be committed.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, cli
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.