Merge pull request #15 from haskell-CI/releases/v1.1
Update documentation to v1.1
This commit is contained in:
@@ -26,7 +26,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions/setup-haskell@v1
|
- uses: actions/setup-haskell@v1.1
|
||||||
- run: runhaskell Hello.hs
|
- run: runhaskell Hello.hs
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions/setup-haskell@v1
|
- uses: actions/setup-haskell@v1.1
|
||||||
with:
|
with:
|
||||||
ghc-version: '8.8' # Resolves to the latest point release of GHC 8.8
|
ghc-version: '8.8' # Resolves to the latest point release of GHC 8.8
|
||||||
cabal-version: '3.0.0.0' # Exact version of Cabal
|
cabal-version: '3.0.0.0' # Exact version of Cabal
|
||||||
@@ -59,7 +59,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
runs-on: ubuntu-latest # or macOS-latest, or windows-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions/setup-haskell@v1
|
- uses: actions/setup-haskell@v1.1
|
||||||
with:
|
with:
|
||||||
ghc-version: '8.8.3' # Exact version of ghc to use
|
ghc-version: '8.8.3' # Exact version of ghc to use
|
||||||
# cabal-version: 'latest'. Omitted, but defalts to 'latest'
|
# cabal-version: 'latest'. Omitted, but defalts to 'latest'
|
||||||
@@ -88,7 +88,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Setup Haskell
|
- name: Setup Haskell
|
||||||
uses: actions/setup-haskell@v1
|
uses: actions/setup-haskell@v1.1
|
||||||
with:
|
with:
|
||||||
ghc-version: ${{ matrix.ghc }}
|
ghc-version: ${{ matrix.ghc }}
|
||||||
cabal-version: ${{ matrix.cabal }}
|
cabal-version: ${{ matrix.cabal }}
|
||||||
@@ -156,6 +156,7 @@ Recommendation: Use the latest available version if possible.
|
|||||||
**Stack:**
|
**Stack:**
|
||||||
|
|
||||||
- `latest` (recommended) -- follows the latest release automatically.
|
- `latest` (recommended) -- follows the latest release automatically.
|
||||||
|
- `2.3.1` `2.3`
|
||||||
- `2.1.3` `2.1`
|
- `2.1.3` `2.1`
|
||||||
- `2.1.1`
|
- `2.1.1`
|
||||||
- `1.9.3.1` `1.9`
|
- `1.9.3.1` `1.9`
|
||||||
|
|||||||
@@ -3,6 +3,11 @@ import {getInput} from '@actions/core';
|
|||||||
import * as supported_versions from '../src/versions.json';
|
import * as supported_versions from '../src/versions.json';
|
||||||
|
|
||||||
const def = getDefaults();
|
const def = getDefaults();
|
||||||
|
const latestVersions = {
|
||||||
|
ghc: supported_versions.ghc[0],
|
||||||
|
cabal: supported_versions.cabal[0],
|
||||||
|
stack: supported_versions.stack[0]
|
||||||
|
};
|
||||||
|
|
||||||
const mkName = (s: string): string =>
|
const mkName = (s: string): string =>
|
||||||
`INPUT_${s.replace(/ /g, '_').toUpperCase()}`;
|
`INPUT_${s.replace(/ /g, '_').toUpperCase()}`;
|
||||||
@@ -25,8 +30,7 @@ describe('actions/setup-haskell', () => {
|
|||||||
afterEach(() => (process.env = OLD_ENV));
|
afterEach(() => (process.env = OLD_ENV));
|
||||||
|
|
||||||
it('Parses action.yml to get correct default versions', () => {
|
it('Parses action.yml to get correct default versions', () => {
|
||||||
const defs = {ghc: '8.10.1', cabal: '3.2.0.0', stack: '2.1.3'};
|
forAll(t => expect(def[t].version).toBe(latestVersions[t]));
|
||||||
forAll(t => expect(def[t].version).toBe(defs[t]));
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Supported versions are parsed from JSON correctly', () =>
|
it('Supported versions are parsed from JSON correctly', () =>
|
||||||
@@ -56,14 +60,13 @@ describe('actions/setup-haskell', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('"latest" Versions resolve correctly', () => {
|
it('"latest" Versions resolve correctly', () => {
|
||||||
const v = {ghc: '8.6.5', cabal: '2.4.1.0', stack: '2.1.3'};
|
|
||||||
setupEnv({
|
setupEnv({
|
||||||
'stack-version': '2.1',
|
'stack-version': 'latest',
|
||||||
'ghc-version': '8.6',
|
'ghc-version': 'latest',
|
||||||
'cabal-version': '2.4'
|
'cabal-version': 'latest'
|
||||||
});
|
});
|
||||||
const options = getOpts(def);
|
const options = getOpts(def);
|
||||||
forAll(t => expect(options[t].resolved).toBe(v[t]));
|
forAll(t => expect(options[t].resolved).toBe(latestVersions[t]));
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Enabling stack does not disable GHC or Cabal', () => {
|
it('Enabling stack does not disable GHC or Cabal', () => {
|
||||||
|
|||||||
8
dist/index.js
vendored
8
dist/index.js
vendored
@@ -2584,7 +2584,7 @@ function escapeProperty(s) {
|
|||||||
/***/ 447:
|
/***/ 447:
|
||||||
/***/ (function(module) {
|
/***/ (function(module) {
|
||||||
|
|
||||||
module.exports = {"ghc":["8.10.1","8.8.3","8.8.2","8.8.1","8.6.5","8.6.4","8.6.3","8.6.2","8.6.1","8.4.4","8.4.3","8.4.2","8.4.1","8.2.2","8.0.2","7.10.3"],"cabal":["3.2.0.0","3.0.0.0","2.4.1.0","2.4.0.0","2.2.0.0"],"stack":["2.1.3","2.1.1","1.9.3","1.9.1","1.7.1","1.6.5","1.6.3","1.6.1","1.5.1","1.5.0","1.4.0","1.3.2","1.3.0","1.2.0"]};
|
module.exports = {"ghc":["8.10.1","8.8.3","8.8.2","8.8.1","8.6.5","8.6.4","8.6.3","8.6.2","8.6.1","8.4.4","8.4.3","8.4.2","8.4.1","8.2.2","8.0.2","7.10.3"],"cabal":["3.2.0.0","3.0.0.0","2.4.1.0","2.4.0.0","2.2.0.0"],"stack":["2.3.1","2.1.3","2.1.1","1.9.3","1.9.1","1.7.1","1.6.5","1.6.3","1.6.1","1.5.1","1.5.0","1.4.0","1.3.2","1.3.0","1.2.0"]};
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
@@ -10721,13 +10721,11 @@ exports.installTool = installTool;
|
|||||||
async function stack(version, os) {
|
async function stack(version, os) {
|
||||||
core.info(`Attempting to install stack ${version}`);
|
core.info(`Attempting to install stack ${version}`);
|
||||||
const build = {
|
const build = {
|
||||||
linux: 'linux-x86_64-static',
|
linux: `linux-x86_64${version >= '2.3.1' ? '' : '-static'}`,
|
||||||
darwin: 'osx-x86_64',
|
darwin: 'osx-x86_64',
|
||||||
win32: 'windows-x86_64'
|
win32: 'windows-x86_64'
|
||||||
}[os];
|
}[os];
|
||||||
const url = version === 'latest'
|
const url = `https://github.com/commercialhaskell/stack/releases/download/v${version}/stack-${version}-${build}.tar.gz`;
|
||||||
? `https://get.haskellstack.org/stable/${build}.tar.gz`
|
|
||||||
: `https://github.com/commercialhaskell/stack/releases/download/v${version}/stack-${version}-${build}.tar.gz`;
|
|
||||||
const p = await tc.downloadTool(`${url}`).then(tc.extractTar);
|
const p = await tc.downloadTool(`${url}`).then(tc.extractTar);
|
||||||
const [stackPath] = await glob_1.create(`${p}/stack*`, {
|
const [stackPath] = await glob_1.create(`${p}/stack*`, {
|
||||||
implicitDescendants: false
|
implicitDescendants: false
|
||||||
|
|||||||
@@ -135,15 +135,12 @@ export async function installTool(
|
|||||||
async function stack(version: string, os: OS): Promise<void> {
|
async function stack(version: string, os: OS): Promise<void> {
|
||||||
core.info(`Attempting to install stack ${version}`);
|
core.info(`Attempting to install stack ${version}`);
|
||||||
const build = {
|
const build = {
|
||||||
linux: 'linux-x86_64-static',
|
linux: `linux-x86_64${version >= '2.3.1' ? '' : '-static'}`,
|
||||||
darwin: 'osx-x86_64',
|
darwin: 'osx-x86_64',
|
||||||
win32: 'windows-x86_64'
|
win32: 'windows-x86_64'
|
||||||
}[os];
|
}[os];
|
||||||
|
|
||||||
const url =
|
const url = `https://github.com/commercialhaskell/stack/releases/download/v${version}/stack-${version}-${build}.tar.gz`;
|
||||||
version === 'latest'
|
|
||||||
? `https://get.haskellstack.org/stable/${build}.tar.gz`
|
|
||||||
: `https://github.com/commercialhaskell/stack/releases/download/v${version}/stack-${version}-${build}.tar.gz`;
|
|
||||||
const p = await tc.downloadTool(`${url}`).then(tc.extractTar);
|
const p = await tc.downloadTool(`${url}`).then(tc.extractTar);
|
||||||
const [stackPath] = await glob(`${p}/stack*`, {
|
const [stackPath] = await glob(`${p}/stack*`, {
|
||||||
implicitDescendants: false
|
implicitDescendants: false
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
],
|
],
|
||||||
"cabal": ["3.2.0.0", "3.0.0.0", "2.4.1.0", "2.4.0.0", "2.2.0.0"],
|
"cabal": ["3.2.0.0", "3.0.0.0", "2.4.1.0", "2.4.0.0", "2.2.0.0"],
|
||||||
"stack": [
|
"stack": [
|
||||||
|
"2.3.1",
|
||||||
"2.1.3",
|
"2.1.3",
|
||||||
"2.1.1",
|
"2.1.1",
|
||||||
"1.9.3",
|
"1.9.3",
|
||||||
|
|||||||
Reference in New Issue
Block a user