Prepare 1.0.0 release
This commit is contained in:
21
.travis.yml
21
.travis.yml
@@ -1,10 +1,12 @@
|
|||||||
# only run for: merge commits, releases and pull-requests
|
# only run for: merge commits, releases and pull-requests
|
||||||
if: type != push OR branch = master OR branch =~ /^\d+\.\d+\.\d+(-.*)?$/
|
if: type != push OR branch = master OR branch =~ /^deploy-\d+\.\d+\.\d+(-.*)?$/ OR branch =~ /^\d+\.\d+\.\d+(-.*)?$/
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- name: pretest
|
- name: pretest
|
||||||
- name: test
|
- name: test
|
||||||
- name: deploy
|
- name: deploy
|
||||||
|
if: branch =~ /^deploy-\d+\.\d+\.\d+(-.*)?$/
|
||||||
|
- name: publish
|
||||||
if: branch =~ /^\d+\.\d+\.\d+(-.*)?$/
|
if: branch =~ /^\d+\.\d+\.\d+(-.*)?$/
|
||||||
|
|
||||||
os: osx
|
os: osx
|
||||||
@@ -70,6 +72,10 @@ jobs:
|
|||||||
- <<: *linux
|
- <<: *linux
|
||||||
env: SWIFT_VERSION=5.1.3
|
env: SWIFT_VERSION=5.1.3
|
||||||
name: Linux / Swift 5.1.3
|
name: Linux / Swift 5.1.3
|
||||||
|
|
||||||
|
- <<: *linux
|
||||||
|
env: SWIFT_VERSION=5.2-DEVELOPMENT-SNAPSHOT-2020-01-22-a
|
||||||
|
name: Linux / Swift 5.2.0-dev+2020-01-22-a
|
||||||
|
|
||||||
- stage: pretest
|
- stage: pretest
|
||||||
name: Check Linux tests are sync’d
|
name: Check Linux tests are sync’d
|
||||||
@@ -78,6 +84,19 @@ jobs:
|
|||||||
osx_image: xcode10.2
|
osx_image: xcode10.2
|
||||||
|
|
||||||
- stage: deploy
|
- stage: deploy
|
||||||
|
name: Deploy
|
||||||
|
osx_image: xcode11
|
||||||
|
script:
|
||||||
|
- export VERSION=$(echo $TRAVIS_TAG | cut -c 8-)
|
||||||
|
- git tag "$VERSION"
|
||||||
|
- git remote set-url origin "https://$GITHUB_TOKEN@github.com/mxcl/homebrew-made.git"
|
||||||
|
- git push origin "$VERSION"
|
||||||
|
- curl -O https://raw.githubusercontent.com/mxcl/ops/master/deploy
|
||||||
|
- chmod u+x deploy
|
||||||
|
- ./deploy publish-release
|
||||||
|
- git push origin :$TRAVIS_TAG
|
||||||
|
|
||||||
|
- stage: publish
|
||||||
name: Jazzy
|
name: Jazzy
|
||||||
osx_image: xcode10.2
|
osx_image: xcode10.2
|
||||||
install: gem install jazzy
|
install: gem install jazzy
|
||||||
|
|||||||
19
README.md
19
README.md
@@ -44,10 +44,8 @@ Swift), we provide a thoughtful and comprehensive (yet concise) API.
|
|||||||
|
|
||||||
# Support mxcl
|
# Support mxcl
|
||||||
|
|
||||||
Hi, I’m Max Howell and I have written a lot of open source software, and
|
Hi, I’m Max Howell and I have written a lot of open source software—generally
|
||||||
probably you already use some of it (Homebrew anyone?). I work full-time on
|
a good deal of my free time 👨🏻💻.
|
||||||
open source and it’s hard; currently I earn *less* than minimum wage. Please
|
|
||||||
help me continue my work, I appreciate it x
|
|
||||||
|
|
||||||
<a href="https://www.patreon.com/mxcl">
|
<a href="https://www.patreon.com/mxcl">
|
||||||
<img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" width="160">
|
<img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" width="160">
|
||||||
@@ -337,28 +335,19 @@ actual filesystem path, however we also check the URL has a `file` scheme first.
|
|||||||
SwiftPM:
|
SwiftPM:
|
||||||
|
|
||||||
```swift
|
```swift
|
||||||
package.append(.package(url: "https://github.com/mxcl/Path.swift.git", from: "0.13.0"))
|
package.append(.package(url: "https://github.com/mxcl/Path.swift.git", from: "1.0.0"))
|
||||||
```
|
```
|
||||||
|
|
||||||
CocoaPods:
|
CocoaPods:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
pod 'Path.swift', '~> 0.13'
|
pod 'Path.swift', '~> 1.0.0'
|
||||||
```
|
```
|
||||||
|
|
||||||
Carthage:
|
Carthage:
|
||||||
|
|
||||||
> Waiting on: [@Carthage#1945](https://github.com/Carthage/Carthage/pull/1945).
|
> Waiting on: [@Carthage#1945](https://github.com/Carthage/Carthage/pull/1945).
|
||||||
|
|
||||||
## Pre‐1.0 status
|
|
||||||
|
|
||||||
We are pre 1.0, thus we can change the API as we like, and we will (to the
|
|
||||||
pursuit of getting it *right*)! We will tag 1.0 as soon as possible.
|
|
||||||
|
|
||||||
### Get push notifications for new releases
|
|
||||||
|
|
||||||
https://mxcl.dev/canopy/
|
|
||||||
|
|
||||||
# Alternatives
|
# Alternatives
|
||||||
|
|
||||||
* [Pathos](https://github.com/dduan/Pathos) by Daniel Duan
|
* [Pathos](https://github.com/dduan/Pathos) by Daniel Duan
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ public extension Pathish {
|
|||||||
if overwrite, let tokind = to.type, tokind != .directory, type != .directory {
|
if overwrite, let tokind = to.type, tokind != .directory, type != .directory {
|
||||||
try FileManager.default.removeItem(at: to.url)
|
try FileManager.default.removeItem(at: to.url)
|
||||||
}
|
}
|
||||||
#if os(Linux) && !swift(>=5.2) // check if fixed
|
#if os(Linux) && !swift(>=5.3) // check if fixed
|
||||||
if !overwrite, to.type != nil {
|
if !overwrite, to.type != nil {
|
||||||
throw CocoaError.error(.fileWriteFileExists)
|
throw CocoaError.error(.fileWriteFileExists)
|
||||||
}
|
}
|
||||||
@@ -69,7 +69,7 @@ public extension Pathish {
|
|||||||
if overwrite, let kind = rv.type, kind != .directory {
|
if overwrite, let kind = rv.type, kind != .directory {
|
||||||
try FileManager.default.removeItem(at: rv.url)
|
try FileManager.default.removeItem(at: rv.url)
|
||||||
}
|
}
|
||||||
#if os(Linux) && !swift(>=5.2) // check if fixed
|
#if os(Linux) && !swift(>=5.3) // check if fixed
|
||||||
if !overwrite, rv.type != nil {
|
if !overwrite, rv.type != nil {
|
||||||
throw CocoaError.error(.fileWriteFileExists)
|
throw CocoaError.error(.fileWriteFileExists)
|
||||||
}
|
}
|
||||||
@@ -204,7 +204,7 @@ public extension Pathish {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Renames the file at path.
|
Renames the file (basename only) at path.
|
||||||
|
|
||||||
Path.root.foo.bar.rename(to: "baz") // => /foo/baz
|
Path.root.foo.bar.rename(to: "baz") // => /foo/baz
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,8 @@ public extension Pathish {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
- Returns: `true` if the path represents an actual filesystem entry.
|
- Returns: `true` if the path represents an actual filesystem entry.
|
||||||
- Note: If `self` is a symlink the return value represents the destination.
|
- Note: If `self` is a symlink the return value represents the destination, thus if the destination doesn’t exist this returns `false` even if the symlink exists.
|
||||||
|
- Note: To determine if a symlink exists, use `.type`.
|
||||||
*/
|
*/
|
||||||
var exists: Bool {
|
var exists: Bool {
|
||||||
return FileManager.default.fileExists(atPath: string)
|
return FileManager.default.fileExists(atPath: string)
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ public extension Pathish {
|
|||||||
Returns the filename extension of this path.
|
Returns the filename extension of this path.
|
||||||
- Remark: If there is no extension returns "".
|
- Remark: If there is no extension returns "".
|
||||||
- Remark: If the filename ends with any number of ".", returns "".
|
- Remark: If the filename ends with any number of ".", returns "".
|
||||||
- Note: We special case eg. `foo.tar.gz`.
|
- Note: We special case eg. `foo.tar.gz`—there are a limited number of these specializations, feel free to PR more.
|
||||||
*/
|
*/
|
||||||
@inlinable
|
@inlinable
|
||||||
var `extension`: String {
|
var `extension`: String {
|
||||||
|
|||||||
Reference in New Issue
Block a user