Repository navigation
Every crate is at 0.1.12, and graphicle --version prints
graphicle 0.1.12 (core). The Python and TypeScript SDKs are at 0.1.12 too.
Everything new in 0.1.12 was written during Meta's Global AI Developer
Hackathon.
HACKATHON.md
lists it with when it was written.
After upgrading
- Run
graphicle synconce in each project, as after 0.1.11: the saved
graph and the query file are keyed to the program's build, so the first
sync writes both again. - On Windows, if you set
GRAPHICLE_MAX_WORKERS=1to get past the crash
below, remove it: extract and update use all their workers again.
Fixes
- On Windows,
graphicle-graph extractandupdateno longer exit with
0xC0000005 (an access violation) once they split their work across worker
threads, which a file with a few tens of symbols was enough to start. The
crash came from mimalloc 3.3.2, most likely microsoft/mimalloc#1306, so
the Windows programs now use the system allocator, as the macOS programs
have since 0.1.1. Linux keeps mimalloc. Reported by Michael George in #18,
with the cases that reproduced it. graphicle fix: a second run on the same issue that starts within the
same second as the first takes the next free worktree folder (-2,-3
and so on), as the branch name already did. Before, it stopped with git's
"already exists".graphicle fixapplies the model's edits to files whose lines end in
CRLF, as Git for Windows checks them out, and those files keep CRLF.
Before, every edit whose search text spans a line break was refused there
with "the search text is not in the file as it is now". An edit takes the
file's line breaks when all of them are CRLF or all are LF; a file with
both, or with none, takes an edit as it is written (docs/fix.md, step
4).- With the output folder outside the project, given by an absolute path in
GRAPHICLE_OUT, the nodes of Office documents no longer depend on where
that folder is. Each.docxand.xlsxfile is converted to a Markdown
file in the output folder, and the ids of its nodes were taken from that
file's path, so two output folders gave two graphs with the same counts;
the 0.1.11 benchmarks found three graphs of pandas this way. The ids now
come from the converted file's name, which is hashed from the document's
path in the project, so they change once, at the first
graphicle-graph update, orwatchor hook rebuild, after upgrading.
Graphs without Office documents or Google Workspace shortcuts, and graphs
in the default output folder (.graphiclein the project), are unchanged.
An output folder given by a relative path that leads outside the project
(../out) still names them by that path. graphicle-graph watchof a subfolder (watch src) keeps the nodes of
Office documents in its incremental rebuilds. Before, with an output
folder more than three folders up, it dropped them until the next full
update.
Dependencies
- zip 9.2.2 and calamine 0.38.0, for RUSTSEC-2026-0367, -0368, -0369 and
-0429 and GitHub's zip advisories of 28 and 29 October, one of them
critical (GHSA-m665-v7pm-7grj, fixed in zip 9.0.5, the lowest zip the
crates now accept).deny.tomlno longer makes exceptions for them, and
the third-party licence pages list the new versions. - calamine 0.38 reads two kinds of legacy
.xlsfile more correctly: the
rows of an embedded chart no longer appear in its sheet, and BIFF5
rich-text strings keep symbols such as•and’.
Hosted demo
demo/modal_app.pyruns the hosted demo on Modal: an image with the
v0.1.10 release's binary and the checkouts, a Volume with the data folder,
andserver.pyscaling to zero, live with the Meta key's secret or,
without it, showing the recorded answers (demo/README.md, "Modal").
Docs
- The README opens with "Graphify, ported to Rust. Plus memory." and the
live flow from a bug on the screen to a tested fix, and gives the
13-codebase results as bar charts of time and peak memory. docs/benchmarks.mdgives Graphicle 0.1.11 against Graphify 0.9.100 on
one Linux machine: updates after 30 recent commits in three repositories,
and the time and peak memory of three operations on 13 codebases. Its note
on pandas' three graphs now gives their cause, fixed above.- HACKATHON.md calls the pack,
ask --packandplanwritten before the
kickoff first drafts, and says that every change to them after it is event
work. docs/fix.mdandgraphicle fix --helpsay that the test command runs
withcmd /Con Windows, notsh -c, so a test command written for sh
does not run there as it is written;docs/flow.mdand
graphicle see --helpsay the same of its driver.
Packaging
server.jsonat the repository's root is the MCP Registry entry of
0.1.11, the latest listed release (it named 0.1.10).graphicle-graph's NOTICE says that the program uses mimalloc as its Rust
allocator on Linux only.
Install
brew install graphicle-ai/tap/graphicle
# or
curl -fsSL https://github.com/Graphicle-AI/graphicle/releases/download/v0.1.12/install.sh | sh -s -- --version 0.1.12On Windows (x86-64, preview), in PowerShell:
$env:GRAPHICLE_VERSION = '0.1.12'; irm https://github.com/Graphicle-AI/graphicle/releases/download/v0.1.12/install.ps1 | iexEach archive's SHA-256 sum is in SHA256SUMS and beside it in a .sha256 file.
graphicle.exe and graphicle-graph.exe in the Windows archive carry a signature from a SignPath test certificate. Windows does not trust that certificate, so it treats them as unsigned programs and may warn before it runs them. Code signing policy