Skip to content

Commit

Permalink
Prefer local Prettier when formatting files (#905)
Browse files Browse the repository at this point in the history
* Prefer local Prettier when formatting files

* Reformat files

* Fixed `prettier` loading

* Fixed `prettier` loading in `@changesets/write` too

* add changeset
  • Loading branch information
Andarist committed Aug 30, 2022
1 parent 8e64d41 commit c140171
Show file tree
Hide file tree
Showing 86 changed files with 1,551 additions and 1,499 deletions.
6 changes: 6 additions & 0 deletions .changeset/lovely-suits-obey.md
@@ -0,0 +1,6 @@
---
"@changesets/apply-release-plan": minor
"@changesets/write": minor
---

The local version of Prettier is going to be preferred from now on when writing formatted `.md` files back to disk. At the same time the version of Prettier that we depend on has been upgraded.
8 changes: 4 additions & 4 deletions babel.config.js
Expand Up @@ -3,9 +3,9 @@ module.exports = {
[
"@babel/preset-env",
{
targets: { node: 8 }
}
]
targets: { node: 8 },
},
],
],
overrides: [{ test: "**/*.ts", presets: ["@babel/preset-typescript"] }]
overrides: [{ test: "**/*.ts", presets: ["@babel/preset-typescript"] }],
};
4 changes: 2 additions & 2 deletions docs/modifying-changelog-format.md
Expand Up @@ -35,7 +35,7 @@ async function getDependencyReleaseLine() {}

module.exports = {
getReleaseLine,
getDependencyReleaseLine
getDependencyReleaseLine,
};
```

Expand All @@ -52,7 +52,7 @@ async function getDependencyReleaseLine() {}

const defaultChangelogFunctions: ChangelogFunctions = {
getReleaseLine,
getDependencyReleaseLine
getDependencyReleaseLine,
};

export default defaultChangelogFunctions;
Expand Down
4 changes: 2 additions & 2 deletions jest.config.js
Expand Up @@ -2,6 +2,6 @@ module.exports = {
clearMocks: true,
watchPlugins: [
"jest-watch-typeahead/filename",
"jest-watch-typeahead/testname"
]
"jest-watch-typeahead/testname",
],
};
4 changes: 2 additions & 2 deletions package.json
Expand Up @@ -46,7 +46,7 @@
"@types/js-yaml": "^3.12.1",
"@types/lodash": "^4.14.136",
"@types/meow": "^5.0.0",
"@types/prettier": "^1.19.1",
"@types/prettier": "^2.7.0",
"@types/semver": "^6.0.0",
"@typescript-eslint/eslint-plugin": "^3.5.0",
"@typescript-eslint/parser": "^3.5.0",
Expand All @@ -63,7 +63,7 @@
"jest": "^25.1.0",
"jest-junit": "^6.4.0",
"jest-watch-typeahead": "^0.4.2",
"prettier": "^1.19.1",
"prettier": "^2.7.1",
"typescript": "^4.5.2"
},
"preconstruct": {
Expand Down
2 changes: 1 addition & 1 deletion packages/apply-release-plan/package.json
Expand Up @@ -17,7 +17,7 @@
"fs-extra": "^7.0.1",
"lodash.startcase": "^4.4.0",
"outdent": "^0.5.0",
"prettier": "^1.19.1",
"prettier": "^2.7.1",
"resolve-from": "^5.0.0",
"semver": "^5.4.1"
},
Expand Down
26 changes: 13 additions & 13 deletions packages/apply-release-plan/src/get-changelog-entry.ts
Expand Up @@ -15,7 +15,7 @@ async function generateChangesForVersionTypeMarkdown(
type: keyof ChangelogLines
) {
let releaseLines = await Promise.all(obj[type]);
releaseLines = releaseLines.filter(x => x);
releaseLines = releaseLines.filter((x) => x);
if (releaseLines.length) {
return `### ${startCase(type)} Changes\n\n${releaseLines.join("\n")}\n`;
}
Expand All @@ -30,7 +30,7 @@ export default async function getChangelogEntry(
changelogOpts: any,
{
updateInternalDependencies,
onlyUpdatePeerDependentsWhenOutOfRange
onlyUpdatePeerDependentsWhenOutOfRange,
}: {
updateInternalDependencies: "patch" | "minor";
onlyUpdatePeerDependentsWhenOutOfRange: boolean;
Expand All @@ -41,22 +41,22 @@ export default async function getChangelogEntry(
const changelogLines: ChangelogLines = {
major: [],
minor: [],
patch: []
patch: [],
};

// I sort of feel we can do better, as ComprehensiveReleases have an array
// of the relevant changesets but since we need the version type for the
// release in the changeset, I don't know if we can
// We can filter here, but that just adds another iteration over this list
changesets.forEach(cs => {
const rls = cs.releases.find(r => r.name === release.name);
changesets.forEach((cs) => {
const rls = cs.releases.find((r) => r.name === release.name);
if (rls && rls.type !== "none") {
changelogLines[rls.type].push(
changelogFuncs.getReleaseLine(cs, rls.type, changelogOpts)
);
}
});
let dependentReleases = releases.filter(rel => {
let dependentReleases = releases.filter((rel) => {
const dependencyVersionRange = release.packageJson.dependencies?.[rel.name];
const peerDependencyVersionRange =
release.packageJson.peerDependencies?.[rel.name];
Expand All @@ -68,25 +68,25 @@ export default async function getChangelogEntry(
{ type: rel.type, version: rel.newVersion },
{
depVersionRange: versionRange,
depType: dependencyVersionRange ? "dependencies" : "peerDependencies"
depType: dependencyVersionRange ? "dependencies" : "peerDependencies",
},
{
minReleaseType: updateInternalDependencies,
onlyUpdatePeerDependentsWhenOutOfRange
onlyUpdatePeerDependentsWhenOutOfRange,
}
)
);
});

let relevantChangesetIds: Set<string> = new Set();

dependentReleases.forEach(rel => {
rel.changesets.forEach(cs => {
dependentReleases.forEach((rel) => {
rel.changesets.forEach((cs) => {
relevantChangesetIds.add(cs);
});
});

let relevantChangesets = changesets.filter(cs =>
let relevantChangesets = changesets.filter((cs) =>
relevantChangesetIds.has(cs.id)
);

Expand All @@ -102,8 +102,8 @@ export default async function getChangelogEntry(
`## ${release.newVersion}`,
await generateChangesForVersionTypeMarkdown(changelogLines, "major"),
await generateChangesForVersionTypeMarkdown(changelogLines, "minor"),
await generateChangesForVersionTypeMarkdown(changelogLines, "patch")
await generateChangesForVersionTypeMarkdown(changelogLines, "patch"),
]
.filter(line => line)
.filter((line) => line)
.join("\n");
}

0 comments on commit c140171

Please sign in to comment.