-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
De-AMPing Feature: Redirect an AMP page to its canonical non-AMP version #20458
Comments
Linked to #18321 |
Text for this setting Header: Auto-redirect AMP pages On Android, please this setting under Brave Shields & privacy Default = On |
@anthonypkeane I created #21643 for the Android-specific parts left for this feature. Will work on those next, once I get an Android device. Until then, the feature is default off (and there's no UI to switch it on). |
@ShivanKaul could you provide a bit more detail for the test plan from brave/brave-core#11750 (comment)? Particularly examples, etc. I'm not familiar with all of the items listed, so more information, steps, example sites, etc would be welcomed. Thanks! |
@LaurenWags I'll try to spin up a couple of test pages to address those test cases. But for a simple example, here's an AMP page: https://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap (updated PR with QA notes brave/brave-core#11750 (comment)) |
Removed |
Verified
Pre-requisites for following testcases
1.Visit
|
Verified
|
Brave | 1.38.83 Chromium: 100.0.4896.79 (Official Build) beta (x86_64) |
---|---|
Revision | 8fb749dcab8700c24213791969e59deb72fee36f-refs/branch-heads/4896@{#1015} |
OS | macOS Version 11.6.5 (Build 20G527) |
Shared steps:
- install
1.38.83
- launch Brave
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Disable Enable De-AMP flag -
brave://flags/#brave-de-amp
- Relaunch Brave
- Visit AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
.- Inspected element and
amp
attribute will be shown in the top level<html amp>
tag for the AMP page and has canonical link that redirects to html
- Inspected element and
- Close the tab and visit another AMP page
https://shivankaul.com/brave/de-amp/test-small-amp-with-lightning.html
- Inspected element and it contains lightning symbol in the top-level
<html ⚡>
tag for the AMP page and has canonical link that redirects to html
- Inspected element and it contains lightning symbol in the top-level
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-no-canonical-link.html
- Inspected element and it doesn't contain any canonical links or top-level tags
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-wrong-scheme.html
- Inspected element for canonical link that is non-HTTP(s) -
<link rel="canonical" href="ipfs://QmcniBv7UQ4gGPQQW2BwbD4ZZHzN3o3tPuNLZCbBchd1zh">
- Inspected element for canonical link that is non-HTTP(s) -
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-small-amp-same-canonical.html
- Inspected the element and it has canonical link that is pointed to original/same URL
- Close the tab and visit
https://www.buzzfeed.com/amphtml/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Inspected the element and it has canonical link that is pointed
https://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Inspected the element and it has canonical link that is pointed
s1 | s2 | s4 | s5 | s6 | s7 | s8 | s9 |
---|---|---|---|---|---|---|---|
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Disable
#brave-de-amp
flag inbrave://flags/
- Relaunch the browser
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Inspect the page and it showed
amp
as attribute - Contains
canonical
in the tag - AMP Page is not redirected to
brave.com
ex1 | ex2 | ex3 |
---|---|---|
Prerequisites for the following testcases:
- Verified
brave://settings/privacy
:Auto-redirect AMP pages
is enabled by default - Verified
Enable De-AMP
is enabled by default inbrave://flags/#brave-de-amp
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
, as it contained the markup for top-level<html amp>
- The markup was verified in Testcase 1 for the above AMP page and
amp
attribute will be shown in the top level<html amp>
tag for the AMP page and hascanonical link
that redirects to html
ex1 | ex2 | ex3 |
---|---|---|
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp-with-lightning.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
as it contained markup for top-level <html ⚡> tag- The markup was verified in Testcase 1 for the above AMP page has
lightning
<html ⚡> tag and containscanonical
in the tag for redirect
- Visit
https://shivankaul.com/brave/de-amp/test-no-canonical-link.html
De-AMPing
did not work i.e AMP page is not redirected since there is nocanonical link
tag- The markup was verified in Testcase 1, for the above AMP page has no
canonical link
tag hence no redirect available
- Visit
https://shivankaul.com/brave/de-amp/test-wrong-scheme.html
- De-AMPing did not work i.e AMP page is not redirected since the AMP page has canonical link with scheme non HTTP(S)
- Verified in Testcase 1, Step 8, that the above AMP page has canonical link with scheme non HTTP(S)
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp-same-canonical.html
- "De-AMPing did not work i.e AMP page is not redirected since the AMP page has canonical link same as original URL
- Verified in Testcase 1, Step 9, that the above AMP page has canonical link same as original URL
- Visited
example.com
- Visited AMP page in the same tab-
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page is redirected to
brave.com
- Visited
https://basicattentiontoken.org
in the same tab - clicked back in the browser
- Returned to
brave.com
- Clicked back again
- AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
is ignored and is not listed in history - Clicked forward
- User is taken
brave.com
- Clicked forward again
- Returned to
https://basicattentiontoken.org
- AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
is ignored and is not listed in history - Verified the history lists
example.com
,brave.com
, andbasicattentiontoken.org
example | example | example | example | example | example | example | example |
---|---|---|---|---|---|---|---|
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page should be redirected to
brave.com
- Opened a few tabs
- Close
brave.com
tab - Restore the tab
- De-AMPed page loaded
ex1 | ex2 | ex3 |
---|---|---|
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
- Visit
https://www.buzzfeed.com/amphtml/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
De-AMP ing
worked i.e AMP page is redirected tohttps://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- The markup was verified in Testcase 1 for the above AMP page has canonical link to
https://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Keep
Enable De-AMP
flag as a default inbrave://flags/#brave-de-amp
- Visit AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page is not redirected to
brave.com
ex1 | ex2 | ex3 |
---|---|---|
Added See discussion here: https://bravesoftware.slack.com/archives/CHGKGMHDJ/p1650626855897409?thread_ts=1650384586.357469&cid=CHGKGMHDJ. |
@LaurenWags |
Verified
|
Brave | 1.38.83 Chromium: 100.0.4896.79 (Official Build) beta (x86_64) |
---|---|
Revision | 8fb749dcab8700c24213791969e59deb72fee36f-refs/branch-heads/4896@{#1015} |
OS | Ubuntu 18.04 LTS |
Shared steps:
- install
1.38.x
- launch Brave
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Disable Enable De-AMP flag -
brave://flags/#brave-de-amp
- Relaunch Brave
- Visit AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
.- Inspected element and
amp
attribute will be shown in the top level<html amp>
tag for the AMP page and has canonical link that redirects to html
- Inspected element and
- Close the tab and visit another AMP page
https://shivankaul.com/brave/de-amp/test-small-amp-with-lightning.html
- Inspected element and it contains lightning symbol in the top-level
<html ⚡>
tag for the AMP page and has canonical link that redirects to html
- Inspected element and it contains lightning symbol in the top-level
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-no-canonical-link.html
- Inspected element and it doesn't contain any canonical links or top-level tags
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-wrong-scheme.html
- Inspected element for canonical link that is non-HTTP(s) -
<link rel="canonical" href="ipfs://QmcniBv7UQ4gGPQQW2BwbD4ZZHzN3o3tPuNLZCbBchd1zh">
- Inspected element for canonical link that is non-HTTP(s) -
- Close the tab and visit
https://shivankaul.com/brave/de-amp/test-small-amp-same-canonical.html
- Inspected the element and it has canonical link that is pointed to original/same URL
- Close the tab and visit
https://www.buzzfeed.com/amphtml/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Inspected the element and it has canonical link that is pointed
https://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Inspected the element and it has canonical link that is pointed
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Disable
#brave-de-amp
flag inbrave://flags/
- Relaunch the browser
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Inspect the page and it showed
amp
as attribute - Contains
canonical
in the tag - AMP Page is not redirected to
brave.com
Prerequisites for the following testcases:
- Verified
brave://settings/privacy
:Auto-redirect AMP pages
is enabled by default - Verified
Enable De-AMP
is enabled by default inbrave://flags/#brave-de-amp
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
, as it contained the markup for top-level<html amp>
- The markup was verified in Testcase 1 for the above AMP page and
amp
attribute will be shown in the top level<html amp>
tag for the AMP page and hascanonical link
that redirects to html
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp-with-lightning.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
as it contained markup for top-level <html ⚡> tag- The markup was verified in Testcase 1 for the above AMP page has
lightning
<html ⚡> tag and containscanonical
in the tag for redirect
- Visit
https://shivankaul.com/brave/de-amp/test-no-canonical-link.html
De-AMPing
did not work i.e AMP page is not redirected since there is nocanonical link
tag- The markup was verified in Testcase 1, for the above AMP page has no
canonical link
tag hence no redirect available
- Visit
https://shivankaul.com/brave/de-amp/test-wrong-scheme.html
- De-AMPing did not work i.e AMP page is not redirected since the AMP page has canonical link with scheme non HTTP(S)
- Verified in Testcase 1, Step 8, that the above AMP page has canonical link with scheme non HTTP(S)
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp-same-canonical.html
- "De-AMPing did not work i.e AMP page is not redirected since the AMP page has canonical link same as original URL
- Verified in Testcase 1, Step 9, that the above AMP page has canonical link same as original URL
- Visited
example.com
- Visited AMP page in the same tab-
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page is redirected to
brave.com
- Visited
https://basicattentiontoken.org
in the same tab - clicked back in the browser
- Returned to
brave.com
- Clicked back again
- AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
is ignored and is not listed in history - Clicked forward
- User is taken
brave.com
- Clicked forward again
- Returned to
https://basicattentiontoken.org
- AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
is ignored and is not listed in history - Verified the history lists
example.com
,brave.com
, andbasicattentiontoken.org
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page should be redirected to
brave.com
- Opened a few tabs
- Close
brave.com
tab - Restore the tab
- De-AMPed page loaded
- Visit
https://shivankaul.com/brave/de-amp/test-small-amp.html
De-AMPing
worked i.e AMP page is redirected tobrave.com
- Visit
https://www.buzzfeed.com/amphtml/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
De-AMP ing
worked i.e AMP page is redirected tohttps://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- The markup was verified in Testcase 1 for the above AMP page has canonical link to
https://www.buzzfeed.com/ryanschocket2/snl-spoofs-will-smith-chris-rock-slap
- Disable
Auto-redirect AMP pages
inbrave://settings/privacy
- Keep
Enable De-AMP
flag as a default inbrave://flags/#brave-de-amp
- Visit AMP page
https://shivankaul.com/brave/de-amp/test-small-amp.html
- Page is not redirected to
brave.com
- Added the ability to redirect an AMP page to its canonical non-AMP version. ([#20458](brave/brave-browser#20458)) - Added "Select network" field in the Brave Wallet "Add custom asset" modal. ([#21656](brave/brave-browser#21656)) - Added isBraveWallet property to window.ethereum. ([#21949](brave/brave-browser#21949)) - Added the ability to copy Brave Wallet transaction hash from "Transactions" on the "Portfolio" page. ([#19886](brave/brave-browser#19886)) - Added confirmation screen after transaction is approved for Brave Wallet. ([#21733](brave/brave-browser#21733)) - Added bottom padding to the Brave Wallet swap container. ([#21340](brave/brave-browser#21340)) - Added loading skeletons for various areas within Brave Wallet. ([#21339](brave/brave-browser#21339)) - Implemented balance updater interval for Brave Wallet. ([#21304](brave/brave-browser#21304)) - Updated design for Brave Shields. ([#18630](brave/brave-browser#18630)) - Updated IPFS node to go-ipfs v0.12.0. ([#21219](brave/brave-browser#21219)) - Updated adblocking to execute all cosmetic scriptlets even if one fails. ([#21932](brave/brave-browser#21932)) - Updated wording on Brave Wallet backup reminder banner. ([#21312](brave/brave-browser#21312)) - Updated Brave Wallet swap capability to prevent unnecessarily encountering "Too many decimal places" error. ([#21527](brave/brave-browser#21527)) - Updated URL for Brave Wallet Ropsten Test Faucet network. ([#21240](brave/brave-browser#21240)) - Updated Brave Wallet password field to be cleared when an incorrect password is entered. ([#21010](brave/brave-browser#21010)) - Updated "Portfolio" page of Brave Wallet to return all EVM network tokens. ([#20854](brave/brave-browser#20854)) - Updated UI to increase spacing between "Assets" and "Transactions" on "Accounts" subview page of Brave Wallet. ([#21532](brave/brave-browser#21532)) - Updated link text color to blue for Brave Wallet onboarding screen. ([#20302](brave/brave-browser#20302)) - Updated alignment of options available from the Brave Wallet "More" menu. ([#19680](brave/brave-browser#19680)) - Renamed "Monthly Contributions" to "Monthly Tips" for Brave Rewards. ([#20564](brave/brave-browser#20564)) - Removed redirect after adding an account to Brave Wallet from the portfolio asset details screen. ([#19138](brave/brave-browser#19138)) - Removed referral code from P3A reports. ([#21460](brave/brave-browser#21460)) - Fixed unexpected storage cleanup on site close when "Clear cookies and site data when you close all windows" is enabled under brave://settings/cookies. ([#22493](brave/brave-browser#22493)) - Fixed unblocked cookie consent dialogs on some websites when the brave://flags/#brave-adblock-cookie-list-default is enabled. ([#22032](brave/brave-browser#22032)) - Fixed inability to solve Brave Rewards CAPTCHA in certain cases. ([#22180](brave/brave-browser#22180)) - Fixed inability to import MetaMask wallet to Brave Wallet. ([#22492](brave/brave-browser#22492)) - Fixed failed second sign request (eth_signTypedData_v4) for Loopring.io L2 activation when using Brave Wallet. ([#22070](brave/brave-browser#22070)) - Fixed data on "Portfolio" page of Brave Wallet not being properly displayed due to parsing error. ([#21941](brave/brave-browser#21941)) - Fixed broken placeholder icons for ERC721 tokens on Brave Wallet "Account" page. ([#21549](brave/brave-browser#21549)) - Fixed "JSON data is not expected" when trying to import a crypto wallet into Brave Wallet in certain cases. ([#19526](brave/brave-browser#19526)) - Fixed Brave Wallet network selector list being partially blurred on page load. ([#21423](brave/brave-browser#21423)) - Fixed Brave Wallet "Add Custom Asset" modal incorrectly being populated with previously added custom token details. ([#21337](brave/brave-browser#21337)) - Fixed EIP-1559 gas oracle incorrectly firing on non-EIP-1559 networks for Brave Wallet. ([#21107](brave/brave-browser#21107)) - Fixed Brave Wallet percentage selector remaining selected when input value was updated. ([#20315](brave/brave-browser#20315)) - Fixed Speedreader icon incorrectly disappearing in certain cases. ([#18243](brave/brave-browser#18243)) - Fixed inability to exit reader mode when Speedreader is disabled. ([#18242](brave/brave-browser#18242)) - Upgraded Chromium to 101.0.4951.41. ([#22431](brave/brave-browser#22431)) ([Changelog for 101.0.4951.41](https://chromium.googlesource.com/chromium/src/+log/100.0.4896.127..101.0.4951.41?pretty=fuller&n=1000))
We’d like to redirect Brave users from AMP pages to the canonical/non-AMP version of the page.
This issue captures only the first part of a complete De-AMP solution i.e. if the user tries to clicks on a link/tries to load a page that has AMP markup and contains a canonical link, then load the canonical link instead.
The plan is for this to be opt-out with a new setting in Security & Privacy section in brave://settings, controlled by Griffin.
The text was updated successfully, but these errors were encountered: