Giter VIP home page Giter VIP logo

Comments (16)

steinerkelvin avatar steinerkelvin commented on August 16, 2024 2

Well, this instruction is not only shown on Github, but also on crates.io and wherever else replicates the README.

how many people go to the repo and read the README without the intention of cloning it?

A lot, I guess. From my experience I would say most READMEs instruct to install from some package manager, the releases page, cargo install <name>, etc. (example 1, 2, 3). I have no idea where you got that from. :P

from hvm.

PeterNjeim avatar PeterNjeim commented on August 16, 2024 1

I think it's just a culture shock kind of moment for @tommythorn, because GitHub over the years has now been increasingly used by non-developers to get the programs they want, especially via the "Releases" page. For this reason, it is now common to have usage and installation instructions for non-developers at the top of the readme, with a separate section titled "building" or "contributing" for developers.

So I believe cargo install x is the correct thing to say in the readme. Consider a dedicated "Building" section for developers/tinkerers with relevant instructions there.

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

Arrgh. The problem is that the README says to use cargo install hvm which doesn't install the current version.

Why does it say that instead of cargo build --release?

from hvm.

VictorTaelin avatar VictorTaelin commented on August 16, 2024

Wait, why it doesn't install the current version? I've published it. Can anyone with cargo experience let me know what is going on?

from hvm.

nipzu avatar nipzu commented on August 16, 2024

By default, cargo install hvm downloads and compiles the latest version that is on crates.io. The published version has been last updated 3 days ago (version 0.1.7), so it doesn't include 61a331f. In case @VictorTaelin has tried to publish a more recent version, a possible explanation I see is that the version number has not been bumped and crates.io ignores the changes because of that.

You can run cargo install --path . in a local repo or cargo install --git https://github.com/Kindelia/HVM if you want to install with the latest commits. cargo build --release compiles the local version, so it's what you want to use for development. The Cargo Book should have a lot of extra documentation for cargo commands.

from hvm.

VictorTaelin avatar VictorTaelin commented on August 16, 2024

I've uploaded 0.1.8 just in case, but I thought 0.1.7 was working fine as published. Can anyone test if cargo install hvm works fine now?

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

I just now ran rustup update and cargo install --force hvm and still got v0.1.7. Reproduced the issue again:

$ hvm c bench/Fibonacci/main.hvm && gcc -Ofast bench/Fibonacci/main.c
Compiled to 'bench/Fibonacci/main.c'.
bench/Fibonacci/main.c:932:5: error: variably modified ‘normal_seen_data’ at file scope
  932 | u64 normal_seen_data[NORMAL_SEEN_MCAP];
      |     ^~~~~~~~~~~~~~~~

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

I still don't see the logic of using cargo install from crates.io when you already have the sources. Maybe cargo install --path . as suggested above.

ADD: I just tried that and it worked.

from hvm.

lqd avatar lqd commented on August 16, 2024

Note: 0.1.7 is indeed the latest published version https://crates.io/crates/hvm/versions

from hvm.

steinerkelvin avatar steinerkelvin commented on August 16, 2024

Version 0.1.9 is now published could you test?

@tommythorn

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

It's updated now, but I still find it this advice wrong - if you cloned the repo, you obviously expect to be working with the sources from the repo.

from hvm.

nipzu avatar nipzu commented on August 16, 2024

You can run cargo install hvm without cloning the repo. It downloads the source automatically from crates.io to $HOME/.cargo/registry/cache/ and builds from there.

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

Obviously, but how many people go to the repo and read the README without the intention of cloning it? I posit that this is an unusual and confusing suggestion.

from hvm.

nothingnesses avatar nothingnesses commented on August 16, 2024

Fwiw, the Nix.md file file has instructions for building and installing using the Nix package manager which allows for reproducible builds, and exposes a development shell with dependencies included (such as clang) so you don't have to worry about installing and setting these up. It could be a more convenient alternative that's suitable for developers/tinkerers.

from hvm.

steinerkelvin avatar steinerkelvin commented on August 16, 2024

Just published #79. What do you think?

from hvm.

tommythorn avatar tommythorn commented on August 16, 2024

Thanks.

from hvm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.