<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:57:25 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>[JAVA-2520] Add module-info.java for each module</title>
                <link>https://jira.mongodb.org/browse/JAVA-2520</link>
                <project id="10006" key="JAVA">Java Driver</project>
                    <description>&lt;p&gt;Non-automatic Java 9 modules require a module-info.java file for each module in the root of the source tree.&lt;/p&gt;

&lt;p&gt;This is complicated for a library like the Java driver which targets older JREs.  From what I can tell looking at other libraries like SLF4J, we&apos;ll need to compile all .java files except module-info.java targeting Java 8, and compile module-info.java targeting Java 9.&lt;/p&gt;
</description>
                <environment></environment>
        <key id="387508">JAVA-2520</key>
            <summary>Add module-info.java for each module</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="10038" iconUrl="https://jira.mongodb.org/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="jeff.yemin@mongodb.com">Jeffrey Yemin</reporter>
                        <labels>
                    </labels>
                <created>Fri, 26 May 2017 19:44:40 +0000</created>
                <updated>Wed, 30 Mar 2022 23:04:07 +0000</updated>
                                                                            <component>Packaging</component>
                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="2177548" author="jeff.yemin" created="Mon, 11 Mar 2019 19:20:33 +0000"  >&lt;p&gt;It&apos;s not the dependency on the JAVA ticket for zstd/snappy, it&apos;s the library dependency that we took adding their own module-info.&lt;/p&gt;</comment>
                            <comment id="2177496" author="ian@10gen.com" created="Mon, 11 Mar 2019 18:54:34 +0000"  >&lt;p&gt;K.  I see zstd as done (&lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3145&quot; title=&quot;Add support for Zstandard compression&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3145&quot;&gt;&lt;del&gt;JAVA-3145&lt;/del&gt;&lt;/a&gt;) but I can&apos;t find the snappy ticket anywhere?&lt;/p&gt;</comment>
                            <comment id="2177384" author="jeff.yemin" created="Mon, 11 Mar 2019 17:49:38 +0000"  >&lt;p&gt;It&apos;s more blocked on the zstd and snappy libs at this point.  It depends on &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3037&quot; title=&quot;Move Netty stream support to a separate module&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3037&quot;&gt;&lt;del&gt;JAVA-3037&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="2177328" author="ian@10gen.com" created="Mon, 11 Mar 2019 17:11:48 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin&quot;&gt;jeff.yemin&lt;/a&gt; is this now blocked on &lt;a href=&quot;https://jira.mongodb.org/browse/JAVA-3037&quot; title=&quot;Move Netty stream support to a separate module&quot; class=&quot;issue-link&quot; data-issue-key=&quot;JAVA-3037&quot;&gt;&lt;del&gt;JAVA-3037&lt;/del&gt;&lt;/a&gt;?&lt;/p&gt;</comment>
                            <comment id="2169271" author="ian@10gen.com" created="Mon, 4 Mar 2019 15:15:28 +0000"  >&lt;p&gt;Just an update that it looks like slf4j has done this so now we&apos;re just blocked on removing netty.  might also be blocked on zstd and snappy libs?  &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jeff.yemin&quot; class=&quot;user-hover&quot; rel=&quot;jeff.yemin&quot;&gt;jeff.yemin&lt;/a&gt; to confirm.&lt;/p&gt;</comment>
                            <comment id="2113677" author="cstrobl" created="Mon, 14 Jan 2019 07:53:40 +0000"  >&lt;p&gt;Support for using just &lt;tt&gt;mongodb-driver-core&lt;/tt&gt; &amp;amp; &lt;tt&gt;mongodb-driver-sync&lt;/tt&gt; along with Spring Data MongoDB requires some breaking changes in Spring Datas public API.&lt;br/&gt;
