56 Commits

Author SHA1 Message Date
8f66cd7680 Fix lynglib binding regressions and green test suite 2026-04-16 23:34:45 +03:00
b42ceec686 Preserve VM throw sites in stack traces 2026-04-14 01:17:04 +03:00
c9eb3df93d Add Deferred.joinAll helper 2026-04-09 11:27:32 +03:00
69013392d3 Add lyng.legacy_digest module with LegacyDigest.sha1()
Provides a pure Kotlin/KMP SHA-1 implementation with no extra dependencies,
exposed as `LegacyDigest.sha1(data)` in the `lyng.legacy_digest` package.

The naming deliberately signals that SHA-1 is cryptographically broken:
the object name `LegacyDigest` and prominent doc-comment warnings steer
users away from security-sensitive use while still enabling interoperability
with legacy protocols and file formats that require SHA-1.

API:
  import lyng.legacy_digest
  val hex: String = LegacyDigest.sha1("some string")   // UTF-8 input
  val hex: String = LegacyDigest.sha1(someBuffer)       // raw-byte input

Tests cover FIPS 180-4 known-answer vectors (empty, "abc", long message,
quick-brown-fox) at both the Kotlin and Lyng integration levels.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 19:51:04 +03:00
a7ab0d3905 added static List.fill(size) { ... } 2026-04-03 21:15:41 +03:00
caad7d8ab9 stdlib inference bug fixed 2026-04-03 11:04:16 +03:00
311cf6ee44 Add Lyng deferred cancellation support 2026-03-31 22:50:46 +03:00
3e338f3d53 Fix sqrt type inference and add regression coverage 2026-03-31 22:26:58 +03:00
05d7432b37 fixes on Decimals and bound kotlin classes 2026-03-29 01:20:20 +03:00
c7c333b71a fixed some issues with Decimals 2026-03-29 00:39:48 +03:00
83d8c8b71f Added Vectors and Matrics operations, slicing, docs. 2026-03-28 22:25:40 +03:00
a72991d1b7 debug stuff cleanup and simplify 2026-03-28 17:50:53 +03:00
cd007050a8 added complext number support 2026-03-28 17:44:43 +03:00
4269310beb Use canonical class identity for delegate checks 2026-03-27 19:19:38 +03:00
7c059b4741 Fix lazy delegate type resolution across modules 2026-03-27 18:57:27 +03:00
217787e17a Temporary lazy builtin baseline 2026-03-27 18:46:53 +03:00
2a79c718ba 1.5.0-RC2: improved lyngio.console, some polishing 2026-03-19 22:41:06 +03:00
794553d81d Add stdlib Random API and migrate tetris RNG 2026-03-19 01:30:35 +03:00
a6492bb750 Add support for symbol inclusion via directive and refactor extern classes handling 2026-03-15 09:13:33 +03:00
979e6ea9b7 Require explicit extern members in extern class/object and update docs 2026-03-15 03:27:50 +03:00
e447c778ed fixed few bugs in compiler and plugin 2026-03-15 02:53:33 +03:00
8b5e6ee993 Add immutable collections hierarchy with runtime/compiler/docs/tests 2026-03-12 21:07:56 +03:00
d8d2eff436 Bind KotlinIterator via stdlib extern class 2026-02-15 01:37:40 +03:00
db4f7d0973 Finalize bytecode-only lambdas and frame binding 2026-02-12 17:47:05 +03:00
24c4ed85b4 Declare List.add in stdlib
Declare List.add in stdlib
2026-02-04 14:01:36 +03:00
1fab2702dd Allow Object members on unknown types 2026-02-04 03:40:07 +03:00
47654aee38 Enforce compile-time only member access 2026-02-04 03:30:56 +03:00
0f1748e053 Add generic extern collection types 2026-02-04 00:31:55 +03:00
ac2a734998 Align extern class member ids with runtime 2026-02-04 00:13:05 +03:00
ec64d7309c Add typed Iterable/Iterator externs 2026-02-04 00:01:29 +03:00
874f8fc205 Support generic extension receivers and Iterable signatures 2026-02-03 23:58:49 +03:00
c5bf4e5039 Add variance-aware type params and generic delegates 2026-02-03 09:09:04 +03:00
c9da0b256f Add minimal generics and typed callable casts 2026-02-03 07:38:41 +03:00
523b9d338b Update compile-time resolution and tests 2026-02-03 02:07:29 +03:00
a4fc5ac6d5 Add list literal opcode and bytecode wrappers 2026-01-28 22:35:14 +03:00
63bcb91504 Fix bytecode bool conversion and object equality 2026-01-28 16:45:29 +03:00
7b3d92beb9 Fix stdlib drop and add bytecode return/break test 2026-01-28 08:54:54 +03:00
b7fe04d65f cosmetics 2026-01-14 22:11:33 +03:00
6fa57c8197 plugin: run command. Lyng string "hello"*repeatCount operator. Plugin spell check is still not working properly 2026-01-14 13:34:08 +03:00
b9831a422a 1.2.0-SNAPSHOT started bug core refactor to support all new future and more strict rules (namely, fundamental difference between properties, functions and delegates) 2026-01-10 02:57:20 +01:00
2acb60697d more tools to deal with Lyng exeption in Kotlin 2026-01-08 12:42:29 +01:00
2c0a6c7b34 operators overriding 2026-01-07 09:33:10 +01:00
73854f21f3 reformatted root.lyng for better readability/2 2026-01-05 22:30:51 +01:00
f66e61c185 reformatted root.lyng for better readability 2026-01-05 22:27:02 +01:00
41a3617850 improved lazy delegate; added with(newThis) {} to stdlib 2026-01-05 22:25:46 +01:00
5f819dc87a Added delegation support: Delegate, lazy, "by" keyword for valr/var/fun and object {} singletons 2026-01-05 19:05:16 +01:00
514ad96148 AccessException -< IllegalAccessException; added TODO() and NotImplementedException 2026-01-05 11:14:05 +01:00
5586e027ea more stdlib and docs 2025-12-24 18:56:30 +01:00
cd2b1a9cb7 Extensions methods and properties now are correctly isolated, respect visibility rules and allow adding class properties and class vals. 2025-12-24 00:29:10 +01:00
3b6504d3b1 Add flatten, flatMap, and filterNotNull functions with corresponding tests 2025-12-23 18:06:28 +01:00