What is the purpose of the compatibility entry in the theme skeleton?

AI-generated summary

The discussion revolves around the purpose and inclusion of the .discourse-compatibility file in the Discourse theme skeleton. Moin questions why this file, used to pin plugin and theme versions for older Discourse installs, is now part of the default template. David initially agrees to remove it, and it is subsequently removed David. However, the file is later re-added Moin, prompting itsbhanusharma to argue that it makes sense to include it, as it plays a crucial role in theme compatibility, and a comment or documentation link could guide users. The file is ultimately kept in the skeleton.

This was added last week:

Can someone explain the purpose? In principle, I understand what the file is used for, as explained in the documentation. But I don’t quite understand the point that this is now part of the template for all themes and theme components.

Thanks for the heads-up - we shouldn’t have merged that into the default skeleton. Will get it reverted :eyes:

Now removed.

Just a heads-up, a compatibility entry has been added again:

Edit: PR to remove it DEV: Remove the discourse-compatibility entry by moin-Jana · Pull Request #58 · discourse/discourse-theme-skeleton · GitHub :check_mark: merged

In hindsight, it makes sense to have that file present, with likely the oldest supported version or a comment somewhere that leads to the documentation for compatibility file.

it is a skeleton and compatibility file plays an important role these days.