Commit Graph

645 Commits

Author SHA1 Message Date
mike12345567 9e46413202 Fix for export issue reported in #5669 - streaming + closing the database didn't work well together, have to support an edge case for our code stopping execution, but DB access continuing. 2022-05-03 15:20:46 +01:00
Michael Drury 8d78698c60 Merge branch 'master' of github.com:Budibase/budibase into develop 2022-04-26 20:10:26 +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
Martin McKeaveney 9ca4dacbaa merge with master 2022-04-26 10:21:45 +01:00
mike12345567 345bbf603c Fixing issues with test cases - a lot of test cases didn't setup tenancy in any format, which now means that the API endpoints they call would not have access to a Global DB instance. Also had to disable the closing of the database in test as this was removing the database from memory, meaning future calls would find an empty database when they opened it. 2022-04-21 14:56:14 +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
mike12345567 2accebec7f Fix for issue discovered in #5187 - expanding regex to cover all sorts of number coercion. 2022-04-07 10:26:39 +01:00
Rory Powell 0a4b1eb552 Tests complete + backwards compatibility for deployment 2022-03-22 00:23:22 +00:00
Rory Powell 715d42d3e6 Merge branch 'develop' into feature/licensing 2022-03-21 17:13:16 +00:00
Rory Powell 795b48bfb0 Published apps, automations and query count quotas 2022-03-20 01:13:54 +00:00
mike12345567 53386909ab Updating row search bookmark to handle numbers as bookmarks. 2022-03-09 10:12:26 +00:00
Rory Powell eefe4ea2ad Integrate usage quotas with licensing 2022-03-08 14:21:41 +00:00
mike12345567 b6e6f81d15 Adding test cases for user implementation with mocks. 2022-02-25 19:01:17 +00:00
mike12345567 cf27667580 Users implementation added. 2022-02-25 19:00:12 +00:00
mike12345567 8f6e55e65b Adding controllers for row, query and applications public APIs. 2022-02-23 18:31:32 +00:00
mike12345567 edd4a3233e Shifting over all of self API, deprecating old endpoints. 2022-02-14 18:11:35 +00:00
mike12345567 dbc048b365 Review comments, renaming deployed -> prod in terms of app IDs. 2022-01-31 17:42:51 +00:00
mike12345567 1095ad17c6 Adding comments to areas that need to keep using old db creation method. 2022-01-31 17:27:47 +00:00
mike12345567 476f34fb93 Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db 2022-01-31 17:16:59 +00:00
mike12345567 9198439f7f Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db 2022-01-31 17:00:22 +00:00
mike12345567 f9c7877e02 Merge branch 'develop' of github.com:Budibase/budibase into feature/formula-filtering 2022-01-31 15:21:15 +00:00
mike12345567 91a90e62b2 Fixing some issues discovered by the cypress tests, cleaning up how Couch is used. 2022-01-28 18:52:34 +00:00
mike12345567 d5f8cc1023 Tests updating, all now passing, fixed some issues discovered by them. 2022-01-28 15:43:51 +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 ab5c7766b4 Bit of refactoring, adding in functionality to remove invalid static formula when the elements that the formula depends on are removed. 2022-01-24 18:22:59 +00:00
mike12345567 da26761773 Make sure attachments are deleted when table is deleted, or column is removed. 2022-01-24 16:32:41 +00:00
mike12345567 10a2915bcb Getting relationship re-enrichment working, so that static formulas will update when the value of the relationship changes. 2022-01-21 17:45:24 +00:00
Rory Powell 81e8ceff1a Merge branch 'develop' into feature/app-urls 2022-01-21 17:35:23 +00:00
Rory Powell e0dcc7648c Remove server -> worker request to retrieve apps, remove hosting endpoints and store 2022-01-21 17:31:18 +00:00
mike12345567 deb4a34c18 Adding the ability to filter using the filter drawer for formula fields, getting them based on the enriched contents of a row - adding functionality to denote to each table which other tables depend on them for formula. 2022-01-21 16:24:24 +00:00
mike12345567 87d5e0d39e Merge branch 'develop' of github.com:Budibase/budibase into feature/formula-filtering 2022-01-21 12:52:58 +00:00
Rory Powell 04386bd1d8 Merge pull request #4000 from Budibase/fix/sync-apps-reset-rows-quotas
App and Row Quota Fixes
2022-01-21 11:20:14 +00:00
mike12345567 50eff577f9 Getting the static formulas being processed on input, not re-processing on output. 2022-01-20 18:04:44 +00:00
Michael Drury 9d5d8284cb Quick fix for #4093 - make sure the App ID/App URL returned for deployed apps is always lowercase, as URLs are not case sensitive and should not be compared as such. 2022-01-18 20:54:19 +00:00
Rory Powell 604d316834 Add dryRun to automation row create and remove env conditional on delete 2022-01-18 15:53:55 +00:00
Rory Powell fc043e116d Support template and app import in quotas + logging 2022-01-18 15:37:16 +00:00
Rory Powell 79c10fba7c Account for duplicate row ids caused by app import 2022-01-18 12:48:54 +00:00
Rory Powell ff887f8f88 Sync row usage with app deletion 2022-01-17 18:07:26 +00:00
Rory Powell 8fc60af820 Calculate total rows in migration, centralise quota enabled logic and tidy to use env vars only 2022-01-17 12:44:53 +00:00
Rory Powell a12a30c8ad Merge branch 'develop' into fix/sync-apps-reset-rows-quotas 2022-01-14 10:12:57 +00:00
Martin McKeaveney 4b6e88075d merge with master 2022-01-13 14:58:17 +01:00
mike12345567 bca8212d1d Merge branch 'develop' of github.com:Budibase/budibase into fix/sync-apps-reset-rows-quotas 2022-01-12 13:20:22 +00:00
mike12345567 97c6f3298a Removing use of direct package access. 2022-01-12 12:54:25 +00:00
mike12345567 5ee6aa24b2 Refactoring core library usage in monorepo, make it a bit cleaner/easier to search/more standardised. 2022-01-12 11:32:14 +00:00
Rory Powell e58bd14dcc Merge branch 'develop' into fix/sync-apps-reset-rows-quotas 2022-01-12 09:34:14 +00:00
Rory Powell 979313f966 Enable migration 2022-01-11 18:38:18 +00:00
Rory Powell 726315afde Sync app quota to correct number, reset and disable rows quota 2022-01-11 17:49:42 +00:00
mike12345567 37d0617ace Renaming some variables to core, fixing test cases that referenced auth directly. 2022-01-11 16:18:30 +00:00
mike12345567 b33523a73d Merge branch 'develop' of github.com:Budibase/budibase into feature/auth-core 2022-01-11 15:16:07 +00:00
mike12345567 1327394784 Switching out @budibase/auth to @budibase/backend-core. 2022-01-10 19:33:00 +00:00
mike12345567 c75cc47ad3 Updating to handle prod vs dev apps and deletion of attachments, as well as handling it on update. 2022-01-06 18:45:40 +00:00
mike12345567 f1981220af Removing attachments when row is deleted (always, need to restrict if app is deployed). 2022-01-06 17:59:29 +00:00
Martin McKeaveney 4d77353692 adding minio URL to objectStoreUrl check 2021-12-31 13:28:52 +00:00
Andrew Kingston d06cc93757 Merge branch 'develop' of github.com:Budibase/budibase into feature/json-backend 2021-12-15 13:36:10 +00:00
Andrew Kingston 7146b994ff Merge branch 'develop' of github.com:Budibase/budibase into feature/json-backend 2021-12-07 15:11:32 +00:00
mike12345567 99e2cd52e8 Adding stats, code, timings and size of request. 2021-12-06 18:23:18 +00:00
mike12345567 a6de5a4fa1 Exporting date and auto id field, but not importing autocolumns when table is created. 2021-12-02 16:17:10 +00:00
mike12345567 003b6424a2 Fixing issue with updating row validation to allow empty objects. 2021-11-29 17:54:09 +00:00
Michael Drury a726d158b8 Merge pull request #3338 from Budibase/feature/query-rbac-timeouts
Query RBAC, query and automation threading/timeouts
2021-11-17 11:39:09 +00:00
mike12345567 11debac115 Updating to manage completed events piling up, this will periodically clear out all events - repeats cannot be removed with the removeOnCompleted job option. 2021-11-16 18:58:24 +00:00
mike12345567 f13257bebe Updating the getAllApps function to use a cached version of the app metadata, rather than retrieving it individually everytime. Also invalidating the results everytime they are updated (at least in the important locations). 2021-11-15 17:40:45 +00:00
Michael Drury 0ac5c4713a Fixing test case (didn't provide a schema). 2021-11-12 20:23:00 +00:00
mike12345567 1d7fe369c6 Linting and updating csv parser test case to match new functionality. 2021-11-12 19:39:12 +00:00
mike12345567 d9d5391a40 Some UI work, as well as moving SQL to using a proper bulk insert method and fixing an issue found with csv parsing and removing of invalid columns. 2021-11-12 19:24:56 +00:00
mike12345567 af5e196b4c Adding all required controls for data import to internal tables, just need to implement external table data import. 2021-11-12 18:26:57 +00:00
mike12345567 5c8670c7f4 Merge branch 'develop' of github.com:Budibase/budibase into feature/query-rbac-timeouts 2021-11-11 13:50:42 +00:00
mike12345567 dc8d0aa533 Merge branch 'master' of github.com:Budibase/budibase into develop 2021-11-11 13:48:07 +00:00
mike12345567 cca28ce255 Adding worker controls to both automations and queries. 2021-11-11 12:11:09 +00:00
Martin McKeaveney 2a2963dac4 bust cache when app versions are different 2021-11-11 12:21:45 +01:00
mike12345567 781e8359a1 Adding worker-farm back to have a mechanism to run queries within which we can timeout. 2021-11-10 19:35:09 +00:00
mike12345567 94ee13ffc4 Adding the sync call from the worker for creation, updating and deletion of users. Making sure that production and development apps are always up to date with user metadata. 2021-11-04 14:53:03 +00:00
Michael Drury 3a5e004f36 Adding sync user endpoint to server which can be used by the worker. 2021-11-03 23:15:38 +00:00
Rory Powell ad61f2af3b Prevent non builder from accessing dev apps 2021-10-25 16:59:09 +01:00
Andrew Kingston 029b447ce7 Merge pull request #3042 from Budibase/fix/app-export-performance
Improve app export experience
2021-10-20 10:25:59 +01:00
Andrew Kingston d00f3f27fe Refactor app exports to allow a streaming realtime backup, and tidy up 2021-10-18 12:08:12 +01:00
Rory Powell a94becac9c Merge pull request #2975 from Budibase/no-access-role
No access role / public by default
2021-10-18 11:08:45 +01:00
Peter Clement 5cfaa17798 add check for missing _rev 2021-10-18 09:51:13 +01:00
Peter Clement eb957bc94f Potential fix for issues with updating and saving rows and columns 2021-10-17 21:23:30 +01:00
mike12345567 5b81d25d1a Fixing some issues which were causing errors during the cypress test runs, such as not redirect /api/system/ requests to the worker. 2021-10-14 16:25:07 +01:00
mike12345567 b46a945fc4 Adding the basics of the query transformers to the frontend and to the backend, as well as switching to vm2 for script running. 2021-10-12 18:45:13 +01:00
Rory Powell 8c67f3da13 No access role / public by default 2021-10-12 10:05:57 +01:00
mike12345567 183b6e7b50 Fixing issue with user's being logged in and trying to access other tenants public apps, this work makes sure that users from other tenants will not be 403'd immediately (too aggressive) but instead they will have all other their RBAC roles revoked. 2021-10-07 15:49:26 +01:00
Martin McKeaveney ab24e02941 UX improvements 2021-10-05 23:49:32 +01:00
Martin McKeaveney 4c59087904 templates working end to end 2021-10-05 23:02:28 +01:00
Rory Powell 380e3b4ccf Merge pull request #2882 from Budibase/honour-quota
Deny only when usage quota is exceeded
2021-10-04 16:47:53 +01:00
Rory Powell c3a95d6c03 Deny only when usage quota is exceeded 2021-10-04 14:07:10 +01:00
mike12345567 c82c9df522 Fixing issue with direct app request in self host not working when un-authenticated (doesn't re-direct to login). 2021-10-04 13:31:53 +01:00
Michael Drury 5a203d7b7d Merge pull request #2847 from Budibase/fix/2665
Fix created by/updated by auto columns breaking public forms
2021-10-01 15:16:22 +01:00
mike12345567 8decbc20d5 Fixing issue with created by/updated by on public forms, also fixing a small issue with analytics ping generating a 404. 2021-10-01 15:00:11 +01:00
mike12345567 be09410cae Quick fix for worker, API key was not considered good enough to access worker, updated this and added better error to smtp action. 2021-10-01 13:29:08 +01:00
mike12345567 d282cd030f Some fixes after testing and adding some basic work to the frontend. 2021-09-28 18:05:52 +01:00
mike12345567 a83b9835b2 Merge branch 'develop' of github.com:Budibase/budibase into feature/cloud-export 2021-09-28 11:23:03 +01:00
mike12345567 9f0d8a91b7 Putting together cloud export and import functionality, still need to test, but basic concept there. 2021-09-27 19:12:41 +01:00
Martin McKeaveney 1e3fca15c5 abstract usagedoc creation into auth, create the doc if it doesn't exist 2021-09-27 17:35:22 +01:00
Martin McKeaveney bd1f6752ff merge with develop 2021-09-27 16:37:55 +01:00
Martin McKeaveney 2da28ecc71 prevent SMTP fallback for automations 2021-09-27 16:28:39 +01:00
Michael Drury a9823062d4 Merge pull request #2729 from Budibase/fix/no-perms-hierarchy
Removing the concept of permissions hierarchy from backend for resources
2021-09-27 15:15:31 +01:00
Martin McKeaveney 5b4bf74e2c re-adding env var controls for cloud limit functionality 2021-09-27 15:03:48 +01:00
Martin McKeaveney 35d4eac78a fallback SMTP configuration for cloud 2021-09-27 14:57:22 +01:00
mike12345567 009f30b5cc Removing useless statement. 2021-09-27 12:17:59 +01:00
mike12345567 32bdc4a991 Minimal fix for issue involving JSON views and newlines with postgres, this fix couldn't be more over-arching as it risked breaking new lines across the board. Have included a script for setting up the test scenario as well. This fixes issue #2612. 2021-09-24 18:10:30 +01:00
Martin McKeaveney 83384faed8 remove old middleware 2021-09-23 23:26:09 +01:00
Martin McKeaveney c49b88b57a automation runs quotas 2021-09-23 23:25:25 +01:00
Martin McKeaveney 4a2028c354 usageQuota middleware writing to couch 2021-09-23 22:40:14 +01:00
mike12345567 e47bf71e6c Getting rid of the concept of permissions hierarchy, roles still have a hierarchy and base permissions still follow the old system, but resources can be given a stack of separate permissions which don't override each other. 2021-09-23 19:04:53 +01:00
Michael Drury f45c780d99 Merge pull request #2698 from Budibase/feature/view-cloud-replacement
Cloud View replacement
2021-09-22 18:21:38 +01:00
Martin McKeaveney e2ed2e8b56 merge from master 2021-09-21 21:42:52 +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
Martin McKeaveney f9d368f021 only write to backups bucket in self host 2021-09-21 14:36:30 +01:00
mike12345567 cf5b7b1a99 Fixing issues with automation steps found during testing. 2021-09-20 19:21:04 +01:00
mike12345567 0ff5fd1ef0 Adding functionality so that when an automation trigger is deleted its test inputs will also be deleted. 2021-09-13 18:03: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 3eeb7c27b8 Introducing the concept of flagging an automation as 'in test' which means it can run with triggers and everything as it normally would in development. 2021-09-10 14:37:34 +01:00
mike12345567 84cdec5907 Adding some basic test cases for the metadata API, testing that automation tests do store history. 2021-09-10 13:52:41 +01:00
mike12345567 a366ab80e1 Merge branch 'develop' of github.com:Budibase/budibase into feature/automation-rework 2021-09-09 16:33:41 +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
Andrew Kingston d371344d9b Fix test for loading component library 2021-09-07 10:05:24 +01:00
Andrew Kingston 3c3a69318f Remove some other reference to standard-components 2021-09-06 18:45:39 +01:00
Andrew Kingston d607f7b25b Merge branch 'develop' of github.com:Budibase/budibase into custom-theming 2021-09-06 17:29:51 +01:00
mike12345567 a3cffa8905 Getting rid of automation step download system. 2021-09-03 17:36:00 +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 047cd4ea88 Merge standard-components into the client library 2021-09-01 11:41:48 +01:00
Peter Clement 544dd4ef1d Merge remote-tracking branch 'origin/develop' into multi-option-datatype 2021-08-26 14:38:05 +01:00
Peter Clement 17438372d0 Add ability for user to select 'List' data type for a column 2021-08-19 16:54:44 +01:00
Martin McKeaveney a248084c56 budibase kubernetes support 2021-08-16 11:42:21 +01:00
mike12345567 a7ba02620d Linting. 2021-08-06 13:11:41 +01:00
mike12345567 bc84bab52c Merge branch 'master' of github.com:Budibase/budibase into develop 2021-08-06 13:04:54 +01:00
Martin McKeaveney c2e80b0b63 Merge branch 'master' of github.com:Budibase/budibase 2021-08-05 17:04:26 +01:00
Martin McKeaveney 0b3c04d71c lint 2021-08-05 16:57:23 +01:00
Martin McKeaveney 05ec5dc70c Merge pull request #2260 from Budibase/fix/views-2209
Formulas and relationships in views
2021-08-05 16:43:59 +01:00
Martin McKeaveney 02a99f32cb updating attachment relative path so it works in all envs 2021-08-05 16:40:39 +01:00
mike12345567 83462a0eee Fixing merge issues. 2021-08-05 10:52:34 +01:00
mike12345567 f8599e1352 Merge branch 'master' of github.com:Budibase/budibase into develop 2021-08-05 10:38:41 +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
Martin McKeaveney 10e8df1fe7 Update budibase CDN link 2021-08-04 19:56:51 +01:00
mike12345567 daed47a0a8 Fix #2209 - views, calculations and group by can't support formula or link fields, making sure these aren't options in the UI. Also fixing an issue where formula values were being saved to DB. 2021-08-04 15:22:41 +01:00
Michael Drury b86a6fddc9 Revert "Multi-tenancy/organisations" 2021-08-04 10:02:24 +01:00
mike12345567 e7974f7e86 Implementing some changes to how context gets set for tenancy, after testing, as well as updating server. 2021-08-03 15:32:25 +01:00
mike12345567 7743384f77 re-write, to use the ideas that Rory put in place, still WIP, un-tested but all implemented. 2021-08-02 18:34:43 +01:00
mike12345567 7588bfde39 Adjusting how redis modules are loaded, making sure client is always set, before init. 2021-07-23 16:53:22 +01:00
mike12345567 4160d63b2d Merge branch 'fix/lucene-filtering' of github.com:Budibase/budibase into feature/multi-tenants 2021-07-23 16:10:59 +01:00
mike12345567 fa3cf585d7 Adding concept of version to APIs. 2021-07-23 15:29:14 +01:00
mike12345567 27b2a13817 Swapping admin -> global in worker to reduce confusion in API url naming. 2021-07-22 12:56:47 +01:00
mike12345567 e56a0f5aa3 Fixing some tenancy issues. 2021-07-19 12:57:52 +01:00
mike12345567 f3156fca06 Further work, tenancy now working but some more work to be done. 2021-07-16 18:04:49 +01:00
mike12345567 912659a8ad First version of multi-tenancy, work still to be done. 2021-07-15 17:57:02 +01:00
Martin McKeaveney bebfe4c6e1 merge with master 2021-07-11 18:07:46 +01:00