packages feed

sbp 4.5.0 → 4.6.0

raw patch · 5 files changed

+93/−3 lines, 5 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ SwiftNav.SBP: SBPMsgEd25519Certificate :: MsgEd25519Certificate -> Msg -> SBPMsg
+ SwiftNav.SBP: SBPMsgEd25519Signature :: MsgEd25519Signature -> Msg -> SBPMsg
+ SwiftNav.SBP: _SBPMsgEd25519Certificate :: Prism' SBPMsg (MsgEd25519Certificate, Msg)
+ SwiftNav.SBP: _SBPMsgEd25519Signature :: Prism' SBPMsg (MsgEd25519Signature, Msg)
+ SwiftNav.SBP.Signing: MsgEd25519Certificate :: ![Word8] -> MsgEd25519Certificate
+ SwiftNav.SBP.Signing: MsgEd25519Signature :: ![Word8] -> MsgEd25519Signature
+ SwiftNav.SBP.Signing: [_msgEd25519Certificate_stub] :: MsgEd25519Certificate -> ![Word8]
+ SwiftNav.SBP.Signing: [_msgEd25519Signature_stub] :: MsgEd25519Signature -> ![Word8]
+ SwiftNav.SBP.Signing: data MsgEd25519Certificate
+ SwiftNav.SBP.Signing: data MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance Data.Binary.Class.Binary SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance Data.Binary.Class.Binary SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance GHC.Classes.Eq SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance GHC.Classes.Eq SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance GHC.Read.Read SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance GHC.Read.Read SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance GHC.Show.Show SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance GHC.Show.Show SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Signing.MsgEd25519Certificate
+ SwiftNav.SBP.Signing: instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Signing.MsgEd25519Signature
+ SwiftNav.SBP.Signing: msgEd25519Certificate :: Word16
+ SwiftNav.SBP.Signing: msgEd25519Certificate_stub :: Iso' MsgEd25519Certificate [Word8]
+ SwiftNav.SBP.Signing: msgEd25519Signature :: Word16
+ SwiftNav.SBP.Signing: msgEd25519Signature_stub :: Iso' MsgEd25519Signature [Word8]
- SwiftNav.SBP.Types: class HasMsg c_af3S
+ SwiftNav.SBP.Types: class HasMsg c_af61
- SwiftNav.SBP.Types: msg :: HasMsg c_af3S => Lens' c_af3S Msg
+ SwiftNav.SBP.Types: msg :: HasMsg c_af61 => Lens' c_af61 Msg
- SwiftNav.SBP.Types: msgSBPCrc :: HasMsg c_af3S => Lens' c_af3S Word16
+ SwiftNav.SBP.Types: msgSBPCrc :: HasMsg c_af61 => Lens' c_af61 Word16
- SwiftNav.SBP.Types: msgSBPLen :: HasMsg c_af3S => Lens' c_af3S Word8
+ SwiftNav.SBP.Types: msgSBPLen :: HasMsg c_af61 => Lens' c_af61 Word8
- SwiftNav.SBP.Types: msgSBPPayload :: HasMsg c_af3S => Lens' c_af3S Bytes
+ SwiftNav.SBP.Types: msgSBPPayload :: HasMsg c_af61 => Lens' c_af61 Bytes
- SwiftNav.SBP.Types: msgSBPSender :: HasMsg c_af3S => Lens' c_af3S Word16
+ SwiftNav.SBP.Types: msgSBPSender :: HasMsg c_af61 => Lens' c_af61 Word16
- SwiftNav.SBP.Types: msgSBPType :: HasMsg c_af3S => Lens' c_af3S Word16
+ SwiftNav.SBP.Types: msgSBPType :: HasMsg c_af61 => Lens' c_af61 Word16

Files

