<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Hi Radomir, Ivan,</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Thanks a lot for your advice.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">I will update the xstatic files just as the upstream. </div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">As for the customized lines, I will try to find a better way to solve it, maybe override the original functions inside the project.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Best regards,</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Xinni</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 10, 2018 at 4:58 AM, Ivan Kolodyazhny <span dir="ltr"><<a href="mailto:e0ne@e0ne.info" target="_blank">e0ne@e0ne.info</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi, Xinni,</div><div><br></div><div>I absolutely agree with Radomir. We should keep xstatic files without modifications. We don't know if they are used outside of OpenStack or not, so they should be the same as NPM packages</div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="m_-5273676967758625170gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Regards,<br>Ivan Kolodyazhny,<br><a href="http://blog.e0ne.info/" target="_blank">http://blog.e0ne.info/</a></div></div></div></div><div><div class="h5">
<br><div class="gmail_quote">On Mon, Apr 9, 2018 at 12:32 PM, Radomir Dopieralski <span dir="ltr"><<a href="mailto:openstack@sheep.art.pl" target="_blank">openstack@sheep.art.pl</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">The whole idea about xstatic files is that they are generic, not specific to Horizon or OpenStack, usable by other projects that need those static files. In fact, at the time we started using xstatic, it was being used by the MoinMoin wiki project (which is now dead, sadly). The modifications you made are very specific to your usecase and would make it impossible to reuse the packages by other applications (or even by other Horizon plugins). The whole idea of a library is that you are using it as it is provided, and not modifying it.<div><br></div><div>We generally try to use all the libraries as they are, and if there are any modifications necessary, we push them upstream, to the original library. Otherwise there would be quite a bit of maintenance overhead necessary to keep all our downstream patches. When considerable modification is necessary that can't be pushed upstream, we fork the library either into its own repository, or include it in the repository of the application that is using it.</div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="m_-5273676967758625170h5">On Mon, Apr 9, 2018 at 2:54 AM, Xinni Ge <span dir="ltr"><<a href="mailto:xinni.ge1990@gmail.com" target="_blank">xinni.ge1990@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="m_-5273676967758625170h5"><div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Hello, team.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Sorry for talking about xstatic repo for so many times.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">I didn't realize xstatic repositories should be provided with exactly the same file as upstream, and should have talked about it at very first.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">I modified several upstream files because some of them files couldn't be used directly under my expectation.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">For example,  {{ }} are used in some original files as template tags, but Horizon adopts {$ $} in angular module, so I modified them to be recognized properly.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Another major modification is that css files are converted into scss files to solve some css import issue previously.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Besides, after collecting statics, some png file paths in css cannot be referenced properly and shown as 404 errors, I also modified css itself to handle this issues.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">I will recheck all the un-matched xstatic repositories and try to replace with upstream  files as much as I can.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">But I if I really have to modify some original files, is it acceptable to still use it as embedded files with license info appeared at the top?<br><br></div><br><div class="m_-5273676967758625170m_-2062016540973909752m_5014272221391496750gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div>Best Regards,</div><div>Xinni Ge</div></div></div></div></div></div></div></div>
</div>
<br></div></div>______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
<br></blockquote></div><br></div>
<br>______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
<br></blockquote></div><br></div></div></div>
<br>______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.<wbr>openstack.org?subject:<wbr>unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div>Best Regards,</div><div>Xinni Ge</div></div></div></div></div></div></div></div>
</div>