Comments (3)
hey,
i'll write that up when i get a chance but in the meantime:
Publishing starts in this github workflow: https://github.com/darraghoriordan/eslint-plugin-nestjs-typed/blob/main/.github/workflows/publishToNpm.yaml
I run this script: "build": "npm run clean && mkdir ./dist && tsc --project tsconfig.build.json",
with yarn build
. Which creates "dist" directory and files.
Release is based on semantic commits with semantic-release so a "feat:" results in a publish, a "fix:" results in a publish, a "chore:" does not.
The publish steps are defined in the package.json "release" section. This is a config that semantic-release uses to prepare and publish the build. My config says 'any change in "main" should release'. You can read more about semantic release in their github repo. It handles most of the tasks by default, you can see the config i have to set is very light.
Semantic-release kicks in which uses npm (package.json) functionality. I have a "files" section in package.json which tells semantic-release what to deploy to npm.
so to summarize: the things built by tsc in yarn build
are packaged by semantic-release becuase i have listed them in the "files" section and sent to npm using my token.
My tsconfig.common.json specifies "declaration": true
which is where the .d.ts
is comfing from
from eslint-plugin-nestjs-typed.
Thanks! I'm getting closer. The "files" and "declaration" parts were missing in my configuration. I'm not using sematic-release yet though. When I look in what gets installed I now have this:
$ cd node_modules/\@crp/eslint-plugin-angular
$ ls -R
.:
README.md dist/ node_modules/ package.json./dist:
configs/ index.d.ts index.js rules/ selector.d.ts selector.js utils.d.ts utils.js./dist/configs:
recommended.d.ts recommended.js./dist/rules:
no-common-module.d.ts no-common-module.js no-component-constructor.d.ts no-component-constructor.js provide-in-component.d.ts provide-in-component.js./node_modules:
And then in my .eslintrc.json
I told it to use that plugin and the recommended config:
"plugins": [
"@crp/angular"
],
"extends": [
"eslint:recommended",
"plugin:@angular-eslint/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@crp/angular/recommended"
],
When I then try to lint, it gives me this error:
An unhandled exception occurred: Failed to load config "plugin:@crp/angular/recommended" to extend from.
The generated recommended.d.ts
file looks like this:
declare const _default: {
parser: string;
parserOptions: {
sourceType: string;
};
rules: {
"@crp/angular/no-common-module": string;
"@crp/angular/no-component-constructor": string;
"@crp/angular/provide-in-component": (string | {
ControlValueAccessor: {
provide: string;
multi: boolean;
type: string;
useExisting: boolean;
};
Validators: {
provide: string;
multi: boolean;
type: string;
useExisting: boolean;
};
})[];
};
};
export default _default;
from eslint-plugin-nestjs-typed.
closing because not an issue with this library
from eslint-plugin-nestjs-typed.
Related Issues (20)
- hacktoberfest 2023 HOT 2
- param-decorator-name-matches-route-param: why does it fails in this case? HOT 1
- New Rule Suggestion: disallow multiple usage of the same 'discoverable' decorator HOT 4
- ValidateIf should be handled like IsOptional HOT 2
- add rule to disalow using `@Inject()` without some token when using it on `constructor` HOT 3
- Swagger: Rule for requiring @ApiParam and @ApiQuery for every @Param() and @Query() used.
- Swagger: Rule for enforcing @ApiParam and @ApiQuery of @Param("...") or @Query("...") is used. HOT 5
- New Rule Suggestion: forbids `app.get()` for APP_* tokens HOT 1
- ApiPropertOptional
- New Rule: No redundant required on `@ApiProperty` HOT 1
- New Rule: Use Dependency Injection HOT 1
- filterFromPaths doesn't work
- plugin doesn't work with NX HOT 2
- Add support to eslint parser 7 HOT 4
- api-property-matches-property-optionality gets confused when property has default provided HOT 1
- How to configure in microservice project looks for src/**/*.ts HOT 2
- Invalid tests ? HOT 3
- Should ignore non-verifiable types - param-decorator-name-matches-route-param
- Support for @typescript-eslint/parse v6 HOT 5
- Dependency Dashboard
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eslint-plugin-nestjs-typed.