Skip to content

Remove JLSwift utility module, focus repository on JPEG-LS compression#18

Merged
SureshKViswanathan merged 3 commits into
mainfrom
copilot/remove-jlswift-module
Feb 15, 2026
Merged

Remove JLSwift utility module, focus repository on JPEG-LS compression#18
SureshKViswanathan merged 3 commits into
mainfrom
copilot/remove-jlswift-module

Conversation

Copilot AI commented Feb 15, 2026

Copy link
Copy Markdown
Contributor

Removes the general-purpose utility module (validation, string manipulation, math functions) to focus this repository solely on JPEG-LS compression for DICOM medical imaging.

Removed

  • Sources/JLSwift/JLSCore, JLSValidator, JLSMathUtils, JLSStringExtensions
  • Tests/JLSwiftTests/ — All corresponding test files

Modified

  • Package.swift — Removed JLSwift library and JLSwiftTests targets
  • README.md — Updated project description, installation, and structure to reflect JPEGLS-only focus
  • MILESTONES.md — Removed utility milestones, renumbered JPEG-LS milestones (4-11 → 1-9)

After

// Package.swift now exposes only:
.library(name: "JPEGLS", targets: ["JPEGLS"])
.executable(name: "jpegls", targets: ["jpegls"])

All 229 JPEGLS tests pass.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

… Compression

Co-authored-by: SureshKViswanathan <257696045+SureshKViswanathan@users.noreply.github.com>
Copilot AI changed the title [WIP] Remove JLSwift module and related code from README Remove JLSwift module from documentation, focus on JPEGLS compression Feb 15, 2026
Co-authored-by: SureshKViswanathan <257696045+SureshKViswanathan@users.noreply.github.com>
Copilot AI changed the title Remove JLSwift module from documentation, focus on JPEGLS compression Remove JLSwift utility module, focus repository on JPEG-LS compression Feb 15, 2026
@SureshKViswanathan SureshKViswanathan marked this pull request as ready for review February 15, 2026 03:35
Copilot AI review requested due to automatic review settings February 15, 2026 03:35
@SureshKViswanathan SureshKViswanathan merged commit a0de88a into main Feb 15, 2026
4 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes the general-purpose JLSwift utilities module and its tests, narrowing the package to a JPEG-LS (DICOM) compression library (JPEGLS) plus the jpegls CLI, and updates repository documentation/roadmap accordingly.

Changes:

  • Removed Sources/JLSwift/ utilities (validator, string extensions, math utils, core) and Tests/JLSwiftTests/.
  • Updated Package.swift to drop JLSwift/JLSwiftTests targets/products, leaving only JPEGLS, jpegls, and JPEGLSTests.
  • Updated README.md and MILESTONES.md to reflect the JPEG-LS-only focus and renumber milestones.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
Package.swift Removes the JLSwift library + test targets; package now exposes only JPEGLS and jpegls.
README.md Removes JLSwift utilities documentation; reframes project as JPEG-LS focused.
MILESTONES.md Removes utilities milestones and renumbers JPEG-LS roadmap.
Sources/JLSwift/JLSCore.swift Deletes utilities “core” version/type.
Sources/JLSwift/JLSValidator.swift Deletes utilities validation helpers.
Sources/JLSwift/JLSStringExtensions.swift Deletes utilities String extensions.
Sources/JLSwift/JLSMathUtils.swift Deletes utilities math helpers.
Tests/JLSwiftTests/JLSCoreTests.swift Deletes tests for removed utilities module.
Tests/JLSwiftTests/JLSValidatorTests.swift Deletes validation tests for removed module.
Tests/JLSwiftTests/JLSStringExtensionsTests.swift Deletes string extension tests for removed module.
Tests/JLSwiftTests/JLSMathUtilsTests.swift Deletes math utils tests for removed module.

Comment thread MILESTONES.md
Comment on lines +22 to 25
#### Phase 2.1: Project Architecture Setup ✅
- [x] Create `JPEGLS` library target in Package.swift
- [x] Create `jpegls` command-line tool target in Package.swift
- [x] Set up directory structure:

Copilot AI Feb 15, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Phase 2.1 marks the directory structure setup as completed, but the checklist immediately under this section includes Sources/JPEGLS/Decoder/ (shown as checked) while the current repo layout does not contain that directory. Please reconcile the milestone checklist with the actual directory structure (create the directory or update the checklist/status).

Copilot uses AI. Check for mistakes.
Comment thread README.md
# JLSwift

A Swift 6.2+ utility library providing core helpers for validation, string manipulation, and mathematical operations. Also home to the **JPEGLS** native Swift implementation of JPEG-LS compression for DICOM medical imaging.
A native Swift implementation of **JPEG-LS** (ISO/IEC 14495-1:1999 / ITU-T.87) compression for DICOM medical imaging. Optimized for Apple Silicon with hardware acceleration support.

Copilot AI Feb 15, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

README currently states the project is "optimized for Apple Silicon with hardware acceleration support", but later in the same document hardware acceleration is described as planned, and the ARM64 accelerator implementation contains TODO placeholders. Please reword this line to avoid implying hardware acceleration is already implemented (or link to the concrete implementation if it is).

Copilot uses AI. Check for mistakes.
Comment thread README.md
- **Performance**: Optimized implementations with support for hardware acceleration
- **Reliability**: Comprehensive test coverage exceeding 95% for all modules
- **Modularity**: Clean separation of concerns with distinct modules for different functionality
- **DICOM Compatible**: Full support for DICOM transfer syntaxes

Copilot AI Feb 15, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The overview bullet says "DICOM Compatible: Full support for DICOM transfer syntaxes", but later the README has a section titled "Supported DICOM Transfer Syntaxes (Planned)". Please make these statements consistent (e.g., mark DICOM transfer syntax support as planned/partial, or update the later section if it is already fully supported).

Suggested change
- **DICOM Compatible**: Full support for DICOM transfer syntaxes
- **DICOM Compatibility (Planned)**: Implementing support for DICOM transfer syntaxes

Copilot uses AI. Check for mistakes.
Comment thread MILESTONES.md
Comment on lines +18 to 24
### Milestone 2: JPEG-LS Foundation 📋
**Target**: Core architecture and basic implementation
**Status**: In Progress

#### Phase 4.1: Project Architecture Setup ✅
#### Phase 2.1: Project Architecture Setup ✅
- [x] Create `JPEGLS` library target in Package.swift
- [x] Create `jpegls` command-line tool target in Package.swift

Copilot AI Feb 15, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Milestones/phases were renumbered here (e.g., Phase 2.1/2.2/2.3, Phase 3.1/3.2), but README.md still lists the old phase numbers in its "Current Implementation Status" table. Please update the README phase identifiers to match this new numbering so the roadmap and README stay aligned.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants