Version 11.x Support

Created on 22 September 2024, 6 months ago

Problem/Motivation

Am currently using Captcha Keypad on Drupal Version 10.3.5. It works very well, thanks to those developers
that are keeping this module updated.

Steps to reproduce

Will not load via composer currently with Drupal 11, at least not on my test system.

Proposed resolution

Will be moving to Drupal 11 in the near future, and would like to keep using this module, as it works great in Drupal 10.3.x Could this module be updated to be included for use in Drupal 11 in the future?

Remaining tasks

User interface changes

API changes

Data model changes

πŸ’¬ Support request
Status

Active

Version

1.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States lee56

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

Merge Requests

Comments & Activities

  • Issue created by @lee56
  • πŸ‡ΊπŸ‡ΈUnited States brookfield

    I echo this request. I have tried other captchas and random field and bots get around them. This works. I hope you are able to support in D11. (The donate button link does not work as of 02-Feb-2025).

  • First commit to issue fork.
  • Merge request !5Resolve #3475982 "Version 11.x support" β†’ (Merged) created by marcelovani
  • πŸ‡¬πŸ‡§United Kingdom marcelovani London

    I pushed the fixes for Drupal 11.
    If you could test the Dev branch and let me know if works, I will make a new release.
    Thanks

  • πŸ‡ΊπŸ‡ΈUnited States lee56

    Marcelovani,

    Thanks for taking the time to work on this Captcha Keypad module.

    I installed the dev version on Drupal 11.1.1. The dev version installed via composer without error, but
    after clearing Drupal caches and selecting Captcha Keypad from the home/adminstration/configuration
    section of Drupal; I encountered the following error (attachment included):

    The website encountered an unexpected error. Try again later.

    TypeError: Drupal\Component\Utility\Html::escape(): Argument #1 ($text) must be of type string, null given, called in /home/tstsite1/public_html/core/lib/Drupal/Component/Render/FormattableMarkup.php on line 202 in Drupal\Component\Utility\Html::escape() (line 431 of core/lib/Drupal/Component/Utility/Html.php).

    Line 202 error (also attached):
    202 $args[$key] = Html::escape($value);
    203 break;

    Line 403 error (also attached):
    431 public static function escape(string $text): string {
    432 return htmlspecialchars($text, ENT_QUOTES | ENT_SUBSTITUTE, 'UTF-8');
    433 }

  • Merge request !6Resolve #3475982 "Version 11.x support" β†’ (Merged) created by marcelovani
  • πŸ‡¬πŸ‡§United Kingdom marcelovani London

    @Iee56 I tested it locally, with the steps you mentioned, but I did not get any issues.
    Perhaps it is another module that is enabled and causing this, can you please check the list of enabled modules using drush pml command?

    I have pushed more changes to the dev branch, please pull the latest changes first.

    The automated tests are passing https://git.drupalcode.org/project/captcha_keypad/-/pipelines/414110

  • πŸ‡ΊπŸ‡ΈUnited States lee56

    Marcelovani,

    I just retrieved the latest changes using composer. I am using the composer update
    command. It is retrieving the captcha_keypad dev files and installing. If I am not
    using this command correctly, please let me know, as I am still getting used to
    Drupal and Composer. If a Drush command is better suited, please let me know,
    and I will use Drush.

    Composer says I am using version ^1.0@dev for drupal/captcha_keypad

    Drush PML command is attached in the file "Drush PML results.txt" saved
    at 2/3/2025 at 6 08pm AZ time

  • πŸ‡ΊπŸ‡ΈUnited States lee56

    Marcelovani,

    I used another test site I have on another server, with installed a clean copy of
    Drupal 11.1.1 and only added the forum module, which is a module needed
    for a hispanic genealogy group that I manage using Drupal 11.

    The captcha keypad loaded without issue, so I must have another module that
    is not playing well with the captcha keypad module on my other test system. I'll
    work on disabling the modules 1 by 1, until the captcha keypad module works on
    my main test system.

    I now believe it is ok to move from dev to full release, based on the module
    working on a clean copy of Drupal 11. Sorry for any trouble I may have put
    you through during testing.

    Lee

  • πŸ‡¬πŸ‡§United Kingdom marcelovani London

    Thanks Lee

    Lets wait until you find which module is causing the issue. I can install the same module on my side and see if there is anything we can do at Captcha Keypad.

    Thanks
    Marcelo

  • πŸ‡ΊπŸ‡ΈUnited States lee56

    Marcelo,

    Captcha Keypad is now working on my test system, although it is still a little puzzling. I did initially strip all contributed modules, but still had the 2 previous errors mentioned in previous comments. I then installed the Captcha contributed module (version 2.0.7), and after that Captcha Keypad was able to be accessed.

    The other test website (with a fresh copy of Drupal 11) had never had any spam deterrent modules placed on the site, and Captcha Keypad was installed and worked immediately.

    I am wondering if a site previously has had spam deterrent modules installed, will Captcha Keypad's configuration module not load unless the Captcha module is also installed? This appears to be the case, at least for my config.

    Anyway, Captcha Keypad (along with the Captcha Module) is installed and now working. It may be useful to mention that the Captcha Module may be needed, if someone has the same issues that I encountered. The test website is located at: https://tstsite1.top/

    Thanks again for getting this module ready for Drupal 11.

    Lee

  • πŸ‡¬πŸ‡§United Kingdom marcelovani London

    Hi Lee

    I am not clear on what is happening.

    Captcha Keypad is working for me as standalone and also with Captcha module.

    I will create a release and see if there is any issues that will be affecting anyone else.

    Thanks for helping to test this.

    Marcelo

  • πŸ‡¬πŸ‡§United Kingdom marcelovani London
  • Pipeline finished with Success
    about 2 months ago
    Total: 153s
    #417964
  • πŸ‡ΊπŸ‡ΈUnited States lee56

    Marcelo,

    Yeah, It was really strange that I had to install captcha in order to get captcha_keypad to work.
    Perhaps a field in a database from other modules did not get cleared. Based on the install on
    a clean Drupal 11 system, and also your testing, it will most likely work as designed. The system
    I am using was once Drupal version 6.38, and has been upgraded to 7, 9, 10, and working on 11,
    so the database may be unique, given all the conversions it has been through.

    Thanks again, and the upgrade to the production version 1.7.0 was successful.

    Thanks again!

    Lee

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024