Moodle FAQs

NES for Moodle frequently asked questions

What is NES for Moodle?

NES for Moodle is a drop-in replacement for Moodle 4.3 maintained by HeroDevs. It continues the 4.3.x line with ongoing security fixes after upstream support for Moodle 4.3 ended.

Which Moodle version is NES for Moodle based on?

NES for Moodle 4.3 is forked from upstream Moodle 4.3.12, the final upstream 4.3.x release. Releases are versioned <nes-version>+<origination-version> - for example 4.3.13+4.3.12.

Is NES for Moodle compatible with my existing site?

Yes. NES for Moodle keeps $branch = '403' and does not change the Moodle 4.3 APIs, so anything that ran on Moodle 4.3.12 continues to run and continues to pass Moodle's own compatibility checks.

How do I get NES for Moodle?

NES for Moodle is distributed as a downloadable archive from the HeroDevs registry, which you extract over your existing Moodle 4.3 site. Direct download is the only supported installation method - see the NES for Moodle Installation Guide.

Where do I find my access token?

Your Technical Contact receives an NES Access Token during onboarding or at the time of purchase. If your Technical Contact cannot locate the token, contact HeroDevs Support and we will resend it.

To change your Technical Contact, reach out to HeroDevs Support.

Yes. Replace the version with the latest from the release notes:

curl --header "Authorization: Bearer $NES_ACCESS_TOKEN" --output ./release.zip \
--location https://registry.nes.herodevs.com/composer/pkg/neverendingsupport/moodle/4.3.13+4.3.12:moodle/release.zip

See Direct Downloads for browser-based downloads.

How can I verify that I've successfully installed NES for Moodle?

Check the release string from the admin interface at Site administration → Notifications, or run php admin/cli/cfg.php --name=release. Full instructions are in Verifying an NES for Moodle Installation.

Why does Moodle say my site is out of date?

Moodle's built-in update check compares your site against upstream Moodle, which does not know about NES releases. That is expected. Disable the check in config.php and follow the release notes for new releases:

$CFG->disableupdatenotifications = true;
$CFG->disableupdateautodeploy = true;

Which PHP versions does NES for Moodle support?

PHP 8.0, 8.1, and 8.2 - the versions Moodle 4.3 supported. Moodle 4.3 blocks PHP 8.3 in its environment check. See Moodle Supported Platforms.

What happens to my plugins, themes, and config.php?

Nothing. The NES for Moodle archive contains Moodle core, and extracting it overwrites core files and adds new ones without removing anything else. Contributed plugins in mod/, local/, blocks/, and auth/, custom themes in theme/, and your config.php are left as they are.

Two things to keep in mind:

  • Any change you made inside Moodle core is overwritten by the extraction. Reapply those changes afterwards, and consider whether the NES release already fixes what you patched.
  • Plugin compatibility is unchanged. NES for Moodle keeps $branch = '403' and the Moodle 4.3 APIs, so a plugin that ran on Moodle 4.3.12 still runs. Third-party plugins are not covered by your NES subscription - see the Service Level Agreement.

How do I contact HeroDevs Support?

Email HeroDevs Support for technical issues with NES for Moodle, including installation problems, questions about a security fix, and access token issues. For subscription, coverage, and pricing questions, reach out to sales@herodevs.com.

Including the following in your first message usually avoids a round trip:

  • The NES for Moodle release string - from Site administration → Notifications, or php admin/cli/cfg.php --name=release
  • Your PHP version and database engine and version
  • Whether Moodle core has local modifications
  • Relevant errors from moodledata/ logs or your web server error log

Do not include your NES Access Token, database credentials, or user data in a support request. If credentials appear to be compromised, say so and we will rotate your token.

Response and mitigation timelines by severity are defined in the HeroDevs Service Level Agreement. To report a suspected vulnerability, see the HeroDevs Security documentation.

What is the NES for Moodle license?

HeroDevs provides the NES for Moodle software and updates pursuant to the applicable GPLv3 license, including all rights available under that license.

HeroDevs Subscription Services, and other obligations to our customers, are governed by the Subscription Agreement. The Subscription Agreement does not restrict any right to use the software or updates under the GPLv3 license.