From 4f85099ef8c2456c032f0053b3da4ae29e4240d2 Mon Sep 17 00:00:00 2001 From: Sonu Saha Date: Tue, 10 Sep 2024 11:48:13 +0530 Subject: [PATCH 1/2] chore: manually change the version to 0.1.0 for first release Signed-off-by: Sonu Saha --- lib/nse_data/version.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/nse_data/version.rb b/lib/nse_data/version.rb index b03515d..cfd4683 100644 --- a/lib/nse_data/version.rb +++ b/lib/nse_data/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module NseData - VERSION = '0.1.14' + VERSION = '0.1.0' end From 5ef5b5262badd3eb55c80935895a29365334eb9b Mon Sep 17 00:00:00 2001 From: Sonu Saha Date: Tue, 10 Sep 2024 11:48:33 +0530 Subject: [PATCH 2/2] chore: manually update changelog for initial release Signed-off-by: Sonu Saha --- CHANGELOG.md | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f5720b..102d460 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,22 @@ -## [Unreleased] +# Changelog -## [0.1.0] - 2024-09-04 +[0.1.0] - 2024-09-10 -- Initial release +## Added +- **Caching Mechanism**: Implemented a scalable & flexible caching mechanism to reduce unnecessary API requests. Currently, it supports in-memory caching, with configurable features like custom TTL, disable caching for certain APIs or force refresh API calls. + +- **Logger Configuration**: Implemented a custom logging system that can be configured by users. By default, logs are written to system temporary files. + +- **HttpClient**: Implemented a flexible HTTP client using Faraday, with support for future extensions to other libraries, if needed. + +- **ApiManager**: Implemented an API Manager that sets up the base URL, loads API endpoints from a YAML file, creates dynamic methods for each endpoint, and integrates the caching mechanism with configurable TTL for API calls and no-caching for some endpoints. + +- **RSpec Tests**: Added RSpec tests for core classes with code coverage over 90%. + +- **Security Audit**: Verified gem dependencies using bundler-audit to ensure no known vulnerabilities. + +## Usage Notes +For usage instructions, please refer to the documentation available in the README file. + +## Future Work +**Core Logic Extraction**: Plan to extract the core API interaction logic into a separate gem. \ No newline at end of file