require_relative 'lib/datapipeline/version' Gem::Specification.new do |spec| spec.name = 'datapipeline' spec.version = DataPipeline::VERSION spec.authors = ['Karl-Heinz Wild'] spec.email = ['kh.wild@wicom.li'] spec.summary = 'Schlankes ETL-Framework mit Ruby-DSL: lesen, prüfen, umbauen, schreiben' spec.description = <<~TEXT Pipelines als Ruby-DSL mit austauschbaren Storage-Plugins (PostgreSQL, SQLite, CSV, JSON/NDJSON, Excel, REST), verketteten Schritten (map, filter, validate, header, trailer), Lookups, Streaming, Satzarten-Layouts, Fehlerdateien, Dry-Run, inkrementellen Läufen und dem Kommando etl mit Exit-Codes. TEXT spec.homepage = 'https://git.wicom.li/wkh/datapipeline' spec.license = 'Nonstandard' spec.required_ruby_version = '>= 3.4' spec.metadata['changelog_uri'] = "#{spec.homepage}/src/branch/main/CHANGELOG.md" spec.metadata['rubygems_mfa_required'] = 'true' spec.files = Dir['lib/**/*.rb', 'exe/*', 'README.md', 'CHANGELOG.md'] spec.bindir = 'exe' spec.executables = ['etl'] spec.require_paths = ['lib'] # csv and logger are no default gems any more from ruby 3.4 / 4.0 spec.add_dependency 'csv', '~> 3.3' spec.add_dependency 'logger', '~> 1.6' # optional, loaded only when the plugin is used (add them to the Gemfile of the application): # pg (postgres), sqlite3 (sqlite), roo + caxlsx (excel), http (rest, slack) end