-
Notifications
You must be signed in to change notification settings - Fork 752
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
Update HomoIcon tool to reflect new repository structure and manual code changes #537
Conversation
@@ -5,6 +5,9 @@ | |||
<PackageTags>Rx;Reactive;Extensions;Observable;LINQ;Events</PackageTags> | |||
<Description>Reactive Extensions (Rx) for .NET</Description> | |||
</PropertyGroup> | |||
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net46|AnyCPU'"> | |||
<DocumentationFile>bin\Debug\net46\System.Reactive.xml</DocumentationFile> | |||
</PropertyGroup> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove this property group, it shouldn't be needed here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. It is however useful to catch wrong documentation.
@quinmars I'm not really into this program but if it does the job I'll happily merge it, however, there's already some conflicts due to the latest changes on master. |
@danielcweber, I also don't know every detail of that program. I just applied some changes, so that the generation works again and matches as nearly as possible the hand-edit formerly generated files. Since there is a unit test, which compares the public surface of the Observable and the Qbservable class, it shouldn't be harmful as long as the test pass. I'm planning to write a little readme file that explains when and how to use the HomoIcon tool. |
Awesome, the approval tests already kicked in here! @ryanwersal can you have a look at it? |
@danielcweber I'd be happy to take a look later today as well as ensuring VSTS sees the approval tests. |
It looks like the approval tests are failing for a valid reason but unfortunately aren't finding a good way to report it while running under VSTS. I'm currently investigating that. In the meantime, there are a few API changes to consider. For convenience, I added the diff to a gist. Most appear to be lines moving around but there are a couple signature changes. I'm going to see if I can get it so that such a diff is produced by the failing test while building in VSTS instead of having to retrieve it out of band. |
@ryanwersal thanks alot, It's the |
Ok, I watched now Bart's video "Observations on IQbservable - The Dual of IQueryable" at channel 9. I understood it that way, that every method of IQbservable<int> = myprovider.Range(0, 10); Now, I still haven't any clue, how So there a two possibilities:
In the first case I would move Maybe @RxDave, the author of Qactive, has a more profound opinion on that. Qactive is the only serious |
I just realized that |
@ryanwersal One problem is indeed that the test is sensitive to the order the members. The generator does sort the members by their name, but that's not sufficient for methods with overloads. Some how the argument types must be considered. |
Ok, I integrated now #562 and chosed option 2. Finally I reordered some definitions in the approved API file. It should now pass all checks. |
This is a renewed version of PR #474.
The orignal text was:
Originally, I started to work on issue #420 but I than realized that the HomoIcon tool does not work in its current form. The paths are not setup right and the formerly generated files seem to be hand optimzed (many #ifdefs are removed, the type notation in the docs was changed etc.).
This PR tries to fix those problems. The paths are valid again. Several #ifdefs are removed. From a code point of view it is almost the same (some
using
s differ and some trailing white space was removed). While I tried to reflect the changes in the documentation as well, there are some type notations that differ (and it is only the notation that differs not the type). I have no idea if there is an easy way to fix those:@bartdesmet, maybe you can tell which tool you used.
But I don't think it is such important, since the generated xml file won't differ.
Note: I haven't commit the newly generated files yet.