Skip to content
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

Version 1.10.0 #1541

Closed
wants to merge 62 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
47b1061
replace IconComponent usages with iconPartial (#1445)
oshi97 Jun 30, 2021
f758e35
add icons/bakedInIcon partial (#1451)
oshi97 Jul 1, 2021
d617ea9
Added universalLimit to universal searches. (#1444)
cjiang2000 Jul 2, 2021
ff7dded
rename bakedInIcon partial to builtInIcon (#1458)
oshi97 Jul 6, 2021
d43a50c
use package-lock.json for cache instead of package.json (#1457)
oshi97 Jul 6, 2021
7c7f4bc
build develop with i18n assets (#1459)
oshi97 Jul 7, 2021
889d0a9
Properly implemented sessionTrackingEnabled (#1452)
cjiang2000 Jul 7, 2021
6d703a6
Add loading indicator to SDK (#1453)
yen-tt Jul 8, 2021
5b3f76c
Spellcheck integration testing (#1454)
cea2aj Jul 12, 2021
a33850d
Merge branch 'master' into develop
oshi97 Jul 12, 2021
3c4b5d3
Query Source Setter (#1464)
cea2aj Jul 13, 2021
733ae8d
Created SessionId Testing
cjiang2000 Jul 14, 2021
da7a538
Testcafe acceptance test wait for results (#1465)
yen-tt Jul 15, 2021
af0bfcf
add opacity to DirectAnswer during search loading state (#1466)
yen-tt Jul 15, 2021
e3914df
await logger results (#1467)
yen-tt Jul 15, 2021
89a132d
bump browserslist (#1469)
oshi97 Jul 15, 2021
977e66b
update scss to use math.div instead of slash division (#1472)
oshi97 Jul 16, 2021
5cd7fda
fix waitOnSearchComplete loop issue (#1470)
yen-tt Jul 16, 2021
e4cccdc
add locale defaulting for SpeechRecognition and support check method …
oshi97 Jul 17, 2021
ae9c763
handle plural form not being present + error message (#1471)
oshi97 Jul 17, 2021
6361dc3
Voice Search Icon (#1473)
cea2aj Jul 20, 2021
ddb58c2
add no-unsafe-eval percy snapshot (#1474)
oshi97 Jul 21, 2021
7065ae3
fix unsafe-eval snapshot (#1477)
oshi97 Jul 21, 2021
170c757
Add translations POT file (#1475)
cea2aj Jul 21, 2021
356ceb2
State Machine for SearchBar Icon (#1478)
yen-tt Jul 26, 2021
a90215a
merge DA on vertical search feature (#1483)
yen-tt Jul 27, 2021
0b0123f
Support providerOptions on the map (#1484)
cea2aj Jul 27, 2021
a36628c
Don't require translation verification on develop and dev branches (#…
cea2aj Jul 27, 2021
5daf975
testcafe acceptance test: concurrency and browser update (#1481)
yen-tt Jul 27, 2021
4062ace
Speech Recognition (#1487)
cea2aj Jul 28, 2021
7270dc7
Update translation check (#1488)
cea2aj Jul 28, 2021
b4d678f
Speech recognition integration test (#1486)
cea2aj Jul 29, 2021
d03be2e
Merge branch 'master' into develop
oshi97 Jul 29, 2021
cc28f08
Voice search async fix (#1490)
cea2aj Jul 30, 2021
fe89c5d
RTL language support in map (#1492)
yen-tt Jul 30, 2021
5896a4b
Update DOM.once to work with ie11 (#1495)
yen-tt Jul 30, 2021
dea3a62
Add RTL CSS bundle (#1493)
cea2aj Jul 30, 2021
6dbbf0a
Flip chevrons on RTL (#1494)
cea2aj Jul 30, 2021
b84e3ec
Listening dot CSS classes (#1500)
cea2aj Aug 2, 2021
5722f4f
Don't run dots animation when hidden (#1503)
cea2aj Aug 3, 2021
22c0a88
Set fixed custom icon width (#1504)
cea2aj Aug 3, 2021
3eb3335
Disable loading icon when inactive (#1502)
cea2aj Aug 4, 2021
c431861
Display email validation error in QuestionSubmission (#1505)
yen-tt Aug 5, 2021
f50e084
Create multi entry points for SDK bundles (#1501)
yen-tt Aug 6, 2021
fe2e360
change sessionStorage console.error to warning instead (#1509)
oshi97 Aug 16, 2021
f5edead
Fix inverted check mark in filter (#1510)
yen-tt Aug 16, 2021
e7eb7a9
Summer language updates (#1511)
tmeyer2115 Aug 17, 2021
244e908
Automate update to third party notice file (#1508)
yen-tt Aug 17, 2021
766f613
Update the `LANGUAGES_TO_LOCALES` map with the new language/locale pa…
tmeyer2115 Aug 17, 2021
fecf8e5
add voice search and loading indicator to SDK's README (#1514)
yen-tt Aug 17, 2021
7d35d6d
Safari specific voice search alert message (#1513)
oshi97 Aug 18, 2021
126897b
Stand-alone `SearchBar` assets. (#1516)
tmeyer2115 Aug 18, 2021
ac8a6b8
Add the translations for the new invalid email errors. (#1521)
tmeyer2115 Aug 19, 2021
cfdd197
rename zh-CN to zh-Hans and zh-TW to zh-Hant (#1517)
oshi97 Aug 18, 2021
c42509c
update edge supported locales for voice search (#1519)
oshi97 Aug 19, 2021
fdfd847
Merge pull request #1523 from yext/feature/chinese-i18n
oshi97 Aug 19, 2021
83581ca
Update locale parsing (#1520)
cea2aj Aug 19, 2021
2a0199a
Additional Language Map Support (#1525)
cea2aj Aug 19, 2021
14b39e1
Search bar only asset deployment (#1529)
cea2aj Aug 24, 2021
cde22bb
Update Answers Core Library to v1.3.0 (#1540)
cea2aj Aug 24, 2021
8c648d7
1.10.0
oshi97 Aug 24, 2021
6e7b568
Automated update to THIRD-PARTY-NOTICES from github action's 3rd part…
github-actions[bot] Aug 24, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 121 additions & 41 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ commands:
# Download and cache dependencies
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
- v2-dependencies-{{ checksum "package-lock.json" }}
# fallback to using the latest cache if no exact match is found
- v1-dependencies-
- v2-dependencies-
- run: npm install
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ checksum "package.json" }}
key: v2-dependencies-{{ checksum "package-lock.json" }}
deploy-to-aws:
description: "Deploys the dist directory to a given subdirectory of the answers bucket"
parameters:
Expand All @@ -27,6 +27,9 @@ commands:
cache-control:
type: string
default: "no-cache"
deploy-bucket:
type: string
default: answers
steps:
- attach_workspace:
at: ~/answers
Expand All @@ -38,7 +41,7 @@ commands:
echo -e $AWS_PROD_PROFILE >> ~/.aws/config
- aws-s3/copy:
from: dist
to: '${AWS_DEPLOY_BUCKET}<< parameters.subdirectory >>'
to: 's3://assets.sitescdn.net/<< parameters.deploy-bucket >><< parameters.subdirectory >>'
arguments: |
--acl public-read \
--cache-control << parameters.cache-control >> \
Expand Down Expand Up @@ -71,6 +74,18 @@ jobs:
paths:
- dist
- .circleci
build_search_bar:
docker:
- image: circleci/node:14.5
working_directory: ~/answers
steps:
- setup-workspace
- run: npm run build-search-bar-only
- persist_to_workspace:
root: .
paths:
- dist
- .circleci
# run the jest unit tests
unit_test:
docker:
Expand All @@ -91,7 +106,18 @@ jobs:
- setup-workspace
- attach_workspace:
at: ~/answers
- run: npx testcafe chrome:headless,firefox:headless tests/acceptance/acceptancesuites/*.js -q
- run: ./.circleci/run_headless_acceptance.sh
headless_acceptance_test_search_bar:
docker:
- image: circleci/node:14.5-browsers
working_directory: ~/answers
steps:
- setup-workspace
- attach_workspace:
at: ~/answers
- run:
name: Search Bar Acceptance Tests
command: npx testcafe -c 3 "chrome:headless,firefox:headless" --config-file ./.circleci/testcafe_search_bar.json -q
# run the browserstack testcafe acceptance tests
browserstack_acceptance_test:
docker:
Expand All @@ -102,22 +128,17 @@ jobs:
- attach_workspace:
at: ~/answers
- run: ./.circleci/run_browserstack_acceptance.sh
# verify all translations are present
translation_test:
useragent_acceptance_test:
docker:
- image: circleci/node:14.5
- image: circleci/node:14.5-browsers
working_directory: ~/answers
steps:
- setup-workspace
- attach_workspace:
at: ~/answers
- run:
name: Verify translation files
command: |
sudo apt-get install -qq gettext
./.circleci/run_translation_verification.sh
# verify that the third party notices file is up to date
third_party_notices_test:
- run: ./.circleci/run_useragent_acceptance.sh
# verify all translations are present
translation_test:
docker:
- image: circleci/node:14.5
working_directory: ~/answers
Expand All @@ -126,8 +147,10 @@ jobs:
- attach_workspace:
at: ~/answers
- run:
name: Verify third party notices
command: ./.circleci/validate_third_party_notices.sh
name: Verify translation files
command: |
sudo apt-get install -qq gettext
./.circleci/run_translation_verification.sh
# deploy to S3 in the root folder, overwriting the existing latest version
deploy_latest:
docker:
Expand Down Expand Up @@ -177,6 +200,29 @@ jobs:
- deploy-to-aws:
subdirectory: '/${MAJOR_VERSION}'
cache-control: 'max-age=43200'
# deploys assets to a long-lived-cache folder in the S3 bucket named by release tag
deploy_search_bar_version:
docker:
- image: circleci/python:2.7
working_directory: ~/answers
steps:
- deploy-to-aws:
deploy-bucket: 'answers-search-bar'
subdirectory: '/${CIRCLE_TAG##search-bar-}'
cache-control: 'max-age=31536000'
- run:
name: "Get major and minor version substrings"
command: |
echo "export MINOR_VERSION="$(echo "${CIRCLE_TAG##search-bar-}" | cut -d '.' -f 1,2)"" >> $BASH_ENV
echo "export MAJOR_VERSION="$(echo "${CIRCLE_TAG##search-bar-}" | cut -d '.' -f 1)"" >> $BASH_ENV
- deploy-to-aws:
deploy-bucket: 'answers-search-bar'
subdirectory: '/${MINOR_VERSION}'
cache-control: 'max-age=43200'
- deploy-to-aws:
deploy-bucket: 'answers-search-bar'
subdirectory: '/${MAJOR_VERSION}'
cache-control: 'max-age=43200'
workflows:
version: 2
build_and_deploy:
Expand All @@ -185,6 +231,7 @@ workflows:
filters:
branches:
ignore:
- develop
- master
- /^support\/.*/
- /^hotfix\/.*/
Expand All @@ -199,39 +246,25 @@ workflows:
- browserstack_acceptance_test:
requires:
- build
- translation_test:
- useragent_acceptance_test:
requires:
- build
- third_party_notices_test:
- translation_test:
requires:
- build
- deploy_canary:
filters:
branches:
only: develop
requires:
- unit_test
- headless_acceptance_test
- browserstack_acceptance_test
- translation_test
- third_party_notices_test
- deploy_branch:
filters:
branches:
ignore:
- develop
requires:
- unit_test
- browserstack_acceptance_test
- useragent_acceptance_test
- headless_acceptance_test
- translation_test
- third_party_notices_test
build_and_deploy_i18n:
jobs:
- build_i18n:
filters:
branches:
only:
- develop
- /^support\/.*/
- /^hotfix\/.*/
- /^feature\/.*-i18n/
Expand All @@ -245,19 +278,32 @@ workflows:
- browserstack_acceptance_test:
requires:
- build_i18n
- translation_test:
- useragent_acceptance_test:
requires:
- build_i18n
- third_party_notices_test:
- translation_test:
requires:
- build_i18n
- deploy_branch:
filters:
branches:
ignore:
- develop
requires:
- unit_test
- browserstack_acceptance_test
- useragent_acceptance_test
- headless_acceptance_test
- translation_test
- third_party_notices_test
- deploy_canary:
filters:
branches:
only: develop
requires:
- unit_test
- headless_acceptance_test
- browserstack_acceptance_test
- useragent_acceptance_test
build_and_deploy_hold:
jobs:
- build_i18n:
Expand Down Expand Up @@ -285,13 +331,13 @@ workflows:
only: /^v.*/
requires:
- build_i18n
- translation_test:
- useragent_acceptance_test:
filters:
tags:
only: /^v.*/
requires:
- build_i18n
- third_party_notices_test:
- translation_test:
filters:
tags:
only: /^v.*/
Expand All @@ -305,9 +351,9 @@ workflows:
requires:
- unit_test
- browserstack_acceptance_test
- useragent_acceptance_test
- headless_acceptance_test
- translation_test
- third_party_notices_test
- deploy_latest:
filters:
branches:
Expand All @@ -322,3 +368,37 @@ workflows:
ignore: /.*/
requires:
- hold
build_and_deploy_search_bar:
jobs:
- build_search_bar:
filters:
tags:
only: /^search-bar-v.*/
branches:
ignore: /.*/
- headless_acceptance_test_search_bar:
filters:
tags:
only: /^search-bar-v.*/
requires:
- build_search_bar
- translation_test:
filters:
tags:
only: /^search-bar-v.*/
requires:
- build_search_bar
- hold:
type: approval
filters:
tags:
only: /^search-bar-v.*/
requires:
- headless_acceptance_test_search_bar
- translation_test
- deploy_search_bar_version:
filters:
tags:
only: /^search-bar-v.*/
requires:
- hold
10 changes: 9 additions & 1 deletion .circleci/run_browserstack_acceptance.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,12 @@ export BROWSERSTACK_BUILD_ID="${CIRCLE_BRANCH} - ${CIRCLE_BUILD_NUM}"
COMMIT_MSG_TITLE=$(git log -n 1 --pretty=format:%s)
export BROWSERSTACK_TEST_RUN_NAME=$COMMIT_MSG_TITLE

npx testcafe "browserstack:ie@11.0,browserstack:safari" tests/acceptance/acceptancesuites/*.js -q
if [[ $CIRCLE_BRANCH == release/*
|| $CIRCLE_BRANCH == hotfix/*
|| $CIRCLE_BRANCH == master
|| $CIRCLE_BRANCH == support/* ]]
then
npx testcafe "browserstack:ie@11.0,browserstack:safari" --config-file ./.circleci/testcafe.json -q
else
npx testcafe -c 2 "browserstack:ie@11.0" --config-file ./.circleci/testcafe.json -q
fi
11 changes: 11 additions & 0 deletions .circleci/run_headless_acceptance.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/bash

if [[ $CIRCLE_BRANCH == release/*
|| $CIRCLE_BRANCH == hotfix/*
|| $CIRCLE_BRANCH == master
|| $CIRCLE_BRANCH == support/* ]]
then
npx testcafe -c 3 "chrome:headless,firefox:headless" --config-file ./.circleci/testcafe.json -q
else
npx testcafe -c 3 "chrome:headless" --config-file ./.circleci/testcafe.json -q
fi
28 changes: 24 additions & 4 deletions .circleci/run_translation_verification.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,29 @@
#!/bin/bash

# Verifiy that the messages.pot file in the repo is up to date
# If there are any git diffs after translations are extracted, the checked-in file is out of date
npm run extract-translations
git diff --exit-code conf/i18n/translations/messages.pot > /dev/null # send stdout to /dev/null to reduce clutter in the CI output
diff_exit_code=$?

cd conf/i18n/translations
if test $diff_exit_code -eq 1
then
echo "Extracted translations are out of date. Run 'npm run extract-translations' and commit the updated pot file."
exit 1
else
echo "The messages.pot translation file is up to date."
fi

for po_file in *.po
do msgcmp $po_file messages.pot
done
# Verify that translations are present for all languages
cd conf/i18n/translations
if [[ $CIRCLE_BRANCH == release/*
|| $CIRCLE_BRANCH == hotfix/*
|| $CIRCLE_BRANCH == master
|| $CIRCLE_BRANCH == support/* ]]
then
for po_file in *.po
do msgcmp $po_file messages.pot
done
else
echo "Skipping the verification that all translations are present"
fi
8 changes: 8 additions & 0 deletions .circleci/run_useragent_acceptance.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/bash
export BROWSERSTACK_USE_AUTOMATE="1"
export BROWSERSTACK_PROJECT_NAME="Answers SDK"
export BROWSERSTACK_BUILD_ID="${CIRCLE_BRANCH} - ${CIRCLE_BUILD_NUM}"
COMMIT_MSG_TITLE=$(git log -n 1 --pretty=format:%s)
export BROWSERSTACK_TEST_RUN_NAME=$COMMIT_MSG_TITLE

npx testcafe chrome:headless,firefox:headless,browserstack:safari,browserstack:edge tests/acceptance/useragent/useragentsuite.js --config-file ./.circleci/testcafe.json
5 changes: 5 additions & 0 deletions .circleci/testcafe.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"src": ["tests/acceptance/acceptancesuites/*.js", "!tests/acceptance/acceptancesuites/searchbaronlysuite.js"],
"appCommand": "npx serve -l tcp://0.0.0.0:9999",
"appInitDelay": 4000
}
5 changes: 5 additions & 0 deletions .circleci/testcafe_search_bar.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"src": ["tests/acceptance/acceptancesuites/searchbaronlysuite.js"],
"appCommand": "npx serve -l tcp://0.0.0.0:9999",
"appInitDelay": 4000
}
Loading