Commit Graph

1935 Commits

Author SHA1 Message Date
Abduqodiri Qurbonzoda 3f95b7e031 Clarify Map.getOrElse and MutableMap.getOrPut documentation #KT-21392 2022-11-25 09:37:37 +00:00
Sergey Bogolepov c6bbce986d [K/N] Fix KT-54498
Forward users to kotlinlang.org instead of new_mm.md because the latter
is obsolete now.
2022-10-17 14:36:59 +00:00
Ilya Gorbunov 34de2d9155 Trim trailing spaces in generated docs of builtins 2022-10-02 19:04:36 +00:00
Paŭlo Ebermann 418c530820 docs: mod/rem: clarify who is dividend and divisor 2022-09-30 15:41:55 +03:00
Vsevolod Tolstopyatov 137e5d67d0 Scrupulously document OptIn-related annotations
#KT-49425

Merge-request: KT-MR-7094
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>
2022-09-22 13:57:45 +00:00
Ilya Gorbunov e35ace5d3a Deprecate AbstractDoubleTimeSource
There are too few usages of it, and it can be mostly replaced with AbstractLongTimeSource.
2022-09-19 19:16:40 +00:00
Ilya Gorbunov 57c9d61291 ComparableTimeMark and specialized TimeSource KT-54082
- Introduce ComparableTimeMark interface extending TimeMark,
and TimeSource.WithComparableMarks - a time source that returns such time marks.
- Implement ComparableTimeMark in ValueTimeMark and AbstractLong/DoubleTimeMark classes.
2022-09-19 19:16:40 +00:00
Alexander Korepanov 47bbd5e8c1 [JS IR] Add work around in EnumEntriesList for JS IR to avoid name clashes
JS IR generates bridges with type checks for special class methods,
 however if parent and child type parameters are same,
 the JS signature for the generated brige will be clashed with
 the JS signature of original method.

 This patch changes type parameter name of EnumEntriesList to avoid the clash.

^KT-54011 Fixed
2022-09-16 07:19:20 +00:00
Abduqodiri Qurbonzoda 4e1cb12024 Remove deprecated Experimental and UseExperimental annotation classes #KT-53864 2022-09-13 17:19:01 +03:00
Abduqodiri Qurbonzoda b388c7503b Advance Int/Long/Double.units deprecation level to ERROR #KT-53864 2022-09-11 23:49:07 +03:00
Abduqodiri Qurbonzoda 89b5ce1ed7 Advance Duration.toLongUnits() deprecation level to ERROR #KT-53864 2022-09-11 23:49:07 +03:00
Abduqodiri Qurbonzoda b1300332ee Advance Duration.inUnits deprecation level to ERROR #KT-53864 2022-09-11 23:49:06 +03:00
Abduqodiri Qurbonzoda 0b4ceb0897 Advance Duration.units(value) deprecation level to ERROR #KT-53864 2022-09-11 23:49:06 +03:00
Abduqodiri Qurbonzoda 7060811c8b Remove the brittle contains optimization code #KT-47707 2022-09-11 10:54:37 +00:00
Abduqodiri Qurbonzoda 0db9326105 Introduce a deprecated StringBuilder.append(CharArray, Int, Int) in Common #KT-52336 2022-09-08 14:34:38 +00:00
Sergey Bogolepov 2e22a5bd41 [K/N] Update annotations documentation for the new MM 2022-08-26 14:35:05 +00:00
Pavel Kunyavskiy 895a8ff149 [K/N] Basic support of Enum.entries for Native
No forward compatibility yet, with old klib IR linker will fail.

^KT-53324
2022-08-25 12:40:30 +00:00
Vsevolod Tolstopyatov 5054e301be [stdlib] Improve EnumEntries
* Provide short-circuit methods for contract "EnumEntries contains all
  enum entries"
* Make EnumEntries serializable
* Introduce more convenient overload for other backends

#KT-53152


Merge-request: KT-MR-6867
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>
2022-08-22 16:50:28 +00:00
Rick Clephas 6ae517a2df [Native] Add HiddenFromObjC and ShouldRefineInSwift annotations 2022-08-22 16:10:44 +02:00
Mikhail Glukhikh b4a92e8a56 Undeprecate @BuilderInference annotation #KT-52400 Declined 2022-08-17 14:07:13 +00:00
Mikhail Glukhikh 66e710704a Protect SubclassOptInRequired with opt-in marker 2022-08-11 14:05:09 +00:00
Mikhail Glukhikh 3f96626b40 Introduce SubclassOptInRequired annotation (see KT-41886) 2022-08-11 14:05:06 +00:00
Rick Clephas 5a5e6ad8cd [K/N] Add ObjCName annotation (#4815) 2022-07-23 18:58:06 +02:00
Vsevolod Tolstopyatov 59ac756f22 Initial implementation of EnumEntries
KT-53152


Merge-request: KT-MR-6656
Merged-by: Vsevolod Tolstopyatov <vsevolod.tolstopyatov@jetbrains.com>
2022-07-15 14:26:50 +00:00
Stanislav Erokhin d788a927c4 Change deprecations annotation order on Ranges#endExclusive property
We have [Int|Long|Char]Range classes in 2 different places:
- as separate class-files
- serialized in the kotlin_builtins file

For some reason our Kotlin compiler during the JVM compilation
re-arranging the order of the annotations, so in class file they
will be written in the following order:
- Deprecated
- SinceKotlin
- ExperimentalStdlibApi

But in the kotlin_builtins they will be stored the same way as
in the sources.
We need these 2 way to be synchronized, because stub's in IDE
cares about order.

After this commit IDE test BuiltInDecompilerConsistencyTest is fixed
2022-07-05 19:50:45 +00:00
Ilya Gorbunov 3a029b8e80 Fix ValueTimeMark adjustment in rare cases and properly test it 2022-07-01 15:20:22 +00:00
Ilya Chernikov bb996c1b27 Switch kotlin version to 1.8
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Vsevolod Tolstopyatov 0c8b31b9ed Clarify specification of Duration.parseIsoString
KT-52778


Co-authored-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>

Merge-request: KT-MR-6556
Merged-by: Vsevolod Tolstopyatov <vsevolod.tolstopyatov@jetbrains.com>
2022-06-28 07:43:33 +00:00
Ilya Gorbunov cd9b36b4c3 Introduce OpenEndRange and make primitive ranges implement it
#KT-52932
2022-06-28 00:08:03 +00:00
Ilya Gorbunov 059ffe7a9b Cleanup obsolete RequireKotlin annotations
They were used to prevent older compiler versions from using specific API, but now these versions are even older than the first compiler version (namely 1.6) that can read this stdlib.
2022-06-24 16:57:58 +00:00
Ilya Gorbunov 1cfc6a8fca Move sources of ranges to common stdlib from builtins
But still cherry-pick them when serializing builtins because they are
used in builtins signatures.

Merge-request: KT-MR-6488
Merged-by: Ilya Gorbunov <Ilya.Gorbunov@jetbrains.com>
2022-06-23 03:49:30 +00:00
Alexander Likhachev e81231a78f Drop redundant comment to OptIn annotation class 2022-06-22 20:24:52 +03:00
Mikhail Glukhikh b42cbf6650 Drop redundant comment to OptIn annotation class 2022-06-21 17:32:42 +00:00
Victor Petukhov dbe7f3ab0d [Stdlib] Suppress deprecation warnings at usages of @BuilderInference 2022-06-21 15:01:56 +02:00
Victor Petukhov de3f5497ab [Stdlib] Deprecate BuilderInference annotation
^KT-52400 Fixed
2022-06-21 15:01:56 +02:00
Alexander Shabalin 29f3445721 [K/N] Deprecated freezing ^KT-50541
Starting with 1.7.20 freezing is deprecated. See https://github.com/JetBrains/kotlin/blob/master/kotlin-native/NEW_MM.md#freezing-deprecation for details.

Merge-request: KT-MR-6399
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
2022-06-16 09:04:14 +00:00
Ivan Kylchik 1564f2c549 Mark all declarations that will be evaluated with ir interpreter 2022-05-18 21:19:54 +03:00
Ilya Gorbunov a03999fe81 Rename DefaultTimeMark to TimeSource.Monotonic.ValueTimeMark 2022-04-14 16:54:32 +00:00
Ilya Gorbunov 77cf41c189 Saturate overflowing values when adjusting time marks
KT-46132
2022-04-14 16:54:31 +00:00
Ilya Gorbunov fede70d0d5 Make TimeMark returned by TimeSource.Monotonic a value class
This value class wraps Long on JVM and Native thus reducing allocations
in time measurement scenarios when the default monotonic time source is
statically known.

KT-46132
2022-04-14 16:54:30 +00:00
Kevin Bierhoff 9fe6e97cb8 Extensions for java.util.Optional (KT-50484)
Co-authored-by: Ilya Gorbunov <ilya.gorbunov@jetbrains.com>
2022-04-13 14:34:06 +03:00
Ilya Gorbunov b35c571a23 Remove deprecated sequence and iterator builders
They were originally provided for migration from experimental coroutines

#KT-26678
2022-04-12 15:03:39 +00:00
Abduqodiri Qurbonzoda c3f5d03b36 [JS] Support named capture groups in Regex #KT-51775 2022-04-05 15:21:25 +00:00
Vsevolod Tolstopyatov cf79752c14 Stabilize deepRecursiveFunction and DeepRecursiveScope
#KT-51848
2022-04-05 12:49:35 +00:00
Mikhail Glukhikh 53d6ac24e5 Switch kotlin version to 1.7
* Change 1.6 to 1.7 constants
* Fix SAFE_CALL_WILL_CHANGE_NULLABILITY for testData
* Change EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_WARNING to EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_ERROR
* Change NON_EXHAUSTIVE_WHEN_STATEMENT to NO_ELSE_IN_WHEN
* Fix testData for SafeCallsAreAlwaysNullable
* Change T -> T & Any in test dumps
* Change INVALID_CHARACTERS_NATIVE_WARNING -> INVALID_CHARACTERS_NATIVE_ERROR
* TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_WARNING -> TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR
2022-02-25 11:46:27 +00:00
Igor Laevsky a5ebd3c716 Re-generate built-ins 2022-01-01 21:46:55 +02:00
Sergej Jaskiewicz 599f705842 [stdlib] Make @LowPriorityInOverloadResolution applicable to ctors 2021-12-02 12:39:40 +00:00
Alexander Udalov 850d76f6bf Remove error on annotated types as arguments to typeOf
Instead, document that `KType.annotations` returns an empty list for
types created with `typeOf`. Annotations might be supported in the
future.

 #KT-49573 Fixed
 #KT-29919
2021-11-16 15:02:50 +01:00
Ilya Gorbunov 9456cd0f5d Improve Duration docs
- Document overflow situation in general
- Document possible rounding in operations involving Double
- Update kotlin.time package description
2021-10-22 11:51:48 +00:00
Ilya Gorbunov 0487261be8 Duration: postpone raising deprecation to error for top-level extension properties
#KT-46229
2021-10-19 09:29:16 +00:00