We have Dart code in `angular2` module that ought to be in its own package. Examples include Dart analysis plugins, and potentially the transformers (although transformers cannot be moved out just yet). However, this code is Dart-only and it doesn’t make sense to use JS directory layout for it. This commit introduces a sub-directory called `modules_dart`. All modules in this directory are pure Dart packages using standard pub directory layout. The code in these packages never gets transpiled. It is directly copied to `dist` unmodified, except an adjustment in relative paths in `pubspec.yaml` files.
31 lines
945 B
JavaScript
31 lines
945 B
JavaScript
// Cleans up pubspec.yaml files prior to publishing
|
|
// Usage: node pubspec_cleaner.js --pubspec-file=PATH_TO_PUBSPEC_YAML
|
|
|
|
fs = require('fs');
|
|
yaml = require('js-yaml');
|
|
yargs = require('yargs');
|
|
|
|
var pubspecFileOpt = 'pubspec-file';
|
|
var pubspecFile = yargs
|
|
.demand([pubspecFileOpt])
|
|
.argv[pubspecFileOpt];
|
|
|
|
var doc = yaml.safeLoad(fs.readFileSync(pubspecFile, 'utf8'));
|
|
|
|
// Pub does not allow publishing with dependency_overrides
|
|
delete doc['dependency_overrides'];
|
|
|
|
// Overwrite temporary values with real values
|
|
delete doc['version'];
|
|
delete doc['authors'];
|
|
delete doc['homepage']
|
|
|
|
var BASE_PACKAGE_JSON = require('../../package.json');
|
|
doc['version'] = BASE_PACKAGE_JSON.version;
|
|
doc['homepage'] = BASE_PACKAGE_JSON.homepage;
|
|
doc['authors'] = Object.keys(BASE_PACKAGE_JSON.contributors).map(function(name) {
|
|
return name + ' <' + BASE_PACKAGE_JSON.contributors[name] + '>';
|
|
});
|
|
|
|
fs.writeFileSync(pubspecFile, yaml.safeDump(doc));
|