Latest ChangeLog for 1.8.1

Your deltasql server version is 1.5.5. A newer version 1.8.1 is available from Read below for the latest changes...
1.8.1 Release Notes (07.01.2017)

  This release easies life for users who do lot of searches among scripts.
  When users do search, the query is stored and listed. Users can click on the lists
  'Last 10 Searches', 'Top 10 Searches'. They can flag a query as favorite, if they think
  they will use it more often. Queries are automatically named with the criteria used 
  but users can rename the search query at their wish.
  People who use deltasql as script collection tool, or to store a log of all queries
  they run in a day will find this feature very useful.

02.01.2017 git
- layout slightly changed for favorite's list
- favorite's title only shown if there are favorites
- top search queries only shown if there are queries at least executed twice
- informing user that search queries were deleted

31.12.2016 git
- setting a search query as favorite
- editing the name of a search query
- in user preferences, the user can delete search query history
- administrators can delete the search query history for the anonymous user

30.12.2016 git
- added search query repetition management

29.12.2016 git
- populating the 'last 10 searches', the 'top 10 searches' and the 'Favorites' tables

28.12.2016 git
- added the automatic naming of a new stored search query

24.12.2016 git
- added table tbsearchquery to record search queries in list script window

08.07.2016 git
- added steps to install deltasql on a Raspberry Pi 3 in manual.php

06.07.2016 git
- fixed two test-data scripts which were not running

1.8.0 Release Notes (03.03.2016)

  This is a release to get deltasql working with PHP 5.6, PHP 7.0, MariaDB and mySQL.
  It is also backward compatible to  PHP 5.4 and PHP 5.3.
  The support for PHP 7.0 is experimental (the feature to diff changes on a single script 
  is missing at the moment, the rest should work).

  This release was made possible thanks to a big effort made by Davide Radice!

01.03.2016 git
- upgraded Horde TextDiff library to 2.1.2
- fixing more compatibility issues (mainly mysql_connect problems)
- changed link from Ohloh metrics to OpenHub metrics
- deltasql webpage compatibility added
- fixing synchronization as Zip, XML and Text file (compatibility)
- disabling getdiff feature in PHP 7 as it does not work (until a new library is found)
- making sure deltasql clients can attach to the deltasql server (compatibility)

29.02.2016 git
- upgraded GeShi package to version to support PHP 7
- upgraded TextDiff to 1.2.0
- mydql2i is also needed for PHP 5.6, added compatibility unit
- fixed AJAX problem with compatibility switch
- fixed graph problem with compatibilty switch
- corrected script.sql so that it works right out of the box
- fixed warning in phpinfo.php if not logged in
- showing PHP Info if user is administrator

27.02.2016 git
- bugfix in mysql_result which returned row numbers
- fixed deprecated warning on geshi constructor

12.02.2016 git
- only visible modules are shown when editing a script

25.01.2016 git
- added simple switch to ensure PHP 5.x backward compatibility

22.01.2016 git by Davide Radice
- added library mydql2i to support PHP 7
- renamed mysql_numrows to mysqli_num_rows
- checking for seven arguments in

21.01.2016 git
- added counting of number of modules into main page
- copyrights set to 2016

1.7.3 Release Notes (25.11.2015)

  This is a maintenance release with following patches and features
  New features:
  - Visibility for projects: useful in large deltasql installations with many users and old unused projects
  - Ability to move a tag when doing last minute fixes on a release
  The release is complemented by minor bugfixes.

09.11.2015 git
- bugfix: adding only visible modules to a project. Module names sorted alphabetically.

03.11.2015 git
- added functionality to move a tag to latest deltasql version. useful to include latest SQL script fixes in the tag itself.

24.09.2015 git
- added project visibility: hidden projects do not appear in graphs, and comboboxes to synchronize, search among scripts and retrieve tables

23.09.2015 git
- bugfix: searching for a script on the same day from e.g. 2015-09-04 to 2015-09-04 was retrieving an empty set

1.7.2 Release Notes (16.09.2015)

  This is a maintenance release with following patches and features
  - Visibility for modules: useful in large deltasql installations with many users and old unused projects
  - Disabling automatic comments on generated synchronization script at project level: useful when deltasql is used
    in conjunction with other synchronization tools (e.g. like Microsoft SQL Schema compare)
  - Other minor fixes in tool, GUI, documentation and XML-Export.

11.09.2015 git
- New Feature: added option to show synchronization comments in synchronization script at project level, 
as the comments in the generated synchronization script can disrupt comparation run with other tools 
(e.g. with VisualStudio 2013 SQL Schema compare feature).
- added field "title" to XML output of generated script
- aligned indent of XML output of generated script

10.09.2015 git
- New feature: added visibility for modules. If hidden, they do not appear when submitting a new script, 
or when searching for scripts. Everywhere else, they are not hidden.
- added author to synchronization script comments for each script

28.08.2015 git
- added FAQ question "What happens when I dump a database under version control?"

26.08.2015 git
- updated FAQ question on strict and undefined index errors

13.08.2015 git
- created menu point Branches/Tags to make navigation more intuitive

26.06.2015 git patch 2
- added title of script in big synchronization script
- tabulator as separator did not work in tool createinsertsfromcsv

25.06.2015 git
- field infer step in tool fromcsvdiffcreatesql did not work, now it is fixed

18.06.2015 git patch 1
- tabulator as separator did not work in tool fromcsvdiffcreatesql

1.7.1 Release Notes (10.6.2015)

  This is a maintenance release with following patches and features
  - verification script for Microsoft SQL server did not work properly
  - ability to search among projects
  - ability to rename a project
  - List Scripts refreshes once a a minute to show new scripts added by other users
  - exclude views and packages in synchronization form was broken and is now fixed

05.06.2015 patch 5
- corrected verification stored procedure for SQL server dbo.deltasql_verify_schema

05.06.2015 git patch 4
- exclude views and packages in synchronization script generation works again

18.02.2015 git patch 3
- added self refreshing of the page List Scripts, to show updates from other developers in real time

09.02.2015 git - patch 2
- added ability to search among projects

08.02.2015 git - patch 1
- added ability to rename a project name

1.7.0 Release Notes (20.6.2014)

  Deltasql now officially supports Microsoft SQL server
  - Information on database type is saved on the project, it is not necessary
    to give this information each time a synchronization is performed.
  - Deltaclient recompiled without database type field
  - Revised script creation for Microsoft SQL server
  - USE clause for Microsoft SQL server can be specified on the project
  - deltasql is installed by default with the test data set, to simplify the learning process

13.6.2014 git
- deltasql installation process: Separated options for test data set and integrity test when deltasql is is updated. Test data set is installed by default.

11.6.2014 git
- Fixed test data set. 

25.5.2014 git
- Added columns dbtype and useclause to tbproject table
ALTER TABLE  `tbproject` ADD  `dbtype` VARCHAR( 32 ) NULL AFTER  `name`;
ALTER TABLE  `tbproject` ADD  `useclause` VARCHAR( 32 ) NULL AFTER  `dbtype`;
- Modified script creation and editing to store dbtype and use clause
- Removed dbtype from dbsync.php as it is retrieved from project
- Added error if dbtype is not set in tbproject
- Recompiled deltaclient without dbtype field.

24.5.2014 git
- added USE statements for Microsoft SQL server. Added GO statements after each script.

6.5.2014 git patch_1_adjusting_charts_for_large_installations
- adjusted charts for large deltasql installations

27.4.2014 git
- removed warning on usagestatsgroup in install_execution.php

1.6.5 Release Notes (16.4.2014)

  Deltasql can be exposed to the Internet via HTTPS, other minor fixes
  - $keep_private option in asks all users to be authenticated before showing any content
  - added FAQ on how to publish deltasql via HTTPS
  - fixed issue with "Give latest version number to edited script"
  - added missing session starts on several pages
  - clicking on logo returns to main page also in Open Source edition.

16.2.2014 git
- fixed issue reported by Xiaobo Yang on Forum in handling "Edit Database Script" form data, if "Give latest version number to the edited script (use with care!) is checked

