Commit Graph
239 Commits
Author SHA1 Message Date
Charis e2fecc0f5d chore(docs linter): bump version (#36715)
* chore(docs linter): bump version

* style: format
2025-07-03 14:46:29 +00:00
Jordi Enric e0629c44b2 rm e2e gh action (#36846) 2025-07-03 00:40:34 +02:00
Ivan VasilovandAlaister Young 37e44bec9c feat: Add GTM (#35567)
* Add third-parties dependency for GTM. Reexport the GTM from the common package.

* Add the TelemetryTagManager to four of the production apps.

* Add the GOOGLE_TAG_MANAGER_ID env var as a turbo dependency to the 4 apps.

* Skip rendering the tag manager if the env var is not set or not running on the platform.

* Fix the prop type to be extracted from the component.

* Add default values for consent to GTM.

* Another try to mimic gtag function.

* Fix a link in www.

* Try another approach.

* try.

* Remove the data-redaction flag.

* Remove extra code.

* Send a sign-up event if GTM is enabled.

* Send only the email to GTM.

* Minor fixes.

* Remove third-parties from pnpm lockfile.

* Lets try to make studio work again.

* Add CSP rules for img loading for GTM.

* Add event for testing.

* Add www.googletagmanager.com to the CSP rules.

* Add Stape to CSP rules.

* Fix stape CSP.

* Clean up the code.

* Remove extra console.log.

* Fix the stape urls for CORS.

* Fix the wrong category for Stape URL.

* Add google ads urls.

* Bump the timeout.

* Add google.com to the img-src for google ads.

* update csp

* remove comment

* update to use google analytics without signals

* add stape to default-src in csp

* move csp to middleware

* add google ads support and fix middleware base path

* remove google tag manager / google ads references from csp. load via stape proxy instead

* add double click url to image src

* add Google Tag Manager URL to CSP configuration

* add ga4 urls to csp

* remove google urls from CSP

---------

Co-authored-by: Alaister Young <a@alaisteryoung.com>
2025-06-30 10:35:47 +00:00
Kevin Grüneberg 4d4036e649 chore: update code owners or pricing (#36499)
Allow billing team to approve/make changes
2025-06-18 14:22:08 +08:00
Paul Cioanca b7234ea26d chore: use larger runner group rather than a single larger runner (#36216) 2025-06-06 13:10:29 +03:00
Charis 4b9662b21e ci(docs lint): fix commenting workflow (#36062)
* ci(docs): fix sync process

GraphQL codegen needs to be run before sync because otherwise the types
are missing. Missed this in local testing because codegen had already
been run for other reasons.

* fix(troubleshooting sync): unresolved import

* ci(docs lint): fix commenting workflow
2025-06-05 13:16:36 -04:00
Charis 3158807579 ci(docs): sync script (#36001)
Add a script for syncing error codes from the repo to the database. This
is part of the newly created rootSync script, where all sync scripts
should be moved eventually.
2025-06-05 12:28:45 -04:00
55c3fdb49a E2E Testing Setup Consolidation (#35080)
* add new e2e folder

* add local supabase and confitional storage

* fix e2e selfhosted

* update actions

* add correct e2e folder

* fix e2e actions

* fix action project ids

* fix permissions

* fix script

* fix playwright install

* playwright root

* pnpm i

* fix api rul

* add env docs

* update run script

* only install deps for e2e

* use same dep

* only install deps for tests

* upd lockfile

* use official vercel integration

* use vercel cli

* remove old folder

* fix script

* rm filter

* rename e2e studio package

* fix install browsers

* add polling for vercel build

* use vercel-preview-url package

* undo actions

* rename ci env to ci

* chore:add rls check and make playwright test less flakey (#35348)

* update ci action

* fix paths

* fix browser install

* run ci against staging

* try caching builds

* fix envs

* fix env check

* fix sign in

* fix sign in url

* fix envs and url

* fix caching

* fix race condition in sign in page

* fix race condition in sign in page

* add check to see if being redirected

* fix caching, check IS_PLATFORM var

* log is_platform

* try vercel build

* fix vercel project id

* fix path

* add temp vercel.json file

* fix paths

* undo project id stuff

* rm cwd

* fix path

* fix paths again

* fix path

* fix base url

* try different fix

* fix config base url

* fix base studio url issues

* retain video on fails

* Update e2e/studio/README.md

Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>

* Update e2e/studio/README.md

Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>

* fix env file naming

* undo caching

* rm old tests folder

* fix readme scripts

* rm vercel deploy for now, just run build locally

* fix url

* fix build script

* fix is_platform

* fix stuck studio start

* fix env vars

* retain network and logs on fail for better debugging

* add apiurl env

* back to vercel

* disable catpcha

* fix test

* update environment configuration to remove default URLs for CI and streamline API base URL handling

* fix typeerr

* fix urls in home.spec

* fix urls in logs.spec

* fix urls in sqleditor spec

* fix table editor spec

* add tourl util

* use staging api in ci

* re add base url env var

* fix url in projects page

* fix url in sql editor spec

* fix sign in not waiting for cookies omfg

* fix env var name

* fix sql-editor test

* simplify table removal

* add opt out telemetry step

* fix logs tests

* fix table editor spec

* remove flaky steps from table editor tests

* use vercel deployment events instead of build

* add studio check

* fix condition

* debug event

* rm if

* trigger deploy

* undo ac

* make opt out button step optional, some envs dont hav eit

* use testid for sql run button

* use id instaed of timestamp in logs tests

* empty

* rm retries

* up glbal timeout

* chore: fix failing sql-editor playwright test (#35767)

* chore: fix failing sql-editor playwright test

* chore: minor fixes

* Chore/update playwright config (#35826)

chore: update playwright config

* rm supabase project from e2e tests

* refactor and simplify environments

* fix sql editor test

* fix ci env vars

* fix

* fix on windows

* update readme

* add playwright install script to readme

* rm turbopack trace flag

* npm to pnpm for scripts

* delete ivan lines

---------

Co-authored-by: Michael Ong <minghao_3728@hotmail.com>
Co-authored-by: Copple <10214025+kiwicopple@users.noreply.github.com>
2025-06-03 17:37:39 +02:00
Charis df9c1bc017 ci(docs): scheduled linter (#36116)
1. Fix lint errors showing up in the scheduled linting run.
2. Found a bug with the scheduled linting run workflow: if the bot
branch already exists, we check it out and try to run lint fix on it.
But this branch is never synced with the current state of master, which
is the one we actually want to run lint fix on. Instead we should delete and recreate it from latest master if it already exists..
2025-06-02 15:30:16 +00:00
Charis f58eead769 chore(docs): clean up environment variables (#36036)
Our environment variables are a bit of a mess, so cleaning them up:

- We have duplicate environment variables that resolve to the same thing
but just have different names, deduplicating all of these
- We have a .env.development (for publicly safe variables) and a
.env.example, we
really only need one
- Privately, we have a .env (for running scripts) and a .env.local (for
Next.js). Changing the dotenv source for scripts, so again we only need
one
2025-05-29 16:35:26 -04:00
Charis 4e547b31e8 ci(docs lint): fix workflow_run condition (#36038)
The originating workflow was changed so that lint failures fail the
workflow, so now we should be running the target workflow on failure,
not on success.
2025-05-29 15:26:02 -04:00
Charis a0a31f00e9 ci(docs lint): fix workflow for external lints (#35968)
Workflow for external lints still not working quite right.

1. The lint workflow should fail if linting fails, to block merge. Right
now the exit status of the linter is ignored; added a step to fix that.
2. The workflow_run event is not triggered by completion of the first
workflow. Couldn't find an obvious problem with the two, but saw online
that some people had problems with a quoted workflow name, so tried
renaming the workflows to avoid having to quote the names.
2025-05-29 14:46:49 -04:00
Charis 5dc929a584 chore(docs linter): fix external prs workflow (#35785)
The external PRs workflow is still broken: commenting on the PR with the
lint results doesn't work because pull_request events triggered from
forks do not have write permissions.

Following GitHub recommendations, I broke it down into two workflows:

1. First workflow writes the lint results (if any) to an uploaded
artifact.
2. Second workflow (triggered by workflow_run and thus has write
permissions) downloads the artifact and posts the results as a PR
comment.
2025-05-27 10:10:04 -04:00
Charis bf3bada7fd test: run supabase locally during test (#35947)
Alter the docs test script so it spins up Supabase locally. Will allow
for end-to-end tests against the local DB.

Also small alteration to one of the test files to silence an annoying
(but intended) error.
2025-05-27 10:00:21 -04:00
Etienne Stalmans b492341ed1 chore: make MildTomato codeowner of packages (#35558)
* chore: make MildTomato codeowner of packages

* chore: make supabase/design package/ui owners
2025-05-26 13:40:03 +00:00
Charis 419ae4707f chore(docs): bump linter version (#35724) 2025-05-20 11:54:35 -04:00
Jordi EnricandJoshen Lim 6e91494b16 Add coveralls integration (#35424)
* update gh action, update vitest config

* debug

* debug cov

* idk try something different

* test2

* test3

* add base path

* rm debug

* add apiAuthenticate tests

* supabaseClient tests

* apiWrappers tests

* add apiHelpers tests

* add configcat tests

* add formatSql tests

* add github tests

* add cloudprovider utils tests

* add helpers tests

* fix typeerr

* add missing readonly err

* fix typeerrrs

* fix type errors in apiWrapper tests

* fix apiHelpers test

* add packages/ui tests

* add coveralls flags

* try coveralls parallel config

* fix coveralls parallel config

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-05-08 12:23:37 +02:00
Charis c136ee4c19 ci (docs): fix docs lint action on forks (#35277)
Before:

The docs lint action doesn't run properly on forks because it tries to
use the branch name to identify the PR for updating, but the branch name is adapted on forks, so it is not `branch-name`, but `forking-account:branch-name`.

After:

Use the PR number instead to identify the PR instead.
2025-04-25 12:02:27 -04:00
Charis 68832f2c00 ci (docs): prevent concurrent search update processes (#35127) 2025-04-21 08:39:37 -04:00
Han Qiao 56f0bb58c5 chore: update docker tag for dependabot (#35037) 2025-04-15 22:28:23 +08:00
Han Qiao 5d8d1f92be fix: format build version for dependabot (#34933) 2025-04-11 18:48:12 +08:00
Stephen Morgan 431be5682b fix: review actions (#34648)
* fix: possible command injection in docs-lint

* fix: explicit permissions for github actions
2025-04-02 16:41:14 +13:00
Kevin Grüneberg c1330d35c0 ci: fix autofix (#34332) 2025-03-22 15:51:01 +01:00
Andrew Valleteau eb7efdef7f chore(studio): move Query to pgMeta add tests (#34232)
* chore(studio): move Query to pgMeta add tests

- Move the Query builder from studio to pgMeta
- Add e2e tests over the generated sql to ensure syntax and runtime
  result over pg database
- fix bug with orde by for table with undefined column

* chore: fix query import path

* chore: set ES target for lint

* chore: add github action for pg-meta test package

* chore: add tsconfig to sparse checkout
2025-03-20 19:04:58 +00:00
Charis 2709fa4a3e feat: pre-compile-time partials (#34028)
Partials are currently defined via MDX includes. This PR switches to pre-compile-time partials, which have a new syntax:

```
<$Partial path="path/to/file.mdx" />
```

## Rationale

This produces two improvements:

1. Partial substitution can occur in pipelines that don't use MDX compilation. For example, we can now do partial substitution before building the search index, so partial content will also be indexed.
2. After the App Router migration, the MDXProviders should've been deprecated, but were kept around for the sole reason of making partials work, and leading to us shipping unnecessary client-side code. We get a minor decrease in overall client bundle size (5.74 MB to 5.6 MB) by getting rid of the Providers.

## Breaking changes

Besides the change to partial syntax, the arguments are also less powerful than before because we are doing string substitution and don't have the full power of JS. Defining string variables is still possible (documented in the Contributing guide), and since that's all we actually do in practice, this shouldn't be too cumbersome. There is always the escape hatch of making a custom component for more complex content reuse cases.
2025-03-18 10:37:39 -04:00
Pamela Chia 2e60c6c9a0 fix: codeowners for telemetry based on team (#34242) 2025-03-17 19:33:14 +01:00
Charis 77b4856ba9 ci(docs): improve linting of external PRs (#34104) 2025-03-11 12:57:49 +01:00
Charis 9080f8e32a ci: docs lint prevent prs hanging (#33819)
Conditional and required checks don't mix well on GitHub -- if a required check is skipped it still hangs, preventing PRs from getting merged indefinitely. Instead, we need to to run the action on every PR, but bail early if no docs content changes were made.

Since the logic for when/how this action runs is getting a bit convoluted, I also split up the tests against master (run against all files, no conditional checks) from the tests aginst PRs (run against changed files, with conditional checks)
2025-02-24 19:40:25 +00:00
Charis a820c56ed0 chore: docs linting (#33574) 2025-02-21 14:13:00 -05:00
Jordi EnricandJoshen Lim b6e126c331 Feat: remember last visited route in logs FE-1418 (#33486)
* add logic to remember last route

* add default redirect

* move logic to index page

* Simplify logs page redirect logic

* missing }

* fix wrong }

* wait 2s for page to redirect

* use latest version in local studio cli test

* rm timeouts looks like it takes longer in ci

* Clean up

* Fix broken commands

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-02-20 14:42:01 +08:00
Joshen Lim ca37f16f58 Chore/refactor e2e tests (#33647)
* Set up E2E tests for staging

* update

* Update

* Update .env.staging.example

* Fix node modules

* Fix

* Attempt to swap local-studio-tests to use the new studio-tests directory

* Omit storage state if running tests for local self host

* Fix test:local command

* Deprecate local-studio-test folder

* Rename local studio tests GH action to E2E test
2025-02-20 12:02:41 +08:00
Beng Eu c2547eec4f fix: hide pnpm update message, it's confusing since the pnpm version is locked; update to pnpm 9.15.4 (#33232) 2025-02-06 14:57:01 +08:00
Charis 2d55512553 chore: activate spelling and admonitions lints for docs (#33292) 2025-02-04 13:18:31 -05:00
Pamela Chia d50fa11757 feat: add homepage click events (#33005)
* feat: add homepage click events

* fix codeowners telemetry filepath
2025-01-22 17:20:47 -08:00
30c390c19c chore: unify telemetry event sending (#32861)
* chore: unify telemetry event sending

* organize some imports

* remove final useTelemetryProps

* add www telemetry actions typing and docs

* remove gaevents

* fix build

* move telemetry identify into PageTelemetry

* fix telemetry constants import

---------

Co-authored-by: Pamela Chia <pamelachiamayyee@gmail.com>
Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-01-22 23:52:32 +08:00
Charis a5daf7cee4 fix: troubleshooting sync workflow (#32778)
Workflow was missed when updating to pnpm
2025-01-14 18:21:17 -05:00
Ivan Vasilov ab3a3b3c76 chore: Move playwright tests to tests/local-studio-tests (#21488)
* Move the playwright package to tests folder.

* Update the workspace list.

* Change the name of the playwright tests to local studio tests.
2025-01-09 12:36:32 +01:00
Wen Bo XieandEtienne Stalmans e6b31c6644 chore: add spam detector to auto-label-issues.yml (#32611)
* chore: add spam detector to auto-label-issues.yml

* Update .github/workflows/auto-label-issues.yml

Co-authored-by: Etienne Stalmans <staaldraad@users.noreply.github.com>

---------

Co-authored-by: Etienne Stalmans <staaldraad@users.noreply.github.com>
2025-01-08 09:45:16 +01:00
Charis 4f6b2be178 fix(ci): comments also appearing on internal prs (#32538) 2025-01-02 23:27:21 +01:00
Charis d21a2a0cbc chore(ci): comment on external PRs (#32529)
Comment on external PRs with some tips for speeding up review process
2025-01-02 16:05:58 -05:00
Ivan Vasilov dd572efb0d chore: Switch repo to use pnpm (#29928)
* Fix some missing and duplicate dependencies.

* Fix the types for jest in ai-commands package.

* Replace all npm commands with pnpm. Add pnpm files and workspace links.

* Fix rimraf to work with pnpm.

* Refactor the github actions to work with pnpm.

* Delete package-lock.json.

* Fix the tailwind configs to not include node_modules.

* Fix random files.

* Add preinstall scripts to all packages.

* Fix the Dockerfile to work with pnpm.

* Update the DEVELOPERS documentation.
2024-12-20 13:07:20 +01:00
Long Hoang 5247a6f7e5 chore: add code owners for event documentation (#31191) 2024-12-17 09:36:09 +01:00
Charis 931d01090b ci: lint docs on push to master (#31176)
Docs lint errors can make it into master through a race condition:

- PR with lint configuration changes is made
- Separately, a PR that is incompatible with the new configuration (but _is_ compatible with the old one) is merged

This can be annoying for downstream PRs, so lint post-merge, and create a PR with auto-fixes if possible.
2024-12-16 17:35:07 -05:00
Charis d69902da94 chore(docs): lint all sections with linter v2 (#31110)
lint(docs): heading capitalization
2024-12-16 14:33:25 -05:00
Charis ba132968cd ci(docs): fix linter v2 pipeline (#30930)
The linter was failing whenever grep turned up empty because pipefail was on, now ignoring grep error so it'll stop erroring on all irrelevant PRs 😵
2024-12-05 15:48:19 +00:00
Charis 4cecae1e09 ci(docs): linter bump version + expand scope (#30860) 2024-12-04 20:37:49 +00:00
Charis 572111224b ci(docs): bump linter + expand linting to auth section (#30704) 2024-11-28 10:26:00 -05:00
419eba99a1 fix(self-hosted): self hosted docker compose (#30674)
* fix(self-host): ensure migrations connect back to postgres database

* fix(self-host): use supabase_admin user for supavisor pooler

* fix(self-host): services healthchecks

* fix(self-host): vector config path

* feat(ci): add smoke test for self-hosted stack

---------

Co-authored-by: Shawal Mbalire <mbalireshawal@gmail.com>
Co-authored-by: Robson Martins <robson@controle.digital>
2024-11-28 11:37:08 +00:00
Charis 78d0755008 docs(ci): expand linter scope (#30678)
Expand linter scope to cover `ai` directory as well.
2024-11-26 14:28:40 -05:00
Charisandgithub-actions[bot] d9a1a615f5 ci: linter v2 (#30480)
PR to start introducing Linter V2!

Primary improvements from this linter:

Better parsing of MDX (fewer false positives)
More flexibility
And suggested autofixes! (see auto-generated PR comment below for how that works)
Turning this on for only a small portion of the repo at first to avoid an avalanche of alerts, will slowly expand from there.

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-22 15:22:05 -05:00