Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/indigotech/dangerjs-plugin
Danger JS plugin used by Peril implementation at https://github.com/indigotech/peril
https://github.com/indigotech/dangerjs-plugin
Last synced: 3 months ago
JSON representation
Danger JS plugin used by Peril implementation at https://github.com/indigotech/peril
- Host: GitHub
- URL: https://github.com/indigotech/dangerjs-plugin
- Owner: indigotech
- License: mit
- Archived: true
- Created: 2017-09-13T18:41:49.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-10-04T21:04:08.000Z (over 6 years ago)
- Last Synced: 2024-11-07T21:46:15.057Z (3 months ago)
- Language: TypeScript
- Size: 217 KB
- Stars: 6
- Watchers: 28
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-danger - dangerjs-plugin - Taqtile Danger-js Plugin. (Plugins / TypeScript (danger-js))
README
# taqtile-dangerjs-plugin
[![Build Status](https://travis-ci.org/indigotech/dangerjs-plugin.svg?branch=master)](https://travis-ci.org/indigotech/dangerjs-plugin)
[![npm version](https://badge.fury.io/js/taqtile-dangerjs-plugin.svg)](https://badge.fury.io/js/taqtile-dangerjs-plugin)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
[![Code Climate](https://codeclimate.com/github/indigotech/dangerjs-plugin/badges/gpa.svg)](https://codeclimate.com/github/indigotech/dangerjs-plugin)> Taqtile Danger-js Plugin
## Environment
- Use correct node version (from `.nvmrc file`)
```bash
$ nvm use
```(If any error is found, install correct node versio via `$ nvm install`)
- Install correct yarn version
```bash
$ npm install -g yarn@`node -pe "require('./package.json').engines.yarn"`
```
Install dependencies```bash
$ yarn install
```## Adding new rules
Add your rules to `src/rules` folder and its respective tests.
When adding new rules, please follow current scope files for `pr`, `nodejs`, `android`, etc or create a new one in case your rule does not fit in any of the existing ones.
Also, check [Danger's guide on Phrasing](http://danger.systems/js/usage/culture.html#phrasing) to understand how to better use error messages to provide an impartial but polite feedback.
## What is currently being checked
### PR
- [x] Fail when no description is provided
- [x] Warns if description provided is too short
- [x] Big PRs### Platform/Language agnostic
- [x] `>>>` Strings to make sure rebase was successful
- [x] Warn when `Dangerfile` was modified
- [x] Warn when `http://` is used
- [x] Warn when definition files were changes but their lockfile weren't:
- `Gemfile` vs `Gemfile.lock`
- `package.json` vs `yarn.lock`
- [x] Warn if some files/folders were changed/committed:
- `Dangerfile`
- `.gitignore`
- `Gemfile`
- `Gemfile.lock`
- `.travis.yml`
- `coverage`### Node
- [x] Warn when `npm install -g` is used
- [x] Warn when `console.log` is added
- [ ] Warn when `package.json` was modified and `yarn.lock` or `shrinkwrap` was not
- [x] Warn if node version is different between .travis.yml, .nvmrc, package.json and README (or just warn if node version has change just in one of these locations)
- [x] At packages.json every package should have its version fixed (do not use ^ or ~), or explicitly set the major and minor versions (ie.: 1.2.x)
- [ ] [TypeScript] Warn if using `` as return type.
- [x] Warn if some files/folders were changed/committed:
- `npm-debug.log`
- `yarn-error.log`
- `docker-compose.yml`
- `tslint.json`
- `tsconfig.json`
- `.nvmrc`
- `Procfile`
- `npm-shrinkwrap.json`
- `.env`
- `.env.test`
- `.env.sample`
- `env.coffee`
- `nodemon.json`### iOS
- [x] Warn if some files/folders to be changed/committed like `Cakefile`, `settings.yml.erb`, `Fastfile`
- [X] Warn when `Podfile` was modified and `Podfile.lock` was not
- [x] Warn when ATS Exception is set in plist
- [x] Warn when Landscape orientation is set in plist
- [x] Warn when pod is being loaded from external git repos
- [x] Warn if Podfile has pods should not using fixed versions
- [ ] [Swift] Warn if forced unwrapping was found### Android
- [x] Warn if there are hardcoded dimens different from `0dp` on `.xml` files
- [x] Warn if there are hardcoded colors on `.xml` files
- [ ] Warn if there are hardcoded texts on `.xml` files
- [ ] [Kotlin] Error when `!!` is found (similar to swift forced unwrap when `anything!` is found)
- [ ] [Kotlin] Warn if using `Any` or `Any?` as return type
- [x] [Kotlin] Warn if `ButterKnife` or `findViewById` are found
- [ ] Warn if some files/folders were changed/committed:
- `Manifest.xml`
- `.gradle`### Web
- [x] Warn if CSS files were changed
### Nice to have
- [ ] (Platform/Language agnostic) Warn when Amazon Secret Key is hardcoded
- [ ] (iOS) Warn if changes made in Cakefile may 'break' provisionings and sign certificates configurations
- [ ] (iOS) Warn when Facebook ID is hardcoded in plist
- [ ] (iOS) Warn when `TODO` is added
- [ ] (iOS) Warn when `print(“”)` is added
- [ ] (iOS) Warn when `fatalError` is added
- [ ] (iOS) Warn if hardcoded font is used in `.xib`
- [ ] (iOS) Warn if hardcoded color is used in `.xib`## Usage
### For danger-js
Install:
```sh
yarn add taqtile-dangerjs-plugin --dev
```At a glance:
```js
// dangerfile.js
import { schedule } from 'danger'
import taqtileDangerjsPlugin from 'taqtile-dangerjs-plugin'schedule(async() => {
await taqtileDangerjsPlugin();
})
```### For peril
Install:
```sh
yarn add taqtile-dangerjs-plugin --dev
```Add plugin module to `json` settings:
```json
"settings": {
"modules": ["taqtile-dangerjs-plugin"]
},
```Use it in any peril dangerfile
```js
// dangerfile.js
import { schedule } from 'danger'
import taqtileDangerjsPlugin from 'taqtile-dangerjs-plugin'schedule(async() => {
await taqtileDangerjsPlugin();
})
```
## ChangelogSee the GitHub [release history](https://github.com/indigotech/dangerjs-plugin/releases).
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md).