30.11.2013 git
- added $keep_private option to serve deltasql via https:// and to hide everything if user is not logged in
- the option above is available also as option in the installation phase
- updated FAQ on exposing deltasql to the Internet
- fixed some missing  on several pages
- clicking on logo on top returns back to main page also for Open Source Edition.

1.6.4 Release Notes (4.10.2013)

  Maintenance release with major fixes and visual enhancements to deltasql server, in order to stabilize the
  1.6.x line. 
  - Added automatic branch selection when creating synchronization table. 
  - Fixes to the branch selection in the main synchronization form.
  - Same fixes applied also to deltaclient for Windows
  - The dbredactor client includes now a JDBC driver for sqlite databases.
  - Favicon and other visual enhancements 

2.10.2013 git
- when pressing Back button dbsync form did not work
- synchronizing from BRANCH_X to BRANCH_X was not shown in selection of synchronization form
- same fix applied also to deltaclient for Windows

29.9.2013 git
- Dynamic branch selection also in Get Synchronization Table

26.9.2013 git
- Reorganized navigation bar creating Utils section with deltasql clients and toolbox

22.09.2013 git
- added favicon on all deltasql pages
- added twitter follow me on deltasql webpage
- added matrix banner to Open Source Edition

20.09.2013 git
- added Get Synchronization Table as indipendent menu entry, both in the navigation bar and on the main page

19.9.2013 git
- added sqlite driver and support to dbredactor client

2.9.2013 git
- fixed warning in synchronization form when project, from or to branches are missing.

1.6.3 Release Notes (1.9.2013)
  Major features: New toolbox page listing tools which help in script creation
				  The first two tools support creation of INSERT scripts, and
				  of INSERT,UPDATE,DELETE scripts based on .csv exported from your SQL client.
				  This in case your SQL client does not have an SQL export feature, or if you want to record 
				  configurations changes on big applications mantained and developed by a third party.
				  In such case, you would export the db table before doing the changes as .csv, and after doing it.
				  The provided tool will generate automatically an SQL script with the changes, the script can then
				  be submitted to deltasql in the usual way.
                  Added Microsoft SQL server JDBC driver to dbredactor
  Fixes: Bash client fixed by Thanos Efraimidis, retrieving version number did not work in all circumstances
  Minor: Removed warnings from Edit Module and Edit Script page
         Preparing database schema to general merging feature

9.8.2013 git
- added latest Microsoft SQL driver to distribution of dbredactor client 

16.7-25.7.2013 git
- created a toolbox page, collecting tools which help to create script
- developed two new tools: createinsertsfromcsv and fromtwocsvcreatesqldiff,
 which use comma separated value files (.csv) to create INSERT, and INSERT,UPDATE,DELETE
  scripts in SQL. Both tools infer the field type (numeric or literal) from the .csv content.
   The tool fromtwocsvcreatesqldiff creates indexes on primary keys and is able to create a diff
 in time complexity O(n*log(n)) if the primary key is an integer.

12.7.2013 git
- fixed warnings on edit_module.php and edit_project.php

8.7.2013 git
Bash Client: Applied fix by Thanos Efraimidis on how to retrieve version number
The patched Bash Client is available from

Server: added column ishead to tbbranch
ALTER TABLE  `tbbranch` ADD  `ishead` TINYINT( 1 ) NOT NULL DEFAULT  '0' AFTER  `istag`;
UPDATE tbbranch SET ishead =1 WHERE name =  'HEAD';

1.6.2 Release Notes (4.7.2013)
  Major features:   Intelligent branch selection on deltasql server:
                    - when submitting a new script, or while editing an existing one, deltasql will show only
                      branches to which the script can be attached.
                    - when synchronizing, only suitable combinations of projects, from and to branches are shown. This considerably
                      reduces the amount of errors.
                    The dynamic feature is achieved through a PHP-AJAX-Javascript solution.
                    Pyhton deltasql client: 
                    the client supports now also Oracle's mysql.connector to reach a MySQL database. An adapter allows the user to
                    choose between mysql.connector or MySQLdb adapter.
  Minor:            Cancel search link moves on the menu bar on the left.
                    Latest changelog link is more visible and moved on the main of deltasql server.
  Fixes:            Cleanup: moved graph scripts into a subfolder
  Known Issues:     Intelligent branch selection does not work on Internet Explorer (only when submitting scripts)!!!

4.7.2013 git
fixed some minors during install process
- warnings due to missing variables (by removing most of main page when installing)
- top ten submitters were always disabled in 1.6.1

25.6.2013 git
- added old branches management for Internet Explorer compatibility...

22.6.2013 git
- editing scripts with dynamic branches selection works :-D

21.6.2013 git
- choosing branches dynamically for script submission with AJAX and javascript

20.6.2013 git
- further improving dynamic listbox capabilities with Javascript and AJAX
- added chain of 3 dynamic listboxes in dbsync.php! The second depends on the first, and the third on the first and the second :-)
- working on dynamic branches for submit script

19.6.2013 git
- deltasql pyclient written in Python can now use either MySQLdb or Oracle's mysql.connector as data connection layer to connect to MySQL database. 
  Users need to configure the variable pydbadapter in config.ini to choose their preferred connector.
- initial experiments with dynamic entries in synchronization form dbsync.php  

5.6.2013 web
- patch 1 for Cancel Search link on navigation bar for 1.6.1 released

28.5.2013 git
- Cancel search button moved on the navigation bar

10.5.2013 git
- deltasql.tex compiles with miktex
- added Latest Changelog link to main site

8.5.2013 git
- cleanup: moving graphdata scripts into graphdata subfolder

1.6.1 Release Notes (10.5.2013)
  New features:  navigation bar on the left for faster switch between pages
  Fixes:         Copy&Paste works also in Internet Explorer
  Known Issues:  Copy&Paste link disappears after being clicked once
  Documentation: one new FAQ entry on why deltasql is so different from commercial tools. 
                 New webpage is part of the package in web subfolder

2.5.2013 git
- added donations page with paypal and bitcoin address

30.4.2013 git
- fixing install routine (some undefined variables in while installing)
- fixing an error in the newly generated configuration script

27.4.2013 git
- added one FAQ entries on why deltasql is so cool :-D

26.4.2013 git
- ZeroClipboard works now even in IE, but for some reason the link disappears after it was clicked

25.4.2013 git
- added colors to tables
- tried another way to do copy paste (which does not work)
- upgrading zeroClipboard library to 1.1.7

23.4.2013 git
- minor improvements to navigation
- TODO: understand why copy & paste does not work

22.4.2013 git
- implementing navigation with frames
- unifying title height

21.4.2013 git
- adding two webpages on : try online and download. adding some testimonials and screenshots to pepper it up.

20.4.2013 git
- improving deltasql website on (table layout)

18.4.2013 git
- docu cleanup and removal of parameter involved in statistics collection

1.6.0 Release Notes (17.4.2013)
  New features:  timing of synchronization script generation and of some key PHP pages
                 deltaclient compiled for Linux (Gnome and Unity)
                 export project as XML or HTML to avoid vendor (=deltasql) lock-in
  Fixes:         colored diffs of scripts works in any browser
                 refactoring utility library to increase rendering speed
                 removing some dead code (google gadget and phone home functionality)
                 increased wideness of script's title                
  Documentation: two new FAQ entries about stable releases and how to install patches
                 added documentation on how to install deltaclient on Linux  

16.4.2013 git
- adding advanced topic: how to compile deltaclient on Linux
- doc: updating directory structure

15.4.2013 Patch 4 for 1.5.5: list script view has problems displaying table, when coloring row option is disabled
- bugfixes in install routine
- testing the key features of new release
- testing the workflow to have the first sync (add module, add project, link module to project, insert script, do sync)
- reorganizing sections in FAQ, adding new question about running deltasql outside intranet
- updating manual
- removing and dropping tbstats table from schema, as they are unused
- bugfix in list_scripts.php if coloring row is disabled

