351 Commits

Author SHA1 Message Date
lyon
bb21c7b7fe support method_proxy for pika_lua 2023-05-14 12:57:24 +08:00
pikastech
cf9d535235 update news 2023-05-07 09:33:06 +08:00
pikastech
0c5cd8340d fixing workspace when find arg form obj
fixed
2023-05-06 20:03:33 +08:00
pikastech
bf129bb398 fix parse err for 'test'.split()[0]
add test
2023-05-05 21:47:52 +08:00
pikastech
4e9816f9a1 support max(), min() builtin 2023-05-02 23:54:11 +08:00
lyon
31bcc66a75 support REPL_HISTORY 2023-05-02 23:54:10 +08:00
lyon
c5751ae48f supporting REPL key_up 2023-05-01 00:27:33 +08:00
lyon
72ec29fbe0 support XXX is not YYY 2023-04-30 21:40:27 +08:00
lyon
f5b0bf5b5c support tuple,list,dict as default arg 2023-04-29 18:38:02 +08:00
pikastech
95e19ac08a try to support tuple as default arg, not pass 2023-04-29 12:21:29 +08:00
pikastech
44c23ee10f fix function call err with pos and default args 2023-04-28 11:19:44 +08:00
pikastech
09dfed3f20 support single_item tuple like (1,) or ('test',)
fix format
2023-04-24 22:30:37 +08:00
pikastech
11080aa513 add circlequeue.py 2023-04-23 20:55:20 +08:00
pikastech
c487912fc5 cancel GIL yiled between bc to avoid data race 2023-04-22 13:46:59 +08:00
pikastech
70aabb81ad fix thread and eventloop for onec args 2023-04-20 19:26:04 +08:00
pikastech
9b140e90a3 add eventloop module, support get_tick for _time 2023-04-20 17:06:16 +08:00
pikastech
a468012f2f fix __setattr__ mem leak when @value is not reg 2023-04-19 22:24:10 +08:00
pikastech
4dd7331f61 fix vm dump when run one char script: "=" 2023-04-19 17:38:38 +08:00
pikastech
3f3c267756 support no_buff vprintf 2023-04-16 10:41:25 +08:00
pikastech
eed2e11a20 fix typo 2023-04-15 11:32:19 +08:00
pikastech
ea4d42bbea fix thread mem error when args is void 2023-04-15 11:20:11 +08:00
pikastech
c89f873fab optimize for pure string on printf
support unlimited pika_printf impl
2023-04-14 19:42:26 +08:00
pikastech
03c3a25bbc fix mem err when pikafs_open_pack() 2023-04-08 21:36:41 +08:00
lyon
a0d7defa9b fix kernal crash on some invalid syntax 2023-04-07 15:51:54 +08:00
pikastech
34dedcde2d add os_path support 2023-03-26 20:43:51 +08:00
pikastech
aeef23fc3b fix align issue on unpack file 2023-03-23 16:30:26 +08:00
pikastech
d8405c4f1a add doc backend
support file2doc, can draw function

use HELPER_MACRO in parser_test

fixing dostring parse

fix docstring

generate md with class and function ok

succeed to generate docstring to markdown

generate API doc ok

support --docgen and --docgen -o arg for compiler

update msc
2023-03-19 21:10:38 +08:00
pikastech
e9f832c517 enhance int() for int('1234', 8) 2023-03-17 14:28:10 +08:00
lyon
83d5bd8379 support type hint `data: dict[str, DataItem] = {} 2023-03-15 22:17:26 +08:00
lyon
8d3795b179 fix complex default parse 2023-03-12 12:14:00 +08:00
lyon
02de084767 fix README details
fix multiline comment parse

add csv.py

parse csv no clashed
2023-03-12 00:24:56 +08:00
lyon
7e8241ab15 (fix) fix multi comment err on one line 2023-03-11 00:18:12 +08:00
pikastech
ca65efd1fa fix args_foreach handler
add PikaGC class

add gc.onMarkObj

add GC DUMP

support gcdump()

improve gcdump
2023-03-09 16:52:57 +08:00
lyon
01be7b7ad7 try to add runbytecodereturn
switch to runbytecodereturn

gc test pass except pikaui

skip pikaui test, local root not work
2023-03-09 11:23:33 +08:00
lyon
8ad1427f51 fix parse err, open assert on rust-msc-
add test about while data[:]

add test for list_list slice

release cross build
2023-03-08 20:54:42 +08:00
lyon
ecfb8cb62f fix CI err 2023-03-08 09:53:39 +08:00
pikastech
7f5edaf090 add objCnt
ready to check where enable the mark_sweep

auto gc with threshold failed, add some assert

more assert about obj alive, dict mark not correct

add pikaGC_try, but cannot run at any time

markSweep crashed on keyword

save gcRoot for obj to debug

add debug point

add kernal_debug config to keep more debug info

use @res_<opt> to mark operation

found self reference on __iter__()

can not fix gc err around iter

remove lock, only keep the self lock

more obj info for debug

only pikaui not pass

only pikaui not pass
2023-03-08 09:35:27 +08:00
lyon
9d4aa3c38c try to fix gc about __pikaMain
fix format

can not markSweep after deinit root

support markRoot if not root

add clang-format

fix path

enable compile-commonds on to support clangd

set markSweep not default

use no_gc object for function frame

only gc for tinyobj, not pikaobj

restore add gc chain when init pikaObj

add clang-format in docker

set for default formatter to clang-format

all Object is GC_ROOT on create

only enable mark sweep to collect after OUT

markSweep after deinit __pikaMain

more mark sweep collect
2023-03-06 10:57:08 +08:00
lyon
38388625ca support mark-sweep gc
change project name and url on kernal sources

rename global Value

format name

use g_PikaObjState

add gc chain

add gc_mark()

add printCanFree

add sub locals init

try use mark-sweep to solve circle-ref

use mark sweep to collect circle ref succeed

import mark-sweep GC

config_default

update
2023-03-05 12:57:27 +08:00
lyon
57a04ca87e fix built-in function print 2023-03-01 22:15:22 +08:00
lyon
cc6fd6605b ready to intruce mark-sweep GC 2023-03-01 21:23:33 +08:00
lyon
ae2ec0a7cd fix 'self' for get method from getattr 2023-03-01 19:28:16 +08:00
pikastech
cb30579c08 update thread, fix parse err on 'not in or' 2023-03-01 15:46:22 +08:00
lyon
3df11749dd add thread.self test 2023-02-28 10:59:53 +08:00
lyon
546daaabe0 logout syntex err line
fix parse err on complex list
2023-02-25 16:43:41 +08:00
lyon
b4f563cfe3 support user compotnents 2023-02-25 16:01:54 +08:00
lyon
0d71c8eed3 fix run native constructor 2023-02-25 12:15:38 +08:00
pikastech
772d990cfa limit max event pickup 2023-02-24 19:20:20 +08:00
lyon
21993122a3 fix weakref
add comment
2023-02-23 21:45:20 +08:00
lyon
6c6be65db6 support add and build 2023-02-22 21:59:28 +08:00