Skip to content

Commit 98bb4f3

Browse files
niieaniEisenbergEffect
authored andcommitted
Windows fixes and Windows CI (aurelia#710)
* fix(typescript-webpack): fix building on windows * chore(appveyor): add Windows CI fixes aurelia#501 * fix(webpack): more Windows-only fixes * fix(webpack): use del-cli since del conflicts in Windows * fix(typescript-webpack): fix Windows complaining about typings by using TS_NODE_FAST * chore(CI): use YARN for all runners and enable all skeletons for testing * chore(CI): add caches and node typings * chore(CI): remove unnecessary build steps * fix(typescript-webpack): invoke karma via ts-node * fix(webpack): try adding reference to node types in the config file * fix(esnext): incorrect babel preset in karma * chore(CI): install missing modules in CI * fix(esnext): incorrect babel preset in karma * fix(jspm-typescript): typings postinstall * chore(CI): add missing jspm installs to AppVeyor
1 parent 4751f6e commit 98bb4f3

File tree

10 files changed

+80
-27
lines changed

10 files changed

+80
-27
lines changed

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
[![ZenHub](https://raw.githubusercontent.com/ZenHubIO/support/master/zenhub-badge.png)](https://zenhub.io)
44
[![Join the chat at https://gitter.im/aurelia/discuss](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/aurelia/discuss?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5-
[![CircleCI](https://circleci.com/gh/aurelia/skeleton-navigation.svg?style=shield)](https://circleci.com/gh/aurelia/skeleton-navigation)
5+
[![CI on Linux](https://circleci.com/gh/aurelia/skeleton-navigation.svg?style=shield)](https://circleci.com/gh/aurelia/skeleton-navigation)
6+
[![CI on Windows](https://ci.appveyor.com/api/projects/status/jeqgpvyyjh6wul9f?svg=true)](https://ci.appveyor.com/project/niieani/skeleton-navigation)
67

78
---
89

appveyor.yml

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Test against this version of Node.js
2+
environment:
3+
matrix:
4+
- nodejs_version: "4"
5+
- nodejs_version: "6"
6+
- nodejs_version: "7"
7+
8+
cache:
9+
- skeleton-esnext/node_modules
10+
- skeleton-esnext/jspm_packages
11+
- skeleton-esnext-webpack/node_modules
12+
- skeleton-typescript/node_modules
13+
- skeleton-typescript/jspm_packages
14+
- skeleton-typescript-webpack/node_modules
15+
- "%LOCALAPPDATA%/Yarn"
16+
17+
# Install scripts. (runs after repo cloning)
18+
install:
19+
# Get the latest stable version of Node.js or io.js
20+
- ps: Install-Product node $env:nodejs_version
21+
- npm install -g jspm
22+
# install modules
23+
- cd skeleton-esnext-webpack && yarn
24+
- cd skeleton-typescript-webpack && yarn
25+
- cd skeleton-esnext && yarn
26+
- cd skeleton-esnext && jspm install
27+
- cd skeleton-typescript && yarn
28+
- cd skeleton-typescript && jspm install
29+
30+
# Post-install test scripts.
31+
test_script:
32+
# Output useful info for debugging.
33+
- node --version
34+
- yarn --version
35+
# run tests
36+
- cd skeleton-typescript-webpack && yarn run test
37+
- cd skeleton-typescript-webpack && yarn run e2e
38+
- cd skeleton-typescript-webpack && yarn run build:prod
39+
- cd skeleton-esnext-webpack && yarn run test
40+
- cd skeleton-esnext-webpack && yarn run e2e
41+
- cd skeleton-esnext-webpack && yarn run build:prod
42+
- cd skeleton-esnext && yarn run test
43+
- cd skeleton-typescript && yarn run test
44+
45+
# Don't actually build.
46+
build: off

circle.yml

+13-14
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,26 @@ dependencies:
1515
override:
1616
- cd skeleton-esnext-webpack && yarn
1717
- cd skeleton-typescript-webpack && yarn
18-
# - cd skeleton-esnext && yarn
19-
# - cd skeleton-esnext && jspm install
20-
# - cd skeleton-typescript && yarn
21-
# - cd skeleton-typescript && jspm install
18+
- cd skeleton-esnext && yarn
19+
- cd skeleton-esnext && jspm install
20+
- cd skeleton-typescript && yarn
21+
- cd skeleton-typescript && jspm install
2222
cache_directories:
2323
- "skeleton-esnext/node_modules"
2424
- "skeleton-esnext/jspm_packages"
2525
- "skeleton-esnext-webpack/node_modules"
2626
- "skeleton-typescript/node_modules"
2727
- "skeleton-typescript/jspm_packages"
2828
- "skeleton-typescript-webpack/node_modules"
29+
- "~/.yarn-cache"
2930

3031
test:
3132
override:
32-
- cd skeleton-esnext-webpack && npm test
33-
- cd skeleton-esnext-webpack && npm run e2e
34-
- cd skeleton-esnext-webpack && npm run build
35-
- cd skeleton-esnext-webpack && npm run build:prod
36-
- cd skeleton-typescript-webpack && npm test
37-
- cd skeleton-typescript-webpack && npm run e2e
38-
- cd skeleton-typescript-webpack && npm run build
39-
- cd skeleton-typescript-webpack && npm run build:prod
40-
# - cd skeleton-esnext && npm test
41-
# - cd skeleton-typescript && npm test
33+
- cd skeleton-typescript-webpack && yarn run test
34+
- cd skeleton-typescript-webpack && yarn run e2e
35+
- cd skeleton-typescript-webpack && yarn run build:prod
36+
- cd skeleton-esnext-webpack && yarn run test
37+
- cd skeleton-esnext-webpack && yarn run e2e
38+
- cd skeleton-esnext-webpack && yarn run build:prod
39+
- cd skeleton-esnext && yarn run test
40+
- cd skeleton-typescript && yarn run test

skeleton-esnext-webpack/package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"description": "A starter kit for building a standard navigation-style app with Aurelia and webpack.",
55
"main": "dist/main.js",
66
"scripts": {
7-
"pretest": "del test/coverage",
7+
"pretest": "del-cli \"test/coverage\"",
88
"test": "cross-env BABEL_ENV=node NODE_ENV=test ./node_modules/karma/bin/karma start test/karma.conf.js",
99
"test:debug": "npm test -- --single-run=false --debug",
1010
"webdriver:update": "cross-env ./node_modules/.bin/webdriver-manager update",
@@ -14,8 +14,8 @@
1414
"e2e:start-when-ready": "wait-on --timeout 120000 http-get://localhost:19876/index.html && npm run e2e:start",
1515
"e2e:start": "cross-env ./node_modules/.bin/protractor test/protractor.conf.js",
1616
"e2e:live": "npm run e2e:start -- --elementExplorer",
17-
"clean": "npm cache clean && del node_modules test/coverage dist",
18-
"clean:dist": "del dist",
17+
"clean": "npm cache clean && del-cli node_modules \"test/coverage\" dist",
18+
"clean:dist": "del-cli dist",
1919
"preclean:install": "npm run clean",
2020
"clean:install": "npm install",
2121
"preclean:start": "npm run clean",

skeleton-esnext/karma.conf.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ module.exports = function(config) {
3939
'babelPreprocessor': {
4040
options: {
4141
sourceMap: 'inline',
42-
presets: [ 'es2015-loose', 'stage-1'],
42+
presets: [ ['es2015', { loose: true }], 'stage-1'],
4343
plugins: [
4444
'syntax-flow',
4545
'transform-decorators-legacy',

skeleton-typescript-webpack/package.json

+7-6
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
"description": "A starter kit for building a standard navigation-style app with Aurelia and webpack.",
55
"main": "dist/main.js",
66
"scripts": {
7-
"pretest": "del test/coverage",
8-
"test": "cross-env NODE_ENV=test ./node_modules/karma/bin/karma start test/karma.conf.js",
7+
"pretest": "del-cli \"test/coverage\"",
8+
"test": "cross-env NODE_ENV=test TS_NODE_PROJECT=tsconfig.tsnode.json TS_NODE_FAST=true ts-node ./node_modules/karma/bin/karma start test/karma.conf.js",
99
"test:debug": "npm test -- --single-run=false --debug",
1010
"webdriver:update": "cross-env ./node_modules/.bin/webdriver-manager update",
1111
"webdriver:start": "cross-env ./node_modules/.bin/webdriver-manager start",
@@ -14,8 +14,8 @@
1414
"e2e:start-when-ready": "wait-on --timeout 120000 http-get://localhost:19876/index.html && npm run e2e:start",
1515
"e2e:start": "cross-env ./node_modules/.bin/protractor test/protractor.conf.js",
1616
"e2e:live": "npm run e2e:start -- --elementExplorer",
17-
"clean": "npm cache clean && del node_modules test/coverage dist",
18-
"clean:dist": "del dist",
17+
"clean": "npm cache clean && del-cli node_modules \"test/coverage\" dist",
18+
"clean:dist": "del-cli dist",
1919
"preclean:install": "npm run clean",
2020
"clean:install": "npm install",
2121
"preclean:start": "npm run clean",
@@ -35,8 +35,8 @@
3535
"server:dev": "cross-env NODE_ENV=development npm run webpack-dev-server -- --inline --progress --profile --watch",
3636
"server:dev:hmr": "npm run server:dev -- --hot",
3737
"server:prod": "http-server dist --cors",
38-
"webpack": "cross-env TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\"}' ./node_modules/.bin/webpack",
39-
"webpack-dev-server": "cross-env TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\"}' ./node_modules/.bin/webpack-dev-server"
38+
"webpack": "cross-env TS_NODE_PROJECT=tsconfig.tsnode.json TS_NODE_FAST=true ./node_modules/.bin/webpack",
39+
"webpack-dev-server": "cross-env TS_NODE_PROJECT=tsconfig.tsnode.json TS_NODE_FAST=true ./node_modules/.bin/webpack-dev-server"
4040
},
4141
"repository": {
4242
"type": "git",
@@ -109,6 +109,7 @@
109109
"@easy-webpack/core": "^1.4.5",
110110
"@types/bluebird": "^3.0.35",
111111
"@types/jasmine": "^2.5.37",
112+
"@types/node": "^6.0.46",
112113
"@types/webpack": "^1.12.35",
113114
"@types/whatwg-fetch": "^0.0.32",
114115
"aurelia-protractor-plugin": "^1.0.0",

skeleton-typescript-webpack/test/karma.conf.js

-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
*/
55
"use strict";
66
const path = require('path');
7-
require('ts-node').register({ compilerOptions: { module: 'commonjs' }, disableWarnings: true, fast: true });
87

98
module.exports = function(config) {
109
config.set({
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"extends": "./tsconfig",
3+
"compilerOptions": {
4+
"module": "commonjs"
5+
}
6+
}

skeleton-typescript-webpack/webpack.config.ts

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
/// <reference path="./node_modules/@types/node/index.d.ts" />
12
/**
23
* To learn more about how to use Easy Webpack
34
* Take a look at the README here: https://github.com/easy-webpack/core

skeleton-typescript/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"url": "http://github.com/aurelia/skeleton-navigation-typescript"
2222
},
2323
"scripts": {
24-
"prepublish": "./node_modules/.bin/typings install",
24+
"prepublish": "typings install",
2525
"test": "gulp test",
2626
"e2e": "gulp serve e2e"
2727
},

0 commit comments

Comments
 (0)