|
@@ -60,40 +60,20 @@ allprojects {
|
60
|
60
|
}
|
61
|
61
|
}
|
62
|
62
|
|
|
63
|
+ // Use the number of seconds/10 since Jan 1 2019 as the version qualifier number.
|
|
64
|
+ // This will last for the next ~680 years.
|
|
65
|
+ // https://stackoverflow.com/a/38643838
|
|
66
|
+ def versionQualifierNumber = (int)(((new Date().getTime()/1000) - 1546297200) / 10)
|
|
67
|
+
|
63
|
68
|
afterEvaluate { project ->
|
64
|
69
|
if (project.name.startsWith('react-native-')) {
|
65
|
70
|
def npmManifest = project.file('../package.json')
|
66
|
71
|
def json = new JsonSlurper().parseText(npmManifest.text)
|
67
|
72
|
|
68
|
|
- // React Native modules have an npm peer dependency on react-native,
|
69
|
|
- // they do not have an npm dependency on it. Further below though we
|
70
|
|
- // choose a react-native version (range) when we represent them as
|
71
|
|
- // Maven artifacts. Effectively, we are forking the projects by not
|
72
|
|
- // complying with the full range of their npm peer dependency and,
|
73
|
|
- // consequently, we should qualify their version.
|
74
|
|
- def versionQualifier = '-jitsi-1'
|
75
|
|
- if ('react-native-background-timer' == project.name)
|
76
|
|
- versionQualifier = '-jitsi-4' // 2.1.1 + react-native 0.59
|
77
|
|
- else if ('react-native-calendar-events' == project.name)
|
78
|
|
- versionQualifier = '-jitsi-3' // 1.6.4 + react-native 0.59
|
79
|
|
- else if ('react-native-fast-image' == project.name)
|
80
|
|
- versionQualifier = '-jitsi-3' // 5.1.1 + react-native 0.59
|
81
|
|
- else if ('react-native-google-signin' == project.name)
|
82
|
|
- versionQualifier = '-jitsi-3' // 1.0.2 + react-native 0.59
|
83
|
|
- else if ('react-native-immersive' == project.name)
|
84
|
|
- versionQualifier = '-jitsi-6' // 2.0.0 + react-native 0.59
|
85
|
|
- else if ('react-native-keep-awake' == project.name)
|
86
|
|
- versionQualifier = '-jitsi-5' // 4.0.0 + react-native 0.59
|
87
|
|
- else if ('react-native-linear-gradient' == project.name)
|
88
|
|
- versionQualifier = '-jitsi-2' // 2.5.3 + react-native 0.59
|
89
|
|
- else if ('react-native-sound' == project.name)
|
90
|
|
- versionQualifier = '-jitsi-3' // 0.10.12 + react-native 0.59
|
91
|
|
- else if ('react-native-vector-icons' == project.name)
|
92
|
|
- versionQualifier = '-jitsi-4' // 6.0.2 + react-native 0.59
|
93
|
|
- else if ('react-native-webrtc' == project.name)
|
94
|
|
- versionQualifier = '-jitsi-10' // 032ee5c90e2c5ff27ab2f952217104772fcbd155 + react-native 0.59
|
95
|
|
-
|
96
|
|
- project.version = "${json.version}${versionQualifier}"
|
|
73
|
+ // Release every dependency the SDK has with a -jitsi-XXX qualified version. This allows
|
|
74
|
+ // us to pin the dependencies and make sure they are always updated, no matter what.
|
|
75
|
+
|
|
76
|
+ project.version = "${json.version}-jitsi-${versionQualifierNumber}"
|
97
|
77
|
|
98
|
78
|
project.android {
|
99
|
79
|
compileSdkVersion rootProject.ext.compileSdkVersion
|