Commit 98b2af78 authored by Orin Jaworski's avatar Orin Jaworski Committed by Commit Bot

Update default search engines list per country from new data

The default search engine (DSE) list is being refreshed from recently
collected data.  This CL is focusing first on countries for which a
DSE list is already in place.  Existing engine registrations will be
kept intact, and only new engines are being added.  The list of engine
references for each country is being completely replaced based on new
usage statistics, and unreferenced engine registrations are removed.

Bug: 783890
Change-Id: Ie13eaa91d4a62eb581375f6dc00c556c7c536885
Reviewed-on: https://chromium-review.googlesource.com/c/1345542Reviewed-by: default avatarPeter Kasting <pkasting@chromium.org>
Reviewed-by: default avatarJustin Donnelly <jdonnelly@chromium.org>
Commit-Queue: Orin Jaworski <orinj@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615987}
parent 297c4e75
......@@ -8,16 +8,10 @@
// Engine definitions. See prepopulated_engines_schema.json for the field
// definitions.
// The following unique IDs are available:
// 7, 11, 12, 13, 14, 18, 19, 20, 22, 24, 26, 28, 29, 30, 32, 33, 34, 39, 37,
// 38, 40, 41, 42, 46, 47, 48, 49, 51, 52, 58, 59, 69, 71, 72, 82, 84, 86,
// 91+
//
// IDs > 1000 are reserved for distribution custom engines.
//
// NOTES:
// - CHANGE THE ABOVE NUMBERS IF YOU ADD A NEW ENGINE; ID conflicts = bad!
// - Make sure you update the int_variables below as required.
// - CHANGE THE BELOW NUMBERS IF YOU ADD A NEW ENGINE; ID conflicts = bad!
// - Make sure you update the int_variables below as described in comments.
// - IDs > 1000 are reserved for distribution custom engines.
// - NOTIFY the Chrome Webstore team if you add/delete a search engine or
// change domain of an existing one (send email to webstore-eng@google.com).
// They need to know the mapping between an engine's "id" and its URLs.
......@@ -26,28 +20,20 @@
{
"int_variables": {
// The following id is for UMA stats only. Please update it if you add new
// engines outside the current range or it will not be counted in stats.
"kMaxPrepopulatedEngineID": 90,
// When adding new engines, increment this number and use it as the new
// max ID. This is used by UMA stats and must be updated to include the full
// range or else not all engines will be counted in stats.
"kMaxPrepopulatedEngineID": 94,
// Increment this if you change the data in ways that mean users with
// existing data should get a new version.
"kCurrentDataVersion": 103
// existing data should get a new version. Otherwise, existing data may
// continue to be used and updates made here will not always appear.
"kCurrentDataVersion": 109
},
// The following engines are included in country lists and are added to the
// list of search engines on the first run depending on user's country.
"elements": {
"aol": {
"name": "AOL",
"keyword": "aol.com",
"favicon_url": "https://search.aol.com/favicon.ico",
"search_url": "https://search.aol.com/aol/search?q={searchTerms}",
"suggest_url": "https://autosuggest.search.aol.com/autocomplete/get?output=json&it=&q={searchTerms}",
"type": "SEARCH_ENGINE_AOL",
"id": 35
},
// Ask and Ask UK have suggestion URLs reachable over HTTPS, but they
// throw a certificate error, so those will remain as HTTP for now.
"ask": {
......@@ -60,25 +46,6 @@
"id": 4
},
"ask_br": {
"name": "Ask Brasil",
"keyword": "br.ask.com",
"favicon_url": "https://sp.br.ask.com/sh/i/a14/favicon/favicon.ico",
"search_url": "https://br.ask.com/web?q={searchTerms}",
"type": "SEARCH_ENGINE_ASK",
"id": 4
},
"ask_uk": {
"name": "Ask Jeeves",
"keyword": "uk.ask.com",
"favicon_url": "https://sp.uk.ask.com/sh/i/a16/favicon/favicon.ico",
"search_url": "https://uk.ask.com/web?q={searchTerms}",
"suggest_url": "http://ss.uk.ask.com/query?q={searchTerms}&li=ff",
"type": "SEARCH_ENGINE_ASK",
"id": 4
},
// Baidu's suggestion URL is not reachable over HTTPS, so it remains as
// HTTP for now.
"baidu": {
......@@ -109,6 +76,15 @@
"id": 3
},
"coccoc": {
"name": "Cốc Cốc",
"keyword": "coccoc.com",
"favicon_url": "http://coccoc.com/favicon.ico",
"search_url": "http://coccoc.com/search#query={searchTerms}",
"type": "SEARCH_ENGINE_COCCOC",
"id": 91
},
"daum": {
"name": "Daum",
"keyword": "daum.net",
......@@ -119,6 +95,16 @@
"id": 68
},
"duckduckgo": {
"name": "DuckDuckGo",
"keyword": "duckduckgo.com",
"favicon_url": "https://duckduckgo.com/favicon.ico",
"search_url": "https://duckduckgo.com/?q={searchTerms}",
"suggest_url": "https://duckduckgo.com/ac/?q={searchTerms}&type=list",
"type": "SEARCH_ENGINE_DUCKDUCKGO",
"id": 92
},
"google": {
"name": "Google",
"keyword": "google.com",
......@@ -140,15 +126,6 @@
"id": 1
},
"kvasir": {
"name": "Kvasir",
"keyword": "kvasir.no",
"favicon_url": "https://kvasir.no/grafikk/favicon.ico",
"search_url": "https://kvasir.no/alle?q={searchTerms}",
"type": "SEARCH_ENGINE_KVASIR",
"id": 73
},
"mail_ru": {
"name": "@MAIL.RU",
"keyword": "mail.ru",
......@@ -163,15 +140,6 @@
"id": 83
},
"najdi": {
"name": "Najdi.si",
"keyword": "najdi.si",
"favicon_url": "https://www.najdi.si/assets/PROD-1.5.16/ctx/images/favicon.ico",
"search_url": "https://www.najdi.si/search.jsp?q={searchTerms}",
"type": "SEARCH_ENGINE_NAJDI",
"id": 87
},
"naver": {
"name": "\ub124\uc774\ubc84",
"keyword": "naver.com",
......@@ -182,13 +150,23 @@
"id": 67
},
"onet": {
"name": "Onet.pl",
"keyword": "onet.pl",
"favicon_url": "https://szukaj.onet.pl/favicon.ico",
"search_url": "https://szukaj.onet.pl/wyniki.html?qt={searchTerms}",
"type": "SEARCH_ENGINE_ONET",
"id": 75
"parsijoo": {
"name": "پارسی جو",
"keyword": "parsijoo.ir",
"favicon_url": "http://cdn.parsijoo.ir/content3/images/1.0/favicon.ico",
"search_url": "http://parsijoo.ir/web?q={searchTerms}",
"type": "SEARCH_ENGINE_PARSIJOO",
"id": 93
},
"qwant": {
"name": "Qwant",
"keyword": "qwant.com",
"favicon_url": "https://www.qwant.com/favicon.ico",
"search_url": "https://www.qwant.com/?q={searchTerms}&client=opensearch",
"suggest_url": "https://api.qwant.com/api/suggest/?q={searchTerms}&client=opensearch",
"type": "SEARCH_ENGINE_QWANT",
"id": 94
},
"seznam": {
......@@ -228,25 +206,6 @@
"id": 56
},
"vinden": {
"name": "Vinden.nl",
"keyword": "vinden.nl",
"favicon_url": "https://www.vinden.nl/favicon.ico",
"search_url": "https://www.vinden.nl/?q={searchTerms}",
"type": "SEARCH_ENGINE_VINDEN",
"id": 53
},
"virgilio": {
"name": "Virgilio",
"keyword": "virgilio.it",
"favicon_url": "http://ricerca.virgilio.it/common/favicon.ico",
"search_url": "http://ricerca.virgilio.it/ricerca?qs={searchTerms}",
"encoding": "ISO-8859-1",
"type": "SEARCH_ENGINE_VIRGILIO",
"id": 62
},
"yahoo": {
"name": "Yahoo!",
"keyword": "yahoo.com",
......@@ -385,17 +344,9 @@
"search_url": "https://fr.search.yahoo.com/search{google:pathWildcard}?ei={inputEncoding}&fr=crmas&p={searchTerms}",
"suggest_url": "https://fr.search.yahoo.com/sugg/chrome?output=fxjson&appid=crmas&command={searchTerms}",
"type": "SEARCH_ENGINE_YAHOO",
"id": 5 // Can't be 2 as this has to appear in the Belgium list alongside
// yahoo.
},
"yahoo_gr": {
"name": "Yahoo! \u0395\u03bb\u03bb\u03ac\u03b4\u03b1\u03c2",
"keyword": "gr.yahoo.com",
"favicon_url": "https://gr.search.yahoo.com/favicon.ico",
"search_url": "https://gr.search.yahoo.com/search{google:pathWildcard}?ei={inputEncoding}&fr=crmas&p={searchTerms}",
"type": "SEARCH_ENGINE_YAHOO",
"id": 2
// Can't be 2 as this has to appear in the Belgium list alongside yahoo.
"id": 5
},
"yahoo_hk": {
......@@ -438,15 +389,6 @@
"id": 2
},
"yahoo_maktoob": {
"name": "Yahoo!\u200e \u0645\u0643\u062a\u0648\u0628",
"keyword": "maktoob.yahoo.com",
"favicon_url": "https://maktoob.search.yahoo.com/favicon.ico",
"search_url": "https://maktoob.search.yahoo.com/search{google:pathWildcard}?ei={inputEncoding}&fr=crmas&p={searchTerms}",
"type": "SEARCH_ENGINE_YAHOO",
"id": 2
},
"yahoo_mx": {
"name": "Yahoo! M\u00e9xico",
"keyword": "mx.yahoo.com",
......@@ -514,17 +456,9 @@
"search_url": "https://qc.search.yahoo.com/search{google:pathWildcard}?ei={inputEncoding}&fr=crmas&p={searchTerms}",
"suggest_url": "https://qc.search.yahoo.com/sugg/chrome?output=fxjson&appid=crmas&command={searchTerms}",
"type": "SEARCH_ENGINE_YAHOO",
"id": 5 // Can't be 2 as this has to appear in the Canada list alongside
// yahoo_ca.
},
"yahoo_ro": {
"name": "Yahoo! Rom\u00e2nia",
"keyword": "ro.yahoo.com",
"favicon_url": "https://ro.search.yahoo.com/favicon.ico",
"search_url": "https://ro.search.yahoo.com/search{google:pathWildcard}?ei={inputEncoding}&fr=crmas&p={searchTerms}",
"type": "SEARCH_ENGINE_YAHOO",
"id": 2
// Can't be 2 as this has to appear in the Canada list alongside yahoo_ca.
"id": 5
},
"yahoo_se": {
......@@ -619,6 +553,18 @@
"id": 15
},
"yandex_com": {
"name": "Yandex",
"keyword": "yandex.com",
"favicon_url": "https://yastatic.net/lego/_/rBTjd6UOPk5913OSn5ZQVYMTQWQ.ico",
"search_url": "https://yandex.com/search/?text={searchTerms}&from=os&clid=1836588",
"suggest_url": "https://suggest.yandex.com/suggest-ff.cgi?part={searchTerms}&uil=en&v=3&sn=5",
"image_url": "https://yandex.com/images/search?rpt=imageview",
"image_url_post_params": "upfile={google:imageThumbnail},original_width={google:imageOriginalWidth},original_height={google:imageOriginalHeight},prg=1",
"type": "SEARCH_ENGINE_YANDEX",
"id": 15
},
"yandex_kz": {
"name": "\u042f\u043d\u0434\u0435\u043a\u0441",
"keyword": "yandex.kz",
......
......@@ -14,7 +14,7 @@
enum SearchEngineType {
// Prepopulated engines.
SEARCH_ENGINE_UNKNOWN = -1,
SEARCH_ENGINE_OTHER = 0, // At the top in case of future list changes.
SEARCH_ENGINE_OTHER = 0, // At the top in case of future list changes.
SEARCH_ENGINE_AOL,
SEARCH_ENGINE_ASK,
SEARCH_ENGINE_ATLAS,
......@@ -63,7 +63,12 @@ enum SearchEngineType {
SEARCH_ENGINE_YANDEX,
SEARCH_ENGINE_ZOZNAM,
SEARCH_ENGINE_360,
SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro.
SEARCH_ENGINE_COCCOC,
SEARCH_ENGINE_DUCKDUCKGO,
SEARCH_ENGINE_PARSIJOO,
SEARCH_ENGINE_QWANT,
SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro.
};
#endif // COMPONENTS_SEARCH_ENGINES_SEARCH_ENGINE_TYPE_H_
......@@ -397,11 +397,12 @@ void CheckTemplateUrlRefIsCryptographic(const TemplateURLRef& url_ref) {
} // namespace
TEST_F(TemplateURLPrepopulateDataTest, HttpsUrls) {
// Preexisting search engines that don't use HTTPS URLs.
// Don't add new entries to this list!
// Search engines that don't use HTTPS URLs.
// Since Chrome and the Internet are trying to transition from HTTP to HTTPS,
// please get approval from a PM before entering new HTTP exceptions here.
std::set<int> exceptions{
4, 6, 16, 17, 21, 27, 35, 36, 43, 44, 45, 50, 54, 55, 56, 60, 61,
62, 63, 64, 65, 66, 68, 70, 74, 75, 76, 77, 78, 79, 80, 81, 85, 90,
4, 6, 16, 17, 21, 27, 35, 36, 43, 44, 45, 50, 54, 55, 56, 60, 61, 62,
63, 64, 65, 66, 68, 70, 74, 75, 76, 77, 78, 79, 80, 81, 85, 90, 91, 93,
};
using PrepopulatedEngine = TemplateURLPrepopulateData::PrepopulatedEngine;
const std::vector<const PrepopulatedEngine*> all_engines =
......@@ -449,12 +450,13 @@ TEST_F(TemplateURLPrepopulateDataTest, FindGoogleIndex) {
EXPECT_EQ(index, size_t{0});
EXPECT_EQ(urls[index]->prepopulate_id, kGoogleId);
// TODO(orinj): Google is not first in CN; confirm it is found at index > 0.
// Google is not first in CN; confirm it is found at index > 0.
// If Google ever does reach top in China, this test will need to be adjusted:
// check template_url_prepopulate_data.cc reference orders (engines_CN, etc.)
// to find a suitable country and index.
prefs_.SetInteger(country_codes::kCountryIDAtInstall, 'C' << 8 | 'N');
urls = TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_, &index);
EXPECT_EQ(index, size_t{0});
EXPECT_GT(index, size_t{0});
EXPECT_LT(index, urls.size());
EXPECT_EQ(urls[index]->prepopulate_id, kGoogleId);
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment