# Changelog for Hedis

## 0.12.5

Issue #136 fix slowlog parsing

## 0.12.4

* Add upper bound on network package

## 0.12.3

* Issue #135. Upper the base bound

## 0.12.2

* PR #134. Fix some asynchronous exception safety problems

## 0.12.1

* PR #133. Fixes to stream commands

## 0.12.0

* PR #130. Bring back ability to connect via a Unix Socket

## 0.11.1

* PR #129. Fix tests

## 0.11.0

* PR #126. Fixes for network 2.8 and 3.0

## 0.10.10

* Only disable warnings for GHC 8.6, fix build

## 0.10.9

* Remove deprecation warnings

## 0.10.8

* PR #121. make xgroupCreate return Status

## 0.10.7

* PR #121. Fix streaming on redis 5.0.2
* PR #121. Get rid of slave-thread

## 0.10.6

* PR #120. Add withConnect, withCheckedConnect

## 0.10.5

* PR #XXX Fix CI builds with updated Redis version

## 0.10.4

* PR #112. Implement streams commands

## 0.10.3

* PR #110. Add disconnect which destroys all (idle) resources in the pool

## 0.10.2

* PR #108. Add TLS support

## 0.10.1

* PR #104. Add a Semigroup instance (fix GHC 8.4)

## 0.10.0

* PR #102. Return list from srandmemberN
* PR #103. Add spopN
* PR #101. Add parseConnectInfo
* PR #100, Issue #99. Throw error when AUTH or SELECT fails on connect

## 0.9.12

* PR #98. Added `connectTimeout` option

## 0.9.11

* PR #94. Refactor fix for issue #92 - (Connection to Unix sockets is broken)

## 0.9.10

* PR #93, Issue #92. Connection to Unix sockets is broken

## 0.9.9

* PR #90. set SO_KEEPALIVE option on underlying connection socket 

## 0.9.8

* Fix syntax errors from redis when using scanOpts to specify match
  pattern or count options (see PR #88)

## 0.9.7

* Expose returnDecode method of RedisCtx (see issue #83)

## 0.9.6

* Export Condition constructors (see PR #86)

## 0.9.2

* Added multithreaded pub/sub message processing (see PR #77)

## 0.9.0

* Merge in a fresh commands.json and a set of new commands
  implemented. See PR #52 for more info

## 0.8.3

* Export MonadRedis methods

## 0.8.1

* Export unRedis/reRedis internalish functions which let you define
  MonadCatch instance easily (see PR #73)

## 0.8.0

* Major speed improvement by using non-backtracking parser (PR #69)

## 0.7.10

* Improved performance (PR #64)

## 0.7.7

* Close connection handle on error

## 0.7.2

* Improve speed, rewrite internal logic (PR #56)

## 0.7.1

* Add NFData instances

## 0.7.0

* Enforce all replies being recieved in runRedis. Pipelining between runRedis 
  calls doesn't work now.

## 0.6.10

* Add HyperLogLog support

## 0.6.4

* New connection option to automatically SELECT a database.

## 0.5 -> 0.6

* Changed return type of HDEL from Bool to Integer.
* Some documentation updates.

## 0.5 -> 0.5.1

* New commands: DUMP, RESTORE, BITOP, BITCOUNT.
* Removed the dependency on stm.
* Improved performance of Queued in long transactions.
* Minor documentation updates.


## 0.4.1 -> 0.5

* Added new Redis 2.6 commands, including Lua scripting support.
* A transaction context is now created by using the 'multiExec' function.
  The functions 'multi', 'exec' and 'discard' are no longer available
  individually.
* Inside of a transaction, commands return their results wrapped in a
  composable /future/, called 'Queued'.
* The 'getType' command (the Redis TYPE command) now has a custom return
  type 'RedisType'.
* Minor improvements and fixes to the documentation.


## 0.3.2 -> 0.4.1

* The following commands got a 'Maybe' added to their return type, to
  properly handle Redis returning `nil`-replies: `brpoplpush`, `lindex`, `lpop`,
  `objectEncoding`, `randomkey`, `rpop`, `rpoplpush`, `spop`, `srandmember`,
  `zrank`, `zrevrank`, `zscore`.
* Updated dependencies on `bytestring-lexing` and `stm`.
* Minor improvements and fixes to the documentation.