Skip to content

Proposal: require_keys should flag blank/whitespace ENV values #536

@Grigore-George-Mihai

Description

@Grigore-George-Mihai

Dotenv.require_keys only checks key presence, so FOO= or FOO=" " pass, which can mask misconfiguration.

Old

def require_keys(*keys)
  missing_keys = keys.flatten - ::ENV.keys
  return if missing_keys.empty?
  raise MissingKeys, missing_keys
end

New:

def require_keys(*keys) 
  missing_keys = keys.flatten.select { |k| ENV[k].to_s.strip.empty? } 
  raise MissingKeys, missing_keys unless missing_keys.empty? 
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions