Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

polymath-core

Package Overview
Dependencies
Maintainers
3
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

polymath-core - npm Package Versions

1

1.1.1

Diff

bakii_agl
published 1.1.0 •

Changelog

Source

v1.1.0

1.1.0 18-05-18

Changed

  • Factored out the second reference to the POLY token from ISTO contracts
  • Defaulted all STs to have 18 decimals
  • Removed decimals parameter from generateSecurityToken
  • Modified TokenBurner to be an interface
  • Moved CappedSTO specific functions to CappedSTO from ISTO
  • Moved TokenBurner & PolyToken contracts to test directory (out of main contract directory)
  • Modified IST20 interface to inherit from ERC20 interfaces
  • Modified verifyTransfer function in TransferManagers to return a Result enumeration instead of boolean
  • Fixed capReached() which was checking fundsRaised agains cap, but the cap is expressed in tokens.
  • Constant key variables migrated from the securityToken to ISecurityToken contract.
  • Solidity compiler version get changed to 0.4.23 that leads to the addition of reason string in the require and revert statements.
  • zeppelin-solidity package version and name get changed to openzeppelin-solidity v1.9.0.

Added

  • whitelists for CountTransferManager and PercentageTransferManager to bypass logic
  • added CountTransferManager to restrict the total number of token holders
  • added PercentageTransferManager to restrict the total percentage of tokens held by any single holder
  • generateSecurityToken in SecurityTokenRegistry takes an additional parameter specifying whether the token is divisible.
  • IModule contract takes the polyToken contract address as the constructor argument to wrapping all the factories with the polyToken contract address.
  • takeFee() new function introduced to extract the POLY token from the factory. It only be called by the owner of the factory.
  • Added ability for issuer to provide a signed piece of data to allow investors to whitelist themselves.
  • _securityTokenAddress get indexed in the LogNewSecurityToken event.
  • Now each investor have its expiryTime for the KYC. After the expiryTime limit reached, investor will not abe to use transfer related functions.
  • Transfers of tokens gets paused at the level of all TM as well as on the ST level. To facilitate this 3 functions get added namely pause(), unpause(),freezeTransfers(). All 3 functions are called by the issuer of the securityToken only.
  • Security token has got a new feature of burning the tokens, To use this feature user need to call the burn() function but before that issuer need to deploy the TokenBurner contract and set its address into the SecurityToken contract using the function setTokenBurner().

Remove

  • investorStatus() function in securityToken contract has removed.

0.3.1 06-04-18

Added

  • Add emit keyword to emit the events.
  • Two new variable is added at the time of registration of ticker. swarmHash represents the off-chain data storage location on IPFS and owner It reperesent the ethereum address of the owner.
  • LogRegisterTicker emits two more variable called _swarmHash and _owner.
  • Two events are added in GeneralPermissionManager contract to facilitate the notifications for the UI end. LogChangePermission :Emit when permissions to a delegate get changed.
    LogAddPermission: Emit when delegate is added in permission manager contract.
  • getInstructions() is a public function added into the factories contracts. Use to get the useful instructions about the corresponding factory.
  • _securityTokenRegistry is more argument is added in securityTokenV2 contract.

Changed

  • All contracts get migrated from solc version 0.4.18 to 0.4.21.
  • Now symbols get stored in smart contract in uppercase instead of lowercase.
  • Public variable STRAdress name in TickerRegistry smart contract changed to strAddress.
  • Function permissions() name in all module factories get changed to getPermissions().
  • Function delegateDetails() name gets changed to getDelegateDetails() in GeneralPermissionManager contract.
  • STVersionProxy_001 & STVersionProxy_002 contract name changed to STVersionProxy001 & STVersionProxy002 respectively.

0.3.0 02-04-18

Added

  • Multiple events are added to ModuleRegistry contract to facilitate the Logging of the operations.
    LogModuleUsed: Emit when Module get used by a securityToken.
    LogModuleRegistered: Emit when a new module gets registered by the polymath for securityToken to use.
    LogModuleVerified: Emit when module get verified by the ModuleRegistry owner.
  • ModuleRegistry now know about the SecurityTokenRegistry by using the function setTokenRegistry and it only is called by the owner of the ModuleRegistry contract.
  • verifyModule function added to verify the newly added modules on the polymath platform. It is a type of ownable function.
  • securityTokenRegistry public variable added to store the address of the SecurityTokenRegistry. And verified mapping added to hold the list of verified moduleFactory addresses with a bool flag.
  • Now getSecurityTokenData() is added to get the securityToken data instead of calling directly the public mapping securityTokens.
  • New variable tokensSold is added in the cappedSTO contract. It is used to track the amount of securityTokens sold.
  • New moduleFactory called ExchangeTransferManagerFactory is added in to the list of the available modules in the Polymath V1 system.
  • _budget is a new parameter added in the addModule. It signifies the budget of the ongoing module in terms of POLY token.
  • Two new events added into the securityToken contract to facilitate the logging of the operations.
    LogModuleRemoved : Event emit when module get removed from the securityToken. LogModuleBudgetChanged: Emit when module budget get changed.
  • getModuleData function added in the securityToken to get the data of the Module with the help of moduleType and the index of the module user want to get.
  • removeModule new function added facilitate the removal of the module from the securityToken. It is ownable type function.
  • changeModuleBudget function added to change the budget of the module that already been added. It is ownable type function.

