#
# Copyright 2016-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
#

# Kotlin
version=1.5.2-SNAPSHOT
group=org.jetbrains.kotlinx
kotlin_version=1.5.30

# Dependencies
junit_version=4.12
junit5_version=5.7.0
atomicfu_version=0.16.3
knit_version=0.3.0
html_version=0.7.2
lincheck_version=2.14
dokka_version=1.5.0
byte_buddy_version=1.10.9
reactor_version=3.4.1
reactive_streams_version=1.0.3
rxjava2_version=2.2.8
rxjava3_version=3.0.2
javafx_version=11.0.2
javafx_plugin_version=0.0.8
binary_compatibility_validator_version=0.7.0
blockhound_version=1.0.2.RELEASE
jna_version=5.5.0

# Android versions
android_version=4.1.1.4
androidx_annotation_version=1.1.0
robolectric_version=4.0.2
baksmali_version=2.2.7

# JS
kotlin.js.compiler=both
gradle_node_version=1.2.0
node_version=8.9.3
npm_version=5.7.1
mocha_version=6.2.2
mocha_headless_chrome_version=1.8.2
mocha_teamcity_reporter_version=3.0.0
source_map_support_version=0.5.16
jsdom_version=15.2.1
jsdom_global_version=3.0.2

# Settings
kotlin.incremental.multiplatform=true
kotlin.native.ignoreDisabledTargets=true

# Site generation
jekyll_version=4.0

# JS IR backend sometimes crashes with out-of-memory
# TODO: Remove once KT-37187 is fixed
org.gradle.jvmargs=-Xmx4g

kotlin.mpp.enableCompatibilityMetadataVariant=true
kotlin.mpp.stability.nowarn=true
