Drupal 10 Compatibility Fixes for Ubercart uc_country Module

Created on 20 December 2024, about 1 month ago

Problem/Motivation

The uc_country module in Ubercart is designed to handle country management and related functionality in Drupal 8. However, due to significant architectural changes in Drupal 9 and 10, the module requires updates to ensure compatibility with Drupal 10.

Issue : Entity type 'Drupal\uc_country\Entity\Country' is missing 'config_export'

Entity type Drupal\uc_country\Entity\Country is missing the config_export definition in its annotation, which is required in Drupal 10 for proper configuration synchronization.

🐛 Bug report
Status

Active

Version

4.0

Component

Code

Created by

🇮🇳India ankit_k

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @ankit_k
  • 🇺🇸United States tr Cascadia

    What's the goal here? To get Ubercart working on the latest version of Drupal? That's a huge task. And proceeding like the above patch is the wrong way to go about it - there is almost nothing in that patch that should be done. For example, D9 is out of support and can't be tested, so declaring that the module is compatible with D9.0 is not only false but it's a false statement that can't be verified. Likewise, FormattableMarkup should not be used in tests anymore, so changing format_string to FormattableMarkup is the wrong thing to do.

    Getting Ubercart to work with D10 or D11 is going to be a lot of work, and will require a lot of knowledge of current Drupal APIs and standards, and will require testing to be configured and enabled. And it's going to be two or three times that amount of work if I have to make major changes to every little patch like this one. So before you spend any more effort on patches like this one I suggest you open a [plan] issue to discuss what your goals are and how to accomplish them.

  • 🇺🇸United States tr Cascadia

    Oh, and this is not a bug. The compatibility is explicitly set to to D8.7.7, there are no claims it works in D8.8 or higher. There were major backwards-incompatible changes in core between D8.7 and D8.8. If you want to support Drupal 10.4 and higher (which are the only supported versions of core right now) then this is a porting *task*.

Production build 0.71.5 2024