Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Over at the TypeScript compiler we recently slowed our release cycle from 2 months to 3 months specifically because of an observation noted here: nobody used our beta (or RC) builds.

It is pretty standard in the Rust community for crates to use stable, beta, and nightly in their CI. I know testing is different than development, especially for using new features but I'm sure it does help.



The TypeScript is usually install via npm, but like many package managers it doesn't allow multiple user-specific installed versions of a package.

(What package manager allows for your multiple rustc versions? Or is it a bespoke solution?)

Fortunately the (IMO superior) yarn package manager does.

    "devDependencies": {
        "typescript": "~3.6.0",
        "typescript-beta": "npm:typescript@3.7.0-beta"
    }
Instead of using node_modules/.bin/tsc, use node_modules/typescript-beta/bin/tsc


> (What package manager allows for your multiple rustc versions? Or is it a bespoke solution?)

rustup, the recommended / website default way of installing rustc, supports installing multiple channels. The command it installs on your path as "rustc" (and "cargo" etc.) is actually a wrapper; you can use e.g. "rustc +nighly foo.rs", change the default for your user, and even change the default for a directory.

That said, CI is typicality done in ad-hoc VMs or containers (e.g., a Travis matrix), so having different versions in automated test runs would be straightforward even if rustup didn't support this.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: