<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 22:42:28 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>[COMPASS-6254] Investigate changes in NODE-4440: Update tsconfig compile target to more modern JS for bson V5</title>
                <link>https://jira.mongodb.org/browse/COMPASS-6254</link>
                <project id="13182" key="COMPASS">Compass </project>
                    <description>&lt;h3&gt;&lt;a name=&quot;UseCase&quot;&gt;&lt;/a&gt;Use Case&lt;/h3&gt;

&lt;p&gt;As a node engineer&lt;br/&gt;
I want remove manual prototype manipulation and function constructor logic.&lt;br/&gt;
So that we can use modern JS features, offering a better user experience&#160;&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;UserImpact&quot;&gt;&lt;/a&gt;User Impact&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;JS emitted from TS will use class syntax for-of loops will be unmodified etc.&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;Dependencies&quot;&gt;&lt;/a&gt;Dependencies&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;The driver type logic.&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;Unknowns&quot;&gt;&lt;/a&gt;Unknowns&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;The _bsontype property determines serialization
	&lt;ul&gt;
		&lt;li&gt;Our driver relies on {{extends { _bsontype: string }}} type logic for preventing BSON type from having their keys be suggested in nested documents, will that still work?&lt;/li&gt;
		&lt;li&gt;_bsontype was defined on the prototype of the function, we cannot maintain that since in newer JS emit syntax the _bsontype will be defined as an instance class property.
		&lt;ul&gt;
			&lt;li&gt;Will moving it to a getter impact users? Doubtful, it will still be defined on the prototype, non-enumerable, and implicitly readonly since only a getter will be defined.&lt;/li&gt;
		&lt;/ul&gt;
		&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;AcceptanceCriteria&quot;&gt;&lt;/a&gt;Acceptance Criteria&lt;/h3&gt;
&lt;h3&gt;&lt;a name=&quot;ImplementationRequirements&quot;&gt;&lt;/a&gt;Implementation Requirements&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;Change all _bsontype defineProperty calls to &lt;tt&gt;get _bsontype()&lt;/tt&gt; syntax.
	&lt;ul&gt;
		&lt;li&gt;Consider adding &lt;tt&gt;get &lt;span class=&quot;error&quot;&gt;&amp;#91;Symbol.toStringTag&amp;#93;&lt;/span&gt;()&lt;/tt&gt; that calls the _bsontype getter&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Remove the &lt;tt&gt;this instanceof X&lt;/tt&gt; logic at the top of each BSON type constructor (it handles when the class is called without &quot;new&quot; which will now be impossible)&lt;/li&gt;
	&lt;li&gt;Timestamp class type info might be cleaned up here, it can override the getter instead of the current manual TS logic to remove the _bsontype from the Long super class&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;TestingRequirements&quot;&gt;&lt;/a&gt;Testing Requirements&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;Verify _bsontype getters are on all type classes&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;DocumentationRequirements&quot;&gt;&lt;/a&gt;Documentation Requirements&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;em&gt;DOCSP ticket, API docs, etc&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;FollowUpRequirements&quot;&gt;&lt;/a&gt;Follow Up Requirements&lt;/h3&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;em&gt;additional tickets to file, required releases, etc&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="2167251">COMPASS-6254</key>
            <summary>Investigate changes in NODE-4440: Update tsconfig compile target to more modern JS for bson V5</summary>
                <type id="10501" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14720&amp;avatarType=issuetype">Investigation</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="9">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="dbeng-pm-bot">PM Bot</reporter>
                        <labels>
                            <label>node-driver</label>
                    </labels>
                <created>Wed, 26 Oct 2022 11:16:48 +0000</created>
                <updated>Fri, 6 Jan 2023 19:08:58 +0000</updated>
                            <resolved>Fri, 6 Jan 2023 19:08:58 +0000</resolved>
                                                    <fixVersion>No version</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="5096560" author="rhys.howell" created="Fri, 6 Jan 2023 19:08:58 +0000"  >&lt;p&gt;Doesn&apos;t look like this impacts our tools.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="2091885">NODE-4440</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 6 Jan 2023 19:08:58 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        1 year, 4 weeks, 5 days ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<s><a href='https://jira.mongodb.org/browse/NODE-4440'>NODE-4440</a></s>]]></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_10257" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Documentation Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="11861"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>rhys.howell@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            1 year, 4 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>dbeng-pm-bot</customfieldvalue>
            <customfieldvalue>rhys.howell@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i1fgrz:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i0y48o:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i1f2xb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>