This patch adds ability to insert data fixtures in the development
environment using new console script via Symfony Console component
and Faker library which generates demo data for localhost development
environments.
This patch refactors bootstrap file to include more PEAR things so
other files don't need to do this. It's also done as a partial migrtion
to better classes autoloading in the future.
This patch adds a dual autoloading mechanism for classes until further
refactorings will be possible using Composer's autoloader and full
PSR-4 support.
The sizeof() function is an alias of count() which is more used in PHP
and more intuitive when doing counting. This patch syncs usage of these
two functions in code.
This patch syncs and converts all files to include spaces for indentation
except for Makefile. Prior to this patch there were mixed tabs and
spaces in most files.
This patch refactors the package class from the pear-database.php file
to start modernizing it and make it more manageable.
Several methods were removed since they are not used in current code:
- Package::getDownloadURL()
- Package::getPackageFile()
- Package::getDepDownloadURL()
- Package::search()
Other methods got method visibility and static keywords added since
current code still uses static calls on many places and to split
refactoring in multiple phases.
This patch moves category class from database file to its dedicated file
in the src directory and renames it to Category. Additionally for now
the static keywords were added to methods until further refactorings.
This patch syncs and updates all headers in source code files across the
PECL website code base.
- Authors preserved
- The PECL website titles used and synced as is the current project name
- PHP License version updated to the latest
- Year ranges synced
- Comment block synced as is used in php-src files - simplified
multiline comment block.
- PHP Doc block tags @author removed in favor of the main file headers
This patch adds an initial README file to project root directory
together with some changes:
- Added missing LICENSE file
- Added PECL image logo in SVG format
- readme from sql directory removed and information merged into this one
- apache-setup.txt file included some obsolete and removed PHP ini
directives and has been replaced with the installation steps in the
main README file instead.
Having synced file permissions in Git repositories is a reccurring
issue. Git can track files as executables (0755) or not (0644). Usually,
all files except the executable ones such as command line scripts or
binary executables, should be set to 0644.
This patch syncs permissions in the Git repository.
This patch adds missing newlines, trims multiple redundant final
newlines into a single one and trims leading newlines at the beginning
of the files.
According to POSIX, a line is a sequence of zero or more non-'<newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.
C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."
Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.
[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
The $Id$ keywords were used in Subversion where they can be substituted
with filename, last revision number change, last changed date, and last
user who changed it.
In Git this functionality is different and can be done with Git attribute
ident. These need to be defined manually for each file in the
.gitattributes file and are afterwards replaced with 40-character
hexadecimal blob object name which is based only on the particular file
contents.
This patch simplifies handling of $Id$ keywords by removing them since
they are not used anymore.