<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:40:01 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[CSHARP-1572] Assembly Binding from 1.9.2.235 to 2.2.3.3</title>
                <link>https://jira.mongodb.org/browse/CSHARP-1572</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;Hey there.&lt;br/&gt;
We&apos;ve recently updated mongo from 1.9.X to 2.2.X and we have runtime binding issues.&lt;/p&gt;

&lt;p&gt;Assemblies build with 1.9.X wont work with 2.2.X redirection (looks like the old one is strongly signed and new its not).&lt;/p&gt;

&lt;p&gt;The error is usual:&lt;br/&gt;
Could not load file or assembly &apos;MongoDB.Bson, Version=1.9.2.235, Culture=neutral, PublicKeyToken=f686731cfb9cc103&apos; or one of its dependencies. &lt;br/&gt;
The located assembly&apos;s manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)&lt;/p&gt;

&lt;p&gt;Our web.config binding:&lt;br/&gt;
&amp;lt;dependentAssembly&amp;gt;&lt;br/&gt;
&amp;lt;assemblyIdentity name=&quot;MongoDB.Driver&quot; publicKeyToken=&quot;f686731cfb9cc103&quot; culture=&quot;neutral&quot; /&amp;gt;&lt;br/&gt;
&amp;lt;bindingRedirect oldVersion=&quot;0.0.0.0-2.2.3.3&quot; newVersion=&quot;2.2.3.3&quot; /&amp;gt;&lt;br/&gt;
      &amp;lt;/dependentAssembly&amp;gt;&lt;br/&gt;
      &amp;lt;dependentAssembly&amp;gt;&lt;br/&gt;
        &amp;lt;assemblyIdentity name=&quot;MongoDB.Bson&quot; publicKeyToken=&quot;f686731cfb9cc103&quot; culture=&quot;neutral&quot; /&amp;gt;&lt;br/&gt;
        &amp;lt;bindingRedirect oldVersion=&quot;0.0.0.0-2.2.3.3&quot; newVersion=&quot;2.2.3.3&quot; /&amp;gt;&lt;br/&gt;
      &amp;lt;/dependentAssembly&amp;gt;      &lt;/p&gt;

&lt;p&gt;Any helper appreciated.&lt;br/&gt;
Thanks&lt;/p&gt;



</description>
                <environment></environment>
        <key id="266116">CSHARP-1572</key>
            <summary>Assembly Binding from 1.9.2.235 to 2.2.3.3</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</type>
                                            <priority id="2" iconUrl="https://jira.mongodb.org/images/icons/priorities/critical.svg">Critical - P2</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="betonWorks">Aleksander [X]</reporter>
                        <labels>
                            <label>question</label>
                    </labels>
                <created>Wed, 17 Feb 2016 16:06:52 +0000</created>
                <updated>Fri, 5 Apr 2019 13:58:32 +0000</updated>
                            <resolved>Wed, 17 Feb 2016 21:21:10 +0000</resolved>
                                    <version>2.2.3</version>
                                                    <component>BSON</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="1176357" author="craiggwilson" created="Wed, 17 Feb 2016 20:50:44 +0000"  >&lt;p&gt;You can try, but I&apos;m confident that dropping these libraries in will not work.&lt;/p&gt;</comment>
                            <comment id="1176353" author="betonworks" created="Wed, 17 Feb 2016 20:48:51 +0000"  >&lt;p&gt;I see.&lt;br/&gt;
No... no GAC we drop new assemblies in the new package folder so I guess that I will have to release all DLL&apos;s build with new driver and distribute them forcing clients to update.&lt;br/&gt;
No chance that some of them build with 1.9.X can work with others build with 2.X+ as they finish up is same /bin folder.&lt;/p&gt;</comment>
                            <comment id="1176274" author="craiggwilson" created="Wed, 17 Feb 2016 20:16:04 +0000"  >&lt;p&gt;So, are you adding these assemblies to the GAC? Otherwise, you are just replacing the libraries in the folder.&lt;/p&gt;

&lt;p&gt;This is a major upgrade. We mostly kept compile-time compatibility with the old API, but I think there is about a 0 percent chance that dropping in a new dll will work with an application that wasn&apos;t compiled with the new version. As I&apos;m not familiar with what you are doing or how your product is distributed, I can&apos;t suggest anything that might make sense other than to rebuild and redistribute your &quot;assemblies built with 1.9.X&quot;.&lt;/p&gt;</comment>
                            <comment id="1176260" author="betonworks" created="Wed, 17 Feb 2016 20:11:00 +0000"  >&lt;p&gt;Ouch &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.mongodb.org/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;br/&gt;
Thanks for reply Craig.&lt;/p&gt;

&lt;p&gt;I have already distributed assemblies built with 1.9.X and now we distribute DLL&apos;s with new version that finish up in same web apps.&lt;br/&gt;
Do you have any idea how to deal with this issue without breaking my clients not rolling back new packages to old Mongo Driver?&lt;/p&gt;

&lt;p&gt;Thanks again.&lt;/p&gt;</comment>
                            <comment id="1176218" author="craiggwilson" created="Wed, 17 Feb 2016 19:43:53 +0000"  >&lt;p&gt;Hi Aleksander,&lt;/p&gt;

&lt;p&gt;We do not sign the 2.x series of the driver. I suggest you look at &lt;a href=&quot;https://github.com/dsplaisted/strongnamer&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this&lt;/a&gt; to strong name the assemblies.&lt;/p&gt;

&lt;p&gt;In addition, I&apos;ll be surprised if this works. The functionality that used to be present in MongoDB.Driver is now located in MongoDB.Driver.Legacy. I&apos;d suggest you not do any binding redirects and recompile any existing libraries with the new binaries.&lt;/p&gt;

&lt;p&gt;Craig&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10012"><![CDATA[Major Change]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hsihxr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>