Releases: WingedSeal/jmc
Releases · WingedSeal/jmc
v1.1.0-alpha.2
Changelog v1.1.0-alpha.2
Fixed
- Fixed whitespaces after say command being insignificant.
- Fixed Variable Operation with variable being broken
v1.1.0-alpha.1
Changelog v1.1.0-alpha.1
Changed
- Allow whitespace(s) between argument of command instead of space.
Dev section
Add " ".join(split(command, ' '))
to Command.command
v1.1.0-alpha
Changelog v1.1.0-alpha
Add
- Add logic gate processing for condition (
!
,&&
,||
,()
) - Allowed nesting
class
andfunction
(You still can't define function inside function)
Changed
@import
now import at the line it's called instead of the top of the file@import
will only works in the highest level (Outside function, class, etc.)- Change configuration file name to
jmc_config.json
Fixed
- Fixed stuff inside strings/brackets triggering keywords
- Nested layers of flow controls now work properly
- Fixed whitespaces inside string being turned to spacebar
Dev section
Refactor entire codebase
- Use recursion for parsing
- Use
config.py
instead of directly reading from config file in logging - Put class, condition, for, function, if_else, while inside flow_control
- Change
PackGlobal
toDataPack
- Instead of giving a singleton object to every function, every function is now a method of
DataPack
instead (Completely another way around) - Delete unnecessary import in
__init__.py
- Use class instead of method for condition parsing
- Use recursion to allow parsing condition with parenthesis
- Condition now have power over keyword
if
(It can now changeexecute if
toexecute unless
)
- Replace most of
?
with\s*
v1.0.2
Changelog v1.0.2
Changed
- More stable arguments parsing for built-in functions
- # now requires a space after it to count as comment
Fixed
- Fixed default description typo.
Dev section
- Add parse_split_comma, Improve match_bracket
- Fixed typo, parse_split_comma -> parse_split
((# ).*)|((\/\/).*)
v.1.0.1
Changelog v1.0.1
Fixed
- Fixed flow controls calling incorrect function
v1.0.0
** Changelog: **
No bugs found so far (i.e. nothing)
v1.0.0-beta.1
Changelog v1.0.0-beta.1
Fixed
- Fixed
0-9
not getting regonized as variable - Fixed variables in If/Else in For Loop being global instead of local
Add
- Allow flow controls inside flow controls inside flow controls and so on...
- Added version in logger debug_mode
Dev section
-
Fix for loop
- Change Re.var to r'($[a-zA-Z0-9._-]+)'
- Call capture_for_loop before capture_if_else
- Add logger in
log.py
- logger now debug version
- Allow flow controls inside flow controls inside flow controls and so on...
with multi function class and file "recursion". (I'm so big brain lol)- Flow controls are now caled from Function instead of compile
- All flow controls' imports are in the
__init__
method to avoid circular import - If there's a flow control recursion it'll keep doing a recursion until the flow controll classes are no longer called which will end the recursion
-
Fix
<var>-=<int>
- Change Re.var to r'($[a-zA-Z0-9._]+)'
-
Fix For loop inside For loop not working
v1.0.0-beta
Changelog v1.0.0-beta
Added
- Added Compile loop feature. If
keep_compiling
in config is set to true, compiler will compile again everytime user click to continue (No need to restart program) - Added
for loop
feature - Added icon for JMC-Compiler.exe
Fixed
- Fixed
.
and_
not getting regonized as variable
Changed
- New changelog format
- Use
let
instead ofint
for variable declaring
Dev section
-
Add For Loop
- Add _for.py, For, capture_for_loop
- Remove useless debug statement in capture_while_loop
- Change
let
toint
in Command.custom_syntax.var_declare - Change Re.var to r'($[a-zA-Z._]+)'
-
Fix for loop not working
- Add capture_for_loop in
compile.py
- Change
for.py
to_for.py
- Add
_for.py
in__init__.py
- Pass
arguments[0]
to regex in For Loop - In For, update
$<var>
to'$__private__.<var>
before callingcondition
- Add capture_for_loop in
-
Add
{arguments[2]};
in For class -
Fix For Loop not working
-
Update features.md
- Add For Loop
- Change format
- Add spoilers for future features
v1.0.0-alpha.3
Changelog:
* Fix while loop calling the wrong function
* Fix incomplete logging
* Fix jmc trying to import jmc.config before generating it
v1.0.0-alpha.2
Changelog:
* Fix custom condition <var>==<var> not working
* Fix increment syntax
* Fix debug_mode not working
* Fix custom operation syntax having significant whitespace
+ Add while loop feature