- (Jon) Included the HTTP method in the response log.
- (Jon) Set a default method value of 'GET' if not provided.
- (Jon) Ensured logs are sorted and cleaned up before final output.
- (Jon) Updated the instrumenter calls to include exceptions as a keyword argument for better clarity and consistency. GH-465
- (Jon) Refactored logging functionality
- Changed how start time is logged to keep it intact.
- Cleared out nil values from log fields before logging.
- Updated log messages for better clarity on service and timing.
- (Jon) Refactored error handling in service module
- Changed
throw
toraise
for better exception handling. - Rearranged rescue blocks for clearer flow.
- Improved readability and maintainability of the code.
- Changed
- (Jon) Updated the logging for data service requests.
- Changed log message to be more concise.
- Added response status to logged fields for better tracking.
- (Jon) Added pre-commit and pre-push hooks to prevent committing and pushing code that does not pass the linting and testing checks.
- (Jon) Adjusted the styling and linting rules to ensure the codebase adheres to the latest best practices.
- (Jon) Refactored test suite and fixed tests for the service class.
- (Jon) Added timing for API requests to log processing time.
- (Jon) Enhanced log messages with more detailed info about requests.
- (Jon) Updated methods to streamline error handling and logging.
- (Jon) Refactored connection creation to include retry logic.
- (Jon) Cleaned up method parameters for better readability.
- (Jon) Updated the
lib/data_services_api/service.rb
to include theX-Request-Id
header in the SAPINT requests to match the header received from the apps using the gem. - (Jon) Updated the
CHANGELOG.md
to include the new version changes - (Jon) Updated the
lib/data_services_api/version.rb
to include the new version number1.5.2
. - (Jon) Updated the
lib/data_services_api/service.rb
for ignorable Rubocop warnings. - (Jon) Implemented the
.github/workflows/publish.yml
workflow to publish the gem to the Epimorphics GitHub Package Registry. - (Jon) Updated the
README.md
to include the new workflow and theMakefile
to include thepublish
target to trigger the new workflow. - (Jon) Unified improved logging for requests and responses to the SAPINT service, alongside improved comments and documentation.
- (Jon) Fixed casing on the
X-Request-Id
header for SAPINT requests to match the header received from the apps using the gem. GH-189 - (Jon) Updated the previously supplied release date in the
v1.5.0
entry to match the actual release date. - (Jon) Updated the
version.rb
SUFFIX
entry to benil
by default to ensure the version number is correctly formatted.
- (Dan) Updates ruby to 2.7.8 and version cadence to 1.5.0
- (Jon) Now handles matching the message flag while ignoring the casing of the message
- (Jon) Better handling of reporting different logging levels using DRY principles
- (Jon) Resolves failing test for duration as integer
- (Jon) New and improved logging on the service level
- (Jon) Inclusion of the
X-Request-Id
header to SAPINT requests - (Jon) Updated service logger comments with better intentions
- (Jon) Improved Unit tests for the service logger
- (Jon) Refactors the elapsed time calculated for API requests to be resolved as microseconds rather than milliseconds. This is to improve the reporting of the elapsed time in the system tooling logs.
- (Jon) Resolves failing tests due to the improper invocation of mock objects without the correct arguments.
- (Jon) Minor text changes to the .gemspec file to update the description and summary of the gem as well as the name and email address for the maintainer.
- (Jon) Includes multiple updates and fixes to the codebase to resolve the majority of the Rubocop warnings.
- (Jon) Updated CI/CD workflows to use latest Epimorphics GitHub Actions versions.
- (Jon) Updated System test to include a test for the new elapsed time metric.
- (Jon) Refactored the linting settings to include lessons learned in other projects thereby improving the opinionated results from RuboCop to ensure the codebase adheres to current best practices.
- (Jon) Refactored the version cadence creation to include a SUFFIX value if provided; otherwise no SUFFIX is included in the version number.
- (Jon) Includes initial steps for better logging of API requests and responses to the system logs.
- (Jon) As part of the better logging updates the error message returned to the
requesting app has been refactored to be more concise as well the failed
connection error status has been set specifically to
503 Service Unavailable
.
- (Ian) Remove use of automated Faraday logging of API calls. Add manual logging of API calls, to conform to local best practice
- (Ian) Add duration to reported ActiveSupport::Notification of API response
- (Ian) Publish gem to Github package registry
- (Ian) Fix minimum Ruby version constraint in gemspec.
- (Ian) Added
ActiveSupport
instrumentation calls to allow collecting of metrics on API calls
- (Ian) Added GitHub actions to run Rubucop and Minitest tests in CI
- Added support for
@json_mode: "complete"
query parameter
- Added a DSAPI to SapiNT converter, which converts all DSAPI queries to SapiNT queries and then sends them to a SapiNT backend
- dependency updates
- fixed some minor Rubocop warnings
- dependency updates
- fixed deprecation warnings from minitest
- dependency updates
- updated code to conform to latest Rubocop guides
- added Changelog