question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Is it a good idea to be distributing an exe file in git repos?

See original GitHub issue

Description

I am considering learning F# and .Net (I’m familiar with Haskell and other functional languages). F# seems like a well done language. But I’m a bit surprised with certain practices in packet. For instance you recommend uploading a bootstrapping exe (or even packet.exe) in the .packet folder of the git repo. This is huge surprise to me because this does not seem like a good idea. How can you run a random executable blob after you clone a git repo? The trust issues just seem too huge to me. Even if the git repo is trustworthy its tough to be sure that the exe does not have bad things in it (the repo owner may have unwittingly added a bad exe to his repo).

You might suggest that packet can be built by source but that is not the default workflow you are suggesting to the users. A shell script that downloads packet.exe might be more palatable than an bootstrapper which is also an exe.

Expected behavior

In many other languages OCaml, Haskell etc. I think there are far saner and safer (by design) practices that seem to be followed and I think packet should encourage that. Maybe I’m a newbie and I don’t understand some things here. Please educate me why I should not worry about executable blobs in my F# git repos.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:15 (11 by maintainers)

github_iconTop GitHub Comments

1reaction
forkicommented, Jun 19, 2018

Yes it’s bytecode. That’s why it runs cross platform.

Sidharth Kshatriya notifications@github.com schrieb am Di., 19. Juni 2018, 20:28:

@0x53A https://github.com/0x53A (As mentioned I’m a newbie to F#/.Net). So the packet.exe here is not windows exe in the traditional sense? Is it more like a java jar file?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/fsprojects/Paket/issues/3261#issuecomment-398499150, or mute the thread https://github.com/notifications/unsubscribe-auth/AADgNNKxA7kuky0X3YCAlo925JzkYTN8ks5t-ULBgaJpZM4Ut6eW .

0reactions
sidkshatriyacommented, Jun 19, 2018

@0x53A (As mentioned I’m a newbie to F#/.Net). So the packet.exe here is not windows exe in the traditional sense? Is it more like a java jar file?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Is it a good to push EXE files to a git repo?
It doesn't. Git does not store diffs, it computes them as necessary when you ask for them. Git will guess whether a file...
Read more >
GIT: Should I commit output files (like *.exe, *.lib) when ...
Putting non-source files under version control is generally not a good idea. If you insist, you can add it in one commit, and...
Read more >
Is it necessary to set the executable bit on scripts checked ...
While Git does support preserving an execution bit on a tracked file, you should be using some other tool that takes a Git...
Read more >
Best practice for knowing the link between binaries (*.exe ...
The biggest point is: there is no link between the binaries (EXE and DLL files) and their source code, and regularly, I need...
Read more >
How do I make a GitHub repository into an exe?
To export a Github repository, click the "Clone or download" button, ... To download the released .exe file, click the "releases" button.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found