Merge branch 'development' into removeUnusedDeps

* development:
  Temporarily remove installation test
  Fix package.json
  Remove `isPublished` from all CHANGELOG.json filesx
  Now that every version of a package published has a corresponding entry in it's CHANGELOG we no longer need the isPublished flag. Remove it.
  Remove temporary convert_changelog script

# Conflicts:
#	packages/monorepo-scripts/package.json
This commit is contained in:
Fabio Berger
2018-04-04 03:57:42 +09:00
25 changed files with 178 additions and 449 deletions

View File

@@ -183,9 +183,9 @@ workflows:
main:
jobs:
- build
- test-installation:
requires:
- build
# - test-installation:
# requires:
# - build
- test-0xjs:
requires:
- build

View File

@@ -8,8 +8,7 @@
"pr": 485
}
],
"timestamp": 1522673609,
"isPublished": true
"timestamp": 1522673609
},
{
"version": "0.34.0",
@@ -47,8 +46,7 @@
"pr": 456
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.33.1",
@@ -57,8 +55,7 @@
"note": "Add missing EthersJs typescript typings as dependency"
}
],
"timestamp": 1520434800,
"isPublished": true
"timestamp": 1520434800
},
{
"version": "0.33.0",
@@ -84,8 +81,7 @@
"pr": 429
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.32.2",
@@ -95,8 +91,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.32.1",
@@ -110,8 +105,7 @@
"pr": 371
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
},
{
"version": "0.32.0",
@@ -126,8 +120,7 @@
"pr": 366
}
],
"timestamp": 1517756400,
"isPublished": true
"timestamp": 1517756400
},
{
"version": "0.31.1",
@@ -137,8 +130,7 @@
"pr": 357
}
],
"timestamp": 1517410800,
"isPublished": true
"timestamp": 1517410800
},
{
"version": "0.31.0",
@@ -149,8 +141,7 @@
"pr": 349
}
],
"timestamp": 1517238000,
"isPublished": true
"timestamp": 1517238000
},
{
"version": "0.30.2",
@@ -163,8 +154,7 @@
"note": "Move @0xproject/types to dependencies from devDependencies fixing missing type errors"
}
],
"timestamp": 1517151600,
"isPublished": true
"timestamp": 1517151600
},
{
"version": "0.30.1",
@@ -178,8 +168,7 @@
"pr": 341
}
],
"timestamp": 1516719600,
"isPublished": true
"timestamp": 1516719600
},
{
"version": "0.30.0",
@@ -198,8 +187,7 @@
"pr": 321
}
],
"timestamp": 1516114800,
"isPublished": true
"timestamp": 1516114800
},
{
"version": "0.29.1",
@@ -209,8 +197,7 @@
"pr": 305
}
],
"timestamp": 1515596400,
"isPublished": true
"timestamp": 1515596400
},
{
"version": "0.29.0",
@@ -224,8 +211,7 @@
"pr": 287
}
],
"timestamp": 1514386800,
"isPublished": true
"timestamp": 1514386800
},
{
"version": "0.28.0",
@@ -271,8 +257,7 @@
"pr": 278
}
],
"timestamp": 1513695600,
"isPublished": true
"timestamp": 1513695600
},
{
"version": "0.27.1",
@@ -281,8 +266,7 @@
"note": "Export `TransactionOpts` type"
}
],
"timestamp": 1511794800,
"isPublished": true
"timestamp": 1511794800
},
{
"version": "0.27.0",
@@ -327,8 +311,7 @@
"pr": 236
}
],
"timestamp": 1511794800,
"isPublished": true
"timestamp": 1511794800
},
{
"version": "0.26.0",
@@ -348,8 +331,7 @@
"pr": 225
}
],
"timestamp": 1511190000,
"isPublished": true
"timestamp": 1511190000
},
{
"version": "0.25.1",
@@ -368,8 +350,7 @@
"pr": 200
}
],
"timestamp": 1510498800,
"isPublished": true
"timestamp": 1510498800
},
{
"version": "0.23.0",
@@ -382,8 +363,7 @@
"note": "Subscribe callbacks now receive an error object as their first argument"
}
],
"timestamp": 1510412400,
"isPublished": true
"timestamp": 1510412400
},
{
"version": "0.22.6",
@@ -393,8 +373,7 @@
"pr": 206
}
],
"timestamp": 1510239600,
"isPublished": true
"timestamp": 1510239600
},
{
"version": "0.22.5",
@@ -403,8 +382,7 @@
"note": "Re-publish v0.22.4 to fix publishing issue"
}
],
"timestamp": 1509980400,
"isPublished": true
"timestamp": 1509980400
},
{
"version": "0.22.4",
@@ -413,8 +391,7 @@
"note": "Upgraded bignumber.js to a new version that ships with native typings"
}
],
"timestamp": 1508857200,
"isPublished": true
"timestamp": 1508857200
},
{
"version": "0.22.3",
@@ -424,8 +401,7 @@
"pr": 199
}
],
"timestamp": 1508857200,
"isPublished": true
"timestamp": 1508857200
},
{
"version": "0.22.2",
@@ -435,8 +411,7 @@
"pr": 197
}
],
"timestamp": 1508770800,
"isPublished": true
"timestamp": 1508770800
},
{
"version": "0.22.0",
@@ -451,8 +426,7 @@
"pr": 187
}
],
"timestamp": 1508079600,
"isPublished": true
"timestamp": 1508079600
},
{
"version": "0.21.4",
@@ -463,8 +437,7 @@
"pr": 194
}
],
"timestamp": 1507820400,
"isPublished": true
"timestamp": 1507820400
},
{
"version": "0.21.3",
@@ -474,8 +447,7 @@
"pr": 193
}
],
"timestamp": 1507734000,
"isPublished": true
"timestamp": 1507734000
},
{
"version": "0.21.2",
@@ -485,8 +457,7 @@
"pr": 190
}
],
"timestamp": 1507647600,
"isPublished": true
"timestamp": 1507647600
},
{
"version": "0.21.1",
@@ -496,8 +467,7 @@
"pr": 189
}
],
"timestamp": 1507647600,
"isPublished": true
"timestamp": 1507647600
},
{
"version": "0.21.0",
@@ -543,8 +513,7 @@
"pr": 185
}
],
"timestamp": 1507561200,
"isPublished": true
"timestamp": 1507561200
},
{
"version": "0.20.0",
@@ -562,8 +531,7 @@
"pr": 181
}
],
"timestamp": 1507129200,
"isPublished": true
"timestamp": 1507129200
},
{
"version": "0.19.0",
@@ -581,8 +549,7 @@
"pr": 175
}
],
"timestamp": 1506610800,
"isPublished": true
"timestamp": 1506610800
},
{
"version": "0.18.0",
@@ -592,8 +559,7 @@
"pr": 170
}
],
"timestamp": 1506351600,
"isPublished": true
"timestamp": 1506351600
},
{
"version": "0.17.0",
@@ -603,8 +569,7 @@
"pr": 171
}
],
"timestamp": 1506351600,
"isPublished": true
"timestamp": 1506351600
},
{
"version": "0.16.0",
@@ -627,8 +592,7 @@
"pr": 165
}
],
"timestamp": 1505833200,
"isPublished": true
"timestamp": 1505833200
},
{
"version": "0.15.0",
@@ -639,8 +603,7 @@
"pr": 161
}
],
"timestamp": 1504796400,
"isPublished": true
"timestamp": 1504796400
},
{
"version": "0.14.2",
@@ -650,8 +613,7 @@
"pr": 160
}
],
"timestamp": 1504710000,
"isPublished": true
"timestamp": 1504710000
},
{
"version": "0.14.1",
@@ -661,8 +623,7 @@
"pr": 159
}
],
"timestamp": 1504710000,
"isPublished": true
"timestamp": 1504710000
},
{
"version": "0.14.0",
@@ -680,8 +641,7 @@
"pr": 157
}
],
"timestamp": 1504623600,
"isPublished": true
"timestamp": 1504623600
},
{
"version": "0.13.0",
@@ -705,8 +665,7 @@
"pr": 152
}
],
"timestamp": 1504623600,
"isPublished": true
"timestamp": 1504623600
},
{
"version": "0.12.1",
@@ -724,8 +683,7 @@
"pr": 139
}
],
"timestamp": 1504278000,
"isPublished": true
"timestamp": 1504278000
},
{
"version": "0.11.0",
@@ -743,8 +701,7 @@
"pr": 137
}
],
"timestamp": 1503500400,
"isPublished": true
"timestamp": 1503500400
},
{
"version": "0.10.4",
@@ -754,8 +711,7 @@
"pr": 135
}
],
"timestamp": 1503500400,
"isPublished": true
"timestamp": 1503500400
},
{
"version": "0.10.1",
@@ -809,8 +765,7 @@
"pr": 127
}
],
"timestamp": 1503500400,
"isPublished": true
"timestamp": 1503500400
},
{
"version": "0.9.3",
@@ -820,8 +775,7 @@
"pr": 118
}
],
"timestamp": 1503327600,
"isPublished": true
"timestamp": 1503327600
},
{
"version": "0.9.2",
@@ -834,8 +788,7 @@
"pr": 118
}
],
"timestamp": 1503241200,
"isPublished": true
"timestamp": 1503241200
},
{
"version": "0.9.1",
@@ -845,8 +798,7 @@
"pr": 120
}
],
"timestamp": 1502809200,
"isPublished": true
"timestamp": 1502809200
},
{
"version": "0.9.0",
@@ -883,8 +835,7 @@
"pr": 109
}
],
"timestamp": 1500994800,
"isPublished": true
"timestamp": 1500994800
},
{
"version": "0.8.0",
@@ -926,8 +877,7 @@
"note": "Fixed the bug where `zeroEx.setProviderAsync` didn't invalidate etherToken contract's instance"
}
],
"timestamp": 1499094000,
"isPublished": true
"timestamp": 1499094000
},
{
"version": "0.7.1",
@@ -938,8 +888,7 @@
"pr": 81
}
],
"timestamp": 1498402800,
"isPublished": true
"timestamp": 1498402800
},
{
"version": "0.7.0",
@@ -961,8 +910,7 @@
"Renamed type `LogCancelArgs` to `LogCancelContractEventArgs` and `LogFillArgs` to `LogFillContractEventArgs`"
}
],
"timestamp": 1498057200,
"isPublished": true
"timestamp": 1498057200
},
{
"version": "0.6.2",
@@ -974,8 +922,7 @@
"note": "Improved documentation"
}
],
"timestamp": 1497970800,
"isPublished": true
"timestamp": 1497970800
},
{
"version": "0.6.1",
@@ -984,8 +931,7 @@
"note": "Improved documentation"
}
],
"timestamp": 1497798000,
"isPublished": true
"timestamp": 1497798000
},
{
"version": "0.6.0",
@@ -997,8 +943,7 @@
"note": "Added types for contract event arguments"
}
],
"timestamp": 1497798000,
"isPublished": true
"timestamp": 1497798000
},
{
"version": "0.5.2",
@@ -1008,8 +953,7 @@
"Fixed the bug in `postpublish` script that caused that only unminified UMD bundle was uploaded to release page"
}
],
"timestamp": 1497452400,
"isPublished": true
"timestamp": 1497452400
},
{
"version": "0.5.1",
@@ -1018,7 +962,6 @@
"note": "Added `postpublish` script to publish to Github Releases with assets."
}
],
"timestamp": 1497452400,
"isPublished": true
"timestamp": 1497452400
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.2.5",
@@ -27,8 +25,7 @@
"pr": 452
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.2.4",
@@ -48,8 +45,7 @@
"pr": 413
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.2.1",
@@ -59,8 +55,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.2.0",
@@ -75,8 +70,7 @@
"pr": 388
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
},
{
"version": "0.1.0",
@@ -94,7 +88,6 @@
"pr": 304
}
],
"timestamp": 1515596400,
"isPublished": true
"timestamp": 1515596400
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.2.0",
@@ -27,8 +25,7 @@
"pr": 412
}
],
"timestamp": 1520434800,
"isPublished": true
"timestamp": 1520434800
},
{
"version": "0.1.0",
@@ -42,8 +39,7 @@
"pr": 385
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.0.18",
@@ -53,8 +49,7 @@
"pr": 389
}
],
"timestamp": 1486566000,
"isPublished": true
"timestamp": 1486566000
},
{
"version": "0.0.4",
@@ -67,7 +62,6 @@
"Added assertion isValidBaseUnitAmount which checks both that the value is a valid bigNumber and that it does not contain decimals."
}
],
"timestamp": 1510585200,
"isPublished": true
"timestamp": 1510585200
}
]