8.4.2013 Patch 3 for 1.5.5: url fix for deltaclient

6.4.2013 git
- changes to compile deltaclient on Linux (tested on Ubuntu Unity)
- actualizing client list and documentation
- windows deltaclient recompiled due to URL change
- deltaclient for Linux does not work on Debian Gnome, so recompiling on Debian and checking if Ubuntu Unity can do something with it
- Does not work on Ubuntu Unity, so decided to distribute both versions (and I should provide a KDE version as well...)

5.4.2013 Patch 2 for 1.5.5:
- fixing the colored diff when comparing different script revisions

4.4.2013 git
- extending export_project_execution.php to produce XML with more fields. Adapting XSL definition.

3.4.2013 git
- heavy refactoring of, splitting the file in several subfiles -> makes page loading much faster :-)
- extending export_project_execution.php to produce XML and HTML via XSLT (stylehseet added)
- docs: adding 3 FAQ question on project
- reorganizing links on main page
- raising next version to 1.6.0
- adding timing utils to time page generation. Timing several key pages

2.4.2013 git
- initial revision for export_project_execution.php

28.3.2013 git
- implementing form to export a project as XML or HTML (available only to project managers and administrators)
- removing old deltasql google gadget code

27.3.2013 git
- doubling wideness of field title in tbscript 

5.3.2013 git
Migrating stuff from GPU server:
- added sql2xml and xslt utils by Darko Bunic
- added some utils to retrieve params and create unique ids 

4.1.2013 Patch 1 for 1.5.5;
- removed strict index warning from Add Module to Project

1.5.5 Release Notes (1.1.2013)

 Maintenance release: more deltasql fixes to work with PHP 5.3 (as XAMPP ships it by default now),
                      moving deltasql url from to

7.12.2012 git
Patch 2: changing all URLs from to
- removal of Google Gadget as Google does not support them anymore

4.10.2012 git
Patch 1 released: edit_script bugfix for PHP 5.3 compatibility

1.5.4 Release Notes (20.9.2012)

 Maintenance release: deltasql fixes to work with PHP 5.3 (as XAMPP ships it by default now).

20.9.2012 git
- removed warnings when searching for scripts
- removed link to Changelog on as don't know if the website will stay up for how long...
- fixed problem in List Branches page for PHP 5.3

Patch 4 released (20.9.2012)
- backward compatibility to PHP 4.3 added

Patch 3 released (19.9.2012)
- fixed graph display in PHP 5.3 (Statistics and Top Ten page)

Patch 2 released (18.9.2012)

18.9.2012 git
- fixed script insertion when using PHP 5.3
- fixed SQL injection attack on deltasql

Patch 1 released (10.9.2012)

6.9.2012 git
- fixed ereg() deprecation error when using PHP 5.3

1.5.3 Release Notes (25.8.2012)

 Maintenance release: Consolidating the Copy&Paste functionality


14.8.2012 git
- install routine asks if copy-paste functionality should be enabled by default
- install routine asks if server statistics should be enabled

27.7.2012 Patch 1: "$default_copypaste switch in conf/ did not work correctly"
is available at

1.5.2 Release Notes (19.7.2012)

 With this release deltasql introduces the handy copy&paste functionality to copy pasting existing scripts, the synchronization query, 
 the generated synchronization script and the seeding script for databases which will come under deltasql version control.


10.7.2012 git
- added user preferences to enable and disable copy paste functionality, as it does not work in all browsers (e.g. Internet Explorer) and in all editors
- added FAQ question on how to enable disable this new functionality

26.6.2012 git
- link to copy standard query to retrieve synchronization on synchronization form
- link to copy tbsynchronize generation and verification script
- minor visual changes

25.6.2012 git
- bugfix when generating text synchronization script, showing backlinks

22.6.2012 git
- added ability to copy script to clipboard also for the generated synchronization script,
when using it with a form

4.6.2012 Patch 1: new feature "Copy To Clipboard" for existing scripts released as patch under

1.6.2012 git
- added feature to copy script to clipboard, when showing a script

1.5.1 Release Notes (15.5.2012)

Maintenance release for deltasql, including a new Python deltasql client which works from the command line for mySQL database types only.

A new chart showing scripts per project was added. Minor fixes


8.5.2012 git
- documenting the Python deltasql client in manual section

7.5.2012 git
- further developing Python deltasql client

- German Linux Magazin publishes three-liner news about 1.5.0 release in the printed edition of Magazine 06/2012 :-) 

25-27.4.2012 git
- developing Python deltasql client

16.4.2012 git
- added new graph: scripts per project
- reorganized server stats page in a table

News on about deltasql on release 1.5.0:
Unfortunately, the online news is not selected for publication on paper :-(. Said that, I am a happy reader of Linux Magazin since 2003 :-)

1.5.0 Release Notes (4.4.2012)

Major release containing charting features for deltasql. It is possible to see how many scripts are added 
each month and how many synchronizations are performed. A top ten page shows the best developers writing new scripts
 and the best release managers performing most synchronizations.
Minor features include a changelog feature which shows which is the latest deltasql release and the ability to edit scripts
 when they are shown. Other minor enhancements and the removal of the unused phone home functionality round off this release.


2.4.2012 git
- added scripts per month and scripts per module and synchronizations per month in new server statistics page

29.3.2012 git
- editing existing scripts when the script is shown

28.3.2012 git
- minor fixes

22.3.2012 git
- latest changelog feature, informing the user if there is a newer version available on

21.3.2012 git
- removed deltasql phone home functionality as nobody was using it
- added a FAQ question on how to increase performance on large deltasql server instances, by tweaking some configuration parameters

20.3.2012 git
- second deltasql graph showing top ten synchronizers :-)

14.3.2012 git
- first deltasql graph showing top ten submitters in a pie chart :-)

5.3.2012 git
- renamed statistics tables into tbstats and tbsyncstats
- added Open Flash Chart library to git repository

2.3.2012 git
- preparing structure for better stats capability
- we will use Open Flash Chart

1.4.4 Release Notes (1.3.2012)

Maintenance release: consolidating the three patches for 1.4.3 in a new release.


1.3.2012 git
- removing Pyhton skeleton as to date I do not have gear to develop it

30.1.2012 git
- skeleton for a deltasql client written in Python

28.1.2012 git patch 3
- bugfix in homepage of enterprise edition

27.1.2012 git patch 2
- email notification contains to which branches the script is applied

26.1.2012 git patch 1
- author name in subject of email notification
- script version in email notification
- email notification also if script is edited or deleted
- initial install page has the option to enable email notification

1.4.3 Release Notes (25.1.2012)

There are several new improvements in this release:
 - deltasql server is able to notify users by email if a new script is inserted in deltasql. This feature is important to
  slowly migrate users from the manual synchronization burden to the deltasql way of life.
 - Users can define preferences: if help links are shown, if rows are colored. The number of scripts shown in the list script
   page is configurable as well.
 - Minor visual enhancements 
 - Minor bugfixes


23-25.1.2012 git
- Testing and debugging the new release

13.1.2012 git
- email notification for new scripts works both under Linux and Windows :-D
- added FAQ entry on how to configure email notification for new scripts

12.1.2012 git
- towards the implementation of email notification for new scripts

11.1.2012 git
- created configuration to enable/disable emails. Users can choose in preferences.php if they want to be notified by email.

9.1.2012 git
- implemented user preferences for scripts per page, display help links and color new rows

6.1.2012 git
- bugfix: in some mysql versions, deltasql was not searching for the modified scripts, when the option was set
- bugfix: package and view detection on lowercase + undefined index errors on this page
- preparing to handle new column in tbparameter, refactoring code a bit

5.1.2012 git
- preparing datamodel to accept usersettings (added user_id column to tbparameter)
- more updates on footers

4.1.2012 git
- updating footers to be consistent
- spreading help links to topics overall over deltasql server

2.1.2012 git
- deltasql reports an error when trying to submit a script with no modules defined (happens when deltasql is freshly installed).
- fixing minor bug on login screen

1.4.2 Release Notes (1.1.2012)

Maintenance release:
Visual enhancements (icons on important actions and border to empty cells)
Ability to branch from existing tags
Minor bugfixes


28.12.2011 git
- Disabling ability to edit username, as it might create problems in rare situations.
- adding - to empty cells in tables, so that the cell appears correctly, even if it is empty
- User creation still had undefined variables, if under strict error reporting in php.ini

27.12.2011 git
- Adding some icons to improve navigation. The icons are taken from phpMyAdmin

24.11.2011 git
Adding ability to branch from existing tags.

1.4.1 Release Notes (23.9.2011)

Maintenance release:

deltaclient: new field database type added, fixed errors in closing files project.conf and branches.conf 

deltasql server:
- minimizing impact of Undefined Index errors when running with php.ini 
error_reporting = E_ALL | E_STRICT ; instead of E_ALL & ~E_NOTICE
- dropped unused schemaname and description fields as they created confusion to users and were used by spammers
- back to the onliner INSERT statement to update synchronization information
- inserted links to videos into documentation, improved documentation


15.9.2011 git
- refreshing script.sql to create a database manually with the script
- removing undefined index error during install procedure
- fixing Get Development Tree if no project is defined
- adding javascript code for Google Analytics for deltasql test instance on
- refreshing schema
- dropping script-test-data.sql as it is a burden to mantain
- updating manual client options and moving them to main manual page

14.9.2011 git
- fixed missing Closefile in deltaclient
- fixing Undefined index error when retrieveing data from a client

13.9.2011 git
- Added dbtype field to deltaclient
- If a client does not specify dbtype, it defaults to database type "Other"
- Back to the oneliner INSERT statement to update synchronization information

10.9.2011 git
- dropping column description from TBSYNCHRONIZE and TBUSAGEHISTORY
ALTER TABLE `tbsynchronize` DROP `description`;
ALTER TABLE `tbusagehistory` DROP `description`;

9.9.2011 git
- Started fixing "Undefined Index" error
- Removed schemaname filed from TBSYNCHRONIZE and TBUSAGEHISTORY
ALTER TABLE `tbsynchronize` DROP `schemaname`;
ALTER TABLE `tbusagehistory` DROP `schemaname`;

5.9.2011 git
- Added movie links to manual and to FAQ
- Referencing FAQ on Undefined index problem in manual

4.9.2011 git
- Added FAQ answer to "Undefined price index" problem when installing deltasql server
- Added external libraries used by Deltasql in README.txt

A new video tutorial revealing in 11 minutes the secret of installing the deltasql server has been published :-)
As usual, the tutorial does not ship with this package.

1.4.0 Release Notes (23.8.2011)

New client: Multipurpose deltaclient for Windows XP, Vista, 7 with dynamic project/branches selection and
 automatic copy to clipboard of generated script.

People upgrading from 1.3.7 should follow the procedure described on the Deltasql main page, as deltasql
 detects changing in the underlying datamodel.

23.8.2011 git
- documenting deltaclient install steps and particularities on manual.php
- adding ip column to tbusagehistory to troubleshoot client issues
Users need to run the following script on their schemas:
ALTER TABLE `tbusagehistory` ADD `ip` VARCHAR( 32 ) NULL ;

14.8.2011-22.8.2011 git
- the deltasql client written in freepascal is finished and ready for release with 1.4.0

13.8.2011 git
- adding GUI skeleton for deltasql client in freepascal
- adding libraries which the new freepascal deltasql client will use

9.8.2011 git
adding branch visibility to interface for deltasql clients

8.8.2011 git
added interface for deltasql clients to retrieve branches and project information

1.3.7 Release Notes (5.6.2011)

Security improvement: all passwords of deltasql users are stored as salted MD5 
 hashed strings. Administrators can reset the password of a user, if it was lost.

Updates to deltasql: deltasql detects if the datamodel was changed during the upgrade and if there
 is need for an update. If yes, it redirects to a page on, were the synchronization
  script can be retrieved.
Maintenance release: several minor bugfixes.

People upgrading from 1.3.6 should execute the following script:

ALTER TABLE `tbuser` ADD `encrypted` TINYINT( 1 ) NOT NULL DEFAULT '0',
ADD `passwhash` VARCHAR( 40 ) NULL ;
ALTER TABLE `tbbranch` CHANGE `create_dt` `create_dt` DATETIME NOT NULL;
UPDATE tbsynchronize SET tagname='TAG_deltasql_1.3.7' WHERE versionnr=0;

- Password policy: do not allow the combination username=password
- Password policy: When resetting a password, a random string is chosen

4.6.2011 git
Improving detection of updated datamodel for deltasql itself.
Improving error messages.
Updated versions of all deltasql clients, the version was retrieved with this ChangeLog :-)

3.6.2011 git
Password management:
- changed table tbuser to support encrypted passwords
- changed login method and Change Password window to store encrypted passwords
- keeping backward compatibility to old authentication method to easy upgrade of deltasql
- added ability for administators to reset password of a user
- added salt for MD5 password hashes
- automatically encrypting old plain passwords at login
- added FAQ question on how to reset admin password

Detecting updates:
- if deltasql is updated, but the underlying schema is not correct, deltasql
 redirects to the synchronization page on

- showing not only day but also hour of latest changes in main page

2.5.2011 git
- fixing empty RSS feed which was broken if there were no messages

1.3.6 Release Notes 2.5.2011

With this release, a set of 7 tutorial videos explaining how deltasql works 
 were created. Those videos need to be downloaded separately, they are
  not included in this package.

New features in 1.3.6:
- RSS feed which shows latest scripts
- ability to give latest version number to edited scripts
- colored diff for edited scripts (works in IE but not in Firefox)

27.4.2011 git
- added RSS feed to deltasql showing latest 20 scripts

23.4.2011 git
- ability to increase version number to latest when editing a script,
 difference in versionnumber is shown in getdiff of history

- three more tutorial movies:

19.4.2011 git
- created three additional movies on branching and tagging
- ability to branch from HEAD in "List Branches and tags" added

14.4.2011 git
- created an introductory movie on deltasql as screencast, named
- added a link to the tutorial on the main page of deltasql

4.4.2011 git
- added colored diff

1.3.5 Release Notes
New feature: ability to diff scripts stored in history.
New feature: ability to graph development tree for a project in "List Branches and Tags" page.

8.3.2011 git
- Choosing project in order to display its graph in list_branches.php

7.3.2011 git
- added ability to show difference between revisions (title, modules, branches) in History
- added option to exclude tags from graph of dev tree
- when tagging HEAD one needs to define to which project the tag belongs to
- when synchronizing from or to a tag, check that the project matches
- changed caption of button to detect views and packages

4.3.2011 git
- added textdiff library
- added ability to show difference between revisions (scripts and comments) in History
- added ability to plot graph of development tree

2.3.2011 git
- framework to display patchlevel (if any)
- text area for fields in edit_script.php and submit_script.php set in

1.3.4 Release notes  1.3.2011 
New feature: it is possible to synchronize from a tag, without need of the query to retrieve the version number
Improvements in the History feature introduced with 1.3.3

