Repository navigation
NetCrux 1.0.0
The first stable release, and the end of the public beta. Two things follow
from that. NetCrux is now licensed: Open Core is free and stays free, and the
Pro and Enterprise features the beta handed to everyone now need a key. When
one is refused, the app says which tier it belongs to instead of quietly doing
nothing. And the app is named for the product rather than for the tier, so it
is NetCrux in the Dock, the title bar, the Start menu and your app menu.
Download it from netcrux.app/download, open a
netlist in the browser at app.netcrux.app, or read
the manual at docs.netcrux.app.
New
- Large designs lay out in seconds, on every platform. The layout engine
now runs natively on macOS, Windows and Linux, as a port of the Eclipse
Layout Kernel that draws the same schematic as before. On a current laptop
picorv32 lays out in about three seconds and VexRiscv in about fifteen, and a
100,000-cell scope fits the window and stays visible when you zoom out.
Windows and Linux previously ran layout in an interpreter and timed out on
designs that size. - X-Trace has a panel. NetCrux could already walk the back-cone of an X and
had nowhere to put the answer, so the result was computed and discarded. The
X-Trace panel is a dock you can move and reopen, it shows the chain with the
net that originated it, and closing the tab keeps the chain while Clear
empties it. Trace X Origin on the schematic's context menu starts the
walk (Pro); the panel itself is Open Core. - Licensing, in the app. Settings ▸ License takes a key, shows what it
entitles you to and when it renews, and Manage subscription opens the
billing portal. Education users can apply for an EDU licence from the same
panel. For machines that cannot reach the internet there are licence files:
export a request, import the signed file, and the tier is active offline. A
licence that has been cancelled or has run out of seats drops the app back to
Open Core and says so, rather than failing in some other way. - A suite licence spends one seat per machine, not one per product. A seat
is a computer. Installing the third and fourth EDACrux product on a machine
that already has a seat no longer exhausts the seat count, because all four
products now present the same machine identity. Deactivate this machine
releases that seat for every EDACrux product on the computer at once, from
whichever product you happen to be in, and the confirmation says so before
you agree to it. - First launch asks. You accept the licence agreement, then answer a
usage-statistics disclosure, before the app opens. Usage statistics start
switched off in the EEA, the UK, Switzerland and South Korea, and can be
turned off anywhere in Settings ▸ Privacy, which now also shows the
installation ID the reports carry, so you can quote it.--reset-eulaand
--reset-telemetry-consentreopen either prompt. - One project file that opens in whichever tool you reach for. A
<design>.crux-projectmanifest, or a design directory, opens from the
file picker, from the command line, and by double-clicking it in Finder or a
Linux file manager; a manifest double-clicked on macOS opens in the EDACrux
product you chose for it. - Open a design from VS Code. The EDACrux extension can hand NetCrux a
design it has never opened before. - Review a schematic together (Enterprise). NetCrux can host a
collaborative session of its own, over the same protocol WaveCrux uses, with
a schematic as the payload. Admission is asked for out loud, and a
participant who leaves clears out of the room. - Deployment for managed fleets. Alongside the installer and the AppImage
there is now an MSI for SCCM and Group Policy, and.deband.rpmpackages
for package-managed Linux. The Linux packages are namednetcrux, soapt
anddnfinstall and remove them under that name.SHA256SUMSis written
so thatsha256sum -cverifies it. - Organization policy (Enterprise). An administrator can ship a signed
policy file that sets the update channel, pins a version or points at a
mirror, distributes organization symbol libraries, and restricts which peers
cross-probing will talk to. At startup NetCrux reports which policy file it
accepted (or that it refused one, and why) and names the keys this build
honours and the ones it ignores, so a mistyped key is visible instead of
silent. The Symbol Manager shows the organization's packs and whether they
arrived. - An audit trail (Enterprise). Schematic opens (by design name), session
saves, searches, cross-probe originations and licence tier changes are
recorded. - Updates know what you are entitled to. A release that only paid seats can
install is no longer offered to an Open Core seat. - NetCrux by ear. A full pass with a screen reader, now pinned as
regression tests: the schematic canvas announces what is on it and can be
driven from the keyboard: select, push into a hierarchy, open the element
menu; the Hierarchy tree is one Tab stop driven by the arrow keys; pins are
selectable without a mouse; focus that is lost returns to a live control; and
the first-launch dialogs can be answered from the keyboard. - Report a problem from inside the app, against the public NetCrux
repository, with issue templates on the other end.
Fixed
- On Linux, designs lay out. Every Linux build through 0.8.0 opened a
netlist and then failed to lay it out, because a library the layout engine
loads was missing from the bundle. - Library black boxes are cells. A netlist carrying vendor
blackbox
modules, assynth_ice40output does, no longer shows each one as an empty
hierarchy scope you can push into. - Zooming from the toolbar, the menu or the keyboard holds the centre of the
view, instead of zooming about the design's origin. - A hierarchy filter that matches nothing points you at Search, which finds
cells as well as scopes. - On Windows a project keeps the case of its source paths.
- On Windows and Linux the menu bar works for the whole session. Items that
need an open document stayed greyed out from launch until you quit; macOS,
which uses the system menu bar, was never affected. - Dropping a tab on another tab reorders it, rather than doing nothing.
- The menu bar did nothing until you clicked something. Straight after
launch the menus dispatched into empty space, so Help ▸ Command Palette
and anything else you picked before touching the window was swallowed. - A netlist whose module contains itself no longer crashes the search and
the hierarchy tree. - A fatal elaboration error fits in the drawer that explains it, instead of
overflowing it. - Large designs pan, click and keyboard-step without freezing. Panning and
hit-testing scanned the whole scope on every interaction, the cone of
influence froze the window on a large scope, the activity heatmap's net walk
held the frame, and a net's fanout was rendered as one enormous paragraph.
All four are fixed. - Sessions and projects come back as you left them. A reopened session
lands where it was saved and keeps its scope when the design reloads; a
restored project tab keeps the settings from its project file. - Load Comparison Netlist loads the revision you picked, and the Diff View
panel no longer advertises controls that do nothing. - Open Waveform File has a waveform picker and the activity heatmap honours
the window you give it. - Toggle Theme switches between Crux Dark and Crux Light, and every theme
preset paints the window chrome it has always painted. - VHDL needs only GHDL. NetCrux lowers VHDL with
ghdl --synthand has
never usedghdl-yosys-plugin; the documentation, the engine-fetch script
and the notices said otherwise. There is nothing extra to install. - The web viewer loads a netlist, from a URL or from a file you pick.
- Colours, dialogs and empty states across the app. A border token that was
colouring text is corrected and guarded against; Solarized Dark's status bar
is legible; dialogs no longer stack on a held shortcut or close on a stray
click; the Symbol Manager shows the same empty state as every other panel;
and toggling a dock redraws the dock rather than the whole layout. - Double-clicking works, and NetCrux stops claiming files that are not its
own. Its netlists, sessions and project manifests open from Finder and from
Linux file managers; NetCrux no longer offers itself as the handler for every
source and text file. - The command line behaves.
netcrux --helpprints usage and exits, and a
flag given without a value no longer swallows the filename after it. - Sessions, suite manifests and netlists open as what they are, rather than
being guessed at. - LAN sharing on a port that is already taken fails and says why, host
addresses dial correctly, and an IPv6 host with a zone id is recognised on
Linux as well as macOS. - A symbol directory that cannot be read is skipped with the problem
logged, instead of taking the load down with it. - Cross-probe sends report every failure, in your language, and closing the
panel mid-send is safe. - Help icons open the section of the manual that answers them, and the
privacy and terms links go to the suite pages. - A keymap written by a newer build is refused with an explanation, rather
than silently overwritten. - A cross-probe arriving from another EDACrux tool bounces the Dock icon.
- A project file can no longer choose what NetCrux runs. Yosys commands
from a project file are vetted, and a cross-probing peer can no longer
influence the editor command line NetCrux builds.
Also
- macOS 12.0 (Monterey) or newer is now required. NetCrux 0.8.0 ran on
macOS 10.15 and later; 1.0 does not. If you are on macOS 11 or earlier, 0.8.0
remains available and will keep working, but 1.0 and later will not install. - On Windows a fresh install goes to
C:\Program Files\NetCrux, not
NetCrux Pro. Upgrading over 0.8.0 with the.exekeeps the existing
NetCrux Profolder, because Inno Setup resolves the install directory from
the recorded application id rather than from the new default; the.msi
replaces the old install and moves it. Your settings are unaffected either
way. - Linux app-menu entries no longer carry the "Pro" suffix. If you run the
AppImage, the entry it writes into your applications menu is rewritten on
first launch of the new build; the AppImage's desktop entry also names the
binary that actually wrote it..deband.rpminstalls were never
affected. - On Linux, NetCrux needs glibc 2.34 or newer.
- Other performance and quality enhancements.