Monthly Archiv: September, 2019

Garcinia Cambogia Extract Market 2019 Analysis by Key Players, Share, Trend, Segmentation and Forecast to 2025

Garcinia Cambogia Extract Market Research Report is a professional and in-depth study on the current state which focuses on the major drivers and restraints for the key players. Garcinia Cambogia Extract Industry research report provides granular analysis of the market share, segmentation, revenue forecasts and geographic regions of the market.

The Report published about Garcinia Cambogia Extract Market is spread across several pages and provides newest industry data, market future trends, allowing you to identify the products and end users driving revenue growth and profitability. The industry report lists and studies the leading competitors, also provides the insights with strategic industry analysis of the key factors influencing the market dynamics. 

Request Sample Report @ https://www.researchmoz.us/enquiry.php?type=Srepid=2483443source=atm

 

Key manufacturers are included based on company profile, sales data and product specifications etc. – 

Xi’an Lyphar Biotech
Shaanxi Fuheng (FH) Biotechnology
Shaanxi Guanjie Technology
Wuhan Vanz Pharm
Hunan Kanerga Pharmaceutical Sales
TWO BLUE DIAMONDS
MARUTI FUTURISTIC PHARMA
KINAL GLOBAL CARE
NUTRA GRACE

Market Segment by Product Type
0.5
0.6
Other

Market Segment by Application
Food Industry
Pharmaceuticals Industry
Other

Key Regions split in this report: breakdown data for each region.
United States
China
European Union
Rest of World (Japan, Korea, India and Southeast Asia)

 

The report begins with the overview of the Garcinia Cambogia Extract market and offers throughout development. It presents a comprehensive analysis of all the regional and major player segments that gives closer insights upon present market conditions and future market opportunities along with drivers, trending segments, consumer behavior, pricing factors and market performance and estimation throughout the forecast period. 

The report also covers geographical markets and key players that have adopted significant strategies for business developments. The data within the report is displayed in a statistical format to offer a better understanding upon the dynamics. The report compiles exhaustive information acquired through proven research methodologies and from dedicated sources across several industries. 

Make An Enquiry About This Report @ https://www.researchmoz.us/enquiry.php?type=Erepid=2483443source=atm 

 

Customization of the Report – 

This report can be personalized to meet your requirements. Get in touch with our sales representative now with a guarantee to get access to a report that suits best to your business needs. 

Key Reasons to Purchase – 

  • To gain insightful analyses of the market and have a comprehensive understanding of the Garcinia Cambogia Extract and its commercial landscape.
  • Assess the Garcinia Cambogia Extract production processes, major issues, and solutions to mitigate the development risk.
  • To understand the most affecting driving and restraining forces in the Garcinia Cambogia Extract market and its impact on the global market.
  • Learn about the market strategies that are being adopted by your competitors and leading organizations.
  • To understand the future outlook and prospects for Garcinia Cambogia Extract  

Major Topics Covered in this Report – 

  • Chapter 1 Study Coverage
  • Chapter 2 Executive Summary
  • Chapter 3 Market Size by Manufacturers
  • Chapter 4 Production by Regions
  • Chapter 5 Consumption by Regions
  • Chapter 6 Market Size by Type
  • Chapter 7 Market Size by Application
  • Chapter 8 Manufacturers Profiles
  • Chapter 9 Production Forecasts
  • Chapter 10 Consumption Forecast
  • Chapter 11 Upstream, Industry Chain and Downstream Customers Analysis
  • Chapter 12 Opportunities Challenges, Threat and Affecting Factors
  • Chapter 13 Key Findings
  • Chapter 14 Appendix 

You can Buy This Report from Here @ https://www.researchmoz.com/checkout?rep_id=2483443licType=Ssource=atm 

Article source: https://bestmarketherald.com/garcinia-cambogia-extract-market-2019-analysis-by-key-players-share-trend-segmentation-and-forecast-to-2025/

PHP File Info Class

Package:
Summary:
Retrieve file information using stat and pathinfo
Groups:
Author:
Description:
This package can retrieve file information using stat and pathinfo...

Read more at https://www.phpclasses.org/package/11361-PHP-Retrieve-file-information-using-stat-and-pathinfo.html#2019-09-10-15:10:23

Garcinia Cambogia Extract Market 2019 Analysis by Key Players, Share, Trend, Segmentation and Forecast to 2025

