Commit Graph
2618 Commits
Author SHA1 Message Date
Zef Hemel 96fb9f8a03 Changelog and manual updates 2025-11-24 10:24:09 +01:00
Zef Hemel 2ced6de1ee Using topWidget to render beta-level on website 2025-11-24 10:24:02 +01:00
Zef Hemel 9e8e717ea3 Fixes #1352 2025-11-24 09:57:02 +01:00
Laurence TanandGitHub 0e9a6015e9 handle invalid-path errors (#1701) 2025-11-24 08:52:55 +01:00
Lelouch HeandGitHub 7afda4aa37 Follow the system theme automatically when dark mode toggle was not set before (#1696)
* follow browser theme unless darkmode was set before

* trigger workflow
2025-11-21 15:46:25 +01:00
Matouš Jan FialkaandGitHub c50bb49205 Space Lua: Add support for \t in strings (#1698)
Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>
2025-11-21 09:36:45 +01:00
Zef Hemel e837059501 Update TreeView URL to official repo 2025-11-19 17:00:52 +01:00
Zef Hemel 80ab0151cc CHANGELOG updates 2025-11-19 17:00:13 +01:00
Zef Hemel 34210b9a52 Rename LaTeX library to Math 2025-11-19 15:01:59 +01:00
Zef Hemel 8117342c2c Better URI to name translations for repo URIs 2025-11-19 14:57:45 +01:00
Zef Hemel 8395d2ab63 Propagate errors (e.g. when disabled) for proxy fetch 2025-11-19 14:57:32 +01:00
Zef Hemel b0f6b9a33d Add permission check before write/delete operations This avoids
accidentally writing to a read-only file and only finding out about it
after a sync.

Also removes redundant space primitive implementations that weren't used
2025-11-19 14:57:10 +01:00
Zef Hemel ce25cc9d9e Adding more libraries to the Std repo 2025-11-18 17:08:49 +01:00
Zef Hemel 5d0bcbd913 Update Excalidraw to official repo 2025-11-18 16:44:01 +01:00
Matouš Jan FialkaandGitHub 7912f05949 Space Lua: Add goto and labels support (#1686)
* Space Lua: Add AST block type label/goto and duplicated label bools
* Space Lua: Add label/goto resolution and evaluation

Add per block map of labels metadata, per function block metadata cache
and `processBlock` to track AST blocks (`If`, `While`, `Repeat`, `For`
and `ForIn`, and `Do`) while recording labels and their positions.

Align with Lua scoping rules (_e.g._, a `goto` can not jump into the
scope of a local). Also allow the super-special "safe" end of block
cases (except inside `Repeat`). Duplicated labels are detected (error
`label 'foo' is already defined` etc.). The AST context for error
reporting is preserved. The `WeakMap` caches map any block to its
function's metadata.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: The `goto` parse flags and eval path

At parser mark each block with `hasLabel`/`hasGoto` and record the first
duplicated label. Flags then propagate through blocks and control flow.

If no `goto`, run the block in a simple loop and raise duplicate label
error if any is present. If `goto` exists, jump via a label map.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Add labels and `goto` statement test suite

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Minor `goto`/labels improvement and test hotfix

- The `getBlockGotoMeta` now called only when a block has either
  `hasGoto` or `hasLabel`.

- Add `BlocksFlags` type to get rid of some `(... as any)`s by view.

- Add `blockMetaOrThrow` helper.

- Fix test to reflect standard Lua semantics.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Goto: Add missing Lua semantics checks

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Goto: Add Lua semantics checks also covered in Lua tests

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Goto: Fix semantic divergence revealed by fixing unfinished test

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Fix typo

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Optimize block env creation and cache goto metadata

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Avoid using the venomous snake case

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Add comment for WeakMap use

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Block Label Fast-path Optimization

Add block flag `hasLabelHere` during parsing and use it in eval to skip
expensive metadata generation for blocks and entire functions without
label or goto.

Refactor eval logic:
- early fast path when a function is known to have no label/goto,
- later fast path for blocks in functions with goto.

Fetch metadata only when needed.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Space Lua: Remove `BlockFlags` indirection from eval

- Add `hasLabelHere` flag to `LuaBlock`.
- Remove `BlockFlags` indirection from eval.
- Set `hasLabelHere` directly.
- Add some "guards".
- Improve consistency of child filtering.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

* Remove redundant return statement

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>

---------

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>
2025-11-18 16:35:08 +01:00
Zef Hemel 6d81aeb4c2 Fixes #1687 2025-11-17 15:50:12 +01:00
Zef Hemel 79df63bd79 Add Silversearch to silverbullet.md
Alternative implementation of #1689
2025-11-17 14:54:50 +01:00
Zef Hemel 90473bd3b9 Website updates 2025-11-17 14:45:52 +01:00
Zef Hemel aae9805e32 Add a few more libraries to Std 2025-11-17 14:45:45 +01:00
Zef Hemel e74ac4b4d3 Default to full Github URLs in Github share support 2025-11-17 14:45:33 +01:00
Zef Hemel 0d4351cf7a Fix removing libraries support for files 2025-11-17 14:45:13 +01:00
Zef Hemel 8c34b35ed6 Website content redo 2025-11-14 15:36:38 +01:00
Zef Hemel 35ec8b162e Website: Funding 2025-11-14 15:34:42 +01:00
Zef Hemel 11fccb0552 Website: More elaborate architecture diagram 2025-11-14 15:34:21 +01:00
Zef Hemel f62a861762 Website: API classification 2025-11-14 15:33:01 +01:00
Zef Hemel a3b69bd47d Added Tag Picker
Bonus:
* Tag pages now include parent and child tags
* Optimized tag completion
2025-11-14 11:50:59 +01:00
Zef Hemel e01c8b3d83 Lua: fix edge case where querying wasn't supported for empty tags 2025-11-14 11:49:18 +01:00
Zef Hemel ec9fcd1ced More info on edge builds in CHANGELOG 2025-11-12 16:55:08 +01:00
Zef Hemel 391e70139e Library and Repostitory refinements 2025-11-12 16:54:55 +01:00
Zef Hemel f0e6bb243a Don't show a border when using button widgets 2025-11-12 16:54:07 +01:00
Zef Hemel 1a03ccc561 Stop logging redundant logs 2025-11-12 16:53:41 +01:00
Tomasz GorochowikandGitHub b282d70f1e Fix Anything Picker docs on the website (#1681) 2025-11-10 23:03:28 +01:00
Mihai MaruseacandGitHub 30daf45f3b Fix: add a missing triple-backtick to close env (#1680) 2025-11-10 19:44:02 +01:00
Zef Hemel a6d4eb187b Lua: Fix regression in pairs 2025-11-10 15:33:26 +01:00
Zef Hemel 9569f51142 Fixes #1658
SilverBullet now has hard dependencies on APIs that are only available
via localhost and HTTPS URLs. A lot of people run into this, this
documents how to setup TLS and gives a more in-your-face message about
what's going on.
2025-11-10 14:33:38 +01:00
Matouš Jan FialkaandGitHub 3b0c38d72d Space Lua: Perf improvements (#1666)
* Add result-or-promise (RP) exec model to interpreter (async-first).
* Add centralized table property access with fast misses.
* Update table string keys to be object map.
* Update error contexts to be more consistent and precise.
* Update evaluator to return either values or _Promises_.
* Update func calls, unary and bin operations, and expression lists.
* Update _stdlib_ to the changes and improve errors.
* Add tests to validate async control flow and error contexts.
* Add dedicated benches that isolate the _runtime_ from parsing.
2025-11-10 13:23:32 +01:00
Zef Hemel a61983b7e8 Deno -> 2.5.6 2025-11-09 12:16:34 +01:00
Ohad LutzkyandGitHub 72a7c6e071 More robust "offline" handling when using proxies (#1675)
Identify more HTTP statuses as indicating "offline", specifically ones
delivered by proxies such as cloudflare.
2025-11-09 12:10:30 +01:00
Arnav JainandGitHub 7d9f8a41f9 Https note for editor.copyToCliboard (#1659) 2025-11-08 12:18:04 +01:00
Rodolfo SouzaandGitHub b146d53aa5 Fix embed youtube 153 error by adding referrer-policy header (#1672) 2025-11-08 12:17:21 +01:00
Zef Hemel cccf40fdb1 Fix Library: Add Repo 2025-11-07 22:16:56 +01:00
Zef Hemel 8a0bab65db Updated Repositories/Std 2025-11-07 19:32:39 +01:00
Zef Hemel 014c77f22f Fix Library: Install 2025-11-07 19:30:58 +01:00
Zef HemelandGitHub f8e805ee61 Update Std.md 2025-11-07 19:08:38 +01:00
Zef Hemel 4e32f1802f Service API docs fixes 2025-11-07 17:24:54 +01:00
Zef Hemel e28d5f8639 Documentation fixes 2025-11-07 17:17:02 +01:00
Zef Hemel c68b3786df Change "package" -> "library" terminology leftover 2025-11-07 17:01:18 +01:00
Zef Hemel e079f06659 Note about plug location change in changelog 2025-11-07 16:43:15 +01:00
Zef Hemel 3f27d2a532 Update CHANGELOG.md 2025-11-07 16:36:38 +01:00
Zef Hemel 633bd13e2d Library manager tweask 2025-11-07 16:36:08 +01:00