Skip to content

Modernize to Swift 5.9+, replace Travis CI with GitHub Actions#14

Open
haaakon wants to merge 1 commit into
masterfrom
modernize/remove-travis-github-actions
Open

Modernize to Swift 5.9+, replace Travis CI with GitHub Actions#14
haaakon wants to merge 1 commit into
masterfrom
modernize/remove-travis-github-actions

Conversation

@haaakon
Copy link
Copy Markdown
Owner

@haaakon haaakon commented May 11, 2026

Summary

  • Add GitHub Actions CI: New .github/workflows/ci.yml that builds the project on every push and pull request using macos-latest
  • Modernize Swift code in UIViewController+Keyboard.swift to Swift 5.9+:
    • NSNotification.Name.UIKeyboardWillShow/WillHideUIResponder.keyboardWillShowNotification/keyboardWillHideNotification
    • UIKeyboardAnimationDurationUserInfoKey / UIKeyboardFrameEndUserInfoKeyUIResponder.* equivalents
    • UIViewAnimationOptionsUIView.AnimationOptions
    • UIEdgeInsetsMake()UIEdgeInsets(top:left:bottom:right:) / .zero
    • Safer guard let unwrapping of notification userInfo instead of force-cast
    • Modern trailing closure syntax for UIView.animate
  • Update README badge: Travis CI badge replaced with GitHub Actions badge

Test plan

  • Verify GitHub Actions CI workflow triggers on push/PR and builds successfully
  • Verify badge in README renders correctly pointing to Actions workflow
  • Verify Swift file compiles without warnings in Xcode with Swift 5.9+

- Replace deprecated NSNotification.Name.UIKeyboardWillShow/WillHide with
  UIResponder.keyboardWillShowNotification/keyboardWillHideNotification
- Replace deprecated UIKeyboardAnimationDurationUserInfoKey /
  UIKeyboardFrameEndUserInfoKey with UIResponder.* equivalents
- Replace UIViewAnimationOptions with UIView.AnimationOptions
- Replace UIEdgeInsetsMake() with UIEdgeInsets(top:left:bottom:right:)
- Use guard-let for safer userInfo unwrapping
- Use trailing closure syntax for UIView.animate
- Use .zero for clearing insets
- Add .github/workflows/ci.yml for GitHub Actions CI
- Replace Travis CI badge in README with GitHub Actions badge
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.

1 participant