Garcinia Cambogia Extract Market Research Report is a professional and in-depth study on the current state which focuses on the major drivers and restraints for the key players. Garcinia Cambogia Extract Industry research report provides granular analysis of the market share, segmentation, revenue forecasts and geographic regions of the market.

The Report published about Garcinia Cambogia Extract Market is spread across several pages and provides newest industry data, market future trends, allowing you to identify the products and end users driving revenue growth and profitability. The industry report lists and studies the leading competitors, also provides the insights with strategic industry analysis of the key factors influencing the market dynamics. 

Request Sample Report @ https://www.researchmoz.us/enquiry.php?type=Srepid=2483443source=atm

 

Key manufacturers are included based on company profile, sales data and product specifications etc. – 

Xi’an Lyphar Biotech
Shaanxi Fuheng (FH) Biotechnology
Shaanxi Guanjie Technology
Wuhan Vanz Pharm
Hunan Kanerga Pharmaceutical Sales
TWO BLUE DIAMONDS
MARUTI FUTURISTIC PHARMA
KINAL GLOBAL CARE
NUTRA GRACE

Market Segment by Product Type
0.5
0.6
Other

Market Segment by Application
Food Industry
Pharmaceuticals Industry
Other

Key Regions split in this report: breakdown data for each region.
United States
China
European Union
Rest of World (Japan, Korea, India and Southeast Asia)

 

The report begins with the overview of the Garcinia Cambogia Extract market and offers throughout development. It presents a comprehensive analysis of all the regional and major player segments that gives closer insights upon present market conditions and future market opportunities along with drivers, trending segments, consumer behavior, pricing factors and market performance and estimation throughout the forecast period. 

The report also covers geographical markets and key players that have adopted significant strategies for business developments. The data within the report is displayed in a statistical format to offer a better understanding upon the dynamics. The report compiles exhaustive information acquired through proven research methodologies and from dedicated sources across several industries. 

Make An Enquiry About This Report @ https://www.researchmoz.us/enquiry.php?type=Erepid=2483443source=atm 

 

Customization of the Report – 

This report can be personalized to meet your requirements. Get in touch with our sales representative now with a guarantee to get access to a report that suits best to your business needs. 

Key Reasons to Purchase – 

  • To gain insightful analyses of the market and have a comprehensive understanding of the Garcinia Cambogia Extract and its commercial landscape.
  • Assess the Garcinia Cambogia Extract production processes, major issues, and solutions to mitigate the development risk.
  • To understand the most affecting driving and restraining forces in the Garcinia Cambogia Extract market and its impact on the global market.
  • Learn about the market strategies that are being adopted by your competitors and leading organizations.
  • To understand the future outlook and prospects for Garcinia Cambogia Extract  

Major Topics Covered in this Report – 

  • Chapter 1 Study Coverage
  • Chapter 2 Executive Summary
  • Chapter 3 Market Size by Manufacturers
  • Chapter 4 Production by Regions
  • Chapter 5 Consumption by Regions
  • Chapter 6 Market Size by Type
  • Chapter 7 Market Size by Application
  • Chapter 8 Manufacturers Profiles
  • Chapter 9 Production Forecasts
  • Chapter 10 Consumption Forecast
  • Chapter 11 Upstream, Industry Chain and Downstream Customers Analysis
  • Chapter 12 Opportunities Challenges, Threat and Affecting Factors
  • Chapter 13 Key Findings
  • Chapter 14 Appendix 

You can Buy This Report from Here @ https://www.researchmoz.com/checkout?rep_id=2483443licType=Ssource=atm 

511 Network Authentication Required

511 Network Authentication Required is a status that can be used by for example captive portals to signal to computers that they need to go through some kind of sign-in after connecting to a WiFi network.

You might see these kind of sign-in screens when for example connecting to the WiFi at a coffee shop.

Most operating systems and browsers detect this log in screen by making a HTTP request to a standard url. These are some real examples:

  • http://www.msftconnecttest.com/connecttest.txt
  • http://connectivitycheck.gstatic.com/generate_204
  • http://captive.apple.com/hotspot-detect.html
  • http://detectportal.firefox.com/success.txt

Browsers and operating systems will do an HTTP request to one of those urls, and expect a string like success to appear. If it doesn’t appear, it means a router might be blocking it and a pop-up will appear to log into the network.

One of the issues with this approach is that it might not be possible to for a client to distingish a ‘correct’ response, vs. a HTTP response that was intercepted by the network and a captive portal being served instead.

It is a type of man-in-the-middle attack, so returning a captive portal interface instead of the real response might cause systems to malfunction and caches to be primed with bad data.

The 511 Network Authentication Required status code was invented as a default status code for captive portals to return when intercepting a HTTP request. This status signals that it was returned by an intermediate.

The full HTTP response should contain a link to where the user may log in.

The example given from the RFC is as follows:

HTTP/1.1 511 Network Authentication Required
Content-Type: text/html

<html>
  <head>
     <title>Network Authentication Required</title>
     <meta http-equiv="refresh"
           content="0; url=https://login.example.net/">
  </head>
  <body>
     <p>You need to <a href="https://login.example.net/">
     authenticate with the local network</a> in order to gain
     access.</p>
  </body>
</html>

References

Community News: Latest PECL Releases (09.10.2019)

Latest PECL Releases:

  • mongodb 1.6.0
    ** Bug

    • [PHPC-1331] - Fix typos in ReadPreference::__set_state() errors
    • [PHPC-1332] - PHP array API downcasts 64-bit integers to 32-bit values on Windows
    • [PHPC-1341] - Remove XFAIL for unacknowledged write concern test
    • [PHPC-1419] - Error label from server error is not exposed in ServerException
    • [PHPC-1432] - Fix documentation for Session::startTransaction() options parameter
    • [PHPC-1435] - Fix Session::startTransaction() arginfo

    ** Epic

    • [PHPC-837] - Update PHP driver to test in Evergreen
    • [PHPC-1112] - Test suite improvements
    • [PHPC-1233] - FY2019Q3 Quick Wins
    • [PHPC-1235] - PHPC MongoDB 4.2 Support
    • [PHPC-1329] - Fix Windows build failures on AppVeyor

    ** New Feature

    • [PHPC-1123] - Create interface for Cursor class
    • [PHPC-1222] - Implement accessor for error labels on exception classes
    • [PHPC-1231] - Add Session::isInTransaction to indicate whether a transaction is active
    • [PHPC-1254] - Implement ObjectID spec
    • [PHPC-1288] - Implement Unified URI Options
    • [PHPC-1290] - Support mongos pinning for sharded transactions
    • [PHPC-1291] - Retryable Reads
    • [PHPC-1292] - Support polling SRV records for mongos discovery
    • [PHPC-1297] - Support sharded transactions recovery token
    • [PHPC-1319] - Drivers should use majority write concern when retrying commitTransaction
    • [PHPC-1324] - Support Retryable Writes on by Default
    • [PHPC-1355] - Add the ability to specify a pipeline to an update command
    • [PHPC-1371] - Drivers send recoveryToken on abortTransaction
    • [PHPC-1382] - Allow applications to set maxTimeMS for commitTransaction

    ** Task

    • [PHPC-691] - Test that Server command/query execute methods send read preference to mongos
    • [PHPC-857] - Create Evergreen matrix for various test configurations
    • [PHPC-858] - Add authentication axis to Evergreen matrix
    • [PHPC-859] - Add SSL axis to Evergreen matrix
    • [PHPC-860] - Add PHP runtime axis to Evergreen matrix
    • [PHPC-861] - Add MongoDB version axis to Evergreen matrix
    • [PHPC-862] - Add Evergreen matrix to run against nightly server builds
    • [PHPC-863] - Add RHEL 7.1/Power 8 to the operating system axis
    • [PHPC-864] - Add storage engines to Evergreen matrix
    • [PHPC-1122] - Check whether we still need SUPPRESS_UNUSED_WARNING
    • [PHPC-1173] - Reimplement replica set seedlist tests
    • [PHPC-1180] - Fix peer certificate verification errors for SSL clusters
    • [PHPC-1219] - Relax requirement for replica set tagsets assertions
    • [PHPC-1240] - Remove noprealloc, nssize and smallfiles from MO configurations
    • [PHPC-1250] - Document the order in which skip_ifs in tests need to be done
    • [PHPC-1271] - Add (only) RHEL on zSeries to Evergreen Matrix
    • [PHPC-1275] - Bump wire protocol version for 4.2
    • [PHPC-1276] - Create tool chain for PHP binaries
    • [PHPC-1299] - Add Ubuntu 16.04/ARM64 to the operating system axis
    • [PHPC-1320] - Regenerate test certificates with SHA256 signatures
    • [PHPC-1333] - Revert to virtualized Travis CI environments
    • [PHPC-1345] - Revise fragile session ID assertions
    • [PHPC-1364] - Upgrade libmongoc to 1.14.0
    • [PHPC-1369] - Upgrade libmongoc to 1.15.0
    • [PHPC-1370] - Revise test assertion for unknown modifier error message
    • [PHPC-1377] - Remove support for PHP 5.5
    • [PHPC-1390] - Remove 7.0 and add 7.3 on AppVeyor
    • [PHPC-1392] - Avoid spurious failure in ConnectionTimeoutException test due to slow auth
    • [PHPC-1399] - Test MongoDB 4.2 in Evergreen
    • [PHPC-1412] - Fix test failures when retryable writes are enabled
    • [PHPC-1413] - Fix test failures executing insert on secondary
    • [PHPC-1414] - Skip tests when mongo orchestration is not available
    • [PHPC-1415] - Fix test failures for sharded cluster without replica set
    • [PHPC-1428] - Bump libmongoc to 1.15.1

    ** Improvement

    • [PHPC-1206] - Add __set_state() support for ReadConcern, ReadPreference, and WriteConcern
    • [PHPC-1229] - Populate error labels for bulk write exceptions
    • [PHPC-1301] - php_phongo_cursor_t.got_iterator should use bool type
    • [PHPC-1307] - Exception interface should extend Throwable on PHP 7+
    • [PHPC-1346] - Do not allow empty string for username
    • [PHPC-1373] - WriteResult is inaccessible if executeBulkWrite() encounters socket error
    • [PHPC-1394] - Don't send $readPreference to standalone servers
    • [PHPC-1422] - Raise an actionable error message when retryWrites fails due to using an unsupported storage engine
    • [PHPC-1431] - Session::startTransaction() should accept null for options
  • zip 1.15.5
    - Fix build with PHP 7.4 - Remove dead code - Replace deprecated libzip functions
  • sdl 2.3.0
    - Fix out of bounds error (remicollet) - Add basic joystick/gamepad support (santiagolizardo)
  • libsodium 2.0.22
    - Security: the sodium_crypto_generichash_init() function used to return a partially uninitialized buffer. This has been fixed. Thanks to @CiPHPerCoder for spotting this. - SODIUM_CRYPTO_PWHASH_STRBYTES has been added
  • xlswriter 1.2.7
    - FEAT read xlsx file. - FIX multiple file segmentation fault.
  • protobuf 3.10.0RC1
    GA release.
  • sqlsrv 5.7.0preview
    [Added] - Support for PHP 7.4 RC 1 - Support for Linux Ubuntu 19.04 and Debian 10 - Feature Request [#929](https://github.com/microsoft/msphpsql/issues/929) - new [Language option](https://github.com/microsoft/msphpsql/wiki/Features#language) - Pull Request [#930](https://github.com/microsoft/msphpsql/pull/930) - [Data Classification Sensitivity Metadata Retrieval](https://github.com/microsoft/msphpsql/wiki/Features#data-classification-sensitivity-metadata), which requires [MS ODBC Driver 17.2+](https://docs.microsoft.com/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server) and [SQL Server 2019 release candidate](https://docs.microsoft.com/sql/sql-server/sql-server-ver15-release-notes?view=sqlallproducts-allversions#-release-candidate-rc) [Removed] - Dropped support for Ubuntu 18.10 [Fixed] - Issue [#570](https://github.com/microsoft/msphpsql/issues/570) - Fixed fetching varbinary data using client buffer with sqlsrv - Pull Request [#972](https://github.com/microsoft/msphpsql/pull/972) - Removed redundant calls to retrieve the number of columns or rows in the current query result set - Pull Request [#979](https://github.com/microsoft/msphpsql/pull/979) - Added support for data classification sensitivity metadata retrieval - Pull Request [#985](https://github.com/microsoft/msphpsql/pull/985) - Fixed memory issues with data classification data structures - Issue [#432](https://github.com/microsoft/msphpsql/issues/432) - Having any invalid UTF-8 name in the connection string will no longer invoke misleading error messages - Issue [#909](https://github.com/microsoft/msphpsql/issues/909) - Fixed potential exception with locale issues in macOS - Pull Request [#992](https://github.com/microsoft/msphpsql/pull/992) - Produced the correct error when requesting Data Classification metadata with ODBC drivers prior to 17 - Pull Request [#1001](https://github.com/microsoft/msphpsql/pull/1001) - Fixed compilation issue with PHP 7.4 alpha - Pull Request [#1004](https://github.com/microsoft/msphpsql/pull/1004) - Fixed another compilation issue with PHP 7.4 alpha - Pull Request [#1008](https://github.com/microsoft/msphpsql/pull/1008) - Improved data caching when fetching datetime objects - Pull Request [#1011](https://github.com/microsoft/msphpsql/pull/1011) - Fixed a potential buffer overflow when parsing for escaped braces in the connection string - Pull Request [#1015](https://github.com/microsoft/msphpsql/pull/1015) - Fixed compilation issues and addressed various memory leaks detected by PHP 7.4 beta 1 [Limitations] - No support for inout / output params when using sql_variant type - No support for inout / output params when formatting decimal values - In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work - Always Encrypted requires [MS ODBC Driver 17+](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017) - Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported - Issue [#716](https://github.com/Microsoft/msphpsql/issues/716) - With Always Encrypted enabled, named parameters in subqueries are not supported - [Always Encrypted limitations](https://docs.microsoft.com/en-us/sql/connect/php/using-always-encrypted-php-drivers?view=sql-server-2017#limitations-of-the-php-drivers-when-using-always-encrypted) [Known Issues] - Data Classification metadata retrieval is not compatible with ODBC Driver 17.4.1 - Connection pooling on Linux or macOS is not recommended with [unixODBC](http://www.unixodbc.org/) < 2.3.7 - When pooling is enabled in Linux or macOS - unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages - due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples [here](https://github.com/Microsoft/msphpsql/wiki/Features#pooling) - With ColumnEncryption enabled, calling stored procedure with XML parameter does not work (Issue [#674](https://github.com/Microsoft/msphpsql/issues/674)) - In SUSE 15, Azure Active Directory connections may fail if PHP is installed from packages (Issue [#934](https://github.com/Microsoft/msphpsql/issues/934))
  • pdo_sqlsrv 5.7.0preview
    [Added] - Support for PHP 7.4 RC 1 - Support for Linux Ubuntu 19.04 and Debian 10 - Feature Request [#929](https://github.com/microsoft/msphpsql/issues/929) - new [Language option](https://github.com/microsoft/msphpsql/wiki/Features#language) - Pull Request [#930](https://github.com/microsoft/msphpsql/pull/930) - [Data Classification Sensitivity Metadata Retrieval](https://github.com/microsoft/msphpsql/wiki/Features#data-classification-sensitivity-metadata), which requires [MS ODBC Driver 17.2+](https://docs.microsoft.com/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server) and [SQL Server 2019 release candidate](https://docs.microsoft.com/sql/sql-server/sql-server-ver15-release-notes?view=sqlallproducts-allversions#-release-candidate-rc) [Removed] - Dropped support for Ubuntu 18.10 [Fixed] - Issue [#570](https://github.com/microsoft/msphpsql/issues/570) - Fixed fetching varbinary data using client buffer with sqlsrv - Pull Request [#972](https://github.com/microsoft/msphpsql/pull/972) - Removed redundant calls to retrieve the number of columns or rows in the current query result set - Pull Request [#978](https://github.com/microsoft/msphpsql/pull/978) - PDO_SQLSRV implementation of PDO::getColumnMeta now references cached metadata rather than making an ODBC call every time - Pull Request [#979](https://github.com/microsoft/msphpsql/pull/979) - Added support for data classification sensitivity metadata retrieval - Pull Request [#985](https://github.com/microsoft/msphpsql/pull/985) - Fixed memory issues with data classification data structures - Issue [#432](https://github.com/microsoft/msphpsql/issues/432) - Having any invalid UTF-8 name in the connection string will no longer invoke misleading error messages - Issue [#909](https://github.com/microsoft/msphpsql/issues/909) - Fixed potential exception with locale issues in macOS - Pull Request [#992](https://github.com/microsoft/msphpsql/pull/992) - Produced the correct error when requesting Data Classification metadata with ODBC drivers prior to 17 - Pull Request [#1001](https://github.com/microsoft/msphpsql/pull/1001) - Fixed compilation issue with PHP 7.4 alpha - Pull Request [#1004](https://github.com/microsoft/msphpsql/pull/1004) - Fixed another compilation issue with PHP 7.4 alpha - Pull Request [#1008](https://github.com/microsoft/msphpsql/pull/1008) - Improved data caching when fetching datetime objects - Pull Request [#1011](https://github.com/microsoft/msphpsql/pull/1011) - Fixed a potential buffer overflow when parsing for escaped braces in the connection string - Pull Request [#1015](https://github.com/microsoft/msphpsql/pull/1015) - Fixed compilation issues and addressed various memory leaks detected by PHP 7.4 beta 1 [Limitations] - No support for inout / output params when using sql_variant type - No support for inout / output params when formatting decimal values - In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work - Always Encrypted requires [MS ODBC Driver 17+](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017) - Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported - Issue [#716](https://github.com/Microsoft/msphpsql/issues/716) - With Always Encrypted enabled, named parameters in subqueries are not supported - [Always Encrypted limitations](https://docs.microsoft.com/en-us/sql/connect/php/using-always-encrypted-php-drivers?view=sql-server-2017#limitations-of-the-php-drivers-when-using-always-encrypted) [Known Issues] - Data Classification metadata retrieval is not compatible with ODBC Driver 17.4.1 - Connection pooling on Linux or macOS is not recommended with [unixODBC](http://www.unixodbc.org/) < 2.3.7 - When pooling is enabled in Linux or macOS - unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages - due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples [here](https://github.com/Microsoft/msphpsql/wiki/Features#pooling) - With ColumnEncryption enabled, calling stored procedure with XML parameter does not work (Issue [#674](https://github.com/Microsoft/msphpsql/issues/674)) - In SUSE 15, Azure Active Directory connections may fail if PHP is installed from packages (Issue [#934](https://github.com/Microsoft/msphpsql/issues/934))
  • http_message 0.2.0
    Added Factory class that implements all PSR-17 interfaces. All properties private. Allow filename and mode for Stream constructor. Allow StreamInterface object for UploadedFile constructor. Move uploaded file copies a stream if stream is supplied. Fixes and cleanup.

Xdebug Update: August 2019

Xdebug Update: August 2019

This is another of the monthly update reports in which I explain what happened with Xdebug development in this past month. It will be published on the first Tuesday after the 5th of each month. Patreon supporters will get it earlier, on the first of each month. You can become a patron here to support my work on Xdebug. More supporters, means that I can dedicate more of my time to improving Xdebug.

In August, I worked on the following things:

2.8.0beta2 Release

This second beta release addresses a lot of issues that were still outstanding for the 2.8 release. This included simple issues like Wrong name displayed for Recoverable fatal errors and Code Coverage misses fluent interface function call. The trickiest bug was related to the DBGp debugging protocol.

I test Xdebug's implementation of the DBGp protocol by having a file with the PHP script to debug and then a phpt test that has a set of commands to run against that file. As an example, for one of the fixed bugs, the script looks like:

<?php function breakpoint1()
{
        echo base64_encode("testing"), "\n";
        strlen();
}

breakpoint1();
??>

And the phpt test looks like:

<?php require 'dbgp/dbgpclient.php';
$filename = realpath( dirname(__FILE__) . '/bug01388-01.inc' );

$commands = array(
        'feature_get -n resolved_breakpoints',
        "breakpoint_set -t line -f file://{$filename} -n 4",
        'breakpoint_list',
        'feature_set -n resolved_breakpoints -v 1',
        'feature_get -n resolved_breakpoints',
        'breakpoint_list',
        "breakpoint_set -t line -f file://{$filename} -n 4",
        'breakpoint_list',
        'detach',
);

dbgpRunFile( $filename, $commands );
??>

The third command sets a breakpoint on line 4 (the echo statement) and then does various things related to breakpoint resolving. The "remote log" that is generated by the test is then compared (after some regexp replacements) with the expected output.

Because I run the script in a new process, I have some methods in place to also collect the output of the script (both stdout and stderr). I don't usually have stderr on, as there are a few false positives, but when I tested with this in the past, I noticed that one test caused a segmentation fault.

After a few hours of trying to find out the problem, I noticed that this would only happen in the init state (when the debugger first connects to the IDE, and when the IDE can enable features and send breakpoints). If in this init state the IDE would send the detach command, Xdebug would crash. This detach command can be used by an IDE to disengage the debugger, with the script continuing to run afterwards.

Due to an implementation bug related to whether the debugger connection was active or not, a detach in the init state would mark the connection active, while the connection was already cleaned up before hand. This caused Xdebug to access memory, that was already freed (which is a bad thing to do). The fix was luckily quite simple.

Truncated by Planet PHP, read more at the original (another 5031 bytes)

Powered by Gewgley