View File

@@ -24,8 +24,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.0.2",
@@ -34,7 +33,6 @@
"note": "Initial release"
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.6.4",
@@ -27,8 +25,7 @@
"pr": 456
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.6.2",
@@ -38,8 +35,7 @@
"pr": 407
}
],
"timestamp": 1518706800,
"isPublished": true
"timestamp": 1518706800
},
{
"version": "0.6.0",
@@ -53,8 +49,7 @@
"pr": 406
}
],
"timestamp": 1518706800,
"isPublished": true
"timestamp": 1518706800
},
{
"version": "0.5.7",
@@ -64,8 +59,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.5.0",
@@ -83,8 +77,7 @@
"pr": 318
}
],
"timestamp": 1516114800,
"isPublished": true
"timestamp": 1516114800
},
{
"version": "0.4.0",
@@ -94,8 +87,7 @@
"pr": 296
}
],
"timestamp": 1515596400,
"isPublished": true
"timestamp": 1515596400
},
{
"version": "0.3.0",
@@ -109,8 +101,7 @@
"pr": 256
}
],
"timestamp": 1512658800,
"isPublished": true
"timestamp": 1512658800
},
{
"version": "0.2.0",
@@ -125,8 +116,7 @@
"note": "Remove dependency on 0x.js"
}
],
"timestamp": 1511881200,
"isPublished": true
"timestamp": 1511881200
},
{
"version": "0.1.0",
@@ -135,7 +125,6 @@
"note": "Provide a HttpClient class for interacting with standard relayer api compliant HTTP urls"
}
],
"timestamp": 1511276400,
"isPublished": true
"timestamp": 1511276400
}
]

