You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@reef.apache.org by Saikat Kanjilal <sx...@gmail.com> on 2017/03/01 00:14:43 UTC

location of documentation

Fellow Reef devs,
I am embarking on the journey of moving our current .net REEF projects that
are libraries to use .net standard 2.0 and .NET Framework 4.5 (
https://issues.apache.org/jira/browse/REEF-1583).    I am seeing a bunch of
APIs around one or two classes that are no longer supported in .NET
Standard 2.0 using .Net Framework 4.5.  At this point we can move forward
in several ways: a) use a different class that essentially does the same
thing but is supported under .Net Standard 2.0 b) ignore these for now and
add TODO's with comments.


Any recommendations, also is there a central place to go to see what
classes are available as interfaces in .net standard 2.0, I browsed the web
and didnt see anything obvious other than this github page (
https://github.com/dotnet/standard/tree/master/docs/netstandard-20).

Thanks in advance.

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
One other piece of metadata pertinent to this topic, these messages about
API's not longer being supported are reported only as warnings, not errors,
I actually dont see any errors at all, just warnings.
Thanks for your help.

On Tue, Feb 28, 2017 at 4:14 PM, Saikat Kanjilal <sx...@gmail.com> wrote:

> Fellow Reef devs,
> I am embarking on the journey of moving our current .net REEF projects
> that are libraries to use .net standard 2.0 and .NET Framework 4.5 (
> https://issues.apache.org/jira/browse/REEF-1583).    I am seeing a bunch
> of APIs around one or two classes that are no longer supported in .NET
> Standard 2.0 using .Net Framework 4.5.  At this point we can move forward
> in several ways: a) use a different class that essentially does the same
> thing but is supported under .Net Standard 2.0 b) ignore these for now and
> add TODO's with comments.
>
>
> Any recommendations, also is there a central place to go to see what
> classes are available as interfaces in .net standard 2.0, I browsed the web
> and didnt see anything obvious other than this github page (
> https://github.com/dotnet/standard/tree/master/docs/netstandard-20).
>
> Thanks in advance.
>

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
Markus,
Thanks for the heads up, I will move away from that nuget package, I think
the confusion lies in Scott's earlier email which made the following point:

2. All libraries will target .NET 4.5 and .NET Standard 2.0 where
   possible. For projects that have non-.NET Core dependencies or
portability
   issues, we still create a new csproj but will only target .NET 4.5 until
   the issues are resolved.
   3. All executables will target .NET 4.5 and .NET Core 2.0, as well as
   Windows x64 and Linux x64. .NET currently targets specific flavors of
Linux
   (ubuntu, Redhat), that we may have to reflect.



In this case I am referring to I am working on a .net library project so I
was under the impression that we're not using .Net core for the libraries.
Also according to this wiki (
https://docs.microsoft.com/en-us/dotnet/articles/standard/choosing-core-framework-server)
its
an either or scenario with .net Core versus .net framework obviously due to
portability and scale and lightweight architectures.


On Thu, Mar 2, 2017 at 3:57 PM, Markus Weimer <ma...@weimo.de> wrote:

> On 2017-03-02 15:18, Saikat Kanjilal wrote:
>
>> 2) I've download this open source nuget package (
>> http://www.adamriddick.com/memorycache-memory-storage/) and am
>> trying to figure out the scope of the rewrite necessary to use this
>>
>
> I'd stay away from this dependency. The page indicates that it is done
> by a single developer. Hence, its future is sketchy.
>
> Further, neither the page nor the NuGet entry contain information about
> the license of the code. That is problematic for commercial users of
> REEF, who'd have to find out whether or not they can use that library.
>
> 3) I dont think we want to jump to .Net core as that would
>> essentially mean a major overhaul/rewrite of the project
>>
>
> How do you mean? We are moving REEF.NET to .NET Core, right?
>
> Markus
>

Re: location of documentation

Posted by Markus Weimer <ma...@weimo.de>.
On 2017-03-02 15:18, Saikat Kanjilal wrote:
> 2) I've download this open source nuget package (
> http://www.adamriddick.com/memorycache-memory-storage/) and am
> trying to figure out the scope of the rewrite necessary to use this

