diff --git a/packages/xmlbuilder/.gitignore b/packages/xmlbuilder/.gitignore
deleted file mode 100644
index 677a6fc263..0000000000
--- a/packages/xmlbuilder/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-.build*
diff --git a/packages/xmlbuilder/.npm/package/.gitignore b/packages/xmlbuilder/.npm/package/.gitignore
deleted file mode 100644
index 3c3629e647..0000000000
--- a/packages/xmlbuilder/.npm/package/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-node_modules
diff --git a/packages/xmlbuilder/.npm/package/README b/packages/xmlbuilder/.npm/package/README
deleted file mode 100644
index 3d492553a4..0000000000
--- a/packages/xmlbuilder/.npm/package/README
+++ /dev/null
@@ -1,7 +0,0 @@
-This directory and the files immediately inside it are automatically generated
-when you change this package's NPM dependencies. Commit the files in this
-directory (npm-shrinkwrap.json, .gitignore, and this README) to source control
-so that others run the same versions of sub-dependencies.
-
-You should NOT check in the node_modules directory that Meteor automatically
-creates; if you are using git, the .gitignore file tells git to ignore it.
diff --git a/packages/xmlbuilder/.npm/package/npm-shrinkwrap.json b/packages/xmlbuilder/.npm/package/npm-shrinkwrap.json
deleted file mode 100644
index d661655a54..0000000000
--- a/packages/xmlbuilder/.npm/package/npm-shrinkwrap.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "lockfileVersion": 1,
- "dependencies": {
- "@oozcitak/dom": {
- "version": "1.15.2",
- "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.2.tgz",
- "integrity": "sha512-HmpUeiqNZIXaV7/lvEK89w2g6VfQjqY355umhVK/pyTHZw9xINbSrfYIGBJbpli5hYmffHCFDRVVBNYhlYgPkw=="
- },
- "@oozcitak/infra": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.5.tgz",
- "integrity": "sha512-o+zZH7M6l5e3FaAWy3ojaPIVN5eusaYPrKm6MZQt0DKNdgXa2wDYExjpP0t/zx+GoQgQKzLu7cfD8rHCLt8JrQ=="
- },
- "@oozcitak/url": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.0.tgz",
- "integrity": "sha512-LGrMeSxeLzsdaitxq3ZmBRVOrlRRQIgNNci6L0VRnOKlJFuRIkNm4B+BObXPCJA6JT5bEJtrrwjn30jueHJYZQ==",
- "dependencies": {
- "@oozcitak/infra": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.3.tgz",
- "integrity": "sha512-9O2wxXGnRzy76O1XUxESxDGsXT5kzETJPvYbreO4mv6bqe1+YSuux2cZTagjJ/T4UfEwFJz5ixanOqB0QgYAag==",
- "dependencies": {
- "@oozcitak/util": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-1.0.1.tgz",
- "integrity": "sha512-dFwFqcKrQnJ2SapOmRD1nQWEZUtbtIy9Y6TyJquzsalWNJsKIPxmTI0KG6Ypyl8j7v89L2wixH9fQDNrF78hKg=="
- }
- }
- },
- "@oozcitak/util": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-1.0.2.tgz",
- "integrity": "sha512-4n8B1cWlJleSOSba5gxsMcN4tO8KkkcvXhNWW+ADqvq9Xj+Lrl9uCa90GRpjekqQJyt84aUX015DG81LFpZYXA=="
- }
- }
- },
- "@oozcitak/util": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.0.0.tgz",
- "integrity": "sha512-+9Hq6yuoq/3TRV/n/xcpydGBq2qN2/DEDMqNTG7rm95K6ZE2/YY/sPyx62+1n8QsE9O26e5M1URlXsk+AnN9Jw=="
- },
- "xmlbuilder2": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-1.3.0.tgz",
- "integrity": "sha512-psOhoujlyalhUaIer1bgXCaDL424+tTcfZRDEGsD+Rydext6S/mlj2bNETNIUuRsOkJ8nMC72bB5idQeG/JvWg=="
- }
- }
-}
diff --git a/packages/xmlbuilder/README.md b/packages/xmlbuilder/README.md
deleted file mode 100644
index 4d9480114a..0000000000
--- a/packages/xmlbuilder/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# xmlbuilder
-[Source code of released version](https://github.com/meteor/meteor/tree/master/packages/xmlbuilder) | [Source code of development version](https://github.com/meteor/meteor/tree/devel/packages/xmlbuilder)
-***
-
-This is an internal Meteor package.
\ No newline at end of file
diff --git a/packages/xmlbuilder/package.js b/packages/xmlbuilder/package.js
deleted file mode 100644
index f360c3eb03..0000000000
--- a/packages/xmlbuilder/package.js
+++ /dev/null
@@ -1,20 +0,0 @@
-Package.describe({
- summary: "An XML builder for node.js similar to java-xmlbuilder.",
- version: '2.5.16'
-});
-
-Npm.depends({
- 'xmlbuilder2': '1.3.0'
-});
-
-Package.onUse(function (api) {
- api.addFiles(['xmlbuilder.js'], 'server');
-
- api.export('XmlBuilder', 'server');
-});
-
-Package.onTest(function (api) {
- api.use(['tinytest', 'xmlbuilder', 'underscore']);
-
- api.addFiles('xmlbuilder_tests.js', 'server');
-});
\ No newline at end of file
diff --git a/packages/xmlbuilder/xmlbuilder.js b/packages/xmlbuilder/xmlbuilder.js
deleted file mode 100644
index 8140d6b10a..0000000000
--- a/packages/xmlbuilder/xmlbuilder.js
+++ /dev/null
@@ -1 +0,0 @@
-XmlBuilder = Npm.require('xmlbuilder2');
diff --git a/packages/xmlbuilder/xmlbuilder_tests.js b/packages/xmlbuilder/xmlbuilder_tests.js
deleted file mode 100644
index fe89d5430a..0000000000
--- a/packages/xmlbuilder/xmlbuilder_tests.js
+++ /dev/null
@@ -1,141 +0,0 @@
-// this test case mimics about 80 precent of the code used to build the
-// config.xml file from the following file (meteor/tools/cordova/builder.js)
-// and it exercises all the funcitons used from the xmlbuilder2 api
-Tinytest.add("xmlbuilder - config.xml file generation", function (test) {
- const expectedResult = `XmlBuilderTestThis is a Meteor test caseMeteor Developer`;
-
- const accessRules = {
- 'tel:*': { type: 'intent' },
- 'geo:*': { type: 'intent' },
- 'mailto:*': { type: 'intent' },
- 'sms:*': { type: 'intent' },
- 'market:*': { type: 'intent' },
- 'itms:*': { type: 'intent' },
- 'itms-apps:*': { type: 'intent' },
- 'http://localhost': { type: 'navigation' }
- };
-
- const metadata = {
- id: 'com.meteor.xmlbuilder_test',
- version: '0.0.1',
- author: 'Meteor Developer',
- contentUrl: `http://localhost:3000/`
- };
-
- const additionalConfiguration = {
- global: {
- 'webviewbounce': false,
- 'DisallowOverscroll': true
- },
- platform: {
- ios: {},
- android: {}
- }
- };
-
- const custom = [``];
- let config = XmlBuilder.create({ version: '1.0' }).ele('widget');
-
- // Set the root attributes
- _.each({
- id: metadata.id,
- version: metadata.version,
- 'android-versionCode': '28',
- 'ios-CFBundleVersion': null,
- xmlns: 'http://www.w3.org/ns/widgets',
- 'xmlns:cdv': 'http://cordova.apache.org/ns/1.0'
- }, (value, key) => {
- if (value) {
- config.att(key, value);
- }
- });
-
- // Set the metadata
- config.ele('name').txt('XmlBuilderTest');
- config.ele('description').txt('This is a Meteor test case');
- config.ele('author', {
- href: 'http://cordova.io',
- email: 'dev@cordova.apache.org'
- }).txt(metadata.author);
-
- // Set the additional global configuration preferences
- _.each(additionalConfiguration.global, (value, key) => {
- config.ele('preference', {
- name: key,
- value: value.toString()
- });
- });
-
- // Set custom tags into widget element
- _.each(custom, elementSet => {
- const tag = config.ele(elementSet);
- });
-
- config.ele('content', { src: metadata.contentUrl });
-
- // Copy all the access rules
- _.each(accessRules, (options, pattern) => {
- const type = options.type;
- options = _.omit(options, 'type');
-
- if (type === 'intent') {
- config.ele('allow-intent', { href: pattern });
- } else if (type === 'navigation') {
- config.ele('allow-navigation', _.extend({ href: pattern }, options));
- } else {
- config.ele('access', _.extend({ origin: pattern }, options));
- }
- });
-
- const platformElement = {
- ios: config.ele('platform', { name: 'ios' }),
- android: config.ele('platform', { name: 'android' })
- }
-
- // Set the additional platform-specific configuration preferences
- _.each(additionalConfiguration.platform, (prefs, platform) => {
- _.each(prefs, (value, key) => {
- platformElement[platform].ele('preference', {
- name: key,
- value: value.toString()
- });
- });
- });
-
- const formattedXmlConfig = config.end();
- test.equal(formattedXmlConfig, expectedResult);
-});
-
-Tinytest.add("xmlbuilder - create() function", function (test) {
- const expectedResult = '';
-
- let widgetNode = XmlBuilder.create({ version: '1.0' }).ele('widget');
- let formattedXmlConfig = widgetNode.end();
- test.equal(formattedXmlConfig, expectedResult);
-
- widgetNode = XmlBuilder.create().ele('widget');
- formattedXmlConfig = widgetNode.end();
- test.equal(formattedXmlConfig, expectedResult);
-
-});
-
-Tinytest.add("xmlbuilder - att() function", function (test) {
- const expectedResult = '';
-
- let config = XmlBuilder.create().ele('widget');
- config.att({ key: 'test' });
- let formattedXmlConfig = config.end();
- test.equal(formattedXmlConfig, expectedResult);
-});
-
-Tinytest.add("xmlbuilder - ele() function", function (test) {
- let expectedResult = 'XmlBuilderTest';
- let config = XmlBuilder.create().ele('widget');
- config.ele('name').txt('XmlBuilderTest');
-
- const formattedXmlConfig = config.end();
- test.equal(formattedXmlConfig, expectedResult);
-});
-
-
-
diff --git a/tools/tool-env/isopackets.js b/tools/tool-env/isopackets.js
index e88ab878ac..f4df5c2882 100644
--- a/tools/tool-env/isopackets.js
+++ b/tools/tool-env/isopackets.js
@@ -66,7 +66,6 @@ export const ISOPACKETS = {
// cordova-support
'boilerplate-generator',
'webapp-hashing',
- 'xmlbuilder',
// cordova-support, logging
'logging',
// support for childProcess.sendMessage(topic, payload)
@@ -116,13 +115,13 @@ export function loadIsopackage(packageName, isopacketName = "combined") {
if (_.has(ISOPACKETS, isopacketName)) {
throw Error("Can't load isopacket before it has been verified: "
- + isopacketName);
+ + isopacketName);
}
throw Error("Unknown isopacket: " + isopacketName);
}();
- if (! _.has(isopacket, packageName)) {
+ if (!_.has(isopacket, packageName)) {
throw new Error("Unknown isopacket dependency: " + packageName);
}
@@ -144,7 +143,7 @@ export function ensureIsopacketsLoadable() {
// If we're not running from checkout, then there's nothing to build and we
// can declare that all isopackets are loadable.
- if (! files.inCheckout()) {
+ if (!files.inCheckout()) {
_.each(ISOPACKETS, function (packages, name) {
loadedIsopackets[name] = null;
});
@@ -167,17 +166,17 @@ export function ensureIsopacketsLoadable() {
var isopacketRoot = isopacketPath(isopacketName);
var existingBuildinfo = files.readJSONOrNull(
files.pathJoin(isopacketRoot, 'isopacket-buildinfo.json'));
- var needRebuild = ! existingBuildinfo;
- if (! needRebuild && existingBuildinfo.builtBy !== compiler.BUILT_BY) {
+ var needRebuild = !existingBuildinfo;
+ if (!needRebuild && existingBuildinfo.builtBy !== compiler.BUILT_BY) {
needRebuild = true;
}
- if (! needRebuild) {
+ if (!needRebuild) {
var watchSet = watch.WatchSet.fromJSON(existingBuildinfo.watchSet);
- if (! watch.isUpToDate(watchSet)) {
+ if (!watch.isUpToDate(watchSet)) {
needRebuild = true;
}
}
- if (! needRebuild) {
+ if (!needRebuild) {
// Great, it's loadable without a rebuild.
loadedIsopackets[isopacketName] = null;
return;
@@ -185,7 +184,7 @@ export function ensureIsopacketsLoadable() {
// We're going to need to build! Make a catalog and loader if we haven't
// yet.
- if (! isopacketBuildContext) {
+ if (!isopacketBuildContext) {
isopacketBuildContext = makeIsopacketBuildContext();
}
@@ -209,7 +208,7 @@ export function ensureIsopacketsLoadable() {
return;
}
- var builder = new Builder({outputPath: isopacketRoot});
+ var builder = new Builder({ outputPath: isopacketRoot });
builder.writeJson('isopacket-buildinfo.json', {
builtBy: compiler.BUILT_BY,
watchSet: built.watchSet.toJSON()
@@ -234,7 +233,7 @@ export function ensureIsopacketsLoadable() {
// Returns a new all-local-packages catalog to be used for building isopackets.
var newIsopacketBuildingCatalog = function () {
- if (! files.inCheckout()) {
+ if (!files.inCheckout()) {
throw Error("No need to build isopackets unless in checkout!");
}