lensapp / lens

Lens - The way the world runs Kubernetes
https://k8slens.dev/
MIT License
22.47k stars 1.46k forks source link

OpenLens 6.3.0 - No Logs or Shell buttons #6823

Closed lukjaw closed 1 year ago

lukjaw commented 1 year ago

Describe the bug After installing OpenLens v 6.3.0 i cannot see Logs and Shell buttons under pods / nodes

To Reproduce Steps to reproduce the behavior:

  1. Install OpenLens on Windows using scoop
  2. Launching OpenLens

Expected behavior I would like to see the Logs and Shell buttons like in standard Lens IDE

Screenshots image

Environment (please complete the following information):

Logs: When you run the application executable from command line you will see some logging output. Please paste them here:

info:    Ôľ¬ ­čöî Starting LensProxy +0ms
info:    Ôľ¬ [LENS-PROXY]: Proxy server has started at 127.0.0.1:53779 +5ms
info:    Ôľ¬ ­čöÄ Testing LensProxy connection ... +2ms
info:    Ôľ¬ [LENS-USER-STORE]: LOADING ... +7ms
info:    Ôľ¬ [LENS-USER-STORE]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-user-store.json +14ms
info:    Ôľ¬ [LENS-CLUSTER-STORE]: LOADING ... +0ms
info:    Ôľ¬ [LENS-CLUSTER-STORE]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-cluster-store.json +140ms
info:    Ôľ¬ ÔÜí LensProxy connection OK +16ms
info:    Ôľ¬ [CREATE-ELECTRON-WINDOW]: Loading content for window "splash" from file: C:\Users\lukjaw\scoop\apps\openlens\current\resources\app.asar\static\splash.html... +48ms
info:    Ôľ¬ [CREATE-ELECTRON-WINDOW]: Window "splash" loaded +222ms
info:    Ôľ¬ [LENS-EXTENSIONS]: LOADING ... +21ms
info:    Ôľ¬ [LENS-EXTENSIONS]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-extensions.json +3ms
info:    Ôľ¬ [LENS-WEBLINK-STORE]: LOADING ... +5ms
info:    Ôľ¬ [LENS-WEBLINK-STORE]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-weblink-store.json +12ms
info:    Ôľ¬ ­čôč Setting protocol client for lens:// +8ms
info:    Ôľ¬ ­čôč Protocol client register succeeded Ôťů +2ms
info:    Ôľ¬ ­čžę Initializing extensions +4ms
info:    Ôľ¬ [LENS-FILESYSTEM-PROVISIONER-STORE]: LOADING ... +41ms
info:    Ôľ¬ [LENS-FILESYSTEM-PROVISIONER-STORE]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-filesystem-provisioner-store.json +4ms
info:    Ôľ¬ ­čÉÜ Syncing shell environment +0ms
info:    Ôľ¬ [EXTENSIONS-LOADER]: auto initializing extensions +23ms
info:    Ôľ¬ [LENS-HOTBAR-STORE]: LOADING ... +2ms
info:    Ôľ¬ [LENS-HOTBAR-STORE]: LOADED from C:\Users\lukjaw\AppData\Roaming\OpenLens\lens-hotbar-store.json +10ms
info:    Ôľ¬ [EXTENSION-DISCOVERY] loading extensions from C:\Users\lukjaw\AppData\Roaming\OpenLens +9ms
info:    Ôľ¬ [EXTENSION-DISCOVERY] watching extension add/remove in C:\Users\lukjaw\.k8slens\extensions +12ms
info:    Ôľ¬ [CREATE-ELECTRON-WINDOW]: Loading content for window "first-application-window" from url: http://localhost:53779... +17ms
info:    Ôľ¬ [CREATE-ELECTRON-WINDOW]: Window "first-application-window" loaded +2s
Checking for update
info:    Ôľ¬ [KUBECONFIG-SYNC]: starting requested syncs +444ms
info:    ÔöĆ [KUBECONFIG-SYNC]: starting sync of file/folder +2ms
info:    ÔöŚ [1] { filePath: 'C:\\Users\\lukjaw\\AppData\\Roaming\\OpenLens\\kubeconfigs' }
info:    ÔöĆ [KUBECONFIG-SYNC]: starting sync of file/folder +2ms
info:    ÔöŚ [1] { filePath: 'C:\\Users\\lukjaw\\.kube' }

