<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 06:41:54 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>[SERVER-79790] Establish mechanism to produce dependency graph</title>
                <link>https://jira.mongodb.org/browse/SERVER-79790</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;As part of the migrate-target-to-Bazel process, we need to pick off &quot;leaf nodes&quot; from the build graph. To do so, we need a mechanism to analyze and visualize the graph itself.&lt;/p&gt;</description>
                <environment></environment>
        <key id="2410711">SERVER-79790</key>
            <summary>Establish mechanism to produce dependency graph</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</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="zack.winter@mongodb.com">Zack Winter</assignee>
                                    <reporter username="steve.gross@mongodb.com">Steve Gross</reporter>
                        <labels>
                    </labels>
                <created>Mon, 7 Aug 2023 15:07:15 +0000</created>
                <updated>Sun, 29 Oct 2023 21:17:52 +0000</updated>
                            <resolved>Wed, 13 Sep 2023 22:57:52 +0000</resolved>
                                                    <fixVersion>7.2.0-rc0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="5718055" author="xgen-internal-githook" created="Wed, 20 Sep 2023 14:34:43 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Zack Winter&apos;, &apos;email&apos;: &apos;zack.winter@mongodb.com&apos;, &apos;username&apos;: &apos;zackwintermdb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-79790&quot; title=&quot;Establish mechanism to produce dependency graph&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-79790&quot;&gt;&lt;del&gt;SERVER-79790&lt;/del&gt;&lt;/a&gt; Update libdeps readme to include arg to skip compiling enterprise module&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/46ad24e0cecb40e31fb9f7b74d91fb601144cc35&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/46ad24e0cecb40e31fb9f7b74d91fb601144cc35&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5702713" author="JIRAUSER1274619" created="Wed, 13 Sep 2023 22:57:52 +0000"  >&lt;p&gt;The following snippet now generates a list of leaf nodes without non-bazelified dependencies that are ready for bazel conversion:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;python3 buildscripts/libdeps/gacli.py --graph-file build/opt/libdeps/libdeps.graphml --bazel-conv-candidates &lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</comment>
                            <comment id="5702693" author="xgen-internal-githook" created="Wed, 13 Sep 2023 22:51:26 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Zack Winter&apos;, &apos;email&apos;: &apos;zack.winter@mongodb.com&apos;, &apos;username&apos;: &apos;zackwintermdb&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-79790&quot; title=&quot;Establish mechanism to produce dependency graph&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-79790&quot;&gt;&lt;del&gt;SERVER-79790&lt;/del&gt;&lt;/a&gt; Add option to generate bazel conversion targets to libdeps&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo/commit/7cccfc0caf6e3b049744aff498bb91ad28113df6&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo/commit/7cccfc0caf6e3b049744aff498bb91ad28113df6&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="5651602" author="JIRAUSER1274045" created="Tue, 22 Aug 2023 19:25:41 +0000"  >&lt;p&gt;Note: assigned this to &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=zack.winter%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;zack.winter@mongodb.com&quot;&gt;zack.winter@mongodb.com&lt;/a&gt; . He&apos;s got a few things on the docket right now but this makes sense to do when those things are done.&lt;/p&gt;</comment>
                            <comment id="5620254" author="JIRAUSER1274045" created="Tue, 8 Aug 2023 14:21:18 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=alex.neben%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;alex.neben@mongodb.com&quot;&gt;alex.neben@mongodb.com&lt;/a&gt; Thanks, I&apos;ll take a look. The list in the scope is just an initial list, however. I&apos;ll see if the libdeps visualizer can give us a comprehensive picture. (Unfortunately, #include-based dependencies don&apos;t seem to show up in our SCons build, but they &lt;b&gt;are&lt;/b&gt; enforced in a Bazel build, so this may get complicated!).&lt;/p&gt;</comment>
                            <comment id="5618860" author="JIRAUSER1268551" created="Mon, 7 Aug 2023 22:23:33 +0000"  >&lt;p&gt;We already have this information as part of &quot;Choosing good candidate libraries for early Bazel work&quot; section in the &lt;a href=&quot;https://docs.google.com/document/d/1Xcnz4LuL0JG-Lngy5ZUCBK22xPWjnVnC0i-8bM9aEWI/edit#heading=h.jdvc93aqa2vj&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;scope&lt;/a&gt;. We have some guides for using the libdeps visualizer which I would take a crack at before trying to roll your own. I think that can be found &quot;buildscripts/libdeps/README.md&quot;&lt;/p&gt;</comment>
                            <comment id="5617468" author="JIRAUSER1274045" created="Mon, 7 Aug 2023 15:57:50 +0000"  >&lt;p&gt;Note to self: another promising technique is creating a dependency graph based entirely on #includes. Currently using this command: &lt;tt&gt;grep -E &quot;#include&quot; `find src/mongo -type f | grep -E &apos;\.h$&apos;` | grep -v -E &apos;&amp;gt;$&apos; | sed &apos;s/\//__/g&apos; | sed &apos;s/:#include &quot;/ -&amp;gt; /g&apos; | sed &apos;s/&quot;$//g&apos; | sed &apos;s/\.h//g&apos; | sort -u&lt;/tt&gt;&lt;/p&gt;</comment>
                            <comment id="5617266" author="JIRAUSER1274045" created="Mon, 7 Aug 2023 15:09:57 +0000"  >&lt;p&gt;Note to self: I&apos;m working on filtering out the source files themselves from the tree (&lt;tt&gt;cat /tmp/scons_tree.txt | grep -v -E &quot;\.(hpp|py|idl|h|cpp|yml|inc|tpl|o|in|ipp|hh|c|def|defs|js|txt)$&quot; | grep -v -E &quot;/bin/(ar|g&amp;#43;&amp;#43;|gcc)$&quot; | grep -v -E &quot;src/third_party&quot; | more&lt;/tt&gt;)&lt;/p&gt;</comment>
                            <comment id="5617256" author="JIRAUSER1274045" created="Mon, 7 Aug 2023 15:08:05 +0000"  >&lt;p&gt;Note to self: I can produce an initial build graph using &lt;tt&gt;python3 ./buildscripts/scons.py --tree=all --linker=gold 2&amp;gt;&amp;amp;&lt;/tt&gt;. Now I&apos;m working on translating that into dot notation so we can understand the graph better.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <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_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 7 Aug 2023 22:23:33 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        20 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></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_17050" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Downstream Team Attention</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="16941"><![CDATA[Not Needed]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>DEVPROD-257</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>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            20 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>alex.neben@mongodb.com</customfieldvalue>
            <customfieldvalue>xgen-internal-githook</customfieldvalue>
            <customfieldvalue>steve.gross@mongodb.com</customfieldvalue>
            <customfieldvalue>zack.winter@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i2l5dz:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i238aw:</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_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_22250" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Special Downgrade Instructions Required</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="23343"><![CDATA[Not Needed]]></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_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i2krjb:</customfieldvalue>

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