Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-78934

Move from (archived) Goutte to BrowserKit

    XMLWordPrintable

Details

    Description

      Already commented @ MDL-76016 and MDL-78800, Goutte has been archived / abandoned:

      And the very same happens with the behat's mink driver that uses it:

      Since recently, when installing composer dependencies, it also points us about that and to the recommended replacement (BrowserKit):

      Package behat/mink-goutte-driver is abandoned, you should avoid using it. Use behat/mink-browserkit-driver instead.
      Package fabpot/goutte is abandoned, you should avoid using it. Use symfony/browser-kit instead.

      More yet, our current goutte driver is already using BrowserKit (you can see how it's already installed), because Goutte 4 (since MDL-76016) is just a wrapper over BrowserKit. So we have been using it all these months without any problem.

      Also, since then, I've been periodically running the changes proposed here @ CIs without any problem.

      So, the switch should be 99% straightforward. Surely the more complex part will be to kill all the occurrences of Goutte here and there.

      Initially I'd propose to apply this change only to master (4.3dev). Although it's completely safe to do it for 401_STABLE and up, there may be harcoded configurations out there still using "goutte" (that are going to stop working). Backporting could be considered later, if needed to.

      Summary:
      1. Switch from mink-goutte-driver to mink-browserkit-driver.
      2. (couple of PRs merged) Prepare CIs to support the new "browserkit" browser/driver.
      3. Review all tools making mentions to "goutte" and replace them by "browserkit".
      4. Review all the docs making mentions to "goutte" and replace them by "browserkit".

      Post-integration:

      1. Rename all the "goutte" jobs in master branches to "NonJS" - agreed within the team.
      2. Rename all the bulk pre-launchers to show "NonJS".
        1. (commit) - In local_ci (tracker automations)
        2. In jenkins (pre-launch jobs)

      Attachments

        Issue Links

          Activity

            People

              stronk7 Eloy Lafuente (stronk7)
              stronk7 Eloy Lafuente (stronk7)
              Simey Lameze Simey Lameze
              Huong Nguyen Huong Nguyen
              CiBoT CiBoT
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day, 2 hours, 4 minutes
                  1d 2h 4m

                  Clockify

                    Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.