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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Profile78 v4.5 portable class library #4

Merged
merged 3 commits into from
Mar 13, 2014

Conversation

ghuntley
Copy link
Contributor

Hi Michael,

Thanks for the library, please see the attached pull request that adds PCL
support which allows the library to run on Xamarin (iPhone and Android) and
Windows Phone.

It will also allow you to start to migrate away from maintaining one version
per .NET framework - reducing your personal support/maintenance costs.

I am seeking to get this integrated upstream into your NuGet feed so that I
don't have to distribute my own fork, etc. If you have any questions or you need
this cleaned up before integration please reply back.

Regards,
Geoff

Implementation Notes:

  • SystemClock.cs changed to Task.Delay via IFDEFs on PORTABLE
  • BrokenCircuitException on PORTABLE is not Serializable.

- SystemClock.cs changed to Task.Delay via IFDEFs on PORTABLE
- BrokenCircuitException on PORTABLE is not Serializable.
@michael-wolfenden
Copy link
Contributor

Geoff.

I was meaning to add a portable class library but haven't had the time so your contribution is much appreciated.

The checked over the changes and they look good, however there are two minor issues

  1. Are you able to change the default namespace and assembly name of the PCL project from 'Polly.Pcl' to 'Polly' to stay keep consistent with the other projects.

  2. Can you strongly name the portable class library. You will need to copy the Polly.snk from the solution root into the PCL project root and then click 'SIgn the assembly' from the project properties and select this file.

If you have any questions then let me know. Once you have made these changes, I will merge them and get a new nuget package deployed.

Thanks once again for you help.

Michael Wolfenden

@michael-wolfenden
Copy link
Contributor

Geoff,

I just thought of something else.

  1. Currently you are using Task.Delay as a replacement for Thread.Sleep, but for that to work you need to await it.

http://stackoverflow.com/questions/12641223/thread-sleep-replacement-in-net-for-windows-store

Changing

Sleep = span => Task.Delay(span);

to

Sleep = async (span) => await Task.Delay(span);

Should work, but I haven't had time to investigate fully.

@ghuntley
Copy link
Contributor Author

2) Can you strongly name the portable class library. You will need to copy the
   Polly.snk from the solution root into the PCL project root and then click
   'SIgn the assembly' from the project properties and select this file.

See and discuss this on issue #5

As for other points you have raised I'll go through and clean up the pull.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants