kswoll / ReactiveUI.Fody

C# Fody extension to generate RaisePropertyChange notifications for properties and ObservableAsPropertyHelper properties.
MIT License
154 stars 31 forks source link

Emit a compiler error when [Reactive] is used on a class that does not implement IReactiveObject #44

Open kswoll opened 7 years ago

kswoll commented 7 years ago

Since the attribute will never do anything useful in this scenario, it will only lead to bugs. So just make it a compiler error.

arontsang commented 5 years ago

I have a Roslyn Analyzer https://github.com/arontsang/ReactiveUI.Fody.Analyzer But I need kswoll to give me access to the ReactiveUI.Fody prefix to publish this as a nuget package

kswoll commented 5 years ago

This is now being maintained at ReactiveUI: https://github.com/reactiveui/ReactiveUI/tree/master/src/ReactiveUI.Fody

I'm happy to help -- however, it might make more sense for the plugin itself to emit an error through Fody rather than through an analyzer. In any case, l'm happy to help, but maybe raise this issue at its new(-ish) home under the reactiveui project.

arontsang commented 5 years ago

With an analyser we get integration at the IDE level (the user gets feed back at design time rather than compile time).

Also I've set the level to Error so at compile, we still stop compilation.

On Sat, 10 Aug 2019, 02:08 Kirk Woll, notifications@github.com wrote:

This is now being maintained at ReactiveUI: https://github.com/reactiveui/ReactiveUI/tree/master/src/ReactiveUI.Fody

I'm happy to help -- however, it might make more sense for the plugin itself to emit an error through Fody rather than through an analyzer. In any case, l'm happy to help, but maybe raise this issue at its new(-ish) home under the reactiveui project.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/kswoll/ReactiveUI.Fody/issues/44?email_source=notifications&email_token=AA46MLI23HUVLFQAEERRC4TQDWXB7A5CNFSM4DLPGRNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD37MKII#issuecomment-520013089, or mute the thread https://github.com/notifications/unsubscribe-auth/AA46MLJBPRKQIROD22ZZ26TQDWXB7ANCNFSM4DLPGRNA .

kswoll commented 5 years ago

Ah yeah, that's a great point @arontsang! Anyway, I'm happy to grant you access to the prefix -- any idea how I do that? 😃

arontsang commented 5 years ago

Seems you need to send microsoft support an email https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation

Advanced prefix reservation scenarios https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#advanced-prefix-reservation-scenarios

There are several more advanced prefix reservation scenarios described below, including subprefix delegation, and marking prefixes as public. Below are the more advanced prefix reservations that can be made.

-

During prefix reservation, the owner can request delegation of prefix subsets (or the prefix) to other owners. For example, if 'Microsoft https://www.nuget.org/profiles/microsoft' owns 'Microsoft.', but 'aspnet https://www.nuget.org/profiles/aspnet' wants to reserve 'Microsoft.AspNet.', 'Microsoft https://www.nuget.org/profiles/microsoft' can choose to delegate 'Microsoft.AspNet.' to the aspnet https://www.nuget.org/profiles/aspnet account.*

During prefix reservation, the owner can choose to make a prefix public. This will still give them the visual indicator showing that the package originates from a reserved prefix, but it will not block future package submissions on the prefix for any owner. This is useful for open source projects with many contributors - the top or core contributors can have the prefix reserved, but it can still be open to all contributors.

1.

Review the acceptance criteria for prefix ID reservation https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria . 2.

Determine the prefixes you want to reserve, in addition to any advanced prefix reservation scenarios https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#advanced-prefix-reservation-scenarios you may require. 3.

Send a mail to account@nuget.org with the owner display name on nuget.org https://www.nuget.org/, as well as any reserved prefixes you are requesting. If you are delegating prefix subsets to multiple owners, make sure you mention all owner display names and prefix subsets.

On Sun, 11 Aug 2019 at 15:44, Kirk Woll notifications@github.com wrote:

Ah yeah, that's a great point @arontsang https://github.com/arontsang! Anyway, I'm happy to grant you access to the prefix -- any idea how I do that? 😃

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kswoll/ReactiveUI.Fody/issues/44?email_source=notifications&email_token=AA46MLLBBHNQ32QE7TLGAODQD67OBA5CNFSM4DLPGRNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4A32UQ#issuecomment-520207698, or mute the thread https://github.com/notifications/unsubscribe-auth/AA46MLKT6DBVDLE6TDQSLGTQD67OBANCNFSM4DLPGRNA .

kswoll commented 5 years ago

Can you email me your email that is tied to your nuget account? Creating an email now to nuget. (my email is listed in my profile).