Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates for 2022 #670

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

denizdogan
Copy link

Related issues

#665

Goal

Update the project for 2022.

Implementation details

  • Update RxSwift 5 to 6
  • Target Swift 5.6
  • Remove xcodeproj, use Package.swift
  • Remove obsolete Support Files
  • Remove test plan, use swift test
  • Remove CocoaPods support, use SPM
  • Remove Carthage support, use SPM

Testing details

I use swift test instead of a test plan.

Notes

Formatting

I want to format the entire code base using some formatter after we're done here, but that should be a last step before everything else is discussed and approved. Ideally, I want the indentation to be 2 spaces, instead of 4, and target 80 columns instead of 120+ as it is right now.

Documentation and Nef

I'm having trouble building/updating the documentation using Nef.

  • Nef is very obscure, and the documentation is hard for me to understand. It seems almost like Nef itself only exists because of Bow. Who uses Nef anywhere else?
  • I wanted to add a SPM plugin to build documentation without explicitly installing Nef using Homebrew or some other way. But I can't add Nef as a "dev dependency" to Bow, because Nef itself depends on Bow, it's a circular dependency.
  • When I try to generate the documentation using Nef, it just hangs. I can't figure out what it's trying to do, because there's no logs.
~/C/bow ❯❯❯ nef compile --project Documentation.app
Getting playgrounds in MacOS ✓
Getting pages in playground Quick start ✓
	• Processing page Getting started ✓
	• Processing page Modules ✓
	• Processing page Resources ✓
Getting pages in playground FP concepts ✓
	• Processing page Glossary ✓
	• Processing page Functions vs Procedures ✓
	• Processing page Higher Kinded Types ✓
	• Processing page Type classes ✓
	• Processing page Data types ✓
	• Processing page Rank-N polymorphism ✓
Getting pages in playground Composition ✓
	• Processing page Composition Overview ✓
	• Processing page Composing functions ✓
	• Processing page Combining values of the same type ✓
	• Processing page Transforming data ✓
	• Processing page Lifting values to an effect ✓
	• Processing page Combining independent computations ✓
	• Processing page Sequencing dependent computations ✓
	• Processing page Transforming multiple effects ✓
Getting pages in playground Dependency management ✓
	• Processing page Dependency management Overview ✓
	• Processing page Partial application ✓
	• Processing page Constructor-based dependency injection ✓
	• Processing page Reader ✓
	• Processing page Side-effectful dependency management ✓
Getting pages in playground Patterns ✓
	• Processing page Error handling ✓
	• Processing page Monad comprehensions ✓
	• Processing page Tail recursion ✓
	• Processing page State-based computations ✓
	• Processing page Polymorphic programs ✓
Getting pages in playground Optics ✓
	• Processing page Optics Overview ✓
	• Processing page Writing your own optics ✓
	• Processing page Automatic derivation ✓
	• Processing page Composition ✓
Getting pages in playground Effects ✓
	• Processing page Effects Overview ✓
	• Processing page Suspending side effects ✓
	• Processing page Manipulating side effects ✓
	• Processing page Handling errors ✓
	• Processing page Concurrency ✓
	• Processing page Running side effects ✓
	• Processing page Retrying and repeating effects ✓
	• Processing page Handling resources ✓
	• Processing page Foundation extensions ✓
Getting pages in playground Testing ✓
	• Processing page Testing Overview ✓
	• Processing page Testing type class instances ✓
	• Processing page Testing side effectful code ✓
Getting pages in playground Integrations ✓
	• Processing page RxSwift streams ✓
Getting pages in playground Legal ✓
	• Processing page Credits ✓
	• Processing page License ✓
[hangs forever]

@denizdogan denizdogan mentioned this pull request Nov 18, 2022
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