<div>I'm +1 tentatively on these changes. I believe that the broken functionality is all noted as currently not working in the docs, but we should just make it explicitly clear what happened to it, what the problems are, and what a user can do about it in the docs. As much as we don't want some user trying to use a broken function and quitting yt, we also don't want to frustrate past users (esp. primarily of 2.x) by making them think we are deleting great parts of the code just to make them angry. :)<br><br>On a somewhat related note, given that 2 point functionality was missing in 3.0, I reimplemented a bunch of functionality from scratch for use in my own research. My implementation probably isn't as fast, at least as is, but I understand it and could probably work to bring the type of functionality back if there is interest. If I remember correctly (on my phone so I can't check) there was a lot of code in 2.x devoted to making the 2 point selection fast, so I didn't feel comfortable simply porting it as I didn't fully understand the logic. If whoever originally developed it or some other motivated dev wants to jump in instead, that's fine with me!</div><br><br>-Hilary<br><div class="gmail_quote"><div dir="ltr">On Mon, Aug 10, 2015 at 7:37 AM Brian O'Shea <<a href="mailto:bwoshea@gmail.com" target="_blank">bwoshea@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I'm strongly -1 on removing analysis modules unless there's an exceptionally good reason - not just a vague sense that the code needs to be cleaned out.  For example, my research group uses lots of star particle-related analysis - in particular, generation of galaxy spectra from star particles - and getting rid of it would be bad.  I suggest leaving the 2-point function stuff in the code, but task somebody to update it to yt-3's standards, even it's a low priority.  Just because the core yt devs don't use it doesn't mean it isn't used or useful!<div><br></div><div>Regarding the boolean objects, we also got a lot of use out of them in yt-2 and I was sad to see that get broken in yt-3.  Andrew, if you decide to work on that I'd be happy to collaborate and be a test subject!</div></div><div dir="ltr"><div><br></div><div>--Brian<br><div><br></div><div><br></div><div><br><div><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Aug 9, 2015 at 7:35 PM, Nathan Goldbaum <span dir="ltr"><<a href="mailto:nathan12343@gmail.com" target="_blank">nathan12343@gmail.com</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">Hi all,<div><br></div><div>I'd like to spend some time in the next week or two doing some cleanup and tidying up on the yt repo.  This comes in two flavors: removing dead code and adding basic linting tests.</div><div><br></div><div>Dead Code</div><div>---------------</div><div><br></div><div>There are still a number of big chunks of legacy code in the codebase that aren't called by anything, including:</div><div><br></div><div>* boolean data objects</div><div>* reason / reason plot widgets (yt.gui)</div><div>* two scripts in the top-level "scripts" directory (pyro_queue.py and yt_lodgeit.py)</div><div>* the top-level "tests" directory</div><div>* possibly some of the analysis modules? (star_analysis and two_point_functions)</div><div><br></div><div>I'm curious what others think about removing some or all of this code. I'd particularly like to hear if I'm wrong about the code in the list above or if I've missed any chunks of unused code.</div><div><br></div><div>I do understand the desire to keep the code in the repository in the hopes that one day someone might make it functional, but I think this consideration is balanced by how confusing it can be to come across dead code and then get frustrated after finding weird incompatibilities.</div><div><br></div><div>Basic Linting Tests</div><div>-------------------------</div><div><br></div><div>I'd like to catch as many errors as possible by doing basic static analysis of the yt codebase using pyflakes and flake8.  We already have coverage with both tools run as part of the test suite, but introducing errors detected by these tools does not fail the build. I'd like to add a few of the errors caught by these tools to the test suite itself, making the tools optional dependencies for the tests. Hopefully these new tests will be useful and not obnoxious: I'm not talking about enforcing pep8 as part of the test suite.</div><div><br></div><div>To do this, I think the biggest change necessary is to get rid of all instances of "import *" throughout the codebase. This will allow us to test for unused imports (probably shouldn't fail the build) or missing imports (definitely should fail the build).</div><div><br></div><div>Again, I'd appreciate any comments or objections to this general approach.</div><div><br></div><div>Thanks for your attention! Sorry for the long e-mail...</div><span><font color="#888888"><div><br></div><div>-Nathan</div><div><br></div><div><br></div></font></span></div>
<br>_______________________________________________<br>
yt-dev mailing list<br>
<a href="mailto:yt-dev@lists.spacepope.org" target="_blank">yt-dev@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" rel="noreferrer" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
yt-dev mailing list<br>
<a href="mailto:yt-dev@lists.spacepope.org" target="_blank">yt-dev@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org" rel="noreferrer" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org</a><br>
</blockquote></div>