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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux Support: from experimental to 100% 馃殌 #1198

Open
3 of 8 tasks
art-divin opened this issue Sep 4, 2023 · 0 comments
Open
3 of 8 tasks

Linux Support: from experimental to 100% 馃殌 #1198

art-divin opened this issue Sep 4, 2023 · 0 comments
Assignees
Labels
linux Pull requests that are related to Linux
Milestone

Comments

@art-divin
Copy link
Collaborator

art-divin commented Sep 4, 2023

Description

This issue is for tracking purposes.

Currently, there are a few features disabled for the sake of supporting Linux:

  1. Code generation for Sourcery codebase - it generates Equatable.generated etc. -> which were moved to class definitions due to the fact that under Linux it is not possible to override a method from an extension (@objc is unavailable). Even in Darwin variant, it looks odd, though, and I want to address this in a future PR, where I would inject generated code into specific areas of the class definitions like it is now. For that, I need to research template system a little bit more. I see this is done already for Codable methods.
  2. On Linux there's a number of issues with swift compiler. There's one crash from swift compiler which breaks a number of tests. Removing #if canImport(ObjectiveC) statements piece by piece would bring stability to Sourcery on Linux and in future on Windows.
  3. DynamicMemberLookup conformance must be made using code generation and automated for Sourcery codebase.
  4. Release process does not work 100% as expected - probably needs to be moved to GH actions.
  5. Documentation includes Linux files, which should be ignored to avoid duplication
  6. Documentation includes hash and diff functions, which should not be included into the doc
  7. Missing tests that cover using a compiled Sourcery when it is packaged in release mode. Context: Issue when running sourcery from binary聽#1202
  8. Missing DynamicMemberLookup conformance of GenericParameter type. Context: Added generic requirements and generic parameters to Subscript聽#1242

This issue will be updated and is a follow up of #306.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
linux Pull requests that are related to Linux
Projects
None yet
Development

No branches or pull requests

1 participant