<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:25:07 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>[DRIVERS-2253] Remove spec versions and front matter</title>
                <link>https://jira.mongodb.org/browse/DRIVERS-2253</link>
                <project id="10980" key="DRIVERS">Drivers</project>
                    <description>&lt;div class=&quot;panel&quot; style=&quot;background-color: #fafbfc;border-color: #21313c;border-style: solid;border-width: 1px;&quot;&gt;&lt;div class=&quot;panelContent&quot; style=&quot;background-color: #fafbfc;&quot;&gt;
&lt;h3&gt;&lt;a name=&quot;Summary&quot;&gt;&lt;/a&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;Across the &lt;a href=&quot;https://github.com/mongodb/specifications&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;mongodb/specifications&lt;/a&gt; repository, various spec documents have a &quot;version&quot; field in their header. A number of older specs do not (e.g. CRUD). I&apos;m not aware of any driver actually referencing or otherwise using these version numbers, and would consider them redundant in light of dated change log entries.&lt;/p&gt;

&lt;p&gt;In the past, the DBX team has considered exploring how we might use versioning to automate syncing of spec tests (IIRC &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=andreas.braun&quot; class=&quot;user-hover&quot; rel=&quot;andreas.braun&quot;&gt;andreas.braun&lt;/a&gt; was most recently thinking about this), but apart from some &lt;a href=&quot;https://github.com/mongodb/specifications/releases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;old tags on the repository&lt;/a&gt; those ideas have never come to fruition. And it&apos;s not clear that version labels &lt;em&gt;within&lt;/em&gt; the specs themselves would serve any purpose if such automation were to rely on git tags anyway.&lt;/p&gt;

