Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refc: rewrite the project in typescript #706

Merged
merged 27 commits into from Jul 12, 2022
Merged
Show file tree
Hide file tree
Changes from 25 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
ba72886
refc: rewrite the project in typescript
gamemaker1 Jul 7, 2022
12fdda2
docs: update badges in readme
gamemaker1 Jul 7, 2022
e5c5100
docs: improve readme; move images to `media/`
gamemaker1 Jul 7, 2022
101df4d
docs: add contributing guide
gamemaker1 Jul 7, 2022
7a9c543
docs: point to contributing guide in the readme
gamemaker1 Jul 7, 2022
a923b94
docs: add issue and pr templates
gamemaker1 Jul 7, 2022
0c25a7c
docs: fix copy-paste errors
gamemaker1 Jul 8, 2022
23b5fe0
chore: upgrade dependencies
gamemaker1 Jul 8, 2022
d9bdc25
chore: adjust code for new versions of packages
gamemaker1 Jul 9, 2022
77c3165
chore: enable color output in git hooks
gamemaker1 Jul 9, 2022
842fc35
Update readme.md
leerob Jul 11, 2022
47d392f
style(types): re-order members of `Options` interface
gamemaker1 Jul 11, 2022
1b6af45
build(manifest): mention only `build/` in the `files` array
gamemaker1 Jul 11, 2022
8dfdc9d
docs(readme): use absolute links to media files
gamemaker1 Jul 11, 2022
dbc0282
docs(readme): show global installation with `npm`
gamemaker1 Jul 11, 2022
b5d3c49
fix(lint): fix some lint errors; and cause more
gamemaker1 Jul 11, 2022
734b442
fix(types): add types for config files
gamemaker1 Jul 11, 2022
06f9665
fix(types): remove some `@ts-expect-error` comments
gamemaker1 Jul 11, 2022
29ef1a3
fix(types): remove more `@ts-expect-error` comments
gamemaker1 Jul 11, 2022
50be7cd
fix(types): make signature for `parseEndpoint` match `Handler`
gamemaker1 Jul 11, 2022
b67e2e3
build(node): target node 14
gamemaker1 Jul 11, 2022
6746348
build(ts): downgrade to ts 4.6.4 for eslint
gamemaker1 Jul 11, 2022
10ac621
chore(scripts): run `compile` post install
gamemaker1 Jul 11, 2022
f6d29ca
docs(readme): fix badge url
gamemaker1 Jul 11, 2022
2237b53
docs(readme): add alt text for logo image
gamemaker1 Jul 11, 2022
083a43c
chore(tsc): remove duplicate `esModuleInterop` from tsconfig.json
gamemaker1 Jul 12, 2022
69876e5
fix(utilities/config): make error message less harsh
gamemaker1 Jul 12, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitattributes
@@ -0,0 +1,4 @@
# .gitattributes
# Makes sure all line endings are LF.

* text=auto eol=lf
31 changes: 31 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
@@ -0,0 +1,31 @@
name: Report a bug
description: ———
labels: [bug]
body:
- type: markdown
attributes:
value: |
# Thanks for reporting this bug!

Help us replicate and find a fix for the issue by filling in this form.
- type: textarea
attributes:
label: Description
description: |
Describe the issue and how to replicate it. If possible, please include
a minimal example to reproduce the issue.
validations:
required: true
- type: input
attributes:
label: Library version
description: |
Output of the `serve --version` command
validations:
required: true
- type: input
attributes:
label: Node version
description: Output of the `node --version` command
validations:
required: true
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
@@ -0,0 +1,28 @@
name: Suggest an improvement or new feature
description: ———
labels: [enhancement]
body:
- type: markdown
attributes:
value: |
# Thanks for filing this feature request!

Help us understanding this feature and the need for it better by filling in this form.
- type: textarea
attributes:
label: Description
description: Describe the feature in detail
validations:
required: true
- type: textarea
attributes:
label: Why
description: Why should we add this feature? What are potential use cases for it?
validations:
required: true
- type: textarea
attributes:
label: Alternatives
description: Describe the alternatives you have considered, or existing workarounds
validations:
required: true
56 changes: 56 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/default.md
@@ -0,0 +1,56 @@
<!--
Hi there! Thanks for contributing! Please fill in this template to help us
review and merge the PR as quickly and easily as possible!
-->

## Related Issues

<!--
If this is a bug fix, or adds a feature mentioned in another issue, mention
it as follows:

- Closes #10
- Fixes #15
-->

## Description

<!--
Explain what has been added/changed/removed, in
[keepachangelog.com](https://keepachangelog.com) style.
-->

### Added

<!--
- Added a new method on the limiter object to reset the count for a certain IP [#10]
-->

### Changed

<!--
- Deprecated `global` option
- Fixed test for deprecated options [#15]
-->

### Removed

<!--
- Removed deprecated `headers` option
-->

## Caveats/Problems/Issues

<!--
Any weird code/problems you faced while making this PR. Feel free to ask for
help with anything, especially if it's your first time contributing!
-->

## Checklist

- [ ] The issues that this PR fixes/closes have been mentioned above.
- [ ] What this PR adds/changes/removes has been explained.
- [ ] All tests (`pnpm test`) pass.
- [ ] The linter (`pnpm lint`) does not throw an errors.
- [ ] All added/modified code has been commented, and
methods/classes/constants/types have been annotated with TSDoc comments.
55 changes: 41 additions & 14 deletions .github/workflows/ci.yaml
@@ -1,20 +1,47 @@
# .github/workflows/ci.yaml
# Lints and tests the server every time a commit is pushed to the remote
# repository.

name: CI
on:
- push
- pull_request
on: [push, pull_request]
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
- name: Setup PNPM 7
uses: pnpm/action-setup@v2.0.1
with:
version: latest
- name: Setup Node 18
uses: actions/setup-node@v2
with:
node-version: 18
registry-url: 'https://registry.npmjs.org/'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Check for errors in code/formatting
run: pnpm lint
test:
name: Node.js ${{ matrix.node-version }}
name: Test
runs-on: ubuntu-latest
strategy:
matrix:
node-version:
- 16
- 14
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- name: Checkout the repository
uses: actions/checkout@v2
- name: Setup PNPM 7
uses: pnpm/action-setup@v2.0.1
with:
version: latest
- name: Setup Node 18
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
node-version: 18
registry-url: 'https://registry.npmjs.org/'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Run all tests
run: pnpm test
15 changes: 13 additions & 2 deletions .gitignore
@@ -1,3 +1,14 @@
node_modules
# .gitignore
# A list of files and folders that should not be tracked by Git.

node_modules/
coverage/
build/
.cache/
.idea/
.vscode/

*.log
.nyc_output
*.tgz
*.bak
*.tmp
9 changes: 8 additions & 1 deletion .npmrc
@@ -1 +1,8 @@
save-exact = true
# .npmrc
# Configuration for pnpm.

# Uses the exact version instead of any within-patch-range version of an
# installed package.
save-exact=true
# Do not error out on missing peer dependencies.
strict-peer-dependencies=false
21 changes: 0 additions & 21 deletions LICENSE

This file was deleted.

87 changes: 0 additions & 87 deletions README.md

This file was deleted.