chore(): sync with main

This commit is contained in:
Liam DeBeasi
2021-11-11 10:19:05 -05:00
20 changed files with 365 additions and 81 deletions

View File

@@ -199,6 +199,16 @@ function preparePackage(tasks, package, version, install) {
});
}
function installDevPackage(tasks, package) {
const projectRoot = projectPath(package);
const pkg = readPkg(package);
tasks.push({
title: `${pkg.name}: npm install`,
task: () => execa('npm', ['install', '--legacy-peer-deps'], { cwd: projectRoot })
});
}
function prepareDevPackage(tasks, package, version) {
const projectRoot = projectPath(package);
const pkg = readPkg(package);
@@ -211,20 +221,20 @@ function prepareDevPackage(tasks, package, version) {
title: `${pkg.name}: npm link @ionic/core`,
task: () => execa('npm', ['link', '@ionic/core', '--legacy-peer-deps'], { cwd: projectRoot })
});
if (package === 'packages/react-router') {
projectTasks.push({
title: `${pkg.name}: npm link @ionic/react`,
task: () => execa('npm', ['link', '@ionic/react', '--legacy-peer-deps'], { cwd: projectRoot })
});
}
}
projectTasks.push({
title: `${pkg.name}: update ionic/core dep to ${version}`,
task: () => {
updateDependency(pkg, '@ionic/core', version);
writePkg(package, pkg);
/**
* At this point, the version for the package
* has been changed so we need to re-fetch the
* package contents so we do not overwrite it.
*/
const updatedPackage = readPkg(package);
updateDependency(updatedPackage, '@ionic/core', version);
writePkg(package, updatedPackage);
}
});
@@ -233,7 +243,7 @@ function prepareDevPackage(tasks, package, version) {
task: () => execa('npm', ['run', 'build'], { cwd: projectRoot })
});
if (package === 'core' || package === 'packages/react') {
if (package === 'core') {
projectTasks.push({
title: `${pkg.name}: npm link`,
task: () => execa('npm', ['link'], { cwd: projectRoot })
@@ -278,17 +288,6 @@ function updatePackageVersions(tasks, packages, version) {
}
});
}
if (package === 'packages/react-router') {
tasks.push({
title: `${package} update @ionic/react dependency, if present ${dim(`(${version})`)}`,
task: async () => {
const pkg = readPkg(package);
updateDependency(pkg, '@ionic/react', version);
writePkg(package, pkg);
}
});
}
});
}
@@ -320,7 +319,7 @@ function copyPackageToDist(tasks, packages) {
}
function publishPackages(tasks, packages, version, npmTag = 'latest') {
// first verify version
// verify version
packages.forEach(package => {
if (package === 'core') {
return;
@@ -337,22 +336,6 @@ function publishPackages(tasks, packages, version, npmTag = 'latest') {
}
});
});
// Publish
packages.forEach(package => {
let projectRoot = projectPath(package);
if (package === 'packages/angular-server' || package === 'angular') {
projectRoot = path.join(projectRoot, 'dist')
}
tasks.push({
title: `${package}: publish to ${npmTag} tag`,
task: async () => {
await execa('npm', ['publish', '--tag', npmTag], { cwd: projectRoot });
}
});
});
}
function updateDependency(pkg, dependency, version) {
@@ -382,6 +365,7 @@ function copyCDNLoader(tasks, version) {
}
module.exports = {
installDevPackage,
checkTestDist,
checkGit,
askNpmTag,

View File

@@ -33,7 +33,14 @@ async function main() {
const tasks = [];
await setPackageVersionChanges(packages, devVersion);
packages.forEach(package => {
common.installDevPackage(tasks, package);
});
tasks.push({
title: 'Set package version changes',
task: async () => await setPackageVersionChanges(packages, devVersion)
})
packages.forEach(package => {
common.prepareDevPackage(tasks, package, devVersion);
@@ -50,13 +57,14 @@ async function main() {
console.log('\n', red(err), '\n');
process.exit(1);
}
orgPkg.forEach(pkg => {
fs.writeFileSync(pkg.filePath, pkg.packageContent);
});
}
async function askDevVersion(devVersion) {
const skipPrompt = process.argv.find(arg => arg === '--skip-prompt');
if (skipPrompt) {
console.log(`\n--skip-prompt was passed. Skipping dev build prompt.`)
return true;
}
const prompts = [
{
@@ -78,9 +86,6 @@ async function setPackageVersionChanges(packages, version) {
if (package !== 'core') {
const pkg = common.readPkg(package);
common.updateDependency(pkg, '@ionic/core', version);
if(package === 'packages/react-router') {
common.updateDependency(pkg, '@ionic/react', version);
}
common.writePkg(package, pkg);
}
const projectRoot = common.projectPath(package);