Top 23 Build system Open-Source Projects
This optimization opens the door for us to resume the work in Tree-shaking as huge libraries are not a big problem for us in development anymore and Tree-shaking can now be enabled only for production builds.
a fast, scalable, multi-language and extensible build systemProject mention: Bazel: Rule is missing dependency declarations | reddit.com/r/linuxquestions | 2021-09-16
Run Linux Software Faster and Safer than Linux with Unikernels.
The Rust package managerProject mention: Hey Rustaceans! Got an easy question? Ask here (36/2021)! | reddit.com/r/rust | 2021-09-07
/u/aliasxneo There is a brief description of the hazard at https://doc.rust-lang.org/cargo/reference/resolver.html#dev-dependency-cycles, and indeed your likely best option is to split the common code into a separate crate. Cargo itself used to use a dev-depedency cycle. We never ran into this particular issue, but it hurt compile times a lot, so we split all the code shared between cargo and its tests into a util crate.
Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading.
A cross-platform suite of tools for building and deploying software for iOS and other platforms.Project mention: [Question] Is it possible to compile and install tweaks ON DEVICE by myself from FOSS code. If so how. | reddit.com/r/jailbreak | 2021-08-31
Don't use any of those theos installers, they are not official, follow the official instructions here: https://github.com/theos/theos/wiki/Installation-iOS
Bear is a tool that generates a compilation database for clang tooling.Project mention: How to use GCC as LSP for C? | reddit.com/r/neovim | 2021-08-23
Both clangd and ccls needs complile_commands.json in your root directory to take care about compiler flags. If you use cmake as build system, you can generate this file with it. If you use your own Makefiles to build your project, take a look at this, it generates compile_commands.json from any makefile based project.
A utility for managing cargo dependencies from the command line.Project mention: Rust for Data Science: Tutorial 1 | dev.to | 2021-08-24
I am using currently cargo add from the good cargo-edit (quick inst: cargo install cargo-edit) to handle dependencies, and VisualStudio Code as dev IDE.
Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
A build system for creating cross-platform styles.Project mention: Introduction to Variabless | reddit.com/r/css | 2021-08-02
Cool. Can you compare this to https://github.com/amzn/style-dictionary?
Your shiny new Java/Scala build tool!Project mention: Thats my first time with Scala and wanted to create something interesting as first program, so created simple single colored window in LWJGL (which will turn into traingle), next in my tour is password generator, and then wayland implementetion as generated scala code from XML protocols. | reddit.com/r/scala | 2021-07-24
Also, many scala folks are not happy with sbt. There's a new build tool on the block Mill - https://github.com/com-lihaoyi/mill - by Li Haoyi . He's a scala master and he's written a _great_ intro to scala https://www.handsonscala.com/
Smaller, easier, more powerful, and more reliable than make. An implementation of djb's redo.Project mention: Perl analogue of Python's doit? | reddit.com/r/perl | 2021-02-24
redo or GNU Make with Perl scripts
Watches over your Cargo project's source.Project mention: Rust's Most Unrecognized Contributor | news.ycombinator.com | 2021-05-03
It caches things between builds, and if you use dev builds (the default) it doesn't take as long as production. For ergonomics you can install cargo-watch (https://crates.io/crates/cargo-watch) which helps a bit.
An important thing though, if you aren't doing this already, is to not wait for a full build to know if your types check out. You can use cargo-check if you prefer (https://doc.rust-lang.org/cargo/commands/cargo-check.html), but really I recommend using an IDE with responsive feedback if at all possible. rust-analyzer is one of the best, and should be supported even if you're on Vim or something.
Using Rust without snappy editor hints is fairly miserable because of how interactive the error feedback loop tends to be. If you don't rely on a full build for errors - just for actual testing - I find the build times to be perfectly fine (at least in the smallish projects I've done).
Rust task runner and build tool.Project mention: Approach for releasing an application that has assets | reddit.com/r/rust | 2021-03-24
Have you checked out cargo make?
Bloop is a build server and CLI tool to compile, test and run Scala fast from any editor or build tool.Project mention: Scala 3 and Web Tech Stack | reddit.com/r/scala | 2021-07-07
A cross platform build and deployment automation system for building projects and executing deployment scripts using C# code.Project mention: What build tool(s) do people use for their applications? | reddit.com/r/dotnet | 2021-02-08
A curated list of Bazel rules, tooling and resources.Project mention: Exodus: Easily migrate your JVM code from Maven to Bazel | news.ycombinator.com | 2021-04-06
A cargo subcommand for displaying when Rust dependencies are out of dateProject mention: 5 useful Cargo Plugins | reddit.com/r/rust | 2021-08-17
I'd add cargo-outdated for checking for outdated dependencies. cargo-tree is also useful, but that's built into cargo itself for some time already.
Cargo subcommand `release`: everything about releasing a rust crate.Project mention: Introducing `cargo smart-release` - the new way to release workspace crates | reddit.com/r/rust | 2021-08-13
Yes, developers from all three tools were sharing ideas with each other recently
CMake.js - a Node.js native addon build toolProject mention: Cython is incredible!! | reddit.com/r/algotrading | 2021-04-06
A cargo subcommand that generates Debian packages from information in Cargo.tomlProject mention: Rustup, Cargo, Rustc?? | reddit.com/r/rust | 2021-03-01
cargo install does provide different options to change the installation dir (https://doc.rust-lang.org/cargo/commands/cargo-install.html) but I am uncertain, if there could be accociated issues. An alternative could be tools like https://github.com/mmstick/cargo-deb or https://github.com/iqlusioninc/cargo-rpm that can automatically create packages which can be used for a proper installation /usr/bin/ using your distributions packaging system.
A cargo subcommand for checking and applying updates to installed executablesProject mention: Git-cliff: generate changelog files from the Git history | news.ycombinator.com | 2021-09-05
I initially was interested in Rust because of performance + speed + safety, but now I have to say that cargo is a big selling point for me.
I always used to be scared of compiling software myself because I never seemed to be able to get it to work without endless headaches. Now, I generally find it easy to compile Rust programs if they aren't in my package manager, and with cargo install-update https://github.com/nabijaczleweli/cargo-update I find it easy to keep the software up to date. I have higher confidence that I can get hobbyist Rust software working, and the more Rust software I use, the more familiar I am with the ecosystem and the more comfortable I am.
If this was written in some obscure language I wasn't familiar with, I'd be less confident I would be able to run it at all, let alone keep it updated, and I may not bother even trying to install it.
Cargo script subcommandProject mention: How do you share your code ? | reddit.com/r/rust | 2021-07-08
O seems that this does already exist: https://github.com/DanielKeep/cargo-script
Fortran Package Manager (fpm) (by fortran-lang)Project mention: Toward Modern Fortran Tooling and a Thriving Developer Community | news.ycombinator.com | 2021-09-16
Author here, so I'm biased toward Fortran, though I've been enjoying learning Rust as well. I think there are a few reasons.
First, Rust's multidimensional arrays are either limited and/or difficult to use. Fast, flexible, and ergonomic multidimensional arrays and arithmetic are essential for HPC. They are possible with Rust, but my two favorite Rust books not mentioning them suggests to me that they're not the focus of the language. This may or may not change in the future.
Second, Rust may be too complex to learn for scientists who aren't paid to write software but to do research. Fortran is opposite--multidimensional whole-array arithmetic looks like you would write it as math on a whiteboard. While scientists can sure learn to program Rust effectively, I think most scientists don't think like Rust, but they do think like Fortran. For somebody not familiar with Fortran but familiar with Python, I'd say Fortran very much feels like NumPy.
Third, such ecosystem would be built in Rust from scratch. In Fortran, most of the value is already there, but needs to be made more accessible with better and more modern tooling. For example, Fortran's fpm (https://github.com/fortran-lang/fpm) is largely modeled after Rust's Cargo because we recognize the importance of good user experience when it comes to building and packaging software. With the recent Fortran-lang efforts, we study many programming language ecosystems and communities (e.g. Python, Julia, Rust, etc.) to find what could work best for modern Fortran tooling.
What are some of the best open-source Build system projects? This list will help you:
Are you hiring? Post a new remote job listing for free.