People upgrading from 1.3.2 should execute this script:
CREATE TABLE `tbscriptbranchchangelog` (
  `script_id` int(11) NOT NULL,
  `branch_id` int(11) NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `script_id` (`script_id`,`branch_id`)

28.2.2011 git
- submit script has wider entry area for script and comments

27.2.2011 git
- showing data in history also for latest revision
- some more fixes

26.2.2011 git
- each time a synchronization is done, deltasql records the project name in a cookie and retrieves it next time
- added ability to specify a tag in the from field of the synchronization step
- added error message if trying to synchronize from a tag and at the same time specifying the from
 version number. The tag implicitly sets a version number from where to start the synchronization.
- IE8 compatibility fix in Main menu
- updating FAQ on how to upgrade deltasql (by using TAGs, one can easily retrieve the missing scripts to be executed)
- updating manual on project and modules
- recording changes of branches as well in a new table TBSCRIPTBRANCHCHANGELOG, so that it is possible to
 find in history if there were changes in respect to branches

CREATE TABLE `tbscriptbranchchangelog` (
  `script_id` int(11) NOT NULL,
  `branch_id` int(11) NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `script_id` (`script_id`,`branch_id`)

1.3.3 Release Notes 25.2.2011
Deltasql is more wiki-like as anyone can edit a script. The history of editing is recorded as well.
Administrators can retrieve deleted scripts. Improved right management with bugfixes.

People upgrading from 1.3.2 should execute this script into the deltasql schema:
CREATE TABLE `tbscriptchangelog` (
  `id` int(11) NOT NULL auto_increment,
  `code` longtext collate latin1_general_ci NOT NULL,
  `module_id` int(11) NOT NULL,
  `versionnr` int(11) NOT NULL,
  `user_id` int(11) NOT NULL,
  `update_user` VARCHAR( 64 ) NULL,
  `script_id` int(11) NOT NULL,
  `create_dt` datetime NOT NULL,
  `comments` longtext collate latin1_general_ci,
  `title` varchar(64) collate latin1_general_ci default NULL,
  `isapackage` tinyint(1) NOT NULL default '0',
  `isaview` tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (`id`)

25.2.2011 git
- added logic to save changes into tbscriptchangelog, if a script is edited or removed 
- added ability to list history of edited files for anyone so that Deltasql gets more wiki-like (suggestion by Hari)
- added abilily for administrators to see deleted scripts

24.2.2011 git
- bugfix: editing a script hijacked ownership of script to the submitting user
- dropped feature of editing script and increasing version number at the same time as it has some hidden
 consequences which could get dangerous (Hari suggestion as well).
- preparing data structure to record changes to scripts:

CREATE TABLE `tbscriptchangelog` (
  `id` int(11) NOT NULL auto_increment,
  `code` longtext collate latin1_general_ci NOT NULL,
  `module_id` int(11) NOT NULL,
  `versionnr` int(11) NOT NULL,
  `user_id` int(11) NOT NULL,
  `update_user` VARCHAR( 64 ) NULL,
  `script_id` int(11) NOT NULL,
  `create_dt` datetime NOT NULL,
  `comments` longtext collate latin1_general_ci,
  `title` varchar(64) collate latin1_general_ci default NULL,
  `isapackage` tinyint(1) NOT NULL default '0',
  `isaview` tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (`id`)

21.2.2011 git
- cosmetic changes (removed 'back to main menu' link where not needed, changed button text from 'Edit' to 'Save')

17.2.2011 git
- on user request (Hari): editing a script increases its version number

1.3.2 Release Notes 11.2.2011
This release reenables the upgrade from production to development schema, which was disabled in 1.3.1
 because the new algorithm in 1.3.0 some basic issues were found.
If you upgrade from version 1.3.1 or 1.3.0, you should launch this script on deltasql server schema:
ALTER TABLE tbscriptgeneration ADD  `exclbranch` tinyint(1) NOT NULL default '0';

11.2.2011 git
- reimplementing update from production schema (branch) to development schema (HEAD)
- added debug flag on dbsync.php to show debug information in synchronization script
- raised version to 1.3.2
- added one FAQ question on how to move between production and development schemas
- updated manual (Insights on deltasql algorithm chapter)

10.2.2011 git
- removed table when displaying branches in submit_script.php on user request (Hari)
- you need to launch this script when upgrading to version 1.3.2:
ALTER TABLE tbscriptgeneration ADD  `exclbranch` tinyint(1) NOT NULL default '0';

1.3.1 Release Notes 26.1.2011
- important set of fixes for the broken synchronization algorithm delivered with 1.3.0
- all buttons renamed from 'Submit Query' into their corresponding action
- if you upgrade from previous versions you should run this script:
INSERT INTO `tbparameter` VALUES ('', 'TEST', 'DB_CONNECTION', 'OK');

- if you installed test data, you should run this script as well:
INSERT INTO tbscript (id, code, module_id, versionnr, user_id, update_dt, update_user, comments, title, isapackage, isaview) VALUES  (9, '-- 6 script only for HEAD before branch DELTA_2 comes', 5, 17, 1, '2008-05-21', '', '', 'db update', 0, 0);

26.1.2011 git
- Tests_To_Verify_deltasql_correctness.txt updated
- if test data is used, add this missing script to verify deltasql correctness:
INSERT INTO tbscript (id, code, module_id, versionnr, user_id, update_dt, update_user, comments, title, isapackage, isaview) VALUES  (9, '-- 6 script only for HEAD before branch DELTA_2 comes', 5, 17, 1, '2008-05-21', '', '', 'db update', 0, 0);
- Fix in dbsync algo patching test cases 1-5
- Test cases 6 and 7 now are much more difficult, and need some idea to handle them.
In the meanwhile I added an error message to inform the user that upgrades from development
 schemas to production schemas are not supported yet. The documentation was upgraded to reflect this fact.
- Test case 8 is even more difficult and needs the concept of merging... It is about upgrading a production schema to a newer production schema.
This case can not be even detected at the moment.
- added following parameter to TBPARAMETER:
INSERT INTO `tbparameter` VALUES ('', 'TEST', 'DB_CONNECTION', 'OK');
 used in script check_db_connection.php which could be later used in bash deltasql clients

24.1.2011 git
- changed all buttons from "Submit query" to action text in caption
- bugfix in edit_script.php: Tags are not allowed
- bugfix in search_scripts.php: Tags are not allowed

21.1.2011 git
- added FAQ question on verification step
- minor changes in FAQ document

1.3.0 Release Notes 30.12.2010
Completely new synchronization algorithm which handles among others branches of branches,
 tagging and upgrade from production to development schema.
WARNING: if upgrading production environments from previous versions, please always
 create a backup copy, and adjust table TBBRANCH manually to include sourcebranch and sourcebranch_id.
 In such cases, you can get support from gpu-world at

When upgrading deltasql server, please launch the following script:

ALTER TABLE `tbbranch` ADD `sourcebranch` VARCHAR( 40 ) NULL;
ALTER TABLE `tbbranch` ADD `sourcebranch_id` int(11) default NULL;
UPDATE `tbbranch` SET sourcebranch='HEAD' where name<>'HEAD';
UPDATE `tbbranch` SET sourcebranch_id=1 where name<>'HEAD';
ALTER TABLE `tbbranch` ADD `istag` tinyint(1) NOT NULL default '0';
ALTER TABLE tbsynchronize ADD tagname varchar(128) NULL;
CREATE TABLE `tbscriptgeneration` (
  `id` int(11) NOT NULL auto_increment,
  `sessionid` varchar(40) collate latin1_general_ci NOT NULL,
  `fromversionnr` int(11) default NULL,
  `toversionnr` int(11) default NULL,
  `frombranch` varchar(40) collate latin1_general_ci NOT NULL,
  `tobranch` varchar(40) collate latin1_general_ci NOT NULL,
  `frombranch_id` int(11) NOT NULL,
  `tobranch_id` int(11) NOT NULL,
  `create_dt` datetime default NULL,
  PRIMARY KEY  (`id`)

You should launch on database schemas under deltasql versioning the following statement: 
ALTER TABLE tbsynchronize ADD tagname varchar(128) NULL;

30.12.2010 git
- added tagname to table TBSYNCHRONIZE, on the schemas where deltasql is active,
one should run a statement:
ALTER TABLE tbsynchronize ADD tagname varchar(128) NULL;

This column records the name of the tag, in case the synchronization was up to a tag.

- adjusted test data during install procedure. Install procedure tested
- documenting new synchronization step in manual and FAQ.

24.12.2010 git
implemented tagging :-), including all business logic around it :-)

23.12.2010 git
- logic to upgrade schemas from production to development (HEAD) added as well
- error messages 7 and 4 removed, as they are superseeded by error 13
I think the new synchronization algorithm works already :-)                     
The next steps are:                                                             
- add logic when upgrading from production schema to development schema         
- add logic to support tags (quite simple)   
- added sourcebranch_id to table tbbranch, and making sure datamodel is consistent when
- get_and_increase_globalversion() when branching, instead of get_globalversion()
- modified structure of table tbscriptgeneration to improve its performance: instead of
 storing each script individually, we only store each segment of the path in the tree. 
- started modifying to fullfill the new algorithm

- TODO: the whole test data must be regenerated, also the compatibility with the old
 branching mechanism is lost!!!

22.12.2010 git
This are changes resulting from the proposals of Harikrishnan Nair, Peter Kevin
 and Ramesh Raghavan. In particular, the document sent by Ramesh was very enlightning. 

Synchronization will be implemented as tree traversal beginning from the leaf
 in direction of the root until sourcebranch and scriptversion match. When traversing
  back, each encountered script will be added to a table tbscriptgeneration. When
 the traversing across the branches is done, the table tbscriptgeneration 
  is ORDERED BY script_id ASC and passed to a outputscript() routine as 
    it is already implemented now. To allow multiple synchronizations steps
     to be processed at once, a session id is generated.
Traversing back from leaf to root makes the traversal unique and easy. The only
 thing to be implemented as exception to the algorithm is when changing from
 production schema to development schema. In this case, all scripts which
 belong to HEAD but not to the traversal will be added to the output of the script.

Tagging will be implemented in this way: tags are stored in tbbranch with istag=1
 and being the sourcebranch the tagged branch and versionnr the moment where the
 tag was issued. When taking a branch to begin the traversal, the highest script number
 of HEAD is taken as starting point, when taking a tag the stored versionnr is taken instead. 
- fix in as some browsers did not support the rough way it 
was implemented
- added istag column to table TBBRANCH to support tagging
- added sourcebranch column to table TBBRANCH and logic to populate it
- added table TBSCRIPTGENERATION which will be used in the new synchronization
 step which will be more straightforward then the current one.
IMPORTANT: users who upgrade from previous
 versions should execute these statements in their deltasql schema:
 ALTER TABLE `tbbranch` ADD `sourcebranch` VARCHAR( 40 ) NULL;
 ALTER TABLE `tbbranch` ADD `sourcebranch_id` int(11) default NULL;
 UPDATE `tbbranch` SET sourcebranch='HEAD' where name<>'HEAD';
 UPDATE `tbbranch` SET sourcebranch_id=1 where name<>'HEAD';
 ALTER TABLE `tbbranch` ADD `istag` tinyint(1) NOT NULL default '0';
 CREATE TABLE `tbscriptgeneration` (
  `id` int(11) NOT NULL auto_increment,
  `sessionid` varchar(40) collate latin1_general_ci NOT NULL,
  `fromversionnr` int(11) default NULL,
  `toversionnr` int(11) default NULL,
  `frombranch` varchar(40) collate latin1_general_ci NOT NULL,
  `tobranch` varchar(40) collate latin1_general_ci NOT NULL,
  `frombranch_id` int(11) NOT NULL,
  `tobranch_id` int(11) NOT NULL,
  `create_dt` datetime default NULL,
  PRIMARY KEY  (`id`)

1.2.1 Release Notes
- Support for PostgreSQL database works
- typo in bash client fixed which prevented deltasql bash client to work 

31.10.2010 git
- major fix in continouus integration script
- PostgreSQL support succesfully tested

29.9.2010 git
- added PostgreSQL support to bash client for continouus database 
- raised version to 1.2.1

1.2.0 Release Notes 28.9.2010
Bash client is able to perform continouus database integration for 
Oracle and mySQL. Deltasql server is able to export scripts each one in 
a numbered file, grouped together in a zip file for further use in 
autoupdater tools (like the ones available at 
Deltasql server adds support for sqlite databases.

27.10.2010 git
- raised version to 1.2.0
- added manual entry on how to install bash client

26.10.2010 git
- bash client: continouus integration works for Oracle
  several consistency checks added to bash client
  now envisioning PostgreSQL

24.10.2010 git
- bash client: continouus database integration works for mySQL schema. 
Now envisioning Oracle.
- added FAQ question which explains how to improve continouus integration with the
 deltasql bash client

23.10.2010 git
- added FAQ questions on how to download, test and checkout deltasql with git.

Bash client:
- continouus database integration is close to work for mySQL schemas

22.10.2010 git
- added FAQ question on formats which can be exported by deltasql

21.10.2010 git
Server changes
- added sqlite support (sync table definition)
- added ability to export the synchronization script as single files 
zipped to be used in dbdeploy like tools (check for more details)
- added zip library under /utils/createzip by Rochak Chauhan (

7.10.2010 1.1.1 Release Notes
Server changes
- improved error handling in synchronization step, 2 new error types 
added, 1 error did not show up due to mistake in code
- deletion scripts revisited to leave database consistent: delete 
Project and delete Module were not working properly
- Layout on initial page changed

7.10.2010 git
- fixed error message number 5 which never appeared during db 
- when deleting a user, the scripts submitted by this user are 
reassigned to admin
- deleting a module also deletes assignment of scripts to branches
- deleting branches and scripts revisited
- Layout of initial page rivisited, removed code for piwik stats as it 
was not used anymore

6.10.2010 git
Project deletion also deletes existing branches for the deleted project 
and the reference from scripts to the deleted branches.

Added error messages on synchronization steps:
- if the version number is less than 0 or alphanumeric
- if the user is attempting to synchronize on a project without any 

18.9.2010 git
Moved source code from CVS module dbsync hosted on GPU project to git 
module deltasql hosted on project deltasql of project homepage. 

13.9.2010 1.1.0 Release Notes
- ability to submit scripts in chain
- new deltasql client in bash script, skilled people should be able to 
build continous integration for databases with cron jobs and additional 
scripts for database bindings
- collection of usage statistics sent to if user agrees
- manual and FAQ improved with additional sections/questions

10.9.2010 CVS
- 1 FAQ added on phone home functionality added
- source code walk through in manual
- Bash deltasql client added

9.9.2010 CVS
- added phone home capability to deltasql to collect usage statistics
- added 3 new questions to FAQ, FAQ reorganized
- added sections in manual about Projects and Modules and on how 
  synchronization works.

8.9.2010 CVS
- ability to submit scripts in chain (setting recorded in cookie)

30.7.2010 1.0.9 Release Notes
- maintenance release with fixes from community

29.6.2010 CVS
- when in "Search scripts" the output as text file option is selected,
  the scripts are showed in ascending order

15.6.2010 CVS
- added slash at the end of Oracle stored procedure to verify

1.0.8 Release Notes (24.5.2010)
- Important fix in install routines
- Ability to set a default database type
- Stored procedure for MS SQL server to verify that the script
 is executed on the correct database
24.5.2010 CVS
Fix to the install routines finalised

21.5.2010 CVS
Added ability to select default database type
 during install
Applied fix to the install routines

18.5.2010 CVS
Added stored procedure for MS SQL server to verify
 script correctness (tested only in read-only mode though)

24.2.2010 CVS
Minor fixes in manual.php

1.0.7 Release Notes (15.2.2010)

Minor bugfixes and URLs adjusted to the new URL

15.1.10 CVS
Changed the wiki url to

28.10.09 CVS
- bugfix: a missing script title is defaulted to "db update" so that it is clickable on the google gadget

20.10.09 CVS
- google gadget has number of scripts and font size as preferences
- bugfix: scripts opened in google gadget open a new browser tab

1.0.6 Release Notes (14.10.2009)

The main feature of 1.0.6 is the Google Gadget that displays the latest scripts on
 your iGoogle start page.
The manual is updated on how to install the gadget.

Additionally, the 'List scripts' view shows coloured rows depending on the age of a submitted script.
For each submitted script, not only the date is recorded, but now also the hour.

With 1.0.6 we change the version number to a schema numbering which is very common in the Open
Source world.

Before installing 1.0.6 you need to run this script on the database schema:
ALTER TABLE `tbscript` CHANGE `create_dt` `create_dt` DATETIME NOT NULL;
ALTER TABLE `tbscript` CHANGE `update_dt` `update_dt` DATETIME NOT NULL;

- added settings and refined deltasql google gadget
- added gadget on the initial page
- added a F.A.Q question on the gadget
- added a section in the manual that explains how to intall the gadget
- list scripts colors scripts as the gadget does
- removed deltasql-1.005.ebuild (gentoo ebuild script)

- list computers is refreshed each 3 minutes
- started adding skeleton for a google gadget displaying the latest scripts
- changed format in tbscript for create_dt and update_dt, people need to run:

ALTER TABLE `tbscript` CHANGE `create_dt` `create_dt` DATETIME NOT NULL;
ALTER TABLE `tbscript` CHANGE `update_dt` `update_dt` DATETIME NOT NULL;

- added under the directory "gentoo" an overlay called "gpu-grid" that will contain 
  ebuilds for the different gentoo versions.

1.005 Release Notes (22.4.09)
- possibility to submit scripts with the option "in all branches" or "not in any branch" (by Lukas Stucki)
- ability to remove empty lines in a script in submitscript.php (by Lukas Stucki)
- bugfix: test data is correctly inserted by install.php
- bugfix: error rights in Top Ten Submitters

- Lukas Stucki added the possibility to submit scripts to "all" branches or "none",
 by clicking on a button on the submit_script.php page

1.004 Release Notes
- possibility to create a branch of a branch by duplicating it
- it is possible to see who modified last a script and when
- it is possible to search among modified scripts
- added FAQ questions

19.12.08 CVS
- on the deltasql schema please execute:

ALTER TABLE `tbscript` ADD `update_dt` DATE NULL AFTER `create_dt` ;
ALTER TABLE `tbscript` ADD `update_user` VARCHAR( 64 ) NULL AFTER `update_dt`;

- this adds the functionality of keeping track of script changes

17.12.08 CVS
- added possibility to duplicate a branch
- added a FAQ on how to duplicate the branch

11.12.08 CVS
- added FAQ note on how to upgrade deltasql

11.12.08 1.003 Release Notes
- search scripts page: it is possible to search for scripts in a given time interval by using
 the jscalendar component
- important bugfix: branch names with dots or other special chars created problems to the submit, list
  scripts pages (reported from Harikrishnan V at
- documentation improvements: added a Frequently Asked Question, the ant-client install instructions
 and a tip to the manual
 - alphabetic sorting for project names and module names
10.12.08 CVS
- added a tip to the manual
- added piwik stats (only if flag $include_piwik_stats is set to true), by default disabled

9.12.08 CVS
- added section on how to install ant-client in manual and one more question in the FAQ

8.12.08 CVS
- wrote down a minimal FAQ

4.12.08 CVS
- added a $default_script_title variable in to configure the
 default script title when submitting a new script
- added skeleton for deltasql FAQ

1.12.08 CVS
- bugfix for the issue reported by Harikrishnan: it is possible to name branches
 like "1.1.1" or using special chars now
- bugfix: if a script is less than 35 chars it is not shown in list_scripts.php

19.11.08 CVS
- added jscalendar ( to search scripts for a date interval

18.11.08 CVS
- alphabetic ordering of module names and branch names in edit_script.php and submit_script.php
- alphabetic ordering of project names in dbsync.php

14.11.08 1.002 Release Notes
- When deleting a script, a branch, a module or a project, a page
 asks for confirmation
- Several documentation improvements

13.11.08 CVS
- added directory structure text file, to explain the package structure
- several improvements on tablesync (including timer)
- minor documentation improvements

7.11.08 CVS
- improvements to the deltasql algorithm section in the manual

6.11.08 CVS
- added little section in manual that documents the deltasql algorithm

4.11.08 CVS
- added number of synchronizations in list usage history

29.10.08 CVS
- confirm page for deletion of project, user, branch and module

28.10.08 CVS
- script deletion has a confirmation page
- tablesync implements basic functionality without foreign key management
- reduced the number of scripts per page from 20 to 15 in utils/

15.10.08 1.001 Release Notes
The deltasql clients now also support Microsoft SQL server and Sybase
 thanks to the open source driver jTDS.

Some refinements in respect to 1.000:
- the schema name is removed as it was creating confusion.
- install procedure: added possibility to specify another user as root user
- the test data script is running now

14.10.08 CVS
- initial skeleton for the tablesync utility under /tablesync subfolder:
it is a Java process (which can run on a Linux/Unix server) that is able
 to synchronize data between different database types (via JDBC driver)

2.10.08 CVS
- deleted some entries in the test data script under subdirectory db, as they were not working
- removed optional schema name from UI as it creates confusion
- install procedure: added possibility to specify another user as root user

1.10.08 CVS
- added a new JDBC driver to the ant-client and to the dbredactor client that allows
 connections to Microsoft SQL Server and Sybase. The JDBC driver name is jTDS and is under LGPL,
  distributed at
- changes server side to support the Microsoft SQL server and Sybase

24.09.08 CVS
Improved error message in stored procedure DELTASQL_VERIFY_SCHEMA

15.09.08 1.000 Release Notes
0.950 is rereleased as version 1.000 due to its stability. Only the .tar.gz packaging has a correct Unix 
end of line format.

19.08.08 0.950 Release Notes
Improved project module management (possibility to delete modules, less confusing navigation)
Improved user management (possibility to delete users for administrators)
Improved error management (bugfixes, more error types, link to error documentation if format is HTML)
XML Export for advanced deltasql clients

This release is Release Candidate 1 for Version 1.

18.08.08 CVS
- documented the possible error messages in deltasql server
- changed logic to format error, so that it can show documentation on an hyperlink 
- added possibility to choose between XML, HTML (default) and text in dbsync form

15.08.08 CVS
- finished XML export functionality for dbsync updates, to enable use
 xmlformatted=1 parameter in URL string
- fixed minor bugs in error messages if client were not aligned
- documented the options a deltasql client can set via URL parameters

14.08.08 CVS
- Added delete project module functionality
- Revised Add Module workflow
- "Back To" links not too close of end of table
- Added initial stubs to handle xml output of dbsync
- Added possibility to delete users for Administrators

13.08.08 0.901 Release Notes
- Important bugfix: the list of database types was not shown when
 getting the synchronization table

12.08.08 0.900 Release Notes
- Top Ten Submitters List (can be installed with an option)
- Editing the description of Modules, Projects and Branches 
- bugfixes in the install procedure if options are chosen
- added test document to verify accuracy of synchronization mechanism

8.08.08 CVS
- added editing of projects, branches and modules (description and for modules also name)

28.07.08 CVS
- added document "Tests_To_Verify_deltasql_correctness.txt" containing the output
 of the synchronization mechanism with the test data that can be installed with

25.07.08 CVS
- added top ten submitters list
- added possibility to disable the top ten list on the install.php page

21.07.08 CVS
- bugfix: test system did not shown admin password in login screen

11.07.08 CVS
- bugfix: enterprise logo never shown if deltasql configured as Enterprise Edition

10.07.08 0.850 Release Notes
- provides the reliability of 0.810
- easiness of installation thanks to the new install.php page which takes
 the entire burden of configuring deltasql away from the user
- usage statistics for administrators

10.07.08 CVS
- added single scripts to recreate schema in db/ subfolder 
- install.php works perfectly :-). In one shot it is possible to install
  deltasql with options :-)

8.07.08 CVS
- Install procedure: database creation works. now tables are missing.

4.07.08 CVS
- configuration script is automatically generated via install.php

3.07.08 CVS
- created nice layout for install.php
- redirection to install.php if deltasql not already installed

27.06.08 CVS
- added entry in README.TXT that pictures/enterprise_logo.jpg is the only file
 not under GPL in this package.

27.05.08 CVS
- added table tbusagehistory to record some deltasql activities for administrators,
 it has exactly the same structure as TBSYNCHRONIZE (a part of the unique constraint on
  the version number).
- added page list_usage_history.php if the user is logged as administrator

22.05.08 0.810 Release Notes
- Important Fixes to the update logic for BRANCH->HEAD and HEAD->BRANCH operations (the duplicate
 problem is solved as well)
- Look&Feel changed with Cascade Style Sheets
- Fixes to the backup shell script

22.05.08 CVS
 are tested and seem to work (after several adjustments and adding a third phase
  into the synchronization step)

21.05.08 CVS
- initial bugfixes to the dbsync update logic (duplicate problem seems solved,
 but maybe a refactoring is needed)
- stuckas fixes to backup script under /db/backup

05.05.08 CVS
- added cascade style sheet to the html page (the style sheet is copyed from the Tomcat 5.5 inside JBoss)

0.809 Release Notes
- DELTASQL_VERIFY_SCHEMA stored procedure verify that a synchronization script is executed in the
 correct schema (for Oracle and postgreSQL. mySQL might support this at a later point)
- possibility to edit in which branches a script belongs to (before it was possible only
 through the removal workaround)
- example backup shell script for Linux to periodically dump deltasql data under /db/backup
- minor fixes and changes

2.5.08 CVS
- edit script allows modification of to which branches a script is applied

27.4.08 CVS
- added verification step for database postgreSQL as stored function

24.4.08 CVS
- important end of line bugfix in synchronization script generation

23.4.08 CVS
- changed verification step by using a stored procedure

21.4.08 CVS
- bugfix in echo statement of ant-client

20.4.08 CVS
- removed flag $enable_verification_script_for_dbsync, added a column to tbsynchronize named dbtype
 instead. If it is an Oracle database, dbtype will contain the string Oracle, and the verification
  script will be shown.
- added also a column schemaname to tbsynchronize  
- adapted ant-client and dbredactor to support the database type setting

18.4.08 CVS
- added Oracle verification script, to verify if a dbsync script is
 executed at the correct place (flag $enable_verification_script_for_dbsync
  in to enable it)

17.4.08 CVS
- script by Lukas to backup sql dumps on a samba server under db/backup

16.4.08 0.808 Release notes
- syntax highlighting for SQL scripts with the Geshi library
of Nigel McNie and Benny Baumann added by Lukas Stucki
- bugfix: if there are no scripts a commment is shown
- database schema revised
- ant client revised

10.4.08 CVS
- title links to show script in list scripts view.

7.4.08 CVS
- possibility to disable client download table in via variable
- redone database schema for deltasql by reexporting it with a project and some
 modules as example

6.4.08 CVS
- better title management for "collection scripts" mode,
 search among titles, titles different than "db update" are underlined
- bugfix: if there are no SQL scripts, the INSERT into TBSYNCHRONIZE statement
 is not returned. A commment that no database update is needed is printed instead

4.4.08 CVS
- possibility to disable SQL highlighting if it creates
 performance problems

3.4.08 CVS
- ant client tested, some variable names renamed
- added SQL coloring of updatestatement

1.4.08 CVS
stuckas: syntax highlighting for SQL scripts with the Geshi library
of Nigel McNie and Benny Baumann

30.3.08 0.807 Release Notes
- ant client of Lukas Stucki as additional deltasql client
- output of filtered scripts also as text file
- minor fixes

30.3.08 CVS
- modified ant client to make it JDBC driver independent. so it can support mySQL and postgreSQL as well

28.3.08 CVS
- modified query in ant client to be compatible with other databases
- added php version information if logged as administrator

25.3.08 CVS
- added ant client of Lukas Stucki

6.3.08 CVS
- added possibility to search among scripts and have the output as a text list
 for faster copy-paste.

4.3.08 0.806 Maintenance Release

24.2.08 CVS
- tbsynchronize is now described in the native format of postgreSQL (though the format
 used until now was understood by PostgreSQL).

20.2.08 CVS
- bugfix: if tbscript was empty, list_scripts.php might not work

15.2.08 CVS
- clients are allowed to get the html formatted version by setting the parameter htmlformatted=1

11.2.08 CVS
- dbredactor: changed name from to

7.2.08 0.805 Release Notes
WARNING: you need to drop and recreate TBSYNCHRONIZE on all of your database schemas
 as two new columns were added!
- database synchronization logs also from which version and from which branch the update
 started, dbredactor updated to reflect this
- bugfix in database schema creation for the deltasql server
- settings are remembered in search script window, to allow refinements
- possibility to add a commit comment in database synchronization form
- bugfix branch visibility
- it is possible to search scripts belonging in a given version range

5.2.08 CVS
- dbredactor: URL encoding of most parameters
- dbredactor: replacing white spaces with underscores in script names

4.2.08 CVS
- bugfix: created branch must have visible set to 1 by default.

3.2.08 CVS
- update_fromsource is logged in TBSYNCHRONIZE as well
- bugfix in db/script.sql about INSERT statement in TBSYNCHRONIZE
- remembering settings in search_script.php to refine searches

1.2.08 CVS
- search scripts from version to version
- update_fromversion is logged in TBSYNCHRONIZE as well

31.1.08 CVS
- possibility to add a commit comment
- dbredactor uses the commit comment to signal for which branch the script is

0.804 Release Notes
WARNING: you need to drop and recreate TBSYNCHRONIZE on all of your database schemas
 as the format changed!
- TBSYNCHRONIZE keeps history of changes and remembers which user did changes on schema
- Navigation with pages while browsing scripts (also if a search filter is enabled)
- Last search is remembered until Cancel Search button is pressed

25.1.08 CVS
 in dbredactor und deltasql-server
- implemented match case logic for search_scripts.php. However
 the query does not work in list_scripts.php. For now we keep it disabled

24.1.08 CVS
- changing columns of TBSYNCHRONIZE, so that it is possible to insert multiple
 entries, to have a little history of what happened to the database
- changed name of a column of TBSYNCHRONIZE from LASTVERSIONNR to VERSIONNR (breaks
 backward compatibility unfortunately)
- UPDATE_DT has default SYSDATE in Oracle Table

22.1.08 CVS
- navigation among scripts works fine also if search filter is enabled

21.1.08 CVS
- added Last page in list_scripts.php

18.1.08 CVS
- added primitive Top/Next/Previous in list_scripts.php
- remembering search queries among scripts with cookies

16.1.08 0.803 Release Notes
- important bugfix in dbredactor logic
- branch visibility
- searching views and packages

16.1.08 CVS
- branch visibility also in dbsync.php
- show/hide branches also for Project Managers. Delete branches only for

15.1.08 CVS
- dbredactor bugfix: dbsync info was not working properly when current version
 on schema and on deltasql were the same
- implemented branch visibility: hidden branches are not shown in submit_script.php
- added dbredactor versioning

10.1.08 CVS
- detect packages and views only if project manager or administrator

9.1.08 CVS
- drop table and commit statements when getting synchronization table

8.1.08 CVS
- searching among packages and views

7.1.08 0.802 Release Notes
- supported marking scripts as views and packages
- easier to upgrade deltasql by removing stuff from configuration file
- minor changes for production (removed adding of ; if missing, removed
 some default values in forms to avoid mistakes)
- advertisement for logos of Patrizia Pulice Cascio

7.1.08 CVS
- added script to mark views and packages automatically in dbsync.php

6.1.08 CVS
- exclusion of views and packages works

5.1.08 CVS
- added possibility to mark a script as a view or as a package
(later views and packages can be excluded from dbsync at wish)

4.1.08 CVS
- removed automatic end of line ; for scripts as it creates some problems

2.1.08 CVS
- added page of Patrizia

21.12.07 CVS
- Submit script: added mandatory specification of module without default as it was source of errors

20.12.07 CVS
- Changed show script so that also the comment can be copy-pasted into an SQL client

15.12.07 CVS
- Changed to and manual to reflect this
- added $dbserver variable if instance of mySQL is not running on the same 
server where Apache runs.

13.12.07 0.801 
Renamed tables to lowercase, as queries create some problems with some mySQL instances.

12.12.07 0.800
Initial Release on