Skip to content

Nexa SQL 0.2.5

Choose a tag to compare

@github-actions github-actions released this 19 Oct 16:45

Nexa SQL 0.2.5

Lightweight cross-platform SQL client (IDE) for Oracle, SQL Server, PostgreSQL and SQLite, with the nsql CLI.
Installers only (no portable build). Changes: see docs/DEVLOG.md.

OS File Install
Windows x64 nexa-sql-0.2.5-windows-x64.msi Double-click, or msiexec /i … /qn (silent; adds nsql to PATH; .sql association optional) · winget install SosomLab.NexaSQL · choco install nexa-sql (after moderation)
macOS (Universal) nexa-sql-0.2.5-macos-universal.pkg / .dmg Installer → /Applications/Nexa SQL.app + /usr/local/bin/nsql · brew install --cask kiros33/tap/nexa-sql
Linux x86_64 .deb / .rpm sudo apt install ./…deb / sudo dnf install ./…rpm · or the signed repository at https://pkg.sosomlab.com/ (apt install nexa-sql / dnf install nexa-sql)

Verify downloads with sha256sums.txt. Builds are not code-signed yet (DR-20): macOS Gatekeeper and Windows SmartScreen will warn.
License: PolyForm Noncommercial 1.0.0 — free for noncommercial use only.

What's in this release (since 0.2.4)

Editor: jump to the error position, better Find, column-mode Home/End

  • Jump to the error position (new). When a statement fails and the server reports where, the caret moves to that spot in the editor: PostgreSQL, SQLite and Oracle (Thin and Instant Client) point at the offending token, SQL Server at the start of the reported line. Positions are converted to character offsets, so multibyte text before the error does not shift the caret. In a multi-statement run the caret lands inside the failing statement. The caret moves only while the tab that ran the script is still active. Setting: editor.error_goto (default on).
  • Find (Ctrl+F) rules.
    • The query box is selected on open, so typing replaces the previous search term.
    • Opening Find with a multi-line selection keeps the selection and the caret where they are; only the match marks and the count update. The selection can then be used as the search scope. New setting editor.find_auto_scope = never (default) / multiline / always.
    • Opening Find without a selection no longer jumps to the next match of the previous term.
    • Esc returns to where you were if you have not searched since opening; after a search it stays on the match, with the match still selected. The close button always leaves the caret where it is.
    • Clicking the Find bar buttons with the mouse no longer draws a keyboard focus ring.
  • Column mode (multiple carets): Home and End move every caret within its own line instead of collapsing to one caret. Shift+Home/End extends every selection. Single-caret behaviour is unchanged.
  • Object explorer: the "disconnected hh:mm" header no longer sticks. After a lost connection, reconnecting to the same server, or reusing the pane for a new connection, clears the mark. Previously it could stay forever, and on a file database it had no way to clear at all.
  • Script engine messages are English by default and follow the UI language (ui.lang); 34 messages gained Korean text.
  • Combo boxes open their list as wide as the longest item (and keep it inside the window).
  • Diagnostics: health.dump reports the window presenter (present=|surfaces=|busy_reuse=|forced=) and lists explorer panes that have no connection; editor.dump reports caret=line:column and the selection range.
  • Tests: four new or updated end-to-end scripts (broken-header regression, error-position caret across five drivers, Find origin/Esc rules, Find Objects preview).

Full details: docs/DEVLOG.md · docs/journal

Distribution note: this version is published to GitHub Releases, Homebrew (kiros33/tap) and the Linux repository (pkg.sosomlab.com). winget and Chocolatey are paused until the pending reviews finish.


크로스플랫폼 경량 SQL 클라이언트(IDE) + CLI nsql — 설치본만 배포합니다(포터블 없음 · DR-27).

운영체제 파일 설치
Windows x64 nexa-sql-0.2.5-windows-x64.msi 더블클릭 또는 msiexec /i … /qn(조용한 설치 · PATH 추가 옵션 · .sql 연결은 선택)
macOS (Universal · Apple Silicon/Intel) nexa-sql-0.2.5-macos-universal.pkg 설치기 실행 → /Applications/Nexa SQL.app + /usr/local/bin/nsql 링크
macOS (drag-to-Applications) nexa-sql-0.2.5-macos-universal.dmg 끌어 놓기 · CLI 링크는 dmg 안 안내문
Linux x86_64 (deb) nexa-sql_0.2.5_amd64.deb sudo dpkg -i 또는 sudo apt install ./…deb
Linux x86_64 (rpm) nexa-sql-0.2.5-1.x86_64.rpm sudo dnf install ./…rpm
macOS (Homebrew) — brew install --cask kiros33/tap/nexa-sql(공개 뒤 자동 반영 · nsql도 PATH에)
Linux (APT 저장소 · Debian/Ubuntu) — 저장소 등록 뒤 sudo apt install nexa-sql · 갱신 = apt upgrade(아래 · 공개 뒤 자동 반영)
Linux (RPM 저장소 · Fedora/RHEL 계열) — 저장소 등록 뒤 sudo dnf install nexa-sql · 갱신 = dnf upgrade(아래 · 공개 뒤 자동 반영)

