Skip to content

Compile to a monolithic binary #1504

Closed

Description

This project is currently in the structure of a gigantic library plus a few manage commands.

The issue is that the binaries are very fat and having multiple of them eats up disk space quickly. libcargo_registry on debug build takes over 100MB on its own, and it's linked to 8 different binaries. My target directory is easily over 2GB.

Also, this approach is no good for deployment as well. It leads to larger uploaded bundle, although gzip should help here.

Instead, we should have one monolithic binary and handle all the subcommands with clap. As a random note, Clap 3.x in development allows more modular code because it removes the facade between App and Subcommand.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    A-backend ⚙️C-internal 🔧Category: Nonessential work that would make the codebase more consistent or clear

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions