Journey 01 — License and first contact
Confirm the wheel, native libsolvjump, machine code, and seat status before running any study. Production wheels are license-enforced; dev builds with SOLVJUMP_LICENSE_OPTIONAL=ON skip the seat file.
Prerequisites: SolvJump wheel installed from resonix.io/account (see Install). Scenario: Machine code, seat file, version — before any sweep
Key APIs
solvjump.load_library()python -m solvjumpsolvjump license activate <path>.licSOLVJUMP_C_LIBSOLVJUMP_LICENSE_FILE
Concepts to internalize
- Machine code — 64-character identifier for the portal; bare
python -m solvjumpprints it (same assolvjump license). - Seat file — copied to platform app-data on activate; override with
SOLVJUMP_LICENSE_FILE. - No hidden bypass — there is no
python -m solvjump activatesubcommand; usesolvjump license activate. - Native library —
load_library()findslibsolvjumpnext to the wheel or viaSOLVJUMP_C_LIB.
Important code
The guided tour script wraps this pattern. Copy the production shape into your pipeline:
import solvjump
solvjump.load_library()
print(solvjump.__version__)
# CLI equivalent:
# python -m solvjump
# solvjump license activate ~/Downloads/solvjump.licAct-by-act walkthrough
Act 1 — What you are doing
Customer wheels are license-enforced. You print a machine code, paste it into the Resonix portal, download a .lic, and activate it. Dev CMake builds with SOLVJUMP_LICENSE_OPTIONAL=ON skip the seat file — production wheels do not.
Act 2 — Load the native library
load_library() finds libsolvjump next to the wheel or via SOLVJUMP_C_LIB.
| Field | Value | Notes |
|---|---|---|
python_package | 0.3.0 | |
native | 0.2.0 |
Act 3 — Machine code
Bare python -m solvjump is the same as solvjump license — status plus the 64-character code the portal wants. There is no python -m solvjump activate or python -m solvjump status command.
| Field | Value | Notes |
|---|---|---|
machine_code | ||
install_path | <home>\AppData\Roaming\solvjump\license.dat |
Act 4 — Is a seat active?
Activate with: solvjump license activate /path/to/solvjump.lic (copies into the platform folder above). Override discovery with SOLVJUMP_LICENSE_FILE.
| Field | Value | Notes |
|---|---|---|
license_active | True | |
info | ||
days_remaining | -1 |
Act 5 — What this is not
After the seat is valid, Journey 02 scaffolds a model and dry-runs a study without integrating. Integration is CLI plus the Python Session API.
Guided tour output
Verified console capture from 01_license_and_status.py:
Machine code, seat file, version — before any sweep
-- Act 1 - What you are doing --
-> Customer wheels are license-enforced. You print a machine code, paste it into the Resonix portal, download a .lic, and activate it. Dev CMake builds with SOLVJUMP_LICENSE_OPTIONAL=ON skip the seat file — production wheels do not.
-- Act 2 - Load the native library --
-> load_library() finds libsolvjump next to the wheel or via SOLVJUMP_C_LIB.
python_package: 0.3.0
native: 0.2.0
-- Act 3 - Machine code --
-> Bare `python -m solvjump` is the same as `solvjump license` — status plus the 64-character code the portal wants. There is no `python -m solvjump activate` or `python -m solvjump status` command.
machine_code:
install_path: <home>\AppData\Roaming\solvjump\license.dat
-- Act 4 - Is a seat active? --
-> Activate with: solvjump license activate /path/to/solvjump.lic (copies into the platform folder above). Override discovery with SOLVJUMP_LICENSE_FILE.
license_active: True
info:
days_remaining: -1
-- Act 5 - What this is not --
-> After the seat is valid, Journey 02 scaffolds a model and dry-runs a study without integrating. Integration is CLI plus the Python Session API.
-- Run complete --Run it
cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/01_license_and_status.py
# Production one-liner — same API call you ship:
python -m solvjumpWhat comes next
Journey 02 scaffolds model.py + study.yaml and dry-runs without integrating.