Without the &lt;tt&gt;mongo-java-driver&lt;/tt&gt; there are issues with Bean introspection and missing types beeing used in parts of the code where one might still use &lt;tt&gt;DBObject&lt;/tt&gt;.&lt;br/&gt;
For the &lt;a href=&quot;https://github.com/spring-projects/spring-data-commons/wiki/Release-Train-Moore&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Moore Release&lt;/a&gt; we will stick to the uber jar and planned to support a &lt;tt&gt;mongodb-driver-sync&lt;/tt&gt; only scenario in the subsequent release train. &lt;br/&gt;
If you want to follow progress on that issue please watch &lt;a href=&quot;https://jira.spring.io/browse/DATAMONGO-2176&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;DATAMONGO-2176&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="2113495" author="jeff.yemin" created="Sun, 13 Jan 2019 20:29:48 +0000"  >&lt;p&gt;HI &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=muratozkan&quot; class=&quot;user-hover&quot; rel=&quot;muratozkan&quot;&gt;muratozkan&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;Yes we&apos;ve made progress.&#160; See &lt;a href=&quot;http://mongodb.github.io/mongo-java-driver/3.9/driver/getting-started/installation/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://mongodb.github.io/mongo-java-driver/3.9/driver/getting-started/installation/&lt;/a&gt;&#160;for the automatic module names we&apos;ve declared.&#160; The problem is that, due to some package decisions that were made early on in the driver, there are some jar file combinations where the same package exists in both jar files: in particular mongodb-driver and mongodb-driver-core.&#160;&lt;/p&gt;

&lt;p&gt;Since the 3.7 release, we have given users an option that avoid that problem: the mongodb-driver-sync jar file, whose automatic module name is&#160;org.mongodb.driver.sync.client.&#160;&lt;/p&gt;

&lt;p&gt;At this point, I&apos;m not sure if there is a way to get this working with Spring, as I don&apos;t know exactly what it depends on.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=cstrobl&quot; class=&quot;user-hover&quot; rel=&quot;cstrobl&quot;&gt;cstrobl&lt;/a&gt;, do you have anything you can add here?&lt;/p&gt;

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

&lt;p&gt;In regard to actually adding module-info.java files, we don&apos;t intend to do that until all of our dependencies do: in particular, SLF4J, Netty, and snappy-java have not declare their module names yet.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="2113491" author="muratozkan" created="Sun, 13 Jan 2019 20:05:51 +0000"  >&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;Is there any progress on this issue? Currently, we cannot use &lt;font color=&quot;#172b4d&quot;&gt;&lt;tt&gt;jlink&lt;/tt&gt;&lt;/font&gt;&#160;in our project with SpringBoot 2.1.2.RELEASE which has the following dependencies (skipping irrelevant ones):&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;tt&gt;org.springframework.boot:spring-boot-starter-data-mongodb-reactive:2.1.2.RELEASE&lt;/tt&gt;
	&lt;ul&gt;
		&lt;li&gt;&lt;tt&gt;org.springframework.data:spring-data-mongodb:2.1.4.RELEASE&lt;/tt&gt;
		&lt;ul&gt;
			&lt;li&gt;&lt;tt&gt;org.mongodb:mongodb-driver:3.8.2&lt;/tt&gt;
			&lt;ul&gt;
				&lt;li&gt;&lt;tt&gt;org.mongodb:mongodb-driver-core:3.8.2&lt;/tt&gt;&lt;/li&gt;
			&lt;/ul&gt;
			&lt;/li&gt;
			&lt;li&gt;&lt;tt&gt;org.mongodb:mongodb-driver-async:3.8.2&lt;/tt&gt;&lt;/li&gt;
			&lt;li&gt;&lt;tt&gt;org.mongodb:mongodb-driver-reactivestreams:3.8.2&lt;/tt&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The problem with &lt;tt&gt;jlink&lt;/tt&gt; is this:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;Error: Modules org.mongodb.driver.core and mongodb.driver export package com.mongodb to module xxxxx&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;There&apos;s no module-info.java in any mongodb jars, then automodule generation kicks in. That also fails because the package names in mongodb-driver and mongodb-driver-core are the same.&#160;&lt;/p&gt;

&lt;p&gt;Since there&apos;s automodules, we don&apos;t have to wait until every other dependency has a module-info.java file.&lt;/p&gt;

&lt;p&gt;Cheers,&lt;/p&gt;

&lt;p&gt;Murat&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="1752610" author="jeff.yemin" created="Thu, 14 Dec 2017 22:14:26 +0000"  >&lt;p&gt;Currently blocked waiting for downstream dependencies SLF4J and Netty to commit to module names.&lt;/p&gt;</comment>
                            <comment id="1742247" author="jeff.yemin" created="Mon, 4 Dec 2017 22:16:55 +0000"  >&lt;p&gt;IntelliJ is also going to be a problem because module syntax is only allowed when the language level is set to Java 9, which we don&apos;t want to for anything else in order to support running on older JDKs.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                    <customfield id="customfield_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5002K00000r3GBcQAM]]]></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|hr8lo7:</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>