lib/github/kv.rb in github-ds-0.5.0 vs lib/github/kv.rb in github-ds-0.5.2
- old
+ new
@@ -127,11 +127,12 @@
Result.new {
kvs = GitHub::SQL.results(<<-SQL, :keys => keys, :now => now, :connection => connection).to_h
SELECT `key`, value FROM #{@table_name} WHERE `key` IN :keys AND (`expires_at` IS NULL OR `expires_at` > :now)
SQL
- keys.map { |key| kvs[key] }
+ kvs.keys.each { |key| kvs[key.downcase] = kvs[key] }
+ keys.map { |key| kvs[key.downcase] }
}
end
# set :: String, String, expires: Time? -> nil
#
@@ -326,10 +327,10 @@
`updated_at`
),
`expires_at`=IF(
concat('',`value`*1) = `value`,
IF(
- :touch,
+ :touch OR (`expires_at` IS NULL OR `expires_at`<:now),
:expires,
`expires_at`
),
`expires_at`
)