View File

@@ -7,8 +7,7 @@
"pr": 485
}
],
"timestamp": 1522673609,
"isPublished": true
"timestamp": 1522673609
},
{
"version": "0.3.4",
@@ -18,8 +17,7 @@
"pr": 491
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
},
{
"version": "0.3.1",
@@ -28,8 +26,7 @@
"note": "Add TS types for `yargs`"
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.3.0",
@@ -75,8 +72,7 @@
"note": "Add `#!/usr/bin/env node` pragma above `cli.ts` script to fix command-line error."
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.2.0",
@@ -91,8 +87,7 @@
"pr": 419
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.1.0",
@@ -102,8 +97,7 @@
"pr": 400
}
],
"timestamp": 1518706800,
"isPublished": true
"timestamp": 1518706800
},
{
"version": "0.0.8",
@@ -113,7 +107,6 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.3.1",
@@ -29,8 +27,7 @@
"note": "Move `@0xproject/web3_wrapper` to dependencies from devDependencies."
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.3.0",
@@ -48,8 +45,7 @@
"pr": 426
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.2.0",
@@ -59,8 +55,7 @@
"pr": 392
}
],
"timestamp": 1518706800,
"isPublished": true
"timestamp": 1518706800
},
{
"version": "0.0.12",
@@ -70,8 +65,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.0.11",
@@ -81,7 +75,6 @@
"pr": 352
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.7.13",
@@ -27,8 +25,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.7.0",
@@ -38,8 +35,7 @@
"pr": 272
}
],
"timestamp": 1513695600,
"isPublished": true
"timestamp": 1513695600
},
{
"version": "0.6.7",
@@ -48,7 +44,6 @@
"note": "Re-publish JSON-schema previously published under NPM package 0x-json-schemas"
}
],
"timestamp": 1510585200,
"isPublished": true
"timestamp": 1510585200
}
]

View File

@@ -15,7 +15,6 @@
"note": "Add postpublish utils"
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
}
]

View File

@@ -10,11 +10,9 @@
"clean": "shx rm -rf lib",
"build": "tsc",
"test:publish": "run-s build script:publish",
"convert_changelogs": "run-s build script:convert_changelogs",
"find_unused_deps": "run-s build script:find_unused_deps",
"script:deps_versions": "node ./lib/deps_versions.js",
"script:publish": "IS_DRY_RUN=true node ./lib/publish.js",
"script:convert_changelogs": "node ./lib/convert_changelogs.js",
"script:find_unused_deps": "node ./lib/find_unused_dependencies.js"
},
"repository": {

View File

@@ -1,99 +0,0 @@
#!/usr/bin/env node
/**
* TEMPORARY SCRIPT
* This script exists to migrate the legacy CHANGELOG.md to the canonical CHANGELOG.md
* TODO: Remove after migration is successful and committed.
*/
import * as fs from 'fs';
import lernaGetPackages = require('lerna-get-packages');
import * as _ from 'lodash';
import * as moment from 'moment';
import * as path from 'path';
import { exec as execAsync } from 'promisify-child-process';
import { constants } from './constants';
import { Changelog, Changes, UpdatedPackage } from './types';
import { utils } from './utils';
const HEADER_PRAGMA = '##';
(async () => {
const allLernaPackages = lernaGetPackages(constants.monorepoRootPath);
const publicLernaPackages = _.filter(allLernaPackages, pkg => !pkg.package.private);
for (const lernaPackage of publicLernaPackages) {
const changelogMdIfExists = getChangelogMdIfExists(lernaPackage.package.name, lernaPackage.location);
if (_.isUndefined(changelogMdIfExists)) {
throw new Error(`${lernaPackage.package.name} should have CHANGELOG.md b/c it's public. Add one.`);
}
const lines = changelogMdIfExists.split('\n');
const changelogs: Changelog[] = [];
let changelog: Changelog = {
version: '',
changes: [],
};
/**
* Example MD entry:
* ## v0.3.1 - _March 18, 2018_
*
* * Add TS types for `yargs` (#400)
*/
for (const line of lines) {
if (_.startsWith(line, `${HEADER_PRAGMA} `)) {
let version = line.substr(4).split(' - ')[0];
if (version === '0.x.x') {
version = utils.getNextPatchVersion(lernaPackage.package.version);
}
const dateStr = line.split('_')[1];
let date;
if (!_.includes(dateStr, 'TBD')) {
date = moment(dateStr, 'MMMM D, YYYY');
}
changelog = {
version,
changes: [],
};
if (!_.isUndefined(date)) {
changelog.timestamp = date.unix();
}
if (!_.includes(dateStr, 'TBD')) {
changelog.isPublished = true;
}
changelogs.push(changelog);
} else if (_.includes(line, '* ')) {
const note = line.split('* ')[1].split(' (#')[0];
const prChunk = line.split(' (#')[1];
let pr;
if (!_.isUndefined(prChunk)) {
pr = prChunk.split(')')[0];
}
const changes: Changes = {
note,
};
if (!_.isUndefined(pr)) {
changes.pr = _.parseInt(pr);
}
changelog.changes.push(changes);
}
}
const changelogJSON = JSON.stringify(changelogs, null, 4);
const changelogJSONPath = `${lernaPackage.location}/CHANGELOG.json`;
fs.writeFileSync(changelogJSONPath, changelogJSON);
await utils.prettifyAsync(changelogJSONPath, constants.monorepoRootPath);
}
})().catch(err => {
utils.log(err.stdout);
process.exit(1);
});
function getChangelogMdIfExists(packageName: string, location: string): string | undefined {
const changelogPath = path.join(location, 'CHANGELOG.md');
let changelogMd: string;
try {
changelogMd = fs.readFileSync(changelogPath, 'utf-8');
return changelogMd;
} catch (err) {
return undefined;
}
}

View File

@@ -91,7 +91,7 @@ export const postpublishUtils = {
);
},
async publishReleaseNotesAsync(cwd: string, packageName: string, version: string, assets: string[]): Promise<void> {
const notes = this.getReleaseNotes(packageName);
const notes = this.getReleaseNotes(packageName, version);
const releaseName = this.getReleaseName(packageName, version);
const tag = this.getTag(packageName, version);
const finalAssets = this.adjustAssetPaths(cwd, assets);
@@ -109,9 +109,8 @@ export const postpublishUtils = {
reuseDraftOnly: false,
assets,
});
this.updateChangelogIsPublished(packageName);
},
getReleaseNotes(packageName: string) {
getReleaseNotes(packageName: string, version: string) {
const packageNameWithNamespace = packageName.replace('@0xproject/', '');
const changelogJSONPath = path.join(
constants.monorepoRootPath,
@@ -122,33 +121,20 @@ export const postpublishUtils = {
const changelogJSON = fs.readFileSync(changelogJSONPath, 'utf-8');
const changelogs = JSON.parse(changelogJSON);
const latestLog = changelogs[0];
if (_.isUndefined(latestLog.isPublished)) {
let notes = '';
_.each(latestLog.changes, change => {
notes += `* ${change.note}`;
if (change.pr) {
notes += ` (${change.pr})`;
}
notes += `\n`;
});
return notes;
// We sanity check that the version for the changelog notes we are about to publish to Github
// correspond to the new version of the package.
if (version !== latestLog.version) {
throw new Error('Expected CHANGELOG.json latest entry version to coincide with published version.');
}
return 'N/A';
},
updateChangelogIsPublished(packageName: string) {
const packageNameWithNamespace = packageName.replace('@0xproject/', '');
const changelogJSONPath = path.join(
constants.monorepoRootPath,
'packages',
packageNameWithNamespace,
'CHANGELOG.json',
);
const changelogJSON = fs.readFileSync(changelogJSONPath, 'utf-8');
const changelogs = JSON.parse(changelogJSON);
const latestLog = changelogs[0];
latestLog.isPublished = true;
changelogs[0] = latestLog;
fs.writeFileSync(changelogJSONPath, JSON.stringify(changelogs, null, '\t'));
let notes = '';
_.each(latestLog.changes, change => {
notes += `* ${change.note}`;
if (change.pr) {
notes += ` (${change.pr})`;
}
notes += `\n`;
});
return notes;
},
getTag(packageName: string, version: string) {
return `${packageName}@${version}`;

View File

@@ -48,7 +48,7 @@ const semverNameToIndex: { [semver: string]: number } = {
}
const currentVersion = lernaPackage.package.version;
const shouldAddNewEntry = shouldAddNewChangelogEntry(changelogs);
const shouldAddNewEntry = shouldAddNewChangelogEntry(currentVersion, changelogs);
if (shouldAddNewEntry) {
// Create a new entry for a patch version with generic changelog entry.
const nextPatchVersion = utils.getNextPatchVersion(currentVersion);
@@ -174,12 +174,13 @@ function getChangelogJSONOrCreateIfMissing(packageName: string, changelogPath: s
}
}
function shouldAddNewChangelogEntry(changelogs: Changelog[]): boolean {
function shouldAddNewChangelogEntry(currentVersion: string, changelogs: Changelog[]): boolean {
if (_.isEmpty(changelogs)) {
return true;
}
const lastEntry = changelogs[0];
return !!lastEntry.isPublished;
const lastEntryCurrentVersion = lastEntry.version === currentVersion;
return lastEntryCurrentVersion;
}
function generateChangelogMd(changelogs: Changelog[]): string {

View File

@@ -13,7 +13,6 @@ export interface Changelog {
timestamp?: number;
version: string;
changes: Changes[];
isPublished?: boolean;
}
export enum SemVerIndex {

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.0.5",
@@ -32,8 +31,7 @@
"pr": 465
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
},
{
"version": "0.0.3",
@@ -43,8 +41,7 @@
"Move TS typings from devDependencies to dependencies since they are needed by the package user."
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.0.2",
@@ -57,7 +54,6 @@
"pr": 452
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.1.0",
@@ -23,7 +22,6 @@
"note": "Reorganized colors and added new ones"
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,7 +15,6 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.0.6",
@@ -17,8 +16,7 @@
"pr": 451
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
},
{
"version": "0.0.2",
@@ -28,13 +26,11 @@
"pr": 452
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.0.1",
"changes": [],
"timestamp": 1520434800,
"isPublished": true
"timestamp": 1520434800
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.8.3",
@@ -21,8 +20,7 @@
"pr": 465
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
},
{
"version": "0.8.0",
@@ -43,8 +41,7 @@
"note": "Ignore `ganache-core` dependency when using package in a browser environment."
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.7.0",
@@ -55,8 +52,7 @@
"pr": 437
}
],
"timestamp": 1520434800,
"isPublished": true
"timestamp": 1520434800
},
{
"version": "0.6.0",
@@ -70,8 +66,7 @@
"pr": 432
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.5.0",
@@ -81,8 +76,7 @@
"pr": 392
}
],
"timestamp": 1518706800,
"isPublished": true
"timestamp": 1518706800
},
{
"version": "0.4.1",
@@ -92,8 +86,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.4.0",
@@ -108,8 +101,7 @@
"pr": 363
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
},
{
"version": "0.3.6",
@@ -119,8 +111,7 @@
"pr": 303
}
],
"timestamp": 1517065200,
"isPublished": true
"timestamp": 1517065200
},
{
"version": "0.3.0",
@@ -129,8 +120,7 @@
"note": "Allow LedgerSubprovider to handle `eth_sign` in addition to `personal_sign` RPC requests"
}
],
"timestamp": 1514386800,
"isPublished": true
"timestamp": 1514386800
},
{
"version": "0.2.0",
@@ -140,7 +130,6 @@
"pr": 271
}
],
"timestamp": 1513695600,
"isPublished": true
"timestamp": 1513695600
}
]

View File

@@ -6,8 +6,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"timestamp": 1522658513,
@@ -16,8 +15,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.4.9",
@@ -26,8 +24,7 @@
"note": "Move devDeps to deps to fix missed dependency issue in published package."
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.4.8",
@@ -37,8 +34,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.4.7",
@@ -49,8 +45,7 @@
"pr": 354
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
},
{
"version": "0.4.0",
@@ -64,8 +59,7 @@
"Because our tools can be used in both a TS and JS environment, we want to make the private methods of any public facing interface show up at the bottom of auto-complete lists. Additionally, we wanted to remain consistent with respect to our usage of underscores in order to enforce this rule with a linter rule, rather then manual code reviews."
}
],
"timestamp": 1514386800,
"isPublished": true
"timestamp": 1514386800
},
{
"version": "0.3.0",
@@ -75,8 +69,7 @@
"pr": 265
}
],
"timestamp": 1513695600,
"isPublished": true
"timestamp": 1513695600
},
{
"version": "0.1.0",
@@ -88,7 +81,6 @@
"note": "Updated to TSLint v5.8.0, requiring several rule additions to keep our conventions aligned."
}
],
"timestamp": 1510585200,
"isPublished": true
"timestamp": 1510585200
}
]

View File

@@ -7,8 +7,7 @@
"pr": 485
}
],
"timestamp": 1522673609,
"isPublished": true
"timestamp": 1522673609
},
{
"timestamp": 1522658513,
@@ -17,8 +16,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.4.0",
@@ -32,8 +30,7 @@
"pr": 456
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.3.1",
@@ -42,8 +39,7 @@
"note": "Added `RawLogEntry` type."
}
],
"timestamp": 1520434800,
"isPublished": true
"timestamp": 1520434800
},
{
"version": "0.3.0",
@@ -61,8 +57,7 @@
"pr": 429
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.2.1",
@@ -72,8 +67,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.2.0",
@@ -83,7 +77,6 @@
"pr": 355
}
],
"timestamp": 1517929200,
"isPublished": true
"timestamp": 1517929200
}
]

