* n plus one checks
* tests passing with nplusone
* satisfy probably-wrong json schema
* remove useless comment and consolidate poetry dev deps
* not actually going to add this dependency, but leave docs for next guy
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* WIP: some initial test code to test out celery w/ burnettk
* some cleanup for celery and added base model to put tasks waiting on timers
* removed dup bpmn file
* some more cleanup and added strategy to queue instructions
* some minor code changes w/ burnettk
* remove the unused next_task key from api calls since nobody uses it w/ burnettk essweine
* added migration for future tasks and added test to make sure we are inserting into it w/ burnettk essweine
* ensure future task run at time can be updated w/ burnettk
* added table to queue instructions for end user in w/ burnettk
* added test to ensure we are storing instructions for end users w/ burnettk
* added progress page to display new instructions to user
* ignore dup instructions on db insert w/ burnettk
* some more updates for celery w/ burnettk
* some pyl and test fixes w/ burnettk
* fixed tests w/ burnettk
* WIP: added in page to show instructions on pi show page w/ burnettk
* pi show page is fully using not interstitial now w/ burnettk
* fixed broken test w/ burnettk
* moved background processing items to own module w/ burnettk
* fixed apscheduler start script
* updated celery task queue to handle future tasks and upgraded black and set its line-length to match ruff w/ burnettk
* added support to run future tasks using countdown w/ burnettk
* build image for celery branch w/ burnettk
* poet does not exist in the image w/ burnettk
* start blocking scheduler should always start the scheduler w/ burnettk
* add init and stuff for this branch
* make this work not just on my mac
* send other args to only
* added running status for process instance and use that on fe to go to show page and added additional identifier to locking system to isolate celery workers better w/ burnettk
* fixed typing error that typeguard found, not sure why mypy did not w/ burnettk
* do not check for no instructions on interstitial page for cypress tests on frontend w/ burnettk
* do not queue process instances twice w/ burnettk
* removed bad file w/ burnettk
* queue tasks using strings to avoid circular imports when attmepting to queue w/ burnettk
* only queue imminent new timer events and mock celery
* some keyboard shortcut support on frontend and added ability to force run a process instance over the api w/ burnettk
* some styles added for the shortcut menu w/ burnettk
* pyl w/ burnettk
* fixed test w/ burnettk
* removed temporary celery script and added support for celery worker in run server locally w/ burnettk
* cleaned up migrations w/ burnettk
* created new migration to clean up old migrations
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* reset to page 1 when status changes to fix#765 w/ jasquat
* upgrade connexion and werkzeug to fix snyk w/ jasquat
* fix all security issues like a boss w/ jasquat
* whoops, still no resolution for cryptography w/ jasquat
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* removed simple-crypt and cleaned up usage of keys for encryption w/ burnettk
* renamed var to SPIFFWORKFLOW_BACKEND_ENCRYPTION_KEY w/ burnettk
* pyl w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* WIP for error boundary support w/ burnettk
* updates to catch error boundary events and send them back out w/ burnettk
* fixed broken test w/ burnettk
* use connector-http and spiffworkflow-proxy from main w/ burnettk
* updated smtp and slack connectors in connector-proxy-demo w/ burnettk
* added more tests for the service task service call connector to test errors w/ burnettk
* added spiffworkflow-connector-command and some code clean up
* updated the connectors in the proxy demo
* use SpiffWorkflow from git instead of locally
* some cleanup while code reviewing
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* removed group service in favor of user service and messing around with ruff and pre-commeit w/ burnettk
* pyl can succeed now w/ burnettk
* removed debug code w/ burnettk
* pyl
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* some debug items w/ burnettk
* removed some db commits from workflow execution service so the passed in save is the only thing that actually commits the transaction
* set max depth to 50000 for now w/ burnettk
* pyl w/ burnettk
* use temp maxdepth fix in SpiffWorkflow w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* Switch to local wheel
* Fix to load the call activity by spec
* Added log
* Logging
* WIP - getting the right tasks it seems from the db, need to get into the workflow
* Clean up, revert things
* Working thanks dan
* Getting bin_pyl to pass
* run_pyl.
* Re-poet install
* Revert file
* Remove logging lines
* Getting bin_pyl to pass
* Clean up, revert things
* Bump wheel
* Use version off pypi
---------
Co-authored-by: danfunk <daniel.h.funk@gmail.com>
* Adding dependencies
* Disconnect from /v1/auths for auth list. hardcoded for now.
* Revert changes
* WIP
* Getting hardcoded v2 auths into the frontend
* Better url for v2 oauth
* Pass the auth token from the frontend, don't verify token to start the auth process
* Manually verify the token from the querystring
* WIP
* WIP
* WIP, refactor SPIFF_SECRET handling, move dependencies
* Construct remote_app
* WIP
* WIP
* WIP
* WIP
* Ugly but getting the grant screen
* WIP
* WIP
* Github oauth ok
* Verify token, save access token
* Let secret name work with regex
* Getting bin_pyl to pass
* New component
* Load up the current config in an editor
* Getting bin_pyl to pass
* End point to update auth config
* Linting
* Adding configuration model
* Adding configuration model
* Prep to read config from db
* Read config from the db
* Save/reload poor man's styling
* Getting bin_pyl to pass
* Getting bin_pyl to pass
* Getting bin_pyl to pass
* Better handling of invalid json
* Getting bin_pyl to pass
* attempt to use the locked version of SpiffWorkflow in ci w/ burnettk
* fixed regex for spiffworkflow revision replacement
* make sure we also update the lockfile when getting new spiff
* install poetry before we attempt to update hte pyproject
* hardcoding spiffworkflow revision as a test w/ burnettk
* try running tests in ci from bash script w/ burnettk
* print working dir in ci w/ burnettk
* fixed location of instance dir w/ burnettk
* run with mysql in ci
* run typeguard with bash script as well w/ burnettk
* fixed postgres test w/ burnettk
* clean up github action file w/ burnettk
* fixed postgres test again w/ burnettk
* pyl
* attempt to remove nox from ci completely
* omit safety for now to test coverage
* fixed how coverage is being called from not nox
* allow running safety and macos again
* renamed run_not_nox to run_ci_session w/ burnettk
* attempt to only upload if matrix says to w/ burnettk
* attempt to install mysqlclient prereqs for mac and remove noxfile stuff w/ burnettk
* added back the constraints file w/ burnettk
* moved the contributing file to the root of arena w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* return the process instance early from the interstitial if it is suspended or terminated
* added a test to make sure the interstitial page returns the process instance if suspended or termianted w/ burnettk
* randomize tests and cleaned up the pyproject file a little bit w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* throw an error if backend gives a 500 from interstitial page w/ burnettk
* turn unexpected errors for the interstitial page into event stream responses to avoid error misdirection
* pyl
* raise the api_error from the original and make the render_data method private
* Feature/interstitial summary (#337)
* * Process instance logs and messages are now components rather than pages, and are included within tabs on the process instance page, along with the diagram.
* Removed the Zoom and Move modules when showing the readonly
Diagram. Assured this readonly view is resized to fit the space when possible.
* Checkbox Widget no longer displays a duplicate label.
* CSS Tweaks
* All pages are limited to a max display width of 1440, with auto margins to center the main content on the page.
* "Show" pages, like ProcessInstanceShow, TaskShow have the primary content limited to 1000, also with auto-margins.
* Paragraphs, headings, blockquotes, list items are limited to a width of 640.
* Reduced margin bottom on all breadcrumbs.
* Slightly reduced the width and margin of tiles
* ordered lists and unordered lists show numbers and bullets now.
* End user Instructions component can, optionally, auto-collapse, so that only a portion is displayed, along with a toggle. This is how it is set up for the ProcessInstanceShow page.
* Greatly reduced the lag in the interstitial page when doing a re-direct.
* run_pyl
* kill console
* wait for permissionsLoaded too since we are using ability.can
* Previous change removed the top level Messages page - this re-adds it.
* I am always, ALWAYS shocked at how I can not wrap my head around when and where to use "useEffect".
This should cause the show/hide Instructions toggle to only show when useful.
* Minor cleanup on the process instance properties display.
* linting
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* Fix a linting error.
* minor permissions related fixes for the new ui.
* Revert "Revert "Feature/better subworkflow management (#331)""
This reverts commit 48dcde8faf.
* do not execute tasks from the process instance show page w/ burnettk
* pyl w/ burnettk
* Very minor UI tweak to resolve a number of issues mentioned in SPIFF-316 Notion Ticket:
* Markdown links now open in a new window
* Tables on the home pages are now contained within Grids to better align them with the other content that is in a grid.
* Right aligned the "process instance list link" button to it is flush right with the table underneath
* Gave a little more breathing room the content on the info/metadata in the process instance view .
* updated docker image build action to contain the appropriate version info w/ burnettk
* properly resize to the available columns depending on s/m/l
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Dan Funk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* parallel tests with xdist
* add pytest-xdist as dev dep
* put back spiff
* update messaging
* get more in line with main
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* WIP: some updates to support new spiff w/ burnettk
* unit tests are passing
* all tests except message tests are passing
* fixed usage of catch message event w/ burnettk
* messages are working again w/ burnettk
* uncommented remaining message tests w/ burnettk
* fixed cypress tests w/ burnettk
* use main for spiffworkflow
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* Bump flask for safety
* let snyk check flask again w/ burnettk
* attempt to use the same revision for front w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>