Sphider 2.0.0 is under going final testing and will be released probably by mid-October.
Virtually every file has gone at least some alteration. The features of Sphider 2.0.0 are:
– Better page charset handling to ensure that the database receives only UTF-8 input. UTF-8 encodeing of web pages already in UTF-8 format is avoided to eliminate garbled entries.
– Phrase searches have been improved.
– This version is PHP 7.1 ready.
– Integrated indexing of images, with the option to NOT index images. An image search page is also provided.
– RSS content may also be indexed and searched.
– Jquery has been updated to a more recent version.
– While not fully PSR-2 compliant when it comes to PHP coding standards, the code is a LOT closer than it ever has been. This involved the renaming of many functions, the elimination of a few functions which were found to be obsolete (and thus, unused). Coding style had to be changed virtually every module. This is why so much code has been altered, affecting nearly every Sphider PHP code segment.
– The search page is integrated for legacy, RSS, and image searches. Knowing that RSS and images are something not every user will be interested in, an updated (as in 2.0.x compliant) version of the 1.6.x search page is provided. The revised 1.6.x search form, it will work fine with 2.0.x. It will need to be renamed to replace the provided search.php.
Also, finding that porting PDO to databases other than MySQL was messier than anticipated (too many DB specific requirements for each), Sphider 2.0.0 will actually have 4 flavors. The “kits” for PostgreSQL and SQLite were too cumbersome and confusing.
1) The legacy Sphider, using the MySQL database (or MariaDB) and using MySQLi and MySQLnd.
2) PDO Sphider, also using the MySQL database (or MariaDB), but using a PDO implementation (for installations lacking MySQLnd support).
3) PostgreSQL version using a PostgresSQL database and accessed via PDO,
4) SQLite version, using a SQLite database accessed via PDO.
All flavors are testing well and it seems no more coding changes will be needed, after working out some “peculiarities” for each. Now each version must have a final full set of operations performed to ensure everything works. This includes new installation via PHP script, installation using SQL queries, upgrade installation, adding sites, indexing sites, deleting sites, adding, editing, and deleting categories. Also the same is done for RSS indexing. The search functions need to be tested for various situations. We have found a few websites which have, uh…., what you might call “unusual” methods resulting in unusual problems. (Ever seen an image “alt” tag with text running in excess of 1000 characters? We have!)