Commit Graph
100 Commits
Author SHA1 Message Date
Nikolay Krasko 58fd558308 Remove flaky Kapt4ToolIntegrationTestGenerated test
The test is now very flaky and leads to java.lang.OutOfMemoryError

KTI-1559
2024-01-19 14:01:02 +00:00
Nikolay Krasko d3322d515f Update list of compose modules 2023-12-20 12:18:18 +00:00
Nikolay Krasko 5e5e5b8b9f Revert "[FIR] Remove the redundant isFunctionType check"
This reverts commit 1f97c268e1.
2023-12-01 11:27:39 +01:00
Nikolay Krasko bd49df9878 Update intellij platform 213.7172.25 -> 213.7172.53 2023-10-20 10:10:47 +00:00
Nikolay Krasko 46cbec7260 Remove kotlinx-collections-immutable-metadata from verification (KT-61766)
For some reason resolution have changed once again after version
switch to 2.0.0
2023-09-22 19:38:37 +00:00
Nikolay Krasko 4686a73c3b Minor: refactorings in preparePublication
KTI-1377
2023-09-15 13:50:12 +00:00
Nikolay Krasko af7610a5bd Do signing only if it's explicitly stated so in parameters
KTI-1377
2023-09-15 13:50:11 +00:00
Nikolay Krasko bd16d09d5e Add additional alias for signingRequired
KTI-1377
2023-09-15 13:50:11 +00:00
Nikolay Krasko f56167726d Register a new deploy server in maven instead of forgotten one
KTI-1377
2023-09-15 13:50:11 +00:00
Nikolay Krasko fabd5f6231 Remove old aliases for publishing parameters and prepare new
KTI-1377
2023-09-15 13:50:11 +00:00
Nikolay Krasko 3ddbf04fc8 Stop creating a staging repository inside the build
It's stopped working recently after bad rewriting anyway.

KTI-1377
2023-09-15 13:50:11 +00:00
Nikolay Krasko d7fadcbab5 Fix preparePublication.kt for empty repository-url 2023-09-15 13:50:11 +00:00
Nikolay Krasko 1af7649ee9 Use maven wrapper for reproducible build 2023-09-13 22:25:29 +00:00
Nikolay Krasko 83a2158744 Remove unused allowed jcenter dependencies 2023-09-13 22:25:29 +00:00
Nikolay Krasko 96a798d400 Revert "Ignore compose experimental modules during artifacts check"
This reverts commit a1250e838b.

KTI-1360
2023-09-07 13:26:38 +00:00
Nikolay Krasko 3d4afb8994 Be more precise in the trusted section with using '.' in regex
KTI-1359
2023-09-01 16:52:07 +00:00
Nikolay Krasko b781ba77d0 Remove too wide ranges for kotlin trusted libraries
Leave only bootstrap range again

This commits reverts da267ba2c8. It looks
like JPS import is possible without additional regular expressions. Also,
origin commit added too wide range of trusted versions.

KTI-1359
2023-09-01 16:52:07 +00:00
Nikolay Krasko 405fb1085a Don't trust any native prebuilt version
KTI-1359
2023-09-01 16:52:06 +00:00
Nikolay Krasko 4396505c8c Remove strange exclusions from verification-metadata
KTI-1359
2023-09-01 16:52:06 +00:00
Nikolay Krasko 49c2bc18f2 Remove old intellij ivy exclusions in trust artifacts
KTI-1359
2023-09-01 16:52:06 +00:00
Nikolay Krasko df55283148 Revert "[Build] Fix usage of --scan parameter with test retry"
It looks like tests retry doesn't work sometimes.

This reverts commit ecd06ac47b.

KTI-1346 KTI-1339
2023-08-21 21:01:18 +00:00
Nikolay Krasko a1250e838b Ignore compose experimental modules during artifacts check
The check can be improved in the future, so not only parent directory
is checked.
2023-08-07 08:18:19 +00:00
Nikolay Krasko 0fb6382bd6 Include compatible-compose modules
Modules are absent in the repository by default, but can be added from
the experimental repository. This a temporal solution for building
compatible compose with the Kotlin master.

KTI-1302
2023-07-27 10:08:25 +00:00
Nikolay Krasko cab0487f98 Fix implicit dependency validation for zipCompilerSign
Checksum tasks uses the directory output, but the directory is not
empty, compiler.zip is among files in target directory. And this is
probably the reason why gradle now claims zipCompilerChecksum should be
added as direct dependency (see the error message below).

Workaround: generate checksum in separate directory and copy the
resulting file to directory with the compiler.zip. Note that `Copy` task
can't be used because it also declares target directory as an output.

Reproduce:

```
gradle zipCompilerWithSignature -Psigning.gnupg.keyName=???????? -Psigning.gnupg.passphrase=test -PsigningRequired=true -Pteamcity=true
```

Error:

```
org.gradle.internal.execution.WorkValidationException: A problem was found with the configuration of task ':zipCompilerSign' (type 'Sign').
    - Gradle detected a problem with the following location: '/mnt/agent/work/***/kotlin_CompilerArtifacts/dist/kotlin-compiler-1.9.20-dev-6119.zip'.

      Reason: Task ':zipCompilerSign' uses this output of task ':zipCompilerChecksum' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

      Possible solutions:
        1. Declare task ':zipCompilerChecksum' as an input of ':zipCompilerSign'.
        2. Declare an explicit dependency on ':zipCompilerChecksum' from ':zipCompilerSign' using Task#dependsOn.
        3. Declare an explicit dependency on ':zipCompilerChecksum' from ':zipCompilerSign' using Task#mustRunAfter.

      Please refer to https://docs.gradle.org/8.1.1/userguide/validation_problems.html#implicit_dependency for more details about this problem.
```

KTI-1285
2023-07-12 07:37:28 +00:00
Nikolay Krasko ac0e493bac Temporary disable sbom publication for gradle plugin configuration
When signing is enabled it leads to error

```
Build file '/Users/Shared/Projects/kotlin/libraries/tools/kotlin-gradle-plugin-api/build.gradle.kts' line: 13

Cannot change dependencies of dependency configuration ':kotlin-gradle-plugin-api:commonApi' after it has been included in dependency resolution.
```

When running with
```
gradle :kotlin-test:publish -Psigning.gnupg.keyName=* -Psigning.gnupg.passphrase=* -PsigningRequired=true
```
2023-06-28 18:00:14 +00:00
Nikolay Krasko 7f751c5d61 Fix signing in :kotlin-annotation-processing-embeddable
Problem is reproducible only when singing is enabled.
Register dependencies between publication and signing tasks.
It looks like signing tasks have same output and need to be registered
in all publications.

Error:

* What went wrong:
Some problems were found with the configuration of task ':kotlin-annotation-processing-embeddable:publishMainPublicationToMavenLocal' (type 'PublishToMavenLocal').
  - Gradle detected a problem with the following location: '/Users/Shared/Projects/kotlin/plugins/kapt3/kotlin-annotation-processing-embeddable/build/libs/kotlin-annotation-processing-embeddable-1.9.255-SNAPSHOT-sources.jar.asc'.

    Reason: Task ':kotlin-annotation-processing-embeddable:publishMainPublicationToMavenLocal' uses this output of task ':kotlin-annotation-processing-embeddable:signGradleCompatPublication' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

Reproduce:

gradle :kotlin-annotation-processing-embeddable:publishToMavenLocal -Psigning.gnupg.keyName=* -Psigning.gnupg.passphrase=* -PsigningRequired=true

KTI-1282
2023-06-28 18:00:14 +00:00
Nikolay Krasko e6df34805f Fix Gradle implicit dependency error in kotlin-test when signing enabled
Remove dependency to same javadoc jar in all publications as it produces
an implicit dependency to the same signing task. Use different javadoc
tasks instead.

Error:

org.gradle.internal.execution.WorkValidationException: A problem was found with the configuration of task ':kotlin-test:signCommonPublication' (type 'Sign').
 - Gradle detected a problem with the following location: '/kotlin/libraries/kotlin.test/build/distributions/kotlin-test-1.9.20-dev-0000-javadoc.jar.asc'.

  Reason: Task ':kotlin-test:publishAnnotationsCommonPublicationToMavenLocal' uses this output of task ':kotlin-test:signCommonPublication' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

Reproduce:

gradle :kotlin-test:publishToMavenLocal -Psigning.gnupg.keyName=***** -Psigning.gnupg.passphrase=**** -PsigningRequired=true

KTI-1282
2023-06-28 18:00:14 +00:00
Nikolay Krasko d4c8636c70 Relocate aalto-xml and stax2-api dependencies in embeddable compiler (KT-59631)
Two additional dependencies were added during 213 platform migration:
com.fasterxml:aalto-xml
org.codehaus.woodstox:stax2-api

Packages were not relocated and now might cause failures such as

```
Caused by: java.lang.NoSuchMethodError: 'void com.fasterxml.aalto.in.ReaderConfig.setXMLResolver(javax.xml.stream.XMLResolver)'
```

