Jump to content

Recommended Posts

Posted

Blesta: 5.10.0 beta 1
PHP: 8.2.7
OS: Debian 12.5 (stable, bookworm)

In forum topic linked below I requested support on how to stop daily file logs filling up with E_DEPRECATED messages, despite error reporting and degug off. For example, the daily general-notice-XXXX-XX-XX.log file with Blesta 5.9.3 is typically over 1 MB.

Paul instead requested I let Blesta know about E_DEPRECATED messages with the new upcoming beta and how encountered.

The two log messages below are fresh install messages by overwrite of a restored fresh install directory with 5.10.0 beta 1 and with restoration of backed up fresh install database. 

I think it is worthwhile showing fresh install E_DEPRECATED messages as a base line.

I will add in more E_DEPRECATED messages to this thread as as I encounter them, such as after snapshotting a backup of Blesta production directory and database into developer licence directory and database and then upgrading to beta.

 

cat general-notice-2024-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'

general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Autoloader::$path is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Autoloader::$path is deprecated","file":"/plugins/feed_reader/vendors/simplepie/autoloader.php","line":67} 

 

cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'

general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256} 

 

Link to previous post:

 

Posted

Here are some initial log messages after snapshoting directory and database from production to developer and then upgrading Blesta 5.9.3 to Blesta 5.10.0 beta 1, using PHP 8.2.7.

I cannot be expected to allow cron to run under this condition. However there is plenty to go on without cron running.

The conditions are just browsing. No new actions, creations or deletions at the moment. I expect more will be added as I try this.

This is an ERROR message, not a E_DEPRECATED message
cat general-error-2024-*.log  |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home\S*\/blesta\///g'

general.ERROR: PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'package_pricing.default' in 'where clause' in /vendors/minphp/db/src/PdoConnection.php:196 Stack trace: #0 /vendors/minphp/db/src/PdoConnection.php(196): PDOStatement->execute() #1 /vendors/minphp/record/src/Record.php(793): Minphp\Db\PdoConnection->query() #2 /app/models/packages.php(1518): Minphp\Record\Record->fetch() #3 /app/models/packages.php(650): Packages->getPackagePricing() #4 /app/models/packages.php(577): Packages->appendPackageContent() #5 /app/models/services.php(831): Packages->get() #6 /app/models/services.php(191): Services->appendServiceInfo() #7 /plugins/domains/models/domains_domains.php(94): Services->getList() #8 /plugins/domains/controllers/admin_main.php(881): DomainsDomains->getList() #9 /vendors/minphp/bridge/src/Lib/Dispatcher.php(142): AdminMain->domains() #10 /index.php(21): Dispatcher::dispatch() #11 {main} 


E_DEPRECATED general notice, not including 'loses precison' message
cat general-notice-2024-*.log | grep -v 'loses precision' |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'

general.NOTICE: E_DEPRECATED: Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated {"code":8192,"message":"Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Autoloader::$path is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Autoloader::$path is deprecated","file":"/plugins/feed_reader/vendors/simplepie/autoloader.php","line":67} 
general.NOTICE: E_DEPRECATED: strpos(): Passing null to parameter #2 ($needle) of type string is deprecated {"code":8192,"message":"strpos(): Passing null to parameter #2 ($needle) of type string is deprecated","file":"/components/upload/upload.php","line":398} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property NamesiloApi::$logger is deprecated {"code":8192,"message":"Creation of dynamic property NamesiloApi::$logger is deprecated","file":"/components/modules/namesilo/apis/namesilo_api.php","line":93} 


A typical 'loses precision' E_DEPRECATION message
cat general-notice-2024-*.log | grep 'loses precision' |  cut -d ' ' -f 1 --complement | head -1 | sed 's/\home.*\/blesta\///'

general.NOTICE: E_DEPRECATED: Implicit conversion from float 127.34694444444445 to int loses precision {"code":8192,"message":"Implicit conversion from float 127.34694444444445 to int loses precision","file":"/plugins/support_manager/support_manager_controller.php","line":64} 

 

This is from the fresh install version, not the copy of production version, as I have turned off cron for the production copy for developer.
cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'

general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256} 

Posted (edited)

This is a script, named grep_logs, I have prepared for updated reports for this thread.

#!/bin/bash
cd logs_blesta || exit 1
echo
echo "**ERROR message, not E_DEPRECATED message**"
cat general-error-2024-*.log  |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home\S*\/blesta\///g'
echo
echo
echo "**E_DEPRECATED general notice, not including 'loses precison' message**"
cat general-notice-2024-*.log | grep -v 'loses precision' |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'
echo
echo
echo "**A typical 'loses precision' E_DEPRECATION message**"
cat general-notice-2024-*.log | grep 'loses precision' |  cut -d ' ' -f 1 --complement | head -1 | sed 's/\home.*\/blesta\///'
echo
echo
echo "This is from the fresh install version, not the copy of production version, as I have turned off cron for the production copy for developer"
echo "cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'"
echo 'general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256}'

