Giter Club home page Giter Club logo

Comments (4)

thaumanovic avatar thaumanovic commented on July 28, 2024

It seems that init properties are unsupported in this use case too.

I would be happy to submit a PR to change these if it would be accepted. Let me know. :)

from autointerface.

BlackWhiteYoshi avatar BlackWhiteYoshi commented on July 28, 2024

If your condition is just the use of some older framework, I recommend to set the language version to 12 and also include PolySharp:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.1</TargetFramework>
    <LangVersion>12</LangVersion>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="AutoInterface" Version="2.1.0" PrivateAssets="all" />
    <PackageReference Include="PolySharp" Version="1.14.1" PrivateAssets="all" />
  </ItemGroup>

</Project>

from autointerface.

thaumanovic avatar thaumanovic commented on July 28, 2024

This is something I considered, but the SDK we're writing is for our Unity frontend and we're reluctant to put things into what is an officially unsupported configuration.

from autointerface.

BlackWhiteYoshi avatar BlackWhiteYoshi commented on July 28, 2024

yeah, Unity is known for being stone age, the target group for Unity are mostly beginner programmers. As experienced programmer it can be pretty rough to work with Unity, especially when it comes to language features and software architecture.

Give it a try. Set the language version to “latest” and see what you get. If you get C#12, Unity uses an up-to-date Roslyn compiler. Then try to compile and try to build a release version, if both works, you are good to go. The possibility of side effects is neglectable. I won’t they, they are impossible, but changing the language version is actually a pretty small and local change. The configuration affects only the compile process from your code to the IL assembly and everything beside that (other assemblies, linking of these assemblies, runtime) will be untouched.

PolySharp is even more harmless. It is just a source generator that creates some polyfill classes.

Regardless of the outcome, I already thought about the problem of language version compatibility. There was the decision between breaking everything down to version C#7.3 or just using the new features. I decided to just use the new features, because changing the language version is not a big deal.

from autointerface.

Related Issues (12)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.