Error: Error: Cannot find channel "latest.yml" update info: HttpError: 404
"method: GET url: https://github.com/MuhammedKalkan/OpenLens/releases/download/Latest/latest.yml?noCache=1gkstml0t\n\nPlease double check that your authentication token is correct. Due to security reasons, actual status maybe not reported, but 404.\n"
Headers: {
  "server": "GitHub.com",
  "date": "Thu, 22 Dec 2022 12:42:34 GMT",
  "content-type": "text/plain; charset=utf-8",
  "vary": "X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With",
  "cache-control": "no-cache",
  "strict-transport-security": "max-age=31536000; includeSubdomains; preload",
  "x-frame-options": "deny",
  "x-content-type-options": "nosniff",
  "x-xss-protection": "0",
  "referrer-policy": "no-referrer-when-downgrade",
  "content-security-policy": "default-src 'none'; base-uri 'self'; connect-src 'self'; form-action 'self'; img-src 'self' data:; script-src 'self'; style-src 'unsafe-inline'",
  "content-encoding": "gzip",
  "content-length": "29",
  "x-github-request-id": "D228:79F3:8527612:893D291:63A450BA"
}
    at createHttpError (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:14:12)
    at ElectronHttpExecutor.handleResponse (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:116:20)
    at ClientRequest.<anonymous> (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:82:26)
    at ClientRequest.emit (node:events:526:28)
    at ClientRequest.emit (node:domain:475:12)
    at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:101:6917)
    at SimpleURLLoaderWrapper.emit (node:events:526:28)
    at SimpleURLLoaderWrapper.emit (node:domain:475:12)
    at Object.newError (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\index.js:47:19)
    at GenericProvider.getLatestVersion (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\providers\GenericProvider.js:27:50)
    at async NsisUpdater.getUpdateInfoAndProvider (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\AppUpdater.js:298:19)
    at async NsisUpdater.doCheckForUpdates (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\AppUpdater.js:312:24)
    at async C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:413995
    at async r (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:414485)
    at async C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:417149
error:   ÔöĆ [UPDATE-APP/CHECK-FOR-UPDATES] Cannot find channel "latest.yml" update info: HttpError: 404
"method: GET url: https://github.com/MuhammedKalkan/OpenLens/releases/download/Latest/latest.yml?noCache=1gkstml0t\n\nPlease double check that your authentication token is correct. Due to security reasons, actual status maybe not reported, but 404.\n"
Headers: {
  "server": "GitHub.com",
  "date": "Thu, 22 Dec 2022 12:42:34 GMT",
  "content-type": "text/plain; charset=utf-8",
  "vary": "X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With",
  "cache-control": "no-cache",
  "strict-transport-security": "max-age=31536000; includeSubdomains; preload",
  "x-frame-options": "deny",
  "x-content-type-options": "nosniff",
  "x-xss-protection": "0",
  "referrer-policy": "no-referrer-when-downgrade",
  "content-security-policy": "default-src 'none'; base-uri 'self'; connect-src 'self'; form-action 'self'; img-src 'self' data:; script-src 'self'; style-src 'unsafe-inline'",
  "content-encoding": "gzip",
  "content-length": "29",
  "x-github-request-id": "D228:79F3:8527612:893D291:63A450BA"
}
    at createHttpError (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:14:12)
    at ElectronHttpExecutor.handleResponse (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:116:20)
    at ClientRequest.<anonymous> (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:82:26)
    at ClientRequest.emit (node:events:526:28)
    at ClientRequest.emit (node:domain:475:12)
    at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:101:6917)
    at SimpleURLLoaderWrapper.emit (node:events:526:28)
    at SimpleURLLoaderWrapper.emit (node:domain:475:12) +286ms
error:   Ôöâ [ 1] Error: Cannot find channel "latest.yml" update info: HttpError: 404
error:   Ôöâ [ 2] "method: GET url: https://github.com/MuhammedKalkan/OpenLens/releases/download/Latest/latest.yml?noCache=1gkstml0t\n\nPlease double check that your authentication token is correct. Due to security reasons, actual status maybe not reported, but 404.\n"
error:   Ôöâ [ 3] Headers: {
error:   Ôöâ [ 4]   "server": "GitHub.com",
error:   Ôöâ [ 5]   "date": "Thu, 22 Dec 2022 12:42:34 GMT",
error:   Ôöâ [ 6]   "content-type": "text/plain; charset=utf-8",
error:   Ôöâ [ 7]   "vary": "X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With",
error:   Ôöâ [ 8]   "cache-control": "no-cache",
error:   Ôöâ [ 9]   "strict-transport-security": "max-age=31536000; includeSubdomains; preload",
error:   Ôöâ [10]   "x-frame-options": "deny",
error:   Ôöâ [11]   "x-content-type-options": "nosniff",
error:   Ôöâ [12]   "x-xss-protection": "0",
error:   Ôöâ [13]   "referrer-policy": "no-referrer-when-downgrade",
error:   Ôöâ [14]   "content-security-policy": "default-src 'none'; base-uri 'self'; connect-src 'self'; form-action 'self'; img-src 'self' data:; script-src 'self'; style-src 'unsafe-inline'",
error:   Ôöâ [15]   "content-encoding": "gzip",
error:   Ôöâ [16]   "content-length": "29",
error:   Ôöâ [17]   "x-github-request-id": "D228:79F3:8527612:893D291:63A450BA"
error:   Ôöâ [18] }
error:   Ôöâ [19]     at createHttpError (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:14:12)
error:   Ôöâ [20]     at ElectronHttpExecutor.handleResponse (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:116:20)
error:   Ôöâ [21]     at ClientRequest.<anonymous> (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\httpExecutor.js:82:26)
error:   Ôöâ [22]     at ClientRequest.emit (node:events:526:28)
error:   Ôöâ [23]     at ClientRequest.emit (node:domain:475:12)
error:   Ôöâ [24]     at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:101:6917)
error:   Ôöâ [25]     at SimpleURLLoaderWrapper.emit (node:events:526:28)
error:   Ôöâ [26]     at SimpleURLLoaderWrapper.emit (node:domain:475:12)
error:   Ôöâ [27]     at Object.newError (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\node_modules\builder-util-runtime\out\index.js:47:19)
error:   Ôöâ [28]     at GenericProvider.getLatestVersion (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\providers\GenericProvider.js:27:50)
error:   Ôöâ [29]     at async NsisUpdater.getUpdateInfoAndProvider (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\AppUpdater.js:298:19)
error:   Ôöâ [30]     at async NsisUpdater.doCheckForUpdates (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\node_modules\electron-updater\out\AppUpdater.js:312:24)
error:   Ôöâ [31]     at async C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:413995
error:   Ôöâ [32]     at async r (C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:414485)
error:   Ôöâ [33]     at async C:\Users\lukjaw\scoop\apps\openlens\6.3.0\resources\app.asar\static\build\main.js:2:417149
error:   ÔöŚ [34] { code: 'ERR_UPDATER_CHANNEL_FILE_NOT_FOUND' }

Additional context I Was using Lens IDE on a license grace period and i wanted to switch to OpenLens.

I removed previous Lens version and cleared all /User/Appdata files and any remaining files from old installations, rebooted, re-installed OpenLens again, tried also solution mentioned in here:

https://github.com/lensapp/lens/issues/1690#issuecomment-886260245

But i ran npm install from the scoop folder (C:\Users****\scoop\apps\openlens\6.3.0\resources\app.asar.unpacked\node_modules)

dedo1911 commented 1 year ago

Same issue with clean setup using OpenLens-6.3.0.exe I wasn't able to test on other platforms yet.

odedonato commented 1 year ago

Same issue with clean setup using OpenLens-6.3.0.exe I wasn't able to test on other platforms yet.

On MacOS same thing.

@dedo1911 I may know you from some Ingress events, I'm Dedo. :)

CappyT commented 1 year ago

Same issue here on windows, using installer.

mossroy commented 1 year ago

Same on Ubuntu. It looks like a regression of version 6.3.0

msa0311 commented 1 year ago

The in-tree extensions have been removed from with 6.3.0, see the following issues / PRs that explain the background:

Functionality is still available with the latest stable binary version from our website https://k8slens.dev/.

