Comments (7)
@joemsak can you confirm if this is still a bug?
from heroku-buildpack-bun.
Trying today, will let you know. Thanks!
from heroku-buildpack-bun.
Hey, no, sorry, it still broke (with the only change being that I upgraded the 2 gems):
Building on the Heroku-22 stack
-----> Deleting 3 files matching .slugignore patterns.
-----> Using buildpacks:
1. heroku/exec
2. https://github.com/mojodna/heroku-buildpack-jemalloc.git
3. heroku/metrics
4. heroku/nodejs
5. heroku/ruby
6. https://github.com/jakeg/heroku-buildpack-bun
-----> Heroku Exec app detected
-----> jemalloc app detected
-----> Vendoring binaries
Fetching https://github.com/mojodna/heroku-buildpack-jemalloc/releases/download/4.2.1/jemalloc-4.2.1-1.tar.gz
-----> Configuring build environment
-----> Building runtime environment
-----> HerokuRuntimeMetrics app detected
-----> Setting up .profile.d to automatically run metrics agent...
-----> Node.js app detected
-----> Creating runtime environment
NPM_CONFIG_LOGLEVEL=error
USE_YARN_CACHE=true
NODE_VERBOSE=false
NODE_ENV=production
NODE_MODULES_CACHE=true
-----> Installing binaries
engines.node (package.json): ^22
engines.npm (package.json): unspecified (use default)
engines.yarn (package.json): unspecified (use default)
Resolving node version ^22...
Downloading and installing node 22.4.1...
Using default npm version: 10.8.1
Resolving yarn version 1.22.x...
Downloading and installing yarn (1.22.22)
Installed yarn 1.22.22
-----> Restoring cache
- yarn cache
-----> Installing dependencies
Installing node modules (yarn.lock)
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > [email protected]" has unmet peer dependency "sass-embedded@^1.71.1".
warning " > [email protected]" has unmet peer dependency "autoprefixer@^10.0.2".
warning " > [email protected]" has incorrect peer dependency "eslint@^7.32.0 || ^8.2.0".
warning " > [email protected]" has unmet peer dependency "eslint-plugin-react@^7.28.0".
warning " > [email protected]" has unmet peer dependency "eslint-plugin-react-hooks@^4.3.0".
warning "eslint-config-airbnb > [email protected]" has incorrect peer dependency "eslint@^7.32.0 || ^8.2.0".
warning " > [email protected]" has incorrect peer dependency "eslint@^8.0.0".
warning "eslint-config-react-app > @babel/[email protected]" has incorrect peer dependency "eslint@^7.5.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning " > [email protected]" has unmet peer dependency "@babel/plugin-syntax-flow@^7.14.5".
warning " > [email protected]" has unmet peer dependency "@babel/plugin-transform-react-jsx@^7.14.9".
warning " > [email protected]" has incorrect peer dependency "eslint@^8.1.0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^7.5.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/eslint-plugin > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/eslint-plugin > [email protected]" has unmet peer dependency "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
warning "eslint-config-react-app > eslint-plugin-jest > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning " > [email protected]" has incorrect peer dependency "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8".
warning " > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
[4/4] Building fresh packages...
Done in 19.34s.
-----> Build
Running build (yarn)
yarn run v1.22.22
$ node esbuild.config.js
Done in 1.00s.
-----> Pruning devDependencies
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > [email protected]" has unmet peer dependency "sass-embedded@^1.71.1".
warning " > [email protected]" has unmet peer dependency "autoprefixer@^10.0.2".
warning " > [email protected]" has incorrect peer dependency "eslint@^7.32.0 || ^8.2.0".
warning " > [email protected]" has unmet peer dependency "eslint-plugin-react@^7.28.0".
warning " > [email protected]" has unmet peer dependency "eslint-plugin-react-hooks@^4.3.0".
warning "eslint-config-airbnb > [email protected]" has incorrect peer dependency "eslint@^7.32.0 || ^8.2.0".
warning " > [email protected]" has incorrect peer dependency "eslint@^8.0.0".
warning "eslint-config-react-app > @babel/[email protected]" has incorrect peer dependency "eslint@^7.5.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning " > [email protected]" has unmet peer dependency "@babel/plugin-syntax-flow@^7.14.5".
warning " > [email protected]" has unmet peer dependency "@babel/plugin-transform-react-jsx@^7.14.9".
warning " > [email protected]" has incorrect peer dependency "eslint@^8.1.0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0".
warning "eslint-config-react-app > [email protected]" has incorrect peer dependency "eslint@^7.5.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/eslint-plugin > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning "eslint-config-react-app > @typescript-eslint/eslint-plugin > [email protected]" has unmet peer dependency "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
warning "eslint-config-react-app > eslint-plugin-jest > @typescript-eslint/[email protected]" has incorrect peer dependency "eslint@^6.0.0 || ^7.0.0 || ^8.0.0".
warning " > [email protected]" has incorrect peer dependency "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8".
warning " > [email protected]" has incorrect peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8".
[4/4] Building fresh packages...
warning Ignored scripts due to flag.
Done in 2.70s.
-----> Caching build
- yarn cache
-----> Build succeeded!
! Unmet dependencies don't fail yarn install but may cause runtime issues
https://github.com/npm/npm/issues/7494
-----> Ruby app detected
-----> Installing bundler 2.5.6
-----> Removing BUNDLED WITH version in the Gemfile.lock
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-3.3.2
-----> Installing dependencies using bundler 2.5.6
Running: BUNDLE_WITHOUT='development:test' BUNDLE_PATH=vendor/bundle BUNDLE_BIN=vendor/bundle/bin BUNDLE_DEPLOYMENT=1 bundle install -j4
Fetching gem metadata from https://rubygems.org/........
Fetching gem metadata from https://enterprise.contribsys.com/..
Fetching cssbundling-rails 1.4.0
Fetching jsbundling-rails 1.3.0
Installing cssbundling-rails 1.4.0
Installing jsbundling-rails 1.3.0
Bundle complete! 109 Gemfile dependencies, 191 gems now installed.
Gems in the groups 'development' and 'test' were not installed.
Bundled gems are installed into `./vendor/bundle`
1 installed gem you directly depend on is looking for funding.
Run `bundle fund` for details
Bundle completed (3.76s)
Cleaning up the bundler cache.
Removing bundler (2.5.6)
Removing cssbundling-rails (1.2.0)
Removing jsbundling-rails (1.1.2)
-----> Detecting rake tasks
-----> Preparing app for Rails asset pipeline
Running: rake assets:precompile
[2024-07-11T18:41:08 (process) #2682][INFO] appsignal: Starting AppSignal 3.10.0 (/tmp/build_66b704f7/bin/rake, Ruby 3.3.2, x86_64-linux)
rake aborted!
cssbundling-rails: Command install failed, ensure bun is installed
/tmp/build_66b704f7/vendor/bundle/ruby/3.3.0/gems/cssbundling-rails-1.4.0/lib/tasks/cssbundling/build.rake:6:in `block (2 levels) in <main>'
/tmp/build_66b704f7/vendor/bundle/ruby/3.3.0/gems/appsignal-3.10.0/lib/appsignal/integrations/rake.rb:15:in `block in execute'
/tmp/build_66b704f7/vendor/bundle/ruby/3.3.0/gems/appsignal-3.10.0/lib/appsignal/helpers/instrumentation.rb:705:in `instrument'
/tmp/build_66b704f7/vendor/bundle/ruby/3.3.0/gems/appsignal-3.10.0/lib/appsignal/integrations/rake.rb:14:in `execute'
Tasks: TOP => assets:precompile => css:build => css:install
(See full trace by running task with --trace)
!
! Precompiling assets failed.
!
! Push rejected, failed to compile Ruby app.
! Push failed
I see your README says to have a procfile with a bun command (we're deploying a rails application, we only need asset precompilation, not a deployed process) or a package.json script.
/* package.json */
{
/* ... */
"scripts": {
"lint": "eslint --fix \"**/*.{js,jsx,ts,tsx}\" --fix-type problem",
"build:css": "tailwindcss -i ./app/assets/stylesheets/application.tailwind.css -o ./app/assets/builds/tailwind.css",
"doc": "rails rerdoc && servor doc/",
"build": "node esbuild.config.js"
}
}
Should we do something else here? We only need rails assets:precompile
to work, nothing else. Am I totally missing something or misunderstanding something?
from heroku-buildpack-bun.
(We're still using Yarn due to lack of support for Bun on Heroku)
from heroku-buildpack-bun.
Deploys are working with the bundling gems set back to their older versions, and while the buildpack is still installed on our heroku application.
from heroku-buildpack-bun.
(We're still using Yarn due to lack of support for Bun on Heroku)
This buildpack gives that (unofficial) support.
It's possible that with this buildpack you no longer need yarn/npm/node at all, as bun is designed as a drop in replacement for node.
I'm afraid I'm not sure how to help with your problem though. I'm going to close this issue for now, but feel free to re-open it if you have anything else which I might be able to help with.
from heroku-buildpack-bun.
Okay but as I said, I tried this build pack again after you made some updates, and we still did not get bun support on heroku.
from heroku-buildpack-bun.
Related Issues (9)
- Explanation/demo of how to use this repo HOT 8
- Dependencies are missing HOT 2
- Add support for `BUN_VERSION` env var HOT 2
- Use `start` and `build` scripts from `package.json` in absence of a `Procfile`.
- Build failure on Heroku-24 stack HOT 1
- Env problem during pre-build step HOT 5
- Possibility to opt-out of steps HOT 4
- Specify bun version with `.bun-version` file (without `v` prefix) HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from heroku-buildpack-bun.