packages feed

ldap-client-og 0.4.0 → 0.5.0

raw patch · 3 files changed

+25/−2 lines, 3 filesdep +data-defaultdep +tlsPVP ok

version bump matches the API change (PVP)

Dependencies added: data-default, tls

API changes (from Hackage documentation)

- Ldap.Client: data () => NonEmpty a
+ Ldap.Client: data NonEmpty a
- Ldap.Client: data () => PortNumber
+ Ldap.Client: data PortNumber
- Ldap.Client: type AttrList f = [(Attr, f AttrValue)]
+ Ldap.Client: type AttrList (f :: Type -> Type) = [(Attr, f AttrValue)]
- Ldap.Client.Internal: data () => PortNumber
+ Ldap.Client.Internal: data PortNumber
- Ldap.Client.Internal: type AttrList f = [(Attr, f AttrValue)]
+ Ldap.Client.Internal: type AttrList (f :: Type -> Type) = [(Attr, f AttrValue)]

Files

CHANGELOG.markdown view
@@ -1,3 +1,10 @@+0.5.0+===++  * Supported lts-23.28 (GHC 9.8.4)++  * tls update broke us+ 0.4.0 === 
ldap-client-og.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.37.0.+-- This file has been generated from package.yaml by hpack version 0.38.0. -- -- see: https://github.com/sol/hpack  name:           ldap-client-og-version:        0.4.0+version:        0.5.0 synopsis:       Pure Haskell LDAP Client Library description:    Pure Haskell LDAP client library implementing (parts of) RFC 4511. category:       Network@@ -53,10 +53,12 @@     , bytestring     , containers     , crypton-connection+    , data-default     , network     , semigroups     , stm     , text+    , tls   default-language: Haskell2010  test-suite spec
src/Ldap/Client.hs view
@@ -70,6 +70,7 @@ import qualified Data.ASN1.Error as Asn1 import qualified Data.ByteString as ByteString import qualified Data.ByteString.Lazy as ByteString.Lazy+import           Data.Default (def) import           Data.Foldable (asum) import           Data.Function (fix) import           Data.List.NonEmpty (NonEmpty((:|)))@@ -79,6 +80,8 @@ import           Data.Typeable (Typeable) import           Network.Connection (Connection) import qualified Network.Connection as Conn+import qualified Network.TLS as Tls+import qualified Network.TLS.Extra as Tls (ciphersuite_default) import           Prelude hiding (compare) import qualified System.IO.Error as IO @@ -166,11 +169,21 @@     , Conn.connectionUseSocks = Nothing     } +-- Due to crypton-connection's API (inherited from connection) being+-- a hot pile of garbage, we don't have a simple, convenient, and safe way+-- to override the very simple default TLS connection settings. Instead, we+-- have to painfully copy whatever is going on in+--+-- https://hackage-content.haskell.org/package/crypton-connection-0.4.5/docs/src/Network.Connection.Types.html#line-95+--+-- (or a newer version) and fiddle with it. Our fiddling also always breaks+-- on pretty much any changes in crypton-connection related to TLSSEttings. defaultTlsSettings :: Conn.TLSSettings defaultTlsSettings = Conn.TLSSettingsSimple   { Conn.settingDisableCertificateValidation = False   , Conn.settingDisableSession = False   , Conn.settingUseServerName = False+  , Conn.settingClientSupported = def {Tls.supportedCiphers = Tls.ciphersuite_default}   }  insecureTlsSettings :: Conn.TLSSettings@@ -178,6 +191,7 @@   { Conn.settingDisableCertificateValidation = True   , Conn.settingDisableSession = False   , Conn.settingUseServerName = False+  , Conn.settingClientSupported = def {Tls.supportedCiphers = Tls.ciphersuite_default}   }  input :: FromAsn1 a => TQueue a -> Connection -> IO b