Releases: growthbook/growthbook
v2.5.0
Highlights
- Metric Fact Tables by @jdorn in #1667 #1700 #1727
- SCIM support for Okta (other IdPs coming soon) by @mknowlton89 @msamper in #1731
- Remote Eval mode for Javascript/React SDKs by @bryce-fitzsimons in #1677 #1294
- Data Pipeline mode to reduce BigQuery/Snowflake costs by @lukesonnet in #1610 #1573 #1701 #1691 #1707 #1714
- AI copy suggestions in the Visual Editor by @bttf in #1307
- User Archetypes - simulate feature assignment directly within the UI by @Auz in #1687 #1712
- REST API endpoints to create and update feature flags by @bttf in #1478
- Support for self-hosted multi-org deployments (Enterprise Only) by @tzjames in #1706
Other Changes
- Improved Experiment velocity graphs by @Auz in #1733
- Stats engine selection for experiments by @bryce-fitzsimons in #1658
- Auto-metric improvements and bug fixes by @mknowlton89 in #1522 #1682 #1585 #1728
- Include intraday tables as part of the default GA4 queries by @tzjames in #1673
- Experiment search improvements by @jdorn in #1685
- Filter metrics on experiment results by tag by @bryce-fitzsimons in #1746
- Add scheduling back to feature experiment rules by @jdorn in #1660
- Invalidate other browser sessions when password is changed by @bryce-fitzsimons in #1669
- Top Nav layout and page title improvements by @jdorn in #1679
- More robust image uploading when using S3 or Google Cloud Storage by @tzjames in #1674
- Better cloning support for visual experiments by @bryce-fitzsimons in #1709
- Tag Snowflake queries for easier cost accounting by @Auz in #1703
- Show adjusted confidence intervals when using p-value correction by @lukesonnet in #1736 #1740
Bug Fixes
- Experiment result page UI fixes by @bryce-fitzsimons in #1663 #1668 #1665 #1662 #1676 #1678 #1681 #1689 #1695
- Fixed loading state not being set correctly in the welcome frame by @Auz in #1705
- Add UTC timezone to Clickhouse toDateTime by @m0003r in #1711
Documentation and Misc Changes
- Auto refresh instructions for react native by @tzjames in #1652
- Fix typos in Flickering section in experiments.mdx by @august-growthbook in #1672
- Hint that Url targeting attribute is required for visual editor URL targeting by @dazultra in #1697
- Make it clear Visual editor is compatible with GTM implementation by @dazultra in #1698
- Correct a typo in visual-editor.mdx by @august-growthbook in #1675
- Change admin -> superAdmin by @tzjames in #1699
- Self-Host docs improvement - Make a little less confusing by @bttf in #1656
- Update the side menu path to find attributes. by @tzjames in #1717
- Show rendered sql and error in EditSqlModal by @tzjames in #1595
- Remove role pill from TopNav by @mknowlton89 in #1659
New Contributors
- @august-growthbook made their first contribution in #1672
- @dazultra made their first contribution in #1697
- @m0003r made their first contribution in #1711
Full Changelog: v2.4.0...v2.5.0
v2.4.0
Highlights
- New experiment page layout and results table by @bryce-fitzsimons, @lukesonnet, @jdorn in #1515 #1631 #1639 #1627 #1611 #1625 #1621 #1624 #1649 #1540 #1638 #1614 #1629 #1562
- More powerful feature flag experiments by @jdorn in #1560 #1650 #1139 #1556 #1588 #1618
- Built-in sample data to quickly demo the full GrowthBook UI by @tinahollygb, @lukesonnet in #1499 #1487 #1486
- New streamlined onboarding process by @mknowlton89, @jdorn, @bttf in #1578 #1592 #1493
- DataDog feature flag integration by @mknowlton89 in #1653
- BigQuery performance and cost improvements by @lukesonnet in #1587 #1609
- Full Handlebars support for SQL template variables (+ other fixes) by @tzjames in #1541 #1568 #1616 #1559
Other Changes
- Multi-platform Docker image (x86 + arm) by @tzjames in #1533
- New organization setting to specify a default data source by @mknowlton89 in #1514
- Improvements to the GrowthBook CLI when used in a CI/CD environment by @tinahollygb in #1608
- Better UI when entering ids into saved groups by @msamper in #1476 #1613
- Revoke all active sessions when a password is reset by @jdorn in #1648
- SSE streaming support in the Java SDK by @tinahollygb in #1530
- Show partial experiment results if a small number of metric queries fail by @jdorn in #1557
- Project selector is now searchable by @bryce-fitzsimons in #1597
- Improvements to the experiment REST endpoints by @lukesonnet in #1563
Bug Fixes
- JS SDK - streaming updates only work on initial page load by @jdorn in #1603
- Visual editor with only javascript changes excluded from SDK payload by @jdorn in #1645
- Add missing athena table prefix by @tzjames in #1555
- Fix Databricks date_format for dimensions by @lukesonnet in #1564
- Don't show Slack link in SideBar if user doesn't have permission by @mknowlton89 in #1635
- Uncaught errors in SQL schema browser by @Auz in #1548
- Uncaught error when condition JSON is invalid by @jdorn in #1565
- GrowthBook Cloud SSE fixes by @bryce-fitzsimons in #1520
- Z-index bug with draft feature changes alert by @Auz in #1539
- Purge GrowthBook Cloud CDN after an SDK connection changes by @msamper in #1475
- Databricks did not require a default catalog by @mknowlton89 in #1566
- Various fixes and improvements with the connection info for BigQuery by @Auz in #1571
- Unable to delete tags with special URL characters by @Auz in #1546
- Broken test queries for GA by @tzjames in #1538
- LaunchDarkly import error when accessing optional _maintainer by @tinahollygb in #1583
- Allow for fractional metric conversion window hours by @bryce-fitzsimons in #1600
Documentation and Misc Changes
- Add databricks connection docs by @lukesonnet in #1598
- Add permission detail to docs by @mknowlton89 in #1602
- Add GA4 to list of data sources that support auto metrics by @mknowlton89 in #1516
- Add docs section on compound data source identifiers by @bttf in #1647
- Documentation site improvements and reorganization by @Auz in #1482
- GTM docs: add loadFeatures() to first code snippet to avoid confusion by @bryce-fitzsimons in #1551
- Location update for Saved Groups in docs by @tzjames in #1529
- Minor adjustment of docs by @Auz in #1626
- Recommendations for mongo by @tzjames in #1535
- Show all three BigQuery permissions in docs by @tzjames in #1527
- Update FAQ: user id -> hashAttribute by @bryce-fitzsimons in #1620
- Update bigquery.mdx to use project ids not names by @tzjames in #1576
- Update docs to mention change to emailDomains by @tzjames in #1510
- Updates docs to reflect new location of Namespaces in the SideNav. by @mknowlton89 in #1523
- Add options for url randomization to FAQ by @lukesonnet in #1594
- Add back-end support for team management by @msamper in #1582
- CI preview environment cleanup by @bttf in #1537 #1526
- Extract validateFeatureValue and related utils into shared by @bttf in #1525
- Fix & add ensureFloat implementations by @tzjames in #1579
- Refactor permissions by @mknowlton89 in #1543 #1553 #1630
- Refactor sql tests to be more descriptive by @tzjames in #1577
- Remove mongoose model exports for AuditModel and WatchModel and refactor by @msamper in #1542
- Remove old experiment page UI by @bryce-fitzsimons in #1552
- Remove unused SQL Integration functions by @tzjames in #1580
- Validate exposure queries by @tzjames in #1503
- New super admin page for managing organizations by @jdorn in #1591
- Support for Node.js 18 during local development by @jdorn in #1524
Full Changelog: v2.3.0...v2.4.0
v2.3.0
Highlights
- 🧪 Redesigned experiment page and left nav by @bryce-fitzsimons and @jdorn in #1145 #1403 #1446 #1450 #1474
- 🚀 New GrowthBook Cloud CDN with realtime purging and streaming by @jdorn, @bryce-fitzsimons in #1397 #1426
- 🧢 Percentile capping (Winsorization) by @lukesonnet in #1371
- 🏃 SQL performance improvements (up to 40% faster queries in some cases) by @lukesonnet in #1334 #1409 #1406
- 🔍 Automatic metric discovery when using Segment, Rudderstack, or GA4 by @mknowlton89 in #1412 #1423 #1419
- 🔪 Optional confirmation step for feature kill switches by @bryce-fitzsimons in #1381
- 💤 New REST endpoints for metrics and experiments by @bttf and @aresowj in #1361 #1388 #1466
- 🔭 Observability for self-hosted GrowthBook instances (OpenTelemetry) by @jdorn in #1441
- 🏴 Import feature flags from LaunchDarkly by @tinahollygb in #1404
- 📜 Restructured docs with new info on data source connection and configuration by @tzjames in #1425 #1438 #1464
- ⚡ Support for self-hosted GrowthBook Proxy in front of GrowthBook Cloud by @bryce-fitzsimons in #1429
- More control over how winning visual editor variations are released to users by @jdorn in #1501
- 🎯 New UI for managing targeting attributes by @bryce-fitzsimons in #1360
Bug Fixes
- Fix bugs with Update Data button on experiment results by @jdorn in #1373
- Fix when visual editor URL is relative (missing http://) by @jdorn in #1377
- GA4 BigQuery bug when using count or revenue metrics by @SGudbrandsson in #1463
- Fix imports in Hybrid SSR docs by @edgarlr in #1379
- Various bug fixes by @tinahollygb in #1418
- Gracefully handle SIGTERM and SIGINT by @bryce-fitzsimons in #1435
- Experiment results not showing in presentations by @Auz in #1459
- Custom report query errors not showing up by @mknowlton89 in #1507
- CI/CD fixes by @bttf in #1341 #1387 #1445 #1483 #1488 #1495
- Made organization field in the logs ECS-compliant by @themao in #1458
- Give more roles manageTags permissions by @lukesonnet in #1491
- Fix ratio metric display by @lukesonnet in #1465
Misc Changes
- Support deleting linked resources when deleting a project by @tinahollygb in #1432
- Better SQL editing experience for experiment assignment queries by @mknowlton89 in #1370
- Add GrowthBook label to BigQuery query jobs by @msamper in #1452
- Add env var for API rate limit max by @itsgrimetime in #1386
- Add descriptions to segments and dimensions by @mknowlton89 in #1496
- Import tags when using config.yml for metrics by @lukesonnet in #1395
- Improve Ruby and Java SDK docs by @tinahollygb in #1460 #1467
- Sticky column headers for features list by @Satyam-G5 in #1479
- Ability to view and edit visual editor changes within the GrowthBook App by @bttf in #1394 #1415
- Improved warning message when using version string targeting in a nonsupported SDK by @tzjames in #1508
- Link to Slack community in live chat widget by @mknowlton89 in #1384
- Update docs for secure attribute hashing, change order of salting by @bryce-fitzsimons in #1392
- Remove devcontainers and improve contributing guide by @tzjames in #1411 #1414 #1268
- Changes to prepare for improved Sample Dataset onboarding flows by @tinahollygb in #1477 #1484 #1494
- Update visual editor docs by @mattdp in #1471 #1511
License Change
We made some changes to clarify the license for GrowthBook. All files not within packages/enterprise
continue to use the permissive MIT license. Files within that enterprise directory have their own proprietary GrowthBook Enterprise license. This change will allow us to more clearly differentiate the Open Source core product and our Enterprise offerings.
We remain fully dedicated to Open Source and improving our core platform for everyone. In fact, all of the highlights listed above in this release are 100% free and open.
New Contributors
- @itsgrimetime made their first contribution in #1386
- @edgarlr made their first contribution in #1379
- @msamper made their first contribution in #1452
- @aresowj made their first contribution in #1388
- @Satyam-G5 made their first contribution in #1479
- @SGudbrandsson made their first contribution in #1463
- @themao made their first contribution in #1458
Full Changelog: v2.2.0...v2.3.0
v2.2.0
Highlights
- Visual Editor - Inject custom JavaScript and edit inline CSS properties by @bttf in #1278
- Version string comparison operators in client-side SDKs by @tinahollygb in #1286 #1321
- JSON Schema validation for feature flag values by @Auz in #1262 #1352
- SHA256 hashing for sensitive targeting attributes by @bryce-fitzsimons in #1270 #1351
- Personal Access Tokens and Readonly keys for the REST API by @tinahollygb in #1265 #1346
- Ability to change the currency for revenue metrics (default USD) by @mknowlton89 in #1275
- New FullStory data source integration by @Auz in #1271
- MongoDB 6.0 support by @tinahollygb in #1299 #1327 #1331 #1332 #1359
- Many new GrowthBook CLI commands by @tinahollygb in growthbook/growthbook-cli#31 growthbook/growthbook-cli#34
Breaking Changes
Most users should have no issues updating to version 2.2, but there are a few important changes to be aware of:
- MongoDB 3.4 and lower is no longer supported (3.4 was released in 2016 and reached end-of-life in 2020)
- Some uncommon MongoDB connection options are no longer supported and must be removed from your connection URL if present:
autoReconnect
,reconnectTries
,reconnectInterval
,ha
,haInterval
,secondaryAcceptableLatencyMS
,acceptableLatencyMS
,connectWithNoPrimary
,domainsEnabled
,bufferMaxEntries
. See a list of all supported connection options at https://www.mongodb.com/docs/drivers/node/v4.13/fundamentals/connection/connection-options/
Bug Fixes
- Unable to delete projects by @bryce-fitzsimons in #1354
- Fix MSSQL date format bug and add testing code by @lukesonnet in #1323
- JS SDK - fix import errors with Typescript 5 by @leachtucker in #1338
- JS SDK - localStorage cache not getting new TTL when updating features by @jdorn in #1295
- JS SDK - Make targeting condition
$in
and$nin
operators work with arrays by @jdorn in #1246 - Allow metric lookback window to be any number by @lukesonnet in #1280
- Allow 0 value p-values through to UI by @lukesonnet in #1296
- Add support for multiple MsSql Database Connections by @mknowlton89 in #1304
- Various front-end and query builder bugfixes by @lukesonnet in #1345
- Broken links in the experiment status emails by @Auz in #1348
- Show missing "unarchive" and "delete" options for archived experiments by @bryce-fitzsimons in #1358
- Datasource settings get wiped when hitting 'back' in the form by @mknowlton89 in #1357
Other Changes
- No longer able to create new Google Analytics UA data sources by @Auz in #1271
- Remove
|
prefix from production Docker logs by @bryce-fitzsimons in #1353 - Add mypy to gbstats by @lukesonnet in #1276
- Beta - Auto-detect metrics in your data source by @mknowlton89 in #1283
- Visual Editor - Add documentation around CSP requirements by @bttf in #1285
- Invite users, max seats reached: add generic failure modal by @bryce-fitzsimons in #1308 #1325
- Remove some ts-expect-error statements by @tinahollygb in #1314
- Snapshot refactor migration by @jdorn in #1284 #1329
- Update NextJS docs to work with App Router by @bttf in #1335
- Script to generate test cases for strictly typed SDKs by @tinahollygb in #1339
- SDK form: update encryption support, make settings more permissive with warnings by @bryce-fitzsimons in #1350
New Contributors
- @leachtucker made their first contribution in #1338
Full Changelog: v2.1.1...v2.2.0
v2.1.1
Bug Fixes
- Hotfix sseEnabled in zod validator by @bryce-fitzsimons in #1257
- Frontend TS - Enabled
strictNullChecks
; Add @ts-expect-errors everywhere by @bttf in #1256 - Various bug fixes by @tinahollygb and @bryce-fitzsimons in #1244 #1266
- Remove information_schema for deleted data sources. by @mknowlton89 in #1267
Docs / Misc
- Visual Experiments - Add copy regarding minimum SDK versioning by @bttf in #1240
- Visual Editor - Custom JS - Update models by @bttf in #1261
- Add launch.json by @tzjames in #1264
- Consolidate Schema Browser Implementation by @mknowlton89 in #1218
- New
runExperiments
permission by @jdorn in #1165 - Clarify capped value works on aggregated values by @lukesonnet in #1281
- Separate entry points for shared package by @jdorn in #1279
Full Changelog: v2.1.0...v2.1.1
v2.1.0
Major Changes
- Multiple Testing Correction and Sequential Testing Analysis by @lukesonnet and @bryce-fitzsimons in #1193 #1249 #1155 #1186 #1190 #1166
- Visual Editor improvements - Multi-page experiments and ability to re-order page elements by @bttf and @bryce-fitzsimons in #1157 #1143 #1180 #1199 #1168
- Major SDK updates for PHP, Python, Ruby, Kotlin, and Java by @tinahollygb, @jdorn, @vazarkevych, and @BarreiroT in #1147 #1103 #1221 #1239 #1156 #1118 #1251 #1202
- REST API endpoints for saved-groups by @mknowlton89 in #1181 #1219
- Project-scoped Stats Engine setting by @bryce-fitzsimons and @bttf in #1201 #1175
- Add typeahead helpers to Metric Query Builder by @mknowlton89 in #1160
- Exportable audit logs (Enterprise only) by @tinahollygb in #1149 #1129 #1094 #1169 #1136
- Add data source schema browser to all data sources by @mknowlton89 in #1146 #1154 #1152 #1153 #1148 #1125 #1123 #1151 #1227
- Improved UX when creating feature flags by @jdorn and @Auz in #1144 #1248 #1150
- Option to remove experiment/variation names from visual editor SDK payload by @jdorn in #1161
- Redis Cluster support in the GrowthBook Proxy server by @bryce-fitzsimons in growthbook/growthbook-proxy#21
Bug Fixes
- Experiment results not refreshing by @jdorn in #1189 #1209 #1208
- SQL bug fixes for Redshift and MS SQL by @lukesonnet, @Auz, and @mknowlton89 in #1184 #1185 #1191
- Dangling References to Deleted Projects by @bryce-fitzsimons in #1223
- Fix detection of outdated experiment results by @lukesonnet in #1247
- Fix broken namespaces link to features by @BarreiroT in #1130
- Cannot refresh legacy SDK page by @gitstart in #995
- Fix project-scoped permissions by @Angelbear in #1230
- Fix undefined experiments while getting SDK payload by @bryce-fitzsimons in #1138
- JS SDK: Use exponential backoff retry for SSE connection errors by @bryce-fitzsimons in #1137
- Fix when user's name is undefined by @jdorn in #1134
Documentation / Misc
- Doc updates by @tzjames, @tinahollygb, @0r0loo, @mattdp in #1216 #1206 #1194 #1242 #1226 #1215 #1177
- GrowthBook Cloud Improvements - free trials, notifications, error logging, and multiple SSO domains by @bryce-fitzsimons, @tinahollygb in #1231 #1167 #1234 #1235 #1128 #1222
- Tech debt cleanup by @jdorn, @mknowlton89, @jacobwgillespie, @bryce-fitzsimons, @bttf in #1142 #1228 #1245 #1211 #1062 #1140 #1131 #1141
New Contributors
- @jacobwgillespie made their first contribution in #1140
- @mattdp made their first contribution in #1177
- @BarreiroT made their first contribution in #1130
- @0r0loo made their first contribution in #1194
- @Angelbear made their first contribution in #1230
- @vazarkevych made their first contribution in #1118
Full Changelog: v2.0.0...v2.1.0
v2.0.0
Highlights
- Visual Editor 2.0 by @bttf, @jdorn, and @bryce-fitzsimons in #1044 #1059 #959 #1032
- Regression Adjustment (CUPED) for Frequentist experiments by @lukesonnet and @bryce-fitzsimons in #1088 #1113 #1031 #1020 #1090 #1019
- Instant feature rollouts on GrowthBook Cloud by @bryce-fitzsimons in #1033 #956
- New SQL Editing Experience and Schema Browser by @mknowlton89 in #1095 #1050 #940 #864
- Type-safe feature flags in the JS/React SDKs by @tinahollygb in #1023 #1039
- Experiment REST endpoints by @jdorn and @tinahollygb in #1028 #1116
- Add Databricks SQL integration by @jdorn in #946
- Best Practices Guide for experimentation by @Auz in #1124
- Refactor SQL for reduced complexity and faster performance by @lukesonnet in #1008 #1085 #1106 #1066 #841
- Slack Integration and Event/Webhook improvements by @tinahollygb in #917 #923 #1074 #1080 #931 #949 #942 #1053 #1092
Other Features and Changes
- Add segments to config.yml by @mknowlton89 in #1018
- Option to specify a CDN_HOST while self-hosting by @mknowlton89 in #1013
- Ability to override the stats engine for ad-hoc reports by @bttf in #958
- Add stddev, pvalue, and CI to experiment Export CSV option by @lukesonnet in #950 #1076
- Easily re-order experiment variations by @mknowlton89 in #882 #1047
- Improve graphs and charts by @lukesonnet and @bryce-fitzsimons in #975 #968 #973 #1060 #1077
- User adjustable significance thresholds by @Auz in #1024
- Ability to archive metrics by @bryce-fitzsimons in #1071
- Ability to refresh NorthStar metrics by @bryce-fitzsimons in #978
- Option to auto-join organizations on GrowthBook Cloud based on verified domain name by @bryce-fitzsimons in #997 #979 #1001
- Specify the default attribution model as an organization setting by @bryce-fitzsimons in #1119 #1120
- Mixpanel: Filter out users who saw multiple variants of an experiment by @evaldask in #925
Bug Fixes
- Various bug fixes in experiment results by @lukesonnet and @dustinblackman in #1058 #1037 #1052 #991 #1046
- Permissions fix when using encrypted feature flags by @tinahollygb in #964
- Adding a tag to a feature was not persisting by @mknowlton89 in #947
- Fix bug with MetricsSelector when datasource is empty by @bryce-fitzsimons in #963
- Metric defaults bug (2 decimal places) by @tinahollygb in #1015
- Fix bug when adding both environment and project-scoped permissions by @tinahollygb in #1072
- Bug fixes for Pro and Enterprise accounts by @bryce-fitzsimons and @mknowlton89 in #1006 #976
- Fix Localstorage bug in Javascript SDK by @jdorn in #990
- Fix bugs in SQL and statistics engine by @lukesonnet, @Auz, and @jdorn #1127 #936 #974 #1122 #1107 #812 #939 #953 #1025 #1007 #1012
- Fix typo in docs by @edorivai in #1017
- Improve UX of navbar on mobile devices by @bryce-fitzsimons in #965
- Improve styling of code blocks by @tinahollygb in #1093 #1112
- Rounding bug with certain number of variations by @gitstart in #994
Documentation / Misc
- Added full Okta instructions to docs by @Auz in #1005
- Improve SDK documentation and examples by @tinahollygb and @jdorn in #1048 #1055 #962 #996 #1087
- Added GA4 documentation by @Auz in #1035 #1054 #1086
- Google Tag Manager integration guide by @bryce-fitzsimons in #1056 #1067
- Update Create React App (CRA) tutorial by @dirkbosman in #1117
- Remove required role 'BigQuery Metadata Viewer' by @rfalke in #1036
- Improve SQL Query testing service by @lukesonnet in #1110 #1079 #1043 #910 #934
- Updated spelling error in Proxy docs by @ollie-bud in #1040
- Dogfood our product by using the latest SDK features within GrowthBook itself by @tinahollygb and @bryce-fitzsimons in #1034 #1115
- Update eslintignore to ignore docs/build by @lukesonnet in #1027
- Scripts to check for unused exports by @tinahollygb in #1083
- Refactor ExperimentModel and SegmentModel by @mknowlton89 in #924 #1016
New Contributors
- @evaldask made their first contribution in #925
- @edorivai made their first contribution in #1017
- @rfalke made their first contribution in #1036
- @ollie-bud made their first contribution in #1040
- @dustinblackman made their first contribution in #1046
- @gitstart made their first contribution in #994
- @dirkbosman made their first contribution in #1117
Full Changelog: v1.9.0...v2.0.0
v1.9.0
Highlights
- Frequentist Stats Engine by @lukesonnet and @bttf in #817 #921 #853 #847 #837
- GrowthBook Proxy Server by @bryce-fitzsimons (repo: https://github.com/growthbook/growthbook-proxy)
- Event Webhooks by @tinahollygb in #745 #760 #774 #821 #872 #874 #878 #876 #886
- Feature Flag Scheduling by @mknowlton89 in #765 #859 #883 #860 #887
- SDK Connections by @jdorn @bryce-fitzsimons @mknowlton89 in #879 #913
Other Features
- Metric Setting Overrides by @bryce-fitzsimons in #735 #772 #768 #846
- Project-scoped Metrics and Data Sources by @bryce-fitzsimons in #824
- Add Query Tester to Segments, Dimensions, and Metrics by @mknowlton89 in #833
- Confirmation step before accepting invitation by @jdorn in #789
- Duplicate features by @bttf in #819
- Make attributes archivable by @bryce-fitzsimons in #726
- Experiment import modal improvements by @bryce-fitzsimons in #747 #748 #749
- Link to datasource from experiment page by @bryce-fitzsimons in #800
- Tools to deal with orphaned users while self-hosting by @jdorn in #792
- Expand supported fields in config.yml import/export by @mknowlton89 in #755
- Added SQL replacement variables to dimensions and segments by @Auz in #808
- Saved Groups Improvements by @mknowlton89 @Auz in #796 #830
- Added a project drop down to the add feature modal. by @Auz in #810
- Deep link to experiments using only the tracking key by @jdorn in #802
- Add description to datasource by @bryce-fitzsimons in #798
- Self serve enterprise trial license key / UI by @bryce-fitzsimons in #763 #839 #850
- SDK Payload scoping and caching by @jdorn in #851 #865
Bug Fixes
- Support higher precision when specifying variation weights by @jdorn in #832
- Fix for session expiration error by @Auz in #825
- Coalesce null aggregate metric values to fix stats bugs by @jdorn in #803
- Add ensureFloat method to MySQL by @lukesonnet in #928
- Fix ratio metric numerator/denominator join to use all unique keys by @lukesonnet in #929
- Webhook UI - add word break styling by @bttf in #766
- Targeting condition and attribute bugs by @mknowlton89 @bttf in #770 #787 #788
- Fix CSS bugs by @mknowlton89 @bttf @bryce-fitzsimons in #786 #862 #743
- Experiment coverage 0% bug by @bttf in #795
- Always show 'Download Notebook' button, but disable it when not available by @mknowlton89 in #799
- Bug in SDK Endpoints list by @mknowlton89 in #729
- Filter north star charts by experiments in current project by @bryce-fitzsimons in #801
- Exp. settings - Add UTC hint to Cronjob setting by @bttf in #835
- Fix for experimenter permission to create segments by @Auz in #842
- Generate dummy data - Fix data generation bug (NULL variationid) by @bttf in #843
- Added check to make sure rules is an array by @Auz in #867
- MetricForm - Ensure ignoreNulls set to false when type set to binomial by @bttf in #863
- update "to" variable to include the current day's worth of data by @phershbe in #856
- Visual editor - JS endpoint - Fix regex by @bttf in #889
- Add rootDir to tsconfig by @bttf in #869
- Fixed GB dev container setup by @razilevin in #823
- cross-platform build scripts by @chris-schra in #852
Docs / Misc Changes
- New docs/example apps for React Native, Ruby on Rails, Next.js, Vue.js, and C# by @tinahollygb @bttf @sandi-inforit in #738 #757 #807 #877 #734 #762
- Fixing Mixpanel documentation by @Auz in #758
- Updated rudderstack docs by @Auz in #764
- Preview environments w/ Okteto by @bttf in #773 #790 #870
- 781 - Migrate some routes to use router-based routing by @tinahollygb in #797
- Update dev-dependencies in stats library and run linter by @lukesonnet in #805
- Change select fields to react UI by @bryce-fitzsimons and @Auz in #806 #820 #829 #854
- Consolidate Plop code generation by @tinahollygb in #813
- Instructions for generating sample data for development by @jdorn in #593
- Imports cleanup by @bttf in #828
- Add docs for enterprise SSO (Google, Auth0, and Okta) by @Auz in #840
- Add MySQL script for loading sample data by @lukesonnet in #848
- Improve docs for WSL users by @tinahollygb in #871
- Added custom 404 pages by @Auz in #873
- Slack Integration preparation by @tinahollygb in #905 #909 #911 #919 #922
- Add various data features to test data generator by @lukesonnet in #907
New Contributors
- @bttf made their first contribution in #766
- @lukesonnet made their first contribution in #805
- @sandi-inforit made their first contribution in #762
- @razilevin made their first contribution in #823
- @chris-schra made their first contribution in #852
Full Changelog: v1.8.0...v1.9.0
v1.8.0
Highlights
- 🔌 REST API - list and toggle features programatically by @jdorn in #638 #717
- ☕ Java SDK by @tinahollygb in #714
- 🔑 Fine-grained permissions by environment and project by @jdorn in #659 and #649
- 👀 Option to encrypt feature flags so they aren't exposed to your users by @mknowlton89 in #530 and #718
- 👩💻 VS Code extension by @tinahollygb in #728
- 📜 New documentation site - now with search! by @Auz in #674
Other Features
- "Test Query" button to debug experiment assignment queries by @mknowlton89 in #643
- Improved sorting and searching throughout the app by @jdorn and @Auz #635 #637 #712
- Add auto-authentication and default catalog support to Athena by @jdorn in #621 #696
- Add join date and display number of users and invites on the teams page. by @mknowlton89 and @tinahollygb in #695 #713
- Mixpanel - Optional extra property when grouping by user by @jdorn in #697
- Redesign /settings/api tables and ClickToReveal component by @mknowlton89 in #656
- Let users enter the experiment_id when creating a draft experiment by @jdorn in #620
- Use ACE editor for advanced targeting conditions by @mknowlton89 in #700
Bug Fixes
- Dark mode bug fixes by @tinahollygb in #625 , #627 , #644 , #701
- Authentication redirect and invitation bugs by @Auz, @jdorn, and @mknowlton89 in #626 #630 #646 #691 #710
- SQL fixes - Formatting, integer division, null dimensions, custom ports, queued queries by @jdorn and @Auz in #727 #706 #708 #647 #651
- Targeting conditions form bugs by @jdorn in #655
- Bug when editing saved groups by @mknowlton89 in #657
- Unable to delete secret API keys by @jdorn in #689
- Allow duplicate experiment tracking keys by @jdorn in #703
- Bug when adding a new experiment @Auz in #715
- Markdown not rendered correctly in metric tooltips on experiments by @mknowlton89 in #693
Docs / Misc Changes
- Update Python dependencies - now requires Python 3.8+ by @jdorn in #654
- Upgrading from Node14 to 16. by @mknowlton89 in #617
- Increase browser support for javascript SDK - iOS 12.2+ by @jdorn in #694
- Helper script to migrate data sources when ENCRYPTION_KEY changes by @jdorn in #624
- Add React Storybook for common UI components by @tinahollygb in #704
- Increased the request size limit to 1mb by @Auz in #723
- Rename "API Keys" to "SDK Endpoints" by @jdorn in #619
- Disable dev mode in SDKs by default by @mknowlton89 in #616
- Move docs CI to a separate workflow by @jdorn in #699
- Improve UX when a user's session expires by @jdorn in #702
Full Changelog: v1.7.0...v1.8.0
v1.7.0
Highlights
- 🌙 Dark Mode by @tinahollygb in #586
- ➗ Full ratio metric support using the Delta method by @jdorn in #523 #537
- 🎯 Reusable targeting groups for features by @mknowlton89 in #510
- Different attribution models for experiment metric conversions by @jdorn in #479
- Added MS SQL / SQL Server support by @Auz in #576
- New and improved data sources UI by @tinahollygb in #527 #534 #539 #550
- Self-hosted Enterprise SSO by @jdorn in #466 #603 #606 #610
Other Features
- Support for Snowflake authenticated proxies when self-hosting by @jdorn in #516 #524
- Allow organizations to configure default behaviour metrics in their organization settings by @tinahollygb in #518
- Ability to set targeting conditions when adding new features by @tinahollygb in #514
- Add support for ==tag== syntax in markdown fields by @jdorn in #570
- Adds initial rule to all feature environments even if they are not enabled by @kelvanb97 in #567
- Allow OR in mixpanel metric event names to match against multiple events by @jdorn in #566
- Add support for inviting multiple team members at once by @mknowlton89 in #563
- Better filtering and debugging when importing past experiments by @jdorn in #559
- Added SSL support for MySQL and Trino/Presto by @Auz in #577 #579
- New operators and aggregations for Mixpanel by @jdorn in #590
- Add
experimentId
as a SQL template variable by @jdorn in #601 - Add syntax highlighting to segment/dimension SQL queries by @jdorn in #618
Bug Fixes
- Validate SQL and feature values before saving by @mknowlton89 and @jdorn in #556 #575 #580
- Increased 100kb payload limit for express requests by @Auz in #506
- Data source bug fixes by @Auz and @tinahollygb in #512 #540 #560 #572 #582
- Fix formatting bug for Presto/Athena lambda syntax ('->') by @jdorn in #533
- Fix tooltip when disabled button used as trigger by @kelvanb97 in #569
- Show project column in feature and experiment tables by @kelvanb97 in #573
- Fix "View results" link when an experiment uses the default tracking key by @jdorn in #592
- Errors caused by deleted environments by @kelvanb97 in #504
- Diff modals not wide enough to do side-by-side comparisons by @jdorn in #618
Docs / Misc Changes
- Add documentation and examples for Swift and C# SDKs by @Auz and @jdorn in #618
- Remove pip from pyproject.toml, add docs for pytest in CONTRIBUTING by @tinahollygb in #511
- Add instructions for MongoDB to docs by @tinahollygb in #513
- PR and issue templates by @tinahollygb in #519
- Add note to docs about using different domains when self-hosting. by @jdorn in #561
- Enable React hooks exhaustive deps rule but disable most checks by @tinahollygb in #568
- Clean up imports with ESLint plugin by @tinahollygb in #571
- Help users understand why they cannot add more than 2 variations to boolean features by @Auz in #564
- Cache ESLint to speed up local development by @tinahollygb in #596
- Simplify self-serve-billing updates by @mknowlton89 in #498
- Performance Improvements (SWC, Build Caching, React Suspense) by @jdorn in #589
- Update poetry install instructions by @levidurfee in #609
New Contributors
- @tinahollygb made their first contribution in #514
Full Changelog: v1.6.0...v1.7.0