I'd stay away from this dependency. The page indicates that it is done
by a single developer. Hence, its future is sketchy.

Further, neither the page nor the NuGet entry contain information about
the license of the code. That is problematic for commercial users of
REEF, who'd have to find out whether or not they can use that library.

> 3) I dont think we want to jump to .Net core as that would
> essentially mean a major overhaul/rewrite of the project

How do you mean? We are moving REEF.NET to .NET Core, right?

Markus

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
k here's what I've done:
1) I've opened up an issue with the .net cli (
https://github.com/dotnet/cli/issues/5899)
2) I've download this open source nuget package (
http://www.adamriddick.com/memorycache-memory-storage/) and am trying to
figure out the scope of the rewrite necessary to use this
3) I dont think we want to jump to .Net core as that would essentially mean
a major overhaul/rewrite of the project


Let me know if you have any other suggestions.
Thanks in advance.

On Thu, Mar 2, 2017 at 11:26 AM, Saikat Kanjilal <sx...@gmail.com> wrote:

> Scott, thanks for the information, yes I found that URL you are
> describing, so this is for a library project and our goal is to standardize
> on using .Net Standard 2.0 and .Net Framework 4.5, I am hesitant on
> bringing in Asp.Net.core as its another library dependency, is this
> something we are willing to actually explore, the other part is of course
> doing the investigation to figure out whether we can actually replace all
> the current code with the APIs in the new class, I'm ok going down this
> option first and then exploring 3 and 4, what does everyone think?
>
> On Wed, Mar 1, 2017 at 7:30 PM, Scott Inglis <ms...@gmail.com> wrote:
>
>> Hi Saikat,
>>
>> This is the mode that I've been operating with:
>>
>> 1) Check this site:
>>
>> https://apisof.net
>>
>> Super helpful for finding what apis are available and support platform.For
>> MemoryCache, it looks like its available in
>> Microsoft.Framework.Caching.Memory as part of asp.core -- not sure if
>> this
>> will work or not.
>>
>> 2) Check if the library exists as part of the System.* nuget packages. You
>> will have to add this as a reference to the project, however I did not see
>> System.Memory.Caching there.
>>
>> 3) Open an issue on the dotnet-cli github repository. You should at least
>> get an answer/suggestion there.
>>
>> 4) If none of the attempts result in a good direction, investigate what
>> are
>> the alternatives (open source library, implement a new solution, etc).
>>
>> As a side note, it is possible to have code for different platforms in the
>> cs file using an #ifdef <platform>, like #ifdef netcoreapp2.0.
>>
>>
>> Scott
>>
>> On Wed, Mar 1, 2017 at 1:03 PM, Saikat Kanjilal <sx...@gmail.com>
>> wrote:
>>
>> > To be even more specific the workaround in this case is non-obvious
>> because
>> > a) I don't have access to the .Net Standard 2.0 to see what the changed
>> > class APIs should look like 2) From digging through the documentation it
>> > seems that the representation of an in memory cache is only localized to
>> > this class in .Net.    This is actually symptomatic of a larger problem
>> > which I predict will happen, if there are a bunch of warnings with APIs
>> > changing and we dont have access to the .Net standard 2.0 yet to see the
>> > new APIs how would we even attempt at fixing these issues :)
>> >
>> > On Wed, Mar 1, 2017 at 12:54 PM, Saikat Kanjilal <sx...@gmail.com>
>> > wrote:
>> >
>> > > To bring in down to more specifics, here's the class causing issues (
>> > > https://msdn.microsoft.com/en-us/library/system.runtime.
>> > > caching.memorycache(v=vs.110).aspx)
>> > > The warning messages are associated with the various APIs for this
>> class
>> > > and they all say Not supported on .NET Framework=v4.5;.NET Standard
>> > > Version=2.0.    This seems to imply that several APIs from this class
>> > will
>> > > change, @Scott/Doug/Markus when you guys run into this type of a
>> warning
>> > > message do you: 1) ignore and fix later in most cases 2) figure out a
>> > > workaround with the constraints of .NET v4.5/.NET STandard 2.0.  I'd
>> just
>> > > like to understand how you guys have been tackling these types of
>> > warnings
>> > > so I take a consistent approach.
>> > >
>> > > On Wed, Mar 1, 2017 at 8:52 AM, Markus Weimer <ma...@weimo.de>
>> wrote:
>> > >
>> > >> On 2017-02-28 16:14, Saikat Kanjilal wrote:
>> > >>
>> > >>> I am seeing a bunch of APIs around one or two classes that are no
>> > >>> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
>> > >>> this point we can move forward in several ways: a) use a different
>> > >>> class that essentially does the same thing but is supported under
>> > >>> .Net Standard 2.0 b) ignore these for now and add TODO's with
>> > >>> comments.
>> > >>>
>> > >>
>> > >> If there is a workaround that works in .NET 4.5, we should use it.\
>> > >>
>> > >> Any recommendations, also is there a central place to go to see what
>> > >>> classes are available as interfaces in .net standard 2.0
>> > >>>
>> > >>
>> > >> Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
>> > >> I'd hope for this to become available at a later time, as part of the
>> > >> release.
>> > >>
>> > >> Markus
>> > >>
>> > >
>> > >
>> >
>>
>
>

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
Scott, thanks for the information, yes I found that URL you are describing,
so this is for a library project and our goal is to standardize on using
.Net Standard 2.0 and .Net Framework 4.5, I am hesitant on bringing in
Asp.Net.core as its another library dependency, is this something we are
willing to actually explore, the other part is of course doing the
investigation to figure out whether we can actually replace all the current
code with the APIs in the new class, I'm ok going down this option first
and then exploring 3 and 4, what does everyone think?

