Introduction
GitHub updates -- small, intermittent updates of specific files, plug-ins, etc. -- cannot be done with Joomla Extension Manager/Update. The Joomla Extension Manager/Update will only show and update to official releases.
NOTE ON OFFICIAL RELEASES: At the time of a NEW official release (e.g., 4.0), even if you have been updating from Github, we strongly recommend that you always install the new release either via Joomla's update manager or via its extension install page. This is because these releases may apply database changes. These database changes are located in {fabrikversion#}.sql files which can be found in administrator/components/com_fabrik/sql/updates/mysql/. After installing the official release you can go back to updating via GitHub until the next official release.
Once you have installed Fabrik 4.x, if you want to stay up to date with the latest code updates
between official releases, you can '
update from GitHub'. This will overwrite existing Fabrik files with the latest files available which often contain bug fixes and improvements.
To let Joomla "know" about your GitHub update you have to do the "Post GitHub Update Steps" outlined later in this page, especially
Code:
ExtensionManager -> Manage -> Refresh Cache
on all fabrik plugins.
Getting the Most Recent Fabrik Code
Download and extract a zip file
Our code is housed at
https://bitbucket.org/fabrikar/fabrik/src/master/.
Once you land on this page goto Downloads/Branches
and click on the archive format of your choice, This will create a download archive file for you (for now assuming this is a zip-file, named something like fabrikar-fabrik-b8ce87738ef1.zip).
!! Use the
master branch (there may be some other branches due to pull requests) !!
This is NOT an installable ZIP, do not try running it through any installers
- Extract to your local system.
- Navigate to the folder where all the files and folder are displayed (folder "fabrikar-fabrik-xxx" containing "administrator","components",...). The contents will look like this:
Whichever method you use for updating your site, only use the marked folders, don't upload or zip .files and .folders
Updating Your Site With The New Files
First take a BACK-UP of your site!
Have you backed your site up yet? If not, go back one square!!
After making a backup, choose
one of the following methods to update your site.
Whichever method you choose, one thing you
MUST NOT DO is "cherry pick" files, eg. only upload specific files you think have changed. You must
ALWAYS UPLOAD EVERYTHING. This is because changes in one file very often rely on changes in other files, and mixing versions can cause bizarre errors, which take our support staff hours to debug.
1. FTP Update
- Use filezilla or any FTP tool.
- If your server will allow it, set number of Connections to e.g. 10.
- Upload the marked folders to your Joomla root
- Set the Options to overwrite your existing Fabrik files. (If you want to increase speed substantially you can overwrite only if the file sizes are different and accept the risk of a file having changed but the size being exactly the same number of characters.)
2. Upload and extract a zip-file
- Select the marked folders and zip them (make sure you are just zipping the folders and files - ie do not zip the folder containing them or else when they are extracted on your server they will be in a folder in your directory and not in the root directory itself).
- Upload to your server.
- Extract.
3. cPanel Update
If you use cPanel you'll need to do the following.
- Unzip the downloaded GitHub zip to your local system.
- Navigate to the fabrikar-fabrik-xxx folder where you see all the files and folders.
- Select the marked folders and create a new Zip file, (or whichever archive format you prefer).
- This has to be performed otherwise the files will extract to a subdirectly and your site will not get updated.
- Upload the NEW zip file to the root of your site (often this is the "public_html" file).
- Once uploaded, refresh the directory, click on the uploaded file and select extract.
- Delete the ZIP file if you wish.
4. Command line
If you are on a linux based system you already have all the commands you need. If you are on a Windows based system you will need to install wget (https://gnuwin32.sourceforge.net/
Packages/wget.htm) and tar (https://gnuwin32.sourceforge.net/
Packages/gtar.htm) which need to be accessible from the command line in your J! root.
You can fetch and extract the latest github code in place with a single command. Just open a terminal (Windows Command Prompt) and navigate to your J! web root, and do ...
Code:
wget --no-check-certificate https://bitbucket.org/fabrikar/fabrik/get/master.tar.gz -O - | tar -zx --strip-components 1
This will fetch the latest 4.x github tarball, and extract it in place.
Clone Repository
Alternatively, if you update from GitHub regularly, install Git or GitHub for Windows or Sourcetree or similar and create a clone
and then use:
- "sync" in GitHub for Windows; or
- "git pull origin" in Git or
- "pull" in TortoiseGit (choose origin and needed branch) or Sourcetree
to update your clone with the latest code.
Post Github Update Steps
If you have 'updated from Github' all your physical files will be at the latest version and any installed Fabrik plugin will be running this latest version.
However, as these files have not passed through the Joomla install or discovery process Joomla doesn't know they have been updated. This is why after a Github update you may notice some of your Fabrik files are still marked as an earlier release. For example, you may have extracted Fabrik 3.0.4 files to your server but Joomla is telling you that some of your files are still 3.0.3, (see red highlight in image below).
This is also the reason why Joomla's update feature is telling you there are updates available even though you have upgraded. As mentioned above, your files have been updated but as far as Joomla's database is concerned you are still on a previous version.
To refresh Joomla's database you need to go into the System - Manage - Extensions.
1. In the Filter box type Fabrik, and then click search.
This process will list all Fabrik components,
Modules and plugins.
Once this is complete make sure it's displaying ALL Fabrik plugins by
2. selecting "All" in the upper right corner.
3. You now need to select everything.
4. Once everything is selected, click Refresh Cache.
Hopefully you will now see your items at the latest release.
Then goto System - Install - DDiscover and click "Discover"
to make sure Joomla knows about the recent versions of uninstalled plugins.
Now go System - Update - Extensions
Click "Check for updates"
Search for "fabrik", hopefully no Fabrik items should be displayed.
Finally - you may need to enable new plugins.
Go to System - Manage - Plugins.
1. In the Filter box type Fabrik, and then click search.
Once this is complete make sure it's displaying ALL Fabrik plugins by
2. selecting "All" in the upper right corner.
3. Select the plugins you want to enable
4. Once everything is selected, click Enable
Exception to the above rule:
- If you have a very early edition of Fabrik there may be the odd plugin which simply doesn't want to update. If this happens, find the plugin in your Github files, zip it up and install it manually.
Unnecessary Files
Depending on what method you used to update from github, you may have 2 files that are not necessary that will litter your J! root directory. You can leave them or delete them as you desire. The two files are bitbucket-pipelines.yml and README.md