- Updated
/classes/Bcrypt.php
. - Added missing closing
a
tag in/execution-history.php
. - Updated link in
/index.php
for db-migrate to use the Links class. /js/view-file.js
now slides down the comments section on toggle of adding notes.- Removed
for
attribute in/settings.php
for daylight savings toggle form control. - Fixed typo in the comments for
grid_fs_update()
in/classes/MongoConnection.php
.
- Refactored the order of requires in
/classes/Requires.php
.
- Upgraded Bootstrap to
2.2.1
. /actions/ssh_execute.php
prevents recursive includes, now returns a 409 (conflict) error.
/view-recipe.php
now lists the date created for recipe versions in the select element.- Updated jQuery to
1.8.2
and jQuery UI to1.9.1
. - Refactored
/index.php
to callFunctions::get_db_version()
sooner. - Fixed typo/bug in
/js/common.js
inRequest.ajax()
fromp_options.dataType
top_options.data_type
. - Updated
/js/filedrop.js
to the latest version. - Better error handling in
/js/files.js
.
/classes/Requires.php
now checks to make sure/classes/MySQLConfiguration.php
and/classes/MongoConfiguration.php
exist.
- Added Execution History. You may now view and download execution history stored in MongoDB.
/classes/MySQLQueries.php
get_number_of_recipe_versions()
andget_recipes()
now return results sorted descending instead of ascending.- Files listing now sorts by upload date descending instead of ascending.
- Uploaded files that have a mime-type of
application/json
are now treated as plain text (preview available) instead of binary. - Updated
/js/filedrop.js
to the latest version. - Added checking the response in various javascript AJAX callbacks for
undefined
. /css/code-pretty.css
minor changes to styles./README.md
updated nginx configuration example for using pretty links and added a notice about PHP version 5.4.0 or greater required to utilize json pretty print when viewing execution history./classes/Header.php
very minor changes to text.
- Cosmetic css/text changes in
/index.php
.
- Fix style bug in
/css/additional-styles.css
which prevented the loading animation from appearing on execution. - Filter files by ID, label, or type.
- Bug in
/js/filedrop.js
which prevents file uploads. Rolled-back to old working version. /recipes.php
added a tooltip to the filter recipes field.
- Added Files feature. Upload, view, and download files. Supports plain text and binary.
- Ability to include other recipes in a recipe via rMarkup. See README.md for rMarkup details, syntax and specification.
- Added raw view and download for recipes. Raw view outputs the recipe in plain text.
- Upgraded Bootstrap to
2.1.1
. - Fixed a major bug in executions with multi-line recipes. The fix was to replace
\r\n
with\n
. - Filter recipes by ID, label, or interpreter.
/classes/Navigation.php
added icons to pages in header navigation./recipes.php
now lists the ID in the table with the option to expand./servers.php
sorts groups alphabetically by name. Thedefault
group is forced to the bottom of the page./servers.php
lists the number of servers in each group next to the group name.- Added interpreter type to the list of recipes in
/execute.php
. - Added loading progress bar when viewing a recipe (support for large recipes).
- Copy a recipe ID to your clipboard in
/view-recipe.php
. - Fixed bug in
/classes/Error.php
, now escapes double quotes in returned JSON. - Increased the default height of all notes text-areas.
- Updated
/index.php
, removed GitHub fork ribbon, and restyled. Added Files box. Added logo inhero-unit.
- Added
/img/main-header.png
. /view-recipe.php
now checks to make sure the recipe exists. If not, returns an error.- Removed connecting to MongoDB and selecting the collection in
/execute.php
. This is now handled in/actions/ssh_execute.php
. - Added
/timezone.php
which simply sets the timezone to UTC. /settings.php
is daylight savings uses a new fancy toggle button.- Fixed typo/bug in
generate_id()
in/classes/Functions.php
. - Added GridFS functionality to
/classes/MongoConnection.php
. - Fixed
/classes/Functions.php
formatBytes()
to be more accurate. - Added
timezone_offset_in_seconds()
andadd_ellipsis_reverse()
to/classes/Functions.php
. get_recipes()
in/classes/MySQLQueries.php
now optionally accepts an array of recipes.auth()
in/classes/SSH.php
now returnstrue
if successful./classes/CSRF.php
supports multiple requests on the same page./actions/metrics.php
now sends the running version of Commando.io./controller.php
checks if the included page exists withfile_exists()
.- Reordered/refactored
/classes/Requires.php
. /classes/Requires.php
checks if/app.config.php
exists withfile_exists()
.- Reordered/refactored
/classes/Prerequisites.php
. /css/additional-styles.css
refactored classbox-red
and added classbox-green
. Added classexpand-east
andexpand-west
.- Removed the class
well-small
from/groups.php
and/servers.php
. - Removed icon
chevron-up
in/edit-recipe.php
. - Updated
CodeMirror
and all modes to the latest version. - Updated
/js/chosen.js
and/css/chosen.css
to the latest versions. - Updated
/js/bootbox.js
to the latest version. - Updated
/js/autosize.js
to the latest version. - Added
/js/code-pretty/lang-yaml.js
. - Added
/js/code-pretty/lang-xq.js
. - Added
/js/code-pretty/lang-wiki.js
. - Added
/robots.txt
disallows all robots.
- Added
instance_key
which is a unique identifier (30 characters) generated for every open source install of Commando.io. - Added
/actions/metrics.php
which sends theinstance_key
, number of servers added, and clients IP address to MixPanel. These metrics are used to help us gauge the number of open source installations of Commando.io out in the wild. - Added
/js/index.js
which makes an AJAX request to/actions/metrics.php
. - Replaced
gmmktime()
withtime()
in/classes/Functions.php
when generating a MongoDB date. Prevents PHP showing a depreciated notice about usinggmmktime()
.
- The ability to promote older versions of recipes to head.
/install.php
now generates theCRYPTO_SEED
from a combination of 14 random characters plusuniqid()
and then another 13 random characters. Should guarantee everyCRYPTO_SEED
is globally unique.- Added
/classes/Curl.php
which will be used in the near future. - Various CSS, HTML markup, and styling changes.
- Upgraded Bootstrap to
2.1.0
. - A bunch of CSS cleanup and fixes in styling and HTML markup.
- Added
/classes/CSRF.php
which combats CSRF attacks. - Added
/classes/Sessions.php
which provides session support for/classes/CSRF.php
and future login and users. /actions/ssh_execute.php
and/actions/delete_recipe.php
implement CSRF protection./js/common.js
changed AJAX timeout from 15 seconds to 60 seconds. Allows for longer running executions./js/common.js
AJAX request wrapper only executesPOST
requests. Removed the ability to executeGET
requests.- Added
/defines.php
which stores common boolean flags. The result is code that is easier to read. For example, instead of passingtrue
into a function, can pass flags likeMONGO_REPLICA_SET
. /classes/Footer.php
added GitHub buttons (stars and forks).- Navigation re-order, now it is
Execute | Recipes | Servers | Groups | Settings
.
- Renamed
db_upgrade.php
todb-upgrade.php
to keep with standards. - Fix to
/actions/get_public_ssh_key.php
if the public key file can't be opened now returns an error message. /classes/Prerequisites.php
is now actually called in/classes/Requires.php
./classes/Prerequisites.php
checks for the blowfish cryptography library.- Added
/classes/Bcrypt.php
bcrypt cryptography library.
/markdown/markdown.php
now escapes tags and entities to prevent XSS attacks.- Added new MySQL schema
/schema/0.1.1.sql
. - Updated
/schema/latest.sql
to/schema/0.1.1.sql
. MySQL Schema 0.1.1
- Small modification to thesettings
table;id
is now UNSIGNED.MySQL Schema 0.1.1
- Added tabledb_version
which stores the current version of the MySQL schema running.MySQL Schema 0.1.1
- Added current MySQL schema version (0.1.1) row into thedb_version
table.- Added
/db_upgrade.php
for merging MySQL schema changes. - Added directory
/schema/diffs
which stores the MySQL queries thatdb_upgrade.php
executes. - Added
/version.php
which simply outputs the current application version and MySQL schema version in JSON. /index.php
now checks MySQL schema version, and prompts if an upgrade is needed.
- Piping commands to each interpreter instead of running with
-e
, or-c
flags.
- Short PHP echo tags
<?=
replaced with full definitions<?php echo
in the entire application for maximum compatibility with differentphp.ini
configurations.
- Fixed bugs in
/classes/Links.php
dealing with auto-detecting pretty links. The code is quite nasty, if you know of a more elegant solution please submit a pull request.
- Fixed bug in
/classes/Links.php
where if using pretty links, any request inside of the/actions
directory would cause pretty links to disable.
- Short PHP tags
<?
replaced with full tags<?php
in the entire application for maximum compatibility with differentphp.ini
configurations.
- Fixed bug in
install.php
which generated aCRYPTO_SEED
of 62 characters instead of 64. Reduced required length inapp.config.php
ofCRYPTO_SEED
to 40 characters.
- Removed the requirement of setting up re-write rules and created a new class
/classes/Links
. All links work either with pretty links enabled or disabled. To use pretty links, re-write rules must still be configured on the web-server. See step #14 in the installation instructions for further details.
- Initial release