Install and Upgrade Problems
Last updated: 27 September 2022"Copy File Failed" when installing or upgrading
When installing or upgrading DOCman, you might encounter the "Copy File Failed" error. Here are some of the most common reasons why this error could occur:
- The file and/or folder permissions are incorrect.
- The user group trying to upload/install doesn't have correct permissions.
- The tmp folder was not properly configured in the global configuration.
- The Joomla base path is too long. (Windows servers)
To solve this problem, there are a few options:
- Check your filesystem for any permission issues.
- Make sure that your FTP user group has sufficient permissions.
- Install DOCman using Joomla's Install from directory option.
- If you are using a Windows server, try to simplify your Joomla base path. Windows has a maximum path length of 260 characters by default.
"Cannot load object from identifier: com:migrator.dispatcher.behavior.migratable"
This issue occurs if you have leftovers of an older version of the Joomlatools Framework installed. This might have been introduced by other extensions that used it. One example is the Ohanah extension which is not compatible with DOCman 3. For more information, see: Conflicts with ether extensions).
To solve this issue, go to Extensions > Manage and see if you have “Nooku Framework” installed on your site. A quick fix would be to disable this extension. A more permanent fix would be to uninstall it from your system.
If a basic Joomla uninstallation doesn't work, you will need to manually remove this from your database and filesystem. Just make sure to create a full backup of your site and before attempting a clean up.
"Unable to update extensions: Joomla\Filesystem\File::delete Failed deleting inaccessible file xxx"
This is problem introduced on Joomla 3.9.0. Joomla now makes use of the File class available on the Framework repository which is different from the old one that was available in the CMS repository. This new class performs a chmod check over the file and refuses to proceed with the delete in case of failure, even if permissions allow for the file to be deleted.
More often than not, this error is thrown because of an ownership issue on that particular file. To overcome this issue, you may try to repair the ownerships on your whole Joomla filesystem by issuing the next commands while sitting on the site root folder:
chown -R apache:apache * find . -type f -exec chmod 644 {} \; find . -type d -exec chmod 755 {} \;
Here we assume that PHP is running under the apache, this might be different on your server setup so please adjust accordingly.
Another option to solve this problem would be to temporarily disable this new behaviour in the Joomla class directly. For this end open the file located at libraries/vendor/joomla/filesystem/src/File.php and comment lines 124 to 127. You should end up having something like this:
/*if (!Path::canChmod($file)) {throw new FilesystemException(__METHOD__ . ': Failed deleting inaccessible file ' . $filename); }*/
Removing those lines would also work.
The problem should be solved after applyting one of the fixes.
I've upgraded my extension to a version that is compatible with Joomla 4.x, the pre-update check still reports that there is no compatibility information
There are two bugs in Joomla 3.10 that cause the pre-update check to erroneously report that there is no compatibility information:
- Sub extensions are listed
Joomla's compatibility check lists all extensions, instead of only those which have installation manifests. Not all extensions are installable and provide the information that Joomla wants to check.
Joomla is collecting the data from the auto-update manifests developers provide, but sub-extensions do not have manifests, you cannot auto-update them, as they are part of another main extension.
For example, DOCman is a bundled extension, it's made up out of multiple components, plugins and modules. They are all downloaded as a single zip file and installed together.
Joomla's compatibility check should only show extensions for which manifests are available, it's how Joomla works. This is not something that we can fix, ergo, this leads to a compatibility information notice about the installable extensions only (i.e. DOCman, FILEman, LOGman, etc) and not about the other sub-extensions.
- Joomla's manifest cache doesn't update properly
Joomla stores extension manifest data to a local cache. That cache doesn't update properly and sometimes the information that it shows is wrong.
For example, when you update to DOCman 4.x, which uses a different auto-update endpoint, Joomla won't re-update its internal cache and will still show the compatibility data for DOCman 3.
All of our extensions are 101% compatible with Joomla 3 and 4 (and PHP8.x and MySQL8). Our Joomla 4 compatible extensions were put through a release and testing cycle of more than a year. They are rock-solid, in fact we're sure that you will agree that it's some of the best work we've ever done in terms of release cycles and stability.