From 90c449cc0dd68ef46eb3c32bae170c3386238db9 Mon Sep 17 00:00:00 2001 From: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com> Date: Thu, 25 May 2023 16:23:18 +0300 Subject: [PATCH 1/7] fix: Handle log responses as text (#7776) Signed-off-by: Sami Tiilikainen <97873007+samitiilikainen@users.noreply.github.com> --- packages/core/src/common/k8s-api/endpoints/pod.api.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/core/src/common/k8s-api/endpoints/pod.api.ts b/packages/core/src/common/k8s-api/endpoints/pod.api.ts index c63f970edf..3b336de577 100644 --- a/packages/core/src/common/k8s-api/endpoints/pod.api.ts +++ b/packages/core/src/common/k8s-api/endpoints/pod.api.ts @@ -57,6 +57,12 @@ export class PodApi extends KubeApi { async getLogs(params: ResourceDescriptor, query?: PodLogsQuery): Promise { const path = `${this.getUrl(params)}/log`; - return this.request.get(path, { query }); + const logs = await this.request.get(path, { query }); + + if (typeof logs !== "string") { + return ""; + } + + return logs; } } From 18b89d9a858e3c0bad7110bb3609a7d307e3fe56 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Wed, 24 May 2023 10:19:49 -0400 Subject: [PATCH 2/7] fix: Remove incorrect KubeObject validations - Default to using the ensured selfLink for ID if UID is not present Signed-off-by: Sebastian Malton --- packages/kube-object/src/api-types.ts | 7 +- packages/kube-object/src/kube-object.test.ts | 116 +++++++++++++++++++ packages/kube-object/src/kube-object.ts | 26 +---- 3 files changed, 124 insertions(+), 25 deletions(-) create mode 100644 packages/kube-object/src/kube-object.test.ts diff --git a/packages/kube-object/src/api-types.ts b/packages/kube-object/src/api-types.ts index cf79ccd0ea..80156ac0fc 100644 --- a/packages/kube-object/src/api-types.ts +++ b/packages/kube-object/src/api-types.ts @@ -25,8 +25,8 @@ export interface KubeJsonApiData< Status = unknown, Spec = unknown, > { - kind: string; - apiVersion: string; + readonly kind: string; + readonly apiVersion: string; metadata: Metadata; status?: Status; spec?: Spec; @@ -227,9 +227,6 @@ export type KubeJsonApiObjectMetadata = KubeJsonApiObjectMetadata & { readonly selfLink: string; - readonly uid: string; - readonly name: string; - readonly resourceVersion: string; }; export type NamespaceScopedMetadata = KubeObjectMetadata; diff --git a/packages/kube-object/src/kube-object.test.ts b/packages/kube-object/src/kube-object.test.ts new file mode 100644 index 0000000000..8f5a2b6276 --- /dev/null +++ b/packages/kube-object/src/kube-object.test.ts @@ -0,0 +1,116 @@ +import { KubeObject } from "./kube-object"; + +describe("kube object tests", () => { + it("should allow an object to be created when missing uid", () => { + expect( + () => + new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + containers: [ + { + name: "cert-manager", + usage: { + cpu: "472721n", + memory: "74404Ki", + }, + }, + ], + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + labels: { + app: "cert-manager", + "app.kubernetes.io/component": "controller", + "app.kubernetes.io/instance": "cert-manager", + "app.kubernetes.io/managed-by": "Helm", + "app.kubernetes.io/name": "cert-manager", + "app.kubernetes.io/version": "v1.5.5", + "helm.sh/chart": "cert-manager-v1.5.5", + "pod-template-hash": "54cbdfb45c", + }, + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + resourceVersion: "123", + }, + timestamp: "2023-05-24T14:16:39Z", + window: "16s", + }), + ).not.toThrow(); + }); + + it("should allow an object to be created when missing resourceVersion", () => { + expect( + () => + new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + containers: [ + { + name: "cert-manager", + usage: { + cpu: "472721n", + memory: "74404Ki", + }, + }, + ], + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + labels: { + app: "cert-manager", + "app.kubernetes.io/component": "controller", + "app.kubernetes.io/instance": "cert-manager", + "app.kubernetes.io/managed-by": "Helm", + "app.kubernetes.io/name": "cert-manager", + "app.kubernetes.io/version": "v1.5.5", + "helm.sh/chart": "cert-manager-v1.5.5", + "pod-template-hash": "54cbdfb45c", + }, + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + uid: "123", + }, + timestamp: "2023-05-24T14:16:39Z", + window: "16s", + }), + ).not.toThrow(); + }); + + it("should allow an object to be created when missing resourceVersion and uid", () => { + expect( + () => + new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + containers: [ + { + name: "cert-manager", + usage: { + cpu: "472721n", + memory: "74404Ki", + }, + }, + ], + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + labels: { + app: "cert-manager", + "app.kubernetes.io/component": "controller", + "app.kubernetes.io/instance": "cert-manager", + "app.kubernetes.io/managed-by": "Helm", + "app.kubernetes.io/name": "cert-manager", + "app.kubernetes.io/version": "v1.5.5", + "helm.sh/chart": "cert-manager-v1.5.5", + "pod-template-hash": "54cbdfb45c", + }, + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + }, + timestamp: "2023-05-24T14:16:39Z", + window: "16s", + }), + ).not.toThrow(); + }); +}); diff --git a/packages/kube-object/src/kube-object.ts b/packages/kube-object/src/kube-object.ts index 70d74865a2..e2ed387d8a 100644 --- a/packages/kube-object/src/kube-object.ts +++ b/packages/kube-object/src/kube-object.ts @@ -111,20 +111,6 @@ export class KubeObject< ); } - if (!isString(data.metadata.uid)) { - throw new KubeCreationError( - `Cannot create a KubeObject from an object without metadata.uid being a string`, - data, - ); - } - - if (!isString(data.metadata.resourceVersion)) { - throw new KubeCreationError( - `Cannot create a KubeObject from an object without metadata.resourceVersion being a string`, - data, - ); - } - if (!isString(data.metadata.selfLink)) { throw new KubeCreationError( `Cannot create a KubeObject from an object without metadata.selfLink being a string`, @@ -136,23 +122,23 @@ export class KubeObject< autoBind(this); } - get selfLink() { + get selfLink(): string { return this.metadata.selfLink; } - getId() { - return this.metadata.uid; + getId(): string { + return this.metadata.uid ?? this.metadata.selfLink; } - getResourceVersion() { - return this.metadata.resourceVersion; + getResourceVersion(): string { + return this.metadata.resourceVersion ?? ""; } getScopedName() { return [this.getNs(), this.getName()].filter(Boolean).join("/"); } - getName() { + getName(): string { return this.metadata.name; } From 74cf677b1bda8f3f6e6a2669cd4bab5832de0690 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Wed, 24 May 2023 15:57:15 -0400 Subject: [PATCH 3/7] chore: Fixup use of ServiceAccount to use getId Signed-off-by: Sebastian Malton --- .../user-management/cluster-role-bindings/dialog/view.tsx | 2 +- .../components/user-management/role-bindings/dialog/view.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/renderer/components/user-management/cluster-role-bindings/dialog/view.tsx b/packages/core/src/renderer/components/user-management/cluster-role-bindings/dialog/view.tsx index c81d76c831..dfc71e3d76 100644 --- a/packages/core/src/renderer/components/user-management/cluster-role-bindings/dialog/view.tsx +++ b/packages/core/src/renderer/components/user-management/cluster-role-bindings/dialog/view.tsx @@ -86,7 +86,7 @@ class NonInjectedClusterRoleBindingDialog extends React.Component([], sa => sa.metadata.uid); + selectedAccounts = new ObservableHashSet([], sa => sa.getId()); selectedUsers = observable.set([]); selectedGroups = observable.set([]); diff --git a/packages/core/src/renderer/components/user-management/role-bindings/dialog/view.tsx b/packages/core/src/renderer/components/user-management/role-bindings/dialog/view.tsx index 0e5ed49bbb..06662e0812 100644 --- a/packages/core/src/renderer/components/user-management/role-bindings/dialog/view.tsx +++ b/packages/core/src/renderer/components/user-management/role-bindings/dialog/view.tsx @@ -73,7 +73,7 @@ class NonInjectedRoleBindingDialog extends React.Component([], sa => sa.metadata.uid); + selectedAccounts = new ObservableHashSet([], sa => sa.getId()); selectedUsers = observable.set([]); selectedGroups = observable.set([]); From 723e8452cf0abd91617573e7f48de3ce929ef226 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Thu, 25 May 2023 09:37:28 -0400 Subject: [PATCH 4/7] chore: Improve KubeObject tests Signed-off-by: Sebastian Malton --- packages/kube-object/src/kube-object.test.ts | 127 ++++++++++--------- 1 file changed, 64 insertions(+), 63 deletions(-) diff --git a/packages/kube-object/src/kube-object.test.ts b/packages/kube-object/src/kube-object.test.ts index 8f5a2b6276..ab97fefd25 100644 --- a/packages/kube-object/src/kube-object.test.ts +++ b/packages/kube-object/src/kube-object.test.ts @@ -6,35 +6,14 @@ describe("kube object tests", () => { () => new KubeObject({ apiVersion: "metrics.k8s.io/v1beta1", - containers: [ - { - name: "cert-manager", - usage: { - cpu: "472721n", - memory: "74404Ki", - }, - }, - ], kind: "PodMetrics", metadata: { creationTimestamp: "2023-05-24T14:17:01Z", - labels: { - app: "cert-manager", - "app.kubernetes.io/component": "controller", - "app.kubernetes.io/instance": "cert-manager", - "app.kubernetes.io/managed-by": "Helm", - "app.kubernetes.io/name": "cert-manager", - "app.kubernetes.io/version": "v1.5.5", - "helm.sh/chart": "cert-manager-v1.5.5", - "pod-template-hash": "54cbdfb45c", - }, name: "cert-manager-54cbdfb45c-n4kp9", namespace: "cert-manager", selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", resourceVersion: "123", }, - timestamp: "2023-05-24T14:16:39Z", - window: "16s", }), ).not.toThrow(); }); @@ -44,35 +23,14 @@ describe("kube object tests", () => { () => new KubeObject({ apiVersion: "metrics.k8s.io/v1beta1", - containers: [ - { - name: "cert-manager", - usage: { - cpu: "472721n", - memory: "74404Ki", - }, - }, - ], kind: "PodMetrics", metadata: { creationTimestamp: "2023-05-24T14:17:01Z", - labels: { - app: "cert-manager", - "app.kubernetes.io/component": "controller", - "app.kubernetes.io/instance": "cert-manager", - "app.kubernetes.io/managed-by": "Helm", - "app.kubernetes.io/name": "cert-manager", - "app.kubernetes.io/version": "v1.5.5", - "helm.sh/chart": "cert-manager-v1.5.5", - "pod-template-hash": "54cbdfb45c", - }, name: "cert-manager-54cbdfb45c-n4kp9", namespace: "cert-manager", selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", uid: "123", }, - timestamp: "2023-05-24T14:16:39Z", - window: "16s", }), ).not.toThrow(); }); @@ -82,35 +40,78 @@ describe("kube object tests", () => { () => new KubeObject({ apiVersion: "metrics.k8s.io/v1beta1", - containers: [ - { - name: "cert-manager", - usage: { - cpu: "472721n", - memory: "74404Ki", - }, - }, - ], kind: "PodMetrics", metadata: { creationTimestamp: "2023-05-24T14:17:01Z", - labels: { - app: "cert-manager", - "app.kubernetes.io/component": "controller", - "app.kubernetes.io/instance": "cert-manager", - "app.kubernetes.io/managed-by": "Helm", - "app.kubernetes.io/name": "cert-manager", - "app.kubernetes.io/version": "v1.5.5", - "helm.sh/chart": "cert-manager-v1.5.5", - "pod-template-hash": "54cbdfb45c", - }, name: "cert-manager-54cbdfb45c-n4kp9", namespace: "cert-manager", selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", }, - timestamp: "2023-05-24T14:16:39Z", - window: "16s", }), ).not.toThrow(); }); + + it("KubeObject.getId() should return the uid if present", () => { + const obj = new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + uid: "foobar", + }, + }); + + expect(obj.getId()).toEqual("foobar"); + }); + + it("KubeObject.getId() should return the selfLink if uid is missing", () => { + const obj = new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + }, + }); + + expect(obj.getId()).toEqual( + "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + ); + }); + + it("KubeObject.getResourceVersion() should return the resourceVersion if it is present", () => { + const obj = new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + resourceVersion: "foobar", + }, + }); + + expect(obj.getResourceVersion()).toEqual("foobar"); + }); + + it("KubeObject.getResourceVersion() should return '' if the resourceVersion is missing", () => { + const obj = new KubeObject({ + apiVersion: "metrics.k8s.io/v1beta1", + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + }, + }); + + expect(obj.getResourceVersion()).toEqual(""); + }); }); From e7b030e2cd0892341f6973d902e6e6f9a8b0b54e Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Thu, 25 May 2023 09:44:21 -0400 Subject: [PATCH 5/7] chore: Simplify KubeObject tests to use stub data Signed-off-by: Sebastian Malton --- packages/kube-object/src/kube-object.test.ts | 123 ++++++------------- 1 file changed, 39 insertions(+), 84 deletions(-) diff --git a/packages/kube-object/src/kube-object.test.ts b/packages/kube-object/src/kube-object.test.ts index ab97fefd25..4688bfa821 100644 --- a/packages/kube-object/src/kube-object.test.ts +++ b/packages/kube-object/src/kube-object.test.ts @@ -1,83 +1,53 @@ import { KubeObject } from "./kube-object"; +const getStubData = () => ({ + apiVersion: "metrics.k8s.io/v1beta1", + kind: "PodMetrics", + metadata: { + creationTimestamp: "2023-05-24T14:17:01Z", + name: "cert-manager-54cbdfb45c-n4kp9", + namespace: "cert-manager", + selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", + uid: "123" as string | undefined, + resourceVersion: "foobar" as string | undefined, + }, +}); + describe("kube object tests", () => { it("should allow an object to be created when missing uid", () => { - expect( - () => - new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - resourceVersion: "123", - }, - }), - ).not.toThrow(); + const data = getStubData(); + + delete data.metadata.uid; + expect(() => new KubeObject(data)).not.toThrow(); }); it("should allow an object to be created when missing resourceVersion", () => { - expect( - () => - new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - uid: "123", - }, - }), - ).not.toThrow(); + const data = getStubData(); + + delete data.metadata.resourceVersion; + expect(() => new KubeObject(data)).not.toThrow(); }); it("should allow an object to be created when missing resourceVersion and uid", () => { - expect( - () => - new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - }, - }), - ).not.toThrow(); + const data = getStubData(); + + delete data.metadata.uid; + delete data.metadata.resourceVersion; + expect(() => new KubeObject(data)).not.toThrow(); }); it("KubeObject.getId() should return the uid if present", () => { - const obj = new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - uid: "foobar", - }, - }); + const data = getStubData(); + const obj = new KubeObject(data); - expect(obj.getId()).toEqual("foobar"); + expect(obj.getId()).toEqual("123"); }); it("KubeObject.getId() should return the selfLink if uid is missing", () => { - const obj = new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - }, - }); + const data = getStubData(); + + delete data.metadata.uid; + const obj = new KubeObject(data); expect(obj.getId()).toEqual( "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", @@ -85,32 +55,17 @@ describe("kube object tests", () => { }); it("KubeObject.getResourceVersion() should return the resourceVersion if it is present", () => { - const obj = new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - resourceVersion: "foobar", - }, - }); + const data = getStubData(); + const obj = new KubeObject(data); expect(obj.getResourceVersion()).toEqual("foobar"); }); it("KubeObject.getResourceVersion() should return '' if the resourceVersion is missing", () => { - const obj = new KubeObject({ - apiVersion: "metrics.k8s.io/v1beta1", - kind: "PodMetrics", - metadata: { - creationTimestamp: "2023-05-24T14:17:01Z", - name: "cert-manager-54cbdfb45c-n4kp9", - namespace: "cert-manager", - selfLink: "/apis/metrics.k8s.io/v1beta1/namespaces/cert-manager/pods/cert-manager-54cbdfb45c-n4kp9", - }, - }); + const data = getStubData(); + + delete data.metadata.resourceVersion; + const obj = new KubeObject(data); expect(obj.getResourceVersion()).toEqual(""); }); From 4e6b51e2ef8ff0df854858e0fd4ed2a154883152 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Thu, 25 May 2023 09:48:26 -0400 Subject: [PATCH 6/7] chore: Rename KubeObject tests to better clarity Signed-off-by: Sebastian Malton --- packages/kube-object/src/kube-object.test.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/kube-object/src/kube-object.test.ts b/packages/kube-object/src/kube-object.test.ts index 4688bfa821..e1bbf91ef4 100644 --- a/packages/kube-object/src/kube-object.test.ts +++ b/packages/kube-object/src/kube-object.test.ts @@ -14,21 +14,21 @@ const getStubData = () => ({ }); describe("kube object tests", () => { - it("should allow an object to be created when missing uid", () => { + it("given '.metadata.uid' is missing, then KubeObject constructor does not throw", () => { const data = getStubData(); delete data.metadata.uid; expect(() => new KubeObject(data)).not.toThrow(); }); - it("should allow an object to be created when missing resourceVersion", () => { + it("given '.metadata.resourceVersion' is missing, then KubeObject constructor does not throw", () => { const data = getStubData(); delete data.metadata.resourceVersion; expect(() => new KubeObject(data)).not.toThrow(); }); - it("should allow an object to be created when missing resourceVersion and uid", () => { + it("given both '.metadata.resourceVersion' and '.metadata.uid' are missing, then KubeObject constructor does not throw", () => { const data = getStubData(); delete data.metadata.uid; @@ -36,14 +36,14 @@ describe("kube object tests", () => { expect(() => new KubeObject(data)).not.toThrow(); }); - it("KubeObject.getId() should return the uid if present", () => { + it("given '.metadata.uid' exist, then KubeObject.getId() should return it", () => { const data = getStubData(); const obj = new KubeObject(data); expect(obj.getId()).toEqual("123"); }); - it("KubeObject.getId() should return the selfLink if uid is missing", () => { + it("given '.metadata.uid' is missing, then KubeObject.getId() should return '.metadata.selfLink'", () => { const data = getStubData(); delete data.metadata.uid; @@ -54,14 +54,14 @@ describe("kube object tests", () => { ); }); - it("KubeObject.getResourceVersion() should return the resourceVersion if it is present", () => { + it("given '.metadata.resourceVersion' exist, then KubeObject.getResourceVersion() should return it", () => { const data = getStubData(); const obj = new KubeObject(data); expect(obj.getResourceVersion()).toEqual("foobar"); }); - it("KubeObject.getResourceVersion() should return '' if the resourceVersion is missing", () => { + it("given '.metadata.resourceVersion' is missing, then KubeObject.getResourceVersion() should return an empty string", () => { const data = getStubData(); delete data.metadata.resourceVersion; From e493f982d20abe5693df516ec2b21b3f7660a804 Mon Sep 17 00:00:00 2001 From: K8s Lens Bot Date: Thu, 25 May 2023 13:55:52 +0000 Subject: [PATCH 7/7] Release 6.5.0-alpha.16 Signed-off-by: K8s Lens Bot --- open-lens/CHANGELOG.md | 49 +++++ open-lens/package.json | 8 +- package-lock.json | 41 ++-- packages/core/CHANGELOG.md | 200 ++++++++++++++++++ packages/core/package.json | 2 +- packages/extension-api/CHANGELOG.md | 107 ++++++++++ packages/extension-api/package.json | 4 +- packages/kube-object/CHANGELOG.md | 31 +++ packages/kube-object/package.json | 2 +- .../legacy-extension-example/CHANGELOG.md | 52 +++++ .../legacy-extension-example/package.json | 4 +- 11 files changed, 464 insertions(+), 36 deletions(-) diff --git a/open-lens/CHANGELOG.md b/open-lens/CHANGELOG.md index e047c3415e..e8141ff303 100644 --- a/open-lens/CHANGELOG.md +++ b/open-lens/CHANGELOG.md @@ -3,6 +3,55 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# 6.5.0-alpha.17 (2023-05-25) + + +### Bug Fixes + +* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c)) + + + +# 6.5.0-alpha.15 (2023-05-23) + + + +# 6.5.0-alpha.14 (2023-05-23) + + +### Reverts + +* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141)) +* Revert "chore: Update integration tests to new testid format" ([be1fbcf](https://github.com/lensapp/lens/commit/be1fbcf8c3642fbf5a5ee06c3b03ac1756e4b1dd)) +* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6)) +* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec)) + + + +# 6.5.0-alpha.13 (2023-05-16) + + +### Bug Fixes + +* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb)) + + + +# 6.5.0-alpha.12 (2023-05-16) + + + +# 6.5.0-alpha.11 (2023-05-11) + + +### Bug Fixes + +* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50)) + + + + + # 6.5.0-alpha.16 (2023-05-23) diff --git a/open-lens/package.json b/open-lens/package.json index b9f81347ce..700f016da5 100644 --- a/open-lens/package.json +++ b/open-lens/package.json @@ -4,7 +4,7 @@ "productName": "OpenLens", "description": "OpenLens - Open Source IDE for Kubernetes", "homepage": "https://github.com/lensapp/lens", - "version": "6.5.0-alpha.16", + "version": "6.5.0-alpha.17", "repository": { "type": "git", "url": "git+https://github.com/lensapp/lens.git" @@ -184,15 +184,15 @@ "@k8slens/application-for-electron-main": "^6.5.0-alpha.8", "@k8slens/button": "^1.0.0-alpha.5", "@k8slens/cluster-settings": "^6.5.0-alpha.1", - "@k8slens/core": "^6.5.0-alpha.15", + "@k8slens/core": "^6.5.0-alpha.16", "@k8slens/ensure-binaries": "^6.5.0-alpha.7", "@k8slens/error-boundary": "^1.0.0-alpha.5", "@k8slens/event-emitter": "^1.0.0-alpha.6", "@k8slens/feature-core": "^6.5.0-alpha.8", "@k8slens/keyboard-shortcuts": "^1.0.0-alpha.8", - "@k8slens/kube-object": "^1.0.0-alpha.6", + "@k8slens/kube-object": "^1.0.0-alpha.7", "@k8slens/kubectl-versions": "^1.0.0-alpha.9", - "@k8slens/legacy-extension-example": "^1.0.0-alpha.13", + "@k8slens/legacy-extension-example": "^1.0.0-alpha.14", "@k8slens/legacy-extensions": "^1.0.0-alpha.8", "@k8slens/legacy-global-di": "^1.0.0-alpha.5", "@k8slens/list-layout": "^1.0.0-alpha.4", diff --git a/package-lock.json b/package-lock.json index 697e1090da..3cccd40daa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,7 +53,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@astronautlabs/jsonpath/-/jsonpath-1.1.0.tgz", "integrity": "sha512-I4sckUQNYEeF4w6AkujiRblVzC0jo3ja+bxKHB1M2aFiaBjevSGlBdgZ80PgCX5sj65/AhKSFN9+cT908avBlQ==", - "peer": true, "dependencies": { "@types/esprima": "^4.0.2", "@types/mkdirp": "^1.0.0", @@ -7211,7 +7210,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/@types/esprima/-/esprima-4.0.3.tgz", "integrity": "sha512-jo14dIWVVtF0iMsKkYek6++4cWJjwpvog+rchLulwgFJGTXqIeTdCOvY0B3yMLTaIwMcKCdJ6mQbSR6wYHy98A==", - "peer": true, "dependencies": { "@types/estree": "*" } @@ -7492,7 +7490,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/@types/mkdirp/-/mkdirp-1.0.2.tgz", "integrity": "sha512-o0K1tSO0Dx5X6xlU5F1D6625FawhC3dU3iqr25lluNv/+/QIVH8RLNEiVokgIZo+mz+87w/3Mkg/VvQS+J51fQ==", - "peer": true, "dependencies": { "@types/node": "*" } @@ -14470,7 +14467,6 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", "integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==", - "peer": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -30486,7 +30482,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz", "integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==", - "peer": true, "dependencies": { "escodegen": "^1.8.1" } @@ -30495,7 +30490,6 @@ "version": "1.14.3", "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "peer": true, "dependencies": { "esprima": "^4.0.1", "estraverse": "^4.2.0", @@ -30517,7 +30511,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "peer": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -30530,7 +30523,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "peer": true, "engines": { "node": ">=4.0" } @@ -30539,7 +30531,6 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "peer": true, "dependencies": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" @@ -30552,7 +30543,6 @@ "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "peer": true, "dependencies": { "deep-is": "~0.1.3", "fast-levenshtein": "~2.0.6", @@ -30569,7 +30559,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "peer": true, "engines": { "node": ">= 0.8.0" } @@ -30579,7 +30568,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "optional": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -30588,7 +30576,6 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "peer": true, "dependencies": { "prelude-ls": "~1.1.2" }, @@ -33987,25 +33974,26 @@ } }, "open-lens": { - "version": "6.5.0-alpha.16", + "version": "6.5.0-alpha.17", "hasInstallScript": true, "license": "MIT", "dependencies": { + "@astronautlabs/jsonpath": "^1.1.0", "@hapi/call": "^9.0.1", "@hapi/subtext": "^7.1.0", "@k8slens/application": "^6.5.0-alpha.9", "@k8slens/application-for-electron-main": "^6.5.0-alpha.8", "@k8slens/button": "^1.0.0-alpha.5", "@k8slens/cluster-settings": "^6.5.0-alpha.1", - "@k8slens/core": "^6.5.0-alpha.15", + "@k8slens/core": "^6.5.0-alpha.16", "@k8slens/ensure-binaries": "^6.5.0-alpha.7", "@k8slens/error-boundary": "^1.0.0-alpha.5", "@k8slens/event-emitter": "^1.0.0-alpha.6", "@k8slens/feature-core": "^6.5.0-alpha.8", "@k8slens/keyboard-shortcuts": "^1.0.0-alpha.8", - "@k8slens/kube-object": "^1.0.0-alpha.6", + "@k8slens/kube-object": "^1.0.0-alpha.7", "@k8slens/kubectl-versions": "^1.0.0-alpha.9", - "@k8slens/legacy-extension-example": "^1.0.0-alpha.13", + "@k8slens/legacy-extension-example": "^1.0.0-alpha.14", "@k8slens/legacy-extensions": "^1.0.0-alpha.8", "@k8slens/legacy-global-di": "^1.0.0-alpha.5", "@k8slens/list-layout": "^1.0.0-alpha.4", @@ -34021,7 +34009,6 @@ "@k8slens/routing": "^1.0.0-alpha.5", "@k8slens/run-many": "^1.0.0-alpha.8", "@k8slens/startable-stoppable": "^1.0.0-alpha.7", - "@k8slens/test-utils": "^1.0.0-alpha.3", "@k8slens/tooltip": "^1.0.0-alpha.5", "@k8slens/utilities": "^1.0.0-alpha.7", "@kubernetes/client-node": "^0.18.1", @@ -34045,7 +34032,6 @@ "conf": "^10.2.0", "crypto-js": "^4.1.1", "dompurify": "^2.4.4", - "electron": "^22.3.10", "electron-devtools-installer": "^3.2.0", "electron-updater": "^4.6.5", "electron-window-state": "^5.0.3", @@ -34070,6 +34056,7 @@ "monaco-editor": "^0.38.0", "node-pty": "0.10.1", "npm": "^9.6.7", + "p-limit": "^3.1.0", "path-to-regexp": "^6.2.0", "proper-lockfile": "^4.1.2", "query-string": "^7.1.3", @@ -34085,6 +34072,7 @@ "react-table": "^7.8.0", "react-virtualized-auto-sizer": "^1.0.7", "react-window": "^1.8.8", + "readable-stream": "^3.6.2", "rfc6902": "^5.0.1", "selfsigned": "^2.1.1", "semver": "^7.3.8", @@ -34137,6 +34125,7 @@ "copy-webpack-plugin": "^11.0.0", "cross-env": "^7.0.3", "css-loader": "^6.7.2", + "electron": "^22.3.10", "electron-builder": "^23.6.0", "electron-notarize": "^0.3.0", "esbuild-loader": "^2.20.0", @@ -34202,12 +34191,13 @@ }, "packages/core": { "name": "@k8slens/core", - "version": "6.5.0-alpha.15", + "version": "6.5.0-alpha.16", "license": "MIT", "devDependencies": { "@async-fn/jest": "1.6.4", "@k8slens/messaging-fake-bridge": "^1.0.0-alpha.8", "@k8slens/react-testing-library-discovery": "^1.0.0-alpha.4", + "@k8slens/test-utils": "^1.0.0-alpha.3", "@ogre-tools/linkable": "^16.1.0", "@sentry/types": "^6.19.7", "@side/jest-runtime": "^1.1.0", @@ -34334,7 +34324,6 @@ "@k8slens/routing": "^1.0.0-alpha.5", "@k8slens/run-many": "^1.0.0-alpha.1", "@k8slens/startable-stoppable": "^1.0.0-alpha.1", - "@k8slens/test-utils": "^1.0.0-alpha.3", "@k8slens/tooltip": "^1.0.0-alpha.5", "@k8slens/utilities": "^1.0.0-alpha.1", "@kubernetes/client-node": "^0.18.1", @@ -34461,10 +34450,10 @@ }, "packages/extension-api": { "name": "@k8slens/extensions", - "version": "6.5.0-alpha.15", + "version": "6.5.0-alpha.16", "license": "MIT", "dependencies": { - "@k8slens/core": "6.5.0-alpha.15" + "@k8slens/core": "6.5.0-alpha.16" }, "devDependencies": { "@types/node": "^16.18.25", @@ -34941,7 +34930,7 @@ }, "packages/kube-object": { "name": "@k8slens/kube-object", - "version": "1.0.0-alpha.6", + "version": "1.0.0-alpha.7", "license": "MIT", "devDependencies": { "@k8slens/eslint-config": "^6.5.0-alpha.3", @@ -34978,10 +34967,10 @@ }, "packages/legacy-extension-example": { "name": "@k8slens/legacy-extension-example", - "version": "1.0.0-alpha.13", + "version": "1.0.0-alpha.14", "license": "MIT", "devDependencies": { - "@k8slens/extensions": "^6.5.0-alpha.15", + "@k8slens/extensions": "^6.5.0-alpha.16", "@types/node": "^16.18.25", "typescript": "^4.9.5", "webpack": "^5.81.0", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 9fc7566005..027a6bad1b 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -3,6 +3,206 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# 6.5.0-alpha.16 (2023-05-25) + + +### Bug Fixes + +* Handle log responses as text ([#7776](https://github.com/lensapp/lens/issues/7776)) ([90c449c](https://github.com/lensapp/lens/commit/90c449cc0dd68ef46eb3c32bae170c3386238db9)) +* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c)) + + + +# 6.5.0-alpha.15 (2023-05-23) + + + +# 6.5.0-alpha.14 (2023-05-23) + + +### Bug Fixes + +* Use correct path for node-shell shell PTY ([99e6b77](https://github.com/lensapp/lens/commit/99e6b77fc1c5a74cfef90981b8b0162b46ecfb43)) + + +### Reverts + +* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141)) +* Revert "chore: Rename sidebar item injectable files" ([cb0e876](https://github.com/lensapp/lens/commit/cb0e8764aca9e0d28e6e23c5ae87a5ab6d414065)) +* Revert "chore: Convert sidebarItemInjectionToken to use InjectWithMetadata instead of duplicating the IDs" ([93bc41f](https://github.com/lensapp/lens/commit/93bc41f9a3f47f5c777c882c9241f4fd5e3f1952)) +* Revert "chore: Fixup tests snapshots to match new testid behaviour" ([9276df0](https://github.com/lensapp/lens/commit/9276df05924794d30d7d97bc79cf701a6106e8ec)) +* Revert "chore: Fix lint" ([d90bdf6](https://github.com/lensapp/lens/commit/d90bdf6f1497cb25f17788a4170feba31d366b74)) +* Revert "chore: Fix more lint" ([813705f](https://github.com/lensapp/lens/commit/813705fe9097012cd7fc62a8d543d1f7bc2be2ed)) +* Revert "chore: Fix IDs for some sidebar items" ([753c8bf](https://github.com/lensapp/lens/commit/753c8bfa85ccc74980553bb512b5038ff18767a2)) +* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6)) +* Revert "fix: Fix formatting of custom resource sidebar items" ([5608a19](https://github.com/lensapp/lens/commit/5608a199be1067039403b85abe776fab928a956c)) +* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec)) +* Revert "chore: Fix tests after rebase" ([1b43de5](https://github.com/lensapp/lens/commit/1b43de50fe6431367bf259799f5e0b42f6b38ad9)) +* Revert "fix: Custom Resource Definitions should be the first entry in the side bar" ([1099e65](https://github.com/lensapp/lens/commit/1099e65c52c62153b3d28d0654fffaaa6f6715a7)) +* Revert "fix: Custom Resource Definitions sidebar item should navigate to the correct route" ([7d46cb8](https://github.com/lensapp/lens/commit/7d46cb845d0f1748c0f83a8dc34bbe783270ca2c)) +* Revert "chore: Cleanup custom resource route definition" ([40f1180](https://github.com/lensapp/lens/commit/40f118057925a3b946f5dcc60162bad7e8b12e58)) +* Revert "chore: Factor out NavigateToCustomResources type" ([d3cf708](https://github.com/lensapp/lens/commit/d3cf7088d6c37860984ce0295a3d8a5c528c2a66)) +* Revert "chore: Move around Custom Resource and Custom Resource Definition files to simplify names" ([5f4cdbc](https://github.com/lensapp/lens/commit/5f4cdbc51950c04804139e9b961cfe394ad4ae30)) + + + +# 6.5.0-alpha.13 (2023-05-16) + + +### Bug Fixes + +* Switch to using IAsyncComputed to resolve bad setState error within ClusterOverview from react ([4f8e470](https://github.com/lensapp/lens/commit/4f8e4707f929eee04ff1345c9e93f00d50ac0a92)) + + + +# 6.5.0-alpha.12 (2023-05-16) + + +### Bug Fixes + +* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a)) + + + +# 6.5.0-alpha.11 (2023-05-11) + + +### Bug Fixes + +* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d)) +* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761)) +* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7)) +* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0)) + + + +# 6.5.0-alpha.10 (2023-05-09) + + + +# 6.5.0-alpha.9 (2023-05-04) + + +### Bug Fixes + +* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd)) +* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e)) +* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004)) +* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1)) +* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797)) +* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9)) +* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2)) +* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5)) +* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75)) +* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417)) +* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65)) + + +### Features + +* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb)) +* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f)) +* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47)) +* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b)) +* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28)) +* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201)) +* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe)) +* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b)) + + + +# 6.5.0-alpha.6 (2023-04-12) + + + +# 6.5.0-alpha.5 (2023-04-12) + + + +# 6.5.0-alpha.4 (2023-04-12) + + +### Bug Fixes + +* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69)) +* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db)) +* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8)) + + +### Features + +* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514)) + + +### Reverts + +* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393) + + + +# 6.5.0-alpha.3 (2023-03-15) + + + +# 6.5.0-alpha.2 (2023-03-14) + + + +# 6.5.0-alpha.1 (2023-03-14) + + +### Reverts + +* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544) + + + +# 6.4.0-beta.13 (2023-02-03) + + + +# 6.4.0-beta.12 (2023-02-01) + + + +# 6.4.0-beta.11 (2023-02-01) + + + +# 6.4.0-beta.10 (2023-01-27) + + + +# 6.4.0-beta.9 (2023-01-27) + + + +# 6.4.0-beta.8 (2023-01-27) + + + +# 6.4.0-beta.7 (2023-01-27) + + + +# 6.4.0-beta.6 (2023-01-26) + + + +# 6.4.0-beta.5 (2023-01-26) + + + +# 6.4.0-beta.4 (2023-01-26) + + + +# 6.4.0-beta.3 (2023-01-26) + + + + + # 6.5.0-alpha.15 (2023-05-23) diff --git a/packages/core/package.json b/packages/core/package.json index 8b5f7336e9..7c8052fb12 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -3,7 +3,7 @@ "productName": "", "description": "Lens Desktop Core", "homepage": "https://github.com/lensapp/lens", - "version": "6.5.0-alpha.15", + "version": "6.5.0-alpha.16", "repository": { "type": "git", "url": "git+https://github.com/lensapp/lens.git" diff --git a/packages/extension-api/CHANGELOG.md b/packages/extension-api/CHANGELOG.md index a3ab367528..669bff1dfa 100644 --- a/packages/extension-api/CHANGELOG.md +++ b/packages/extension-api/CHANGELOG.md @@ -3,6 +3,113 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# 6.5.0-alpha.16 (2023-05-25) + + + +# 6.5.0-alpha.15 (2023-05-23) + + + +# 6.5.0-alpha.14 (2023-05-23) + + + +# 6.5.0-alpha.13 (2023-05-16) + + + +# 6.5.0-alpha.12 (2023-05-16) + + + +# 6.5.0-alpha.11 (2023-05-11) + + + +# 6.5.0-alpha.10 (2023-05-09) + + + +# 6.5.0-alpha.9 (2023-05-04) + + +### Features + +* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b)) + + + +# 6.5.0-alpha.6 (2023-04-12) + + + +# 6.5.0-alpha.5 (2023-04-12) + + + +# 6.5.0-alpha.4 (2023-04-12) + + + +# 6.5.0-alpha.3 (2023-03-15) + + + +# 6.5.0-alpha.2 (2023-03-14) + + + +# 6.5.0-alpha.1 (2023-03-14) + + + +# 6.4.0-beta.13 (2023-02-03) + + + +# 6.4.0-beta.12 (2023-02-01) + + + +# 6.4.0-beta.11 (2023-02-01) + + + +# 6.4.0-beta.10 (2023-01-27) + + + +# 6.4.0-beta.9 (2023-01-27) + + + +# 6.4.0-beta.8 (2023-01-27) + + + +# 6.4.0-beta.7 (2023-01-27) + + + +# 6.4.0-beta.6 (2023-01-26) + + + +# 6.4.0-beta.5 (2023-01-26) + + + +# 6.4.0-beta.4 (2023-01-26) + + + +# 6.4.0-beta.3 (2023-01-26) + + + + + # 6.5.0-alpha.15 (2023-05-23) diff --git a/packages/extension-api/package.json b/packages/extension-api/package.json index d2cf81d907..381f70b6f3 100644 --- a/packages/extension-api/package.json +++ b/packages/extension-api/package.json @@ -2,7 +2,7 @@ "name": "@k8slens/extensions", "productName": "OpenLens extensions", "description": "OpenLens - Open Source Kubernetes IDE: extensions", - "version": "6.5.0-alpha.15", + "version": "6.5.0-alpha.16", "copyright": "© 2022 OpenLens Authors", "license": "MIT", "main": "dist/extension-api.js", @@ -25,7 +25,7 @@ "clean": "rimraf dist/" }, "dependencies": { - "@k8slens/core": "6.5.0-alpha.15" + "@k8slens/core": "6.5.0-alpha.16" }, "devDependencies": { "@types/node": "^16.18.25", diff --git a/packages/kube-object/CHANGELOG.md b/packages/kube-object/CHANGELOG.md index ca57808dbe..6393e2f33f 100644 --- a/packages/kube-object/CHANGELOG.md +++ b/packages/kube-object/CHANGELOG.md @@ -3,6 +3,37 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# 1.0.0-alpha.7 (2023-05-25) + + +### Bug Fixes + +* Remove incorrect KubeObject validations ([18b89d9](https://github.com/lensapp/lens/commit/18b89d9a858e3c0bad7110bb3609a7d307e3fe56)) + + + +# 6.5.0-alpha.14 (2023-05-23) + + + +# 6.5.0-alpha.13 (2023-05-16) + + + +# 6.5.0-alpha.12 (2023-05-16) + + + +# 6.5.0-alpha.11 (2023-05-11) + + + +# 6.5.0-alpha.9 (2023-05-04) + + + + + # 1.0.0-alpha.5 (2023-05-16) diff --git a/packages/kube-object/package.json b/packages/kube-object/package.json index ef3c692dd9..2ee6021254 100644 --- a/packages/kube-object/package.json +++ b/packages/kube-object/package.json @@ -1,7 +1,7 @@ { "name": "@k8slens/kube-object", "private": false, - "version": "1.0.0-alpha.6", + "version": "1.0.0-alpha.7", "description": "Injection tokens for list layout", "type": "commonjs", "publishConfig": { diff --git a/packages/legacy-extension-example/CHANGELOG.md b/packages/legacy-extension-example/CHANGELOG.md index b2dbb14676..17a550e36c 100644 --- a/packages/legacy-extension-example/CHANGELOG.md +++ b/packages/legacy-extension-example/CHANGELOG.md @@ -3,6 +3,58 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# 1.0.0-alpha.14 (2023-05-25) + + + +# 6.5.0-alpha.15 (2023-05-23) + + + +# 6.5.0-alpha.14 (2023-05-23) + + + +# 6.5.0-alpha.13 (2023-05-16) + + + +# 6.5.0-alpha.12 (2023-05-16) + + + +# 6.5.0-alpha.11 (2023-05-11) + + + +# 6.5.0-alpha.10 (2023-05-09) + + + +# 6.5.0-alpha.9 (2023-05-04) + + + +# 6.5.0-alpha.6 (2023-04-12) + + + +# 6.5.0-alpha.5 (2023-04-12) + + + +# 6.5.0-alpha.4 (2023-04-12) + + + +# 6.5.0-alpha.3 (2023-03-15) + +**Note:** Version bump only for package @k8slens/legacy-extension-example + + + + + # 1.0.0-alpha.13 (2023-05-23) diff --git a/packages/legacy-extension-example/package.json b/packages/legacy-extension-example/package.json index 1fb2eb4b0b..3cfffcfb59 100644 --- a/packages/legacy-extension-example/package.json +++ b/packages/legacy-extension-example/package.json @@ -2,7 +2,7 @@ "name": "@k8slens/legacy-extension-example", "private": false, "description": "An example bundled Lens extensions using the v1 API", - "version": "1.0.0-alpha.13", + "version": "1.0.0-alpha.14", "type": "commonjs", "files": [ "dist" @@ -36,7 +36,7 @@ "lint:fix": "lens-lint --fix" }, "devDependencies": { - "@k8slens/extensions": "^6.5.0-alpha.15", + "@k8slens/extensions": "^6.5.0-alpha.16", "@types/node": "^16.18.25", "typescript": "^4.9.5", "webpack": "^5.81.0",