Skip to content

Commit 192e3b2

Browse files
committed
Fix: Enable ADVANCED_OPTIMIZATIONS in Closure Compiler
1 parent a428c58 commit 192e3b2

File tree

5 files changed

+26
-25
lines changed

5 files changed

+26
-25
lines changed

commonjs/export.js

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,16 @@ goog.require('jspb.Message');
1616
goog.require('jspb.Map');
1717

1818
if (typeof exports === 'object') {
19-
exports.Map = jspb.Map;
20-
exports.Message = jspb.Message;
21-
exports.BinaryReader = jspb.BinaryReader;
22-
exports.BinaryWriter = jspb.BinaryWriter;
23-
exports.ExtensionFieldInfo = jspb.ExtensionFieldInfo;
24-
exports.ExtensionFieldBinaryInfo = jspb.ExtensionFieldBinaryInfo;
25-
26-
// These are used by generated code but should not be used directly by
27-
// clients.
28-
exports.exportSymbol = goog.exportSymbol;
29-
exports.inherits = goog.inherits;
30-
exports.object = {extend: goog.object.extend};
31-
exports.typeOf = goog.typeOf;
19+
exports['Map'] = jspb.Map;
20+
exports['Message'] = jspb.Message;
21+
exports['BinaryReader'] = jspb.BinaryReader;
22+
exports['BinaryWriter'] = jspb.BinaryWriter;
23+
exports['ExtensionFieldInfo'] = jspb.ExtensionFieldInfo;
24+
exports['ExtensionFieldBinaryInfo'] = jspb.ExtensionFieldBinaryInfo;
25+
26+
// These are used by generated code but should not be used directly by clients.
27+
exports['exportSymbol'] = goog.exportSymbol;
28+
exports['inherits'] = goog.inherits;
29+
exports['object'] = {extend: goog.object.extend};
30+
exports['typeOf'] = goog.typeOf;
3231
}

commonjs/export_testdeps.js

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,5 @@ goog.provide('jspb.ExportTestDeps');
1111

1212
goog.require('goog.crypt.base64');
1313
goog.require('goog.testing.PropertyReplacer');
14-
goog.require('jspb.arith.Int64');
15-
goog.require('jspb.arith.UInt64');
16-
goog.require('jspb.BinaryEncoder');
17-
goog.require('jspb.BinaryDecoder');
18-
goog.require('jspb.BinaryWriter');
19-
goog.require('jspb.utils');
2014

2115
exports.goog = goog;
22-
exports.jspb = jspb;

commonjs/rewrite_tests_for_commonjs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ console.log("var global = Function('return this')();");
6767
console.log("var googleProtobuf = require('google-protobuf');");
6868
console.log("var testdeps = require('testdeps_commonjs');");
6969
console.log("global.goog = testdeps.goog;");
70-
console.log("global.jspb = testdeps.jspb;");
70+
console.log("global.jspb = googleProtobuf.jspb;");
7171
console.log("var asserts = require('closure_asserts_commonjs');");
7272
console.log("");
7373
console.log("// Bring asserts into the global namespace.");

gulpfile.js

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,12 @@ function genproto_group3_commonjs_strict(cb) {
118118
}
119119

120120

121-
function getClosureCompilerCommand(exportsFile, outputFile) {
121+
function getClosureCompilerCommand(exportsFile, outputFile, keepSymbols) {
122+
var compilationLevel = 'ADVANCED_OPTIMIZATIONS';
123+
if (keepSymbols === true) {
124+
compilationLevel = 'SIMPLE_OPTIMIZATIONS';
125+
}
126+
122127
const closureLib = 'node_modules/google-closure-library';
123128
return [
124129
'node_modules/.bin/google-closure-compiler',
@@ -127,6 +132,8 @@ function getClosureCompilerCommand(exportsFile, outputFile) {
127132
'--js=message.js', '--js=binary/arith.js', '--js=binary/constants.js',
128133
'--js=binary/decoder.js', '--js=binary/encoder.js', '--js=binary/reader.js',
129134
'--js=binary/utils.js', '--js=binary/writer.js', `--js=${exportsFile}`,
135+
`--compilation_level=${compilationLevel}"`, '--generate_exports',
136+
'--export_local_property_definitions"',
130137
`--entry_point=${exportsFile}`, `> ${outputFile}`
131138
].join(' ');
132139
}
@@ -145,7 +152,8 @@ function commonjs_asserts(cb) {
145152
'mkdir -p commonjs_out/test_node_modules && ' +
146153
getClosureCompilerCommand(
147154
'commonjs/export_asserts.js',
148-
'commonjs_out/test_node_modules/closure_asserts_commonjs.js'),
155+
'commonjs_out/test_node_modules/closure_asserts_commonjs.js',
156+
true),
149157
make_exec_logging_callback(cb));
150158
}
151159

@@ -154,7 +162,8 @@ function commonjs_testdeps(cb) {
154162
'mkdir -p commonjs_out/test_node_modules && ' +
155163
getClosureCompilerCommand(
156164
'commonjs/export_testdeps.js',
157-
'commonjs_out/test_node_modules/testdeps_commonjs.js'),
165+
'commonjs_out/test_node_modules/testdeps_commonjs.js',
166+
true),
158167
make_exec_logging_callback(cb));
159168
}
160169

message_test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -746,7 +746,7 @@ describe('Message test suite', function() {
746746
/** @suppress {visibility} */ function() {
747747
var data =
748748
new proto.jspb.test.HasExtensions(['str1', {'a_key': 'an_object'}]);
749-
assertEquals('an_object', data.extensionObject_['a_key']);
749+
assertEquals('an_object', jspb.Message.getField(data,['a_key']));
750750
});
751751

752752
it('testToObject_hasExtensionField', function() {

0 commit comments

Comments
 (0)