[yt-dev] Repo cleanup

Brian O'Shea bwoshea at gmail.com
Mon Aug 10 05:37:20 PDT 2015


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!

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!

--Brian





On Sun, Aug 9, 2015 at 7:35 PM, Nathan Goldbaum <nathan12343 at gmail.com>
wrote:

> Hi all,
>
> 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.
>
> Dead Code
> ---------------
>
> There are still a number of big chunks of legacy code in the codebase that
> aren't called by anything, including:
>
> * boolean data objects
> * reason / reason plot widgets (yt.gui)
> * two scripts in the top-level "scripts" directory (pyro_queue.py and
> yt_lodgeit.py)
> * the top-level "tests" directory
> * possibly some of the analysis modules? (star_analysis and
> two_point_functions)
>
> 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.
>
> 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.
>
> Basic Linting Tests
> -------------------------
>
> 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.
>
> 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).
>
> Again, I'd appreciate any comments or objections to this general approach.
>
> Thanks for your attention! Sorry for the long e-mail...
>
> -Nathan
>
>
>
> _______________________________________________
> yt-dev mailing list
> yt-dev at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20150810/ab463429/attachment.htm>


More information about the yt-dev mailing list