| [00:12:44] |
* |
paulproteus has left #trac |
| [00:17:06] |
* |
cmlenz has joined #trac |
| [00:53:40] |
* |
wbb4 has quit IRC |
| [00:53:50] |
* |
wbb4 has joined #trac |
| [01:03:50] |
* |
cmlenz has quit IRC |
| [01:18:08] |
* |
cmlenz has joined #trac |
| [01:25:41] |
* |
asmodai pats cmlenz |
| [01:26:40] |
<cmlenz> |
hey asmodai |
| [01:27:06] |
<asmodai> |
mat|work: One problem I have with 'needinfo', if your trac is not set up to email stuff, and by default it isn't what I know, you basically require the end-user to periodically check the ticket |
| [01:28:22] |
<asmodai> |
cmlenz: that's one thing I am still divided over, at one point I understand and appreciate how clean trac is and doesn't enforce stuff on you, on the other hand I sometimes find the base install to be a bit too sparse for effective ticket management. |
| [01:32:50] |
<cmlenz> |
asmodai: do something about it :-D |
| [01:33:08] |
<cmlenz> |
I do agree though |
| [01:33:50] |
<asmodai> |
webadmin is a good step forward, on the other hand, you cannot enforce feedback needed/needinfo emails to the originator if we allow freeform user entries |
| [01:34:12] |
<asmodai> |
otoh, I am also not sure if mandatory registration for user or email address is what people would like/want |
| [01:34:44] |
* |
maxb has joined #trac |
| [01:35:02] |
<cmlenz> |
if the reporter wants to see a reported issue fixed, chances are he'll include contact info |
| [01:35:29] |
<asmodai> |
*nod* |
| [01:35:36] |
<asmodai> |
So what part did you agree with? :) |
| [01:36:08] |
<cmlenz> |
well, that in general, trac is probably too simple for ticket management in large projects |
| [01:36:40] |
<asmodai> |
*nod* |
| [01:40:41] |
<asmodai> |
cmlenz: question is, what should be changed |
| [01:40:58] |
<asmodai> |
One major thing is the multiple projects setup within one config. |
| [01:41:17] |
* |
asmodai checks soome more |
| [01:42:41] |
<asmodai> |
cmlenz: can't we turn off report to use query in SVN trunk when .10 is released? :) |
| [01:43:17] |
<cmlenz> |
query desperately needs support for date-based queries/ordering/grouping |
| [01:43:26] |
<cmlenz> |
but I'd like to make queries the default |
| [01:44:22] |
<asmodai> |
cmlenz: select on when they were opened? or also when last modified? |
| [01:44:26] |
<asmodai> |
mmm |
| [01:44:29] |
<asmodai> |
interesting |
| [01:44:43] |
* |
asmodai wonders if he could hack that up |
| [01:44:53] |
<cmlenz> |
anything... in the future (workflow merge) you'll also be able to have datetime custom fields |
| [01:45:06] |
<cmlenz> |
so you want "show me every open ticket not touched in the last 2 months" |
| [01:45:13] |
<cmlenz> |
and things like that |
| [01:45:40] |
<asmodai> |
*nod* |
| [01:45:47] |
<cmlenz> |
basically what's needed is a good conceptual model and some UI ideas |
| [01:45:54] |
<cmlenz> |
the implementation is the easy part :-P |
| [01:46:00] |
<asmodai> |
that should be an easy hack for me to dive into the source, no? |
| [01:46:07] |
<asmodai> |
conceptual model and UI for what? |
| [01:46:20] |
<cmlenz> |
for datetime-based queries |
| [01:46:56] |
<cmlenz> |
what are the use cases, requirements etc |
| [01:48:57] |
<asmodai> |
How verbose do you want it? |
| [01:50:23] |
<cmlenz> |
whatever it takes ;-) |
| [01:50:59] |
<asmodai> |
cmlenz: I could describe a few. But then what for your UI idea? :P |
| [01:51:14] |
<cmlenz> |
I don't really have any, that's the problem |
| [01:51:23] |
<cmlenz> |
it should obviously fit in nicely with the current filter UI |
| [01:51:41] |
<cmlenz> |
you need to be able to specify absolute dates and time spans |
| [01:52:22] |
<cmlenz> |
e.g. "last_modified" / "in range" / "last 2 weeks" |
| [01:52:39] |
<cmlenz> |
"due" / "in range" / "next 2 weeks" |
| [01:52:42] |
<cmlenz> |
stuff like that |
| [01:53:20] |
<asmodai> |
ah |
| [01:53:23] |
<asmodai> |
mmm |
| [01:54:19] |
<cmlenz> |
in general, email client filter GUIs are a good inspiration source for the query filter interface |
| [01:59:12] |
* |
fredb has joined #trac |
| [02:00:29] |
* |
fredb_ has quit IRC |
| [02:02:38] |
* |
asmodai checks out markup's trunk |
| [02:02:50] |
<asmodai> |
cmlenz: Most of the templates still need conversion? |
| [02:03:00] |
<cmlenz> |
yeah |
| [02:03:36] |
<cmlenz> |
really need to move that into the trac sandbox |
| [02:07:49] |
<asmodai> |
cmlenz: after the conversion, right? |
| [02:07:59] |
<cmlenz> |
what conversion? |
| [02:08:26] |
<asmodai> |
Didn't you have a repo where you were already converting the trac templates from cs to markup? |
| [02:12:32] |
<cmlenz> |
yeah, in the markup repos... but I'd like to move that effort into the Trac sandbox |
| [02:12:37] |
<cmlenz> |
because that's where it belongs ;-) |
| [02:13:06] |
<cmlenz> |
currently it's in examples/trac in the markup trunk |
| [02:18:07] |
* |
Sonderblade has joined #trac |
| [02:21:06] |
* |
angrymike has joined #trac |
| [02:22:48] |
* |
tuxipuxi has joined #trac |
| [02:34:22] |
<asmodai> |
cmlenz: will check and work on some additional |
| [02:34:48] |
* |
simmerz has joined #trac |
| [02:35:11] |
<simmerz> |
where do i need to look to deal with setting up multi-repository/multi-project support? |
| [02:36:47] |
* |
tuxipuxi still wonders who is keen to patch Trac to get extra functionality. he prefers painless upgrades |
| [02:39:10] |
<cmlenz> |
tuxipuxi: hmm? |
| [02:41:18] |
<tuxipuxi> |
cmlenz: well.. how many people came here asking how to edit the look of trac or how to implement multi-project support or how to add ICQ notifications (possible in 0.10, i know)? a lot |
| [02:42:09] |
<maxb> |
Well, if no one played around with the code, it would be rather sad. And would mean there was no pool of contributors |
| [02:42:55] |
<maxb> |
One assumes that (a) upgrades within a stable series should be easy nonetheless, and (b) people comfortable enough to edit the code are capable of forward-porting their changes. |
| [02:43:04] |
<tuxipuxi> |
last time i checked there was no agreement on how multi project support should look like.. and as long as this is not clear it's hard to accept a patch which implements exactly that |
| [02:44:09] |
<maxb> |
Agreed... people looking for an off-the-shelf solution right now are misguided. |
| [02:56:41] |
* |
Getty has quit IRC |
| [02:57:24] |
* |
Getty has joined #trac |
| [03:02:05] |
<asmodai> |
ICQ notifications? Oh dear. :) |
| [03:05:27] |
<tuxipuxi> |
asmodai: http://trac-hacks.org/ticket/506 e.g. :) |
| [03:06:25] |
<asmodai> |
but what about: AIM, MSN, Y!? |
| [03:06:25] |
<asmodai> |
;) |
| [03:07:29] |
<tuxipuxi> |
that will be part of the more general TracBot framework! ;) |
| [03:19:39] |
<asmodai> |
cmlenz: Anything against trac having a setup.cfg that also has a egg_info with |
| [03:19:39] |
<asmodai> |
tag_build = dev |
| [03:19:39] |
<asmodai> |
tag_svn_revision = true |
| [03:20:09] |
<cmlenz> |
stuff like that is going in the setuptools branch for now |
| [03:20:13] |
<cmlenz> |
(which has that already) |
| [03:20:17] |
<asmodai> |
oh ok |
| [03:20:24] |
* |
asmodai wonders how many branches there are. |
| [03:20:26] |
<asmodai> |
;) |
| [03:22:15] |
<maxb> |
Trac does seem to be toward the higher end of the spectrum in terms of amount of feature branch usage |
| [03:23:16] |
<asmodai> |
svn branches are cheap ;') |
| [03:24:15] |
<maxb> |
True... but the developers' mental energy used juggling them all is less so. |
| [03:32:13] |
<cmlenz> |
ideally, when we release a major version, and open trunk for new features, that just means merging a number of existing branches into trunk, no major new feature development |
| [03:32:53] |
<cmlenz> |
the branches themselves have been developed and have seen some limited testing, so after the merge we need to make sure the work well together, fix bugs and polish |
| [03:33:43] |
<sam`> |
hi |
| [03:34:06] |
<sam`> |
just a wondering about the 'read-only' bit on wiki pages : does it mess with trac-admin wiki-upgrade or can it be safely done ? |
| [03:37:22] |
* |
_idostyle has joined #trac |
| [03:39:49] |
<cmlenz> |
no, wiki-upgrade doesn't care about the read-only flag |
| [03:41:56] |
* |
asmodai fights with markup :) |
| [03:42:44] |
<asmodai> |
cmlenz: Did you not add an include like operator? |
| [03:43:21] |
<cmlenz> |
RTFM ;-) |
| [03:43:30] |
<cmlenz> |
http://markup.edgewall.org/wiki/MarkupTemplates#TemplateIncludes |
| [03:43:59] |
<asmodai> |
cmlenz: I was busy on that |
| [03:44:10] |
<asmodai> |
just wondering why you were duplicating the preamble ;) |
| [03:44:41] |
<asmodai> |
alrighty |
| [03:44:53] |
<asmodai> |
ah duh |
| [03:45:03] |
<asmodai> |
yeah, that will limit you |
| [03:45:52] |
<cmlenz> |
hmm? |
| [03:46:22] |
<asmodai> |
cmlenz: Oh, you'll always need the DOCTYPE in each document due to needing XInclude for includes. |
| [03:46:44] |
<cmlenz> |
ah no, it's more complicated than that |
| [03:47:09] |
<cmlenz> |
you *can* use the DOCTYPE everywhere *if* you want your templates to validate |
| [03:47:21] |
<cmlenz> |
and show up correctly when viewed directly |
| [03:47:44] |
<asmodai> |
*nod* |
| [03:47:47] |
<cmlenz> |
if you *don't* care about that (the common case), you just tell the serializer what DOCTYPE to use in the application code, and omit it from the templates |
| [03:48:26] |
<cmlenz> |
I haven't updated the Trac port to do that yet |
| [03:48:49] |
<asmodai> |
Ah right. |
| [03:48:52] |
<asmodai> |
Nice. |
| [03:49:39] |
* |
mat|work has left #trac |
| [03:50:31] |
* |
idostyle has quit IRC |
| [03:50:34] |
* |
_idostyle is now known as idostyle |
| [04:02:56] |
* |
Getty has quit IRC |
| [04:03:39] |
* |
Getty has joined #trac |
| [04:07:28] |
<asmodai> |
cmlenz: which has precedence at the moment if two files exist? .cs or .html? :) |
| [04:11:24] |
<asmodai> |
cmlenz: mmm |
| [04:11:28] |
<asmodai> |
cmlenz: http://trac.in-nomine.org:81/trac/about |
| [04:13:38] |
<angrymike> |
hi all, has anyone used the trac packages at: http://packman.links2linux.org/?action=781 |
| [04:13:48] |
<angrymike> |
they are for Suse |
| [04:14:15] |
* |
asmodai goes hunting what this bool issue is |
| [04:27:10] |
* |
TML has left #trac |
| [04:31:48] |
<mitsuhiko> |
cmlenz: markup looks great |
| [04:32:15] |
<mitsuhiko> |
cmlenz: but it would be even better if it would be possible to have sandboxed templates (no python code execution) |
| [04:33:02] |
<cmlenz> |
I don't agree... well, if there existed sandboxed execution in python maybe |
| [04:33:21] |
<cmlenz> |
but one thing I definitely not want is some crippled expression language like TALES or the django stuff |
| [04:45:58] |
* |
asmodai cripples cmlenz |
| [04:46:33] |
<mitsuhiko> |
cmlenz: django template language isn't crippled |
| [04:47:11] |
<cmlenz> |
hmm, try {% if foo == 'bar' %} ;-) |
| [04:47:36] |
<cmlenz> |
ah, no, I need {% ifequal foo "bar" %} |
| [04:47:53] |
<cmlenz> |
oh, now what if I want "foo > 3"... create a custom tag :-P |
| [04:47:59] |
<cmlenz> |
I call that crippled |
| [04:49:16] |
<idnar> |
I don't personally like mixing code into my template files, which is probably why I'm so fond of Nevow |
| [04:53:19] |
<cmlenz> |
IMO nevow moves way to much of the presentation logic into python code |
| [04:53:34] |
<cmlenz> |
resulting in tight coupling between the controllers and the templates |
| [04:53:42] |
<cmlenz> |
if that kind of logic even applies to nevow |
| [04:53:44] |
<cmlenz> |
:-Ü |
| [04:54:24] |
<idnar> |
I consider that a good thing ;) |
| [04:55:00] |
<cmlenz> |
we'll have to agree that we disagree there then ;-) |
| [04:55:17] |
<idnar> |
well, yeah, to each his own |
| [04:55:33] |
<idnar> |
I like to write my python code in python source files, XHTML in XHTML files, JavaScript in JS files, CSS in CSS files, etc. |
| [05:03:45] |
* |
moisei has joined #trac |
| [05:03:49] |
* |
moisei is now known as Moisei |
| [05:03:56] |
<Moisei> |
hi. anybody is round? |
| [05:04:00] |
<Moisei> |
=around |
| [05:07:08] |
<Moisei> |
I would like to move my pachae server that running trac to another machine. is there some tool that helps me to mograte trac as well? |
| [05:11:48] |
* |
Riccc has joined #trac |
| [05:18:58] |
* |
_idostyle has joined #trac |
| [05:24:24] |
* |
Champion_du_Mond has quit IRC |
| [05:27:06] |
<asmodai> |
just copy the trac dir in its entirety |
| [05:27:48] |
<asmodai> |
and of course install trac on the bother box |
| [05:36:18] |
* |
tuxipuxi has quit IRC |
| [05:37:00] |
* |
idostyle has quit IRC |
| [05:37:07] |
* |
_idostyle is now known as idostyle |
| [06:41:04] |
<Sonderblade> |
does the trac wiki support redirect links? |
| [06:44:29] |
* |
agile has quit IRC |
| [06:58:48] |
<Moisei> |
asmodai - what about wiki? |
| [06:58:58] |
<Moisei> |
how do i migrate the lages? |
| [06:59:01] |
<Moisei> |
=the pages? |
| [07:01:30] |
<asmodai> |
AFAIK they're all in the database. |
| [07:01:44] |
<asmodai> |
trac/db/trac.db by default |
| [07:01:50] |
<Moisei> |
anybody? how to migrate trac wiki pages when trac is migrated to another server? |
| [07:09:32] |
<otaku42> |
Moisei: trac-admin <path_to_your_trac_environment> hotcopy <path_to_backup>, then copy the backup to the other server and use it as environment there? |
| [07:10:15] |
<otaku42> |
Moisei: if that is not what you want: trac-admin provides commands to save wiki pages to a file and create wiki pages out of a file. |
| [07:12:01] |
<mitsuhiko> |
cmlenz: just don't put login into program code |
| [07:22:52] |
* |
danbeck has joined #trac |
| [07:22:55] |
* |
tuxipuxi has joined #trac |
| [07:26:16] |
* |
agile has joined #trac |
| [07:29:17] |
* |
ryepup_ has joined #trac |
| [07:30:57] |
* |
roo9 has quit IRC |
| [07:31:00] |
* |
olafnils has joined #trac |
| [07:31:12] |
* |
nihi|ist- has joined #trac |
| [07:36:54] |
<tic> |
nevow is yum |
| [07:45:58] |
* |
mjg2 has joined #trac |
| [07:46:31] |
* |
nihi|ist has quit IRC |
| [07:47:00] |
* |
nihi|ist- is now known as nihi|ist |
| [07:47:30] |
* |
ryepup has quit IRC |
| [07:49:48] |
<cmlenz> |
I've got a challenge for all you nevow fans: implement the benchmark example here: http://markup.edgewall.org/browser/trunk/examples/bench/run.py#L91 |
| [07:50:29] |
<tuxipuxi> |
the colours of the report views can not be configured, except in the templates itself, right? |
| [07:51:04] |
<cmlenz> |
I think they're actually hard coded in the report SQL |
| [07:51:27] |
<cmlenz> |
the colors in *queries* can be customized via CSS |
| [07:53:54] |
<tuxipuxi> |
ah i see, thanks |
| [07:58:00] |
* |
milk-it has joined #trac |
| [08:03:04] |
<tuxipuxi> |
cmlenz: uhm, wasn't there an option to change the date formatting? |
| [08:03:41] |
<cmlenz> |
http://trac.edgewall.org/wiki/TracFaq#how-do-i-change-the-format-used-for-displaying-date-and-time |
| [08:04:58] |
<tuxipuxi> |
thanks! |
| [08:05:34] |
* |
xjjk has joined #trac |
| [08:09:04] |
<tuxipuxi> |
cmlenz: it would be much better if this was a setting in trac.ini. any chance to get this in 0.10? |
| [08:09:27] |
<cmlenz> |
nope :-) |
| [08:09:41] |
<cmlenz> |
0.11 is supposed to be the release with improve i18n |
| [08:09:46] |
<tuxipuxi> |
damn |
| [08:09:56] |
<cmlenz> |
you can't imagine how much internationalized date formatting sucks in Python |
| [08:10:05] |
<tuxipuxi> |
guess 0.11's release is still far away? |
| [08:10:12] |
<cmlenz> |
yes |
| [08:10:34] |
<cmlenz> |
so whats the problem with LC_TIME anyway? |
| [08:10:47] |
<tuxipuxi> |
i'd think that it's just passing the trac.ini date format like dd/mm/yyyy to a python date formatting method? |
| [08:11:20] |
<tuxipuxi> |
the problem is that i'm using mod_macro and thus can't/don't want to change per-project settings in the apache configuration |
| [08:11:44] |
<cmlenz> |
well, add another macro var ;-) |
| [08:12:13] |
<tuxipuxi> |
this would require changes in other scripts as well, unfortunately ;) |
| [08:12:51] |
* |
Champion_du_Mond has joined #trac |
| [08:16:18] |
* |
klasstek has joined #trac |
| [08:27:16] |
* |
Riccc has quit IRC |
| [08:38:41] |
* |
otaku42 is now known as otaku42_away |
| [08:56:09] |
* |
johnjay has quit IRC |
| [08:56:44] |
* |
johnjay has joined #trac |
| [09:08:23] |
* |
coderanger_ has joined #trac |
| [09:15:20] |
* |
jtoy has joined #trac |
| [09:15:39] |
<jtoy> |
there a way to set trac so that the default permissions is that everyone is TRAC_ADMIN ? |
| [09:16:05] |
<pacopablo> |
authenticated users I take it? |
| [09:16:20] |
<pacopablo> |
trac-admin /path/to/env permission add authenticated TRAC_ADMIN |
| [09:16:43] |
<pacopablo> |
you could add TRAC_ADMIN to anonymous, but then I think you'd probably be crazy. |
| [09:19:56] |
* |
matt_good has joined #trac |
| [09:24:47] |
<jtoy> |
oh yeah, set to anonymous |
| [09:24:59] |
<jtoy> |
pacopablo: we are suing inhouse fora couple of developers |
| [09:25:54] |
<jtoy> |
is there a way to set TRAC_ADMIN for authenitcated users but not anonymous users? |
| [09:26:32] |
* |
_idostyle has joined #trac |
| [09:34:09] |
<coderanger_> |
jtoy: Look at the anonymous vs. authenticated groups |
| [09:39:39] |
* |
cmlenz has quit IRC |
| [09:40:57] |
* |
idostyle has quit IRC |
| [09:41:00] |
* |
_idostyle is now known as idostyle |
| [09:44:52] |
<pacopablo> |
jtoy: use the line that I posted |
| [09:45:39] |
<jtoy> |
oh ok, I didnt know authenticated was a macro/var |
| [09:46:40] |
<pacopablo> |
it's a built in group |
| [09:46:45] |
<pacopablo> |
linke anonymous |
| [09:46:51] |
<pacopablo> |
er, like, even |
| [09:46:58] |
<pacopablo> |
@faq logging |
| [09:46:58] |
<evil_twin> |
pacopablo: "logging" is http://projects.edgewall.com/trac/wiki/TracLogging <-- Enable debug logging to file, ensure your environments log/ directory is writeable by your web server user, check for errors. |
| [09:47:03] |
<pacopablo> |
thanks evil_twin |
| [09:47:45] |
* |
jborg has joined #trac |
| [09:50:23] |
* |
Sonderblade has quit IRC |
| [09:54:31] |
* |
chjunior has joined #trac |
| [09:56:01] |
<alect> |
morning |
| [09:56:06] |
<pacopablo> |
morning |
| [09:56:47] |
<alect> |
how's the ups saga going? |
| [09:57:26] |
<pacopablo> |
poorly |
| [09:57:45] |
<pacopablo> |
I now only have my server on the UPS, nothing else plugged into the unit |
| [09:57:52] |
<pacopablo> |
and it still went down yesterday morning |
| [09:58:12] |
<pacopablo> |
so far it hasn't died today, which is kind of good |
| [09:58:23] |
<pacopablo> |
but I'll probably call tech support again after work and complain |
| [10:07:58] |
<alect> |
man that is sucky |
| [10:08:00] |
* |
simmerz has quit IRC |
| [10:08:07] |
<pacopablo> |
mucho sucky |
| [10:10:47] |
* |
ContingencyPlan has joined #trac |
| [10:10:48] |
<alect> |
so....markup eh |
| [10:11:28] |
* |
pacopablo still wants to see a bit more flexible templating ssytem |
| [10:11:50] |
<pacopablo> |
so that some can use markup and other can use cheetah, stan, or whatever |
| [10:11:59] |
<alect> |
yeah |
| [10:12:06] |
<alect> |
i suspect that's not gonna happen |
| [10:12:35] |
<coderanger_> |
Its doable in plugins, just not easy |
| [10:12:43] |
<pacopablo> |
TracIStan :) |
| [10:12:51] |
<pacopablo> |
except that isn't even the ideal |
| [10:13:01] |
<pacopablo> |
it's slightly nicer as it can include CS templates |
| [10:13:13] |
<pacopablo> |
but the reverse isn't true. |
| [10:13:48] |
<alect> |
i'd guess that the only support, if any, will be backwards compat for clearsilver |
| [10:13:58] |
<pacopablo> |
since markup is a stream processor, shouldn't it be able to grab the output of some other "plugin" and insert it into it's stream? |
| [10:14:49] |
<pacopablo> |
I wonder if the XPath support can be extended/mutated to support including of other templates |
| [10:15:07] |
<alect> |
you can add custom commands to markup |
| [10:15:13] |
<alect> |
but cmlenz didn't seem to like that idea |
| [10:15:23] |
* |
cmlenz has joined #trac |
| [10:15:26] |
<alect> |
but that doesn't mean you can't do it ;) |
| [10:15:26] |
<pacopablo> |
well, we'll just have to work on him a bit :) |
| [10:15:30] |
<pacopablo> |
speak of the devil! |
| [10:15:32] |
<alect> |
speak of the devil |
| [10:15:33] |
<alect> |
haha |
| [10:15:41] |
<pacopablo> |
his ears must have been burning |
| [10:16:28] |
* |
ContingencyPlan has quit IRC |
| [10:16:38] |
<alect> |
parallels makes my whole system run like a dog |
| [10:16:56] |
* |
raidman|Away is now known as raidman |
| [10:16:58] |
<alect> |
an old crotchety dog |
| [10:19:06] |
<pacopablo> |
parallels? |
| [10:20:30] |
<jborg> |
alect, really? I'm very impressed by the speed of parallels myself. |
| [10:21:01] |
<pacopablo> |
must be an OSeX thing |
| [10:21:23] |
<jborg> |
pacopablo, http://parallels.com/ |
| [10:22:25] |
<pacopablo> |
ahh |
| [10:25:18] |
* |
contingencyplan has joined #trac |
| [10:25:18] |
<alect> |
i'm running two at once |
| [10:25:28] |
<alect> |
it just crashed my system entirely in fact |
| [10:25:34] |
* |
alect mutters under his breath |
| [10:27:15] |
<alect> |
one seems okay |
| [10:27:20] |
<alect> |
two...not so much |
| [10:28:10] |
<jborg> |
okay, I've never tried two at once. |
| [10:31:00] |
<alect> |
FUCCCCCCCkkkkkkkkkk, and now .mail has lost all my settings and mailboxes |
| [10:31:08] |
<pacopablo> |
woohoo! :) |
| [10:31:20] |
<alect> |
mail.app sucks of the arse |
| [10:32:43] |
<contingencyplan> |
Question for y'all: I'm trying to write a "universal login" system in PHP that integrates with Mediawiki, SMF, and Trac. The first two are easy enough (since they're also written in PHP). Is it possible to write a PHP script to interact with Trac's python stuff (namely the login aspect)? |
| [10:33:23] |
<coderanger_> |
Not easy |
| [10:34:06] |
<pacopablo> |
shouldn't be too hard |
| [10:34:19] |
<pacopablo> |
though it would require writing a custom login plugin in trac |
| [10:34:20] |
<xjjk> |
why are you writing it in PHP |
| [10:34:29] |
<pacopablo> |
with the account manager plugin interface |
| [10:34:39] |
<pacopablo> |
xjjk: some people like pain :) |
| [10:34:39] |
<coderanger_> |
pacopablo: How would you make a login plugin in PHP |
| [10:34:42] |
<contingencyplan> |
pacopablo, well, writing our own plugin shouldn't be too difficult? |
| [10:34:43] |
<xjjk> |
the trac portion, that is |
| [10:34:48] |
<xjjk> |
if you're writing it on your own |
| [10:34:53] |
<xjjk> |
why not write a separate python version? |
| [10:35:01] |
<contingencyplan> |
xjjk, well, is there a way to interface PHP with Python through mod_python? |
| [10:35:09] |
<pacopablo> |
coderanger_: just write it to respect the cookie created and placed on the client from the php app |
| [10:35:18] |
<xjjk> |
contingencyplan: not really... I guess you could resert to SOAP/XML-RPC/something |
| [10:35:32] |
<xjjk> |
resort* |
| [10:35:41] |
<coderanger_> |
pacopablo: Ahh, you will need to use Python for the Trac part though |
| [10:35:51] |
<pacopablo> |
coderanger_: oh, right |
| [10:36:06] |
<pacopablo> |
that's obvious, but then the PHP part wouldn't be too hard |
| [10:36:34] |
<contingencyplan> |
pacopablo, so assuming that you can write a plugin in trac for the login part, how would you hook into it in a PHP script? |
| [10:36:51] |
<pacopablo> |
contingencyplan: take a look at the account manager plugin and it's interfaces |
| [10:37:03] |
<contingencyplan> |
k |
| [10:37:04] |
<pacopablo> |
but the idea is to have it respect a cookie that is created by the php app |
| [10:37:42] |
<pacopablo> |
so the php app would create the cookie, and then when they access trac, it looks at siad cookie and says: "oh, you're authed already" |
| [10:37:48] |
<contingencyplan> |
Okay, gotcha. |
| [10:38:24] |
<contingencyplan> |
interesting. |
| [10:38:35] |
<contingencyplan> |
As another question - the subversion trunk for trac is 0.10, right? |
| [10:38:39] |
<contingencyplan> |
If not, where can I get that version? |
| [10:39:20] |
<xjjk> |
contingencyplan: it is |
| [10:39:46] |
<coderanger_> |
Or to be precise, it will 0.10 at some point |
| [10:40:04] |
<contingencyplan> |
right - but it's the most recent. I'm working with somebody who said it wasn't, that it was 0.9,6. |
| [10:40:56] |
<coderanger_> |
trunk is always "the most recent" |
| [10:41:06] |
<contingencyplan> |
I thought so - figured he was smoking crack or something. |
| [10:41:09] |
<coderanger_> |
though there are a bazillion sandboxes and branches |
| [10:41:19] |
<contingencyplan> |
right. |
| [10:41:32] |
<contingencyplan> |
I'll check where he checked it out from - maybe he checked it out from branches or something. |
| [10:41:45] |
<contingencyplan> |
pacopablo, what information is stored in the cookie? Do you know offhand? |
| [10:42:18] |
<pacopablo> |
contingencyplan: not off hand |
| [10:42:21] |
<coderanger_> |
random string that is in index into the session table |
| [10:42:31] |
<pacopablo> |
contingencyplan: take a look at the form login stuff in acocunt manager |
| [10:42:44] |
<pacopablo> |
or just extract it from coderanger_ :) |
| [10:43:10] |
<contingencyplan> |
pacopablo, gotcha - just trying to get a plan of attack beforehand. My co-worker is ready to scrap Trac because it's can't hook into PHP session variables. |
| [10:43:27] |
<pacopablo> |
bah! :) |
| [10:43:38] |
<pacopablo> |
what session variables are you talking about? |
| [10:43:59] |
<coderanger_> |
PHP's session system makes baby jesus cry |
| [10:44:10] |
<pacopablo> |
hehe |
| [10:45:12] |
* |
peppelorum has joined #trac |
| [10:45:16] |
<contingencyplan> |
coderanger, heh |
| [10:45:50] |
<contingencyplan> |
pacopablo, well, that's just it - Mediawiki and SMF are written in PHP (obviously), so the UL (universal login) script just sets the required session variables for both of those on successful authentication. |
| [10:46:09] |
<contingencyplan> |
He doesn't see a way to set a session variable in Python from within a PHP script. |
| [10:46:34] |
<pacopablo> |
the session variables are contained in a cookie, no? |
| [10:46:46] |
<pacopablo> |
or db, indexed by id in cookie? |
| [10:46:53] |
<coderanger_> |
pacopablo: "its magic" |
| [10:47:00] |
* |
pacopablo has been out of PHP for a while now |
| [10:47:29] |
<pacopablo> |
contingencyplan: you could find out how PHP does it, and then just write a trac plugin to grab the same info |
| [10:47:48] |
<contingencyplan> |
pacopablo, how so? |
| [10:48:14] |
<pacopablo> |
depends on how PHP stores it's session variables, etc |
| [10:48:17] |
<contingencyplan> |
I think the session data is just stored internal - it's lost when you exit the browser. No cookies yet. |
| [10:48:22] |
<pacopablo> |
but it's got to be via cookie some how :) |
| [10:48:49] |
<pacopablo> |
contingencyplan: there has to be a cookie someplace, or else there is now way for an app to trac sessions |
| [10:48:54] |
<pacopablo> |
HTTP is stateless |
| [10:49:16] |
<pacopablo> |
very well could be a session cookie, though, but it's a cookie nonetheless |
| [10:49:21] |
<contingencyplan> |
I'll check, but I don't know of anything that's using cookies. :-? |
| [10:49:42] |
<pacopablo> |
my guess is that it uses cookies behind the scenes |
| [10:49:57] |
<pacopablo> |
or else it passes a session ID via GET or POST parameters |
| [10:50:02] |
<contingencyplan> |
The latter. |
| [10:50:14] |
<pacopablo> |
so it's via GET? |
| [10:50:22] |
<contingencyplan> |
It's through POST (iirc), but yeah. |
| [10:50:37] |
<pacopablo> |
then if you can get it to send the same ID to trac, then trac can use said ID. |
| [10:50:58] |
<contingencyplan> |
but that's the thing - how do I get it to send that to Trac |
| [10:50:59] |
<pacopablo> |
via your custom plugin, of course :) |
| [10:51:21] |
<contingencyplan> |
but what would that plugin do? how would it grab stuff from PHP, or allow PHP to stick stuff in there? |
| [10:51:42] |
<contingencyplan> |
Would it still just write the data to the trac_session cookie, and let Trac grab it from there? |
| [10:53:39] |
<coderanger_> |
Or your own cookie |
| [10:53:50] |
<coderanger_> |
And then let Trac populate its cookie from that |
| [10:53:58] |
<contingencyplan> |
hrm. |
| [10:54:02] |
<contingencyplan> |
okay. |
| [10:54:44] |
<coderanger_> |
Take a look at how the TracCas plugin works |
| [10:54:51] |
<contingencyplan> |
that on trac-hacks? |
| [10:54:54] |
<coderanger_> |
yep |
| [10:55:10] |
<coderanger_> |
it just hijacks the small piece of the login process it needs to change |
| [10:55:31] |
<coderanger_> |
And since it subclasses LoginModule, you get the normal behavior for free |
| [10:55:32] |
<contingencyplan> |
interesting. Lemme look, just a sec |
| [10:55:35] |
<contingencyplan> |
right |
| [10:55:37] |
* |
coderanger_ ->Home |
| [10:55:42] |
* |
coderanger_ has quit IRC |
| [11:05:45] |
|