Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM mcr.microsoft.com/devcontainers/base:ubuntu24.04
# These dependencies were recommended by the Swiftly installer (2025-06)
RUN apt-get update && apt-get -y install libpython3-dev libxml2-dev libncurses-dev libz3-dev pkg-config
# Ugly installer: https://www.swift.org/install/linux/
WORKDIR /
RUN curl -L https://download.swift.org/swiftly/linux/swiftly-$(uname -m).tar.gz | tar zx
USER vscode
# Latest version is fine in dev, ci.yml will test older versions
RUN ./swiftly init --assume-yes
14 changes: 14 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"build": {
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": [
"swiftlang.swift-vscode",
"github.vscode-github-actions",
"mhutchie.git-graph"
]
}
}
}
25 changes: 15 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
name: Test
name: CI

on:
- workflow_dispatch
- push
- pull_request

jobs:
# https://github.com/swift-actions/setup-swift?tab=readme-ov-file#usage
test:
runs-on: macos-13
name: Swift ${{ matrix.swift }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
params: [ '-scheme HSLuvMac -sdk macosx', '-scheme HSLuviOS -sdk iphonesimulator -destination "platform=iOS Simulator,name=iPhone 14"' ]
os: [ubuntu-latest, macos-latest, windows-latest]
swift: ["5", "6"]
steps:
# Perhaps we should switch to swift-actions/setup-swift, but they are undergoing a major refactor
# I tested swift-actions/setup-swift@next but got gpg errors, so we should wait (2025-06-14)
# For now this seems to be the best third party: https://github.com/SwiftyLab/setup-swift
- uses: SwiftyLab/setup-swift@v1
with:
swift-version: ${{ matrix.swift }}
- uses: actions/checkout@v4
# https://github.com/actions/runner-images/discussions/8367#discussioncomment-12685592
# https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md
- name: Select XCode
run: sudo xcode-select -s /Applications/Xcode_14.1.app
- name: Test
run: xcodebuild ${{ matrix.params }} CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO test
- name: Build and Test
run: swift test
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@ DerivedData
Carthage.checkout
Carthage.build
Carthage/Build

.build
.index-build
14 changes: 0 additions & 14 deletions .swiftlint.yml

This file was deleted.

7 changes: 0 additions & 7 deletions .swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions .xctool-args

This file was deleted.

63 changes: 63 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [3.0.0] - Unreleased
### Added
- New cross-platform API with no heap allocation
- DevContainer support for development

### Removed
- **BREAKING**: UIKit/AppKit specific extensions
- CocoaPods support
- Carthage support
- SwiftLint configuration
- Xcode build automation
- Playground examples

## [2.1.0] - 2020-09-03
### Added
- Swift Package Manager support
- HPLuv color initializers
- Protocol conformances to UIColor extension

### Changed
- Updated for Xcode 12 and Swift 5

## [2.0.0] - 2017-02-19
### Changed
- **BREAKING**: Renamed project from HUSL to HSLuv
- Updated for Swift 3

## [1.2.0] - 2015-10-20
### Changed
- Updated for Xcode 7 and Swift 2
- Uses new Mirror syntax
- Fixed Xcode warnings for var arguments and 'Always Search User Paths'

## [1.1.0] - 2015-07-03
### Changed
- Removed CoreGraphics dependency
- Made NS/UIColor initialization non-optional
- Simplified CocoaPods by removing subspecs

## [1.0.1] - 2015-07-02
### Changed
- Lowered deployment target in podspec

## [1.0.0] - 2015-06-23
### Added
- Initial release of HSLuv for Swift
- NS/UIColor extensions for macOS and iOS
- CocoaPods and Carthage support
- Playground examples

[3.0.0]: https://github.com/hsluv/hsluv-swift/compare/v2.1.0...HEAD
[2.1.0]: https://github.com/hsluv/hsluv-swift/compare/v2.0.0...v2.1.0
[2.0.0]: https://github.com/hsluv/hsluv-swift/compare/v1.2.0...v2.0.0
[1.2.0]: https://github.com/hsluv/hsluv-swift/compare/v1.1.0...v1.2.0
[1.1.0]: https://github.com/hsluv/hsluv-swift/compare/v1.0.1...v1.1.0
[1.0.1]: https://github.com/hsluv/hsluv-swift/compare/v1.0.0...v1.0.1
[1.0.0]: https://github.com/hsluv/hsluv-swift/releases/tag/v1.0.0
23 changes: 0 additions & 23 deletions HSLuvSwift.podspec

This file was deleted.

Loading
Loading