Replaced status checks with a call to `CanTransitionTo` for determining if a workflow can transition to the "Cancelled" state. This improves code readability and maintains consistent transition validation logic.
This commit deletes all alteration-related models and the `IAlteration` interface in favor of using `JsonObject`. Adjustments were made to `AlterationPlan`, `AlterationPlanParams`, and `RunRequest` to replace `IAlteration` collections with `JsonObject`. Simplified the `RefitSettingsHelper` by eliminating polymorphism configuration for alterations.
Introduced a new `Cancel` alteration type with its corresponding handler to allow workflow instance cancellations in alteration plans. Updated related services, serialization configurations, and activity metadata to support the new type. Improved JSON polymorphism handling to include the `Cancel` type.
Introduced new filtering capabilities such as `Names`, `Statuses`, `SubStatuses`, and `SearchTerm` for workflow instance filters. Simplified object initialization syntax and removed unnecessary attributes, improving code readability. Added missing dependencies and API service registrations to ensure completeness.
Introduce `[Obsolete]` ExecuteAsync overloads in job classes to support legacy calls while encouraging migration to preferred methods. `[UsedImplicitly]` annotations ensure these methods are retained for compatibility.
Updated the base_version to 3.4.0 to align with the latest release. Adjusted the branch matching logic to use 'origin/main' instead of the specific 'origin/patch/3.3.2' to improve maintainability and adaptability.
Updated null checks for job types in Hangfire extensions to prevent potential runtime errors. Added Hangfire's `AutomaticRetry` attribute to RunWorkflowJob and ResumeWorkflowJob to configure retry behavior. Simplified object initialization in WorkflowDefinitions List endpoint.
Replaces the hardcoded branch reference `patch/3.3.2-rc2` with `patch/3.3.2` to align with the proper naming convention. This ensures the workflow correctly identifies the intended branch during release events.
Replaced 'origin/main' with 'origin/patch/3.3.2-rc2' in the workflow's branch filter. This ensures the release process targets the correct branch during specific GitHub events.
Included 'patch/*' as a trigger for the GitHub Actions workflow to ensure automated processes cover patch branches. This aligns with the existing structure for branch-specific workflows.
This change updates job scheduling and execution methods to include a taskName parameter. It ensures a unique identifier is passed for each job, improving tracking and consistency in job handling. Additionally, documentation comments were updated to reflect this new parameter.
Refactored Hangfire-related services and jobs to include tenant context management using ITenantAccessor and ITenantFinder. Updated job constructors and method signatures to support tenant-specific execution. Improved exception-throwing syntax for better readability in BackgroundActivityInvoker.
Introduced logic to handle type aliases more accurately for arrays and collections. Enhanced the final type alias determination by accommodating cases where type aliases are present. Cleaned up unnecessary whitespace for better code readability.
Enhanced type handling by distinguishing arrays, collections, and single types. Added support for "isCollection" metadata and adjusted serialization/deserialization logic to ensure accurate mapping of element types and aliases. This improves clarity and flexibility in JSON representation.
Moved Oracle setup scripts to a more intuitive directory (`docker/setup`) and updated corresponding volume mappings in `docker-compose.yml`. Adjusted `.gitignore` to exclude the new `docker/data/` directory. This change improves organization and clarity for Oracle-related files.
The migration files `20250131185451_V3_3_2` and related metadata were removed from the project configuration. This cleanup ensures the project references only necessary and relevant resources.
Revised database initialization scripts to better handle Postgres and Oracle environments, introduced schema-specific configurations for Oracle EFCore, and cleaned up obsolete or redundant entity model setup. Streamlined project structure by relocating and renaming files for SQLite and Oracle EFCore setups, improving maintainability and readability.
Added configuration to suppress EF Core PendingModelChangesWarning for better compatibility with newer .NET versions. Updated Oracle connection string to use "localhost" for consistency and clarity in appsettings.json.
This commit introduces Oracle database integration by adding necessary configurations, entity mappings, and Docker Compose setup. Oracle-specific mappings ensure compatibility with NCLOB for large data handling. The changes also include updates to appsettings, enum for SqlDatabaseProvider, and project references to support Oracle.
Extended test data in `LoopingWorkflow` to include a third item, "Item 3". Updated assertions in `Tests.cs` to validate the new expected output for the additional item.