Known Issues
- Because of the new certificate on Windows builds, Windows users won't get auto-update.
- Windows Defender might notify about the certificate.
- Ubuntu might not show correct tray icon.
Highlights
- Extension API
- Improved pod logs
- Mechanism for users to specify accessible namespaces
- Tray icon
- Support networking.k8s.io/v1 for Ingress
- Add last-status information for container
- Add LoadBalancer information to Ingress view
- Add search by ip to Pod view
- Add Ready status column in the Deployment view
- Add +/- buttons in scale deployment popup screen
- Add stateful set scale slider
- Move tracker to an extension
- Ability to restart deployment
- Update chart details when selecting another chart
- Use latest alpine version (3.12) for shell sessions
- Open last active cluster after switching workspaces
- Replace deprecated stable helm repository with bitnami
- Replace cluster warning event polling with watches
- Detect more Kubernetes distributions
- Performance fix when cluster has lots of namespaces
- Store more than largest kube api request amount in the event store
Download
Full Changelog
- Write up on some ways to publish extensions (#1660)
- Tag cluster & workspace as beta features in extension api (#1589)
- Add initial KubeObjectListLayout sample (#1662)
- Initial FAQ docs (#1667)
- Detect Openshift (#1625)
- Mark conf as dev dependency in extension npm package (#1665)
- Visualize extension loading (#1635)
- Store more than largest kube api request amount in the event store (#1605)
- Persist extension installation state for the duration of the window's life (#1602)
- Status bar item and kube object menu/detail item extension guides (#1629)
- Fixing itemId in SidebarNavItem (#1638)
- Add dependabot config (#1654)
- Add timeout to app start and cluster add events (#1631)
- Backport 3.6.9 what's new items (#1647)
- Removed generated site dir from the verify docs step (#1643)
- Fix URL validator, add some tests (#1627)
- Open file select dialog from onClick event (#1637)
- Respect static list of allowed namespaces (#1639)
- Performance fix when cluster has lots of namespaces (#1640)
- Fix 'cannot read property hide of null' error on quit (#1594)
- Refactor ExtensionsStore (#1620)
- Fine-tuning extensions page view (#1613)
- Detect kind (#1619)
- Detect Docker Desktop (#1623)
- Detect Mirantis Kubernetes Engine (#1622)
- Actually use ResourceQuotaDetails (#1621)
- Add run tests step to Windows pipeline (#1610)
- Detect rancher distros (#1617)
- Detect microk8s distribution (#1616)
- Fix getExtensionPageUrl on Windows (#1609)
- Add Ready status column in the Deployment view (#1586)
- Add support rendering if item is a function (#1606)
- Disable extension install button immediately (#1591)
- Enable installed extensions by default (#1572)
- Lint whole repo (#1600)
- Add eslint rule padding-line-between-statements (#1593)
- Fix extensions installation on Windows (#1596)
- Fixing tray icon color on macOS Big Sur (#1595)
- Add basic usage docs for extensions (#1583)
- Fix symlinking extensions into .k8slens/extensions folder (#1579)
- AppPreferences guide (#1584)
- Hide disabled workspaces/clusters (#1573)
- Handle errors from getLatestApiPrefixGroup. (#1575)
- Tweak extensions page texts (#1550)
- Fix link to metrics resources (#1585)
- Fix extension status-bar item default styles (#1578)
- Add bug label by default on bug issue template (#1580)
- Bump eslint-plugin-unused-imports to 1.0.1 (#1577)
- Fix: moving lens views behind extension views (#1565)
- Add section for extension testing (#1576)
- Enforce template strings in eslint (#1574)
- Add extension-api facades to cluster & workspace stores (#1546)
- Electron 9.3.5 (#1562)
- Remove unused data field in abstract BaseStore (#1554)
- Add a telemetry preferences observable for the observer to observe (#1555)
- Lint the repo as a github action (#1541)
- Add step to verify docs on area/documentation PRs (#1528)
- Disable Install button while installing. Fix install notification. (#1551)
- Add no-unused and react/recommended to eslint (#1523)
- Fix: add-cluster page D&D is broken (#1549)
- Add confirmation dialog to extension uninstall (#1547)
- Adding links to styling samples (#1534)
- Disable Uninstall and Enable/Disable buttons while uninstalling. Add Notification for uninstall. (#1539)
- Include .yml files from in-tree extensions (#1545)
- Add initial Helm documentation (#1540)
- Pod logs refactoring (#1516)
- Add extension uninstall (#1524)
- Use webpack instead of tsc to output extension-api.ts (#1499)
- Store prometheus cluster metadata based on metrics request responses (#1438)
- Remove extension when folder is removed during runtime (#1518)
- Replace cluster warning event polling with watches (#1521)
- Add starting point for mobx related documentaion (#1422)
- Documentation: remove feature navigation.instant as it conflicts with mkdocs versions (#1526)
- Installing extensions UI improvements (#1522)
- [BREAKING]: refine and document cluster feature api (#1507)
- Fix workspace flaky tests (#1520)
- Fix pod usage metrics on Kubernetes >=1.19 (#1514)
- Change add-cluster to single column layout (#1515)
- Add stateful set scale slider (#1406)
- [BREAKING]: remove deprecated routePath before GA (#1505)
- Fix: Unhandled exception for (#1512)
- Tweak install extension ux (#1510)
- Allow to install packed extensions from URL or local file (#1456)
- Set scrollbar colors as global styles (#1484)
- Resolve extension enabled status when loading it (#1485)
- Remove @observable.shallow from Lens(M|R)Extension (#1504)
- Add designated folder for extensions (#1245)
- Add documentation on how to use Lens Extension Generator (#1411)
- Fix Documentation: Support (#1501)
- Add LensRendererExtension.isEnabledForCluster (#1502)
- Track more events from adding a cluster (#1481)
- Enable object-shorthand rule (#1500)
- Add React Developers Tools (#1410)
- Update EULA url (#1498)
- Watch for added/removed local extensions (#1482)
- Fix azure pipeline yarn cache (#1491)
- Doc/renderer extension guide (#1476)
- Add extensions to lint & lint:fix (#1490)
- Change BaseRegistry to only have one type parameter (#1474)
- Report enabled extensions (#1451)
- Catch errors return error response when fetching chart or chart values fails (#1478)
- Replace support-page extension with a link to the documentation support page (#1469)
- Add support page to docs (#1473)
- Add contributing/development pages (#1480)
- Replace deprecated stable helm repository with bitnami (#1479)
- Open last active cluster after switching workspaces (#1444)
- Fix extension cluster menu highlight/routing issues (#1459)
- fix SwitchCase indent rule in eslint (#1454)
- Allow extension cluster menus to have a parent (#1452)
- Enforce semicolons in eslint (#1450)
- Make BaseStore abstract (#1431)
- Add Search by Ip to Pod View (#1445)
- Fix extensionLoader error on dev environments where renderer might start early (#1447)
- Fix TypeError: Cannot read property 'stopServer' of undefined (#1440)
- Refactor ipc module (#1225)
- kube-auth-proxy: accept only target cluster hostname (#1433)
- Catch errors when responding from proxy error (#1416)
- Reorder File menu (#1420)
- Add computed name property to cluster (#1428)
- Extension Guides documentation (#1427)
- Track service start and stop events (#1414)
- Showing colors in logs (#1419)
- Fixing workspaces adding/editing (#1405)
- Remove make init from the readme (#1417)
- Cache make build-extensions (#1407)
- Documentation: add new gh-action to manually update the default version of the docs (#1413)
- Documentation Update: Properly create tags and aliases, add workflow to delete unwanted / old versions (#1355)
- Reworked remaining docs (#1402)
- PageRegistration / PageMenuRegistration fixes & more simplification (#1386)
- Generate extension-api .d.ts and .js files using tsc (#1387)
- Add Extensions item for non-mac menu (#1392)
- Export active theme to extensions (#1371)
- Use latest alpine version (3.12) for shell sessions (#1384)
- Resolved conflicts in Your First Extension, Styling, and Color Reference after rebasing from master (#1379)
- MInor workspace fixes (#1382)
- Fix support extension menu route (#1381)
- Fix PageRegistry.getByPageMenuTarget issue when package name has special chars (#1380)
- Add retry cap to handleStaticFile to prevent an infitite loop (#1373)
- Default PageRegistration.routePath to path based on id (#1374)
- Remove Makefile from all intree extensions (#1312)
- Simplify pages/menus/registry extension api internal implementation (#1364)
- Exit pipeline if extensions build or tests fail (#1370)
- Docs: fixing typos in styling (#1363)
- Fix Landing Page width (#1359)
- Upgrade cache pipeline task (#1366)
- Update styling docs (#1339)
- PageRegistration & BaseRegistry refactoring (#1334)
- Remove parental element styles that affect extensions (#1331)
- Add extension development instructions for Windows users (#1350)
- Add LensRendererExtension.navigate (#1345)
- Allow to specify KubeObjectDetailRegistration priority (#1335)
- Refactoring: remove kube versioned api (#1328)
- Remove windowManager from extension api (#1323)
- Expose kube object store types to extensions (#1326)
- Fix: allow to select kube-api objects with label & field selectors (#1327)
- Expose registration and related component interfaces to extensions (#1322)
- Expose all custom k8s api classes via extension api (#1319)
- Generate extension api reference docs using library mode (#1307)
- Implement KubeObjectStatusText extension API (#1188)
- Backport what's new items for 3.6.7 and 3.6.8 versions (#1310)
- Fix rendering of boolean values in CRDs (#1087)
- Removing !important statements from theme variables (#1303)
- Do not expose registries to extensions (#1304)
- Remove hard-source-webpack-plugin (#1305)
- Keeping Icon focus state only for keyboard (#1234)
- Generate API Reference documentation using typedocs and gh-actions
- Fix KubeObjectDetails example in common capabilities (#1299)
- Expose CRD api to extensions (#1297)
- Implemented app menu testing support (#1105)
- Docs: extension styling and theming (#1267)
- Add some overview documentation to the getting started page (#1269)
- Add mechanism for users to specify accessible namespaces (#702)
- Log search (#1114)
- Export more UI components via extensions-api (#1285)
- Hot-reload/cache plugins to improve Lens DX (#1250)
- Fix Documentation: Contributing (#1273)
- ApiManager.registerStore should be simplified #1275 (#1278)
- Remove PR auto labler (#1272)
- Extensions api fixes (#1233)
- Docs: extension common capabilities (#1259)
- Docs: Extension Anatomy (#1265)
- Docs: extension testing (#1264)
- New Documentation: Contributing section (#1266)
- Renaming theme .json files (#1256)
- Docs: enable syntax highlight for code blocks (#1254)
- Restructure docs menu (#1235)
- Documentation (MKDOCS) (#1230)
- Restart deployment (#1175)
- UI for enabling/disabling extensions (#1208)
- Add CI step to run future extension tests (#1214)
- Load symlinked extension folders (#1207)
- Add +/- buttons in scale deployment popup screen (#1191)
- Fixing return statements in Pod menus (#1211)
- [BugFix] Chart details are not updated on selecting another chart (#1155)
- Expose more apis for KubeObjectListLayout usage (#1194)
- Add actions/labeler for auto label PRs (#1193)
- Fix UI staleness after network issues (#1192)
- License extension (#1174)
- Fix proxy upgrade socket timeouts (#1190)
- Add missing kubeObjectDetailItems observable to LensRendererExtension (#1187)
- Expose KubeObjectListLayout to extensions (#1186)
- Telemetry improvements (#1180)
- Expose kubeObjectDetailRegistry via extension-api (#1185)
- Status bar visual fixes (#1182)
- PoC: using external styles for extensions (#1173)
- Improve how extensions can manage cluster/workspace stores (#1176)
- Fix: path checks in custom extension loader (#1170)
- Optimize ExtensionManager#load (#1171)
- Fix npm package missing types (#1167)
- Telemetry extension: bind 'this' for setInterval callback (#1165)
- Fix bundled extension install on Linux/AppImage (#1163)
- Fix: correct command in Makefile for compiling extension-types, typo fix (#1160)
- Fix Windows build certificate
- Extension API (#1131)
- Improved pod logs (#1043, #1074)
- Tray icon (#1005)
- Add last-status information for container (#1041)
- Add LoadBalancer information to Ingress view (#1064)
- Move tracker to an extension (#1092)
- Add support page (as an extension) (#1112)