Comments (4)
Thanks for the comments, @PaulRBerg!
- Bun is faster
Does it really matter here? The half a second to a second saved isn't going to be impactful right?
- Bun is more lightweight;
I do agree with you, it is. Although I'm not quite following the problem with .yarn
and one entry in .gitignore
. As of right now, (using v4.0.2) .yarn
is optional if you want everyone to be on the same version of yarn - which imo is useful, and the only entry I have in .gitignore
is the install-state.gz
file, which is also optional.
Not true. I use it on macOS
Haha, true, you're not wrong. I should really have mentioned *nix here.
Appreciate the openness here, I will open a discussion to talk about Bun vs Yarn! The only reason I'm even talking about this is because having a single package manager that just works for everyone on the team (using Linux, macOS and Windows), without having to worry about versions, without having to think about the idiosyncrasies or unexpected behaviours is a good experience.
from foundry-template.
I have to ask @PaulRBerg, why choose Bun over Yarn?
Perspective: Yarn ecosystem is ubiquitous, supports configurable soft links, hard links, global cache and per-project configs for several things necessary in the Solidity ecosystem. Meanwhile, Bun is (currently) only supported on Linux, is unstable, fairly buggy and for a project like this (and nearly anything in the solidity ecosystem) the benefit of installing dependencies 1s faster are outweighed by the ecosystem alone.
(To be clear, I really like this template, I switched from my own to this a while ago but I always replace <whatever package manager> with Yarn)
from foundry-template.
I have to ask @PaulRBerg, why choose Bun over Yarn?
- Bun is faster
- Bun is more lightweight; I've used Yarn V3 for 2+ years, and gotten tired of having to keep the
.yarn
directory in version control and the complicated entries in.gitignore
Tip: feel free to open discussions for questions like this (which are great!)
Bun is (currently) only supported on Linux
Not true. I use it on macOS
is unstable, fairly buggy and for a project like this (and nearly anything in the solidity ecosystem) the benefit of installing dependencies 1s faster are outweighed by the ecosystem alone.
It wasn't unstable for me. But I hear you on the other points - I will monitor how Bun works and reconsider Yarn.
I really like this template
Thanks
I switched from my own to this a while ago but I always replace with Yarn)
Then, the template works! It's meant to be edited like that.
from foundry-template.
The half a second to a second saved isn't going to be impactful right?
Fair enough
As of right now, (using v4.0.2) .yarn is optional if you want everyone to be on the same version of yarn - which imo is useful, and the only entry I have in .gitignore is the install-state.gz file, which is also optional.
Oh, that is interesting! I did not know that.
I will open a discussion to talk about Bun vs Yarn!
Please do!
from foundry-template.
Related Issues (20)
- Use "forge fmt" instead of Prettier HOT 1
- linter fails because prettier uses 2 spaces, fmt uses 4 spaces HOT 4
- Provide `--via-ir` set up
- Description not added in the "package.json" file
- `rename.sh` and `create.yml` CI files not removed
- Can't run tests HOT 2
- Upgrade to the latest Solidity HOT 2
- Message: failed to extract foundry config: HOT 3
- Failed to create project from `forge init` command HOT 3
- Add forge coverage commands to scripts HOT 1
- Integrate BTT
- Add GitPod config
- Branch with hardhat on the side of foundry for integration testing HOT 1
- PRBTest.sol breaks Vm.Log ? HOT 1
- Move to Forge Std to avoid `Vm` interface clashes
- genhtml: command not found | error: script "test:coverage:report" exited with code 127 HOT 1
- Fix prettier glob pattern in package.json HOT 6
- Bun run lint failing on prettier-plugin-solidity HOT 2
- Running `forge init --template PaulRBerg/foundry-template` doesn't work HOT 1
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 foundry-template.