(This was a post in the old forums, copied here for convenience)
The usual reasons for a package failing on one site and not failing on another:
- Assumptions made about the site being installed in the web root, or a sub-directory of the web root
- Incorrect character sets in the database or php
- Case sensitivity
- Assumptions about equivalence of null/0/false/"" and 1/true/“string”/not-null fail when run on a strict MySQL database
- Developer has got to current state through an evolution of updates during development and is not testing a fresh install
- Assumptions about core versions
- Php extensions required
- Site settings required that are not automated by the package install or documented
- Namespace pollution in php, css or javascript conflicting with packages the developer does not have installed
- Assumptions made about the uniqueness of bID. There are several solutions that can be found on the forums. For an easy example, look at the core Google Maps block.
- Failure to test things like copy/paste and adding the block to a stack.
Submit addons and themes to the marketplace at https://marketplace.concretecms.com/marketplace/manage_item/
If a submission has Linter issues, the test Linter at https://marketplace.concretecms.com/marketplace/linter may be of assistance
I am sure there are more. This is just a quick brain-dump.