Commit Graph

382 Commits

Author SHA1 Message Date
Adria Navarro 2698e47ec4 Type internal db.get 2023-07-18 11:41:51 +02:00
mike12345567 adef1ed5ce Initial attempt to get SQS up and running within BB. 2023-07-06 21:49:25 +01:00
Michael Drury adbdaf394a Small update to make sure that save/patch calls to the rows API (all DS+) return the squashed relationships, not the whole structure. 2023-06-01 18:18:12 +01:00
Dean e1a87f2072 Reverted eval call to direct. Indirect appears to cause issues in cloud 2023-05-26 10:22:28 +01:00
Adria Navarro 2d2d50a5df Merge branch 'develop' into chore/esbuild 2023-05-18 11:34:11 +02:00
Adria Navarro 3933a3881b Test dynamodb connection 2023-05-15 17:58:09 +02:00
Adria Navarro f426ba1ac3 Merge branch 'chore/npmless-builds' into chore/esbuild 2023-05-02 14:56:34 +01:00
mike12345567 5363693ac3 Removing automation logs from app exports as they are not useful - they take up space and the imported app won't have ran any automations yet. I have added it as a flag so that this does not affect backups (as you would want to maintain logs for backups). 2023-04-27 11:36:52 +01:00
mike12345567 361005b521 Merge branch 'develop' of github.com:Budibase/budibase into chore/esbuild 2023-04-13 17:23:58 +01:00
adrinr e8e77cc140 Use esbuild for server 2023-03-31 12:32:41 +01:00
adrinr 8d45e44e2f Fix types 2023-03-30 11:30:35 +01:00
mike12345567 f070be5f65 Moving search index to an enum. 2023-02-24 13:15:14 +00:00
mike12345567 41eb0c3964 Updating worker db config to have replication available (for audit logs). 2023-02-21 17:22:23 +00:00
mike12345567 6ec5e97ce9 Required work to support the new lucene audit logs search indexing. 2023-02-17 16:26:55 +00:00
adrinr 9bb1a2fa18 Merge remote-tracking branch 'origin/develop' into test/9339-sqlpostgres-row-api-test-suite 2023-02-06 09:12:13 +00:00
adrinr 420cb36ca7 Replace beforeeach for before alls 2023-02-03 19:02:40 +00:00
adrinr fe8853580e Tweak tests 2023-02-03 18:40:25 +00:00
adrinr 9f8522a901 Improve link controller tests 2023-02-03 17:59:15 +00:00
adrinr 4eb0c07953 Merge branch 'feature/dependencies-image' into test/9339-sqlpostgres-row-api-test-suite 2023-02-02 10:12:33 +00:00
adrinr abe3e2921f Race conditions 2023-01-31 22:50:52 +00:00
Adria Navarro 7f53cbeca7 Fix types 2023-01-20 09:58:59 +00:00
Adria Navarro 6bc658c1ff Fix types 2023-01-18 11:50:00 +00:00
Rory Powell fba7ef26ad Replace ts-jest with swc/jest (#9289)
- Add swc dependencies
- Add transform change to jest.config.ts
- Replace `export =` with `export default` in src code to enable code coverage to work with swc transformer
- Restructure backend-core errors package to allow for exporting error classes with ESM syntax
- Update backend-core to no longer use `export =`, export individual packages instead of replacing with `export default` for backwards compatibility
- Update event publishers to use `export default` - this was required for the `jest.spyOn` usage inside backend-core common mocks
- Restructure some jest.mock usages where declaring the jest.fn as a variable outside of the package mock threw an error
2023-01-11 09:37:37 +00:00
Dean dc001bc27f Merge remote-tracking branch 'origin/develop' into fix/sample-data-edit-removed-delete-fixed 2022-11-29 12:54:22 +00:00
Dean 7d0e2c289d Disabled the ability to rename the Sample Data datasource. Updated the backend to ensure that renaming doesn't alter its structure and block deletion 2022-11-28 17:25:10 +00:00
mike12345567 12d6e60525 One file left in the server, some fixes after converting the internal row controller. 2022-11-26 15:42:53 +00:00
mike12345567 658f12281d Fixes based on server build so far. 2022-11-26 15:10:41 +00:00
mike12345567 eeebd0fe70 Typescript conversion of linked row controller. 2022-11-25 18:54:57 +00:00
mike12345567 7eac8fafd6 Some server typescript re-writes, only automations left and some controllers. 2022-11-25 15:01:46 +00:00
mike12345567 02ede5d067 Finally removing all usages of backend-core/ type imports from server, including some further typescript conversions. 2022-11-22 19:49:59 +00:00
Dean 192c9b56e2 Import refactoring and some review updates. 2022-11-21 15:53:47 +00:00
Dean 0441704c57 Import fixes for backend core constants. Minor name change for default data source from Test DB to Sample Data 2022-11-21 12:47:36 +00:00
Dean 02a902ebd3 Merge remote-tracking branch 'origin/develop' into feature/default-internal-datasource 2022-11-21 11:10:29 +00:00
Dean e932aa105b Shifted the budibase datasource constant to backend-core 2022-11-17 16:28:48 +00:00
mike12345567 c6366c573a Final server test fixes, after all updates to context/removal of context faking. 2022-11-15 19:04:39 +00:00
mike12345567 5f658a0398 Converting further DB layers to TS - fixing mocks. 2022-11-15 18:33:24 +00:00
Dean f73b4f8b01 Review updates 2022-11-15 17:03:35 +00:00
mike12345567 72c9aadae0 Updating test cases - trying to get everything in order for merge. 2022-11-14 20:25:05 +00:00
Dean ebccc21e7f Fixed imports 2022-11-13 22:34:01 +00:00
Dean ff7a3b8cef Default Datasource and sample row data 2022-11-13 21:37:50 +00:00
mike12345567 c744d23832 Major update - removing the use of context for PouchDB instances, swapping knowledge of PouchDB to the PouchLike structure that replaces it. 2022-11-09 16:53:42 +00:00
mike12345567 f5557fd805 Fetching a list of backup/restore events includes the full user object. 2022-10-20 15:05:50 +01:00
Rory Powell 79226777b1 Merge develop 2022-09-28 08:56:45 +01:00
mike12345567 5ba7942282 Moving table, datasource and datasource plus document types into the backend core. 2022-05-25 10:52:19 +01:00
mike12345567 8e704cc70f Fixing issue #5778 - making sure to only remove the first app_ element of the app ID. 2022-05-09 12:29:44 +01:00
mike12345567 194b76985c Fix for #5269 - the sub type was being lost in some scenarios related to the user table being updated - making sure it is consistently kept when dealing with either of the related tables. 2022-04-26 14:24:51 +01:00
mike12345567 9899781fc5 Some updates, making sure databases will always close directly using finally checks around the actual tasks, updating how replication works to have a close statement (to make sure it is controlled correctly) and then updating to PouchDB 7.3.0 for one of the memory leak fixes. 2022-04-20 17:33:42 +01:00
mike12345567 192fb1307e Initial version of memory leak protection, making sure that PouchDB databases are closed correctly after use, using a combination of closures wrapping DB gets (this replaces the getDB, leaving only a dangerousGetDB function which can be used in very very specific scenarios) and then closing the DB as part of CLS hooked functions finishing. Also moving the GlobalDB init to the tenancy middleware as this is used everywhere in the worker/app services - means that not all getGlobalDB calls require an async closure around them. 2022-04-19 19:42:52 +01:00
Rory Powell 41144db055 Remove remaining direct usage of CouchDB. Add common pouch config to backend-core 2022-04-19 16:45:27 +01:00
Rory Powell dd9503ac09 Add typescript linting at the top level 2022-03-25 11:17:58 +00:00
mike12345567 7b3318a19e Switching the basic single row read to use the enrich endpoint. 2022-02-28 12:54:32 +00:00
Rory Powell 02c0c49594 Deprovision and local couch db url fix 2022-02-18 17:36:23 +00:00
Andrew Kingston d34e57382e Replace all spaces with underscores in column names rather than just the first one 2022-02-14 10:21:31 +00:00
Michael Drury d3a90acc55 Final pass refactoring - need to test but all code in server converted. 2022-01-28 00:05:39 +00:00
mike12345567 d2fe119d90 Main body of work, refactoring most usages. 2022-01-27 18:18:31 +00:00
mike12345567 1327394784 Switching out @budibase/auth to @budibase/backend-core. 2022-01-10 19:33:00 +00:00
mike12345567 c0512fa242 Adding query save, fixing routing to handle existing rest queries, adding in full saving of enabled headers functionality, fixing various issues discovered while testing. 2021-12-07 18:24:10 +00:00
mike12345567 23071993c6 Fixing an issue with user metadata not always being present when user accessing app, causing weird issues. 2021-10-21 17:23:10 +01:00
mike12345567 94737c6574 Final cleanup, just need to handle view migration (to self host from cloud). 2021-09-29 17:43:16 +01:00
mike12345567 c8dbf02acf Performance improvements after testing - switching to temporary in memory queries for cloud views. 2021-09-21 15:59:50 +01:00
mike12345567 cf5b7b1a99 Fixing issues with automation steps found during testing. 2021-09-20 19:21:04 +01:00
mike12345567 a38f83d0ec Moving views into a different location so they don't trigger tree creation and attempting to use in memory pouchDB to run views on the fly. 2021-09-20 18:24:09 +01:00
mike12345567 a92530f170 Fixing issue #2412 - making sure full enriched records are passed along to automations. 2021-09-13 16:28:52 +01:00
mike12345567 a366ab80e1 Merge branch 'develop' of github.com:Budibase/budibase into feature/automation-rework 2021-09-09 16:33:41 +01:00
Michael Drury e935a2196a Merge pull request #2575 from Budibase/fix/public-multi-tenancy
Issue with public apps and multi-tenancy
2021-09-09 14:42:12 +01:00
mike12345567 58aa32f1b0 Fixing issue with multi-tenancy and public apps, when the tenant isn't necessarily known, it can be found in the app ID, building a middleware to manage this. 2021-09-09 13:27:18 +01:00
mike12345567 557bd2df9f Adding metadata system and re-writing how Cron works, previously cron only worked in dev because it would never be enabled for the production app ID, this makes it so that it is never enabled for the dev app and when the production app is deployed it runs through all the automations and checks if any need cron jobs setup/disabled. 2021-09-08 19:29:28 +01:00
mike12345567 4450883a0a Adding slack integration. 2021-09-07 13:58:53 +01:00
mike12345567 3f960e4f13 Fixing an issue that occurs when the table name and the primary display column are the same name. 2021-09-03 14:49:56 +01:00
Michael Drury 8ce56c8492 Merge pull request #2531 from Budibase/fix/sql-relationship-issues
Relationship bug fixes (SQL and internal) and a few other bits
2021-09-03 11:47:36 +01:00
mike12345567 8c3eb30ab1 Fixing issues after upgrading to node 14 and circular dependencies causing issues. 2021-09-02 18:33:41 +01:00
mike12345567 2148bf6da4 Fixing issues with search endpoint not handling users fully. 2021-09-02 17:13:00 +01:00
Andrew Kingston 6e856c4bd7 Fix indexing of rows with arrays of objects 2021-09-02 12:00:18 +01:00
Peter Clement e03244e44e change index definition 2021-08-27 14:10:19 +01:00
Peter Clement 1ab618c2ef fix indexing of arrays 2021-08-26 14:22:52 +01:00
Peter Clement 725b9bb6e2 Add more validation options for array field 2021-08-25 15:49:04 +01:00
Peter Clement f000d44e39 Add contains option to lucene query builder 2021-08-24 16:14:38 +01:00
Martin McKeaveney af4c1b23de simplify couchDB configuration 2021-08-18 11:23:28 +01:00
Martin McKeaveney 87bf640a5d conditionally apply username and password to couchdb auth 2021-08-17 16:48:02 +01:00
Martin McKeaveney f4232bd7d7 couchDB auth options 2021-08-17 14:11:03 +01:00
Keviin Åberg Kultalahti f6218d8e0b Merge branch 'master' into develop 2021-08-13 14:41:49 +02:00
Martin McKeaveney 83b99be1d6 linting 2021-08-11 20:34:45 +01:00
Martin McKeaveney 1678c86bf4 lint 2021-08-10 17:46:28 +01:00
Martin McKeaveney ccb7f67458 ensure user metadata is created before link documents are created 2021-08-10 13:00:15 +01:00
mike12345567 a8eb067de3 Merge branch 'fix/apps-2195-2282-2283' of github.com:Budibase/budibase into develop 2021-08-06 17:14:31 +01:00
mike12345567 be48677490 Fixes for a lot of issues generated by the use of the pouchdb allDbs call, which is not designed for multi-client DB setups like ours, using CouchDB method instead. 2021-08-06 16:38:07 +01:00
mike12345567 bc84bab52c Merge branch 'master' of github.com:Budibase/budibase into develop 2021-08-06 13:04:54 +01:00
mike12345567 7624390f0b Fixing a variety of issues with internal relationships and external SQL relationships. 2021-08-05 19:24:29 +01:00
mike12345567 46ea3f3e9e Revert "Merge pull request #2253 from Budibase/revert-2076-feature/multi-tenants"
This reverts commit 4834b765be, reversing
changes made to 2456e69483.
2021-08-05 09:59:08 +01:00
Michael Drury b86a6fddc9 Revert "Multi-tenancy/organisations" 2021-08-04 10:02:24 +01:00
mike12345567 4d0faa38e3 Changing how apps are retrieved to be more efficient. 2021-07-23 20:01:53 +01:00
mike12345567 912659a8ad First version of multi-tenancy, work still to be done. 2021-07-15 17:57:02 +01:00
mike12345567 f6a133e556 Cleaning up deployments into the app DB, moving API keys to be in global DB (which will be tenancy managed) and adding concept of platform info DB. 2021-07-14 16:29:32 +01:00
mike12345567 1568702a6d Linting + formatting. 2021-06-25 17:21:36 +01:00
mike12345567 5462ca5930 Removing use of the arguments[0] as they don't mesh well with TS. 2021-06-25 17:14:23 +01:00
mike12345567 c531a02725 Allowing formula fields to be display columns. 2021-06-22 11:49:35 +01:00
Martin McKeaveney 597149228e Merge branch 'master' of github.com:Budibase/budibase into feature/opinionated-sql 2021-06-21 11:14:27 +01:00
mike12345567 47fb67ebfc Linting. 2021-06-20 10:55:12 +01:00
mike12345567 052d14ad38 Fixing issue with 1:N relationships and multiple fields, issue #1753. 2021-06-20 10:53:55 +01:00
Martin McKeaveney 626bc5e9dd better UI flow, list tables underneath datasources 2021-06-17 11:40:01 +01:00
Martin McKeaveney e3cced9d97 consolidate data sources and queries together in one UI 2021-06-15 19:48:05 +01:00
mike12345567 ae0dbacb31 Merge branch 'master' of github.com:Budibase/budibase into feature/opinionated-sql 2021-06-09 11:03:01 +01:00
mike12345567 fe66c3535c Fixing a collection of issues, specifically users being exported/imported and issues with database import causing weirdness (metadata doc being wrong). 2021-06-08 18:06:16 +01:00
mike12345567 b05c67e8b5 Formatting. 2021-06-08 16:11:46 +01:00
mike12345567 33184be064 Re-writing how global users are handled in server, specifically how they are retrieved, so that for relationships it can handle the global user. 2021-06-08 16:06:30 +01:00
mike12345567 4fdbeafca5 Adding test case for data source opinionated query endpoint. 2021-06-04 15:16:15 +01:00
Martin McKeaveney dd69d5480b Joi schema validation for plus datasources 2021-06-04 10:50:02 +01:00
Andrew Kingston b904bba4c7 Merge branch 'master' of github.com:Budibase/budibase into enhanced-app-list 2021-05-21 11:11:43 +01:00
Michael Drury f76c7d9684 Merge pull request #1514 from Budibase/fix/per-app-login
Removing per app login screens
2021-05-21 11:11:21 +01:00
Andrew Kingston c174602704 Merge branch 'master' of github.com:Budibase/budibase into enhanced-app-list 2021-05-21 11:00:26 +01:00
Andrew Kingston f63f9a7c51 Update app list screen to show unified app list with publish status 2021-05-21 10:32:16 +01:00
Martin McKeaveney e83f600b9e removing skip_setup as it was preventing init 2021-05-20 21:42:27 +01:00
mike12345567 4d6e4475d3 Fixing some issues found when testing. 2021-05-20 20:48:24 +01:00
Martin McKeaveney 7ab24fed2b merge with master 2021-05-20 10:40:15 +01:00
mike12345567 0bbd45b413 Adding the ability to get all apps, with the status attached. 2021-05-19 15:09:57 +01:00
Martin McKeaveney d9ed0686ab Merge pull request #1496 from Budibase/feature/draft-apps
Feature/draft apps
2021-05-18 11:25:51 +01:00
Martin McKeaveney fc7ddbe540 merge 2021-05-16 21:29:07 +01:00
Martin McKeaveney 0f2bcf581d revert functionality working 2021-05-16 21:25:37 +01:00
mike12345567 cea82f9335 A general re-work of some parts of the auth lib, as well as moving roles/permissions around to make it possible to build an admin API which has role knowledge. 2021-05-14 15:43:41 +01:00
Andrew Kingston b402254b2c Lint 2021-05-14 15:41:58 +01:00
Martin McKeaveney 48006408f1 publish button 2021-05-13 17:33:31 +01:00
mike12345567 81c5ed5554 Altering object store so that all writes/reads to the object store have the dev app prefix replaced with standard app. 2021-05-13 13:29:53 +01:00
Martin McKeaveney c3e7548255 dev mode E2E 2021-05-13 11:06:08 +01:00
mike12345567 2021c59dd9 Putting together redis lock system. 2021-05-12 17:37:09 +01:00
mike12345567 2ec6b15e56 General cleanup, doing away with the concept of hosting in the builder and the generally confusing difference between cloud, self hosting and running locally - server is simply always a server now. 2021-05-11 17:49:26 +01:00
Andrew Kingston e661fe8cf2 Merge branch 'next' of github.com:Budibase/budibase into lab-day-search 2021-05-11 10:47:52 +01:00
mike12345567 e5f3b3956c Merge branch 'next' of github.com:Budibase/budibase into labday/mike-formulas 2021-05-04 13:24:14 +01:00
Andrew Kingston 797e8a8b67 Add explicit prettier options 2021-05-04 11:32:22 +01:00
mike12345567 dcf69b2181 Merge branch 'next' of github.com:Budibase/budibase into labday/mike-formulas 2021-05-04 10:34:30 +01:00
Keviin Åberg Kultalahti 0afbf1649e lint:fix 2021-05-03 09:31:09 +02:00
Andrew Kingston 6f6770cef7 Add server-side searching and pagination to data providers using internal tables 2021-04-30 16:29:53 +01:00
mike12345567 a14c80bf6c Adding handlebars formulas to the system, it is now possible to set a formula at a column level which will always be applied on the way out with a relationship depth of one. 2021-04-29 19:06:58 +01:00
mike12345567 e85b7682e0 Initial CRUD interface for templates. 2021-04-21 18:15:57 +01:00
mike12345567 2ef1586d4d Adding cleanup operation to dynamo client. 2021-04-19 22:36:14 +01:00
mike12345567 eaa89c824e Updating the server to remove use of the email in the user ID. 2021-04-19 16:26:33 +01:00
mike12345567 4f71e11c94 Updating some test cases to work with new system. 2021-04-09 17:33:21 +01:00
mike12345567 3214abb89a Global users now working through the server, all requests proxied. 2021-04-09 15:11:49 +01:00
mike12345567 8cde219db9 First pass of global user configuration through existing user API with role mappings. 2021-04-08 16:58:33 +01:00
mike12345567 97f8d34947 Some final changes to search system so that the new indexing system is used instead of mango to achieve exactly the same result. 2021-03-26 13:46:20 +00:00
mike12345567 b97071bf82 Rewriting search to use the new couchdb 3.0 search functionality. 2021-03-25 23:42:50 +00:00
mike12345567 c51cf423e3 Creating CouchDB 3.0 indexes. 2021-03-25 19:12:17 +00:00
mike12345567 24c523faad Initialising CouchDB link to lucene and app design DBs for it. 2021-03-25 18:04:44 +00:00
mike12345567 d66af9f151 Getting rid of the CLOUD environment variable, this makes no sense anymore, now there is isDev() and isProd() which will work out the current state of the cluster. 2021-03-24 18:21:23 +00:00
mike12345567 78eb00b39d Merge branch 'single-stack-dev' of github.com:Budibase/budibase into feature/fs-removal 2021-03-22 17:20:07 +00:00
mike12345567 fca242b9ee Updating API keys and changing over system to allow use of builder endpoints when running in cloud. 2021-03-22 16:39:11 +00:00
Martin McKeaveney 6742c3ca99 basic single stack dev setup 2021-03-22 15:43:26 +00:00
mike12345567 d28737da34 Upping relationship coverage overall to 98% - looking over utilities which are barely ever used. 2021-03-16 23:25:18 +00:00
mike12345567 d6329e2409 Adding test cases which bring the link controller coverage to 100%. 2021-03-16 18:13:00 +00:00
mike12345567 47cf63bb16 starting into relationship testing. 2021-03-16 13:24:44 +00:00
mike12345567 794372987e Adding more test cases for the controllers, tables and views weren't as well covered as required. 2021-03-15 16:36:38 +00:00