Return the extension properties for constructing Duration from numbers,
but this time place them in Duration.Companion rather than on top-level.
- provide the new set of construction extension properties
in companion of Duration
- leave top-level extension properties experimental,
increase their deprecation level to ERROR,
propose the extension properties in companion instead.
- leave Duration companion static factory functions experimental,
deprecate them and propose the extension properties in companion instead.
This setup requires a 'jvm like' target and an orphan source set, which
depends on 'commonTest'. This orphan will not participate in any
compilation and therefore will not have any platform.
The code expected at least one test task for this source set
and therefore at least one test framework.
^KT-46273 Verification Pending
We apply prepareSonatypeStaging.gradle conditionally which brings some
additional dependencies only during release publishing to maven central
#KTI-650
(cherry picked from commit 3f1c3ea6707210c2bcc0d9209682e45a6efceef3)
There are certain classes that we are not yet able to take snapshots of,
either because the class is faulty, or there is a bug in our code.
For these classes, we will use a special snapshot and fall back to the
existing approach to compute classpath changes.
In the short run, we will update this list of cases as they arise. In
the long run, we will:
- Fix all cases that are caused by bugs in our code.
- Decide what to with the faulty jars in general and remove the list.
Test: The following should pass
- Step 1: ./gradlew publish
- Step 2: ./gradlew publish -Pbootstrap.local=true
-Pbootstrap.local.path=/path/to/kotlin/build/repo
-Pkotlin.incremental.useClasspathSnapshot=true
- Replaced UNDEFINED_OFFSET with SYNTHETIC_OFFSET, it's required by
Native backend codegen
- Fixed missing overridden symbols
- Enforce adding fakeoverrides for members not overridden by backend
- Support more points for platform customisation
FIR LC has a different abstraction, so using the specific class name is
literally too specific to FE 1.0 LC.
We could introduce a common interface for those, but checking
`kotlinOrigin` is good enough, and thus type-checking their common
ancestor is good enough too.