Below is a detailed changelog, along with specific tasks completed, for each version released to date.
- 👍 #enhancement
- Remove root check in tests, include test suite script
- Add Bashcov to generate Code coverage reports
- Add more PhpStorm IDE configuration files
- Updated Readme and Changelog files
- 🐛 #bugfix
- Update document comments with correct details
- Fixed broken links
- Fix bats test for lamp-upgrade script
- 👍 #enhancement
- Upgraded all submodules.
- Cleaned up code in
folder_and_git.sh
. - Updated
website_folder_ownership.sh
and bats test. - Updated BATS test scripts.
- Included Testing section on README.
- 🐛 #bugfix
- Fixes in
upgrade_software.sh
:- Fixed issue where git wasn't pulling from origin.
- Added
--init
to submodule update.
- Bumped version number in scripts.
- Fixes in
- 👍 #enhancement
- Remove macOS apache from install.
- Changed apache restart to use brew only.
- Updated Adminer and Git submodules.
- 🐛 #bugfix
- Fixed file permissions.
- Fixed minor issue with text wrapping.
- 👍 #enhancement
- Renamed main scripts for better compatibility.
- Updated Homebrew installer.
- Upgraded Travis config.
- Updated shellcheck test with latest OS.
- Improved group variable with
id -gn
. - Updated bats tests.
- Upgraded packages to current versions.
- Standardised code in shell scripts.
- Updated README with new instructions.
- 🆕 #new
- Added GitHub Sponsors.
- 🐛 #bugfix
- Fixed git submodule upgrade.
- Fixed issue with TOP and BOTTOM in scripts.
- Fixed issue with travis shellcheck error 127.
- Fixed path to globals and colour_palette.
- Changed permissions on files.
- Removed Code and Sublime project files.
- #enhancement
- Install wget via brew and stop macOS Apache before trying to start Apache 2.
- #new
- New upgrade script for the project.
- New installation instructions added (#14)
- #bugfix
- Fixed the recursive loop in copying files over in
upgrade_software.sh
.
- Fixed the recursive loop in copying files over in
- #enhancement
- Changed output messages to use new
printf
format instead ofecho
. - Updated
globals.sh
file withphp 7.3
path as this has changed in brew from7.2
. - Rename
add_domains
test script toadd_domain
. - Updated
.travis.yml
build file with correct paths. - Updated test scripts in
\tests\
folder with latest changes.
- Changed output messages to use new
- #new
- New
website_folder_ownership.sh
script to set permissions on the newly created domain folder. - New
bats
test forwebsite_folder_ownership.sh
script file.
- New
- #enhancement
- Renamed
folder_permissions.sh
tofolder_ownership.sh
. - Updated
bats
test forfolder_permissions
. - Renamed the
folder_permissions
in theinstall
script.
- Renamed
- #new
- New
docs
folder for the documentation.
- New
- #enhancement
- Renamed
add_domains
toadd_domain
. apache_config.sh
now creates symlink to PHP configuration folder.- Changed the message output for the following:
setup_ssl.sh
apache_config.sh
- Renamed
- #bugfix
- Updated version numbers in script files.
- Removed
coveralls
code coverage as it doesn't work with bash.
This is the first production release since the first commit almost two months ago. The following changes enable this major branch release.
- #new
- Included
./websites/localhost/
folder which contains a template for bootstrapping your development projects. This folder includes:- HTML5 Boilerplate version 6.1.0
- Twitter Bootstrap version 3.3.7
- jQuery version 1.11.2
- Modernizr version 2.8.3
- Symlink to
php
configuration folder to enable editing ofphp.ini
file. - Added
restart_apache.sh
for inclusion inadd_domains
script.
- Included
- #enhancement
apache_config.sh
script now installs thelocalhost
website.- Changed output message to new format in
folder_permissions.sh
.
- #bugfix
- Set file permissions correctly.
- Added a delete method for
keychain_certificate.sh
that removes the old certificate before adding a new one when runningadd_domains
.
- #new
- File permission changes to files from machine migration.
- #enhancement
- Changed the output messages.
- #new
- In addition to
BATS
and Travis,shellcheck
is also checking the source.
- In addition to
- #enhancement
- Added
shellcheck
command to.travis.yml
to run tests against the build. - Updated
folder_ownership()
method description infolder_permissions.sh
.
- Added
- #bugfix
- Applied all the bug fix recommendation from
shellcheck
to all scripts. - Fixed bug whereby the
.git
templates weren't being copied correctly.
- Applied all the bug fix recommendation from
- #new
- Entirely new test suite using BATS. Each method is now tested
using individual
.bats
files contained in./tests/bats/
. To run the entire test suite issue the following command:$ bats tests/bats/
. This assumes you've installed BATS. - Added Coveralls support but this is limited as they don't
support
bash
yet. Go figure.
- Entirely new test suite using BATS. Each method is now tested
using individual
- #enhancement
- Changed the success output from
printf
toecho -e
asprintf
doesn't work withbats
properly. - Removed
dist/websites
symlink as this gets generated at install time.
- Changed the success output from
- #bugfix
- Fixed up an array of bugs in individual scripts as debugged with
bats
. The list of changes is exhaustive so check the diff changes to thescripts
folder for more detail. - Removed the
brew httpd
startup script as it's not needed. - Removed
scripts/brew_install.sh
as it has been replaced with the main./brew
install script. - Removed the Travis test for
xcode6.4
in.travis.yml
as this project doesn't build when running againstmacOS 10.9/10.10
. It appears this is only supported onmacOS 10.11
and later.
- Fixed up an array of bugs in individual scripts as debugged with
- #bugfix
- Fixed output of echo message in:
add_domains
apache_config.sh
- Fixed the extraction directory for phpMyAdmin in
thirdparty_install.sh
. - Fixed up the
git commit
not happening in correct folder.
- Fixed output of echo message in:
- #enhancement
brew_startup
added tobrew
script.- Added older versions of
macOS
for Travis to build against.
- #enhancement
- Included
thirdparty_install.sh
ininstall
. thirdparty_install.sh
changes:- Removed the
git clone
commands for all as they are now submodules.
- Removed the
- Improved
cp
command ingit_setup.sh
- Included
- #bugfix
- Fixed output of echo message in:
install
apache_config.sh
- Set variables for hard coded paths in:
thirdparty_install.sh
openssl_command.sh
hosts_file.sh
- Removed creation of
.gitignore
file as it overwrites the one from the .github templates. - Removed
''
preventing the output of the variable foropenssl.conf
. - Removed the moving of folders in
git_setup.sh
as it isn't needed.
- Fixed output of echo message in:
- #new
- New
.travis.yml
file. Testing CI to ensure it all builds as expected. - New
brew
primary script. - New test scripts contained in
./tests/
folder:install
: no changes to original.brew
: defaults tono
so it will install Homebrew.add_domains
: manually setdomain="www.test.localhost"
.
- Symbolic links in
./tests/
to./src/
,./dist/
and./scripts/
folders.
- New
- #enhancement
- Removed generation of
pk12
key for Client Certificate insetup_ssl.sh
.
- Removed generation of
- #bugfix
- Fixed bug in
setup_ssl.sh
where it relies onsudo
. - Moved
brew
install out ofinstall
script as it can't run insudo
- Fixed bug in
- #new
- Added various Apache config files.
- #new
- New
install
script to setup up the project initially. - Added the followin new scripts:
colour_palette.sh
enter_domain.sh
folder_and_git.sh
folder_permissions.sh
git_setup.sh
globals.sh
hosts_domain.sh
keychain_certificate.sh
openssl_command.sh
openssl_config.sh
- New
phpmyadmin_install
installation method in thethirdparty_install.sh
script. - New
src/archives/
folder to downloadphpmyadmin
. - Added a new
folder_permissions
method toadd_domains
script. - New
addto_keychain
function insetup_ssl.sh
script. - New
keychain_certificate
function inadd_domains
script. - New
paths.sh
script that sets global file paths.
- New
- #enhancement
- Updated
README.md
. - Changed install path of SSL certificates to
/usr/local/var/www/ssl
. - Updated
setup_localhost
:- To create SSL certs in
/usr/local/var/www/ssl
. - Created proper methods for the script.
- Added messages echoed to the Terminal for each step.
- To create SSL certs in
- Renamed and moved
setup_localhost
toscripts/setup_ssl.sh
- Updated
httpd-vhosts.conf
to reflect changes to SSL certificates.
- Updated
- #bugfix
- Fixed up
CHANGELOG.md
. - Added
.sh
extensions to all scripts in the/scripts/
folder to comply with code standards. - Added missing comments for methods contained in the
scripts/thirdparty_install.sh
script.
- Fixed up
- Added new
apache_config
script. - Fixed all scripts with new updated paths.
- Fixed README conflict.
- Restructured entire project. Now have
src
anddist
folders for everything. httpd.conf
changes.- Merge pull request #13 from waffle-iron/master
- add waffle.io badge
- Added VS Code project workspace file.
- #new
- Added Apache
*.conf
files to/httpd/conf/
. - Added Apache custom
.conf
files to/httpd/extra/
. These files are ignored and need to be created at installation time.
- Added Apache
- #bugfix
- Made
hosts_file
executable. - Removed
adminer/
andhttpd/error-pages/
fromgit
and added them to the.gitignore
file.
- Made
- #new
- Added
/brew/
folder with the Apache start-up script. - New
git
templates. - Added
httpd/
folder with Apache.conf
files. - New
src/
folder with scripts now for:brew_install
- Homebrew installation script.thirdparty_install
- Uses git to clone the Adminer project and the Apache Error Pages project as sub-modules.hosts_file
- Backs up and creates symlink with hosts file.
- Added a new
upgrade_software
script which upgrades the core as well as sub-modules linked to the project. Closes #11.
- Added
- #enhancement
- New
CHANGELOG.md
for inclusion now with thegit
set-up. Closes [#9].
- New
- #bugfix
- Replaced old
/.github/
folder with the more current ## version from@justinhartman/.github
as they were wrong. Closes #12. - Changed the template for
CHANGELOG.md
as it didn't have the${domain}
set to display the project name in the file. - Fixed the word-wrap on the License messages contained in each file to ensure they don't go longer than 80 characters.
- Fixed the wrapping of the output messages on running parts of the script.
- Replaced old
- #new
- Symbolic link to
/adminer/
. See issue #6 for more details on how it will be integrated into the first release candidate. - Added new template files for issue #8:
- ISSUE_TEMPLATE.md
- CONTRIBUTING.md
- PULL_REQUEST_TEMPLATE.md
- Symbolic link to
- #enhancement
- Integrated changes from issue #8 to now create
.github/
directory with templates when setting up a new domain. - Added
.github/
directory to this actual project using the new templates created in the #enhancement above.
- Integrated changes from issue #8 to now create
- #bugfix
- Updated
add_domains
sudo output error message.
- Updated
- #enhancement
- Need to comment the code properly; this remains undone - issue #3.
- Make code compliant ( issue #1 )
- #new
- Initial Release