- Issue created by @darren oh
- Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - @darren-oh opened merge request.
- Status changed to Needs review
over 1 year ago 8:24pm 16 June 2023 - Status changed to Postponed
over 1 year ago 8:46pm 16 June 2023 - πΊπΈUnited States jrockowitz Brooklyn, NY
We can use the *.diff file as a patch because the contents of that file can be changed by anyone able to commit to the ticket. We must use *.patch files.
@see https://git.drupalcode.org/project/drupal/-/merge_requests/4197.diffI think we need to NOT make every patch compatible with multiple versions of Drupal. It is creating a lot of noise in Drupal core's issue queues.
@see π MenuLinkContent menu_name max length is too long Needs workLet's slow down and develop a better solution, like only supporting one (or two) versions of Drupal.
- πΊπΈUnited States darren oh Lakeland, Florida
I'm not concerned about using the .diff because this is a demo, not a live product. Patches can stop applying any time, whereas the diff can be rebased. My main concern is that other people will not try out the demo if it takes them as long as it has taken me to get it working.
- πΊπΈUnited States jrockowitz Brooklyn, NY
The rebased diff is the security issue that allows any site using the diff to be hacked.
I am 100% for simplifying the demo. The first step would be to limit the supported version of Drupal. I am very close to only supporting 10.0.x. We might still keep the composer.patches.VERSION.json files so that we can gradually upgrade to newer versions of Drupal.
- π°π¬Kyrgyzstan dan_metille
With **OPTIONS 3**
using web/modules/contrib/schemadotorg_demo/scripts/schemadotorg_demo.sh install_demo_standard_next
I got my terminal looping indefinitely into 'Y' (see screenshot).PS: now that 10.1.x is released, maybe only to support that version of Drupal?
- π°π¬Kyrgyzstan dan_metille
Also might be obvious, but a
Run `composer update`
might be welcome between these 2 instructions:- Set install path for schemadotorg_demo. See example below.
- Run `composer require 'drupal/schemadotorg_demo-schemadotorg_demo:1.0.x-dev@dev' -W`. Repeat until there are no more changes.And I had to rename the 'schemadotorg_demo-schemadotorg_demo' folder into 'schemadotorg_demo' at some point.
But beside that I could complete both **OPTIONS 1** and **OPTIONS 2** .
- Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - πΊπΈUnited States darren oh Lakeland, Florida
sahaj, the -W in composer require serves the same purpose as composer update and only affects the dependencies of the package being updated. It needs to be run at least three times to merge in libraries from all the dependencies. You also need to require schemadotorg_next. For the scripts to work you need to require schemadotorg_demo_profile. I have updated the instructions and example to account for this.
- Open on Drupal.org βCore: 9.5.x + Environment: PHP 8.1 & MySQL 8last update
over 1 year ago Waiting for branch to pass - πΊπΈUnited States darren oh Lakeland, Florida
jrockowitz, still wondering why security takes priority over being installable in a demo. I seriously doubt many people can spend as much time as I have just to get it running. Not being installable is hindering adoption by and contribution from others.
- πΊπΈUnited States jrockowitz Brooklyn, NY
I am all for helping people use the demo. We can't use remote diffs patches where the contents can change.
- πΊπΈUnited States darren oh Lakeland, Florida
The contents of the patches have to change so they will continue to apply. Otherwise the demo can only support point releases of Drupal. Could we disclose the security issue and deprecate using the demo in any environment that needs to be secure?
- πΊπΈUnited States jrockowitz Brooklyn, NY
We can't allow such a blatant security risk where anyone can commit code to a patch and take over someone's website.
I am continually updating the demo as needed, especially when a patch is committed to a dependency and impacts the compose update command.
- πΊπΈUnited States darren oh Lakeland, Florida
Iβve never seen anyone get the demo running on the first day of trying, and Iβm getting ashamed to recommend it.
- πΊπΈUnited States boinkster
The demo ran and installed for me without any issues. Installed on a local DDEV instance.
- πΊπΈUnited States NicholasS
I would love to see like a DrupalPod button/link on the project page for a one click demo.
Such as ....
https://gitpod.io/new/#DP_PROJECT_NAME=schemadotorg_demo,DP_PROJECT_TYPE...
But Currently this results in an error.
[success] Successfully enabled: admin_toolbar_tools, devel, admin_toolbar In PmCommands.php line 341: Unable to install modules: module 'schemadotorg_demo' is missing its dependency module anchor_link.
- πΊπΈUnited States NicholasS
I was able to get it to run in gitpod but took a very long time of running individual composer commands. I followed the steps at https://git.drupalcode.org/project/schemadotorg_demo/-/blob/1.0.x/README.md replaced the composer.json and ran composer update 3 times but still had to install all the dependencies one by one.
Maybe a gitpod link, and just a massive copy/paste terminal command to install everything and install the demo for users?
1 .gitpod/utils/send-a-message-gcs.sh > /tmp/output1.txt 2 .gitpod/utils/ddev-in-gitpod-setup.sh 3 .gitpod/utils/set-base-environment.sh 4 time ddev start 5 # Temporary fix for wrong value of GITPOD_REPO_ROOT when opening a Gitpod snapshot 6 # Todo: remove this when this issue is resolved - https://github.com/gitpod-io/gitpod/issues/9804 7 if [ "$GITPOD_REPO_ROOT" == '/workspace' ]; then 8 export GITPOD_REPO_ROOT="$THEIA_WORKSPACE_ROOT" 9 fi 10 .gitpod/utils/ddev-in-gitpod-setup.sh 11 .gitpod/utils/env-setup.sh 12 .gitpod/drupal/ssh/01-check-private-ssh.sh 13 .gitpod/drupal/drupalpod-setup/drupalpod-setup.sh 14 ddev composer i 15 ddev drush cim -y 16 ddev composer update 17 ddev drush site-install schemadotorg_demo_profile 18 ddev drush install schemadotorg_demo 19 ddev composer require 'drupal/anchor_link:^3.0@alpha' 20 ddev drush install schemadotorg_demo 21 ddev composer require 'drupal/better_exposed_filters:^6.0' 22 ddev drush install schemadotorg_demo 23 ddev composer require 'drupal/block_field:^1.0@RC' 24 ddev drush install schemadotorg_demo 25 ddev composer require 'drupal/chosen:^4.0' 26 ddev drush install schemadotorg_demo 27 ddev composer require 'drupal/ckeditor5_fullscreen:^1.0@beta' 28 ddev drush install schemadotorg_demo 29 ddev composer require 'drupal/ckeditor_link_styles:^1.0' 30 ddev drush install schemadotorg_demo 31 ddev composer require 'drupal/ckeditor5_paste_filter:^1.0' 32 ddev drush install schemadotorg_demo 33 ddev composer require 'drupal/ckeditor_codemirror:^3.0@beta' 34 ddev drush install schemadotorg_demo 35 ddev composer require 'drupal/ckeditor_details:^2.1@alpha' 36 ddev drush install schemadotorg_demo 37 ddev composer require 'drupal/ckeditor_find:^2.0@beta' 38 ddev drush install schemadotorg_demo 39 ddev composer require 'drupal/ckeditor_indentblock:^1.0' 40 ddev drush install schemadotorg_demo 41 ddev composer require 'drupal/context_stack:^1.1' 42 ddev drush install schemadotorg_demo 43 ddev composer require 'drupal/convert_bundles:^2.0@beta' 44 ddev drush install schemadotorg_demo 45 ddev composer require 'drupal/dropzonejs:^2.8' 46 ddev drush install schemadotorg_demo 47 ddev composer require 'drupal/duration_field:^2.1' 48 ddev drush install schemadotorg_demo 49 ddev composer require 'drupal/entity_clone:^2.0@beta' 50 ddev drush install schemadotorg_demo 51 ddev composer require 'drupal/entity_print:^2.13' 52 ddev drush install schemadotorg_demo 53 ddev composer require 'drupal/linkit:^6.1' 54 ddev drush install schemadotorg_demo 55 ddev composer require 'drupal/markup:^2.0@beta' 56 ddev drush install schemadotorg_demo 57 ddev composer require 'drupal/menu_select:^2.0@RC' 58 ddev drush install schemadotorg_demo 59 ddev composer require 'drupal/range:^1.5' 60 ddev drush install schemadotorg_demo 61 ddev composer require 'drupal/redirect:^1.9' 62 ddev drush install schemadotorg_demo 63 ddev composer require 'drupal/redirect_metrics:^2.0' 64 ddev drush install schemadotorg_demo 65 ddev composer require 'drupal/revision_log_default:^1.3' 66 ddev drush install schemadotorg_demo 67 ddev composer require 'drupal/scheduler_content_moderation_integration:^2.0@beta' 68 ddev drush install schemadotorg_demo 69 ddev composer require 'drupal/time_field:^2.1' 70 ddev drush install schemadotorg_demo 71 ddev composer require 'drupal/token_filter:^2.1' 72 ddev drush install schemadotorg_demo 73 ddev composer require 'drupal/viewsreference:^2.0@beta' 74 ddev drush install schemadotorg_demo 75 ddev composer require 'drupal/views_bulk_operations:^4.2' 76 ddev drush install schemadotorg_demo 77 ddev composer require 'drupal/admin_dialogs:^1.0' 78 ddev drush install schemadotorg_demo 79 ddev composer require 'drupal/admin_toolbar:^3.4' 80 ddev drush install schemadotorg_demo 81 ddev composer require 'drupal/autosave_form:^1.4' 82 ddev drush install schemadotorg_demo 83 ddev composer require 'drupal/dashboards:^2.1' 84 ddev drush install schemadotorg_demo 85 ddev composer require 'drupal/diff:^1.1' 86 ddev drush install schemadotorg_demo 87 ddev composer require 'drupal/environment_indicator:^4.0' 88 ddev drush install schemadotorg_demo 89 ddev composer require 'drupal/field_compare:^1.1' 90 ddev drush install schemadotorg_demo 91 ddev composer require 'drupal/file_delete:^2.0' 92 ddev drush install schemadotorg_demo 93 ddev composer require 'drupal/login_destination:^2.0@beta' 94 ddev drush install schemadotorg_demo 95 ddev composer require 'drupal/masquerade:^2.0@RC' 96 ddev drush install schemadotorg_demo 97 ddev composer require 'drupal/moderated_content_bulk_publish:^3.0@beta' 98 ddev drush install schemadotorg_demo 99 ddev composer require 'drupal/moderation_dashboard:^2.1' 100 ddev drush install schemadotorg_demo 101 ddev composer require 'drupal/moderation_sidebar:^1.7' 102 ddev drush install schemadotorg_demo 103 ddev composer require 'drupal/multiple_fields_remove_button:^2.2' 104 ddev drush install schemadotorg_demo 105 ddev composer require 'drupal/r4032login:^2.2' 106 ddev drush install schemadotorg_demo 107 ddev composer require 'drupal/queue_ui:^3.1' 108 ddev drush install schemadotorg_demo 109 ddev composer require 'drupal/ultimate_cron:^2.0@alpha' 110 ddev drush install schemadotorg_demo 111 ddev composer require 'drupal/unpublished_404:^2.0' 112 ddev drush install schemadotorg_demo 113 ddev composer require 'drupal/consumer_image_styles:^4.0' 114 ddev drush install schemadotorg_demo 115 ddev composer require 'drupal/openapi:^2.1' 116 ddev drush install schemadotorg_demo 117 ddev composer require 'drupal/openapi_jsonapi:^3.0' 118 ddev drush install schemadotorg_demo 119 ddev composer require 'drupal/openapi_ui:^1.0@RC' 120 ddev drush install schemadotorg_demo 121 ddev composer require 'drupal/openapi_ui_redoc:^1.0@RC' 122 ddev drush install schemadotorg_demo 123 ddev composer require 'drupal/openapi_ui_swagger:^1.0' 124 ddev drush install schemadotorg_demo 125 ddev composer require 'drupal/toolbar_language_switcher:^2.0@alpha' 126 ddev drush install schemadotorg_demo 127 ddev composer require 'drupal/gin:^3.0@RC' 128 ddev drush install schemadotorg_demo 129 drush user:password admin admin 130 history
- πΊπΈUnited States NicholasS
Here is my attempt after ~2hrs of trying but this gitpod link and that terminal one liner seems to work for me so far.
The run the following command in the terminal of gitpod
cp repos/schemadotorg_demo/install/composer.example.json composer.json && rm composer.lock && ddev composer i && ddev composer i && ddev composer i && ddev drush site-install schemadotorg_demo_profile -y && ddev composer require 'drupal/anchor_link:^3.0@alpha' 'drupal/better_exposed_filters:^6.0' 'drupal/block_field:^1.0@RC' 'drupal/chosen:^4.0' 'drupal/ckeditor5_fullscreen:^1.0@beta' 'drupal/ckeditor_link_styles:^1.0' 'drupal/ckeditor5_paste_filter:^1.0' 'drupal/ckeditor_codemirror:^3.0@beta' 'drupal/ckeditor_details:^2.1@alpha' 'drupal/ckeditor_find:^2.0@beta' 'drupal/ckeditor_indentblock:^1.0' 'drupal/context_stack:^1.1' 'drupal/convert_bundles:^2.0@beta' 'drupal/dropzonejs:^2.8' 'drupal/duration_field:^2.1' 'drupal/entity_clone:^2.0@beta' 'drupal/entity_print:^2.13' 'drupal/linkit:^6.1' 'drupal/markup:^2.0@beta' 'drupal/menu_select:^2.0@RC' 'drupal/range:^1.5' 'drupal/redirect:^1.9' 'drupal/redirect_metrics:^2.0' 'drupal/revision_log_default:^1.3' 'drupal/scheduler_content_moderation_integration:^2.0@beta' 'drupal/time_field:^2.1' 'drupal/token_filter:^2.1' 'drupal/viewsreference:^2.0@beta' 'drupal/views_bulk_operations:^4.2' 'drupal/admin_dialogs:^1.0' 'drupal/admin_toolbar:^3.4' 'drupal/autosave_form:^1.4' 'drupal/dashboards:^2.1' 'drupal/diff:^1.1' 'drupal/environment_indicator:^4.0' 'drupal/field_compare:^1.1' 'drupal/file_delete:^2.0' 'drupal/login_destination:^2.0@beta' 'drupal/masquerade:^2.0@RC' 'drupal/moderated_content_bulk_publish:^3.0@beta' 'drupal/moderation_dashboard:^2.1' 'drupal/moderation_sidebar:^1.7' 'drupal/multiple_fields_remove_button:^2.2' 'drupal/r4032login:^2.2' 'drupal/queue_ui:^3.1' 'drupal/ultimate_cron:^2.0@alpha' 'drupal/unpublished_404:^2.0' 'drupal/consumer_image_styles:^4.0' 'drupal/openapi:^2.1' 'drupal/openapi_jsonapi:^3.0' 'drupal/openapi_ui:^1.0@RC' 'drupal/openapi_ui_redoc:^1.0@RC' 'drupal/openapi_ui_swagger:^1.0' 'drupal/toolbar_language_switcher:^2.0@alpha' 'drupal/gin:^3.0@RC' 'drupal/gin_login:^2.0' 'drupal/gin_lb:^1.0@RC' 'drupal/gin_type_tray:^1.0@beta' 'drupal/gin_moderation_sidebar:^1.0' && ddev drush install schemadotorg_demo -y && ddev drush user:password admin admin && preview
I know giant one liner commands kind of suck to maintain, but so does all this composer merge stuff it seems.
- πΊπΈUnited States jrockowitz Brooklyn, NY
@NicholasS Adding GitPod support would be greatly appreciated.
How about creating a ticket for adding GitPod support? Once we have the ticket and starting point, I can add the GitPod button to the project page with a link to the ticket.