Introduce rebar-version (#9)

Previously (Remove redundant code) (+27 squashed commits)
Squashed commits:
[0b79c31] Rename as setup-beam
[312b42b] Simplify platform verification
[b43ca96] Prevent use of OTP- prefixed Erlang/OTP versions
[103a236] Move the promise-based approach to an async-based approach

(not testing for failure, so not guaranteeing readable/usable output either)
[1e7f631] Remove local test files
[d03e0c6] Prevent use of -otp- infixed Elixir versions
[697110e] Have versions output in action, not just in tests
[7360781] Ease test validations
[71e6999] Reinstall tests that were there before
[6602f20] Attempt at simplifying regexp matching with build listings
[09247af] Provide for an Elixir to "not OTP" fallback mechanism

(as explained by the comments)
[dfc4083] Attempt at renaming for clarity

We also get rid of return values when not reachable
We also move the `-otp-` part of the Elixir version upstream so it's easy to reason about
  (and update the tests accordingly)
[0d4eb28] Bump our dep.s

(trying to figure out why core.setFailed isn't making the action fail, as it should)
[ebf48ef] Have action fail (with an exception) when no expected version is found

(we otherwise feel that a simple warning is not enough, as it may end up hiding potential bugs)
[8478364] Adapt tests to our actual inputs
[16ea63d] Add prettier again, now sync'ed with jslint

(pass it on the code, already)
[cfc65df] Improve error messages and tests
[a017948] Test unavailable Elixir upon mix
[7f2a3e9] Test failing installations

Also output core.error when expected
[08061ca] Attempt at making shell scripts more robust
[4ee73cb] Separate test code from production code

1. inputs (for CI) are managed by code, not by .yml env. variables
2. rebar3_builds.txt added for stable repeatability
3. tests tweaked to make it easier to modify and drop dependency on production code
4. `dist` regenerated (duplicate files gone)
5. setup-elixir.js tweaked to this new reality
[d17fed4] Remove prettier from the package
[7d6f8f5] Actually break CI when we should
[b972eaf] Remove unrequired element
[0ffa28a] Ease maintenance and readability
[4690169] Fix as per broken tests
[a1371c6] Merge setup-erlang in
This commit is contained in:
Paulo F. Oliveira
2021-03-30 17:54:20 +01:00
committed by GitHub
parent 86521d7b4d
commit 89cb00455a
112 changed files with 10429 additions and 6316 deletions
+23 -9
View File
@@ -4,8 +4,14 @@
"license": "MIT",
"private": true,
"scripts": {
"build": "ncc build src/setup-beam.js",
"format": "prettier \"src/**/*.js\""
"build": "ncc build src/setup-beam.js --no-cache --license licenses.txt",
"format": "prettier src/**/*.js --write && prettier __tests__/**/*.js --write",
"jslint": "eslint src/**/*.js && eslint __tests__/**/*.js",
"licenses": "yarn licenses generate-disclaimer > 3RD_PARTY_LICENSES",
"markdownlint": "markdownlint *.md",
"shellcheck": "shellcheck src/install-*",
"test": "node __tests__/setup-beam.test.js",
"yamllint": "yamllint .github/workflows/**.yml && yamllint .*.yml && yamllint *.yml"
},
"husky": {
"hooks": {
@@ -13,14 +19,22 @@
}
},
"dependencies": {
"@actions/core": "^1.0.0",
"@actions/exec": "^1.0.0",
"@actions/tool-cache": "^1.1.0",
"semver": "^6.3.0"
"@actions/core": "1.2.6",
"@actions/exec": "1.0.4",
"semver": "7.3.4"
},
"devDependencies": {
"@zeit/ncc": "^0.22.1",
"husky": "^4.2.5",
"prettier": "^2.0.5"
"@vercel/ncc": "0.27.0",
"eslint": "7.22.0",
"eslint-config-google": "0.14.0",
"husky": "5.2.0",
"markdownlint": "0.23.1",
"prettier": "2.2.1",
"shellcheck": "1.0.0",
"yaml-lint": "1.2.4",
"yarn": "1.22.10"
},
"engines": {
"node": ">=12"
}
}