Commit Graph

37 Commits

Author SHA1 Message Date
Kengo Seki
caf8904913 THRIFT-4969: PHP test doesn't check the code generation with php:classmap
Client: php

This closes #1889.
2019-10-08 22:57:53 +01:00
James E. King III
e53d23c16c THRIFT-4794: finish php json cross test 2019-02-10 13:11:46 -05:00
James E. King III
b96c43892a THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
Robert Lu
68707d9219
THRIFT-4474: Use PSR-4 autoloader by default
Client: php

This closes #1479
2018-03-15 11:05:30 +01:00
Robert Lu
a15060acd8 THRIFT-4423: migrate to psr-4
Client: php

This closes #1445
2018-01-11 09:37:37 -05:00
Håkon Hitland
9462edb06e THRIFT-4264: Fix PHP tests requiring sockets.so
Client: php

This closes #1315
2017-09-22 08:00:47 -07:00
Thomas Petazzoni
1744cdcb67 configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation
The thrift build system currently assumes that the thrift compiler is
always available in $(top_builddir)/compiler/cpp/thrift. However, in a
cross-compilation context, this location contains the thrift compiler
built for the target... which obviously will not run on the build
machine.

In order to support such cross-compilation situation, we introduce the
THRIFT variable as a an argument for the configure script (using
AC_ARG_VAR). If not specified, it defaults to the existing value of
using compiler/cpp/thrift from the build directory, but it can be
overridden when calling ./configure.

Note that $(top_builddir) cannot be used within the configure script,
so we simply use `pwd`, which is the same as the top_builddir.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

This closes #1336
This closes #1350
2017-09-09 07:50:54 -07:00
Roy Sindre Norangshol
ec64f23d23 THRIFT-4263: Fix use after free bug for thrown exceptions
Client: php

Exceptions thrown through PHPExceptionWrapper are prematurely freed at the end
of the catch block, even though zend_throw_exception_object expects to take
ownership of the value.

Ensure we free return_value in case of exceptions

Patch: Håkon Hitland <hakon.hitland@zedge.net>
Patch: Roy Sindre Norangshol <norangshol@zedge.net>

This closes #1314
2017-08-12 20:11:26 -07:00
Håkon Hitland
e66b8fcde3 THRIFT-3984 PHP7 extension causes segfault
The PHP 7 extension can sometimes free strings it does not own,
when serializing string map keys, or the name of called methods.
The latter case was somewhat migitated since the double-free has no
effect on interned strings.
Using ZVAL_STR_COPY instead of ZVAL_STR will increment the reference
count, making the following destructor call correct.

Fix memory leak in PHP 7

Fix memory leak when deserializing maps or sets.
zend_hash_update will add its own reference to the key, so we need to
destruct the key zval to not leak.
We don't need to destruct the value, the hash table will take ownership
of it.

This closes #1152
2017-02-23 11:43:45 -05:00
Håkon Hitland
f39d4c8535 THRIFT-3886 PHP cross test client returns 0 even when failing
Client: PHP
Patch: Håkon Hitland <hakon.hitland@zedge.net>

This closes #1131
2016-12-17 19:52:36 +01:00
Andreas Scheja
d1ceba449d THRIFT-3046: Allow PSR4 class loading for generated classes (PHP)
Allow test to be used with psr4 autoloading

This closes #1010
2016-09-03 15:58:37 +09:00
Nobuaki Sukegawa
e4ba16495e THRIFT-3886 PHP cross test client returns 0 even when failing
This only fixes tests for primitive values.

This closes #1054
2016-08-20 18:40:45 +09:00
Jim King
5903d67459 THRIFT-3211: add php client compact protocol to make cross test
This closes #532
2015-07-03 20:48:50 +02:00
Roger Meier
41ad4342c5 THRIFT-847 Test Framework harmonization across all languages
THRIFT-2946 Enhance usability of cross test framework

Patch: Nobuaki Sukegawa

This closes: #358
2015-03-24 22:30:40 +01:00
Jens Geyer
8bcfdd98ae THRIFT-2886 Integrate binary type in standard Thrift cross test
Client: C_glib, C++, D, Erlang, Go, Haskell, Lua, Java/Me, JavaScript, Node, Ocaml, Perl, PHP, Python, Ruby
Patch: Jens Geyer

This closes #341

Minimal server-side implementations and TODO stubs for various languages to let "make check" succeeed.
Not contained in this patch and still TODO:
- client side implementations, i.e. calls to testBinary() and appropriate tests
- server side hex printout missing for some languages
2015-01-03 17:37:54 +01:00
Jens Geyer
79f988c27a THRIFT-2768: Whitespace Fixup
Client: General (Makefile.am)
Patch: Jens Geyer

Reverted makefile.am - tabs are not optional there
2014-10-03 20:42:54 +02:00
Jens Geyer
aaa8947f3a THRIFT-2768: Whitespace Fixup
Client: General (Makefile.am, *.thrift)
Patch: Jens Geyer

DocTest.thrift has NOT been changed, the trailing whitespaces are part of the test case.
2014-10-03 20:30:38 +02:00
Roger Meier
87afaacb95 THRIFT-1822 PHP unit test does not work
Patch: Roger Meier
2013-01-06 20:10:42 +01:00
Roger Meier
21c0a85079 THRIFT-1615 PHP Namespace (was Thrift for Symfony 2)
Patch: Xavier HAUSHERR


