[orca-list] FLAG WEEKEND (aka refactor part 2)



Hey all.

I have just committed the second significant change of the refactor to
make things better for new contributors -- and for users.

Prior to my commit, Orca had the following practice w.r.t. application
scripts: If all you need is the script class, create appname.py. On the
other hand, if you need to customize the braille generator or speech
generator or tutorial generator or (now) the script utilities, or pull
in additional functionality like structural navigation or chat, you need
to create a new directory called appname and add script.py (and whatever
else you need) to it.

Here's why that's problematic, all based on experience:

* Often, even when implementing the simplest of scripts, one can not 
  anticipate what needs might present themselves down the road. Unless
  the app in question does nothing, you will eventually need to add
  some other module to that script. Trust me.

* When we do have the need to change a script from appname.py to
  appname/script.py, we typically wind up with at least a few of you
  with cruft (i.e. the persistence of the original appname.py). If Orca
  finds your cruft before it finds the new script, Orca is likely to 
  behave unexpectedly.

* This has also been a repeated area of confusion for new contributors.

If each application script has its own directory from the get-go, all of
the issues go away.

I hope that clarifies why I've done what I've done. Here's what you have
to do, for the very last time: Do a make uninstall and/or locate where
Orca has installed the scripts. For me, it's

  /usr/lib/python2.6/site-packages/orca

Nuke them. Otherwise you'll have old appname.py cruft lying around
screwing things up.

Pull the latest Orca from master and install it into the cruft-free
environment.

As before, I've tested this quite a bit. However, these changes are
mostly for scripts for which there is not a corresponding set of
regression tests. Therefore, this change definitely needs your testing
love in order to ensure the next "unstable" release is stable.

Thanks much guys for your testing and for your patience with this.
Things should settle down and be refactor-free soon. <smile>

--joanie




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]