mirror of
https://github.com/ivuorinen/gibidify.git
synced 2026-01-26 03:24:05 +00:00
* chore(ci): update go to 1.25, add permissions and envs * fix(ci): update pr-lint.yml * chore: update go, fix linting * fix: tests and linting * fix(lint): lint fixes, renovate should now pass * fix: updates, security upgrades * chore: workflow updates, lint * fix: more lint, checkmake, and other fixes * fix: more lint, convert scripts to POSIX compliant * fix: simplify codeql workflow * tests: increase test coverage, fix found issues * fix(lint): editorconfig checking, add to linters * fix(lint): shellcheck, add to linters * fix(lint): apply cr comment suggestions * fix(ci): remove step-security/harden-runner * fix(lint): remove duplication, apply cr fixes * fix(ci): tests in CI/CD pipeline * chore(lint): deduplication of strings * fix(lint): apply cr comment suggestions * fix(ci): actionlint * fix(lint): apply cr comment suggestions * chore: lint, add deps management
80 lines
2.2 KiB
Plaintext
80 lines
2.2 KiB
Plaintext
# Gibidify Configuration Example
|
|
# This file demonstrates all available configuration options
|
|
|
|
# File size limit for individual files (in bytes)
|
|
# Default: 5242880 (5MB), Min: 1024 (1KB), Max: 104857600 (100MB)
|
|
fileSizeLimit: 5242880
|
|
|
|
# Directories to ignore during traversal
|
|
ignoreDirectories:
|
|
- vendor
|
|
- node_modules
|
|
- .git
|
|
- dist
|
|
- build
|
|
- target
|
|
- bower_components
|
|
- cache
|
|
- tmp
|
|
|
|
# File type detection and filtering
|
|
fileTypes:
|
|
enabled: true
|
|
customImageExtensions: []
|
|
customBinaryExtensions: []
|
|
customLanguages: {}
|
|
disabledImageExtensions: []
|
|
disabledBinaryExtensions: []
|
|
disabledLanguageExtensions: []
|
|
|
|
# Back-pressure management for memory optimization
|
|
backpressure:
|
|
enabled: true
|
|
maxPendingFiles: 1000 # Max files in channel buffer
|
|
maxPendingWrites: 100 # Max writes in channel buffer
|
|
maxMemoryUsage: 104857600 # 100MB soft memory limit
|
|
memoryCheckInterval: 1000 # Check memory every N files
|
|
|
|
# Resource limits for DoS protection and security
|
|
resourceLimits:
|
|
enabled: true
|
|
|
|
# File processing limits
|
|
maxFiles: 10000 # Maximum number of files to process
|
|
maxTotalSize: 1073741824 # Maximum total size (1GB)
|
|
|
|
# Timeout limits (in seconds)
|
|
fileProcessingTimeoutSec: 30 # Timeout for individual file processing
|
|
overallTimeoutSec: 3600 # Overall processing timeout (1 hour)
|
|
|
|
# Concurrency limits
|
|
maxConcurrentReads: 10 # Maximum concurrent file reading operations
|
|
|
|
# Rate limiting (0 = disabled)
|
|
rateLimitFilesPerSec: 0 # Files per second rate limit
|
|
|
|
# Memory limits
|
|
hardMemoryLimitMB: 512 # Hard memory limit (512MB)
|
|
|
|
# Safety features
|
|
enableGracefulDegradation: true # Enable graceful degradation on resource pressure
|
|
enableResourceMonitoring: true # Enable detailed resource monitoring
|
|
|
|
# Optional: Maximum concurrency for workers
|
|
# Default: number of CPU cores
|
|
# maxConcurrency: 4
|
|
|
|
# Optional: Supported output formats
|
|
# Default: ["json", "yaml", "markdown"]
|
|
# supportedFormats:
|
|
# - json
|
|
# - yaml
|
|
# - markdown
|
|
|
|
# Optional: File patterns to include
|
|
# Default: all files (empty list means no pattern filtering)
|
|
# filePatterns:
|
|
# - "*.go"
|
|
# - "*.py"
|
|
# - "*.js"
|