Releases: ferrumnet/tokenSupply
v0.10.0
Release v0.10.0
We are thrilled to announce the release of v0.10.0! This release includes the addition of a new admin dashboard, improvements to the setup and update of Non-Circulating Supply Address Config, new backend functions, routes, and APIs, as well as other enhancements that make the application more efficient and user-friendly.
New Features
What's Changed
-
Admin Dashboard and Updated APIs to support admin features by @taha-abbasi in #23
-
Admin Dashboard: We've introduced a new admin dashboard that provides users with a user-friendly interface to manage their token supply. This dashboard allows users to easily set up and update Non-Circulating Supply Address Config, making the process more intuitive and accessible.
-
Backend Functions, Routes, and APIs: We have implemented new backend functions, routes, and APIs to support the admin dashboard and other front-end features. These additions enable seamless interaction between the frontend and backend, providing a cohesive user experience.
- New API:
GET /nonCirculatingSupplyAddresses
- Retrieve the list of non-circulating supply addresses. - New API:
POST /addNonCirculatingSupplyAddress
- Add a new non-circulating supply address. - New API:
PUT /updateNonCirculatingSupplyAddress
- Update an existing non-circulating supply address. - New API:
DELETE /removeNonCirculatingSupplyAddress
- Remove a non-circulating supply address from the list.
- New API:
Improvements
-
Setup and Update Non-Circulating Supply Address Config: Enhanced the process of setting up and updating Non-Circulating Supply Address Config, ensuring smoother and more reliable functionality. Users can now manage their token supply with ease, directly from the new admin dashboard.
-
Error Handling: Improved error handling and messaging to provide more informative feedback for users when encountering issues while using the application. This enhancement allows users to quickly identify and resolve problems they might face during setup or updates.
-
Code Optimization: Refactored the codebase to improve maintainability, readability, and future scalability. This optimization ensures a more robust and efficient application.
Bug Fixes
- Fixed XML Error: Resolved an issue where users encountered an XML error when accessing certain routes, such as
/updateNonCirculatingSupplyAddressConfig
and/setupTokenSupply
. Users should no longer experience this issue, allowing for seamless navigation and usage of the application.
We hope you enjoy the improvements and new features in this release. As always, we appreciate your feedback and support!
Full Changelog: v0.9.26...v0.10.0
v0.9.26
What's Changed
- Dynamic nonCirculatingSupplyAddressConfiguration based on Currency by @taha-abbasi in #21
Release v0.9.26
In this release, we have made several improvements and updates to the codebase since Release v0.9.0. Below is a summary of the most notable changes:
1. Updated getTotalSupplyAcrossNetworks
function
- Returns JSON objects
- Fixed the issue with supply numbers not being accurate up to 18 decimals
2. Modified the getNetworkConfigurations
function
- Returns the
currencyId
alongside the network configurations
3. Updated the /nonCirculatingSupplyAddresses
route
- Removed the
jsonRpcUrl
value from the response without affecting thegetNonCirculatingSupplyAddressConfigurations
function
4. Moved the database collection name to an environment variable
- Updated the
getNonCirculatingSupplyAddressesConfigInput
function to use the new variable - Fixed the TypeScript error related to the potential
undefined
value of the environment variable by providing a fallback value
These updates should improve the overall functionality and maintainability of the code. Please review the release notes and update your local environments accordingly.
Full Changelog: v0.9.0...v0.9.26
v0.9.0
What's Changed
- Removed chainIdToNetworkMap with RPC Urls by @taha-abbasi in #19
Release v0.9.0
Release v0.9.0 brings several improvements and updates to the Token Supply application. These changes enhance the overall functionality, security, and scalability of the app.
Changes
1. MongoDB Integration
- Integrated MongoDB to store and manage network configurations and non-circulating supply address configurations.
- Updated the
getNetworkConfigurations
andgetNonCirculatingSupplyAddressConfigurations
functions to fetch data from the MongoDB database. - Refactored the code to use the MongoDB native driver for database operations.
2. Environment Variables and Security
- Moved sensitive data, such as the MongoDB connection string (MONGODB_URI) and cache duration (CACHE_DURATION), to environment variables to prevent exposing them publicly.
- Created a
.env
file to store environment variables locally. - Updated the deployment process to use Elastic Beanstalk environment variables to keep sensitive data secure.
3. Cache Middleware
- Implemented cache middleware to cache API responses and reduce response times.
- The cache duration is now configurable through the
CACHE_DURATION
environment variable.
4. Code Refactoring and Bug Fixes
- Fixed issues with the
findOne
query in thechainIdToNetworkMapCollection
and updated the document structure. - Fixed a TypeScript error in
src/config.ts
. - Various code refactoring and improvements for better readability and maintainability.
5. Updated Endpoint
- Modified the
/totalSupply
endpoint to use the updated data fetching functions.
Please update your application to Release v0.9.0 to take advantage of these new features and improvements.
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- Develop by @taha-abbasi in #18
- Add caching to the API endpoints, improving performance by reducing the number of calls to external services
- Move
cacheMiddleware
function to a separate file named cacheMiddleware.ts - Import and use cacheMiddleware in server.ts
- Update cacheMiddleware implementation to fix TypeScript errors
This release includes improvements to the cacheMiddleware
implementation, separates it into its own file, and adds caching to the API endpoints for better performance.
Performance improvement:
By adding caching to the API endpoints, we reduce the number of calls to external services, leading to better response times and less load on the services. This change significantly improves the performance of the API, especially for frequently accessed data.
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- Develop by @taha-abbasi in #12
- Dynamically provide a
tokenContractAddress
andchainId
to query supply for any token integrated with gateway - Updated
config.ts
to retrievetokenContractAddress
andchainId
values from URL parameters. - Modified
getNonCirculatingSupplyAddressConfigurations()
andgetNetworkConfigurations()
functions to accepttokenContractAddress
andchainId
as parameters. - Updated
getNonCirculatingSupplyBalances()
function to resolve build errors.
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Release Notes for v0.6.0:
In this release, we have made significant updates to the project structure, improved the code organization, and implemented new features to calculate and display token supply data across multiple networks. The following changes have been made since Release v0.5.0:
-
Introduced a new
types.ts
file that includes TypeScript interfaces and types for better type checking and code maintainability. This file contains types such asNonCirculatingSupplyBalance
,NetworkConfiguration
,NetworkConfigurations
,AddressConfigurationInput
, andAddressConfiguration
. -
Updated the
config.ts
file to export thegetNonCirculatingSupplyAddressConfigurations
function, which retrieves the address configurations for non-circulating supply. -
Updated the
getSupplyAcrossNetworks.ts
file to include thegetNonCirculatingSupplyBalances
function, which calculates the non-circulating supply balances for each address. The file has also been updated to utilize the new types introduced in thetypes.ts
file.
These updates improve the overall organization of the codebase and provide better support for managing token supply data across multiple networks. This release enhances the application's functionality and maintainability, making it easier to extend and adapt to future requirements.
What's Changed
- Dynamic nonCirculatingSupplyAddress Config by @taha-abbasi in #11
Full Changelog: v0.5.2...v0.6.0
v0.5.2
What's Changed
- Removed BNB Beacon Chain from config to solve issue #9 by @taha-abbasi in #10
Full Changelog: v0.5.1...v0.5.2
v0.5.1
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
- nonCirculatingSupply Configuration and Circulating Supply Balance by @taha-abbasi in #8
Release v0.5.0
This release includes significant updates and improvements to the codebase since Release v0.4.0. The following changes have been made:
- Added src/types.ts file to define custom TypeScript interfaces, such as NonCirculatingSupplyBalance.
- Added src/utils.ts file to implement utility functions like getBep2TokenBalance and getErc20TokenBalance.
- Updated src/config.ts to include a new getNetworkConfigurations function, the ApiResponse interface, and the chainIdToNetworkMap object. Additionally, the nonCirculatingSupplyAddressesConfig array has been updated with new entries.
- Modified src/getSupplyAcrossNetworks.ts to use the newly added utility functions and configurations, as well as to improve error handling and logging.
- Overall improvements in code structure and readability, making it easier to maintain and extend the project in the future.
Full Changelog: v0.4.0...v0.5.0
v0.4.0
Release Notes for v0.4.0:
- Added dynamic fetching of network configurations using an API in config.ts.
- Updated the server (server.ts) to use the new getNetworkConfigurations function for both /totalSupplyAcrossNetworks and /totalSupply endpoints.
- Improved application flexibility and adaptability to network configuration changes.
With these updates, the tokenSupply application in Release v0.4.0 now provides a more flexible and accurate solution for querying the total supply of tokens across various networks.
What's Changed
Release v0.4.0 of the tokenSupply application introduces dynamic fetching of network configurations using an API, providing a more up-to-date and flexible solution. The following changes have been made to the codebase:
- Dynamic Network Configuration based on API Response by @taha-abbasi in #7
config.ts
: Network configurations are now fetched using the getNetworkConfigurations function, which makes an API call to fetch token contract addresses for different networks. The hardcoded network configurations have been replaced with a chain ID to network mapping (chainIdToNetworkMap), which is used to construct the final network configurations.server.ts
: Both /totalSupplyAcrossNetworks and /totalSupply endpoints now call the getNetworkConfigurations function to fetch network configurations dynamically before calling getTotalSupplyAcrossNetworks.
Full Changelog: v0.3.0...v0.4.0