sbp.cabal view
@@ -1,5 +1,5 @@ name:                  sbp-version:               4.5.0+version:               4.6.0 synopsis:              SwiftNav's SBP Library homepage:              https://github.com/swift-nav/libsbp license:               MIT@@ -43,6 +43,7 @@                      , SwiftNav.SBP.Piksi                      , SwiftNav.SBP.Sbas                      , SwiftNav.SBP.Settings+                     , SwiftNav.SBP.Signing                      , SwiftNav.SBP.SolutionMeta                      , SwiftNav.SBP.Ssr                      , SwiftNav.SBP.System
src/SwiftNav/SBP.hs view
@@ -32,6 +32,7 @@ import SwiftNav.SBP.Piksi as Exports import SwiftNav.SBP.Sbas as Exports import SwiftNav.SBP.Settings as Exports+import SwiftNav.SBP.Signing as Exports import SwiftNav.SBP.SolutionMeta as Exports import SwiftNav.SBP.Ssr as Exports import SwiftNav.SBP.System as Exports
src/SwiftNav/SBP/Msg.hs view
@@ -42,6 +42,7 @@ import SwiftNav.SBP.Piksi import SwiftNav.SBP.Sbas import SwiftNav.SBP.Settings+import SwiftNav.SBP.Signing import SwiftNav.SBP.SolutionMeta import SwiftNav.SBP.Ssr import SwiftNav.SBP.System@@ -93,6 +94,8 @@    | SBPMsgDgnssStatus MsgDgnssStatus Msg    | SBPMsgDops MsgDops Msg    | SBPMsgDopsDepA MsgDopsDepA Msg+   | SBPMsgEd25519Certificate MsgEd25519Certificate Msg+   | SBPMsgEd25519Signature MsgEd25519Signature Msg    | SBPMsgEphemerisBds MsgEphemerisBds Msg    | SBPMsgEphemerisDepA MsgEphemerisDepA Msg    | SBPMsgEphemerisDepB MsgEphemerisDepB Msg@@ -325,6 +328,8 @@           | _msgSBPType == msgDgnssStatus = SBPMsgDgnssStatus (decode (fromStrict (unBytes _msgSBPPayload))) m           | _msgSBPType == msgDops = SBPMsgDops (decode (fromStrict (unBytes _msgSBPPayload))) m           | _msgSBPType == msgDopsDepA = SBPMsgDopsDepA (decode (fromStrict (unBytes _msgSBPPayload))) m+          | _msgSBPType == msgEd25519Certificate = SBPMsgEd25519Certificate (decode (fromStrict (unBytes _msgSBPPayload))) m+          | _msgSBPType == msgEd25519Signature = SBPMsgEd25519Signature (decode (fromStrict (unBytes _msgSBPPayload))) m           | _msgSBPType == msgEphemerisBds = SBPMsgEphemerisBds (decode (fromStrict (unBytes _msgSBPPayload))) m           | _msgSBPType == msgEphemerisDepA = SBPMsgEphemerisDepA (decode (fromStrict (unBytes _msgSBPPayload))) m           | _msgSBPType == msgEphemerisDepB = SBPMsgEphemerisDepB (decode (fromStrict (unBytes _msgSBPPayload))) m@@ -549,6 +554,8 @@       encoder (SBPMsgDgnssStatus _ m) = put m       encoder (SBPMsgDops _ m) = put m       encoder (SBPMsgDopsDepA _ m) = put m+      encoder (SBPMsgEd25519Certificate _ m) = put m+      encoder (SBPMsgEd25519Signature _ m) = put m       encoder (SBPMsgEphemerisBds _ m) = put m       encoder (SBPMsgEphemerisDepA _ m) = put m       encoder (SBPMsgEphemerisDepB _ m) = put m@@ -777,6 +784,8 @@         | msgType == msgDgnssStatus = SBPMsgDgnssStatus <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj         | msgType == msgDops = SBPMsgDops <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj         | msgType == msgDopsDepA = SBPMsgDopsDepA <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj+        | msgType == msgEd25519Certificate = SBPMsgEd25519Certificate <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj+        | msgType == msgEd25519Signature = SBPMsgEd25519Signature <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj         | msgType == msgEphemerisBds = SBPMsgEphemerisBds <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj         | msgType == msgEphemerisDepA = SBPMsgEphemerisDepA <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj         | msgType == msgEphemerisDepB = SBPMsgEphemerisDepB <$> pure (decode (fromStrict (unBytes payload))) <*> parseJSON obj@@ -1006,6 +1015,8 @@   toJSON (SBPMsgDgnssStatus n m) = toJSON n <<>> toJSON m   toJSON (SBPMsgDops n m) = toJSON n <<>> toJSON m   toJSON (SBPMsgDopsDepA n m) = toJSON n <<>> toJSON m+  toJSON (SBPMsgEd25519Certificate n m) = toJSON n <<>> toJSON m+  toJSON (SBPMsgEd25519Signature n m) = toJSON n <<>> toJSON m   toJSON (SBPMsgEphemerisBds n m) = toJSON n <<>> toJSON m   toJSON (SBPMsgEphemerisDepA n m) = toJSON n <<>> toJSON m   toJSON (SBPMsgEphemerisDepB n m) = toJSON n <<>> toJSON m@@ -1229,6 +1240,8 @@   msg f (SBPMsgDgnssStatus n m) = SBPMsgDgnssStatus n <$> f m   msg f (SBPMsgDops n m) = SBPMsgDops n <$> f m   msg f (SBPMsgDopsDepA n m) = SBPMsgDopsDepA n <$> f m+  msg f (SBPMsgEd25519Certificate n m) = SBPMsgEd25519Certificate n <$> f m+  msg f (SBPMsgEd25519Signature n m) = SBPMsgEd25519Signature n <$> f m   msg f (SBPMsgEphemerisBds n m) = SBPMsgEphemerisBds n <$> f m   msg f (SBPMsgEphemerisDepA n m) = SBPMsgEphemerisDepA n <$> f m   msg f (SBPMsgEphemerisDepB n m) = SBPMsgEphemerisDepB n <$> f m
src/SwiftNav/SBP/Navigation.hs view
@@ -2370,9 +2370,9 @@   { _msgReferenceFrameParam_ssr_iod    :: !Word8     -- ^ SSR IOD parameter.   , _msgReferenceFrameParam_sn         :: !Text-    -- ^ Name of source coordinate-system using the EPSG identification code.+    -- ^ Name of source coordinate-system.   , _msgReferenceFrameParam_tn         :: !Text-    -- ^ Name of target coordinate-system using the EPSG identification code.+    -- ^ Name of target coordinate-system.   , _msgReferenceFrameParam_sin        :: !Word8     -- ^ System Identification Number.   , _msgReferenceFrameParam_utn        :: !Word16
+ src/SwiftNav/SBP/Signing.hs view
@@ -0,0 +1,75 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# LANGUAGE NoImplicitPrelude           #-}+{-# LANGUAGE TemplateHaskell             #-}+{-# LANGUAGE RecordWildCards             #-}++-- |+-- Module:      SwiftNav.SBP.Signing+-- Copyright:   Copyright (C) 2015-2021 Swift Navigation, Inc.+-- License:     MIT+-- Contact:     https://support.swiftnav.com+-- Stability:   experimental+-- Portability: portable+--+-- \< Messages relating to signatures \>++module SwiftNav.SBP.Signing+  ( module SwiftNav.SBP.Signing+  ) where++import BasicPrelude+import Control.Lens+import Control.Monad.Loops+import Data.Binary+import Data.Binary.Get+import Data.Binary.IEEE754+import Data.Binary.Put+import Data.ByteString.Lazy    hiding (ByteString)+import Data.Int+import Data.Word+import SwiftNav.SBP.TH+import SwiftNav.SBP.Types+import SwiftNav.SBP.Gnss++{-# ANN module ("HLint: ignore Use camelCase"::String) #-}+{-# ANN module ("HLint: ignore Redundant do"::String) #-}+{-# ANN module ("HLint: ignore Use newtype instead of data"::String) #-}+++msgEd25519Signature :: Word16+msgEd25519Signature = 0x0C01++data MsgEd25519Signature = MsgEd25519Signature+  { _msgEd25519Signature_stub :: ![Word8]+  } deriving ( Show, Read, Eq )++instance Binary MsgEd25519Signature where+  get = do+    _msgEd25519Signature_stub <- whileM (not <$> isEmpty) getWord8+    pure MsgEd25519Signature {..}++  put MsgEd25519Signature {..} = do+    mapM_ putWord8 _msgEd25519Signature_stub++$(makeSBP 'msgEd25519Signature ''MsgEd25519Signature)+$(makeJSON "_msgEd25519Signature_" ''MsgEd25519Signature)+$(makeLenses ''MsgEd25519Signature)++msgEd25519Certificate :: Word16+msgEd25519Certificate = 0x0C02++data MsgEd25519Certificate = MsgEd25519Certificate+  { _msgEd25519Certificate_stub :: ![Word8]+  } deriving ( Show, Read, Eq )++instance Binary MsgEd25519Certificate where+  get = do+    _msgEd25519Certificate_stub <- whileM (not <$> isEmpty) getWord8+    pure MsgEd25519Certificate {..}++  put MsgEd25519Certificate {..} = do+    mapM_ putWord8 _msgEd25519Certificate_stub++$(makeSBP 'msgEd25519Certificate ''MsgEd25519Certificate)+$(makeJSON "_msgEd25519Certificate_" ''MsgEd25519Certificate)+$(makeLenses ''MsgEd25519Certificate)