From 0a525c8578794c0a879331e9d614606232691583 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 15:52:37 -0800 Subject: [PATCH 01/14] ci(circle): update to CircleCI 2.0 Update to a new CircleCI 2.0 configuration based on the arcanemagus/atom-docker-ci image. --- .circleci/config.yml | 115 +++++++++++++++++++++++++++++++++++++++++++ circle.yml | 19 ------- 2 files changed, 115 insertions(+), 19 deletions(-) create mode 100644 .circleci/config.yml delete mode 100644 circle.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..8b3d3c1 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,115 @@ +version: 2 + +defaults: &defaults + working_directory: /tmp/project + docker: + - image: arcanemagus/atom-docker-ci:stable + steps: + # Restore project state + - attach_workspace: + at: /tmp + - run: + name: Install Julia v0.5.2 + command: | + curl -o julia.tar.gz --location --silent --show-error \ + https://julialang-s3.julialang.org/bin/linux/x64/0.5/julia-0.5.2-linux-x86_64.tar.gz && \ + mkdir julia && \ + tar --extract --gzip --strip 1 --directory=julia --file=julia.tar.gz && \ + echo 'export PATH="/home/atom/julia/bin:$PATH"' >> $BASH_ENV + - run: + name: Create VFB for Atom to run in + command: /usr/local/bin/xvfb_start + - run: + name: Atom version + command: ${ATOM_SCRIPT_PATH} --version + - run: + name: APM version + command: ${APM_SCRIPT_PATH} --version + - run: + name: Package APM package dependencies + command: | + if [ -n "${APM_TEST_PACKAGES}" ]; then + for pack in ${APM_TEST_PACKAGES}; do + ${APM_SCRIPT_PATH} install "${pack}" + done + fi; + - run: + name: Package dependencies + command: ${APM_SCRIPT_PATH} install + - run: + name: Cleaning package + command: ${APM_SCRIPT_PATH} clean + - run: + name: Package specs + command: ${ATOM_SCRIPT_PATH} --test spec + # Cache node_modules + - save_cache: + paths: + - node_modules + key: v1-dependencies-{{ .Branch }}-{{ checksum "package.json" }}-{{ checksum "package-lock.json"}} + +jobs: + checkout_code: + <<: *defaults + docker: + - image: circleci/node:latest + steps: + - checkout + # Restore node_modules from the last build + - restore_cache: + keys: + # Get latest cache for this package.json and package-lock.json + - v1-dependencies-{{ .Branch }}-{{ checksum "package.json" }}-{{ checksum "package-lock.json"}} + # Fallback to the current package.json + - v1-dependencies-{{ .Branch }}-{{ checksum "package.json" }}- + # Fallback to the last build for this branch + - v1-dependencies-{{ .Branch }}- + # Fallback to the last available master branch cache + - v1-dependencies-master- + # Don't go further down to prevent dependency issues from other branches + # Save project state for next steps + - persist_to_workspace: + root: /tmp + paths: + - project + lint: + <<: *defaults + docker: + - image: circleci/node:lts + steps: + # Restore project state + - attach_workspace: + at: /tmp + - run: + name: Node.js Version + command: node --version + - run: + name: NPM Version + command: npm --version + - run: + name: Install any remaining dependencies + command: npm install + - run: + name: Lint code + command: npm run lint + stable: + <<: *defaults + beta: + <<: *defaults + docker: + - image: arcanemagus/atom-docker-ci:beta + +workflows: + version: 2 + test_package: + jobs: + - checkout_code + - lint: + requires: + - checkout_code + - stable: + requires: + - lint + - beta: + requires: + - lint diff --git a/circle.yml b/circle.yml deleted file mode 100644 index 7e2ebf6..0000000 --- a/circle.yml +++ /dev/null @@ -1,19 +0,0 @@ -dependencies: - override: - - curl -L https://atom.io/download/deb -o atom-amd64.deb - - sudo dpkg --install atom-amd64.deb || true - - sudo apt-get update - - sudo apt-get -f install - - node --version - - npm --version - - atom --version - - npm prune - - npm install - -test: - override: - - npm test - -machine: - node: - version: 6.3.0 From 88cbe6f611875dfc42844082e3f080c29593cbc2 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 16:14:33 -0800 Subject: [PATCH 02/14] fix: incorrect usage of uuid4 Fixes #58. --- lib/server.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/server.js b/lib/server.js index b05fcd8..364886c 100644 --- a/lib/server.js +++ b/lib/server.js @@ -12,7 +12,7 @@ const JULIA_SERVER_PATH = Path.join(__dirname, 'julia-server.jl'); export async function getPipePath(): Promise { const baseDir = process.platform === 'win32' ? '\\\\.\\pipe\\' : `${os.tmpdir()}/`; - const uniqueId = uuid.sync(); + const uniqueId = uuid(); return baseDir + uniqueId; } From 4250df4f9ae15cf7f6af576df52a26cad150c64b Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 16:16:33 -0800 Subject: [PATCH 03/14] test: implement specs The previous specs appear to have been some sort of custom interface that no longer exists. Implement new specs that test the basic functionality of the linter. Note that it seems `Lint.jl` only ever returns a column range of 0 to 80 currently. Fixes #2. --- package-lock.json | 6 ++++ package.json | 3 +- spec/fixtures/bad.jl | 3 ++ spec/fixtures/good.jl | 3 ++ spec/linter-julia-spec.coffee | 62 ----------------------------------- spec/linter-julia-spec.js | 38 +++++++++++++++++++++ 6 files changed, 52 insertions(+), 63 deletions(-) create mode 100644 spec/fixtures/bad.jl create mode 100644 spec/fixtures/good.jl delete mode 100644 spec/linter-julia-spec.coffee create mode 100644 spec/linter-julia-spec.js diff --git a/package-lock.json b/package-lock.json index a70f53c..d92da22 100644 --- a/package-lock.json +++ b/package-lock.json @@ -927,6 +927,12 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, + "jasmine-fix": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jasmine-fix/-/jasmine-fix-1.3.1.tgz", + "integrity": "sha512-jxfPMW5neQUrgEZR7FIXp1UAberYAHkpWTmdSfN/ulU+sC/yUsB827tRiwGUaUyw+1kNC5jqcINst0FF8tvVvg==", + "dev": true + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", diff --git a/package.json b/package.json index 510f66d..20c20bc 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,8 @@ "eslint": "5.14.0", "eslint-config-airbnb-base": "13.1.0", "eslint-plugin-import": "2.16.0", - "flow-bin": "0.93.0" + "flow-bin": "0.93.0", + "jasmine-fix": "1.3.1" }, "configSchema": { "executablePath": { diff --git a/spec/fixtures/bad.jl b/spec/fixtures/bad.jl new file mode 100644 index 0000000..097092b --- /dev/null +++ b/spec/fixtures/bad.jl @@ -0,0 +1,3 @@ +function theQuestion() + return question +end diff --git a/spec/fixtures/good.jl b/spec/fixtures/good.jl new file mode 100644 index 0000000..2759bf4 --- /dev/null +++ b/spec/fixtures/good.jl @@ -0,0 +1,3 @@ +function theAnswer() + return 42 +end diff --git a/spec/linter-julia-spec.coffee b/spec/linter-julia-spec.coffee deleted file mode 100644 index 4005db7..0000000 --- a/spec/linter-julia-spec.coffee +++ /dev/null @@ -1,62 +0,0 @@ -LinterJulia = require '../lib/linter-julia' - -# Use the command `window:run-package-specs` (cmd-alt-ctrl-p) to run specs. -# -# To run a specific `it` or `describe` block add an `f` to the front (e.g. `fit` -# or `fdescribe`). Remove the `f` to unfocus the block. - -describe "LinterJulia", -> - [workspaceElement, activationPromise] = [] - - beforeEach -> - workspaceElement = atom.views.getView(atom.workspace) - activationPromise = atom.packages.activatePackage('linter-julia') - - describe "when the linter-julia:toggle event is triggered", -> - it "hides and shows the modal panel", -> - # Before the activation event the view is not on the DOM, and no panel - # has been created - expect(workspaceElement.querySelector('.linter-julia')).not.toExist() - - # This is an activation event, triggering it will cause the package to be - # activated. - atom.commands.dispatch workspaceElement, 'linter-julia:toggle' - - waitsForPromise -> - activationPromise - - runs -> - expect(workspaceElement.querySelector('.linter-julia')).toExist() - - linterJuliaElement = workspaceElement.querySelector('.linter-julia') - expect(linterJuliaElement).toExist() - - linterJuliaPanel = atom.workspace.panelForItem(linterJuliaElement) - expect(linterJuliaPanel.isVisible()).toBe true - atom.commands.dispatch workspaceElement, 'linter-julia:toggle' - expect(linterJuliaPanel.isVisible()).toBe false - - it "hides and shows the view", -> - # This test shows you an integration test testing at the view level. - - # Attaching the workspaceElement to the DOM is required to allow the - # `toBeVisible()` matchers to work. Anything testing visibility or focus - # requires that the workspaceElement is on the DOM. Tests that attach the - # workspaceElement to the DOM are generally slower than those off DOM. - jasmine.attachToDOM(workspaceElement) - - expect(workspaceElement.querySelector('.linter-julia')).not.toExist() - - # This is an activation event, triggering it causes the package to be - # activated. - atom.commands.dispatch workspaceElement, 'linter-julia:toggle' - - waitsForPromise -> - activationPromise - - runs -> - # Now we can test for view visibility - linterJuliaElement = workspaceElement.querySelector('.linter-julia') - expect(linterJuliaElement).toBeVisible() - atom.commands.dispatch workspaceElement, 'linter-julia:toggle' - expect(linterJuliaElement).not.toBeVisible() diff --git a/spec/linter-julia-spec.js b/spec/linter-julia-spec.js new file mode 100644 index 0000000..fe786bb --- /dev/null +++ b/spec/linter-julia-spec.js @@ -0,0 +1,38 @@ +'use babel'; + +import * as path from 'path'; +import { + // eslint-disable-next-line no-unused-vars + it, fit, wait, beforeEach, afterEach, +} from 'jasmine-fix'; + +const { lint } = require('../lib/index.js').provideLinter(); + +const badFile = path.join(__dirname, 'fixtures', 'bad.jl'); +const goodFile = path.join(__dirname, 'fixtures', 'good.jl'); + +describe('The go vet provider for Linter', () => { + beforeEach(async () => { + atom.workspace.destroyActivePaneItem(); + await atom.packages.activatePackage('linter-julia'); + }); + + it('checks a file with syntax error and reports the correct message', async () => { + const excerpt = 'question: use of undeclared symbol'; + const editor = await atom.workspace.open(badFile); + const messages = await lint(editor); + + expect(messages.length).toBe(1); + expect(messages[0].severity).toBe('error'); + expect(messages[0].excerpt).toBe(excerpt); + expect(messages[0].location.file).toBe(badFile); + // NOTE: This is invalid! Bug in Lint.jl + expect(messages[0].location.position).toEqual([[1, 0], [1, 80]]); + }); + + it('finds nothing wrong with a valid file', async () => { + const editor = await atom.workspace.open(goodFile); + const messages = await lint(editor); + expect(messages.length).toBe(0); + }); +}); From fa189a08cfe938967d2925a1164de7c06a24605a Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 16:17:02 -0800 Subject: [PATCH 04/14] style: cleanup settings usage --- lib/index.js | 58 ++++++++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 27 deletions(-) diff --git a/lib/index.js b/lib/index.js index 1b53588..b4e1ef5 100644 --- a/lib/index.js +++ b/lib/index.js @@ -8,6 +8,7 @@ import type { Server } from './types'; let spawnedServer: ?Server = null; let subscriptions: ?Object = null; +let executablePath; let ignoreInfo; let ignoreWarning; let showErrorCodes; @@ -17,33 +18,36 @@ export function activate() { // eslint-disable-next-line global-require require('atom-package-deps').install('linter-julia'); subscriptions = new CompositeDisposable(); - subscriptions.add(atom.config.observe('linter-julia.executablePath', async (executablePath) => { - if (spawnedServer) { - try { - await terminateServer(spawnedServer); - spawnedServer = null; - spawnedServer = await spawnServer(executablePath); - } catch (e) { - const message = '[Linter-Julia] ' - + 'Unable to spawn server after config change'; - atom.notifications.addError(`${message}. See console for details.`); - // eslint-disable-next-line no-console - console.error(`${message}: `, e); + subscriptions.add( + atom.config.observe('linter-julia.executablePath', async (value) => { + executablePath = value; + if (spawnedServer) { + try { + await terminateServer(spawnedServer); + spawnedServer = null; + spawnedServer = await spawnServer(executablePath); + } catch (e) { + const message = '[Linter-Julia] ' + + 'Unable to spawn server after config change'; + atom.notifications.addError(`${message}. See console for details.`); + // eslint-disable-next-line no-console + console.error(`${message}: `, e); + } } - } - })); - subscriptions.add(atom.config.observe('linter-julia.ignoreInfo', (_ignoreInfo) => { - ignoreInfo = _ignoreInfo; - })); - subscriptions.add(atom.config.observe('linter-julia.ignoreWarning', (_ignoreWarning) => { - ignoreWarning = _ignoreWarning; - })); - subscriptions.add(atom.config.observe('linter-julia.showErrorCodes', (_showErrorCodes) => { - showErrorCodes = _showErrorCodes; - })); - subscriptions.add(atom.config.observe('linter-julia.ignoreIssueCodes', (_ignoreIssueCodes) => { - ignoreIssueCodes = _ignoreIssueCodes; - })); + }), + atom.config.observe('linter-julia.ignoreInfo', (value) => { + ignoreInfo = value; + }), + atom.config.observe('linter-julia.ignoreWarning', (value) => { + ignoreWarning = value; + }), + atom.config.observe('linter-julia.showErrorCodes', (value) => { + showErrorCodes = value; + }), + atom.config.observe('linter-julia.ignoreIssueCodes', (value) => { + ignoreIssueCodes = value; + }), + ); } export function deactivate() { @@ -64,7 +68,7 @@ export function provideLinter() { grammarScopes: ['source.julia'], async lint(textEditor: Object) { if (!spawnedServer) { - spawnedServer = await spawnServer(atom.config.get('linter-julia.executablePath')); + spawnedServer = await spawnServer(executablePath); } const connection = net.createConnection(spawnedServer.path); connection.on('connect', () => { From 11c2dde5f2460ce3439634b76a2086039402f71a Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 16:18:19 -0800 Subject: [PATCH 05/14] fix: function to write socket data This needs to inherit the `this` from the calling socket connection. --- lib/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/index.js b/lib/index.js index b4e1ef5..7ab1ad6 100644 --- a/lib/index.js +++ b/lib/index.js @@ -71,7 +71,7 @@ export function provideLinter() { spawnedServer = await spawnServer(executablePath); } const connection = net.createConnection(spawnedServer.path); - connection.on('connect', () => { + connection.on('connect', function writeData() { this.write(JSON.stringify({ file: textEditor.getPath(), code_str: textEditor.getText(), From a2863264c7b6a347305227192d6e6c7a5c447e73 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Mon, 18 Feb 2019 16:22:28 -0800 Subject: [PATCH 06/14] fix: specify as able to lint on changes This was switched in #41, but no reasoning was given. Since it appears the server handles this we should re-enable it. Fixes #48. --- lib/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/index.js b/lib/index.js index 7ab1ad6..8304a5d 100644 --- a/lib/index.js +++ b/lib/index.js @@ -64,7 +64,7 @@ export function provideLinter() { return { name: 'Julia', scope: 'file', - lintsOnChange: false, + lintsOnChange: true, grammarScopes: ['source.julia'], async lint(textEditor: Object) { if (!spawnedServer) { From b1447849fc028713bb7773da143f915f3d0d4ea7 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:13:25 -0800 Subject: [PATCH 07/14] ci(circle): switch to Julia v0.6.4 The v0.5.2, although it is the version the current Lint.jl is designed for, is unable to contact GitHub to download the package. Switch to v0.6.4 in order to be able to install the package. --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 8b3d3c1..eb8f165 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -12,7 +12,7 @@ defaults: &defaults name: Install Julia v0.5.2 command: | curl -o julia.tar.gz --location --silent --show-error \ - https://julialang-s3.julialang.org/bin/linux/x64/0.5/julia-0.5.2-linux-x86_64.tar.gz && \ + https://julialang-s3.julialang.org/bin/linux/x64/0.6/julia-0.6.4-linux-x86_64.tar.gz && \ mkdir julia && \ tar --extract --gzip --strip 1 --directory=julia --file=julia.tar.gz && \ echo 'export PATH="/home/atom/julia/bin:$PATH"' >> $BASH_ENV From c97c62d93e07aec3e2740e5d7c8bf88173479e4a Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:14:32 -0800 Subject: [PATCH 08/14] ci(circle): pre-install Lint.jl This should automatically install for live environments, however it is too slow to re-initialize for each spec. --- .circleci/config.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index eb8f165..ae1dfe3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -16,6 +16,16 @@ defaults: &defaults mkdir julia && \ tar --extract --gzip --strip 1 --directory=julia --file=julia.tar.gz && \ echo 'export PATH="/home/atom/julia/bin:$PATH"' >> $BASH_ENV + - run: + name: Julia version + command: julia --version + - run: + name: Install Lint.jl + # Note the "using Lint" is to pre-compile the cache + command: julia -E 'Pkg.add("Lint"); using Lint;' + - run: + name: Lint.jl version + command: julia -E 'Pkg.installed("Lint")' - run: name: Create VFB for Atom to run in command: /usr/local/bin/xvfb_start From bb9bc27d9563d7ddf6944ca04268c428e0a56ac2 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:14:50 -0800 Subject: [PATCH 09/14] style: Remove useless variable --- lib/julia-server.jl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/julia-server.jl b/lib/julia-server.jl index ce85665..18fd041 100644 --- a/lib/julia-server.jl +++ b/lib/julia-server.jl @@ -1,9 +1,8 @@ using Lint named_pipe = ARGS[1] -notinstalled = Pkg.installed("Lint") == nothing -if notinstalled +if Pkg.installed("Lint") == nothing print(STDERR, "linter-julia-installing-lint") try Pkg.add("Lint") From f686290c7710e74687fad32bda422824b9c108b8 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:16:25 -0800 Subject: [PATCH 10/14] chore: wrap debug output in dev mode check Fix the `console.debug` statements to actually work, and only print them when Atom is in developer mode. --- lib/server.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/server.js b/lib/server.js index 364886c..93e4226 100644 --- a/lib/server.js +++ b/lib/server.js @@ -42,12 +42,13 @@ export async function spawnServer(juliaExecutable: string): Promise { data.stderr += chunk.toString('utf8'); }, exit(exitCode) { - // eslint-disable-next-line no-console - console.debug( - '[Linter-Julia] Server exited with code:', exitCode, - 'STDOUT:', data.stdout, - 'STDERR:', data.stderr, - ); + if (atom.inDevMode()) { + /* eslint-disable no-console */ + console.debug(`[Linter-Julia] Server exited with code: ${exitCode}`); + console.debug(`STDOUT: ${data.stdout}`); + console.debug(`STDERR: ${data.stderr}`); + /* eslint-enable no-console */ + } }, }); From 71e32bab857e31fd226d4989ec9274cafb1379a9 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:16:43 -0800 Subject: [PATCH 11/14] chore: fix name in specs --- spec/linter-julia-spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/linter-julia-spec.js b/spec/linter-julia-spec.js index fe786bb..9930ac7 100644 --- a/spec/linter-julia-spec.js +++ b/spec/linter-julia-spec.js @@ -11,7 +11,7 @@ const { lint } = require('../lib/index.js').provideLinter(); const badFile = path.join(__dirname, 'fixtures', 'bad.jl'); const goodFile = path.join(__dirname, 'fixtures', 'good.jl'); -describe('The go vet provider for Linter', () => { +describe('The Julia Lint.jl provider for Linter', () => { beforeEach(async () => { atom.workspace.destroyActivePaneItem(); await atom.packages.activatePackage('linter-julia'); From 30d2b77cb7b0092951fc250475342f05acceedbc Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:17:46 -0800 Subject: [PATCH 12/14] chore: increase spec timeout Julia is _very_ slow to bring in Lint.jl when starting up, increase the spec timeout to 90 seconds from 10 seconds in order to accommodate that. --- spec/linter-julia-spec.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/spec/linter-julia-spec.js b/spec/linter-julia-spec.js index 9930ac7..9663f23 100644 --- a/spec/linter-julia-spec.js +++ b/spec/linter-julia-spec.js @@ -11,6 +11,9 @@ const { lint } = require('../lib/index.js').provideLinter(); const badFile = path.join(__dirname, 'fixtures', 'bad.jl'); const goodFile = path.join(__dirname, 'fixtures', 'good.jl'); +// Julia is _slow_ to bring in Lint.jl, increase the timeout to 90 seconds +jasmine.getEnv().defaultTimeoutInterval = 90 * 1000; + describe('The Julia Lint.jl provider for Linter', () => { beforeEach(async () => { atom.workspace.destroyActivePaneItem(); From e17f99ece4e01eaa55323795cdf654e9665e8f44 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:31:10 -0800 Subject: [PATCH 13/14] ci(circle): fix Julia install step name --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index ae1dfe3..74aa3f3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -9,7 +9,7 @@ defaults: &defaults - attach_workspace: at: /tmp - run: - name: Install Julia v0.5.2 + name: Install Julia v0.6.4 command: | curl -o julia.tar.gz --location --silent --show-error \ https://julialang-s3.julialang.org/bin/linux/x64/0.6/julia-0.6.4-linux-x86_64.tar.gz && \ From ac8da2e16b76b69b18dfde7a26a0b269df822b28 Mon Sep 17 00:00:00 2001 From: Landon Abney Date: Tue, 19 Feb 2019 11:57:00 -0800 Subject: [PATCH 14/14] ci(circle): fix path --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 74aa3f3..10b6ebb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -15,7 +15,7 @@ defaults: &defaults https://julialang-s3.julialang.org/bin/linux/x64/0.6/julia-0.6.4-linux-x86_64.tar.gz && \ mkdir julia && \ tar --extract --gzip --strip 1 --directory=julia --file=julia.tar.gz && \ - echo 'export PATH="/home/atom/julia/bin:$PATH"' >> $BASH_ENV + echo 'export PATH="/tmp/project/julia/bin:$PATH"' >> $BASH_ENV - run: name: Julia version command: julia --version