railpack 1.2.2 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +39 -2
- data/README.md +12 -0
- data/lib/railpack/version.rb +1 -1
- data/lib/tasks/railpack.rake +70 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 269e75f35771ec905394623faa61366d3c7208ea4f21cb867c8a10dc733ff9cc
|
|
4
|
+
data.tar.gz: 925c4070f7f2888cc7e260cab0ff3617d1ac0151dfc190c6b9ccd1d7a4baf9bf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fa4ef98d5320a341ef6fb6c0d103ef83aee393b2efd346c132299c842046f17b885f1ea5da84e549dc91fc0de5d83fac00a20c3155000f6f0b4cbb9da9b018a6
|
|
7
|
+
data.tar.gz: bd4178182819778bbd1d7716a660030904099eee0af4c3f127d906afa1a0c4cd49590903ab7ca9690042c1addfa190943452a79e01395d828294f194d3794ef8
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
-
## [
|
|
3
|
+
## [1.2.2] - 2026-01-26
|
|
4
4
|
|
|
5
|
-
-
|
|
5
|
+
- Fix asset manifest generation for Propshaft compatibility
|
|
6
|
+
- Generate `.manifest.json` instead of Sprockets format
|
|
7
|
+
- Update manifest structure with `logical_path`, `pathname`, `digest`
|
|
8
|
+
- Rails 7+ Propshaft compatibility
|
|
9
|
+
|
|
10
|
+
## [1.2.1] - 2026-01-26
|
|
11
|
+
|
|
12
|
+
- Add comprehensive build performance monitoring
|
|
13
|
+
- Implement Propshaft-compatible asset manifest generation
|
|
14
|
+
- Enhanced logging with emojis and structured output
|
|
15
|
+
- Production-ready defaults (no sourcemaps, bundle analysis off)
|
|
16
|
+
- Better error handling and user feedback
|
|
17
|
+
|
|
18
|
+
## [1.2.0] - 2026-01-26
|
|
19
|
+
|
|
20
|
+
- Add Webpack bundler support
|
|
21
|
+
- Implement WebpackBundler class with full command support
|
|
22
|
+
- Register webpack in Manager::BUNDLERS
|
|
23
|
+
- Add webpack config defaults (mode, target)
|
|
24
|
+
- Update tests to include webpack bundler
|
|
25
|
+
|
|
26
|
+
## [1.1.0] - 2026-01-26
|
|
27
|
+
|
|
28
|
+
- Add Rollup bundler support
|
|
29
|
+
- Implement RollupBundler class with tree-shaking capabilities
|
|
30
|
+
- Register rollup in Manager::BUNDLERS
|
|
31
|
+
- Add rollup config defaults (format, sourcemap)
|
|
32
|
+
- Update tests to include rollup bundler
|
|
33
|
+
|
|
34
|
+
## [1.0.0] - 2026-01-26
|
|
35
|
+
|
|
36
|
+
- Initial release with Bun and esbuild support
|
|
37
|
+
- Unified API for multiple bundlers
|
|
38
|
+
- Rails asset pipeline integration
|
|
39
|
+
- Configuration system with YAML support
|
|
40
|
+
- Event hooks for build lifecycle
|
|
41
|
+
- Rake tasks for Rails integration
|
|
42
|
+
- Comprehensive test suite
|
data/README.md
CHANGED
|
@@ -19,6 +19,14 @@ Add to your Gemfile:
|
|
|
19
19
|
gem 'railpack'
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
+
Then run the install generator:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
rails railpack:install
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
This creates `config/railpack.yml` with sensible defaults for your Rails app.
|
|
29
|
+
|
|
22
30
|
## Configuration
|
|
23
31
|
|
|
24
32
|
Create `config/railpack.yml`:
|
|
@@ -179,6 +187,10 @@ BUNDLERS = {
|
|
|
179
187
|
3. Update documentation
|
|
180
188
|
4. Submit a PR
|
|
181
189
|
|
|
190
|
+
## Changelog
|
|
191
|
+
|
|
192
|
+
See [CHANGELOG.md](CHANGELOG.md) for version history.
|
|
193
|
+
|
|
182
194
|
## License
|
|
183
195
|
|
|
184
196
|
MIT License - see LICENSE.txt
|
data/lib/railpack/version.rb
CHANGED
data/lib/tasks/railpack.rake
CHANGED
|
@@ -5,6 +5,28 @@ require "railpack"
|
|
|
5
5
|
Railpack::Manager.enhance("build", "copy_assets")
|
|
6
6
|
|
|
7
7
|
namespace :railpack do
|
|
8
|
+
desc "Install and setup Railpack with default configuration"
|
|
9
|
+
task :install do
|
|
10
|
+
config_path = Rails.root.join("config/railpack.yml")
|
|
11
|
+
|
|
12
|
+
if config_path.exist?
|
|
13
|
+
puts "Railpack config already exists at #{config_path}"
|
|
14
|
+
puts "Run 'rails railpack:install:force' to overwrite"
|
|
15
|
+
else
|
|
16
|
+
create_config_file(config_path)
|
|
17
|
+
puts "✅ Created Railpack configuration at #{config_path}"
|
|
18
|
+
puts "🎯 Run 'rails railpack:install' to install bundler dependencies"
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
desc "Force install Railpack configuration (overwrites existing)"
|
|
23
|
+
task "install:force" do
|
|
24
|
+
config_path = Rails.root.join("config/railpack.yml")
|
|
25
|
+
create_config_file(config_path)
|
|
26
|
+
puts "✅ Created/Updated Railpack configuration at #{config_path}"
|
|
27
|
+
puts "🎯 Run 'rails railpack:install' to install bundler dependencies"
|
|
28
|
+
end
|
|
29
|
+
|
|
8
30
|
desc "Install Railpack dependencies"
|
|
9
31
|
task :install do
|
|
10
32
|
Railpack.install!
|
|
@@ -67,4 +89,51 @@ namespace :railpack do
|
|
|
67
89
|
task :bundler do
|
|
68
90
|
puts "Current bundler: #{Railpack.config.bundler}"
|
|
69
91
|
end
|
|
70
|
-
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def create_config_file(config_path)
|
|
95
|
+
config_content = <<~YAML
|
|
96
|
+
# Railpack Configuration
|
|
97
|
+
# Choose your bundler: bun, esbuild, rollup, webpack
|
|
98
|
+
|
|
99
|
+
bundler: bun # Default bundler
|
|
100
|
+
|
|
101
|
+
# Global defaults
|
|
102
|
+
default:
|
|
103
|
+
target: browser
|
|
104
|
+
format: esm
|
|
105
|
+
minify: false
|
|
106
|
+
sourcemap: false
|
|
107
|
+
entrypoint: "./app/javascript/application.js"
|
|
108
|
+
outdir: "app/assets/builds"
|
|
109
|
+
|
|
110
|
+
# Bundler-specific configurations
|
|
111
|
+
bun:
|
|
112
|
+
target: browser
|
|
113
|
+
format: esm
|
|
114
|
+
|
|
115
|
+
esbuild:
|
|
116
|
+
target: browser
|
|
117
|
+
format: esm
|
|
118
|
+
platform: browser
|
|
119
|
+
|
|
120
|
+
rollup:
|
|
121
|
+
format: esm
|
|
122
|
+
sourcemap: true
|
|
123
|
+
|
|
124
|
+
webpack:
|
|
125
|
+
mode: production
|
|
126
|
+
target: web
|
|
127
|
+
|
|
128
|
+
# Environment-specific overrides
|
|
129
|
+
development:
|
|
130
|
+
sourcemap: true
|
|
131
|
+
|
|
132
|
+
production:
|
|
133
|
+
minify: true
|
|
134
|
+
sourcemap: false
|
|
135
|
+
analyze_bundle: false
|
|
136
|
+
YAML
|
|
137
|
+
|
|
138
|
+
File.write(config_path, config_content)
|
|
139
|
+
end
|