View File

@@ -6,13 +6,11 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.0.2",
"changes": [],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
}
]

View File

@@ -7,8 +7,7 @@
"pr": 485
}
],
"timestamp": 1522673609,
"isPublished": true
"timestamp": 1522673609
},
{
"timestamp": 1522658513,
@@ -17,8 +16,7 @@
{
"note": "Dependencies updated"
}
],
"isPublished": true
]
},
{
"version": "0.4.3",
@@ -28,8 +26,7 @@
"Add `@types/node` to dependencies since `intervalUtils` has the `NodeJS` type as part of its public interface."
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.4.2",
@@ -39,8 +36,7 @@
"pr": 452
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.4.0",
@@ -54,8 +50,7 @@
"pr": 429
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.3.2",
@@ -65,8 +60,7 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
},
{
"version": "0.3.0",
@@ -77,8 +71,7 @@
"pr": 366
}
],
"timestamp": 1517756400,
"isPublished": true
"timestamp": 1517756400
},
{
"version": "0.2.0",
@@ -92,7 +85,6 @@
"pr": 312
}
],
"timestamp": 1516114800,
"isPublished": true
"timestamp": 1516114800
}
]

View File

@@ -16,8 +16,7 @@
"pr": 485
}
],
"timestamp": 1522673609,
"isPublished": true
"timestamp": 1522673609
},
{
"version": "0.4.0",
@@ -27,8 +26,7 @@
"pr": 465
}
],
"timestamp": 1522658513,
"isPublished": true
"timestamp": 1522658513
},
{
"version": "0.3.0",
@@ -47,8 +45,7 @@
"pr": 444
}
],
"timestamp": 1521298800,
"isPublished": true
"timestamp": 1521298800
},
{
"version": "0.2.0",
@@ -70,8 +67,7 @@
"pr": 413
}
],
"timestamp": 1520089200,
"isPublished": true
"timestamp": 1520089200
},
{
"version": "0.1.12",
@@ -81,7 +77,6 @@
"pr": 389
}
],
"timestamp": 1518102000,
"isPublished": true
"timestamp": 1518102000
}
]