Releases: iiPythonx/xpp
x3.1: The Caffeine Update
This is x++ version 3.1.2.
Changes include rewriting Caffeine, and modernizing a couple files to prepare for x3.2.
List of changes:
- Rewrite Caffeine into an X++ to Python conversion system.
- Covers 100% of the x++ API, aside from importing (coming soon).
- Automatic minification of resulting Python code via python-minifier.
- Supports building Python code via pyinstaller.
- Migrates the
Datastore
class to use Python 3.10's match-case feature. - Begins integrating
pathlib
into the import system. - Update all copyright notices to 2024.
Full Changelog: x3.0.0...x3.1.2
x3.0.0
Welcome to x3!
Not much changed since the last release, but now I have a shinier version number.
The few things that did change are as follows:
- Finished all documentation inside the
documents/
folder - Add the
in
,not in
, andis
type operators - Implement
xpp --show <module>
- Loads and displays a module's
.xconfig
information - Available for both local
pkgs/
and also dist-packages version
- Loads and displays a module's
Full Changelog (though not much is in it): https://github.com/iiPythonx/xpp/pull/4/commits
x3.0 Beta Release 2
This is x3.0b2, the second beta release of x3.
Changes between b1 and b2 include:
- Prepare repository to be uploaded to PyPI
- Bug and language fixes
- Make importing use module path rather then current directory
- Implement unit testing (currently just math)
- Make use of
os.sep
rather then calling.replace()
and.split()
- Allow modules to define metadata inside a
.xconfig
file- Allow the importing of a Python entrypoint rather then xpp
- Readd multiline statements
- Rewrite exception handler
- Ensure that line numbers are accurate
- Highlight where the problem occurs inside a line
- Allow in-line comments
- Fix documentation
- Add Python API documentation
- Readded
read
, with the same parameters as x2
Full Changelog: x3.0b1...x3.0b2
x3.0 Beta Release 1
This is x3.0b1, the first beta release of x3.
Changes between x2.3 and x3 include:
- Allow global statements to be executed after section definitions
- All sections require a
ret
operator for them to be considered ended.
- All sections require a
- Repeat now takes xpp source code rather then a section branch (like x2.1)
- Add simpleeval integration
- Add
if
,eval
,try
,wait
, andwhile
Full Changelog: x2.3r2...c415a6
x2.3 Release 2
This is x2.3r2, the second release of x2.3.
It takes the rewritten codebase of x2.3r1 and readds nearly all functionality that was removed between the x2.2-x2.3 transition.
Some of this functionality includes:
- Mathematical operators readded (
add
,sub
,div
,mul
,inc
,dec
,flt
,int
,pow
) - File I/O (still very basic,
load
andsave
) - CLI has been cleaned up and moved to
xpp/__main__
in preparation for a PyPI release - General codebase clean up
- Repeat operator (
while
and others are still coming soon) - String manipulation (type conversion from string to integers/floats,
chr
operator,lwr
andupr
)
Full Changelog: https://github.com/iiPythonx/xpp/pull/2/commits
x2.3 Release 1
x2.3r1 - The first stable x2.3 release.
Introduces many new features, including:
- New package management system
- Stack tracing to assist with debugging
- Performance improvements
- Migration from .xt to the appropriate .x2
- Modular interpreter, available to be modded easier
- Much better CLI
Full Changelog: x2.3b1...x2.3r1-pre