Sounds good, though I think its mostly the first option, not the third. And anyway, if importing a function from a module causes circular import problems, so will just importing the module.
Aaron Meurer On Oct 3, 2012, at 5:22 AM, Joachim Durchholz <[email protected]> wrote: > Okay, here's my current plan: > > Leave S alone for the moment - I don't feel we have reached a consensus there. > > Remove all uses of C inside SymPy, replacing them by imports from the > original module. > Fix any import cycles that that causes. Techniques I have seen: > - Move the import statement into the function that uses it > (dependencies less clear) > - Move the import to the bottom of the file > (dependencies less clear) > (nonidiomatic) > (can cause other problems) > - Replace "import foo from mod" with "import mod" > (requires changing foo() to mod.foo()) > (seems to be the least intrusive change for most situations) > - Eliminate the cycle by > - importing just submodules > - splitting a module > (possible if import graph is cyclic, call graph is acyclic) > (sometimes this actually improves the overall program structure) > (sometimes it rips apart stuff that belongs together) > Probably it's mostly the third option, and the last option in obvious cases. > > Make a separate pull request per module, except when refactoring. > This should avoid huge pull requests that accumulate conflicts until they're > approved. > > Once all pull requests are accepted, deprecate C. > > > Should I go forward with that? > Advice? Comments? > > Regards, > Jo > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/sympy?hl=en. > -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
