IRC log of #schooltool for Thursday, 2011-05-26

*** jelkner has quit IRC00:07
*** replaceafill has quit IRC00:17
*** replaceafill has joined #schooltool00:22
*** menesis has quit IRC01:14
*** replaceafill has quit IRC01:35
fsufitchaelkner: done and pushed02:06
fsufitchclicking on the Course Info button in the Course view now goes to the existing courseinfo if there is one02:06
fsufitchand it's tested02:06
*** fsufitch has quit IRC02:15
*** alga has joined #schooltool03:06
*** fsufitch has joined #schooltool03:38
*** fsufitch has quit IRC03:43
*** alga has quit IRC03:50
*** aks has joined #schooltool06:10
*** aks has joined #schooltool06:10
*** menesis has joined #schooltool08:35
*** Lumiere has quit IRC08:36
*** Lumiere has joined #schooltool08:36
*** yvl has quit IRC09:11
*** yvl has joined #schooltool09:29
*** alga has joined #schooltool09:46
*** menesis has quit IRC11:09
*** menesis has joined #schooltool11:14
*** menesis has quit IRC11:19
*** ignas has joined #schooltool12:40
*** menesis has joined #schooltool12:58
*** yvl has quit IRC14:00
*** yvl has joined #schooltool14:12
*** aks has quit IRC14:20
*** asharma has joined #schooltool16:08
*** jelkner has joined #schooltool16:08
jelknergood morning th1a, aelkner16:09
*** th1a has quit IRC16:13
*** ignas has quit IRC16:14
*** ignas has joined #schooltool16:15
*** ignas has quit IRC16:15
menesishttp://www.fanstatic.org16:31
menesishttp://pypi.python.org/pypi/zope.fanstatic16:32
*** th1a has joined #schooltool17:14
*** replaceafill has joined #schooltool17:34
th1ahi replaceafill.17:35
th1aAre we running for Chandara?17:35
replaceafillhey th1a17:35
replaceafillnot yet, but i set up apache and modwsgi already17:36
th1aDid you send him an email letting him know it would take a while?17:38
replaceafillyes17:38
th1aOK.  Good.17:38
* th1a probably read that email yesterday...17:38
replaceafillwell, not a while, i hope to have it finished by today17:38
replaceafillyes, i sent it yesterday morning17:38
th1aYes, that's what I meant.17:38
th1aOK.17:38
*** alga has quit IRC17:40
replaceafillth1a who runs our schooltool.org dns?17:45
replaceafilllots of *.za dns :)17:48
th1aShuttleworth Foundation.17:48
replaceafilli'd like we have demo.schooltool.org for our testing instances17:49
replaceafilli know you think having demos is too complicated....17:49
replaceafill...but i volunteer ;)17:50
th1aI only don't like public, permanent demos.17:50
replaceafillah17:50
replaceafillschooltool.info costs $2/year!17:51
replaceafillcambodia.schooltool.info :D17:51
replaceafillwow, and there's a schooltool.com!17:51
th1aUm... yeah.17:52
th1aHas been all along.17:52
th1aThat predates me.17:52
replaceafillno trademark issues?17:52
replaceafillhttp://www.schooltool.net :)17:53
th1aIt is kind of a standoff.17:53
th1ayvl:  How are you doing?17:53
replaceafillyvl, nice pep8 tool :)18:15
replaceafill"E261 at least two spaces before inline comment" :O18:15
jelkneryvl, i 2nd that!18:28
jelkneri'm going to use that with my students18:28
*** ignas has joined #schooltool18:31
*** ignas has quit IRC19:00
*** asharma has left #schooltool19:04
*** asharma has joined #schooltool19:11
th1amenesis:  ayt?19:14
menesisth1a: yes19:27
th1aDid you see David Ally's reply to my email.19:27
th1aI think he has some virtualenv problem or something.19:28
th1aOr is this the same kind of error aelkner was having last weekend?19:31
th1aHm.  I'm getting this:19:31
th1aIOError: invalid Python installation: unable to open /home/hoffman/Desktop/niepa-sandbox-delete/schooltool.niepa/python/local/lib/python2.7/config/Makefile (No such file or directory)19:31
th1aMaybe he can just use trunk at this point instead of aelkner's old branch.19:31
menesisthe emails are not helpful because he only tells "I got an error" and no tracebacks19:32
menesisyes I know make fails on python2.719:32
menesismake BOOTSTRAP_PYTHON=python2.619:33
menesiswill use python 2.6 and that one works19:33
menesislater I will update Makefiles to use virtualenv and buildout 1.519:33
menesisour bootstrap.py is getting old19:34
th1aOK, so I'll tell him to try make BOOTSTRAP_PYTHON=python2.619:36
menesisreplied19:37
th1aOh, I didn't send you the error!19:38
th1aWait, sorry, my fault.19:38
th1aOK, sent.19:38
menesisprobably can find in irclogs19:39
*** alga has joined #schooltool19:41
*** menesis has quit IRC19:57
*** alga has quit IRC20:18
*** alga has joined #schooltool20:19
*** fsufitch has joined #schooltool20:24
*** menesis has joined #schooltool20:41
replaceafillth1a david's problem is related to aelkner's demo_fields branch being old and declaring 1.5.3dev for its version20:49
th1aOK, so if he just uses trunk...20:49
replaceafilland from what i can see that branch is marked as "Merged"20:49
replaceafillso, those changes are probably in trunk now20:49
th1aWhat branch should he use?20:49
* replaceafill tries removing schooltool from develop...20:50
replaceafilli was able to reproduce the error20:50
th1aHm.  Seemed to work for me.20:50
replaceafillusing aelkner's branch?20:51
th1aYeah, but whatever.20:51
* replaceafill blames shared eggs20:52
replaceafillyep, removing ../schooltool from buildout.cfg at least allows you to start the server20:52
replaceafilldon't know how will affect functionality though20:52
th1aWell, if you can send David a suggestion, I'd appreciate it.20:53
replaceafillof course20:53
* th1a recalls many conversations with aelkner about why we don't want users using eggs...20:53
*** fsufitch has quit IRC21:09
jelknerasharma 's blog is available at: http://asharmaschooltool.blogspot.com21:18
jelknera few follows and words of encouragement would be most appreciated! ;-)21:18
jelknerI posted today about our efforts to get Nepali support into sphinx: http://proyectojuanchacon.blogspot.com/2011/05/creating-nepali-po-file-for-sphinx.html21:19
*** fsufitch has joined #schooltool21:25
*** asharma has quit IRC21:55
fsufitchreplaceafill, ping22:38
replaceafillfsufitch pong22:38
fsufitchim working on pybookbuilder, on the bzr version control user story, and i'd like your opinion on some things22:39
replaceafillok22:39
replaceafillhave you pushed your changes?22:40
fsufitchi'm in the "code planning" stage, no real changes to the code yet22:40
replaceafillah, understood22:41
fsufitchso, i'm thinking of refactoring the Book/Chapter objects to just contain metadata for their respective objects, while the actual data is stored in files22:41
fsufitchnow, question: when resource_stream() is called, the calls i have always have 'pybookbuilder' as the first argument22:42
fsufitchi know that gets the pybookbuilder folder in the project, but is it bad form to use a different argument like 'bookfiles' or something to store the file data at?22:43
fsufitchi don't want to mix that with my source code22:43
* replaceafill looks at the code...22:44
fsufitchthanks dude :)22:44
replaceafillfsufitch http://packages.python.org/distribute/pkg_resources.html22:45
replaceafillresource_stream(package_or_requirement, resource_name)22:45
replaceafillthe first argument is the name of the package containing the resource22:45
replaceafillso if you change it to 'bookfiles', you have to have a bookfiles package22:45
replaceafillwhere you're getting the resource from22:46
fsufitchhmm22:46
replaceafillquestion, why do you want to take the content out of the database?22:46
fsufitchbecause i want to be able to turn it into a bzr working tree for version control22:46
fsufitchusing the bzrlib package22:47
fsufitchalso, i could stop using /tmp for file storage for compilation and stuff22:47
* replaceafill goes to check bzrlib22:48
fsufitchit's essentially a Python interface to bzr internals22:48
fsufitchso i can use stuff like bzr.workingtree.WorkingTree and bzr.branch.Branch22:49
fsufitchso i can even code features like launchpad integration for pybookbuilder22:49
replaceafillcan't you do that on a temporary folder?22:50
replaceafilli mean, you keep the data on the database22:50
fsufitchnot really, bzr stores all of its info in the .bzr/ folder in the branch's root22:51
replaceafilland when somebody does "bzr branch server" you throw a copy22:51
fsufitchwell yes, but what if the only copy of the project exists solely in pybookbuilder?22:51
fsufitchi mean, i could keep the data in the database if there was an easy way to serialize a whole directory22:51
fsufitchso i can save all of bzr's data without caring for what it is22:52
replaceafillcorrect22:52
fsufitchthat would actually be rather nice22:52
fsufitchbut i don't know of such a way22:52
replaceafill:D22:52
fsufitch... is there such a way?22:52
replaceafilli don't know of any either :(22:53
fsufitchbah22:53
fsufitchwait a minute22:53
fsufitchgzip?22:53
fsufitchor zlib22:53
fsufitchno, zlib is too low-level...22:54
replaceafillso, let me understand this:22:56
replaceafillthe body of the chapter is stored under....22:56
fsufitchchapter<numberhere>.rst22:57
replaceafillno, i mean, in the resource22:57
replaceafillChapter22:57
fsufitchoh22:57
replaceafillChapter.data, right?22:57
fsufitchyes22:57
fsufitchi'm talking about storing that in an external file, in order to version control it22:58
replaceafilli'm reading at the API docs of pybookbuilder... :/22:58
fsufitchheh, sorry...22:58
fsufitchbut yes, it's Chapter.data22:58
replaceafilland the chapter is saved using save_chapter_ajax?23:00
fsufitchyes23:00
replaceafillso, instead of doing context.data = ... you would get and update the file on the filesystem23:01
fsufitchyes23:01
fsufitchheh, im thinking back to when i was working at Google23:02
replaceafilland provide some bzrlib interface to do "bzr branch URL", getting the books directory23:02
fsufitchthis is the point where someone would just pipe up and go "we need to create a new filesystem!"23:02
replaceafill:|23:03
fsufitchno seriously, all projects there involve at least 3 or 4 different filesystems working in tandem23:03
fsufitchit's sort of ridiculous23:03
replaceafill:D23:03
fsufitchwell, "bzr branch" a future feature, for starters i need commit, log, and revert23:04
replaceafillwell, im "uneasy" about depending on the filesystem...23:04
replaceafillmoving the Data.fs is easy23:04
* fsufitch shrugs23:04
fsufitchi am too, but meh23:04
fsufitchyou mean for migration from one instance to another?23:05
replaceafillor backups or sometihng23:05
fsufitchi could make it be on the filesystem but also keep tar backups of what's there inside the Data.fs23:05
fsufitchand give it a feature to just dump that data out onto the filesystem23:06
replaceafillto me the best scenario is to translate changes from the database to a temporary directory in the filesystem23:06
replaceafilland maybe use bzrlib there23:07
replaceafillbut hey, i just found out about bzrlib today ;)23:07
fsufitchthat works, keep a serialized tar or gzip archive of it in Data.fs, then dump it out to /tmp/something/ to write stuff to it, and eat it back up to store it23:07
fsufitchbut that's incredibly slow23:07
replaceafillbut easier to maintain?23:08
fsufitchbzrlib is pretty cool23:08
fsufitchyeah, should be...23:08
fsufitchtrouble is, it wouldn't just be slow for writing, it would be slow for reading too23:08
fsufitchbecause you need to un-tar the archive on access23:09
replaceafillfsufitch hold on, talking to jelkner :)23:12
*** fsufitch has quit IRC23:13
*** fsufitch has joined #schooltool23:15
fsufitchwell that was fun, my mouse stopped responding and i had to log out/back in23:15
replaceafill:D23:16
fsufitchit's this odd bug i'm having with X or something23:16
fsufitchfor reasons i can't identify, i become unable to click on anything but the focused window, and even that one doesn't respond properly23:17
fsufitchalso alt-tab ceases to work23:17
replaceafillcan you click the desktop?23:18
replaceafilli have a similar issue with Natty in my wife's laptop23:19
replaceafilland it's the volume indicator!23:19
replaceafillif i turn the volume up/down, everything goes back to normal23:19
fsufitchi havent tried the desktop, it's usually covered in windows23:19
fsufitch... really...23:19
fsufitchi'll try that next time23:19
replaceafill:D23:19
replaceafillso, going back to pybookbuilder23:20
replaceafilli understand your approach23:20
fsufitchand i know it sucks becuase it depends on the file system for storage23:20
replaceafillbut hey, it's possible :P23:21
fsufitchmaybe i could just back up books to a serialized TAR in the Data.fs now and then23:21
replaceafill+123:21
replaceafillagain, sounds easier to maintain23:21
fsufitchso, keep the file system as primary storage, but be able to restore it if just the data.fs gets moved23:21
replaceafillah23:21
fsufitchif i keep the TAR in the Data.fs as primary storage, and just use filesystem for temporary storage, then i have trouble with slowness23:22
replaceafillpremature optimization? :P23:22
replaceafillno, seriously i get your point23:23
fsufitchi would argue that it's not "premature optimization", it's "writing code that would take half a minute to render each page, aka broken code"23:23
fsufitchwell, half a minute is an exaggeration, but it would be pretty terrible23:23
replaceafill:D23:25
replaceafillwhat does the customer says about this?23:25
fsufitchhavent asked him yet, but i bet he'll want it to "just work" :-P23:26
fsufitchwill go do so now23:26
replaceafillso, tell him about which one would take you longer to develop ;)23:26
fsufitchwell both of them require code refactoring to store stuff in files23:31
fsufitchso they're about the same23:31
fsufitchbut he said my option makes more sense because, while it depends more on the filesystem, it also allows access to the files via command line23:32
replaceafill:|23:33
fsufitchwhich is an option that is good to have, if only for accessing bzr features that you can't do yet via the pybookbuilder web interface23:33
replaceafillright23:33
replaceafillwell, there you go! :/23:33
replaceafilldata is out of Chapter!23:33
replaceafill:(23:33
fsufitchlol, why does that make you sad?23:33
replaceafillcause i'll miss that attribute :D23:34
fsufitchbecause it was so fun to find?23:34
replaceafill:))23:34
fsufitch:)23:34
fsufitchand this refactor i will force myself to write proper unit and functional testing for all this23:39
replaceafill+123:40
replaceafilli think i put an example for webtest, right?23:40
replaceafillah yes, "Pyramid links" :D23:41
fsufitchyes23:41
fsufitchhmm but i dont see unit test example23:42
fsufitchor doctest rather23:42
fsufitchhow can i set that up?23:42
replaceafillno, it's in a unittest23:42
fsufitchoh, this ViewTests23:43
replaceafillclass FunctionalTests(unittest.TestCase):23:43
replaceafillViewTests are supposed to be "unit" tests for the views23:43
fsufitcher... why unit test the views?23:43
fsufitchfunctional tests should test those23:44
replaceafill:|23:44
replaceafilland you have to bootstrap the whole environment ;)23:44
fsufitchyou're talking about 3 levels of tests then?23:44
fsufitchunit tests for unit code, unit tests for view code, and functional tests?23:44
fsufitchoh... damn23:45
replaceafillwell, as long as you have any kind of test :P23:45
fsufitchyou're right23:45
fsufitchthe whole directory structure, geh23:45
replaceafilland you have coverage reports just in case ;)23:45
fsufitchi'll have to make the "root" directory a temp one23:45
*** replaceafill has quit IRC23:48
*** replaceafill has joined #schooltool23:49
fsufitchoh that's not hard, i just modify the NonPersistentApplicationFinder23:49
replaceafill;)23:50

Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!