On Wed, Mar 1, 2017 at 7:30 PM, Scott Inglis <ms...@gmail.com> wrote:

> Hi Saikat,
>
> This is the mode that I've been operating with:
>
> 1) Check this site:
>
> https://apisof.net
>
> Super helpful for finding what apis are available and support platform.For
> MemoryCache, it looks like its available in
> Microsoft.Framework.Caching.Memory as part of asp.core -- not sure if this
> will work or not.
>
> 2) Check if the library exists as part of the System.* nuget packages. You
> will have to add this as a reference to the project, however I did not see
> System.Memory.Caching there.
>
> 3) Open an issue on the dotnet-cli github repository. You should at least
> get an answer/suggestion there.
>
> 4) If none of the attempts result in a good direction, investigate what are
> the alternatives (open source library, implement a new solution, etc).
>
> As a side note, it is possible to have code for different platforms in the
> cs file using an #ifdef <platform>, like #ifdef netcoreapp2.0.
>
>
> Scott
>
> On Wed, Mar 1, 2017 at 1:03 PM, Saikat Kanjilal <sx...@gmail.com> wrote:
>
> > To be even more specific the workaround in this case is non-obvious
> because
> > a) I don't have access to the .Net Standard 2.0 to see what the changed
> > class APIs should look like 2) From digging through the documentation it
> > seems that the representation of an in memory cache is only localized to
> > this class in .Net.    This is actually symptomatic of a larger problem
> > which I predict will happen, if there are a bunch of warnings with APIs
> > changing and we dont have access to the .Net standard 2.0 yet to see the
> > new APIs how would we even attempt at fixing these issues :)
> >
> > On Wed, Mar 1, 2017 at 12:54 PM, Saikat Kanjilal <sx...@gmail.com>
> > wrote:
> >
> > > To bring in down to more specifics, here's the class causing issues (
> > > https://msdn.microsoft.com/en-us/library/system.runtime.
> > > caching.memorycache(v=vs.110).aspx)
> > > The warning messages are associated with the various APIs for this
> class
> > > and they all say Not supported on .NET Framework=v4.5;.NET Standard
> > > Version=2.0.    This seems to imply that several APIs from this class
> > will
> > > change, @Scott/Doug/Markus when you guys run into this type of a
> warning
> > > message do you: 1) ignore and fix later in most cases 2) figure out a
> > > workaround with the constraints of .NET v4.5/.NET STandard 2.0.  I'd
> just
> > > like to understand how you guys have been tackling these types of
> > warnings
> > > so I take a consistent approach.
> > >
> > > On Wed, Mar 1, 2017 at 8:52 AM, Markus Weimer <ma...@weimo.de> wrote:
> > >
> > >> On 2017-02-28 16:14, Saikat Kanjilal wrote:
> > >>
> > >>> I am seeing a bunch of APIs around one or two classes that are no
> > >>> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
> > >>> this point we can move forward in several ways: a) use a different
> > >>> class that essentially does the same thing but is supported under
> > >>> .Net Standard 2.0 b) ignore these for now and add TODO's with
> > >>> comments.
> > >>>
> > >>
> > >> If there is a workaround that works in .NET 4.5, we should use it.\
> > >>
> > >> Any recommendations, also is there a central place to go to see what
> > >>> classes are available as interfaces in .net standard 2.0
> > >>>
> > >>
> > >> Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
> > >> I'd hope for this to become available at a later time, as part of the
> > >> release.
> > >>
> > >> Markus
> > >>
> > >
> > >
> >
>

Re: location of documentation

Posted by Scott Inglis <ms...@gmail.com>.
Hi Saikat,

This is the mode that I've been operating with:

1) Check this site:

https://apisof.net

Super helpful for finding what apis are available and support platform.For
MemoryCache, it looks like its available in
Microsoft.Framework.Caching.Memory as part of asp.core -- not sure if this
will work or not.

2) Check if the library exists as part of the System.* nuget packages. You
will have to add this as a reference to the project, however I did not see
System.Memory.Caching there.

3) Open an issue on the dotnet-cli github repository. You should at least
get an answer/suggestion there.

4) If none of the attempts result in a good direction, investigate what are
the alternatives (open source library, implement a new solution, etc).

As a side note, it is possible to have code for different platforms in the
cs file using an #ifdef <platform>, like #ifdef netcoreapp2.0.


Scott

On Wed, Mar 1, 2017 at 1:03 PM, Saikat Kanjilal <sx...@gmail.com> wrote:

> To be even more specific the workaround in this case is non-obvious because
> a) I don't have access to the .Net Standard 2.0 to see what the changed
> class APIs should look like 2) From digging through the documentation it
> seems that the representation of an in memory cache is only localized to
> this class in .Net.    This is actually symptomatic of a larger problem
> which I predict will happen, if there are a bunch of warnings with APIs
> changing and we dont have access to the .Net standard 2.0 yet to see the
> new APIs how would we even attempt at fixing these issues :)
>
> On Wed, Mar 1, 2017 at 12:54 PM, Saikat Kanjilal <sx...@gmail.com>
> wrote:
>
> > To bring in down to more specifics, here's the class causing issues (
> > https://msdn.microsoft.com/en-us/library/system.runtime.
> > caching.memorycache(v=vs.110).aspx)
> > The warning messages are associated with the various APIs for this class
> > and they all say Not supported on .NET Framework=v4.5;.NET Standard
> > Version=2.0.    This seems to imply that several APIs from this class
> will
> > change, @Scott/Doug/Markus when you guys run into this type of a warning
> > message do you: 1) ignore and fix later in most cases 2) figure out a
> > workaround with the constraints of .NET v4.5/.NET STandard 2.0.  I'd just
> > like to understand how you guys have been tackling these types of
> warnings
> > so I take a consistent approach.
> >
> > On Wed, Mar 1, 2017 at 8:52 AM, Markus Weimer <ma...@weimo.de> wrote:
> >
> >> On 2017-02-28 16:14, Saikat Kanjilal wrote:
> >>
> >>> I am seeing a bunch of APIs around one or two classes that are no
> >>> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
> >>> this point we can move forward in several ways: a) use a different
> >>> class that essentially does the same thing but is supported under
> >>> .Net Standard 2.0 b) ignore these for now and add TODO's with
> >>> comments.
> >>>
> >>
> >> If there is a workaround that works in .NET 4.5, we should use it.\
> >>
> >> Any recommendations, also is there a central place to go to see what
> >>> classes are available as interfaces in .net standard 2.0
> >>>
> >>
> >> Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
> >> I'd hope for this to become available at a later time, as part of the
> >> release.
> >>
> >> Markus
> >>
> >
> >
>

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
To be even more specific the workaround in this case is non-obvious because
a) I don't have access to the .Net Standard 2.0 to see what the changed
class APIs should look like 2) From digging through the documentation it
seems that the representation of an in memory cache is only localized to
this class in .Net.    This is actually symptomatic of a larger problem
which I predict will happen, if there are a bunch of warnings with APIs
changing and we dont have access to the .Net standard 2.0 yet to see the
new APIs how would we even attempt at fixing these issues :)

