@gitkraken/core-gitlens 0.5.110 → 0.5.112
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -1
- package/dist/git/cache.d.ts +111 -6
- package/dist/git/cache.d.ts.map +1 -1
- package/dist/git/cache.js +312 -43
- package/dist/git/cache.js.map +1 -1
- package/dist/git/context.d.ts +11 -0
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/context.js.map +1 -1
- package/dist/git/models/fileStatus.d.ts +1 -0
- package/dist/git/models/fileStatus.d.ts.map +1 -1
- package/dist/git/models/fileStatus.js +1 -0
- package/dist/git/models/fileStatus.js.map +1 -1
- package/dist/git/models/issue.d.ts +4 -0
- package/dist/git/models/issue.d.ts.map +1 -1
- package/dist/git/models/mergeConflicts.d.ts +2 -0
- package/dist/git/models/mergeConflicts.d.ts.map +1 -1
- package/dist/git/models/pullRequest.d.ts +38 -2
- package/dist/git/models/pullRequest.d.ts.map +1 -1
- package/dist/git/models/pullRequest.js +12 -1
- package/dist/git/models/pullRequest.js.map +1 -1
- package/dist/git/models/repository.d.ts +32 -5
- package/dist/git/models/repository.d.ts.map +1 -1
- package/dist/git/models/repository.js +58 -12
- package/dist/git/models/repository.js.map +1 -1
- package/dist/git/models/statusFile.d.ts.map +1 -1
- package/dist/git/models/statusFile.js +3 -0
- package/dist/git/models/statusFile.js.map +1 -1
- package/dist/git/providers/branches.d.ts +2 -0
- package/dist/git/providers/branches.d.ts.map +1 -1
- package/dist/git/providers/commits.d.ts +8 -0
- package/dist/git/providers/commits.d.ts.map +1 -1
- package/dist/git/providers/config.d.ts +19 -1
- package/dist/git/providers/config.d.ts.map +1 -1
- package/dist/git/providers/operations.d.ts +1 -0
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/pausedOperations.d.ts +2 -0
- package/dist/git/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git/providers/status.d.ts +1 -0
- package/dist/git/providers/status.d.ts.map +1 -1
- package/dist/git/utils/config.utils.d.ts +3 -0
- package/dist/git/utils/config.utils.d.ts.map +1 -0
- package/dist/git/utils/config.utils.js +8 -0
- package/dist/git/utils/config.utils.js.map +1 -0
- package/dist/git/utils/issue.utils.d.ts.map +1 -1
- package/dist/git/utils/issue.utils.js +2 -0
- package/dist/git/utils/issue.utils.js.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.d.ts +14 -0
- package/dist/git/utils/pausedOperationStatus.utils.d.ts.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.js +23 -0
- package/dist/git/utils/pausedOperationStatus.utils.js.map +1 -1
- package/dist/git/utils/pullRequest.utils.d.ts +14 -1
- package/dist/git/utils/pullRequest.utils.d.ts.map +1 -1
- package/dist/git/utils/pullRequest.utils.js +31 -0
- package/dist/git/utils/pullRequest.utils.js.map +1 -1
- package/dist/git/watching/changeEvent.d.ts +6 -1
- package/dist/git/watching/changeEvent.d.ts.map +1 -1
- package/dist/git/watching/classifyChange.d.ts.map +1 -1
- package/dist/git/watching/classifyChange.js +14 -1
- package/dist/git/watching/classifyChange.js.map +1 -1
- package/dist/git/watching/watchService.d.ts.map +1 -1
- package/dist/git/watching/watchService.js +18 -3
- package/dist/git/watching/watchService.js.map +1 -1
- package/dist/git/watching/watchSession.d.ts +8 -1
- package/dist/git/watching/watchSession.d.ts.map +1 -1
- package/dist/git/watching/watchSession.js +38 -6
- package/dist/git/watching/watchSession.js.map +1 -1
- package/dist/git/watching/watcherPatterns.d.ts +2 -2
- package/dist/git/watching/watcherPatterns.d.ts.map +1 -1
- package/dist/git/watching/watcherPatterns.js +1 -1
- package/dist/git/watching/watcherPatterns.js.map +1 -1
- package/dist/git-cli/exec/git.d.ts +1 -1
- package/dist/git-cli/exec/git.d.ts.map +1 -1
- package/dist/git-cli/exec/git.js +13 -3
- package/dist/git-cli/exec/git.js.map +1 -1
- package/dist/git-cli/providers/branches.d.ts +19 -0
- package/dist/git-cli/providers/branches.d.ts.map +1 -1
- package/dist/git-cli/providers/branches.js +282 -78
- package/dist/git-cli/providers/branches.js.map +1 -1
- package/dist/git-cli/providers/commits.d.ts +4 -0
- package/dist/git-cli/providers/commits.d.ts.map +1 -1
- package/dist/git-cli/providers/commits.js +84 -11
- package/dist/git-cli/providers/commits.js.map +1 -1
- package/dist/git-cli/providers/config.d.ts +42 -0
- package/dist/git-cli/providers/config.d.ts.map +1 -1
- package/dist/git-cli/providers/config.js +186 -5
- package/dist/git-cli/providers/config.js.map +1 -1
- package/dist/git-cli/providers/contributors.d.ts.map +1 -1
- package/dist/git-cli/providers/contributors.js +1 -1
- package/dist/git-cli/providers/contributors.js.map +1 -1
- package/dist/git-cli/providers/graph.d.ts +2 -2
- package/dist/git-cli/providers/graph.d.ts.map +1 -1
- package/dist/git-cli/providers/graph.js +27 -9
- package/dist/git-cli/providers/graph.js.map +1 -1
- package/dist/git-cli/providers/operations.d.ts.map +1 -1
- package/dist/git-cli/providers/operations.js +40 -12
- package/dist/git-cli/providers/operations.js.map +1 -1
- package/dist/git-cli/providers/pausedOperations.d.ts +5 -0
- package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git-cli/providers/pausedOperations.js +87 -16
- package/dist/git-cli/providers/pausedOperations.js.map +1 -1
- package/dist/git-cli/providers/refs.d.ts +5 -3
- package/dist/git-cli/providers/refs.d.ts.map +1 -1
- package/dist/git-cli/providers/refs.js +33 -4
- package/dist/git-cli/providers/refs.js.map +1 -1
- package/dist/git-cli/providers/status.d.ts +1 -0
- package/dist/git-cli/providers/status.d.ts.map +1 -1
- package/dist/git-cli/providers/status.js +18 -3
- package/dist/git-cli/providers/status.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +4 -0
- package/dist/git-cli/providers/worktrees.js.map +1 -1
- package/dist/git-cli/service.d.ts.map +1 -1
- package/dist/git-cli/service.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts +39 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.js +978 -71
- package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts +24 -2
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.js +84 -9
- package/dist/plus/agents/providers/claudeCodeTranscript.js.map +1 -1
- package/dist/plus/agents/types.d.ts +37 -2
- package/dist/plus/agents/types.d.ts.map +1 -1
- package/dist/plus/agents/types.js +2 -0
- package/dist/plus/agents/types.js.map +1 -1
- package/dist/plus/ai/errors.d.ts +10 -0
- package/dist/plus/ai/errors.d.ts.map +1 -1
- package/dist/plus/ai/errors.js +29 -0
- package/dist/plus/ai/errors.js.map +1 -1
- package/dist/plus/ai/models/model.d.ts +4 -0
- package/dist/plus/ai/models/model.d.ts.map +1 -1
- package/dist/plus/ai/models/model.js +51 -6
- package/dist/plus/ai/models/model.js.map +1 -1
- package/dist/plus/ai/models/promptTemplates.d.ts +1 -1
- package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -1
- package/dist/plus/ai/models/provider.d.ts +60 -2
- package/dist/plus/ai/models/provider.d.ts.map +1 -1
- package/dist/plus/ai/prompts.d.ts +12 -0
- package/dist/plus/ai/prompts.d.ts.map +1 -1
- package/dist/plus/ai/prompts.js +177 -61
- package/dist/plus/ai/prompts.js.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.d.ts +10 -2
- package/dist/plus/ai/providers/anthropicProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.js +139 -46
- package/dist/plus/ai/providers/anthropicProvider.js.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.d.ts +2 -0
- package/dist/plus/ai/providers/deepSeekProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.js +10 -21
- package/dist/plus/ai/providers/deepSeekProvider.js.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/geminiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.js +19 -0
- package/dist/plus/ai/providers/geminiProvider.js.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts +5 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js +118 -3
- package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts +1 -0
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.js +5 -0
- package/dist/plus/ai/providers/huggingFaceProvider.js.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.d.ts +3 -1
- package/dist/plus/ai/providers/mistralProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.js +99 -19
- package/dist/plus/ai/providers/mistralProvider.js.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.d.ts +4 -3
- package/dist/plus/ai/providers/ollamaProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.js +38 -3
- package/dist/plus/ai/providers/ollamaProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.d.ts +1 -0
- package/dist/plus/ai/providers/openAICompatibleProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.js +4 -0
- package/dist/plus/ai/providers/openAICompatibleProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +154 -5
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js +259 -10
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.d.ts +4 -0
- package/dist/plus/ai/providers/openRouterProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.js +9 -0
- package/dist/plus/ai/providers/openRouterProvider.js.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/openaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.js +1 -0
- package/dist/plus/ai/providers/openaiProvider.js.map +1 -1
- package/dist/plus/ai/providers/responseFormatCache.d.ts +8 -0
- package/dist/plus/ai/providers/responseFormatCache.d.ts.map +1 -0
- package/dist/plus/ai/providers/responseFormatCache.js +25 -0
- package/dist/plus/ai/providers/responseFormatCache.js.map +1 -0
- package/dist/plus/ai/providers/xaiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/xaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/xaiProvider.js +10 -1
- package/dist/plus/ai/providers/xaiProvider.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.d.ts +3 -0
- package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +13 -0
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/ai/utils/results.utils.d.ts +16 -2
- package/dist/plus/ai/utils/results.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/results.utils.js +204 -28
- package/dist/plus/ai/utils/results.utils.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +55 -0
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +177 -4
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/git-github/models.d.ts +16 -0
- package/dist/plus/git-github/models.d.ts.map +1 -1
- package/dist/plus/git-github/models.js +29 -3
- package/dist/plus/git-github/models.js.map +1 -1
- package/dist/plus/git-github/providers/github/status.d.ts +1 -0
- package/dist/plus/git-github/providers/github/status.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/status.js.map +1 -1
- package/dist/plus/integrations/context.d.ts +4 -0
- package/dist/plus/integrations/context.d.ts.map +1 -1
- package/dist/plus/integrations/index.d.ts.map +1 -1
- package/dist/plus/integrations/index.js +2 -0
- package/dist/plus/integrations/index.js.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +6 -3
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.js +12 -2
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -1
- package/dist/plus/integrations/models/integration.d.ts +3 -1
- package/dist/plus/integrations/models/integration.d.ts.map +1 -1
- package/dist/plus/integrations/models/integration.js +2 -2
- package/dist/plus/integrations/models/integration.js.map +1 -1
- package/dist/plus/integrations/providers/accounts.d.ts.map +1 -1
- package/dist/plus/integrations/providers/accounts.js +4 -0
- package/dist/plus/integrations/providers/accounts.js.map +1 -1
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/azure/models.js +3 -0
- package/dist/plus/integrations/providers/azure/models.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.js +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -1
- package/dist/plus/integrations/providers/github.d.ts +14 -2
- package/dist/plus/integrations/providers/github.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github.js +55 -3
- package/dist/plus/integrations/providers/github.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab.js.map +1 -1
- package/dist/plus/integrations/providers/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/models.js +30 -4
- package/dist/plus/integrations/providers/models.js.map +1 -1
- package/dist/plus/integrations/reads/broaden.d.ts.map +1 -1
- package/dist/plus/integrations/reads/broaden.js +6 -1
- package/dist/plus/integrations/reads/broaden.js.map +1 -1
- package/dist/plus/integrations/reads/drains.d.ts.map +1 -1
- package/dist/plus/integrations/reads/drains.js +7 -4
- package/dist/plus/integrations/reads/drains.js.map +1 -1
- package/dist/plus/integrations/reads/hierarchy.d.ts.map +1 -1
- package/dist/plus/integrations/reads/hierarchy.js +3 -1
- package/dist/plus/integrations/reads/hierarchy.js.map +1 -1
- package/dist/plus/integrations/reads/issueTracker.d.ts.map +1 -1
- package/dist/plus/integrations/reads/issueTracker.js +8 -3
- package/dist/plus/integrations/reads/issueTracker.js.map +1 -1
- package/dist/plus/integrations/reads/issues.d.ts.map +1 -1
- package/dist/plus/integrations/reads/issues.js +9 -4
- package/dist/plus/integrations/reads/issues.js.map +1 -1
- package/dist/plus/integrations/reads/pullRequests.d.ts.map +1 -1
- package/dist/plus/integrations/reads/pullRequests.js +9 -4
- package/dist/plus/integrations/reads/pullRequests.js.map +1 -1
- package/dist/utils/env/browser/base64.d.ts +1 -1
- package/dist/utils/env/browser/base64.d.ts.map +1 -1
- package/dist/utils/env/node/base64.d.ts +1 -1
- package/dist/utils/env/node/base64.d.ts.map +1 -1
- package/dist/utils/env/node/base64.js +2 -0
- package/dist/utils/env/node/base64.js.map +1 -1
- package/dist/utils/keys/chord.d.ts +52 -0
- package/dist/utils/keys/chord.d.ts.map +1 -0
- package/dist/utils/keys/chord.js +135 -0
- package/dist/utils/keys/chord.js.map +1 -0
- package/dist/utils/keys/keybinding.d.ts +53 -0
- package/dist/utils/keys/keybinding.d.ts.map +1 -0
- package/dist/utils/keys/keybinding.js +58 -0
- package/dist/utils/keys/keybinding.js.map +1 -0
- package/dist/utils/path.d.ts +11 -0
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/path.js +13 -0
- package/dist/utils/path.js.map +1 -1
- package/package.json +13 -5
- package/src/git/cache.ts +383 -47
- package/src/git/context.ts +11 -0
- package/src/git/models/fileStatus.ts +1 -0
- package/src/git/models/issue.ts +4 -0
- package/src/git/models/mergeConflicts.ts +3 -2
- package/src/git/models/pullRequest.ts +33 -1
- package/src/git/models/repository.ts +58 -17
- package/src/git/models/statusFile.ts +3 -0
- package/src/git/providers/branches.ts +6 -0
- package/src/git/providers/commits.ts +11 -0
- package/src/git/providers/config.ts +18 -0
- package/src/git/providers/operations.ts +1 -0
- package/src/git/providers/pausedOperations.ts +2 -0
- package/src/git/providers/status.ts +1 -0
- package/src/git/utils/config.utils.ts +8 -0
- package/src/git/utils/issue.utils.ts +2 -0
- package/src/git/utils/pausedOperationStatus.utils.ts +28 -0
- package/src/git/utils/pullRequest.utils.ts +36 -0
- package/src/git/watching/changeEvent.ts +6 -1
- package/src/git/watching/classifyChange.ts +15 -1
- package/src/git/watching/watchService.ts +20 -3
- package/src/git/watching/watchSession.ts +41 -6
- package/src/git/watching/watcherPatterns.ts +1 -1
- package/src/git-cli/exec/git.ts +13 -3
- package/src/git-cli/providers/branches.ts +384 -132
- package/src/git-cli/providers/commits.ts +106 -15
- package/src/git-cli/providers/config.ts +229 -8
- package/src/git-cli/providers/contributors.ts +5 -1
- package/src/git-cli/providers/graph.ts +26 -13
- package/src/git-cli/providers/operations.ts +45 -20
- package/src/git-cli/providers/pausedOperations.ts +109 -17
- package/src/git-cli/providers/refs.ts +33 -3
- package/src/git-cli/providers/status.ts +25 -4
- package/src/git-cli/providers/worktrees.ts +5 -0
- package/src/git-cli/service.ts +0 -1
- package/src/plus/agents/providers/claudeCodeProvider.ts +1130 -87
- package/src/plus/agents/providers/claudeCodeTranscript.ts +95 -9
- package/src/plus/agents/types.ts +46 -2
- package/src/plus/ai/errors.ts +30 -0
- package/src/plus/ai/models/model.ts +56 -6
- package/src/plus/ai/models/promptTemplates.ts +1 -1
- package/src/plus/ai/models/provider.ts +69 -2
- package/src/plus/ai/prompts.ts +186 -61
- package/src/plus/ai/providers/anthropicProvider.ts +155 -47
- package/src/plus/ai/providers/deepSeekProvider.ts +11 -21
- package/src/plus/ai/providers/geminiProvider.ts +19 -0
- package/src/plus/ai/providers/gitkrakenProvider.ts +126 -3
- package/src/plus/ai/providers/huggingFaceProvider.ts +6 -0
- package/src/plus/ai/providers/mistralProvider.ts +102 -19
- package/src/plus/ai/providers/ollamaProvider.ts +55 -4
- package/src/plus/ai/providers/openAICompatibleProvider.ts +5 -0
- package/src/plus/ai/providers/openAICompatibleProviderBase.ts +360 -17
- package/src/plus/ai/providers/openRouterProvider.ts +17 -0
- package/src/plus/ai/providers/openaiProvider.ts +1 -0
- package/src/plus/ai/providers/responseFormatCache.ts +39 -0
- package/src/plus/ai/providers/xaiProvider.ts +10 -1
- package/src/plus/ai/utils/ai.utils.ts +14 -0
- package/src/plus/ai/utils/results.utils.ts +255 -31
- package/src/plus/git-github/api/github.ts +291 -7
- package/src/plus/git-github/models.ts +48 -2
- package/src/plus/git-github/providers/github/status.ts +1 -0
- package/src/plus/integrations/context.ts +4 -0
- package/src/plus/integrations/index.ts +2 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +25 -2
- package/src/plus/integrations/models/integration.ts +23 -13
- package/src/plus/integrations/providers/accounts.ts +4 -0
- package/src/plus/integrations/providers/azure/models.ts +3 -0
- package/src/plus/integrations/providers/bitbucket/models.ts +1 -0
- package/src/plus/integrations/providers/github.ts +85 -1
- package/src/plus/integrations/providers/gitlab.ts +2 -10
- package/src/plus/integrations/providers/models.ts +36 -4
- package/src/plus/integrations/reads/broaden.ts +6 -1
- package/src/plus/integrations/reads/drains.ts +7 -4
- package/src/plus/integrations/reads/hierarchy.ts +3 -1
- package/src/plus/integrations/reads/issueTracker.ts +9 -3
- package/src/plus/integrations/reads/issues.ts +9 -4
- package/src/plus/integrations/reads/pullRequests.ts +9 -4
- package/src/utils/env/browser/base64.ts +1 -1
- package/src/utils/env/node/base64.ts +3 -1
- package/src/utils/keys/chord.ts +184 -0
- package/src/utils/keys/keybinding.ts +116 -0
- package/src/utils/path.ts +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pausedOperationStatus.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAgC;IACtE,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IACzF,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAgC;IACrE,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC;IACnE,OAAO,MAAM,CAAC,OAAO,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,MAAM,kCAAkC,GAAG;IACjD,aAAa,EAAE;QACd,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,8CAA8C;QACzD,cAAc,EAAE,MAAM;KACtB;IACD,KAAK,EAAE;QACN,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,uCAAuC;QAClD,cAAc,EAAE,MAAM;KACtB;IACD,MAAM,EAAE;QACP,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,wCAAwC;QACnD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,mBAAmB;KAC5B;IACD,MAAM,EAAE;QACP,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,yCAAyC;QACpD,cAAc,EAAE,IAAI;KACpB;CACQ,CAAC;
|
|
1
|
+
{"version":3,"file":"pausedOperationStatus.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
import type { PullRequest, PullRequestComparisonRefs, PullRequestRefs, PullRequestRepositoryIdentityDescriptor, PullRequestShape, PullRequestSorting } from '../models/pullRequest.js';
|
|
1
|
+
import type { PullRequest, PullRequestComparisonRefs, PullRequestRefs, PullRequestRepositoryIdentityDescriptor, PullRequestShape, PullRequestSorting, PullRequestStackInfo } from '../models/pullRequest.js';
|
|
2
|
+
/** How many pull requests a merge action affects — unstacked is always 1; a stacked merge lands either
|
|
3
|
+
* just this layer and everything below it (`position`), or the whole stack (`wholeStack`). The one
|
|
4
|
+
* source every merge-confirmation and merge-action label counts from, so they can't drift apart.
|
|
5
|
+
* Takes only the two fields it needs (not the full {@link PullRequestStackInfo}) since callers on the
|
|
6
|
+
* webview side carry narrower serialized stack shapes. */
|
|
7
|
+
export declare function getStackedMergeCount(stack: Pick<PullRequestStackInfo, 'position' | 'size'> | undefined, options?: {
|
|
8
|
+
wholeStack?: boolean;
|
|
9
|
+
}): number;
|
|
2
10
|
/**
|
|
3
11
|
* A comparator for one sort key over normalized pull requests, or `undefined` when the field isn't derivable
|
|
4
12
|
* from a {@link PullRequestShape} — the signal that the key is only honorable on a SINGLE-origin read where the
|
|
@@ -16,6 +24,11 @@ export interface PullRequestUrlIdentity<TProvider extends string = string> {
|
|
|
16
24
|
}
|
|
17
25
|
export declare function getComparisonRefsForPullRequest(repoPath: string, prRefs: PullRequestRefs): PullRequestComparisonRefs;
|
|
18
26
|
export declare function getPullRequestIdentityFromMaybeUrl(search: string): PullRequestUrlIdentity | undefined;
|
|
27
|
+
/** A pull request's display number from its url, or `undefined` for a url naming no pull request. Anchors
|
|
28
|
+
* on the provider's pull request path segment (GitHub `pull`, Bitbucket `pull-requests`, GitLab
|
|
29
|
+
* `merge_requests`, Azure `pullrequest`) so a digit-leading owner (`github.com/1Password/x/pull/123`)
|
|
30
|
+
* can't win. */
|
|
31
|
+
export declare function getPullRequestNumberFromUrl(url: string): string | undefined;
|
|
19
32
|
export declare function getRepositoryIdentityForPullRequest(pr: PullRequest, headRepo?: boolean): PullRequestRepositoryIdentityDescriptor;
|
|
20
33
|
export declare function isMaybeNonSpecificPullRequestSearchUrl(search: string): boolean;
|
|
21
34
|
export declare function serializePullRequest(value: PullRequest): PullRequestShape;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pullRequest.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,uCAAuC,EACvC,gBAAgB,EAEhB,kBAAkB,EAClB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"pullRequest.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,uCAAuC,EACvC,gBAAgB,EAEhB,kBAAkB,EAClB,oBAAoB,EACpB,MAAM,0BAA0B,CAAC;AAGlC;;;;2DAI2D;AAC3D,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,EAClE,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,MAAM,CAGR;AAeD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACvC,IAAI,EAAE,kBAAkB,GACtB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC,GAAG,SAAS,CAiBpE;AAMD,MAAM,WAAW,sBAAsB,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM;IACxE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,yBAAyB,CAOpH;AAED,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS,CAgBrG;AAED;;;iBAGiB;AACjB,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAM3E;AAED,wBAAgB,mCAAmC,CAClD,EAAE,EAAE,WAAW,EACf,QAAQ,GAAE,OAAc,GACtB,uCAAuC,CA+BzC;AAED,wBAAgB,sCAAsC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE9E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAqFzE"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { shortenRevision } from './revision.utils.js';
|
|
2
|
+
/** How many pull requests a merge action affects — unstacked is always 1; a stacked merge lands either
|
|
3
|
+
* just this layer and everything below it (`position`), or the whole stack (`wholeStack`). The one
|
|
4
|
+
* source every merge-confirmation and merge-action label counts from, so they can't drift apart.
|
|
5
|
+
* Takes only the two fields it needs (not the full {@link PullRequestStackInfo}) since callers on the
|
|
6
|
+
* webview side carry narrower serialized stack shapes. */
|
|
7
|
+
export function getStackedMergeCount(stack, options) {
|
|
8
|
+
if (stack == null)
|
|
9
|
+
return 1;
|
|
10
|
+
return options?.wholeStack ? stack.size : stack.position;
|
|
11
|
+
}
|
|
2
12
|
/**
|
|
3
13
|
* How each sort field is read off a {@link PullRequestShape}, for the filtered PR search, which MERGES its
|
|
4
14
|
* relationship × state facets in the facade and so has to order the union itself instead of trusting the
|
|
@@ -60,6 +70,17 @@ export function getPullRequestIdentityFromMaybeUrl(search) {
|
|
|
60
70
|
}
|
|
61
71
|
return prNumber == null ? undefined : { ownerAndRepo: undefined, prNumber: prNumber, provider: undefined };
|
|
62
72
|
}
|
|
73
|
+
/** A pull request's display number from its url, or `undefined` for a url naming no pull request. Anchors
|
|
74
|
+
* on the provider's pull request path segment (GitHub `pull`, Bitbucket `pull-requests`, GitLab
|
|
75
|
+
* `merge_requests`, Azure `pullrequest`) so a digit-leading owner (`github.com/1Password/x/pull/123`)
|
|
76
|
+
* can't win. */
|
|
77
|
+
export function getPullRequestNumberFromUrl(url) {
|
|
78
|
+
// No loose fallback: `getPullRequestIdentityFromMaybeUrl` scans for any `/<digits>`, which reads a bare
|
|
79
|
+
// repository url like `github.com/1Password/sdk` as pull request #1. Callers that hold a real pull
|
|
80
|
+
// request fall back to its id instead, and the one that asks whether a pasted url names a pull request
|
|
81
|
+
// needs "no" for an answer.
|
|
82
|
+
return url.match(/(?:pull|pull-requests|merge_requests|pullrequest)\/(\d+)(?:\b|\/|$)/)?.[1];
|
|
83
|
+
}
|
|
63
84
|
export function getRepositoryIdentityForPullRequest(pr, headRepo = true) {
|
|
64
85
|
if (headRepo) {
|
|
65
86
|
return {
|
|
@@ -116,6 +137,7 @@ export function serializePullRequest(value) {
|
|
|
116
137
|
author: {
|
|
117
138
|
id: value.author.id,
|
|
118
139
|
name: value.author.name,
|
|
140
|
+
username: value.author.username,
|
|
119
141
|
avatarUrl: value.author.avatarUrl,
|
|
120
142
|
url: value.author.url,
|
|
121
143
|
},
|
|
@@ -167,6 +189,15 @@ export function serializePullRequest(value) {
|
|
|
167
189
|
resourceName: value.project.resourceName,
|
|
168
190
|
}
|
|
169
191
|
: undefined,
|
|
192
|
+
stack: value.stack
|
|
193
|
+
? {
|
|
194
|
+
id: value.stack.id,
|
|
195
|
+
number: value.stack.number,
|
|
196
|
+
size: value.stack.size,
|
|
197
|
+
position: value.stack.position,
|
|
198
|
+
baseRef: value.stack.baseRef,
|
|
199
|
+
}
|
|
200
|
+
: undefined,
|
|
170
201
|
};
|
|
171
202
|
return serialized;
|
|
172
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pullRequest.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pullRequest.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,12 @@ export declare class WatcherRepoChangeEvent {
|
|
|
41
41
|
*/
|
|
42
42
|
export interface WorkingTreeChangeEvent {
|
|
43
43
|
readonly repoPath: string;
|
|
44
|
-
/** Absolute paths of changed files (post-gitignore filtering) */
|
|
44
|
+
/** Absolute paths of changed files (post-gitignore filtering). Partial when {@link incomplete}. */
|
|
45
45
|
readonly paths: ReadonlySet<string>;
|
|
46
|
+
/**
|
|
47
|
+
* `true` when more paths changed than the accumulator retains, so {@link paths} is a partial set and a
|
|
48
|
+
* miss does NOT mean the file is unchanged. Consumers testing membership must treat this as a match.
|
|
49
|
+
*/
|
|
50
|
+
readonly incomplete: boolean;
|
|
46
51
|
}
|
|
47
52
|
//# sourceMappingURL=changeEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changeEvent.d.ts","sourceRoot":"","sources":["../../../src/git/watching/changeEvent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,qBAAa,sBAAsB;IAIjC,4CAA4C;aAC5B,QAAQ,EAAE,MAAM;IAJjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEnD;IACC,4CAA4C;IAC5B,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,gBAAgB,EAAE,EAG3B;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,gBAAgB,CAAC,CAE3C;IAED,QAAQ,CAAC,WAAW,GAAE,OAAe,GAAG,MAAM,CAG7C;IAED;;;;;OAKG;IACH,OAAO,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAEhD;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAwBzD;IAED,qFAAqF;IACrF,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,sBAAsB,CAExD;CACD;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,
|
|
1
|
+
{"version":3,"file":"changeEvent.d.ts","sourceRoot":"","sources":["../../../src/git/watching/changeEvent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,qBAAa,sBAAsB;IAIjC,4CAA4C;aAC5B,QAAQ,EAAE,MAAM;IAJjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEnD;IACC,4CAA4C;IAC5B,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,gBAAgB,EAAE,EAG3B;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,gBAAgB,CAAC,CAE3C;IAED,QAAQ,CAAC,WAAW,GAAE,OAAe,GAAG,MAAM,CAG7C;IAED;;;;;OAKG;IACH,OAAO,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAEhD;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAwBzD;IAED,qFAAqF;IACrF,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,sBAAsB,CAExD;CACD;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,mGAAmG;IACnG,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifyChange.d.ts","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"classifyChange.d.ts","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,GAAG,SAAS,CAqFzF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const classifyRegex = /(worktrees|index|HEAD|FETCH_HEAD|ORIG_HEAD|CHERRY_PICK_HEAD|MERGE_HEAD|REBASE_HEAD|rebase-merge|rebase-apply|sequencer|REVERT_HEAD|config|gk\/config|info\/exclude|refs\/(?:heads|remotes|stash|tags))/;
|
|
1
|
+
const classifyRegex = /(worktrees|index|HEAD|FETCH_HEAD|ORIG_HEAD|CHERRY_PICK_HEAD|MERGE_HEAD|REBASE_HEAD|rebase-merge|rebase-apply|sequencer|REVERT_HEAD|config|gk\/config|info\/exclude|refs\/(?:heads|remotes|stash|tags)|packed-refs)/;
|
|
2
2
|
/**
|
|
3
3
|
* Maps a path relative to a `.git` directory to the corresponding
|
|
4
4
|
* {@link RepositoryChange} types. This is pure Git knowledge — the
|
|
@@ -52,6 +52,13 @@ export function classifyGitDirChange(relativePath) {
|
|
|
52
52
|
return ['revert', 'pausedOp'];
|
|
53
53
|
case 'sequencer':
|
|
54
54
|
return ['pausedOp'];
|
|
55
|
+
// `'heads'` is deliberately the ONLY thing a `refs/heads/*` event yields, including a create. It is
|
|
56
|
+
// tempting to read a create as "a new branch exists under this name" and use it to drop anything
|
|
57
|
+
// derived from the old branch's identity (its base, its merge target). That signal does not mean
|
|
58
|
+
// what it looks like: git rewrites an EXISTING loose ref by writing `<name>.lock` and renaming it
|
|
59
|
+
// over the file, which watchers report as a create of the destination — so every ordinary commit
|
|
60
|
+
// would look like a new branch and discard a live branch's metadata. Nothing here can distinguish
|
|
61
|
+
// the two; identity changes are handled where GitLens performs the operation itself.
|
|
55
62
|
case 'refs/heads':
|
|
56
63
|
return ['heads'];
|
|
57
64
|
case 'refs/remotes':
|
|
@@ -60,6 +67,12 @@ export function classifyGitDirChange(relativePath) {
|
|
|
60
67
|
return ['stash'];
|
|
61
68
|
case 'refs/tags':
|
|
62
69
|
return ['tags'];
|
|
70
|
+
// A `packed-refs` rewrite (after `git pack-refs` or `git gc`) changes ref state
|
|
71
|
+
// WITHOUT any `refs/**` file event — deleting a packed branch, for example, only
|
|
72
|
+
// rewrites this file. The file content is not inspected here, so classification
|
|
73
|
+
// is deliberately broad: it can add, remove, or move refs of any of these types.
|
|
74
|
+
case 'packed-refs':
|
|
75
|
+
return ['heads', 'remotes', 'tags'];
|
|
63
76
|
case 'worktrees':
|
|
64
77
|
return ['worktrees'];
|
|
65
78
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifyChange.js","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAClB,
|
|
1
|
+
{"version":3,"file":"classifyChange.js","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAClB,oNAAoN,CAAC;AAEtN;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAoB;IACxD,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,+CAA+C;IAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;QACnG,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IAEpC,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,KAAK,QAAQ;YACZ,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE9B,KAAK,WAAW;YACf,OAAO,CAAC,UAAU,CAAC,CAAC;QAErB,KAAK,cAAc;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;QAEpB,KAAK,OAAO;YACX,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,YAAY;YAChB,2EAA2E;YAC3E,OAAO,SAAS,CAAC;QAElB,KAAK,MAAM;YACV,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE1B,KAAK,WAAW;YACf,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,kBAAkB;YACtB,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAEnC,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAE9B,KAAK,aAAa,CAAC;QACnB,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc;YAClB,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE/B,KAAK,aAAa;YACjB,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE/B,KAAK,WAAW;YACf,OAAO,CAAC,UAAU,CAAC,CAAC;QAErB,oGAAoG;QACpG,iGAAiG;QACjG,iGAAiG;QACjG,kGAAkG;QAClG,iGAAiG;QACjG,kGAAkG;QAClG,qFAAqF;QACrF,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,cAAc;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;QAEpB,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,WAAW;YACf,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjB,gFAAgF;QAChF,iFAAiF;QACjF,gFAAgF;QAChF,iFAAiF;QACjF,KAAK,aAAa;YACjB,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAErC,KAAK,WAAW;YACf,OAAO,CAAC,WAAW,CAAC,CAAC;QAEtB;YACC,OAAO,SAAS,CAAC;IACnB,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,KAAK,EAAE,MAAM,EAAoB,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAe,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAIvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@ import { isDescendant, relative } from '../../utils/path.js';
|
|
|
3
3
|
import { shouldIgnoreWorkingTreePath } from './watcherPatterns.js';
|
|
4
4
|
import { WatchGroup } from './watchGroup.js';
|
|
5
5
|
import { RepositoryWatchSession } from './watchSession.js';
|
|
6
|
+
/**
|
|
7
|
+
* Cap on paths held while the gitignore filter loads. Higher than the session's own cap because these are
|
|
8
|
+
* pre-filter — most of a build's output is typically gitignored and would be discarded on replay, so a
|
|
9
|
+
* tighter bound here would mark batches incomplete when they filter down to almost nothing.
|
|
10
|
+
*/
|
|
11
|
+
const maxBufferedWorkingTreePaths = 5000;
|
|
6
12
|
/**
|
|
7
13
|
* Global service that multiplexes repository watching across all repos.
|
|
8
14
|
*
|
|
@@ -234,6 +240,7 @@ export class RepositoryWatchService {
|
|
|
234
240
|
// Buffer events while the gitignore filter loads, then replay
|
|
235
241
|
let filterReady = filter == null;
|
|
236
242
|
let buffered = filter != null ? [] : undefined;
|
|
243
|
+
let bufferIncomplete = false;
|
|
237
244
|
if (filter != null) {
|
|
238
245
|
void filter
|
|
239
246
|
.ready()
|
|
@@ -241,11 +248,12 @@ export class RepositoryWatchService {
|
|
|
241
248
|
filterReady = true;
|
|
242
249
|
if (buffered?.length) {
|
|
243
250
|
const paths = filterWorkingTreePaths(buffered, repoPath, filter);
|
|
244
|
-
if (paths.length > 0) {
|
|
245
|
-
session.pushWorkingTreeChanges(paths);
|
|
251
|
+
if (paths.length > 0 || bufferIncomplete) {
|
|
252
|
+
session.pushWorkingTreeChanges(paths, bufferIncomplete);
|
|
246
253
|
}
|
|
247
254
|
}
|
|
248
255
|
buffered = undefined;
|
|
256
|
+
bufferIncomplete = false;
|
|
249
257
|
})
|
|
250
258
|
.catch(() => {
|
|
251
259
|
filterReady = true;
|
|
@@ -274,7 +282,14 @@ export class RepositoryWatchService {
|
|
|
274
282
|
return;
|
|
275
283
|
}
|
|
276
284
|
if (!filterReady) {
|
|
277
|
-
// Buffer until gitignore filter is ready
|
|
285
|
+
// Buffer until the gitignore filter is ready. Capped: `ready()` awaits a `core.excludesFile`
|
|
286
|
+
// read, which queues behind every other git command, so this window can stay open for a long
|
|
287
|
+
// time — and these paths haven't been gitignore-filtered yet, so a build's output all lands
|
|
288
|
+
// here. Past the cap, stop retaining and mark the batch partial rather than growing.
|
|
289
|
+
if (buffered != null && buffered.length >= maxBufferedWorkingTreePaths) {
|
|
290
|
+
bufferIncomplete = true;
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
278
293
|
buffered?.push(event.path);
|
|
279
294
|
return;
|
|
280
295
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAKhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
66
66
|
private readonly workingTreeDelays;
|
|
67
67
|
private workingTreeNextId;
|
|
68
68
|
private pendingWorkingTreePaths;
|
|
69
|
+
private pendingWorkingTreeIncomplete;
|
|
69
70
|
private workingTreeTimer;
|
|
70
71
|
private effectiveWorkingTreeMs;
|
|
71
72
|
private readonly defaultWorkingTreeMs;
|
|
@@ -80,6 +81,11 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
80
81
|
dispose(): void;
|
|
81
82
|
get suspended(): boolean;
|
|
82
83
|
get hasPendingChanges(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* An incomplete batch with no surviving paths still has to fire: the caller dropped paths we never saw, so
|
|
86
|
+
* gating the pipeline on the retained set alone would swallow the change entirely.
|
|
87
|
+
*/
|
|
88
|
+
private get hasPendingWorkingTreeChanges();
|
|
83
89
|
get repoSubscriberCount(): number;
|
|
84
90
|
get workingTreeSubscriberCount(): number;
|
|
85
91
|
/**
|
|
@@ -111,7 +117,8 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
111
117
|
/** Push interpreted repo changes into the pipeline */
|
|
112
118
|
pushRepoChanges(changes: RepositoryChange[]): void;
|
|
113
119
|
/** Push working tree file changes into the pipeline */
|
|
114
|
-
|
|
120
|
+
/** `incomplete` marks the batch as partial when the caller already dropped paths of its own. */
|
|
121
|
+
pushWorkingTreeChanges(paths: Iterable<string>, incomplete?: boolean): void;
|
|
115
122
|
private static minDelay;
|
|
116
123
|
private recalcRepoDelay;
|
|
117
124
|
private recalcWorkingTreeDelay;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAChE,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC,yDAAyD;IACzD,qBAAqB,CAAC,IAAI,IAAI,CAAC;IAC/B,yDAAyD;IACzD,oBAAoB,CAAC,IAAI,IAAI,CAAC;IAC9B,0DAA0D;IAC1D,4BAA4B,CAAC,IAAI,IAAI,CAAC;IACtC,0DAA0D;IAC1D,2BAA2B,CAAC,IAAI,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,iEAAiE;IACjE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C,sGAAsG;IACtG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACvE;;;;OAIG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACjE;
|
|
1
|
+
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,14 @@ import { Emitter } from '../../utils/event.js';
|
|
|
3
3
|
import { WatcherRepoChangeEvent } from './changeEvent.js';
|
|
4
4
|
const defaultRepoDelay = 250;
|
|
5
5
|
const defaultWorkingTreeDelay = 2500;
|
|
6
|
+
/**
|
|
7
|
+
* Cap on retained working-tree paths per flush. The set otherwise grows without bound — while the window
|
|
8
|
+
* is unfocused the session is suspended, so a branch switch or build accumulates every touched path until
|
|
9
|
+
* refocus. Set low deliberately: ordinary edits are a handful of paths, anything past this was a
|
|
10
|
+
* refresh-everything event anyway, and dropping past it only costs the matching consumers a
|
|
11
|
+
* conservative refresh.
|
|
12
|
+
*/
|
|
13
|
+
const maxWorkingTreePaths = 1000;
|
|
6
14
|
/**
|
|
7
15
|
* Per-repository session that owns the debounce/coalesce/suspend
|
|
8
16
|
* pipeline for both repo (.git) and working-tree changes.
|
|
@@ -23,6 +31,7 @@ export class RepositoryWatchSession {
|
|
|
23
31
|
workingTreeDelays = new Map();
|
|
24
32
|
workingTreeNextId = 0;
|
|
25
33
|
pendingWorkingTreePaths = new Set();
|
|
34
|
+
pendingWorkingTreeIncomplete = false;
|
|
26
35
|
workingTreeTimer;
|
|
27
36
|
effectiveWorkingTreeMs;
|
|
28
37
|
defaultWorkingTreeMs;
|
|
@@ -54,6 +63,7 @@ export class RepositoryWatchSession {
|
|
|
54
63
|
this.cancelWorkingTreeTimer();
|
|
55
64
|
this.pendingRepoEvent = undefined;
|
|
56
65
|
this.pendingWorkingTreePaths.clear();
|
|
66
|
+
this.pendingWorkingTreeIncomplete = false;
|
|
57
67
|
this.repoDelays.clear();
|
|
58
68
|
this.workingTreeDelays.clear();
|
|
59
69
|
this.repoEmitter.dispose();
|
|
@@ -63,7 +73,14 @@ export class RepositoryWatchSession {
|
|
|
63
73
|
return this._suspended;
|
|
64
74
|
}
|
|
65
75
|
get hasPendingChanges() {
|
|
66
|
-
return this.pendingRepoEvent != null || this.
|
|
76
|
+
return this.pendingRepoEvent != null || this.hasPendingWorkingTreeChanges;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* An incomplete batch with no surviving paths still has to fire: the caller dropped paths we never saw, so
|
|
80
|
+
* gating the pipeline on the retained set alone would swallow the change entirely.
|
|
81
|
+
*/
|
|
82
|
+
get hasPendingWorkingTreeChanges() {
|
|
83
|
+
return this.pendingWorkingTreePaths.size > 0 || this.pendingWorkingTreeIncomplete;
|
|
67
84
|
}
|
|
68
85
|
get repoSubscriberCount() {
|
|
69
86
|
return this.repoDelays.size;
|
|
@@ -149,6 +166,9 @@ export class RepositoryWatchSession {
|
|
|
149
166
|
if (this.workingTreeDelays.size === 0) {
|
|
150
167
|
this.cancelWorkingTreeTimer();
|
|
151
168
|
this.pendingWorkingTreePaths.clear();
|
|
169
|
+
// Dropped with the paths it describes — a stale flag would make the next subscriber's
|
|
170
|
+
// first ordinary flush claim a partial set and force needless full refreshes.
|
|
171
|
+
this.pendingWorkingTreeIncomplete = false;
|
|
152
172
|
this.lifecycle?.onLastWorkingTreeSubscriber?.();
|
|
153
173
|
}
|
|
154
174
|
}), { onDidChangeWorkingTree: this.workingTreeEmitter.event });
|
|
@@ -167,7 +187,7 @@ export class RepositoryWatchSession {
|
|
|
167
187
|
if (this.pendingRepoEvent != null) {
|
|
168
188
|
this.scheduleRepoFlush(delayMs);
|
|
169
189
|
}
|
|
170
|
-
if (this.
|
|
190
|
+
if (this.hasPendingWorkingTreeChanges) {
|
|
171
191
|
this.scheduleWorkingTreeFlush(delayMs);
|
|
172
192
|
}
|
|
173
193
|
}
|
|
@@ -195,10 +215,14 @@ export class RepositoryWatchSession {
|
|
|
195
215
|
this.coalesceRepo(changes);
|
|
196
216
|
}
|
|
197
217
|
/** Push working tree file changes into the pipeline */
|
|
198
|
-
|
|
218
|
+
/** `incomplete` marks the batch as partial when the caller already dropped paths of its own. */
|
|
219
|
+
pushWorkingTreeChanges(paths, incomplete) {
|
|
199
220
|
if (this._disposed)
|
|
200
221
|
return;
|
|
201
222
|
this._etagWorkingTree++;
|
|
223
|
+
if (incomplete) {
|
|
224
|
+
this.pendingWorkingTreeIncomplete = true;
|
|
225
|
+
}
|
|
202
226
|
this.coalesceWorkingTrees(paths);
|
|
203
227
|
}
|
|
204
228
|
static minDelay(delays, fallback) {
|
|
@@ -248,17 +272,19 @@ export class RepositoryWatchSession {
|
|
|
248
272
|
}
|
|
249
273
|
flushWorkingTree() {
|
|
250
274
|
this.workingTreeTimer = undefined;
|
|
251
|
-
if (this.
|
|
275
|
+
if (!this.hasPendingWorkingTreeChanges)
|
|
252
276
|
return;
|
|
253
277
|
const paths = this.pendingWorkingTreePaths;
|
|
278
|
+
const incomplete = this.pendingWorkingTreeIncomplete;
|
|
254
279
|
this.pendingWorkingTreePaths = new Set();
|
|
280
|
+
this.pendingWorkingTreeIncomplete = false;
|
|
255
281
|
// Advance the cache's status clock (via WatchService's global forwarding) BEFORE notifying subscribers,
|
|
256
282
|
// so a subscriber that synchronously reads status sees the post-change generation, not a joinable pre-change run.
|
|
257
283
|
this.onDidFireWorkingTreeChangeCallback?.(this.repoPath);
|
|
258
|
-
this.workingTreeEmitter.fire({ repoPath: this.repoPath, paths: paths });
|
|
284
|
+
this.workingTreeEmitter.fire({ repoPath: this.repoPath, paths: paths, incomplete: incomplete });
|
|
259
285
|
}
|
|
260
286
|
scheduleWorkingTreeFlush(delayOverride) {
|
|
261
|
-
if (this._suspended || this.
|
|
287
|
+
if (this._suspended || !this.hasPendingWorkingTreeChanges)
|
|
262
288
|
return;
|
|
263
289
|
if (this.workingTreeTimer != null) {
|
|
264
290
|
clearTimeout(this.workingTreeTimer);
|
|
@@ -267,6 +293,12 @@ export class RepositoryWatchSession {
|
|
|
267
293
|
}
|
|
268
294
|
coalesceWorkingTrees(paths) {
|
|
269
295
|
for (const p of paths) {
|
|
296
|
+
// Stop retaining paths past the cap, but keep draining the iterable — the flag is what makes the
|
|
297
|
+
// partial set safe to consume, and dropping out early would leave later paths for the next window.
|
|
298
|
+
if (this.pendingWorkingTreePaths.size >= maxWorkingTreePaths && !this.pendingWorkingTreePaths.has(p)) {
|
|
299
|
+
this.pendingWorkingTreeIncomplete = true;
|
|
300
|
+
continue;
|
|
301
|
+
}
|
|
270
302
|
this.pendingWorkingTreePaths.add(p);
|
|
271
303
|
}
|
|
272
304
|
this.scheduleWorkingTreeFlush();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchSession.js","sourceRoot":"","sources":["../../../src/git/watching/watchSession.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAiD1D,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,OAAO,sBAAsB;IACzB,QAAQ,CAAS;IAET,WAAW,GAAG,IAAI,OAAO,EAA0B,CAAC;IACpD,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,yBAAyB;IAC1E,UAAU,GAAG,CAAC,CAAC;IACf,gBAAgB,CAAqC;IACrD,SAAS,CAA4C;IACrD,eAAe,CAAS;IACf,aAAa,CAAS;IAEtB,kBAAkB,GAAG,IAAI,OAAO,EAA0B,CAAC;IAC3D,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvD,iBAAiB,GAAG,CAAC,CAAC;IACtB,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,gBAAgB,CAA4C;IAC5D,sBAAsB,CAAS;IACtB,oBAAoB,CAAS;IAEtC,gBAAgB,GAAG,CAAC,CAAC;IACrB,UAAU,CAAU;IACpB,SAAS,GAAG,KAAK,CAAC;IAET,SAAS,CAAyB;IAClC,2BAA2B,CAA2C;IACtE,kCAAkC,CAA8B;IAEjF,YAAY,OAA4B;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,kBAAkB,IAAI,gBAAgB,CAAC;QACpE,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,yBAAyB,IAAI,uBAAuB,CAAC;QACzF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC;QAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACxD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAC,mBAAmB,CAAC;QAC/D,IAAI,CAAC,kCAAkC,GAAG,OAAO,CAAC,0BAA0B,CAAC;QAC7E,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;IAC9C,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC;IAED,OAAO;QACN,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAE3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAE/B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,IAAI,IAAI,CAAC,uBAAuB,CAAC,IAAI,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"watchSession.js","sourceRoot":"","sources":["../../../src/git/watching/watchSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/** For standard repos (no worktrees): single watcher covering all .git files */
|
|
2
|
-
export declare const dotGitGlobCombined = "{index,HEAD,*_HEAD,MERGE_*,rebase-apply,rebase-apply/**,rebase-merge,rebase-merge/**,sequencer,sequencer/**,config,gk/config,refs/**,info/exclude,FETCH_HEAD,worktrees/*,worktrees/**/index,worktrees/**/HEAD,worktrees/**/*_HEAD,worktrees/**/MERGE_*,worktrees/**/rebase-merge,worktrees/**/rebase-merge/**,worktrees/**/rebase-apply,worktrees/**/rebase-apply/**,worktrees/**/sequencer,worktrees/**/sequencer/**}";
|
|
2
|
+
export declare const dotGitGlobCombined = "{index,HEAD,*_HEAD,MERGE_*,rebase-apply,rebase-apply/**,rebase-merge,rebase-merge/**,sequencer,sequencer/**,config,gk/config,refs/**,packed-refs,info/exclude,FETCH_HEAD,worktrees/*,worktrees/**/index,worktrees/**/HEAD,worktrees/**/*_HEAD,worktrees/**/MERGE_*,worktrees/**/rebase-merge,worktrees/**/rebase-merge/**,worktrees/**/rebase-apply,worktrees/**/rebase-apply/**,worktrees/**/sequencer,worktrees/**/sequencer/**}";
|
|
3
3
|
/** For worktree repos: root watcher (worktree-specific files only) */
|
|
4
4
|
export declare const dotGitGlobRoot = "{index,HEAD,*_HEAD,MERGE_*,rebase-apply,rebase-apply/**,rebase-merge,rebase-merge/**,sequencer,sequencer/**}";
|
|
5
5
|
/** For worktree repos: common watcher (shared config, refs, info, etc.) */
|
|
6
|
-
export declare const dotGitGlobCommon = "{config,gk/config,refs/**,info/exclude,FETCH_HEAD,worktrees/*,worktrees/**/index,worktrees/**/HEAD,worktrees/**/*_HEAD,worktrees/**/MERGE_*,worktrees/**/rebase-merge,worktrees/**/rebase-merge/**,worktrees/**/rebase-apply,worktrees/**/rebase-apply/**,worktrees/**/sequencer,worktrees/**/sequencer/**}";
|
|
6
|
+
export declare const dotGitGlobCommon = "{config,gk/config,refs/**,packed-refs,info/exclude,FETCH_HEAD,worktrees/*,worktrees/**/index,worktrees/**/HEAD,worktrees/**/*_HEAD,worktrees/**/MERGE_*,worktrees/**/rebase-merge,worktrees/**/rebase-merge/**,worktrees/**/rebase-apply,worktrees/**/rebase-apply/**,worktrees/**/sequencer,worktrees/**/sequencer/**}";
|
|
7
7
|
/** Glob for watching .gitignore files in the working tree */
|
|
8
8
|
export declare const gitIgnoreGlob = ".gitignore";
|
|
9
9
|
/** Glob for detecting .git directory creation (repository init/clone) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcherPatterns.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watcherPatterns.ts"],"names":[],"mappings":"AAYA,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"watcherPatterns.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watcherPatterns.ts"],"names":[],"mappings":"AAYA,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,uaAA0C,CAAC;AAE1E,sEAAsE;AACtE,eAAO,MAAM,cAAc,iHAAqB,CAAC;AAEjD,2EAA2E;AAC3E,eAAO,MAAM,gBAAgB,4TAA2B,CAAC;AAEzD,6DAA6D;AAC7D,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,yEAAyE;AACzE,eAAO,MAAM,WAAW,YAAY,CAAC;AAQrC;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAElE;AAKD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAEzE"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// provides them to the pluggable FileWatcherFactory.
|
|
4
4
|
const dotGitFiles = 'index,HEAD,*_HEAD,MERGE_*,rebase-apply,rebase-apply/**,rebase-merge,rebase-merge/**,sequencer,sequencer/**';
|
|
5
5
|
const dotGitWorktreeFiles = 'worktrees/*,worktrees/**/index,worktrees/**/HEAD,worktrees/**/*_HEAD,worktrees/**/MERGE_*,worktrees/**/rebase-merge,worktrees/**/rebase-merge/**,worktrees/**/rebase-apply,worktrees/**/rebase-apply/**,worktrees/**/sequencer,worktrees/**/sequencer/**';
|
|
6
|
-
const dotGitCommonFiles = `config,gk/config,refs/**,info/exclude,FETCH_HEAD,${dotGitWorktreeFiles}`;
|
|
6
|
+
const dotGitCommonFiles = `config,gk/config,refs/**,packed-refs,info/exclude,FETCH_HEAD,${dotGitWorktreeFiles}`;
|
|
7
7
|
/** For standard repos (no worktrees): single watcher covering all .git files */
|
|
8
8
|
export const dotGitGlobCombined = `{${dotGitFiles},${dotGitCommonFiles}}`;
|
|
9
9
|
/** For worktree repos: root watcher (worktree-specific files only) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcherPatterns.js","sourceRoot":"","sources":["../../../src/git/watching/watcherPatterns.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,0EAA0E;AAC1E,qDAAqD;AAErD,MAAM,WAAW,GAChB,4GAA4G,CAAC;AAE9G,MAAM,mBAAmB,GACxB,0PAA0P,CAAC;AAE5P,MAAM,iBAAiB,GAAG,
|
|
1
|
+
{"version":3,"file":"watcherPatterns.js","sourceRoot":"","sources":["../../../src/git/watching/watcherPatterns.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,0EAA0E;AAC1E,qDAAqD;AAErD,MAAM,WAAW,GAChB,4GAA4G,CAAC;AAE9G,MAAM,mBAAmB,GACxB,0PAA0P,CAAC;AAE5P,MAAM,iBAAiB,GAAG,gEAAgE,mBAAmB,EAAE,CAAC;AAEhH,gFAAgF;AAChF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,WAAW,IAAI,iBAAiB,GAAG,CAAC;AAE1E,sEAAsE;AACtE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,WAAW,GAAG,CAAC;AAEjD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,iBAAiB,GAAG,CAAC;AAEzD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC;AAE1C,yEAAyE;AACzE,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,sEAAsE;AACtE,sEAAsE;AACtE,6DAA6D;AAE7D,MAAM,oBAAoB,GAAG,0DAA0D,CAAC;AAExF;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAoB;IACxD,OAAO,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,2BAA2B,GAChC,4FAA4F,CAAC;AAE9F;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,YAAoB;IAC/D,OAAO,2BAA2B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -25,7 +25,6 @@ export declare const GitErrors: {
|
|
|
25
25
|
readonly cantLockRef: RegExp;
|
|
26
26
|
readonly changesWouldBeOverwritten: RegExp;
|
|
27
27
|
readonly cherryPickAborted: RegExp;
|
|
28
|
-
readonly cherryPickEmptyPrevious: RegExp;
|
|
29
28
|
readonly cherryPickInProgress: RegExp;
|
|
30
29
|
readonly commitChangesFirst: RegExp;
|
|
31
30
|
readonly conflict: RegExp;
|
|
@@ -53,6 +52,7 @@ export declare const GitErrors: {
|
|
|
53
52
|
readonly nothingToCommit: RegExp;
|
|
54
53
|
readonly noPausedOperation: RegExp;
|
|
55
54
|
readonly permissionDenied: RegExp;
|
|
55
|
+
readonly previousOperationEmpty: RegExp;
|
|
56
56
|
readonly pushRejected: RegExp;
|
|
57
57
|
readonly pushRejectedRefDoesNotExists: RegExp;
|
|
58
58
|
readonly rebaseAborted: RegExp;
|