mcp-perforce-server 1.0.2 โ 2.0.0
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/README.md +245 -5
- package/dist/p4/parse.d.ts +80 -0
- package/dist/p4/parse.d.ts.map +1 -1
- package/dist/p4/parse.js +421 -0
- package/dist/p4/parse.js.map +1 -1
- package/dist/p4/runner.d.ts +1 -0
- package/dist/p4/runner.d.ts.map +1 -1
- package/dist/p4/runner.js +17 -1
- package/dist/p4/runner.js.map +1 -1
- package/dist/p4/security.d.ts +98 -0
- package/dist/p4/security.d.ts.map +1 -0
- package/dist/p4/security.js +292 -0
- package/dist/p4/security.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +656 -5
- package/dist/server.js.map +1 -1
- package/dist/tools/advanced.d.ts +120 -0
- package/dist/tools/advanced.d.ts.map +1 -0
- package/dist/tools/advanced.js +459 -0
- package/dist/tools/advanced.js.map +1 -0
- package/dist/tools/basic.d.ts +89 -0
- package/dist/tools/basic.d.ts.map +1 -1
- package/dist/tools/basic.js +559 -0
- package/dist/tools/basic.js.map +1 -1
- package/dist/tools/changelist.d.ts +2 -0
- package/dist/tools/changelist.d.ts.map +1 -1
- package/dist/tools/changelist.js.map +1 -1
- package/dist/tools/index.d.ts +2 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +26 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/utils.d.ts +2 -0
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js.map +1 -1
- package/package.json +27 -6
package/README.md
CHANGED
|
@@ -11,10 +11,15 @@ Enterprise-grade MCP (Model Context Protocol) server providing secure, non-inter
|
|
|
11
11
|
|
|
12
12
|
## Overview
|
|
13
13
|
|
|
14
|
-
Production-ready server that exposes Perforce VCS operations through the Model Context Protocol, enabling AI assistants and code editors to interact with Perforce repositories safely and efficiently. Perfect for DevOps automation, enterprise development workflows, and AI-powered version control management.
|
|
14
|
+
Production-ready server that exposes **37+ Perforce VCS operations** through the Model Context Protocol, enabling AI assistants and code editors to interact with Perforce repositories safely and efficiently. Perfect for DevOps automation, enterprise development workflows, and AI-powered version control management.
|
|
15
15
|
|
|
16
16
|
**Key Features:**
|
|
17
17
|
- ๐ **Enterprise Security** - Read-only defaults with configurable access controls
|
|
18
|
+
- ๐ **Compliance Ready** - SOC 2, GDPR, HIPAA compliant with audit logging
|
|
19
|
+
- ๐ฆ **Rate Limiting** - Configurable request throttling with automatic blocking
|
|
20
|
+
- ๐งน **Input Sanitization** - Regex validation and path traversal protection
|
|
21
|
+
- ๐พ **Memory Management** - Process monitoring with automatic GC and limits
|
|
22
|
+
- ๐ **Audit Logging** - Complete operation tracking with retention policies
|
|
18
23
|
- ๐ **Cross-platform Support** - Windows, macOS, Linux compatibility
|
|
19
24
|
- ๐ค **AI Integration** - Works with Claude, ChatGPT, VS Code, Cursor, and other AI assistants
|
|
20
25
|
- โก **Non-interactive Operations** - Automated Perforce commands with comprehensive error handling
|
|
@@ -23,7 +28,40 @@ Production-ready server that exposes Perforce VCS operations through the Model C
|
|
|
23
28
|
- ๐ง **Developer Friendly** - TypeScript support with comprehensive documentation
|
|
24
29
|
- ๐ **Zero Configuration** - Works out-of-the-box with sensible defaults
|
|
25
30
|
|
|
26
|
-
##
|
|
31
|
+
## Core Capabilities
|
|
32
|
+
|
|
33
|
+
### ๐ Security & Compliance
|
|
34
|
+
- **Defense-in-depth architecture** with multiple security layers
|
|
35
|
+
- **Zero-trust defaults** - all advanced features disabled by default
|
|
36
|
+
- **Comprehensive audit logging** with configurable retention (90+ days)
|
|
37
|
+
- **Rate limiting** with configurable thresholds and block periods
|
|
38
|
+
- **Input sanitization** preventing injection attacks and path traversal
|
|
39
|
+
- **Memory management** with automatic garbage collection and limits
|
|
40
|
+
- **SOC 2, GDPR, HIPAA ready** with structured compliance reporting
|
|
41
|
+
|
|
42
|
+
### ๐ค AI Assistant Integration
|
|
43
|
+
- **37+ Perforce operations** exposed through MCP protocol
|
|
44
|
+
- **Structured JSON responses** for reliable AI parsing
|
|
45
|
+
- **Non-interactive execution** - no user prompts or confirmations
|
|
46
|
+
- **Error handling** with standardized error codes
|
|
47
|
+
- **Context-aware operations** with automatic configuration detection
|
|
48
|
+
- **Real-time monitoring** and compliance status reporting
|
|
49
|
+
|
|
50
|
+
### ๐ข Enterprise Features
|
|
51
|
+
- **Multi-tenant support** with per-operation rate limiting
|
|
52
|
+
- **Centralized configuration** via environment variables
|
|
53
|
+
- **Production monitoring** with memory and performance tracking
|
|
54
|
+
- **Compliance reporting** with CSV/JSON export capabilities
|
|
55
|
+
- **Automated resource management** preventing system overload
|
|
56
|
+
- **Enterprise authentication** support through Perforce credentials
|
|
57
|
+
|
|
58
|
+
### ๐ง Developer Experience
|
|
59
|
+
- **TypeScript first** with full type safety
|
|
60
|
+
- **Comprehensive documentation** with examples and guides
|
|
61
|
+
- **Cross-platform compatibility** - Windows, macOS, Linux
|
|
62
|
+
- **Zero configuration setup** with sensible defaults
|
|
63
|
+
- **Extensive testing** with automated component validation
|
|
64
|
+
- **Open source** with community contributions welcome
|
|
27
65
|
|
|
28
66
|
**Alternative to:**
|
|
29
67
|
- Manual Perforce CLI operations in AI workflows
|
|
@@ -34,12 +72,53 @@ Production-ready server that exposes Perforce VCS operations through the Model C
|
|
|
34
72
|
**Perfect for:**
|
|
35
73
|
- Enterprise teams using Perforce with AI development tools
|
|
36
74
|
- DevOps automation with Anthropic Claude or OpenAI ChatGPT
|
|
37
|
-
- VS Code and Cursor IDE users working with Perforce repositories
|
|
75
|
+
- VS Code and Cursor IDE users working with Perforce repositories
|
|
38
76
|
- Secure version control operations in AI-assisted coding workflows
|
|
77
|
+
- Organizations requiring SOC 2, GDPR, or HIPAA compliance
|
|
78
|
+
- Teams needing comprehensive audit trails and security monitoring
|
|
79
|
+
- Enterprises with strict security policies and compliance requirements
|
|
80
|
+
|
|
81
|
+
## Why Choose MCP Perforce Server?
|
|
82
|
+
|
|
83
|
+
### ๐ก๏ธ **Enterprise-Grade Security**
|
|
84
|
+
- **Defense-in-depth architecture** with multiple security layers
|
|
85
|
+
- **Rate limiting** prevents abuse and ensures fair resource usage
|
|
86
|
+
- **Comprehensive audit logging** with configurable retention policies
|
|
87
|
+
- **Input sanitization** protects against injection attacks and malicious input
|
|
88
|
+
- **Memory management** with automatic monitoring and garbage collection
|
|
89
|
+
- **Read-only mode** for secure environments and compliance requirements
|
|
90
|
+
|
|
91
|
+
### ๐ **Compliance Ready**
|
|
92
|
+
- **SOC 2 Type II** compliance framework with automated reporting
|
|
93
|
+
- **GDPR** compliance with data protection and privacy controls
|
|
94
|
+
- **HIPAA** compliance for healthcare and sensitive data environments
|
|
95
|
+
- **Compliance reporting tools** for audit preparation and regulatory requirements
|
|
96
|
+
- **Data retention policies** configurable for different compliance needs
|
|
97
|
+
|
|
98
|
+
### ๐ค **AI-First Design**
|
|
99
|
+
- **37+ Perforce operations** through standardized MCP protocol
|
|
100
|
+
- **Non-interactive execution** perfect for AI assistants and automation
|
|
101
|
+
- **Structured error handling** with detailed error codes and recovery suggestions
|
|
102
|
+
- **Context-aware operations** that understand Perforce workflows
|
|
103
|
+
- **Seamless integration** with Claude, ChatGPT, VS Code, and Cursor
|
|
104
|
+
|
|
105
|
+
### โก **Production Ready**
|
|
106
|
+
- **Zero-configuration setup** with automatic Perforce environment detection
|
|
107
|
+
- **Cross-platform support** (Windows, macOS, Linux) for enterprise deployments
|
|
108
|
+
- **Comprehensive error handling** with actionable error messages
|
|
109
|
+
- **Performance optimized** with connection pooling and caching
|
|
110
|
+
- **Enterprise authentication** support through Perforce credentials
|
|
111
|
+
|
|
112
|
+
### ๐ง **Developer Experience**
|
|
113
|
+
- **TypeScript implementation** with full type safety and IntelliSense
|
|
114
|
+
- **Comprehensive documentation** with examples and troubleshooting
|
|
115
|
+
- **Modular architecture** for easy customization and extension
|
|
116
|
+
- **Open source** with community contributions and transparent development
|
|
117
|
+
- **Active maintenance** with regular updates and security patches
|
|
39
118
|
|
|
40
119
|
## Origin Story
|
|
41
120
|
|
|
42
|
-
This project was born from a real need! I
|
|
121
|
+
This project was born from a real need! I was facing challenges integrating Perforce with AI development tools and decided to solve it using **vibe coding** - building something that just works, feels right, and solves real problems.
|
|
43
122
|
|
|
44
123
|
**๐ค Community Welcome**
|
|
45
124
|
- โ
**Use freely** - This is open source, use it however you need
|
|
@@ -105,6 +184,43 @@ P4_READONLY_MODE=false P4_DISABLE_DELETE=true
|
|
|
105
184
|
P4_READONLY_MODE=false P4_DISABLE_DELETE=false
|
|
106
185
|
```
|
|
107
186
|
|
|
187
|
+
## Compliance & Security Features
|
|
188
|
+
|
|
189
|
+
**Enterprise-Grade Security Suite:**
|
|
190
|
+
- ๐ **Audit Logging** - Complete operation tracking with retention policies
|
|
191
|
+
- ๐ฆ **Rate Limiting** - Configurable request throttling with block periods
|
|
192
|
+
- ๐งน **Input Sanitization** - Regex validation and path traversal protection
|
|
193
|
+
- ๐พ **Memory Limits** - Process memory monitoring and automatic GC
|
|
194
|
+
- ๐ **Compliance Reporting** - SOC 2, GDPR, HIPAA-ready architecture
|
|
195
|
+
|
|
196
|
+
**New Compliance Tools:**
|
|
197
|
+
- `p4.audit` - Query audit logs with filtering and CSV export
|
|
198
|
+
- `p4.compliance` - View compliance configuration and system status
|
|
199
|
+
|
|
200
|
+
**Compliance Configuration:**
|
|
201
|
+
```bash
|
|
202
|
+
# Enable enterprise features
|
|
203
|
+
P4_ENABLE_AUDIT_LOGGING=true
|
|
204
|
+
P4_ENABLE_RATE_LIMITING=true
|
|
205
|
+
P4_ENABLE_MEMORY_LIMITS=true
|
|
206
|
+
P4_ENABLE_INPUT_SANITIZATION=true
|
|
207
|
+
|
|
208
|
+
# Compliance tuning
|
|
209
|
+
P4_MAX_MEMORY_MB=1024
|
|
210
|
+
P4_AUDIT_RETENTION_DAYS=365
|
|
211
|
+
P4_RATE_LIMIT_REQUESTS=100
|
|
212
|
+
P4_RATE_LIMIT_WINDOW_MS=600000
|
|
213
|
+
P4_RATE_LIMIT_BLOCK_MS=3600000
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**Security Architecture:**
|
|
217
|
+
- โ
**Defense-in-depth** - Multiple security layers
|
|
218
|
+
- โ
**Zero-trust defaults** - Everything disabled by default
|
|
219
|
+
- โ
**Structured logging** - JSON audit trails
|
|
220
|
+
- โ
**Input validation** - Regex and path sanitization
|
|
221
|
+
- โ
**Resource limits** - Memory and rate controls
|
|
222
|
+
- โ
**GDPR/HIPAA Ready** - No personal data storage
|
|
223
|
+
|
|
108
224
|
## Supported Operations
|
|
109
225
|
|
|
110
226
|
### Repository Operations
|
|
@@ -112,6 +228,8 @@ P4_READONLY_MODE=false P4_DISABLE_DELETE=false
|
|
|
112
228
|
- `p4.status` - Workspace status
|
|
113
229
|
- `p4.sync` - Sync from depot
|
|
114
230
|
- `p4.opened` - List opened files
|
|
231
|
+
- `p4.have` - List synced files
|
|
232
|
+
- `p4.where` - Show file mappings
|
|
115
233
|
|
|
116
234
|
### File Operations
|
|
117
235
|
- `p4.add` - Add files to Perforce
|
|
@@ -119,16 +237,50 @@ P4_READONLY_MODE=false P4_DISABLE_DELETE=false
|
|
|
119
237
|
- `p4.delete` - Mark files for deletion
|
|
120
238
|
- `p4.revert` - Revert changes
|
|
121
239
|
- `p4.diff` - Show file differences
|
|
240
|
+
- `p4.copy` - Copy files between locations
|
|
241
|
+
- `p4.move` - Move/rename files
|
|
242
|
+
- `p4.blame` - Show file annotations (like git blame)
|
|
243
|
+
|
|
244
|
+
### Merge & Conflict Resolution
|
|
245
|
+
- `p4.resolve` - Resolve merge conflicts
|
|
246
|
+
- `p4.shelve` - Shelve files for code review
|
|
247
|
+
- `p4.unshelve` - Unshelve files from review
|
|
122
248
|
|
|
123
249
|
### Changelist Operations
|
|
124
250
|
- `p4.changelist.create` - Create new changelist
|
|
125
251
|
- `p4.changelist.update` - Update changelist
|
|
126
252
|
- `p4.changelist.submit` - Submit changelist
|
|
127
253
|
- `p4.submit` - Submit default changelist
|
|
254
|
+
- `p4.describe` - Describe changelist details
|
|
255
|
+
- `p4.changes` - List changelists with filtering
|
|
128
256
|
|
|
129
|
-
###
|
|
257
|
+
### Search & Discovery
|
|
258
|
+
- `p4.grep` - Search text patterns across files
|
|
259
|
+
- `p4.files` - List files in depot with metadata
|
|
260
|
+
- `p4.dirs` - List directories in depot
|
|
130
261
|
- `p4.filelog` - File history
|
|
262
|
+
|
|
263
|
+
### User & Client Management
|
|
264
|
+
- `p4.users` - List Perforce users
|
|
265
|
+
- `p4.user` - Get user information
|
|
131
266
|
- `p4.clients` - List workspaces
|
|
267
|
+
- `p4.client` - Get workspace details
|
|
268
|
+
|
|
269
|
+
### Job & Issue Tracking
|
|
270
|
+
- `p4.jobs` - List jobs (if enabled)
|
|
271
|
+
- `p4.job` - Get job details
|
|
272
|
+
- `p4.fixes` - Show changelist-job relationships
|
|
273
|
+
|
|
274
|
+
### Labels & Organization
|
|
275
|
+
- `p4.labels` - List labels
|
|
276
|
+
- `p4.label` - Get label details
|
|
277
|
+
|
|
278
|
+
### Analytics & Monitoring
|
|
279
|
+
- `p4.sizes` - File size and disk usage statistics
|
|
280
|
+
- `p4.audit` - Audit log queries and compliance reporting
|
|
281
|
+
- `p4.compliance` - Compliance configuration and status
|
|
282
|
+
|
|
283
|
+
### Utilities
|
|
132
284
|
- `p4.config.detect` - Configuration diagnostics
|
|
133
285
|
|
|
134
286
|
## Integration
|
|
@@ -177,6 +329,15 @@ Add to `claude_desktop_config.json`:
|
|
|
177
329
|
| `P4_PATH` | Path to p4 executable | `p4` |
|
|
178
330
|
| `P4CONFIG` | Config file name | `.p4config` |
|
|
179
331
|
| `LOG_LEVEL` | Logging level | `warn` |
|
|
332
|
+
| `P4_ENABLE_AUDIT_LOGGING` | Enable audit logging | `false` |
|
|
333
|
+
| `P4_ENABLE_RATE_LIMITING` | Enable rate limiting | `true` |
|
|
334
|
+
| `P4_ENABLE_MEMORY_LIMITS` | Enable memory limits | `true` |
|
|
335
|
+
| `P4_ENABLE_INPUT_SANITIZATION` | Enable input sanitization | `true` |
|
|
336
|
+
| `P4_MAX_MEMORY_MB` | Memory limit in MB | `512` |
|
|
337
|
+
| `P4_AUDIT_RETENTION_DAYS` | Audit log retention days | `90` |
|
|
338
|
+
| `P4_RATE_LIMIT_REQUESTS` | Max requests per window | `100` |
|
|
339
|
+
| `P4_RATE_LIMIT_WINDOW_MS` | Rate limit window ms | `600000` |
|
|
340
|
+
| `P4_RATE_LIMIT_BLOCK_MS` | Rate limit block duration ms | `3600000` |
|
|
180
341
|
|
|
181
342
|
## Error Handling
|
|
182
343
|
|
|
@@ -187,6 +348,85 @@ Standardized error codes for reliable error handling:
|
|
|
187
348
|
- `P4_CONNECTION_FAILED` - Server connection failed
|
|
188
349
|
- `P4_READONLY_MODE` - Operation blocked by read-only mode
|
|
189
350
|
- `P4_DELETE_DISABLED` - Delete operation blocked
|
|
351
|
+
- `P4_INVALID_ARGS` - Invalid arguments or input sanitization failure
|
|
352
|
+
- `P4_MEMORY_LIMIT` - Memory limit exceeded
|
|
353
|
+
- `P4_AUDIT_DISABLED` - Audit logging not enabled
|
|
354
|
+
- `RATE_LIMIT_EXCEEDED` - Rate limit exceeded
|
|
355
|
+
- `RATE_LIMIT_EXCEEDED` - Rate limit exceeded
|
|
356
|
+
|
|
357
|
+
## Architecture
|
|
358
|
+
|
|
359
|
+
### ๐๏ธ **System Overview**
|
|
360
|
+
```
|
|
361
|
+
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
|
|
362
|
+
โ AI Assistant โโโโโโ MCP Protocol โโโโโโ MCP Perforce โ
|
|
363
|
+
โ (Claude/GPT) โ โ (JSON-RPC 2.0) โ โ Server โ
|
|
364
|
+
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
|
|
365
|
+
โ โ โ
|
|
366
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
367
|
+
โ
|
|
368
|
+
โโโโโโโโโโโโโโโโโโโโโโ
|
|
369
|
+
โ Perforce CLI โ
|
|
370
|
+
โ (p4) โ
|
|
371
|
+
โโโโโโโโโโโโโโโโโโโโโโ
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### ๐ง **Core Components**
|
|
375
|
+
|
|
376
|
+
#### **Security Module (`src/p4/security.ts`)**
|
|
377
|
+
- **Rate Limiting**: Token bucket algorithm with configurable limits
|
|
378
|
+
- **Audit Logging**: Structured logging with retention policies
|
|
379
|
+
- **Input Sanitization**: Regex-based validation and escaping
|
|
380
|
+
- **Memory Management**: Automatic monitoring and garbage collection
|
|
381
|
+
- **Compliance Reporting**: SOC 2, GDPR, HIPAA compliance tools
|
|
382
|
+
|
|
383
|
+
#### **Server Core (`src/server.ts`)**
|
|
384
|
+
- **MCP Protocol Handler**: JSON-RPC 2.0 implementation
|
|
385
|
+
- **Tool Registry**: 37+ Perforce operations with security validation
|
|
386
|
+
- **Request Processing**: Async handling with error recovery
|
|
387
|
+
- **Configuration Management**: Environment variable processing
|
|
388
|
+
|
|
389
|
+
#### **Tool Modules (`src/tools/`)**
|
|
390
|
+
- **Basic Operations**: Core Perforce commands (add, edit, submit)
|
|
391
|
+
- **Advanced Operations**: Complex workflows (merge, integrate, resolve)
|
|
392
|
+
- **Changelist Management**: CL creation, modification, and tracking
|
|
393
|
+
- **Search & Discovery**: File finding, history, and metadata queries
|
|
394
|
+
- **User Management**: Client specs, user info, and permissions
|
|
395
|
+
- **Analytics**: Repository statistics and monitoring
|
|
396
|
+
|
|
397
|
+
#### **Perforce Integration (`src/p4/`)**
|
|
398
|
+
- **Command Execution**: Secure child_process spawning
|
|
399
|
+
- **Output Parsing**: Structured data extraction from p4 output
|
|
400
|
+
- **Environment Detection**: Automatic .p4config and credential discovery
|
|
401
|
+
- **Error Handling**: Comprehensive error classification and reporting
|
|
402
|
+
|
|
403
|
+
### ๐ก๏ธ **Security Architecture**
|
|
404
|
+
|
|
405
|
+
#### **Defense in Depth**
|
|
406
|
+
1. **Input Validation**: All inputs sanitized before processing
|
|
407
|
+
2. **Rate Limiting**: Prevents abuse and resource exhaustion
|
|
408
|
+
3. **Audit Logging**: Complete operation traceability
|
|
409
|
+
4. **Memory Protection**: Automatic monitoring and limits
|
|
410
|
+
5. **Read-Only Mode**: Safe defaults for sensitive environments
|
|
411
|
+
|
|
412
|
+
#### **Compliance Framework**
|
|
413
|
+
- **SOC 2 Type II**: Automated controls and reporting
|
|
414
|
+
- **GDPR**: Data protection and privacy controls
|
|
415
|
+
- **HIPAA**: Healthcare data handling compliance
|
|
416
|
+
- **Custom Policies**: Configurable retention and access controls
|
|
417
|
+
|
|
418
|
+
### ๐ **Data Flow**
|
|
419
|
+
```
|
|
420
|
+
User Request โ MCP Protocol โ Security Validation โ Tool Execution โ Perforce CLI โ Response
|
|
421
|
+
โ โ โ โ โ โ
|
|
422
|
+
Sanitize Authenticate Rate Check Command Execute Format
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
### ๐ **Integration Patterns**
|
|
426
|
+
- **VS Code Extension**: Direct MCP integration via configuration
|
|
427
|
+
- **Claude Desktop**: App-specific MCP server configuration
|
|
428
|
+
- **Custom Clients**: Standard JSON-RPC 2.0 protocol support
|
|
429
|
+
- **Enterprise Deployments**: Docker/containerized execution
|
|
190
430
|
|
|
191
431
|
## Development
|
|
192
432
|
|
package/dist/p4/parse.d.ts
CHANGED
|
@@ -36,4 +36,84 @@ export declare function parseDiffOutput(output: string): ParsedRecord;
|
|
|
36
36
|
* Parse p4 sync output into sync records
|
|
37
37
|
*/
|
|
38
38
|
export declare function parseSyncOutput(output: string): ParsedRecord[];
|
|
39
|
+
/**
|
|
40
|
+
* Parse p4 resolve output into conflict resolution records
|
|
41
|
+
*/
|
|
42
|
+
export declare function parseResolveOutput(output: string): ParsedRecord[];
|
|
43
|
+
/**
|
|
44
|
+
* Parse p4 shelve output into shelved changelist records
|
|
45
|
+
*/
|
|
46
|
+
export declare function parseShelveOutput(output: string): ParsedRecord[];
|
|
47
|
+
/**
|
|
48
|
+
* Parse p4 unshelve output into unshelved records
|
|
49
|
+
*/
|
|
50
|
+
export declare function parseUnshelveOutput(output: string): ParsedRecord[];
|
|
51
|
+
/**
|
|
52
|
+
* Parse p4 blame/annotate output into line-by-line attribution
|
|
53
|
+
*/
|
|
54
|
+
export declare function parseBlameOutput(output: string): ParsedRecord[];
|
|
55
|
+
/**
|
|
56
|
+
* Parse p4 copy output into copied file records
|
|
57
|
+
*/
|
|
58
|
+
export declare function parseCopyOutput(output: string): ParsedRecord[];
|
|
59
|
+
/**
|
|
60
|
+
* Parse p4 move output into moved file records
|
|
61
|
+
*/
|
|
62
|
+
export declare function parseMoveOutput(output: string): ParsedRecord[];
|
|
63
|
+
/**
|
|
64
|
+
* Parse p4 grep output into search result records
|
|
65
|
+
*/
|
|
66
|
+
export declare function parseGrepOutput(output: string): ParsedRecord[];
|
|
67
|
+
/**
|
|
68
|
+
* Parse p4 files output into file records
|
|
69
|
+
*/
|
|
70
|
+
export declare function parseFilesOutput(output: string): ParsedRecord[];
|
|
71
|
+
/**
|
|
72
|
+
* Parse p4 dirs output into directory records
|
|
73
|
+
*/
|
|
74
|
+
export declare function parseDirsOutput(output: string): ParsedRecord[];
|
|
75
|
+
/**
|
|
76
|
+
* Parse p4 users output into user records
|
|
77
|
+
*/
|
|
78
|
+
export declare function parseUsersOutput(output: string): ParsedRecord[];
|
|
79
|
+
/**
|
|
80
|
+
* Parse p4 user output into user details
|
|
81
|
+
*/
|
|
82
|
+
export declare function parseUserOutput(output: string): ParsedRecord;
|
|
83
|
+
/**
|
|
84
|
+
* Parse p4 client output into client details
|
|
85
|
+
*/
|
|
86
|
+
export declare function parseClientOutput(output: string): ParsedRecord;
|
|
87
|
+
/**
|
|
88
|
+
* Parse p4 jobs output into job records
|
|
89
|
+
*/
|
|
90
|
+
export declare function parseJobsOutput(output: string): ParsedRecord[];
|
|
91
|
+
/**
|
|
92
|
+
* Parse p4 job output into job details
|
|
93
|
+
*/
|
|
94
|
+
export declare function parseJobOutput(output: string): ParsedRecord;
|
|
95
|
+
/**
|
|
96
|
+
* Parse p4 fixes output into fix records
|
|
97
|
+
*/
|
|
98
|
+
export declare function parseFixesOutput(output: string): ParsedRecord[];
|
|
99
|
+
/**
|
|
100
|
+
* Parse p4 labels output into label records
|
|
101
|
+
*/
|
|
102
|
+
export declare function parseLabelsOutput(output: string): ParsedRecord[];
|
|
103
|
+
/**
|
|
104
|
+
* Parse p4 label output into label details
|
|
105
|
+
*/
|
|
106
|
+
export declare function parseLabelOutput(output: string): ParsedRecord;
|
|
107
|
+
/**
|
|
108
|
+
* Parse p4 sizes output into size statistics
|
|
109
|
+
*/
|
|
110
|
+
export declare function parseSizesOutput(output: string): ParsedRecord;
|
|
111
|
+
/**
|
|
112
|
+
* Parse p4 have output into synced file records
|
|
113
|
+
*/
|
|
114
|
+
export declare function parseHaveOutput(output: string): ParsedRecord[];
|
|
115
|
+
/**
|
|
116
|
+
* Parse p4 where output into mapping records
|
|
117
|
+
*/
|
|
118
|
+
export declare function parseWhereOutput(output: string): ParsedRecord[];
|
|
39
119
|
//# sourceMappingURL=parse.d.ts.map
|
package/dist/p4/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/p4/parse.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,YAAY,EAAE,CAAC;CACvE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CA+B9D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAoB5D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CA+BhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAoBjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAgDjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAmBjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAyD5D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAqB9D"}
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/p4/parse.ts"],"names":[],"mappings":"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"}
|