Commit Graph

629 Commits

Author SHA1 Message Date
Hao Nguyen
634d704d23 Merge branch '3.8.x' into 3.8.x-201905311515 2019-05-31 15:18:39 -07:00
Hao Nguyen
044c766fd4 Down integrate to GitHub 2019-05-30 13:31:15 -07:00
Hao Nguyen
b0d648664d Update protobuf version 2019-05-21 14:07:13 -07:00
Hao Nguyen
2352a30e66 Revert "Update protobuf version"
This reverts commit 6d96493b31.
2019-05-21 13:49:06 -07:00
Hao Nguyen
6d96493b31 Update protobuf version 2019-05-21 13:31:01 -07:00
Hao Nguyen
66540237ca Down integrate to GitHub 2019-05-17 12:01:17 -07:00
Hao Nguyen
a1c8868344 Down integrate to GitHub 2019-05-13 10:52:29 -07:00
Hao Nguyen
1d4e959374 Down integrate to GitHub 2019-05-03 14:33:43 -07:00
Hao Nguyen
37a89f8e1a Update version to 3.8.0 2019-04-23 16:14:52 -07:00
Hao Nguyen
711e4b4d6c Down integrate to GitHub 2019-04-22 17:12:12 -07:00
Hao Nguyen
9e3f053fcc Down integrate to GitHub 2019-04-17 12:57:37 -07:00
Hao Nguyen
51b0225599 Down integrate to Github 2019-04-10 13:00:25 -07:00
Hao Nguyen
6dc9832aab Merge branch 'master' of https://github.com/protocolbuffers/protobuf into sync201904090622 2019-04-09 06:25:48 -07:00
Hao Nguyen
176f7db11d Down integrate to Github 2019-04-09 06:23:32 -07:00
Hao Nguyen
c163a2d1a4 Revert accidentally commit 2019-04-05 17:09:42 -07:00
Hao Nguyen
86bc27d220 Merge branch 'master' of https://github.com/protocolbuffers/protobuf 2019-04-05 16:41:24 -07:00
Hao Nguyen
a48a574f7e Down integrate to Github 2019-04-05 16:39:18 -07:00
Adam Cozzette
8645d893ab Merge branch '3.7.x' into merge-3-7-x 2019-03-26 14:32:20 -07:00
Paul Yang
6973c3a504
Update version number to 3.7.1 (#5947)
* Update version number to 3.7.1

* Update version number in port_def.inc
2019-03-26 09:30:12 -07:00
Hao Nguyen
3a3956e8a2
Merge pull request #5921 from haon4/contributing
Down integrate to Github
2019-03-21 15:24:08 -07:00
Mickaël Schoentgen
ed10d9cf6d Fix several DeprecationWarning: invalid escape sequence (#5897)
Signed-off-by: Mickaël Schoentgen <contact@tiger-222.fr>
2019-03-21 11:51:14 -07:00
Hao Nguyen
507c6df017 Undelete python/google/protobuf/pyext/proto2_api_test.proto that was accidentally removed from file_list 2019-03-20 12:04:57 -07:00
Hao Nguyen
2f864fdfdf Down integrate to Github 2019-03-20 11:45:01 -07:00
Hao Nguyen
d0f91c863a
Down integrate to Github (#5839)
* Down integrate to github
2019-03-06 12:39:12 -08:00
Bo Yang
cb6fa92ee8 Merge branch '3.7.x' 2019-03-04 10:18:18 -08:00
Paul Yang
582743bf40
Update version number to 3.7.0 (#5793)
* Update version number to 3.7.0

* Add php/releash.sh to Makefile.am

* Make cpp_distcheck exit on fail
2019-02-28 12:55:14 -08:00
Peter Ebden
2adde396ed Fix for construction of messages in the C++ Python implementation. (#2299)
* Fix construction of messages using the C++ Python implementation when a map field is passed from one message to another.

* Add a test on message map field construction

* python 3 support

* review comments

* add test

* Collapse code into one
2019-02-27 16:41:33 -08:00
Oliver Bristow
0de6577b7d Add EnumTypeWrapper.__getattr__ to access values (#5234) 2019-02-27 16:39:51 -08:00
Paul Yang
bf32b36ab8
Merge pull request #5765 from BSBandme/integration
down integration from internal
2019-02-26 22:11:08 -08:00
Yilun Chong
603020940a fix mac python cpp building (#5786) 2019-02-26 15:51:15 -08:00
Yilun Chong
7bcb522287
fix mac python cpp building (#5786) 2019-02-26 15:47:09 -08:00
grindhold
3a538fc91e pyext: missing cast to constant char* (#5713)
We need to cast to a constant charpointer here.
2019-02-26 15:09:21 -08:00
Yilun Chong
429d2ae19f
Merge branch 'master' into integration 2019-02-24 17:17:17 -08:00
Bo Yang
b52754b719 Update version to 3.7.0rc3 2019-02-22 11:31:48 -08:00
Yilun Chong
d8c2501b43 down integration from internal 2019-02-22 18:13:33 +08:00
Xiang Dai
e479410564 delete all duplicate empty blanks (#5758)
Signed-off-by: Xiang Dai <764524258@qq.com>
2019-02-20 19:28:50 -08:00
Paul Yang
c7b3392201
Update version to 3.7.0 (#5749)
* Update version to 3.7.0

* Update version number for java bom
2019-02-19 15:54:45 -08:00
Paul Yang
5b4ac53c97
Add several fixes for python toolchain (#5667)
* Add several fixes for python toolchain

* Fix versin regex

* Make script exit on error

* Fix version regex

* Fix version regex

* Fix version regex

* Fix version regex

* Make test run on the current commit

* Fix test

* Fix test

* Use git to retrieve current commit

* Fix tests

* Fix tests

* Also make linux and mac work on the current commit

* Fix test
2019-02-01 18:43:55 -08:00
Peter Sobot
50342e4812 Allowed json_format.ParseDict to parse extensions with scalar types. (#5609) 2019-01-31 13:00:23 -08:00
Adam Cozzette
1ee15baefc Updated version to 3.7.0rc2 2019-01-30 21:08:04 -08:00
Hao Nguyen
d5be2baa46 Update version to 3.7.0 2019-01-24 10:23:02 -08:00
Yilun Chong
0adb74c2d3 Down-integrate internal changes to github. (#5555)
* Down-integrate internal changes to github.

* fix python conformance test

* fix csharp conformance test

* add back java map_lite_test.proto's optimize for option

* fix php conformance test
2019-01-08 15:06:30 -08:00
Paul Yang
1354e469d4
Merge pull request #5502 from TeBoring/github-sync
Down-integrate internal changes to github.
2018-12-20 16:27:26 -08:00
Bo Yang
624a40a387 Down-integrate internal changes to github. 2018-12-20 14:21:20 -08:00
Paul Yang
4dec4f9371
Rebuild python docker image (#5475)
* Rebuild python docker image

* Update docker image

* Change call to build_and_run_docker.sh

* Set up python tests for different versions

* Fix comments
2018-12-18 18:07:24 -08:00
Paul Yang
704037f23a
Change MACOSX_DEPLOYMENT_TARGET to 10.9 (#5406)
* Add kokoro build for python source package

* Use libc++ for xcode 10 (#5303)

The xcode 10 removes the deprecated libstdc++ library. We could set
"MACOSX_DEPLOYMENT_TARGET" to "10.9" to use libc++ instead.

* Add python 3.7 build

* Add build for python 3.7 on linux and windows

* Remove unused source build

* Add comment

* Fix $MACOSX_DEPLOYMENT_TARGET mismatch

* Fix MACOSX_DEPLOYMENT_TARGET mismatch

* Add missing import for sysconfig

* Add missing imports
2018-11-28 16:45:16 -08:00
giokara-oqton
f22be4ddb0 fix json_format.ParseDict modifies input (#5267)
* fix json_format.ParseDict modifies input

* added unit test

* fix naming
2018-11-26 11:08:54 -08:00
Adam Cozzette
0894e07536 Integrated internal changes from Google 2018-11-09 11:28:22 -08:00
Leon Barrett
9e69594adf Fix parsing empty Struct Values from Json (#5211)
* Fix parsing empty Struct Values from Json

This fixes a bug. When parsing a struct from JSON like
    struct = json_format.Parse('{"k": {}}', Struct())
then the struct's "k" value would end up not initialized, and accessing
the value would raise an error.
    In[1]: struct['k']
    ValueError: Value not set
That seems to be because the Struct field of the Value was not set.
    In[2]: struct
    Out[2]:
    fields {
      key: "k"
      value {
      }
    }

This commit makes sure that the Value's Struct field is initialized even
if the Struct has no values itself.

This commit also extends a test to cover this case.

* Additionally test for empty list
2018-10-05 16:38:16 -07:00
Josh Kelley
8d6f8df1ec ParseFromString returns bytes parsed (#5166)
* ParseFromString returns bytes parsed

ParseFromString is documented as returning the number of bytes parsed,
and the C++ implementation does this, so the Python implementation
should too.

See #5165.

* Fix docstring

* Add a test for ParseFromString length behavior
2018-10-05 11:07:55 -07:00
Kevin James
f50a1f843e fix(python): fix deprecated collections.abc usage (#5195)
Many classes within collections were moved to collections.abc in Python
3.3 -- their usage as imported directly from collections is now
deprecated as of Python 3.7 and will be removed soon.

The fallback import added in this PR can be removed entirely when
support for versions of Python prior to 3.3 is dropped.
2018-10-04 16:06:53 -07:00
Benjamin Peterson
188c44b117 Remove 2to3 code from setup.py. (#5114)
Python protobuf has long been a single-source codebase. 2to3 shouldn't need to run in setup.py.
2018-09-10 13:35:38 -07:00
Josh Haberman
e53be9bce4 Fixed Python extension compile. 2018-09-07 13:07:20 -07:00
Josh Haberman
986fad3eb1 Removed obsolete hash_map header that was breaking the compile. 2018-09-07 11:20:04 -07:00
Josh Haberman
d61aede89c Down-integrate from google3. 2018-09-04 10:58:54 -07:00
Feng Xiao
afe98de32a Replace repo links. 2018-08-22 11:55:30 -07:00
Jie Luo
ab09b2a2e2
Disable surrogate check for ucs2 (#5039)
* _SURROGATE_PATTERN check for ucs4
Skip some test for ucs2 by sys.maxunicode
2018-08-14 11:17:16 -07:00
Feng Xiao
14be563f00 Down-integrate proto2 namespace fix. 2018-08-13 12:32:21 -07:00
Feng Xiao
acd5b05e9f Fix failing tests.
1. Fix C++ tests.
  * Add missing files to Makefile.am and fix distcheck in tests.sh
  * Remove BUILT_SOURCES from conformance/Makefile.am.
  * Add some missing override keyword.
  * Add a type cast to int64 because our StrCat() in stubs can't handle size_t.
2. Fix Java tests.
  * Add missing test dependency on guava in pom.xml.
  * Include newly referenced test data in test resources.
  * Manually fix map_lite_test.proto which is overwritten because it's mapped
    from map_test.proto in google3.
  * Add back "optimize_for = LITE_RUNTIME" which is still needed to keep the
    opensource test passing as it's still running lite tests.
  * Add a type cast in newBuilder() because without it the code doesn't compile
    with openjdk javac 1.8 (the compiler can't figure if it's the right type
    due to complex generic typing).
3. Fix Python tests.
  * Remove/replace references to <hash_map>.
  * Suppress more warnings in setup.py.
  * Replace incorrect header inclusion for google/protobuf/proto_api.h.
  * Add strings::EndsWith to google/protobuf/stubs/strutil.h because it's
    referenced in the updated python C extension code.
  * Replace proto2 with google::protobuf. The proto2 name is leaked to
    opensource because we removed the subsitition rule for proto2 namespace
    but only fixed C++ source code and forgot to update python C extension code.
2018-08-09 21:21:01 -07:00
Feng Xiao
a8465b738e Merge master branch. 2018-08-08 17:14:42 -07:00
Feng Xiao
6bbe197e9c Down-integrate from google3. 2018-08-08 17:00:41 -07:00
Adam Cozzette
94d55e5292 Merge branch '3.6.x' into merge-3-6-x 2018-08-01 13:44:55 -07:00
Adam Cozzette
9e1286b949 Updated version numbers to 3.6.1 2018-07-27 13:30:28 -07:00
Arun Olappamanna Vasudevan
c7e0e262a6 pyext needs c++11 in linux and mac. (#4930) 2018-07-23 13:35:15 -07:00
Feng Xiao
2dcd6ae409
Remove/replace travis references (#4953)
* Remove/replace travis references.
2018-07-22 17:14:24 -07:00
Yilun Chong
359889bafd fix python cpp kokoro build 2018-07-15 21:01:48 -07:00
Yilun Chong
14bc658175 fix python cpp kokoro build 2018-07-12 16:49:26 -07:00
Ben Webb
0a59054c30 Add Python 3.7 compatibility (#4862)
Compilation of Python wrappers fails with Python 3.7 because
the Python folks changed their C API such that
PyUnicode_AsUTF8AndSize() now returns a const char* rather
than a char*. Add a patch to work around. Relates #4086.
2018-07-12 10:58:10 -07:00
Thomas Colthurst
79700b56b9 Update message_module.cc (#4835)
* Update message_module.cc

Add missing piece from pull request #4698:  actually initialize the new API object.

* Update message_module.cc
2018-07-03 13:52:27 -07:00
Thomas Colthurst
1ae2cc02b6 Fix capsule name. (#4836)
Internal convert file was broken. Change the capsule to the correct name
2018-06-29 11:07:29 -07:00
Adam Cozzette
d6f346b4d5
Merge pull request #4827 from acozzette/merge-3-6-x
Merge 3.6.x branch into master
2018-06-25 15:52:29 -07:00
Yuchen Xie
595231dd5c Update minimal Python version to 2.7 (#4207) 2018-06-25 15:20:53 -07:00
Adam Cozzette
82d3d7d250 Merge branch '3.6.x' into merge-3-6-x 2018-06-25 13:22:10 -07:00
cclauss
35567c1668 global __version__ In setup.py (#4753)
This change helps both humans and linters to understand the unusual method of instantiating this global variable.
2018-06-25 10:50:40 -07:00
cclauss
35c6927cc1 import inspect (#3507)
Inspect is used five times on line 65-74 without being imported.
2018-06-11 14:17:46 -07:00
Thomas Colthurst
7c6514245b Introduce Proto C API; based on cl/198113115 by amauryfa 2018-05-30 10:33:02 -04:00
Paul Yang
6f723a6624
Always add -std=c++11 for mac (#4684) 2018-05-25 14:42:41 -07:00
Jisi Liu
45eb28b588 Update version number to 3.6.0 2018-05-14 16:06:22 -07:00
Yilun Chong
4a09836e6c Fix python ext build on kokoro (#4527) 2018-05-03 15:55:27 -07:00
Thomas Hisch
451e0446ab Add __init__.py files to compiler and util subpackages (#4117)
The compiler and util subpackages are created by the build_py class in
setup.py. This has caused an issue in the protobuf package in
conda-forge (https://github.com/conda-forge/protobuf-feedstock/issues/40),
which is fixed by this commit.
2018-04-09 12:43:10 -07:00
Paul Yang
3b6d027ba2
For windows, all python version should use /MT (#4468) 2018-04-06 15:43:32 -07:00
Paul Yang
c931743461
Merge branch (#4466)
* Fix setup.py for windows build.

* Bump version number to 3.5.2

* Cat the test-suite.log on errors for presubits
2018-04-02 15:55:28 -07:00
Adam Cozzette
11d26ce24c Removed unused variables in repeated_scalar_container.cc 2018-03-20 14:44:30 -07:00
Adam Cozzette
8b3a72f3e9 Removed unused code pertaining to shared_ptr 2018-03-20 14:44:30 -07:00
Adam Cozzette
c5fcce5f69 Added pyext/thread_unsafe_shared_ptr.h 2018-03-20 13:02:18 -07:00
Adam Cozzette
3fa5dadb61 Removed unrecognized option from no_package.proto 2018-03-20 13:02:18 -07:00
Adam Cozzette
837c94b86f Include no_package.proto in Python test 2018-03-14 13:11:32 -07:00
Adam Cozzette
afe96b6d42 Merge branch 'master' into down-integrate 2018-03-13 16:54:31 -07:00
Adam Cozzette
0400cca323 Integrated internal changes from Google 2018-03-13 16:37:29 -07:00
Jie Luo
e34ec6077a
Only check filenames when end with .py in _CalledFromGeneratedFile() (#4262)
* Cython's stack does not have .py file name. Only check filenames when end with .py for _CalledFromGeneratedFile()
2018-02-09 15:54:03 -08:00
Jisi Liu
ec826c5a59 Merge remote-tracking branch 'origin/3.5.x' into master 2018-01-03 09:28:58 -08:00
Jisi Liu
383a4941d5 Merge remote-tracking branch 'origin/3.5.x' into master 2018-01-03 09:28:40 -08:00
Jisi Liu
8fc40b5502 Fix uploading binary wheel.
The script now takes two prompt for user name and password. One single
input redirection no longer works.
2017-12-22 12:05:37 -08:00
Jisi Liu
7ad8e7ad59 Disable pip cache when testing uploaded packages
Otherwise, pip complains "cannot find a version satisfies the
requirement." I suspect it was due to caching issues. I usued to
manually add a `sleep 30` between the upload and the installation test
which is quite unstable.
2017-12-22 11:47:13 -08:00
Feng Xiao
a5b743f8ae
Merge pull request #4030 from cyyber/master
Calling Keychecker before checking key in MessageMap
2017-12-20 12:07:46 -08:00
Jisi Liu
050fc9a437 Update version number to 3.5.1 2017-12-19 11:00:33 -08:00
Feng Xiao
3a06fe1fc9 Fix file permission for python package.
`umask 0022` makes sure the created package will be accessible by all users.
2017-12-15 12:57:26 -08:00
Feng Xiao
77d32bc56c
Merge pull request #4053 from xfxyjwf/fixumask
Fix file permission for python package.
2017-12-15 12:09:19 -08:00
Feng Xiao
0fc85acdf2 Fix file permission for python package.
`umask 0022` makes sure the created package will be accessible by all users.
2017-12-14 17:54:18 -08:00
cyyber
0e2089c775 Calling Keychecker before checking key in MessageMap 2017-12-15 01:01:31 +05:30
Jisi Liu
acadade56e Remove py2.6 support. 2017-12-14 11:26:58 -08:00
Jisi Liu
594ec2262c Fix python descriptor test. 2017-12-14 11:16:34 -08:00
Adam Cozzette
0ba8eea655 Merge branch 'master' into down-integrate 2017-12-01 10:05:19 -08:00
Adam Cozzette
92a7e778e7 Integrated internal changes from Google 2017-12-01 10:05:10 -08:00
Adam Cozzette
a27da09339 Merge branch '3.5.x' into 3.5.x-merge 2017-11-30 13:34:51 -08:00
Jisi Liu
cf65a7946f Update version for 3.5.0.post1 2017-11-22 14:05:10 -08:00
Jie Luo
45d99a15f3
Add _file_desc_by_toplevel_extension back
Add _file_desc_by_toplevel_extension back for compatibility issue with 3.4.1.

_file_desc_by_toplevel_extension is a temporary solution for FieldDescriptor.file.
FieldDescriptor.file was added in code gen. However, we need to keep it for some time for compatibility reason (with 3.4.1 only). May try to remove it after 2 years.
2017-11-22 13:59:11 -08:00
Paul Kilgo
9935829a66 Include .cc and .h files in source distribution 2017-11-17 15:30:31 -08:00
Jisi Liu
97dd175a91 Update version number to 3.5.0 2017-11-02 14:16:22 -07:00
Roman Nekhoroshev
da3bfa693a
Fix a typo in WKT's test suite
Hi!
Sorry for bothering with such a minor thing, but I just noticed and fixed one annoying typo in WKT's test suite:
`"accpets" -> "accepts"`

Thanks!
2017-11-02 13:47:11 -07:00
Jisi Liu
07b9238a1c Merge pull request #3770 from pherl/3.5-integrate
Integrate google internal changes for the up coming 3.5 release.
2017-10-19 10:48:54 -07:00
Jisi Liu
30bfe36b6a Merge pull request #3736 from jleni/fix_rbpi
Fix: Truncated Message due to "TypeError: unhashable type: 'bytearray'"
2017-10-18 12:56:04 -07:00
Jisi Liu
1a7a7fca80 Merge from google internal 2017-10-18 12:22:18 -07:00
Jisi Liu
de15e73d58 Merge remote-tracking branch 'origin/3.4.x' into master 2017-10-11 14:44:03 -07:00
Juan Leni
08334f0908 Converting to immutable hashable types 2017-10-11 06:46:25 +02:00
Jisi Liu
dba647a6b2 Bump version for minor release 2017-09-14 11:12:55 -07:00
Adam Cozzette
13fd045dbb Integrated internal changes from Google 2017-09-14 10:03:57 -07:00
Feng Xiao
2ad5c0a864 Merge pull request #2576 from cristicbz/py-strutil
python: do not include internal 'strutil.h' header
2017-09-08 10:23:14 -07:00
Jie Luo
610e433888 Drop python2.6
Jenkins complains for python 2.6
DEPRECATION: Python 2.6 is no longer supported by the Python core team
ERROR: InvocationError: '/tmp/protobuf/protobuf/python/.tox/py26-cpp/bin/python setup.py -q build_py'
https://grpc-testing.appspot.com/job/protobuf_pull_request/1502/testReport/junit/(root)/python_cpp/python_cpp/
2017-08-22 16:39:26 -07:00
Jie Luo
028d6f13ee Add Python 3.5 3.6 2017-08-22 15:59:27 -07:00
Jisi Liu
ba4e54724d Merge pull request #3529 from pherl/merge3.4.x
Merge 3.4.x into master
2017-08-21 10:39:27 -07:00
cclauss
472f700884 remove the parens from the cmp() lambda definition (#3526)
* remove the parens from the cmp() lambda definition

https://github.com/PythonCharmers/python-future/pull/298

* remove the parens from the cmp() lambda definition

https://github.com/PythonCharmers/python-future/pull/298
2017-08-21 10:21:11 -07:00
Jisi Liu
139775ccc0 Merge remote-tracking branch 'origin/3.4.x' into mergemaster 2017-08-18 16:25:35 -07:00
Jisi Liu
fdb5cd5e4b Merge pull request #3504 from pherl/3.4.x
Prefer system distributed binaries/libraries.
2017-08-18 16:19:45 -07:00
Jie Luo
c2aa26e507 Revert "Drop Python 3.3 from testing & add Python 3.5, 3.6 (#3512)" (#3524)
This reverts commit 703f414ca6.
2017-08-18 13:15:06 -07:00
cclauss
703f414ca6 Drop Python 3.3 from testing & add Python 3.5, 3.6 (#3512)
* Drop Python 3.3 from testing & add Python 3.5, 3.6

Python 3.3 goes [EOL](https://docs.python.org/devguide/index.html#branchstatus) next month.

* Sync test.sh with the Python versions in tox.ini
2017-08-18 10:14:00 -07:00
cclauss
a04eb8c191 Define cmp() for Python 3 (#3517)
* Define cmp() for Python 3

http://python-future.org/compatible_idioms.html?highlight=cmp#cmp

* Define cmp() for Python 3

http://python-future.org/compatible_idioms.html?highlight=cmp#cmp
2017-08-18 10:13:10 -07:00
cclauss
dded80f924 define long() for Python 3 2017-08-18 01:41:27 +02:00
cclauss
958412e2e6 Old style exception --> new style exception 2017-08-17 19:25:39 +02:00
Jisi Liu
98c6d04df4 Prefer system distributed binaries/libraries.
It seems like the image has a /usr/local/bin/autoconf installed, which
doesn't recognize/work with the yum installed libtools. Putting
distributed binaries/libraries first solves the problem
2017-08-16 13:34:14 -07:00
Jisi Liu
5d5df84913 clean up 2017-08-16 10:35:00 -07:00
Jisi Liu
19a7e2099b Update testpypi addresses.
The old one is deprecated and no longer working.
2017-08-16 10:30:38 -07:00
Jie Luo
f5817b3056 PY26 tests compatibility
1, Some tests in reflection_test PY26 raise TypeError but other versions raise ValueError for convert negative long to unsigned
2, Change compare exception type to compare exception str for testDuplicateExtensionNumber. Original code raise 'Double registration of Extensions' is not an instance of (<type 'exceptions.AssertionError'>, <type 'exceptions.ValueError'>) for PY26 cpp implementation

t
2017-08-04 15:25:11 -07:00
Jie Luo
9150cd8603 Skip setUpClass which is newly added in python2.7 for python2.6 2017-08-04 10:50:24 -07:00
Jisi Liu
759245a49a Merge from master 2017-07-25 11:52:33 -07:00
Jisi Liu
ce4416705b Merge remote-tracking branch 'origin/3.4.x' into vb 2017-07-24 20:44:59 -07:00
Jie Luo
9c012ed07d Add __bool__ as well as __nonzero__ for python3 2017-07-24 16:42:23 -07:00
Jisi Liu
7bb39bef1a Update version number for 3.4.0 2017-07-24 16:03:49 -07:00
Jie Luo
a484794820 Use keys() instead of iterkeys() to be python3 compatbile. 2017-07-24 15:44:16 -07:00
Yilun Chong
a713b73076 Merge pull request #3281 from BSBandme/ConformanceTestYilunChong
Proto2 test message support to conformance test
2017-07-24 14:50:52 -07:00
Feng Xiao
062df3d072 Merge pull request #3179 from bjwatson/fix-duration-typo
Fix typos in comment
2017-07-20 13:01:04 -07:00
Jie Luo
bba4c4ae51 Merge pull request #3262 from snnn/master
Make it compatible with python 3.6.1
2017-07-19 16:25:05 -07:00
Jisi Liu
dd091aad48 Fix code to use values() instead 2017-07-19 15:00:19 -07:00
Jisi Liu
b07cdb6e8e Use itmes() instead of itervalues() to be python3 compatbile. 2017-07-19 13:55:58 -07:00
Paul Yang
50aa4febaf Merge pull request #3375 from TeBoring/3.3.x
Merge 3.3.x into master
2017-07-19 06:58:05 -07:00
Jisi Liu
3af881c7e2 Merge master into 3.4.x 2017-07-18 16:26:16 -07:00
Jisi Liu
09354db143 Merge from Google internal for 3.4 release 2017-07-18 15:38:30 -07:00
Bo Yang
6ec0b7e4d1 Merge 3.3.x into master 2017-07-18 11:06:16 -07:00
Jie Luo
b764e67812 Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION for pure python comformance test 2017-07-17 14:34:54 -07:00
Yilun Chong
e82ba0b802 Merge branch 'master' into ConformanceTestYilunChong 2017-06-30 17:38:50 -07:00
Paul Yang
176bac6dac Add scripts to build python wheel for linux. (#2693)
* Add scripts to build python wheel for linux.
Followed PEP513.

* Fix dist check for new added files.

* Update README for usage example.
2017-06-28 15:22:19 -07:00
Yilun Chong
18a0c2c4d2 add proto2 supported for cpp,python,nodejs,ruby,php 2017-06-27 18:24:15 -07:00
Changming Sun
4987ddac75 Fix a bazel build error on Windows 2017-06-22 22:08:09 +08:00
Brian J. Watson
5555d3b078 Fix typos in comment 2017-06-21 17:31:03 -07:00
Bo Yang
e7bcfc4241 Update version number to 3.3.2 2017-06-21 10:20:34 -07:00
Misha Brukman
677557009c Fix Markdown formatting in README.
Fix indentation to enable code formatting for sample command lines to set them
visually apart from the surrounding text, and make it easy to copy-paste.

Add code formatting for env vars, paths, binary and library names for
readability.

Hide URLs behind text for readability and conciseness.
2017-05-23 10:39:40 -04:00
Feng Xiao
58538ea919 Update version number to 3.3.1 2017-05-08 16:02:08 -07:00
Feng Xiao
478119fe77 Fix python3 issue. 2017-04-20 16:30:26 -07:00
Jie Luo
899460c9cb cherrypick descriptor_pool.FindFileContainingSymbol by extensions (#2962)
* Use PyUnicode_AsEncodedString() instead of PyUnicode_AsEncodedObject()

* Cherrypick the fix descriptor_pool.FindFileContainingSymbol by extensions.
2017-04-10 16:37:57 -07:00
Feng Xiao
80f0c0ac40 Update version number and changelog for 3.3.0 2017-04-05 17:32:17 -07:00
Feng Xiao
d36c0c538a Down-integrate from google3. 2017-03-29 14:33:05 -07:00
Jisi Liu
f6d8c83384 Merge pull request #2613 from aausch/fix_memory_leak
optimization and quick workaround to memory leak
2017-03-06 16:48:54 -08:00
Sebastian Schuberth
902af0816e Prefer the term "3-Clause BSD License" over "New BSD License"
The first is the newer name, which is also more telling.
2017-02-28 09:58:24 +01:00
Jie Luo
c6e0d0e7f3 Merge pull request #2647 from anandolee/master
Fix python compatibility test
2017-02-09 16:32:08 -08:00
Jie Luo
42e1e2abef Fix python compatibility test when a new generated code imports an old version(2.6.1 or older) generated code. 2017-02-09 11:08:10 -08:00
Paul Yang
7f3e237071 Merge 3.2.x branch into master (#2648)
* Down-integrate internal changes to github.

* Update conformance test failure list.

* Explicitly import used class in nano test to avoid random test fail.

* Update _GNUC_VER to use the correct implementation of atomic operation
on Mac.

* maps_test.js: check whether Symbol is defined before using it (#2524)

Symbol is not yet available on older versions of Node.js and so this
test fails with them. This change just directly checks whether Symbol is
available before we try to use it.

* Added well_known_types_embed.cc to CLEANFILES so that it gets cleaned up

* Updated Makefile.am to fix out-of-tree builds

* Added Bazel genrule for generating well_known_types_embed.cc

In pull request #2517 I made this change for the CMake and autotools
builds but forgot to do it for the Bazel build.

* Update _GNUC_VER to use the correct implementation of atomic operation on Mac.

* Add new js file in extra dist.

* Bump version number to 3.2.0

* Fixed issue with autoloading - Invalid paths (#2538)

* PHP fix int64 decoding (#2516)

* fix int64 decoding

* fix int64 decoding + tests

* Fix int64 decoding on 32-bit machines.

* Fix warning in compiler/js/embed.cc

embed.cc: In function ‘std::string CEscape(const string&)’:
embed.cc:51:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int i = 0; i < str.size(); ++i) {
                                ^

* Fix include in auto-generated well_known_types_embed.cc

Restore include style fix (e3da722) that has been trampled by
auto-generation of well_known_types_embed.cc

* Fixed cross compilations with the Autotools build

Pull request #2517 caused cross compilations to start failing, because
the js_embed binary was being built to run on the target platform
instead of on the build machine. This change updates the Autotools build
to use the AX_PROG_CXX_FOR_BUILD macro to find a suitable compiler for
the build machine and always use that when building js_embed.

* Minor fix for autocreated object repeated fields and maps.

- If setting/clearing a repeated field/map that was objects, check the class
  before checking the autocreator.
- Just to be paranoid, don’t mutate within copy/mutableCopy for the autocreated
  classes to ensure there is less chance of issues if someone does something
  really crazy threading wise.
- Some more tests for the internal AutocreatedArray/AutocreatedDictionary
  classes to ensure things are working as expected.
- Add Xcode 8.2 to the full_mac_build.sh supported list.

* Fix generation of extending nested messages in JavaScript (#2439)

* Fix generation of extending nested messages in JavaScript

* Added missing test8.proto to build

* Fix generated code when there is no namespace but there is enum definition.

* Decoding unknown field should succeed.

* Add embed.cc in src/Makefile.am to fix dist check.

* Fixed "make distcheck" for the Autotools build

To make the test pass I needed to fix out-of-tree builds and update
EXTRA_DIST and CLEANFILES.

* Remove redundent embed.cc from src/Makefile.am

* Update version number to 3.2.0-rc.1 (#2578)

* Change protoc-artifacts version to 3.2.0-rc.1

* Update version number to 3.2.0rc2

* Update change logs for 3.2.0 release.

* Update php README

* Update upb, fixes some bugs (including a hash table problem). (#2611)

* Update upb, fixes some bugs (including a hash table problem).

* Ruby: added a test for the previous hash table corruption.

Verified that this triggers the bug in the currently released
version.

* Ruby: bugfix for SEGV.

* Ruby: removed old code for dup'ing defs.

* Reverting deployment target to 7.0 (#2618)

The Protobuf library doesn’t require the 7.1 deployment target so
reverting it back to 7.0

* Fix typo that breaks builds on big-endian (#2632)

* Bump version number to 3.2.0
2017-01-31 09:17:32 -08:00
Alex Ausch
2c36cc30dd cache generated classes, optimization and quick workaround to memory leak 2017-01-30 15:42:01 -05:00
Cristi Cobzarenco
1ee09c81bb python: do not include internal 'strutil.h' header 2017-01-28 12:19:11 +02:00
Jie Luo
ea51149100 Add python compatibility tests against v2.5.0 amd run on Travis. 2017-01-26 11:05:16 -08:00
Jie Luo
140e28d12e Add python compatibility tests against v2.5.0: copy tests and proto files from v2.5.0 2017-01-23 15:05:19 -08:00
Joshua Haberman
ffa71f8007 A few more cases for binary conformance tests. (#2500)
* A few more cases for binary conformance tests.

* over-encoded varints (encoded in more bytes than are necessary).
* truncated varints (>32 bits for 32-bit types).

* Fixed Python decoding bug with 32-bit varints.

* Fixed 1L -> 1LL for 32-bit platforms.
2017-01-06 16:58:21 -08:00
Joshua Haberman
f1ce60e7b4 Factored Conformance and Benchmark test messages into shared test schema. (#1971)
* Factored Conformance test messages into shared test schema.

* Updated benchmarks to use new proto3 message locations.

* Fixed include path.

* Conformance: fixed include of Python test messages.

* Make maven in Rakefile use --batch-mode.

* Revert changes to benchmarks.

On second thought I think a separate schema for
CPU benchmarking makes sense.

* Try regenerating C# protos for new test protos.

* Removed benchmark messages from test proto.

* Added Jon Skeet's fixes for C#.

* Removed duplicate/old test messages C# file.

* C# fixes for test schema move.

* Fixed C# to use the correct TestAllTypes message.

* Fixes for Objective C test schema move.

* Added missing EXTRA_DIST file.
2016-12-03 11:51:25 -05:00
Adam Cozzette
259dd7e842 Updated descriptor_pool.py to be compatible with Python 3
In Python 3 the values() method on a dictionary returns a view instead
of a list, so we need to explicitly convert that to a list.
2016-11-22 16:55:43 -08:00
Adam Cozzette
a7f300d6ff Fixed descriptor_pool_test.py for Python 2.6
The curly brace syntax for sets was introduced in Python 2.7, and so for
compatibility with 2.6 we need to avoid using it for now.
2016-11-22 15:14:05 -08:00
Adam Cozzette
5d63097fc2 Merge branch 'master' into down-integrate-with-msvc-fix 2016-11-17 17:04:30 -08:00
Adam Cozzette
5a76e633ea Integrated internal changes from Google 2016-11-17 16:59:59 -08:00
Ian Hunter
130bb0739a typo 2016-11-16 17:34:28 +00:00
Richard Shin
7c913d821e Use -DPROTOBUF_PYTHON_ALLOW_OVERSIZE_PROTOS 2016-10-19 13:36:23 -07:00
Paul Yang
daba6653f1 Fix python_cpp test on Mac. Link staticly when building extension, so that the extension doesn't require installing protobuf library. (#2232) 2016-10-10 11:44:54 -07:00
Bo Yang
1c4cf0eeb5 Fix python cpp. 2016-10-10 11:44:21 -07:00
Feng Xiao
f933d10fbe Update version number.
[skip ci]

Change-Id: I1ba6f6372a08b5796570851336e1a548602f60da
2016-10-10 11:44:21 -07:00
Bo Yang
23d4688cce Fix python bugs for internal integration. 2016-10-10 11:43:48 -07:00
Bo Yang
15f4db6cb1 Bump version number to 3.1.0-alpha-1. 2016-10-10 11:24:31 -07:00
Bo Yang
cc8ca5b6a5 Integrate internal changes 2016-10-10 11:23:36 -07:00
Jisi Liu
58860c021f Merge remote-tracking branch 'origin/3.0.x' into merge 2016-09-14 09:37:48 -07:00
Jisi Liu
6e11540b32 Bump version number to 3.0.2 2016-09-02 11:57:49 -07:00
Jonathon Love
64958cdb1d Fix to typo/oversight in python tests
Fix to typo/oversight in python tests, only affecting python 3
2016-09-02 12:36:11 +10:00
Adam Matan
3886860aa4 Typo: beffer -> buffer 2016-08-03 14:59:18 +03:00
Jisi Liu
811674f479 add setup.cfg for building wheels 2016-07-29 14:02:07 -07:00
Jisi Liu
fb7a7c5f1f Bump version number for GA 2016-07-25 12:07:56 -07:00
Feng Xiao
932f94e16e Update version number to 3.0.0-beta-4 2016-07-13 16:08:47 -07:00
Feng Xiao
9086d96439 Integrate from internal code base. 2016-07-13 13:48:40 -07:00
Otto Kekäläinen
3808d091f8 Fix spelling in strings and comments 2016-07-03 15:26:04 +03:00
Adam Cozzette
b83af525db Fixed string formatting in text_format.py to be Python2.6-compatible
In Python 2.6 the positional argument specifiers are apparently required
to be explicitly specified:
http://stackoverflow.com/questions/10054122/valueerror-zero-length-field-name-in-format-python
2016-06-30 10:13:53 -07:00
Adam Cozzette
d64a2d9941 Integrated internal changes from Google
This includes all internal changes from around May 20 to now.
2016-06-29 15:38:03 -07:00
Josh Haberman
350453f2d5 Make surrogate regex even more lenient. 2016-06-06 17:14:58 -07:00
Josh Haberman
923d2c7ccf JSON surrogates Python: adjust regex for OSX error message.
OS X's version of Python has a slightly different error
message for this error case.
2016-06-06 13:57:59 -07:00
Josh Haberman
6a618949aa Added test for surrogates (valid and invalid). 2016-06-03 10:24:23 -07:00
Josh Haberman
4833b4c003 Surrogate checking is unpredictable, so always manually check. 2016-06-03 09:39:38 -07:00
Josh Haberman
bd98eae1c9 Fixed Python by updating failure lists and fixed a few broken tests.
Python 2.x doesn't detect unpaired surrogates so we have to
do that manually.
2016-06-03 09:39:38 -07:00
Jisi Liu
cbb9183e89 Merge pull request #1559 from google/beta-3
Merge beta-3 release branch again.
2016-05-18 11:44:56 -07:00
Jie Luo
b01b1a8ebe JSON format for Any message must print @type first, use OrderedDict instead of {} 2016-05-17 15:14:53 -07:00
Jisi Liu
b3bb46c51b Added download_url to be able to upload to pypi. 2016-05-17 10:50:43 -07:00
Jisi Liu
dbed8a0154 Update version numbers for beta3 2016-05-10 14:49:42 -07:00
Jisi Liu
f8a5c5f746 Fix using std::shared_ptr 2016-05-05 16:34:42 -07:00
Jisi Liu
75e5898513 Fix the std::string error introduced in integration. 2016-05-05 16:04:30 -07:00
Jisi Liu
cf14183bcd Down integrate from Google internal. 2016-04-28 14:34:59 -07:00
Jisi Liu
cba75ad404 Merge branch 'master' of github.com:google/protobuf 2016-04-01 16:46:49 -07:00
Manjunath Kudlur
cf828deb9b Linking the cpp implementation extension statically with libprotobuf 2016-04-01 15:58:48 -07:00
Jisi Liu
1bf446c71e Disable sign-compare warning. 2016-03-31 15:48:25 -07:00
Jisi Liu
7b1cbbd50e Fix signed-compare warning. 2016-03-31 15:38:10 -07:00
Jisi Liu
012ac9a0a6 revert unexpected change for py26 2016-03-31 15:26:22 -07:00
Manjunath Kudlur
1283625b0f Added an API to allow oversize protos when using C++ extension in Python 2016-03-31 14:14:58 -07:00
Jisi Liu
fc7eeda69c Fix json_format.py in py26 2016-03-31 13:36:32 -07:00
Jisi Liu
0de06f54bc Merge branch 'master' of github.com:google/protobuf 2016-03-30 11:43:44 -07:00
Jisi Liu
3b3c8abb96 Integrate google internal changes. 2016-03-30 11:39:59 -07:00
Joshua Haberman
3dd3238189 Merge pull request #1306 from silviulica/master
Update version to 3.0.0b2.post2
2016-03-07 16:31:48 -08:00
Silviu Calinoiu
4573edba76 Update version to 3.0.0b2.post2 2016-03-07 14:33:57 -08:00
Craig Citro
0e7c0c2fb8 Add back the namespace_packages arg in setup.py.
Improves #1296.

The problem: in the previous patch, we tweaked the __init__.py files to use
namespaces, but no longer declared ourselves as a namespace package. The
second half was unwise.

Note that this only comes up when installing protobuf alongside another
package that also installs into the google namespace; as of right now, the
only PyPI package that does is googleapis-common-protos, though the GAE SDK
also uses google.appengine. Installing either or both of those alongside this
package now works.

The case that still remains is the upgrade path, which is also what worried me
in #713. It seems that if protobuf 2.6.1 is installed, there's no way to
safely upgrade that to work with a newer protobuf. However, `pip uninstall` &&
`pip install` does the trick.
2016-03-05 00:10:11 -08:00
Silviu Calinoiu
786f80fe66 Add a modified patch from craigcitro@ to handle namespace sharing. 2016-02-18 16:12:11 -08:00
Manjunath Kudlur
99a3e30bd7 Added PROTOBUF_PYTHON_ALLOW_OVERSIZE_PROTOS macro and setting it when
--allow_oversize_protos=true is passed to bazel build.
When this macro is set, SetTotalBytesLimit is called to remove
the 64MB limit on binary protos when during ParseFromString.
2016-02-16 15:17:10 -08:00
CH Albach
5477f8cdba Manually down-integrate python JSON struct support from internal code base. 2016-01-29 18:10:50 -08:00
Josh Haberman
06fd6fa850 Fixed Python 3.x C++ build, and updated conformance failure lists. 2016-01-15 17:26:44 -08:00
Josh Haberman
e891c29f9b Allow conformance test runner to tolerate crashes, and re-enable conformance tests. 2016-01-11 16:15:46 -08:00
Josh Haberman
e1abdf2c76 Fixed compile for Python 3. There are still some crashes though. 2015-12-30 16:09:53 -08:00
Feng Xiao
283c40c897 Require six>=1.9 for Python.
We use six sub-modules that aren't available in old versions. Not specifying
this requirement in the setup will lead to much less readable runtime errors.
It's particuarlly problematic for Mac OSX users because the system comes with
an old six version 1.4.1 by default.

[skip ci]
2015-12-29 14:36:46 -08:00
Feng Xiao
b7610f129d Add missing files to EXTRA_DIST.
Also delete some unused files.
2015-12-28 14:18:49 -08:00
Feng Xiao
27b2423d6a Disable python conformnace tests as well.
The testee program crashes on some inputs.

Change-Id: Iab27b80e29b7a56c5bd7cb4724531ecf9bb2823a
2015-12-21 13:45:55 -08:00
Feng Xiao
a0b8fd52b9 Fix Python 2.6 test failures.
Change-Id: Ia9e2795b1ff1abb30410ffb3ef96ba6f46dd99d0
2015-12-21 13:43:13 -08:00
Feng Xiao
aa7e17a6f6 Update version numbers.
Version number for beta languages is updated to v3.0.0-beta-2.
Version number for alpha languages is updated to v3.0.0-alpha-5.
2015-12-21 11:31:51 -08:00
Feng Xiao
e841bac4fc Down-integrate from internal code base. 2015-12-11 17:10:28 -08:00
Manjunath Kudlur
96537c461a Bringing in internal::shared_ptr into google:protobuf namespace.
Fixes #1029
2015-12-09 07:40:30 -08:00
Manjunath Kudlur
3f9b4f2944 Updated for c++98 compatibility 2015-12-07 14:15:29 -08:00
Manjunath Kudlur
3ff1dca0bd Enable fast cpp protos in the python interface. 2015-12-07 13:08:21 -08:00
Josh Haberman
4b31ffa488 Added Python failure lists, and fixes to make sure failure propagates. 2015-12-03 12:54:54 -08:00
Josh Haberman
325392dd61 Conformance test implementation for Python. 2015-12-02 12:53:42 -08:00
Josh Haberman
c3ca920509 Pass $CC environment variable through tox. 2015-10-28 17:07:02 -07:00
Josh Haberman
d8814ed59e Special-case Clang-only warning flags to Clang. 2015-10-28 17:07:02 -07:00
Josh Haberman
30cbd4c561 Disable some more warnings to be warnings-free. 2015-10-28 17:05:47 -07:00
Josh Haberman
70ffefa551 Fixed compile errors after rebase. 2015-10-28 17:05:47 -07:00
Josh Haberman
00700b7219 Removed all warnings from the Python/C++ build.
Also made the Travis build ensure that no warnings
are present.

These builds were previously spewing many warnings,
which was hiding warnings for important things like
accidentally using C++11-only features.

Change-Id: I56caeee9db48bc78756a3e8d7c14874630627037
2015-10-28 17:05:47 -07:00
Jie Luo
2850a98275 fix json_format for python2.6:
1, objcect_pair_hook is not supported in python2.6, so duplicated key check is removed in 2.6
2, total_seconds is not suppoted in python2.6, changed to compute seconds directly
2015-10-19 16:25:54 -07:00
Jisi Liu
f6fa5c7882 add complete WKT for python. 2015-10-06 14:26:00 -07:00
Jisi Liu
7464f40a7e Generate well known types for python. 2015-10-06 14:20:26 -07:00
Jisi Liu
78d040a18b remove extra collection import 2015-10-06 11:02:24 -07:00
Jisi Liu
72bd9c959a disable tests for python-cpp under py26 as well. 2015-10-06 10:48:57 -07:00
Jisi Liu
f509c7b2f5 disable py2.6 tests for json_format_test 2015-10-05 16:14:50 -07:00
Jisi Liu
dbea00ae88 Revert back changes to import unittest2 for py26 2015-10-05 16:08:22 -07:00
Jisi Liu
a783eaf37f make the python json test less strict on expected errors. 2015-10-05 15:06:06 -07:00
Jisi Liu
8d8177c757 Merge remote-tracking branch 'origin/master' into fix-author 2015-10-05 13:54:05 -07:00