<style>
/* Changing the layout to use less space for mobiles */
@media screen and (max-device-width: 480px), screen and (-webkit-min-device-pixel-ratio: 2) {
    #email-body { min-width: 30em !important; }
    #email-page { padding: 8px !important; }
    #email-banner { padding: 8px 8px 0 8px !important; }
    #email-avatar { margin: 1px 8px 8px 0 !important; padding: 0 !important; }
    #email-fields { padding: 0 8px 8px 8px !important; }
    #email-gutter { width: 0 !important; }
}
</style>
<div id="email-body">
<table id="email-wrap" align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#f0f0f0;color:#000000;width:100%;">
    <tr valign="top">
        <td id="email-page" style="padding:16px !important;">
            <table align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#ffffff;border:1px solid #bbbbbb;color:#000000;width:100%;">
                <tr valign="top">
                    <td bgcolor="#3e4c4e" style="background-color:#3e4c4e;color:#ffffff;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;line-height:1;"><img src="https://www.jboss.org/dms/hibernate/images/jira/jiraheader_hibernate.png" alt="" style="vertical-align:top;" /></td>
                </tr><tr valign="top">
    <td id="email-banner" style="padding:32px 32px 0 32px;">

                
        
        
            <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%" style="width:100%;">
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;padding:0;">
                                        <img id="email-avatar" src="https://hibernate.onjira.com/secure/useravatar?avatarId=10162" alt="" height="48" width="48" border="0" align="left" style="padding:0;margin: 0 16px 16px 0;" />
                        <div id="email-action" style="padding: 0 0 8px 0;font-size:12px;line-height:18px;">
                                    <a class="user-hover" rel="tdiesler" id="email_tdiesler" href="https://hibernate.onjira.com/secure/ViewProfile.jspa?name=tdiesler" style="color:#6c797f;">Thomas Diesler</a>
     commented on <img src="https://hibernate.onjira.com/images/icons/newfeature.gif" height="16" width="16" border="0" align="absmiddle" alt="New Feature"> <a style='color:#6c797f;text-decoration:none;' href='https://hibernate.onjira.com/browse/HHH-7527'>HHH-7527</a>
            </div>
                        <div id="email-summary" style="font-size:16px;line-height:20px;padding:2px 0 16px 0;">
                <a style='color:#6c797f;text-decoration:none;' href='https://hibernate.onjira.com/browse/HHH-7527'><strong>OSGI manifests for hibernate-orm</strong></a>
            </div>
                    </td>
    </tr>
</table>
    </td>
</tr>
<tr valign="top">
    <td id="email-fields" style="padding:0 32px 32px 32px;">
        <table border="0" cellpadding="0" cellspacing="0" style="padding:0;text-align:left;width:100%;" width="100%">
            <tr valign="top">
                <td id="email-gutter" style="width:64px;white-space:nowrap;"></td>
                <td>
                    <table border="0" cellpadding="0" cellspacing="0" width="100%">
                        <tr valign="top">
    <td colspan="2" style="color:#000000;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;padding:0 0 16px 0;width:100%;">
        <div class="comment-block" style="background-color:#edf5ff;border:1px solid #dddddd;color:#000000;padding:12px;"><p>Great to see that this goes on the way. Here a few high level considerations ...</p>

<p>#1 Think about the modularity contract first. A bundle has capabilities/requirements. Exported packages are a type of capability. Imported packages a type of requirement.</p>

<p>There are two types of audiences to consider. </p>

<p>#1.1 The set of hibernate artefacts</p>

<p>For each artefact define the set of packages that you want other hibernate artefacts to see. Everything else should be private to the respective artefact and not be exported.</p>

<p>#1.2 User code</p>

<p>It would be possible to expose every hibernate artefact and hence every packages that it exports directly to user code. Alternatively, the set of hibernate artefacts can be aggregated in a different set (or just one) of bundles. This aggregate bundle would only export the packages that are intended to be used by user code. The latter approach could potentially reduce the number of "public" packages by large and such reduce maintenance cost - you only need to worry about backwards compatibility of those.</p>

<p>#2 Pay attention the the OSGi version scheme</p>

<p>OSGi versions that are associated with exported packages have semantic meaning. This needs to be honoured otherwise clients that specify version ranges may not work properly. Also honour this within the set of hibernate artefacts. It should be possible to reason about artefactA and its capabilities/requirements without having to think about artefactB. If you do this properly the individual artefacts become more loosely coupled can be worked on more independently and would overall reduce the maintenance effort.</p>

<p>#3 Work with the Enterprise OSGi JPA spec instead of trying to get Hibernate bundles to work in a Framework in some other way. I'm looking at bringing OSGi JPA to AS7 - it be grate if Hibernate could be the provider</p>

<p>#4 You can always meet me on the <a href="https://docs.jboss.org/author/display/JBOSGI/Project+Infrastructure">forum, irc, dev list</a> or phone if needed. It be great if Hibernate could be part of the <a href="https://docs.jboss.org/author/display/JBOSGI/User+Guide">JBossOSGi umbrella</a>.</p>

<p>good luck &amp; talk soon<br/>
--thomas</p></div>
        <div style="color:#505050;padding:4px 0 0 0;">                </div>
    </td>
</tr>
                    </table>
                </td>
            </tr>
        </table>
    </td>
</tr>













            </table>
        </td><!-- End #email-page -->
    </tr>
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:10px;line-height:14px;padding: 0 16px 16px 16px;text-align:center;">
            This message is automatically generated by JIRA.<br />
            If you think it was sent incorrectly, please contact your <a style='color:#6c797f;' href='https://hibernate.onjira.com/secure/ContactAdministrators!default.jspa'>JIRA administrators</a>.<br />
            For more information on JIRA, see: <a style='color:#6c797f;' href='http://www.atlassian.com/software/jira'>http://www.atlassian.com/software/jira</a>
        </td>
    </tr>
</table><!-- End #email-wrap -->
</div><!-- End #email-body -->