Commit Graph

9 Commits

Author SHA1 Message Date
Rudraprasad Das
704e4735ad
chore: git api - adding new apis (#38681)
## Description
- Introduces new api contracts for git
- Adds feature flag `release_git_api_contracts_enabled`


Fixes https://github.com/appsmithorg/appsmith/issues/38500

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12810595516>
> Commit: 8f05bbfb0b9259c3ee40464099416b75688a4bd1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12810595516&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Thu, 16 Jan 2025 15:05:20 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Release Notes

- **New Features**
    - Introduced a new feature flag `release_git_api_contracts_enabled`
    - Added support for enhanced Git API contract handling

- **Improvements**
    - Updated type definitions for Git-related operations
    - Refined request and response handling for Git artifacts
    - Improved type safety for Git references and branches

- **Changes**
- Modified several Git-related request and saga functions to support new
API contracts
    - Updated artifact type enum values to use lowercase representations
    - Introduced new interfaces for Git references and branches

- **Technical Updates**
    - Added conditional logic for feature flag-based request processing
    - Restructured type definitions across multiple Git-related modules
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-01-21 11:19:18 +01:00
Rudraprasad Das
f6d7ce626f
chore: git mod - test fixes (#38357)
## Description
- Locator fixes for cy tests
- Missing saga for discard and merge
- New component for hot keys


Fixes https://github.com/appsmithorg/appsmith/issues/37821
Fixes https://github.com/appsmithorg/appsmith/issues/37822
Fixes https://github.com/appsmithorg/appsmith/issues/37824

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12649057943>
> Commit: 94c57d0a2398fca8e6cbb4be573586aa98dffbe1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12649057943&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Tue, 07 Jan 2025 10:42:55 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Release Notes

- **New Features**
- Added repository limit error modal to handle scenarios when repository
limits are reached.
  - Introduced Git hot keys for quick access to Git operations.
- Enhanced Git synchronization functionality with new merge and discard
change capabilities.
- Integrated feature flag handling in test suites for Git-related
functionalities.

- **Improvements**
  - Standardized test identifiers across Git-related components.
  - Refined Git modal interactions and state management.
  - Updated locator references for more consistent testing.
- Improved user feedback with success notifications for branch
deletions.

- **Bug Fixes**
  - Resolved issues with branch switching and URL handling.
  - Improved error handling in Git synchronization processes.

- **Testing**
  - Updated Cypress test suites with new feature flag interceptors.
  - Enhanced test coverage for Git operations and modal interactions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-01-07 12:30:42 +01:00
Rudraprasad Das
9ce2598e76
chore: git mod - integration with applications (#38439)
## Description
- Git mod integration with applications behind feature flag

Fixes #37815 
Fixes #37816 
Fixes #37817 
Fixes #37818 
Fixes #37819 
Fixes #37820 

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12570655268>
> Commit: 7d2f1a7013bc2fc6c960699ee0b6e06800cd21f9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12570655268&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 01 Jan 2025 14:35:46 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2025-01-05 11:21:23 +01:00
Rudraprasad Das
0eee667493
chore: revert - git mod - integration app (#38431) 2024-12-31 17:46:11 +05:30
Rudraprasad Das
692e394e73
chore: git mod - integration app (#38315)
## Description
- Git mod integration with applications behind feature flag

Fixes #37815 
Fixes #37816 
Fixes #37817 
Fixes #37818 
Fixes #37819 
Fixes #37820 


## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12526603607>
> Commit: 19f3ca0a35b16b25b2cff8700e2df4b2a497e7fe
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12526603607&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 28 Dec 2024 15:57:13 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

## Release Notes

- **New Features**
- Introduced various new hooks for Git functionalities, including
`useGitModEnabled`, `useGitCurrentBranch`, `useGitProtectedMode`, and
`useGitConnected`.
	- Added a new component `DeployButton` to manage deployment actions.
- Integrated `ConnectSuccessModal` to enhance user feedback upon
successful Git connection.
	- Added `GitImportModal` for improved Git import functionality.
- Introduced `GlobalProfileView` for managing and displaying user
profile information.
	- Added a new icon, `CloudIconV2`, to the icon provider.
- Implemented `fetchGlobalSSHKey` and `gitImport` sagas for better state
management.

- **Improvements**
- Enhanced handling of Git-related states and actions across multiple
components and sagas.
- Streamlined selector usage for determining preview mode by replacing
`combinedPreviewModeSelector` with `selectCombinedPreviewMode`.
- Updated the `DeployPreview` component to manage success feedback and
handle commit operations more effectively.
- Improved the `StatusChangesView` component by adding a callout for
migration messages.
	- Added new transformers for application status handling.

- **Bug Fixes**
- Updated error handling and loading states across various actions and
components to improve reliability.

- **Refactor**
- Refactored action creators to use `createArtifactAction` instead of
`createSingleArtifactAction` for consistency and clarity.
- Consolidated Git import and connection logic to improve modularity and
maintainability.
- Modified the `Header` component to utilize
`GitApplicationContextProvider` for managing Git-related state.
- Updated various components to utilize the new
`selectCombinedPreviewMode` selector for improved state management.
- Refactored the `DeployPreview` component to enhance its functionality
and styling consistency.
- Enhanced the `applicationStatusTransformer` to handle multiple status
transformations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-30 15:53:32 +05:30
Rudraprasad Das
e9ac154a57
chore: git mod - connect modal and branches (#38171)
## Description
- Connects connect modal to store
- Adds component for branch list

Fixes #37814
Fixes #37802 

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12376713895>
> Commit: 34d96b492e20118aa5d82bfa10b9f09315b2bc60
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12376713895&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Tue, 17 Dec 2024 16:59:28 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a `ConnectInitialize` component for Git provider
connections.
	- Added `ConnectSuccess` modal to display successful Git connections.
	- Implemented `ImportModal` for Git import functionality.
	- Added `LocalProfileView` for managing user profile settings.
- Introduced `BranchList` component for displaying and managing
branches.

- **Bug Fixes**
	- Enhanced error handling and state management in various components.

- **Refactor**
- Streamlined prop handling and state management in multiple components.
	- Updated action and selector names for clarity and consistency.

- **Tests**
- Expanded test coverage for new and modified components, ensuring
accurate behavior under various conditions.

- **Chores**
- Updated import paths and removed unused files to improve project
structure.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-23 16:33:17 +08:00
Rudraprasad Das
e2916b205a
chore: git mod - adding git ops modal (#38136)
## Description
- Adds git modal
- Adds pull saga
- Adds ability to commit
- Adds ability to merge
- Adds ability to see status
- Adds ability to discard
- Improves on saga error handling

Fixes #37826 
Fixes #37803 
Fixes #37804 
Fixes #37807

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12319147488>
> Commit: ec461fde26da90af2f365fb36f49e3758c14cb96
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12319147488&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Fri, 13 Dec 2024 17:27:36 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced new components for managing Git operations, including
`ConflictErrorView`, `OpsModal`, `TabDeploy`, `TabMerge`, and
`StatusChanges`.
- Added loading and error handling components such as `StatusLoader` and
`DiscardFailedError`.
- Enhanced the `StatusTree` component for displaying hierarchical status
changes.
- **Bug Fixes**
	- Improved error handling across various sagas and components.
- **Refactor**
	- Renamed several modal toggle functions for clarity and consistency.
	- Updated prop types for improved type safety in components.
- **Chores**
	- Removed unused component `GitTest`.
	- Updated imports and exports for better organization.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-14 01:29:26 +08:00
Rudraprasad Das
83db02032b
chore: git mod - git context & context aware comps (#38060)
## Description
- Adds GitContextProvider
- Adds more sagas
- Moved actions folder into store
- Minor restructuring of GitQuickActions


Fixes #36814 
Fixes #36812 
Fixes #36811 
Fixes #37805

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12271500398>
> Commit: e1eb35a6c4efab61735ccc55837bdbf5bb26ccfa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12271500398&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Wed, 11 Dec 2024 08:12:54 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new icon, `ProtectedIcon`, for enhanced visual
representation.
- Added a new component, `CtxAwareGitQuickActions`, for context-aware
Git operations.
- Implemented a new utility hook, `useStatusChangeCount`, to calculate
modified entity counts.
- Added a new component, `BranchList`, for displaying a list of
branches.
- Introduced the `GitQuickActions` component for managing various Git
actions in one interface.
- Added new actions for managing Git branch operations, including
checkout, creation, and deletion.
- Introduced new Redux sagas for handling Git operations, including
checkout, commit, and fetch branches.

- **Bug Fixes**
- Updated error handling for various Git-related actions to ensure
proper state management.

- **Documentation**
- Enhanced documentation for new components and hooks to improve
developer understanding.

- **Chores**
- Removed obsolete files and actions related to branch operations to
streamline the codebase.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-11 16:36:15 +08:00
Rudraprasad Das
82c077345c
chore: git mod - migrating sagas to git pkg (#38031)
## Description
- Migrates sagas to new git folder
- Introduces slice for git config


Fixes #36811 
Fixes #36814 

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12221200823>
> Commit: 488b3460793b13cc88effd0504a02a33797b4e3e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12221200823&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Sun, 08 Dec 2024 11:57:16 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Release Notes

- **New Features**
- Introduced new action creators for managing local profile data and
repository limit error modals.
- Added support for fetching and updating both global and local profile
information.
- Added new sagas for handling the fetching of branch data and local
profile updates.

- **Improvements**
  - Enhanced type safety across various actions and requests.
- Improved error handling for repository limit scenarios and added
structured error management for profile updates.
- Updated the Redux slice structure for better organization and clarity.

- **Bug Fixes**
  - Fixed issues related to loading and error states in action creators.

- **Chores**
- Removed outdated global configuration actions and requests to
streamline the codebase.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-11 13:31:56 +08:00