diff --git a/cmd/dev/headers/comments/formats.go b/cmd/dev/headers/comments/formats.go index 85b07b96..7dedc599 100644 --- a/cmd/dev/headers/comments/formats.go +++ b/cmd/dev/headers/comments/formats.go @@ -74,6 +74,12 @@ var doubleSlashComments = Format{ endToken: "", } +// comment format that is surrounded by /* */ +var slashStarComments = Format{ + startToken: "/* ", + endToken: " */", +} + // comment format that starts with pound symbols var poundComments = Format{ startToken: "# ", @@ -93,14 +99,18 @@ var commentFormats = map[FileType]Format{ "go": doubleSlashComments, "java": doubleSlashComments, "js": doubleSlashComments, + "jsx": doubleSlashComments, "md": htmlComments, "php": doubleSlashComments, "py": poundComments, "rb": poundComments, "rs": doubleSlashComments, "ts": doubleSlashComments, + "tsx": doubleSlashComments, "vue": htmlComments, "yml": poundComments, + "html": htmlComments, + "css": slashStarComments, } func GetFormat(path string) (Format, bool) { diff --git a/cmd/dev/headers/comments/formats_test.go b/cmd/dev/headers/comments/formats_test.go index 585f95b2..c7eb73ba 100644 --- a/cmd/dev/headers/comments/formats_test.go +++ b/cmd/dev/headers/comments/formats_test.go @@ -118,3 +118,19 @@ hello: world`, "\n") _, have := htmlComments.SplitHeaderFromContent(give, regexp.MustCompile(`Copyright © \d{4} Ory Corp Inc.`)) assert.Equal(t, want, have) } + +func TestSlashStarComments(t *testing.T) { + t.Parallel() + tests := map[string]string{ + "Hello": "/* Hello */", + "Hello\n": "/* Hello */\n", + "Hello\nWorld": "/* Hello */\n/* World */", + "Hello\nWorld\n": "/* Hello */\n/* World */\n", + } + for give, want := range tests { + t.Run(fmt.Sprintf("%s -> %s", give, want), func(t *testing.T) { + have := slashStarComments.renderBlock(give) + assert.Equal(t, want, have) + }) + } +} diff --git a/cmd/dev/newsletter/.snapshots/TestRenderMarkdownLong.json b/cmd/dev/newsletter/.snapshots/TestRenderMarkdownLong.json index 4ce0e625..1dea1aeb 100644 --- a/cmd/dev/newsletter/.snapshots/TestRenderMarkdownLong.json +++ b/cmd/dev/newsletter/.snapshots/TestRenderMarkdownLong.json @@ -1 +1 @@ -"\u003c!DOCTYPE html\u003e\n\n\u003chtml lang='en'\u003e\n\u003chead\u003e\n \u003ctitle\u003eOry Kratos v0.1.0 is here!\u003c/title\u003e\n \u003cmeta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /\u003e\n \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1\"\u003e\n \u003cmeta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" /\u003e\n \u003cstyle type=\"text/css\"\u003e\n #outlook a {\n padding: 0;\n }\n pre {\n background-color: #f5f5f5;\n padding: 8px;\n }\n code {\n background-color: #f5f5f5;\n padding: 2px 4px;\n }\n body {\n margin: 0;\n padding: 0;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n }\n table,\n td {\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n }\n img {\n border: 0;\n height: auto;\n line-height: 100%;\n outline: none;\n text-decoration: none;\n -ms-interpolation-mode: bicubic;\n }\n p {\n display: block;\n margin: 0;\n }\n \u003c/style\u003e\n \u003clink\n href=\"https://fonts.googleapis.com/css?family=Inter:700,400,600\"\n rel=\"stylesheet\"\n type=\"text/css\"\n /\u003e\n \u003cstyle type=\"text/css\"\u003e\u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n @media only screen and (min-width: 599px) {\n .pc100 {\n width: 100% !important;\n max-width: 100%;\n }\n .pc48-30508474576271 {\n width: 48.30508474576271% !important;\n max-width: 48.30508474576271%;\n }\n .pc3-389830508474576 {\n width: 3.389830508474576% !important;\n max-width: 3.389830508474576%;\n }\n .xc600 {\n width: 1200px !important;\n max-width: 1200px;\n }\n .xc32 {\n width: 32px !important;\n max-width: 32px;\n }\n .xc16 {\n width: 16px !important;\n max-width: 16px;\n }\n .xc440 {\n \n \n }\n }\n \u003c/style\u003e\n \u003cstyle media=\"screen and (min-width:599px)\"\u003e\n .moz-text-html .pc100 {\n width: 100% !important;\n max-width: 100%;\n }\n .moz-text-html .pc48-30508474576271 {\n width: 48.30508474576271% !important;\n max-width: 48.30508474576271%;\n }\n .moz-text-html .pc3-389830508474576 {\n width: 3.389830508474576% !important;\n max-width: 3.389830508474576%;\n }\n .moz-text-html .xc600 {\n width: 1200px !important;\n max-width: 1200px;\n }\n .moz-text-html .xc32 {\n width: 32px !important;\n max-width: 32px;\n }\n .moz-text-html .xc16 {\n width: 16px !important;\n max-width: 16px;\n }\n .moz-text-html .xc440 {\n \n \n }\n \u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n @media only screen and (max-width: 599px) {\n table.fwm {\n width: 100% !important;\n }\n td.fwm {\n width: auto !important;\n }\n }\n \u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n u + .emailify a,\n #MessageViewBody a,\n a[x-apple-data-detectors] {\n color: inherit !important;\n text-decoration: none !important;\n font-size: inherit !important;\n font-family: inherit !important;\n font-weight: inherit !important;\n line-height: inherit !important;\n }\n span.MsoHyperlink {\n mso-style-priority: 99;\n color: inherit;\n }\n span.MsoHyperlinkFollowed {\n mso-style-priority: 99;\n color: inherit;\n }\n u + .emailify .glist {\n margin-left: 0 !important;\n }\n @media only screen and (max-width: 599px) {\n .emailify {\n height: 100% !important;\n margin: 0 !important;\n padding: 0 !important;\n width: 100% !important;\n }\n u + .emailify .glist {\n margin-left: 25px !important;\n }\n td.x {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .fwm img {\n max-width: 100% !important;\n height: auto !important;\n }\n td.stk {\n border: 0 !important;\n }\n br.sb {\n display: none !important;\n }\n .thd-1 .i-thumbnail {\n display: inline-block !important;\n height: auto !important;\n overflow: hidden !important;\n }\n .hd-1 {\n display: block !important;\n height: auto !important;\n overflow: visible !important;\n }\n .ht-1 {\n display: table !important;\n height: auto !important;\n overflow: visible !important;\n }\n .hr-1 {\n display: table-row !important;\n height: auto !important;\n overflow: visible !important;\n }\n .hc-1 {\n display: table-cell !important;\n height: auto !important;\n overflow: visible !important;\n }\n div.r.pr-16 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pr-16 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-right: 16px !important;\n }\n div.r.pl-16 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pl-16 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-left: 16px !important;\n }\n td.i.w-60 img {\n width: 60px !important;\n }\n td.i.h-30 img {\n height: 30px !important;\n }\n div.r.pt-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pt-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-top: 0px !important;\n }\n div.r.pr-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pr-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-right: 0px !important;\n }\n div.r.pb-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pb-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-bottom: 0px !important;\n }\n div.r.pl-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pl-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-left: 0px !important;\n }\n .hm-1 {\n display: none !important;\n max-width: 0 !important;\n max-height: 0 !important;\n overflow: hidden !important;\n mso-hide: all !important;\n }\n div.g.mb-16 \u003e table \u003e tbody \u003e tr \u003e td {\n padding-bottom: 16px !important;\n }\n }\n \u003c/style\u003e\n \u003cmeta name=\"color-scheme\" content=\"light dark\" /\u003e\n \u003cmeta name=\"supported-color-schemes\" content=\"light dark\" /\u003e\n\n\u003c/head\u003e\n\u003cbody\nlink=\"#3d53f5\"\nvlink=\"#3d53f5\"\nclass=\"emailify\"\nstyle=\"word-spacing: normal; background-color: #e5e5e5\"\n\u003e\n\u003cdiv class=\"bg\" style=\"background-color: #e5e5e5\"\u003e\n\n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #fffffe;\n background-color: #fffffe;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #fffffe;\n background-color: #fffffe;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 16px 64px 16px 64px;\n text-align: left;\n \"\n \u003e′¨\n \u003cdiv\n class=\"pc100 ogf\"\n style=\"\n font-size: 0;\n line-height: 0;\n text-align: left;\n display: inline-block;\n width: 100%;\n direction: ltr;\n \"\n \u003e\n \u003cdiv\n class=\"pc48-30508474576271 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 48.30508474576271%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i w-60 h-30\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 80px\"\u003e\n \u003ca\n href=\"https://www.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/879566e4ded61f9133eb4ae85666e0f8.png\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"80\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003cdiv\n class=\"pc3-389830508474576 ogf g\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 3.389830508474576%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003cdiv\n class=\"pc48-30508474576271 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 48.30508474576271%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"right\"\n class=\"x\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: right;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: right\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 700;\n color: #171717;\n line-height: 28px;\n \"\n \u003eOry Security Newsletter\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #fcfcfc;\n background-color: #fcfcfc;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #fcfcfc;\n background-color: #fcfcfc;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 48px 32px 48px 32px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"xc32 ogf m\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/150a8c06dcaa45901e3887296457cc12.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc440 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 37px;\n line-height: 52px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: center\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 37px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 52px;\n \"\n \u003eOry Kratos v0.1.0\u003c/span\n \u003e \u003cbr\u003e \u003cspan style=\"font-size: 16px; font-weight: 400;\"\u003eis here!\u003c/span\u003e\u003cbr\u003e\n \u003cspan style=\"font-size: 16px; font-weight: 400;\"\u003e\u003ca href=\"https://www.ory.sh/ory/kratos\" target=\"_blank\"\u003eWebsite\u003c/a\u003e\u0026nbsp;| \u003ca href=\"https://github.com/ory/ory/kratos\" target=\"_blank\"\u003eGitHub\u003c/a\u003e |\u0026nbsp;\u003ca href=\"https://github.com/ory/ory/kratos/blob/master/CHANGELOG.md\" target=\"_blank\"\u003eChangelog\u003c/a\u003e\u0026nbsp;|\u0026nbsp;\u003ca href=\"https://github.com/ory/ory/kratos/blob/master/UPGRADE.md\" target=\"_blank\"\u003eUpgrade Guide\u003c/a\u003e\u003cbr\u003e\u003c/span\u003e\n\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n vertical-align=\"top\"\n class=\"c\"\n style=\"\n font-size: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n class=\"xc440 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: top;\n padding-bottom: 0;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003eiuaw4hri\u003cbr\u003e\n \u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003e\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceRecoveryForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceRecoveryWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceVerificationForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceVerificationWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceSettingsForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceSettingsWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceregistrationForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceregistrationWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceLoginForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceLoginWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\u003c/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd json detection to setting error subbranches (\u003ca href=\"https://github.com/ory/kratos/commit/fb83dcb8ae7463079ddb33c04673cf4556f6058c\" target=\"_blank\"\u003efb83dcb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCache migration status (\u003ca href=\"https://github.com/ory/kratos/commit/5be2f149cd79ddfbe8496eccf5d5aacb6a9a0b8e\" target=\"_blank\"\u003e5be2f14\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1337\" target=\"_blank\"\u003e#1337\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eChange SMTP config validation from URI to a Regex pattern (\u003ca href=\"https://github.com/ory/kratos/issues/1436\" target=\"_blank\"\u003e#1436\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5ab1e8f17bcbc229fada2c584b2c1f576b819761\" target=\"_blank\"\u003e5ab1e8f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1435\" target=\"_blank\"\u003e#1435\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCheck filesystem before fallback to bundled templates (\u003ca href=\"https://github.com/ory/kratos/issues/1401\" target=\"_blank\"\u003e#1401\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/22d999e78eb4f67d2f3ba07e62fd28ffb3331d6d\" target=\"_blank\"\u003e22d999e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContinue button for oidc registration step (\u003ca href=\"https://github.com/ory/kratos/commit/2aad5ac8f7055f39f4f434d26fbca74cdbe75337\" target=\"_blank\"\u003e2aad5ac\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1422\" target=\"_blank\"\u003e#1422\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1320\" target=\"_blank\"\u003e#1320\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eWhen signing up with an OIDC provider and the traits model is missing some fields, the submit button shows all OIDC options. Instead, it should show just one option called \u0026ldquo;Continue\u0026rdquo;.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDeprecate sessionCookie (\u003ca href=\"https://github.com/ory/kratos/issues/1428\" target=\"_blank\"\u003e#1428\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/eccad741a1702181d4b207aad954a950906a808b\" target=\"_blank\"\u003eeccad74\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1426\" target=\"_blank\"\u003e#1426\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not cache incomplete migrations (\u003ca href=\"https://github.com/ory/kratos/issues/1434\" target=\"_blank\"\u003e#1434\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/154c26f6da4bb7040deabdc352c90cdae42c69fe\" target=\"_blank\"\u003e154c26f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not run network migrations when booting (\u003ca href=\"https://github.com/ory/kratos/commit/12bbab9d3cf788998cd4a9be50ac8c7a9d2232bd\" target=\"_blank\"\u003e12bbab9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1399\" target=\"_blank\"\u003e#1399\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove identity list performance (\u003ca href=\"https://github.com/ory/kratos/commit/f76886fe7436f71fbef00081888a2f8d0106ba98\" target=\"_blank\"\u003ef76886f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1412\" target=\"_blank\"\u003e#1412\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIncorrect openapi specification for verification submission (\u003ca href=\"https://github.com/ory/kratos/issues/1431\" target=\"_blank\"\u003e#1431\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ecb0a01f61441aa97751943b5e9ddcc28f783d91\" target=\"_blank\"\u003eecb0a01\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1368\" target=\"_blank\"\u003e#1368\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMark ui node message as optional (\u003ca href=\"https://github.com/ory/kratos/issues/1365\" target=\"_blank\"\u003e#1365\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7b8d59f48ed14a6d0672238645d8675d4bf7fd77\" target=\"_blank\"\u003e7b8d59f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1361\" target=\"_blank\"\u003e#1361\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1362\" target=\"_blank\"\u003e#1362\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMark verified_at as omitempty (\u003ca href=\"https://github.com/ory/kratos/commit/77b258e57a3d53fe437838a5e9c57805e9c970aa\" target=\"_blank\"\u003e77b258e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/sdk/issues/46\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/46\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePanic if contextualizer is not set (\u003ca href=\"https://github.com/ory/kratos/commit/760035a6c5efa08561b93daff57ebb4655032b2a\" target=\"_blank\"\u003e760035a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePanic on error in issue session (\u003ca href=\"https://github.com/ory/kratos/commit/5fbd8557e1f907dd400bfcd26c187db16dc344ba\" target=\"_blank\"\u003e5fbd855\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1384\" target=\"_blank\"\u003e#1384\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePrometheus metrics fix (\u003ca href=\"https://github.com/ory/kratos/issues/1299\" target=\"_blank\"\u003e#1299\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ac5d00d472a87ab51e7c6834e2cb59f107fc3b3b\" target=\"_blank\"\u003eac5d00d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRecovery email case sensitive (\u003ca href=\"https://github.com/ory/kratos/issues/1357\" target=\"_blank\"\u003e#1357\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bce14c487450bd668859f362b98704644fa4c72a\" target=\"_blank\"\u003ebce14c4\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1329\" target=\"_blank\"\u003e#1329\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove typing from node.attribute.value (\u003ca href=\"https://github.com/ory/kratos/commit/63a5e08afab76dafbfe13e6126e165af28492aad\" target=\"_blank\"\u003e63a5e08\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/sdk/issues/75\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/75\u003c/a\u003e\nCloses \u003ca href=\"https://github.com/ory/sdk/issues/74\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/74\u003c/a\u003e\nCloses \u003ca href=\"https://github.com/ory/sdk/issues/72\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/72\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename client package for external consumption (\u003ca href=\"https://github.com/ory/kratos/commit/cba8b00c8b755cc0bdc7818bc9d7390ff3532ce1\" target=\"_blank\"\u003ecba8b00\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve driver issues (\u003ca href=\"https://github.com/ory/kratos/commit/47b1c8dce57a023e89a2b178bc8a033496ef4ff2\" target=\"_blank\"\u003e47b1c8d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve network regression (\u003ca href=\"https://github.com/ory/kratos/commit/8f96b1fe4d0846a3ad97a45bc972ece04109289d\" target=\"_blank\"\u003e8f96b1f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve network regressions (\u003ca href=\"https://github.com/ory/kratos/commit/8fc52c034ed9978c2a04cc66bccc9b795c9bbefa\" target=\"_blank\"\u003e8fc52c0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eTesthelper regressions (\u003ca href=\"https://github.com/ory/kratos/commit/bf3b04fd2c7f9162073cb584d6fb0d59e868ecbf\" target=\"_blank\"\u003ebf3b04f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct url in submitSelfServiceVerificationFlow (\u003ca href=\"https://github.com/ory/kratos/commit/ab8a600080ac0d6a6235806b74c5b9e3dc1c2d60\" target=\"_blank\"\u003eab8a600\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse STARTTLS for smtps connections (\u003ca href=\"https://github.com/ory/kratos/issues/1430\" target=\"_blank\"\u003e#1430\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c21bb80a749df7b224a8ac3f15fa62523a78d805\" target=\"_blank\"\u003ec21bb80\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/781\" target=\"_blank\"\u003e#781\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eVersion schema (\u003ca href=\"https://github.com/ory/kratos/issues/1359\" target=\"_blank\"\u003e#1359\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/8c4bac71674e45e440d916c6c947ed018a8ea29a\" target=\"_blank\"\u003e8c4bac7\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1331\" target=\"_blank\"\u003e#1331\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1101\" target=\"_blank\"\u003e#1101\u003c/a\u003e \u003ca href=\"https://github.com/ory/hydra/issues/2427\" target=\"_blank\"\u003eory/hydra#2427\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eCorp package (\u003ca href=\"https://github.com/ory/kratos/issues/1402\" target=\"_blank\"\u003e#1402\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0202dc57aacc0d48e4c1ee4e68c91654451f63fa\" target=\"_blank\"\u003e0202dc5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce DefaultContextualizer in corp package (\u003ca href=\"https://github.com/ory/kratos/issues/1390\" target=\"_blank\"\u003e#1390\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/944d045aa7fc59eadfdd18951f0d4937b1ea79df\" target=\"_blank\"\u003e944d045\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1363\" target=\"_blank\"\u003e#1363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove cleansql to separate package (\u003ca href=\"https://github.com/ory/kratos/commit/7c203dc8219afe07f180143f832158615b51f60a\" target=\"_blank\"\u003e7c203dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd docs for registration SPA flow (\u003ca href=\"https://github.com/ory/kratos/commit/84458f1a9dfe8be6a97bddd832fcc508b60b8498\" target=\"_blank\"\u003e84458f1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd go sdk examples (\u003ca href=\"https://github.com/ory/kratos/commit/e948faddce3a1f52df964c701f6ba2a28f5dfe03\" target=\"_blank\"\u003ee948fad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd replit instructions (\u003ca href=\"https://github.com/ory/kratos/commit/8ab8607dee433f6e708ade296a6c26d0a87d0aae\" target=\"_blank\"\u003e8ab8607\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd tested and running go sdk examples (\u003ca href=\"https://github.com/ory/kratos/commit/3b56bb5fd37d0e7d4479967aa0b5721a68a267f2\" target=\"_blank\"\u003e3b56bb5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix typo in \u0026ldquo;Sign in/up with ID \u0026amp; assword\u0026rdquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1383\" target=\"_blank\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f39739d94e97f20b94630b957371d11294dc8300\" target=\"_blank\"\u003ef39739d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMark login endpoints as experimental (\u003ca href=\"https://github.com/ory/kratos/commit/6faf0f65bb05bbafdee6b1274a719695fd5b4173\" target=\"_blank\"\u003e6faf0f6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate docs for all flows (\u003ca href=\"https://github.com/ory/kratos/commit/d29ea69f6bb908b529502030942b1ced52227372\" target=\"_blank\"\u003ed29ea69\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate documentation for plaintext templates (\u003ca href=\"https://github.com/ory/kratos/issues/1369\" target=\"_blank\"\u003e#1369\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/419784dd0d4ddc338830ed0d77a7d99f8f440777\" target=\"_blank\"\u003e419784d\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1351\" target=\"_blank\"\u003e#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate path (\u003ca href=\"https://github.com/ory/kratos/commit/f0384d9c11085230fd16290c524d22fac6002870\" target=\"_blank\"\u003ef0384d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate sdk use (\u003ca href=\"https://github.com/ory/kratos/commit/bcb8c06ee324c639e548fc06315d9e952f470582\" target=\"_blank\"\u003ebcb8c06\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct path (\u003ca href=\"https://github.com/ory/kratos/issues/1333\" target=\"_blank\"\u003e#1333\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e401135cf415d7e3e6a8ca463dd47e46fe399b33\" target=\"_blank\"\u003ee401135\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd GetContextualizer (\u003ca href=\"https://github.com/ory/kratos/commit/ac3271742c9c2b968b08dd2b35a5d120c5befcd9\" target=\"_blank\"\u003eac32717\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd instana as possible tracing provider (\u003ca href=\"https://github.com/ory/kratos/issues/1429\" target=\"_blank\"\u003e#1429\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/abe48a97ee75567979a70f00dd73ff698efcc75d\" target=\"_blank\"\u003eabe48a9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1385\" target=\"_blank\"\u003e#1385\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd vk and yandex providers to oidc providers and documentation (\u003ca href=\"https://github.com/ory/kratos/issues/1339\" target=\"_blank\"\u003e#1339\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/22a3ef98181eb5922cc0f1c016d42ce46732d0a2\" target=\"_blank\"\u003e22a3ef9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1234\" target=\"_blank\"\u003e#1234\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove contextualization in serve/daemon (\u003ca href=\"https://github.com/ory/kratos/commit/f83cd355422fb4b422f703406473bda914d8419c\" target=\"_blank\"\u003ef83cd35\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude Credentials Metadata in admin api (\u003ca href=\"https://github.com/ory/kratos/issues/1274\" target=\"_blank\"\u003e#1274\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c8b62190fca53db4e1b3a4ddb5253fbd2fd46002\" target=\"_blank\"\u003ec8b6219\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/820\" target=\"_blank\"\u003e#820\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude Credentials Metadata in admin api Missing changes in handler (\u003ca href=\"https://github.com/ory/kratos/issues/1366\" target=\"_blank\"\u003e#1366\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a71c2208dedac45d32dab578e62a5e3105c8dee0\" target=\"_blank\"\u003ea71c220\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for login flows (\u003ca href=\"https://github.com/ory/kratos/commit/6ff67afa8b0fc0a95cec44d3dda2cbc1987b51dd\" target=\"_blank\"\u003e6ff67af\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1138\" target=\"_blank\"\u003e#1138\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/668\" target=\"_blank\"\u003e#668\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/login/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the login flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for recovery flows (\u003ca href=\"https://github.com/ory/kratos/commit/5461244943286081e13c304a3b38413b8ee6fdf2\" target=\"_blank\"\u003e5461244\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/recovery/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for registration flows (\u003ca href=\"https://github.com/ory/kratos/commit/57d3c5786a88f0648e7fa57f181f060a057ec19f\" target=\"_blank\"\u003e57d3c57\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1138\" target=\"_blank\"\u003e#1138\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/668\" target=\"_blank\"\u003e#668\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/registration/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for settings flows (\u003ca href=\"https://github.com/ory/kratos/commit/ea4395ed25d5668e4ce365336cd7a5e13e0ba1cc\" target=\"_blank\"\u003eea4395e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/settings/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for verification flows (\u003ca href=\"https://github.com/ory/kratos/commit/c1515009dcd1b5946a93733feedb01753de91c3d\" target=\"_blank\"\u003ec151500\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/verification/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSign in with Auth0 (\u003ca href=\"https://github.com/ory/kratos/issues/1352\" target=\"_blank\"\u003e#1352\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f618a53fb971ad16121aa8728cfec54253bb3f44\" target=\"_blank\"\u003ef618a53\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/609\" target=\"_blank\"\u003e#609\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport api in settings error (\u003ca href=\"https://github.com/ory/kratos/commit/23105dbb836d920b8766536b65de58932f53d6f6\" target=\"_blank\"\u003e23105db\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport reading session token from X-Session-Token HTTP header (\u003ca href=\"https://github.com/ory/kratos/commit/dcaefd94a0b2cf819424f2e10b3bdae63b256726\" target=\"_blank\"\u003edcaefd9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eTeam id in slack oidc (\u003ca href=\"https://github.com/ory/kratos/issues/1409\" target=\"_blank\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e4d021a037a6b44f8bd66372e9c260c640e87b9d\" target=\"_blank\"\u003ee4d021a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1408\" target=\"_blank\"\u003e#1408\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate openapi specs and regenerate (\u003ca href=\"https://github.com/ory/kratos/commit/cac507eb5b1f39d003d72e57912dbbfe6f92deb1\" target=\"_blank\"\u003ecac507e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eidentities:\u003c/strong\u003e Add a state to identities (\u003ca href=\"https://github.com/ory/kratos/issues/1312\" target=\"_blank\"\u003e#1312\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d22954e2fdb7b2dd5206651b6dd5cf96185a33ba\" target=\"_blank\"\u003ed22954e\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/598\" target=\"_blank\"\u003e#598\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd tests for cookie behavior of API and browser endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/d1b15217867cfb92a615c793b26fad288f5e5742\" target=\"_blank\"\u003ed1b1521\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete console.log (\u003ca href=\"https://github.com/ory/kratos/commit/3ecc869ebfef5c97334ae4334fb4af98ca9baf97\" target=\"_blank\"\u003e3ecc869\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve e2e regressions (\u003ca href=\"https://github.com/ory/kratos/commit/b0d3b82f301942bebe3c0027c8b3160749f907af\" target=\"_blank\"\u003eb0d3b82\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve migratest panic (\u003ca href=\"https://github.com/ory/kratos/commit/89d05ae0c376c4ea1f23708cccf95c9754a29c94\" target=\"_blank\"\u003e89d05ae\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ee2e:\u003c/strong\u003e Greatly improve test performance (\u003ca href=\"https://github.com/ory/kratos/issues/1421\" target=\"_blank\"\u003e#1421\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2ffad9ee751471451e2151719a2e70d5f89437b0\" target=\"_blank\"\u003e2ffad9e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eInstead of running the individual profiles as separate Cypress instances, we now use one singular instance which updates the Ory Kratos configuration depending on the test context. This ensures that hot-reloading is properly working while also signficantly reducing the amount of time spent on booting up the service dependencies.\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eadd CoC shield (#1439) (\u003ca href=\"https://github.com/ory/kratos/commit/826ed1a6deafdc2631a5c72f0bfacc91b06a3435\" target=\"_blank\"\u003e826ed1a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1439\" target=\"_blank\"\u003e#1439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eu (\u003ca href=\"https://github.com/ory/kratos/commit/b03549b6340ec0bf4f9d741ce145ca90bbc09968\" target=\"_blank\"\u003eb03549b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/5cc9fc3a6e91a96225d016d60c8da5cef647ac18\" target=\"_blank\"\u003e5cc9fc3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eu (\u003ca href=\"https://github.com/ory/kratos/commit/318a31d400b97653b4f377c67df4ae0afea189d9\" target=\"_blank\"\u003e318a31d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/e525805246431075d26c3f47596ae93f6580d8ee\" target=\"_blank\"\u003ee525805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/4a692acc7db160068ed7d81461b173bc957e4736\" target=\"_blank\"\u003e4a692ac\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/169c0cd8d424babef69a52ddf65e2b75ded09a46\" target=\"_blank\"\u003e169c0cd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eUnfortunately, some method signatures have changed in the SDKs. Below is a list of changed entries:\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eError \u003ccode\u003egenericError\u003c/code\u003e was renamed to \u003ccode\u003ejsonError\u003c/code\u003e and now includes more information and better typing for errors;\u003c/li\u003e\n\u003cli\u003eThe following functions have been renamed:\n\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceLoginViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceLoginForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceLoginViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceLoginForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRegistrationViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRegistrationForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRegistrationViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRegistrationForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceSettingsViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceSettingsForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceSettingsViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceSettingsForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRecoveryViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRecoveryForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRecoveryViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRecoveryForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceVerificationViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceVerificationForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceVerificationViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceVerificationForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\u003c/li\u003e\n\u003cli\u003eSome type names have changed, for example \u003ccode\u003etraits\u003c/code\u003e -\u0026gt; \u003ccode\u003eidentityTraits\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eProperly handle CSRF for API flows in recovery and verification strategies (\u003ca href=\"https://github.com/ory/kratos/commit/461c829dc4d7f7b70620abee2263efba78ce463a\" target=\"_blank\"\u003e461c829\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1141\" target=\"_blank\"\u003e#1141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esession:\u003c/strong\u003e Use specific headers before bearer use (\u003ca href=\"https://github.com/ory/kratos/commit/82c0b545b29b30fcf3521d9621ec5c5f1a23dc96\" target=\"_blank\"\u003e82c0b54\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove settings oas definition (\u003ca href=\"https://github.com/ory/kratos/commit/867abfc813b08142786f71bfe28e373d4754c959\" target=\"_blank\"\u003e867abfc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct api spec path (\u003ca href=\"https://github.com/ory/kratos/commit/5f41f87bea2919cdf4e9f55c6ad938c5bc08b619\" target=\"_blank\"\u003e5f41f87\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct openapi path for validation (\u003ca href=\"https://github.com/ory/kratos/issues/1340\" target=\"_blank\"\u003e#1340\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a0f5673d6aa4e60bab06ef699dce231f0bf4aeff\" target=\"_blank\"\u003ea0f5673\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.3-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/5edf9524d812795ac5712e4a9541b34359234724\" target=\"_blank\"\u003e5edf952\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eImprove SDK experience (\u003ca href=\"https://github.com/ory/kratos/commit/71b8511ae1f6f77b2996a01a55accc99d171cfaf\" target=\"_blank\"\u003e71b8511\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch resolves UX issues in the auto-generated SDKs by using consistent naming and introducing a test suite for the Ory SaaS.\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.2-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/99c1b1d674df3bd8263f7cbf1ed2bdfae6281f69\" target=\"_blank\"\u003e99c1b1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eUpdate link to example email template. (\u003ca href=\"https://github.com/ory/kratos/issues/1326\" target=\"_blank\"\u003e#1326\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/28a17234b557cabf17b592ee68041aec695f6d20\" target=\"_blank\"\u003e28a1723\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.1-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/1df82daaf3f9cfd3a470d7c9bf8d96abbd52b872\" target=\"_blank\"\u003e1df82da\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAllow changing password validation API DNS name (\u003ca href=\"https://github.com/ory/kratos/issues/1009\" target=\"_blank\"\u003e#1009\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ced85e8091b06d864cc55c9975f8b006f6be1ce4\" target=\"_blank\"\u003eced85e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eUpdate node image (\u003ca href=\"https://github.com/ory/kratos/commit/eef307e6bc33c9ec36ed9138f99c19f72c7be575\" target=\"_blank\"\u003eeef307e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.0-alpha.2 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/a3658badb848656b61d54b3ee35114972afc1f35\" target=\"_blank\"\u003ea3658ba\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix unexpected emails when update profile (\u003ca href=\"https://github.com/ory/kratos/issues/1300\" target=\"_blank\"\u003e#1300\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7b2448566f82e69d555997654ee410f9b4ff3939\" target=\"_blank\"\u003e7b24485\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1221\" target=\"_blank\"\u003e#1221\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eBCrypt is now the default hashing alogrithm. If you wish to continue using Argon2id please set \u003ccode\u003ehashers.algorithm\u003c/code\u003e to \u003ccode\u003eargon2\u003c/code\u003e.\nThis implies a significant breaking change in the verification flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all verification flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the recovery flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all recovery flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the settings flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all settings flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the registration flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all registration flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the login flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all login flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis change introduces a new feature: UI Nodes. Previously, all self-service flows (login, registration, \u0026hellip;) included form fields (e.g. \u003ccode\u003emethods.password.config.fields\u003c/code\u003e). However, these form fields lacked support for other types of UI elements such as links (for e.g. \u0026ldquo;Sign in with Google\u0026rdquo;), images (e.g. QR codes), javascript (e.g. WebAuthn), or text (e.g. recovery codes). With this patch, these new features have been introduced. Please be aware that this introduces significant breaking changes which you will need to adopt to in your UI. Please refer to the most recent documentation to see what has changed. Conceptionally, most things stayed the same - you do however need to update how you access and render the form fields.\u003c/p\u003e\n\n\u003cp\u003ePlease be also aware that this patch includes SQL migrations which \u003cstrong\u003epurge existing self-service forms\u003c/strong\u003e from the database. This means that users will need to re-start the login/registration/\u0026hellip; flow after the SQL migrations have been applied! If you wish to keep these records, make a back up of your database prior!\nThis change introduces a new feature: UI Nodes. Previously, all self-service flows (login, registration, \u0026hellip;) included form fields (e.g. \u003ccode\u003emethods.password.config.fields\u003c/code\u003e). However, these form fields lacked support for other types of UI elements such as links (for e.g. \u0026ldquo;Sign in with Google\u0026rdquo;), images (e.g. QR codes), javascript (e.g. WebAuthn), or text (e.g. recovery codes). With this patch, these new features have been introduced. Please be aware that this introduces significant breaking changes which you will need to adopt to in your UI. Please refer to the most recent documentation to see what has changed. Conceptionally, most things stayed the same - you do however need to update how you access and render the form fields.\u003c/p\u003e\n\n\u003cp\u003ePlease be also aware that this patch includes SQL migrations which \u003cstrong\u003epurge existing self-service forms\u003c/strong\u003e from the database. This means that users will need to re-start the login/registration/\u0026hellip; flow after the SQL migrations have been applied! If you wish to keep these records, make a back up of your database prior!\nThe configuration value for \u003ccode\u003ehashers.argon2.memory\u003c/code\u003e is now a string representation of the memory amount including the unit of measurement. To convert the value divide your current setting (KB) by 1024 to get a result in MB or 1048576 to get a result in GB. Example: \u003ccode\u003e131072\u003c/code\u003e would now become \u003ccode\u003e128MB\u003c/code\u003e.\u003c/p\u003e\n\n\u003cp\u003eCo-authored-by: aeneasr \u003ca href=\"mailto:3372410+aeneasr@users.noreply.github.com\" target=\"_blank\"\u003e3372410+aeneasr@users.noreply.github.com\u003c/a\u003e\nCo-authored-by: aeneasr \u003ca href=\"mailto:aeneas@ory.sh\" target=\"_blank\"\u003eaeneas@ory.sh\u003c/a\u003e\nPlease run SQL migrations when applying this patch.\nThe following configuration keys were updated:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode class=\"language-patch\"\u003eselfservice.methods.password.config.max_breaches\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epassword.max_breaches\u003c/code\u003e -\u0026gt; \u003ccode\u003eselfservice.methods.password.config.max_breaches\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epassword.ignore_network_errors\u003c/code\u003e -\u0026gt; \u003ccode\u003eselfservice.methods.password.config.ignore_network_errors\u003c/code\u003e\nAfter battling with \u003ca href=\"https://github.com/spf13/viper\" target=\"_blank\"\u003espf13/viper\u003c/a\u003e for several years we finally found a viable alternative with \u003ca href=\"https://github.com/knadh/koanf\" target=\"_blank\"\u003eknadh/koanf\u003c/a\u003e. The complete internal configuration infrastructure has changed, with several highlights:\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003col\u003e\n\u003cli\u003eConfiguration sourcing works from all sources (file, env, cli flags) with validation against the configuration schema, greatly improving developer experience when changing or updating configuration.\u003c/li\u003e\n\u003cli\u003eConfiguration reloading has improved significantly and works flawlessly on Kubernetes.\u003c/li\u003e\n\u003cli\u003ePerformance increased dramatically, completely removing the need for a cache layer between the configuration system and ORY Hydra.\u003c/li\u003e\n\u003cli\u003eIt is now possible to load several config files using the \u003ccode\u003e--config\u003c/code\u003e flag.\u003c/li\u003e\n\u003cli\u003eConfiguration values are now sent to the tracer (e.g. Jaeger) if tracing is enabled.\u003c/li\u003e\n\u003c/ol\u003e\n\n\u003cp\u003ePlease be aware that ORY Kratos might complain about an invalid configuration, because the validation process has improved significantly.\u003c/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd include stub go files (\u003ca href=\"https://github.com/ory/kratos/commit/6d725b1461a26d99c8b179be8ca219ba83ba0f17\" target=\"_blank\"\u003e6d725b1\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd index to migration status (\u003ca href=\"https://github.com/ory/kratos/commit/8c6ec2741535c090aae16f02a744f56c15923e2b\" target=\"_blank\"\u003e8c6ec27\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd node_modules to format tasks (\u003ca href=\"https://github.com/ory/kratos/commit/e5f6b36caeff080905d15566cf55f8fe4905dbc0\" target=\"_blank\"\u003ee5f6b36\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd titles to identity schema (\u003ca href=\"https://github.com/ory/kratos/commit/73c15d23840aa83d2c99c013cad52ad7df285f18\" target=\"_blank\"\u003e73c15d2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdopt to new go-swagger changes (\u003ca href=\"https://github.com/ory/kratos/commit/5c45bd9f354bfe19b8cbcd7eb4eaebf22c441f42\" target=\"_blank\"\u003e5c45bd9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow absolute file URLs as config values (\u003ca href=\"https://github.com/ory/kratos/issues/1069\" target=\"_blank\"\u003e#1069\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4bb4f679d1fe0a49edb0c0189bb7a2188d4f850d\" target=\"_blank\"\u003e4bb4f67\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow hashtag in ui urls (\u003ca href=\"https://github.com/ory/kratos/issues/1040\" target=\"_blank\"\u003e#1040\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7591f07f7d48376a03e9eacfdb6f4a93fd26c0d5\" target=\"_blank\"\u003e7591f07\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAvoid unicode-escaping ampersand in recovery URL query string (\u003ca href=\"https://github.com/ory/kratos/issues/1212\" target=\"_blank\"\u003e#1212\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d17236870af490f043d87e220179b35c9eb2dd4e\" target=\"_blank\"\u003ed172368\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt regression in credentials counting (\u003ca href=\"https://github.com/ory/kratos/commit/23fc13ba778e0045ca30c00d673ebd6c2f2b7fb7\" target=\"_blank\"\u003e23fc13b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBroken make quickstart-dev task (\u003ca href=\"https://github.com/ory/kratos/issues/980\" target=\"_blank\"\u003e#980\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/999828ae036f20bde6d12fe89851e1fde9bdaca6\" target=\"_blank\"\u003e999828a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/965\" target=\"_blank\"\u003e#965\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBroken make sdk task (\u003ca href=\"https://github.com/ory/kratos/issues/977\" target=\"_blank\"\u003e#977\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5b01c7a368c5bcfaa3af218d42f15288f51ab3e4\" target=\"_blank\"\u003e5b01c7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/950\" target=\"_blank\"\u003e#950\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCall contextualized test helpers (\u003ca href=\"https://github.com/ory/kratos/commit/e1f3f7835696b039409c9d05f63665aba7a179ae\" target=\"_blank\"\u003ee1f3f78\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCode integer parsing bit size (\u003ca href=\"https://github.com/ory/kratos/issues/1178\" target=\"_blank\"\u003e#1178\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/31e9632bcd6ec3bdeabe862a4cce89021c6dd361\" target=\"_blank\"\u003e31e9632\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eIn some cases we had a wrong bitsize of \u003ccode\u003e64\u003c/code\u003e, while the var was later cast to \u003ccode\u003eint\u003c/code\u003e. Replaced with a bitsize of \u003ccode\u003e0\u003c/code\u003e, which is the value to cast to \u003ccode\u003eint\u003c/code\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize identity persister (\u003ca href=\"https://github.com/ory/kratos/commit/f8640c04f0c5873c39c8af4652d16bfbd347b79e\" target=\"_blank\"\u003ef8640c0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eConvert all identifiers to lower case on login (\u003ca href=\"https://github.com/ory/kratos/issues/815\" target=\"_blank\"\u003e#815\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d64b5757c710c436d6789dbdb33ed04dc11cbdf9\" target=\"_blank\"\u003ed64b575\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/814\" target=\"_blank\"\u003e#814\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier adress (\u003ca href=\"https://github.com/ory/kratos/issues/1198\" target=\"_blank\"\u003e#1198\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ebe4e643150f7603a1e3a3cf6f909135097b3f49\" target=\"_blank\"\u003eebe4e64\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1194\" target=\"_blank\"\u003e#1194\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier message dequeue race condition (\u003ca href=\"https://github.com/ory/kratos/issues/1024\" target=\"_blank\"\u003e#1024\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5396a82c34eef5d42444b5c4371bd4f820fe3eb0\" target=\"_blank\"\u003e5396a82\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/652\" target=\"_blank\"\u003e#652\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/732\" target=\"_blank\"\u003e#732\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eFixes the courier message dequeuing race condition by modifying \u003ccode\u003e*sql.Persister.NextMessages(ctx context.Context, limit uint8)\u003c/code\u003e to retrieve only messages with status \u003ccode\u003eMessageStatusQueued\u003c/code\u003e and update the status of the retrieved messages to \u003ccode\u003eMessageStatusProcessing\u003c/code\u003e within a transaction. On message send failure, the message\u0026rsquo;s status is reset to \u003ccode\u003eMessageStatusQueued\u003c/code\u003e, so that the message can be dequeued in a subsequent \u003ccode\u003eNextMessages\u003c/code\u003e call. On message send success, the status is updated to \u003ccode\u003eMessageStatusSent\u003c/code\u003e (no change there).\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDefine credentials types as sql template and resolve crdb issue (\u003ca href=\"https://github.com/ory/kratos/commit/a2d6eeb2928c9750741237f559197fd80494310d\" target=\"_blank\"\u003ea2d6eeb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDereference pointer types from new flow structures (\u003ca href=\"https://github.com/ory/kratos/issues/1019\" target=\"_blank\"\u003e#1019\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/efedc920e592bd6e963726e6b123ddc40df93a59\" target=\"_blank\"\u003eefedc92\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not include smtp in tracing (\u003ca href=\"https://github.com/ory/kratos/issues/1268\" target=\"_blank\"\u003e#1268\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bbfcbf9ce595d842a53a3ea21c286d5899eeb28f\" target=\"_blank\"\u003ebbfcbf9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not publish version at public endpoint (\u003ca href=\"https://github.com/ory/kratos/commit/3726ed4d145a949b25f5b5da5f58d4f448a2a90f\" target=\"_blank\"\u003e3726ed4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not reset registration method (\u003ca href=\"https://github.com/ory/kratos/commit/554bb0b4e62e4ac2a321fa4dbf89ffdf37b188df\" target=\"_blank\"\u003e554bb0b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not return system errors for missing identifiers (\u003ca href=\"https://github.com/ory/kratos/commit/1fcc8557bfee0f7ba562a635670b61dc9acb3530\" target=\"_blank\"\u003e1fcc855\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1286\" target=\"_blank\"\u003e#1286\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExport mailhog dockertest runner (\u003ca href=\"https://github.com/ory/kratos/commit/138414873ad319c6c32c6cc64a73547540dffc74\" target=\"_blank\"\u003e1384148\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix random delay norm distribution math (\u003ca href=\"https://github.com/ory/kratos/issues/1131\" target=\"_blank\"\u003e#1131\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bd9d28fe354710957f4ebaf71d1fffeae3968364\" target=\"_blank\"\u003ebd9d28f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFork audit logger from root logger (\u003ca href=\"https://github.com/ory/kratos/commit/68a09e7f3dc3ded9a477bb309c68ac8c4e2c2836\" target=\"_blank\"\u003e68a09e7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGitlab oidc flow (\u003ca href=\"https://github.com/ory/kratos/issues/1159\" target=\"_blank\"\u003e#1159\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0bb3eb6db1144a09f4ac356cc45e1644d862bb70\" target=\"_blank\"\u003e0bb3eb6\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1157\" target=\"_blank\"\u003e#1157\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGive specific message instead of only 404 when method is disabled (\u003ca href=\"https://github.com/ory/kratos/issues/1025\" target=\"_blank\"\u003e#1025\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2f62041a62588f5b3b062092c57053facb858e62\" target=\"_blank\"\u003e2f62041\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eEnabled strategies are not only used for handlers but also in other areas\n(e.g. populating the flow methods). So we should keep the logic to get\nenabled strategies and add new functions for getting all strategies.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIgnore unset domain aliases (\u003ca href=\"https://github.com/ory/kratos/commit/ada6997ff3dc7e48fd098e40267db5f231a5201f\" target=\"_blank\"\u003eada6997\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove cli error output (\u003ca href=\"https://github.com/ory/kratos/commit/43e967887280b57639565dabd92a07f02fbddeb5\" target=\"_blank\"\u003e43e9678\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove error stack trace (\u003ca href=\"https://github.com/ory/kratos/commit/43517737109088eda3b1d7f5b42f78bd5eb701d2\" target=\"_blank\"\u003e4351773\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove error tracing (\u003ca href=\"https://github.com/ory/kratos/issues/1005\" target=\"_blank\"\u003e#1005\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/456fd254485fc80b9ae02dfca672a9fea8ae0134\" target=\"_blank\"\u003e456fd25\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove test contextualization (\u003ca href=\"https://github.com/ory/kratos/commit/2f92a7066d72535d32146a98207996fda45e0b96\" target=\"_blank\"\u003e2f92a70\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInitialize randomdelay with seeded source (\u003ca href=\"https://github.com/ory/kratos/commit/9896289216f10b808a8c78b86d9c27b8d74379de\" target=\"_blank\"\u003e9896289\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInsert credentials type constants as part of migrations (\u003ca href=\"https://github.com/ory/kratos/issues/865\" target=\"_blank\"\u003e#865\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/92b79b86762edddf2ad6529b98b3383b641148d5\" target=\"_blank\"\u003e92b79b8\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/861\" target=\"_blank\"\u003e#861\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eLinking a connection may result in system error (\u003ca href=\"https://github.com/ory/kratos/issues/990\" target=\"_blank\"\u003e#990\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/be02a70c3cd60adbcc13559e1cb5dc01a8572da4\" target=\"_blank\"\u003ebe02a70\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/694\" target=\"_blank\"\u003e#694\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMarking whoami auhorization parameter as \u0026lsquo;in header\u0026rsquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1244\" target=\"_blank\"\u003e#1244\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/62d8b85223a0535b07620b08d35c6c3f6b127642\" target=\"_blank\"\u003e62d8b85\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1215\" target=\"_blank\"\u003e#1215\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove schema loaders to correct file (\u003ca href=\"https://github.com/ory/kratos/commit/029781f69448e8abc85607a03b4bd2055158cf2c\" target=\"_blank\"\u003e029781f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove to new transaction-safe migrations (\u003ca href=\"https://github.com/ory/kratos/issues/1063\" target=\"_blank\"\u003e#1063\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2588fb489d76939aeec2986d30fde9075b373831\" target=\"_blank\"\u003e2588fb4\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch introduces a new SQL transaction model for running SQL migrations. This fix is particularly targeted at CockroachDB which has limited support for mixing DDL and DML statements.\u003c/p\u003e\n\n\u003cp\u003ePreviously it could happen that migrations failure needed manual intervention. This has now been resolved. The new migration model is compatible with the old one and should work without a problem.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePass down context to registry (\u003ca href=\"https://github.com/ory/kratos/commit/08794461ed95965a9e5460ded2b4c04ab0f5e2e8\" target=\"_blank\"\u003e0879446\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRe-enable SDK generation (\u003ca href=\"https://github.com/ory/kratos/commit/1d5854d6298e3d21f85a8fa01d3004166c4b3f50\" target=\"_blank\"\u003e1d5854d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRecord cypress runs (\u003ca href=\"https://github.com/ory/kratos/commit/db35d8ff6bb44dc9e9acf131cb0a14a7f4a7d160\" target=\"_blank\"\u003edb35d8f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRehydrate settings form on successful submission (\u003ca href=\"https://github.com/ory/kratos/commit/3457e1a46f48ed79eabff76f8af08b82f12ecc89\" target=\"_blank\"\u003e3457e1a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1305\" target=\"_blank\"\u003e#1305\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove absolete \u0026lsquo;make pack\u0026rsquo; from Dockerfile (\u003ca href=\"https://github.com/ory/kratos/issues/1172\" target=\"_blank\"\u003e#1172\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b8eb908529cc72a3147ad28e4eeee71850a8e431\" target=\"_blank\"\u003eb8eb908\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove continuity cookies on errors (\u003ca href=\"https://github.com/ory/kratos/commit/85eea6748be6ae8cdfc10cabaa6b677e4efd63eb\" target=\"_blank\"\u003e85eea67\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove include stubs (\u003ca href=\"https://github.com/ory/kratos/commit/1764e3a08a24db82dc391a77fdea09a91faffb5f\" target=\"_blank\"\u003e1764e3a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete clihelpers (\u003ca href=\"https://github.com/ory/kratos/commit/230fd138d1bc7ec57647ea8eeca8e17baaacce0a\" target=\"_blank\"\u003e230fd13\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove record from bash script (\u003ca href=\"https://github.com/ory/kratos/commit/84a9315a824cacd29d30b98b65725343af22732d\" target=\"_blank\"\u003e84a9315\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove stray non-ctx configs (\u003ca href=\"https://github.com/ory/kratos/issues/1053\" target=\"_blank\"\u003e#1053\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1fe137e0d6314bd0af47a29c00e2f72564e71cef\" target=\"_blank\"\u003e1fe137e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove trailing double-dot from error (\u003ca href=\"https://github.com/ory/kratos/commit/59581e3fede0fd43028a5f064c350c3cc833b5b0\" target=\"_blank\"\u003e59581e3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unused sql migration (\u003ca href=\"https://github.com/ory/kratos/commit/1445d1d1b4b0b5e8ef3426a98ced9573063d8646\" target=\"_blank\"\u003e1445d1d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unused var (\u003ca href=\"https://github.com/ory/kratos/commit/30a8cee22238d9f400e6d315a9bc99f710945f81\" target=\"_blank\"\u003e30a8cee\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove verify hook (\u003ca href=\"https://github.com/ory/kratos/commit/98cfec6d72c2e7bf2db2e8dd6f8875e885923ba8\" target=\"_blank\"\u003e98cfec6\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1302\" target=\"_blank\"\u003e#1302\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThe verify hook is automatically used when verification is enabled and has been removed as a configuration option.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace jwt module (\u003ca href=\"https://github.com/ory/kratos/issues/1254\" target=\"_blank\"\u003e#1254\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3803c8ce43e35c51a9c1d7ab55bc662c398cf0d8\" target=\"_blank\"\u003e3803c8c\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1250\" target=\"_blank\"\u003e#1250\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve build and release issues (\u003ca href=\"https://github.com/ory/kratos/commit/fb582aa06ad55ca3fd4e2b083e1e9bbb4ba7c715\" target=\"_blank\"\u003efb582aa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve clidoc issues (\u003ca href=\"https://github.com/ory/kratos/commit/599e9f773a743f811329cc57cea2748831105e58\" target=\"_blank\"\u003e599e9f7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve compile issues (\u003ca href=\"https://github.com/ory/kratos/commit/63063c15c17f4d3aca96b106275a3478a8ed717e\" target=\"_blank\"\u003e63063c1\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve contextualized table issues (\u003ca href=\"https://github.com/ory/kratos/commit/5a4f0d92800df7fb5ca0df18203a6d73416814e1\" target=\"_blank\"\u003e5a4f0d9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve crdb migration issue (\u003ca href=\"https://github.com/ory/kratos/commit/9f6edfd1f544d5f85e5f5558a08672f40e928136\" target=\"_blank\"\u003e9f6edfd\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve double hook invokation for registration (\u003ca href=\"https://github.com/ory/kratos/commit/032322c66fb6925d8f1473746cb4bfd800d60590\" target=\"_blank\"\u003e032322c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve incorrect field types on oidc sign up completion (\u003ca href=\"https://github.com/ory/kratos/commit/f88b6abe202605739092a8230fbdebaebcd4407a\" target=\"_blank\"\u003ef88b6ab\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve lint issues (\u003ca href=\"https://github.com/ory/kratos/commit/03488250bcdbfda6ef6a536b4de6117fa8924dc8\" target=\"_blank\"\u003e0348825\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve lint issues (\u003ca href=\"https://github.com/ory/kratos/commit/75a995b3f69778655611929b65ae22bd77c5370b\" target=\"_blank\"\u003e75a995b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve linting issues and disable nancy (\u003ca href=\"https://github.com/ory/kratos/commit/c8396f6007831240d83f77433876c5971a2191ef\" target=\"_blank\"\u003ec8396f6\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve mail queue issues (\u003ca href=\"https://github.com/ory/kratos/commit/b968bc4ed8962d421175adbcaa2dba6eaeea2245\" target=\"_blank\"\u003eb968bc4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve merge regressions (\u003ca href=\"https://github.com/ory/kratos/commit/9862ac72e0877df4cf17c93e140c354e1ddbd0e7\" target=\"_blank\"\u003e9862ac7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve oidc e2e regressions (\u003ca href=\"https://github.com/ory/kratos/commit/f28087aaf133c116a81213f787dc6f2e982564c0\" target=\"_blank\"\u003ef28087a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve oidc regressions and e2e tests (\u003ca href=\"https://github.com/ory/kratos/commit/f5091fac161db0b1401b340a002278bc26891251\" target=\"_blank\"\u003ef5091fa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve potential fsnotify leaks (\u003ca href=\"https://github.com/ory/kratos/commit/3159c0abe109ea4e3832770278c4e9bc4ca3b3e1\" target=\"_blank\"\u003e3159c0a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve regressions and test failures (\u003ca href=\"https://github.com/ory/kratos/commit/8bae3565ea5410b60c3e638a49f5454fac8e63d3\" target=\"_blank\"\u003e8bae356\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve regressions in cookies and payloads (\u003ca href=\"https://github.com/ory/kratos/commit/9e34bf2f6a2f3b007069a5415643c448798207a6\" target=\"_blank\"\u003e9e34bf2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve settings sudo regressions (\u003ca href=\"https://github.com/ory/kratos/commit/4b611f34755369eafcbafa2fc16da13ea3b82370\" target=\"_blank\"\u003e4b611f3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve test regressions (\u003ca href=\"https://github.com/ory/kratos/commit/e3fb0281dd9be123271d11f2934cfb08fdc470b7\" target=\"_blank\"\u003ee3fb028\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve ui issues with nested form objects (\u003ca href=\"https://github.com/ory/kratos/commit/8e744b931954283cf5f5cbf3ebaca3fa94e035ed\" target=\"_blank\"\u003e8e744b9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve update regression (\u003ca href=\"https://github.com/ory/kratos/commit/d0d661aaffcba8b039738b773c891ee6e8f6449e\" target=\"_blank\"\u003ed0d661a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReturn delay instead of sleeping to improve tests (\u003ca href=\"https://github.com/ory/kratos/commit/27b977ebbaa25b95caa7e3e4536a09ea0bfa61c3\" target=\"_blank\"\u003e27b977e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRevert generator changes (\u003ca href=\"https://github.com/ory/kratos/commit/c18b97f333a638d4b4495678013c55faca4b04d0\" target=\"_blank\"\u003ec18b97f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRun correct error handler for registration hooks (\u003ca href=\"https://github.com/ory/kratos/commit/0d80447102d5092e310ca728012f083147c0c5c9\" target=\"_blank\"\u003e0d80447\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSimplify data breaches password error reason (\u003ca href=\"https://github.com/ory/kratos/issues/1136\" target=\"_blank\"\u003e#1136\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/33d29bf72af03aea77f1d318c19f5087a506719f\" target=\"_blank\"\u003e33d29bf\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis PR simplifies the error reason given when a password has appeared in data breaches to not include the actual number and rather just show \u0026ldquo;this password has appeared in data breaches and must not be used\u0026rdquo;.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport form and json formats in decoder (\u003ca href=\"https://github.com/ory/kratos/commit/d420fe6e8a491b20063d4bfeaa0a841058087d32\" target=\"_blank\"\u003ed420fe6\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate openapi definitions for signup (\u003ca href=\"https://github.com/ory/kratos/commit/eb0b69d50ce834b170186a39bbc9cda4d3366c36\" target=\"_blank\"\u003eeb0b69d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate quickstart node image (\u003ca href=\"https://github.com/ory/kratos/commit/c19b2f4c57307e27ce289d44eff34f5aec1341da\" target=\"_blank\"\u003ec19b2f4\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/1301\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/1301\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ecmd:\u003c/strong\u003e Make HTTP calls resilient (\u003ca href=\"https://github.com/ory/kratos/commit/e8ed61fc3e806453f78b8fa629e96ff7b320bf95\" target=\"_blank\"\u003ee8ed61f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ehashing:\u003c/strong\u003e Make bcrypt default hashing algorithm (\u003ca href=\"https://github.com/ory/kratos/commit/04abe774ada1ef4bf318658fcf84c1d39a2a922d\" target=\"_blank\"\u003e04abe77\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate to new goreleaser config (\u003ca href=\"https://github.com/ory/kratos/commit/4c2a1b7f5a0059a6e0c28779808ffb27e8910553\" target=\"_blank\"\u003e4c2a1b7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate to new healthx (\u003ca href=\"https://github.com/ory/kratos/commit/6ec987ae81ef0c05f2c4d1eb836c40f9d15950b2\" target=\"_blank\"\u003e6ec987a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse equalfold (\u003ca href=\"https://github.com/ory/kratos/commit/1c0e52ec36ff95b53e3537c5ef457f1c818d7f6b\" target=\"_blank\"\u003e1c0e52e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse new TB interface (\u003ca href=\"https://github.com/ory/kratos/commit/d75a378e700a206753f2cb17032315f2981960e7\" target=\"_blank\"\u003ed75a378\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse numerical User ID instead of name to avoid k8s security warnings (\u003ca href=\"https://github.com/ory/kratos/issues/1151\" target=\"_blank\"\u003e#1151\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/468a12e56f22cfdf7bd05d68159cc735e75211b2\" target=\"_blank\"\u003e468a12e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eOur docker image scanner does not allow running processes inside\ncontainer using non-numeric User spec (to determine if we are trying\nto run docker image as root).\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse remote dependencies (\u003ca href=\"https://github.com/ory/kratos/commit/1e56457d49e1cde69baa41e3111ca113aa49ee3c\" target=\"_blank\"\u003e1e56457\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.0-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/507d13a8ec9cd89c9933fc8814a8a99921da69fb\" target=\"_blank\"\u003e507d13a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdapt new sdk in testhelpers (\u003ca href=\"https://github.com/ory/kratos/commit/6e15f6f86c0f146e846a384ffd6eac78406178bc\" target=\"_blank\"\u003e6e15f6f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd nid everywhere (\u003ca href=\"https://github.com/ory/kratos/commit/407fd95889f416f0d76d6f3f43644a6fafa13b44\" target=\"_blank\"\u003e407fd95\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize everything (\u003ca href=\"https://github.com/ory/kratos/commit/7ebc3a9a1a2cd85d28c5a9adf2c0c8c10cbd072e\" target=\"_blank\"\u003e7ebc3a9\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch contextualizes all configuration and DBAL models.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not use prefixed node names (\u003ca href=\"https://github.com/ory/kratos/commit/fc42ece24107dcb6e6a416cc54a2fb5de524fd94\" target=\"_blank\"\u003efc42ece\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove Argon2 tooling (\u003ca href=\"https://github.com/ory/kratos/issues/961\" target=\"_blank\"\u003e#961\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/315118720419194be8baf5e5e64d7bf190179568\" target=\"_blank\"\u003e3151187\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/955\" target=\"_blank\"\u003e#955\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis adds a load testing CLI that allows to adjust the hasher parameters under simulated load.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove faker to exportable module (\u003ca href=\"https://github.com/ory/kratos/commit/09f8ae5755c9978574e91676bf5df6a23a2feb78\" target=\"_blank\"\u003e09f8ae5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove migratest helpers to ory/x (\u003ca href=\"https://github.com/ory/kratos/commit/7eca67eb9ec3e4ab065af7221911a74ed16c7c48\" target=\"_blank\"\u003e7eca67e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove password config to selfservice (\u003ca href=\"https://github.com/ory/kratos/commit/cd0e0ebb0de372ff31c982ef023fe1979addb05a\" target=\"_blank\"\u003ecd0e0eb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove to go 1.16 embed (\u003ca href=\"https://github.com/ory/kratos/commit/43c4a13c25be4a3a23a1ffdbecfaa0f9eda1a11d\" target=\"_blank\"\u003e43c4a13\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch replaces packr and pkged with the Go 1.16 embed feature.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove password node attribute prefix (\u003ca href=\"https://github.com/ory/kratos/commit/e27fae4b0d7a91ff3964804963d4885178b80803\" target=\"_blank\"\u003ee27fae4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove profile node attribute prefix (\u003ca href=\"https://github.com/ory/kratos/commit/a3ff6f7eec45b1a9a1e7eb8569793fbc6a047d4f\" target=\"_blank\"\u003ea3ff6f7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename config structs and interfaces (\u003ca href=\"https://github.com/ory/kratos/commit/4a2f41977439354415118df3e37dd0cde8dac1aa\" target=\"_blank\"\u003e4a2f419\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename form to container (\u003ca href=\"https://github.com/ory/kratos/commit/5da155a07d3737cefabaf98c4ff650115f662480\" target=\"_blank\"\u003e5da155a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace flow\u0026rsquo;s forms with new ui node module (\u003ca href=\"https://github.com/ory/kratos/commit/647eb1e66850c67e539d0338cca6cb8ae476ee55\" target=\"_blank\"\u003e647eb1e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace flow\u0026rsquo;s forms with new ui node module (\u003ca href=\"https://github.com/ory/kratos/commit/f74a5c25af60936b59caee0866a21637a5c0ae6f\" target=\"_blank\"\u003ef74a5c2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace login flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/d4ca364fd8905cfb205ee047a9cb831064a6b9d0\" target=\"_blank\"\u003ed4ca364\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace recovery flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/cac04562f2e4e77875275fcfd82c039d787607fb\" target=\"_blank\"\u003ecac0456\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace registration flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/3f6388d03f91cfad17bd74ebca4d924b4b546668\" target=\"_blank\"\u003e3f6388d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace settings flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/0efd17e76ba0a0cbd46916a7644b7bdf19bd4ab4\" target=\"_blank\"\u003e0efd17e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace verification flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/dbf2668747922c93dd967961cd843354afbecfde\" target=\"_blank\"\u003edbf2668\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace viper with koanf config management (\u003ca href=\"https://github.com/ory/kratos/commit/5eb1bc0bff7c5d0f83c604484b8e845701112cad\" target=\"_blank\"\u003e5eb1bc0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate RegisterFakes calls (\u003ca href=\"https://github.com/ory/kratos/commit/626831069ab4f971094ba0bc0b43ac9ff618d91d\" target=\"_blank\"\u003e6268310\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse underscore in webhook auth types (\u003ca href=\"https://github.com/ory/kratos/commit/26829d21911cccd4a87c8693b6089af661c1bfe3\" target=\"_blank\"\u003e26829d2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd docker to docs main (\u003ca href=\"https://github.com/ory/kratos/commit/8ce8b785e2246557253420ea97cf6b7d5ee75d58\" target=\"_blank\"\u003e8ce8b78\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd docker to sidebar (\u003ca href=\"https://github.com/ory/kratos/commit/ed38c88bdbadcdcd2527a2b5270390251742bbe4\" target=\"_blank\"\u003eed38c88\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd dotnet sdk (\u003ca href=\"https://github.com/ory/kratos/issues/1183\" target=\"_blank\"\u003e#1183\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/32d874a04bb384259aeb544a3fcd6b3a8b23acdd\" target=\"_blank\"\u003e32d874a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd faq sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/1105\" target=\"_blank\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/10697aa4ab5dc3e2ab90d1c037dfbe3492bf2bdf\" target=\"_blank\"\u003e10697aa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd log docs to schema config (\u003ca href=\"https://github.com/ory/kratos/commit/4967f11d8df177ebdae855eb745e90d21ce38e9f\" target=\"_blank\"\u003e4967f11\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd more HA docs (\u003ca href=\"https://github.com/ory/kratos/commit/cbb2e27f8919a8991c4797a3f1c192ec364f0dd3\" target=\"_blank\"\u003ecbb2e27\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd Rust and Dart SDKs (\u003ca href=\"https://github.com/ory/kratos/commit/6d969528e13350ef099669510d3d37df1c007c82\" target=\"_blank\"\u003e6d96952\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eWe now support for Rust and Dart SDKs!\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd SameSite help (\u003ca href=\"https://github.com/ory/kratos/commit/2df6729b4acc70532024658e8874682de64b06b3\" target=\"_blank\"\u003e2df6729\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd shell-session language (\u003ca href=\"https://github.com/ory/kratos/commit/d16db87802ae2f230a02e4deed189f473588552c\" target=\"_blank\"\u003ed16db87\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd ui node docs (\u003ca href=\"https://github.com/ory/kratos/commit/e48a07d03c19a0677d3a56f9e57294b358f24501\" target=\"_blank\"\u003ee48a07d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdding double colons (\u003ca href=\"https://github.com/ory/kratos/issues/1187\" target=\"_blank\"\u003e#1187\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fc712f4530066c429242491c19d1534ffb267b0c\" target=\"_blank\"\u003efc712f4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt is default and add 72 char warning (\u003ca href=\"https://github.com/ory/kratos/commit/29ae53a96b4472ff549b34241894d72d439c8ea1\" target=\"_blank\"\u003e29ae53a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBetter import identities examples (\u003ca href=\"https://github.com/ory/kratos/issues/997\" target=\"_blank\"\u003e#997\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2e2880ac057b5c98cd69481c4f6f36b564b5871d\" target=\"_blank\"\u003e2e2880a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eChange forum to discussions readme (\u003ca href=\"https://github.com/ory/kratos/issues/1220\" target=\"_blank\"\u003e#1220\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ae399561ea6ed89aaadd4128bc564254984520e8\" target=\"_blank\"\u003eae39956\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDescribe more about Kratos login/browser flow on quickstart doc (\u003ca href=\"https://github.com/ory/kratos/issues/1047\" target=\"_blank\"\u003e#1047\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fe725ad12b5aed5faa8f95bec24ed3aa82512de8\" target=\"_blank\"\u003efe725ad\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDocker file links (\u003ca href=\"https://github.com/ory/kratos/issues/1182\" target=\"_blank\"\u003e#1182\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4d9b6a3fd5de81310016a811126e40a263ecd27c\" target=\"_blank\"\u003e4d9b6a3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDocument hash timing attack mitigation (\u003ca href=\"https://github.com/ory/kratos/commit/ec869930a9c0e6f6f56c2614835894e0a6a3eaab\" target=\"_blank\"\u003eec86993\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExplain how to use \u003ccode\u003eafter_verification_return_to\u003c/code\u003e (\u003ca href=\"https://github.com/ory/kratos/commit/7e1546be1fd20baca10507d642d4f209eb88dcbc\" target=\"_blank\"\u003e7e1546b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFAQ improvements (\u003ca href=\"https://github.com/ory/kratos/issues/1135\" target=\"_blank\"\u003e#1135\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/44d0bc968a7c0ba5c0793b2349820fa8133bada3\" target=\"_blank\"\u003e44d0bc9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFAQ item \u0026amp; minor changes (\u003ca href=\"https://github.com/ory/kratos/issues/1174\" target=\"_blank\"\u003e#1174\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/11cf630082b56c80d12f5915f8e34aa03a7e8c54\" target=\"_blank\"\u003e11cf630\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix broken link (\u003ca href=\"https://github.com/ory/kratos/issues/1037\" target=\"_blank\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/6b9aae8af5aa3bd614c99b32e341fbd533caf116\" target=\"_blank\"\u003e6b9aae8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix failing build (\u003ca href=\"https://github.com/ory/kratos/commit/0de328ff0053605e6bded589a79d3ab938d55b31\" target=\"_blank\"\u003e0de328f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix formatting (\u003ca href=\"https://github.com/ory/kratos/issues/966\" target=\"_blank\"\u003e#966\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/687251a24e796322b43f8aed6b1fb3d7900e3271\" target=\"_blank\"\u003e687251a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix identity state bullets (\u003ca href=\"https://github.com/ory/kratos/issues/1095\" target=\"_blank\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f476334c4693277656ad88e768f66b59cbcba126\" target=\"_blank\"\u003ef476334\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix known/unknown email account recovery (\u003ca href=\"https://github.com/ory/kratos/issues/1211\" target=\"_blank\"\u003e#1211\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e208ca50ba4f03d5410c9644aaa3b04bdf1b8dbd\" target=\"_blank\"\u003ee208ca5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link (\u003ca href=\"https://github.com/ory/kratos/commit/7f6d7f501d7118dfe6868c9d923fb5ecc5eded48\" target=\"_blank\"\u003e7f6d7f5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link (\u003ca href=\"https://github.com/ory/kratos/issues/1128\" target=\"_blank\"\u003e#1128\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e7043e9b99260eaff2b48ca6f457af46a1521654\" target=\"_blank\"\u003ee7043e9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link to blogpost (\u003ca href=\"https://github.com/ory/kratos/issues/949\" target=\"_blank\"\u003e#949\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4622e3228fb12231222c7e6b602458111f35f727\" target=\"_blank\"\u003e4622e32\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/945\" target=\"_blank\"\u003e#945\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link to self-service flows overview (\u003ca href=\"https://github.com/ory/kratos/issues/995\" target=\"_blank\"\u003e#995\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2be877847644a3df2645ac3be4bbd7704db30b17\" target=\"_blank\"\u003e2be8778\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix note block in third party login guide (\u003ca href=\"https://github.com/ory/kratos/issues/920\" target=\"_blank\"\u003e#920\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/745cea02d0e9940f689e668bbd814b29fd53bf37\" target=\"_blank\"\u003e745cea0\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eAllows the document to render properly\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix npm links (\u003ca href=\"https://github.com/ory/kratos/issues/991\" target=\"_blank\"\u003e#991\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4ce4468132dde21c1692e3a834ad7780bee12b90\" target=\"_blank\"\u003e4ce4468\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix self-service code flows labels (\u003ca href=\"https://github.com/ory/kratos/issues/1253\" target=\"_blank\"\u003e#1253\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f2ed424289cdd2a0edc1736888dd15be6df65f11\" target=\"_blank\"\u003ef2ed424\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo in README (\u003ca href=\"https://github.com/ory/kratos/issues/1122\" target=\"_blank\"\u003e#1122\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e5007078c3cd597cea669827b96c7e6f205f2f32\" target=\"_blank\"\u003ee500707\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eLink to argon2 blogpost and add cross-references (\u003ca href=\"https://github.com/ory/kratos/issues/1038\" target=\"_blank\"\u003e#1038\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9ab7c3df59ecd94a74a7bf18af9c0ded5305e042\" target=\"_blank\"\u003e9ab7c3d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake explicit the ID of the default schema (\u003ca href=\"https://github.com/ory/kratos/issues/1173\" target=\"_blank\"\u003e#1173\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cc6e9ffbac7118436d85078720cde2de98a68044\" target=\"_blank\"\u003ecc6e9ff\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMinor cosmetics (\u003ca href=\"https://github.com/ory/kratos/issues/1050\" target=\"_blank\"\u003e#1050\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/34db06fd4f83d415c09109b06dfd3b82ce03705e\" target=\"_blank\"\u003e34db06f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMinor improvements (\u003ca href=\"https://github.com/ory/kratos/issues/1052\" target=\"_blank\"\u003e#1052\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f0672b5cb8cca41fa914db21798d20f00a5699f9\" target=\"_blank\"\u003ef0672b5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eORY -\u0026gt; Ory (\u003ca href=\"https://github.com/ory/kratos/commit/ea309797bf59f3da5c5cd184e45f2e585144be56\" target=\"_blank\"\u003eea30979\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReformat settings code samples (\u003ca href=\"https://github.com/ory/kratos/commit/cdbbf4df5fa3fa667a78d5cf682bc7fa36693e9d\" target=\"_blank\"\u003ecdbbf4d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unnecessary and wrong docker pull commands (\u003ca href=\"https://github.com/ory/kratos/issues/1203\" target=\"_blank\"\u003e#1203\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2b0342ad7607d705bcebfafd5a78e4e09e57a940\" target=\"_blank\"\u003e2b0342a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve duplication error (\u003ca href=\"https://github.com/ory/kratos/commit/a3d8284ab20ae76bccba361601b7290af20bdde6\" target=\"_blank\"\u003ea3d8284\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate build from source (\u003ca href=\"https://github.com/ory/kratos/commit/9b5754f36661f6de9c95f30c06f28164fe5be48b\" target=\"_blank\"\u003e9b5754f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/979\" target=\"_blank\"\u003e#979\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate email template docs (\u003ca href=\"https://github.com/ory/kratos/commit/1778cb9a293feb2c91c0b1921ab78a0395cdca98\" target=\"_blank\"\u003e1778cb9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/897\" target=\"_blank\"\u003e#897\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate identity-data-model links (\u003ca href=\"https://github.com/ory/kratos/commit/b5fd9a3a0821215f94da168c9c6f87dceba8c8f4\" target=\"_blank\"\u003eb5fd9a3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate identity.ID field documentation (\u003ca href=\"https://github.com/ory/kratos/commit/4624f03a5e9249a5449992a1f0b7ec80dc3499fd\" target=\"_blank\"\u003e4624f03\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/956\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/956\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate kratos video link (\u003ca href=\"https://github.com/ory/kratos/issues/1073\" target=\"_blank\"\u003e#1073\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e86178f4ee66e5053e0da2fab2c21ecb2e730ada\" target=\"_blank\"\u003ee86178f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate login code samples (\u003ca href=\"https://github.com/ory/kratos/commit/695a30f6c80f277676bf04b4665efeb7ea4db618\" target=\"_blank\"\u003e695a30f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate login code samples (\u003ca href=\"https://github.com/ory/kratos/commit/ce6c75587bea80ef83855d764fed79a9d6c948d3\" target=\"_blank\"\u003ece6c755\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate quickstart samples (\u003ca href=\"https://github.com/ory/kratos/commit/c3fcaba65899d9d46a08ca8b60ec0c010f70b16c\" target=\"_blank\"\u003ec3fcaba\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate recovery code samples (\u003ca href=\"https://github.com/ory/kratos/commit/d9fbb62faff5144f587136935f15d24b6399f29c\" target=\"_blank\"\u003ed9fbb62\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate registration code samples (\u003ca href=\"https://github.com/ory/kratos/commit/317810ffd8ba6faf87f2248263b6c82cf4e9ffd8\" target=\"_blank\"\u003e317810f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate self-service code samples (\u003ca href=\"https://github.com/ory/kratos/commit/6415011ab83a19972c6f52467055fbdcef23a0cc\" target=\"_blank\"\u003e6415011\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate settings code samples (\u003ca href=\"https://github.com/ory/kratos/commit/bbd6266c22097fae195654957cbab589d04892c7\" target=\"_blank\"\u003ebbd6266\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate verification code samples (\u003ca href=\"https://github.com/ory/kratos/commit/4285dec59a8fc31fa3416b594c765f5da9a9de1c\" target=\"_blank\"\u003e4285dec\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct extension for identity-data-model (\u003ca href=\"https://github.com/ory/kratos/commit/acab3e8b489d9865e4bf0805895f0b7ae9e6f1b8\" target=\"_blank\"\u003eacab3e8\u003c/a\u003e), closes \u003ca href=\"https://github.com//github.com/ory/kratos/pull/1197/issues/issuecomment-819455322\" target=\"_blank\"\u003e/github.com/ory/kratos/pull/1197#issuecomment-819455322\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eprometheus:\u003c/strong\u003e Update codedoc (\u003ca href=\"https://github.com/ory/kratos/commit/47146ea8ce169ee908aa4d33b59a01e9df4bae10\" target=\"_blank\"\u003e47146ea\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd email template specification in doc (\u003ca href=\"https://github.com/ory/kratos/issues/898\" target=\"_blank\"\u003e#898\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4230d9e0fc35c651b0d2cbdbbf9e1f1c514743f8\" target=\"_blank\"\u003e4230d9e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd error for when no login strategy was found (\u003ca href=\"https://github.com/ory/kratos/commit/6bae66cde362c4e2995c9d06a0d3ffee403feb74\" target=\"_blank\"\u003e6bae66c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd facebook provider to oidc providers and documentation (\u003ca href=\"https://github.com/ory/kratos/issues/1035\" target=\"_blank\"\u003e#1035\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/905bb032520189212bd88f29641903945ae03608\" target=\"_blank\"\u003e905bb03\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1034\" target=\"_blank\"\u003e#1034\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd FAQ to docs (\u003ca href=\"https://github.com/ory/kratos/issues/1096\" target=\"_blank\"\u003e#1096\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9c6b68c454f472b26c34e1975b6a67b24b218f47\" target=\"_blank\"\u003e9c6b68c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd gh login to claims (\u003ca href=\"https://github.com/ory/kratos/commit/49deb2e166362a5d051bc08523ef44425f144bdd\" target=\"_blank\"\u003e49deb2e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd login strategy text message (\u003ca href=\"https://github.com/ory/kratos/commit/7468c835d4800c207035897fc9962860d8ab7803\" target=\"_blank\"\u003e7468c83\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd more tests for multi domain args (\u003ca href=\"https://github.com/ory/kratos/commit/e99803b62a847bcee52bcd87fa8088124b4deae2\" target=\"_blank\"\u003ee99803b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd Prometheus monitoring to Public APIs (\u003ca href=\"https://github.com/ory/kratos/issues/1022\" target=\"_blank\"\u003e#1022\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/75a4f1a5472ffd780fed43a7395a191ed495c6e9\" target=\"_blank\"\u003e75a4f1a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd random delay to login flow (\u003ca href=\"https://github.com/ory/kratos/issues/1088\" target=\"_blank\"\u003e#1088\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cb9894fefc694a4092215d3981e80f287021542f\" target=\"_blank\"\u003ecb9894f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/832\" target=\"_blank\"\u003e#832\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd return_url to verification flow (\u003ca href=\"https://github.com/ory/kratos/issues/1149\" target=\"_blank\"\u003e#1149\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bb99912d823e9bcffa41edf50a01dcae40117fe6\" target=\"_blank\"\u003ebb99912\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1123\" target=\"_blank\"\u003e#1123\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1133\" target=\"_blank\"\u003e#1133\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd sql migrations for new login flow (\u003ca href=\"https://github.com/ory/kratos/commit/e947edf497b36bc576061c9ae38049e84ee48575\" target=\"_blank\"\u003ee947edf\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd sql tracing (\u003ca href=\"https://github.com/ory/kratos/commit/3c4cc1cec170df14331288170a94ada770d3289f\" target=\"_blank\"\u003e3c4cc1c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd tracing to config schema (\u003ca href=\"https://github.com/ory/kratos/commit/007dde4482d11f22b8527c94b002da675152a872\" target=\"_blank\"\u003e007dde4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd transporter with host modification (\u003ca href=\"https://github.com/ory/kratos/commit/2c41b81be947f9972638d082105f0f5c83078b91\" target=\"_blank\"\u003e2c41b81\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd workaround template for go openapi (\u003ca href=\"https://github.com/ory/kratos/commit/5d72d10f6c6948c48c5701fe348084a668c8311a\" target=\"_blank\"\u003e5d72d10\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdds slack sogial login (\u003ca href=\"https://github.com/ory/kratos/issues/974\" target=\"_blank\"\u003e#974\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7c66053390b3086fe7233625038a78431a61e507\" target=\"_blank\"\u003e7c66053\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/953\" target=\"_blank\"\u003e#953\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow session cookie name configuration (\u003ca href=\"https://github.com/ory/kratos/commit/77ce3162ba97cf5c516c26ef499d9fa892162f0a\" target=\"_blank\"\u003e77ce316\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/268\" target=\"_blank\"\u003e#268\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow specifying sender name in smtp.from_address (\u003ca href=\"https://github.com/ory/kratos/issues/1100\" target=\"_blank\"\u003e#1100\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5904fe319f75f8138783434d568db6fc7c55b301\" target=\"_blank\"\u003e5904fe3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt algorithm support (\u003ca href=\"https://github.com/ory/kratos/issues/1169\" target=\"_blank\"\u003e#1169\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b2612eefbad98d29482d364f670549f470d0a6f5\" target=\"_blank\"\u003eb2612ee\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the ability to use BCrypt instead of Argon2id for password hashing. We recommend using BCrypt for web workloads where password hashing should take around 200ms. For workloads where login takes \u0026gt;= 2 seconds, we recommend to continue using Argon2id.\u003c/p\u003e\n\n\u003cp\u003eTo use bcrypt for password hashing, set your config as follows:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode\u003ehashers:\n bcrypt:\n cost: 12\n algorithm: bcrypt\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSwitching the hashing algorithm will not break existing passwords!\u003c/p\u003e\n\n\u003cp\u003eCo-authored-by: Patrik \u003ca href=\"mailto:zepatrik@users.noreply.github.com\" target=\"_blank\"\u003ezepatrik@users.noreply.github.com\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCheck migrations in health check (\u003ca href=\"https://github.com/ory/kratos/commit/c6ef7ad16b70310c645550f7e41b3c8aff847de3\" target=\"_blank\"\u003ec6ef7ad\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eConfigure domain alias as query param (\u003ca href=\"https://github.com/ory/kratos/commit/9d8563eeb3293c42cce440ad74f025b304cccbbe\" target=\"_blank\"\u003e9d8563e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize configuration (\u003ca href=\"https://github.com/ory/kratos/commit/d3d5327a3622318265a063be4782caa25e645a05\" target=\"_blank\"\u003ed3d5327\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize health checks (\u003ca href=\"https://github.com/ory/kratos/commit/8145a1c9acaeab441e787118d40ccd448ea82fe4\" target=\"_blank\"\u003e8145a1c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize http client in cli calls (\u003ca href=\"https://github.com/ory/kratos/commit/3b3ef8f025d75b244d9285036e66f79af7d5ee35\" target=\"_blank\"\u003e3b3ef8f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize persitence testers (\u003ca href=\"https://github.com/ory/kratos/commit/64403736ad9f8b264567e1f8eed1af710cab6046\" target=\"_blank\"\u003e6440373\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier foreground worker with \u0026ldquo;kratos courier watch\u0026rdquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1062\" target=\"_blank\"\u003e#1062\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/500b8bacd9fd541afd053f42fec66443cfebabda\" target=\"_blank\"\u003e500b8ba\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1033\" target=\"_blank\"\u003e#1033\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1024\" target=\"_blank\"\u003e#1024\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eBREACKING CHANGES: This patch moves the courier watcher (responsible for sending mail) to its own foreground worker, which can be executed as a, for example, Kubernetes job.\u003c/p\u003e\n\n\u003cp\u003eIt is still possible to have the previous behaviour which would run the worker as a background task when running \u003ccode\u003ekratos serve\u003c/code\u003e by using the \u003ccode\u003e--watch-courier\u003c/code\u003e flag.\u003c/p\u003e\n\n\u003cp\u003eTo run the foreground worker, use \u003ccode\u003ekratos courier watch -c your/config.yaml\u003c/code\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not enforce bcrypt 12 for dev envs (\u003ca href=\"https://github.com/ory/kratos/commit/bbf44d887ae5cdb5975516149c74b3ba10896209\" target=\"_blank\"\u003ebbf44d8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eEmail input validation (\u003ca href=\"https://github.com/ory/kratos/issues/1287\" target=\"_blank\"\u003e#1287\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cd56b73df363dd37485f07d31fef11fd4d9f40a6\" target=\"_blank\"\u003ecd56b73\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1285\" target=\"_blank\"\u003e#1285\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExport and add config options (\u003ca href=\"https://github.com/ory/kratos/commit/4391fe572eb6a766afe9808396847ca5fdca07f5\" target=\"_blank\"\u003e4391fe5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExpose courier worker (\u003ca href=\"https://github.com/ory/kratos/commit/f50969ecba757dea558e9e8b9dd142f5f564d53a\" target=\"_blank\"\u003ef50969e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExpose crdb ui (\u003ca href=\"https://github.com/ory/kratos/commit/504d5181f5e391bb8d67768b314a0348ed252c8b\" target=\"_blank\"\u003e504d518\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGlobal docs sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/1258\" target=\"_blank\"\u003e#1258\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/71082624e093b8c100e71ae59050f89b35ac20a2\" target=\"_blank\"\u003e7108262\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImplement and test domain aliasing (\u003ca href=\"https://github.com/ory/kratos/commit/1516a54657df485627251de4e7019bc16353c956\" target=\"_blank\"\u003e1516a54\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds a feature called domain aliasing. For more information, head over to \u003ca href=\"http://ory.sh/docs/kratos/next/guides/multi-domain-cookies\" target=\"_blank\"\u003ehttp://ory.sh/docs/kratos/next/guides/multi-domain-cookies\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove oas spec and fix mobile tests (\u003ca href=\"https://github.com/ory/kratos/commit/4ead2c826a2f1a307e327b9736dd8ac99ef52743\" target=\"_blank\"\u003e4ead2c8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove sorting of ui fields (\u003ca href=\"https://github.com/ory/kratos/commit/797b49d0175280f85f568014cf3083e9bc42d354\" target=\"_blank\"\u003e797b49d\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/1196\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/1196\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude schema (\u003ca href=\"https://github.com/ory/kratos/commit/348a493c9e5381830b76e57cad803a308e6ce53a\" target=\"_blank\"\u003e348a493\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake cli commands consumable in Ory Cloud (\u003ca href=\"https://github.com/ory/kratos/issues/926\" target=\"_blank\"\u003e#926\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fed790b0f71f028f6d92e8ebceee188dbdb20770\" target=\"_blank\"\u003efed790b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMigrate to openapi v3 (\u003ca href=\"https://github.com/ory/kratos/commit/595224b1efd5a225702ef236a87f08180a7118b8\" target=\"_blank\"\u003e595224b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePopulate email templates at delivery time, add plaintext defaults (\u003ca href=\"https://github.com/ory/kratos/issues/1155\" target=\"_blank\"\u003e#1155\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7749c7a75a4386c1fd53db57626355467b698c2f\" target=\"_blank\"\u003e7749c7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1065\" target=\"_blank\"\u003e#1065\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSort and label nodes with easy to use defaults (\u003ca href=\"https://github.com/ory/kratos/commit/cbec27c957a733411e4c1d511ed5854855b7236e\" target=\"_blank\"\u003ecbec27c\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eOry Kratos takes a guess based on best practices for\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eordering UI nodes (e.g. email, password, submit button)\u003c/li\u003e\n\u003cli\u003egrouping UI nodes (e.g. keep password and oidc nodes together)\u003c/li\u003e\n\u003cli\u003elabeling UI nodes (e.g. \u0026ldquo;Sign in with GitHub\u0026rdquo;)\u003c/li\u003e\n\u003cli\u003eusing the \u0026ldquo;title\u0026rdquo; attribute from the identity schema to label trait fields\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003eThis greatly simplifies front-end code on your end and makes it even easier to integrate with Ory Kratos! If you want a custom experience with e.g. translations or other things you can always adjust this in your UI integration!\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport base64 inline schemas (\u003ca href=\"https://github.com/ory/kratos/commit/815a24890a118f4128ac083241a93d8df27042f7\" target=\"_blank\"\u003e815a248\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport contextual csrf cookies (\u003ca href=\"https://github.com/ory/kratos/commit/957ef38b69fc6ab071b91262736e6c191be3a4b8\" target=\"_blank\"\u003e957ef38\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport domain aliasing in session cookie (\u003ca href=\"https://github.com/ory/kratos/commit/0681c123f2d856ca27caee645dadc9e6e3731d2c\" target=\"_blank\"\u003e0681c12\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport label in oidc config (\u003ca href=\"https://github.com/ory/kratos/commit/a99cdcddaa0c4bd7b679884b232c2ef8f2dcd978\" target=\"_blank\"\u003ea99cdcd\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport retryable CRDB transactions (\u003ca href=\"https://github.com/ory/kratos/commit/f0c21d7e0a6ed85818d0e9025a451cb8cbdee086\" target=\"_blank\"\u003ef0c21d7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUnix sockets support (\u003ca href=\"https://github.com/ory/kratos/issues/1255\" target=\"_blank\"\u003e#1255\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ad010de240ddd9219f0cfb2ca3fbb180d2d3a697\" target=\"_blank\"\u003ead010de\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eWeb hooks support (recovery) (\u003ca href=\"https://github.com/ory/kratos/issues/1289\" target=\"_blank\"\u003e#1289\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3e181fe3d7750a715ab31eb8347fbb4bdb89d6e6\" target=\"_blank\"\u003e3e181fe\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/271\" target=\"_blank\"\u003e#271\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003efeat: web hooks for self-service flows\u003c/p\u003e\n\n\u003cp\u003eThis feature adds the ability to define web-hooks using a mixture of configuration and JsonNet. This allows integration with services like Mailchimp, Stripe, CRMs, and all other APIs that support REST requests. Additional to these new changes it is now possible to define hooks for verification and recovery as well!\u003c/p\u003e\n\n\u003cp\u003eFor more information, head over to the \u003ca href=\"https://www.ory.sh/kratos/docs/self-service/hooks\" target=\"_blank\"\u003ehooks documentation\u003c/a\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ecourier:\u003c/strong\u003e Allow sending individual messages (\u003ca href=\"https://github.com/ory/kratos/commit/cbb2c0bef63323a177589e9d2a809c84b4f1acdd\" target=\"_blank\"\u003ecbb2c0b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eoidc:\u003c/strong\u003e Support google hd claim (\u003ca href=\"https://github.com/ory/kratos/issues/1097\" target=\"_blank\"\u003e#1097\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1f20a5ceba7682719112d24a3b18bf046fb2ac22\" target=\"_blank\"\u003e1f20a5c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eschema:\u003c/strong\u003e Add totp errors (\u003ca href=\"https://github.com/ory/kratos/commit/a61f8814101401dbb422967e37b6c6c1ae85d113\" target=\"_blank\"\u003ea61f881\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd case to ensure correct behavior when verifying a different email address (\u003ca href=\"https://github.com/ory/kratos/issues/999\" target=\"_blank\"\u003e#999\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f95a117677c9c59436ad10aa8951fe875c39a64f\" target=\"_blank\"\u003ef95a117\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/998\" target=\"_blank\"\u003e#998\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd oasis test case (\u003ca href=\"https://github.com/ory/kratos/commit/f80691b9dd77566857c4284e2639cc94d5b8c333\" target=\"_blank\"\u003ef80691b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump poll interval (\u003ca href=\"https://github.com/ory/kratos/commit/b3dc925a5d43557293745ee81c0ffb3db37b6342\" target=\"_blank\"\u003eb3dc925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump video quality (\u003ca href=\"https://github.com/ory/kratos/commit/b7f8d042646037e1589ae2d03602bd63a5cec2fe\" target=\"_blank\"\u003eb7f8d04\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump wait times (\u003ca href=\"https://github.com/ory/kratos/commit/b2e43f8b0b64784f60e5f57d9a0f5d2928c2b891\" target=\"_blank\"\u003eb2e43f8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eClean up hydra env before restart (\u003ca href=\"https://github.com/ory/kratos/commit/cf494149e6a46b15e3b174185e1e87cfcd6f9f7a\" target=\"_blank\"\u003ecf49414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLonger wait times (\u003ca href=\"https://github.com/ory/kratos/commit/4bec9ef50f14f22342a311f09ba1b59cde47befc\" target=\"_blank\"\u003e4bec9ef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReliable migration tests on crdb (\u003ca href=\"https://github.com/ory/kratos/commit/2e3764ba66c156d810de66fba2b0e142dced6f4d\" target=\"_blank\"\u003e2e3764b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove old noop test (\u003ca href=\"https://github.com/ory/kratos/commit/16dca3f78b2021c09ec83e81ab6d2e68c42ca081\" target=\"_blank\"\u003e16dca3f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve compile issues (\u003ca href=\"https://github.com/ory/kratos/commit/c1b5ba42171ec522579df9dfaff27b5b74a1566a\" target=\"_blank\"\u003ec1b5ba4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve flaky tests (\u003ca href=\"https://github.com/ory/kratos/commit/cb670a854cbb09b8437bfed7e4a6908ff6dcfd27\" target=\"_blank\"\u003ecb670a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve json parser test regression (\u003ca href=\"https://github.com/ory/kratos/commit/a1b9b9a95d58583dc7ecf6d2a501da52f84dd6bb\" target=\"_blank\"\u003ea1b9b9a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve login integration regressions (\u003ca href=\"https://github.com/ory/kratos/commit/388b5b27d6dee7770e5f37d6d83c532044a4e984\" target=\"_blank\"\u003e388b5b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve migration regression (\u003ca href=\"https://github.com/ory/kratos/commit/2051a716cb4b8cf334dd65f2ccddb31e5fbed545\" target=\"_blank\"\u003e2051a71\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve more json parser test regressions (\u003ca href=\"https://github.com/ory/kratos/commit/ff791c41a1d9ce25af4e883469d3f8c0ef9eb302\" target=\"_blank\"\u003eff791c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regression (\u003ca href=\"https://github.com/ory/kratos/commit/e2b0ad3c1845da80f078b11b327b9a0376cbb7c5\" target=\"_blank\"\u003ee2b0ad3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate schema tests for webhooks (\u003ca href=\"https://github.com/ory/kratos/commit/d1ddfa80742728b28dc5710ca5b6e7282a2dec55\" target=\"_blank\"\u003ed1ddfa8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ee2e:\u003c/strong\u003e Significantly reduce wait and idle times (\u003ca href=\"https://github.com/ory/kratos/commit/f525fc53afec6f5232ce507fe25ddec1b9069196\" target=\"_blank\"\u003ef525fc5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve more regressions (\u003ca href=\"https://github.com/ory/kratos/commit/c5a23af81427480088651833d904e3403a969fab\" target=\"_blank\"\u003ec5a23af\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve order regression (\u003ca href=\"https://github.com/ory/kratos/commit/40a849ca35f4700185322e9ac4f6a4b70132851c\" target=\"_blank\"\u003e40a849c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regression (\u003ca href=\"https://github.com/ory/kratos/commit/f0c9e5ff105d76d6bc9478c98522b2440c7181df\" target=\"_blank\"\u003ef0c9e5f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regressions (\u003ca href=\"https://github.com/ory/kratos/commit/4b9da3c9d98d40f7b71a56c51543fc115974630d\" target=\"_blank\"\u003e4b9da3c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve stub regressions (\u003ca href=\"https://github.com/ory/kratos/commit/82650cf1843f6bfde015f556f4452a7b6fd52b11\" target=\"_blank\"\u003e82650cf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test migrations (\u003ca href=\"https://github.com/ory/kratos/commit/de0b65d96daef0e31c12b3b6915f283a8e71244b\" target=\"_blank\"\u003ede0b65d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test regression issues (\u003ca href=\"https://github.com/ory/kratos/commit/ccf9feddade11f9fcaaf1c37dd3efeb2c4df6649\" target=\"_blank\"\u003eccf9fed\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up tests (\u003ca href=\"https://github.com/ory/kratos/commit/a16737cccc36a14444711660f1737913ffd7ba01\" target=\"_blank\"\u003ea16737c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test description (\u003ca href=\"https://github.com/ory/kratos/commit/55fb37f62fc3ab7c0d5324ed31ef3e7f66a73aa2\" target=\"_blank\"\u003e55fb37f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse bcrypt cost 4 to reduce CI times (\u003ca href=\"https://github.com/ory/kratos/commit/cabe97d0656858fd1ee0442b40881417e91294f3\" target=\"_blank\"\u003ecabe97d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse fast bcrypt for e2e (\u003ca href=\"https://github.com/ory/kratos/commit/d90cf13230632e76eb74965c0945573b4f2e98ff\" target=\"_blank\"\u003ed90cf13\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/e4b7e79f4ee91dadfcd008a5b3e318b6bfedad10\" target=\"_blank\"\u003ee4b7e79\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/193d2668ae0955a1346390057539a8b796d17afd\" target=\"_blank\"\u003e193d266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/1ebfbdea75f27c8eeafa7d3aff45de133ea340bb\" target=\"_blank\"\u003e1ebfbde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/ba1eeef4f232c4ab59343a2ca3c7cf0eb6dfd110\" target=\"_blank\"\u003eba1eeef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/ada5dbb58c45502b8275850a3bc0876debc66888\" target=\"_blank\"\u003eada5dbb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial documentation tests via Text-Runner (\u003ca href=\"https://github.com/ory/kratos/issues/567\" target=\"_blank\"\u003e#567\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c30eb26f76ab70a6098c0b40c9a04726d36d72f2\" target=\"_blank\"\u003ec30eb26\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: resolve clidoc issues (#976) (\u003ca href=\"https://github.com/ory/kratos/commit/346bc73921655d52861b8803eb3351c4205657ee\" target=\"_blank\"\u003e346bc73\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/976\" target=\"_blank\"\u003e#976\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/951\" target=\"_blank\"\u003e#951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/17a0bf5872b33eac615afc675c7d92d7c7441b2e\" target=\"_blank\"\u003e17a0bf5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e:bug: fix ory home directory path (#897) (\u003ca href=\"https://github.com/ory/kratos/commit/2fca2bedaa907691bef324c11545e007b51d4881\" target=\"_blank\"\u003e2fca2be\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/897\" target=\"_blank\"\u003e#897\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in config schema (\u003ca href=\"https://github.com/ory/kratos/commit/16337f13e4388a715c8109c29cf198c82a848a16\" target=\"_blank\"\u003e16337f1\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eCSRF token is required when using the Revoke Session API endpoint (\u003ca href=\"https://github.com/ory/kratos/issues/839\" target=\"_blank\"\u003e#839\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d3218a0f23de7293b0a4a966ad21369a92b68b1a\" target=\"_blank\"\u003ed3218a0\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/838\" target=\"_blank\"\u003e#838\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIncorrect home path (\u003ca href=\"https://github.com/ory/kratos/issues/848\" target=\"_blank\"\u003e#848\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5265af00c92fe505819300caddfcc64004d45c65\" target=\"_blank\"\u003e5265af0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake password policy configurable (\u003ca href=\"https://github.com/ory/kratos/issues/888\" target=\"_blank\"\u003e#888\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7a00483908bb623efdf281e76005c4485ea6b1ab\" target=\"_blank\"\u003e7a00483\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/450\" target=\"_blank\"\u003e#450\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/316\" target=\"_blank\"\u003e#316\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eAllows configuring password breach thresholds and optionally enforces checks against the HIBP API.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete types (\u003ca href=\"https://github.com/ory/kratos/issues/887\" target=\"_blank\"\u003e#887\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b8bac7aa56c16cd98f76a95a5e0d01fb1bbde6b7\" target=\"_blank\"\u003eb8bac7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/716\" target=\"_blank\"\u003e#716\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSet samesite attribute to lax if in dev mode (\u003ca href=\"https://github.com/ory/kratos/issues/824\" target=\"_blank\"\u003e#824\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/91d6698e4ce05ee59bb72fc84b54af9d1d204b41\" target=\"_blank\"\u003e91d6698\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/821\" target=\"_blank\"\u003e#821\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse working cache-control header for cdn/proxies/cache (\u003ca href=\"https://github.com/ory/kratos/issues/869\" target=\"_blank\"\u003e#869\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d8e3d40001ffdc64da2288f3cffd53cf3bfdf781\" target=\"_blank\"\u003ed8e3d40\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/601\" target=\"_blank\"\u003e#601\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.5-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/83aedcb885acb96c5deb39fff675d5f0528af32d\" target=\"_blank\"\u003e83aedcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd contributing to sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/866\" target=\"_blank\"\u003e#866\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/44f33f97d43f2a3c553a65ebb2986e0731c0e5f2\" target=\"_blank\"\u003e44f33f9\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThe same change as in \u003ca href=\"https://github.com/ory/hydra/pull/2209\" target=\"_blank\"\u003ehttps://github.com/ory/hydra/pull/2209\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd newsletter to config (\u003ca href=\"https://github.com/ory/kratos/commit/1735ca2ced104971de4e97524d0a23d57ba045f2\" target=\"_blank\"\u003e1735ca2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd recovery flow (\u003ca href=\"https://github.com/ory/kratos/issues/868\" target=\"_blank\"\u003e#868\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d95cfe9759d3ffc08c24048a064c0c800abdf4b4\" target=\"_blank\"\u003ed95cfe9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/864\" target=\"_blank\"\u003e#864\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eAdded a short section for the recovery flow on managing-user-identities.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix account recovery click instruction (\u003ca href=\"https://github.com/ory/kratos/issues/870\" target=\"_blank\"\u003e#870\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/383de9ecf6f6504dbb9c20fb4cb984e934f0751e\" target=\"_blank\"\u003e383de9e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix broken link (\u003ca href=\"https://github.com/ory/kratos/issues/893\" target=\"_blank\"\u003e#893\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/dec38a28964aaa13827d356e5bfa12c2a6d1400e\" target=\"_blank\"\u003edec38a2\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/835\" target=\"_blank\"\u003e#835\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix oidc config example structure (\u003ca href=\"https://github.com/ory/kratos/issues/845\" target=\"_blank\"\u003e#845\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c102a6844db29f994b67d23bb04e64ee71376264\" target=\"_blank\"\u003ec102a68\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix redirect (\u003ca href=\"https://github.com/ory/kratos/issues/802\" target=\"_blank\"\u003e#802\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b86878229f343e6b11521596b04040f892d1e2c3\" target=\"_blank\"\u003eb868782\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo (\u003ca href=\"https://github.com/ory/kratos/issues/847\" target=\"_blank\"\u003e#847\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9b3da9f0fe2ce71743115844d8c91a1dc9c4cbae\" target=\"_blank\"\u003e9b3da9f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo (\u003ca href=\"https://github.com/ory/kratos/issues/881\" target=\"_blank\"\u003e#881\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3078293717a2ce21c4b939de4c2c4886c75303b5\" target=\"_blank\"\u003e3078293\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo MKFA to MFA (\u003ca href=\"https://github.com/ory/kratos/issues/826\" target=\"_blank\"\u003e#826\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a5613d08aa21f90f4d192e5663ba4977b3de16c3\" target=\"_blank\"\u003ea5613d0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove workaround note (\u003ca href=\"https://github.com/ory/kratos/issues/886\" target=\"_blank\"\u003e#886\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/05409bc13f527398e3de01f29437e5d4353ef8d4\" target=\"_blank\"\u003e05409bc\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/718\" target=\"_blank\"\u003e#718\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSwagger specs for selfservice settings browser flow (\u003ca href=\"https://github.com/ory/kratos/issues/825\" target=\"_blank\"\u003e#825\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/28d50f45ab14d561609be7047cac13902394b547\" target=\"_blank\"\u003e28d50f4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate oidc provider with json conf support (\u003ca href=\"https://github.com/ory/kratos/issues/833\" target=\"_blank\"\u003e#833\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/670eb37d19674f33a36402cd9a88d61ca7327751\" target=\"_blank\"\u003e670eb37\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd return_to parameter to logout flow (\u003ca href=\"https://github.com/ory/kratos/issues/823\" target=\"_blank\"\u003e#823\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1c146dd21d616a56f510019abadd37402782bb39\" target=\"_blank\"\u003e1c146dd\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/702\" target=\"_blank\"\u003e#702\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd selinux compatible quickstart config (\u003ca href=\"https://github.com/ory/kratos/issues/889\" target=\"_blank\"\u003e#889\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0f879481df209ed96b778799adcc2a9424449b37\" target=\"_blank\"\u003e0f87948\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/831\" target=\"_blank\"\u003e#831\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eEnsure registration runs only once (\u003ca href=\"https://github.com/ory/kratos/issues/872\" target=\"_blank\"\u003e#872\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5ffc036ac82f36ad6ef499e217971275a35fc23a\" target=\"_blank\"\u003e5ffc036\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003edocs: fix link and typo in Configuring Cookies (#883) (\u003ca href=\"https://github.com/ory/kratos/commit/c51ed6b789d2e3a8fe4e93565c3bded37d298f98\" target=\"_blank\"\u003ec51ed6b\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/883\" target=\"_blank\"\u003e#883\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eCase in settings handler method (\u003ca href=\"https://github.com/ory/kratos/issues/798\" target=\"_blank\"\u003e#798\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/83eb4e0021621014d2b543e57a01401381f07fe4\" target=\"_blank\"\u003e83eb4e0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eForce brew install statement (\u003ca href=\"https://github.com/ory/kratos/issues/796\" target=\"_blank\"\u003e#796\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ad542ad5919205ac26a757145474e5a46f3937ec\" target=\"_blank\"\u003ead542ad\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/homebrew-kratos/issues/1\" target=\"_blank\"\u003ehttps://github.com/ory/homebrew-kratos/issues/1\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.4-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/b02926c42aee2748bc37ce2600596bd0c2537a0d\" target=\"_blank\"\u003eb02926c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eMove pkger and ioutil helpers to ory/x (\u003ca href=\"https://github.com/ory/kratos/commit/60a0fc449d90ead6065ca00926536a989d8b2a2b\" target=\"_blank\"\u003e60a0fc4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix another broken link (\u003ca href=\"https://github.com/ory/kratos/commit/15bae9f893c2e2910167326d987455246c110001\" target=\"_blank\"\u003e15bae9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix broken links (\u003ca href=\"https://github.com/ory/kratos/issues/795\" target=\"_blank\"\u003e#795\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0ab0e7eca8e95d6c26d028c177cbbd1f06b68871\" target=\"_blank\"\u003e0ab0e7e\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/793\" target=\"_blank\"\u003e#793\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix broken relative link (\u003ca href=\"https://github.com/ory/kratos/issues/812\" target=\"_blank\"\u003e#812\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b32b173fe30b7c5c43700abfa4ddb3409a33556b\" target=\"_blank\"\u003eb32b173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix links (\u003ca href=\"https://github.com/ory/kratos/issues/800\" target=\"_blank\"\u003e#800\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5fcc272e625de9e583b2ec24d5679895a6d24c1b\" target=\"_blank\"\u003e5fcc272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix oidc config examples (\u003ca href=\"https://github.com/ory/kratos/issues/799\" target=\"_blank\"\u003e#799\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/8a4f480121995d9899668f037382086fcdd2da4c\" target=\"_blank\"\u003e8a4f480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix self-service recovery flow typo (\u003ca href=\"https://github.com/ory/kratos/issues/807\" target=\"_blank\"\u003e#807\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/800110d87c9df70a5ec79b58d9fcb9ae39ff76b9\" target=\"_blank\"\u003e800110d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate words \u0026amp; fix spelling (\u003ca href=\"https://github.com/ory/kratos/issues/810\" target=\"_blank\"\u003e#810\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4e1b96667d9f08dbafeb2f5ce144ca43309de8e0\" target=\"_blank\"\u003e4e1b966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove leftover category from reference sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/813\" target=\"_blank\"\u003e#813\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/94fde5101d00b9e1f7228e9d122ef0a8e4719355\" target=\"_blank\"\u003e94fde51\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct links (\u003ca href=\"https://github.com/ory/kratos/issues/797\" target=\"_blank\"\u003e#797\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a4de29399e4f1b5d0a33acc85478f2d38579a174\" target=\"_blank\"\u003ea4de293\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd helper for choosing argon2 parameters (\u003ca href=\"https://github.com/ory/kratos/issues/803\" target=\"_blank\"\u003e#803\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ca5a69b798635d0e5361fd5b0cc369b035dca738\" target=\"_blank\"\u003eca5a69b\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/723\" target=\"_blank\"\u003e#723\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/572\" target=\"_blank\"\u003e#572\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/647\" target=\"_blank\"\u003e#647\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the new command \u0026ldquo;hashers argon2 calibrate\u0026rdquo; which allows one to pick the desired hashing time for password hashing and then chooses the optimal parameters for the hardware the command is running on:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode\u003e$ kratos hashers argon2 calibrate 500ms\nIncreasing memory to get over 500ms:\n took 2.846592732s in try 0\n took 6.006488824s in try 1\n took 4.42657975s with 4.00GB of memory\n[...]\nDecreasing iterations to get under 500ms:\n took 484.257775ms in try 0\n took 488.784192ms in try 1\n took 486.534204ms with 3 iterations\nSettled on 3 iterations.\n\n\n{\n \u0026quot;memory\u0026quot;: 1048576,\n \u0026quot;iterations\u0026quot;: 3,\n \u0026quot;parallelism\u0026quot;: 32,\n \u0026quot;salt_length\u0026quot;: 16,\n \u0026quot;key_length\u0026quot;: 32\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd \u0026ldquo;x-session-token\u0026rdquo; to default allowed headers (\u003ca href=\"https://github.com/ory/kratos/commit/3c912e4c7d46fd45c00cabb68ed7770bd44f7d07\" target=\"_blank\"\u003e3c912e4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not set cookies on api endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/2f67c28718856ea03ea2effa89b28a8c4b3b8ae0\" target=\"_blank\"\u003e2f67c28\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not set csrf cookies on potential api endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/4d97a95d084ea99f5aca158609e197acd256cdd7\" target=\"_blank\"\u003e4d97a95\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIgnore unsupported migration dialects (\u003ca href=\"https://github.com/ory/kratos/commit/12bb8d14ae1edef18591996411be67d5693e5101\" target=\"_blank\"\u003e12bb8d1\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/778\" target=\"_blank\"\u003e#778\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eSkips sqlite3 migrations when support is lacking.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove semver regex (\u003ca href=\"https://github.com/ory/kratos/commit/584c0b5043e85e88ac2648cf699d60fed3e775a9\" target=\"_blank\"\u003e584c0b5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eProperly set nosurf context even when ignored (\u003ca href=\"https://github.com/ory/kratos/commit/0dcb774157bcbfd41a5d9df3914c31162226da75\" target=\"_blank\"\u003e0dcb774\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate cypress (\u003ca href=\"https://github.com/ory/kratos/commit/ba8b1729477233f79d099e5d7b397430ac1c6ace\" target=\"_blank\"\u003eba8b172\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct regex for version replacement (\u003ca href=\"https://github.com/ory/kratos/commit/ce870ababdf089344a9428d3a405e18504a3c906\" target=\"_blank\"\u003ece870ab\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/787\" target=\"_blank\"\u003e#787\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.3-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/64dc91af54cdf3eba158a50690240cdc8f7cb43b\" target=\"_blank\"\u003e64dc91a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix docosaurus admonitions (\u003ca href=\"https://github.com/ory/kratos/issues/788\" target=\"_blank\"\u003e#788\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/281a7c9289570d4bee33447655281b610cbe7e52\" target=\"_blank\"\u003e281a7c9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin download script version (\u003ca href=\"https://github.com/ory/kratos/commit/e4137a6a41d68b1480af2075bda8c5f46c42cd22\" target=\"_blank\"\u003ee4137a6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing garbage from quickstart (\u003ca href=\"https://github.com/ory/kratos/issues/787\" target=\"_blank\"\u003e#787\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7e709242ada28b7781c6ace272f60f9d1b9d5b2f\" target=\"_blank\"\u003e7e70924\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eImprove makefile install process and update deps (\u003ca href=\"https://github.com/ory/kratos/commit/d1eb37f5d9d0f16e7864b5f8f08a44ba80853fa5\" target=\"_blank\"\u003ed1eb37f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd e2e tests for mobile (\u003ca href=\"https://github.com/ory/kratos/commit/d481d51f5f4de96cbbc7c347f5dbff381b44462d\" target=\"_blank\"\u003ed481d51\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd option to disable csrf protection in apis (\u003ca href=\"https://github.com/ory/kratos/commit/a0077f12adf94ff428b502b69bbb0eaafd05be66\" target=\"_blank\"\u003ea0077f1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump wait time (\u003ca href=\"https://github.com/ory/kratos/commit/7a719e17c5641f4df47314f6f0ac2cf73dddc8bb\" target=\"_blank\"\u003e7a719e1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInstall expo-cli globally (\u003ca href=\"https://github.com/ory/kratos/commit/db21cfa1c589a2dab829a4c8eaf1db15d14d965e\" target=\"_blank\"\u003edb21cfa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInstall expo-cli in cci config with sudo (\u003ca href=\"https://github.com/ory/kratos/commit/d255f462402f2d2c2278dcba1a139d0064343b22\" target=\"_blank\"\u003ed255f46\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog wait-on output (\u003ca href=\"https://github.com/ory/kratos/commit/62b5ba92d56e9f6b98adb8fb9c4daff03be08f2e\" target=\"_blank\"\u003e62b5ba9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOutput web server address (\u003ca href=\"https://github.com/ory/kratos/commit/cb41ca78367b1943d230fa9ac116fcf3cf69b1c1\" target=\"_blank\"\u003ecb41ca7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve csrf test issues in settings (\u003ca href=\"https://github.com/ory/kratos/commit/ef8ba7dc93d6ba84f22b7aa65d00797e33b520a3\" target=\"_blank\"\u003eef8ba7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test panic (\u003ca href=\"https://github.com/ory/kratos/commit/6f6461fe3690576015ded9146c065a1e5d950be1\" target=\"_blank\"\u003e6f6461f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert delay increase and improve install scripts (\u003ca href=\"https://github.com/ory/kratos/commit/1eafcaa86be194e412b0470a759bff6afc6c21af\" target=\"_blank\"\u003e1eafcaa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd debug quickstart yml (\u003ca href=\"https://github.com/ory/kratos/issues/780\" target=\"_blank\"\u003e#780\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/16e6b4d76d297182ea9a1f5dc6367570f02f7b42\" target=\"_blank\"\u003e16e6b4d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGracefully handle double slashes in URLs (\u003ca href=\"https://github.com/ory/kratos/commit/aeb941477910b5ab54429a6aab7a3e1e388c48c5\" target=\"_blank\"\u003eaeb9414\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/779\" target=\"_blank\"\u003e#779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge gobuffalo CGO fix (\u003ca href=\"https://github.com/ory/kratos/commit/fea2e77ca0f9b20185c7a7704854fdcf29b7ab33\" target=\"_blank\"\u003efea2e77\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove obsolete recovery_token and add link to schema (\u003ca href=\"https://github.com/ory/kratos/commit/acf6ac4e11c755e56c7d40728088257de367f7ff\" target=\"_blank\"\u003eacf6ac4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReturn correct error in login csrf (\u003ca href=\"https://github.com/ory/kratos/commit/dd9cab0e02400c88e89877f755f03c6179013123\" target=\"_blank\"\u003edd9cab0\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/785\" target=\"_blank\"\u003e#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse correct assert package (\u003ca href=\"https://github.com/ory/kratos/commit/76be5b0a5d94c251f5f07eee9f700ec11b341e2e\" target=\"_blank\"\u003e76be5b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.2-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/79fcd8a6949886f847f7be0c9ba2aba7554ab204\" target=\"_blank\"\u003e79fcd8a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eSmall improvements to discord oidc provider guide (\u003ca href=\"https://github.com/ory/kratos/issues/783\" target=\"_blank\"\u003e#783\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/6a3c45330885eb95015fa7ee9b58a72c38132499\" target=\"_blank\"\u003e6a3c453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd tests for csrf behavior (\u003ca href=\"https://github.com/ory/kratos/commit/48993e2c496fb8af7e7b9e2752ba7078a134a75a\" target=\"_blank\"\u003e48993e2\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/785\" target=\"_blank\"\u003e#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMark link as enabled in e2e test (\u003ca href=\"https://github.com/ory/kratos/commit/c214b81a7026b06aaca062b2aa77951d01b0e237\" target=\"_blank\"\u003ec214b81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve schema test regression (\u003ca href=\"https://github.com/ory/kratos/commit/bb7af1b759d6c812755956ef872bcbd31b9c50be\" target=\"_blank\"\u003ebb7af1b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003eChanges requiring your attention may have been introduced since the last release, please read the\u0026nbsp;\u003ca style=\"color:#3d53f5\" href=\"https://github.com/ory/ory/kratos/blob/master/CHANGELOG.md\" target=\"_blank\"\u003echangelog\u003c/a\u003e\u0026nbsp;with care.\n \u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n height: 4px;\n line-height: 4px;\n \"\n \u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i fw-1\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n class=\"fwm\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"width: 440px\"\n class=\"fwm\"\n \u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/06243b93e25d257b7fbf205634f697bb.png\"\n style=\"\n border: 0;\n border-radius: 10px 10px\n 10px 10px;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"440\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc32 ogf\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/150a8c06dcaa45901e3887296457cc12.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #eeeeee;\n background-color: #eeeeee;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #eeeeee;\n background-color: #eeeeee;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 32px 32px 48px 32px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"xc32 ogf m\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/c026cf429700701f40428f478d349306.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc440 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 31px;\n line-height: 48px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: left\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 48px;\n \"\n \u003eYour opinion matters!\u003c/span\n \u003e\n \u003c/p\u003e\n \u003cp style=\"margin: 0\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 48px;\n \"\n \u003e\u003c/span\n \u003e\u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #3d53f5;\n line-height: 48px;\n \"\n \u003eOry usage survey\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n vertical-align=\"middle\"\n class=\"b\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: separate;\n width: 132px;\n line-height: 100%;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"center\"\n bgcolor=\"#3d53f5\"\n style=\"\n border: none;\n border-radius: 0;\n cursor: auto;\n mso-padding-alt: 12px 0px 12px 0px;\n background: #3d53f5;\n \"\n valign=\"middle\"\n \u003e\n \u003ca\n href=\"https://form.typeform.com/to/Igq7038O\"\n style=\"\n display: inline-block;\n width: 132px;\n background: #3d53f5;\n color: #ffffff;\n font-family: Inter, Arial, sans-serif;\n font-size: 13px;\n font-weight: normal;\n line-height: 100%;\n margin: 0;\n text-decoration: none;\n text-transform: none;\n padding: 12px 0px 12px 0px;\n mso-padding-alt: 0;\n border-radius: 0;\n \"\n target=\"_blank\"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 14px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 600;\n color: #ffffff;\n line-height: 20px;\n \"\n \u003eTake Survey\u003c/span\n \u003e\u003c/a\n \u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc32 ogf\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/c026cf429700701f40428f478d349306.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #171717;\n background-color: #171717;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #171717;\n background-color: #171717;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 32px 64px 32px 64px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"pc100 ogf\"\n style=\"\n font-size: 0;\n line-height: 0;\n text-align: left;\n display: inline-block;\n width: 100%;\n direction: ltr;\n \"\n \u003e\n \n \u003cdiv\n class=\"pc100 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i w-60 h-30 m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 80px\"\u003e\n \u003ca\n href=\"https://www.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Ory Logo\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/879566e4ded61f9133eb4ae85666e0f8.png\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"80\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 10px;\n line-height: 16px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: left\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 10px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #ffffff;\n line-height: 16px;\n \"\n \u003eCopyright © *|CURRENT_YEAR|* *|LIST:COMPANY|*, All rights reserved.\u003cbr\u003e*|IFNOT:ARCHIVE_PAGE|* *|LIST:DESCRIPTION|*\u003cbr\u003e\n \u003cbr\u003e\n You subscribed to this newsletter on \u003ca href=\"https://www.ory.sh/\" target=\"_blank\"\u003ewww.ory.sh\u003c/a\u003e.\u003cbr\u003e\n \u003cbr\u003e\n Want to change how you receive these emails?\u003cbr\u003e\n You can \u003ca href=\"*|UPDATE_PROFILE|*\"\u003eupdate your preferences\u003c/a\u003e or \u003ca href=\"*|UNSUB|*\"\u003eunsubscribe from this list\u003c/a\u003e.*|END:IF|*\u003cbr\u003e\n \u003cbr\u003e*|IF:REWARDS|* *|HTML:REWARDS|* *|END:IF|*\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/p\u003e\n \u003cp style=\"margin: 0\"\u003e\n\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"o\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://github.com/ory\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"GitHub\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/ef512130ade0d301c30989f4c913c8ee.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://slack.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Slack\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/eb766218760449f56561ca1eced33dbf.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://www.youtube.com/channel/UC9hCxZZeviexX0GclD0brrw\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"YouTube\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/3da01c1f1191eb2b71d7a649e51e29e5.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://twitter.com/orycorp\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Twitter\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/eb45c141aa72d90251c7419d68d6d64d.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e\"\u003e\n \u003ctd\n style=\"padding: 0; vertical-align: middle\"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://www.linkedin.com/company/ory-corp/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"LinkedIn\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/0cb3b6717df0a6d08795de6808ab115e.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n\u003c/div\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n" +"\n\n\n\u003c!DOCTYPE html\u003e\n\n\u003chtml lang='en'\u003e\n\u003chead\u003e\n \u003ctitle\u003eOry Kratos v0.1.0 is here!\u003c/title\u003e\n \u003cmeta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /\u003e\n \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1\"\u003e\n \u003cmeta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" /\u003e\n \u003cstyle type=\"text/css\"\u003e\n #outlook a {\n padding: 0;\n }\n pre {\n background-color: #f5f5f5;\n padding: 8px;\n }\n code {\n background-color: #f5f5f5;\n padding: 2px 4px;\n }\n body {\n margin: 0;\n padding: 0;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n }\n table,\n td {\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n }\n img {\n border: 0;\n height: auto;\n line-height: 100%;\n outline: none;\n text-decoration: none;\n -ms-interpolation-mode: bicubic;\n }\n p {\n display: block;\n margin: 0;\n }\n \u003c/style\u003e\n \u003clink\n href=\"https://fonts.googleapis.com/css?family=Inter:700,400,600\"\n rel=\"stylesheet\"\n type=\"text/css\"\n /\u003e\n \u003cstyle type=\"text/css\"\u003e\u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n @media only screen and (min-width: 599px) {\n .pc100 {\n width: 100% !important;\n max-width: 100%;\n }\n .pc48-30508474576271 {\n width: 48.30508474576271% !important;\n max-width: 48.30508474576271%;\n }\n .pc3-389830508474576 {\n width: 3.389830508474576% !important;\n max-width: 3.389830508474576%;\n }\n .xc600 {\n width: 1200px !important;\n max-width: 1200px;\n }\n .xc32 {\n width: 32px !important;\n max-width: 32px;\n }\n .xc16 {\n width: 16px !important;\n max-width: 16px;\n }\n .xc440 {\n \n \n }\n }\n \u003c/style\u003e\n \u003cstyle media=\"screen and (min-width:599px)\"\u003e\n .moz-text-html .pc100 {\n width: 100% !important;\n max-width: 100%;\n }\n .moz-text-html .pc48-30508474576271 {\n width: 48.30508474576271% !important;\n max-width: 48.30508474576271%;\n }\n .moz-text-html .pc3-389830508474576 {\n width: 3.389830508474576% !important;\n max-width: 3.389830508474576%;\n }\n .moz-text-html .xc600 {\n width: 1200px !important;\n max-width: 1200px;\n }\n .moz-text-html .xc32 {\n width: 32px !important;\n max-width: 32px;\n }\n .moz-text-html .xc16 {\n width: 16px !important;\n max-width: 16px;\n }\n .moz-text-html .xc440 {\n \n \n }\n \u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n @media only screen and (max-width: 599px) {\n table.fwm {\n width: 100% !important;\n }\n td.fwm {\n width: auto !important;\n }\n }\n \u003c/style\u003e\n \u003cstyle type=\"text/css\"\u003e\n u + .emailify a,\n #MessageViewBody a,\n a[x-apple-data-detectors] {\n color: inherit !important;\n text-decoration: none !important;\n font-size: inherit !important;\n font-family: inherit !important;\n font-weight: inherit !important;\n line-height: inherit !important;\n }\n span.MsoHyperlink {\n mso-style-priority: 99;\n color: inherit;\n }\n span.MsoHyperlinkFollowed {\n mso-style-priority: 99;\n color: inherit;\n }\n u + .emailify .glist {\n margin-left: 0 !important;\n }\n @media only screen and (max-width: 599px) {\n .emailify {\n height: 100% !important;\n margin: 0 !important;\n padding: 0 !important;\n width: 100% !important;\n }\n u + .emailify .glist {\n margin-left: 25px !important;\n }\n td.x {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .fwm img {\n max-width: 100% !important;\n height: auto !important;\n }\n td.stk {\n border: 0 !important;\n }\n br.sb {\n display: none !important;\n }\n .thd-1 .i-thumbnail {\n display: inline-block !important;\n height: auto !important;\n overflow: hidden !important;\n }\n .hd-1 {\n display: block !important;\n height: auto !important;\n overflow: visible !important;\n }\n .ht-1 {\n display: table !important;\n height: auto !important;\n overflow: visible !important;\n }\n .hr-1 {\n display: table-row !important;\n height: auto !important;\n overflow: visible !important;\n }\n .hc-1 {\n display: table-cell !important;\n height: auto !important;\n overflow: visible !important;\n }\n div.r.pr-16 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pr-16 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-right: 16px !important;\n }\n div.r.pl-16 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pl-16 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-left: 16px !important;\n }\n td.i.w-60 img {\n width: 60px !important;\n }\n td.i.h-30 img {\n height: 30px !important;\n }\n div.r.pt-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pt-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-top: 0px !important;\n }\n div.r.pr-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pr-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-right: 0px !important;\n }\n div.r.pb-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pb-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-bottom: 0px !important;\n }\n div.r.pl-0 \u003e table \u003e tbody \u003e tr \u003e td,\n div.r.pl-0 \u003e div \u003e table \u003e tbody \u003e tr \u003e td {\n padding-left: 0px !important;\n }\n .hm-1 {\n display: none !important;\n max-width: 0 !important;\n max-height: 0 !important;\n overflow: hidden !important;\n mso-hide: all !important;\n }\n div.g.mb-16 \u003e table \u003e tbody \u003e tr \u003e td {\n padding-bottom: 16px !important;\n }\n }\n \u003c/style\u003e\n \u003cmeta name=\"color-scheme\" content=\"light dark\" /\u003e\n \u003cmeta name=\"supported-color-schemes\" content=\"light dark\" /\u003e\n\n\u003c/head\u003e\n\u003cbody\nlink=\"#3d53f5\"\nvlink=\"#3d53f5\"\nclass=\"emailify\"\nstyle=\"word-spacing: normal; background-color: #e5e5e5\"\n\u003e\n\u003cdiv class=\"bg\" style=\"background-color: #e5e5e5\"\u003e\n\n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #fffffe;\n background-color: #fffffe;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #fffffe;\n background-color: #fffffe;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 16px 64px 16px 64px;\n text-align: left;\n \"\n \u003e′¨\n \u003cdiv\n class=\"pc100 ogf\"\n style=\"\n font-size: 0;\n line-height: 0;\n text-align: left;\n display: inline-block;\n width: 100%;\n direction: ltr;\n \"\n \u003e\n \u003cdiv\n class=\"pc48-30508474576271 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 48.30508474576271%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i w-60 h-30\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 80px\"\u003e\n \u003ca\n href=\"https://www.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/879566e4ded61f9133eb4ae85666e0f8.png\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"80\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003cdiv\n class=\"pc3-389830508474576 ogf g\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 3.389830508474576%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003cdiv\n class=\"pc48-30508474576271 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 48.30508474576271%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"right\"\n class=\"x\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: right;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: right\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 700;\n color: #171717;\n line-height: 28px;\n \"\n \u003eOry Security Newsletter\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #fcfcfc;\n background-color: #fcfcfc;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #fcfcfc;\n background-color: #fcfcfc;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 48px 32px 48px 32px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"xc32 ogf m\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/150a8c06dcaa45901e3887296457cc12.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc440 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 37px;\n line-height: 52px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: center\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 37px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 52px;\n \"\n \u003eOry Kratos v0.1.0\u003c/span\n \u003e \u003cbr\u003e \u003cspan style=\"font-size: 16px; font-weight: 400;\"\u003eis here!\u003c/span\u003e\u003cbr\u003e\n \u003cspan style=\"font-size: 16px; font-weight: 400;\"\u003e\u003ca href=\"https://www.ory.sh/ory/kratos\" target=\"_blank\"\u003eWebsite\u003c/a\u003e\u0026nbsp;| \u003ca href=\"https://github.com/ory/ory/kratos\" target=\"_blank\"\u003eGitHub\u003c/a\u003e |\u0026nbsp;\u003ca href=\"https://github.com/ory/ory/kratos/blob/master/CHANGELOG.md\" target=\"_blank\"\u003eChangelog\u003c/a\u003e\u0026nbsp;|\u0026nbsp;\u003ca href=\"https://github.com/ory/ory/kratos/blob/master/UPGRADE.md\" target=\"_blank\"\u003eUpgrade Guide\u003c/a\u003e\u003cbr\u003e\u003c/span\u003e\n\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n vertical-align=\"top\"\n class=\"c\"\n style=\"\n font-size: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n class=\"xc440 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: top;\n padding-bottom: 0;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003eiuaw4hri\u003cbr\u003e\n \u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003e\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceRecoveryForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceRecoveryWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceVerificationForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceVerificationWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceSettingsForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceSettingsWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceregistrationForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceregistrationWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\nWe listened to your feedback and have improved the naming of the SDK method \u003ccode\u003einitializeSelfServiceLoginForNativeApps\u003c/code\u003e to better match what it does: \u003ccode\u003einitializeSelfServiceLoginWithoutBrowser\u003c/code\u003e. As in the previous release you may still use the old SDK if you do not want to deal with the SDK breaking changes for now.\u003c/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd json detection to setting error subbranches (\u003ca href=\"https://github.com/ory/kratos/commit/fb83dcb8ae7463079ddb33c04673cf4556f6058c\" target=\"_blank\"\u003efb83dcb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCache migration status (\u003ca href=\"https://github.com/ory/kratos/commit/5be2f149cd79ddfbe8496eccf5d5aacb6a9a0b8e\" target=\"_blank\"\u003e5be2f14\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1337\" target=\"_blank\"\u003e#1337\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eChange SMTP config validation from URI to a Regex pattern (\u003ca href=\"https://github.com/ory/kratos/issues/1436\" target=\"_blank\"\u003e#1436\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5ab1e8f17bcbc229fada2c584b2c1f576b819761\" target=\"_blank\"\u003e5ab1e8f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1435\" target=\"_blank\"\u003e#1435\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCheck filesystem before fallback to bundled templates (\u003ca href=\"https://github.com/ory/kratos/issues/1401\" target=\"_blank\"\u003e#1401\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/22d999e78eb4f67d2f3ba07e62fd28ffb3331d6d\" target=\"_blank\"\u003e22d999e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContinue button for oidc registration step (\u003ca href=\"https://github.com/ory/kratos/commit/2aad5ac8f7055f39f4f434d26fbca74cdbe75337\" target=\"_blank\"\u003e2aad5ac\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1422\" target=\"_blank\"\u003e#1422\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1320\" target=\"_blank\"\u003e#1320\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eWhen signing up with an OIDC provider and the traits model is missing some fields, the submit button shows all OIDC options. Instead, it should show just one option called \u0026ldquo;Continue\u0026rdquo;.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDeprecate sessionCookie (\u003ca href=\"https://github.com/ory/kratos/issues/1428\" target=\"_blank\"\u003e#1428\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/eccad741a1702181d4b207aad954a950906a808b\" target=\"_blank\"\u003eeccad74\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1426\" target=\"_blank\"\u003e#1426\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not cache incomplete migrations (\u003ca href=\"https://github.com/ory/kratos/issues/1434\" target=\"_blank\"\u003e#1434\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/154c26f6da4bb7040deabdc352c90cdae42c69fe\" target=\"_blank\"\u003e154c26f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not run network migrations when booting (\u003ca href=\"https://github.com/ory/kratos/commit/12bbab9d3cf788998cd4a9be50ac8c7a9d2232bd\" target=\"_blank\"\u003e12bbab9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1399\" target=\"_blank\"\u003e#1399\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove identity list performance (\u003ca href=\"https://github.com/ory/kratos/commit/f76886fe7436f71fbef00081888a2f8d0106ba98\" target=\"_blank\"\u003ef76886f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1412\" target=\"_blank\"\u003e#1412\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIncorrect openapi specification for verification submission (\u003ca href=\"https://github.com/ory/kratos/issues/1431\" target=\"_blank\"\u003e#1431\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ecb0a01f61441aa97751943b5e9ddcc28f783d91\" target=\"_blank\"\u003eecb0a01\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1368\" target=\"_blank\"\u003e#1368\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMark ui node message as optional (\u003ca href=\"https://github.com/ory/kratos/issues/1365\" target=\"_blank\"\u003e#1365\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7b8d59f48ed14a6d0672238645d8675d4bf7fd77\" target=\"_blank\"\u003e7b8d59f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1361\" target=\"_blank\"\u003e#1361\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1362\" target=\"_blank\"\u003e#1362\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMark verified_at as omitempty (\u003ca href=\"https://github.com/ory/kratos/commit/77b258e57a3d53fe437838a5e9c57805e9c970aa\" target=\"_blank\"\u003e77b258e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/sdk/issues/46\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/46\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePanic if contextualizer is not set (\u003ca href=\"https://github.com/ory/kratos/commit/760035a6c5efa08561b93daff57ebb4655032b2a\" target=\"_blank\"\u003e760035a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePanic on error in issue session (\u003ca href=\"https://github.com/ory/kratos/commit/5fbd8557e1f907dd400bfcd26c187db16dc344ba\" target=\"_blank\"\u003e5fbd855\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1384\" target=\"_blank\"\u003e#1384\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePrometheus metrics fix (\u003ca href=\"https://github.com/ory/kratos/issues/1299\" target=\"_blank\"\u003e#1299\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ac5d00d472a87ab51e7c6834e2cb59f107fc3b3b\" target=\"_blank\"\u003eac5d00d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRecovery email case sensitive (\u003ca href=\"https://github.com/ory/kratos/issues/1357\" target=\"_blank\"\u003e#1357\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bce14c487450bd668859f362b98704644fa4c72a\" target=\"_blank\"\u003ebce14c4\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1329\" target=\"_blank\"\u003e#1329\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove typing from node.attribute.value (\u003ca href=\"https://github.com/ory/kratos/commit/63a5e08afab76dafbfe13e6126e165af28492aad\" target=\"_blank\"\u003e63a5e08\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/sdk/issues/75\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/75\u003c/a\u003e\nCloses \u003ca href=\"https://github.com/ory/sdk/issues/74\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/74\u003c/a\u003e\nCloses \u003ca href=\"https://github.com/ory/sdk/issues/72\" target=\"_blank\"\u003ehttps://github.com/ory/sdk/issues/72\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename client package for external consumption (\u003ca href=\"https://github.com/ory/kratos/commit/cba8b00c8b755cc0bdc7818bc9d7390ff3532ce1\" target=\"_blank\"\u003ecba8b00\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve driver issues (\u003ca href=\"https://github.com/ory/kratos/commit/47b1c8dce57a023e89a2b178bc8a033496ef4ff2\" target=\"_blank\"\u003e47b1c8d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve network regression (\u003ca href=\"https://github.com/ory/kratos/commit/8f96b1fe4d0846a3ad97a45bc972ece04109289d\" target=\"_blank\"\u003e8f96b1f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve network regressions (\u003ca href=\"https://github.com/ory/kratos/commit/8fc52c034ed9978c2a04cc66bccc9b795c9bbefa\" target=\"_blank\"\u003e8fc52c0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eTesthelper regressions (\u003ca href=\"https://github.com/ory/kratos/commit/bf3b04fd2c7f9162073cb584d6fb0d59e868ecbf\" target=\"_blank\"\u003ebf3b04f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct url in submitSelfServiceVerificationFlow (\u003ca href=\"https://github.com/ory/kratos/commit/ab8a600080ac0d6a6235806b74c5b9e3dc1c2d60\" target=\"_blank\"\u003eab8a600\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse STARTTLS for smtps connections (\u003ca href=\"https://github.com/ory/kratos/issues/1430\" target=\"_blank\"\u003e#1430\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c21bb80a749df7b224a8ac3f15fa62523a78d805\" target=\"_blank\"\u003ec21bb80\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/781\" target=\"_blank\"\u003e#781\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eVersion schema (\u003ca href=\"https://github.com/ory/kratos/issues/1359\" target=\"_blank\"\u003e#1359\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/8c4bac71674e45e440d916c6c947ed018a8ea29a\" target=\"_blank\"\u003e8c4bac7\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1331\" target=\"_blank\"\u003e#1331\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1101\" target=\"_blank\"\u003e#1101\u003c/a\u003e \u003ca href=\"https://github.com/ory/hydra/issues/2427\" target=\"_blank\"\u003eory/hydra#2427\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eCorp package (\u003ca href=\"https://github.com/ory/kratos/issues/1402\" target=\"_blank\"\u003e#1402\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0202dc57aacc0d48e4c1ee4e68c91654451f63fa\" target=\"_blank\"\u003e0202dc5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce DefaultContextualizer in corp package (\u003ca href=\"https://github.com/ory/kratos/issues/1390\" target=\"_blank\"\u003e#1390\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/944d045aa7fc59eadfdd18951f0d4937b1ea79df\" target=\"_blank\"\u003e944d045\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1363\" target=\"_blank\"\u003e#1363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove cleansql to separate package (\u003ca href=\"https://github.com/ory/kratos/commit/7c203dc8219afe07f180143f832158615b51f60a\" target=\"_blank\"\u003e7c203dc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd docs for registration SPA flow (\u003ca href=\"https://github.com/ory/kratos/commit/84458f1a9dfe8be6a97bddd832fcc508b60b8498\" target=\"_blank\"\u003e84458f1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd go sdk examples (\u003ca href=\"https://github.com/ory/kratos/commit/e948faddce3a1f52df964c701f6ba2a28f5dfe03\" target=\"_blank\"\u003ee948fad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd replit instructions (\u003ca href=\"https://github.com/ory/kratos/commit/8ab8607dee433f6e708ade296a6c26d0a87d0aae\" target=\"_blank\"\u003e8ab8607\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd tested and running go sdk examples (\u003ca href=\"https://github.com/ory/kratos/commit/3b56bb5fd37d0e7d4479967aa0b5721a68a267f2\" target=\"_blank\"\u003e3b56bb5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix typo in \u0026ldquo;Sign in/up with ID \u0026amp; assword\u0026rdquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1383\" target=\"_blank\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f39739d94e97f20b94630b957371d11294dc8300\" target=\"_blank\"\u003ef39739d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMark login endpoints as experimental (\u003ca href=\"https://github.com/ory/kratos/commit/6faf0f65bb05bbafdee6b1274a719695fd5b4173\" target=\"_blank\"\u003e6faf0f6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate docs for all flows (\u003ca href=\"https://github.com/ory/kratos/commit/d29ea69f6bb908b529502030942b1ced52227372\" target=\"_blank\"\u003ed29ea69\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate documentation for plaintext templates (\u003ca href=\"https://github.com/ory/kratos/issues/1369\" target=\"_blank\"\u003e#1369\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/419784dd0d4ddc338830ed0d77a7d99f8f440777\" target=\"_blank\"\u003e419784d\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1351\" target=\"_blank\"\u003e#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate path (\u003ca href=\"https://github.com/ory/kratos/commit/f0384d9c11085230fd16290c524d22fac6002870\" target=\"_blank\"\u003ef0384d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate sdk use (\u003ca href=\"https://github.com/ory/kratos/commit/bcb8c06ee324c639e548fc06315d9e952f470582\" target=\"_blank\"\u003ebcb8c06\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct path (\u003ca href=\"https://github.com/ory/kratos/issues/1333\" target=\"_blank\"\u003e#1333\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e401135cf415d7e3e6a8ca463dd47e46fe399b33\" target=\"_blank\"\u003ee401135\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd GetContextualizer (\u003ca href=\"https://github.com/ory/kratos/commit/ac3271742c9c2b968b08dd2b35a5d120c5befcd9\" target=\"_blank\"\u003eac32717\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd instana as possible tracing provider (\u003ca href=\"https://github.com/ory/kratos/issues/1429\" target=\"_blank\"\u003e#1429\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/abe48a97ee75567979a70f00dd73ff698efcc75d\" target=\"_blank\"\u003eabe48a9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1385\" target=\"_blank\"\u003e#1385\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd vk and yandex providers to oidc providers and documentation (\u003ca href=\"https://github.com/ory/kratos/issues/1339\" target=\"_blank\"\u003e#1339\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/22a3ef98181eb5922cc0f1c016d42ce46732d0a2\" target=\"_blank\"\u003e22a3ef9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1234\" target=\"_blank\"\u003e#1234\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove contextualization in serve/daemon (\u003ca href=\"https://github.com/ory/kratos/commit/f83cd355422fb4b422f703406473bda914d8419c\" target=\"_blank\"\u003ef83cd35\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude Credentials Metadata in admin api (\u003ca href=\"https://github.com/ory/kratos/issues/1274\" target=\"_blank\"\u003e#1274\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c8b62190fca53db4e1b3a4ddb5253fbd2fd46002\" target=\"_blank\"\u003ec8b6219\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/820\" target=\"_blank\"\u003e#820\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude Credentials Metadata in admin api Missing changes in handler (\u003ca href=\"https://github.com/ory/kratos/issues/1366\" target=\"_blank\"\u003e#1366\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a71c2208dedac45d32dab578e62a5e3105c8dee0\" target=\"_blank\"\u003ea71c220\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for login flows (\u003ca href=\"https://github.com/ory/kratos/commit/6ff67afa8b0fc0a95cec44d3dda2cbc1987b51dd\" target=\"_blank\"\u003e6ff67af\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1138\" target=\"_blank\"\u003e#1138\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/668\" target=\"_blank\"\u003e#668\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/login/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the login flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for recovery flows (\u003ca href=\"https://github.com/ory/kratos/commit/5461244943286081e13c304a3b38413b8ee6fdf2\" target=\"_blank\"\u003e5461244\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/recovery/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for registration flows (\u003ca href=\"https://github.com/ory/kratos/commit/57d3c5786a88f0648e7fa57f181f060a057ec19f\" target=\"_blank\"\u003e57d3c57\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1138\" target=\"_blank\"\u003e#1138\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/668\" target=\"_blank\"\u003e#668\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/registration/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for settings flows (\u003ca href=\"https://github.com/ory/kratos/commit/ea4395ed25d5668e4ce365336cd7a5e13e0ba1cc\" target=\"_blank\"\u003eea4395e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/settings/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eNatively support SPA for verification flows (\u003ca href=\"https://github.com/ory/kratos/commit/c1515009dcd1b5946a93733feedb01753de91c3d\" target=\"_blank\"\u003ec151500\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the long-awaited capabilities for natively working with SPAs and AJAX requests. Previously, requests to the \u003ccode\u003e/self-service/verification/browser\u003c/code\u003e endpoint would always end up in a redirect. Now, if the \u003ccode\u003eAccept\u003c/code\u003e header is set to \u003ccode\u003eapplication/json\u003c/code\u003e, the registration flow will be returned as JSON instead. Accordingly, changes to the error and submission flow have been made to support \u003ccode\u003eapplication/json\u003c/code\u003e content types and SPA / AJAX requests.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSign in with Auth0 (\u003ca href=\"https://github.com/ory/kratos/issues/1352\" target=\"_blank\"\u003e#1352\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f618a53fb971ad16121aa8728cfec54253bb3f44\" target=\"_blank\"\u003ef618a53\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/609\" target=\"_blank\"\u003e#609\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport api in settings error (\u003ca href=\"https://github.com/ory/kratos/commit/23105dbb836d920b8766536b65de58932f53d6f6\" target=\"_blank\"\u003e23105db\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport reading session token from X-Session-Token HTTP header (\u003ca href=\"https://github.com/ory/kratos/commit/dcaefd94a0b2cf819424f2e10b3bdae63b256726\" target=\"_blank\"\u003edcaefd9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eTeam id in slack oidc (\u003ca href=\"https://github.com/ory/kratos/issues/1409\" target=\"_blank\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e4d021a037a6b44f8bd66372e9c260c640e87b9d\" target=\"_blank\"\u003ee4d021a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1408\" target=\"_blank\"\u003e#1408\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate openapi specs and regenerate (\u003ca href=\"https://github.com/ory/kratos/commit/cac507eb5b1f39d003d72e57912dbbfe6f92deb1\" target=\"_blank\"\u003ecac507e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eidentities:\u003c/strong\u003e Add a state to identities (\u003ca href=\"https://github.com/ory/kratos/issues/1312\" target=\"_blank\"\u003e#1312\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d22954e2fdb7b2dd5206651b6dd5cf96185a33ba\" target=\"_blank\"\u003ed22954e\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/598\" target=\"_blank\"\u003e#598\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd tests for cookie behavior of API and browser endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/d1b15217867cfb92a615c793b26fad288f5e5742\" target=\"_blank\"\u003ed1b1521\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete console.log (\u003ca href=\"https://github.com/ory/kratos/commit/3ecc869ebfef5c97334ae4334fb4af98ca9baf97\" target=\"_blank\"\u003e3ecc869\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve e2e regressions (\u003ca href=\"https://github.com/ory/kratos/commit/b0d3b82f301942bebe3c0027c8b3160749f907af\" target=\"_blank\"\u003eb0d3b82\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve migratest panic (\u003ca href=\"https://github.com/ory/kratos/commit/89d05ae0c376c4ea1f23708cccf95c9754a29c94\" target=\"_blank\"\u003e89d05ae\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ee2e:\u003c/strong\u003e Greatly improve test performance (\u003ca href=\"https://github.com/ory/kratos/issues/1421\" target=\"_blank\"\u003e#1421\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2ffad9ee751471451e2151719a2e70d5f89437b0\" target=\"_blank\"\u003e2ffad9e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eInstead of running the individual profiles as separate Cypress instances, we now use one singular instance which updates the Ory Kratos configuration depending on the test context. This ensures that hot-reloading is properly working while also signficantly reducing the amount of time spent on booting up the service dependencies.\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eadd CoC shield (#1439) (\u003ca href=\"https://github.com/ory/kratos/commit/826ed1a6deafdc2631a5c72f0bfacc91b06a3435\" target=\"_blank\"\u003e826ed1a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1439\" target=\"_blank\"\u003e#1439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eu (\u003ca href=\"https://github.com/ory/kratos/commit/b03549b6340ec0bf4f9d741ce145ca90bbc09968\" target=\"_blank\"\u003eb03549b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/5cc9fc3a6e91a96225d016d60c8da5cef647ac18\" target=\"_blank\"\u003e5cc9fc3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eu (\u003ca href=\"https://github.com/ory/kratos/commit/318a31d400b97653b4f377c67df4ae0afea189d9\" target=\"_blank\"\u003e318a31d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/e525805246431075d26c3f47596ae93f6580d8ee\" target=\"_blank\"\u003ee525805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/4a692acc7db160068ed7d81461b173bc957e4736\" target=\"_blank\"\u003e4a692ac\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/169c0cd8d424babef69a52ddf65e2b75ded09a46\" target=\"_blank\"\u003e169c0cd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eUnfortunately, some method signatures have changed in the SDKs. Below is a list of changed entries:\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eError \u003ccode\u003egenericError\u003c/code\u003e was renamed to \u003ccode\u003ejsonError\u003c/code\u003e and now includes more information and better typing for errors;\u003c/li\u003e\n\u003cli\u003eThe following functions have been renamed:\n\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceLoginViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceLoginForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceLoginViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceLoginForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRegistrationViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRegistrationForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRegistrationViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRegistrationForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceSettingsViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceSettingsForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceSettingsViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceSettingsForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRecoveryViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRecoveryForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceRecoveryViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceRecoveryForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceVerificationViaAPIFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceVerificationForNativeApps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003einitializeSelfServiceVerificationViaBrowserFlow\u003c/code\u003e -\u0026gt; \u003ccode\u003einitializeSelfServiceVerificationForBrowsers\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\u003c/li\u003e\n\u003cli\u003eSome type names have changed, for example \u003ccode\u003etraits\u003c/code\u003e -\u0026gt; \u003ccode\u003eidentityTraits\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eProperly handle CSRF for API flows in recovery and verification strategies (\u003ca href=\"https://github.com/ory/kratos/commit/461c829dc4d7f7b70620abee2263efba78ce463a\" target=\"_blank\"\u003e461c829\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1141\" target=\"_blank\"\u003e#1141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esession:\u003c/strong\u003e Use specific headers before bearer use (\u003ca href=\"https://github.com/ory/kratos/commit/82c0b545b29b30fcf3521d9621ec5c5f1a23dc96\" target=\"_blank\"\u003e82c0b54\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove settings oas definition (\u003ca href=\"https://github.com/ory/kratos/commit/867abfc813b08142786f71bfe28e373d4754c959\" target=\"_blank\"\u003e867abfc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct api spec path (\u003ca href=\"https://github.com/ory/kratos/commit/5f41f87bea2919cdf4e9f55c6ad938c5bc08b619\" target=\"_blank\"\u003e5f41f87\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct openapi path for validation (\u003ca href=\"https://github.com/ory/kratos/issues/1340\" target=\"_blank\"\u003e#1340\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a0f5673d6aa4e60bab06ef699dce231f0bf4aeff\" target=\"_blank\"\u003ea0f5673\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.3-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/5edf9524d812795ac5712e4a9541b34359234724\" target=\"_blank\"\u003e5edf952\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eImprove SDK experience (\u003ca href=\"https://github.com/ory/kratos/commit/71b8511ae1f6f77b2996a01a55accc99d171cfaf\" target=\"_blank\"\u003e71b8511\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch resolves UX issues in the auto-generated SDKs by using consistent naming and introducing a test suite for the Ory SaaS.\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.2-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/99c1b1d674df3bd8263f7cbf1ed2bdfae6281f69\" target=\"_blank\"\u003e99c1b1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eUpdate link to example email template. (\u003ca href=\"https://github.com/ory/kratos/issues/1326\" target=\"_blank\"\u003e#1326\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/28a17234b557cabf17b592ee68041aec695f6d20\" target=\"_blank\"\u003e28a1723\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.1-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/1df82daaf3f9cfd3a470d7c9bf8d96abbd52b872\" target=\"_blank\"\u003e1df82da\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAllow changing password validation API DNS name (\u003ca href=\"https://github.com/ory/kratos/issues/1009\" target=\"_blank\"\u003e#1009\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ced85e8091b06d864cc55c9975f8b006f6be1ce4\" target=\"_blank\"\u003eced85e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eUpdate node image (\u003ca href=\"https://github.com/ory/kratos/commit/eef307e6bc33c9ec36ed9138f99c19f72c7be575\" target=\"_blank\"\u003eeef307e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.0-alpha.2 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/a3658badb848656b61d54b3ee35114972afc1f35\" target=\"_blank\"\u003ea3658ba\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix unexpected emails when update profile (\u003ca href=\"https://github.com/ory/kratos/issues/1300\" target=\"_blank\"\u003e#1300\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7b2448566f82e69d555997654ee410f9b4ff3939\" target=\"_blank\"\u003e7b24485\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1221\" target=\"_blank\"\u003e#1221\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\n\u003cp\u003eBCrypt is now the default hashing alogrithm. If you wish to continue using Argon2id please set \u003ccode\u003ehashers.algorithm\u003c/code\u003e to \u003ccode\u003eargon2\u003c/code\u003e.\nThis implies a significant breaking change in the verification flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all verification flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the recovery flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all recovery flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the settings flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all settings flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the registration flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all registration flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis implies a significant breaking change in the login flow payload. Please consult the new ui documentation. In essence, the login flow\u0026rsquo;s \u003ccode\u003emethods\u003c/code\u003e key was replaced with a generic \u003ccode\u003eui\u003c/code\u003e key which provides information for the UI that needs to be rendered.\u003c/p\u003e\n\n\u003cp\u003eTo apply this patch you must apply SQL migrations. These migrations will drop the flow method table implying that all login flows that are ongoing will become invalid. We recommend purging the flow table manually as well after this migration has been applied, if you have users doing at least one self-service flow per minute.\nThis change introduces a new feature: UI Nodes. Previously, all self-service flows (login, registration, \u0026hellip;) included form fields (e.g. \u003ccode\u003emethods.password.config.fields\u003c/code\u003e). However, these form fields lacked support for other types of UI elements such as links (for e.g. \u0026ldquo;Sign in with Google\u0026rdquo;), images (e.g. QR codes), javascript (e.g. WebAuthn), or text (e.g. recovery codes). With this patch, these new features have been introduced. Please be aware that this introduces significant breaking changes which you will need to adopt to in your UI. Please refer to the most recent documentation to see what has changed. Conceptionally, most things stayed the same - you do however need to update how you access and render the form fields.\u003c/p\u003e\n\n\u003cp\u003ePlease be also aware that this patch includes SQL migrations which \u003cstrong\u003epurge existing self-service forms\u003c/strong\u003e from the database. This means that users will need to re-start the login/registration/\u0026hellip; flow after the SQL migrations have been applied! If you wish to keep these records, make a back up of your database prior!\nThis change introduces a new feature: UI Nodes. Previously, all self-service flows (login, registration, \u0026hellip;) included form fields (e.g. \u003ccode\u003emethods.password.config.fields\u003c/code\u003e). However, these form fields lacked support for other types of UI elements such as links (for e.g. \u0026ldquo;Sign in with Google\u0026rdquo;), images (e.g. QR codes), javascript (e.g. WebAuthn), or text (e.g. recovery codes). With this patch, these new features have been introduced. Please be aware that this introduces significant breaking changes which you will need to adopt to in your UI. Please refer to the most recent documentation to see what has changed. Conceptionally, most things stayed the same - you do however need to update how you access and render the form fields.\u003c/p\u003e\n\n\u003cp\u003ePlease be also aware that this patch includes SQL migrations which \u003cstrong\u003epurge existing self-service forms\u003c/strong\u003e from the database. This means that users will need to re-start the login/registration/\u0026hellip; flow after the SQL migrations have been applied! If you wish to keep these records, make a back up of your database prior!\nThe configuration value for \u003ccode\u003ehashers.argon2.memory\u003c/code\u003e is now a string representation of the memory amount including the unit of measurement. To convert the value divide your current setting (KB) by 1024 to get a result in MB or 1048576 to get a result in GB. Example: \u003ccode\u003e131072\u003c/code\u003e would now become \u003ccode\u003e128MB\u003c/code\u003e.\u003c/p\u003e\n\n\u003cp\u003eCo-authored-by: aeneasr \u003ca href=\"mailto:3372410+aeneasr@users.noreply.github.com\" target=\"_blank\"\u003e3372410+aeneasr@users.noreply.github.com\u003c/a\u003e\nCo-authored-by: aeneasr \u003ca href=\"mailto:aeneas@ory.sh\" target=\"_blank\"\u003eaeneas@ory.sh\u003c/a\u003e\nPlease run SQL migrations when applying this patch.\nThe following configuration keys were updated:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode class=\"language-patch\"\u003eselfservice.methods.password.config.max_breaches\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epassword.max_breaches\u003c/code\u003e -\u0026gt; \u003ccode\u003eselfservice.methods.password.config.max_breaches\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epassword.ignore_network_errors\u003c/code\u003e -\u0026gt; \u003ccode\u003eselfservice.methods.password.config.ignore_network_errors\u003c/code\u003e\nAfter battling with \u003ca href=\"https://github.com/spf13/viper\" target=\"_blank\"\u003espf13/viper\u003c/a\u003e for several years we finally found a viable alternative with \u003ca href=\"https://github.com/knadh/koanf\" target=\"_blank\"\u003eknadh/koanf\u003c/a\u003e. The complete internal configuration infrastructure has changed, with several highlights:\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003col\u003e\n\u003cli\u003eConfiguration sourcing works from all sources (file, env, cli flags) with validation against the configuration schema, greatly improving developer experience when changing or updating configuration.\u003c/li\u003e\n\u003cli\u003eConfiguration reloading has improved significantly and works flawlessly on Kubernetes.\u003c/li\u003e\n\u003cli\u003ePerformance increased dramatically, completely removing the need for a cache layer between the configuration system and ORY Hydra.\u003c/li\u003e\n\u003cli\u003eIt is now possible to load several config files using the \u003ccode\u003e--config\u003c/code\u003e flag.\u003c/li\u003e\n\u003cli\u003eConfiguration values are now sent to the tracer (e.g. Jaeger) if tracing is enabled.\u003c/li\u003e\n\u003c/ol\u003e\n\n\u003cp\u003ePlease be aware that ORY Kratos might complain about an invalid configuration, because the validation process has improved significantly.\u003c/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd include stub go files (\u003ca href=\"https://github.com/ory/kratos/commit/6d725b1461a26d99c8b179be8ca219ba83ba0f17\" target=\"_blank\"\u003e6d725b1\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd index to migration status (\u003ca href=\"https://github.com/ory/kratos/commit/8c6ec2741535c090aae16f02a744f56c15923e2b\" target=\"_blank\"\u003e8c6ec27\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd node_modules to format tasks (\u003ca href=\"https://github.com/ory/kratos/commit/e5f6b36caeff080905d15566cf55f8fe4905dbc0\" target=\"_blank\"\u003ee5f6b36\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd titles to identity schema (\u003ca href=\"https://github.com/ory/kratos/commit/73c15d23840aa83d2c99c013cad52ad7df285f18\" target=\"_blank\"\u003e73c15d2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdopt to new go-swagger changes (\u003ca href=\"https://github.com/ory/kratos/commit/5c45bd9f354bfe19b8cbcd7eb4eaebf22c441f42\" target=\"_blank\"\u003e5c45bd9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow absolute file URLs as config values (\u003ca href=\"https://github.com/ory/kratos/issues/1069\" target=\"_blank\"\u003e#1069\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4bb4f679d1fe0a49edb0c0189bb7a2188d4f850d\" target=\"_blank\"\u003e4bb4f67\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow hashtag in ui urls (\u003ca href=\"https://github.com/ory/kratos/issues/1040\" target=\"_blank\"\u003e#1040\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7591f07f7d48376a03e9eacfdb6f4a93fd26c0d5\" target=\"_blank\"\u003e7591f07\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAvoid unicode-escaping ampersand in recovery URL query string (\u003ca href=\"https://github.com/ory/kratos/issues/1212\" target=\"_blank\"\u003e#1212\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d17236870af490f043d87e220179b35c9eb2dd4e\" target=\"_blank\"\u003ed172368\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt regression in credentials counting (\u003ca href=\"https://github.com/ory/kratos/commit/23fc13ba778e0045ca30c00d673ebd6c2f2b7fb7\" target=\"_blank\"\u003e23fc13b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBroken make quickstart-dev task (\u003ca href=\"https://github.com/ory/kratos/issues/980\" target=\"_blank\"\u003e#980\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/999828ae036f20bde6d12fe89851e1fde9bdaca6\" target=\"_blank\"\u003e999828a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/965\" target=\"_blank\"\u003e#965\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBroken make sdk task (\u003ca href=\"https://github.com/ory/kratos/issues/977\" target=\"_blank\"\u003e#977\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5b01c7a368c5bcfaa3af218d42f15288f51ab3e4\" target=\"_blank\"\u003e5b01c7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/950\" target=\"_blank\"\u003e#950\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCall contextualized test helpers (\u003ca href=\"https://github.com/ory/kratos/commit/e1f3f7835696b039409c9d05f63665aba7a179ae\" target=\"_blank\"\u003ee1f3f78\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCode integer parsing bit size (\u003ca href=\"https://github.com/ory/kratos/issues/1178\" target=\"_blank\"\u003e#1178\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/31e9632bcd6ec3bdeabe862a4cce89021c6dd361\" target=\"_blank\"\u003e31e9632\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eIn some cases we had a wrong bitsize of \u003ccode\u003e64\u003c/code\u003e, while the var was later cast to \u003ccode\u003eint\u003c/code\u003e. Replaced with a bitsize of \u003ccode\u003e0\u003c/code\u003e, which is the value to cast to \u003ccode\u003eint\u003c/code\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize identity persister (\u003ca href=\"https://github.com/ory/kratos/commit/f8640c04f0c5873c39c8af4652d16bfbd347b79e\" target=\"_blank\"\u003ef8640c0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eConvert all identifiers to lower case on login (\u003ca href=\"https://github.com/ory/kratos/issues/815\" target=\"_blank\"\u003e#815\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d64b5757c710c436d6789dbdb33ed04dc11cbdf9\" target=\"_blank\"\u003ed64b575\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/814\" target=\"_blank\"\u003e#814\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier adress (\u003ca href=\"https://github.com/ory/kratos/issues/1198\" target=\"_blank\"\u003e#1198\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ebe4e643150f7603a1e3a3cf6f909135097b3f49\" target=\"_blank\"\u003eebe4e64\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1194\" target=\"_blank\"\u003e#1194\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier message dequeue race condition (\u003ca href=\"https://github.com/ory/kratos/issues/1024\" target=\"_blank\"\u003e#1024\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5396a82c34eef5d42444b5c4371bd4f820fe3eb0\" target=\"_blank\"\u003e5396a82\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/652\" target=\"_blank\"\u003e#652\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/732\" target=\"_blank\"\u003e#732\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eFixes the courier message dequeuing race condition by modifying \u003ccode\u003e*sql.Persister.NextMessages(ctx context.Context, limit uint8)\u003c/code\u003e to retrieve only messages with status \u003ccode\u003eMessageStatusQueued\u003c/code\u003e and update the status of the retrieved messages to \u003ccode\u003eMessageStatusProcessing\u003c/code\u003e within a transaction. On message send failure, the message\u0026rsquo;s status is reset to \u003ccode\u003eMessageStatusQueued\u003c/code\u003e, so that the message can be dequeued in a subsequent \u003ccode\u003eNextMessages\u003c/code\u003e call. On message send success, the status is updated to \u003ccode\u003eMessageStatusSent\u003c/code\u003e (no change there).\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDefine credentials types as sql template and resolve crdb issue (\u003ca href=\"https://github.com/ory/kratos/commit/a2d6eeb2928c9750741237f559197fd80494310d\" target=\"_blank\"\u003ea2d6eeb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDereference pointer types from new flow structures (\u003ca href=\"https://github.com/ory/kratos/issues/1019\" target=\"_blank\"\u003e#1019\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/efedc920e592bd6e963726e6b123ddc40df93a59\" target=\"_blank\"\u003eefedc92\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not include smtp in tracing (\u003ca href=\"https://github.com/ory/kratos/issues/1268\" target=\"_blank\"\u003e#1268\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bbfcbf9ce595d842a53a3ea21c286d5899eeb28f\" target=\"_blank\"\u003ebbfcbf9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not publish version at public endpoint (\u003ca href=\"https://github.com/ory/kratos/commit/3726ed4d145a949b25f5b5da5f58d4f448a2a90f\" target=\"_blank\"\u003e3726ed4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not reset registration method (\u003ca href=\"https://github.com/ory/kratos/commit/554bb0b4e62e4ac2a321fa4dbf89ffdf37b188df\" target=\"_blank\"\u003e554bb0b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not return system errors for missing identifiers (\u003ca href=\"https://github.com/ory/kratos/commit/1fcc8557bfee0f7ba562a635670b61dc9acb3530\" target=\"_blank\"\u003e1fcc855\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1286\" target=\"_blank\"\u003e#1286\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExport mailhog dockertest runner (\u003ca href=\"https://github.com/ory/kratos/commit/138414873ad319c6c32c6cc64a73547540dffc74\" target=\"_blank\"\u003e1384148\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix random delay norm distribution math (\u003ca href=\"https://github.com/ory/kratos/issues/1131\" target=\"_blank\"\u003e#1131\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bd9d28fe354710957f4ebaf71d1fffeae3968364\" target=\"_blank\"\u003ebd9d28f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFork audit logger from root logger (\u003ca href=\"https://github.com/ory/kratos/commit/68a09e7f3dc3ded9a477bb309c68ac8c4e2c2836\" target=\"_blank\"\u003e68a09e7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGitlab oidc flow (\u003ca href=\"https://github.com/ory/kratos/issues/1159\" target=\"_blank\"\u003e#1159\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0bb3eb6db1144a09f4ac356cc45e1644d862bb70\" target=\"_blank\"\u003e0bb3eb6\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1157\" target=\"_blank\"\u003e#1157\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGive specific message instead of only 404 when method is disabled (\u003ca href=\"https://github.com/ory/kratos/issues/1025\" target=\"_blank\"\u003e#1025\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2f62041a62588f5b3b062092c57053facb858e62\" target=\"_blank\"\u003e2f62041\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eEnabled strategies are not only used for handlers but also in other areas\n(e.g. populating the flow methods). So we should keep the logic to get\nenabled strategies and add new functions for getting all strategies.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIgnore unset domain aliases (\u003ca href=\"https://github.com/ory/kratos/commit/ada6997ff3dc7e48fd098e40267db5f231a5201f\" target=\"_blank\"\u003eada6997\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove cli error output (\u003ca href=\"https://github.com/ory/kratos/commit/43e967887280b57639565dabd92a07f02fbddeb5\" target=\"_blank\"\u003e43e9678\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove error stack trace (\u003ca href=\"https://github.com/ory/kratos/commit/43517737109088eda3b1d7f5b42f78bd5eb701d2\" target=\"_blank\"\u003e4351773\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove error tracing (\u003ca href=\"https://github.com/ory/kratos/issues/1005\" target=\"_blank\"\u003e#1005\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/456fd254485fc80b9ae02dfca672a9fea8ae0134\" target=\"_blank\"\u003e456fd25\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove test contextualization (\u003ca href=\"https://github.com/ory/kratos/commit/2f92a7066d72535d32146a98207996fda45e0b96\" target=\"_blank\"\u003e2f92a70\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInitialize randomdelay with seeded source (\u003ca href=\"https://github.com/ory/kratos/commit/9896289216f10b808a8c78b86d9c27b8d74379de\" target=\"_blank\"\u003e9896289\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInsert credentials type constants as part of migrations (\u003ca href=\"https://github.com/ory/kratos/issues/865\" target=\"_blank\"\u003e#865\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/92b79b86762edddf2ad6529b98b3383b641148d5\" target=\"_blank\"\u003e92b79b8\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/861\" target=\"_blank\"\u003e#861\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eLinking a connection may result in system error (\u003ca href=\"https://github.com/ory/kratos/issues/990\" target=\"_blank\"\u003e#990\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/be02a70c3cd60adbcc13559e1cb5dc01a8572da4\" target=\"_blank\"\u003ebe02a70\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/694\" target=\"_blank\"\u003e#694\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMarking whoami auhorization parameter as \u0026lsquo;in header\u0026rsquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1244\" target=\"_blank\"\u003e#1244\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/62d8b85223a0535b07620b08d35c6c3f6b127642\" target=\"_blank\"\u003e62d8b85\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1215\" target=\"_blank\"\u003e#1215\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove schema loaders to correct file (\u003ca href=\"https://github.com/ory/kratos/commit/029781f69448e8abc85607a03b4bd2055158cf2c\" target=\"_blank\"\u003e029781f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove to new transaction-safe migrations (\u003ca href=\"https://github.com/ory/kratos/issues/1063\" target=\"_blank\"\u003e#1063\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2588fb489d76939aeec2986d30fde9075b373831\" target=\"_blank\"\u003e2588fb4\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch introduces a new SQL transaction model for running SQL migrations. This fix is particularly targeted at CockroachDB which has limited support for mixing DDL and DML statements.\u003c/p\u003e\n\n\u003cp\u003ePreviously it could happen that migrations failure needed manual intervention. This has now been resolved. The new migration model is compatible with the old one and should work without a problem.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePass down context to registry (\u003ca href=\"https://github.com/ory/kratos/commit/08794461ed95965a9e5460ded2b4c04ab0f5e2e8\" target=\"_blank\"\u003e0879446\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRe-enable SDK generation (\u003ca href=\"https://github.com/ory/kratos/commit/1d5854d6298e3d21f85a8fa01d3004166c4b3f50\" target=\"_blank\"\u003e1d5854d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRecord cypress runs (\u003ca href=\"https://github.com/ory/kratos/commit/db35d8ff6bb44dc9e9acf131cb0a14a7f4a7d160\" target=\"_blank\"\u003edb35d8f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRehydrate settings form on successful submission (\u003ca href=\"https://github.com/ory/kratos/commit/3457e1a46f48ed79eabff76f8af08b82f12ecc89\" target=\"_blank\"\u003e3457e1a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1305\" target=\"_blank\"\u003e#1305\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove absolete \u0026lsquo;make pack\u0026rsquo; from Dockerfile (\u003ca href=\"https://github.com/ory/kratos/issues/1172\" target=\"_blank\"\u003e#1172\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b8eb908529cc72a3147ad28e4eeee71850a8e431\" target=\"_blank\"\u003eb8eb908\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove continuity cookies on errors (\u003ca href=\"https://github.com/ory/kratos/commit/85eea6748be6ae8cdfc10cabaa6b677e4efd63eb\" target=\"_blank\"\u003e85eea67\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove include stubs (\u003ca href=\"https://github.com/ory/kratos/commit/1764e3a08a24db82dc391a77fdea09a91faffb5f\" target=\"_blank\"\u003e1764e3a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete clihelpers (\u003ca href=\"https://github.com/ory/kratos/commit/230fd138d1bc7ec57647ea8eeca8e17baaacce0a\" target=\"_blank\"\u003e230fd13\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove record from bash script (\u003ca href=\"https://github.com/ory/kratos/commit/84a9315a824cacd29d30b98b65725343af22732d\" target=\"_blank\"\u003e84a9315\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove stray non-ctx configs (\u003ca href=\"https://github.com/ory/kratos/issues/1053\" target=\"_blank\"\u003e#1053\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1fe137e0d6314bd0af47a29c00e2f72564e71cef\" target=\"_blank\"\u003e1fe137e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove trailing double-dot from error (\u003ca href=\"https://github.com/ory/kratos/commit/59581e3fede0fd43028a5f064c350c3cc833b5b0\" target=\"_blank\"\u003e59581e3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unused sql migration (\u003ca href=\"https://github.com/ory/kratos/commit/1445d1d1b4b0b5e8ef3426a98ced9573063d8646\" target=\"_blank\"\u003e1445d1d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unused var (\u003ca href=\"https://github.com/ory/kratos/commit/30a8cee22238d9f400e6d315a9bc99f710945f81\" target=\"_blank\"\u003e30a8cee\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove verify hook (\u003ca href=\"https://github.com/ory/kratos/commit/98cfec6d72c2e7bf2db2e8dd6f8875e885923ba8\" target=\"_blank\"\u003e98cfec6\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1302\" target=\"_blank\"\u003e#1302\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThe verify hook is automatically used when verification is enabled and has been removed as a configuration option.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace jwt module (\u003ca href=\"https://github.com/ory/kratos/issues/1254\" target=\"_blank\"\u003e#1254\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3803c8ce43e35c51a9c1d7ab55bc662c398cf0d8\" target=\"_blank\"\u003e3803c8c\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1250\" target=\"_blank\"\u003e#1250\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve build and release issues (\u003ca href=\"https://github.com/ory/kratos/commit/fb582aa06ad55ca3fd4e2b083e1e9bbb4ba7c715\" target=\"_blank\"\u003efb582aa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve clidoc issues (\u003ca href=\"https://github.com/ory/kratos/commit/599e9f773a743f811329cc57cea2748831105e58\" target=\"_blank\"\u003e599e9f7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve compile issues (\u003ca href=\"https://github.com/ory/kratos/commit/63063c15c17f4d3aca96b106275a3478a8ed717e\" target=\"_blank\"\u003e63063c1\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve contextualized table issues (\u003ca href=\"https://github.com/ory/kratos/commit/5a4f0d92800df7fb5ca0df18203a6d73416814e1\" target=\"_blank\"\u003e5a4f0d9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve crdb migration issue (\u003ca href=\"https://github.com/ory/kratos/commit/9f6edfd1f544d5f85e5f5558a08672f40e928136\" target=\"_blank\"\u003e9f6edfd\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve double hook invokation for registration (\u003ca href=\"https://github.com/ory/kratos/commit/032322c66fb6925d8f1473746cb4bfd800d60590\" target=\"_blank\"\u003e032322c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve incorrect field types on oidc sign up completion (\u003ca href=\"https://github.com/ory/kratos/commit/f88b6abe202605739092a8230fbdebaebcd4407a\" target=\"_blank\"\u003ef88b6ab\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve lint issues (\u003ca href=\"https://github.com/ory/kratos/commit/03488250bcdbfda6ef6a536b4de6117fa8924dc8\" target=\"_blank\"\u003e0348825\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve lint issues (\u003ca href=\"https://github.com/ory/kratos/commit/75a995b3f69778655611929b65ae22bd77c5370b\" target=\"_blank\"\u003e75a995b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve linting issues and disable nancy (\u003ca href=\"https://github.com/ory/kratos/commit/c8396f6007831240d83f77433876c5971a2191ef\" target=\"_blank\"\u003ec8396f6\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve mail queue issues (\u003ca href=\"https://github.com/ory/kratos/commit/b968bc4ed8962d421175adbcaa2dba6eaeea2245\" target=\"_blank\"\u003eb968bc4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve merge regressions (\u003ca href=\"https://github.com/ory/kratos/commit/9862ac72e0877df4cf17c93e140c354e1ddbd0e7\" target=\"_blank\"\u003e9862ac7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve oidc e2e regressions (\u003ca href=\"https://github.com/ory/kratos/commit/f28087aaf133c116a81213f787dc6f2e982564c0\" target=\"_blank\"\u003ef28087a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve oidc regressions and e2e tests (\u003ca href=\"https://github.com/ory/kratos/commit/f5091fac161db0b1401b340a002278bc26891251\" target=\"_blank\"\u003ef5091fa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve potential fsnotify leaks (\u003ca href=\"https://github.com/ory/kratos/commit/3159c0abe109ea4e3832770278c4e9bc4ca3b3e1\" target=\"_blank\"\u003e3159c0a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve regressions and test failures (\u003ca href=\"https://github.com/ory/kratos/commit/8bae3565ea5410b60c3e638a49f5454fac8e63d3\" target=\"_blank\"\u003e8bae356\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve regressions in cookies and payloads (\u003ca href=\"https://github.com/ory/kratos/commit/9e34bf2f6a2f3b007069a5415643c448798207a6\" target=\"_blank\"\u003e9e34bf2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve settings sudo regressions (\u003ca href=\"https://github.com/ory/kratos/commit/4b611f34755369eafcbafa2fc16da13ea3b82370\" target=\"_blank\"\u003e4b611f3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve test regressions (\u003ca href=\"https://github.com/ory/kratos/commit/e3fb0281dd9be123271d11f2934cfb08fdc470b7\" target=\"_blank\"\u003ee3fb028\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve ui issues with nested form objects (\u003ca href=\"https://github.com/ory/kratos/commit/8e744b931954283cf5f5cbf3ebaca3fa94e035ed\" target=\"_blank\"\u003e8e744b9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve update regression (\u003ca href=\"https://github.com/ory/kratos/commit/d0d661aaffcba8b039738b773c891ee6e8f6449e\" target=\"_blank\"\u003ed0d661a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReturn delay instead of sleeping to improve tests (\u003ca href=\"https://github.com/ory/kratos/commit/27b977ebbaa25b95caa7e3e4536a09ea0bfa61c3\" target=\"_blank\"\u003e27b977e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRevert generator changes (\u003ca href=\"https://github.com/ory/kratos/commit/c18b97f333a638d4b4495678013c55faca4b04d0\" target=\"_blank\"\u003ec18b97f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRun correct error handler for registration hooks (\u003ca href=\"https://github.com/ory/kratos/commit/0d80447102d5092e310ca728012f083147c0c5c9\" target=\"_blank\"\u003e0d80447\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSimplify data breaches password error reason (\u003ca href=\"https://github.com/ory/kratos/issues/1136\" target=\"_blank\"\u003e#1136\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/33d29bf72af03aea77f1d318c19f5087a506719f\" target=\"_blank\"\u003e33d29bf\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis PR simplifies the error reason given when a password has appeared in data breaches to not include the actual number and rather just show \u0026ldquo;this password has appeared in data breaches and must not be used\u0026rdquo;.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport form and json formats in decoder (\u003ca href=\"https://github.com/ory/kratos/commit/d420fe6e8a491b20063d4bfeaa0a841058087d32\" target=\"_blank\"\u003ed420fe6\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate openapi definitions for signup (\u003ca href=\"https://github.com/ory/kratos/commit/eb0b69d50ce834b170186a39bbc9cda4d3366c36\" target=\"_blank\"\u003eeb0b69d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate quickstart node image (\u003ca href=\"https://github.com/ory/kratos/commit/c19b2f4c57307e27ce289d44eff34f5aec1341da\" target=\"_blank\"\u003ec19b2f4\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/1301\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/1301\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ecmd:\u003c/strong\u003e Make HTTP calls resilient (\u003ca href=\"https://github.com/ory/kratos/commit/e8ed61fc3e806453f78b8fa629e96ff7b320bf95\" target=\"_blank\"\u003ee8ed61f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ehashing:\u003c/strong\u003e Make bcrypt default hashing algorithm (\u003ca href=\"https://github.com/ory/kratos/commit/04abe774ada1ef4bf318658fcf84c1d39a2a922d\" target=\"_blank\"\u003e04abe77\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate to new goreleaser config (\u003ca href=\"https://github.com/ory/kratos/commit/4c2a1b7f5a0059a6e0c28779808ffb27e8910553\" target=\"_blank\"\u003e4c2a1b7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate to new healthx (\u003ca href=\"https://github.com/ory/kratos/commit/6ec987ae81ef0c05f2c4d1eb836c40f9d15950b2\" target=\"_blank\"\u003e6ec987a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse equalfold (\u003ca href=\"https://github.com/ory/kratos/commit/1c0e52ec36ff95b53e3537c5ef457f1c818d7f6b\" target=\"_blank\"\u003e1c0e52e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse new TB interface (\u003ca href=\"https://github.com/ory/kratos/commit/d75a378e700a206753f2cb17032315f2981960e7\" target=\"_blank\"\u003ed75a378\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse numerical User ID instead of name to avoid k8s security warnings (\u003ca href=\"https://github.com/ory/kratos/issues/1151\" target=\"_blank\"\u003e#1151\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/468a12e56f22cfdf7bd05d68159cc735e75211b2\" target=\"_blank\"\u003e468a12e\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eOur docker image scanner does not allow running processes inside\ncontainer using non-numeric User spec (to determine if we are trying\nto run docker image as root).\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse remote dependencies (\u003ca href=\"https://github.com/ory/kratos/commit/1e56457d49e1cde69baa41e3111ca113aa49ee3c\" target=\"_blank\"\u003e1e56457\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.6.0-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/507d13a8ec9cd89c9933fc8814a8a99921da69fb\" target=\"_blank\"\u003e507d13a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdapt new sdk in testhelpers (\u003ca href=\"https://github.com/ory/kratos/commit/6e15f6f86c0f146e846a384ffd6eac78406178bc\" target=\"_blank\"\u003e6e15f6f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd nid everywhere (\u003ca href=\"https://github.com/ory/kratos/commit/407fd95889f416f0d76d6f3f43644a6fafa13b44\" target=\"_blank\"\u003e407fd95\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize everything (\u003ca href=\"https://github.com/ory/kratos/commit/7ebc3a9a1a2cd85d28c5a9adf2c0c8c10cbd072e\" target=\"_blank\"\u003e7ebc3a9\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch contextualizes all configuration and DBAL models.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not use prefixed node names (\u003ca href=\"https://github.com/ory/kratos/commit/fc42ece24107dcb6e6a416cc54a2fb5de524fd94\" target=\"_blank\"\u003efc42ece\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove Argon2 tooling (\u003ca href=\"https://github.com/ory/kratos/issues/961\" target=\"_blank\"\u003e#961\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/315118720419194be8baf5e5e64d7bf190179568\" target=\"_blank\"\u003e3151187\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/955\" target=\"_blank\"\u003e#955\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis adds a load testing CLI that allows to adjust the hasher parameters under simulated load.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove faker to exportable module (\u003ca href=\"https://github.com/ory/kratos/commit/09f8ae5755c9978574e91676bf5df6a23a2feb78\" target=\"_blank\"\u003e09f8ae5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove migratest helpers to ory/x (\u003ca href=\"https://github.com/ory/kratos/commit/7eca67eb9ec3e4ab065af7221911a74ed16c7c48\" target=\"_blank\"\u003e7eca67e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove password config to selfservice (\u003ca href=\"https://github.com/ory/kratos/commit/cd0e0ebb0de372ff31c982ef023fe1979addb05a\" target=\"_blank\"\u003ecd0e0eb\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMove to go 1.16 embed (\u003ca href=\"https://github.com/ory/kratos/commit/43c4a13c25be4a3a23a1ffdbecfaa0f9eda1a11d\" target=\"_blank\"\u003e43c4a13\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch replaces packr and pkged with the Go 1.16 embed feature.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove password node attribute prefix (\u003ca href=\"https://github.com/ory/kratos/commit/e27fae4b0d7a91ff3964804963d4885178b80803\" target=\"_blank\"\u003ee27fae4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove profile node attribute prefix (\u003ca href=\"https://github.com/ory/kratos/commit/a3ff6f7eec45b1a9a1e7eb8569793fbc6a047d4f\" target=\"_blank\"\u003ea3ff6f7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename config structs and interfaces (\u003ca href=\"https://github.com/ory/kratos/commit/4a2f41977439354415118df3e37dd0cde8dac1aa\" target=\"_blank\"\u003e4a2f419\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRename form to container (\u003ca href=\"https://github.com/ory/kratos/commit/5da155a07d3737cefabaf98c4ff650115f662480\" target=\"_blank\"\u003e5da155a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace flow\u0026rsquo;s forms with new ui node module (\u003ca href=\"https://github.com/ory/kratos/commit/647eb1e66850c67e539d0338cca6cb8ae476ee55\" target=\"_blank\"\u003e647eb1e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace flow\u0026rsquo;s forms with new ui node module (\u003ca href=\"https://github.com/ory/kratos/commit/f74a5c25af60936b59caee0866a21637a5c0ae6f\" target=\"_blank\"\u003ef74a5c2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace login flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/d4ca364fd8905cfb205ee047a9cb831064a6b9d0\" target=\"_blank\"\u003ed4ca364\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace recovery flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/cac04562f2e4e77875275fcfd82c039d787607fb\" target=\"_blank\"\u003ecac0456\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace registration flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/3f6388d03f91cfad17bd74ebca4d924b4b546668\" target=\"_blank\"\u003e3f6388d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace settings flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/0efd17e76ba0a0cbd46916a7644b7bdf19bd4ab4\" target=\"_blank\"\u003e0efd17e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace verification flow methods with ui container (\u003ca href=\"https://github.com/ory/kratos/commit/dbf2668747922c93dd967961cd843354afbecfde\" target=\"_blank\"\u003edbf2668\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReplace viper with koanf config management (\u003ca href=\"https://github.com/ory/kratos/commit/5eb1bc0bff7c5d0f83c604484b8e845701112cad\" target=\"_blank\"\u003e5eb1bc0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate RegisterFakes calls (\u003ca href=\"https://github.com/ory/kratos/commit/626831069ab4f971094ba0bc0b43ac9ff618d91d\" target=\"_blank\"\u003e6268310\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse underscore in webhook auth types (\u003ca href=\"https://github.com/ory/kratos/commit/26829d21911cccd4a87c8693b6089af661c1bfe3\" target=\"_blank\"\u003e26829d2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd docker to docs main (\u003ca href=\"https://github.com/ory/kratos/commit/8ce8b785e2246557253420ea97cf6b7d5ee75d58\" target=\"_blank\"\u003e8ce8b78\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd docker to sidebar (\u003ca href=\"https://github.com/ory/kratos/commit/ed38c88bdbadcdcd2527a2b5270390251742bbe4\" target=\"_blank\"\u003eed38c88\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd dotnet sdk (\u003ca href=\"https://github.com/ory/kratos/issues/1183\" target=\"_blank\"\u003e#1183\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/32d874a04bb384259aeb544a3fcd6b3a8b23acdd\" target=\"_blank\"\u003e32d874a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd faq sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/1105\" target=\"_blank\"\u003e#1105\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/10697aa4ab5dc3e2ab90d1c037dfbe3492bf2bdf\" target=\"_blank\"\u003e10697aa\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd log docs to schema config (\u003ca href=\"https://github.com/ory/kratos/commit/4967f11d8df177ebdae855eb745e90d21ce38e9f\" target=\"_blank\"\u003e4967f11\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd more HA docs (\u003ca href=\"https://github.com/ory/kratos/commit/cbb2e27f8919a8991c4797a3f1c192ec364f0dd3\" target=\"_blank\"\u003ecbb2e27\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd Rust and Dart SDKs (\u003ca href=\"https://github.com/ory/kratos/commit/6d969528e13350ef099669510d3d37df1c007c82\" target=\"_blank\"\u003e6d96952\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eWe now support for Rust and Dart SDKs!\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd SameSite help (\u003ca href=\"https://github.com/ory/kratos/commit/2df6729b4acc70532024658e8874682de64b06b3\" target=\"_blank\"\u003e2df6729\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd shell-session language (\u003ca href=\"https://github.com/ory/kratos/commit/d16db87802ae2f230a02e4deed189f473588552c\" target=\"_blank\"\u003ed16db87\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd ui node docs (\u003ca href=\"https://github.com/ory/kratos/commit/e48a07d03c19a0677d3a56f9e57294b358f24501\" target=\"_blank\"\u003ee48a07d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdding double colons (\u003ca href=\"https://github.com/ory/kratos/issues/1187\" target=\"_blank\"\u003e#1187\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fc712f4530066c429242491c19d1534ffb267b0c\" target=\"_blank\"\u003efc712f4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt is default and add 72 char warning (\u003ca href=\"https://github.com/ory/kratos/commit/29ae53a96b4472ff549b34241894d72d439c8ea1\" target=\"_blank\"\u003e29ae53a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBetter import identities examples (\u003ca href=\"https://github.com/ory/kratos/issues/997\" target=\"_blank\"\u003e#997\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2e2880ac057b5c98cd69481c4f6f36b564b5871d\" target=\"_blank\"\u003e2e2880a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eChange forum to discussions readme (\u003ca href=\"https://github.com/ory/kratos/issues/1220\" target=\"_blank\"\u003e#1220\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ae399561ea6ed89aaadd4128bc564254984520e8\" target=\"_blank\"\u003eae39956\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDescribe more about Kratos login/browser flow on quickstart doc (\u003ca href=\"https://github.com/ory/kratos/issues/1047\" target=\"_blank\"\u003e#1047\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fe725ad12b5aed5faa8f95bec24ed3aa82512de8\" target=\"_blank\"\u003efe725ad\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDocker file links (\u003ca href=\"https://github.com/ory/kratos/issues/1182\" target=\"_blank\"\u003e#1182\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4d9b6a3fd5de81310016a811126e40a263ecd27c\" target=\"_blank\"\u003e4d9b6a3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDocument hash timing attack mitigation (\u003ca href=\"https://github.com/ory/kratos/commit/ec869930a9c0e6f6f56c2614835894e0a6a3eaab\" target=\"_blank\"\u003eec86993\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExplain how to use \u003ccode\u003eafter_verification_return_to\u003c/code\u003e (\u003ca href=\"https://github.com/ory/kratos/commit/7e1546be1fd20baca10507d642d4f209eb88dcbc\" target=\"_blank\"\u003e7e1546b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFAQ improvements (\u003ca href=\"https://github.com/ory/kratos/issues/1135\" target=\"_blank\"\u003e#1135\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/44d0bc968a7c0ba5c0793b2349820fa8133bada3\" target=\"_blank\"\u003e44d0bc9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFAQ item \u0026amp; minor changes (\u003ca href=\"https://github.com/ory/kratos/issues/1174\" target=\"_blank\"\u003e#1174\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/11cf630082b56c80d12f5915f8e34aa03a7e8c54\" target=\"_blank\"\u003e11cf630\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix broken link (\u003ca href=\"https://github.com/ory/kratos/issues/1037\" target=\"_blank\"\u003e#1037\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/6b9aae8af5aa3bd614c99b32e341fbd533caf116\" target=\"_blank\"\u003e6b9aae8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix failing build (\u003ca href=\"https://github.com/ory/kratos/commit/0de328ff0053605e6bded589a79d3ab938d55b31\" target=\"_blank\"\u003e0de328f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix formatting (\u003ca href=\"https://github.com/ory/kratos/issues/966\" target=\"_blank\"\u003e#966\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/687251a24e796322b43f8aed6b1fb3d7900e3271\" target=\"_blank\"\u003e687251a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix identity state bullets (\u003ca href=\"https://github.com/ory/kratos/issues/1095\" target=\"_blank\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f476334c4693277656ad88e768f66b59cbcba126\" target=\"_blank\"\u003ef476334\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix known/unknown email account recovery (\u003ca href=\"https://github.com/ory/kratos/issues/1211\" target=\"_blank\"\u003e#1211\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e208ca50ba4f03d5410c9644aaa3b04bdf1b8dbd\" target=\"_blank\"\u003ee208ca5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link (\u003ca href=\"https://github.com/ory/kratos/commit/7f6d7f501d7118dfe6868c9d923fb5ecc5eded48\" target=\"_blank\"\u003e7f6d7f5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link (\u003ca href=\"https://github.com/ory/kratos/issues/1128\" target=\"_blank\"\u003e#1128\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e7043e9b99260eaff2b48ca6f457af46a1521654\" target=\"_blank\"\u003ee7043e9\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link to blogpost (\u003ca href=\"https://github.com/ory/kratos/issues/949\" target=\"_blank\"\u003e#949\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4622e3228fb12231222c7e6b602458111f35f727\" target=\"_blank\"\u003e4622e32\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/945\" target=\"_blank\"\u003e#945\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix link to self-service flows overview (\u003ca href=\"https://github.com/ory/kratos/issues/995\" target=\"_blank\"\u003e#995\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2be877847644a3df2645ac3be4bbd7704db30b17\" target=\"_blank\"\u003e2be8778\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix note block in third party login guide (\u003ca href=\"https://github.com/ory/kratos/issues/920\" target=\"_blank\"\u003e#920\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/745cea02d0e9940f689e668bbd814b29fd53bf37\" target=\"_blank\"\u003e745cea0\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eAllows the document to render properly\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix npm links (\u003ca href=\"https://github.com/ory/kratos/issues/991\" target=\"_blank\"\u003e#991\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4ce4468132dde21c1692e3a834ad7780bee12b90\" target=\"_blank\"\u003e4ce4468\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix self-service code flows labels (\u003ca href=\"https://github.com/ory/kratos/issues/1253\" target=\"_blank\"\u003e#1253\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f2ed424289cdd2a0edc1736888dd15be6df65f11\" target=\"_blank\"\u003ef2ed424\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo in README (\u003ca href=\"https://github.com/ory/kratos/issues/1122\" target=\"_blank\"\u003e#1122\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e5007078c3cd597cea669827b96c7e6f205f2f32\" target=\"_blank\"\u003ee500707\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eLink to argon2 blogpost and add cross-references (\u003ca href=\"https://github.com/ory/kratos/issues/1038\" target=\"_blank\"\u003e#1038\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9ab7c3df59ecd94a74a7bf18af9c0ded5305e042\" target=\"_blank\"\u003e9ab7c3d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake explicit the ID of the default schema (\u003ca href=\"https://github.com/ory/kratos/issues/1173\" target=\"_blank\"\u003e#1173\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cc6e9ffbac7118436d85078720cde2de98a68044\" target=\"_blank\"\u003ecc6e9ff\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMinor cosmetics (\u003ca href=\"https://github.com/ory/kratos/issues/1050\" target=\"_blank\"\u003e#1050\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/34db06fd4f83d415c09109b06dfd3b82ce03705e\" target=\"_blank\"\u003e34db06f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMinor improvements (\u003ca href=\"https://github.com/ory/kratos/issues/1052\" target=\"_blank\"\u003e#1052\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f0672b5cb8cca41fa914db21798d20f00a5699f9\" target=\"_blank\"\u003ef0672b5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eORY -\u0026gt; Ory (\u003ca href=\"https://github.com/ory/kratos/commit/ea309797bf59f3da5c5cd184e45f2e585144be56\" target=\"_blank\"\u003eea30979\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eReformat settings code samples (\u003ca href=\"https://github.com/ory/kratos/commit/cdbbf4df5fa3fa667a78d5cf682bc7fa36693e9d\" target=\"_blank\"\u003ecdbbf4d\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove unnecessary and wrong docker pull commands (\u003ca href=\"https://github.com/ory/kratos/issues/1203\" target=\"_blank\"\u003e#1203\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/2b0342ad7607d705bcebfafd5a78e4e09e57a940\" target=\"_blank\"\u003e2b0342a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eResolve duplication error (\u003ca href=\"https://github.com/ory/kratos/commit/a3d8284ab20ae76bccba361601b7290af20bdde6\" target=\"_blank\"\u003ea3d8284\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate build from source (\u003ca href=\"https://github.com/ory/kratos/commit/9b5754f36661f6de9c95f30c06f28164fe5be48b\" target=\"_blank\"\u003e9b5754f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/979\" target=\"_blank\"\u003e#979\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate email template docs (\u003ca href=\"https://github.com/ory/kratos/commit/1778cb9a293feb2c91c0b1921ab78a0395cdca98\" target=\"_blank\"\u003e1778cb9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/897\" target=\"_blank\"\u003e#897\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate identity-data-model links (\u003ca href=\"https://github.com/ory/kratos/commit/b5fd9a3a0821215f94da168c9c6f87dceba8c8f4\" target=\"_blank\"\u003eb5fd9a3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate identity.ID field documentation (\u003ca href=\"https://github.com/ory/kratos/commit/4624f03a5e9249a5449992a1f0b7ec80dc3499fd\" target=\"_blank\"\u003e4624f03\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/956\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/956\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate kratos video link (\u003ca href=\"https://github.com/ory/kratos/issues/1073\" target=\"_blank\"\u003e#1073\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/e86178f4ee66e5053e0da2fab2c21ecb2e730ada\" target=\"_blank\"\u003ee86178f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate login code samples (\u003ca href=\"https://github.com/ory/kratos/commit/695a30f6c80f277676bf04b4665efeb7ea4db618\" target=\"_blank\"\u003e695a30f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate login code samples (\u003ca href=\"https://github.com/ory/kratos/commit/ce6c75587bea80ef83855d764fed79a9d6c948d3\" target=\"_blank\"\u003ece6c755\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate quickstart samples (\u003ca href=\"https://github.com/ory/kratos/commit/c3fcaba65899d9d46a08ca8b60ec0c010f70b16c\" target=\"_blank\"\u003ec3fcaba\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate recovery code samples (\u003ca href=\"https://github.com/ory/kratos/commit/d9fbb62faff5144f587136935f15d24b6399f29c\" target=\"_blank\"\u003ed9fbb62\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate registration code samples (\u003ca href=\"https://github.com/ory/kratos/commit/317810ffd8ba6faf87f2248263b6c82cf4e9ffd8\" target=\"_blank\"\u003e317810f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate self-service code samples (\u003ca href=\"https://github.com/ory/kratos/commit/6415011ab83a19972c6f52467055fbdcef23a0cc\" target=\"_blank\"\u003e6415011\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate settings code samples (\u003ca href=\"https://github.com/ory/kratos/commit/bbd6266c22097fae195654957cbab589d04892c7\" target=\"_blank\"\u003ebbd6266\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate verification code samples (\u003ca href=\"https://github.com/ory/kratos/commit/4285dec59a8fc31fa3416b594c765f5da9a9de1c\" target=\"_blank\"\u003e4285dec\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct extension for identity-data-model (\u003ca href=\"https://github.com/ory/kratos/commit/acab3e8b489d9865e4bf0805895f0b7ae9e6f1b8\" target=\"_blank\"\u003eacab3e8\u003c/a\u003e), closes \u003ca href=\"https://github.com//github.com/ory/kratos/pull/1197/issues/issuecomment-819455322\" target=\"_blank\"\u003e/github.com/ory/kratos/pull/1197#issuecomment-819455322\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eprometheus:\u003c/strong\u003e Update codedoc (\u003ca href=\"https://github.com/ory/kratos/commit/47146ea8ce169ee908aa4d33b59a01e9df4bae10\" target=\"_blank\"\u003e47146ea\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd email template specification in doc (\u003ca href=\"https://github.com/ory/kratos/issues/898\" target=\"_blank\"\u003e#898\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4230d9e0fc35c651b0d2cbdbbf9e1f1c514743f8\" target=\"_blank\"\u003e4230d9e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd error for when no login strategy was found (\u003ca href=\"https://github.com/ory/kratos/commit/6bae66cde362c4e2995c9d06a0d3ffee403feb74\" target=\"_blank\"\u003e6bae66c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd facebook provider to oidc providers and documentation (\u003ca href=\"https://github.com/ory/kratos/issues/1035\" target=\"_blank\"\u003e#1035\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/905bb032520189212bd88f29641903945ae03608\" target=\"_blank\"\u003e905bb03\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1034\" target=\"_blank\"\u003e#1034\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd FAQ to docs (\u003ca href=\"https://github.com/ory/kratos/issues/1096\" target=\"_blank\"\u003e#1096\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9c6b68c454f472b26c34e1975b6a67b24b218f47\" target=\"_blank\"\u003e9c6b68c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd gh login to claims (\u003ca href=\"https://github.com/ory/kratos/commit/49deb2e166362a5d051bc08523ef44425f144bdd\" target=\"_blank\"\u003e49deb2e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd login strategy text message (\u003ca href=\"https://github.com/ory/kratos/commit/7468c835d4800c207035897fc9962860d8ab7803\" target=\"_blank\"\u003e7468c83\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd more tests for multi domain args (\u003ca href=\"https://github.com/ory/kratos/commit/e99803b62a847bcee52bcd87fa8088124b4deae2\" target=\"_blank\"\u003ee99803b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd Prometheus monitoring to Public APIs (\u003ca href=\"https://github.com/ory/kratos/issues/1022\" target=\"_blank\"\u003e#1022\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/75a4f1a5472ffd780fed43a7395a191ed495c6e9\" target=\"_blank\"\u003e75a4f1a\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd random delay to login flow (\u003ca href=\"https://github.com/ory/kratos/issues/1088\" target=\"_blank\"\u003e#1088\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cb9894fefc694a4092215d3981e80f287021542f\" target=\"_blank\"\u003ecb9894f\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/832\" target=\"_blank\"\u003e#832\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd return_url to verification flow (\u003ca href=\"https://github.com/ory/kratos/issues/1149\" target=\"_blank\"\u003e#1149\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/bb99912d823e9bcffa41edf50a01dcae40117fe6\" target=\"_blank\"\u003ebb99912\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1123\" target=\"_blank\"\u003e#1123\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1133\" target=\"_blank\"\u003e#1133\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd sql migrations for new login flow (\u003ca href=\"https://github.com/ory/kratos/commit/e947edf497b36bc576061c9ae38049e84ee48575\" target=\"_blank\"\u003ee947edf\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd sql tracing (\u003ca href=\"https://github.com/ory/kratos/commit/3c4cc1cec170df14331288170a94ada770d3289f\" target=\"_blank\"\u003e3c4cc1c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd tracing to config schema (\u003ca href=\"https://github.com/ory/kratos/commit/007dde4482d11f22b8527c94b002da675152a872\" target=\"_blank\"\u003e007dde4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd transporter with host modification (\u003ca href=\"https://github.com/ory/kratos/commit/2c41b81be947f9972638d082105f0f5c83078b91\" target=\"_blank\"\u003e2c41b81\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd workaround template for go openapi (\u003ca href=\"https://github.com/ory/kratos/commit/5d72d10f6c6948c48c5701fe348084a668c8311a\" target=\"_blank\"\u003e5d72d10\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdds slack sogial login (\u003ca href=\"https://github.com/ory/kratos/issues/974\" target=\"_blank\"\u003e#974\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7c66053390b3086fe7233625038a78431a61e507\" target=\"_blank\"\u003e7c66053\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/953\" target=\"_blank\"\u003e#953\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow session cookie name configuration (\u003ca href=\"https://github.com/ory/kratos/commit/77ce3162ba97cf5c516c26ef499d9fa892162f0a\" target=\"_blank\"\u003e77ce316\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/268\" target=\"_blank\"\u003e#268\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAllow specifying sender name in smtp.from_address (\u003ca href=\"https://github.com/ory/kratos/issues/1100\" target=\"_blank\"\u003e#1100\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5904fe319f75f8138783434d568db6fc7c55b301\" target=\"_blank\"\u003e5904fe3\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eBcrypt algorithm support (\u003ca href=\"https://github.com/ory/kratos/issues/1169\" target=\"_blank\"\u003e#1169\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b2612eefbad98d29482d364f670549f470d0a6f5\" target=\"_blank\"\u003eb2612ee\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the ability to use BCrypt instead of Argon2id for password hashing. We recommend using BCrypt for web workloads where password hashing should take around 200ms. For workloads where login takes \u0026gt;= 2 seconds, we recommend to continue using Argon2id.\u003c/p\u003e\n\n\u003cp\u003eTo use bcrypt for password hashing, set your config as follows:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode\u003ehashers:\n bcrypt:\n cost: 12\n algorithm: bcrypt\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSwitching the hashing algorithm will not break existing passwords!\u003c/p\u003e\n\n\u003cp\u003eCo-authored-by: Patrik \u003ca href=\"mailto:zepatrik@users.noreply.github.com\" target=\"_blank\"\u003ezepatrik@users.noreply.github.com\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCheck migrations in health check (\u003ca href=\"https://github.com/ory/kratos/commit/c6ef7ad16b70310c645550f7e41b3c8aff847de3\" target=\"_blank\"\u003ec6ef7ad\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eConfigure domain alias as query param (\u003ca href=\"https://github.com/ory/kratos/commit/9d8563eeb3293c42cce440ad74f025b304cccbbe\" target=\"_blank\"\u003e9d8563e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize configuration (\u003ca href=\"https://github.com/ory/kratos/commit/d3d5327a3622318265a063be4782caa25e645a05\" target=\"_blank\"\u003ed3d5327\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize health checks (\u003ca href=\"https://github.com/ory/kratos/commit/8145a1c9acaeab441e787118d40ccd448ea82fe4\" target=\"_blank\"\u003e8145a1c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize http client in cli calls (\u003ca href=\"https://github.com/ory/kratos/commit/3b3ef8f025d75b244d9285036e66f79af7d5ee35\" target=\"_blank\"\u003e3b3ef8f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eContextualize persitence testers (\u003ca href=\"https://github.com/ory/kratos/commit/64403736ad9f8b264567e1f8eed1af710cab6046\" target=\"_blank\"\u003e6440373\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eCourier foreground worker with \u0026ldquo;kratos courier watch\u0026rdquo; (\u003ca href=\"https://github.com/ory/kratos/issues/1062\" target=\"_blank\"\u003e#1062\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/500b8bacd9fd541afd053f42fec66443cfebabda\" target=\"_blank\"\u003e500b8ba\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1033\" target=\"_blank\"\u003e#1033\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/1024\" target=\"_blank\"\u003e#1024\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eBREACKING CHANGES: This patch moves the courier watcher (responsible for sending mail) to its own foreground worker, which can be executed as a, for example, Kubernetes job.\u003c/p\u003e\n\n\u003cp\u003eIt is still possible to have the previous behaviour which would run the worker as a background task when running \u003ccode\u003ekratos serve\u003c/code\u003e by using the \u003ccode\u003e--watch-courier\u003c/code\u003e flag.\u003c/p\u003e\n\n\u003cp\u003eTo run the foreground worker, use \u003ccode\u003ekratos courier watch -c your/config.yaml\u003c/code\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not enforce bcrypt 12 for dev envs (\u003ca href=\"https://github.com/ory/kratos/commit/bbf44d887ae5cdb5975516149c74b3ba10896209\" target=\"_blank\"\u003ebbf44d8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eEmail input validation (\u003ca href=\"https://github.com/ory/kratos/issues/1287\" target=\"_blank\"\u003e#1287\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/cd56b73df363dd37485f07d31fef11fd4d9f40a6\" target=\"_blank\"\u003ecd56b73\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1285\" target=\"_blank\"\u003e#1285\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExport and add config options (\u003ca href=\"https://github.com/ory/kratos/commit/4391fe572eb6a766afe9808396847ca5fdca07f5\" target=\"_blank\"\u003e4391fe5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExpose courier worker (\u003ca href=\"https://github.com/ory/kratos/commit/f50969ecba757dea558e9e8b9dd142f5f564d53a\" target=\"_blank\"\u003ef50969e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eExpose crdb ui (\u003ca href=\"https://github.com/ory/kratos/commit/504d5181f5e391bb8d67768b314a0348ed252c8b\" target=\"_blank\"\u003e504d518\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eGlobal docs sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/1258\" target=\"_blank\"\u003e#1258\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/71082624e093b8c100e71ae59050f89b35ac20a2\" target=\"_blank\"\u003e7108262\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImplement and test domain aliasing (\u003ca href=\"https://github.com/ory/kratos/commit/1516a54657df485627251de4e7019bc16353c956\" target=\"_blank\"\u003e1516a54\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThis patch adds a feature called domain aliasing. For more information, head over to \u003ca href=\"http://ory.sh/docs/kratos/next/guides/multi-domain-cookies\" target=\"_blank\"\u003ehttp://ory.sh/docs/kratos/next/guides/multi-domain-cookies\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove oas spec and fix mobile tests (\u003ca href=\"https://github.com/ory/kratos/commit/4ead2c826a2f1a307e327b9736dd8ac99ef52743\" target=\"_blank\"\u003e4ead2c8\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove sorting of ui fields (\u003ca href=\"https://github.com/ory/kratos/commit/797b49d0175280f85f568014cf3083e9bc42d354\" target=\"_blank\"\u003e797b49d\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eSee \u003ca href=\"https://github.com/ory/kratos/discussions/1196\" target=\"_blank\"\u003ehttps://github.com/ory/kratos/discussions/1196\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eInclude schema (\u003ca href=\"https://github.com/ory/kratos/commit/348a493c9e5381830b76e57cad803a308e6ce53a\" target=\"_blank\"\u003e348a493\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake cli commands consumable in Ory Cloud (\u003ca href=\"https://github.com/ory/kratos/issues/926\" target=\"_blank\"\u003e#926\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/fed790b0f71f028f6d92e8ebceee188dbdb20770\" target=\"_blank\"\u003efed790b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMigrate to openapi v3 (\u003ca href=\"https://github.com/ory/kratos/commit/595224b1efd5a225702ef236a87f08180a7118b8\" target=\"_blank\"\u003e595224b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003ePopulate email templates at delivery time, add plaintext defaults (\u003ca href=\"https://github.com/ory/kratos/issues/1155\" target=\"_blank\"\u003e#1155\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7749c7a75a4386c1fd53db57626355467b698c2f\" target=\"_blank\"\u003e7749c7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/1065\" target=\"_blank\"\u003e#1065\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSort and label nodes with easy to use defaults (\u003ca href=\"https://github.com/ory/kratos/commit/cbec27c957a733411e4c1d511ed5854855b7236e\" target=\"_blank\"\u003ecbec27c\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eOry Kratos takes a guess based on best practices for\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eordering UI nodes (e.g. email, password, submit button)\u003c/li\u003e\n\u003cli\u003egrouping UI nodes (e.g. keep password and oidc nodes together)\u003c/li\u003e\n\u003cli\u003elabeling UI nodes (e.g. \u0026ldquo;Sign in with GitHub\u0026rdquo;)\u003c/li\u003e\n\u003cli\u003eusing the \u0026ldquo;title\u0026rdquo; attribute from the identity schema to label trait fields\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003eThis greatly simplifies front-end code on your end and makes it even easier to integrate with Ory Kratos! If you want a custom experience with e.g. translations or other things you can always adjust this in your UI integration!\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport base64 inline schemas (\u003ca href=\"https://github.com/ory/kratos/commit/815a24890a118f4128ac083241a93d8df27042f7\" target=\"_blank\"\u003e815a248\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport contextual csrf cookies (\u003ca href=\"https://github.com/ory/kratos/commit/957ef38b69fc6ab071b91262736e6c191be3a4b8\" target=\"_blank\"\u003e957ef38\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport domain aliasing in session cookie (\u003ca href=\"https://github.com/ory/kratos/commit/0681c123f2d856ca27caee645dadc9e6e3731d2c\" target=\"_blank\"\u003e0681c12\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport label in oidc config (\u003ca href=\"https://github.com/ory/kratos/commit/a99cdcddaa0c4bd7b679884b232c2ef8f2dcd978\" target=\"_blank\"\u003ea99cdcd\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSupport retryable CRDB transactions (\u003ca href=\"https://github.com/ory/kratos/commit/f0c21d7e0a6ed85818d0e9025a451cb8cbdee086\" target=\"_blank\"\u003ef0c21d7\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUnix sockets support (\u003ca href=\"https://github.com/ory/kratos/issues/1255\" target=\"_blank\"\u003e#1255\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ad010de240ddd9219f0cfb2ca3fbb180d2d3a697\" target=\"_blank\"\u003ead010de\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eWeb hooks support (recovery) (\u003ca href=\"https://github.com/ory/kratos/issues/1289\" target=\"_blank\"\u003e#1289\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3e181fe3d7750a715ab31eb8347fbb4bdb89d6e6\" target=\"_blank\"\u003e3e181fe\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/271\" target=\"_blank\"\u003e#271\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003efeat: web hooks for self-service flows\u003c/p\u003e\n\n\u003cp\u003eThis feature adds the ability to define web-hooks using a mixture of configuration and JsonNet. This allows integration with services like Mailchimp, Stripe, CRMs, and all other APIs that support REST requests. Additional to these new changes it is now possible to define hooks for verification and recovery as well!\u003c/p\u003e\n\n\u003cp\u003eFor more information, head over to the \u003ca href=\"https://www.ory.sh/kratos/docs/self-service/hooks\" target=\"_blank\"\u003ehooks documentation\u003c/a\u003e.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003ecourier:\u003c/strong\u003e Allow sending individual messages (\u003ca href=\"https://github.com/ory/kratos/commit/cbb2c0bef63323a177589e9d2a809c84b4f1acdd\" target=\"_blank\"\u003ecbb2c0b\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eoidc:\u003c/strong\u003e Support google hd claim (\u003ca href=\"https://github.com/ory/kratos/issues/1097\" target=\"_blank\"\u003e#1097\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1f20a5ceba7682719112d24a3b18bf046fb2ac22\" target=\"_blank\"\u003e1f20a5c\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003e\u003cstrong\u003eschema:\u003c/strong\u003e Add totp errors (\u003ca href=\"https://github.com/ory/kratos/commit/a61f8814101401dbb422967e37b6c6c1ae85d113\" target=\"_blank\"\u003ea61f881\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd case to ensure correct behavior when verifying a different email address (\u003ca href=\"https://github.com/ory/kratos/issues/999\" target=\"_blank\"\u003e#999\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/f95a117677c9c59436ad10aa8951fe875c39a64f\" target=\"_blank\"\u003ef95a117\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/998\" target=\"_blank\"\u003e#998\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd oasis test case (\u003ca href=\"https://github.com/ory/kratos/commit/f80691b9dd77566857c4284e2639cc94d5b8c333\" target=\"_blank\"\u003ef80691b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump poll interval (\u003ca href=\"https://github.com/ory/kratos/commit/b3dc925a5d43557293745ee81c0ffb3db37b6342\" target=\"_blank\"\u003eb3dc925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump video quality (\u003ca href=\"https://github.com/ory/kratos/commit/b7f8d042646037e1589ae2d03602bd63a5cec2fe\" target=\"_blank\"\u003eb7f8d04\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump wait times (\u003ca href=\"https://github.com/ory/kratos/commit/b2e43f8b0b64784f60e5f57d9a0f5d2928c2b891\" target=\"_blank\"\u003eb2e43f8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eClean up hydra env before restart (\u003ca href=\"https://github.com/ory/kratos/commit/cf494149e6a46b15e3b174185e1e87cfcd6f9f7a\" target=\"_blank\"\u003ecf49414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLonger wait times (\u003ca href=\"https://github.com/ory/kratos/commit/4bec9ef50f14f22342a311f09ba1b59cde47befc\" target=\"_blank\"\u003e4bec9ef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReliable migration tests on crdb (\u003ca href=\"https://github.com/ory/kratos/commit/2e3764ba66c156d810de66fba2b0e142dced6f4d\" target=\"_blank\"\u003e2e3764b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove old noop test (\u003ca href=\"https://github.com/ory/kratos/commit/16dca3f78b2021c09ec83e81ab6d2e68c42ca081\" target=\"_blank\"\u003e16dca3f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve compile issues (\u003ca href=\"https://github.com/ory/kratos/commit/c1b5ba42171ec522579df9dfaff27b5b74a1566a\" target=\"_blank\"\u003ec1b5ba4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve flaky tests (\u003ca href=\"https://github.com/ory/kratos/commit/cb670a854cbb09b8437bfed7e4a6908ff6dcfd27\" target=\"_blank\"\u003ecb670a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve json parser test regression (\u003ca href=\"https://github.com/ory/kratos/commit/a1b9b9a95d58583dc7ecf6d2a501da52f84dd6bb\" target=\"_blank\"\u003ea1b9b9a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve login integration regressions (\u003ca href=\"https://github.com/ory/kratos/commit/388b5b27d6dee7770e5f37d6d83c532044a4e984\" target=\"_blank\"\u003e388b5b2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve migration regression (\u003ca href=\"https://github.com/ory/kratos/commit/2051a716cb4b8cf334dd65f2ccddb31e5fbed545\" target=\"_blank\"\u003e2051a71\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve more json parser test regressions (\u003ca href=\"https://github.com/ory/kratos/commit/ff791c41a1d9ce25af4e883469d3f8c0ef9eb302\" target=\"_blank\"\u003eff791c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regression (\u003ca href=\"https://github.com/ory/kratos/commit/e2b0ad3c1845da80f078b11b327b9a0376cbb7c5\" target=\"_blank\"\u003ee2b0ad3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate schema tests for webhooks (\u003ca href=\"https://github.com/ory/kratos/commit/d1ddfa80742728b28dc5710ca5b6e7282a2dec55\" target=\"_blank\"\u003ed1ddfa8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ee2e:\u003c/strong\u003e Significantly reduce wait and idle times (\u003ca href=\"https://github.com/ory/kratos/commit/f525fc53afec6f5232ce507fe25ddec1b9069196\" target=\"_blank\"\u003ef525fc5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve more regressions (\u003ca href=\"https://github.com/ory/kratos/commit/c5a23af81427480088651833d904e3403a969fab\" target=\"_blank\"\u003ec5a23af\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve order regression (\u003ca href=\"https://github.com/ory/kratos/commit/40a849ca35f4700185322e9ac4f6a4b70132851c\" target=\"_blank\"\u003e40a849c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regression (\u003ca href=\"https://github.com/ory/kratos/commit/f0c9e5ff105d76d6bc9478c98522b2440c7181df\" target=\"_blank\"\u003ef0c9e5f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve regressions (\u003ca href=\"https://github.com/ory/kratos/commit/4b9da3c9d98d40f7b71a56c51543fc115974630d\" target=\"_blank\"\u003e4b9da3c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve stub regressions (\u003ca href=\"https://github.com/ory/kratos/commit/82650cf1843f6bfde015f556f4452a7b6fd52b11\" target=\"_blank\"\u003e82650cf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test migrations (\u003ca href=\"https://github.com/ory/kratos/commit/de0b65d96daef0e31c12b3b6915f283a8e71244b\" target=\"_blank\"\u003ede0b65d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test regression issues (\u003ca href=\"https://github.com/ory/kratos/commit/ccf9feddade11f9fcaaf1c37dd3efeb2c4df6649\" target=\"_blank\"\u003eccf9fed\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up tests (\u003ca href=\"https://github.com/ory/kratos/commit/a16737cccc36a14444711660f1737913ffd7ba01\" target=\"_blank\"\u003ea16737c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test description (\u003ca href=\"https://github.com/ory/kratos/commit/55fb37f62fc3ab7c0d5324ed31ef3e7f66a73aa2\" target=\"_blank\"\u003e55fb37f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse bcrypt cost 4 to reduce CI times (\u003ca href=\"https://github.com/ory/kratos/commit/cabe97d0656858fd1ee0442b40881417e91294f3\" target=\"_blank\"\u003ecabe97d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse fast bcrypt for e2e (\u003ca href=\"https://github.com/ory/kratos/commit/d90cf13230632e76eb74965c0945573b4f2e98ff\" target=\"_blank\"\u003ed90cf13\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/e4b7e79f4ee91dadfcd008a5b3e318b6bfedad10\" target=\"_blank\"\u003ee4b7e79\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/193d2668ae0955a1346390057539a8b796d17afd\" target=\"_blank\"\u003e193d266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/1ebfbdea75f27c8eeafa7d3aff45de133ea340bb\" target=\"_blank\"\u003e1ebfbde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/ba1eeef4f232c4ab59343a2ca3c7cf0eb6dfd110\" target=\"_blank\"\u003eba1eeef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/ada5dbb58c45502b8275850a3bc0876debc66888\" target=\"_blank\"\u003eada5dbb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial documentation tests via Text-Runner (\u003ca href=\"https://github.com/ory/kratos/issues/567\" target=\"_blank\"\u003e#567\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c30eb26f76ab70a6098c0b40c9a04726d36d72f2\" target=\"_blank\"\u003ec30eb26\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: resolve clidoc issues (#976) (\u003ca href=\"https://github.com/ory/kratos/commit/346bc73921655d52861b8803eb3351c4205657ee\" target=\"_blank\"\u003e346bc73\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/976\" target=\"_blank\"\u003e#976\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/951\" target=\"_blank\"\u003e#951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFormat (\u003ca href=\"https://github.com/ory/kratos/commit/17a0bf5872b33eac615afc675c7d92d7c7441b2e\" target=\"_blank\"\u003e17a0bf5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e:bug: fix ory home directory path (#897) (\u003ca href=\"https://github.com/ory/kratos/commit/2fca2bedaa907691bef324c11545e007b51d4881\" target=\"_blank\"\u003e2fca2be\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/897\" target=\"_blank\"\u003e#897\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in config schema (\u003ca href=\"https://github.com/ory/kratos/commit/16337f13e4388a715c8109c29cf198c82a848a16\" target=\"_blank\"\u003e16337f1\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eCSRF token is required when using the Revoke Session API endpoint (\u003ca href=\"https://github.com/ory/kratos/issues/839\" target=\"_blank\"\u003e#839\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d3218a0f23de7293b0a4a966ad21369a92b68b1a\" target=\"_blank\"\u003ed3218a0\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/838\" target=\"_blank\"\u003e#838\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIncorrect home path (\u003ca href=\"https://github.com/ory/kratos/issues/848\" target=\"_blank\"\u003e#848\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5265af00c92fe505819300caddfcc64004d45c65\" target=\"_blank\"\u003e5265af0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eMake password policy configurable (\u003ca href=\"https://github.com/ory/kratos/issues/888\" target=\"_blank\"\u003e#888\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7a00483908bb623efdf281e76005c4485ea6b1ab\" target=\"_blank\"\u003e7a00483\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/450\" target=\"_blank\"\u003e#450\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/316\" target=\"_blank\"\u003e#316\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eAllows configuring password breach thresholds and optionally enforces checks against the HIBP API.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove obsolete types (\u003ca href=\"https://github.com/ory/kratos/issues/887\" target=\"_blank\"\u003e#887\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b8bac7aa56c16cd98f76a95a5e0d01fb1bbde6b7\" target=\"_blank\"\u003eb8bac7a\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/716\" target=\"_blank\"\u003e#716\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSet samesite attribute to lax if in dev mode (\u003ca href=\"https://github.com/ory/kratos/issues/824\" target=\"_blank\"\u003e#824\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/91d6698e4ce05ee59bb72fc84b54af9d1d204b41\" target=\"_blank\"\u003e91d6698\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/821\" target=\"_blank\"\u003e#821\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse working cache-control header for cdn/proxies/cache (\u003ca href=\"https://github.com/ory/kratos/issues/869\" target=\"_blank\"\u003e#869\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d8e3d40001ffdc64da2288f3cffd53cf3bfdf781\" target=\"_blank\"\u003ed8e3d40\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/601\" target=\"_blank\"\u003e#601\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.5-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/83aedcb885acb96c5deb39fff675d5f0528af32d\" target=\"_blank\"\u003e83aedcb\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd contributing to sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/866\" target=\"_blank\"\u003e#866\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/44f33f97d43f2a3c553a65ebb2986e0731c0e5f2\" target=\"_blank\"\u003e44f33f9\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eThe same change as in \u003ca href=\"https://github.com/ory/hydra/pull/2209\" target=\"_blank\"\u003ehttps://github.com/ory/hydra/pull/2209\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd newsletter to config (\u003ca href=\"https://github.com/ory/kratos/commit/1735ca2ced104971de4e97524d0a23d57ba045f2\" target=\"_blank\"\u003e1735ca2\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eAdd recovery flow (\u003ca href=\"https://github.com/ory/kratos/issues/868\" target=\"_blank\"\u003e#868\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/d95cfe9759d3ffc08c24048a064c0c800abdf4b4\" target=\"_blank\"\u003ed95cfe9\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/864\" target=\"_blank\"\u003e#864\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eAdded a short section for the recovery flow on managing-user-identities.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix account recovery click instruction (\u003ca href=\"https://github.com/ory/kratos/issues/870\" target=\"_blank\"\u003e#870\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/383de9ecf6f6504dbb9c20fb4cb984e934f0751e\" target=\"_blank\"\u003e383de9e\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix broken link (\u003ca href=\"https://github.com/ory/kratos/issues/893\" target=\"_blank\"\u003e#893\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/dec38a28964aaa13827d356e5bfa12c2a6d1400e\" target=\"_blank\"\u003edec38a2\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/835\" target=\"_blank\"\u003e#835\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix oidc config example structure (\u003ca href=\"https://github.com/ory/kratos/issues/845\" target=\"_blank\"\u003e#845\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/c102a6844db29f994b67d23bb04e64ee71376264\" target=\"_blank\"\u003ec102a68\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix redirect (\u003ca href=\"https://github.com/ory/kratos/issues/802\" target=\"_blank\"\u003e#802\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b86878229f343e6b11521596b04040f892d1e2c3\" target=\"_blank\"\u003eb868782\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo (\u003ca href=\"https://github.com/ory/kratos/issues/847\" target=\"_blank\"\u003e#847\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/9b3da9f0fe2ce71743115844d8c91a1dc9c4cbae\" target=\"_blank\"\u003e9b3da9f\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo (\u003ca href=\"https://github.com/ory/kratos/issues/881\" target=\"_blank\"\u003e#881\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/3078293717a2ce21c4b939de4c2c4886c75303b5\" target=\"_blank\"\u003e3078293\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eFix typo MKFA to MFA (\u003ca href=\"https://github.com/ory/kratos/issues/826\" target=\"_blank\"\u003e#826\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a5613d08aa21f90f4d192e5663ba4977b3de16c3\" target=\"_blank\"\u003ea5613d0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eRemove workaround note (\u003ca href=\"https://github.com/ory/kratos/issues/886\" target=\"_blank\"\u003e#886\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/05409bc13f527398e3de01f29437e5d4353ef8d4\" target=\"_blank\"\u003e05409bc\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/718\" target=\"_blank\"\u003e#718\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eSwagger specs for selfservice settings browser flow (\u003ca href=\"https://github.com/ory/kratos/issues/825\" target=\"_blank\"\u003e#825\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/28d50f45ab14d561609be7047cac13902394b547\" target=\"_blank\"\u003e28d50f4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate oidc provider with json conf support (\u003ca href=\"https://github.com/ory/kratos/issues/833\" target=\"_blank\"\u003e#833\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/670eb37d19674f33a36402cd9a88d61ca7327751\" target=\"_blank\"\u003e670eb37\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd return_to parameter to logout flow (\u003ca href=\"https://github.com/ory/kratos/issues/823\" target=\"_blank\"\u003e#823\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/1c146dd21d616a56f510019abadd37402782bb39\" target=\"_blank\"\u003e1c146dd\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/702\" target=\"_blank\"\u003e#702\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd selinux compatible quickstart config (\u003ca href=\"https://github.com/ory/kratos/issues/889\" target=\"_blank\"\u003e#889\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0f879481df209ed96b778799adcc2a9424449b37\" target=\"_blank\"\u003e0f87948\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/831\" target=\"_blank\"\u003e#831\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eEnsure registration runs only once (\u003ca href=\"https://github.com/ory/kratos/issues/872\" target=\"_blank\"\u003e#872\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5ffc036ac82f36ad6ef499e217971275a35fc23a\" target=\"_blank\"\u003e5ffc036\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eUnclassified:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003edocs: fix link and typo in Configuring Cookies (#883) (\u003ca href=\"https://github.com/ory/kratos/commit/c51ed6b789d2e3a8fe4e93565c3bded37d298f98\" target=\"_blank\"\u003ec51ed6b\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/883\" target=\"_blank\"\u003e#883\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eCase in settings handler method (\u003ca href=\"https://github.com/ory/kratos/issues/798\" target=\"_blank\"\u003e#798\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/83eb4e0021621014d2b543e57a01401381f07fe4\" target=\"_blank\"\u003e83eb4e0\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eForce brew install statement (\u003ca href=\"https://github.com/ory/kratos/issues/796\" target=\"_blank\"\u003e#796\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ad542ad5919205ac26a757145474e5a46f3937ec\" target=\"_blank\"\u003ead542ad\u003c/a\u003e):\u003c/p\u003e\n\n\u003cp\u003eCloses \u003ca href=\"https://github.com/ory/homebrew-kratos/issues/1\" target=\"_blank\"\u003ehttps://github.com/ory/homebrew-kratos/issues/1\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.4-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/b02926c42aee2748bc37ce2600596bd0c2537a0d\" target=\"_blank\"\u003eb02926c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Refactoring:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eMove pkger and ioutil helpers to ory/x (\u003ca href=\"https://github.com/ory/kratos/commit/60a0fc449d90ead6065ca00926536a989d8b2a2b\" target=\"_blank\"\u003e60a0fc4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix another broken link (\u003ca href=\"https://github.com/ory/kratos/commit/15bae9f893c2e2910167326d987455246c110001\" target=\"_blank\"\u003e15bae9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix broken links (\u003ca href=\"https://github.com/ory/kratos/issues/795\" target=\"_blank\"\u003e#795\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/0ab0e7eca8e95d6c26d028c177cbbd1f06b68871\" target=\"_blank\"\u003e0ab0e7e\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/793\" target=\"_blank\"\u003e#793\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix broken relative link (\u003ca href=\"https://github.com/ory/kratos/issues/812\" target=\"_blank\"\u003e#812\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/b32b173fe30b7c5c43700abfa4ddb3409a33556b\" target=\"_blank\"\u003eb32b173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix links (\u003ca href=\"https://github.com/ory/kratos/issues/800\" target=\"_blank\"\u003e#800\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/5fcc272e625de9e583b2ec24d5679895a6d24c1b\" target=\"_blank\"\u003e5fcc272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix oidc config examples (\u003ca href=\"https://github.com/ory/kratos/issues/799\" target=\"_blank\"\u003e#799\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/8a4f480121995d9899668f037382086fcdd2da4c\" target=\"_blank\"\u003e8a4f480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix self-service recovery flow typo (\u003ca href=\"https://github.com/ory/kratos/issues/807\" target=\"_blank\"\u003e#807\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/800110d87c9df70a5ec79b58d9fcb9ae39ff76b9\" target=\"_blank\"\u003e800110d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate words \u0026amp; fix spelling (\u003ca href=\"https://github.com/ory/kratos/issues/810\" target=\"_blank\"\u003e#810\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/4e1b96667d9f08dbafeb2f5ce144ca43309de8e0\" target=\"_blank\"\u003e4e1b966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove leftover category from reference sidebar (\u003ca href=\"https://github.com/ory/kratos/issues/813\" target=\"_blank\"\u003e#813\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/94fde5101d00b9e1f7228e9d122ef0a8e4719355\" target=\"_blank\"\u003e94fde51\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse correct links (\u003ca href=\"https://github.com/ory/kratos/issues/797\" target=\"_blank\"\u003e#797\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/a4de29399e4f1b5d0a33acc85478f2d38579a174\" target=\"_blank\"\u003ea4de293\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd helper for choosing argon2 parameters (\u003ca href=\"https://github.com/ory/kratos/issues/803\" target=\"_blank\"\u003e#803\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/ca5a69b798635d0e5361fd5b0cc369b035dca738\" target=\"_blank\"\u003eca5a69b\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/723\" target=\"_blank\"\u003e#723\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/572\" target=\"_blank\"\u003e#572\u003c/a\u003e \u003ca href=\"https://github.com/ory/kratos/issues/647\" target=\"_blank\"\u003e#647\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eThis patch adds the new command \u0026ldquo;hashers argon2 calibrate\u0026rdquo; which allows one to pick the desired hashing time for password hashing and then chooses the optimal parameters for the hardware the command is running on:\u003c/p\u003e\n\n\u003cpre style=\"word-break: break-all; white-space: pre-wrap\"\u003e\u003ccode\u003e$ kratos hashers argon2 calibrate 500ms\nIncreasing memory to get over 500ms:\n took 2.846592732s in try 0\n took 6.006488824s in try 1\n took 4.42657975s with 4.00GB of memory\n[...]\nDecreasing iterations to get under 500ms:\n took 484.257775ms in try 0\n took 488.784192ms in try 1\n took 486.534204ms with 3 iterations\nSettled on 3 iterations.\n\n\n{\n \u0026quot;memory\u0026quot;: 1048576,\n \u0026quot;iterations\u0026quot;: 3,\n \u0026quot;parallelism\u0026quot;: 32,\n \u0026quot;salt_length\u0026quot;: 16,\n \u0026quot;key_length\u0026quot;: 32\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003e\u003cp\u003eAdd \u0026ldquo;x-session-token\u0026rdquo; to default allowed headers (\u003ca href=\"https://github.com/ory/kratos/commit/3c912e4c7d46fd45c00cabb68ed7770bd44f7d07\" target=\"_blank\"\u003e3c912e4\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not set cookies on api endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/2f67c28718856ea03ea2effa89b28a8c4b3b8ae0\" target=\"_blank\"\u003e2f67c28\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eDo not set csrf cookies on potential api endpoints (\u003ca href=\"https://github.com/ory/kratos/commit/4d97a95d084ea99f5aca158609e197acd256cdd7\" target=\"_blank\"\u003e4d97a95\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eIgnore unsupported migration dialects (\u003ca href=\"https://github.com/ory/kratos/commit/12bb8d14ae1edef18591996411be67d5693e5101\" target=\"_blank\"\u003e12bb8d1\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/778\" target=\"_blank\"\u003e#778\u003c/a\u003e:\u003c/p\u003e\n\n\u003cp\u003eSkips sqlite3 migrations when support is lacking.\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eImprove semver regex (\u003ca href=\"https://github.com/ory/kratos/commit/584c0b5043e85e88ac2648cf699d60fed3e775a9\" target=\"_blank\"\u003e584c0b5\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eProperly set nosurf context even when ignored (\u003ca href=\"https://github.com/ory/kratos/commit/0dcb774157bcbfd41a5d9df3914c31162226da75\" target=\"_blank\"\u003e0dcb774\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUpdate cypress (\u003ca href=\"https://github.com/ory/kratos/commit/ba8b1729477233f79d099e5d7b397430ac1c6ace\" target=\"_blank\"\u003eba8b172\u003c/a\u003e)\u003c/p\u003e\u003c/li\u003e\n\n\u003cli\u003e\u003cp\u003eUse correct regex for version replacement (\u003ca href=\"https://github.com/ory/kratos/commit/ce870ababdf089344a9428d3a405e18504a3c906\" target=\"_blank\"\u003ece870ab\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/787\" target=\"_blank\"\u003e#787\u003c/a\u003e\u003c/p\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.3-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/64dc91af54cdf3eba158a50690240cdc8f7cb43b\" target=\"_blank\"\u003e64dc91a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eFix docosaurus admonitions (\u003ca href=\"https://github.com/ory/kratos/issues/788\" target=\"_blank\"\u003e#788\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/281a7c9289570d4bee33447655281b610cbe7e52\" target=\"_blank\"\u003e281a7c9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin download script version (\u003ca href=\"https://github.com/ory/kratos/commit/e4137a6a41d68b1480af2075bda8c5f46c42cd22\" target=\"_blank\"\u003ee4137a6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove trailing garbage from quickstart (\u003ca href=\"https://github.com/ory/kratos/issues/787\" target=\"_blank\"\u003e#787\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/7e709242ada28b7781c6ace272f60f9d1b9d5b2f\" target=\"_blank\"\u003e7e70924\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eFeatures:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eImprove makefile install process and update deps (\u003ca href=\"https://github.com/ory/kratos/commit/d1eb37f5d9d0f16e7864b5f8f08a44ba80853fa5\" target=\"_blank\"\u003ed1eb37f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd e2e tests for mobile (\u003ca href=\"https://github.com/ory/kratos/commit/d481d51f5f4de96cbbc7c347f5dbff381b44462d\" target=\"_blank\"\u003ed481d51\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd option to disable csrf protection in apis (\u003ca href=\"https://github.com/ory/kratos/commit/a0077f12adf94ff428b502b69bbb0eaafd05be66\" target=\"_blank\"\u003ea0077f1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump wait time (\u003ca href=\"https://github.com/ory/kratos/commit/7a719e17c5641f4df47314f6f0ac2cf73dddc8bb\" target=\"_blank\"\u003e7a719e1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInstall expo-cli globally (\u003ca href=\"https://github.com/ory/kratos/commit/db21cfa1c589a2dab829a4c8eaf1db15d14d965e\" target=\"_blank\"\u003edb21cfa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInstall expo-cli in cci config with sudo (\u003ca href=\"https://github.com/ory/kratos/commit/d255f462402f2d2c2278dcba1a139d0064343b22\" target=\"_blank\"\u003ed255f46\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLog wait-on output (\u003ca href=\"https://github.com/ory/kratos/commit/62b5ba92d56e9f6b98adb8fb9c4daff03be08f2e\" target=\"_blank\"\u003e62b5ba9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOutput web server address (\u003ca href=\"https://github.com/ory/kratos/commit/cb41ca78367b1943d230fa9ac116fcf3cf69b1c1\" target=\"_blank\"\u003ecb41ca7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve csrf test issues in settings (\u003ca href=\"https://github.com/ory/kratos/commit/ef8ba7dc93d6ba84f22b7aa65d00797e33b520a3\" target=\"_blank\"\u003eef8ba7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve test panic (\u003ca href=\"https://github.com/ory/kratos/commit/6f6461fe3690576015ded9146c065a1e5d950be1\" target=\"_blank\"\u003e6f6461f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert delay increase and improve install scripts (\u003ca href=\"https://github.com/ory/kratos/commit/1eafcaa86be194e412b0470a759bff6afc6c21af\" target=\"_blank\"\u003e1eafcaa\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eBug Fixes:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd debug quickstart yml (\u003ca href=\"https://github.com/ory/kratos/issues/780\" target=\"_blank\"\u003e#780\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/16e6b4d76d297182ea9a1f5dc6367570f02f7b42\" target=\"_blank\"\u003e16e6b4d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGracefully handle double slashes in URLs (\u003ca href=\"https://github.com/ory/kratos/commit/aeb941477910b5ab54429a6aab7a3e1e388c48c5\" target=\"_blank\"\u003eaeb9414\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/779\" target=\"_blank\"\u003e#779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMerge gobuffalo CGO fix (\u003ca href=\"https://github.com/ory/kratos/commit/fea2e77ca0f9b20185c7a7704854fdcf29b7ab33\" target=\"_blank\"\u003efea2e77\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove obsolete recovery_token and add link to schema (\u003ca href=\"https://github.com/ory/kratos/commit/acf6ac4e11c755e56c7d40728088257de367f7ff\" target=\"_blank\"\u003eacf6ac4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReturn correct error in login csrf (\u003ca href=\"https://github.com/ory/kratos/commit/dd9cab0e02400c88e89877f755f03c6179013123\" target=\"_blank\"\u003edd9cab0\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/785\" target=\"_blank\"\u003e#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse correct assert package (\u003ca href=\"https://github.com/ory/kratos/commit/76be5b0a5d94c251f5f07eee9f700ec11b341e2e\" target=\"_blank\"\u003e76be5b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCode Generation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003ePin v0.5.2-alpha.1 release commit (\u003ca href=\"https://github.com/ory/kratos/commit/79fcd8a6949886f847f7be0c9ba2aba7554ab204\" target=\"_blank\"\u003e79fcd8a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eDocumentation:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eSmall improvements to discord oidc provider guide (\u003ca href=\"https://github.com/ory/kratos/issues/783\" target=\"_blank\"\u003e#783\u003c/a\u003e) (\u003ca href=\"https://github.com/ory/kratos/commit/6a3c45330885eb95015fa7ee9b58a72c38132499\" target=\"_blank\"\u003e6a3c453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eTests:\u003c/strong\u003e\u003c/p\u003e\n\n\u003cul\u003e\n\u003cli\u003eAdd tests for csrf behavior (\u003ca href=\"https://github.com/ory/kratos/commit/48993e2c496fb8af7e7b9e2752ba7078a134a75a\" target=\"_blank\"\u003e48993e2\u003c/a\u003e), closes \u003ca href=\"https://github.com/ory/kratos/issues/785\" target=\"_blank\"\u003e#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMark link as enabled in e2e test (\u003ca href=\"https://github.com/ory/kratos/commit/c214b81a7026b06aaca062b2aa77951d01b0e237\" target=\"_blank\"\u003ec214b81\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve schema test regression (\u003ca href=\"https://github.com/ory/kratos/commit/bb7af1b759d6c812755956ef872bcbd31b9c50be\" target=\"_blank\"\u003ebb7af1b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial,\n sans-serif;\n font-size: 16px;\n line-height: 28px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp\n style=\"\n margin: 0;\n text-align: left;\n \"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 16px;\n font-family: Inter, Arial,\n sans-serif;\n font-weight: 400;\n color: #616161;\n line-height: 28px;\n \"\n \u003eChanges requiring your attention may have been introduced since the last release, please read the\u0026nbsp;\u003ca style=\"color:#3d53f5\" href=\"https://github.com/ory/ory/kratos/blob/master/CHANGELOG.md\" target=\"_blank\"\u003echangelog\u003c/a\u003e\u0026nbsp;with care.\n \u003c/span\u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n height: 4px;\n line-height: 4px;\n \"\n \u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i fw-1\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n class=\"fwm\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"width: 440px\"\n class=\"fwm\"\n \u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/06243b93e25d257b7fbf205634f697bb.png\"\n style=\"\n border: 0;\n border-radius: 10px 10px\n 10px 10px;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"440\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc32 ogf\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/150a8c06dcaa45901e3887296457cc12.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #eeeeee;\n background-color: #eeeeee;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #eeeeee;\n background-color: #eeeeee;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 32px 32px 48px 32px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"xc32 ogf m\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/c026cf429700701f40428f478d349306.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc440 ogf m c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 31px;\n line-height: 48px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: left\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 48px;\n \"\n \u003eYour opinion matters!\u003c/span\n \u003e\n \u003c/p\u003e\n \u003cp style=\"margin: 0\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #171717;\n line-height: 48px;\n \"\n \u003e\u003c/span\n \u003e\u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 31px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #3d53f5;\n line-height: 48px;\n \"\n \u003eOry usage survey\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 16px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n vertical-align=\"middle\"\n class=\"b\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: separate;\n width: 132px;\n line-height: 100%;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"center\"\n bgcolor=\"#3d53f5\"\n style=\"\n border: none;\n border-radius: 0;\n cursor: auto;\n mso-padding-alt: 12px 0px 12px 0px;\n background: #3d53f5;\n \"\n valign=\"middle\"\n \u003e\n \u003ca\n href=\"https://form.typeform.com/to/Igq7038O\"\n style=\"\n display: inline-block;\n width: 132px;\n background: #3d53f5;\n color: #ffffff;\n font-family: Inter, Arial, sans-serif;\n font-size: 13px;\n font-weight: normal;\n line-height: 100%;\n margin: 0;\n text-decoration: none;\n text-transform: none;\n padding: 12px 0px 12px 0px;\n mso-padding-alt: 0;\n border-radius: 0;\n \"\n target=\"_blank\"\n \u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 14px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 600;\n color: #ffffff;\n line-height: 20px;\n \"\n \u003eTake Survey\u003c/span\n \u003e\u003c/a\n \u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc16 ogf g mb-16\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: top;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: top; padding: 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003cdiv\n class=\"xc32 ogf\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"vertical-align: middle; padding: 0 0 0 0\"\u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i hm-1\"\n style=\"\n font-size: 0;\n padding: 0;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 32px\"\u003e\n \u003cimg\n alt=\"\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/c026cf429700701f40428f478d349306.jpg\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"32\"\n /\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n \n \u003cdiv\n class=\"r pr-16 pl-16\"\n style=\"\n background: #171717;\n background-color: #171717;\n margin: 0px auto;\n border-radius: 0;\n max-width: 1200px;\n \"\n \u003e\n \u003ctable\n align=\"center\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background: #171717;\n background-color: #171717;\n width: 100%;\n border-radius: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n border: none;\n direction: ltr;\n font-size: 0;\n padding: 32px 64px 32px 64px;\n text-align: left;\n \"\n \u003e\n \n \u003cdiv\n class=\"pc100 ogf\"\n style=\"\n font-size: 0;\n line-height: 0;\n text-align: left;\n display: inline-block;\n width: 100%;\n direction: ltr;\n \"\n \u003e\n \n \u003cdiv\n class=\"pc100 ogf c\"\n style=\"\n font-size: 0;\n text-align: left;\n direction: ltr;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n background-color: transparent;\n border: none;\n vertical-align: middle;\n \"\n width=\"100%\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"i w-60 h-30 m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"\n border-collapse: collapse;\n border-spacing: 0;\n \"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd style=\"width: 80px\"\u003e\n \u003ca\n href=\"https://www.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Ory Logo\"\n height=\"auto\"\n src=\"https://f002.backblazeb2.com/file/emailify/879566e4ded61f9133eb4ae85666e0f8.png\"\n style=\"\n border: 0;\n border-radius: 0;\n display: block;\n outline: none;\n text-decoration: none;\n height: auto;\n width: 100%;\n font-size: 13px;\n \"\n width=\"80\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"x m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv\n style=\"\n font-family: Inter, Arial, sans-serif;\n font-size: 10px;\n line-height: 16px;\n text-align: left;\n color: #000000;\n \"\n \u003e\n \u003cp style=\"margin: 0; text-align: left\"\u003e\n \u003cspan\n style=\"\n mso-line-height-rule: exactly;\n font-size: 10px;\n font-family: Inter, Arial, sans-serif;\n font-weight: 400;\n color: #ffffff;\n line-height: 16px;\n \"\n \u003eCopyright © *|CURRENT_YEAR|* *|LIST:COMPANY|*, All rights reserved.\u003cbr\u003e*|IFNOT:ARCHIVE_PAGE|* *|LIST:DESCRIPTION|*\u003cbr\u003e\n \u003cbr\u003e\n You subscribed to this newsletter on \u003ca href=\"https://www.ory.sh/\" target=\"_blank\"\u003ewww.ory.sh\u003c/a\u003e.\u003cbr\u003e\n \u003cbr\u003e\n Want to change how you receive these emails?\u003cbr\u003e\n You can \u003ca href=\"*|UPDATE_PROFILE|*\"\u003eupdate your preferences\u003c/a\u003e or \u003ca href=\"*|UNSUB|*\"\u003eunsubscribe from this list\u003c/a\u003e.*|END:IF|*\u003cbr\u003e\n \u003cbr\u003e*|IF:REWARDS|* *|HTML:REWARDS|* *|END:IF|*\u003c/span\n \u003e\n \u003c/p\u003e\n \u003c/p\u003e\n \u003cp style=\"margin: 0\"\u003e\n\n \u003c/p\u003e\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n class=\"s m\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 8px;\n word-break: break-word;\n \"\n \u003e\n \u003cdiv style=\"height: 4px; line-height: 4px\"\u003e\n \u0026#8202;\n \u003c/div\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\n align=\"left\"\n class=\"o\"\n style=\"\n font-size: 0;\n padding: 0;\n padding-bottom: 0;\n word-break: break-word;\n \"\n \u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://github.com/ory\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"GitHub\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/ef512130ade0d301c30989f4c913c8ee.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://slack.ory.sh/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Slack\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/eb766218760449f56561ca1eced33dbf.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://www.youtube.com/channel/UC9hCxZZeviexX0GclD0brrw\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"YouTube\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/3da01c1f1191eb2b71d7a649e51e29e5.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e m\"\u003e\n \u003ctd\n style=\"\n padding: 0 16px 0 0;\n vertical-align: middle;\n \"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://twitter.com/orycorp\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"Twitter\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/eb45c141aa72d90251c7419d68d6d64d.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003ctable\n align=\"left\"\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"float: none; display: inline-table\"\n \u003e\n \u003ctbody\u003e\n \u003ctr class=\"e\"\u003e\n \u003ctd\n style=\"padding: 0; vertical-align: middle\"\n \u003e\n \u003ctable\n border=\"0\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n style=\"border-radius: 0; width: 24px\"\n \u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\n style=\"\n font-size: 0;\n height: 24px;\n vertical-align: middle;\n width: 24px;\n \"\n \u003e\n \u003ca\n href=\"https://www.linkedin.com/company/ory-corp/\"\n target=\"_blank\"\n \u003e\n \u003cimg\n alt=\"LinkedIn\"\n height=\"24\"\n src=\"https://f002.backblazeb2.com/file/emailify/0cb3b6717df0a6d08795de6808ab115e.png\"\n style=\"\n border-radius: 0;\n display: block;\n \"\n width=\"24\"\n /\u003e\u003c/a\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n \n \u003c/div\u003e\n \n \u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e\n \u003c/div\u003e\n\n\u003c/div\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n" diff --git a/view/mail-body.html b/view/mail-body.html index a6fa69e4..c662b669 100644 --- a/view/mail-body.html +++ b/view/mail-body.html @@ -1,3 +1,6 @@ + + +