RE: [Lucene.Net] Nuget, Lucene.Net, and Your Thoughts

2011-09-22 Thread Granroth, Neal V.

Say what?  There's no personalities involved here.
It's simple, anything that comes between me and the source is unnecessary and 
just gets in the way of deploying and using Lucene.NET

- Neal


-Original Message-
From: Troy Howard [mailto:thowar...@gmail.com] 
Sent: Wednesday, September 21, 2011 10:07 PM
To: lucene-net-dev@lucene.apache.org
Subject: Re: [Lucene.Net] Nuget, Lucene.Net, and Your Thoughts

Michael - Could be wrong, but I think Nick might have gotten you
confused with Neal.

Regardless, I completely agree with everything you just said.

And, Yay for NuGet! Package management is the bomb.

-T


On Wed, Sep 21, 2011 at 7:43 PM, Michael Herndon
mhern...@wickedsoftware.net wrote:
 Nick,

 The last e-mail was out of line and out of context. If anything, emails like
 that can push people into emotional or motivational apathy towards working
 on a project.

 1) Lucene.Net will be getting nuget packages.   People can hate on it,
 grumble, or not use it, but its a viable distribution vehicle. Its going in.
  This thread was to gather feedback on how people that would use it, see
 themselves using it.

 2) Others might want alternatives to nuget that have not been provided yet.
  We should be open to providing distribution alternatives if enough people
 warrant it.  Its not apathetic or impassive to think to that there might be
 more than one way to distribute releases.

 3) Attack problems. Not people. If you believe a person is the problem, take
 the issue up with them offline. Those kinds of things are better face to
 face or through a phone call, or an exceptionally clear e-mail. Its way too
 easy for people to read into things too much or take things out of context
 in an e-mail.

 Attacking people also distracts people from focusing on the actual issue and
 prevents any actually logic or reason or sound argument from being heard.
  Its a good way to alienate people that you should actually be trying to
 persuade.

 4) If I was actually apathetic and severely short sighted, I would not be
 spending my own vacation time this weekend automating nuget packages with
 the build scripts for Lucene.Net or experimenting Portable Library Tools for
 Lucene.Net 4.x to see if we can get it working on mobile.  Nor would I  have
 spent my last 4 day weekend setting up jenkins and local builds of
 Lucene.Net.  Or put in the hours today to make sure the build scripts
 are granular enough to implement the smaller packages.

 5) If you feel so passionately about all this, why not work towards being a
 contributor or committer and lead by example ?


 - Michael



 Since I'm the one implementing Nuget into the build process and I have not
 played with the nuget server or creating a package, it just seem wise to
 gather feedback on how people saw themselves using the contrib packages.





 On Wed, Sep 21, 2011 at 9:00 PM, Nicholas Paldino [.NET/C# MVP] 
 casper...@caspershouse.com wrote:

 With all due respect, it's myopic opinions like yours and Michael's (his
 leans more towards apathy) which will harm the ability to get the project
 into the hands of people.

 I think (hope?) it can be agreed upon that the more that people are aware
 of
 Lucene.NET, the better it is for the project in general, and most
 importantly, the more potential that you have that someone will *contribute
 back* to it (and given what Lucene.NET has gone through in the past year,
 it
 desperately needs that participation).

 The fact of the matter is that Nuget puts packages in the hands of .NET
 developers, that leads to exposure and regardless of personal opinions on
 whether or not they *like* Nuget, it can't be denied that it's an
 *extremely* popular way to get libraries into people's projects.

 If you want to quibble over the actual numbers (and the definition of
 extremely popular) then that's fine, but here are the numbers you want:

 http://stats.nuget.org/

 If you want to just tell that audience to take a leap, that's fine, but I
 think it would be foolish to do so otherwise.

 Additionally, given that Lucene.NET is already on Nuget, isn't there *any*
 concern that there isn't an official distro?  Aren't you concerned about
 the
 integrity of the brand that so many of you fought to keep alive over the
 past year?  There's no guarantee that what's on Nuget will be the official
 releases/builds that come out of this project, and I'm a little surprised
 there isn't more concern over that aspect either.

 Just my $0.02

 - Nick

 -Original Message-
 From: Digy [mailto:digyd...@gmail.com]
 Sent: Wednesday, September 21, 2011 7:06 PM
 To: lucene-net-dev@lucene.apache.org
 Subject: RE: [Lucene.Net] Nuget, Lucene.Net, and Your Thoughts

 I am not against it, but personally think it as a toy.
 I am from the generation where people used vi to write codes.

 DIGY

 -Original Message-
 From: Aaron Powell [mailto:m...@aaron-powell.com]
 Sent: Thursday, September 22, 2011 1:56 AM
 To: lucene-net-dev@lucene.apache.org
 

Re: [Lucene.Net] Nuget, Lucene.Net, and Your Thoughts

2011-09-22 Thread casper...@caspershouse.com
Michael,
Troy is indeed right in that I was referring to Neal's email and not yours. 
 That was a mistake on my part and anything that sprung from that mistake 
was unintended and I apologize for that.
For the rest, see inline.



The last e-mail was out of line and out of context. If anything, emails 
like
that can push people into emotional or motivational apathy towards working
on a project.
I believe it is debatable whether or not it was out of context; yes, the 
Nuget packages *are* being created, but people started to give sweeping 
generalizations about Nuget, so the out-of-context nature had already been 
established.  While not an excuse for continuing to be out-of-context, I 
felt it exposed a larger issue which I was trying to address. 
 I disagree that it was out of line.  Can emails like that push people into 
emotional or motivational apathy towards working on a project?  Yes, it 
absolutely can.  However, I feel that's part of the problem, there's 
already too much emotional and motivational apathy around working on the 
Lucene.NET project and my statements were to show example that I felt 
harbored that environment; I believe that saying something that needs to be 
heard takes precedence over whether or not the audience wants to hear it.

1) Lucene.Net will be getting nuget packages.   People can hate on it,
grumble, or not use it, but its a viable distribution vehicle. Its going 
in.
  This thread was to gather feedback on how people that would use it, see
