Releases: mParticle/smartype
Version 1.7.1
Version 1.7.0
Kotlin 1.9 + Gradle 8
- This updates Smartype to use the latest Kotlin 1.9 and Gradle 8. This change brings various platform compatibility, stability and performance improvements. See here for more: https://kotlinlang.org/docs/whatsnew19.html
- As a result Smartype is now fully compatible with the latest Xcode 15 and Mac OS ARM-based developers and apps
Version 1.6.0
Support for React Native
This release adds support for React Native. In order to enable React Native:
- Add mParticle's React Native plugin to your React project if you haven't already
- Inject the mParticle React Native plugin into your
mParticleReceiver
:
import MParticle from 'react-native-mparticle'
...
var api = new smartype.SmartypeApi()
var receiver = smartype.mParticleReceiver()
receiver.react = MParticle
api.addReceiver(receiver)
You will also want to exclude the generated .smartype
directory from your React Project by configuring your metro.config.js
file:
const exclusionList = require('metro-config/src/defaults/exclusionList');
...
module.exports = {
resolver: {
blockList: exclusionList([/\.smartype\/.*/])
},
};
Please also reference the new React Native sample app in the repo!
Version 1.5.0
This release updates to Kotlin 1.8.20, adding support for the latest Xcode 14.
v1.4.0
The release corrects this issue with bitcode setting caused by differences in kotlin multiplatform and Apple default settings.
v1.3
Updates
This release updates Smartype to:
Gradle 7.3.2
Kotlin 1.6.10
Kotlinx Serialization to 1.3.2
iOS
The framework generated for iOS is now a .xcframework
file rather than a .framework
file
Version 1.2.4
Bug Fixes
- Generate fails on certain enums values and event names
In cases where enum values start with a number, generate would fail because enum values in Kotlin can’t start with numbers (nor in the generated languages). This was also affecting other names that start with numbers where in code they can’t. So in those cases, the name is now prefixed with the word “prefixed_” to allow it to succeed.
There was also a case where 2 events with the same name but different event types would generated identially named classes, which failed due to that conflict. In this case, a number is postpended to the name (e.g. EventName, EventName2, EventName3, etc) to prevent the name collisions.
Version 1.2.3
This release removes logic to delete the chosen output directory for Smartype libraries.
Version 1.2.2
This release updates Smartype to:
- Gradle 6.8.3
- Kotlin 1.4.31
- Kotlinx Serialization to 1.1.0
This release also includes a bugfix for special characters contained JSON schema enums.
Version 1.2.0
🎉 Official support for web!
This is a major update which updates Smartype to use Kotlin 1.4.10 and adds support for Javascript generation.