Releases: Samasaur1/DiceKit
Releases · Samasaur1/DiceKit
Version 0.26.0: Fix Automatic Deployment
Changed
- Removed draft marker from automatic releases
Fixed
- Various required cleanup tasks due to the deploy scripts not working imemdiately
Version 0.25.0: Rework CI and Contributions
Added
- Releases are now auto-deployed from GitHub Actions
- Extra checks in Danger
Changed
- Improve PR template and guidelines
- Danger now runs in GitHub Actions, not Travis CI
- Documentation is now auto-deployed from GitHub Actions, not Travis CI
Fixed
- We now test on Swift 4.2–5.6, and use the current allowed versions of macOS and Ubuntu
Removed
- Extra now-obsolete GitHub Actions
- All uses of Travis CI are now gone
Version 0.24.1: Update Dangerfile to report tasks in correct order
Version 0.24.0: Completely overhaul dice probability calculations
Added
Chance
objects can now be multiplied together (which, mathematically, represents the chance of both occurring)- More test cases for
Chance
Changed
Dice
probabilities computation is now up to 1000x faster (in my tests). From the user's perspective, nothing else about this should have changed.- The release script now links to the docs for the specific version (on the releases page), not just the main website.
Fixed
- GitHub Actions can now deploy docs through the use of the GitHub token
- Typos
Version 0.23.0: Explicitly support versions and platforms
Added
- A
Package@swift-5.0.swift
file in order to be able to specify supported platforms - Supported versions of Swift are listed in the package manifest file
Changed
- Migrate from
Array.index(of:)
toArray.firstIndex(of:)
- Continue to define our own implementation of
count(where:)
until at least Swift 6, because (as I found out) the implementation in the standard library was removed because of its impact on type-checker performance. - Makes the GitHub Actions workflow output nicer.
Fixed
- Uses the correct Swift version in GitHub Actions tests (closes #80)
Version 0.22.0: Caching probabilities calculation across objects
Added
- More documentation on the
chances
property introduced in v0.21.0 Dice
caches the result of its computations forprobabilities
between objects (closes #78). See the issue (linked) or the pull request here for more information on caching.Dice
now conforms toHashable
(adding for caching, but handy in general)
Version 0.21.0: Public Chances dictionary and internal changes
Added
- The internal
Chances
property formerly nameddict
(of type[Roll: Chance]
) is now public and namedchances
. - Adds GitHub Actions for testing
Changed
- The GitHub pull request template now uses the
updateVersion.sh
andrelease.sh
scripts that were added in PR #66 (Version 0.18.0) - The Travis CI configuration has had significant changes (none of which will impact users of the library):
- Now runs on Ubuntu 16.04 "Xenial" instead of 14.04 "Trusty" (matching the Travis default, and allowing for Swift 5.2.x)
- Tests on Swift 4.2.4, 5.0.3, 5.1.5, and 5.2.4 (Linux) and 4.2, 5.0.1, 5.1.3, and 5.2.4 (macOS). Previously, it tested on 4.2.4, 5.0.3, and 5.1.3 on both. I would have preferred to use versions tested on Linux on macOS as well, but the current versions are bundled with Xcode, noticeably speeding up builds
- Prints the Swift version (mostly to help because of the above point)
- Updates the Dangerfile
- The behavior around adding tests has become more lenient (warnings instead of errors, so that there is less need to change spacing on files to get past Danger)
- Danger now checks the body of the PR for empty checkboxes, which should allow me to replace
task-list-completed
. It should also present better (failing the check instead of making it say "in progress")
- Updates the README to show the latest Swift versions
Fixed
- Fixes the
remove_dev_dependencies
script. It turns out that this script had never worked (I don't think), but the place that it was running in CI meant that it didn't matter. It will now work when running on a local machine, though. Note: this may be becoming irrelevant, as I believe some related feature is coming to a new version of Swift. However, as we currently support as old as 4.2.4, it'll probably be a while before we can drop these scripts completely.
Version 0.20.2: Don't crash for dice probabilities with no dice (fixes #75)
Fixed
- Dice objects with no dice in them (i.e., modifiers only or empty objects) no longer crash when accessing their probabilities property (closes #75)
Version 0.20.1: Catchable errors for zero-sided dice
Added
DKError
/Error
'slocalizedDescription
field now has a useful value (based off of the documentation for those fields).
Changed
- [internal] Complies with best practices (not naming an untyped error in catch clauses; no effect for users).
Fixed
- Documentation deployment is fixed.
- Errors thrown by
Die(sides:)
do not crashDice(_:String)
; instead, they are propagated up the call stack.
Version 0.20.0: Multiple Documentation Versions
Changed
- The structure of the GitHub Pages site has changed. There is now a
docs
directory, with subdirectories for each version. The auto-deployment of documentation has been updated to support this.