*** srichter has joined #schooltool | 00:41 | |
*** ignas has joined #schooltool | 01:38 | |
*** jelkner has quit IRC | 02:04 | |
*** pcardune has quit IRC | 02:33 | |
*** pcardune has joined #schooltool | 03:17 | |
*** pcardune has quit IRC | 05:07 | |
*** _pcardune has joined #schooltool | 05:07 | |
*** jinty has joined #schooltool | 05:21 | |
*** _pcardune has quit IRC | 05:40 | |
*** _pcardune has joined #schooltool | 06:07 | |
*** _pcardune is now known as pcardune | 06:11 | |
pcardune | srichter: ayt? | 06:28 |
---|---|---|
*** jinty has quit IRC | 07:03 | |
pcardune | srichter: ayt now? | 07:11 |
*** didymo has quit IRC | 08:16 | |
*** pcardune has quit IRC | 10:06 | |
*** didymo has joined #schooltool | 10:39 | |
*** didymo has quit IRC | 12:33 | |
*** mgedmin has joined #schooltool | 13:20 | |
*** mgedmin has quit IRC | 13:39 | |
*** ignas has quit IRC | 14:35 | |
*** tiredbones has left #schooltool | 15:20 | |
*** tiredbones has joined #schooltool | 15:27 | |
*** ignas has joined #schooltool | 15:42 | |
srichter | th1a: you don't happen to be awake already? | 15:47 |
th1a | Unfortunately, yes. | 15:47 |
srichter | th1a: good morning! :-) | 15:47 |
th1a | Ug. | 15:47 |
srichter | th1a: what would be the preferred documentation format | 15:47 |
srichter | I am torn between LaTeX and just ReST | 15:48 |
th1a | I would think ReST. | 15:48 |
srichter | ok | 15:48 |
th1a | I don't know if anyone else knows LaTeX. | 15:48 |
th1a | I have a book, but I never got too far in it. | 15:48 |
srichter | I'll just note that meta-data is not the best friend of ReST, so making a real book(let) out of it later would envolve a conversion | 15:49 |
th1a | What meta-data? | 15:49 |
srichter | index infromation for example | 15:49 |
srichter | also, ReST is not very structured | 15:49 |
th1a | It's RE-structured. | 15:49 |
srichter | for example, I cannot make the difference between a ZCML and Python code example | 15:49 |
srichter | I mean ReST has several advantages | 15:50 |
th1a | I'm sure it will be adequate for the task. | 15:50 |
srichter | Text is more human readable and it will be easy to integrate into the online help / api doc | 15:50 |
srichter | ok | 15:50 |
srichter | (it is really just a mtter of what you want to do with it) | 15:51 |
th1a | ReST should be fine. | 15:52 |
srichter | ok, will do | 15:52 |
srichter | th1a: do you have someone who could create a cute "Context Help" icon? | 15:54 |
th1a | We don't have anyone on retainer at this point. | 15:55 |
th1a | We usually use GNOME icons in the interim. | 15:56 |
srichter | ok | 15:56 |
srichter | th1a: can the documentation assume that a developer knows Zope 3? | 15:57 |
th1a | No. | 15:57 |
th1a | But you'll have to skimp on the conceptual background. | 15:57 |
th1a | I imagine. | 15:58 |
th1a | I mean, I don't expect a full explanation of interfaces. | 15:59 |
th1a | For example. | 16:00 |
srichter | ok | 16:03 |
srichter | I'll make similar assumptions to the one in my book | 16:03 |
th1a | OK. | 16:04 |
*** povbot` has joined #schooltool | 16:20 | |
*** povbot has quit IRC | 16:20 | |
*** mgedmin has joined #schooltool | 16:21 | |
*** ignas has quit IRC | 17:00 | |
*** povbot has joined #schooltool | 18:04 | |
*** jinty has joined #schooltool | 18:05 | |
povbot | /svn/commits: * srichter committed revision 5361: | 18:10 |
povbot | /svn/commits: All new source code files should be written in restructured text. | 18:10 |
*** mgedmin has quit IRC | 18:19 | |
povbot | /svn/commits: * srichter committed revision 5362: | 18:31 |
povbot | /svn/commits: Fix test failures after Zope 3 trunk misspelling fixes. | 18:31 |
pcardune | srichter: I'm back | 19:01 |
pcardune | srichter: should requirements always be attached using annotations? Should they be accessible through a requirement namespace? Is this anyway similar to the way calendars are attached and viewed? | 19:09 |
srichter | reading... | 19:10 |
srichter | mmh, good question | 19:10 |
srichter | but I would not think so | 19:10 |
pcardune | which questions was that a response to? | 19:11 |
srichter | grades and competencies are sufficiently different | 19:11 |
srichter | the latter | 19:11 |
srichter | but yes, requirements should always be attached using annotations | 19:11 |
th1a | I'm ready to start working on the gradebook, too. | 19:12 |
th1a | I'm thinking requirements are just a base class, so they don't have any views. | 19:12 |
ignas | srichter, what kind of code do i need to scrape on IAnnotatable on all the Group objects in a unit test ? | 19:12 |
srichter | the question of course becomes whether some institutions would use the competency system to do grading as well | 19:12 |
ignas | i am testing an evolution script and it fails adapting Group created in the script to IDependable ... | 19:13 |
srichter | ignas: this sentence does not make sense :-) | 19:13 |
srichter | ignas: ah, I see | 19:13 |
srichter | ignas: zope.app.testing.setup.setUpAnnotations() | 19:13 |
ignas | srichter, not helping :/ | 19:13 |
srichter | and I think a Group class always implements IAttributeAnnotatable anyways. so you should be set | 19:13 |
srichter | if not, you have to also say: classImplements(Group, IAttributeAnnotatable) | 19:14 |
th1a | pcardune: We'll have to decide how much more stuff goes into requirements and what goes into competencies and activities. | 19:14 |
ignas | oh, that's what i wanted | 19:14 |
th1a | But I'm assuming users will never create requirements. | 19:14 |
srichter | th1a: huh> | 19:15 |
pcardune | th1a: well, they will create instances of requirements subclasses | 19:15 |
th1a | Right. | 19:15 |
srichter | th1a: users will create activities and competencies, but probably never the bare naked Requirement instance | 19:15 |
th1a | Yes. | 19:15 |
pcardune | so, would it be appropriate to have a requirement/activity/competency namespace for accessing these things? | 19:16 |
pcardune | as in localhost/++requirement++ gets the schoolwide requirements | 19:17 |
srichter | oh, I see what you mean now | 19:17 |
pcardune | is that a namespace or a view? or do those two terms mean basically the same thing? | 19:18 |
srichter | originally I thought for the SchoolToolApplication we would have a top level container | 19:18 |
srichter | but I think having a namespace is cool too, probably better, since it does not require us to have two different implementations for handling requirements | 19:19 |
pcardune | right, that's what i was thinking too | 19:19 |
pcardune | anyways, i attempted to implement that, but am getting stuck with permissions issues | 19:19 |
srichter | pcardune: a namespace is a traversal component that must be implemented both, as an adapter and a view | 19:19 |
srichter | (ok, my friend just came to pick me up for lunch) | 19:20 |
srichter | I will be back in an hour | 19:20 |
pcardune | ok | 19:20 |
pcardune | I'm going to go have breakfest then | 19:20 |
pcardune | breakfast* | 19:21 |
srichter | I am back | 20:12 |
pcardune | ok, so as i was saying, I started implementing this namespace thing and am having trouble with it | 20:13 |
pcardune | so, just to make sure i have this right, to attach requirements to the SchoolToolApplication, I need to specify that SchoolToolApplication implements IHaveRequirement via zcml directives | 20:14 |
srichter | yes | 20:14 |
pcardune | then I create a view and an adapter with zcml that point to a requirementNamespace class | 20:14 |
pcardune | this should be similar to the apidocNamespace class | 20:15 |
srichter | right, liek the apidoc namespace does, for example | 20:15 |
srichter | yep | 20:15 |
pcardune | one question is, what's the purpose of having the handleNamespace function, why not just put that in the traverse method? | 20:16 |
srichter | there is none | 20:17 |
srichter | as I said when we met, you should just merge that | 20:17 |
srichter | it probably used to have a purpose, but not anymore | 20:17 |
pcardune | ok, that is what I assumed, so on a traversal, we just want to adapt the context (which in this case is a SchoolToolApplication object) to provide IRequirement | 20:18 |
pcardune | and as specified through zcml, that uses the requirement.getRequirement function | 20:19 |
srichter | well, you want to provide IRequirements (not the singular form) | 20:19 |
srichter | right | 20:19 |
pcardune | there is no IRequirements... do you mean IGroupRequirement? | 20:20 |
srichter | well, ok, so the namespace should then adapt to IRequirementContainer | 20:21 |
srichter | (or whatever we called the container) | 20:21 |
pcardune | GroupRequirement contains Requirements | 20:22 |
srichter | let me check | 20:23 |
srichter | ok, so you were right | 20:23 |
srichter | (I was mixing up requirements and evaluations) | 20:24 |
pcardune | ok, so the getRequirement method already handles all that, the problem is that when I try to do this, I get ForbiddenAttribute errors saying that __annotations__ is forbidden | 20:25 |
srichter | ahh, you need to make the getRequirement adapter a trusted adapter | 20:25 |
pcardune | aha... ok... that's why this wasn't working. that's the first i here of a trusted adapter | 20:26 |
pcardune | so how do you do that? | 20:26 |
pcardune | (I tried looking at the calendar code to figure this out... but the solution was elusive) | 20:26 |
pcardune | ok, i found it | 20:35 |
srichter | cool | 20:40 |
pcardune | I also want to set a __parent__ on the adapted object to make it locatable right? And that is done on traversal? | 20:43 |
srichter | correct on both counts | 20:46 |
srichter | however, note that you want to put a LocationProxy around the annotation | 20:46 |
srichter | do not just locate() the adapter | 20:47 |
pcardune | ok, I've got to go to another class, but i'll work on that when i get back | 20:47 |
srichter | ok | 20:48 |
ignas | got trac running on schooltool repository (a copy) and i kind of like it | 21:18 |
*** jinty has quit IRC | 21:36 | |
ignas | srichter, ayt ? | 21:40 |
th1a | ignas: Yes, trac is nice. | 21:41 |
th1a | We'd be using it if LaunchPad wasn't on the way. | 21:41 |
ignas | when LaunchPad will come ? | 21:42 |
th1a | Didn't seem to be much point in moving to Trac then moving to LaunchPad. | 21:42 |
th1a | We definitely won't shift before the summer. | 21:42 |
th1a | Probably in the fall. | 21:42 |
th1a | In a year, basically. | 21:42 |
ignas | ouch | 21:42 |
th1a | I mean, that's when it would make sense for us. | 21:43 |
ignas | so for 1 more year we're stuck with viewCVS + roundup :/ | 21:43 |
th1a | We talked about switching to Trac a year ago. | 21:43 |
th1a | I was very impressed with what I saw from LaunchPad in Montreal. | 21:44 |
srichter | I am here | 21:44 |
* ignas is thinking of dragging his PC to the office to serve as a trac server for schooltool (for the source code browsing mostly ;) | 21:44 | |
ignas | srichter, in schooltool/src/schooltool/level/browser/levels.py | 21:45 |
th1a | You could put trac on www.schooltool.org. | 21:45 |
ignas | the magic with __setattr__ in EditLevelAdapter | 21:45 |
th1a | I'm just not going to pay you to do it ;-) | 21:45 |
ignas | th1a, i know that, but that would still be way too official for me to hack :) | 21:45 |
ignas | now i can just mirror ST repo, and do whatever i want :) | 21:46 |
* th1a is not a RoundUp fan. | 21:46 | |
ignas | the magic is in there because you want to hide the setter ? | 21:46 |
ignas | from apidoc that is | 21:46 |
srichter | I think all issue trackers suck as long as they do not have basic project management features | 21:47 |
srichter | ignas: let me open it | 21:47 |
ignas | and all project management tools suck as long as there are no project managers :) | 21:47 |
ignas | SchoolTool at least has one of these ;) | 21:48 |
srichter | ignas: what magic are you referring to? | 21:48 |
ignas | http://paste.plone.org/1245 | 21:49 |
ignas | the diff | 21:49 |
ignas | why use __setattr__ for a thing that can be accomplished with a simple function ? | 21:50 |
srichter | does your patch work? | 21:52 |
ignas | tests pass | 21:52 |
srichter | I am pretty sure I tried this first | 21:52 |
srichter | mmh, ok, then it is probably superfluous | 21:53 |
* ignas goes to run *all* the tests just to be 100% sure | 21:54 | |
srichter | yeah, I must have been absent minded when I wrote that | 21:54 |
pcardune | yay, the location proxy worked | 22:21 |
*** ignas has quit IRC | 23:20 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!