git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1381323 13f79535-47bb-0310-9956-ffa450edef68
2012-09-05 19:47:14 +00:00
Roger Meier
b33967be76 THRIFT-847 Test Framework harmonization across all languages
add php TestClient to the testsuite

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1234292 13f79535-47bb-0310-9956-ffa450edef68
2012-01-21 09:18:05 +00:00
Roger Meier
3ac6d87928 THRIFT-1495 PHP TestClient fatals on missing class
Patch: Andrew Grumet

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1233958 13f79535-47bb-0310-9956-ffa450edef68
2012-01-20 15:31:45 +00:00
Bryan Duxbury
a971fb0948 THRIFT-1081. php: PHP tests broken and somewhat incomplete
This patch fixes some minor bugs and includes a test for Framed Transport.

Patch: Nicholas Telford

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1076908 13f79535-47bb-0310-9956-ffa450edef68
2011-03-04 00:49:40 +00:00
Bryan Duxbury
1d373bc0e7 THRIFT-1078. php: ThriftTest.thrift generates invalid PHP library
This patch updates ThriftTest.thrft to have a valid php namespace, as well as updating the test client to use the properly namespaced code

Patch: Nicholas Telford

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1076316 13f79535-47bb-0310-9956-ffa450edef68
2011-03-02 18:13:30 +00:00
David Reiss
eb03222bca THRIFT-592. php: Make the test client work properly after r815878
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@888930 13f79535-47bb-0310-9956-ffa450edef68
2009-12-09 19:29:59 +00:00
David Reiss
ea2cba8ba8 THRIFT-387. Add license headers to a bunch of files
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@760189 13f79535-47bb-0310-9956-ffa450edef68
2009-03-30 21:35:00 +00:00
David Reiss
b139f64448 THRIFT-325. Remove a bunch of uses of the old command line format
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@745242 13f79535-47bb-0310-9956-ffa450edef68
2009-02-17 20:28:46 +00:00
David Reiss
2ca456a8ae Make "make clean" rules a bit more standard.
Summary:
make-generic is some sort of internal undocumented thing.
make-local is what is supposed to be used for this stuff.
Also use $(RM) instead of "rm -f".

Reviewed By: marc

Test Plan: make clean


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665498 13f79535-47bb-0310-9956-ffa450edef68
2008-02-24 16:42:18 +00:00
Mark Slee
5b743079da Thrift PHP generation Redux
Summary: Chopping the amount of code generated by Thrift for PHP services by two orders of magnitude (approx 25% of the previous size). This is done via putting more logic in a dynamic base class and taking it out of the generated code. Hopefully this wins back the CPU cycles paid just to load code from APC at the cost of a marginal increase in dynamic execution runtime.

Reviewed By: sgrimm, dreiss

Test Plan: Ran all the tests in trunk/test/php, also tested the API generate code and Falcon, etc. in my sandbox


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665328 13f79535-47bb-0310-9956-ffa450edef68
2007-11-13 04:00:29 +00:00
Mark Slee
e129a2db0c Some thrift test code fixes
Reviewed By: tbr-testaditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665014 13f79535-47bb-0310-9956-ffa450edef68
2007-02-21 05:17:48 +00:00
Mark Slee
6f5e2cb3ea Fix relative paths in test dirs
Reviewed By: makefile


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664950 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 08:01:28 +00:00
Mark Slee
1dd819cd2b Bring Thrift test code up to date
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664852 13f79535-47bb-0310-9956-ffa450edef68
2006-10-26 04:56:18 +00:00
Mark Slee
ade2c83d11 Thrift PHP TSocketPool client
Summary: Client that connects to one of an arbitrary pool of servers

Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664795 13f79535-47bb-0310-9956-ffa450edef68
2006-09-08 03:41:50 +00:00
Mark Slee
018b6998d6 Thrift: generate Processors not Servers
Summary: Because the gen'd code isn't actually a server

Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664794 13f79535-47bb-0310-9956-ffa450edef68
2006-09-07 21:31:12 +00:00
Mark Slee
c98d050d65 Thrift: Added support for double type across all languages
Summary: Just for completeness cause I'm crazy. Let's never use these!

Notes: Also made thrift grammar support # style comments, so you can do this at the top of your files

#!/usr/local/bin/thrift --cpp

/**
 * This is a thrift def file youc an invoke directly and gen code!
 */

blah


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664789 13f79535-47bb-0310-9956-ffa450edef68
2006-09-06 02:42:25 +00:00
Aditya Agarwal
68db166dd4 -- more thrift Makefile changes
Reviewed By: Slee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664788 13f79535-47bb-0310-9956-ffa450edef68
2006-09-06 00:18:29 +00:00
Mark Slee
d3d733a061 Thrift test improvements, tests for both inline and normal PHP code gen
Summary: So you can A/B test and see 6ms vs. 4ms response time :)


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664773 13f79535-47bb-0310-9956-ffa450edef68
2006-09-01 22:19:06 +00:00
Mark Slee
6e53644ce5 Thrift now works in PHP, hot stuff
Summary: End to end communication working in Thrift with PHP

Problem: It's a bit slower than pillar still. Need to find out why.

Reviewed By: aditya

Test Plan: Unit tests are in the test directory. Get lucas on the PHP case...




git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664720 13f79535-47bb-0310-9956-ffa450edef68
2006-06-30 18:28:50 +00:00