holograph commented 1 year ago

The in-tree extensions have been removed from with 6.3.0, see the following issues / PRs that explain the background:

* [Improve Extension loading capabilities #6749](https://github.com/lensapp/lens/issues/6749)

* [Include bundled extensions in package.json #6715](https://github.com/lensapp/lens/pull/6715)

* [Remove in-tree extensions to help facilitate a more secure and faster booting lens #6775](https://github.com/lensapp/lens/pull/6775)

Functionality is still available with the latest stable binary version from our website https://k8slens.dev/.

That's complete bullshit. You took an open-source project and made it un-buildable for commercial purposes. Own it.

malkir commented 1 year ago

The in-tree extensions have been removed from with 6.3.0, see the following issues / PRs that explain the background Functionality is still available with the latest stable binary version from our website

..and just like that, my evaluation of the product is complete, straight to /dev/null with Lens, at least with a dev team trying to cover their crap so sloppily.

worldofgeese commented 1 year ago

For those of you looking for an alternative, I'll be looking at Monokle Desktop, which just released "Cluster Mode". I haven't tried it yet but thought I'd share. Are there any other GUI clients?

sherifabdlnaby commented 1 year ago

Seriously folks ? That's exactly how to lose your community (and potential customers)! That's not how you do Open Source.

aldmbmtl commented 1 year ago

My team and I, a pretty large global team, have been evaluating Lens for the last 3 months and it was looking really promising. This change has made our decision for us. We will look elsewhere now.

sigmonsays commented 1 year ago

anyone gonna fork this tool now?

aldmbmtl commented 1 year ago

There is a fork called OpenLens. I switched to that awhile ago when Lens started requiring a login just to use it. I have been using Lens for about a year and a half at home (and loved it). That is why I recommended it to my company (an example of why the community is important....). But with this happening, I can't even use it personally. I can't check my logs or shell in without needing to do a rebuild or digging into the source code? So why would I stick my neck out and recommend it to my employer?

I am personally switching back to k9s for now and trying out Monokle. I may come back to Lens if they fix this, but I surely will not be recommending it anymore in a professional setting. We are starting to have conversations about alternatives since Lens is no longer an option for us.

jakolehm commented 1 year ago

That's complete bullshit. You took an open-source project and made it un-buildable for commercial purposes. Own it.

The open-source project (this repo) is still buildable, we even provide a way to build it with a single command.

holograph commented 1 year ago

That's complete bullshit. You took an open-source project and made it un-buildable for commercial purposes. Own it.

The open-source project (this repo) is still buildable, we even provide a way to build it with a single command.

... and require out-of-band account management with the prebuilt binaries, while making it harder for open source maintainers like @MuhammedKalkan to keep binary builds going. I appreciate Lens and the work put into it a lot, which is exactly why these latest moves feel like a big middle finger to the existing community.

jkroepke commented 1 year ago

That's complete bullshit. You took an open-source project and made it un-buildable for commercial purposes. Own it.

The open-source project (this repo) is still buildable, we even provide a way to build it with a single command.

And why you remove existing code? I read the reason the PR for technical reasons. But then in the same post, you said its available in the Lens Desktop binary builds. Can you explain @jakolehm why the technical reasons are not effected by Lens Desktop? You removed the extensions to save startup time, but re-introduce them downstream? Why?

jakolehm commented 1 year ago

And why you remove existing code?

I don't want to sound too snarky but code is being removed (and added) every day, it's the normal practice with software development. If someone needs the removed code it is available via version control (git).

I read the reason the PR for technical reasons. But then in the same post, you said its available in the Lens Desktop binary builds. Can you explain @jakolehm why the technical reasons are not effected by Lens Desktop?

Lens Desktop includes many extensions that are not part of this repo (even before 6.3.0). Technical reasons for removing extensions from this repo should be pretty clear (as described in the linked issues/PRs) and everyone can still install those extensions manually to OpenLens if they desire to do so.

You removed the extensions to save startup time, but re-introduce them downstream? Why?

Startup time improvements have nothing to do directly with number of extensions being included in a build, we actually improved the performance and stability of bundled extensions loader.

AssafKatz3 commented 1 year ago

The in-tree extensions have been removed from with 6.3.0, see the following issues / PRs that explain the background:

Functionality is still available with the latest stable binary version from our website https://k8slens.dev/.

@msa0311 These reasons explained why you removed them from the installer, not why these extensions aren't available for installing.

jkroepke commented 1 year ago

@jakolehm

everyone can still install those extensions manually to OpenLens if they desire to do so.

Then please provide the actual source code location of the extensions that are used in Lens Desktop.

kdeyko commented 1 year ago

@jakolehm

everyone can still install those extensions manually to OpenLens

How do I do it? Could you please add the instruction to Readme or anywhere else? I believe such major changes to functionality should be reflected in the documentation.

AssafKatz3 commented 1 year ago

@kdeyko This should be in the extensions list, I opened a case for it (linked above).

Carus11 commented 1 year ago

I understand that this isn't my project and that Lens is within their rights to monetize the project. Neutering the functionality of the open source version is disappointing though. I filled out the surveys on what features I would pay for but I never imagined that basic functionality would be removed instead.

This will likely lead to me not using lens at all, and not being in a position to recommend it to my clients as the tool I once loved to use.

I was mistaken in my original understanding of the situation, better conversation below.

EvertonSA commented 1 year ago

nice, I spent so much time advocating for lens, now this. thanks. will drop and discourage the usage on my current employer

marafa-sugarcrm commented 1 year ago

just yesterday i added lens to our internal wiki of apps to use. and just now i removed it

jakolehm commented 1 year ago

@jakolehm

everyone can still install those extensions manually to OpenLens

How do I do it? Could you please add the instruction to Readme or anywhere else? I believe such major changes to functionality should be reflected in the documentation.

See https://github.com/alebcay/openlens-extensions .

AssafKatz3 commented 1 year ago

@jakolehm

everyone can still install those extensions manually to OpenLens

How do I do it? Could you please add the instruction to Readme or anywhere else? I believe such major changes to functionality should be reflected in the documentation.

See https://github.com/alebcay/openlens-extensions .

@jakolehm I did it, I had some problems with Windows, but the real issue is that it is very complex to install. This should be similar to other extensions, I opened a case for it (see above).

dkulchinsky commented 1 year ago

@jakolehm

everyone can still install those extensions manually to OpenLens

How do I do it? Could you please add the instruction to Readme or anywhere else? I believe such major changes to functionality should be reflected in the documentation.

See alebcay/openlens-extensions .

@jakolehm providing this as a reference/source for the removed extensions is very misleading and frankly disingenuous. The repo you linked is one person's attempt (source: https://github.com/MuhammedKalkan/OpenLens/issues/83#issuecomment-1366422225 & https://github.com/MuhammedKalkan/OpenLens/issues/83#issuecomment-1366876015) to try and restore what you folks removed from the Lens Core repo, but didn't provide any instructions or relevant code on how users of the Core project (or derivative such as OpenLens) can utilize.

If these extensions are no longer part of the core project, they should have a proper home (probably in https://github.com/lensapp/lens-extensions?) where users can install them without complex build instructions and more importantly without relying on someone else's efforts.

/cc @alebcay

jakolehm commented 1 year ago

@jakolehm providing this as a reference/source for the removed extensions is very misleading and frankly disingenuous. The repo you linked is one person's attempt (source: https://github.com/MuhammedKalkan/OpenLens/issues/83#issuecomment-1366422225 & https://github.com/MuhammedKalkan/OpenLens/issues/83#issuecomment-1366876015) to try and restore what you folks removed from the Lens Core repo, but didn't provide any instructions or relevant code on how users of the Core project (or derivative such as OpenLens) can utilize.

@dkulchinsky I was just trying to help folks who are trying find a way to install those extensions, I'm sorry if I was giving a misleading information there.

If these extensions are no longer part of the core project, they should have a proper home (probably in https://github.com/lensapp/lens-extensions?) where users can install them without complex build instructions and more importantly without relying on someone else's efforts.

I believe nothing stops for doing that. The only issue is who would be willing to maintain these? Unless we can identify maintainers, it might be better to make them available outside of lensapp organization. Or have them under lensapp org but indicate we need maintainers.

kdeyko commented 1 year ago

@jakolehm

The only issue is who would be willing to maintain these?

But the mentioned plugins are included in the Lens Desktop, aren't they? If yes, it means that they are already maintained by you guys? And if yes, it means that you effectively close-sourced them? 🤔

dkulchinsky commented 1 year ago

I believe nothing stops for doing that. The only issue is who would be willing to maintain these? Unless we can identify maintainers, it might be better to make them available outside of lensapp organization. Or have them under lensapp org but indicate we need maintainers.

@jakolehm sorry, but this is a very circular conversation we're all having here.

From where I'm sitting, the summary of the situation is:

  1. the extensions being discussed here were removed from the Lens Core repo
  2. they still exist, but are provided only by the proprietary Lens Desktop app
  3. your organization would not make these extensions or their source code available (except for what's already in GitHub in the removed code, but that is now becoming stale and would be difficult to maintain) for others to install if they use a Lens Core based app (like OpenLens)

in your comment here you said:

everyone can still install those extensions manually to OpenLens if they desire to do so.

the above is obviously not the case, as these extensions are not available for installation and we don't have their (updated) source code, except what can be retrieved from the now removed code which is already stale, so this would require someone to reverse-engineer them and maintain their compatibility going forward.

it might be better to make them available outside of lensapp organization. Or have them under lensapp org but indicate we need maintainers.

This comment also confuses me quite a bit, you already maintain them 😄 since as you point out, they are available in Lens Desktop. You just have no intention to provide them for non Desktop Lens users.

The bottom line is that these functionalities, which many here argue are very basic/core to this tool (and I tend to agree), were removed from Lens Core (thus no longer available on OpenLens) and users of the Open Source variant of Lens that want these functionalities back would have to develop and maintain them on their own.

Personally, I think it's a shame, but you have the choice/right to do this.

Looking at the comments here and all the other related issues, you clearly didn't handle this properly and might be worth pondering on that a bit, but then again, I assume you don't really focus/target any of us here using the Open Source variants of your app, so I'm guessing this is not really going to affect you much.

jkroepke commented 1 year ago

@jakolehm if you want to share the real reason, e.g. The extensions are closed source now, sources are not longer availble for bussiness reasons. Everyone will understand this and may stop asking for sources.

the whole Community here does not understand the reason, why extensions are removed for technical reasons while there exists does streaam.

@jakolehm are you accpeting PR to re integrate the extensions?

treyhendon commented 1 year ago

This is also a shame because the licensed version of Lens is much heaver on system resources than OpenLens that I built with the Makefile in this repo. I assume it's because of the extra stuff like Workspaces in the licensed version, but whatever the reason, I prefer OpenLens for it's performance benefits.

marafa-sugarcrm commented 1 year ago

Looking at the comments here and all the other related issues, you clearly didn't handle this properly and might be worth pondering on that a bit, but then again, I assume you don't really focus/target any of us here using the Open Source variants of your app, so I'm guessing this is not really going to affect you much.

no. and its not the first time which is why a lot of ppl are now using openlens

marafa-sugarcrm commented 1 year ago

IANAL so i am asking. is it legal for mirantis to remove some opensource code and change it to commercial? i thought it was an all or none situation

alebcay commented 1 year ago

I believe nothing stops for doing that. The only issue is who would be willing to maintain these? Unless we can identify maintainers, it might be better to make them available outside of lensapp organization. Or have them under lensapp org but indicate we need maintainers.

Users of OpenLens or other Lens Core-based applications can add extension @alebcay/openlens-node-pod-menu to get this feature back for now.

I don't understand how maintainership is an issue here. Someone is clearly already maintaining this extension/feature for the proprietary Lens Desktop (presumably the same person(s) that maintained it prior to 6.3.0). This change also requires deliberate extra steps for the folks at Mirantis to put back the node/pod menu extensions in the Desktop version - this does not appear to be some case of "oops we moved these crucial features out of the core repo into separate source repos and forgot to publish the new source repos".

Frankly, I'm not comfortable with the thought of these extensions coming under the lensapp org. From the actions so far, it seems like Mirantis intends to make these features only available in their proprietary Desktop version. With that intention in mind, having an open source version of these extensions in the lensapp org poses a conflict of interest. I would be concerned that the extension is deliberately left unmaintained after some extension API change, breaking it in OpenLens but continuing to be maintained in Desktop, or a "bug" is introduced that gets patched out of the copy included in Desktop.

jakolehm commented 1 year ago

@jakolehm if you want to share the real reason, e.g. The extensions are closed source now, sources are not longer availble for bussiness reasons. Everyone will understand this and may stop asking for sources.

Removing extensions from this repository has pure technical reasons, we don't want to have any extensions in this repository to make OpenLens more pluggable and extensible (it can be consumed even as a npm package in a near future). Where those past in-tree extensions should live (and be maintained) is a good question which we as a open source community need to figure out. This discussion should probably happen on Lens Community Slack #lens-extensions channel (to not spam this issue more).

the whole Community here does not understand the reason, why extensions are removed for technical reasons while there exists does streaam.

Every downstream ("distro") can add functionality through extensions if they wish so. This applies to all OpenLens based distros (Lens Desktop included). Lens Desktop is currently still based on OpenLens 6.2.x series which has these in-tree extensions -> Lens Desktop will have to figure out a way to keep the similar functionality.

@jakolehm are you accpeting PR to re integrate the extensions?

Not to this repository (see reasons above).

hardenchant commented 1 year ago

@alebcay/openlens-node-pod-menu

according to your, wrote extension installation guide, enjoy :)

https://github.com/alebcay/openlens-node-pod-menu/issues/3#issue-1514506747

marafa-sugarcrm commented 1 year ago

47 ppl already installed the extension? nice. that means there are at least 47 ppl using the openlens version

alebcay commented 1 year ago

Lens Desktop is currently still based on OpenLens 6.2.x series which has these in-tree extensions -> Lens Desktop will have to figure out a way to keep the similar functionality.

Ah, didn't realize that. The different versioning between Lens Desktop vs this repo (and the fact that a release of Lens Desktop was dropped on 2022-12-22, right after 6.3.0 got tagged) does not make that clear.

vaidik commented 1 year ago

My team and I, a pretty large global team, have been evaluating Lens for the last 3 months and it was looking really promising. This change has made our decision for us. We will look elsewhere now.

You should checkout Devtron which is also open-source and covers most features of Lens, and more.

EugenMayer commented 1 year ago

With this change, i found myself looking for alternatives too. Interestingly it seems like k9s does basically all of the things i used to have with lens. It's vim like, one needs some adoption time since there is no menu. Just start with pulses and then use the numbers 1...8 to navigate as a starter.

OpenLens does work too with the extension installed, but it's future, as for many, does seem uncertain and that is my current backup plan (or will even become plan a))

I do not want to be hostile or promote anything. I'am just a regular user of Lens, then OpenLens and now had to looks for something else and wanted to share my findings.

shishirkh commented 1 year ago

This can become a serious problem given that a lot of DevOps folks are used to Lens. Me included! Though I loved using Lens - the new changes have reduced its utility. For now, I have explored two or three tools that can be used instead of Lens. I tried out K9s, Devtron, and Skooner as replacements.

Out of these, K9s is the only one that was CLI based so it does not give you Lens-like GUI but can still cover basic use cases. Devtron has a nice UI and comes close to what Lens can do. Its free features include the ones that Lens has unfortunately made premium. It's a good bet. Skooner also has a GUI but I don't think it offers any feature that lets you exec into pods without writing kubectl commands. To my surprise, Skooner offers mobile view i.e. you can check k8s cluster things through mobile. Pretty cool feature!

For now, I think Devtron is a good bet. It's open source too! I hope Lens rolls back this change and just never removes imp. features like this!

lukjaw commented 1 year ago

I also tested some others like Octant, Kubernetic, InfraApp or KubeWise but none of them have such vast functionality as Lens and almost all are subscription based model too..

AssafKatz3 commented 1 year ago

@jakolehm if you want to share the real reason, e.g. The extensions are closed source now, sources are not longer availble for bussiness reasons. Everyone will understand this and may stop asking for sources.

Removing extensions from this repository has pure technical reasons, we don't want to have any extensions in this repository to make OpenLens more pluggable and extensible (it can be consumed even as a npm package in a near future). Where those past in-tree extensions should live (and be maintained) is a good question which we as a open source community need to figure out. This discussion should probably happen on Lens Community Slack #lens-extensions channel (to not spam this issue more).

the whole Community here does not understand the reason, why extensions are removed for technical reasons while there exists does streaam.

Every downstream ("distro") can add functionality through extensions if they wish so. This applies to all OpenLens based distros (Lens Desktop included). Lens Desktop is currently still based on OpenLens 6.2.x series which has these in-tree extensions -> Lens Desktop will have to figure out a way to keep the similar functionality.

@jakolehm are you accpeting PR to re integrate the extensions?

Not to this repository (see reasons above).

This would be a great idea except you blocked also the option to join it, the link from Lens site points to useless URL.

jakolehm commented 1 year ago

This would be a great idea except you blocked also the option to join it, the link from Lens site points to useless URL.

Slack introduced this limitation while back (link expires after X users join) and we have to constantly regenerate those links. Sorry for the inconvenience (we are trying to find better solution for the Slack invite link).

AssafKatz3 commented 1 year ago

Hi, Found the discussion and replied to it.

SergioSuarezDev commented 1 year ago

bye lens!

rizlas commented 1 year ago

Oh this again! Just archive this repo and vanish pls

miskun commented 1 year ago

I feel it's time to conclude this discussion as I feel people commenting here don't have a full picture of the situation we are dealing with. To recap:

While I understand all the frustration and confusion around this topic, I think it's been getting a bit out of hand. It's quite funny for me to think why some people have a tendency to think that we (people who created Lens to become what it is today) are somehow on a mission to sabotage this project on purpose. Let me ask you: how many projects with >20k stars on Github have you ever created? Let's imagine you have created one. Why would you then start sabotaging it? I guess nobody would. It’s something to be proud of and you’ll want to take super good care of it!

We are quite proud of what we have created and want to keep on working on this project to make it even more awesome in the future. Something that works for our own needs but also for those who want to build their own versions and flavors.

I hope this brings clarity for the issue. We appreciate all constructive feedback on this matter but if the comments in here are just expressing your frustration or suggestions for using X, Y or Z instead of using Lens we’ll close the commenting as it does not have value for the issue.

alebcay commented 1 year ago

I hope this brings clarity for the issue.

Firstly, I appreciate the work that's being done with the restructuring. I'd like to posit that at least part of the confusion (for myself at least, and I suspect at least for some others) comes from a misunderstanding (or misguided assumption) about the relationship between the open source organization https://github.com/lensapp and Mirantis. Specifically, how much influence does Mirantis product management and corporate priorities have on the direction and governance of this organization and projects contained within it?

Why would you then start sabotaging it? I guess nobody would. It’s something to be proud of and you’ll want to take super good care of it!

Based on the above misunderstanding, the answer, quite grimly, is "I wouldn't put it past Mirantis". Considering that docker-machine (6.5k stars) died after Mirantis enacted its new EULA for Docker Desktop, I'm not surprised that people immediately jumped to the worst case conclusion that OpenLens was about to be Mirantis' latest "extend and extinguish" victim.

To be clear, I don't mean to suggest that any maintainer here would rationally want to sabotage this project; rather, it just seems possible that some pressure came down from above (product management, executive decisions, etc.) to deliberately cripple the open-source offering in order to make the proprietary version more appealing.

Answers to the questions I posed above would help to allay such fears and make such an event seem less possible.

We appreciate all constructive feedback on this matter

I think there are a few things that could be improved in retrospect:

disconn3ct commented 1 year ago

Why would you then start sabotaging it?

Because when it was small, it was put under the MIT license and that isn't allowing "me" to take it in a direction that pays bills. And now "I" am trying to fix that without losing that community. Unfortunately, where Mirantis and "I" differ is around conversion of those free users. You are repeatedly alienating that super valuable 20k number, and expecting that we won't all have a bad taste when it comes time to spend money..

My example above makes the same, hugely invalid assumption as the quote. It strongly implies that Mirantis is not involved/in charge, and this is just a misunderstanding amongst open source developers. That is absolutely not the case, and has not been since they showed up and began Mirantising it..

From the shell plugin readme (emphasis mine):

Like the OpenLens repository itself at the point from which this extension is based upon, the content of this repository is released under the MIT license

When will the license of this repo be changing?