Skip to content

v3: Embedding in a web site - build warnings about WindowsBase #1801

@fluffynuts

Description

@fluffynuts

Description

I'm working on a legacy site and was going to upgrade IronPython to 3.4.1 (from 2.7), via nuget, and came cross build warnings in every project downstream from the one consuming ironpython - conflicts between WindowsBase 4.0 (IronPython dependency afaik) and WindowsBase 6.0 (dotnet system library)

Downgrading back to 2.7 sorts out the issue (and, in retrospect, it's probably what I want, considering language changes between python 2 and python 3), but it seems to be as if embedding IronPython in anything other than a windows GUI app isn't fully supported - I shouldn't need wpf dlls in my deployment, especially as it's being shipped off to a linux container.

Is this intentional? Is there a different package I should use?

Steps to Reproduce

  1. create an asp.net website
  2. create a class library project which depends on ironpython and make the asp.net website depend on that
  3. build - this is when I see warnings

I've tried explicitly installing ironpython in the projects where the warning is emitted and that doesn't help. I'm reticent to apply assembly rebinds on a major version difference.

Expected behavior:

Should just build without requiring windows libraries

Actual behavior:

It seems like IronPython has a fairly hard dependency on WPF components (IronPython.Wpf.dll) which may make a lot of sense for GUI embedding, but makes little sense for, eg, a rules engine running in a service or website, and seems to tie the application to a win32 environment (but I'm not 100% sure - I backed out before attempting to break all the things 😅 )

  • problematic package: IronPython-3.4.1
  • .NET platform used: net8.0
  • Operating system used: windows (but the deployment target is linux)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions