423 Commits

Author SHA1 Message Date
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
lyon
6d3d8b3658 support delay for eventloop 2023-04-21 01:06:02 +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
pikastech
ee9d1e696a auto release packages form linux port 2023-03-15 16:20:59 +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
lyon
85d989028e support bool type 2023-02-18 16:35:03 +08:00
lyon
de571a2662 add while_try_while
fix while_try_while vm err
2023-02-15 12:29:47 +08:00
lyon
dfe17ff3b9 fix splitCollect and type hint inner default 2023-02-14 20:53:27 +08:00
lyon
165cc7d041 fix thread and socket on freertos
use pikaMalloc/Free inner platform_thread()

socket multithread test passed on linux

update

improve fast_test.sh
2023-02-14 19:37:30 +08:00
pikastech
1265906952 format shell_filter
set sh_filter as default, add test caces
2023-02-13 15:57:31 +08:00
lyon
531dced423 use pikafs_fxxx API 2023-02-12 11:12:28 +08:00
pikastech
b09cae79d3 raise when list out of index, fix 'for except brea' 2023-02-11 14:44:11 +08:00
lyon
994bb3bdc5 add weakref
add PikaUI test

test PikauI_core passed

save host_obj on methodArg

support save host_obj for method
2023-02-11 00:58:58 +08:00