pob 11.1.0 → 11.3.0

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,35 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [11.3.0](https://github.com/christophehurpeau/pob/compare/pob@11.2.0...pob@11.3.0) (2022-11-15)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **pob:** fix in babel generator when formats is not defined ([8f975c8](https://github.com/christophehurpeau/pob/commit/8f975c84a9ef48475fbd70979b8a86ede5d8f3e6))
12
+ * **pob:** fix in babel generator when formats is not defined ([3a0fe7d](https://github.com/christophehurpeau/pob/commit/3a0fe7d8a5b937b8bdf31486e0d9cd86aa06acee))
13
+
14
+
15
+ ### Features
16
+
17
+ * **pob:** improve lint:eslint and add test scripts in monorepo ([3d6c9d5](https://github.com/christophehurpeau/pob/commit/3d6c9d5f462bf11e57683b2fa1fe198503eb4f71))
18
+ * **pob:** remove formats when cjs not in it ([e86d3f4](https://github.com/christophehurpeau/pob/commit/e86d3f4589ea19d32614ba1198018122229b1a45))
19
+
20
+
21
+
22
+
23
+
24
+ # [11.2.0](https://github.com/christophehurpeau/pob/compare/pob@11.1.0...pob@11.2.0) (2022-11-15)
25
+
26
+
27
+ ### Features
28
+
29
+ * make formats optional ([ca8a235](https://github.com/christophehurpeau/pob/commit/ca8a23593732a6380f2eb89006914dbe34149e35))
30
+
31
+
32
+
33
+
34
+
6
35
  # [11.1.0](https://github.com/christophehurpeau/pob/compare/pob@11.0.0...pob@11.1.0) (2022-11-15)
7
36
 
8
37
 
@@ -67,8 +67,7 @@ export default class CommonBabelGenerator extends Generator {
67
67
  ) {
68
68
  babelEnvs.unshift({
69
69
  target: 'node',
70
- version: '14',
71
- formats: ['cjs', 'es'],
70
+ version: '16',
72
71
  });
73
72
  }
74
73
  babelEnvs = babelEnvs.filter(
@@ -107,8 +106,10 @@ export default class CommonBabelGenerator extends Generator {
107
106
  .filter((env) => env.target === 'browser')
108
107
  .map((env) => (env.version === undefined ? 'supported' : env.version));
109
108
  const formats = [
110
- babelEnvs.some((env) => env.formats.includes('cjs')) ? 'cjs' : undefined,
111
- babelEnvs.some((env) => env.formats.includes('es')) ? 'es' : undefined,
109
+ babelEnvs.some((env) => env.formats?.includes('cjs')) ? 'cjs' : undefined,
110
+ babelEnvs.some((env) => !env.formats || env.formats.includes('es'))
111
+ ? 'es'
112
+ : undefined,
112
113
  ].filter(Boolean);
113
114
  const jsx =
114
115
  (pkg.pob.jsx || pkg.pob.withReact) === undefined
@@ -202,18 +203,19 @@ export default class CommonBabelGenerator extends Generator {
202
203
  ? // eslint-disable-next-line unicorn/no-nested-ternary
203
204
  version === '16'
204
205
  ? babelConfig.formats
205
- : ['es']
206
- : babelConfig.formats || ['es'],
206
+ : undefined
207
+ : undefined,
207
208
  })),
208
209
  ...(babelConfig.browserVersions || []).map((version) => ({
209
210
  target: 'browser',
210
211
  version: version === 'supported' ? undefined : version,
211
- formats: babelConfig.formats.includes('cjs')
212
- ? // eslint-disable-next-line unicorn/no-nested-ternary
213
- version === 'supported'
214
- ? babelConfig.formats
215
- : ['es']
216
- : babelConfig.formats || ['es'],
212
+ formats:
213
+ babelConfig.formats && babelConfig.formats.includes('cjs')
214
+ ? // eslint-disable-next-line unicorn/no-nested-ternary
215
+ version === 'supported'
216
+ ? babelConfig.formats
217
+ : undefined
218
+ : undefined,
217
219
  })),
218
220
  ];
219
221
 
@@ -505,24 +507,26 @@ export default class CommonBabelGenerator extends Generator {
505
507
  (env) =>
506
508
  env.target === 'browser' &&
507
509
  env.version === undefined &&
508
- env.formats.includes('es'),
510
+ (!env.formats || env.formats.includes('es')),
509
511
  );
510
512
 
511
513
  const esModernBrowserEnv = this.babelEnvs.find(
512
514
  (env) =>
513
515
  env.target === 'browser' &&
514
516
  env.version === 'modern' &&
515
- env.formats.includes('es'),
517
+ (!env.formats || env.formats.includes('es')),
516
518
  );
517
519
 
518
520
  const esNodeEnv = this.babelEnvs.find(
519
- (env) => env.target === 'node' && env.formats.includes('es'),
521
+ (env) =>
522
+ env.target === 'node' && (!env.formats || env.formats.includes('es')),
520
523
  );
521
524
 
522
525
  // Legacy "dev" builds
523
526
  delete pkg['module:browser'];
524
527
  delete pkg['module:browser-dev'];
525
528
  delete pkg['module:modern-browsers-dev'];
529
+ delete pkg['module:node'];
526
530
  delete pkg['module:node-dev'];
527
531
 
528
532
  /* webpack 4 */
@@ -542,13 +546,6 @@ export default class CommonBabelGenerator extends Generator {
542
546
  delete pkg['module:modern-browsers'];
543
547
  }
544
548
 
545
- if (esNodeEnv) {
546
- // webpack 4 node
547
- pkg[
548
- 'module:node'
549
- ] = `./${this.options.buildDirectory}/index-${esNodeEnv.target}${esNodeEnv.version}.mjs`;
550
- }
551
-
552
549
  const aliases = (this.entries || []).filter((entry) => entry !== 'index');
553
550
 
554
551
  if (useBabel && aliases.length > 0 && (esNodeEnv || esAllBrowserEnv)) {
@@ -607,13 +604,13 @@ export default class CommonBabelGenerator extends Generator {
607
604
 
608
605
  if (target === 'node') {
609
606
  const cjsExt = pkg.type === 'module' ? 'cjs' : 'cjs.js';
610
- if (formats.includes('es')) {
607
+ if (!formats || formats.includes('es')) {
611
608
  exportTarget.import = `./${this.options.buildDirectory}/${entryDistName}-${target}${version}.mjs`;
612
609
 
613
- if (formats.includes('cjs')) {
610
+ if (formats && formats.includes('cjs')) {
614
611
  exportTarget.require = `./${this.options.buildDirectory}/${entryDistName}-${target}${version}.${cjsExt}`;
615
612
  }
616
- } else if (formats.includes('cjs')) {
613
+ } else if (formats && formats.includes('cjs')) {
617
614
  exportTarget.default = `./${this.options.buildDirectory}/${entryDistName}-${target}${version}.${cjsExt}`;
618
615
  }
619
616
  // eslint: https://github.com/benmosher/eslint-plugin-import/issues/2132
@@ -627,13 +624,13 @@ export default class CommonBabelGenerator extends Generator {
627
624
  exportTarget.import;
628
625
  }
629
626
  } else if (target === 'browser') {
630
- if (formats.includes('es')) {
627
+ if (!formats || formats.includes('es')) {
631
628
  exportTarget.import = `./${
632
629
  this.options.buildDirectory
633
630
  }/${entryDistName}-${target}${version || ''}.es.js`;
634
631
  }
635
632
 
636
- if (formats.includes('cjs')) {
633
+ if (formats && formats.includes('cjs')) {
637
634
  exportTarget.require = `./${
638
635
  this.options.buildDirectory
639
636
  }/index-${target}${version || ''}.cjs.js`;
@@ -695,11 +692,6 @@ export default class CommonBabelGenerator extends Generator {
695
692
  return;
696
693
  }
697
694
 
698
- if (key.startsWith('module:node') && esNodeEnv) return;
699
- if (key.startsWith('module:browser') && esAllBrowserEnv) return;
700
- if (key.startsWith('module:modern-browsers') && esModernBrowserEnv) {
701
- return;
702
- }
703
695
  if (key.startsWith('module:aliases') && aliases.length > 0) {
704
696
  if (key.startsWith('module:aliases-node') && esNodeEnv) return;
705
697
  if (key.startsWith('module:aliases-browser') && esAllBrowserEnv) return;
@@ -524,7 +524,7 @@ export default class CommonLintGenerator extends Generator {
524
524
 
525
525
  packageUtils.addScripts(pkg, {
526
526
  'lint:eslint': globalEslint
527
- ? `cd ../.. && yarn run eslint ${args} ${path
527
+ ? `yarn ../.. run eslint ${args} ${path
528
528
  .relative('../..', '.')
529
529
  .replace('\\', '/')}`
530
530
  : `eslint ${args} ${lintPaths.join(' ')}`,
@@ -1,3 +1,4 @@
1
+ import path from 'node:path';
1
2
  import Generator from 'yeoman-generator';
2
3
  import inLerna from '../../../utils/inLerna.js';
3
4
  import * as packageUtils from '../../../utils/package.js';
@@ -189,10 +190,14 @@ export default class CommonTestingGenerator extends Generator {
189
190
  } else if (globalTesting) {
190
191
  delete pkg.jest;
191
192
  if (pkg.scripts) {
192
- delete pkg.scripts.test;
193
193
  delete pkg.scripts['generate:test-coverage'];
194
194
  delete pkg.scripts['test:watch'];
195
195
  }
196
+ pkg.addScripts(pkg, {
197
+ test: `yarn ../../ run test -- ${path
198
+ .relative('../..', '.')
199
+ .replace('\\', '/')}`,
200
+ });
196
201
  } else {
197
202
  const babelEnvs = pkg.pob.babelEnvs || [];
198
203
  const transpileWithBabel = packageUtils.transpileWithBabel(pkg);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pob",
3
- "version": "11.1.0",
3
+ "version": "11.3.0",
4
4
  "description": "Pile of bones, library generator with git/babel/typescript/typedoc/readme/jest",
5
5
  "keywords": [
6
6
  "skeleton"
@@ -57,14 +57,14 @@
57
57
  "minimist": "1.2.7",
58
58
  "node-fetch": "3.3.0",
59
59
  "parse-author": "2.0.0",
60
- "pob-dependencies": "7.1.0",
60
+ "pob-dependencies": "7.1.1",
61
61
  "prettier": "2.7.1",
62
62
  "semver": "7.3.8",
63
63
  "yeoman-environment": "3.12.1",
64
64
  "yeoman-generator": "5.7.0"
65
65
  },
66
66
  "devDependencies": {
67
- "@pob/root": "7.1.0"
67
+ "@pob/root": "7.1.1"
68
68
  },
69
- "gitHead": "cfac4a5dd8c45fbdcf93a5ca4354bb1d3352f8fa"
69
+ "gitHead": "33e161c4d1126092c4ab2dfa490a03ac6359e663"
70
70
  }