mirror of
https://github.com/samsonjs/samhuri.net.git
synced 2026-04-27 14:57:40 +00:00
Update to Swift 6
This commit is contained in:
parent
ecd9ad3b3e
commit
9db609e8d8
6 changed files with 12 additions and 51 deletions
|
|
@ -1,4 +1,4 @@
|
||||||
// swift-tools-version:5.10
|
// swift-tools-version:6.0
|
||||||
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
||||||
|
|
||||||
import PackageDescription
|
import PackageDescription
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
// swift-tools-version:5.10
|
// swift-tools-version:6.0
|
||||||
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
||||||
|
|
||||||
import PackageDescription
|
import PackageDescription
|
||||||
|
|
|
||||||
|
|
@ -8,17 +8,15 @@
|
||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
extension Date {
|
extension Date {
|
||||||
static var defaultCalendar = Calendar.current
|
|
||||||
|
|
||||||
var year: Int {
|
var year: Int {
|
||||||
Date.defaultCalendar.dateComponents([.year], from: self).year!
|
Calendar.current.dateComponents([.year], from: self).year!
|
||||||
}
|
}
|
||||||
|
|
||||||
var month: Int {
|
var month: Int {
|
||||||
Date.defaultCalendar.dateComponents([.month], from: self).month!
|
Calendar.current.dateComponents([.month], from: self).month!
|
||||||
}
|
}
|
||||||
|
|
||||||
var day: Int {
|
var day: Int {
|
||||||
Date.defaultCalendar.dateComponents([.day], from: self).day!
|
Calendar.current.dateComponents([.day], from: self).day!
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ extension PostMetadata {
|
||||||
case invalidTimestamp(String?)
|
case invalidTimestamp(String?)
|
||||||
}
|
}
|
||||||
|
|
||||||
private static let iso8601Formatter = ISO8601DateFormatter()
|
nonisolated(unsafe) private static let iso8601Formatter = ISO8601DateFormatter()
|
||||||
|
|
||||||
init(dictionary: [String: String], slug: String) throws {
|
init(dictionary: [String: String], slug: String) throws {
|
||||||
let requiredKeys = ["Title", "Author", "Date", "Timestamp"]
|
let requiredKeys = ["Title", "Author", "Date", "Timestamp"]
|
||||||
|
|
|
||||||
|
|
@ -12,17 +12,17 @@ struct RawPost {
|
||||||
let slug: String
|
let slug: String
|
||||||
let markdown: String
|
let markdown: String
|
||||||
|
|
||||||
private static let StripMetadataRegex = try! Regex(#"---\n.*?---\n"#).dotMatchesNewlines()
|
private nonisolated(unsafe) static let StripMetadataRegex = try! Regex(#"---\n.*?---\n"#).dotMatchesNewlines()
|
||||||
|
|
||||||
private static let TextifyParenthesesLinksRegex = try! Regex(#"\[([\w\s.-_]*)\]\([^)]+\)"#)
|
private nonisolated(unsafe) static let TextifyParenthesesLinksRegex = try! Regex(#"\[([\w\s.-_]*)\]\([^)]+\)"#)
|
||||||
|
|
||||||
private static let TextifyBracketLinksRegex = try! Regex(#"\[([\w\s.-_]*)\]\[[^\]]+\]"#)
|
private nonisolated(unsafe) static let TextifyBracketLinksRegex = try! Regex(#"\[([\w\s.-_]*)\]\[[^\]]+\]"#)
|
||||||
|
|
||||||
private static let StripImagesRegex = try! Regex(#"!\[[\w\s.-_]*\]\([^)]+\)"#)
|
private nonisolated(unsafe) static let StripImagesRegex = try! Regex(#"!\[[\w\s.-_]*\]\([^)]+\)"#)
|
||||||
|
|
||||||
private static let WhitespaceRegex = try! Regex(#"\s+"#)
|
private nonisolated(unsafe) static let WhitespaceRegex = try! Regex(#"\s+"#)
|
||||||
|
|
||||||
private static let StripHTMLTagsRegex = try! Regex(#"<[^>]+>"#)
|
private nonisolated(unsafe) static let StripHTMLTagsRegex = try! Regex(#"<[^>]+>"#)
|
||||||
|
|
||||||
var excerpt: String {
|
var excerpt: String {
|
||||||
markdown
|
markdown
|
||||||
|
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
//
|
|
||||||
// Date+SugarTests.swift
|
|
||||||
// samhuri.net
|
|
||||||
//
|
|
||||||
// Created by Sami Samhuri on 2019-12-31.
|
|
||||||
//
|
|
||||||
|
|
||||||
import Foundation
|
|
||||||
@testable import samhuri_net
|
|
||||||
import Testing
|
|
||||||
|
|
||||||
class DateSugarTests {
|
|
||||||
let date: Date
|
|
||||||
|
|
||||||
init() {
|
|
||||||
var calendar = Calendar(identifier: .gregorian)
|
|
||||||
calendar.timeZone = TimeZone(secondsFromGMT: 0)!
|
|
||||||
Date.defaultCalendar = calendar
|
|
||||||
date = Date(timeIntervalSince1970: 0)
|
|
||||||
}
|
|
||||||
|
|
||||||
deinit {
|
|
||||||
Date.defaultCalendar = .current
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test func year() {
|
|
||||||
#expect(date.year == 1970)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test func month() {
|
|
||||||
#expect(date.month == 1)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test func day() {
|
|
||||||
#expect(date.day == 1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Reference in a new issue