On Wed, Mar 1, 2017 at 12:54 PM, Saikat Kanjilal <sx...@gmail.com> wrote:

> To bring in down to more specifics, here's the class causing issues (
> https://msdn.microsoft.com/en-us/library/system.runtime.
> caching.memorycache(v=vs.110).aspx)
> The warning messages are associated with the various APIs for this class
> and they all say Not supported on .NET Framework=v4.5;.NET Standard
> Version=2.0.    This seems to imply that several APIs from this class will
> change, @Scott/Doug/Markus when you guys run into this type of a warning
> message do you: 1) ignore and fix later in most cases 2) figure out a
> workaround with the constraints of .NET v4.5/.NET STandard 2.0.  I'd just
> like to understand how you guys have been tackling these types of warnings
> so I take a consistent approach.
>
> On Wed, Mar 1, 2017 at 8:52 AM, Markus Weimer <ma...@weimo.de> wrote:
>
>> On 2017-02-28 16:14, Saikat Kanjilal wrote:
>>
>>> I am seeing a bunch of APIs around one or two classes that are no
>>> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
>>> this point we can move forward in several ways: a) use a different
>>> class that essentially does the same thing but is supported under
>>> .Net Standard 2.0 b) ignore these for now and add TODO's with
>>> comments.
>>>
>>
>> If there is a workaround that works in .NET 4.5, we should use it.\
>>
>> Any recommendations, also is there a central place to go to see what
>>> classes are available as interfaces in .net standard 2.0
>>>
>>
>> Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
>> I'd hope for this to become available at a later time, as part of the
>> release.
>>
>> Markus
>>
>
>

Re: location of documentation

Posted by Saikat Kanjilal <sx...@gmail.com>.
To bring in down to more specifics, here's the class causing issues (
https://msdn.microsoft.com/en-us/library/system.runtime.caching.memorycache(v=vs.110).aspx
)
The warning messages are associated with the various APIs for this class
and they all say Not supported on .NET Framework=v4.5;.NET Standard
Version=2.0.    This seems to imply that several APIs from this class will
change, @Scott/Doug/Markus when you guys run into this type of a warning
message do you: 1) ignore and fix later in most cases 2) figure out a
workaround with the constraints of .NET v4.5/.NET STandard 2.0.  I'd just
like to understand how you guys have been tackling these types of warnings
so I take a consistent approach.

On Wed, Mar 1, 2017 at 8:52 AM, Markus Weimer <ma...@weimo.de> wrote:

> On 2017-02-28 16:14, Saikat Kanjilal wrote:
>
>> I am seeing a bunch of APIs around one or two classes that are no
>> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
>> this point we can move forward in several ways: a) use a different
>> class that essentially does the same thing but is supported under
>> .Net Standard 2.0 b) ignore these for now and add TODO's with
>> comments.
>>
>
> If there is a workaround that works in .NET 4.5, we should use it.\
>
> Any recommendations, also is there a central place to go to see what
>> classes are available as interfaces in .net standard 2.0
>>
>
> Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
> I'd hope for this to become available at a later time, as part of the
> release.
>
> Markus
>

Re: location of documentation

Posted by Markus Weimer <ma...@weimo.de>.
On 2017-02-28 16:14, Saikat Kanjilal wrote:
> I am seeing a bunch of APIs around one or two classes that are no
> longer supported in .NET Standard 2.0 using .Net Framework 4.5.  At
> this point we can move forward in several ways: a) use a different
> class that essentially does the same thing but is supported under
> .Net Standard 2.0 b) ignore these for now and add TODO's with
> comments.

If there is a workaround that works in .NET 4.5, we should use it.\

> Any recommendations, also is there a central place to go to see what
> classes are available as interfaces in .net standard 2.0

Not that I am aware off. .NET Standard 2.0 isn't released yet. Hence,
I'd hope for this to become available at a later time, as part of the
release.

Markus