[build] Always use style-code's writeIfModified to unify file updates
This commit is contained in:
1
platform/android/scripts/generate-style-code.js
Normal file → Executable file
1
platform/android/scripts/generate-style-code.js
Normal file → Executable file
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
|
||||
25
platform/darwin/scripts/generate-style-code.js
Normal file → Executable file
25
platform/darwin/scripts/generate-style-code.js
Normal file → Executable file
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
@@ -619,9 +620,9 @@ const templatesMD = ejs.compile(fs.readFileSync('platform/darwin/docs/guides/Til
|
||||
const lightH = ejs.compile(fs.readFileSync('platform/darwin/src/MGLLight.h.ejs', 'utf8'), {strict: true});
|
||||
const lightM = ejs.compile(fs.readFileSync('platform/darwin/src/MGLLight.mm.ejs', 'utf8'), {strict: true});
|
||||
const testLight = ejs.compile(fs.readFileSync('platform/darwin/test/MGLLightTest.mm.ejs', 'utf8'), { strict: true});
|
||||
fs.writeFileSync(`platform/darwin/src/MGLLight.h`, duplicatePlatformDecls(lightH({ properties: lightProperties, doc: lightDoc, type: lightType })));
|
||||
fs.writeFileSync(`platform/darwin/src/MGLLight.mm`, lightM({ properties: lightProperties, doc: lightDoc, type: lightType }));
|
||||
fs.writeFileSync(`platform/darwin/test/MGLLightTest.mm`, testLight({ properties: lightProperties, doc: lightDoc, type: lightType }));
|
||||
writeIfModified(`platform/darwin/src/MGLLight.h`, duplicatePlatformDecls(lightH({ properties: lightProperties, doc: lightDoc, type: lightType })));
|
||||
writeIfModified(`platform/darwin/src/MGLLight.mm`, lightM({ properties: lightProperties, doc: lightDoc, type: lightType }));
|
||||
writeIfModified(`platform/darwin/test/MGLLightTest.mm`, testLight({ properties: lightProperties, doc: lightDoc, type: lightType }));
|
||||
|
||||
|
||||
const layers = _(spec.layer.type.values).map((value, layerType) => {
|
||||
@@ -694,9 +695,9 @@ for (var layer of layers) {
|
||||
renamedPropertiesByLayerType[layer.type] = renamedProperties;
|
||||
}
|
||||
|
||||
fs.writeFileSync(`platform/darwin/src/${prefix}${camelize(layer.type)}${suffix}.h`, duplicatePlatformDecls(layerH(layer)));
|
||||
fs.writeFileSync(`platform/darwin/src/${prefix}${camelize(layer.type)}${suffix}.mm`, layerM(layer));
|
||||
fs.writeFileSync(`platform/darwin/test/${prefix}${camelize(layer.type)}${suffix}Tests.mm`, testLayers(layer));
|
||||
writeIfModified(`platform/darwin/src/${prefix}${camelize(layer.type)}${suffix}.h`, duplicatePlatformDecls(layerH(layer)));
|
||||
writeIfModified(`platform/darwin/src/${prefix}${camelize(layer.type)}${suffix}.mm`, layerM(layer));
|
||||
writeIfModified(`platform/darwin/test/${prefix}${camelize(layer.type)}${suffix}Tests.mm`, testLayers(layer));
|
||||
}
|
||||
|
||||
// Extract examples for guides from unit tests.
|
||||
@@ -734,25 +735,25 @@ global.guideExample = function (guide, exampleId, os) {
|
||||
return '```swift\n' + example + '\n```';
|
||||
};
|
||||
|
||||
fs.writeFileSync(`platform/ios/docs/guides/For Style Authors.md`, forStyleAuthorsMD({
|
||||
writeIfModified(`platform/ios/docs/guides/For Style Authors.md`, forStyleAuthorsMD({
|
||||
os: 'iOS',
|
||||
renamedProperties: renamedPropertiesByLayerType,
|
||||
layers: layers,
|
||||
}));
|
||||
fs.writeFileSync(`platform/macos/docs/guides/For Style Authors.md`, forStyleAuthorsMD({
|
||||
writeIfModified(`platform/macos/docs/guides/For Style Authors.md`, forStyleAuthorsMD({
|
||||
os: 'macOS',
|
||||
renamedProperties: renamedPropertiesByLayerType,
|
||||
layers: layers,
|
||||
}));
|
||||
fs.writeFileSync(`platform/ios/docs/guides/Using Style Functions at Runtime.md`, ddsGuideMD({
|
||||
writeIfModified(`platform/ios/docs/guides/Using Style Functions at Runtime.md`, ddsGuideMD({
|
||||
os: 'iOS',
|
||||
}));
|
||||
fs.writeFileSync(`platform/macos/docs/guides/Using Style Functions at Runtime.md`, ddsGuideMD({
|
||||
writeIfModified(`platform/macos/docs/guides/Using Style Functions at Runtime.md`, ddsGuideMD({
|
||||
os: 'macOS',
|
||||
}));
|
||||
fs.writeFileSync(`platform/ios/docs/guides/Tile URL Templates.md`, templatesMD({
|
||||
writeIfModified(`platform/ios/docs/guides/Tile URL Templates.md`, templatesMD({
|
||||
os: 'iOS',
|
||||
}));
|
||||
fs.writeFileSync(`platform/macos/docs/guides/Tile URL Templates.md`, templatesMD({
|
||||
writeIfModified(`platform/macos/docs/guides/Tile URL Templates.md`, templatesMD({
|
||||
os: 'macOS',
|
||||
}));
|
||||
|
||||
12
platform/darwin/scripts/update-examples.js
Normal file → Executable file
12
platform/darwin/scripts/update-examples.js
Normal file → Executable file
@@ -1,9 +1,12 @@
|
||||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
const execFileSync = require('child_process').execFileSync;
|
||||
const _ = require('lodash');
|
||||
|
||||
require('../../../scripts/style-code');
|
||||
|
||||
const examplesSrc = fs.readFileSync('platform/darwin/test/MGLDocumentationExampleTests.swift', 'utf8');
|
||||
|
||||
// Regex extracts the following block
|
||||
@@ -124,14 +127,7 @@ function completeExamples(os) {
|
||||
}
|
||||
|
||||
// Write out the modified file contents.
|
||||
if (src === newSrc) {
|
||||
console.log('Skipping', path);
|
||||
} else {
|
||||
console.log('Updating', path);
|
||||
if (['0', 'false'].indexOf(process.env.DRY_RUN || '0') !== -1) {
|
||||
fs.writeFileSync(path, newSrc);
|
||||
}
|
||||
}
|
||||
writeIfModified(path, newSrc)
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
1
scripts/generate-style-code.js
Normal file → Executable file
1
scripts/generate-style-code.js
Normal file → Executable file
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
|
||||
@@ -30,11 +30,13 @@ global.writeIfModified = function(filename, newContent) {
|
||||
try {
|
||||
const oldContent = fs.readFileSync(filename, 'utf8');
|
||||
if (oldContent == newContent) {
|
||||
console.warn(`* Skipping current file '${filename}'`);
|
||||
console.warn(`* Skipping file '${filename}' because it is up-to-date`);
|
||||
return;
|
||||
}
|
||||
} catch(err) {
|
||||
}
|
||||
fs.writeFileSync(filename, newContent);
|
||||
if (['0', 'false'].indexOf(process.env.DRY_RUN || '0') !== -1) {
|
||||
fs.writeFileSync(filename, newContent);
|
||||
}
|
||||
console.warn(`* Updating outdated file '${filename}'`);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user