Skip to content

Latest commit

Β 

History

History
305 lines (280 loc) Β· 25.7 KB

CHANGELOG.md

File metadata and controls

305 lines (280 loc) Β· 25.7 KB

EdgeX Device SDK Go

Github repository

Change Logs for EdgeX Dependencies

[v2.1.0] Jakarta - 2021-11-17 (Only compatible with the 2.x releases)

Features ✨

  • Support object value type in Set Command (#801bc03)
  • Add NewCommandValueWithOrigin function (#c6c2082)
  • Support Object value type in Reading (#1025) (#d245461)

Bug Fixes πŸ›

  • Stop AutoEvents if the Device is locked (#1027) (#c02be29)
  • Fix nil pointer error when executing SET command with empty value (#0f89794)
  • Fix device yaml to Json error (#cf13810)
  • Update all TOML to use quote and not single-quote (#9e077e8)

Documentation πŸ“–

  • Add apiVersion to request body example (#1a6f6b9)
  • Remove the description about base64 encoding (#df04f74)
  • update device-simple README and ProvisionWatcher example (#76abb45)

[v2.0.0] Ireland - 2021-06-30 (Not Compatible with 1.x releases)

Features ✨

  • Enable using MessageBus as the default (#eca11b8)
  • support device profile provision in json format (#945ec1c)
  • add Event tagging capability (#149daef)
  • Add secure MessageBus capability (#57291f0)
  • CBOR encoding http response for event with binary reading (#0032f23)
  • update CommandRequest.Attributes type (#1370f96)
  • add request size middleware for device command (#c006079)
  • improve Event/Reading Origin logic (#c5bee4f)
  • update profile cache to reflect new profile model (#3ff13b5)
  • add capability to load devices from directory (#e2dd6f7)
  • Updated Attribution.txt for missing crypto module (#ed9c44c)
  • Enable Registry and Config access token (#40eaaf9)
  • update example configuration to support MessageBus (#a8316e3)
  • add MessageBus capablility (#0fbf16e)
  • Add support for structured custom configuration (#0699ac1)
  • add GetProfileByName function API (#691fc8b)
  • Upgrade core-contracts lib to use redesigned device profile (#816) (#a5ad5ab)
  • validate set command parameters against maximum/minimum and refactor transformer package (#813) (#3f52f3a)
  • update CommandValue for v2 (#dbb5e95)
  • handle no readings generated gracefully (#fd6d2d4)
  • spawn autoevents for discovered device (#4822fad)
  • process queryParams of url in PUT request (#0d64304)
  • dynamically adds profile in device callback (#26939be)
  • update v2 cache to load data via v2 clients (#b6352b0)
  • make update callback aware of service change (#3fc6617)
  • make DeviceService struct updatable (#ecc71a3)
  • add update device service callback (#9ee2204)
  • update v2 callback API (#b000b54)
  • update v2 command API (#3d1861d)
  • SecretProvider for storing/retrieving secrets (#bcd0eef)
  • Updates from PR review. (#c4cbbed)
  • Modify callback func to consist with V2 API (#98ab8c7)
  • Added missing module to Attribution.txt (#9a6397b)
  • Add /api/v2/secrets endpoint to store secrets (#2c57645)
  • Removed remote logging feature (#1cc1ee3)
  • v2: prepare v2 ProvisionWatcher model cache (#c95c718)
  • v2: add v2 ProvisionWatcher callback API (#ce664a3)

Test

Bug Fixes πŸ›

  • Fix device service update failed when startup (#785b4de)
  • fix default value usage in SET command (#65fbd6f)
  • modify function updateAssociatedProfile return errors (#942) (#13e775a)
  • correctly update DeviceService.deviceService model (#c48d0fd)
  • use RequestLimitMiddleware on all routes (#b69e6f6)
  • add logLevel check in LoggingMiddleware (#23eaf68)
  • fix deviceProfileMap refer to the same object (#cf93359)
  • fix set command resourceOperation mapping (#870) (#e9afc7c)
  • add Content-Type in context for MessageEnvelope (#2d80251)
  • add device OperatingState check in device command API (#db824b8)
  • remove StopAutoEvents call during bootstrap (#6d0d00b)
  • remove hard-coded Content-Type in SDK (#f2441cf)
  • sync v2 query parameter with ADR (#9940e7e)
  • rm unused pkg/service function params (#39c0334)

Code Refactoring β™»

  • remove redundant dic client code (#13aef19)
  • Change PublishTopicPrefix value to be 'edgex/events/device' (#37f218f)
  • remove unimplemented InitCmd/RemoveCmd configuration (#956) (#457577c)
  • Remove obsolete code from Add Secret (#951) (#93abf71)
  • Move top level individual config settings under Device section (#356d22d)
  • Use common ServiceInfo struct and adjust code/configuration (#a3cc839)
    BREAKING CHANGE:
    Device Service configuration items have changed
    
  • Update to assign and uses new Port Assignments (#1880e37)
  • Update for new service key names and overrides for hyphen to underscore (#8132b7b)
    BREAKING CHANGE:
    Service key names used in configuration have changed.
    
  • rename AutoEvent.Frequency field to Interval (#0649751)
  • replace usage of io/ioutl package (#cb99f86)
  • remove unnecessary check for WriteDeviceCommand (#e2c4148)
  • remove RO mapping not found warning log (#bcdc0e5)
  • update returned type to errors.Edgex (#eef323e)
  • return normal error type in pkg package (#a34d60e)
  • refactor MiddlewareFunc (#fd3eb0c)
  • Replace use of BurntSushi/toml with pelletier/go-toml (#dd0b196)
  • Replace file based with use of Secret Provider to get Access Tokens (#867) (#0004bfd)
    BREAKING CHANGE:
    All Device Services running with the secure Edgex Stack now need to have the SecretStore configured, a Vault token created and run with EDGEX_SECURITY_SECRET_STORE=true.
    
  • Switch to 2.0 Consul path (#8efa047)
    BREAKING CHANGE:
    Consul configuration now under the /2.0/ path
    
  • leverage latest profile cache (#ff9571a)
  • move config struct to config package (#5d743f6)
  • update bootstrap sequence (#0526fd6)
  • remove v1 code and unused constants (#3a954db)
  • remove v2 subdirectory for SDK (#269686d)
  • rename problematic terminology in SDK (#819fd06)
  • use new CommandValue function/method (#df528cb)
  • remove default floating encoding (#1a909d6)
  • replace PUT command wording to SET command (#6059ff5)
  • update logging message of simpledriver (#1c5dcca)
  • remove id map and by id method in cache (#59cae24)
  • upgrade SDK external function API for v2 (#583d861)
  • use constants defined in core-contracts (#91f06a6)
  • upgrade async function to handle v2 models (#75ab748)
  • upgrade bootstrap procoess for v2 (#d356ded)
  • refactor autoevents package for v2 (#316a12a)
  • upgrade command API to handle v2 models (#b71bc34)
  • upgrade provision package to use v2 models/clients (#62cbe10)
  • update clients package to use v2 client (#801d88e)
  • update container package for v2 (#ef8f9ac)
  • implement new utils function for v2 (#d7fb500)
  • upgrade transformer package for v2 (#82016d5)
  • upgrade SDK models to use v2 contract(model) (#de17357)
  • remove v1 cache and API code (#b998828)
  • leverage go-mod-core-contracts constants (#839fdd7)
  • consume edgex v2 go-mods (#71e5df7)
  • remove ValueType enumeration in Go-SDK (#ba4bab1)
  • Make SDK a V2 Go Module (#e04106a)
  • Fixup to change all occurances of secrets' to secret` (#24db2b5)

Documentation πŸ“–

  • Add badges to readme (#c8eb33a)
  • update v2 API swagger file (#97747a4)
  • v2: update schema to be consistent with edgex-go (#15155f8)

Build πŸ‘·

  • update snap build to use go1.16 via a build-snap (#bb5fdaa)
  • upgrade Golang to 1.16 (#9773bb9)
  • update snap build to use Golang 1.16 (#6dcb0bd)

Continuous Integration πŸ”„

  • update docker image name (#a051116)
  • update build files to support zmq dependency (#0b2e4f3)
  • standardize dockerfiles (#4682622)

v1.4.0 - 2021-01-08

Features ✨

  • update DS in metadata to reflect config change (#a5cd81b)
  • add a comment to explain why use buffer for sending event (#e273dc8)
  • autoevent adds buffer for sending event to coredata (#1c85f20)
  • Make the numeric value type allows overflow and NaN (#1c75f93)
  • remove AdminState check for callback api route (#b6110b2)
  • add v1 deviceService callback handler (#4cd2f77)
  • sdk: Implement Device AutoEvents SDK APIs (#e78e4a6)

Refactor

  • remove github.com/pkg/errors from Attribution.txt (#06df777)

Bug Fixes πŸ›

  • use pointer on Executor to correctly update it (#2bf6939)

Documentation πŸ“–

  • update release note for 1.4.0 release (#00c0363)

Build πŸ‘·

  • deps: bump gopkg.in/yaml.v2 from 2.3.0 to 2.4.0 (#7e6026a)
  • deps: bump github.com/gorilla/mux from 1.7.1 to 1.8.0 (#ea97e15)
  • deps: bump github.com/edgexfoundry/go-mod-bootstrap (#4691506)

Continuous Integration πŸ”„

  • add semantic.yml for commit linting, update PR template to latest (#ea09293)

v1.3.0 - 2020-11-11

Features ✨

  • implement Device SDK v2 common API (#fa7ee70)
  • implement v2 command API (#619) (#abee7d5)
  • implement v2 discovery API (#e0816de)
  • sdk: implement v2 callback api (#a3969cc)
  • sdk: prepare v2 cache for v2 callback api (#b24cbb4)
  • sdk: expose RegistryClient registryClient was already available on DeviceService, just made it public (#096110c)
  • sdk: start auto-discovery upon service startup (#9693139)

Bug Fixes πŸ›

  • pass ctx into client initialization function (#388ecb7)
  • improve device discovery flow and whitelist logic (#0e0b041)
  • fix autoevent panic during callback (#4c965aa)
  • fix device autodiscovery behavior (#4e5d2bb)
  • Create a buffer to handle the AsyncValues (#925ab5b)
  • update CommandExists to only check Device Commands (#7a69a11)
  • allow startup duration/interval to be overridden via env vars (#ea2f983)
  • sdk: prevent creating duplicate autoevent executor (#36fb88b)

Code Refactoring β™»

  • update LogLevel for pushing event to coredata (#05d1f85)
  • update dockerfile to appropriately use ENTRYPOINT and CMD, closes#569 (#6d7be66)
  • sdk: fix requested changes in PR (#97d2159)
  • sdk: release lock after discovery complete (#3b7bdf6)

Documentation πŸ“–

  • addition of version and LTS refs to README per arch's meeting (#bced3e5)

Build πŸ‘·

  • add dependabot.yml (#623c4a4)
  • upgrade to use Go 1.15 (#9448c71)
  • deps: bump gopkg.in/yaml.v2 from 2.2.8 to 2.3.0 (#bf2f1c2)
  • deps: bump github.com/OneOfOne/xxhash from 1.2.6 to 1.2.8 (#e4c69b4)
  • deps: bump github.com/edgexfoundry/go-mod-bootstrap (#497e2f1)
  • deps: bump github.com/edgexfoundry/go-mod-registry (#a563bd0)
  • deps: bump github.com/edgexfoundry/go-mod-bootstrap (#d1e6a07)

v1.2.3 - 2020-07-21

Code Refactoring β™»

Documentation πŸ“–

v1.2.2 - 2020-06-11

v1.2.1 - 2020-05-13

Features ✨

  • replace --serviceName with --instance (#7ed50e3)
  • add ability for service name override (#b7ceb80)

Bug Fixes πŸ›

  • Upgrade the Go modules to include the fixes (#d7b2a7f)
  • fix device service config stem in consul (#82cb5f2)
  • Update to use go-mod-bootstrap to fix issue with override un-done (#bf5510e)

v1.2.0 - 2020-04-27

Features ✨

  • environment: Allow uppercase environment overrides (#9151334)

Bug

  • MediaType: Update to latest go-mod-contracts for PropertyValue.MediaType fix (#84f383f)

Bug Fixes πŸ›

  • add update profile logic in device callback (#2966048)

Documentation πŸ“–

Build πŸ‘·

  • Update relevant files in device-sdk-go for Go 1.13. Closes #440. (#23bc509)

Reverts

  • Encode the float as base64 string by LB

v1.1.2 - 2020-02-11

Bug

  • MediaType: Fuji - Update to latest go-mod-contracts for PropertyValue.MediaType fix (#1218022)

v1.1.1 - 2019-12-06

v1.1.0 - 2019-11-11

Features ✨

  • server: Add API to allow adding additional routes to internal webserver (#6872dfc)

Bug

  • query-params: Fix panic if attributes isn't initalized (#dac6f04)

Feature

  • query-params: Handle QueryParams from EdgeX Command Service (#b172f45)

Bootstrap

v1.0.0 - 2019-06-25

0.7.1 - 2018-12-10

Async

Dstore