themselves using it.
Understood.  This is a very good thing.  See my previous comments on how 
the thread changed. 

2) Others might want alternatives to nuget that have not been provided 
yet.
 We should be open to providing distribution alternatives if enough people
warrant it.  Its not apathetic or impassive to think to that there might 
be
more than one way to distribute releases.
It was never implied that Nuget should be the only means of distribution.  
This falls outside the scope of the points I was trying to make.  FWIW, any 
distribution method that maintains the integrity of the project releases 
and helps to distribute those releases to the most people possible and also 
reduces the barrier to entry is a good thing. 

3) Attack problems. Not people. If you believe a person is the problem, 
take
the issue up with them offline. Those kinds of things are better face to
face or through a phone call, or an exceptionally clear e-mail. Its way 
too
easy for people to read into things too much or take things out of context
in an e-mail.
When the problem *is the people* (or at least, their opinions on the 
project which have an impact on it), then unfortunately, they are one in 
the same.  I believe there is a systemic problem with many of the opinions 
that prevent the growth of the project.  While I believe that those are the 
symptoms, it can't be argued that there *isn't* a problem with the project 
on some level, hence Lucene.NET going into incubation status. 
 I'm trying to point out an example of what I feel part (if not most or 
all) of the problem is.

Attacking people also distracts people from focusing on the actual issue 
and
prevents any actually logic or reason or sound argument from being heard.
 Its a good way to alienate people that you should actually be trying to
persuade.
Agreed, but see above in reference to people or aspects of people being the 
problem. 

4) If I was actually apathetic and severely short sighted, I would not be
spending my own vacation time this weekend automating nuget packages with
the build scripts for Lucene.Net or experimenting Portable Library Tools 
for
Lucene.Net 4.x to see if we can get it working on mobile.  Nor would I  
have
spent my last 4 day weekend setting up jenkins and local builds of
Lucene.Net.  Or put in the hours today to make sure the build scripts
are granular enough to implement the smaller packages.
Already addressed. 

5) If you feel so passionately about all this, why not work towards being 
a
contributor or committer and lead by example ?

When I first started using Lucene.NET, I did try to make a handful 
contributions, as well as had a few prolonged conversations about the 
process and vision of the project (at the time, it was to maintain a 
line-by-line port of the project). 
 At that point, the examples were not well-received (which was not 
something I took personally, it was simply a matter of not having 
compatible visions) nor did they foster leadership, so I diverted my 
energies elsewhere.  I might divert my energy back when I feel those 
visions are more compatible. 
 I've seen some underpinnings, but not enough, frankly, to warrant my 
participation as a contributor or committer to the project. 
 Also, it should be noted that my level of participation in the project is 
not relevant to providing an opinion as to why the project is struggling.  
I appreciate trying to encourage people to participate, but it 

