{"action":"created","issue":{"url":"https://api.github.com/repos/edx/edx-platform/issues/19058","repository_url":"https://api.github.com/repos/edx/edx-platform","labels_url":"https://api.github.com/repos/edx/edx-platform/issues/19058/labels{/name}","comments_url":"https://api.github.com/repos/edx/edx-platform/issues/19058/comments","events_url":"https://api.github.com/repos/edx/edx-platform/issues/19058/events","html_url":"https://github.com/edx/edx-platform/pull/19058","id":366574653,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIwMjE0OTMx","number":19058,"title":"Deprecate ImageModal HtmlModule","user":{"login":"stvstnfrd","id":7300975,"node_id":"MDQ6VXNlcjczMDA5NzU=","avatar_url":"https://avatars0.githubusercontent.com/u/7300975?v=4","gravatar_id":"","url":"https://api.github.com/users/stvstnfrd","html_url":"https://github.com/stvstnfrd","followers_url":"https://api.github.com/users/stvstnfrd/followers","following_url":"https://api.github.com/users/stvstnfrd/following{/other_user}","gists_url":"https://api.github.com/users/stvstnfrd/gists{/gist_id}","starred_url":"https://api.github.com/users/stvstnfrd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stvstnfrd/subscriptions","organizations_url":"https://api.github.com/users/stvstnfrd/orgs","repos_url":"https://api.github.com/users/stvstnfrd/repos","events_url":"https://api.github.com/users/stvstnfrd/events{/privacy}","received_events_url":"https://api.github.com/users/stvstnfrd/received_events","type":"User","site_admin":false},"labels":[{"id":128413104,"node_id":"MDU6TGFiZWwxMjg0MTMxMDQ=","url":"https://api.github.com/repos/edx/edx-platform/labels/needs%20triage","name":"needs triage","color":"e11d21","default":false},{"id":78051711,"node_id":"MDU6TGFiZWw3ODA1MTcxMQ==","url":"https://api.github.com/repos/edx/edx-platform/labels/open-source-contribution","name":"open-source-contribution","color":"bfe5bf","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-10-04T00:04:36Z","updated_at":"2018-10-04T00:39:11Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/edx/edx-platform/pulls/19058","html_url":"https://github.com/edx/edx-platform/pull/19058","diff_url":"https://github.com/edx/edx-platform/pull/19058.diff","patch_url":"https://github.com/edx/edx-platform/pull/19058.patch"},"body":"This was originally submitted 2 years ago [4].\r\nIt has been obsolete and unsupported for 4+ years now.\r\nCan we please finally kill this?\r\n\r\nStop displaying the template in CMS.\r\n\r\nThis has no effect on already-existing components; it merely prevents\r\nnew components from being created with this template.\r\n\r\nAll functionality has been replaced by the XBlock version [1][2].\r\n\r\nBackstory:\r\n\r\nThis was written by Stanford, circa 2013; it was always a bit of\r\na hack. While it masquerades as if it were an XBlock/XModule, it's\r\nreally a YAML template for the HTML module. It depends on JS/CSS\r\nthat is embedded as a first-class citizen of the platform. This has\r\nall caused confusion. Worse, it's a pain to edit/configure/update,\r\nsince it uses none of the XBlock infrastructure.\r\n\r\nNearly <s>two</s> four years ago, we XBlock-ified the component and have\r\nbeen running it ever since [1][2]. As such, we no longer support\r\nthis \"component\" and would suggest edX follow suite. Consider this\r\na request-for-comments on the path forward.\r\n\r\nProcess:\r\n\r\nDeprecation of this module would follow a few steps:\r\n\r\n1. Prevent new components from being added in Studio with this template.\r\n    - This PR represents step 1.\r\n    - This is backward compatible; it will have no effect on\r\n      existing components.\r\n2. (optional) Install the XBlock version.\r\n    - This allows new ImageModal components to be added, now via the\r\n      XBlock.\r\n3. (optional) Identify and convert existing HTML modules to XBlocks [3].\r\n    - We have enough of the legacy components in use that we can't\r\n      just break support by removing this feature; we need a\r\n      conversion process.\r\n    - Because these are really just HTML modules with special\r\n      contents, we have to query based on file contents (see, I told\r\n      you this thing was hacky!):\r\n        - All such components must contain an HTML anchor tag with\r\n          the class `modal-content`.\r\n    - Beyond the query, we don't intend to automate the actual\r\n      conversion. Our use of the original component is limited\r\n      enough that it's probably not worth converting from one module\r\n      type to the other. Exacerbating the situation, because it's\r\n      HTML, other changes could have been made to the module that\r\n      would prevent automatic parity. As such, we'll work with our\r\n      CoureOperations team to convert these manually at Stanford.\r\n4. Remove all references.\r\n    - At this point, we can safely remove all supporting static\r\n      assets like CSS, JS, etc.\r\n5. Enjoy less technical debt.\r\n\r\n[1] https://github.com/Stanford-Online/xblock-image-modal\r\n[2] https://pypi.python.org/pypi/xblock-image-modal/\r\n[3] The one saving grace of the legacy component is that it was designed\r\n    to degrade gracefully. Specifically, the HTML itself is just an\r\n    image inside a link. The extra platform JavaScript progressively\r\n    enhances the display, if the relevant CSS classes are found. As\r\n    such, even if you removed all supporting CSS/JS from the platform\r\n    tomorrow, existing legacy components would simply render as an image\r\n    that links to a larger copy of itself. This is deemed an acceptable\r\n    failure mode; graceful degradation FTW!\r\n[4] https://github.com/edx/edx-platform/pull/13656"},"comment":{"url":"https://api.github.com/repos/edx/edx-platform/issues/comments/426848108","html_url":"https://github.com/edx/edx-platform/pull/19058#issuecomment-426848108","issue_url":"https://api.github.com/repos/edx/edx-platform/issues/19058","id":426848108,"node_id":"MDEyOklzc3VlQ29tbWVudDQyNjg0ODEwOA==","user":{"login":"edx-status-bot","id":9448959,"node_id":"MDQ6VXNlcjk0NDg5NTk=","avatar_url":"https://avatars0.githubusercontent.com/u/9448959?v=4","gravatar_id":"","url":"https://api.github.com/users/edx-status-bot","html_url":"https://github.com/edx-status-bot","followers_url":"https://api.github.com/users/edx-status-bot/followers","following_url":"https://api.github.com/users/edx-status-bot/following{/other_user}","gists_url":"https://api.github.com/users/edx-status-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/edx-status-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edx-status-bot/subscriptions","organizations_url":"https://api.github.com/users/edx-status-bot/orgs","repos_url":"https://api.github.com/users/edx-status-bot/repos","events_url":"https://api.github.com/users/edx-status-bot/events{/privacy}","received_events_url":"https://api.github.com/users/edx-status-bot/received_events","type":"User","site_admin":false},"created_at":"2018-10-04T00:39:11Z","updated_at":"2018-10-04T00:39:11Z","author_association":"NONE","body":"Your PR has finished running tests. There were no failures."}}
{"actor":{"display_login":"edx-status-bot"}}