Plugin Directory

Changeset 2452159


Ignore:
Timestamp:
01/07/2021 09:13:10 PM (5 years ago)
Author:
foadyousefi
Message:

New release 0.3.0

Location:
redisearch/trunk
Files:
73 added
1 deleted
38 edited

Legend:

Unmodified
Added
Removed
  • redisearch/trunk/README.md

    r2344931 r2452159  
    11# RediSearch
     2
     3**IMPORTANT**: The latest version of this plugin supports RediSearch version 2.0 (or higher) which runs on Redis 6.0 (or higher). If you have version prior to 2.0, please use this plugins 0.2.7.
    24
    35Redisearch implements a search engine on top of Redis. It has lots of advanced features, like exact phrase matching and numeric filtering for text queries, that are nearly not possible or inefficient with mysql search queries.
     
    5153
    5254### Changelog
     55
     56##### 0.3.0
     57* **Updated**: Implemented RediSearch version 2.0
    5358
    5459##### 0.2.7
  • redisearch/trunk/composer.json

    r2002529 r2452159  
    11{
    2     "name": "WPRedisearch/WPRedisearch",
     2    "name": "wp-redisearch/wp-redisearch",
    33    "description": "RediSearch plugin for Wordpress",
    44    "keywords": ["wordpress", "redis", "redisearch"],
     
    1717    "autoload": {
    1818        "psr-4": {
    19             "WPRedisearch\\": "lib/"
     19            "WpRediSearch\\": "src/"
    2020        }
    2121    },
     
    2525        "foadyousefi/seven-fields": "dev-master",
    2626        "asika/pdf2text": "dev-master",
    27         "vaites/php-apache-tika": "dev-master"
     27        "vaites/php-apache-tika": "dev-master",
     28        "front/redisearch": "dev-master"
    2829    }
    2930}
  • redisearch/trunk/composer.lock

    r2013762 r2452159  
    22    "_readme": [
    33        "This file locks the dependencies of your project to a known state",
    4         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
     4        "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
    55        "This file is @generated automatically"
    66    ],
    7     "content-hash": "513907664dc6e630cb7441dd243d8bff",
     7    "content-hash": "a9d260ab686d236f3173db3e4ca44f93",
    88    "packages": [
    99        {
     
    7979        },
    8080        {
     81            "name": "front/redisearch",
     82            "version": "dev-master",
     83            "source": {
     84                "type": "git",
     85                "url": "https://github.com/front/redisearch.git",
     86                "reference": "e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9"
     87            },
     88            "dist": {
     89                "type": "zip",
     90                "url": "https://api.github.com/repos/front/redisearch/zipball/e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9",
     91                "reference": "e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9",
     92                "shasum": ""
     93            },
     94            "require": {
     95                "predis/predis": "^1.1"
     96            },
     97            "type": "library",
     98            "autoload": {
     99                "psr-4": {
     100                    "FKRediSearch\\": "src/"
     101                }
     102            },
     103            "notification-url": "https://packagist.org/downloads/",
     104            "license": [
     105                "MIT"
     106            ],
     107            "authors": [
     108                {
     109                    "name": "Foad Yousefi",
     110                    "email": "foadyousefi@gmail.com",
     111                    "homepage": "https://frontkom.no"
     112                },
     113                {
     114                    "name": "Fábio Neves",
     115                    "email": "fabio@frontkom.com",
     116                    "homepage": "https://frontkom.com"
     117                },
     118                {
     119                    "name": "Bartosz Jarzyna",
     120                    "email": "bartosz@netkata.com",
     121                    "homepage": "https://netkata.com"
     122                }
     123            ],
     124            "description": "CMS/Framework agnostic RediSearch client",
     125            "homepage": "http://github.com/front/redisearch",
     126            "keywords": [
     127                "redis",
     128                "redisearch"
     129            ],
     130            "time": "2020-10-13T12:33:36+00:00"
     131        },
     132        {
    81133            "name": "predis/predis",
    82134            "version": "v1.1.x-dev",
    83135            "source": {
    84136                "type": "git",
    85                 "url": "https://github.com/nrk/predis.git",
    86                 "reference": "111d100ee389d624036b46b35ed0c9ac59c71313"
    87             },
    88             "dist": {
    89                 "type": "zip",
    90                 "url": "https://api.github.com/repos/nrk/predis/zipball/111d100ee389d624036b46b35ed0c9ac59c71313",
    91                 "reference": "111d100ee389d624036b46b35ed0c9ac59c71313",
     137                "url": "https://github.com/predis/predis.git",
     138                "reference": "5f4b87080f4df0042a57d537137c1d2c17a2b79a"
     139            },
     140            "dist": {
     141                "type": "zip",
     142                "url": "https://api.github.com/repos/predis/predis/zipball/5f4b87080f4df0042a57d537137c1d2c17a2b79a",
     143                "reference": "5f4b87080f4df0042a57d537137c1d2c17a2b79a",
    92144                "shasum": ""
    93145            },
     
    96148            },
    97149            "require-dev": {
     150                "cweagans/composer-patches": "^1.6",
    98151                "phpunit/phpunit": "~4.8"
    99152            },
     
    103156            },
    104157            "type": "library",
     158            "extra": {
     159                "composer-exit-on-patch-failure": true,
     160                "patches": {
     161                    "phpunit/phpunit-mock-objects": {
     162                        "Fix PHP 7 and 8 compatibility": "./tests/phpunit_mock_objects.patch"
     163                    },
     164                    "phpunit/phpunit": {
     165                        "Fix PHP 7 compatibility": "./tests/phpunit_php7.patch",
     166                        "Fix PHP 8 compatibility": "./tests/phpunit_php8.patch"
     167                    }
     168                }
     169            },
    105170            "autoload": {
    106171                "psr-4": {
     
    116181                    "name": "Daniele Alessandri",
    117182                    "email": "suppakilla@gmail.com",
    118                     "homepage": "http://clorophilla.net"
     183                    "homepage": "http://clorophilla.net",
     184                    "role": "Creator & Maintainer"
     185                },
     186                {
     187                    "name": "Till Krüss",
     188                    "homepage": "https://till.im",
     189                    "role": "Maintainer"
    119190                }
    120191            ],
    121192            "description": "Flexible and feature-complete Redis client for PHP and HHVM",
    122             "homepage": "http://github.com/nrk/predis",
     193            "homepage": "http://github.com/predis/predis",
    123194            "keywords": [
    124195                "nosql",
     
    126197                "redis"
    127198            ],
    128             "time": "2017-07-12T14:39:17+00:00"
     199            "funding": [
     200                {
     201                    "url": "https://github.com/sponsors/tillkruss",
     202                    "type": "github"
     203                }
     204            ],
     205            "time": "2020-09-20T15:16:49+00:00"
    129206        },
    130207        {
     
    134211                "type": "git",
    135212                "url": "https://github.com/vaites/php-apache-tika.git",
    136                 "reference": "daf173e255b659aac23bd2fead757e50bc05c6e9"
    137             },
    138             "dist": {
    139                 "type": "zip",
    140                 "url": "https://api.github.com/repos/vaites/php-apache-tika/zipball/daf173e255b659aac23bd2fead757e50bc05c6e9",
    141                 "reference": "daf173e255b659aac23bd2fead757e50bc05c6e9",
     213                "reference": "dcc27626ee7d0f572a828539a607d734094b9e73"
     214            },
     215            "dist": {
     216                "type": "zip",
     217                "url": "https://api.github.com/repos/vaites/php-apache-tika/zipball/dcc27626ee7d0f572a828539a607d734094b9e73",
     218                "reference": "dcc27626ee7d0f572a828539a607d734094b9e73",
    142219                "shasum": ""
    143220            },
    144221            "require": {
    145222                "ext-curl": "*",
    146                 "php": ">=5.4.0"
     223                "php": ">=7.2.0"
    147224            },
    148225            "require-dev": {
    149                 "phpunit/phpunit": "^4.8"
    150             },
    151             "type": "library",
     226                "filp/whoops": "^2.7",
     227                "nunomaduro/phpinsights": "^1.14",
     228                "phpstan/phpstan": "^0.12.26",
     229                "phpunit/phpunit": "^8.0",
     230                "symfony/var-dumper": "^5.1"
     231            },
     232            "type": "library",
     233            "extra": {
     234                "supported-versions": [
     235                    "1.15",
     236                    "1.16",
     237                    "1.17",
     238                    "1.18",
     239                    "1.19",
     240                    "1.19.1",
     241                    "1.20",
     242                    "1.21",
     243                    "1.22",
     244                    "1.23",
     245                    "1.24",
     246                    "1.24.1"
     247                ]
     248            },
    152249            "autoload": {
    153250                "psr-4": {
     
    179276                "tika"
    180277            ],
    181             "time": "2018-10-18T20:15:16+00:00"
     278            "time": "2020-10-19T20:23:24+00:00"
    182279        }
    183280    ],
     
    188285        "foadyousefi/seven-fields": 20,
    189286        "asika/pdf2text": 20,
    190         "vaites/php-apache-tika": 20
     287        "vaites/php-apache-tika": 20,
     288        "front/redisearch": 20
    191289    },
    192290    "prefer-stable": false,
    193291    "prefer-lowest": false,
    194292    "platform": [],
    195     "platform-dev": []
     293    "platform-dev": [],
     294    "plugin-api-version": "1.1.0"
    196295}
  • redisearch/trunk/readme.txt

    r2344931 r2452159  
    55Donate link: https://www.paypal.me/foadyousefi
    66Tags: search, redisearch, redis, fuzzy, aggregation, searching, autosuggest, suggest, advanced search, woocommerce
    7 Requires at least: 4.6
    8 Tested up to: 5.4.2
    9 Stable tag: 0.2.7
    10 Requires PHP: 5.4
     7Requires at least: 5.0
     8Tested up to: 5.6
     9Stable tag: 0.3.0
     10Requires PHP: 7.2
    1111License: GPLv2 or later
    1212License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    1717
    1818Redisearch implements a search engine on top of Redis. It has lots of advanced features, like exact phrase matching and numeric filtering for text queries, that are nearly not possible or inefficient with mysql search queries.
     19
     20
     21== IMPORTANT ==
     22__The latest version of this plugin supports RediSearch version 2.0 (or higher) which runs on Redis 6.0 (or higher). If you have version prior to 2.0, please use this plugins 0.2.7.__
    1923
    2024Here you find a list of RediSearch features included in the plugin:
     
    6266
    6367== Changelog ==
     68
     69= 0.3.0 =
     70* Updated: Implemented RediSearch version 2.0
    6471
    6572= 0.2.7 =
  • redisearch/trunk/vendor/composer/ClassLoader.php

    r1949960 r2452159  
    6161    {
    6262        if (!empty($this->prefixesPsr0)) {
    63             return call_user_func_array('array_merge', $this->prefixesPsr0);
     63            return call_user_func_array('array_merge', array_values($this->prefixesPsr0));
    6464        }
    6565
     
    280280    public function setApcuPrefix($apcuPrefix)
    281281    {
    282         $this->apcuPrefix = function_exists('apcu_fetch') && ini_get('apc.enabled') ? $apcuPrefix : null;
     282        $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null;
    283283    }
    284284
     
    378378            while (false !== $lastPos = strrpos($subPath, '\\')) {
    379379                $subPath = substr($subPath, 0, $lastPos);
    380                 $search = $subPath.'\\';
     380                $search = $subPath . '\\';
    381381                if (isset($this->prefixDirsPsr4[$search])) {
     382                    $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1);
    382383                    foreach ($this->prefixDirsPsr4[$search] as $dir) {
    383                         $length = $this->prefixLengthsPsr4[$first][$search];
    384                         if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
     384                        if (file_exists($file = $dir . $pathEnd)) {
    385385                            return $file;
    386386                        }
  • redisearch/trunk/vendor/composer/autoload_classmap.php

    r2013762 r2452159  
    88return array(
    99    'Asika\\Pdf2text' => $vendorDir . '/asika/pdf2text/src/Pdf2text.php',
     10    'FKRediSearch\\Document' => $vendorDir . '/front/redisearch/src/Document.php',
     11    'FKRediSearch\\Fields\\AbstractField' => $vendorDir . '/front/redisearch/src/Fields/AbstractField.php',
     12    'FKRediSearch\\Fields\\FieldInterface' => $vendorDir . '/front/redisearch/src/Fields/FieldInterface.php',
     13    'FKRediSearch\\Fields\\GeoField' => $vendorDir . '/front/redisearch/src/Fields/GeoField.php',
     14    'FKRediSearch\\Fields\\GeoLocation' => $vendorDir . '/front/redisearch/src/Fields/GeoLocation.php',
     15    'FKRediSearch\\Fields\\Noindex' => $vendorDir . '/front/redisearch/src/Fields/Noindex.php',
     16    'FKRediSearch\\Fields\\NumericField' => $vendorDir . '/front/redisearch/src/Fields/NumericField.php',
     17    'FKRediSearch\\Fields\\Sortable' => $vendorDir . '/front/redisearch/src/Fields/Sortable.php',
     18    'FKRediSearch\\Fields\\TagField' => $vendorDir . '/front/redisearch/src/Fields/TagField.php',
     19    'FKRediSearch\\Fields\\TextField' => $vendorDir . '/front/redisearch/src/Fields/TextField.php',
     20    'FKRediSearch\\Index' => $vendorDir . '/front/redisearch/src/Index.php',
     21    'FKRediSearch\\Query\\Query' => $vendorDir . '/front/redisearch/src/Query/Query.php',
     22    'FKRediSearch\\Query\\QueryBuilder' => $vendorDir . '/front/redisearch/src/Query/QueryBuilder.php',
     23    'FKRediSearch\\Query\\SearchResult' => $vendorDir . '/front/redisearch/src/Query/SearchResult.php',
     24    'FKRediSearch\\RedisRaw\\AbstractRedisRawClient' => $vendorDir . '/front/redisearch/src/RedisRaw/AbstractRedisRawClient.php',
     25    'FKRediSearch\\RedisRaw\\PredisAdapter' => $vendorDir . '/front/redisearch/src/RedisRaw/PredisAdapter.php',
     26    'FKRediSearch\\RedisRaw\\RedisRawClientInterface' => $vendorDir . '/front/redisearch/src/RedisRaw/RedisRawClientInterface.php',
     27    'FKRediSearch\\Setup' => $vendorDir . '/front/redisearch/src/Setup.php',
    1028    'Predis\\Autoloader' => $vendorDir . '/predis/predis/src/Autoloader.php',
    1129    'Predis\\Client' => $vendorDir . '/predis/predis/src/Client.php',
     
    296314    'Vaites\\ApacheTika\\Metadata\\ImageMetadata' => $vendorDir . '/vaites/php-apache-tika/src/Metadata/ImageMetadata.php',
    297315    'Vaites\\ApacheTika\\Metadata\\Metadata' => $vendorDir . '/vaites/php-apache-tika/src/Metadata/Metadata.php',
    298     'WPRedisearch\\Admin' => $baseDir . '/lib/Admin/Admin.php',
    299     'WPRedisearch\\Feature' => $baseDir . '/lib/Feature.php',
    300     'WPRedisearch\\Features' => $baseDir . '/lib/Features.php',
    301     'WPRedisearch\\Features\\Document' => $baseDir . '/lib/Features/Document.php',
    302     'WPRedisearch\\Features\\LiveSearch' => $baseDir . '/lib/Features/LiveSearch/LiveSearch.php',
    303     'WPRedisearch\\Features\\Synonym' => $baseDir . '/lib/Features/Synonym.php',
    304     'WPRedisearch\\Features\\WooCommerce' => $baseDir . '/lib/Features/Woocommerce.php',
    305     'WPRedisearch\\RediSearch\\Index' => $baseDir . '/lib/RediSearch/Index.php',
    306     'WPRedisearch\\RediSearch\\Search' => $baseDir . '/lib/RediSearch/Search.php',
    307     'WPRedisearch\\RediSearch\\Setup' => $baseDir . '/lib/RediSearch/Setup.php',
    308     'WPRedisearch\\RedisRaw\\AbstractRedisRawClient' => $baseDir . '/lib/RedisRaw/AbstractRedisRawClient.php',
    309     'WPRedisearch\\RedisRaw\\PredisAdapter' => $baseDir . '/lib/RedisRaw/PredisAdapter.php',
    310     'WPRedisearch\\RedisRaw\\RedisRawClientInterface' => $baseDir . '/lib/RedisRaw/RedisRawClientInterface.php',
    311     'WPRedisearch\\Settings' => $baseDir . '/lib/Settings.php',
    312     'WPRedisearch\\Utils\\MsOfficeParser' => $baseDir . '/lib/Utils/MsOfficeParser.php',
    313     'WPRedisearch\\WPRedisearch' => $baseDir . '/lib/WP-Redisearch.php',
     316    'Vaites\\ApacheTika\\Metadata\\MetadataInterface' => $vendorDir . '/vaites/php-apache-tika/src/Metadata/MetadataInterface.php',
     317    'WpRediSearch\\Admin' => $baseDir . '/src/Admin/Admin.php',
     318    'WpRediSearch\\Feature' => $baseDir . '/src/Feature.php',
     319    'WpRediSearch\\Features' => $baseDir . '/src/Features.php',
     320    'WpRediSearch\\Features\\Document' => $baseDir . '/src/Features/Document.php',
     321    'WpRediSearch\\Features\\LiveSearch' => $baseDir . '/src/Features/LiveSearch/LiveSearch.php',
     322    'WpRediSearch\\Features\\Synonym' => $baseDir . '/src/Features/Synonym.php',
     323    'WpRediSearch\\Features\\WooCommerce' => $baseDir . '/src/Features/Woocommerce.php',
     324    'WpRediSearch\\RediSearch\\Index' => $baseDir . '/src/RediSearch/Index.php',
     325    'WpRediSearch\\RediSearch\\Search' => $baseDir . '/src/RediSearch/Search.php',
     326    'WpRediSearch\\RediSearch\\Setup' => $baseDir . '/src/RediSearch/Setup.php',
     327    'WpRediSearch\\RedisRaw\\AbstractRedisRawClient' => $baseDir . '/src/RedisRaw/AbstractRedisRawClient.php',
     328    'WpRediSearch\\RedisRaw\\PredisAdapter' => $baseDir . '/src/RedisRaw/PredisAdapter.php',
     329    'WpRediSearch\\RedisRaw\\RedisRawClientInterface' => $baseDir . '/src/RedisRaw/RedisRawClientInterface.php',
     330    'WpRediSearch\\Settings' => $baseDir . '/src/Settings.php',
     331    'WpRediSearch\\Utils\\MsOfficeParser' => $baseDir . '/src/Utils/MsOfficeParser.php',
     332    'WpRediSearch\\WpRediSearch' => $baseDir . '/src/WpRediSearch.php',
    314333);
  • redisearch/trunk/vendor/composer/autoload_psr4.php

    r2002529 r2452159  
    77
    88return array(
    9     'WPRedisearch\\' => array($baseDir . '/lib'),
     9    'WpRediSearch\\' => array($baseDir . '/src'),
    1010    'Vaites\\ApacheTika\\' => array($vendorDir . '/vaites/php-apache-tika/src'),
    1111    'SevenFields\\' => array($vendorDir . '/foadyousefi/seven-fields/src'),
    1212    'Predis\\' => array($vendorDir . '/predis/predis/src'),
     13    'FKRediSearch\\' => array($vendorDir . '/front/redisearch/src'),
    1314    'Asika\\' => array($vendorDir . '/asika/pdf2text/src'),
    1415);
  • redisearch/trunk/vendor/composer/autoload_real.php

    r1949960 r2452159  
    1414    }
    1515
     16    /**
     17     * @return \Composer\Autoload\ClassLoader
     18     */
    1619    public static function getLoader()
    1720    {
  • redisearch/trunk/vendor/composer/autoload_static.php

    r2013762 r2452159  
    1010        'W' =>
    1111        array (
    12             'WPRedisearch\\' => 13,
     12            'WpRediSearch\\' => 13,
    1313        ),
    1414        'V' =>
     
    2424            'Predis\\' => 7,
    2525        ),
     26        'F' =>
     27        array (
     28            'FKRediSearch\\' => 13,
     29        ),
    2630        'A' =>
    2731        array (
     
    3135
    3236    public static $prefixDirsPsr4 = array (
    33         'WPRedisearch\\' =>
    34         array (
    35             0 => __DIR__ . '/../..' . '/lib',
     37        'WpRediSearch\\' =>
     38        array (
     39            0 => __DIR__ . '/../..' . '/src',
    3640        ),
    3741        'Vaites\\ApacheTika\\' =>
     
    4650        array (
    4751            0 => __DIR__ . '/..' . '/predis/predis/src',
     52        ),
     53        'FKRediSearch\\' =>
     54        array (
     55            0 => __DIR__ . '/..' . '/front/redisearch/src',
    4856        ),
    4957        'Asika\\' =>
     
    5563    public static $classMap = array (
    5664        'Asika\\Pdf2text' => __DIR__ . '/..' . '/asika/pdf2text/src/Pdf2text.php',
     65        'FKRediSearch\\Document' => __DIR__ . '/..' . '/front/redisearch/src/Document.php',
     66        'FKRediSearch\\Fields\\AbstractField' => __DIR__ . '/..' . '/front/redisearch/src/Fields/AbstractField.php',
     67        'FKRediSearch\\Fields\\FieldInterface' => __DIR__ . '/..' . '/front/redisearch/src/Fields/FieldInterface.php',
     68        'FKRediSearch\\Fields\\GeoField' => __DIR__ . '/..' . '/front/redisearch/src/Fields/GeoField.php',
     69        'FKRediSearch\\Fields\\GeoLocation' => __DIR__ . '/..' . '/front/redisearch/src/Fields/GeoLocation.php',
     70        'FKRediSearch\\Fields\\Noindex' => __DIR__ . '/..' . '/front/redisearch/src/Fields/Noindex.php',
     71        'FKRediSearch\\Fields\\NumericField' => __DIR__ . '/..' . '/front/redisearch/src/Fields/NumericField.php',
     72        'FKRediSearch\\Fields\\Sortable' => __DIR__ . '/..' . '/front/redisearch/src/Fields/Sortable.php',
     73        'FKRediSearch\\Fields\\TagField' => __DIR__ . '/..' . '/front/redisearch/src/Fields/TagField.php',
     74        'FKRediSearch\\Fields\\TextField' => __DIR__ . '/..' . '/front/redisearch/src/Fields/TextField.php',
     75        'FKRediSearch\\Index' => __DIR__ . '/..' . '/front/redisearch/src/Index.php',
     76        'FKRediSearch\\Query\\Query' => __DIR__ . '/..' . '/front/redisearch/src/Query/Query.php',
     77        'FKRediSearch\\Query\\QueryBuilder' => __DIR__ . '/..' . '/front/redisearch/src/Query/QueryBuilder.php',
     78        'FKRediSearch\\Query\\SearchResult' => __DIR__ . '/..' . '/front/redisearch/src/Query/SearchResult.php',
     79        'FKRediSearch\\RedisRaw\\AbstractRedisRawClient' => __DIR__ . '/..' . '/front/redisearch/src/RedisRaw/AbstractRedisRawClient.php',
     80        'FKRediSearch\\RedisRaw\\PredisAdapter' => __DIR__ . '/..' . '/front/redisearch/src/RedisRaw/PredisAdapter.php',
     81        'FKRediSearch\\RedisRaw\\RedisRawClientInterface' => __DIR__ . '/..' . '/front/redisearch/src/RedisRaw/RedisRawClientInterface.php',
     82        'FKRediSearch\\Setup' => __DIR__ . '/..' . '/front/redisearch/src/Setup.php',
    5783        'Predis\\Autoloader' => __DIR__ . '/..' . '/predis/predis/src/Autoloader.php',
    5884        'Predis\\Client' => __DIR__ . '/..' . '/predis/predis/src/Client.php',
     
    343369        'Vaites\\ApacheTika\\Metadata\\ImageMetadata' => __DIR__ . '/..' . '/vaites/php-apache-tika/src/Metadata/ImageMetadata.php',
    344370        'Vaites\\ApacheTika\\Metadata\\Metadata' => __DIR__ . '/..' . '/vaites/php-apache-tika/src/Metadata/Metadata.php',
    345         'WPRedisearch\\Admin' => __DIR__ . '/../..' . '/lib/Admin/Admin.php',
    346         'WPRedisearch\\Feature' => __DIR__ . '/../..' . '/lib/Feature.php',
    347         'WPRedisearch\\Features' => __DIR__ . '/../..' . '/lib/Features.php',
    348         'WPRedisearch\\Features\\Document' => __DIR__ . '/../..' . '/lib/Features/Document.php',
    349         'WPRedisearch\\Features\\LiveSearch' => __DIR__ . '/../..' . '/lib/Features/LiveSearch/LiveSearch.php',
    350         'WPRedisearch\\Features\\Synonym' => __DIR__ . '/../..' . '/lib/Features/Synonym.php',
    351         'WPRedisearch\\Features\\WooCommerce' => __DIR__ . '/../..' . '/lib/Features/Woocommerce.php',
    352         'WPRedisearch\\RediSearch\\Index' => __DIR__ . '/../..' . '/lib/RediSearch/Index.php',
    353         'WPRedisearch\\RediSearch\\Search' => __DIR__ . '/../..' . '/lib/RediSearch/Search.php',
    354         'WPRedisearch\\RediSearch\\Setup' => __DIR__ . '/../..' . '/lib/RediSearch/Setup.php',
    355         'WPRedisearch\\RedisRaw\\AbstractRedisRawClient' => __DIR__ . '/../..' . '/lib/RedisRaw/AbstractRedisRawClient.php',
    356         'WPRedisearch\\RedisRaw\\PredisAdapter' => __DIR__ . '/../..' . '/lib/RedisRaw/PredisAdapter.php',
    357         'WPRedisearch\\RedisRaw\\RedisRawClientInterface' => __DIR__ . '/../..' . '/lib/RedisRaw/RedisRawClientInterface.php',
    358         'WPRedisearch\\Settings' => __DIR__ . '/../..' . '/lib/Settings.php',
    359         'WPRedisearch\\Utils\\MsOfficeParser' => __DIR__ . '/../..' . '/lib/Utils/MsOfficeParser.php',
    360         'WPRedisearch\\WPRedisearch' => __DIR__ . '/../..' . '/lib/WP-Redisearch.php',
     371        'Vaites\\ApacheTika\\Metadata\\MetadataInterface' => __DIR__ . '/..' . '/vaites/php-apache-tika/src/Metadata/MetadataInterface.php',
     372        'WpRediSearch\\Admin' => __DIR__ . '/../..' . '/src/Admin/Admin.php',
     373        'WpRediSearch\\Feature' => __DIR__ . '/../..' . '/src/Feature.php',
     374        'WpRediSearch\\Features' => __DIR__ . '/../..' . '/src/Features.php',
     375        'WpRediSearch\\Features\\Document' => __DIR__ . '/../..' . '/src/Features/Document.php',
     376        'WpRediSearch\\Features\\LiveSearch' => __DIR__ . '/../..' . '/src/Features/LiveSearch/LiveSearch.php',
     377        'WpRediSearch\\Features\\Synonym' => __DIR__ . '/../..' . '/src/Features/Synonym.php',
     378        'WpRediSearch\\Features\\WooCommerce' => __DIR__ . '/../..' . '/src/Features/Woocommerce.php',
     379        'WpRediSearch\\RediSearch\\Index' => __DIR__ . '/../..' . '/src/RediSearch/Index.php',
     380        'WpRediSearch\\RediSearch\\Search' => __DIR__ . '/../..' . '/src/RediSearch/Search.php',
     381        'WpRediSearch\\RediSearch\\Setup' => __DIR__ . '/../..' . '/src/RediSearch/Setup.php',
     382        'WpRediSearch\\RedisRaw\\AbstractRedisRawClient' => __DIR__ . '/../..' . '/src/RedisRaw/AbstractRedisRawClient.php',
     383        'WpRediSearch\\RedisRaw\\PredisAdapter' => __DIR__ . '/../..' . '/src/RedisRaw/PredisAdapter.php',
     384        'WpRediSearch\\RedisRaw\\RedisRawClientInterface' => __DIR__ . '/../..' . '/src/RedisRaw/RedisRawClientInterface.php',
     385        'WpRediSearch\\Settings' => __DIR__ . '/../..' . '/src/Settings.php',
     386        'WpRediSearch\\Utils\\MsOfficeParser' => __DIR__ . '/../..' . '/src/Utils/MsOfficeParser.php',
     387        'WpRediSearch\\WpRediSearch' => __DIR__ . '/../..' . '/src/WpRediSearch.php',
    361388    );
    362389
  • redisearch/trunk/vendor/composer/installed.json

    r2013762 r2452159  
    11[
     2    {
     3        "name": "asika/pdf2text",
     4        "version": "dev-master",
     5        "version_normalized": "9999999-dev",
     6        "source": {
     7            "type": "git",
     8            "url": "https://github.com/asika32764/php-pdf-2-text.git",
     9            "reference": "a14ea95695a277e385dbc03caeddb91c5e10319f"
     10        },
     11        "dist": {
     12            "type": "zip",
     13            "url": "https://api.github.com/repos/asika32764/php-pdf-2-text/zipball/a14ea95695a277e385dbc03caeddb91c5e10319f",
     14            "reference": "a14ea95695a277e385dbc03caeddb91c5e10319f",
     15            "shasum": ""
     16        },
     17        "time": "2016-11-02T03:47:29+00:00",
     18        "type": "library",
     19        "installation-source": "source",
     20        "autoload": {
     21            "psr-4": {
     22                "Asika\\": "src"
     23            }
     24        },
     25        "notification-url": "https://packagist.org/downloads/",
     26        "license": [
     27            "GPL v2"
     28        ],
     29        "authors": [
     30            {
     31                "name": "Simon Asika",
     32                "email": "asika32764@gmail.com"
     33            }
     34        ],
     35        "description": "Simple PHP PDF to text class."
     36    },
     37    {
     38        "name": "foadyousefi/seven-fields",
     39        "version": "dev-master",
     40        "version_normalized": "9999999-dev",
     41        "source": {
     42            "type": "git",
     43            "url": "https://github.com/foadyousefi/seven-fields.git",
     44            "reference": "89e1431b0960657135ee44095d862afe48baeb62"
     45        },
     46        "dist": {
     47            "type": "zip",
     48            "url": "https://api.github.com/repos/foadyousefi/seven-fields/zipball/89e1431b0960657135ee44095d862afe48baeb62",
     49            "reference": "89e1431b0960657135ee44095d862afe48baeb62",
     50            "shasum": ""
     51        },
     52        "require": {
     53            "php": ">=5.3"
     54        },
     55        "time": "2019-01-09T12:17:22+00:00",
     56        "type": "library",
     57        "installation-source": "source",
     58        "autoload": {
     59            "psr-4": {
     60                "SevenFields\\": "src/"
     61            }
     62        },
     63        "notification-url": "https://packagist.org/downloads/",
     64        "license": [
     65            "GPL-2.0"
     66        ],
     67        "authors": [
     68            {
     69                "name": "Foad Yousefi",
     70                "email": "foadyousefi@gmail.com",
     71                "homepage": "https://7km.co/"
     72            }
     73        ],
     74        "description": "WordPress developer-friendly option pages with custom fields.",
     75        "homepage": "https://7km.co/"
     76    },
     77    {
     78        "name": "front/redisearch",
     79        "version": "dev-master",
     80        "version_normalized": "9999999-dev",
     81        "source": {
     82            "type": "git",
     83            "url": "https://github.com/front/redisearch.git",
     84            "reference": "e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9"
     85        },
     86        "dist": {
     87            "type": "zip",
     88            "url": "https://api.github.com/repos/front/redisearch/zipball/e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9",
     89            "reference": "e74aa4dd41f3bdbee1a501b2cedf679ae0331ed9",
     90            "shasum": ""
     91        },
     92        "require": {
     93            "predis/predis": "^1.1"
     94        },
     95        "time": "2020-10-13T12:33:36+00:00",
     96        "type": "library",
     97        "installation-source": "source",
     98        "autoload": {
     99            "psr-4": {
     100                "FKRediSearch\\": "src/"
     101            }
     102        },
     103        "notification-url": "https://packagist.org/downloads/",
     104        "license": [
     105            "MIT"
     106        ],
     107        "authors": [
     108            {
     109                "name": "Foad Yousefi",
     110                "email": "foadyousefi@gmail.com",
     111                "homepage": "https://frontkom.no"
     112            },
     113            {
     114                "name": "Fábio Neves",
     115                "email": "fabio@frontkom.com",
     116                "homepage": "https://frontkom.com"
     117            },
     118            {
     119                "name": "Bartosz Jarzyna",
     120                "email": "bartosz@netkata.com",
     121                "homepage": "https://netkata.com"
     122            }
     123        ],
     124        "description": "CMS/Framework agnostic RediSearch client",
     125        "homepage": "http://github.com/front/redisearch",
     126        "keywords": [
     127            "redis",
     128            "redisearch"
     129        ]
     130    },
    2131    {
    3132        "name": "predis/predis",
     
    6135        "source": {
    7136            "type": "git",
    8             "url": "https://github.com/nrk/predis.git",
    9             "reference": "111d100ee389d624036b46b35ed0c9ac59c71313"
    10         },
    11         "dist": {
    12             "type": "zip",
    13             "url": "https://api.github.com/repos/nrk/predis/zipball/111d100ee389d624036b46b35ed0c9ac59c71313",
    14             "reference": "111d100ee389d624036b46b35ed0c9ac59c71313",
     137            "url": "https://github.com/predis/predis.git",
     138            "reference": "5f4b87080f4df0042a57d537137c1d2c17a2b79a"
     139        },
     140        "dist": {
     141            "type": "zip",
     142            "url": "https://api.github.com/repos/predis/predis/zipball/5f4b87080f4df0042a57d537137c1d2c17a2b79a",
     143            "reference": "5f4b87080f4df0042a57d537137c1d2c17a2b79a",
    15144            "shasum": ""
    16145        },
     
    19148        },
    20149        "require-dev": {
     150            "cweagans/composer-patches": "^1.6",
    21151            "phpunit/phpunit": "~4.8"
    22152        },
     
    25155            "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
    26156        },
    27         "time": "2017-07-12T14:39:17+00:00",
    28         "type": "library",
     157        "time": "2020-09-20T15:16:49+00:00",
     158        "type": "library",
     159        "extra": {
     160            "composer-exit-on-patch-failure": true,
     161            "patches": {
     162                "phpunit/phpunit-mock-objects": {
     163                    "Fix PHP 7 and 8 compatibility": "./tests/phpunit_mock_objects.patch"
     164                },
     165                "phpunit/phpunit": {
     166                    "Fix PHP 7 compatibility": "./tests/phpunit_php7.patch",
     167                    "Fix PHP 8 compatibility": "./tests/phpunit_php8.patch"
     168                }
     169            }
     170        },
    29171        "installation-source": "source",
    30172        "autoload": {
     
    41183                "name": "Daniele Alessandri",
    42184                "email": "suppakilla@gmail.com",
    43                 "homepage": "http://clorophilla.net"
     185                "homepage": "http://clorophilla.net",
     186                "role": "Creator & Maintainer"
     187            },
     188            {
     189                "name": "Till Krüss",
     190                "homepage": "https://till.im",
     191                "role": "Maintainer"
    44192            }
    45193        ],
    46194        "description": "Flexible and feature-complete Redis client for PHP and HHVM",
    47         "homepage": "http://github.com/nrk/predis",
     195        "homepage": "http://github.com/predis/predis",
    48196        "keywords": [
    49197            "nosql",
    50198            "predis",
    51199            "redis"
     200        ],
     201        "funding": [
     202            {
     203                "url": "https://github.com/sponsors/tillkruss",
     204                "type": "github"
     205            }
    52206        ]
    53207    },
    54208    {
    55         "name": "asika/pdf2text",
    56         "version": "dev-master",
    57         "version_normalized": "9999999-dev",
    58         "source": {
    59             "type": "git",
    60             "url": "https://github.com/asika32764/php-pdf-2-text.git",
    61             "reference": "a14ea95695a277e385dbc03caeddb91c5e10319f"
    62         },
    63         "dist": {
    64             "type": "zip",
    65             "url": "https://api.github.com/repos/asika32764/php-pdf-2-text/zipball/a14ea95695a277e385dbc03caeddb91c5e10319f",
    66             "reference": "a14ea95695a277e385dbc03caeddb91c5e10319f",
    67             "shasum": ""
    68         },
    69         "time": "2016-11-02T03:47:29+00:00",
    70         "type": "library",
    71         "installation-source": "source",
    72         "autoload": {
    73             "psr-4": {
    74                 "Asika\\": "src"
    75             }
    76         },
    77         "notification-url": "https://packagist.org/downloads/",
    78         "license": [
    79             "GPL v2"
    80         ],
    81         "authors": [
    82             {
    83                 "name": "Simon Asika",
    84                 "email": "asika32764@gmail.com"
    85             }
    86         ],
    87         "description": "Simple PHP PDF to text class."
    88     },
    89     {
    90209        "name": "vaites/php-apache-tika",
    91210        "version": "dev-master",
     
    94213            "type": "git",
    95214            "url": "https://github.com/vaites/php-apache-tika.git",
    96             "reference": "daf173e255b659aac23bd2fead757e50bc05c6e9"
    97         },
    98         "dist": {
    99             "type": "zip",
    100             "url": "https://api.github.com/repos/vaites/php-apache-tika/zipball/daf173e255b659aac23bd2fead757e50bc05c6e9",
    101             "reference": "daf173e255b659aac23bd2fead757e50bc05c6e9",
     215            "reference": "dcc27626ee7d0f572a828539a607d734094b9e73"
     216        },
     217        "dist": {
     218            "type": "zip",
     219            "url": "https://api.github.com/repos/vaites/php-apache-tika/zipball/dcc27626ee7d0f572a828539a607d734094b9e73",
     220            "reference": "dcc27626ee7d0f572a828539a607d734094b9e73",
    102221            "shasum": ""
    103222        },
    104223        "require": {
    105224            "ext-curl": "*",
    106             "php": ">=5.4.0"
     225            "php": ">=7.2.0"
    107226        },
    108227        "require-dev": {
    109             "phpunit/phpunit": "^4.8"
    110         },
    111         "time": "2018-10-18T20:15:16+00:00",
    112         "type": "library",
     228            "filp/whoops": "^2.7",
     229            "nunomaduro/phpinsights": "^1.14",
     230            "phpstan/phpstan": "^0.12.26",
     231            "phpunit/phpunit": "^8.0",
     232            "symfony/var-dumper": "^5.1"
     233        },
     234        "time": "2020-10-19T20:23:24+00:00",
     235        "type": "library",
     236        "extra": {
     237            "supported-versions": [
     238                "1.15",
     239                "1.16",
     240                "1.17",
     241                "1.18",
     242                "1.19",
     243                "1.19.1",
     244                "1.20",
     245                "1.21",
     246                "1.22",
     247                "1.23",
     248                "1.24",
     249                "1.24.1"
     250            ]
     251        },
    113252        "installation-source": "source",
    114253        "autoload": {
     
    141280            "tika"
    142281        ]
    143     },
    144     {
    145         "name": "foadyousefi/seven-fields",
    146         "version": "dev-master",
    147         "version_normalized": "9999999-dev",
    148         "source": {
    149             "type": "git",
    150             "url": "https://github.com/foadyousefi/seven-fields.git",
    151             "reference": "89e1431b0960657135ee44095d862afe48baeb62"
    152         },
    153         "dist": {
    154             "type": "zip",
    155             "url": "https://api.github.com/repos/foadyousefi/seven-fields/zipball/89e1431b0960657135ee44095d862afe48baeb62",
    156             "reference": "89e1431b0960657135ee44095d862afe48baeb62",
    157             "shasum": ""
    158         },
    159         "require": {
    160             "php": ">=5.3"
    161         },
    162         "time": "2019-01-09T12:17:22+00:00",
    163         "type": "library",
    164         "installation-source": "source",
    165         "autoload": {
    166             "psr-4": {
    167                 "SevenFields\\": "src/"
    168             }
    169         },
    170         "notification-url": "https://packagist.org/downloads/",
    171         "license": [
    172             "GPL-2.0"
    173         ],
    174         "authors": [
    175             {
    176                 "name": "Foad Yousefi",
    177                 "email": "foadyousefi@gmail.com",
    178                 "homepage": "https://7km.co/"
    179             }
    180         ],
    181         "description": "WordPress developer-friendly option pages with custom fields.",
    182         "homepage": "https://7km.co/"
    183282    }
    184283]
  • redisearch/trunk/vendor/predis/predis/CHANGELOG.md

    r1949960 r2452159  
    1 v1.1.2 (2017-xx-xx)
     1v1.1.7 (2020-xx-xx)
     2================================================================================
     3
     4- __FIX__: with the phpiredis-based connection backends, failed pipelines led to
     5spurious responses returned after reconnecting to Redis because the underlying
     6reader was not properly reset by discarding buffered replies after disconnecting
     7(ISSUE #363).
     8
     9
     10v1.1.6 (2020-09-11)
     11================================================================================
     12
     13- __FIX__: reverted support for sentinels authentication implemented in v1.1.5
     14as it was bugged (see ISSUE #658), sorry for the trouble. This is now postponed
     15as it requires a more thorough investigation.
     16
     17
     18v1.1.5 (2020-09-10)
     19================================================================================
     20
     21- __FIX__:~~authentication for sentinels is now supported, previously it was not
     22possible to specify a `password` for sentinels as its value was stripped during
     23initialization because sentinels did not support authentication until Redis 5.
     24**Please note** that with the current implementation each sentinel must have
     25its own `password` parameter set in the parameters list despite this password is
     26the same for all sentinels (read how `requirepass` works on the Redis docs). In
     27this case you should avoid using the global `parameters` client option used to
     28set default parameters for every connection created by Predis as this would end
     29up using the same password even when connecting to actual Redis nodes.~~
     30
     31- __FIX__: the username is now correctly retrieved from the userinfo fragment of
     32the URI when using the "redis" scheme and a "username:password" pair is present.
     33Values retrieved from the userinfo fragment always override the ones specified
     34in `username` and `password` if those fields are present in the query string.
     35
     36- __FIX__: `Predis\Connection\WebdisConnection` was unable to connect to Webdis
     37when using an IPv4 address in the URL and this is probably due to some change in
     38cURL internals since the last time we tested it.
     39
     40- __FIX__: an exception is thrown whe passing `FALSE` or any value evaluating to
     41`FALSE` to the `replication` client option. This was supposed to be unsupported,
     42in fact it actually breaks client initialization and raises a PHP warning. Now
     43the user is alerted with an `InvalidArgumentException` and a proper message.
     44(PR #381).
     45
     46
     47v1.1.4 (2020-08-31)
     48================================================================================
     49
     50- Improved @method annotations for methods responding to Redis commands defined
     51  by `Predis\ClientInterface` and `Predis\ClientContextInterface`. (PR #456 and
     52  PR #497, other fixes applied after further analysys).
     53
     54- __FIX__: the client can now handle ACL authentication when connecting to Redis
     55  6.x simply by passing both `username` and `password` to connection parameters.
     56  See [the Redis docs](https://redis.io/topics/acl) for details on this topic.
     57
     58- __FIX__: NULL or zero-length string values passed to `password` and `database`
     59  in the connection parameters list do not trigger spurious `AUTH` and `SELECT`
     60  commands anymore when connecting to Redis (ISSUE #436).
     61
     62- __FIX__: initializing an iteration over a client instance when it is connected
     63  to a standalone Redis server will not throw an exception anymore, instead it
     64  will return an iterator that will run for just one loop returning a new client
     65  instance using the underlying single-node connection (ISSUE #552, PR #556).
     66
     67- __FIX__: `Predis\Cluster\Distributor\HashRingaddNodeToRing()` was calculating
     68  the hash required for distribution by using `crc32()` directly instead of the
     69  method `Predis\Cluster\Hash\HashGeneratorInterface::hash()` implemented by the
     70  class itself. This bug fix does not have any impact on existing clusters that
     71  use client-side sharding based on this distributor simply because it does not
     72  take any external hash generators so distribution is not going to be affected.
     73
     74- __FIX__: `SORT` now always trigger a switch to the master node in replication
     75  configurations instead of just when the `STORE` modifier is specified, this is
     76  because `SORT` is always considered to be a write operation and actually fails
     77  with a `-READONLY` error response when executed against a replica node. (ISSUE
     78  #554).
     79
     80
     81v1.1.3 (2020-08-18)
     82================================================================================
     83
     84- Ensure compatibility with PHP 8.
     85
     86- Moved repository from `github.com/nrk/predis` to `github.com/predis/predis`.
     87
     88- __FIX__: Moved `cweagans/composer-patches` dependency to `require-dev`.
     89
     90- __FIX__: Include PHPUnit `.patch` files in exports.
     91
     92
     93v1.1.2 (2020-08-11)
    294================================================================================
    395
  • redisearch/trunk/vendor/predis/predis/CONTRIBUTING.md

    r1949960 r2452159  
    11## Filing bug reports ##
    22
    3 Bugs or feature requests can be posted on the [GitHub issues](http://github.com/nrk/predis/issues)
     3Bugs or feature requests can be posted on the [GitHub issues](http://github.com/predis/predis/issues)
    44section of the project.
    55
  • redisearch/trunk/vendor/predis/predis/FAQ.md

    r1949960 r2452159  
    3434not mean that it is impossible to have such a feature since you can leverage the extensibility of
    3535this library to define your own serialization-aware commands. You can find more details about how to
    36 do that [on this issue](http://github.com/nrk/predis/issues/29#issuecomment-1202624).
     36do that [on this issue](http://github.com/predis/predis/issues/29#issuecomment-1202624).
    3737
    3838### How can I force Predis to connect to Redis before sending any command? ###
  • redisearch/trunk/vendor/predis/predis/README.md

    r1949960 r2452159  
    66[![Monthly installs][ico-downloads-monthly]][link-downloads]
    77[![Build status][ico-travis]][link-travis]
    8 [![Gitter room][ico-gitter]][link-gitter]
    98
    109Flexible and feature-complete [Redis](http://redis.io) client for PHP >= 5.3 and HHVM >= 2.3.0.
     
    1211Predis does not require any additional C extension by default, but it can be optionally paired with
    1312[phpiredis](https://github.com/nrk/phpiredis) to lower the overhead of the serialization and parsing
    14 of the [Redis RESP Protocol](http://redis.io/topics/protocol). For an __experimental__ asynchronous
    15 implementation of the client you can refer to [Predis\Async](https://github.com/nrk/predis-async).
     13of the [Redis RESP Protocol](http://redis.io/topics/protocol).
    1614
    1715More details about this project can be found on the [frequently asked questions](FAQ.md).
     
    4139management of projects dependencies using [Composer](http://packagist.org/about-composer) or on our
    4240[own PEAR channel](http://pear.nrk.io) for a more traditional installation using PEAR. Ultimately,
    43 compressed archives of each release are [available on GitHub](https://github.com/nrk/predis/releases).
     41compressed archives of each release are [available on GitHub](https://github.com/predis/predis/releases).
    4442
    4543
     
    8987$client = new Predis\Client('tcp://10.0.0.1:6379');
    9088```
     89
     90Password protected servers can be accessed by adding `password` to the parameters set. When ACLs are
     91enabled on Redis >= 6.0, both `username` and `password` are required for user authentication.
    9192
    9293It is also possible to connect to local instances of Redis using UNIX domain sockets, in this case
     
    454455
    455456Predis uses Travis CI for continuous integration and the history for past and current builds can be
    456 found [on its project page](http://travis-ci.org/nrk/predis).
     457found [on its project page](http://travis-ci.org/predis/predis).
    457458
    458459
     
    462463### Project related links ###
    463464
    464 - [Source code](https://github.com/nrk/predis)
    465 - [Wiki](https://wiki.github.com/nrk/predis)
    466 - [Issue tracker](https://github.com/nrk/predis/issues)
     465- [Source code](https://github.com/predis/predis)
     466- [Wiki](https://github.com/predis/predis/wiki)
     467- [Issue tracker](https://github.com/predis/predis/issues)
    467468- [PEAR channel](http://pear.nrk.io)
    468469
     
    477478The code for Predis is distributed under the terms of the MIT license (see [LICENSE](LICENSE)).
    478479
    479 [ico-license]: https://img.shields.io/github/license/nrk/predis.svg?style=flat-square
     480[ico-license]: https://img.shields.io/github/license/predis/predis.svg?style=flat-square
    480481[ico-version-stable]: https://img.shields.io/packagist/v/predis/predis.svg?style=flat-square
    481482[ico-version-dev]: https://img.shields.io/packagist/vpre/predis/predis.svg?style=flat-square
    482483[ico-downloads-monthly]: https://img.shields.io/packagist/dm/predis/predis.svg?style=flat-square
    483 [ico-travis]: https://img.shields.io/travis/nrk/predis.svg?style=flat-square
     484[ico-travis]: https://img.shields.io/travis/predis/predis.svg?style=flat-square
    484485[ico-hhvm]: https://img.shields.io/hhvm/predis/predis.svg?style=flat-square
    485 [ico-gitter]: https://img.shields.io/gitter/room/nrk/predis.svg?style=flat-square
    486486
    487487[link-packagist]: https://packagist.org/packages/predis/predis
    488 [link-travis]: https://travis-ci.org/nrk/predis
     488[link-travis]: https://travis-ci.org/predis/predis
    489489[link-downloads]: https://packagist.org/packages/predis/predis/stats
    490 [link-gitter]: https://gitter.im/nrk/predis
  • redisearch/trunk/vendor/predis/predis/VERSION

    r1949960 r2452159  
    1 1.1.2-dev
     11.1.7-dev
  • redisearch/trunk/vendor/predis/predis/bin/create-pear

    r1949960 r2452159  
    116116{
    117117    $XML = <<<XML
    118 <?xml version="1.0"?>
     118<?xml version="1.0" encoding="UTF-8"?>
    119119<package packagerversion="1.4.10" version="2.0"
    120120    xmlns="http://pear.php.net/dtd/package-2.0"
     
    198198function savePackageXml($xml)
    199199{
    200     $dom = new DOMDocument("1.0");
     200    $dom = new DOMDocument("1.0", "UTF-8");
    201201    $dom->preserveWhiteSpace = false;
    202202    $dom->formatOutput = true;
  • redisearch/trunk/vendor/predis/predis/bin/create-phar

    r1949960 r2452159  
    6060    }
    6161});
    62 __HALT_COMPILER();
     62__halt_compiler();
    6363EOSTUB;
    6464}
  • redisearch/trunk/vendor/predis/predis/composer.json

    r1949960 r2452159  
    44    "description": "Flexible and feature-complete Redis client for PHP and HHVM",
    55    "keywords": ["nosql", "redis", "predis"],
    6     "homepage": "http://github.com/nrk/predis",
     6    "homepage": "http://github.com/predis/predis",
    77    "license": "MIT",
    88    "support": {
    9         "issues": "https://github.com/nrk/predis/issues"
     9        "issues": "https://github.com/predis/predis/issues"
    1010    },
    1111    "authors": [
     
    1313            "name": "Daniele Alessandri",
    1414            "email": "suppakilla@gmail.com",
    15             "homepage": "http://clorophilla.net"
     15            "homepage": "http://clorophilla.net",
     16            "role": "Creator & Maintainer"
     17        },
     18        {
     19            "name": "Till Krüss",
     20            "homepage": "https://till.im",
     21            "role": "Maintainer"
     22        }
     23    ],
     24    "funding": [
     25        {
     26            "type": "github",
     27            "url": "https://github.com/sponsors/tillkruss"
    1628        }
    1729    ],
     
    2032    },
    2133    "require-dev": {
    22         "phpunit/phpunit": "~4.8"
     34        "phpunit/phpunit": "~4.8",
     35        "cweagans/composer-patches": "^1.6"
    2336    },
    2437    "suggest": {
     
    2740    },
    2841    "autoload": {
    29         "psr-4": {"Predis\\": "src/"}
    30     }
     42        "psr-4": {
     43            "Predis\\": "src/"
     44        }
     45    },
     46    "extra": {
     47        "composer-exit-on-patch-failure": true,
     48        "patches": {
     49            "phpunit/phpunit-mock-objects": {
     50                "Fix PHP 7 and 8 compatibility": "./tests/phpunit_mock_objects.patch"
     51            },
     52            "phpunit/phpunit": {
     53                "Fix PHP 7 compatibility": "./tests/phpunit_php7.patch",
     54                "Fix PHP 8 compatibility": "./tests/phpunit_php8.patch"
     55            }
     56        }
     57    }
    3158}
  • redisearch/trunk/vendor/predis/predis/package.ini

    r1949960 r2452159  
    1111homepage    = "http://github.com/nrk/predis"
    1212license     = "MIT"
    13 version     = "1.1.2"
     13version     = "1.1.7"
    1414stability   = "devel"
    1515channel     = "pear.nrk.io"
  • redisearch/trunk/vendor/predis/predis/src/Client.php

    r1949960 r2452159  
    4141class Client implements ClientInterface, \IteratorAggregate
    4242{
    43     const VERSION = '1.1.2-dev';
     43    const VERSION = '1.1.7-dev';
    4444
    4545    protected $connection;
     
    536536
    537537        if (!$connection instanceof \Traversable) {
    538             throw new ClientException('The underlying connection is not traversable');
     538            return new \ArrayIterator(array(
     539                (string) $connection => new static($connection, $this->getOptions())
     540            ));
    539541        }
    540542
  • redisearch/trunk/vendor/predis/predis/src/ClientContextInterface.php

    r1949960 r2452159  
    4040 * @method $this bitop($operation, $destkey, $key)
    4141 * @method $this bitfield($key, $subcommand, ...$subcommandArg)
     42 * @method $this bitpos($key, $bit, $start = null, $end = null)
    4243 * @method $this decr($key)
    4344 * @method $this decrby($key, $decrement)
     
    8283 * @method $this lpop($key)
    8384 * @method $this lpush($key, array $values)
    84  * @method $this lpushx($key, $value)
     85 * @method $this lpushx($key, array $values)
    8586 * @method $this lrange($key, $start, $stop)
    8687 * @method $this lrem($key, $count, $value)
     
    9091 * @method $this rpoplpush($source, $destination)
    9192 * @method $this rpush($key, array $values)
    92  * @method $this rpushx($key, $value)
     93 * @method $this rpushx($key, array $values)
    9394 * @method $this sadd($key, array $members)
    9495 * @method $this scard($key)
     
    118119 * @method $this zremrangebyscore($key, $min, $max)
    119120 * @method $this zrevrange($key, $start, $stop, array $options = null)
    120  * @method $this zrevrangebyscore($key, $min, $max, array $options = null)
     121 * @method $this zrevrangebyscore($key, $max, $min, array $options = null)
    121122 * @method $this zrevrank($key, $member)
    122123 * @method $this zunionstore($destination, array|string $keys, array $options = null)
  • redisearch/trunk/vendor/predis/predis/src/ClientInterface.php

    r1949960 r2452159  
    2525 * following list of methods:
    2626 *
    27  * @method int    del(array|string $keys)
    28  * @method string dump($key)
    29  * @method int    exists($key)
    30  * @method int    expire($key, $seconds)
    31  * @method int    expireat($key, $timestamp)
    32  * @method array  keys($pattern)
    33  * @method int    move($key, $db)
    34  * @method mixed  object($subcommand, $key)
    35  * @method int    persist($key)
    36  * @method int    pexpire($key, $milliseconds)
    37  * @method int    pexpireat($key, $timestamp)
    38  * @method int    pttl($key)
    39  * @method string randomkey()
    40  * @method mixed  rename($key, $target)
    41  * @method int    renamenx($key, $target)
    42  * @method array  scan($cursor, array $options = null)
    43  * @method array  sort($key, array $options = null)
    44  * @method int    ttl($key)
    45  * @method mixed  type($key)
    46  * @method int    append($key, $value)
    47  * @method int    bitcount($key, $start = null, $end = null)
    48  * @method int    bitop($operation, $destkey, $key)
    49  * @method array  bitfield($key, $subcommand, ...$subcommandArg)
    50  * @method int    decr($key)
    51  * @method int    decrby($key, $decrement)
    52  * @method string get($key)
    53  * @method int    getbit($key, $offset)
    54  * @method string getrange($key, $start, $end)
    55  * @method string getset($key, $value)
    56  * @method int    incr($key)
    57  * @method int    incrby($key, $increment)
    58  * @method string incrbyfloat($key, $increment)
    59  * @method array  mget(array $keys)
    60  * @method mixed  mset(array $dictionary)
    61  * @method int    msetnx(array $dictionary)
    62  * @method mixed  psetex($key, $milliseconds, $value)
    63  * @method mixed  set($key, $value, $expireResolution = null, $expireTTL = null, $flag = null)
    64  * @method int    setbit($key, $offset, $value)
    65  * @method int    setex($key, $seconds, $value)
    66  * @method int    setnx($key, $value)
    67  * @method int    setrange($key, $offset, $value)
    68  * @method int    strlen($key)
    69  * @method int    hdel($key, array $fields)
    70  * @method int    hexists($key, $field)
    71  * @method string hget($key, $field)
    72  * @method array  hgetall($key)
    73  * @method int    hincrby($key, $field, $increment)
    74  * @method string hincrbyfloat($key, $field, $increment)
    75  * @method array  hkeys($key)
    76  * @method int    hlen($key)
    77  * @method array  hmget($key, array $fields)
    78  * @method mixed  hmset($key, array $dictionary)
    79  * @method array  hscan($key, $cursor, array $options = null)
    80  * @method int    hset($key, $field, $value)
    81  * @method int    hsetnx($key, $field, $value)
    82  * @method array  hvals($key)
    83  * @method int    hstrlen($key, $field)
    84  * @method array  blpop(array|string $keys, $timeout)
    85  * @method array  brpop(array|string $keys, $timeout)
    86  * @method array  brpoplpush($source, $destination, $timeout)
    87  * @method string lindex($key, $index)
    88  * @method int    linsert($key, $whence, $pivot, $value)
    89  * @method int    llen($key)
    90  * @method string lpop($key)
    91  * @method int    lpush($key, array $values)
    92  * @method int    lpushx($key, $value)
    93  * @method array  lrange($key, $start, $stop)
    94  * @method int    lrem($key, $count, $value)
    95  * @method mixed  lset($key, $index, $value)
    96  * @method mixed  ltrim($key, $start, $stop)
    97  * @method string rpop($key)
    98  * @method string rpoplpush($source, $destination)
    99  * @method int    rpush($key, array $values)
    100  * @method int    rpushx($key, $value)
    101  * @method int    sadd($key, array $members)
    102  * @method int    scard($key)
    103  * @method array  sdiff(array|string $keys)
    104  * @method int    sdiffstore($destination, array|string $keys)
    105  * @method array  sinter(array|string $keys)
    106  * @method int    sinterstore($destination, array|string $keys)
    107  * @method int    sismember($key, $member)
    108  * @method array  smembers($key)
    109  * @method int    smove($source, $destination, $member)
    110  * @method string spop($key, $count = null)
    111  * @method string srandmember($key, $count = null)
    112  * @method int    srem($key, $member)
    113  * @method array  sscan($key, $cursor, array $options = null)
    114  * @method array  sunion(array|string $keys)
    115  * @method int    sunionstore($destination, array|string $keys)
    116  * @method int    zadd($key, array $membersAndScoresDictionary)
    117  * @method int    zcard($key)
    118  * @method string zcount($key, $min, $max)
    119  * @method string zincrby($key, $increment, $member)
    120  * @method int    zinterstore($destination, array|string $keys, array $options = null)
    121  * @method array  zrange($key, $start, $stop, array $options = null)
    122  * @method array  zrangebyscore($key, $min, $max, array $options = null)
    123  * @method int    zrank($key, $member)
    124  * @method int    zrem($key, $member)
    125  * @method int    zremrangebyrank($key, $start, $stop)
    126  * @method int    zremrangebyscore($key, $min, $max)
    127  * @method array  zrevrange($key, $start, $stop, array $options = null)
    128  * @method array  zrevrangebyscore($key, $max, $min, array $options = null)
    129  * @method int    zrevrank($key, $member)
    130  * @method int    zunionstore($destination, array|string $keys, array $options = null)
    131  * @method string zscore($key, $member)
    132  * @method array  zscan($key, $cursor, array $options = null)
    133  * @method array  zrangebylex($key, $start, $stop, array $options = null)
    134  * @method array  zrevrangebylex($key, $start, $stop, array $options = null)
    135  * @method int    zremrangebylex($key, $min, $max)
    136  * @method int    zlexcount($key, $min, $max)
    137  * @method int    pfadd($key, array $elements)
    138  * @method mixed  pfmerge($destinationKey, array|string $sourceKeys)
    139  * @method int    pfcount(array|string $keys)
    140  * @method mixed  pubsub($subcommand, $argument)
    141  * @method int    publish($channel, $message)
    142  * @method mixed  discard()
    143  * @method array  exec()
    144  * @method mixed  multi()
    145  * @method mixed  unwatch()
    146  * @method mixed  watch($key)
    147  * @method mixed  eval($script, $numkeys, $keyOrArg1 = null, $keyOrArgN = null)
    148  * @method mixed  evalsha($script, $numkeys, $keyOrArg1 = null, $keyOrArgN = null)
    149  * @method mixed  script($subcommand, $argument = null)
    150  * @method mixed  auth($password)
    151  * @method string echo($message)
    152  * @method mixed  ping($message = null)
    153  * @method mixed  select($database)
    154  * @method mixed  bgrewriteaof()
    155  * @method mixed  bgsave()
    156  * @method mixed  client($subcommand, $argument = null)
    157  * @method mixed  config($subcommand, $argument = null)
    158  * @method int    dbsize()
    159  * @method mixed  flushall()
    160  * @method mixed  flushdb()
    161  * @method array  info($section = null)
    162  * @method int    lastsave()
    163  * @method mixed  save()
    164  * @method mixed  slaveof($host, $port)
    165  * @method mixed  slowlog($subcommand, $argument = null)
    166  * @method array  time()
    167  * @method array  command()
    168  * @method int    geoadd($key, $longitude, $latitude, $member)
    169  * @method array  geohash($key, array $members)
    170  * @method array  geopos($key, array $members)
    171  * @method string geodist($key, $member1, $member2, $unit = null)
    172  * @method array  georadius($key, $longitude, $latitude, $radius, $unit, array $options = null)
    173  * @method array  georadiusbymember($key, $member, $radius, $unit, array $options = null)
     27 * @method int         del(array|string $keys)
     28 * @method string|null dump($key)
     29 * @method int         exists($key)
     30 * @method int         expire($key, $seconds)
     31 * @method int         expireat($key, $timestamp)
     32 * @method array       keys($pattern)
     33 * @method int         move($key, $db)
     34 * @method mixed       object($subcommand, $key)
     35 * @method int         persist($key)
     36 * @method int         pexpire($key, $milliseconds)
     37 * @method int         pexpireat($key, $timestamp)
     38 * @method int         pttl($key)
     39 * @method string|null randomkey()
     40 * @method mixed       rename($key, $target)
     41 * @method int         renamenx($key, $target)
     42 * @method array       scan($cursor, array $options = null)
     43 * @method array       sort($key, array $options = null)
     44 * @method int         ttl($key)
     45 * @method mixed       type($key)
     46 * @method int         append($key, $value)
     47 * @method int         bitcount($key, $start = null, $end = null)
     48 * @method int         bitop($operation, $destkey, $key)
     49 * @method array|null  bitfield($key, $subcommand, ...$subcommandArg)
     50 * @method int         bitpos($key, $bit, $start = null, $end = null)
     51 * @method int         decr($key)
     52 * @method int         decrby($key, $decrement)
     53 * @method string|null get($key)
     54 * @method int         getbit($key, $offset)
     55 * @method string      getrange($key, $start, $end)
     56 * @method string|null getset($key, $value)
     57 * @method int         incr($key)
     58 * @method int         incrby($key, $increment)
     59 * @method string      incrbyfloat($key, $increment)
     60 * @method array       mget(array $keys)
     61 * @method mixed       mset(array $dictionary)
     62 * @method int         msetnx(array $dictionary)
     63 * @method mixed       psetex($key, $milliseconds, $value)
     64 * @method mixed       set($key, $value, $expireResolution = null, $expireTTL = null, $flag = null)
     65 * @method int         setbit($key, $offset, $value)
     66 * @method int         setex($key, $seconds, $value)
     67 * @method int         setnx($key, $value)
     68 * @method int         setrange($key, $offset, $value)
     69 * @method int         strlen($key)
     70 * @method int         hdel($key, array $fields)
     71 * @method int         hexists($key, $field)
     72 * @method string|null hget($key, $field)
     73 * @method array       hgetall($key)
     74 * @method int         hincrby($key, $field, $increment)
     75 * @method string      hincrbyfloat($key, $field, $increment)
     76 * @method array       hkeys($key)
     77 * @method int         hlen($key)
     78 * @method array       hmget($key, array $fields)
     79 * @method mixed       hmset($key, array $dictionary)
     80 * @method array       hscan($key, $cursor, array $options = null)
     81 * @method int         hset($key, $field, $value)
     82 * @method int         hsetnx($key, $field, $value)
     83 * @method array       hvals($key)
     84 * @method int         hstrlen($key, $field)
     85 * @method array|null  blpop(array|string $keys, $timeout)
     86 * @method array|null  brpop(array|string $keys, $timeout)
     87 * @method string|null brpoplpush($source, $destination, $timeout)
     88 * @method string|null lindex($key, $index)
     89 * @method int         linsert($key, $whence, $pivot, $value)
     90 * @method int         llen($key)
     91 * @method string|null lpop($key)
     92 * @method int         lpush($key, array $values)
     93 * @method int         lpushx($key, array $values)
     94 * @method array       lrange($key, $start, $stop)
     95 * @method int         lrem($key, $count, $value)
     96 * @method mixed       lset($key, $index, $value)
     97 * @method mixed       ltrim($key, $start, $stop)
     98 * @method string|null rpop($key)
     99 * @method string|null rpoplpush($source, $destination)
     100 * @method int         rpush($key, array $values)
     101 * @method int         rpushx($key, array $values)
     102 * @method int         sadd($key, array $members)
     103 * @method int         scard($key)
     104 * @method array       sdiff(array|string $keys)
     105 * @method int         sdiffstore($destination, array|string $keys)
     106 * @method array       sinter(array|string $keys)
     107 * @method int         sinterstore($destination, array|string $keys)
     108 * @method int         sismember($key, $member)
     109 * @method array       smembers($key)
     110 * @method int         smove($source, $destination, $member)
     111 * @method string|null spop($key, $count = null)
     112 * @method string|null srandmember($key, $count = null)
     113 * @method int         srem($key, $member)
     114 * @method array       sscan($key, $cursor, array $options = null)
     115 * @method array       sunion(array|string $keys)
     116 * @method int         sunionstore($destination, array|string $keys)
     117 * @method int         zadd($key, array $membersAndScoresDictionary)
     118 * @method int         zcard($key)
     119 * @method string      zcount($key, $min, $max)
     120 * @method string      zincrby($key, $increment, $member)
     121 * @method int         zinterstore($destination, array|string $keys, array $options = null)
     122 * @method array       zrange($key, $start, $stop, array $options = null)
     123 * @method array       zrangebyscore($key, $min, $max, array $options = null)
     124 * @method int|null    zrank($key, $member)
     125 * @method int         zrem($key, $member)
     126 * @method int         zremrangebyrank($key, $start, $stop)
     127 * @method int         zremrangebyscore($key, $min, $max)
     128 * @method array       zrevrange($key, $start, $stop, array $options = null)
     129 * @method array       zrevrangebyscore($key, $max, $min, array $options = null)
     130 * @method int|null    zrevrank($key, $member)
     131 * @method int         zunionstore($destination, array|string $keys, array $options = null)
     132 * @method string|null zscore($key, $member)
     133 * @method array       zscan($key, $cursor, array $options = null)
     134 * @method array       zrangebylex($key, $start, $stop, array $options = null)
     135 * @method array       zrevrangebylex($key, $start, $stop, array $options = null)
     136 * @method int         zremrangebylex($key, $min, $max)
     137 * @method int         zlexcount($key, $min, $max)
     138 * @method int         pfadd($key, array $elements)
     139 * @method mixed       pfmerge($destinationKey, array|string $sourceKeys)
     140 * @method int         pfcount(array|string $keys)
     141 * @method mixed       pubsub($subcommand, $argument)
     142 * @method int         publish($channel, $message)
     143 * @method mixed       discard()
     144 * @method array|null  exec()
     145 * @method mixed       multi()
     146 * @method mixed       unwatch()
     147 * @method mixed       watch($key)
     148 * @method mixed       eval($script, $numkeys, $keyOrArg1 = null, $keyOrArgN = null)
     149 * @method mixed       evalsha($script, $numkeys, $keyOrArg1 = null, $keyOrArgN = null)
     150 * @method mixed       script($subcommand, $argument = null)
     151 * @method mixed       auth($password)
     152 * @method string      echo($message)
     153 * @method mixed       ping($message = null)
     154 * @method mixed       select($database)
     155 * @method mixed       bgrewriteaof()
     156 * @method mixed       bgsave()
     157 * @method mixed       client($subcommand, $argument = null)
     158 * @method mixed       config($subcommand, $argument = null)
     159 * @method int         dbsize()
     160 * @method mixed       flushall()
     161 * @method mixed       flushdb()
     162 * @method array       info($section = null)
     163 * @method int         lastsave()
     164 * @method mixed       save()
     165 * @method mixed       slaveof($host, $port)
     166 * @method mixed       slowlog($subcommand, $argument = null)
     167 * @method array       time()
     168 * @method array       command()
     169 * @method int         geoadd($key, $longitude, $latitude, $member)
     170 * @method array       geohash($key, array $members)
     171 * @method array       geopos($key, array $members)
     172 * @method string|null geodist($key, $member1, $member2, $unit = null)
     173 * @method array       georadius($key, $longitude, $latitude, $radius, $unit, array $options = null)
     174 * @method array       georadiusbymember($key, $member, $radius, $unit, array $options = null)
    174175 *
    175176 * @author Daniele Alessandri <suppakilla@gmail.com>
  • redisearch/trunk/vendor/predis/predis/src/Cluster/Distributor/HashRing.php

    r1949960 r2452159  
    162162
    163163        for ($i = 0; $i < $replicas; ++$i) {
    164             $key = crc32("$nodeHash:$i");
     164            $key = $this->hash("$nodeHash:$i");
    165165            $ring[$key] = $nodeObject;
    166166        }
  • redisearch/trunk/vendor/predis/predis/src/Configuration/ReplicationOption.php

    r1949960 r2452159  
    3737        }
    3838
    39         if (is_bool($value) || $value === null) {
    40             return $value ? $this->getDefault($options) : null;
    41         }
    42 
    4339        if ($value === 'sentinel') {
    4440            return function ($sentinels, $options) {
     
    5147            null !== $asbool = filter_var($value, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)
    5248        ) {
    53             return $asbool ? $this->getDefault($options) : null;
     49            if (true === $asbool) {
     50                return $this->getDefault($options);
     51            } else {
     52                throw new \InvalidArgumentException(
     53                    "Values evaluating to FALSE are not accepted for `replication`"
     54                );
     55            }
    5456        }
    5557
  • redisearch/trunk/vendor/predis/predis/src/Connection/Aggregate/SentinelReplication.php

    r1949960 r2452159  
    240240
    241241        if (is_array($parameters)) {
    242             // We explicitly set "database" and "password" to null,
    243             // so that no AUTH and SELECT command is send to the sentinels.
     242            // NOTE: sentinels do not accept AUTH and SELECT commands so we must
     243            // explicitly set them to NULL to avoid problems when using default
     244            // parameters set via client options. Actually AUTH is supported for
     245            // sentinels starting with Redis 5 but we have to differentiate from
     246            // sentinels passwords and nodes passwords, this will be implemented
     247            // in a later release.
    244248            $parameters['database'] = null;
     249            $parameters['username'] = null;
    245250            $parameters['password'] = null;
    246251
  • redisearch/trunk/vendor/predis/predis/src/Connection/Factory.php

    r1949960 r2452159  
    174174        $parameters = $connection->getParameters();
    175175
    176         if (isset($parameters->password)) {
     176        if (isset($parameters->password) && strlen($parameters->password)) {
     177            $cmdAuthArgs = isset($parameters->username) && strlen($parameters->username)
     178                ? array('AUTH', $parameters->username, $parameters->password)
     179                : array('AUTH', $parameters->password);
     180
    177181            $connection->addConnectCommand(
    178                 new RawCommand(array('AUTH', $parameters->password))
     182                new RawCommand($cmdAuthArgs)
    179183            );
    180184        }
    181185
    182         if (isset($parameters->database)) {
     186        if (isset($parameters->database) && strlen($parameters->database)) {
    183187            $connection->addConnectCommand(
    184188                new RawCommand(array('SELECT', $parameters->database))
  • redisearch/trunk/vendor/predis/predis/src/Connection/Parameters.php

    r1949960 r2452159  
    110110
    111111        if (stripos($uri, 'redis') === 0) {
     112            if (isset($parsed['user'])) {
     113                if (strlen($parsed['user'])) {
     114                    $parsed['username'] = $parsed['user'];
     115                }
     116                unset($parsed['user']);
     117            }
     118
    112119            if (isset($parsed['pass'])) {
    113                 $parsed['password'] = $parsed['pass'];
     120                if (strlen($parsed['pass'])) {
     121                    $parsed['password'] = $parsed['pass'];
     122                }
    114123                unset($parsed['pass']);
    115124            }
  • redisearch/trunk/vendor/predis/predis/src/Connection/PhpiredisSocketConnection.php

    r1949960 r2452159  
    6767    public function __destruct()
    6868    {
     69        parent::__destruct();
     70
    6971        phpiredis_reader_destroy($this->reader);
    70 
    71         parent::__destruct();
    7272    }
    7373
     
    228228        }
    229229
    230         $socket = @socket_create($domain, SOCK_STREAM, $protocol);
    231 
    232         if (!is_resource($socket)) {
     230        if (false === $socket = @socket_create($domain, SOCK_STREAM, $protocol)) {
    233231            $this->emitSocketError();
    234232        }
     
    345343    {
    346344        if ($this->isConnected()) {
     345            phpiredis_reader_reset($this->reader);
    347346            socket_close($this->getResource());
     347
    348348            parent::disconnect();
    349349        }
  • redisearch/trunk/vendor/predis/predis/src/Connection/PhpiredisStreamConnection.php

    r1949960 r2452159  
    6868    public function __destruct()
    6969    {
     70        parent::__destruct();
     71
    7072        phpiredis_reader_destroy($this->reader);
    71 
    72         parent::__destruct();
     73    }
     74
     75    /**
     76     * {@inheritdoc}
     77     */
     78    public function disconnect()
     79    {
     80        phpiredis_reader_reset($this->reader);
     81
     82        parent::disconnect();
    7383    }
    7484
     
    8898     * {@inheritdoc}
    8999     */
    90     protected function assertSslSupport(ParametersInterface $parameters)
    91     {
    92         throw new \InvalidArgumentException('SSL encryption is not supported by this connection backend.');
     100    protected function assertParameters(ParametersInterface $parameters)
     101    {
     102        switch ($parameters->scheme) {
     103            case 'tcp':
     104            case 'redis':
     105            case 'unix':
     106                break;
     107
     108            case 'tls':
     109            case 'rediss':
     110                throw new \InvalidArgumentException('SSL encryption is not supported by this connection backend.');
     111
     112            default:
     113                throw new \InvalidArgumentException("Invalid scheme: '$parameters->scheme'.");
     114        }
     115
     116        return $parameters;
    93117    }
    94118
  • redisearch/trunk/vendor/predis/predis/src/Connection/WebdisConnection.php

    r1949960 r2452159  
    120120        $timeout = (isset($parameters->timeout) ? (float) $parameters->timeout : 5.0) * 1000;
    121121
    122         if (filter_var($host = $parameters->host, FILTER_VALIDATE_IP)) {
     122        if (filter_var($host = $parameters->host, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {
    123123            $host = "[$host]";
    124124        }
  • redisearch/trunk/vendor/predis/predis/src/Replication/ReplicationStrategy.php

    r1949960 r2452159  
    8888    {
    8989        return isset($this->disallowed[$command->getId()]);
    90     }
    91 
    92     /**
    93      * Checks if a SORT command is a readable operation by parsing the arguments
    94      * array of the specified commad instance.
    95      *
    96      * @param CommandInterface $command Command instance.
    97      *
    98      * @return bool
    99      */
    100     protected function isSortReadOnly(CommandInterface $command)
    101     {
    102         $arguments = $command->getArguments();
    103         $argc = count($arguments);
    104 
    105         if ($argc > 1) {
    106             for ($i = 1; $i < $argc; ++$i) {
    107                 $argument = strtoupper($arguments[$i]);
    108                 if ($argument === 'STORE') {
    109                     return false;
    110                 }
    111             }
    112         }
    113 
    114         return true;
    11590    }
    11691
     
    293268            'TIME' => true,
    294269            'PFCOUNT' => true,
    295             'SORT' => array($this, 'isSortReadOnly'),
    296270            'BITFIELD' => array($this, 'isBitfieldReadOnly'),
    297271            'GEOHASH' => true,
  • redisearch/trunk/vendor/vaites/php-apache-tika/README.md

    r2002534 r2452159  
    33[![Build status](https://travis-ci.org/vaites/php-apache-tika.svg?branch=master)](https://travis-ci.org/vaites/php-apache-tika)
    44[![Code coverage](https://img.shields.io/codecov/c/github/vaites/php-apache-tika.svg)](https://codecov.io/github/vaites/php-apache-tika)
     5[![Code quality](https://img.shields.io/scrutinizer/quality/g/vaites/php-apache-tika.svg)](https://scrutinizer-ci.com/g/vaites/php-apache-tika/)
    56[![Code insight](https://img.shields.io/sensiolabs/i/ec066502-0fde-4455-9fc3-8e9fe6867834.svg)](https://insight.sensiolabs.com/projects/ec066502-0fde-4455-9fc3-8e9fe6867834)
    6 [![License](https://img.shields.io/github/license/vaites/php-apache-tika.svg)](https://github.com/vaites/php-apache-tika/blob/master/LICENSE)
     7[![License](https://img.shields.io/github/license/vaites/php-apache-tika.svg?color=%23999999)](https://github.com/vaites/php-apache-tika/blob/master/LICENSE)
    78
    89# PHP Apache Tika
     
    1314The following modes are supported:
    1415* **App mode**: run app JAR via command line interface
    15 * **Server mode**: make HTTP requests to [JSR 311 network server](http://wiki.apache.org/tika/TikaJAXRS)
     16* **Server mode**: make HTTP requests to [JSR 311 network server](https://cwiki.apache.org/confluence/display/TIKA/TikaServer)
    1617
    1718Server mode is recommended because is 5 times faster, but some shared hosts don't allow run processes in background.
     
    3031* Support for local and remote resources
    3132* No heavyweight library dependencies
    32 * Compatible with Apache Tika 1.7 or greater
    33     * Tested up to 1.19.1
     33* Compatible with Apache Tika 1.15 or greater
     34    * Tested up to 1.24.1
     35* Works on Linux, macOS, Windows and probably on FreeBSD
    3436
    3537## Requirements
    3638
    37 * PHP 5.4 or greater
     39* PHP 7.2 or greater
    3840    * [Multibyte String support](http://php.net/manual/en/book.mbstring.php)
    3941    * [cURL extension](http://php.net/manual/en/book.curl.php)
    40 * Apache Tika 1.7 or greater
     42* Apache Tika 1.15 or greater
    4143* Oracle Java or OpenJDK
    42     * Java 6 for Tika up to 1.9
    43     * Java 7 for Tika 1.10 or greater
     44    * Java 8 for Tika 1.19 or greater
     45    * Java 7 for Tika from 1.15 to 1.18
    4446* [Tesseract](https://github.com/tesseract-ocr/tesseract) (optional for OCR recognition)
    45    
     47
     48**NOTE**: the supported PHP version will remain synced with [the latest supported by PHP team](https://www.php.net/supported-versions.php)
     49
    4650## Installation
    4751
    4852Install using Composer:
    4953
    50 ```php
     54```bash
    5155composer require vaites/php-apache-tika
    5256```
     
    5660* **Fedora/CentOS**: `sudo yum install tesseract` (use dnf instead of yum on Fedora 22 or greater)
    5761* **Debian/Ubuntu**: `sudo apt-get install tesseract-ocr`
    58 * **Mac OS X**: `brew install tesseract` (using [Homebrew](http://brew.sh))
     62* **macOS**: `brew install tesseract` (using [Homebrew](http://brew.sh))
     63* **Windows**: `scoop install tesseract` (using [Scoop](http://scoop.sh))
    5964
    6065The library assumes `tesseract` binary is in path, so you can compile it yourself or install using any other method.
     
    7479```
    7580
    76 Instantiate the class:
     81Instantiate the class, checking if JAR exists or server is running:
    7782
    7883```php
    7984$client = \Vaites\ApacheTika\Client::make('localhost', 9998);           // server mode (default)
    8085$client = \Vaites\ApacheTika\Client::make('/path/to/tika-app.jar');     // app mode
     86```
     87
     88If you want to use dependency injection, serialize the class or just delay the check:
     89
     90```php
     91$client = \Vaites\ApacheTika\Client::prepare('localhost', 9998);
     92$client = \Vaites\ApacheTika\Client::prepare('/path/to/tika-app.jar');
     93```
     94
     95You can use an URL too:
     96
     97```php
     98$client = \Vaites\ApacheTika\Client::make('http://localhost:9998');
     99$client = \Vaites\ApacheTika\Client::prepare('http://localhost:9998');
    81100```
    82101
     
    114133```php
    115134$client->getMetadata($file);
     135$client->getRecursiveMetadata($file, 'text');
    116136$client->getLanguage($file);
    117137$client->getMIME($file);
    118138$client->getHTML($file);
     139$client->getXHTML($file); // only CLI mode
    119140$client->getText($file);
    120141$client->getMainText($file);
     
    125146```php
    126147$client->getSupportedMIMETypes();
     148$client->getIsMIMETypeSupported('application/pdf');
    127149$client->getAvailableDetectors();
    128150$client->getAvailableParsers();
    129151$client->getVersion();
    130152```
     153
     154Encoding methods:
     155```php
     156$client->getEncoding();
     157$client->setEncoding('UTF-8');
     158```
    131159   
    132160Supported versions related methods:
     
    168196$client->setJava($java);
    169197$client->getJava();
     198
     199$client->setJavaArgs('-JXmx4g');
     200$client->getJavaArgs();
    170201```
    171202
     
    180211$client->setPort($port);
    181212$client->getPort();
     213
     214$client->setUrl($url);
     215$client->getUrl();
    182216
    183217$client->setRetries($retries);
     
    200234$client->getTimeout();
    201235```
     236
     237### Breaking changes
     238
     239Since 1.0 version there are some breaking changes:
     240
     241* Apache Tika versions prior to 1.15 are not supported (use [0.x](https://github.com/vaites/php-apache-tika/tree/0.x) version for 1.14 and older)
     242* PHP minimum requirement is 7.2 or greater (use [0.x](https://github.com/vaites/php-apache-tika/tree/0.x) version for 7.1 and older)
     243* `$client->getRecursiveMetadata()` returns an array as expected
     244* `Client::getSupportedVersions()` and `Client::isVersionSupported()` methods cannot be called statically
     245* Values returned by `Client::getAvailableDetectors()` and `Client::getAvailableParsers()` are identical and have a new definition
     246
     247See [CHANGELOG.md](CHANGELOG.md) for more details.
     248
     249## Troubleshooting
     250
     251### Empty responses or unexpected results
     252
     253This library is only a _proxy_ so if you get an empy responses or unexpected results the most common cause is Tika
     254itself. A simple test is using the GUI to check the response:
     255
     2561. Run the Tika app without arguments: `java -jar tika-app-x.xx.jar`
     2572. Drop your file or select it using _File -> Open_
     2583. Wait until the metadata appears
     2594. Get the text or HTML using _View_ menu
     260
     261If the results are the same, you must take a look into [Tika's Jira](https://issues.apache.org/jira/projects/TIKA/issues)
     262and open an issue if necessary.
     263
     264### Encoding
     265
     266By default the returned text is encoded with UTF-8 but there are some issues with the encoding when using the app mode.
     267The `Client::setEncoding()` method allows to set the expected encoding (this will be fixed in the upcoming 1.0 release).
    202268
    203269## Tests
     
    211277* **sample4**: unsupported media
    212278* **sample5**: huge text for callbacks
    213 
    214 ## Issues
     279* **sample6**: remote calls
     280* **sample7**: text encoding
     281* **sample8**: recursive metadatata
     282
     283## Known issues
    215284
    216285There are some issues found during tests, not related with this library:
    217286
    218 * 1.9 version running Java 7 on server mode throws random error 500 (*Unexpected RuntimeException*)
    219 * 1.14 version on server mode throws random errors (*Expected ';', got ','*) when parsing image metadata
    220287* Tesseract slows down document parsing as described in [TIKA-2359](https://issues.apache.org/jira/browse/TIKA-2359)
    221288   
  • redisearch/trunk/vendor/vaites/php-apache-tika/composer.json

    r2002534 r2452159  
    11{
    2   "name": "vaites/php-apache-tika",
    3   "description": "Apache Tika bindings for PHP: extracts text from documents and images (with OCR), metadata and more...",
    4   "keywords": ["apache", "tika", "pdf", "doc", "docx", "ppt", "pptx", "odt", "office", "documents", "ocr"],
    5   "license": "MIT",
    6   "authors": [
    7     {
    8       "name": "David Martínez",
    9       "email": "contacto@davidmartinez.net"
     2    "name": "vaites/php-apache-tika",
     3    "description": "Apache Tika bindings for PHP: extracts text from documents and images (with OCR), metadata and more...",
     4    "keywords": [
     5        "apache",
     6        "tika",
     7        "pdf",
     8        "doc",
     9        "docx",
     10        "ppt",
     11        "pptx",
     12        "odt",
     13        "office",
     14        "documents",
     15        "ocr"
     16    ],
     17    "license": "MIT",
     18    "authors": [
     19        {
     20            "name": "David Martínez",
     21            "email": "contacto@davidmartinez.net"
     22        }
     23    ],
     24    "autoload": {
     25        "psr-4": {
     26            "Vaites\\ApacheTika\\": "src/"
     27        }
     28    },
     29    "autoload-dev": {
     30        "psr-4": {
     31            "Vaites\\ApacheTika\\Tests\\": "tests/"
     32        }
     33    },
     34    "require": {
     35        "php": ">=7.2.0",
     36        "ext-curl": "*"
     37    },
     38    "require-dev": {
     39        "phpunit/phpunit": "^8.0",
     40        "nunomaduro/phpinsights": "^1.14",
     41        "phpstan/phpstan": "^0.12.26",
     42        "symfony/var-dumper": "^5.1",
     43        "filp/whoops": "^2.7"
     44    },
     45    "extra": {
     46        "supported-versions": [
     47            "1.15", "1.16", "1.17", "1.18", "1.19", "1.19.1", "1.20", "1.21", "1.22", "1.23", "1.24", "1.24.1"
     48        ]
    1049    }
    11   ],
    12   "autoload": {
    13     "psr-4": {
    14       "Vaites\\ApacheTika\\": "src/"
    15     }
    16   },
    17   "autoload-dev": {
    18     "psr-4": {
    19       "Vaites\\ApacheTika\\Tests\\": "tests/"
    20     }
    21   },
    22   "require": {
    23     "php": ">=5.4.0",
    24     "ext-curl": "*"
    25   },
    26   "require-dev": {
    27     "phpunit/phpunit": "^4.8"
    28   }
    2950}
  • redisearch/trunk/vendor/vaites/php-apache-tika/phpunit.xml

    r2002534 r2452159  
    1515    <logging>
    1616        <log type="coverage-clover" target="reports/coverage.xml"/>
    17         <log type="junit" target="reports/logfile.xml" logIncompleteSkipped="false"/>
     17        <log type="junit" target="reports/logfile.xml"/>
    1818    </logging>
    1919</phpunit>
  • redisearch/trunk/vendor/vaites/php-apache-tika/src/Metadata/DocumentMetadata.php

    r2002534 r2452159  
    22
    33namespace Vaites\ApacheTika\Metadata;
    4 
    5 use DateTime;
    6 use DateTimeZone;
    74
    85/**
     
    3027     * Keywords
    3128     *
    32      * @var string
     29     * @var array
    3330     */
    3431    public $keywords = [];
     
    4239     */
    4340    public $language = null;
     41
     42    /**
     43     * Content encoding
     44     *
     45     * @var string
     46     */
     47    public $encoding = null;
    4448
    4549    /**
     
    7478     * Sets an attribute
    7579     *
    76      * @param   string  $key
    77      * @param   mixed   $value
    78      * @return  bool
     80     * @throws  \Exception
    7981     */
    80     protected function setAttribute($key, $value)
     82    protected function setSpecificAttribute(string $key, $value): MetadataInterface
    8183    {
    82         $timezone = new DateTimeZone('UTC');
    83 
    8484        if(is_array($value))
    8585        {
     
    9999            case 'keyword':
    100100            case 'keywords':
    101                 if(preg_match('/,/', $value))
    102                 {
    103                     $value = preg_split('/\s*,\s*/', $value);
    104                 }
    105                 else
    106                 {
    107                     $value = preg_split('/\s+/', $value);
    108                 }
    109                 $this->keywords = array_unique($value);
     101                $keywords = preg_split(preg_match('/,/', $value) ? '/\s*,\s*/' : '/\s+/', $value);
     102                $this->keywords = array_unique($keywords ?: []);
    110103                break;
    111104
     
    117110            case 'initial-creator':
    118111                $this->author = $value;
    119                 break;
    120 
    121             case 'content-type':
    122                 $value = preg_split('/;\s+/', $value);
    123                 $this->mime = array_shift($value);
    124112                break;
    125113
     
    142130                break;
    143131
    144             case 'creation-date':
    145             case 'date':
    146                 $value = preg_replace('/\.\d+/', 'Z', $value);
    147                 $this->created = new DateTime($value, $timezone);
     132            case 'content-encoding':
     133                $this->encoding = $value;
    148134                break;
    149135
    150             case 'last-modified':
    151                 $value = preg_replace('/\.\d+/', 'Z', $value);
    152                 $this->updated = new DateTime($value, $timezone);
     136            case 'x-tika:content':
     137                $this->content = $value;
    153138                break;
    154 
    155             default:
    156                 return false;
    157139        }
    158140
    159         return true;
     141        return $this;
    160142    }
    161143}
  • redisearch/trunk/vendor/vaites/php-apache-tika/src/Metadata/ImageMetadata.php

    r2002534 r2452159  
    3434     * Sets an attribute
    3535     *
    36      * @param string $key
    37      * @param mixed  $value
    38      *
    39      * @return bool
     36     * @return \Vaites\ApacheTika\Metadata\MetadataInterface
    4037     */
    41     protected function setAttribute($key, $value)
     38    protected function setSpecificAttribute(string $key, $value): MetadataInterface
    4239    {
    4340        switch(mb_strtolower($key))
     
    6158                break;
    6259
    63             default:
    64                 return false;
     60            case 'x-tika:content':
     61                $this->content = $value;
     62                break;
    6563        }
    6664
    67         return true;
     65        return $this;
    6866    }
    6967}
  • redisearch/trunk/vendor/vaites/php-apache-tika/src/Metadata/Metadata.php

    r2002534 r2452159  
    33namespace Vaites\ApacheTika\Metadata;
    44
     5use DateTime;
     6use DateTimeZone;
    57use Exception;
     8use stdClass;
    69
    710/**
     
    1013 * @author  David Martínez <contacto@davidmartinez.net>
    1114 */
    12 abstract class Metadata
     15abstract class Metadata implements MetadataInterface
    1316{
     17    /**
     18     * Title
     19     *
     20     * @var string
     21     */
     22    public $title = null;
     23
     24    /**
     25     * Content
     26     *
     27     * @var string
     28     */
     29    public $content = null;
     30
    1431    /**
    1532     * MIME type
     
    3653     * RAW attributes returned by Apache Tika
    3754     *
    38      * @var array
     55     * @var \stdClass
    3956     */
    40     public $meta = [];
     57    public $meta = null;
    4158
    4259    /**
    4360     * Parse Apache Tika response filling all properties
    4461     *
    45      * @param   string  $meta
    46      * @param   string  $file
    4762     * @throws \Exception
    4863     */
    49     public function __construct($meta, $file)
     64    public function __construct(stdClass $meta, string $file)
    5065    {
    5166        $this->meta = $meta;
    5267
    5368        // process each meta
    54         foreach($this->meta as $key => $value)
     69        foreach((array) $this->meta as $key => $value)
    5570        {
    5671            $this->setAttribute($key, $value);
     
    5873
    5974        // file name without extension if title is not detected
    60         if(empty($this->title) && !is_null($file))
     75        if(empty($this->title))
    6176        {
    6277            $this->title = preg_replace('/\..+$/', '', basename($file));
     
    7388     * Return an instance of Metadata based on content type
    7489     *
    75      * @param   string  $response
    76      * @param   string  $file
    77      * @return  \Vaites\ApacheTika\Metadata\Metadata
    78      * @throws  \Exception
     90     * @throws \Exception
    7991     */
    80     public static function make($response, $file)
     92    public static function make(stdClass $meta, string $file): MetadataInterface
    8193    {
    82         // an empty response throws an error
    83         if(empty($response) || trim($response) == '')
    84         {
    85             throw new Exception('Empty response');
    86         }
    87 
    88         // decode the JSON response
    89         $meta = json_decode($response);
    90 
    91         // exceptions if metadata is not valid
    92         if(json_last_error())
    93         {
    94             $message = function_exists('json_last_error_msg') ? json_last_error_msg() : 'Error parsing JSON response';
    95 
    96             throw new Exception($message, json_last_error());
    97         }
    98 
    9994        // get content type
    10095        $mime = is_array($meta->{'Content-Type'}) ? current($meta->{'Content-Type'}) : $meta->{'Content-Type'};
     
    117112     * Sets an attribute
    118113     *
    119      * @param   string  $key
    120      * @param   mixed   $value
    121      * @return  bool
     114     * @return  \Vaites\ApacheTika\Metadata\MetadataInterface
    122115     */
    123     abstract protected function setAttribute($key, $value);
     116    public final function setAttribute(string $key, $value): MetadataInterface
     117    {
     118        $timezone = new DateTimeZone('UTC');
     119
     120        switch(mb_strtolower($key))
     121        {
     122            case 'content-type':
     123                $mime = $value ? preg_split('/;\s+/', $value) : [];
     124                $this->mime = array_shift($mime);
     125                break;
     126
     127            case 'creation-date':
     128            case 'date':
     129            case 'meta:creation-date':
     130                $value = preg_replace('/\.\d+/', 'Z', $value);
     131                $this->created = new DateTime(is_array($value) ? array_shift($value) : $value, $timezone);
     132                break;
     133
     134            case 'last-modified':
     135            case 'modified':
     136                $value = preg_replace('/\.\d+/', 'Z', $value);
     137                $this->updated = new DateTime(is_array($value) ? array_shift($value) : $value, $timezone);
     138                break;
     139
     140            default:
     141                $this->setSpecificAttribute($key, $value);
     142
     143        }
     144
     145        return $this;
     146    }
     147
     148    /**
     149     * Sets an speficic attribute for the file type
     150     *
     151     * @return \Vaites\ApacheTika\Metadata\MetadataInterface
     152     */
     153    abstract protected function setSpecificAttribute(string $key, $value): MetadataInterface;
    124154}
  • redisearch/trunk/wp-redisearch.php

    r2344931 r2452159  
    22/*
    33Plugin Name: RediSearch
    4 Version: 0.2.7
     4Version: 0.3.0
    55Description: Replace Wordpress search by RediSearch.
    66Author: Foad Yousefi
     
    2929// Plugin version .
    3030if ( ! defined( 'WPRS_VERSION' ) ) {
    31     define( 'WPRS_VERSION', '0.2.5' );
     31    define( 'WPRS_VERSION', '0.3.0' );
    3232}
    3333
     
    4141require_once  __DIR__ . '/vendor/autoload.php';
    4242
    43 new WPRedisearch\WPRedisearch;
     43new WpRediSearch\WpRediSearch;
Note: See TracChangeset for help on using the changeset viewer.