831 Commits

Author SHA1 Message Date
pikastech
df7d291dbc fix event thread GIL error 2023-04-16 13:36:07 +08:00
pikastech
42c85835d0 add thread_delay for run_until 2023-04-16 10:59:15 +08:00
pikastech
5ea62ce9e0 support platform_get_tick and thread_delay for stdtask 2023-04-16 10:57:54 +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
fe3dff9b3d support obj_newTuple/List helper function 2023-03-30 16:28:42 +08:00
pikastech
d2ae781a18 fix typo 2023-03-30 11:33:13 +08:00
pikastech
1faaacafb7 add STD_in/out ctrl on soft_iic 2023-03-30 11:21:12 +08:00
pikastech
5fdf6701e0 add SOFT_IIC.c
add hal_SOFT_IIC
2023-03-30 11:13:58 +08:00
pikastech
06150d0133 fix os_split 2023-03-26 21:30:18 +08:00
pikastech
07db54e02e support assertNotIn for unittest 2023-03-26 20:49:10 +08:00
pikastech
34dedcde2d add os_path support 2023-03-26 20:43:51 +08:00
pikastech
da27ea4492 fix format err after code block when codegen
udpate msc
2023-03-21 13:49:33 +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
lyon
0b7e19e0a9 parser_lines2AST passed
format for parser_lines2BackendCode
2023-03-18 23:08:04 +08:00
pikastech
62d1d40618 remove parse_line test
move block inner parser

formatting line2Ast
2023-03-18 18:05:10 +08:00
pikastech
f39ad4077b format parser
clear the parse-test

fix time sleep on linux from `uint32_t` to `int64_t`

using parser object on pikaparer
2023-03-18 16:49:37 +08:00
pikastech
e9f832c517 enhance int() for int('1234', 8) 2023-03-17 14:28:10 +08:00
pikastech
b9a0109c61 (fix) fix os on ESP32 2023-03-15 03:20:25 +00:00
pikastech
a3b402ae36 add os module
fix color for GC DUMP

add os module and test

support ESP32
2023-03-15 03:20:25 +00:00
dreamcmi
58f49ba3fe fix timestamp 2023-03-15 02:12:46 +08:00
dreamcmi
4fb6ae1f37 Merge branch 'master' into add/iotcloud 2023-03-15 00:54:48 +08:00
李昂
7090d5fa3e
update port/linux/package/pikascript/unittest.py.
Signed-off-by: 李昂 <liang6516@outlook.com>
2023-03-12 11:13:33 +00: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
ec8405d304 support str.join()
fix VM for nano mode
2023-03-11 22:36:12 +08:00
lyon
7889c4028c (vm) raise err when slice of get out of range 2023-03-11 13:14:54 +08:00
pikastech
1005ca64ef fromat sysobj 2023-03-10 21:39:14 +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
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
c01775b39a add comment for modbus.py, from AI 2023-03-02 00:35:14 +08:00
lyon
f152db319c support fullfealure of type() 2023-03-01 22:03:51 +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
pikastech
fc5e21140b fix ci, fix wars 2023-02-27 19:47:46 +08:00
pikastech
6258ccebb2 add clear() builtin, fix REPL thread 2023-02-26 17:48:19 +08:00
pikastech
6d4b7a3eb7 enhance event ant thread
enhance _thread start
2023-02-26 17:04:58 +08:00
dreamcmi
2ac39e522d fix socket fcntl has wrong number of parameters in lwip 2023-02-26 02:00:10 +08:00
lyon
21993122a3 fix weakref
add comment
2023-02-23 21:45:20 +08:00
lyon
2077880671 fix modbus err 2023-02-23 15:52:44 +08:00
lyon
6c6be65db6 support add and build 2023-02-22 21:59:28 +08:00
pikastech
0b5be3c57c update cJson 2023-02-20 16:23:46 +08:00
lyon
85d989028e support bool type 2023-02-18 16:35:03 +08:00
lyon
6eb79f9b81 update unittest 2023-02-15 11:31:36 +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
lyon
4fb1fd3ed4 fix _thread on freertos|esp32c3
fix Nano mode
2023-02-13 22:24:30 +08:00
lyon
6898f52a71 add GIL for socket 2023-02-13 19:54:16 +08:00