Closed compulim closed 11 months ago
botframework-directlinejs
0.15.4
4.15.9
CHANGELOG.md
npm version --no-git-tag-version 4.15.9
main
3eeebe4
true
BotFramework-WebChat-daily
365887
3eeebe49
WebChat-release-testing
Push-Release-Testing-to-GitHub-Pages
490
/packages/
/samples/
The test should run against the build artifacts from Azure Pipelines.
webchat-release-testing
qfe
git status
git pull
/package.json
/package-lock.json
git log
git tag v4.15.9
git push -u upstream v4.15.9
for file in $(ls *.js); do echo $file $(cat $file | openssl dgst -sha384 -binary | openssl base64 -A); done
curl -H 'Accept-Encoding: gzip' https://cdn.botframework.com/botframework-webchat/4.15.9/webchat.js | gunzip - | openssl dgst -sha384 -binary | openssl base64 -A
stats.json
webchat-release-testing/drops
curl -LO https://registry.npmjs.org/botframework-directlinespeech-sdk/-/botframework-directlinespeech-sdk-4.15.9.tgz curl -LO https://registry.npmjs.org/botframework-webchat/-/botframework-webchat-4.15.9.tgz curl -LO https://registry.npmjs.org/botframework-webchat-core/-/botframework-webchat-core-4.15.9.tgz curl -LO https://registry.npmjs.org/botframework-webchat-api/-/botframework-webchat-api-4.15.9.tgz curl -LO https://registry.npmjs.org/botframework-webchat-component/-/botframework-webchat-component-4.15.9.tgz
[[PROD]]Push-WebChat-to-npmjs
47
[[PROD]]Push-WebChat-to-Prod-CDN-with-approval
51
320590
[x] Test using webchat-release-testing
01.create-react-app
01.create-react-app/node_modules
npm install
npm install botframework-webchat@4.15.9
npm run build
[x] Others
Using script tags from https://github.com/microsoft/BotFramework-WebChat/releases/tag/v4.15.9, with subresource integrity
<script crossorigin="anonymous" integrity="sha384-kr+6QqBRD45fWiraMYzQdm0CpHzmKMtNk0gRLBVqa379eQdjCHNnm8jfmAhiOQnI" src="https://cdn.botframework.com/botframework-webchat/4.15.9/webchat.js" ></script> <script crossorigin="anonymous" integrity="sha384-04jpTOxuj3fbYmyDC2/jU3rdwhoC4OWnNbo6zh6RNEq+qvzNggRWDzdN788GnXs6" src="https://cdn.botframework.com/botframework-webchat/4.15.9/webchat-es5.js" ></script> <script crossorigin="anonymous" integrity="sha384-nCB7vnhkKK/wLHWq8fqOaZM5YlsR0X/6FcS31MOnl7aYmMB+qo3qPp0hacahdAbN" src="https://cdn.botframework.com/botframework-webchat/4.15.9/webchat-minimal.js" ></script>
npx serve
These are chores that we should do before starting the cycle to reduce ripple effects if we do it in mid-cycle.
Tips:
node_modules
git clean -fdx
package-lock.json
component/package.json
botframework-webchat-core
package.json
This list should be copied to versions in the future.
git checkout main
git cherry-pick XXX
4.15.10-0
npm version prepatch --no-git-tag-version
servicingPlan.json
npm init
In PR #4647, we are bumping most dependencies to latest version.
After bumping, if a package broke compatibility, we should investigate: Upgrade our code to use the latest package if possible, otherwise; Add it to package.json/skipBump to prevent bumping deliberately: Skipping bump incur unpredictable technical debts, say, security issue found in the unsupported version, causing us slow to react Plausible reasons (non-exhaustive): Package is not ES5; Package is ESM and requires the whole dependency chain to be upgraded, however, it is technically impossible (unrelated to cost).
After bumping, if a package broke compatibility, we should investigate:
package.json/skipBump
npm run bump
npm audit fix
microsoft-cognitiveservices-speech-sdk
The Docker image can be found at root docker-compose.yml and Dockerfile*.
docker-compose.yml
Dockerfile*
Obsoleted by #4954.
Checklist
Build
botframework-directlinejs
to0.15.4
4.15.9
CHANGELOG.md
to mark specific changes in4.15.9
npm version --no-git-tag-version 4.15.9
main
, the PR number is #48343eeebe4
true
BotFramework-WebChat-daily
365887
and commit is3eeebe49
WebChat-release-testing
pipeline to completePush-Release-Testing-to-GitHub-Pages
490
/packages/
folder/samples/
folder, as they are pointing to previous version of Web ChatWebChat-release-testing
as neededTest
webchat-release-testing
4.15.9
and previous releasesRelease
main
~orqfe
~ branch, rungit status
to checkgit pull
/package.json
,/package-lock.json
, andCHANGELOG.md
has a version of4.15.9
git log
3eeebe4
git tag v4.15.9
git push -u upstream v4.15.9
CHANGELOG.md
for file in $(ls *.js); do echo $file $(cat $file | openssl dgst -sha384 -binary | openssl base64 -A); done
curl -H 'Accept-Encoding: gzip' https://cdn.botframework.com/botframework-webchat/4.15.9/webchat.js | gunzip - | openssl dgst -sha384 -binary | openssl base64 -A
stats.json
and 5 tarballswebchat-release-testing/drops
[[PROD]]Push-WebChat-to-npmjs
47
and commit is3eeebe49
[[PROD]]Push-WebChat-to-Prod-CDN-with-approval
365887
, release number is51
and commit is3eeebe49
320590
(this is fixed)Post-release verification - complete within 30 minutes after release to NPM
[x] Test using
webchat-release-testing
01.create-react-app
01.create-react-app/node_modules
npm install
npm install botframework-webchat@4.15.9
(just install the bundle package)npm run build
[x] Others
Using script tags from https://github.com/microsoft/BotFramework-WebChat/releases/tag/v4.15.9, with subresource integrity
npx serve
(at repo root)Notification to interested parties
Post-release checklist
These are chores that we should do before starting the cycle to reduce ripple effects if we do it in mid-cycle.
Tips:
node_modules
from all foldergit clean -fdx
package-lock.json
component/package.json
botframework-webchat-core
by hand-modifyingpackage.json
npm install
(symlinks will be broken afterward)package.json
Applies to all releases
CHANGELOG.md
and version number bump is cherry-picked tomain
~git checkout main
~git cherry-pick XXX
(the commitish for bumping version number andCHANGELOG.md
)~CHANGELOG.md
in PR #XXX~CHANGELOG.md
~package.json
to4.15.10-0
in PR #4838npm version prepatch --no-git-tag-version
servicingPlan.json
in PR #XXX4.15.9
in PR #XXXX~npm init
with default valuesnpm install botframework-webchat@4.15.9
Applies to major/minor releases
Bump all dependencies to latest version
In PR #4647, we are bumping most dependencies to latest version.
npm run bump
npm audit fix
to make sure everything is fixedmicrosoft-cognitiveservices-speech-sdk
Bump Docker image