1936 Commits

Author SHA1 Message Date
Filip Troníček
35f53b9386
Enforce minimum scopes in the UI (#20217) 2024-09-16 03:56:02 -04:00
Robo Quat
d54058956d
update index (#20178)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-09-11 12:23:57 -04:00
mustard
02b49524eb
Add full clone setting for prebuilds (#20177)
* proto update

Co-authored-by: Filip Troníček <filip@gitpod.io>
Co-authored-by: Gero Posmyk-Leinemann <32448529+geropl@users.noreply.github.com>

* dashboard + server

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
Co-authored-by: Gero Posmyk-Leinemann <32448529+geropl@users.noreply.github.com>
2024-09-11 04:44:57 -04:00
Gero Posmyk-Leinemann
3fdfd128f9
[dashboard] Potential fix for "lost workspace updates" in StartWorkspace.tsx introduced in #20095 (#20189)
It's unclear as to if that's a real bug, fixing it here is good anyway.
2024-09-09 08:16:55 -04:00
Filip Troníček
8e8a5db974
[PAPI] Retry steams upon not receiving data for 10 seconds (#20172)
* [PAPI] Retry steams upon not receiving data for 10 seconds

* [PAPI] Retry steams upon not receiving data for 10 seconds (#20176)

* debug message

* Do not listen for ws updates globally and do not timeout for those calls

* Timeout signal as a getter

* use ff for disablement

* accesor fn => getter

* send empty initial data in papi for global ws watch requests

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
2024-09-06 04:31:49 -04:00
Gero Posmyk-Leinemann
414ee45983
[supervisor] Frontend: re-try + track "checkReady" (#20175)
* [ws-proxy] Log whenever we can't connect to an upstream

* [protocol] Fix linter error

* [supervisor] Frontend: re-connect every 5s + track behavior

* [supervisor] Frontend: Guard connection re-try with feature flag "supervisor_check_ready_retry"
2024-09-05 10:54:48 -04:00
Filip Troníček
c21595c646
Simplify example repositories (#20156)
* Simplify example repositories

* Actually fix the bug

* Fix resolved repo name

* Fix display names for examples
2024-08-30 13:46:43 -04:00
Filip Troníček
acae8deec5
Lower fetch priority of metrics (#20158)
* Minor improvements to metrics requests

* Fix builds
2024-08-30 11:46:43 -04:00
Filip Troníček
a1ec400db4
Improve frontend handling of many projects (#20151)
* Remove project context fetching

* limit projects returned from `ListSuggestedRepositories`

* Get rid of all projects query

* A WIP state

* Enhance search and normalize links

* Revert find project DB changes

* Make repo finder responsible for current selection

* remove debug

* Comments

* Re-use pagination flattening

* Query improvements

* limit pagination

* Add test about keeping length

* Fix test

* Fix repo ordering

* add normalize comment
2024-08-29 16:38:42 -04:00
mustard
b6c2db780b
Validate redirect url (#20152)
* Validate redirect url

* Address feedback

* feedback 2
2024-08-27 12:45:40 -04:00
Aminur Rahman
1267ae2404
Update outdated SSO docs link for Enterprise onboarding (#20137) 2024-08-21 05:30:21 -04:00
Robo Quat
d807368121
update index (#20134)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-08-20 02:16:19 -04:00
Gero Posmyk-Leinemann
55d1a8b6e4
[dashboard] Remove last unused feature flag references (#20121) 2024-08-15 06:17:17 -04:00
Filip Troníček
f5acd61fcd
Organization timeout defaults (#20099)
* Organization timeout defaults proto

* Generated code

* Implement TimeoutSettings on the API layer

* Add timeout setting UI

* Actually change default workspace timeout based on org settings

workspace starter fixes

* Add alert for free plans

* denyUserTimeouts

* [dashboard] Fix check for "timeout config eligibility" by using BillingMode

* [server] Drop FF "disable_set_timeout"

* fix

* Move to team policies

* don't include `timeoutSettings` if not set

* [dashboard] TeamPolicies: Disable "save" if workspace timeouts are disabled

---------

Co-authored-by: Gero Posmyk-Leinemann <gero@gitpod.io>
2024-08-13 03:51:15 -04:00
Filip Troníček
aa1836d9b1
Fix workspace list grid on Safari (#20107) 2024-08-13 02:46:15 -04:00
Robo Quat
12c582b815
update index (#20101)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-08-12 03:03:14 -04:00
Robo Quat
08733d6bff
update index (#20097)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-08-09 05:11:47 -04:00
Gero Posmyk-Leinemann
b43c97ed9a
[dashboard, server] Fix streaming of image build logs (#20095)
* [json-rpc] Fix encoding of watchImageBuildLogs data to number[]

Because json-rpc can't handle complex objects like UInt8Array properly.
Conversion is done using "Array.from(UInt8Array)" and "new UInt8Array(data)"

* [dashboard] Fix "workspaceId is required" errors

* Review suggestions

Co-authored-by: Filip Troníček <filip@gitpod.io>

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
2024-08-08 08:13:46 -04:00
Robo Quat
4f6e87ce03
update index (#20092)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-08-08 05:30:46 -04:00
Pudong
5ebe1cca85
Add PKCE support for OIDC (#20094) 2024-08-08 03:53:46 -04:00
Huiwen
c4b53f9320
Support validate claims with CEL expr for SSO (#20083)
* [papi] proto update

* [dashboard] nit TODO

* [papi] implement cel expression verify

* drop me: Add debug logs

* 1

* tidy

* export cel error message

* 💄 dashboard

* improve error

* nit doc
2024-08-07 02:33:45 -04:00
Siddhant Khare
903767949f
chore: Update workspace last active time tooltip (#20086)
Refactor the tooltip for displaying the last active time of a workspace in the WorkspaceEntry component. The tooltip now shows the relative time (e.g. "2 days ago") as visible text and the exact date and time with GMT offset on hover. It uses the dayjs library for date formatting and relative time calculation. Additionally, it handles potential undefined dates with a fallback to the current date and removes the leading zero from single-digit GMT hour offsets.
2024-08-05 09:02:43 -04:00
Siddhant Khare
8487da8780
[dashboard] Remove Beta Label from Gitpod Access Tokens (#20089) 2024-08-05 08:59:43 -04:00
Gero Posmyk-Leinemann
994b6ec5d4
[supervisor] Make sure we read the last chunk of message when task is closed (#20062)
* [supervisor] Make sure we read the last chunk of message when task is closed

* [server, dashboard] Prebuild logs: stream as UInt8Array instead of string, and make sure we send the last chunk before closing the response

* Make log buffer more efficient

Merging done with `TypedArray.prototype.set()` as suggested here:
https://stackoverflow.com/a/73074813/10199319

* [dashboard] PrebuildTaskTab: use hash(err.message) as toastId

* [server] prebuild logs: Only call res.end after a timeout, so clients can continue reading from the stream

* [dashboard] prebuild logs emitter: If we receive code "200", forward prefixChunk, and stop streaming

* fixup! [dashboard] PrebuildTaskTab: use hash(err.message) as toastId

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
2024-07-26 23:52:48 +02:00
Robo Quat
519b67858f
update index (#20064)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-07-26 14:36:34 +02:00
Filip Troníček
ce6fd4dd38
Buffer logs to not overflow xterm (#20065)
* Lock logs replaying to prevent overflowing xterm

* Chunk on the workspace logs side

* Revert to previous workspacelogs event emitter type

* remove unused dep

* fix import order

* Only change `isWriting` when there are logs
2024-07-26 10:47:34 +02:00
Filip Troníček
72c980ac57
Upgrade xterm to v5.5.0 (#20063) 2024-07-25 10:08:33 +02:00
Filip Troníček
10810cee50
Various prebuild fixes (#20057)
* log it all

* fix failing image logs prebuild updates

* make sure we dispose of requests properly

* minor cleanup

* handle aborts gracefully

* Try using a tailing library for reading supervisor task logs

* Fix caching requests on Firefox

* Revert "Try using a tailing library for reading supervisor task logs"

This reverts commit fdc3183aa76cab7ac4976fb633d148482054722b.

* Change log order

Make sure we wait for the line to be written first

* Tweak abortion error message

* Remove extra log line
2024-07-24 15:48:33 +02:00
Robo Quat
e7ffef9282
update index (#20060)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-07-24 13:14:32 +02:00
Gero Posmyk-Leinemann
47d66a4376
[dashboard] Fix duration displaying (no "undefinedh") (#20053) 2024-07-21 18:15:29 +02:00
Filip Troníček
71ab59d2c5
Be more helpful when there is no image build for prebuilds (#20048)
* Be more helpful when there is no image build for prebuilds

* Increase gap between text and spinner
2024-07-19 17:43:28 +02:00
Filip Troníček
99d1c5d898
Don't show repo examples around prebuilds (#20050) 2024-07-19 15:18:57 +02:00
Huiwen
8192444477
[TB] allow to config launcher from Dashboard (#20051)
* [TB] allow to config launcher from dashboard

* Control by FF

* nit follow up

* LImit oauth entry with FF

* 💄
2024-07-19 15:12:57 +02:00
Filip Troníček
8df5d2f048
Fix incorrect redirects to newer prebuilds (#20047) 2024-07-18 16:19:57 +02:00
Huiwen
a03f193f62
Uniq onboard answers before update (#20044) 2024-07-17 13:54:55 +02:00
Siddhant Khare
e46fe46328
[dashboard] Update enabling role (#20042) 2024-07-16 09:29:54 +02:00
Filip Troníček
57db1ee5f2
Fix very tall modals (#20041) 2024-07-16 07:53:54 +02:00
Siddhant Khare
c608482419
[PAYG - dashboard]: Implement Personalised content selection for users based on profile (#20034)
* initial work

* more cleanup & improv.

* Improve logic for content rendering

* remove extra check of working professional

* chore: Handle case where localStorage is not available in PersonalizedContent component

* remove additional type safety check

* use content while pushing first week data

* Introduce new content recommendation system

* Fill remaining slots with unique items from defaultContent

* Update to use Podkit design H3

* copy text updates

Co-authored-by: Lou Bichard <contact@louisjohnbichard.co.uk>

* Fix svg method in light/dark mode

* more copy fixes

Co-authored-by: Lou Bichard <contact@louisjohnbichard.co.uk>

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
Co-authored-by: Lou Bichard <contact@louisjohnbichard.co.uk>
2024-07-15 13:04:54 +02:00
Robo Quat
4bccf5282c
update index (#20022)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-07-15 09:04:53 +02:00
Filip Troníček
6b2187ae23
Activity-based prebuilds (#20006)
* Start prebuilds on started workspaces

* Fix circl dep

* move out to workspace creation

* Do it in the workspace service

* remove webhook tests

* remove webhook handling code

* Revert "remove webhook handling code"

This reverts commit d7c4550ec6b16091344607bfeee234b1f0e5705b.

* Anotate new setups with an `activity-based` activation strategy

* Update tests

* Alert banner

* add correct changelog path

* fix tests

* Remove code for registering prebuilds

* Still pass prebuild preconditions in order to run

* Re-add link to prebuild history of a repo

* Rename to trigger strategy and change project activity indicator
2024-07-12 17:49:51 +02:00
Huiwen
2b13aea5f9
Filter out not available editors before update org and repository settings (#20030)
* Filter request args with available IDE keys

* validate on client side
2024-07-12 16:15:57 +02:00
Siddhant Khare
ccca3a6e2b
[PAYG] [dashboard] Onboarding: Product Educational content in / workspaces view (#20021)
* intial commit

* Documentation links

* Update YouTube Videos

* cleanup + performant YT method

* Static section of `Personalised for you` 😜

* Add blog banners

* Minor fixes

* Educational content should only be in Gitpod PAYG & minor fixes

* nit fix

* nti fix

* reorder docs link

* nit fix

* final nit fix :)

* fix the label issue, video bug, line break in banner

* use `flex-1`

* bring back old description copy for header

* improve spacing

* Optimize VideoCarousel rendering and key usage

- Render only the current video to improve performance
- Remove redundant key prop from lite-youtube component
- Ensure unique keys for list items in VideoCarousel

* Enhance VideoCarousel button accessibility

- Add focus rings to video selection buttons
- Improve keyboard navigation with visible focus indicators
2024-07-11 16:55:56 +02:00
Filip Troníček
15b87c98e8
Accessible workspace pinning (#20024) 2024-07-11 12:43:56 +02:00
Filip Troníček
669cad59c6
Fix changes dropdown alignment (#20023) 2024-07-11 04:58:56 -04:00
Filip Troníček
be4f15736d
Improve empty workspace view (#20018)
* Improve empty workspace view

* Fix alignment compromise

Co-authored-by: Sven Efftinge <sven@gitpod.io>

* Fix prebuild button focus state layout

* trigger ci

---------

Co-authored-by: Sven Efftinge <sven@gitpod.io>
Co-authored-by: Siddhant Khare <siddhant@gitpod.io>
2024-07-10 14:42:55 -04:00
Sven Efftinge
64ce757564
[dashboard] enable naming of workspaces (#20017) 2024-07-10 09:11:55 -04:00
Sven Efftinge
fd1604d73a
[dashboard] imporved workspace entry layout (#20016) 2024-07-10 07:27:55 -04:00
Gero Posmyk-Leinemann
fbc0d76554
Prebuild issues roundup (#20000)
* redirect in the offline case

* [public-api] generate noise

* [server] Refactor Prebuild resolution to happen in a single place

* [dashboard, api] Show Prebuild details

* fixup! [server] Refactor Prebuild resolution to happen in a single place

* [bridge] Revive Prebuild QUEUED state: it's everything before running

* [server] Fix dead-end for streaming logs when starting too early

* [dashboard] Adds SHA + duration, fix re-rendering when prebuildId changes, and uses the new/old streaming logic

WIP because still has the "duplicate (sometimes triple!) logs" react re-rendering issue

* Prevent unnecessary re-renders of task output

* remove double-comment

* Duration display improvements

* Properly dismiss toasts and render durations

* Remove SHA from prebuild list

* Clean up and implement the `reset` event for workspace logs

* fix comment

* Tiny cleanup

---------

Co-authored-by: Filip Troníček <filip@gitpod.io>
2024-07-10 04:50:55 -04:00
Siddhant Khare
42159b8f84
chore: Update Pending changes dropdown component to improve menu styling (#20015) 2024-07-10 02:47:55 -04:00
Robo Quat
c295f8299f
update index (#20010)
Co-authored-by: roboquat <roboquat@users.noreply.github.com>
2024-07-09 03:16:54 -04:00