# [12.0.0-alpha.1](https://github.com/PolymathNetwork/polymesh-sdk/compare/v11.0.2...v12.0.0-alpha.1) (2021-11-23)


### Bug Fixes

* 🐛 code smell ([550967d](https://github.com/PolymathNetwork/polymesh-sdk/commit/550967d3ec54d9f37416b09c0bd7a1100feb9328))
* 🐛 modify regex that was *only* considering abstract ([df6d306](https://github.com/PolymathNetwork/polymesh-sdk/commit/df6d3062a4b70ffb598595bee3eabb336d0c3418))
* 🐛 stop requiring transaction perms when joining identity ([d5e309d](https://github.com/PolymathNetwork/polymesh-sdk/commit/d5e309dfbbb76addc17485a8995935a0e7795be1))


### chore

* move currentIdentity methods to root ([c2e639d](https://github.com/PolymathNetwork/polymesh-sdk/commit/c2e639da8eb7ebeea24d18a8987d90d395060294))
* remove order parameter from identity.getTrustingTokens ([7c9e62f](https://github.com/PolymathNetwork/polymesh-sdk/commit/7c9e62ff4bf924c0462f73584ccc2f60d0e0e59a))
* rename details to description in CreateVenueParams ([d630f61](https://github.com/PolymathNetwork/polymesh-sdk/commit/d630f61ff3cef2e0987d0a071d9e9a3db3dc1117))


### Features

* 🎸 [WIP] move currentidentity methods to root ([7d78ea1](https://github.com/PolymathNetwork/polymesh-sdk/commit/7d78ea1b6ea915300d951757df9b45390d7b5fcb))
* 🎸 allow exported TransactionQueue type to have generics ([3c6248f](https://github.com/PolymathNetwork/polymesh-sdk/commit/3c6248f289838e6c9f2e5f5adf19d5df69ff57c6))
* 🎸 allow void procedure methods to be called with opts ([9fd4371](https://github.com/PolymathNetwork/polymesh-sdk/commit/9fd43712db4d84d9ad07bd580ac5d983abcefbfa))
* 🎸 export typeguards for every Entity ([8e07207](https://github.com/PolymathNetwork/polymesh-sdk/commit/8e072072a8bfed849a6f3ec6e45bc0920bb962f9))
* 🎸 make `requireInvestorUniqueness` non-optional ([3aa3464](https://github.com/PolymathNetwork/polymesh-sdk/commit/3aa346403db9624e1204402fccdadd97597c6ff4))
* 🎸 Refactor setComplianceRequirements to use a single call ([a253643](https://github.com/PolymathNetwork/polymesh-sdk/commit/a2536439dda8024798093de5cc7ee6dd29ccfa29))
* 🎸 standardize error codes ([596661a](https://github.com/PolymathNetwork/polymesh-sdk/commit/596661a4a67040a7d8265cc319550873c7092943))
* allow setting a CA's checkpoint to null ([845ebc2](https://github.com/PolymathNetwork/polymesh-sdk/commit/845ebc264be312fc368f4a056b258e1400b8dd55))
* improve procedure authorization data ([135f3c9](https://github.com/PolymathNetwork/polymesh-sdk/commit/135f3c9c8d6bb1d8140007d32af35322e6d52fa5))
* standardize block data in input and output ([67fa54f](https://github.com/PolymathNetwork/polymesh-sdk/commit/67fa54f15f860b81e6ba93d798ed35af1290116a))
* use Entities as properties of other Entities ([8298005](https://github.com/PolymathNetwork/polymesh-sdk/commit/8298005a4728cfea71b4c62eb224e39f2697eb6d))


### Performance Improvements

* ⚡️ avoid hash queries where not necessary ([f914312](https://github.com/PolymathNetwork/polymesh-sdk/commit/f914312a86dd75f25697f53bc04a998fe2f4c0ce))


### BREAKING CHANGES

* 🧨 make `CreateSecurityTokenParams.requireInvestorUniqueness` non optional.
This affects `TickerReservation.createToken`
* modify the following interfaces, adding a `blockHash: string` property:
`ExtrinsicData`, `DistributionPayment`, `EventIdentifier`, `HistoricSettlement`
* change the `ProcedureAuthorizationStatus` type. The permissions/roles related
properties will be changed from `boolean` to `CheckPermissionsResult` and `CheckRolesResult`.
This affects the return type of `checkAuthorization` in `ProcedureMethod`
* - replace `ticker: string` with `token: SecurityToken` in: `Checkpoint`, `CheckpointSchedule`,
  `CorporateAction`, `DividendDistribution`, `Sto`, `CustomPermissionGroup`,
  `KnownPermissionGroup`, `DefaultTrustedClaimIssuer`
- change the return type of `CustomPermissionGroup.toJson`. `id: BigNumber` is now `id: string`
* - move `reserveTicker` from root to `currentIdentity` namespace
- move `removeSecondaryKeys` from `Identity` class to `currentIdentity`
- move `revokePermissions` from `Identity` class to `currentIdentity`
- move `modifyPermissions` from `Identity`  class to `currentIdentity`
- move `inviteAccount` from `Identity` class to `currentIdentity`
- move `createVenue` from `Identity` class to `currentIdentity`
- move `freezeSecondaryKeys` from `Identity` class to `currentIdentity`
- move `unfreezeSecondaryKeys` from `Identity` class to `currentIdentity`
* change the type of `ModifyCheckpointParams.checkpoint` to
  `Checkpoint | CheckpointSchedule | Date | null`
* 🧨 move `isEntity` and `isPolymeshError` from `/types` to `/utils`
* 🧨 remove required `undefined` as first argument of procedures when passing
options
* 🧨 change the `code` property of most errors thrown by the SDK to better
reflect their meaning. Also changed a few error messages
* - remove `order` parameter in getTrustingTokens method.
* - rename `details` to `description` in CreateVenueParams interface.
