<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:33:59 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>[GODRIVER-329] Make bson.Decoder an interface</title>
                <link>https://jira.mongodb.org/browse/GODRIVER-329</link>
                <project id="14289" key="GODRIVER">Go Driver</project>
                    <description>&lt;p&gt;To support using pluggable bson.Decoders, make the bson.Decoder type an interface. This will be useful for adding mgo/bson compatibility.&lt;/p&gt;</description>
                <environment></environment>
        <key id="521368">GODRIVER-329</key>
            <summary>Make bson.Decoder an interface</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</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="sam.kleinman">Sam Kleinman</assignee>
                                    <reporter username="kris.brandow@mongodb.com">Kristofer Brandow</reporter>
                        <labels>
                    </labels>
                <created>Tue, 3 Apr 2018 20:19:36 +0000</created>
                <updated>Sat, 28 Oct 2023 11:39:40 +0000</updated>
                            <resolved>Tue, 15 May 2018 22:10:42 +0000</resolved>
                                    <version>0.0.2</version>
                                    <fixVersion>0.0.5</fixVersion>
                                    <component>BSON</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="1892282" author="xgen-internal-githook" created="Tue, 15 May 2018 22:09:38 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;email&apos;: &apos;garen@tychoish.com&apos;, &apos;username&apos;: &apos;tychoish&apos;, &apos;name&apos;: &apos;tycho garen&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/GODRIVER-329&quot; title=&quot;Make bson.Decoder an interface&quot; class=&quot;issue-link&quot; data-issue-key=&quot;GODRIVER-329&quot;&gt;&lt;del&gt;GODRIVER-329&lt;/del&gt;&lt;/a&gt;: decoder interface&lt;/p&gt;

&lt;p&gt;Change-Id: Ib2823cd16bc5c66dc9b67fe9b4f62c22a9e96eb0&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/commit/60a04ea0aba1cbffa678a872bff3ab5225fa5c74&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver/commit/60a04ea0aba1cbffa678a872bff3ab5225fa5c74&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="1891688" author="kris.brandow" created="Tue, 15 May 2018 15:04:25 +0000"  >&lt;p&gt;These are valid questions that I think can be answered with the new encoder/decoder design I&apos;m writing. For now, let&apos;s just make this type an interface, since it&apos;ll get us one step closer to our goal.&lt;/p&gt;</comment>
                            <comment id="1891267" author="samk" created="Tue, 15 May 2018 03:36:41 +0000"  >&lt;p&gt;I&apos;d like to have more context with how you want this to work. &lt;/p&gt;

&lt;p&gt;It&apos;s fairly straight forward to move the Decoder into an interface, but it&apos;s not clear how this would be useful for any kind of plug-ability without a layer of factories and what not as the decoder (and encoder) are presently stateful. I&apos;m willing to make the change (and I&apos;m generally in favor of exposing package functionality via interfaces rather than opaque concrete types,) but I don&apos;t think that this alone will solve our problem.  &lt;/p&gt;

&lt;p&gt;Is there any reason to not just have an EncoderFunc and DecoderFunc types that have the signatures of Marshal/Unmarshal, and then make setting those an option on the client (which would propagate (and maybe me configurable at the level of) db/collection options. This means making transform document private, which is probably good.) and reworking slightly to get the plug-able behavior we want. &lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>GODRIVER-412</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|ht06jb:</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>