Linux 패키지 저장소(pkg.sosomlab.com · 서명됨)

한 번 등록하면 새 버전을 apt upgrade/dnf upgrade로 받습니다(안내 = https://pkg.sosomlab.com/).

# APT(Debian · Ubuntu)
sudo curl -fsSLo /usr/share/keyrings/sosomlab-archive-keyring.gpg https://pkg.sosomlab.com/sosomlab-archive-keyring.gpg
sudo curl -fsSLo /etc/apt/sources.list.d/sosomlab.sources https://pkg.sosomlab.com/apt/sosomlab.sources
sudo apt update && sudo apt install nexa-sql
# RPM(Fedora · RHEL 계열)
sudo curl -fsSLo /etc/yum.repos.d/sosomlab.repo https://pkg.sosomlab.com/rpm/sosomlab.repo
sudo dnf install nexa-sql

받은 파일은 sha256sums.txt로 확인하세요. 제거: Windows 프로그램 추가/제거 · macOS sudo "/Applications/Nexa SQL.app/Contents/Resources/uninstall.sh" · Linux dpkg -r nexa-sql/dnf remove nexa-sql.
사용자 데이터(설정·연결 프로필)는 OS 사용자 폴더에 있으며 제거해도 보존됩니다.

서명

코드 서명 키가 투입되지 않은 빌드는 macOS Gatekeeper·Windows SmartScreen이 경고합니다(DR-20 · 별도 요청 시 서명).

  • macOS: xattr -dr com.apple.quarantine "/Applications/Nexa SQL.app"
  • Windows: SmartScreen "추가 정보 → 실행"

라이선스: PolyForm Noncommercial 1.0.0 — 변경 내역: docs/DEVLOG.md

이번 판에 담긴 것(0.2.4 이후)

편집기: 오류 위치로 캐럿 · 찾기 규칙 정리 · 열 모드 Home/End

  • 오류 위치로 캐럿 이동(새 기능). 문장이 실패하고 서버가 위치를 알려 주면 편집기 캐럿이 그 자리로 갑니다. PostgreSQL · SQLite · Oracle(Thin · Instant Client)은 문제 토큰, SQL Server는 보고된 줄의 시작입니다. 위치를 글자 단위로 바꿔 쓰므로 오류 앞에 한글이 있어도 어긋나지 않습니다. 여러 문장 실행이면 실패한 문장 안의 자리로 가며, 실행한 탭이 활성일 때만 움직입니다. 설정 editor.error_goto(기본 켬).
  • 찾기(Ctrl+F) 규칙.
    • 열 때 검색어가 전체 선택되어 바로 타이핑으로 덮어 쓸 수 있습니다.
    • 여러 줄을 선택한 채 열면 선택과 캐럿은 그대로 두고 일치 표식과 개수만 갱신합니다. 그 선택을 검색 범위로 쓸 수 있고, 새 설정 editor.find_auto_scope = never(기본) / multiline / always로 자동 범위를 고릅니다.
    • 선택 없이 열면 지난 검색어의 다음 일치로 점프하지 않습니다.
    • Esc = 연 뒤 검색을 한 번도 안 했으면 열 때 자리로 복귀, 검색으로 일치에 갔으면 그 자리(선택 유지). × 버튼은 늘 그대로 닫습니다.
    • 찾기 틀 버튼을 마우스로 눌러도 키보드 포커스 링이 생기지 않습니다.
  • 열 모드(다중 캐럿)에서 Home/End = 캐럿마다 자기 줄 안에서 이동(종전 = 하나로 접힘). Shift+Home/End는 캐럿마다 선택을 늘립니다. 단일 캐럿 동작은 그대로입니다.
  • 객체 탐색기 "끊김 hh:mm" 헤더 잔존 수정. 끊긴 뒤 같은 서버로 다시 접속하거나 그 칸을 새 접속이 재사용하면 표시가 걷힙니다(종전 = 영영 남을 수 있었고 파일 DB 칸은 걷힐 길이 없었음).
  • 스크립트 엔진 메시지 = 영어 기본 + 화면 언어(ui.lang) 추종(34개 메시지 한국어 열 추가).
  • 콤보 상자 목록이 가장 긴 항목만큼 넓어지되 창 안에 머뭅니다.
  • 진단: health.dump에 화면 내보내기 줄(present=|surfaces=|busy_reuse=|forced=)과 접속 없는 탐색기 칸 · editor.dump에 caret=줄:열과 선택 범위.
  • 시험: 새·수정 E2E 자산 4(끊김 헤더 회귀 · 5드라이버 오류 위치 · 찾기 원점/Esc 규칙 · 객체 찾기 미리보기).