DevYeom / OneWay

A Swift library for state management with unidirectional data flow.
https://swiftpackageindex.com/DevYeom/OneWay/2.9.0/documentation/oneway
MIT License
78 stars 8 forks source link

The package acess level used on '...' requires a package name; #98

Closed sobabear closed 3 weeks ago

sobabear commented 3 weeks ago

Describe the bug 🐛

Screenshot 2024-09-26 at 1 32 15 PM

I've got build error with above image. /OneWay/Store.swift:43:5 The package access level used on 'isIdle' requires a package name; set it with the compiler flag -package-name

/OneWay/Sources/OneWay/ViewStore.swift:44:5 The package access level used on 'store' requires a package name; set it with the compiler flag -package-name

To Reproduce ✨

  1. Update to Xcode 16.0 (MacOS 14.5)
  2. Installed Oneway 2.3.0 (Using tuist, .upToNextMajor(from: "2.3.0"))

Expected behavior 🌈

Build without errors

Environments ⚙️

sobabear commented 3 weeks ago

P.S. I am not considering this happens because of updating xcode, but i am guessing might be related to recent reslease(2.8.0). Not only my mac but on CI Mac(mini) also happens the issue since around 3~4 days ago when 2.8.0 had release

DevYeom commented 3 weeks ago

It seems that the issue occurred because Tuist regenerates the project without using native package. This appears to be a package access level support issue in Tuist. What version of Tuist are you using?

Related to https://github.com/tuist/tuist/issues/5970

sobabear commented 3 weeks ago

You are right I just checked, it isnt moduling using targets on xcode, especially tuist version is 3 (3.32.0)

DevYeom commented 3 weeks ago

There are three solutions:

DevYeom commented 3 weeks ago

package access level was added in Swift 5.9, so I would recommend to keep your project up to date.

Thanks for reporting!

sobabear commented 3 weeks ago

I got to use current tuist version for domestic issue for a while, but i might handle oneway version or using custom by fork...

Thanks for rapid answer thanks!

DevYeom commented 3 weeks ago

I will also consider alternative methods to replace the package access level.