Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 Name: Protocol Buffers | 1 Name: Protocol Buffers |
| 2 Short Name: protobuf | 2 Short Name: protobuf |
| 3 URL: https://github.com/google/protobuf | 3 URL: https://github.com/google/protobuf |
| 4 License: BSD | 4 License: BSD |
| 5 License File: LICENSE | 5 License File: LICENSE |
| 6 Version: 3.0.0-beta-3 | 6 Version: (intermediate version) |
|
Peter Kasting
2016/11/10 20:42:04
Should be 3.1.0 (basically, use whatever is in pro
jbriance
2016/11/10 21:36:54
Ok, I'll update the change.
| |
| 7 Revision: 3470b6895aa659b7559ed678e029a5338e535f14 | 7 Revision: ce5160b83b03c29fd27fc9f58370092b321bf2bc |
| 8 Security Critical: yes | 8 Security Critical: yes |
| 9 | 9 |
| 10 Steps used to create the current version: | 10 Steps used to create the current version: |
| 11 1. Pull the release from https://github.com/google/protobuf/releases | 11 1. Pull the release from https://github.com/google/protobuf/releases |
| 12 2. Add build files (BUILD.gn, proto_library.gni, protobuf.gyp, | 12 2. Add build files (BUILD.gn, proto_library.gni). |
| 13 protobuf_lite.gypi, protobuf_nacl.gyp). | |
| 14 | 13 |
| 15 Be sure to update the list of source files, as additional .cc files and | 14 Be sure to update the list of source files, as additional .cc files and |
| 16 headers might have been added -- you need to find the transitive closure of | 15 headers might have been added -- you need to find the transitive closure of |
| 17 include files required by targets. | 16 include files required by targets. |
| 18 | 17 |
| 19 Other things to care about are defines required by protobuf on various | 18 Other things to care about are defines required by protobuf on various |
| 20 platforms, warnings generated by compilers, and new dependencies introduced. | 19 platforms, warnings generated by compilers, and new dependencies introduced. |
| 21 3. Get open-source library six.py from https://pypi.python.org/pypi/six/ and add | 20 3. Get open-source library six.py from https://pypi.python.org/pypi/six/ and add |
| 22 it to protobuf/third_party/six/six.py. | 21 it to protobuf/third_party/six/six.py. |
| 23 4. Apply patches in patches/ (see the description below): | 22 4. Apply patches in patches/ (see the description below): |
| 24 | 23 |
| 25 $ for patch in patches/*; do patch -s -p1 < $patch; done | 24 $ for patch in patches/*; do patch -s -p1 < $patch; done |
| 26 | 25 |
| 27 For future releases, it will be worth looking into which patches still need | 26 For future releases, it will be worth looking into which patches still need |
|
Peter Kasting
2016/11/10 20:42:04
Nit: Might want to note here that updated versions
jbriance
2016/11/10 21:36:54
Ok, will do.
| |
| 28 to be applied. | 27 to be applied. |
| 29 5. Generate descriptor_pb2.py using something like the following steps. Make | 28 5. Generate descriptor_pb2.py using something like the following steps. Make |
| 30 sure you've regenerated your buildfiles and will build protoc from the | 29 sure you've regenerated your buildfiles and will build protoc from the |
| 31 newly-modified sources above. | 30 newly-modified sources above. |
| 32 | 31 |
| 33 $ cd $SRC_DIR | 32 $ cd $SRC_DIR |
| 34 $ ninja -C out/Debug protoc | 33 $ ninja -C out/Debug protoc |
| 35 $ cd third_party/protobuf/src | 34 $ cd third_party/protobuf/src |
| 36 $ ../../../out/Debug/protoc --python_out=../python google/protobuf/descriptor .proto | 35 $ ../../../out/Debug/protoc --python_out=../python google/protobuf/descriptor .proto |
| 37 | 36 |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 48 upstreaming the removal of static initializers is in progress: | 47 upstreaming the removal of static initializers is in progress: |
| 49 https://github.com/google/protobuf/issues/1404 | 48 https://github.com/google/protobuf/issues/1404 |
| 50 | 49 |
| 51 - 0004-fix-integer-types-and-shared-library-exports.patch | 50 - 0004-fix-integer-types-and-shared-library-exports.patch |
| 52 | 51 |
| 53 This patch makes protobuf int64 to be int64_t (as opposed to long long in | 52 This patch makes protobuf int64 to be int64_t (as opposed to long long in |
| 54 upstream), and similarly for other integer types. It also allows exporting | 53 upstream), and similarly for other integer types. It also allows exporting |
| 55 protobuf symbols in Linux .so libraries, so that protobuf can be built as a | 54 protobuf symbols in Linux .so libraries, so that protobuf can be built as a |
| 56 component (see http://crrev.com/179806). | 55 component (see http://crrev.com/179806). |
| 57 | 56 |
| 58 - 0005-fix-include-js-generator.protobuf | |
| 59 | |
| 60 During merge with internal branch, the <> in one of the #includes were | |
| 61 accidentally replaced with "", which results in a failure in checkdeps. | |
| 62 | |
| 63 Fixed in https://github.com/google/protobuf/pull/1547. | |
| 64 | |
| 65 - 0007-uninline_googleonce.patch | 57 - 0007-uninline_googleonce.patch |
| 66 - 0008-uninline_get_empty_string.patch | 58 - 0008-uninline_get_empty_string.patch |
| 67 - 0009-uninline-arenastring.patch | 59 - 0009-uninline-arenastring.patch |
| 68 - 0010-uninline-generated-code.patch | 60 - 0010-uninline-generated-code.patch |
| 69 | 61 |
| 70 These patches uninline some functions, resulting in a significant reduction | 62 These patches uninline some functions, resulting in a significant reduction |
| 71 (somewhere between 500 KB and 1 MB) of binary size. | 63 (somewhere between 500 KB and 1 MB) of binary size. |
| 72 | |
| 73 - 0011-libprotobuf_export.patch | |
| 74 | |
| 75 During merge with internal branch, the dll export attribute was accidentally | |
| 76 removed in C++11 mode. | |
| 77 | |
| 78 Fixed in https://github.com/google/protobuf/pull/1549 | |
| OLD | NEW |