Skip to content

2.0.0

Choose a tag to compare

@dpacheconr dpacheconr released this 03 Sep 15:43
· 4 commits to main since this release

What's Changed

BREAKING CHANGES:

  • Complete project restructure with new modular architecture
  • Renamed directories from hyphenated to underscore format (new-relic-* to new_relic_*)
  • Removed legacy base image approach in favor of shared components
  • Updated Docker image names and entry points for consistency

MAJOR FEATURES:

  • Modular Architecture Redesign

  • Introduced shared components library for common functionality

  • Created processor-based architecture with specialized handlers:

    • BaseProcessor: Common processing interface
    • JobProcessor: Individual job processing and tracing
    • PipelineProcessor: Pipeline-level orchestration
    • BridgeProcessor: Bridge job handling and downstream triggers
    • DownstreamProcessor: Multi-project pipeline support
  • Separated exporters into dedicated modules with clear responsibilities

  • Enhanced Bridge and Downstream Pipeline Support

  • Full support for GitLab bridge jobs and downstream pipeline triggers

  • Comprehensive bridge processing with proper parent-child relationships

  • Multi-project pipeline tracing across organizational boundaries

  • Bridge jobs can be excluded using GLAB_EXCLUDE_JOBS configuration

  • Implemented GLAB_USE_NAMESPACE_SLUG feature

  • Centralized Configuration Management

  • Type-safe configuration system with dataclasses and validation

  • Automatic New Relic region detection (US/EU) based on API key format

  • Environment variable validation with descriptive error messages

  • Backward compatibility with deprecation warnings for smooth migration

  • Health monitoring and configuration validation endpoints

  • Structured Logging System

  • Replaced all print statements with structured JSON logging

  • Performance and debugging improvements

  • Comprehensive Test Suite

  • Integration tests for GitLab and New Relic APIs

  • Performance testing and benchmarking

  • Error handling and edge case validation

  • Configuration management testing

  • Processor-specific test suites

  • OTEL attribute filtering and helpers testing

TECHNICAL IMPROVEMENTS:

  • OpenTelemetry Enhancements

  • Improved attribute parsing for nested objects and arrays

  • Enhanced span status handling and instrumentation

  • Optimized resource detection and attribute management

  • Data Processing Improvements

  • Enhanced JSON array flattening for complex GitLab data structures

  • Improved attribute filtering and sanitization

  • Better handling of nested pipeline data and relationships

  • Optimized data transformation pipelines

  • Error Handling and Resilience

  • Comprehensive exception handling with custom exception classes

  • Graceful degradation for API failures and network issues

  • Improved retry logic and rate limiting

  • Better error reporting and debugging capabilities

  • Performance Optimizations

  • Reduced logging verbosity with debug-level operational details

  • Optimized API calls and data processing workflows

  • Improved memory usage and resource management

  • Enhanced caching and data deduplication

INFRASTRUCTURE CHANGES:

  • Docker and Deployment
  • Updated Dockerfiles with proper PYTHONPATH configuration
  • Improved container entry points and health checks
  • Enhanced docker-compose.yaml with corrected service definitions

MIGRATION NOTES:

  • Update Docker image references to new 2.0.0 tag
  • Bridge processing is now enabled by default

Full Changelog: 1.0.15...2.0.0