Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
bfa603d
Frist commit of massive experiment
marsninja Oct 11, 2025
f1ec57a
Frist commit of massive experiment
marsninja Oct 11, 2025
574bf9d
Merge branch 'main' into OneLang_experiment
marsninja Oct 11, 2025
c49bbe1
cli frontend added and test cases in
marsninja Oct 11, 2025
2c589af
more tests of js generation
marsninja Oct 11, 2025
3d15c63
saving this off
marsninja Oct 11, 2025
f34e9ab
Merge branch 'main' into OneLang_experiment
marsninja Oct 11, 2025
4ab0d53
improvements for tests passing
marsninja Oct 11, 2025
dd85e48
examples excercising more nodes
marsninja Oct 11, 2025
5ed7753
fixed tests
marsninja Oct 11, 2025
5d0d414
test tweak
marsninja Oct 11, 2025
64c1968
cant test this now
marsninja Oct 11, 2025
b4fe0b6
ok basic scafholding in place for ecmascript support
marsninja Oct 11, 2025
59eb853
Merge branch 'main' into OneLang_experiment
marsninja Oct 11, 2025
f9aef3f
man merge
marsninja Oct 11, 2025
72d51ea
Merge branch 'main' into OneLang_experiment
marsninja Oct 11, 2025
2350930
one approach to jsx parsing
marsninja Oct 11, 2025
a16c0a0
improvements to unparse
marsninja Oct 11, 2025
5cb67ab
most test pass but I broke thakee's
marsninja Oct 11, 2025
046752a
jsx almost done
marsninja Oct 11, 2025
bee79ca
most tests pass
marsninja Oct 11, 2025
cb81960
Merge branch 'main' into OneLang_experiment
marsninja Oct 12, 2025
7f64c5a
removing dead tests
marsninja Oct 12, 2025
475d151
Rename jsx lark section and update docs
marsninja Oct 12, 2025
02c341c
Merge branch 'main' into OneLang_experiment
marsninja Oct 12, 2025
9f0b644
lint fixes
marsninja Oct 12, 2025
9dcca14
Experiment CHECKPOINT here, wading into new ui keyword
marsninja Oct 12, 2025
13ba7b2
lang syntax updated with cl
marsninja Oct 12, 2025
7d75d5b
design doc
marsninja Oct 13, 2025
f3ed1bd
a state
marsninja Oct 13, 2025
2deadbd
a thing works
marsninja Oct 13, 2025
f19475f
dark mode for doc
marsninja Oct 13, 2025
684002d
improvements to js codegen
marsninja Oct 13, 2025
784a9d2
reorg of multi compile process
marsninja Oct 13, 2025
db1715f
a bit cleaner
marsninja Oct 13, 2025
1c345ec
linting passes
marsninja Oct 13, 2025
a3cffb9
clean up cli.py
marsninja Oct 13, 2025
8bf89f0
ok spec looks good, needs deep code review
marsninja Oct 13, 2025
904b26f
repor refactor
marsninja Oct 13, 2025
527cce6
page is working
marsninja Oct 14, 2025
c29dfc6
something's happening
marsninja Oct 14, 2025
c8d9e35
simplfied testing strategy
marsninja Oct 14, 2025
4de452d
simplification
marsninja Oct 14, 2025
9269e92
manual merge
marsninja Oct 14, 2025
0430975
Merge branch 'main' into OneLang_experiment
marsninja Oct 14, 2025
d3e876c
csr by default
marsninja Oct 14, 2025
c8917f3
prototype in a functional state
marsninja Oct 14, 2025
15304c9
ripping out ssr pipeline as it really should be python only
marsninja Oct 14, 2025
55c480c
a few deeper cuts
marsninja Oct 14, 2025
3a10cbf
more cleaning up
marsninja Oct 14, 2025
1823480
refactoring out bloat
marsninja Oct 14, 2025
23c7e31
moving preproc for es nodes out of program
marsninja Oct 14, 2025
c3e887a
tweaks
marsninja Oct 15, 2025
7f74c46
dead code elimination
marsninja Oct 15, 2025
0562a58
cleaning
marsninja Oct 15, 2025
ab0b909
syntx highlighting and merge ready
marsninja Oct 15, 2025
270328e
im good to merge this
marsninja Oct 15, 2025
331eced
project one lang merge ready
marsninja Oct 15, 2025
1f7001c
tweak
marsninja Oct 15, 2025
91e4bac
CI race condition avoidance
marsninja Oct 15, 2025
b67de72
timeouts for ci passing hopefully
marsninja Oct 15, 2025
6c5a3fa
maybe test will run faster?
marsninja Oct 15, 2025
295c147
now maybe?
marsninja Oct 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/test-jaseci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,15 @@ jobs:
pip install -e jac-streamlit
pip install pytest
pip install pytest-asyncio
pip install pytest-xdist

- name: Set environment for testing
run: |
echo "TEST_ENV=true" >> $GITHUB_ENV
- name: Run tests
run: pytest -x jac jac-cloud jac-byllm jac-streamlit
run: |
pytest -x jac -n auto
pytest -x jac-cloud jac-byllm jac-streamlit
- name: Run jac-cloud tests with DB
run: pytest -x jac-cloud
env:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ MANIFEST
.coverage
.session
*.session.db
*.session.*.json
.DS_Store
.vscode
build
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<!-- =======
[jac-lang.org] | [Getting Started] | [Contributing]

[jac-lang.org]: https://www.jac-lang.org/
[jac-lang.org]: https://www.jaseci.org/
[Getting Started]: https://www.jac-lang.org/learn/getting_started/
[Contributing]: https://www.jac-lang.org/internals/contrib/ -->
</div>
Expand Down
1 change: 1 addition & 0 deletions docs/docs/communityhub/release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ This document provides a summary of new features, improvements, and bug fixes in

## jaclang 0.8.10 / jac-cloud 0.2.10 / byllm 0.4.5 (Unreleased)

- **Frontend + Backend with `cl` Keyword (Experimental)**: Introduced a major experimental feature enabling unified frontend and backend development in a single Jac codebase. The new `cl` (client) keyword marks declarations for client-side compilation, creating a dual compilation pipeline that generates both Python (server) and pure JavaScript (client) code. Includes full JSX language integration for building modern web UIs, allowing developers to write React-style components directly in Jac with seamless interoperability between server and client code.
- **Parser Performance Optimization**: Refactored parser node tracking to use O(N) complexity instead of O(N²), drastically reducing parsing time for large files by replacing list membership checks with set-based ID lookups.
- **OPath Designation for Object Spatial Paths**: Moved Path designation for object spatial paths to OPath to avoid conflicts with Python's standard library `pathlib.Path`. This change ensures better interoperability when using Python's path utilities alongside Jac's object-spatial programming features.
- **byLLM Lazy Loading**: Refactored byLLM to support lazy loading by moving all exports to `byllm.lib` module. Users should now import from `byllm.lib` in Python (e.g., `from byllm.lib import Model, by`) and use `import from byllm.lib { Model }` in Jac code. This improves startup performance and reduces unnecessary module loading.
Expand Down
Loading