class DebChangelog
Constants
- AUTHOR_REGEX
- CHANGE_REGEX
- METADATA_REGEX
Public Class Methods
parse(contents)
click to toggle source
# File lib/deb-changelog.rb, line 11 def self.parse(contents) entries = [] contents.each_line do |line| line.chomp! if (metadata = line.match(METADATA_REGEX)&.named_captures) entries << metadata next end if (change = line.match(CHANGE_REGEX)&.named_captures) entries.last["changes"] ||= [] entries.last["changes"] << change["message"] next end if (author = line.match(AUTHOR_REGEX)&.named_captures) entries.last.merge! author next end end entries end
parse_file(file)
click to toggle source
# File lib/deb-changelog.rb, line 6 def self.parse_file(file) contents = File.read file parse contents end