RE: [Lucene.Net] 2.9.4

2011-09-22 Thread Prescott Nasser

Before I go replacing all the volatile fields I wanted to run this past the 
list:

 

private System.IO.StreamWriter infoStream;


into

 

private object o = new object();
private System.IO.StreamWriter _infoStream;
private System.IO.StreamWriter infoStream
{
 get
 {
lock (o)
{
return _infoStream;
}
 }
set
{
lock (o)
{
_infoStream = value;
}
}
 }  

 

 

Sorry, I don't normally deal with locks..

 

Thanks for any guidance

 

~P


 @Prescott,
 Can the volatile fields be wrapped in a lock statement and code that access
 those fields with replaced with call to a property /method that wraps access
 to that field?




 On Wed, Sep 21, 2011 at 1:36 PM, Troy Howard thowar...@gmail.com wrote:

  I thought it was:
 
  2.9.2 and before are 2.0 compatible
  2.9.4 and before are 3.5 compatible
  After 2.9.4 are 4.0 compatible
 
  Thanks,
  Troy
 
  On Wed, Sep 21, 2011 at 10:15 AM, Michael Herndon
  mhern...@wickedsoftware.net wrote:
   if thats the case, then well need conditional statements for including
   ThreadLocalT
  
   On Wed, Sep 21, 2011 at 12:47 PM, Prescott Nasser geobmx...@hotmail.com
  wrote:
  
   I thought this was after 2.9.4
  
   Sent from my Windows Phone
  
   -Original Message-
   From: Michael Herndon
   Sent: Wednesday, September 21, 2011 8:30 AM
   To: lucene-net-dev@lucene.apache.org
   Cc: lucene-net-...@incubator.apache.org
   Subject: Re: [Lucene.Net] 2.9.4
  
   @Robert,
  
   I believe the overwhelming consensus on the mailing list vote was to
  move
   to
   .NET 4.0 and drop support for previous versions.
  
   I'll take care of build scripts issue while they being refactored into
   smaller chunks this week.
  
   @Troy, Agreed.
  
   On Wed, Sep 21, 2011 at 8:08 AM, Robert Jordan robe...@gmx.net wrote:
  
On 20.09.2011 23:48, Prescott Nasser wrote:
   
Hey all seems like we are set with 2.9.4? Feedback has been positive
  and
its been quiet. Do we feel ready to vote for a new release?
   
   
I don't know if the build infrastructure is part of the
release. If yes, then there is an open issue:
   
Contrib doesn't build right now because there
are some assembly name mismatches between certain *.csproj
files and build/scripts/contrib.targets.
   
The following patches should fix the issue:
   
https://github.com/robert-j/**lucene.net/commit/**
c5218bca56c19b3407648224781eec**7316994a39
  
  https://github.com/robert-j/lucene.net/commit/c5218bca56c19b3407648224781eec7316994a39
   
   
https://github.com/robert-j/**lucene.net/commit/**
50bad187655d59968d51d472b57c2a**40e201d663
  
  https://github.com/robert-j/lucene.net/commit/50bad187655d59968d51d472b57c2a40e201d663
   
   
   
Also, the fix for [LUCENENET-358] is basically making
Lucene.Net.dll a .NET 4.0-only assembly:
   
https://github.com/apache/**lucene.net/commit/**
23ea6f52362fc7dbce48fd012cea12**9a7350c73c
  
  https://github.com/apache/lucene.net/commit/23ea6f52362fc7dbce48fd012cea129a7350c73c
   
   
Did we agree about abandoning .NET = 3.5?
   
Robert
   
   
  
  


RE: [Lucene.Net] 2.9.4

2011-09-22 Thread Prescott Nasser

The line before had volatile in it..

 

private volatile System.IO.StreamWriter infoStream;


 From: geobmx...@hotmail.com
 To: lucene-net-dev@lucene.apache.org
 Date: Thu, 22 Sep 2011 20:14:41 -0700
 Subject: RE: [Lucene.Net] 2.9.4


 Before I go replacing all the volatile fields I wanted to run this past the 
 list:



 private System.IO.StreamWriter infoStream;


 into



 private object o = new object();
 private System.IO.StreamWriter _infoStream;
 private System.IO.StreamWriter infoStream
 {
 get
 {
 lock (o)
 {
 return _infoStream;
 }
 }
 set
 {
 lock (o)
 {
 _infoStream = value;
 }
 }
 }





 Sorry, I don't normally deal with locks..



 Thanks for any guidance



 ~P

 
  @Prescott,
  Can the volatile fields be wrapped in a lock statement and code that access
  those fields with replaced with call to a property /method that wraps access
  to that field?
 
 
 
 
  On Wed, Sep 21, 2011 at 1:36 PM, Troy Howard thowar...@gmail.com wrote:
 
   I thought it was:
  
   2.9.2 and before are 2.0 compatible
   2.9.4 and before are 3.5 compatible
   After 2.9.4 are 4.0 compatible
  
   Thanks,
   Troy
  
   On Wed, Sep 21, 2011 at 10:15 AM, Michael Herndon
   mhern...@wickedsoftware.net wrote:
if thats the case, then well need conditional statements for including
ThreadLocalT
   
On Wed, Sep 21, 2011 at 12:47 PM, Prescott Nasser geobmx...@hotmail.com
   wrote:
   
I thought this was after 2.9.4
   
Sent from my Windows Phone
   
-Original Message-
From: Michael Herndon
Sent: Wednesday, September 21, 2011 8:30 AM
To: lucene-net-dev@lucene.apache.org
Cc: lucene-net-...@incubator.apache.org
Subject: Re: [Lucene.Net] 2.9.4
   
@Robert,
   
I believe the overwhelming consensus on the mailing list vote was to
   move
to
.NET 4.0 and drop support for previous versions.
   
I'll take care of build scripts issue while they being refactored into
smaller chunks this week.
   
@Troy, Agreed.
   
On Wed, Sep 21, 2011 at 8:08 AM, Robert Jordan robe...@gmx.net wrote:
   
 On 20.09.2011 23:48, Prescott Nasser wrote:

 Hey all seems like we are set with 2.9.4? Feedback has been positive
   and
 its been quiet. Do we feel ready to vote for a new release?


 I don't know if the build infrastructure is part of the
 release. If yes, then there is an open issue:

 Contrib doesn't build right now because there
 are some assembly name mismatches between certain *.csproj
 files and build/scripts/contrib.targets.

 The following patches should fix the issue:

 https://github.com/robert-j/**lucene.net/commit/**
 c5218bca56c19b3407648224781eec**7316994a39
   
   https://github.com/robert-j/lucene.net/commit/c5218bca56c19b3407648224781eec7316994a39


 https://github.com/robert-j/**lucene.net/commit/**
 50bad187655d59968d51d472b57c2a**40e201d663
   
   https://github.com/robert-j/lucene.net/commit/50bad187655d59968d51d472b57c2a40e201d663



 Also, the fix for [LUCENENET-358] is basically making
 Lucene.Net.dll a .NET 4.0-only assembly:

 https://github.com/apache/**lucene.net/commit/**
 23ea6f52362fc7dbce48fd012cea12**9a7350c73c
   
   https://github.com/apache/lucene.net/commit/23ea6f52362fc7dbce48fd012cea129a7350c73c


 Did we agree about abandoning .NET = 3.5?

 Robert


   
   
   

Re: [Lucene.Net] 2.9.4

