What's new
Generally Available
- Favorites (#2941)
Beta releases:
- Maintenance mode (#2699)
- Service accounts (#2942) (enterprise feature)
- Variants per environment (#2254)
- Show API traffic inside Unleash (#2603) (pro and enterprise)
What's Changed
- Maintenance mode UI by @sjaanus in #2704
- docs: update group docs to reflect that users is not optional by @sighphyre in #2667
- Use new useConditionallyHiddenColumns hook by @nunogois in #2695
- feature: add query support to features endpoint by @chriswk in #2693
- feat: expose number of registered applications metric by @gastonfournier in #2692
- Feat network overview by @nunogois in #2708
- Feat lazy loading network by @nunogois in #2709
- Maintenance mode middleware by @sjaanus in #2707
- Make build badge work correctly by @sjaanus in #2710
- fix: metrics one hour select label by @Tymek in #2712
- perf: Simplify queries to prometheus by @gastonfournier in #2706
- refactor: flag resolver should use stricter types by @nunogois in #2571
- fix: set a more generous maxWidth in access timeago cells by @nunogois in #2714
- Maintenance mode for users by @sjaanus in #2716
- Remove favorites feature flag by @sjaanus in #2722
- fixes 2-456: Preserve all data from strategy import by @chriswk in #2720
- Adds tracking to maintenance feature by @sjaanus in #2723
- feat: message banner by @nunogois in #2726
- feat: adds an optional dialog and markdown support by @nunogois in #2728
- chore(deps): update dependency @vitejs/plugin-react to v3 by @renovate in #2665
- chore(deps): update dependency prettier to v2.8.1 by @renovate in #2509
- chore(deps): update typescript-eslint monorepo to v5.47.1 by @renovate in #2426
- chore(deps): update dependency @babel/core to v7.20.7 by @renovate in #2740
- fix(deps): update dependency uuid to v9 by @renovate in #2401
- chore(deps): update dependency @types/node to v16.18.11 by @renovate in #2744
- chore(deps): update dependency @types/express to v4.17.15 by @renovate in #2743
- chore(deps): update dependency @testing-library/dom to v8.19.1 by @renovate in #2742
- chore(deps): update dependency @swc/core to v1.3.24 by @renovate in #2741
- chore(deps): update dependency @types/nodemailer to v6.4.7 by @renovate in #2745
- chore(deps): update dependency @uiw/react-codemirror to v4.19.4 by @renovate in #2747
- chore(deps): update dependency msw to v0.49.2 by @renovate in #2748
- chore(deps): update dependency @uiw/codemirror-theme-duotone to v4.19.4 by @renovate in #2746
- chore(deps): update node.js to v14.21.2 by @renovate in #2750
- fix(deps): update dependency unleash-client to v3.16.1 by @renovate in #2752
- chore(deps): update dependency @codemirror/state to v6.2.0 by @renovate in #2753
- chore(deps): update storybook monorepo to v6.5.15 by @renovate in #2751
- chore(deps): update dependency decode-uri-component to ^0.4.0 by @renovate in #2754
- chore(deps): update dependency @types/react-table to v7.7.13 by @renovate in #2758
- chore(deps): update dependency eslint to v8.30.0 by @renovate in #2755
- chore(deps): update dependency fast-check to v3.5.0 by @renovate in #2756
- chore(deps): update dpage/pgadmin4 docker tag to v6.18 by @renovate in #2761
- chore(deps): update dependency vitest to v0.26.2 by @renovate in #2760
- fix(deps): update dependency unleash-proxy-client to v2.4.0 by @renovate in #2766
- chore(deps): update dependency sass to v1.57.1 by @renovate in #2757
- Fix crashing search bars by @sjaanus in #2765
- chore(deps): update dependency vite-plugin-svgr to v2.4.0 by @renovate in #2759
- chore(deps): update dependency chartjs-adapter-date-fns to v3 by @renovate in #2767
- chore(deps): update dependency tsc-watch to v6 by @renovate in #2771
- fix(deps): update dependency docusaurus-theme-openapi-docs to v1.5.0 by @renovate in #2764
- chore(deps): update react-router monorepo to v6.6.1 by @renovate in #2762
- fix(deps): update dependency docusaurus-plugin-openapi-docs to v1.5.0 by @renovate in #2763
- chore(deps): update dependency vite to v4 by @renovate in #2773
- chore(deps): update postgres docker tag to v15 by @renovate in #2775
- chore(deps): update dependency vite-tsconfig-paths to v4 by @renovate in #2774
- chore(deps): update dependency @uiw/react-codemirror to v4.19.5 by @renovate in #2780
- chore(deps): update dependency @uiw/codemirror-theme-duotone to v4.19.5 by @renovate in #2779
- chore(deps): update dependency @types/jest to v29.2.5 by @renovate in #2785
- chore(deps): update dependency @types/react-table to v7.7.14 by @renovate in #2786
- chore(deps): update dependency vitest to v0.26.3 by @renovate in #2788
- fix(deps): update dependency fast-json-patch to v3.1.1 [security] by @renovate in #2784
- fix: add frontend eslint check by @Tymek in #2562
- formatApiPath / formatAssetPath - Implement smart functionality to detect double subpath by @sjaanus in #2777
- Make it possible to validate enterprise schema with respondWithValidation by @sjaanus in #2781
- feat: allows creation of PATs for other users by @nunogois in #2718
- Fix padding for tabs in admin section by @sjaanus in #2772
- UI Flags cleanup by @sjaanus in #2778
- chore(deps): update dependency immer to v9.0.17 by @renovate in #2789
- chore(deps): update dependency eslint to v8.31.0 by @renovate in #2787
- chore(deps): update typescript-eslint monorepo to v5.48.0 by @renovate in #2796
- refactor: batch of changes for styled components by @kwasniew in #2791
- Refactor/make styles batch 6 by @FredrikOseberg in #2793
- chore: remove constraints announcements from readme and docs by @thomasheartman in #2678
- Fix joi failing starting from 17.7.0 release by @sjaanus in #2790
- docs: clarify node sdk instructions wrt envs and tokens by @thomasheartman in #2799
- Docs(fix): broken links by @thomasheartman in #2797
- refactor: extract styled components by @kwasniew in #2798
- added flutter documentation by @kwasniew in #2736
- docs: fix android admonition formatting by @thomasheartman in #2800
- Fix(typo): Fix "login"/"log in", "logout"/"log out" issues by @thomasheartman in #2807
- Allow hiding environments from the feature overview screen by @sjaanus in #2727
- refactor: styled component in header by @kwasniew in #2808
- Makestyles refactor #7/1 by @sjaanus in #2805
- Refactor/make styles batch 6 part 2 by @FredrikOseberg in #2811
- feat: enterprise service accounts (BE) by @nunogois in #2806
- chore(deps): update dependency husky to v8.0.3 by @renovate in #2803
- chore(deps): update dependency vite to v4.0.4 by @renovate in #2810
- chore(deps): update dependency eslint-config-prettier to v8.6.0 by @renovate in #2795
- Makestyles 7-1 by @sjaanus in #2813
- fix: archived feature layout by @Tymek in #2713
- feat: limit the amount of results coming from Prometheus by @gastonfournier in #2776
- fix: state-service should always keep api keys by @ivarconr in #2552
- feat: service accounts (hooks) by @nunogois in #2732
- feat: service accounts (UI - extract PAT form) by @nunogois in #2733
- fix: segment delete confirmation double dialog flash by @Tymek in #2819
- Refactor makestyles 2-1 by @sjaanus in #2820
- chore(deps): update dependency @babel/core to v7.20.12 by @renovate in #2825
- chore(deps): update dependency babel-loader to v9.1.2 by @renovate in #2826
- feat: service accounts (UI) by @nunogois in #2734
- Refactor/make styles batch 6 part 3 by @FredrikOseberg in #2823
- Styled components batch4.1 by @kwasniew in #2812
- docs: Use Go readme by @thomasheartman in #2816
- docs: Orval ADR by @Tymek in #2818
- fix: export features with variants when feature is disabled by @gastonfournier in #2824
- Orval generator POC by @Tymek in #2724
- fix: enforce weight precision to 1 decimal by @gastonfournier in #2749
- feat: wait for deps to be somewhat stable by @gastonfournier in #2768
- fix: when health is 0 we should not show 100 by @kwasniew in #2833
- Refactor makestyles 2 2 by @sjaanus in #2827
- Docs(fix): fix broken link to sdk-generator ADR by @thomasheartman in #2838
- docs: add
/docs
redirects to all redirect paths by @thomasheartman in #2839 - Allow hiding environments from the feature overview screen fix by @sjaanus in #2831
- Ability to add AJV schemas runtime by @sjaanus in #2792
- feat: manage SA tokens through UI by @nunogois in #2840
- feat: show token info when deleting SA by @nunogois in #2841
- Chore/make styles batch 1 2 by @andreas-telco in #2828
- MakeStyles refactor 1-3 by @andreas-unleash in #2835
- Plausible for hidden environments by @sjaanus in #2837
- Maintenance UI fixes by @sjaanus in #2849
- Feat sa table info by @nunogois in #2848
- feat: move createdAt col on users by @nunogois in #2853
- fix: disable autoResetHiddenColumns when useConditionallyHiddenColumns by @nunogois in #2851
- fix: SA duplicate autoResetHiddenColumns by @nunogois in #2861
- feat: track uncaught UI errors in plausible by @nunogois in #2860
- fix: table accessor should handle dots by @kwasniew in #2863
- fix: store snapshots in temp folder by @ivarconr in #2864
- Import export by @sjaanus in #2865
- fix: PageContent bodyContainer overflowX by @nunogois in #2852
- Feat/export UI by @FredrikOseberg in #2867
- Remove E flag by @sjaanus in #2832
- Export import flag by @sjaanus in #2866
- feat: add error logs for addons by @gastonfournier in #2739
- MakeStyles refactor 1-5 by @andreas-unleash in #2850
- Refactor App.styles by @andreas-unleash in #2822
- fix feature-schema.ts by @andreas-unleash in #2729
- MakeStyles refactor 1-4 by @andreas-unleash in #2845
- fix track invite-link user created event by @andreas-unleash in #2689
- feat: RBAC read params from body by @gastonfournier in #2846
- Maintenance mode fix by @sjaanus in #2876
- chore(deps): bump json5 from 1.0.1 to 1.0.2 in /frontend by @dependabot in #2814
- chore(deps): bump knex from 2.2.0 to 2.4.0 in /docker by @dependabot in #2869
- chore(deps): bump json5 from 1.0.1 to 1.0.2 in /website by @dependabot in #2815
- fix(deps): update dependency knex to v2.4.0 [security] by @renovate in #2871
- fix: make close button visible on small devices by @kwasniew in #2880
- feat: first skeleton of the batch import by @kwasniew in #2868
- Export with strategies by @sjaanus in #2877
- fix: SA UI/UX improvements and fixes by @nunogois in #2875
- Scheduler abstraction by @kwasniew in #2829
- refactor: styles batch 3 by @Tymek in #2821
- fix: prevent margin collapsing by @kwasniew in #2879
- fix: unexpected ligatures by @Tymek in #2883
- Conditionally fetch change request config to fix 404 by @andreas-unleash in #2874
- Fix/use swr bug by @FredrikOseberg in #2884
- feat: report app names only if below a threshold by @gastonfournier in #2737
- Refactor/lazy load by @FredrikOseberg in #2842
- test: fix test runs to 1 by @kwasniew in #2886
- fix: improve hidden envs UI/UX by @nunogois in #2887
- feat: import feature strategies by @kwasniew in #2885
- feat: export ui api integration by @FredrikOseberg in #2888
- fix: improve breadcrumb spacing by @nunogois in #2889
- fix: flex was breaking change request banner by @kwasniew in #2890
- chore(deps): update dependency @vitejs/plugin-react to v3.0.1 by @renovate in #2830
- chore(deps): update dependency @swc/core to v1.3.25 by @renovate in #2894
- fix: infinite rendering due to wrong effect deps by @kwasniew in #2895
- Fix/accordion help icon position by @andreas-unleash in #2896
- Update change-requests.md by @JarrodSC in #2872
- docs: service accounts by @nunogois in #2881
- docs: auto-generate remaining server-side SDK docs by @thomasheartman in #2858
- fix: found an edge case exporting variants by @gastonfournier in #2900
- feat: better tooltip links by @nunogois in #2891
- fix: small breadcrumb adjustments by @nunogois in #2893
- fix: SA unique token bug by @nunogois in #2901
- chore(deps): update dependency vitest to v0.27.0 by @renovate in #2906
- chore(deps): update react-router monorepo to v6.6.2 by @renovate in #2907
- chore(deps): update typescript-eslint monorepo to v5.48.1 by @renovate in #2908
- Export features by @sjaanus in #2905
- docs: add change requests video by @thomasheartman in #2909
- docs: update footer links by @thomasheartman in #2904
- Fix/redirect woes by @FredrikOseberg in #2899
- chore(deps): update dpage/pgadmin4 docker tag to v6.19 by @renovate in #2910
- Segment export by @sjaanus in #2922
- feat: initial status box implementation by @FredrikOseberg in #2913
- fix: add environment to event log card by @gastonfournier in #2912
- feat: adapt user logic to better adapt to SAs by @nunogois in #2917
- refactor/clean-up-get-project by @FredrikOseberg in #2925
- Add support for case for IN and NOT_IN operators by @andreas-unleash in #2924
- docs: add link to the Unleash help center by @thomasheartman in #2926
- Add flag to control CASE_INSENSITIVE_IN_OPERATORS until SDKs catch up by @andreas-unleash in #2927
- fix: project feature_count should not include archived by @ivarconr in #2919
- feat: add the account abstraction logic by @nunogois in #2918
- chore(deps): update dependency nock to v13.3.0 by @renovate in #2920
- chore(deps): update dependency @swc/core to v1.3.26 by @renovate in #2928
- chore(deps): update dependency vitest to v0.27.1 by @renovate in #2929
- fix(deps): update dependency docusaurus-plugin-openapi-docs to v1.5.1 by @renovate in #2930
- Import first super early version of UI by @sjaanus in #2932
- feat: status API by @FredrikOseberg in #2931
- Add feature name to strategy schema by @sjaanus in #2936
- fix: tooltip arrow regression after last scroll max size feat by @nunogois in #2935
- fix(deps): update dependency docusaurus-theme-openapi-docs to v1.5.1 by @renovate in #2934
- chore(deps): update dependency jsdom to v21 by @renovate in #2843
- chore(deps): update dependency @uiw/codemirror-theme-duotone to v4.19.6 by @renovate in #2953
- chore(deps): update dependency @uiw/react-codemirror to v4.19.6 by @renovate in #2954
- fix: Add missing sortOrder property by @gastonfournier in #2940
- feat: file dropzone by @kwasniew in #2939
- feat: Add ability to push variants to multiple environments by @gastonfournier in #2914
- fix: filtering environments in the project features table by @nunogois in #2957
- docs: don't tell users to contact support for proxy hosting by @thomasheartman in #2933
- Batch import styling by @kwasniew in #2959
- feat: add warning hints on potential misconfiguration by @gastonfournier in #2948
- chore(deps): update dependency eslint-plugin-import to v2.27.4 by @renovate in #2955
- feat: pulsing avatar for import by @kwasniew in #2961
- timeline component by @kwasniew in #2963
- feat: adds the PAT_DELETE event by @nunogois in #2965
- Validate stage transition by @kwasniew in #2967
- chore: increase max number of environments from 15 to 50 by @sighphyre in #2968
- validation stage by @kwasniew in #2970
- chore: ignore Twitter link from being checked by @gastonfournier in #2971
- fix: prevent deleting the last variable variant on the ui by @sighphyre in #2964
- feat: add push to all button to UI by @gastonfournier in #2969
- task: changing variants blocked by cr by @chriswk in #2966
- chore(deps): bump cookiejar from 2.1.3 to 2.1.4 by @dependabot in #2972
- chore(deps): bump cookiejar from 2.1.3 to 2.1.4 in /website by @dependabot in #2977
- cleanup in export and import by @kwasniew in #2973
- feat: visualize variants diff in CR by @nunogois in #2979
- fix: preload error by @kwasniew in #2980
- feat: back transition from validate to configure by @kwasniew in #2982
- feat: import stage by @kwasniew in #2985
- ToggleTypesWidget by @andreas-unleash in #2983
- docs: Add front-end API setup to the quickstart guide by @thomasheartman in #2984
- fix: redirect only happening on root path with replace by @FredrikOseberg in #2981
- fix: project table overflow by @Tymek in #2987
- docs: generate client-side SDK docs from readme by @thomasheartman in #2949
- feat: adds CR to variants per env UI by @nunogois in #2989
- fix: revert table virtualization in variants per env by @nunogois in #2990
- fix: small fixes on variants push to env UI by @nunogois in #2991
- fix: check is flag enabled! by @gastonfournier in #2993
- Feat/po_project_members by @andreas-unleash in #2994
- change request import banner by @kwasniew in #2992
New Contributors
- @andreas-telco made their first contribution in #2828
Full Changelog: v4.19.1...v4.20.0