if proguard classes of kotlin-compiler-embeddable are registered early
in the classpath.
2023-06-27 12:48:37 +00:00
Nikolay Krasko 58d9727092 Remove *.spdx.json.md5 and *.spdx.json.sha1 from reproducible file 2023-06-15 15:10:55 +00:00
Nikolay Krasko 15825549a2 Auto provide JDK_21_0 env variable to relevant tests
KTI-1229
2023-05-26 09:05:54 +00:00
Nikolay Krasko 3eeb867f56 Minor: cleanup warnings in codebase-tests 2023-05-23 16:52:40 +00:00
Nikolay Krasko c1a1986344 Discourage future trove usages
KTI-1135
2023-05-23 16:52:40 +00:00
Nikolay Krasko 92a7a74382 [213] Fix proguard rule for ExtensionsArea.registerExtensionPoint
Fix for 6e18b75c73

KTI-1114
2023-05-03 20:46:58 +00:00
Nikolay Krasko 0fb5934ebd [213] Add library dependencies to kotlin-native.jar
While dependency is added to backend.native, it's than
transitively packed to :kotlin-native:shadowJar. Without it
running gradle with -Pkotlin.native.useEmbeddableCompilerJar=false fails
with

e: java.lang.NoClassDefFoundError: org/codehaus/stax2/typed/TypedXMLStreamException

KTI-1114
2023-05-01 14:58:48 +00:00
Nikolay Krasko 3caa1d1349 Refactoring: fix usages of @TestOnly ExtensionsArea.registerExtensionPoint 2023-04-28 08:25:19 +00:00
Nikolay Krasko 6e18b75c73 [213] Do not remove deprecated ExtensionsArea.registerExtensionPoint
The method is proved to be used in klint project
https://github.com/pinterest/ktlint/blob/c5a81e0d4198fa5cb2cac69967080e01e365b837/ktlint-rule-engine/src/main/kotlin/com/pinterest/ktlint/rule/engine/internal/KotlinPsiFileFactory.kt#L121

There is an issue about the remove: https://github.com/pinterest/ktlint/issues/1981

KTI-1114
2023-04-28 08:25:19 +00:00
Nikolay Krasko 0aaaa5b4fa [213] Fix 1.5.10-release-949 jdk 8 stdlib requirement in :jps-common:test
ERROR:
:jps:jps-common:test: Could not find org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.10-release-949.

The problem is in dependency:
com.jetbrains.intellij.platform:jps-model-serialization:213.7172.25 -- (runtime) ->
com.jetbrains.intellij.platform:util:213.7172.25 -- (runtime) ->
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.10-release-949

Provide a jdk 8 stdlib that should make the resolution of the dependency
redundant.

KTI-1114
2023-04-24 21:58:31 +00:00
Nikolay Krasko 13ce25a85c [213] Update verification for "maven-resolver-impl" and "httpclient"
KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko 9e00bb8a21 [213] More dependencies aalto + stax2
KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko a3293452ca [213] Update verification-metadata.xml
KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko bedea65f00 [213] Unmute tests fixed in 212 platform
KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko 760a690c01 [213] Remove some old setting in tests with org.jdom.Element
KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko f9169e8c7c [213] Dummy code style facade for ClsElementImpl.appendMirrorText()
The only test that fails without is FirOldFrontendLightClassesTestGenerated.
While there's no proof that code fails in production, the footprint from
services shouldn't be big, and it's better to have them instead of
failing in runtime.

KTI-1114
2023-04-21 13:19:05 +00:00
Nikolay Krasko cdec1e6c62 Update used based image for Kotlin builds 2023-04-17 13:33:51 +00:00
Nikolay Krasko a5876811d8 Instruction for 1.8.20 build 2023-04-17 13:33:50 +00:00
Nikolay Krasko 4d88b8b691 Allow minor versions updates without updating verification metadata 2023-04-13 12:29:39 +00:00
Nikolay Krasko 8b12b3f18d Minor: remove code from top-level and move to task configurations 2023-03-20 17:58:15 +00:00
Nikolay Krasko 78b339a52b Fix configuration cache for Test Generation tasks
It's not allowed `project` during the execution. But removing
project doesn't change the result anyway.

