Skip to content

Commit cee93ec

Browse files
authored
feat: Added proper type elision & refactored codebase
* Refactored codebase * Implemented yarn * Added IDE config files * Refactored tests + added multi-TS testing * Redesigned elision & integrated new "harmony factory" * Consolidated CI to GH Actions (dropping appveyor)
1 parent dd6adc8 commit cee93ec

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+20308
-6766
lines changed

.appveyor.yml

Lines changed: 0 additions & 7 deletions
This file was deleted.

.editorconfig

Lines changed: 369 additions & 3 deletions
Large diffs are not rendered by default.

.github/workflows/main.yml

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,37 @@ on: [push]
44

55
jobs:
66
build:
7-
8-
runs-on: ubuntu-latest
9-
7+
runs-on: ${{ matrix.os }}
108
strategy:
119
matrix:
12-
node-version: [8.x, 10.x, 12.x]
10+
os: [ubuntu-latest, windows-latest]
11+
node-version: [10.x, 12.x, 14.x]
1312

1413
steps:
15-
- uses: actions/checkout@v2
16-
- name: Use Node.js ${{ matrix.node-version }}
17-
uses: actions/setup-node@v1
18-
with:
19-
node-version: ${{ matrix.node-version }}
20-
- run: npm install
21-
- run: npm test
22-
env:
23-
CI: true
14+
- name: Checkout
15+
uses: actions/checkout@v2
16+
17+
- name: Determine Yarn Cache Path
18+
id: yarn-cache-dir-path
19+
run: echo "::set-output name=dir::$(yarn cache dir)"
20+
21+
- uses: actions/cache@v1
22+
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
23+
with:
24+
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
25+
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
26+
restore-keys: |
27+
${{ runner.os }}-yarn-
28+
29+
- name: Use Node.js ${{ matrix.node-version }}
30+
uses: actions/setup-node@v1
31+
with:
32+
node-version: ${{ matrix.node-version }}
33+
34+
- name: Install Packages
35+
run: yarn install --frozen-lockfile
36+
37+
- name: Test
38+
run: yarn test
39+
env:
40+
CI: true

.github/workflows/publish.yml

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,35 @@ jobs:
1313
- name: Checkout
1414
uses: actions/checkout@v2
1515

16+
- name: Determine Yarn Cache Path
17+
id: yarn-cache-dir-path
18+
run: echo "::set-output name=dir::$(yarn cache dir)"
19+
20+
- uses: actions/cache@v1
21+
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
22+
with:
23+
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
24+
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
25+
restore-keys: |
26+
${{ runner.os }}-yarn-
27+
1628
- name: Setup Node.js 12.x to publish to npmjs.org
1729
uses: actions/setup-node@v1
1830
with:
1931
node-version: '12.x'
2032
registry-url: 'https://registry.npmjs.org'
2133

2234
- name: Install Packages
23-
run: npm install
24-
25-
- name: Build
26-
run: npm run build
35+
run: yarn install --frozen-lockfile
2736

2837
- name: Test
29-
run: npm run test
38+
run: yarn test
3039
env:
3140
CI: true
3241

42+
- name: Build
43+
run: yarn build
44+
3345
- name: Publish to NPM
3446
run: npm publish
3547
env:

.gitignore

Lines changed: 76 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,77 @@
1-
lib
1+
# Yarn
2+
.yarn-cache
3+
4+
# Built
5+
*.js.map
6+
dist
7+
coverage
8+
package-lock.json
9+
*.tsbuildinfo
10+
11+
# Extensions
12+
*.seed
13+
*.log
14+
*.csv
15+
*.dat
16+
*.out
17+
*.pid
18+
*.gz
19+
20+
# Personal
21+
.env
22+
.vscode
23+
.idea/jsLibraryMappings.xml
24+
todo/
25+
26+
# Junk
27+
temp/
28+
.DS_Store
29+
tmp
230
node_modules
3-
tests/__built/
4-
.idea
31+
32+
### JetBrains ###
33+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
34+
35+
# User-specific stuff
36+
.idea/**/workspace.xml
37+
.idea/**/tasks.xml
38+
.idea/**/usage.statistics.xml
39+
.idea/**/dictionaries
40+
.idea/**/shelf
41+
42+
# Generated files
43+
.idea/**/contentModel.xml
44+
45+
# Sensitive or high-churn files
46+
.idea/**/dataSources/
47+
.idea/**/dataSources.ids
48+
.idea/**/dataSources.local.xml
49+
.idea/**/sqlDataSources.xml
50+
.idea/**/dynamic.xml
51+
.idea/**/uiDesigner.xml
52+
.idea/**/dbnavigator.xml
53+
54+
# Gradle
55+
.idea/**/gradle.xml
56+
.idea/**/libraries
57+
58+
# Mongo Explorer plugin
59+
.idea/**/mongoSettings.xml
60+
61+
# File-based project format
62+
*.iws
63+
64+
# JIRA plugin
65+
atlassian-ide-plugin.xml
66+
67+
# Cursive Clojure plugin
68+
.idea/replstate.xml
69+
70+
# Crashlytics plugin (for Android Studio and IntelliJ)
71+
com_crashlytics_export_strings.xml
72+
crashlytics.properties
73+
crashlytics-build.properties
74+
fabric.properties
75+
76+
# Editor-based Rest Client
77+
.idea/httpRequests

.idea/codeStyles/Project.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/codeStyleConfig.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/prettier.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/typescript-transform-paths.iml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.travis.yml

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)