Giter VIP home page Giter VIP logo

create-typescript-app's Issues

πŸ›  Tooling: Configure compliance bot to complain when a PR addresses an issue not marked as accepting PRs

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Folks sometimes misunderstand the "accepting PRs" label concept and send a PR for an issue not yet ready to accept one. The compliance bot should post an informative message when that happens.

Additional Info

No response

πŸ› Bug: Using this template immediately triggers a "The automated release is failing 🚨" to be created

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

Clicking the Use this template option on GitHub should create a new repo with no issues.

Actual

JoshuaKGoldberg/ts-function-inliner#1

## :rotating_light: The automated release from the `main` branch failed. :rotating_light:

I recommend you give this issue a high priority, so other packages depending on you can benefit from your bug fixes and new features again.

You can find below the list of errors reported by **semantic-release**. Each one of them has to be resolved in order to automatically publish your package. I’m sure you can fix this πŸ’ͺ.

Errors are usually caused by a misconfiguration or an authentication problem. With each error reported below you will find explanation and guidance to help you to resolve it.

Once all the errors are resolved, **semantic-release** will release your package the next time you push a commit to the `main` branch. You can also manually restart the failed CI job that runs **semantic-release**.

If you are not sure how to resolve this, here are some links that can help you:
- [Usage documentation](https://github.com/semantic-release/semantic-release/blob/caribou/docs/usage/README.md)
- [Frequently Asked Questions](https://github.com/semantic-release/semantic-release/blob/caribou/docs/support/FAQ.md)
- [Support channels](https://github.com/semantic-release/semantic-release#get-help)

If those don’t help, or if this issue is reporting something you think isn’t right, you can always ask the humans behind **[semantic-release](https://github.com/semantic-release/semantic-release/issues/new)**.

---

### No npm token specified.

An [npm token](https://github.com/semantic-release/npm/blob/master/README.md#npm-registry-authentication) must be created and set in the `NPM_TOKEN` environment variable on your CI environment.

Please make sure to create an [npm token](https://docs.npmjs.com/getting-started/working_with_tokens#how-to-create-new-tokens) and to set it in the `NPM_TOKEN` environment variable on your CI environment. The token must allow to publish to the registry `https://registry.npmjs.org/`.

---

Good luck with your project ✨

Your **[semantic-release](https://github.com/semantic-release/semantic-release)** bot :package::rocket:

<!-- semantic-release:github -->

Additional Info

No response

πŸ›  Tooling: An error occurred while running semantic-release: TypeError: assets.map is not a function

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

[7:18:49 PM] [semantic-release] β€Ί β„Ή  Start step "prepare" of plugin "@semantic-release/git"
[7:18:49 PM] [semantic-release] β€Ί βœ–  Failed step "prepare" of plugin "@semantic-release/git"
[7:18:49 PM] [semantic-release] β€Ί βœ–  An error occurred while running semantic-release: TypeError: assets.map is not a function
    at module.exports (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/@[email protected][email protected]/node_modules/@semantic-release/git/lib/prepare.js:37:14)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async prepare (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/@[email protected][email protected]/node_modules/@semantic-release/git/index.js:28:3)
    at async validator (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/lib/plugins/normalize.js:34:24)
    at async /home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/lib/plugins/pipeline.js:37:34
    at async /home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/lib/plugins/pipeline.js:31:3
    at async pluginsConf.<computed> [as prepare] (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/lib/plugins/index.js:80:11)
    at async run (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/index.js:193:3)
    at async module.exports (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/index.js:269:22)
    at async module.exports (/home/runner/work/template-typescript-node-package/template-typescript-node-package/node_modules/.pnpm/[email protected]/node_modules/semantic-release/cli.js:55:5) {
  pluginName: '@semantic-release/git'
}

Additional Info

https://github.com/JoshuaKGoldberg/template-typescript-node-package/actions/runs/3632722702/jobs/6128897738

πŸ›  Tooling: All Contributors bot breaks README.md formatting on commit

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

As mentioned in #55 (comment), whenever the all-contributors bot commits to the README.md, it breaks formatting. README.md's top contents became:

Screenshot of README.md badges with accidental plaintext on one

This might be an issue to post on the all-contributors repo?

Additional Info

This is a little tricky to fix here because README.md is also auto-formatted with Prettier.

πŸ› Bug: lib/ files are not excluded from vitest/ by default

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

When you have yarn build running, yarn test shouldn't pick up lib/**/*.test.js* files.

Actual

It does now. Oops.

Additional Info

I'll just move to dist/, as that's supported by vitest natively.

πŸ› Bug: Release workflow needs to build first

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

yarn build needs to run before publish to build .js files & co.

Actual

That doesn't happen right now.

Additional Info

No response

πŸ“ Documentation: Update contributing guide to mention issue assignees

Bug Report Checklist

Overview

Right now, CONTRIBUTING.md mentions that you should search for all open issues with the good first issue tag. But that's not quite accurate: anything explicitly assigned to someone should be ignored. So the text and link in the docs should be updated.

Additional Info

No response

πŸ› Bug: Cannot import this module via import

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

There should be a main field in package.json: https://docs.npmjs.com/cli/v8/configuring-npm/package-json#main

Actual

There isn't.

Additional Info

Also, the types file should be either import type imported, or imported as types.js. Otherwise the runtime import for the file cannot be found.

πŸ“ Documentation: Remove label queries from issue template searches

Bug Report Checklist

Overview

https://github.com/JoshuaKGoldberg/template-typescript-node-package/blob/bd6a96ac97a8c8aaf49b0fab76449c52ae681380/.github/ISSUE_TEMPLATE/01-bug.yaml#L15-L16

Problem: sometimes duplicate issues are filed under different labels! E.g. someone might think they're reporting a bug, only for it to actually be a duplicate of a feature request.

Let's remove the label:* queries & similar from those suggested searches.

Additional Info

No response

πŸ› Bug: Branch protections conflict with release bots

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

Repositories should be able to have a protected main branch.

Actual

From #3 (comment):

when I protected my main branch I found I couldn't release anymore (possibly because it's trying to update the main branch with dist?): https://github.com/johnnyreilly/easyauth-deeplink/actions/runs/3612405437/jobs/6087493810

[8:20:16 AM] [semantic-release] [@semantic-release/git] β€Ί β„Ή  Found 4 file(s) to commit
[8:20:18 AM] [semantic-release] β€Ί βœ–  Failed step "prepare" of plugin "@semantic-release/git"
[8:20:18 AM] [semantic-release] β€Ί βœ–  An error occurred while running semantic-release: Error: Command failed with exit code 1: git push --tags https://github.com/johnnyreilly/easyauth-deeplink HEAD:main
remote: error: GH006: Protected branch update failed for refs/heads/main.        
remote: error: 3 of 3 required status checks are expected. Changes must be made through a pull request.        
To https://github.com/johnnyreilly/easyauth-deeplink
 ! [remote rejected] HEAD -> main (protected branch hook declined)
error: failed to push some refs to 'https://github.com/johnnyreilly/easyauth-deeplink'
    at makeError (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/execa/lib/error.js:60:11)
    at handlePromise (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/execa/index.js:118:26)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async push (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/@semantic-release/git/lib/git.js:51:3)
    at async module.exports (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/@semantic-release/git/lib/prepare.js:[69](https://github.com/johnnyreilly/easyauth-deeplink/actions/runs/3612405437/jobs/6087493810#step:5:70):5)
    at async prepare (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/@semantic-release/git/index.js:28:3)
    at async validator (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/semantic-release/lib/plugins/normalize.js:34:24)
    at async /home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/semantic-release/lib/plugins/pipeline.js:37:34
    at async /home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/semantic-release/lib/plugins/pipeline.js:31:3
    at async pluginsConf.<computed> [as prepare] (/home/runner/work/easyauth-deeplink/easyauth-deeplink/node_modules/semantic-release/lib/plugins/index.js:80:11) {
  shortMessage: 'Command failed with exit code 1: git push --tags https://github.com/johnnyreilly/easyauth-deeplink HEAD:main',
  command: 'git push --tags https://github.com/johnnyreilly/easyauth-deeplink HEAD:main',
  escapedCommand: 'git push --tags "https://github.com/johnnyreilly/easyauth-deeplink" "HEAD:main"',
  exitCode: 1,
  signal: undefined,
  signalDescription: undefined,
  stdout: '',
  stderr: 'remote: error: GH006: Protected branch update failed for refs/heads/main.        \n' +
    'remote: error: 3 of 3 required status checks are expected. Changes must be made through a pull request.        \n' +
    'To [https://github.com/johnnyreilly/easyauth-deeplink\n](https://github.com/johnnyreilly/easyauth-deeplink/n)' +
    ' ! [remote rejected] HEAD -> main (protected branch hook declined)\n' +
    "error: failed to push some refs to 'https://github.com/johnnyreilly/easyauth-deeplink'",
  failed: true,
  timedOut: false,
  isCanceled: false,
  killed: false,
  pluginName: '@semantic-release/git'
}

Additional Info

I'll want to add this to the setup script in #77 probably: https://gist.github.com/tiesmaster/ffd4f4a8b4dd2c127516c93af6cc7b46

πŸ›  Tooling: Switch from dependabot to renovate, with stabilityDays set to >=3

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

I have two conflicting desires:

  • I don't want to have to manually merge dependabot PRs. They should be merged automatically.
  • PRs shouldn't immediately merge ASAP, in case there is a malicious package version. We should only merge them once the version has been in the wild for long enough to let security alerts be fired on it.

Example of the incident kind I want to avoid: https://snyk.io/blog/open-source-npm-packages-colors-faker

I don't know whether dependabot has a way to wait some number of days after a version is released. If there is, that'd be ideal. If not, some kind of action that's pending for 3 days after PR creation would be nice. I don't know if that's doable either.

I haven't looked into this very much πŸ˜„.

Another possibility is that Renovate would be better able to do this thing.

Additional Info

Issue clone of LearningTypeScript/site#46.

πŸ›  Tooling: Enable typescript-eslint's allowAutomaticSingleRunInference

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

https://typescript-eslint.io/architecture/typescript-estree: parserOptions.allowAutomaticSingleRunInference is an opt-in feature that should get more testing in real-world projects. I'm volunteering to be a tester.

Additional Info

No response

πŸ›  Tooling: Limit one sentence per line in markdownlint

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Hard to believe https://github.com/JoshuaKGoldberg/sentences-per-line is 4 years old! Let's use it.

Additional Info

I'll probably want to revamp that repo and bring it into my github.com/JoshuaKGoldberg/JoshuaKGoldberg README.md

πŸ›  Tooling: Use the GitHub API to set up more project settings

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

#82 added usage of the gh GitHub CLI for a few project settings. But there are a few areas of project settings not doable just through that:

  • Checking Automatically delete head branches
  • Checking Limit how many branches and tags can be updated in a single push
  • Configuring branch protections
  • Disabling Wikis
  • Required CI jobs

Those should also be set up for repositories, so you don't have to do it manually.

Additional Info

I'd like to use octokit.js or some equivalent to also set those up in scripts/setup.js.

πŸ›  Tooling: Move "plugin:typescript-sort-keys/recommended" from global scope of eslintrc to override scope for "**/*.{ts,tsx}" files.

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

The "plugin:typescript-sort-keys/recommended", should be listed in the "extends" key in the "overrides" key for the files "**/*.{ts,tsx}".

Additional Info

No response

πŸ›  Tooling: Add automatic versioning & releases

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

I'd like to have automatic tagging & publishing of releases set up. They should release to npm and have an equivalent tagged release on GitHub.

Additional Info

Right now there's a Publish job that publishes to npm. It doesn't auto-bump packages and is not integrated with GitHub Releases though.

πŸ› Bug: Extra comments on bottom of README.md

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->

<!-- ALL-CONTRIBUTORS-LIST:END -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->

<!-- ALL-CONTRIBUTORS-LIST:END -->

Actual

...not so many!

Additional Info

No response

πŸ› Bug: Subsequent initial commits still trigger "The automated release is failing 🚨"

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Expected

I sometimes fork this template into a new repo, and then push a few initial commits as I work on it. I wouldn't want those initial commits to try to be published - the package generally isn't ready yet.

Actual

#33 is happening for them. Example: JoshuaKGoldberg/typescript-static-analysis-hidden-gems#1 (comment)

Additional Info

I'm thinking packages should start at version 0.0.0, and only after bumping them to a higher version should the release flow trigger.

cc @sinchang if you're interested in taking this one! 😁

πŸ›  Tooling: Remove type labels from 'search for related issues' fields

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Sometimes duplicate issues are filed in the wrong category, and/or have labels like type: bug removed. Let's remove any labels like area: * or type: * from the searches in this repo's issue templates: https://github.com/JoshuaKGoldberg/template-typescript-node-package/tree/main/.github/ISSUE_TEMPLATE

Additional Info

Same change as typescript-eslint/typescript-eslint#6123, just in this repo.

πŸ›  Tooling: Add JSON linting

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

I want sorted fields in my JSON files! πŸ™Œ

Additional Info

No response

πŸ›  Tooling: Run ESLint in CI

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

There are other linters (spelling, markdown) in CI but not ESLint!

Additional Info

No response

πŸ“ Documentation: Required issue labels

Bug Report Checklist

Overview

There are searches linked in .md docs for issue labels. But, nowhere is it mentioned what that total list is.

Additional Info

It'd be nice to have a saved script / utility that auto-creates them... and maybe even standardizes colors.

πŸš€ Feature: Allow passing just a string to `greet`

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

greet takes in a GreetOptions options object where the only required property is message: string. Let's make greet take string | GreetOptions.

Additional Info

This is more for me to exercise semantic-release than anything else πŸ˜„

πŸ›  Tooling: Add dependabot

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Hooray, constant PR spam... πŸ™ƒ

Additional Info

No response

πŸš€ Feature: Setup script for a new forked repository

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

There are a few things that a repository should do to really use this package:

  • Find-and-replace the repository org/user, name, and description
  • Set up labels (#2)
  • Configure required status checks
  • Following #81: protecting the main branch

It'd be nice to have a script that sets all this stuff up for you. And uses the GitHub API to do so.

Additional Info

The script should probably be documented in the README.md... and include removal of that documentation as part of its effects.

πŸ›  Tooling: Configure compliance bot to not ignore maintainer PRs

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

The compliance bot will skip standard checks for users who are maintainers/admins on a repo. Let's disable that so I can get linted like everyone else! πŸ˜„

Additional Info

Tooling features such as #23 will be easier for me to develop when this is in.

πŸ›  Tooling: Investigate switching from yarn to pnpm

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Everyone seems to like pnpm these days. And it's annoying how Yarn so aggressively moved to the zip-based approach, which I do not like.

Additional Info

No response

πŸ“ Documentation: Setup instructions for a new repo

Bug Report Checklist

Overview

I'll want to document what to do to take this template & make a new repo out of it.

Additional Info

At the very least:

  • Find-and-replace template-typescript-node-package to the new name
  • Fill out TODO in .md files
  • Empty out src/
  • Create a new package-specific publish token and set it as the NPM_TOKEN env variable in settings
  • Make sure GH_TOKEN is available on your account in CI
  • Set up required CI jobs
  • Go through GitHub settings in general:
    • Disable Wikis
    • Enable Sponsorships
    • Uncheck Allow merge commits and Allow rebase merging
    • Uncheck Projects
    • Check Always suggest updating pull request branches
    • Check Allow auto-merge
    • Check Automatically delete head branches
    • Check Limit how many branches and tags can be updated in a single push
  • Clearing out the all-contributors badge & table
  • Set version to something like 0.1.0 or 0.0.1

πŸ›  Tooling: Add code coverage reporting

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Codecov, Code Climate, Coveralls - all options!

Additional Info

I don't want to bake in minimum coverage %s to this template (that's a bit much for a general-purpose template). But at least reporting changes is good.

πŸ›  Tooling: consider `lint-staged` for local precommit hook linting

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Breaking out of discussion in #66.

Consider using lint-staged to apply linting rules to staged (e.g. changed) files locally via a precommit hook.

tslint-to-eslint-config was the recommendation to benchmark against. The initial concern being ESLint + type info could cause slowness.

Additional Info

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.