KTI-1092
2023-03-20 17:58:15 +00:00
Nikolay Krasko 071b54deb9 Clean up mute for bunches 2023-03-14 21:30:26 +00:00
Nikolay Krasko e42e2b28db Remove bunch tool chunks 2023-03-14 21:30:26 +00:00
Nikolay Krasko 09bd9ec9af Remove versions.intellijSdk.forIde versions 2023-03-13 18:40:20 +00:00
Nikolay Krasko af576f3911 Remove trust for 1.8.20 kotlin versions 2023-03-13 18:40:20 +00:00
Nikolay Krasko 2c80d3c66a Remove outdated KotlinBuildPusher
There should not be any direct dependencies to TeamCity
in the repository.
2023-03-13 18:40:19 +00:00
Nikolay Krasko 57934a6870 Revert "Revert "[K2/N] KT-57026, KT-57208: Adjust Native & JS test infrastructures for MPP testing""
This reverts commit c0c692844e.
2023-03-10 14:24:49 +01:00
Nikolay Krasko c0c692844e Revert "[K2/N] KT-57026, KT-57208: Adjust Native & JS test infrastructures for MPP testing"
This reverts commit 6964121c15.
2023-03-10 13:14:10 +00:00
Nikolay Krasko 0963bd25a8 Test links reference existing files 2023-02-16 22:56:21 +00:00
Nikolay Krasko 3c6e64b560 Test links definitions in license/README.md 2023-02-16 22:56:21 +00:00
Nikolay Krasko 2ad567e14c Revert "[K/N][build] Cleanup obsolete build tasks"
This reverts commit a9cae3fe87.
2023-02-14 11:30:17 +00:00
Nikolay Krasko 6afaa13eab Add docker file for building Kotlin build environment
KTI-1119
2023-02-06 10:01:53 +00:00
Nikolay Krasko e8e79985a5 Fix import for performance project when kotlin.native is enabled 2023-02-06 10:01:52 +00:00
Nikolay Krasko f87c5cf166 Minor: add bash language to dependency verification block 2023-01-26 13:34:37 +01:00
Nikolay Krasko 92840bf4b8 Clean-up verification-metadata.xml from old dependencies 2023-01-21 16:38:49 +00:00
Nikolay Krasko 4a4c38bafa Update verification-metadata.xml after add command 2023-01-21 16:38:49 +00:00
Nikolay Krasko 4f69f61ef7 Advance version of kotlinx serialization in imports-dumper
File separator are not escaped now, as there's no need to escape /
character in JSON strings.
2023-01-21 16:38:48 +00:00
Nikolay Krasko 922ffa80b0 Remove kotlinx-serialization-core:1.0.0-RC usage 2023-01-21 16:38:48 +00:00
Nikolay Krasko e895409c4a Bump kotlinx-html-jvm version 0.6.12 -> 0.7.3 2023-01-21 16:38:48 +00:00
Nikolay Krasko 50c911f159 Restrict and document usage for special repositories
This also should reduce the amount of requests for seeking artifacts
across the repositories.
2023-01-21 16:38:47 +00:00
Nikolay Krasko 7fa45e8af9 Add information to verification metadata about libraries used during publication to sonatype 2023-01-19 15:07:28 +00:00
Nikolay Krasko d81feabb69 Temporary trust both Kotlin 1.8.20 and 1.9.0 develop and bootstrap 2023-01-18 13:41:42 +01:00
Nikolay Krasko 3d4af8e1ab Remove mentioning of maven.zip in 1.8.0 instruction
KTI-1091
2023-01-11 16:46:08 +00:00
Nikolay Krasko 1451ef74c2 Additional note in instruction for reproducibility 1.8.0 2023-01-10 18:06:38 +01:00
Nikolay Krasko 6f276b7504 Use line diff in RuntimePublicAPITest
Otherwise, test fails because of too big comparison.
2023-01-04 19:57:17 +00:00
Nikolay Krasko 4c925d0588 Instructions for building 1.8.0 2022-12-30 11:13:40 +00:00
Nikolay Krasko 17742b4c02 Stabilize order of entries in maven.zip
KTI-1077
2022-12-27 17:31:09 +00:00
Nikolay Krasko 74dd31d00a Call additional publishToMavenLocal in maven build scripts and enable info
'publish' do not publish all artifacts to maven local and maven
fails because of it as it can't find dependencies.

