<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:46:57 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-4016] Update libmongocrypt C# bindings for macOS m1</title>
                <link>https://jira.mongodb.org/browse/CSHARP-4016</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;&lt;b&gt;Background&lt;/b&gt;&lt;br/&gt;
See &lt;a href=&quot;https://jira.mongodb.org/browse/MONGOCRYPT-340&quot; title=&quot;Add support for darwin-arm64 compilation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MONGOCRYPT-340&quot;&gt;&lt;del&gt;MONGOCRYPT-340&lt;/del&gt;&lt;/a&gt;. Updating C# bindings to support macOS m1 build.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/MONGOCRYPT-340&quot; title=&quot;Add support for darwin-arm64 compilation&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MONGOCRYPT-340&quot;&gt;&lt;del&gt;MONGOCRYPT-340&lt;/del&gt;&lt;/a&gt; added the &lt;tt&gt;build-and-test-and-upload&lt;/tt&gt; task. See &lt;span class=&quot;error&quot;&gt;&amp;#91;this PR&amp;#93;&lt;/span&gt;(&lt;a href=&quot;https://github.com/mongodb/libmongocrypt/pull/234#issue-1100755034&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/libmongocrypt/pull/234#issue-1100755034&lt;/a&gt;) for a link to a patch build with the &lt;tt&gt;build-and-test-csharp&lt;/tt&gt; task error logs.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Scope&lt;/b&gt;&lt;br/&gt;
TODO. This may require updating the &lt;a href=&quot;https://github.com/mongodb/libmongocrypt/blob/f4fcabfca2873a73c841556eed0e4a7370a2dfba/bindings/cs/Scripts/build.cake#L72-L81&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;build.cake&lt;/a&gt; script to add a download for macOS m1 (darwin arm64).&lt;/p&gt;</description>
                <environment></environment>
        <key id="1965750">CSHARP-4016</key>
            <summary>Update libmongocrypt C# bindings for macOS m1</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</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="13201">Fixed</resolution>
                                        <assignee username="james.kovacs@mongodb.com">James Kovacs</assignee>
                                    <reporter username="kevin.albertson@mongodb.com">Kevin Albertson</reporter>
                        <labels>
                    </labels>
                <created>Tue, 18 Jan 2022 15:00:38 +0000</created>
                <updated>Sat, 28 Oct 2023 11:47:22 +0000</updated>
                            <resolved>Wed, 31 Aug 2022 21:53:21 +0000</resolved>
                                                    <fixVersion>2.17.0</fixVersion>
                                                        <votes>2</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="4793633" author="james.kovacs" created="Wed, 31 Aug 2022 21:53:21 +0000"  >&lt;p&gt;2.17.0 shipped libmongocrypt as a universal binary with both x64 and arm64 code forks. Testing on Apple M1 indicates that this was sufficient and no additional changes are required to make MongoDB.Libmongocrypt work on Apple M1.&lt;/p&gt;</comment>
                            <comment id="4417103" author="james.kovacs" created="Wed, 16 Mar 2022 22:28:24 +0000"  >&lt;p&gt;Hi, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=vah%40oveo.io&quot; class=&quot;user-hover&quot; rel=&quot;vah@oveo.io&quot;&gt;vah@oveo.io&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;We were blocked on &lt;a href=&quot;https://jira.mongodb.org/browse/MONGOCRYPT-372&quot; title=&quot;Package Apple M1 support as Universal Binary&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MONGOCRYPT-372&quot;&gt;&lt;del&gt;MONGOCRYPT-372&lt;/del&gt;&lt;/a&gt;, but that work has been completed. Now it is just a matter of scheduling the work compared to other features. I don&apos;t have a release date for this feature, but we will likely do it along with updating our Snappy and Zstd wire protocol compression libraries as they require M1 support as well. (See &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-4101&quot; title=&quot;Update Snappy/Zstd to support M1&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-4101&quot;&gt;&lt;del&gt;CSHARP-4101&lt;/del&gt;&lt;/a&gt;.)&lt;/p&gt;

&lt;p&gt;NOTE: .NET only supports M1 natively starting with .NET 6. If you are still building on .NET 5 or earlier, your .NET applications will run through Rosetta 2 and the x64 &lt;tt&gt;libmongocrypt.dylib&lt;/tt&gt; will be cross-compiled automatically. Even if you are using .NET 6, you can target x64 and run through Rosetta 2 until we package &lt;tt&gt;libmongocrypt.dylib&lt;/tt&gt; Universal binary with M1 support.&lt;/p&gt;

&lt;p&gt;Sincerely,&lt;br/&gt;
James&lt;/p&gt;</comment>
                            <comment id="4417065" author="JIRAUSER1265504" created="Wed, 16 Mar 2022 22:09:59 +0000"  >&lt;p&gt;Hey, @James Jovacs&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Do you know what is the blocker for this task?&lt;/p&gt;</comment>
                            <comment id="4309565" author="james.kovacs" created="Mon, 24 Jan 2022 16:11:53 +0000"  >&lt;p&gt;On the M1, Intel applications - including .NET 5 and earlier - are cross-compiled through Rosetta2 which converts Intel machine code to ARM machine code. (The M1 - just like the A-series for iPhones and iPads - is a custom ARM processor.) .NET 6 supports the M1 and will run it natively without cross compilation through Rosetta2.&lt;/p&gt;

&lt;p&gt;On OSX, we use &lt;tt&gt;dylib&lt;/tt&gt; for compression and CSFLE. &lt;tt&gt;dylib&lt;/tt&gt; is Apple&#8217;s version of &lt;tt&gt;DLLs&lt;/tt&gt; (Windows) or &lt;tt&gt;.so&lt;/tt&gt; (Linux). A &lt;tt&gt;dylib&lt;/tt&gt; can contain machine code for multiple platforms. Right now our &lt;tt&gt;dylib&lt;/tt&gt; packages only contain x86 and/or x64 code. When we recompile them to support M1, they will also contain ARM32 and/or ARM64 code. It will be a matter of ensuring that all our unmanaged dependencies are re-compiled with ARM support and testing them. The loader in the Darwin kernel should handle all the hard magic of ensuring that the right machine code from the binary is executed.&lt;/p&gt;

&lt;p&gt;.NET applications will run natively on .NET 6 on the M1, but until we update our compression and CSFLE unmanaged dependencies to support the M1, users will be unable to use those features natively and would have to configure their .NET 6 applications to run through Rosetta2 (but only if they required compression or CSFLE).&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="2058536">CSHARP-4189</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10020">
                    <name>Gantt Dependency</name>
                                                                <inwardlinks description="has to be done after">
                                        <issuelink>
            <issuekey id="1969570">MONGOCRYPT-372</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                        <issuelink>
            <issuekey id="1892027">MONGOCRYPT-340</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="2003505">CSHARP-4101</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Backwards Compatibility</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10038"><![CDATA[Fully Compatible]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5006R00001mE08TQAS]]]></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|i0ins4:</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>