Changed

  • In early release token symbol in uppercase or in lowercase entertain differently. But for this release both upercase and lowercase symbol name are same.
  • Address of the owner of the securityToken is removed from the strucuture of the SecurityTokenData.
  • Mapping securityTokens in ISecurityTokenRegistry is now being private instead of public.
  • expiryLimit default value get changed to 7 days instead of the 90 days in TickerRegistry.
  • contact variable is replaced by the tokenName variable in SymbolDetails structure of TickerRegistry.
  • Token name is now emitted in the LogRegisterTicker event corresponds to _name variable.
  • Now checkValidity function takes three arguments insted of two, tokenName is the third one.
  • Cap is based on the number of securityToken sold instead of the quantity of the fundraised type.
  • buyTokensWithPoly has only one argument called _investedPoly only. Beneficiary Address should be its msg.sender.
  • getRaiseEther() function name changed to getRaisedEther().
  • getRaisePoly() function name changed to getRaisedPoly().
  • LogModuleAdded emit one more variable called budget.
  • modules mapping in the securityToken contract now returns the array of ModuleData.

Removed

  • admin varaible is removed from the TickerRegistry contract.

0.2.0 26-03-18

Added

  • ModuleRegistry contract will provide the list of modules by there types.
  • SecurityTokenRegistry is now working on the basis of the proxy version of the securitytoken contract. For that SecurityTokenRegistry has one more variable in the constructor called STVersionProxy .
  • setProtocolVersion new function added in the SecurityTokenRegistry to set the protocol version followed to generate the securityToken. Only be called by the polymath admin.
  • SecurityToken now have the integration with polyToken. At the time of addModule() SecurityToken approve the cost of the module to moduleFactory as the spender.
  • New function withdrawPoly(uint256 _amount) is added to withdrawal the unused POLY from the securityToken contract. Called only by the owner of the contract.
  • checkPermission(address _delegate, address _module, bytes32 _perm) function is added to check the permissions on the service providers(delegate).
  • STVersionProxy_001.sol & STVersionProxy_002.sol are the two new contract added. Both of those are the proxy contract use to generate the SecurityToken. Both contract constructor takes two variables address of transferManagerFactory address of the permissionManagerFactory.
  • New Module type is added called PermissionManager. It has three contracts called GeneralPermissionManagerFactory, GeneralPermissionManager, IPermissionManager.
  • GeneralPermissionManger is all about providing the permission to the delegate corresponds to the SecurityToken. Major functionality is added, check, change the permission of the delegate.
  • Two more functions added for each factory type i.e getDescription() & getTitle().
  • CappedSTO is now Configurable by choosing the type of fundraise. Either POLY or ETH.
  • CappedSTO takes 3 more constructor arguments fundRaiseType (uint8), the address of the polyToken & address of the fund's receiver.
  • buyTokensWithPoly(address _beneficiary, uint256 _investedPoly) new function added in cappedSTO to facilitate the funds raising with the POLY.
  • verifyInvestment(address _beneficiary, uint256 _fundsAmount) new function added in ISTO to check whether the investor provides the allowance to the CappedSTO or not.
  • LogModifyWhitelist event of GeneralTransferManager emit two more variables. i.e address which added the investor in whitelist(_addedBy) and records the timestamp at which modification in whitelist happen(_dateAdded).
  • permissions() function added in GeneralTransferManager to get all permissions.
  • PolyToken.sol contract is added at contracts/helpers/PolyToken.sol. For now, it has no big use.

Changed

  • ModuleRegistry only holds the module type of modules only not there names or cost anymore.
  • No More ModuleReputation struct for counting the reputation of module. Now reputation mapping only contains the list of the addresses those used that module factory.
  • checkModule() of ModuleRegistry contract rename to useModule() with same function parameters.
  • Event LogModuleAdded emit only 5 variables instead of 6. timestamp is no longer be a part of the event.
  • SecurityTokenRegistrar now renamed as SecurityTokenRegistry.
  • Deployment of the securityToken is now performed by the proxy contracts and call being generated form the SecurityTokenRegistry.
  • TickerRegistrar renamed as TickerRegistry.
  • TickerRegistry is now Ownable contract.
  • setTokenRegistrar function of TickerRegistry renamed to setTokenRegistry.
  • SecurityToken constructor has one change in the variable. i.e _moduleRegistry contract address is replaced by the _owner address.
  • Their is no _perm parameter in the addModule() function of the securityToken contract. Now only 4 parameters left.
  • Type of Mudules changed
    - Permission has a type 1  
    - TransferManager has a type 2
    - STO has a type 3
  • Location of SecurityToken changed to contracts/token/SecurityToken.sol
  • GeneralTransferManager takes only 1 variables as constructor argument i.e address of the securityToken.
  • Functions of GeneralTransferManager earlier controlled by the owner only, now those can be controlled by the delegates as well with having proper permissions.

Removed

  • getCost() is removed from the ModuleRegistry contract.
  • SafeMath.sol contract is replaced by the zeppelin-solidity library contract .  
  • No more SecurityTokens and symbol information will be directly part of the SecurityTokenRegistry. Those information will accessed by inheriting the ISecurityTokenRegistry.
  • Remove the Delegable.sol, AclHelpers.sol, DelegablePorting.sol contracts. Now permission manager factory takes their place . * delegates mapping removed from the GeneralTransferManager.
bakii_agl
published 1.0.3 •

bakii_agl
published 1.0.2 •

bakii_agl
published 1.0.1 •

bakii_agl
published 1.0.0 •

bakii_agl
published 0.4.0 •

bakii_agl
published 0.3.1 •

polymathdevops
published 0.2.1 •

polymathdevops
published 0.2.0 •

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc