Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deno compile [--lite] [--static] ... #10507

Closed
ealib opened this issue May 5, 2021 · 13 comments
Closed

deno compile [--lite] [--static] ... #10507

ealib opened this issue May 5, 2021 · 13 comments
Labels
compile related to the `deno compile` feature suggestion suggestions for new features (yet to be agreed)

Comments

@ealib
Copy link

ealib commented May 5, 2021

Feature request: compile JS/TS scripts with no dependency. To be used in IoT, IIoT, embedded devices etc.

@iugo
Copy link
Contributor

iugo commented May 21, 2021

In 1.10.2, deno compile is no --lite option. 😞

@lucacasonato lucacasonato added compile related to the `deno compile` feature suggestion suggestions for new features (yet to be agreed) labels Jun 8, 2021
@JohannesRudolph
Copy link

I also noticed that the —lite option has gone missing. I could not find any mention of that on the release notes. Is this a bug or was there a conscious decision to remove this? Final binary size is a concern for many types of applications (iot, cli), and I would certainly appreciate to see it back.

@MierenManz
Copy link

Removing lite binaries was a conscious decision.
iirc it increased build time by too much.

@bartlomieju
Copy link
Member

Feature request: compile JS/TS scripts with no dependency

What do you mean by no dependency? Using deno compile you already get a self-contained executable that has exactly same requirements as running deno itself.

@dlight
Copy link

dlight commented Aug 10, 2021

@MierenManz did it increase the compile time for non-lite builds?

I think having a longer compile time is a reasonable tradeoff if you want to ship the smallest binary possible.

@jabyrd3
Copy link

jabyrd3 commented Oct 27, 2021

Ah, I just bumped into this as well. Being able to generate smaller binaries is killer for dealing with more constrained environments. Anybody have any idea if this might be feasible anytime soon?

@jabyrd3
Copy link

jabyrd3 commented Oct 27, 2021

Ah, so the "build times" referenced up-thread weren't end-user binary build-times, but denos CI, that makes more sense. #10350

I wouldn't mind building denort from source for this, can we provide an alternate deno binary to deno compile for it to pack?

@bartlomieju
Copy link
Member

I wouldn't mind building denort from source for this, can we provide an alternate deno binary to deno compile for it to pack?

I think it's a good compromise, I'm willing to accept a PR that adds a flag to custom binary.

@ealib
Copy link
Author

ealib commented Nov 2, 2021

@bartlomieju sorry I meant "no dependency = static linking". Maybe easier to have a statically linked Deno first.

@max-pub
Copy link

max-pub commented Mar 15, 2022

would it be possible to have a lite-binary by utilizing system-bundled js-runtimes, a la https://neutralino.js.org ?

this should reduce file-sizes even further without increasing build-time?

@talentlessguy
Copy link

What's the status on this issue? I'm building a CLI app on deno and i'd like to ship a binary

@jabyrd3
Copy link

jabyrd3 commented Jan 20, 2024

What's the status on this issue? I'm building a CLI app on deno and i'd like to ship a binary

Sorry, I started a new job and completely ran out of free time to mess around. someday i'd like to revisit this (and deno, in general), but for the time-being I'm stuck in nodeland. tiny deno binaries in an extremely minimal container will be veryvery nice

@lucacasonato
Copy link
Member

We are providing denort again, so I am going to close this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compile related to the `deno compile` feature suggestion suggestions for new features (yet to be agreed)
Projects
None yet
Development

No branches or pull requests

10 participants