Skip to content

notes from reorg meeting

Levi John Wolf edited this page Mar 29, 2017 · 2 revisions
  • meeting on reorg (3/27/2017)
    • strategy
      • build makefile/automator
      • test limited attempt
      • finish submoduling
    • nightlies for pysal integration
      • check if something committed to a submodule affects something else in another module.
    • Readmes in each submodule allow us to redirect the potential first time developer
      • add to project template repo
    • importing from module vs. importing from pysal
    • legacy.py as the legacy api and then api.py be the new api, possibly py3 only
    • Documentation
      • sphinx for main project builds alone, refer users to sphinx for main redistributable project.
      • build outwards
        • submodules have their own sphinx stuff
        • make main project builds all subprojects
      • build across
        • each module is responsible for its own documentation structure and requirements.
        • project documentation links to each subproject
        • autodoc on sphinx would build each modules' docstrings anyway
      • We should build across, not out.
    • making
      • two commands, dist and dev
        • dist builds the source redistribution
          • git clone pysal
          • cd pysal/pysal && rm -r $SUBPROJECTS
          • git clone $SUBPROJECTS
          • rm $SUBPROJECTS/.git
        • dev builds the development tree
          • git clone ysal
          • cd pysal/pysal && rm -r $SUBPROJECTS
          • git clone $SUBPROJECTS
          • rm ../../.git
    • viz design
      • duck type & type dispatching,
      • plot functions should work with types and figure out how to plot them, not expose interfaces
      • like geoplot, they take structured data and plot it the way we want
      • leverage shim classes to convert objects into the format we need to plot
      • this way, things don't depend on viz and viz doesn't depend on things, it just consumes objects
      • you wouldn't try to pass a non-markov object to plot_markov, but all viz effort would be concentrated in a package with common dependences & a shared api.