Skip to content

Commit

Permalink
build: try to make output stabler during serialization
Browse files Browse the repository at this point in the history
  • Loading branch information
Long Ho committed Sep 17, 2020
1 parent 4089740 commit 287f504
Show file tree
Hide file tree
Showing 4 changed files with 423 additions and 411 deletions.
6 changes: 6 additions & 0 deletions packages/intl-datetimeformat/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -213,9 +213,11 @@ generate_src_file(
"//packages/ecma402-abstract:dist",
"//packages/ecma402-abstract:types",
"@npm//@types/fs-extra",
"@npm//@types/json-stable-stringify",
"@npm//@types/minimist",
"@npm//@types/node",
"@npm//fs-extra",
"@npm//json-stable-stringify",
"@npm//minimist",
"@tzdata//:zdumps",
],
Expand All @@ -241,9 +243,11 @@ ts_node(
"//packages/ecma402-abstract:dist",
"//packages/ecma402-abstract:types",
"@npm//@types/fs-extra",
"@npm//@types/json-stable-stringify",
"@npm//@types/minimist",
"@npm//@types/node",
"@npm//fs-extra",
"@npm//json-stable-stringify",
"@npm//minimist",
"@tzdata//:zdumps",
],
Expand All @@ -269,9 +273,11 @@ ts_node(
"//packages/ecma402-abstract:dist",
"//packages/ecma402-abstract:types",
"@npm//@types/fs-extra",
"@npm//@types/json-stable-stringify",
"@npm//@types/minimist",
"@npm//@types/node",
"@npm//fs-extra",
"@npm//json-stable-stringify",
"@npm//minimist",
"@tzdata//:zdumps",
],
Expand Down
16 changes: 10 additions & 6 deletions packages/intl-datetimeformat/scripts/process-zdump.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import {promisify} from 'util';
import {outputFileSync} from 'fs-extra';
import {UnpackedData, ZoneData} from '../src/types';
import {pack} from '../src/packer';
import stringify from 'json-stable-stringify';

const readFile = promisify(_readFile);
const SPACE_REGEX = /[\s\t]+/;
Expand Down Expand Up @@ -299,12 +300,11 @@ function utTimeToSeconds(utTime: string) {

const LINE_REGEX = /^(.*?)\s+(.*?) UTC? = (.*?) isdst=(0|1) gmtoff=(.*?)$/i;

async function processZone(
input: string,
function processZone(
content: string,
{zones, abbrvs, offsets}: UnpackedData,
golden?: string
) {
const content = await readFile(input, 'utf8');
const lines = content.split('\n');
for (const line of lines) {
if (line.endsWith('NULL')) {
Expand Down Expand Up @@ -361,10 +361,12 @@ async function main(args: minimist.ParsedArgs) {
offsets,
};

await Promise.all(
inputs.map((input: string) => processZone(input, data, golden))
const contents = await Promise.all(
inputs.map((input: string) => readFile(input, 'utf8'))
);

processZone(contents.join('\n'), data, golden);

if (polyfill) {
outputFileSync(
output,
Expand All @@ -379,7 +381,9 @@ if ('DateTimeFormat' in Intl && Intl.DateTimeFormat.__addTZData) {
output,
`// @generated
// prettier-ignore
export default ${JSON.stringify(pack(data), undefined, 2)}`
export default ${stringify(pack(data), {
space: 2,
})}`
);
}
}
Expand Down

0 comments on commit 287f504

Please sign in to comment.