Commit Graph

47 Commits

Author SHA1 Message Date
mike12345567 cb49beb317 Replacing BBContext where its still used in backend-core and middlewares. 2024-12-04 16:51:56 +00:00
Sam Rose 8e9db069e5
Remove all uses of test.com in the code, replace them with example.com and create a lint rule to prevent this in future. 2024-02-08 16:32:14 +00:00
mike12345567 9feb91793c Fix for multi-tenancy issue in local development, couldn't load apps as it requires a tenant ID in the subdomain when in multi-tenancy mode which isn't possible in development - this makes sure that local development can work by using the users cookie instead. 2024-01-03 12:38:31 +00:00
Sam Rose 4093f311c9
Respond to PR feedback. 2023-12-19 09:47:12 +00:00
Sam Rose bd324f3225
Implement per-request JS execution limiting. 2023-12-18 15:29:56 +00:00
Adria Navarro a0dd71f990 Renames 2023-12-14 10:31:04 +01:00
Adria Navarro 46f8f4da58 Fix parsing appid from path with ? 2023-12-14 10:09:23 +01:00
mike12345567 244a1d9329 PR comment. 2023-12-06 14:47:13 +00:00
mike12345567 33b7e4d5d2 Some final refactoring, using proper jwt lib rather than requiring (proper typing). 2023-12-05 16:28:19 +00:00
mike12345567 2bf65601a1 Another simplification. 2023-12-05 15:55:09 +00:00
mike12345567 50270b8854 Quick refactor while in the area. 2023-12-05 15:54:33 +00:00
Adria Navarro db2c20e3ae eslint import/newline-after-import 2023-11-20 21:52:29 +01:00
mike12345567 57fa9baef8 PR comments and possible fix for test failures. 2023-11-17 16:33:58 +00:00
mike12345567 8d35453f01 Adding test case for circular detection. 2023-11-07 13:56:42 +00:00
mike12345567 312415ca7d Enforcing squash for rows which contain circular structures. 2023-11-07 13:47:21 +00:00
Michael Drury 12a7811847
Revert "Reverting changes to bull parameters" 2023-11-03 13:05:23 +00:00
Michael Drury 96534e625f
Revert "Updating bull parameters - help queue stalling" 2023-11-03 12:22:32 +00:00
mike12345567 17b6985f06 Adding a duration utility for changing between time types. 2023-11-01 17:48:13 +00:00
Sam Rose 767900aec6
Remove type information from JSDoc in .ts files, it's redundant. 2023-10-17 16:46:32 +01:00
Adria Navarro 1fdb822699 Missing dependencies 2023-09-26 13:09:16 +02:00
jvcalderon 946cd45b3f Refactor: BUILDER_REFERER_PREFIX -> BUILDER_APP_PREFIX 2023-05-12 15:59:42 +02:00
jvcalderon a48fc00a54 Change the PUBLIC_API_PREFIX to prevent failures if we increase in the future the API version 2023-05-12 15:54:59 +02:00
José Vte. Calderón 8eac0d99f7 Update packages/backend-core/src/utils/tests/utils.spec.ts
Co-authored-by: Rory Powell <rory.codes@gmail.com>
2023-05-12 15:38:39 +02:00
jvcalderon 1f7ebe8502 Remove unneeded 'beforeEach' import 2023-05-12 15:34:57 +02:00
jvcalderon d4d1bc03b3 Fix ESLint 2023-05-08 13:42:26 +02:00
jvcalderon 80d3b99b90 Provide some functions to check the path in the context 2023-05-08 13:26:00 +02:00
Rory Powell ec06f13aa6 Per user pricing (#10378)
* Update pro version to 2.4.44-alpha.9 (#10231)

Co-authored-by: Budibase Staging Release Bot <>

* Track installation and unique tenant id on licence activate (#10146)

* changes and exports

* removing the extend

* Lint + tidy

* Update account.ts

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>

* Type updates for loading new plans (#10245)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS` (#10247)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete + migration (#10250)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Lint

* Types and structures for user subscription quantity sync (#10280)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing for licensing (#10346)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing

* Lint

* Pricing/billing page (#10353)

* bbui updates for billing page

* Require all PlanTypes in PlanMinimums for compile time safety

* fix test package utils

* Incoming user limits warnings (#10379)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* Types and test updates for subscription quantity changes in account-portal (#10372)

* Add chance extensions for `arrayOf`. Update events spies with license events

* Add generics to doInTenant response

* Update account structure with quota usage

* User count limits (#10385)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* user limit messaging on add users modal

* user limit messaging on import users modal

* update licensing store to be more generic

* some styling updates

* remove console log

* Store tweaks

* Add startDate to Quota type

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>

* Lint

* Support custom lock options

* Reactivity fixes for add user modals

* Update ethereal email creds

* Add warn for getting invite from code error

* Extract disabling user import condition

* Handling unlimited users in modals logic and adding start date processing to store

* Lint

* Integration testing fixes (#10389)

* lint

---------

Co-authored-by: Mateus Badan de Pieri <mateuspieri@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Peter Clement <PClmnt@users.noreply.github.com>
2023-04-24 09:31:48 +01:00
mike12345567 ada052e043 Merging in develop - fixing some test cases which broke in the process. 2023-04-12 10:56:21 +01:00
adrinr c0d7f2329a Extract valid email util 2023-04-03 16:42:30 +01:00
mike12345567 24fc72657d Fixing all broken test cases after breaking out context fully from jestSetup/backend-core jest loading. 2023-03-30 16:35:25 +01:00
Rory Powell e116941750 Rotatable secrets (#9982)
* Rotatable secrets

* Set new api encryption key var

* Lint

* Use fallback keys instead of array

* Point api encryption key to dedicated value

* Add API_ENCRYPTION_KEY to cli

* Lint + add api encryption key to env files
2023-03-13 15:02:59 +00:00
mike12345567 0fa984f26f Moving is audited and adding in env var for ip address/user agent auditing. 2023-02-27 11:42:52 +00:00
mike12345567 58fab29fb4 Main body of PR comments. 2023-02-24 13:32:45 +00:00
mike12345567 ef30c03fa6 Merge branch 'develop' of github.com:Budibase/budibase into feature/audit-logs 2023-02-21 17:26:24 +00:00
Rory Powell cacf275a99 Prevent SSO users from setting / resetting a password (#9672)
* Prevent SSO users from setting / resetting a password

* Add support for ENABLE_SSO_MAINTENANCE_MODE

* Add typing to self api and build out user update sdk

* Integrate sso checks with user sdk. Integrate user sdk with self api

* Test fixes

* Move self update into SDK

* Lock down maintenance mode to admin user

* Fix typo

* Add health status response and return type signature to accounts.getStatus

* Remove some unnecessary comments

* Make sso save user function non optional

* Remove redundant check on sso auth details provider

* Update syncProfilePicture function name to getProfilePictureUrl

* Update packages/worker/src/sdk/users/events.ts

Co-authored-by: Adria Navarro <adria@revityapp.com>

* Add ENABLE_EMAIL_TEST_MODE flag

* Fix for logging in as sso user when existing user has password already

* Hide password update and force reset from ui for sso users

* Always disable sso maintenance mode in cloud

---------

Co-authored-by: Adria Navarro <adria@revityapp.com>
2023-02-21 08:23:53 +00:00
mike12345567 2afd3e1580 Updating events to include a proper friendly map of audited events. 2023-02-15 19:44:32 +00:00
Rory Powell ae9979929a Enable higher concurrency and resiliency in worker tests 2023-02-13 11:57:30 +00:00
adrinr 11a7742d90 Cleanup 2023-02-03 19:23:36 +00:00
adrinr 2e29ac9ec7 Rename name for id 2023-02-03 12:09:56 +00:00
adrinr 5d58fc5948 Dry 2023-02-03 11:28:27 +00:00
adrinr 79ee85dab3 Remove remaning faker refs 2023-02-01 17:19:56 +00:00
adrinr e4c898c327 Use test-containers for backend-core tests 2023-01-27 11:43:36 +00:00
Rory Powell e95222c0f4 Prefer app url resolution over referer (#9218)
* Prefer app url resolution over referer

* Update lockfiles
2023-01-11 10:24:57 +00:00
Rory Powell 786039055e File authentication using presigned URLs (#8883)
* file auth wip

* Private plugin bucket wip

* Add etag to logo request, fix circular dependency

* Resolve cyclic dependency

* Ensure browser doesn't cache custom component

* Global file fixes

* File fixes / remove permaUrl

* Add ctx local storage

* Enable presigned url to work from any host

* Test fix

* Self hosting w/ S3 + other fixes

* Fix for serving dev app in multi tenant

* Fix backup restore and import attachment url processing, never store attachment urls

* Test fixes

* Unit tests WIP

* Replace file path with base64 encoded private key

* Multi tenancy tests for files

* Environment files fixes

* Post-merge build and test fixes

* Add debug conditional to all jest logging and revert/fix prod minio proxy_pass

* Re-add default '/' minio route :(

* Rename iconFile -> iconFileName

* Add cloudfront vars to k8s templates

* Remove public bucket policy

* Remove duplicated test
2022-12-15 11:35:22 +00:00
mike12345567 d6e9380c06 General work after running some tests in CI - general refactoring as well. 2022-11-28 17:54:04 +00:00
mike12345567 70242f3be7 Fixing some issues detected by testing. 2022-11-26 21:26:19 +00:00
mike12345567 d3c4c99e16 Complete conversion of backend-core to Typescript. 2022-11-24 18:48:51 +00:00