release-plan
Advanced tools
Comparing version 0.5.0 to 0.5.1
{ | ||
"solution": { | ||
"release-plan": { | ||
"impact": "minor", | ||
"oldVersion": "0.4.1", | ||
"newVersion": "0.5.0", | ||
"impact": "patch", | ||
"oldVersion": "0.5.0", | ||
"newVersion": "0.5.1", | ||
"constraints": [ | ||
{ | ||
"impact": "minor", | ||
"reason": "Appears in changelog section :rocket: Enhancement" | ||
"impact": "patch", | ||
"reason": "Appears in changelog section :bug: Bug Fix" | ||
} | ||
@@ -16,3 +16,3 @@ ], | ||
}, | ||
"description": "## Release (2023-12-06)\n\nrelease-plan 0.5.0 (minor)\n\n#### :rocket: Enhancement\n* `release-plan`\n * [#32](https://github.com/embroider-build/release-plan/pull/32) update lerna-changelog ([@mansona](https://github.com/mansona))\n\n#### Committers: 1\n- Chris Manson ([@mansona](https://github.com/mansona))\n" | ||
"description": "## Release (2023-12-06)\n\nrelease-plan 0.5.1 (patch)\n\n#### :bug: Bug Fix\n* `release-plan`\n * [#35](https://github.com/embroider-build/release-plan/pull/35) fix pnpm package discovery bug ([@mansona](https://github.com/mansona))\n * [#34](https://github.com/embroider-build/release-plan/pull/34) Fix pnpm package discovery ([@mansona](https://github.com/mansona))\n\n#### Committers: 1\n- Chris Manson ([@mansona](https://github.com/mansona))\n" | ||
} |
# release-plan Changelog | ||
## Release (2023-12-06) | ||
release-plan 0.5.1 (patch) | ||
#### :bug: Bug Fix | ||
* `release-plan` | ||
* [#35](https://github.com/embroider-build/release-plan/pull/35) fix pnpm package discovery bug ([@mansona](https://github.com/mansona)) | ||
* [#34](https://github.com/embroider-build/release-plan/pull/34) Fix pnpm package discovery ([@mansona](https://github.com/mansona)) | ||
#### Committers: 1 | ||
- Chris Manson ([@mansona](https://github.com/mansona)) | ||
## Release (2023-12-06) | ||
release-plan 0.5.0 (minor) | ||
@@ -5,0 +16,0 @@ |
@@ -7,3 +7,5 @@ export type Range = `workspace:${string}`; | ||
isPeerDependencyOf: Map<string, Range>; | ||
pkg: any; | ||
} | ||
export declare function getPackages(rootDir: string): Map<string, PkgEntry>; | ||
export declare function publishedInterPackageDeps(): Map<string, PkgEntry>; |
@@ -1,9 +0,6 @@ | ||
import glob from 'globby'; | ||
import { resolve, relative } from 'path'; | ||
import { resolve, relative, join } from 'path'; | ||
import fsExtra from 'fs-extra'; | ||
import yaml from 'js-yaml'; | ||
import execa from 'execa'; | ||
const { readFileSync, readJSONSync, existsSync } = fsExtra; | ||
export function publishedInterPackageDeps() { | ||
const rootDir = './'; | ||
const { readJSONSync, existsSync } = fsExtra; | ||
export function getPackages(rootDir) { | ||
const packages = new Map(); | ||
@@ -15,3 +12,2 @@ function loadPackage(packagePath) { | ||
} | ||
pkgJSONS.set(pkg.name, pkg); | ||
packages.set(pkg.name, { | ||
@@ -22,7 +18,7 @@ version: pkg.version, | ||
isPeerDependencyOf: new Map(), | ||
pkg, | ||
}); | ||
} | ||
const pkgJSONS = new Map(); | ||
if (!existsSync('./pnpm-workspace.yaml')) { | ||
const result = execa.sync('npm', ['query', '.workspace']); | ||
if (!existsSync(join(rootDir, './pnpm-workspace.yaml'))) { | ||
const result = execa.sync('npm', ['query', '.workspace'], { cwd: rootDir }); | ||
const resultParsed = JSON.parse(result.stdout); | ||
@@ -33,16 +29,19 @@ const locations = resultParsed.map((i) => i.location); | ||
} | ||
loadPackage('./package.json'); | ||
loadPackage(join(rootDir, './package.json')); | ||
} | ||
else { | ||
for (const pattern of yaml.load(readFileSync('./pnpm-workspace.yaml', 'utf8')).packages) { | ||
for (const dir of glob.sync(pattern, { | ||
cwd: rootDir, | ||
expandDirectories: false, | ||
onlyDirectories: true, | ||
})) { | ||
loadPackage(resolve(rootDir, dir, 'package.json')); | ||
} | ||
} | ||
const result = execa.sync(`pnpm`, ['m', 'ls', '--json', '--depth=-1'], { | ||
cwd: rootDir, | ||
}); | ||
const workspaceJson = JSON.parse(result.stdout); | ||
workspaceJson | ||
.filter((item) => item.name && item.path) | ||
.forEach((item) => loadPackage(join(item.path, 'package.json'))); | ||
} | ||
for (const [consumerName, consumerPkgJSON] of pkgJSONS) { | ||
return packages; | ||
} | ||
export function publishedInterPackageDeps() { | ||
const packages = getPackages('./'); | ||
for (const [consumerName, packageDefinition] of packages) { | ||
const consumerPkgJSON = packageDefinition.pkg; | ||
// no devDeps because changes to devDeps shouldn't ever force us to | ||
@@ -49,0 +48,0 @@ // release |
{ | ||
"name": "release-plan", | ||
"version": "0.5.0", | ||
"version": "0.5.1", | ||
"description": "", | ||
@@ -27,3 +27,2 @@ "keywords": [], | ||
"fs-extra": "^10.0.0", | ||
"globby": "^11.0.3", | ||
"js-yaml": "^4.1.0", | ||
@@ -45,3 +44,4 @@ "latest-version": "^5.0.0", | ||
"prettier": "^3.1.0", | ||
"typescript": "^5.2.2" | ||
"typescript": "^5.2.2", | ||
"vitest": "^1.0.1" | ||
}, | ||
@@ -51,4 +51,4 @@ "scripts": { | ||
"lint": "eslint .", | ||
"test": "echo \"Error: no test specified\" && exit 1" | ||
"test": "vitest" | ||
} | ||
} |
@@ -1,8 +0,6 @@ | ||
import glob from 'globby'; | ||
import { resolve, relative } from 'path'; | ||
import { resolve, relative, join } from 'path'; | ||
import fsExtra from 'fs-extra'; | ||
import yaml from 'js-yaml'; | ||
import execa from 'execa'; | ||
const { readFileSync, readJSONSync, existsSync } = fsExtra; | ||
const { readJSONSync, existsSync } = fsExtra; | ||
export type Range = `workspace:${string}`; | ||
@@ -15,6 +13,6 @@ | ||
isPeerDependencyOf: Map<string, Range>; | ||
pkg: any; | ||
} | ||
export function publishedInterPackageDeps(): Map<string, PkgEntry> { | ||
const rootDir = './'; | ||
export function getPackages(rootDir: string): Map<string, PkgEntry> { | ||
const packages: Map<string, PkgEntry> = new Map(); | ||
@@ -27,3 +25,3 @@ | ||
} | ||
pkgJSONS.set(pkg.name, pkg); | ||
packages.set(pkg.name, { | ||
@@ -34,9 +32,8 @@ version: pkg.version, | ||
isPeerDependencyOf: new Map(), | ||
pkg, | ||
}); | ||
} | ||
const pkgJSONS: Map<string, any> = new Map(); | ||
if (!existsSync('./pnpm-workspace.yaml')) { | ||
const result = execa.sync('npm', ['query', '.workspace']); | ||
if (!existsSync(join(rootDir, './pnpm-workspace.yaml'))) { | ||
const result = execa.sync('npm', ['query', '.workspace'], { cwd: rootDir }); | ||
const resultParsed = JSON.parse(result.stdout); | ||
@@ -49,18 +46,21 @@ const locations = resultParsed.map((i: any) => i.location); | ||
loadPackage('./package.json'); | ||
loadPackage(join(rootDir, './package.json')); | ||
} else { | ||
for (const pattern of ( | ||
yaml.load(readFileSync('./pnpm-workspace.yaml', 'utf8')) as any | ||
).packages) { | ||
for (const dir of glob.sync(pattern, { | ||
cwd: rootDir, | ||
expandDirectories: false, | ||
onlyDirectories: true, | ||
})) { | ||
loadPackage(resolve(rootDir, dir, 'package.json')); | ||
} | ||
} | ||
const result = execa.sync(`pnpm`, ['m', 'ls', '--json', '--depth=-1'], { | ||
cwd: rootDir, | ||
}); | ||
const workspaceJson = JSON.parse(result.stdout); | ||
workspaceJson | ||
.filter((item: any) => item.name && item.path) | ||
.forEach((item: any) => loadPackage(join(item.path, 'package.json'))); | ||
} | ||
return packages; | ||
} | ||
for (const [consumerName, consumerPkgJSON] of pkgJSONS) { | ||
export function publishedInterPackageDeps(): Map<string, PkgEntry> { | ||
const packages = getPackages('./'); | ||
for (const [consumerName, packageDefinition] of packages) { | ||
const consumerPkgJSON = packageDefinition.pkg; | ||
// no devDeps because changes to devDeps shouldn't ever force us to | ||
@@ -67,0 +67,0 @@ // release |
{ | ||
"include": ["src/*.ts"], | ||
"exclude": ["src/*.test.ts"], | ||
"compilerOptions": { | ||
@@ -22,2 +23,2 @@ "target": "es2022", | ||
}, | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No tests
QualityPackage does not have any tests. This is a strong signal of a poorly maintained or low quality package.
Found 1 instance in 1 package
134528
17
52
1905
2
11
1
- Removedglobby@^11.0.3
- Removedarray-union@2.1.0(transitive)
- Removeddir-glob@3.0.1(transitive)
- Removedglobby@11.1.0(transitive)
- Removedignore@5.3.2(transitive)
- Removedpath-type@4.0.0(transitive)
- Removedslash@3.0.0(transitive)