KTI-729
2022-12-19 14:40:52 +00:00
Nikolay Krasko e57521ed23 Remove bintray mentioning from the servers list 2022-12-12 15:53:23 +00:00
Nikolay Krasko 014e764644 Remove explicit set of encoding from the build script
Setting is now set in gradle.properties since b5b58f40
2022-12-12 15:53:23 +00:00
Nikolay Krasko 7bf2685b5b Don't leave Gradle daemons after build scripts 2022-12-12 15:53:22 +00:00
Nikolay Krasko 9a69c1dd35 Clean-up verification-metadata.xml from old dependencies 2022-12-05 20:11:26 +00:00
Nikolay Krasko 57ffc61cc1 Reveal non-boostrap kotlin dependency usages 2022-12-05 20:11:26 +00:00
Nikolay Krasko 13a4fc7f36 Remove mute-platform.csv tests 2022-12-05 20:11:25 +00:00
Nikolay Krasko edc562e8b9 Remove old android-studio jps module 2022-12-05 20:11:24 +00:00
Nikolay Krasko 03d3885eff Instruction for building 1.8.0-Beta release 2022-11-24 12:55:06 +00:00
Nikolay Krasko e02395fa61 Instruction for building 1.7.21 release 2022-11-24 12:55:05 +00:00
Nikolay Krasko c414b4b29a Update CODEOWNERS for scripts directory 2022-11-22 20:29:22 +00:00
Nikolay Krasko 4c16d7597a Instructions for building 1.7.20 release 2022-11-22 20:29:21 +00:00
Nikolay Krasko 41d16b1376 Scripts for building Kotlin repository 2022-11-22 20:29:20 +00:00
Nikolay Krasko a4cd485f48 Remove native-platform 0.14 usage from the buildSrc
It looks like net.rubygrapefruit:native-platform:0.14 is not in
plugins.gradle.org repository anymore.

And it's not used anyway.

> Task :buildSrc:generateExternalPluginSpecBuilders FAILED

'''
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':buildSrc:generateExternalPluginSpecBuilders'.
> Could not resolve all files for configuration ':buildSrc:compileClasspath'.
   > Could not find native-platform-0.14.jar (net.rubygrapefruit:native-platform:0.14).
     Searched in the following locations:
         https://cache-redirector.jetbrains.com/plugins.gradle.org/net/rubygrapefruit/native-platform/0.14/native-platform-0.14.jar
'''

Can be reproduced with

```gradle --refresh-dependencies -i tasks -Pkotlin.native.enabled=true```

KTI-986
2022-11-08 21:31:43 +01:00
Nikolay Krasko 6afceb1e84 Remove more usages for embedded with isTransitive = true
It's a refactoring because the list of dependencies shouldn't change

Follow up for KTI-942
2022-10-12 13:44:30 +00:00
Nikolay Krasko f43ad1cb7a Remove packed stdlib from Kotlin compiler plugin artefacts
Remove annotations, kotlin-stdlib-common, kotlin-stdlib.

Packing those libraries is wrong and probably unexpected. It leads to
artifacts size increase. Can be dangerous because of bad classpath.
And also have a reproducibility issue because of caching tricks around
KotlinVersionCurrentValue class.

KTI-942
2022-10-12 13:44:30 +00:00
Nikolay Krasko 2ea0cdf46d Rules for commit messages
Part of KTI-944 about adding automatic checks to commit messages.
2022-10-12 09:39:51 +00:00
Nikolay Krasko 80c0c33670 Drop support for old idea versions in verification-metadata.xml 2022-10-12 08:20:27 +00:00
Nikolay Krasko 7484fe8333 Add an explicit requirement for JDK_11_0 in tests-common-new 2022-10-12 08:20:26 +00:00
Nikolay Krasko e1a498e757 Exclude intellij dir when working with compound build 2022-10-12 08:20:26 +00:00
Nikolay Krasko 0e44ad6c60 Minor: explicitly use ext.repoUrl 2022-10-12 08:20:25 +00:00
Nikolay Krasko cfd79c87a6 Minor: fix spelling in the comment 2022-10-12 08:20:25 +00:00
Nikolay Krasko 3853f228af Add a comment about implicit dependency between compiler and plugin
^KTI-746 Fixed
2022-10-12 08:20:24 +00:00
Nikolay Krasko e7074e8a92 Fix flaky TARGET_JVM_VERSION_ATTRIBUTE presence in gradle plugins
For some reason TARGET_JVM_VERSION_ATTRIBUTE was not always set in the
resulting artifacts for runtimeElementsConfigurationName and
apiElementsConfigurationName variants

It could be reproduced locally with by executing
`gradle kotlin-allopen:publishToMavenLocal`

The fix can be checked via
`gradle kotlin-allopen:outgoingVariants`

^KTI-920 Fixed
2022-10-06 13:43:19 +00:00
Nikolay Krasko b5b58f40d6 Workaround instability of Gradle builds caused by the default encoding
The encoding setting from org.gradle.jvmargs is not applied
(https://github.com/gradle/gradle/issues/22292) during
the :kotlin-stdlib-js:compileJs, causing instability in kotlin.js.map
(https://youtrack.jetbrains.com/issue/KT-50589) on machines where
default encoding is not UTF-8.

This reverts commit d7ef5efa6a.

KTI-932
2022-10-05 10:57:46 +00:00
Nikolay Krasko 20692c9837 Minor: cleanup code in cli-js and js.sourcemap 2022-10-03 11:08:29 +00:00