This is the current result of executing the script, with same results as above:

./grep_logs 

**ERROR message, not E_DEPRECATED message**
general.ERROR: PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'package_pricing.default' in 'where clause' in /vendors/minphp/db/src/PdoConnection.php:196 Stack trace: #0 /vendors/minphp/db/src/PdoConnection.php(196): PDOStatement->execute() #1 /vendors/minphp/record/src/Record.php(793): Minphp\Db\PdoConnection->query() #2 /app/models/packages.php(1518): Minphp\Record\Record->fetch() #3 /app/models/packages.php(650): Packages->getPackagePricing() #4 /app/models/packages.php(577): Packages->appendPackageContent() #5 /app/models/services.php(831): Packages->get() #6 /app/models/services.php(191): Services->appendServiceInfo() #7 /plugins/domains/models/domains_domains.php(94): Services->getList() #8 /plugins/domains/controllers/admin_main.php(881): DomainsDomains->getList() #9 /vendors/minphp/bridge/src/Lib/Dispatcher.php(142): AdminMain->domains() #10 /index.php(21): Dispatcher::dispatch() #11 {main}  


**E_DEPRECATED general notice, not including 'loses precison' message**
general.NOTICE: E_DEPRECATED: Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated {"code":8192,"message":"Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Autoloader::$path is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Autoloader::$path is deprecated","file":"/plugins/feed_reader/vendors/simplepie/autoloader.php","line":67} 
general.NOTICE: E_DEPRECATED: strpos(): Passing null to parameter #2 ($needle) of type string is deprecated {"code":8192,"message":"strpos(): Passing null to parameter #2 ($needle) of type string is deprecated","file":"/components/upload/upload.php","line":398} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property NamesiloApi::$logger is deprecated {"code":8192,"message":"Creation of dynamic property NamesiloApi::$logger is deprecated","file":"/components/modules/namesilo/apis/namesilo_api.php","line":93} 


**A typical 'loses precision' E_DEPRECATION message**
general.NOTICE: E_DEPRECATED: Implicit conversion from float 127.34694444444445 to int loses precision {"code":8192,"message":"Implicit conversion from float 127.34694444444445 to int loses precision","file":"/plugins/support_manager/support_manager_controller.php","line":64} 


This is from the fresh install version, not the copy of production version, as I have turned off cron for the production copy for developer
cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[]++' | sed 's/\home.*\/blesta\///'
general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256}

 

Edited by johnhe
correct
Posted (edited)

Here is a more robust version of the grep_logs script that I am now using, now called grep_blesta_logs.

#!/bin/bash
# grep_blesta_logs
# Parse some blesta logs from blesta install direcory for unique messages
# Version 0.1a, Author John Heenan, April 2024
# Reference: https://www.blesta.com/forums/index.php?/topic/25767-e_deprecated-messages/
year=$(date +%Y)
cd logs_blesta || exit 1

if ls general-error-${year}-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "**ERROR message, not E_DEPRECATED message**"
  cat general-error-${year}-*.log  |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home\S*\/blesta\///g'
fi

if ls general-notice-${year}-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "**E_DEPRECATED general notice, not including 'loses precison' message**"
  cat general-notice-${year}-*.log | grep -v 'loses precision' |  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'

  loses_precision=$(cat general-notice-${year}-*.log | grep 'loses precision' |  cut -d ' ' -f 1 --complement | head -1 | sed 's/\home.*\/blesta\///')
  echo
  echo
  if [ "$loses_precision" ]; then
    echo "**A typical 'loses precision' E_DEPRECATION message**"
    echo "$loses_precision"
  else
    echo "**No 'loses precision' messages**"
  fi
fi

if ls general-notice-cron-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "Unique cron messages"
  cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'
else
  echo
  echo
  echo "**Below  is from the fresh install version, not the copy of production version into developer version for which cron should not be allowed to run**"
  echo "cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home.*\/blesta\///'"
  echo 'general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256}'
fi


 

Edited by johnhe
correct script
Posted

Wasn't doing anything. Numerous different H2o E_DEPRECATED messages have been logged below. Have not got round to making any changes yet.

First the new version 0.1b of logs parse script now called grep_blesta_logs
 

#!/bin/bash
# grep_blesta_logs
# Parse some blesta logs from blesta install direcory for unique messages
# Version 0.1b, Author John Heenan, April 2024
# Reference: https://www.blesta.com/forums/index.php?/topic/25767-e_deprecated-messages/
cd logs_blesta || exit 1
year=$(date +%Y)

function filter_log() {
  cut -d ' ' -f 1 --complement | awk -F, '!seen[$1]++' | sed 's/\home\S*\/blesta\///g'
}

if ls general-error-${year}-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "**ERROR message, not E_DEPRECATED message**"
  cat general-error-${year}-*.log | filter_log
fi

if ls general-notice-${year}-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "**E_DEPRECATED general notice, not including 'loses precison' message**"
  cat general-notice-${year}-*.log | grep -v 'loses precision' |  filter_log

  loses_precision=$(cat general-notice-${year}-*.log | grep 'loses precision' | head -1 | filter_log)
  echo
  echo
  if [ "$loses_precision" ]; then
    echo "**A typical 'loses precision' E_DEPRECATION message**"
    echo "$loses_precision"
  else
    echo "**No 'loses precision' messages**"
  fi
fi

if ls general-notice-cron-*.log >/dev/null 2>&1; then
  echo
  echo
  echo "Unique cron messages"
  cat general-notice-cron-*.log | filter_log
else
  echo
  echo
  echo "**Below  is from the fresh install version, not the copy of production version into developer version for which cron should not be allowed to run**"
  echo "cat general-notice-cron-*.log | filter_log"
  echo 'general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256}'
fi

The output:

 ./grep_blesta_logs


**ERROR message, not E_DEPRECATED message**
general.ERROR: PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'package_pricing.default' in 'where clause' in /vendors/minphp/db/src/PdoConnection.php:196 Stack trace: #0 /vendors/minphp/db/src/PdoConnection.php(196): PDOStatement->execute() #1 /vendors/minphp/record/src/Record.php(793): Minphp\Db\PdoConnection->query() #2 /app/models/packages.php(1518): Minphp\Record\Record->fetch() #3 /app/models/packages.php(650): Packages->getPackagePricing() #4 /app/models/packages.php(577): Packages->appendPackageContent() #5 /app/models/services.php(831): Packages->get() #6 /app/models/services.php(191): Services->appendServiceInfo() #7 /plugins/domains/models/domains_domains.php(94): Services->getList() #8 /plugins/domains/controllers/admin_main.php(881): DomainsDomains->getList() #9 /vendors/minphp/bridge/src/Lib/Dispatcher.php(142): AdminMain->domains() #10 /index.php(21): Dispatcher::dispatch() #11 {main}  


**E_DEPRECATED general notice, not including 'loses precison' message**
general.NOTICE: E_DEPRECATED: Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated {"code":8192,"message":"Creation of dynamic property NetGeoIp::$SettingsCollection is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Autoloader::$path is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Autoloader::$path is deprecated","file":"/plugins/feed_reader/vendors/simplepie/autoloader.php","line":67} 
general.NOTICE: E_DEPRECATED: strpos(): Passing null to parameter #2 ($needle) of type string is deprecated {"code":8192,"message":"strpos(): Passing null to parameter #2 ($needle) of type string is deprecated","file":"/components/upload/upload.php","line":398} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property NamesiloApi::$logger is deprecated {"code":8192,"message":"Creation of dynamic property NamesiloApi::$logger is deprecated","file":"/components/modules/namesilo/apis/namesilo_api.php","line":93} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o::$options is deprecated {"code":8192,"message":"Creation of dynamic property H2o::$options is deprecated","file":"/h2o/h2o.php","line":55} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Parser::$options is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Parser::$options is deprecated","file":"/h2o/h2o/parser.php","line":56} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Lexer::$options is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Lexer::$options is deprecated","file":"/h2o/h2o/parser.php","line":7} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Lexer::$pattern is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Lexer::$pattern is deprecated","file":"/h2o/h2o/parser.php","line":13} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Parser::$lexer is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Parser::$lexer is deprecated","file":"/h2o/h2o/parser.php","line":62} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Token::$type is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Token::$type is deprecated","file":"/h2o/h2o/datatype.php","line":110} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Token::$content is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Token::$content is deprecated","file":"/h2o/h2o/datatype.php","line":111} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Token::$result is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Token::$result is deprecated","file":"/h2o/h2o/datatype.php","line":112} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Token::$position is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Token::$position is deprecated","file":"/h2o/h2o/datatype.php","line":113} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Parser::$tokenstream is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Parser::$tokenstream is deprecated","file":"/h2o/h2o/parser.php","line":63} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Parser::$searching is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Parser::$searching is deprecated","file":"/h2o/h2o/parser.php","line":99} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o_Parser::$token is deprecated {"code":8192,"message":"Creation of dynamic property H2o_Parser::$token is deprecated","file":"/h2o/h2o/parser.php","line":92} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property If_Tag::$args is deprecated {"code":8192,"message":"Creation of dynamic property If_Tag::$args is deprecated","file":"/h2o/h2o/tags.php","line":80} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o::$nodelist is deprecated {"code":8192,"message":"Creation of dynamic property H2o::$nodelist is deprecated","file":"/h2o/h2o.php","line":150} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property H2o::$stream is deprecated {"code":8192,"message":"Creation of dynamic property H2o::$stream is deprecated","file":"/h2o/h2o.php","line":142} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Sanitize::$registry is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Sanitize::$registry is deprecated","file":"/plugins/feed_reader/vendors/simplepie/library/SimplePie/Sanitize.php","line":100} 
general.NOTICE: E_DEPRECATED: Creation of dynamic property SimplePie_Locator::$dom is deprecated {"code":8192,"message":"Creation of dynamic property SimplePie_Locator::$dom is deprecated","file":"/plugins/feed_reader/vendors/simplepie/library/SimplePie/Locator.php","line":77} 


**A typical 'loses precision' E_DEPRECATION message**
general.NOTICE: E_DEPRECATED: Implicit conversion from float 127.34694444444445 to int loses precision {"code":8192,"message":"Implicit conversion from float 127.34694444444445 to int loses precision","file":"/plugins/support_manager/support_manager_controller.php","line":64} 


**Below  is from the fresh install version, not the copy of production version into developer version for which cron should not be allowed to run**
cat general-notice-cron-*.log | cut -d ' ' -f 1 --complement | awk -F, '!seen[]++' | sed 's/\home.*\/blesta\///'
general.NOTICE: E_DEPRECATED: Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated {"code":8192,"message":"Creation of dynamic property TicketManager::$SupportManagerDepartments is deprecated","file":"/vendors/minphp/bridge/src/Lib/Loader.php","line":256}


 

Posted

Latest batch of unique log entries with latest version of filter script, now called filter_blesta_logs, now more generally useful and now requiring arguments

The results in file unique_log_entries.txt got by placing script in Blesta install directory and running

./filter_blesta_logs c s e w n > unique_log_entries.txt

No cron results (for reason mentioned above). Going to swap in another backup, upgrade it to Blesta 5.10.0 beta 1 and run cron to get cron entries.

Posted

A new batch from an upgraded backup with cron running in attached log file unique_log_entries.txt

Also attached is latest version of script file filter_blesta_logs.sh. Extension .sh added so as not to cause alarm with downloads and file viewers. Slight difference in way shell called. Single paramer a is equivalent to parameters c s e w n (cron and server logs of error, warning and notice files). From blesta install directory:

./filter_blesta_logs.sh a > unique_log_entries.txt  #  don't forget the a parameter!

When the next beta comes out I will repeat the procedure for two upgraded versions.

  • 2 months later...
Posted (edited)
7 hours ago, wicka said:

May I report in this thread? see attached.

Thanks for the report. For others, the attched file is 9.2MB of deprecated messages logged mainly from files originating in vendors/blesta/h2o/h2o directory.

Below I deal with a specific fix for a reported message and an example of an appoach that made 80 IDE reported error messages disappear for a single file with a two line fix, that may also be reported in messages.

A specific fix that fixed five errors in one go when fixing one:

Here is one of the reported messages:

... general.NOTICE: E_DEPRECATED: ...{"code":8192,"message":"Creation of dynamic property H2o_Token::$type is deprecated","file":".../vendors/blesta/h2o/h2o/datatype.php","line":110} 

Download the source code, open in VSCode, use a php extension such as inteliphense and hover over red underlined part of line 110 to see undefined property type message.

image.png.5e0fea20341565c105988e9e7d839820.png

All five red lines disappear with one line added:  protected mixed $type, $content, $result, $position;

 

image.png

A more general approach that fixed 80 reported IDE errors in one go:

There may be an incredibly easy to fix a lot more very quickly that I have noted to try.

Just poking around within VSCode IDE shows file components/invoice_templates/perforated_invoice/perforated_invoice_pdf.php has 81 problems:

image.png.841a19e8b30c6d02e034070ae92d722a.png

Who wants to fix problems like this?

image.png.55e4600d3c3ba58d010418ce2b02bee2.png

However, with a change of two lines from

image.png.327e5633c2e009fb09ade26e0d2d1526.png

to 

image.png.f6db7f6d053231f3acd1d80ae6cb5bf3.png

I can make 80 of 81 reported problems disappear.

image.png.f4d072b69766edd07c4d939550996c08.png

 

 

Edited by John Heenan
remove repeated images and clarify

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...