Giter Club home page Giter Club logo

Comments (12)

kkozmic avatar kkozmic commented on June 30, 2024

hey,

yes, Windsor will be updated soon.

As I see, Castle.Core-log4net package is pretty old.

Castle.Core-log4net 3.3 was released just a week ago... not that old I'd say...

as for upgrading to latest log4net it would be a breaking change, since log4net post version 1.2.10 is signed with a different key.

However, I think there's an unofficial package on nuget that points to the latest log4net

from core.

hikalkan avatar hikalkan commented on June 30, 2024

Thanks for response. I'm a big fan of Castle Windsor. I'm developing an application framework upon it (http://www.codeproject.com/Articles/768664/Introduction-to-ASP-NET-Boilerplate). So, I don't want to depend on a unofficial package. What if it is breaking change? Is it hard to change castle? I would want to change and send pull request if I could. Is it possible?

from core.

kkozmic avatar kkozmic commented on June 30, 2024

it’s a breaking change for people using log4net

basically if you’ve got a component in your application using older log4net if we upgrade Castle to use newer log4net your application will break and there seems to be no way around it.

-- 
Krzysztof Kozmic

From: Halil İbrahim Kalkan [email protected]
Reply: castleproject/Core [email protected]
Date: 5 May 2014 at 8:51:37 pm
To: castleproject/Core [email protected]
Cc: Krzysztof Koźmic [email protected]
Subject:  Re: [Core] Castle.Core-log4net update problem (#52)

Thanks for response. I'm a big fun of Castle Windsor. I'm developing an application framework upon it (http://www.codeproject.com/Articles/768664/Introduction-to-ASP-NET-Boilerplate). So, I don't want to depend on a unofficial package. What if it is breaking change? Is it hard to change castle? I would want to change and send pull request if I could. Is it possible?


Reply to this email directly or view it on GitHub.

from core.

hikalkan avatar hikalkan commented on June 30, 2024

OK, I understand. But people should update their component. If it is not possible, they just don't upgrade to latest version of castle's log4net intergration. Otherwise, castle will always be dependent to older log4net. It was 2 years ago log4net is updated.

from core.

kkozmic avatar kkozmic commented on June 30, 2024

actually, we might have a solution to that. See #53

from core.

leniel avatar leniel commented on June 30, 2024

+1 this has to be addressed indeed. 2 years outdated log4net reference is not a good thing. ;)

I tried updating to the latest log4net version but NuGet package manager always blocked it because of Castle.Windsor.

from core.

hikalkan avatar hikalkan commented on June 30, 2024

I think, istead of solution in #53, directly updating the log4net dependency is better. Who want to use older log4net can use older castle log4net intergration package, that's all. Why it's bad?

from core.

ottomatic avatar ottomatic commented on June 30, 2024

I agree that it's bad.
I just grabbed the latest packages of Castle.Windsor, Castle.Core, Castle.Core-log4net and Castle.LoggingFacility from nuget.

I would expect then to get dll:s that work well together. But they didn't.

It's no so much that the log4net reference was an old one, it's that the Castle componenents have a mismatch (version 3.2.0.0 of the Castle.Core and Castle.Services.Logging.Log4netIntegration are expected whereas version 3.3.0.43 are on disk).

I solved it by adding this to App.config:

  <runtime>    
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.3.0.0" newVersion="3.3.0.0" />
      </dependentAssembly>
    </assemblyBinding>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Castle.Services.Logging.Log4netIntegration" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.3.0.0" newVersion="3.3.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

from core.

leniel avatar leniel commented on June 30, 2024

Thanks @ottomatic!

Adding

<dependentAssembly>
        <assemblyIdentity name="Castle.Services.Logging.Log4netIntegration" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.3.0.0" newVersion="3.3.0.0" />
      </dependentAssembly>

fixed it on my side.

from core.

jeanjmnez avatar jeanjmnez commented on June 30, 2024

Hi, i'm having the same exact same issue, and the proposed solutions did not work, any other idea?

from core.

ssolomon avatar ssolomon commented on June 30, 2024

I was having the same issue, and the binding redirects above did not work. After taking a look at the version number of the Castle.Services.Logging.Log4netIntegration dll, it noticed it was version 3.2.0.0. So it tried the following and it worked. I find it very odd how they won't upgrade this thing.

<dependentAssembly> <assemblyIdentity name="Castle.Services.Logging.Log4netIntegration" publicKeyToken="407dd0808d44fbdc" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.3.0.0" newVersion="3.2.0.0" /> </dependentAssembly>


from core.

jonorossi avatar jonorossi commented on June 30, 2024

I find it very odd how they won't upgrade this thing.

@ssolomon this is a closed issue last active nearly a year ago, if you are having a problem please log a new issue with some reproduction steps. The Castle.Core-log4net 3.3.3 package was shipped in November 2014 well after this issue was created and closed.

from core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.