Sha256: 5f7171dc84c7c403fb8b566b216ead35e9a0443537a52934cff800db60446447
Contents?: true
Size: 902 Bytes
Versions: 2
Compression:
Stored size: 902 Bytes
Contents
# frozen_string_literal: true module Git module Lint module Analyzers # Analyzes commit trailer collaborator email address format. class CommitTrailerCollaboratorEmail < Abstract include Dependencies[ setting: "trailers.collaborator", parser: "parsers.person", validator: "validators.email" ] def valid? = affected_commit_trailers.empty? def issue return {} if valid? { hint: %(Email must follow name and use format: "<name@server.domain>".), lines: affected_commit_trailers } end protected def invalid_line? trailer email = parser.call(trailer.value).email trailer.key.match?(setting.pattern) && !validator.call(email) end private attr_reader :parser, :validator end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
git-lint-9.1.0 | lib/git/lint/analyzers/commit_trailer_collaborator_email.rb |
git-lint-9.0.0 | lib/git/lint/analyzers/commit_trailer_collaborator_email.rb |