lifen-ruby-style 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f1f86ee33406608d1b9b2cf8d14d80585a09dcb798a2528c1b06a7205d61bb47
4
- data.tar.gz: 42914e1c8155e225d5fcedce3d9d14ef8d5116b51df50213cd24f899aca039c8
3
+ metadata.gz: 9380924908467fe4fe452a0755c80569b75475e8b166cd042a0eb593739dfa39
4
+ data.tar.gz: 1c76b423b5b15c06539baf770e4a291d13aba7f9d04ab82fdb97c826208aec13
5
5
  SHA512:
6
- metadata.gz: b86279d1645d36567b71689f3f5b634086975cf0be3f0f29436da8ff9171d3739df1017aa21b8f4323ff423dab23410b315cbb12f11008a081fa9e6e31d3dadc
7
- data.tar.gz: 28df7786610a74fe2b4bdc7534409f857962020002c7bce2271c18dfd10bf717e25ddaf0d4f3bfcf1785d2430f36feb4cf80ed700585ce812180fc2c3943ce4e
6
+ metadata.gz: 743a7c56568a5e721006fff6080377ecb53dfad03b91e11085122df8b1be243235350477699d43fce47e594fa4eef9b9e997386c5a5c17462a57928fa972566a
7
+ data.tar.gz: e4000d1f5fe3d49347c90cbede0e5b8264ea02551784abf699212018c5f969fa6195216ffa76c6b43166e3b777d9ee3d35a3c11fda9a86723b4d892b367f59dd
@@ -16,8 +16,9 @@
16
16
  # Uncomment the following lines to make the configuration take effect.
17
17
 
18
18
  PreCommit:
19
- Pronto:
19
+ RuboCop:
20
20
  enabled: true
21
+ command: ["bundle", "exec", "rubocop"]
21
22
 
22
23
  GoFmt:
23
24
  enabled: false
@@ -38,10 +39,6 @@ CommitMsg:
38
39
  enabled: true
39
40
  on_warn: fail
40
41
  #PreCommit:
41
- # RuboCop:
42
- # enabled: true
43
- # on_warn: fail # Treat all warnings as failures
44
- #
45
42
  # TrailingWhitespace:
46
43
  # enabled: true
47
44
  # exclude:
data/README.md CHANGED
@@ -10,17 +10,14 @@
10
10
  - [Rubocop-rspec](https://github.com/rubocop-hq/rubocop-rspec) pour l'analyse des tests RSpec
11
11
  - [Rubocop-rails](https://github.com/rubocop-hq/rubocop-rails) pour les vérifications spécifiques à Rails.
12
12
 
13
- 3. [Pronto](https://github.com/prontolabs/pronto) permet de lancer simultanément **plusieurs outils d'analyse** (e.g. Rubocop, Reek, Fasterer) **sur un sous-ensemble de lignes** (e.g. le contenu de l'index ou le diff entre 2 commits). Nous ne l'utilisons pour le moment que pour l'analyse Rubocop. [Pronto Rubocop](https://github.com/prontolabs/pronto-rubocop) est l'extension qui va permettre de lancer RuboCop via Pronto.
14
-
15
- 4. [Overcommit](https://github.com/sds/overcommit) permet de gérer et paramétrer les hooks Git.
13
+ 3. [Overcommit](https://github.com/sds/overcommit) permet de gérer et paramétrer les hooks Git.
16
14
 
17
15
  ## Sommaire
18
16
 
19
17
  - [Installation](#installation)
20
18
  - [Usage](#usage)
21
- - [Rubocop](#rubocop)
22
- - [Pronto](#pronto)
23
- - [Overcommit](#overcommit)
19
+ - [Rubocop](#commandes-rubocop)
20
+ - [Overcommit](#commandes-overcommit)
24
21
  - [Utilisation d'une version locale](#utilisation-dune-version-locale)
25
22
  - [Contributions](#contributions)
26
23
  - [TODO](#todo)
@@ -28,10 +25,6 @@
28
25
 
29
26
  ## Installation
30
27
 
31
- <details>
32
-
33
- <summary>Pour un nouveau projet ou un repo Lifen non configuré</summary>
34
-
35
28
  ### 1. Ajout de la gem au projet
36
29
 
37
30
  Ajouter dans le `Gemfile` :
@@ -58,36 +51,31 @@ inherit_gem:
58
51
  - default_rubocop.yml
59
52
  ```
60
53
 
61
- ### 3. Config Overcommit
62
-
63
- Créer le fichier `.overcommit.yml` à partir du contenu de [ce fichier](./default_overcommit.yml).
64
-
65
- Note : Il n'est pas nécessaire d'ajouter Rubocop dans les dépendances de l'application.
54
+ Forcer rubocop à respecter les exclusions définies dans le fichier de paramétrage :
66
55
 
67
- </details>
68
-
69
- <details>
70
- <summary>Pour un repo Lifen déjà configuré</summary>
56
+ ```bash
57
+ $ cd my_project # aller à la racine du projet
58
+ $ echo '--force-exclusion' > .rubocop
59
+ ```
71
60
 
72
- ### 1. Installer les dépendences :
61
+ ### 3. Config Overcommit
73
62
 
74
63
  ```bash
75
- $ bundle install
64
+ $ curl https://raw.githubusercontent.com/honestica/lifen-ruby-style/master/default_overcommit.yml > .overcommit_test.yml
76
65
  ```
77
66
 
78
- En cas de problème avec l'installation de la sous-dépendance `rugged` il faudra vous assurer que `cmake` est installé sur votre machine. Si elle n'est pas installée il faudra le faire de la façon suivante :
67
+ ### 4. Installer les dépendances
68
+
79
69
  ```bash
80
- brew install cmake
70
+ $ bundle install
81
71
  ```
82
72
 
83
- ### 2. Installer les hooks Git :
73
+ ### 5. Installer les hooks Git
84
74
 
85
75
  ```bash
86
76
  $ bundle exec overcommit --install
87
77
  ```
88
78
 
89
- </details>
90
-
91
79
  <details>
92
80
  <summary>Recommandations spécifiques pour VSCode</summary>
93
81
 
@@ -128,6 +116,7 @@ $ bundle exec overcommit --install
128
116
  - **FORCER RUBOCOP À RESPECTER LES EXCLUSIONS DÉFINIES DANS LE FICHIER DE PARAMÉTRAGE :**
129
117
 
130
118
  ```bash
119
+ $ cd my_project # aller à la racine du projet
131
120
  $ echo '--force-exclusion' > .rubocop
132
121
  ```
133
122
 
@@ -161,7 +150,9 @@ $ bundle exec overcommit --install
161
150
  <summary>Recommandations spécifiques pour Sublime Text</summary>
162
151
 
163
152
  ### Configuration de Sublime Text
153
+
164
154
  Il faut aller dans `Preferences > Settings` et modifier le fichier `Preferences.sublime-settings -- User` et y ajouter les paramètres suivants :
155
+
165
156
  ```json
166
157
  {
167
158
  ...,
@@ -179,10 +170,13 @@ Il faut aller dans `Preferences > Settings` et modifier le fichier `Preferences.
179
170
  ```
180
171
 
181
172
  ### Configuration de Rubocop
173
+
182
174
  #### 1. Installation du plugin
175
+
183
176
  Il faut installer l'extension [sublime_rubocop](https://packagecontrol.io/packages/RuboCop)
184
177
 
185
178
  Et tout devrait marcher par défaut si votre système n'utilise pas rvm ou rbenv. Le cas échéant il faut personnaliser la configuration en allant dans `Preferences > Package Settings > Rubocop > Settings - User` et mettre la configuration qui va bien dans le fichier, par exemple ceci si vous utilisez Rbenv :
179
+
186
180
  ```
187
181
  {
188
182
  "check_for_rvm": false,
@@ -192,7 +186,9 @@ Et tout devrait marcher par défaut si votre système n'utilise pas rvm ou rbenv
192
186
  ```
193
187
 
194
188
  #### 2. Utilisation
189
+
195
190
  Une fois le plugin installé vous accéderez à des commandes supplémentaires liées à Rubocop et vous pourrez par exemple :
191
+
196
192
  - Corriger automatiquement des fichiers
197
193
  - Activer/Désactiver l'auto-check des fichiers
198
194
 
@@ -255,10 +251,10 @@ https://github.com/dense-analysis/ale
255
251
 
256
252
  - Je code ma feature en local. Mon environnement (projet + IDE) étant configuré, je suis alerté en direct des règles de style que j'enfreins. Certaines sont mêmes corrigées automatiquement, lors de la sauvegarde du fichier.
257
253
  - Je commit :
258
- - Un hook de pre-commit lance une analyse Pronto (= RuboCop pour le moment) sur les lignes "staged". D'autres vérifications fournies par défaut par la gem `overcommit` sont également faites. Si l'analye renvoie des erreurs, le commit est bloqué.
254
+ - Un hook de pre-commit lance une analyse RuboCop sur les fichiers "staged". Si l'analye renvoie des erreurs, le commit est bloqué.
259
255
  - Un hook vérifie le message de commit
260
256
  - Si je veux bypasser les hooks (déconseillé) : `OVERCOMMIT_DISABLE=1 git commit ...`
261
- - Je push (pas de hooks paramétrés pour l'instant)
257
+ - Je push (pas de hooks de pre-push paramétrés pour l'instant)
262
258
 
263
259
  ### Commandes Rubocop
264
260
 
@@ -286,28 +282,6 @@ Liste des commandes disponibles :
286
282
  $ bundle exec rubocop --help
287
283
  ```
288
284
 
289
- ### Commandes Pronto
290
-
291
- ```bash
292
- $ bundle exec pronto run [PATH] # Runs Pronto on the diff between last commit and master
293
- ```
294
-
295
- Vous pouvez ajouter les options suivantes :
296
-
297
- ```bash
298
- -c, [--commit=COMMIT] # Runs Pronto on the diff between last commit and specified commit
299
- -i, --index # Analyze changes not staged for commit (does not include untracked files)
300
- --unstaged, --no-unstaged # Analyze only untracked files
301
- --staged, --no-staged # Analyze changes to be committed (git staging area)
302
- ```
303
-
304
- Liste des commandes disponibles :
305
-
306
- ```bash
307
- $ bundle exec pronto --help
308
- $ bundle exec pronto help run
309
- ```
310
-
311
285
  ### Commandes Overcommit
312
286
 
313
287
  ```bash
@@ -352,7 +326,7 @@ Pour utiliser une version locale de la gem `lifen-ruby-style` :
352
326
 
353
327
  - Créer le fichier `.overcommit.yml` et coller le contenu du fichier `lifen-ruby-style/default_overcommit.yml`
354
328
 
355
- - Installer les dépendences et les hooks Git :
329
+ - Installer les dépendances et les hooks Git :
356
330
 
357
331
  ```bash
358
332
  $ bundle install
@@ -377,14 +351,12 @@ Vous allez vouloir tester localement les modifications de règle de style que vo
377
351
 
378
352
  ## TODO
379
353
 
380
- [ ] Recommandations spécifiques pour Sublime Text
381
- [ ] Lier la configuration d'overcommit aux repos
382
- [ ] Ajouter un hook de pre-push ?
383
354
  [ ] Ajouter le hook de pre-commit au CI
384
- [ ] Ajouter `pronto-faster` si pertinent
385
- [ ] Ajouter `pronto-reek` si pertinent
386
- [ ] Ajouter `pronto-slim_lint` si pertinent
387
- [ ] Ajouter `pronto-scss` si pertinent
355
+ [ ] Ajouter un hook de pre-push ?
356
+ [ ] Ajouter `fasterer` si pertinent
357
+ [ ] Ajouter `reek` si pertinent
358
+ [ ] Ajouter `slim_lint` si pertinent
359
+ [ ] Ajouter `scss` si pertinent
388
360
 
389
361
  ## Archives
390
362
 
@@ -16,8 +16,9 @@
16
16
  # Uncomment the following lines to make the configuration take effect.
17
17
 
18
18
  PreCommit:
19
- Pronto:
19
+ RuboCop:
20
20
  enabled: true
21
+ command: ["bundle", "exec", "rubocop"]
21
22
 
22
23
  GoFmt:
23
24
  enabled: false
@@ -38,10 +39,6 @@ CommitMsg:
38
39
  enabled: true
39
40
  on_warn: fail
40
41
  #PreCommit:
41
- # RuboCop:
42
- # enabled: true
43
- # on_warn: fail # Treat all warnings as failures
44
- #
45
42
  # TrailingWhitespace:
46
43
  # enabled: true
47
44
  # exclude:
@@ -3,7 +3,7 @@
3
3
  module Lifen
4
4
  module RubyStyle
5
5
 
6
- VERSION = '1.0.0'
6
+ VERSION = '1.0.1'
7
7
 
8
8
  end
9
9
  end
@@ -30,8 +30,6 @@ Gem::Specification.new do |spec|
30
30
  spec.require_paths = ['lib']
31
31
 
32
32
  spec.add_dependency 'overcommit'
33
- spec.add_dependency 'pronto', '~> 0.1'
34
- spec.add_dependency 'pronto-rubocop', '~> 0.1'
35
33
  spec.add_dependency 'rubocop', '~> 0.8'
36
34
  spec.add_dependency 'rubocop-performance', '~> 1.5'
37
35
  spec.add_dependency 'rubocop-rails', '~> 2.4'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lifen-ruby-style
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Team Lifen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-04 00:00:00.000000000 Z
11
+ date: 2020-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: overcommit
@@ -24,34 +24,6 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: pronto
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '0.1'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '0.1'
41
- - !ruby/object:Gem::Dependency
42
- name: pronto-rubocop
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0.1'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '0.1'
55
27
  - !ruby/object:Gem::Dependency
56
28
  name: rubocop
57
29
  requirement: !ruby/object:Gem::Requirement