1

Re: Updates and upgrades for Code

Hi Jim

General updating of files/features in Indcia
Am I correct in thinking that at some point in the near-ish future you are going  to release a new version of Instant Indicia that I will download from the website, unzip and then  I can start from Section 5 of the tutorial. (provided I set up a 'database' name like orchards or damselflies on the warehouse and point Indicia at it.

Currently, I can think of the followiing ways where the code running on my old laptop can get 'updated'
1) I download the whole of Indicia again from the website - but need to wait for a link to the 'new version' of Indicia.   OR is it a case that I can download the same version as before and you will have updated that to fix some of the problems
2) Indcia - alerts when an updated file is available like it did for 'User Badges' and I need to go to the Drupal site to find the zipped file (John - in future is it possible to provide the zipped file directly within Indicia and not just the  file that is for Unix users please).
3)  you email me different files like report_map.php
4)  I search the repository (which sounds complicated to use as John you suggested I might need to learn programming).

What I'm wondering is what and how is the updating 'automatic' and how much and how often do I need to check for updates 'manually'.  What is the easiest way for me to keep my running version of Indicia as bug fixed as possible (nervous breakdown avoidance tactics) ;o)


Anne

2

Re: Updates and upgrades for Code

Hi Anne,

I'm going to give you a bit more detail than you might want, for the benefit of all, and use a few bits of jargon which hopefully you can gloss over but will be meaningful to others. The way it works is this.

On an almost daily basis there are updates and bug fixes being made to the code. Each of these is submitted to the repository where you can go and look at changes. This is a subversion repository and, if you download a subversion client (I use TortoiseSVN), you can get a copy of the current development code. This is not for the uninitiated really. Quite often changes to the client code are supported by changes to the warehouse code and one won't work without the other. However, some people can help themselves to bug fixes like this.

Eventually a day comes, usually because there is a pressing need to use a new feature, when we decide to release a new version of Indicia. That means a new version of the warehouse, the client_helpers library, the iForm module and Instant Indicia. Typically we begin with an upgrade the Testwarehouse and check for backwards compatibility with the previous version of client software. Next we will upgrade our client software and test again. We may find and fix a few bugs and then we will tag this particular version of the code in the repository so we can clearly identify it and return to it. Having done this we package the code and publish it for download with a new version number, removing the previous version. At this point we will also upgrade Warehouse1. The new version will be announced on this forum.

From this point on, we return to development and our code begins to diverge from the released version. When a bug is encountered we will endeavour to fix it but we won't go through the release procedure for each bug fix. If it is a warehouse bug we may patch our servers to fix them and that would usually be posted on this forum. If the fix is incompatible with the current development trunk then we can create a branch of the code containing just fixes for the current release. Occasionally, if there are several bugs fixed, we do do a minor release which we will again announce on this forum.

So, what happens from the user perspective? Firstly you want to be subscribed to this forum as that is how we will let you know of a new release at present. What you do when there is a new release depends upon which elements of Indicia you are using.

- Warehouse users follow the published instructions.
- Users who have written PHP forms using the client_helpers library would want to take a backup of their current client_helpers folder and then overwrite it with the new version. If you replace rather than overwrite the folder you will need to restore your helper_config file.
- Drupal users needing to update their iForm module follow the normal update procedure for any Drupal module. The same comments about backing up and overwriting apply.
- Instant Indicia users are on the first release and have not been through an upgrade cycle yet. More on that in the future.

If you find a bug then typically people post to this forum. There is a bug tracking system but we are not maintaining it as well as we could (volunteers welcome). In resolving a bug we may email a file to a user for testing but in no way should this be considered the norm. Typically there will be information on the forum about how to help yourself to the solution. Alternatively you can just wait for the next release.

In summary, there is currently nothing automatic about keeping Indicia up to date.

On the other hand, where you are using Indicia in conjunction with Drupal, that is able to check for updates to both the Drupal core and contributed modules, such as the User Badges that you mention. You need to enable the Update Status module which is grouped with the Core - Optional modules. There are then settings under Reports>Available Updates>Settings. You can read about how to update the core and how to update contributed modules. Note that Indicia requires version 6 of Drupal. (Also note that you can download the tar.gz files or zip files to Windows provided that you have a tool to decompress them. I use 7-Zip and advise against using the extractor that comes with Windows.)

Jim Bacon.