2011-09-22 Thread Nicholas Paldino [.NET/C MVP#]
Prescott,

You really don't need to do that; reads and writes of reference fields are 
guaranteed to be atomic as per section 5.5 of the C# Language Specufication 
(Atomicity of variable references)

If you were doing other operations beyond the read and write that you wanted to 
be atomic, then the lock statement is appropriate, but in this case it's not.

The volatile keyword in this case (assuming no lock) would absolutely be needed 
to guarantee that the variable has the most up-to-date value at the time of 
access; using lock does this for you and makes volatile unnecessary.

- Nick 



On Sep 22, 2011, at 11:14 PM, Prescott Nasser geobmx...@hotmail.com wrote:

 
 Before I go replacing all the volatile fields I wanted to run this past the 
 list:
 
 
 
 private System.IO.StreamWriter infoStream;
 
 
 into
 
 
 
 private object o = new object();
 private System.IO.StreamWriter _infoStream;
 private System.IO.StreamWriter infoStream
 {
 get
 {
lock (o)
{
return _infoStream;
}
 }
set
{
lock (o)
{
_infoStream = value;
}
}
 }  
 
 
 
 
 
 Sorry, I don't normally deal with locks..
 
 
 
 Thanks for any guidance
 
 
 
 ~P
 
 
 @Prescott,
 Can the volatile fields be wrapped in a lock statement and code that access
 those fields with replaced with call to a property /method that wraps access
 to that field?
 
 
 
 
 On Wed, Sep 21, 2011 at 1:36 PM, Troy Howard thowar...@gmail.com wrote:
 
 I thought it was:
 
 2.9.2 and before are 2.0 compatible
 2.9.4 and before are 3.5 compatible
 After 2.9.4 are 4.0 compatible
 
 Thanks,
 Troy
 
 On Wed, Sep 21, 2011 at 10:15 AM, Michael Herndon
 mhern...@wickedsoftware.net wrote:
 if thats the case, then well need conditional statements for including
 ThreadLocalT
 
 On Wed, Sep 21, 2011 at 12:47 PM, Prescott Nasser geobmx...@hotmail.com
 wrote:
 
 I thought this was after 2.9.4
 
 Sent from my Windows Phone
 
 -Original Message-
 From: Michael Herndon
 Sent: Wednesday, September 21, 2011 8:30 AM
 To: lucene-net-dev@lucene.apache.org
 Cc: lucene-net-...@incubator.apache.org
 Subject: Re: [Lucene.Net] 2.9.4
 
 @Robert,
 
 I believe the overwhelming consensus on the mailing list vote was to
 move
 to
 .NET 4.0 and drop support for previous versions.
 
 I'll take care of build scripts issue while they being refactored into
 smaller chunks this week.
 
 @Troy, Agreed.
 
 On Wed, Sep 21, 2011 at 8:08 AM, Robert Jordan robe...@gmx.net wrote:
 
 On 20.09.2011 23:48, Prescott Nasser wrote:
 
 Hey all seems like we are set with 2.9.4? Feedback has been positive
 and
 its been quiet. Do we feel ready to vote for a new release?
 
 
 I don't know if the build infrastructure is part of the
 release. If yes, then there is an open issue:
 
 Contrib doesn't build right now because there
 are some assembly name mismatches between certain *.csproj
 files and build/scripts/contrib.targets.
 
 The following patches should fix the issue:
 
 https://github.com/robert-j/**lucene.net/commit/**
 c5218bca56c19b3407648224781eec**7316994a39
 
 https://github.com/robert-j/lucene.net/commit/c5218bca56c19b3407648224781eec7316994a39
 
 
 https://github.com/robert-j/**lucene.net/commit/**
 50bad187655d59968d51d472b57c2a**40e201d663
 
 https://github.com/robert-j/lucene.net/commit/50bad187655d59968d51d472b57c2a40e201d663
 
 
 
 Also, the fix for [LUCENENET-358] is basically making
 Lucene.Net.dll a .NET 4.0-only assembly:
 
 https://github.com/apache/**lucene.net/commit/**
 23ea6f52362fc7dbce48fd012cea12**9a7350c73c
 
 https://github.com/apache/lucene.net/commit/23ea6f52362fc7dbce48fd012cea129a7350c73c
 
 
 Did we agree about abandoning .NET = 3.5?
 
 Robert
 
 
 
 
 




Re: [Lucene.Net] Contribution

2011-09-22 Thread Stefan Bodewig
On 2011-09-22, Danijel Kecman wrote:

 i would like to contribute.

welcome Danijel.

The best way to start contributing is by looking at the issues in JIRA
pick one and start providing patches there - as well as engaging in
discussion on this list.

Cheers

Stefan


RE: [Lucene.Net] 2.9.4

2011-09-22 Thread Prescott Nasser

I see, so you're essentially saying, I can simply remove the volatile keyword 
in this case, and it's exactly the same becuase I am only using it for read and 
writes?

 

So the case I'd need to be more careful of is if an manipulation method is 
called on the object itself - suppose:

 

public person {

_name = Me   

 

public changeName(string n)

{

   _name = n;

}

 

}

 

If one were to write 

 

public volatile person p = new person();

p.changeName(You);

 

the call to the method would in this case need a lock (which volatile gives) to 
gaurentee that changeName occurs before other items read or overwrite variable 
p?

 

but a straight read or write won't matter:

 

p = new person();

p = new person():

x = p;

p = new person();

 

Here, I wouldn't need the volatile keyword becuase those are merely reads and 
wrights?



 CC: lucene-net-dev@lucene.apache.org
 From: casper...@caspershouse.com
 Date: Thu, 22 Sep 2011 23:58:42 -0400
 To: lucene-net-dev@lucene.apache.org
 Subject: Re: [Lucene.Net] 2.9.4

 Prescott,

 You really don't need to do that; reads and writes of reference fields are 
 guaranteed to be atomic as per section 5.5 of the C# Language Specufication 
 (Atomicity of variable references)

 If you were doing other operations beyond the read and write that you wanted 
 to be atomic, then the lock statement is appropriate, but in this case it's 
 not.

 The volatile keyword in this case (assuming no lock) would absolutely be 
 needed to guarantee that the variable has the most up-to-date value at the 
 time of access; using lock does this for you and makes volatile unnecessary.

 - Nick



 On Sep 22, 2011, at 11:14 PM, Prescott Nasser geobmx...@hotmail.com wrote:

 
  Before I go replacing all the volatile fields I wanted to run this past the 
  list:
 
 
 
  private System.IO.StreamWriter infoStream;
 
 
  into
 
 
 
  private object o = new object();
  private System.IO.StreamWriter _infoStream;
  private System.IO.StreamWriter infoStream
  {
  get
  {
  lock (o)
  {
  return _infoStream;
  }
  }
  set
  {
  lock (o)
  {
  _infoStream = value;
  }
  }
  }
 
 
 
 
 
  Sorry, I don't normally deal with locks..
 
 
 
  Thanks for any guidance
 
 
 
  ~P
 
 
  @Prescott,
  Can the volatile fields be wrapped in a lock statement and code that access
  those fields with replaced with call to a property /method that wraps 
  access
  to that field?
 
 
 
 
  On Wed, Sep 21, 2011 at 1:36 PM, Troy Howard thowar...@gmail.com wrote:
 
  I thought it was:
 
  2.9.2 and before are 2.0 compatible
  2.9.4 and before are 3.5 compatible
  After 2.9.4 are 4.0 compatible
 
  Thanks,
  Troy
 
  On Wed, Sep 21, 2011 at 10:15 AM, Michael Herndon
  mhern...@wickedsoftware.net wrote:
  if thats the case, then well need conditional statements for including
  ThreadLocalT
 
  On Wed, Sep 21, 2011 at 12:47 PM, Prescott Nasser geobmx...@hotmail.com
  wrote:
 
  I thought this was after 2.9.4
 
  Sent from my Windows Phone
 
  -Original Message-
  From: Michael Herndon
  Sent: Wednesday, September 21, 2011 8:30 AM
  To: lucene-net-dev@lucene.apache.org
  Cc: lucene-net-...@incubator.apache.org
  Subject: Re: [Lucene.Net] 2.9.4
 
  @Robert,
 
  I believe the overwhelming consensus on the mailing list vote was to
  move
  to
  .NET 4.0 and drop support for previous versions.
 
  I'll take care of build scripts issue while they being refactored into
  smaller chunks this week.
 
  @Troy, Agreed.
 
  On Wed, Sep 21, 2011 at 8:08 AM, Robert Jordan robe...@gmx.net wrote:
 
  On 20.09.2011 23:48, Prescott Nasser wrote:
 
  Hey all seems like we are set with 2.9.4? Feedback has been positive
  and
  its been quiet. Do we feel ready to vote for a new release?
 
 
  I don't know if the build infrastructure is part of the
  release. If yes, then there is an open issue:
 
  Contrib doesn't build right now because there
  are some assembly name mismatches between certain *.csproj
  files and build/scripts/contrib.targets.
 
  The following patches should fix the issue:
 
  https://github.com/robert-j/**lucene.net/commit/**
  c5218bca56c19b3407648224781eec**7316994a39
 
  https://github.com/robert-j/lucene.net/commit/c5218bca56c19b3407648224781eec7316994a39
 
 
  https://github.com/robert-j/**lucene.net/commit/**
  50bad187655d59968d51d472b57c2a**40e201d663
 
  https://github.com/robert-j/lucene.net/commit/50bad187655d59968d51d472b57c2a40e201d663
 
 
 
  Also, the fix for [LUCENENET-358] is basically making
  Lucene.Net.dll a .NET 4.0-only assembly:
 
  https://github.com/apache/**lucene.net/commit/**
  23ea6f52362fc7dbce48fd012cea12**9a7350c73c
 
  https://github.com/apache/lucene.net/commit/23ea6f52362fc7dbce48fd012cea129a7350c73c
 
 
  Did we agree about abandoning .NET = 3.5?
 
  Robert