From 655e04c975450eb72830cb0e8a5453e985a54c42 Mon Sep 17 00:00:00 2001 From: Anton Zagorskii Date: Tue, 7 Nov 2023 09:54:05 +0000 Subject: [PATCH] PSR-4, Bump minimum PHP version to 7.1, phpunit to ^7.0 --- .gitignore | 2 +- composer.json | 23 +- ...-file_d24c245cf2947c71b8442fb733e9e019.dat | Bin 0 -> 34508 bytes ...-file_a79b0901d71e0f647bbbe2e32a61b361.dat | Bin 0 -> 49458 bytes .../phpdoc-cache-2e/phpdoc-cache-settings.dat | Bin 0 -> 141 bytes ...-file_6eb396ad4f17f85bdace747d12079c51.dat | Bin 0 -> 10804 bytes ...-file_f12be636472228ca0dffbaa420e12b68.dat | Bin 0 -> 39730 bytes ...-file_34ad14a55f301b2c1b01737f818b9278.dat | Bin 0 -> 28317 bytes ...-file_3916995003afda92992b0b702e908de0.dat | Bin 0 -> 26839 bytes ...-file_dcfc7f8ba41f2ed3e5967d030ded64d7.dat | Bin 0 -> 70228 bytes ...-file_d289a5d50a11fdbea7ef5168efcddd00.dat | Bin 0 -> 8557 bytes ...-file_43ddd34d00b567ff639f5887b3b5e954.dat | Bin 0 -> 32327 bytes ...-file_8254b68fa0f2b7492ef026441398c792.dat | Bin 0 -> 13936 bytes ...panelBase.html => Mixpanel.Base.Base.html} | 150 +- ....ConsumerStrategies.AbstractConsumer.html} | 178 ++- ...anel.ConsumerStrategies.CurlConsumer.html} | 262 +++- ...anel.ConsumerStrategies.FileConsumer.html} | 176 ++- ...el.ConsumerStrategies.SocketConsumer.html} | 251 ++- .../{Mixpanel.html => Mixpanel.Mixpanel.html} | 333 ++-- ...l => Mixpanel.Producers.BaseProducer.html} | 250 ++- ...=> Mixpanel.Producers.EventsProducer.html} | 337 ++-- .../Mixpanel.Producers.GroupsProducer.html | 1351 +++++++++++++++++ ...=> Mixpanel.Producers.PeopleProducer.html} | 314 ++-- ...{Base.MixpanelBase.html => Base.Base.html} | 114 +- docs/files/Base/Base.php.txt | 1 + docs/files/Base/MixpanelBase.php.txt | 65 - .../ConsumerStrategies.AbstractConsumer.html | 110 +- .../ConsumerStrategies.CurlConsumer.html | 110 +- .../ConsumerStrategies.FileConsumer.html | 110 +- .../ConsumerStrategies.SocketConsumer.html | 110 +- .../AbstractConsumer.php.txt | 64 - .../ConsumerStrategies/CurlConsumer.php.txt | 257 ---- .../ConsumerStrategies/FileConsumer.php.txt | 37 - .../ConsumerStrategies/SocketConsumer.php.txt | 307 ---- docs/files/Mixpanel.html | 114 +- docs/files/Mixpanel.php.txt | 304 ---- ...ducer.html => Producers.BaseProducer.html} | 114 +- ...nts.html => Producers.EventsProducer.html} | 114 +- docs/files/Producers.GroupsProducer.html | 339 +++++ ...ple.html => Producers.PeopleProducer.html} | 114 +- docs/files/Producers/BaseProducer.php.txt | 1 + docs/files/Producers/EventsProducer.php.txt | 1 + docs/files/Producers/GroupsProducer.php.txt | 1 + .../Producers/MixpanelBaseProducer.php.txt | 231 --- docs/files/Producers/MixpanelEvents.php.txt | 180 --- docs/files/Producers/MixpanelPeople.php.txt | 159 -- docs/files/Producers/PeopleProducer.php.txt | 1 + docs/graphs/class.html | 15 +- docs/graphs/classes.svg | 122 -- docs/index.html | 153 +- docs/namespaces/Mixpanel.Base.html | 279 ++++ .../Mixpanel.ConsumerStrategies.html | 290 ++++ docs/namespaces/Mixpanel.Producers.html | 290 ++++ docs/namespaces/Mixpanel.html | 289 ++++ docs/namespaces/default.html | 153 +- ...-file_d24c245cf2947c71b8442fb733e9e019.dat | Bin 42454 -> 0 bytes ...-file_a79b0901d71e0f647bbbe2e32a61b361.dat | Bin 59739 -> 0 bytes .../phpdoc-cache-2e/phpdoc-cache-settings.dat | Bin 113 -> 0 bytes ...-file_b4fb6aa95c11b53e77247528ba951101.dat | Bin 82507 -> 0 bytes ...-file_d7204020d6e3a231c55cdb49e9766f83.dat | Bin 40189 -> 0 bytes ...-file_3916995003afda92992b0b702e908de0.dat | Bin 37373 -> 0 bytes ...-file_6595b78d68710a47eaa16a67b13f74ea.dat | Bin 40867 -> 0 bytes ...-file_d289a5d50a11fdbea7ef5168efcddd00.dat | Bin 11061 -> 0 bytes ...-file_04490dad4c787b69f6dacb6200ccacfa.dat | Bin 12707 -> 0 bytes ...-file_8254b68fa0f2b7492ef026441398c792.dat | Bin 17004 -> 0 bytes docs/reports/deprecated.html | 15 +- docs/reports/errors.html | 154 +- docs/reports/markers.html | 19 +- examples/aliasing.php | 4 +- examples/all_calls.php | 3 +- examples/consumers/ObConsumer.php | 5 +- examples/curl_consumer.php | 3 +- examples/custom_consumer.php | 6 +- examples/error_handling.php | 6 +- examples/group_advanced.php | 2 +- examples/group_simple.php | 4 +- examples/profile_advanced.php | 4 +- examples/profile_simple.php | 4 +- examples/socket_consumer.php | 3 +- examples/track_advanced.php | 4 +- examples/track_simple.php | 4 +- phpunit.xml.dist | 9 - .../MixpanelBase.php => src/Base/Base.php | 4 +- .../ConsumerStrategies/AbstractConsumer.php | 8 +- .../ConsumerStrategies/CurlConsumer.php | 7 +- .../ConsumerStrategies/FileConsumer.php | 6 +- .../ConsumerStrategies/SocketConsumer.php | 8 +- {lib => src}/Mixpanel.php | 30 +- .../Producers/BaseProducer.php | 26 +- .../Producers/EventsProducer.php | 9 +- .../Producers/GroupsProducer.php | 5 +- .../Producers/PeopleProducer.php | 5 +- ...eProducerTest.php => BaseProducerTest.php} | 16 +- .../AbstractConsumerTest.php | 13 +- test/ConsumerStrategies/CurlConsumerTest.php | 19 +- test/ConsumerStrategies/FileConsumerTest.php | 11 +- .../ConsumerStrategies/SocketConsumerTest.php | 32 - test/MixpanelTest.php | 12 +- ...roducerTest.php => EventsProducerTest.php} | 14 +- ...roducerTest.php => GroupsProducerTest.php} | 11 +- ...roducerTest.php => PeopleProducerTest.php} | 11 +- 101 files changed, 5799 insertions(+), 2873 deletions(-) create mode 100644 docs/build/phpdoc-cache-03/phpdoc-cache-file_d24c245cf2947c71b8442fb733e9e019.dat create mode 100644 docs/build/phpdoc-cache-10/phpdoc-cache-file_a79b0901d71e0f647bbbe2e32a61b361.dat create mode 100644 docs/build/phpdoc-cache-2e/phpdoc-cache-settings.dat create mode 100644 docs/build/phpdoc-cache-4d/phpdoc-cache-file_6eb396ad4f17f85bdace747d12079c51.dat create mode 100644 docs/build/phpdoc-cache-5c/phpdoc-cache-file_f12be636472228ca0dffbaa420e12b68.dat create mode 100644 docs/build/phpdoc-cache-6a/phpdoc-cache-file_34ad14a55f301b2c1b01737f818b9278.dat create mode 100644 docs/build/phpdoc-cache-91/phpdoc-cache-file_3916995003afda92992b0b702e908de0.dat create mode 100644 docs/build/phpdoc-cache-9f/phpdoc-cache-file_dcfc7f8ba41f2ed3e5967d030ded64d7.dat create mode 100644 docs/build/phpdoc-cache-a3/phpdoc-cache-file_d289a5d50a11fdbea7ef5168efcddd00.dat create mode 100644 docs/build/phpdoc-cache-b7/phpdoc-cache-file_43ddd34d00b567ff639f5887b3b5e954.dat create mode 100644 docs/build/phpdoc-cache-db/phpdoc-cache-file_8254b68fa0f2b7492ef026441398c792.dat rename docs/classes/{Base_MixpanelBase.html => Mixpanel.Base.Base.html} (75%) rename docs/classes/{ConsumerStrategies_AbstractConsumer.html => Mixpanel.ConsumerStrategies.AbstractConsumer.html} (76%) rename docs/classes/{ConsumerStrategies_CurlConsumer.html => Mixpanel.ConsumerStrategies.CurlConsumer.html} (78%) rename docs/classes/{ConsumerStrategies_FileConsumer.html => Mixpanel.ConsumerStrategies.FileConsumer.html} (77%) rename docs/classes/{ConsumerStrategies_SocketConsumer.html => Mixpanel.ConsumerStrategies.SocketConsumer.html} (77%) rename docs/classes/{Mixpanel.html => Mixpanel.Mixpanel.html} (78%) rename docs/classes/{Producers_MixpanelBaseProducer.html => Mixpanel.Producers.BaseProducer.html} (77%) rename docs/classes/{Producers_MixpanelEvents.html => Mixpanel.Producers.EventsProducer.html} (78%) create mode 100644 docs/classes/Mixpanel.Producers.GroupsProducer.html rename docs/classes/{Producers_MixpanelPeople.html => Mixpanel.Producers.PeopleProducer.html} (82%) rename docs/files/{Base.MixpanelBase.html => Base.Base.html} (67%) create mode 100644 docs/files/Base/Base.php.txt delete mode 100644 docs/files/Base/MixpanelBase.php.txt rename docs/files/{Producers.MixpanelBaseProducer.html => Producers.BaseProducer.html} (67%) rename docs/files/{Producers.MixpanelEvents.html => Producers.EventsProducer.html} (67%) create mode 100644 docs/files/Producers.GroupsProducer.html rename docs/files/{Producers.MixpanelPeople.html => Producers.PeopleProducer.html} (67%) create mode 100644 docs/files/Producers/BaseProducer.php.txt create mode 100644 docs/files/Producers/EventsProducer.php.txt create mode 100644 docs/files/Producers/GroupsProducer.php.txt delete mode 100644 docs/files/Producers/MixpanelBaseProducer.php.txt delete mode 100644 docs/files/Producers/MixpanelEvents.php.txt delete mode 100644 docs/files/Producers/MixpanelPeople.php.txt create mode 100644 docs/files/Producers/PeopleProducer.php.txt delete mode 100644 docs/graphs/classes.svg create mode 100644 docs/namespaces/Mixpanel.Base.html create mode 100644 docs/namespaces/Mixpanel.ConsumerStrategies.html create mode 100644 docs/namespaces/Mixpanel.Producers.html create mode 100644 docs/namespaces/Mixpanel.html delete mode 100644 docs/phpdoc-cache-03/phpdoc-cache-file_d24c245cf2947c71b8442fb733e9e019.dat delete mode 100644 docs/phpdoc-cache-10/phpdoc-cache-file_a79b0901d71e0f647bbbe2e32a61b361.dat delete mode 100644 docs/phpdoc-cache-2e/phpdoc-cache-settings.dat delete mode 100644 docs/phpdoc-cache-54/phpdoc-cache-file_b4fb6aa95c11b53e77247528ba951101.dat delete mode 100644 docs/phpdoc-cache-7a/phpdoc-cache-file_d7204020d6e3a231c55cdb49e9766f83.dat delete mode 100644 docs/phpdoc-cache-91/phpdoc-cache-file_3916995003afda92992b0b702e908de0.dat delete mode 100644 docs/phpdoc-cache-9f/phpdoc-cache-file_6595b78d68710a47eaa16a67b13f74ea.dat delete mode 100644 docs/phpdoc-cache-a3/phpdoc-cache-file_d289a5d50a11fdbea7ef5168efcddd00.dat delete mode 100644 docs/phpdoc-cache-c8/phpdoc-cache-file_04490dad4c787b69f6dacb6200ccacfa.dat delete mode 100644 docs/phpdoc-cache-db/phpdoc-cache-file_8254b68fa0f2b7492ef026441398c792.dat rename lib/Base/MixpanelBase.php => src/Base/Base.php (98%) rename {lib => src}/ConsumerStrategies/AbstractConsumer.php (91%) rename {lib => src}/ConsumerStrategies/CurlConsumer.php (98%) rename {lib => src}/ConsumerStrategies/FileConsumer.php (85%) rename {lib => src}/ConsumerStrategies/SocketConsumer.php (98%) rename {lib => src}/Mixpanel.php (91%) rename lib/Producers/MixpanelBaseProducer.php => src/Producers/BaseProducer.php (87%) rename lib/Producers/MixpanelEvents.php => src/Producers/EventsProducer.php (95%) rename lib/Producers/MixpanelGroups.php => src/Producers/GroupsProducer.php (97%) rename lib/Producers/MixpanelPeople.php => src/Producers/PeopleProducer.php (98%) rename test/Base/{MixpanelBaseProducerTest.php => BaseProducerTest.php} (85%) delete mode 100644 test/ConsumerStrategies/SocketConsumerTest.php rename test/Producers/{MixpanelEventsProducerTest.php => EventsProducerTest.php} (95%) rename test/Producers/{MixpanelGroupsProducerTest.php => GroupsProducerTest.php} (94%) rename test/Producers/{MixpanelPeopleProducerTest.php => PeopleProducerTest.php} (96%) diff --git a/.gitignore b/.gitignore index 5490473..f6790eb 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ *.log *.lock *.idea -vendor +/vendor diff --git a/composer.json b/composer.json index 5d43e7a..5da3697 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,9 @@ { "name": "mixpanel/mixpanel-php", "description": "The Official PHP library for Mixpanel", + "type": "library", + "minimum-stability": "stable", + "prefer-stable": true, "keywords": [ "mixpanel", "mixpanel php" @@ -17,13 +20,27 @@ } ], "require": { - "php": ">=5.0" + "ext-json": "*", + "ext-curl": "*", + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "5.6.*", + "phpunit/phpunit": "^7.0", "phpdocumentor/phpdocumentor": "2.9.*" }, "autoload": { - "files": ["lib/Mixpanel.php"] + "psr-4": { + "Mixpanel\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "Mixpanel\\Test\\": "test/" + } + }, + "config": { + "allow-plugins": { + "symfony/flex": false + } } } diff --git a/docs/build/phpdoc-cache-03/phpdoc-cache-file_d24c245cf2947c71b8442fb733e9e019.dat b/docs/build/phpdoc-cache-03/phpdoc-cache-file_d24c245cf2947c71b8442fb733e9e019.dat new file mode 100644 index 0000000000000000000000000000000000000000..ce665384dda213b07a2302085e7a3ae5cb2b8c8b GIT binary patch literal 34508 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 literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-2e/phpdoc-cache-settings.dat b/docs/build/phpdoc-cache-2e/phpdoc-cache-settings.dat new file mode 100644 index 0000000000000000000000000000000000000000..3a83f549955f046d1253991c68f6310a69cbfe52 GIT binary patch literal 141 zcmYj|u?oUK3_$xW8J#Reh1}Xz6uNe5E^4G+j!RAu@!zEs#O?7O?}WP+A>VSZR3DsN z%hC>2w}o)_=TsKOfrkVAP63ouwRcv NbB#P`EyU~e`2veDE{gyF literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-4d/phpdoc-cache-file_6eb396ad4f17f85bdace747d12079c51.dat b/docs/build/phpdoc-cache-4d/phpdoc-cache-file_6eb396ad4f17f85bdace747d12079c51.dat new file mode 100644 index 0000000000000000000000000000000000000000..97e1da71432019cc100580cc09ea7660a587ae8f GIT binary patch literal 10804 zcmeHNTW{Mo6z=nW1tA1jH*BfpOD+mFpiMh$z}f~u)~5glCDAq)S<*nR< zOOEZhkg~RD`j951L>`^XcfP~J_uk;xbJAJ*ItlW*h_ggpz7{%AGNoUClaW~d>3IFV zcdNZa&w2Lavl-Vj=R|vhzUTDZ-e_>d`=JPrdq?4L;vNkS`iH~Gf$#Q@hao*@-%5FA z-f{k0PV(4%T6gRA zth^D|T`1QmoGf?wR(?!*ETT)YviU)l8)CbSE_X^o)O`*M!G6{cQm){mm83#tvIFll!3#x>Lowlb zWR*3ixvb_&>SG#d6&3^=Kv(em*r1PI#mRMkvMrT*?eOL9QYPqq9V3c7&&L ze_nXuevr&*RxHR<#v%^WM8chDW9J3g`HH4fk-(c)r$s#FQ$h1nmE`HY*X=0H=Nf|R z$Sj+woTL;=C2Ab-DDr6&+Az+e=!Y8UWjvEX?;Hq_Q!denw1Dpi1Yz)l{KE3?F zRXs9C6qqjJ3;KZ|lKYW(SD3mmkHxPdLR;q0O3o21yjf15!R24^Rh(SM7x=v{u+f^e zLg|tvIyfhHl%SiFrGl+jZuA11D@@F_x2$0bkcFh_eqnrxT~x+1p+HZV3iO|0o6n1-xz!A3n#~(2g5 z0{`Y*Oaux=Iz+H#TUjP*Feb^vCDC341mI6UJFAu35JS(jr&h8a$Pl8?5@#Psx3;{dSY4Mf zt1w_!#n4{(YKiYYEib5 z``i&>$W!vGcQtoy4sMA%?IDBX?3~&W-+cNjvdRj9??Zh}+$agWQQJBss_FERuxJD! z&kgZH69T;%CMQhBpy4ninFGPao0&Oap~lGTfywfU(WOP@mydl0<^Xb#W{|UWLG#svbx@ z76iI1g-rplEI?Xn=d2TGj6!!gDTW zQiIKyDnFp>3ha6&gBe46w>kn~Wu;9`HW<1IG!GPM8*Ifu(6Vp|sQ)+bg?7j0Y-#MASxY+nqpH zze1_1aoX{LQ+c7NI&x_l4i#7o;6j_hf=}xhVa}eL9EqT2+1y@#R)=Sb#y0ueBLM{+ zdg|P-glVatF99xa=R&9nZgaIiA}^?i)je)-bO=GkX)~@dTp`H1Ij1QT&}+sA>`jMlw-WvXs;g;` literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-5c/phpdoc-cache-file_f12be636472228ca0dffbaa420e12b68.dat b/docs/build/phpdoc-cache-5c/phpdoc-cache-file_f12be636472228ca0dffbaa420e12b68.dat new file mode 100644 index 0000000000000000000000000000000000000000..1beff46535128648b02e9b739e863eadd529365a GIT binary patch literal 39730 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 CsDTau literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-91/phpdoc-cache-file_3916995003afda92992b0b702e908de0.dat b/docs/build/phpdoc-cache-91/phpdoc-cache-file_3916995003afda92992b0b702e908de0.dat new file mode 100644 index 0000000000000000000000000000000000000000..0c3dfa61a204a84ca43607b1cb162bb5b89613a0 GIT binary patch literal 26839 zcmeHQTW{h>7M`DCp*-}iW-{TPI8VLlUTGg@rj_ZPeTjq$Q-IaRW^I#n6y?9qcj{u7 z!9Wui5EADpTnRu8}){*UblNe-;-C( zSt_r>%bO@nFlhW|8ncv7e4hOJXXJh3ss7*`4@Q^b5iwvAEn<&1u7AfnP5D;HW;~fQ zkADn&mhhx;{fFD`ZkW(b6a?H${U~g>O`6N4xV4}187^k>J>2{AcaP7-*J!W{w{d5@ z^ZbnWn)1TX3l<{_17EmL;hQ?cEomq2~=)Vom&=HpKm# z|9#Fv9^7eN$d%--s3f%J9X!TbCBC7DGqo7XgO!&WG-olio|LQuz1cYI$6*3R^)l_G zi<)>=%-^5Q15V~+Pq0$Im>RQjJ#;THo>bSdAF@Ed)!diL$f?caXwKsl##!08`XqKp zc`%IzJKz;N`Q0+N)azL&{Q z&hy?+{GlKC>7xRxdF*(m(rfxrxzK!PWRMcqz~MNs9c%=ge( z)CE{+Eczwp0le}(ceI)kBt4J;=h*Zs4<~SPZw-=~z~q4f;z8=qc(gcWXzBqyHnEl^ z{!a90W%A1iRW72_L#iH;_?k6YLMjMyJ-Z{;^q&xU1zw%8Y{sL1MNz<6XkyXJVzoAg zdYEz$qu2ov3L}x-eqeqoh!JxDJ#!RTMX}@!WwwE`gLxF6a_Z;>l{GozW#GwWaeBCO zS@R%ro|b~Kt+- z64*BJ+TXy zU+F9ook`+`8#^dIs-X)4F*+#ZS~ad?x7EJF6Yr(8Z8H!7s?9 zMJsfl9K0>Va(zKCuzdt*kef8C(lR{(%F5)jCSznSM4|8&qWuf zL^s<$+z@&h?i>B1wFiIFzBucWSFB)H500hW$%8A9DD&PF)oBPRTR`iMn~3)RL^skR zK_e!dw;CT!->Y2!=OO^G;+UIFGUfN?nG5#0vX7nxgf2IBq4toGPt!5L#;MHoW3DAXy2H%ptOCJ?_jjOf9j=1Yg8_bG%|=g3J#(^yr&$pA>T5; zRL7qicWJ*Y{_KH+?Zz)mSSY0!tJqPtn%0BSJ{0t0iaqOdQD_vzLS~a?XQ0uK{JX@E2qf||XCs!fTJ?ll8w6a5 zrB=L^Bj0|AJ3?+7y0=7|iuLr7ebBR0-CD*>oFrDKkI0Ky=_6Cb$bLK3W)&`LKt!@< zH##m@P#Fz3C{h^$S+elW`P057bw1fJ(=MwJu(D zDhS+6m3uJT^@Z(S8w!i0ra;h;3o>F5!xgCt$`--fH-KkZufX#jBD=6mX4+Dc-Z{2m<%4R1hA!&*SU~S9xD)J6W6S&d1y9?ti^L1kAE-dZT_o;XuILhi0fD z69@R8;4D^bV?-5Cps_gK2fGv_akwiVW{2`S#JB~cx6JRCp zBv6{72Ys%3#R5wflC+@?>q8P&IO1DZkPPEAA8DO+;ya)8srUQX-zQ9zIAyXJ+LDj3 zl_Q%zP6X%i7{4ZB&Gco~2EQ6%5l$4D$D#h;umg%pJC#n#Cix<%m8 zKhW}{EWfCkY9{;og@U~EYCnh&yFGDk=1EvWhCdsBD&;R0_$V0Smw!IfS^o``G7#>n zlQI&1PY3FYpOOH95WfbHD~T74WWy}dThsto?rj~ literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-9f/phpdoc-cache-file_dcfc7f8ba41f2ed3e5967d030ded64d7.dat b/docs/build/phpdoc-cache-9f/phpdoc-cache-file_dcfc7f8ba41f2ed3e5967d030ded64d7.dat new file mode 100644 index 0000000000000000000000000000000000000000..ad2be9e4255bf0621f063edf95e88b30c5044d66 GIT binary patch literal 70228 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 literal 0 HcmV?d00001 diff --git a/docs/build/phpdoc-cache-db/phpdoc-cache-file_8254b68fa0f2b7492ef026441398c792.dat b/docs/build/phpdoc-cache-db/phpdoc-cache-file_8254b68fa0f2b7492ef026441398c792.dat new file mode 100644 index 0000000000000000000000000000000000000000..7cfb1eb37d894badec9d17a5ffe085fa64aa40a2 GIT binary patch literal 13936 zcmeHOT~pgQ6zxy(WO&%!nQh~If_Z8wJG&3149oV38Ah??L{rC3B^$~x{P#Uq@@L|t z(1;RR`ar>PEa`rnbFOs#(d!?0oyBbNKJl|TkJCh6yywc7VnM(DB_dw^+3|Wk?^bzZ zuk-4US2Lz&okQjIdtRqI4EDp`xa;-@tQ&+uH|X>6C^*<>;~*Rb`*ffA)`F$xTNw5z zi4_Kw|E7|qd@8tl^LC=}ho2T7y~fn&%eWgusw9&>?;M`sifb;#Y|hn!`TT7pnBuB) z_|fYRH!SHWi6ZW&B8fYmORL$}j}|GP8`P?vzwE^rsw`=AbF=fvMaAIZmA|9$x zxmXSr^85f3SsTnpG`)H>!?p0giK7LRi2jWZhr9d6-Sb7nDOv0p(8LkTqrY=F@m$27 z3C&Q%ETT(Y3dhF^4YRa`Ocq?GNX4xasfalf8*`q{l3@F%4#{Pdc9)krJ!Iy?Yw$cS zt@Zo|J$S?Q<5ky7&mED4SA9W-Z}CMAN-0Z)U;4+`@k%H$5s^r5D5OT1TQ-U4uF``{ zPBq|eZ;}GV_L2p`nttE_(^zYcxB1WwgN!PJ7+-Y`rPtdpSDxN1ECdDSDiFsXz2PQ* zonx$v|KiVaavjs}jfv7c4VMu1lSP3POiBh*-)ZzT5f|`~Wsy#4+^%oHN2%9vm`O$n5i5R1h$&2ZxY`T5O<+*JVfJ>Q3 zYtPJiUBojkLCV3gfm$-3_U@7^MljQZXu|Vq$YBDa>BkjtY4fE*YHS`@N1Ac!eZ1Yr ztw)kW2Pua+F~4?J`3)1X5)AIxZZv37NScdDHs6{zN{AR>v1>8xoJ}uIX}mf%7;?Z& zklt66!jp)fo+gZPP?KJtfUX$_)q=iZcl%kO10AFxd74S&`<9YcXDcD2{h7iv z=Ao_ms!e(cgiQjV(2kQd)&cdCqBh`xPF|z5Eb}yCY)|KjO`6{CA$l7Ty=BCdIrsx< zS{HSXL(O%gx1qTn`ul~n>jzY(uAK~(WY~QX@w7f0BQ1*9Ej(3|E>GdAr;$3eGjlm( zaS-uis)$|$Pk};vrT(+CE8z|Xmi10^ud3WRctlBp#Lvyr#%3>qWaA!v;jWFP2Z(uZ zuBJK-U*fKS=F%!JVYhPH^{u0!dxRZPk0Ix<*eo1DNIp~t*Jz|o46jm6n>X!CV&vQ3 zn&6aUHvOD*#!@Ho{Y*LnD%qhuc{*0)INaSY> zQY7_LZdD1KRAFZaxUyb5K6J0H22#tbAMe)cDc@^qcS|X5)bx{V)X~xAl&2@z{CtLO zXme8c3m>ZGSig+r(D)C;@`h1c!F<*7KLpK3SPR@e;nGP$NAfQjSE+h4VW~gEA%sTu zYY|0y%R?qU$Ju^BC{IN=dMKjT_CS7kP-2?B{SSM2xuf+uNMJqYQoa69jJ6sscfMfP zN4WXk&hv#(a);R(eDu>B;htM;$0}TntzCDd477MW6kQy`^l3>elDKq=$IOwPu zy^TX`ZY%Ur)|4CLAP}_SDYP_zIFh0Y(EMPO>Mz`(@EzwMIgGTag*wQzx!8KqH$u9d z8dyVpr!$)LLg{V@f@>6k{0chan%zJ*a7Ppka=4~AVj>i#wGP4_NAtmUy)2{Ztlpkj zs7feXh+?-SYGif;0nw#3B3LwucK?#_o(XI?#b%F>z0P~`$y25J+ zN7G;UJ&k7An<_0)^c}j@C3{#+sZ}&k+Cu9-qF{Z#vc{ojf3*d*J|%=|E6?Gc_f=2o zBjGCbk*aKB%RW!GBUQ_Ifhtypc*Vn7kEyXeUNo_YB6$NZx_3WAEm6_4)oUp2`%ii2 zQ4?)?xVnrs#d|aP>jE{zX|DmAvH853k@YciJps|q+1Kw%JcnGUt z$uhkKo^AulUsX^fzVlZNKwes_RitDN-wl7Bo*sF}XJ>y7yZBe#QlNEVH1qCJ%D+Oj kGf&%>hPu6Vu2__D=k8837uw*^2xpqhbz~ZGu&E>Tf3F8)PXGV_ literal 0 HcmV?d00001 diff --git a/docs/classes/Base_MixpanelBase.html b/docs/classes/Mixpanel.Base.Base.html similarity index 75% rename from docs/classes/Base_MixpanelBase.html rename to docs/classes/Mixpanel.Base.Base.html index 39bfb63..01a4266 100644 --- a/docs/classes/Base_MixpanelBase.html +++ b/docs/classes/Mixpanel.Base.Base.html @@ -24,7 +24,7 @@ + + + + + + + + + + + + + + +

+ +
+
+ +
+
+
+
+
+ + + +

\Mixpanel\ProducersGroupsProducer

+

Provides an API to create/update group profiles on Mixpanel

+ + + +
+

Summary

+
+
+ Methods +
+
+ Properties +
+
+ Constants +
+
+
+
+ __construct()
+ __destruct()
+ flush()
+ reset()
+ getQueue()
+ getToken()
+ enqueue()
+ enqueueAll()
+ _getEndpoint()
+ set()
+ setOnce()
+ remove()
+ union()
+ deleteGroup()
+
+
+ No public properties found +
+
+ No constants found +
+
+
+
+ _getConsumer()
+ _persist()
+ _log()
+ _debug()
+
+
+ $_token
+ $_max_queue_size
+ $_options
+
+
+ N/A +
+
+
+
+ _constructPayload()
+
+
+ $_queue
+ $_consumer
+ $_consumers
+ $_defaults
+
+
+ N/A +
+
+
+
+ +
+ + + +
+
+

Properties

+
+ +
+ +
+
+ +
+

$_token

+
$_token : string
+

+ + +

Type

+ string + — a token associated to a Mixpanel project
+
+ +
+ +
+
+ +
+

$_max_queue_size

+
$_max_queue_size : integer
+

If the queue reaches this size we'll auto-flush to prevent out of memory errors

+ + +

Type

+ integer +
+
+ +
+ +
+
+ +
+

$_options

+
$_options : array
+

An array of options to be used by the Mixpanel library.

+ + +

Type

+ array +
+
+ +
+ +
+
+ +
+

$_queue

+
$_queue : array
+

+ + +

Type

+ array + — a queue to hold messages in memory before flushing in batches
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ +
+

$_consumers

+
$_consumers : array
+

+ + +

Type

+ array + — The list of available consumers
+
+ +
+ +
+
+ +
+

$_defaults

+
$_defaults : array
+

Default options that can be overridden via the $options constructor arg

+ + +

Type

+ array +
+
+ +
+ + + +
+

Methods

+ +
+ +
+
+ +
+

__construct()

+ +
__construct(array  $options = array()) 
+

Construct a new MixpanelBase object and merge custom options with defaults

+ + +

Parameters

+ + + + + + +
array$options
+ + + +
+
+ +
+ +
+
+ +
+

__destruct()

+ +
__destruct() 
+

Flush the queue when we destruct the client with retries

+ + + + + +
+
+ +
+ +
+
+ +
+

flush()

+ +
flush(integer  $desired_batch_size = 50) : boolean
+

Iterate the queue and write in batches using the instantiated Consumer Strategy

+ + +

Parameters

+ + + + + + +
integer$desired_batch_size
+ + +

Returns

+ boolean + —

whether or not the flush was successful

+ +
+
+ +
+ +
+
+ +
+

reset()

+ +
reset() 
+

Empties the queue without persisting any of the messages

+ + + + + +
+
+ +
+ +
+
+ +
+

getQueue()

+ +
getQueue() : array
+

Returns the in-memory queue

+ + + + +

Returns

+ array + +
+
+ +
+ +
+
+ +
+

getToken()

+ +
getToken() : string
+

Returns the current Mixpanel project token

+ + + + +

Returns

+ string + +
+
+ +
+ +
+
+ +
+

enqueue()

+ +
enqueue(array  $message = array()) 
+

Add an array representing a message to be sent to Mixpanel to a queue.

+ + +

Parameters

+ + + + + + +
array$message
+ + + +
+
+ +
+ +
+
+ +
+

enqueueAll()

+ +
enqueueAll(array  $messages = array()) 
+

Add an array representing a list of messages to be sent to Mixpanel to a queue.

+ + +

Parameters

+ + + + + + +
array$messages
+ + + +
+
+ +
+ +
+
+ +
+

_getEndpoint()

+ +
_getEndpoint() : string
+

Returns the "groups" endpoint

+ + + + +

Returns

+ string + +
+
+ +
+ +
+
+ +
+

set()

+ +
set(string|integer  $group_key, string|integer  $group_id, array  $props, boolean  $ignore_time = false) 
+

Set properties on a group profile. If the group profile does not exist, it creates it with these properties.

+

If it does exist, it sets the properties to these values, overwriting existing values.

+ +

Parameters

+ + + + + + + + + + + + + + + + + + + + + +
string|integer$group_key

the group_key used for groups in Project Settings

string|integer$group_id

the group id used for the group profile

array$props

associative array of properties to set on the group profile

boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the group profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + + +
+
+ +
+ +
+
+ +
+

setOnce()

+ +
setOnce(string|integer  $group_key, string|integer  $group_id, array  $props, boolean  $ignore_time = false) 
+

Set properties on a group profile. If the Group profile does not exist, it creates it with these properties.

+

If it does exist, it sets the properties to these values but WILL NOT overwrite existing values.

+ +

Parameters

+ + + + + + + + + + + + + + + + + + + + + +
string|integer$group_key

the group_key used for groups in Project Settings

string|integer$group_id

the group id used for the group profile

array$props

associative array of properties to set on the group profile

boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the group profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + + +
+
+ +
+ +
+
+ +
+

remove()

+ +
remove(string|integer  $group_key, string|integer  $group_id, array  $props, boolean  $ignore_time = false) 
+

Unset properties on a group profile. If the group does not exist, it creates it with no properties.

+

If it does exist, it unsets these properties. NOTE: In other libraries we use 'unset' which is +a reserved word in PHP.

+ +

Parameters

+ + + + + + + + + + + + + + + + + + + + + +
string|integer$group_key

the group_key used for groups in Project Settings

string|integer$group_id

the group id used for the group profile

array$props

associative array of properties to unset on the group profile

boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the group profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + + +
+
+ +
+ +
+
+ +
+

union()

+ +
union(string|integer  $group_key, string|integer  $group_id, string  $prop, string|array  $val, boolean  $ignore_time = false) 
+

Adds $val to a list located at $prop. If the property does not exist, it will be created. If $val is a string +and the list is empty or does not exist, a new list with one value will be created.

+ + +

Parameters

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
string|integer$group_key

the group_key used for groups in Project Settings

string|integer$group_id

the group id used for the group profile

string$prop

the property that holds the list

string|array$val

items to add to the list

boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the group profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + + +
+
+ +
+ +
+
+ +
+

deleteGroup()

+ +
deleteGroup(string|integer  $group_key, string|integer  $group_id, boolean  $ignore_time = false) 
+

Delete this group profile from Mixpanel

+ + +

Parameters

+ + + + + + + + + + + + + + + + +
string|integer$group_key

the group_key used for groups in Project Settings

string|integer$group_id

the group id used for the group profile

boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + + +
+
+ +
+ +
+
+ + +
+ +
+ +
+
+ +
+

_persist()

+ +
_persist(  $message) : mixed
+

Given an array of messages, persist it with the instantiated Persistence Strategy

+ + +

Parameters

+ + + + + + +
$message
+ + +

Returns

+ mixed + +
+
+ +
+ +
+
+ +
+

_log()

+ +
_log(  $msg) 
+

Log a message to PHP's error log

+ + +

Parameters

+ + + + + + +
$msg
+ + + +
+
+ +
+ +
+
+ +
+

_debug()

+ +
_debug() : boolean
+

Returns true if in debug mode, false if in production mode

+ + + + +

Returns

+ boolean + +
+
+ +
+ +
+
+ +
+

_constructPayload()

+ +
_constructPayload(  $group_key,   $group_id,   $operation,   $value, boolean  $ignore_time = false) : array
+

Internal method to prepare a message given the message data

+ + +

Parameters

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
$group_key
$group_id
$operation
$value
boolean$ignore_time

If the $ignore_time property is true, Mixpanel will not automatically update the "Last Seen" property of the group Profile. Otherwise, Mixpanel will add a "Last Seen" property associated with the current time

+ + +

Returns

+ array + +
+
+ +
+ +
+
+ + + + +
+ + + diff --git a/docs/classes/Producers_MixpanelPeople.html b/docs/classes/Mixpanel.Producers.PeopleProducer.html similarity index 82% rename from docs/classes/Producers_MixpanelPeople.html rename to docs/classes/Mixpanel.Producers.PeopleProducer.html index 42d3640..5c81a03 100644 --- a/docs/classes/Producers_MixpanelPeople.html +++ b/docs/classes/Mixpanel.Producers.PeopleProducer.html @@ -24,7 +24,7 @@ + + + + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+ + + +

ProducersGroupsProducer.php

+

+ + + + +

Classes

+ + + + + +
GroupsProducerProvides an API to create/update group profiles on Mixpanel
+
+ + +
+ + + +
+
+ + + + +
+ + + diff --git a/docs/files/Producers.MixpanelPeople.html b/docs/files/Producers.PeopleProducer.html similarity index 67% rename from docs/files/Producers.MixpanelPeople.html rename to docs/files/Producers.PeopleProducer.html index e6c919a..86e5247 100644 --- a/docs/files/Producers.MixpanelPeople.html +++ b/docs/files/Producers.PeopleProducer.html @@ -24,7 +24,7 @@ + + + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+ +

\MixpanelBase

+ + + + +

Classes

+ + + + + +
BaseThis a Base class which all Mixpanel classes extend from to provide some very basic +debugging and logging functionality. It also serves to persist $_options across the library.
+
+ + +
+ + + +
+
+ + +
+ + + diff --git a/docs/namespaces/Mixpanel.ConsumerStrategies.html b/docs/namespaces/Mixpanel.ConsumerStrategies.html new file mode 100644 index 0000000..b824154 --- /dev/null +++ b/docs/namespaces/Mixpanel.ConsumerStrategies.html @@ -0,0 +1,290 @@ + + + + + + API Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+ +

\MixpanelConsumerStrategies

+ + + + +

Classes

+ + + + + + + + + + + + + + + + + +
AbstractConsumerProvides some base methods for use by a Consumer implementation
CurlConsumerConsumes messages and sends them to a host/endpoint using cURL
FileConsumerConsumes messages and writes them to a file
SocketConsumerConsumes messages and writes them to host/endpoint using a persistent socket
+
+ + +
+ + + +
+
+ + +
+ + + diff --git a/docs/namespaces/Mixpanel.Producers.html b/docs/namespaces/Mixpanel.Producers.html new file mode 100644 index 0000000..9170e58 --- /dev/null +++ b/docs/namespaces/Mixpanel.Producers.html @@ -0,0 +1,290 @@ + + + + + + API Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+ +

\MixpanelProducers

+ + + + +

Classes

+ + + + + + + + + + + + + + + + + +
BaseProducerProvides some base methods for use by a message Producer
EventsProducerProvides an API to track events on Mixpanel
GroupsProducerProvides an API to create/update group profiles on Mixpanel
PeopleProducerProvides an API to create/update profiles on Mixpanel
+
+ + +
+ + + +
+
+ + +
+ + + diff --git a/docs/namespaces/Mixpanel.html b/docs/namespaces/Mixpanel.html new file mode 100644 index 0000000..3cffed5 --- /dev/null +++ b/docs/namespaces/Mixpanel.html @@ -0,0 +1,289 @@ + + + + + + API Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+
+
+
+ +

\Mixpanel

+ +

Namespaces

+ + + + + + + + + + +
Base
ConsumerStrategies
Producers
+ + + +

Classes

+ + + + + +
MixpanelThis is the main class for the Mixpanel PHP Library which provides all of the methods you need to track events, +create/update profiles and group profiles.
+
+ + +
+ + + +
+
+ + +
+ + + diff --git a/docs/namespaces/default.html b/docs/namespaces/default.html index 785ee1a..07b46b9 100644 --- a/docs/namespaces/default.html +++ b/docs/namespaces/default.html @@ -39,6 +39,14 @@