&lt;p&gt;While the repository does provide guidelines for versioning the drivers themselves (see: &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/README.rst#drivers-follow-semantic-versioning&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Drivers follow semantic versioning&lt;/a&gt;), there is practically no guidance on how to update versions for specs that have them. As a result, this leads to frequent discussions in spec PRs over how or whether to bump a spec&apos;s version (see related links).&lt;/p&gt;

&lt;p&gt;Spec versioning only serves a purpose for the Unified Test Runner, which has versioned JSON schemas for validating test files. Additionally, that spec has clear guidelines on how to bump the version for particular changes (see: &lt;a href=&quot;https://github.com/mongodb/specifications/blob/master/source/unified-test-format/unified-test-format.rst#impact-of-spec-changes-on-schema-version&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Impact of Spec Changes on Schema Version&lt;/a&gt;). Unfortunately, there is no guidance in the Unified Test Runner spec about bumping the version for test runner changes that have no corresponding schema change (see: &lt;a href=&quot;https://github.com/mongodb/specifications/pull/1156#discussion_r833686235&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this comment in mongodb/specifications#1156&lt;/a&gt; for DRIVERS-1713).&lt;/p&gt;

&lt;p&gt;I propose the following:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Remove the &quot;version&quot; field from existing spec documents that have them&lt;/li&gt;
	&lt;li&gt;Rename the Unified Test Runner spec&apos;s &quot;version&quot; heading to &quot;schema version&quot;&lt;/li&gt;
	&lt;li&gt;Remove additional front matter from spec documents (e.g. last modified date, authors)&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;Motivation&quot;&gt;&lt;/a&gt;&lt;b&gt;Motivation&lt;/b&gt;&lt;/h3&gt;
&lt;h4&gt;&lt;a name=&quot;Whoistheaffectedenduser%3F&quot;&gt;&lt;/a&gt;Who is the affected end user?&lt;/h4&gt;
&lt;p&gt;DBX team members.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Howdoesthisaffecttheenduser%3F&quot;&gt;&lt;/a&gt;How does this affect the end user?&lt;/h4&gt;
&lt;p&gt;Contributors and reviewers frequently discuss whether particular changes in a spec warrant a minor or patch bump to the spec version. This seems like a lot of wasted consideration for something that doesn&apos;t actually serve much purpose.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisissueurgent%3F&quot;&gt;&lt;/a&gt;Is this issue urgent?&lt;/h4&gt;
&lt;p&gt;No.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisticketrequiredbyadownstreamteam%3F&quot;&gt;&lt;/a&gt;Is this ticket required by a downstream team?&lt;/h4&gt;
&lt;p&gt;No.&lt;/p&gt;

&lt;h4&gt;&lt;a name=&quot;Isthisticketonlyfortests%3F&quot;&gt;&lt;/a&gt;Is this ticket only for tests?&lt;/h4&gt;
&lt;p&gt;No.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="2012410">DRIVERS-2253</key>
            <summary>Remove spec versions and front matter</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="jmikola@mongodb.com">Jeremy Mikola</assignee>
                                    <reporter username="jmikola@mongodb.com">Jeremy Mikola</reporter>
                        <labels>
                    </labels>
                <created>Wed, 30 Mar 2022 17:34:59 +0000</created>
                <updated>Sat, 28 Oct 2023 10:44:41 +0000</updated>
                            <resolved>Thu, 6 Oct 2022 04:35:38 +0000</resolved>
                                                                            <votes>1</votes>
                                    <watches>10</watches>
                                                                                                                <comments>
                            <comment id="4881609" author="xgen-internal-githook" created="Thu, 6 Oct 2022 04:35:06 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Jeremy Mikola&apos;, &apos;email&apos;: &apos;jmikola@gmail.com&apos;, &apos;username&apos;: &apos;jmikola&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2253&quot; title=&quot;Remove spec versions and front matter&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2253&quot;&gt;&lt;del&gt;DRIVERS-2253&lt;/del&gt;&lt;/a&gt;: Remove spec front matter and reformat changelogs (#1311)&lt;/p&gt;

&lt;p&gt;This limits front matter fields to &quot;Status&quot; and &quot;Minimum Server Version&quot;.&lt;/p&gt;

&lt;p&gt;Spec versions were removed across the board, excluding the Unified Test Format, which retained a field for &quot;Current Schema Version&quot;. The only other spec where versioning was somewhat relevant was Extended JSON, and the transition from 1.0 to 2.0 is clearly noted in the changelog (minor versions since 2.0 were not relevant).&lt;/p&gt;

&lt;p&gt;Apart from the deprecated Bulk API spec, all specs have an &quot;Accepted&quot; status. Some were incorrectly listed as &quot;Draft&quot;.&lt;/p&gt;

&lt;p&gt;This also revises changelogs across all specs to use &quot;Field List&quot; formatting (like spec front matter). The CSFLE and Change Stream specs were left as-is, since they used CSV and grid tables, respectively. Some existing changelog entries were incorrectly ordered and fixed. Lastly, specs were inconsistent in whether changelogs entries used ascending or descending date order, so existing order was left in place when possible. For some very old specs without dated changelog entries, dates were inferred from git history.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Removes PR template reminder to bump spec version/lastmod.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This is no longer relevant since spec versions and last modified dates were removed from front matter.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Consistently refer to &quot;changelog&quot; instead of &quot;change log&quot;&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Remove versionadded macros from CSFLE spec&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Revert min server version for listDatabases spec to 3.6&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/specifications/commit/a9096ad069e8af0f5973c9d0ca75da57e4c63616&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/commit/a9096ad069e8af0f5973c9d0ca75da57e4c63616&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="4878755" author="jmikola@gmail.com" created="Wed, 5 Oct 2022 04:43:47 +0000"  >&lt;p&gt;&lt;a href=&quot;https://github.com/mongodb/specifications/pull/1311&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/pull/1311&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4875969" author="jmikola@gmail.com" created="Tue, 4 Oct 2022 12:27:42 +0000"  >&lt;blockquote&gt;&lt;p&gt;we have definitely had specs that lived in this repo for some time that were not finalized, though I&apos;m open to rethinking what the list of statuses should be&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Per the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/37c32cf5200cd8da6652c75ac65279c43628fe7a/source/causal-consistency/causal-consistency.rst&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Causal Consistency spec&lt;/a&gt;, possible values are:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Draft&lt;/li&gt;
	&lt;li&gt;Accepted (some specs use Approved)&lt;/li&gt;
	&lt;li&gt;Rejected&lt;/li&gt;
	&lt;li&gt;Final&lt;/li&gt;
	&lt;li&gt;Replaced&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I believe these came from a Google Docs template and only a subset of these actually appear in the repository.&lt;/p&gt;</comment>
                            <comment id="4671070" author="JIRAUSER1263031" created="Mon, 11 Jul 2022 16:35:24 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jmikola%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jmikola@mongodb.com&quot;&gt;jmikola@mongodb.com&lt;/a&gt; Can you review Bernie&apos;s note and take this forward.&#160; Thanks&lt;/p&gt;</comment>
                            <comment id="4660988" author="behackett" created="Wed, 6 Jul 2022 17:15:20 +0000"  >&lt;p&gt;I&apos;m generally in agreement with &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin@mongodb.com&quot;&gt;jeff.yemin@mongodb.com&lt;/a&gt; that we should remove most of the front matter. The format of that table came from the Python PEP format, which I liberally borrowed from when coming up with the spec format. Most of the fields aren&apos;t useful, and I don&apos;t even remember why some of them exist (the spec number, for example).&lt;/p&gt;

&lt;p&gt;That said, two of the fields &lt;em&gt;are&lt;/em&gt; useful and I think we should keep them:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Minimum Server Version&lt;/li&gt;
	&lt;li&gt;Status (we have definitely had specs that lived in this repo for some time that were not finalized, though I&apos;m open to rethinking what the list of statuses should be)&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="4473603" author="jmikola@gmail.com" created="Mon, 11 Apr 2022 17:27:40 +0000"  >&lt;p&gt;Repurposed this issue to only discuss removal of spec versions and front matter.&lt;/p&gt;

&lt;p&gt;Schema versioning changes for the Unified Test Runner have been split off to &lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2273&quot; title=&quot;Clarify schema versioning for Unified Test Runner&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2273&quot;&gt;DRIVERS-2273&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="4445624" author="JIRAUSER1259527" created="Wed, 30 Mar 2022 18:56:36 +0000"  >&lt;p&gt;I support this proposal. I generally ignore the spec versions because they don&apos;t tell me anything meaningful.&lt;/p&gt;</comment>
                            <comment id="4445390" author="jmikola@gmail.com" created="Wed, 30 Mar 2022 17:44:54 +0000"  >&lt;p&gt;Note: if there is no consensus to remove versions from existing specs, I&apos;d propose either repurposing this ticket or splitting off the suggested change to the Unified Test Runner:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Update the Unified Test Runner spec to clearly state that the schema version should be increased for test runner changes, even if the schema itself is not changed. In this case, the previous schema should be copied without changes (e.g. schema-1.7.json is copied to schema-1.8.json and tests that depend on changed behavior in 1.8 should require that schema version).&lt;/p&gt;&lt;/blockquote&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2337828">DRIVERS-2626</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2152980">DRIVERS-2463</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2152978">DRIVERS-2461</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2152979">DRIVERS-2462</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2022288">DRIVERS-2273</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <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_10951" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Driver Changes</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10940"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i04ctg:</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>