mirror of
https://github.com/google/blockly.git
synced 2026-01-08 17:40:09 +01:00
Factor out licence stripping
Matches code in Blockly Games. No functional change.
This commit is contained in:
59
build.py
59
build.py
@@ -390,30 +390,7 @@ class Gen_compressed(threading.Thread):
|
||||
|
||||
code = HEADER + "\n" + json_data["compiledCode"]
|
||||
code = code.replace(remove, "")
|
||||
|
||||
# The Closure Compiler preserves licences.
|
||||
# Trim out Google's and MIT's (and nobody else's) Apache licences.
|
||||
# MIT's permission to do this is logged in Blockly issue 2412.
|
||||
LICENSE = re.compile("""/\\*
|
||||
|
||||
[\w ]+
|
||||
|
||||
Copyright \\d+ (Google Inc.|Massachusetts Institute of Technology)
|
||||
(https://developers.google.com/blockly/|All rights reserved.)
|
||||
|
||||
Licensed under the Apache License, Version 2.0 \(the "License"\);
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
\\*/""")
|
||||
code = re.sub(LICENSE, "", code)
|
||||
code = self.trim_licence(code)
|
||||
|
||||
stats = json_data["statistics"]
|
||||
original_b = stats["originalSize"]
|
||||
@@ -432,6 +409,40 @@ class Gen_compressed(threading.Thread):
|
||||
else:
|
||||
print("UNKNOWN ERROR")
|
||||
|
||||
def trim_licence(self, code):
|
||||
"""Strip out Google's and MIT's Apache licences.
|
||||
|
||||
JS Compiler preserves dozens of Apache licences in the Blockly code.
|
||||
Remove these if they belong to Google or MIT.
|
||||
MIT's permission to do this is logged in Blockly issue 2412.
|
||||
|
||||
Args:
|
||||
code: Large blob of compiled source code.
|
||||
|
||||
Returns:
|
||||
Code with Google's and MIT's Apache licences trimmed.
|
||||
"""
|
||||
apache2 = re.compile("""/\\*
|
||||
|
||||
[\\w: ]+
|
||||
|
||||
(Copyright \\d+ (Google Inc.|Massachusetts Institute of Technology))
|
||||
(https://developers.google.com/blockly/|All rights reserved.)
|
||||
|
||||
Licensed under the Apache License, Version 2.0 \\(the "License"\\);
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
\\*/""")
|
||||
return re.sub(apache2, "", code)
|
||||
|
||||
|
||||
class Gen_langfiles(threading.Thread):
|
||||
"""Generate JavaScript file for each natural language supported.
|
||||
|
||||
Reference in New Issue
Block a user