Thursday, 2009-04-23

../irclogs/#mantishelp.2009-04-23.log
--- scribe started ---00:00
nuclear_eclipsedhx_m: talk to giallu, he wrote it :)00:28
dhx_mnuclear_eclipse: yep, I wasn't directing that towards you :)00:28
nuclear_eclipseah, ok00:29
dhx_mI'm trying to import the Mantis repo from mantisforge... so slow00:29
dhx_ma nice feature would be the ability to perform a shallow checkout/import00:29
dhx_mie. only import commits from point X in time00:29
nuclear_eclipseyeah, the downside to the current implementation is that it's just screen-scraping gitweb00:30
dhx_myep00:31
dhx_mif I have a branch... it doesn't try to import every commit from the branch separately does it?00:31
nuclear_eclipsean eventual goal would be to somehow utilize cli to do the imports, but I'm not too fond of requirong Mantis to clone the entire repo locally =/00:31
dhx_myeah true00:31
nuclear_eclipseit'll only import unique commits, so as soon as it gets through the unique portion of the branch, it'll stop00:32
dhx_mI guess you could have the ability to use git CLI to read a local repo00:32
dhx_mand just give the user the option?00:33
dhx_mor more precisely... a new "localgit" plugin00:33
nuclear_eclipsethat's an option, but still requires a local copy of the repo *somewhere*...00:33
dhx_myep, it'd be the responsbility of the admin to create the local clone, keep it updated, etc00:34
dhx_mor maybe Mantis could update it00:34
dhx_munless git can read remotely via ssh00:34
nuclear_eclipseno, that's what I originally wanted to, a la svn remote logging style import, but I couldn't find a way to do it without just cloning altogether... =/00:36
dhx_mhmm you're right00:37
dhx_mI personally don't see a problem with a local repo00:38
dhx_mI can understand why some might00:38
dhx_mmaybe a local repo can be maintained00:38
dhx_mwhere it only holds the latest commits that need importing00:38
nuclear_eclipsebiggest obstacles are a) where to create the clone, b) how to handle keeping it up to date, c) how to handle merge/rebase conflicts00:39
dhx_myou're right that merge/rebase conflicts wouldn't work00:39
nuclear_eclipseand so I just got to the point that I figured it was simpler and less error prone to just screen-scrape until I could determine a better solution00:40
dhx_myeah every idea I'm trying to come up with at the moment leads to problems00:40
dhx_mlike "how many revisions are waiting to be imported"00:41
nuclear_eclipsethe downside is performance, but only when using a remote gitweb server, and after the initial import, the cost is basically negligible compared to the benefits00:41
nuclear_eclipsewell, even the gitweb solution more or less just blindly imports commits until it reaches commits that it already knows about, so that's not the problem00:42
dhx_mwhat I was thinking... was you could rm -R the locally cloned repo before each update00:42
nuclear_eclipseouch, no thanks :P00:43
dhx_mand then git clone --depth X to get the latest X revisions00:43
dhx_mor something along those lines... to conserve disk space00:43
dhx_mvery ugly :)00:43
nuclear_eclipseI'd much rather keep a full clone and just do `git fetch; git checkout -f origin/branch` :P00:43
nuclear_eclipses/checkout/log/00:43
dhx_mwhat I was trying to get at is if a project as large as KDE wanted to use Mantis00:44
dhx_mthey'd be a little stuffed :p00:44
nuclear_eclipsewell, I think they'd be stuffed regardless of what they tried to use :D00:45
dhx_mwell that is true :)00:49
dhx_mlet's pick on gnome then00:49
dhx_mas they just officially moved to git a few days ago00:49
dhx_mand they setup their repos correctly (1 repo per piece of software/library)00:49
dhx_mso you'd effectively be importing 100 projects into Mantis00:50
dhx_mas I understand the situation, someone would need to manually "Import Latest" on each repo?00:50
nuclear_eclipseyes/no00:51
nuclear_eclipseyou can set up "remote imports", which can be triggered automatically by some "remote" system, as validated by inbound IP address00:51
dhx_mthat'd work nicely then :)00:52
nuclear_eclipseso for instance, on my server at leetcode.net, I have a cronjob that every five minutes triggers a series of curl calls for a list of repository ID's that triggers the remote import action00:52
nuclear_eclipses/five/ten/00:53
dhx_myep00:53
dhx_mI don't suppose it is possible to fork a PHP script into multiple concurrent threads?00:55
nuclear_eclipsenope00:55
dhx_mah and gitweb doesn't seem to have a log view that lists files changed00:56
nuclear_eclipsealso, in the case of Gnome, where they are in 100% control of their repos, I've included a post-receive hook for Git that will automatically trigger a remote import only when necessary, which is naturally more efficient than polling every ten minutes :P00:56
dhx_mnice :)00:56
dhx_mI seem to be averaging 1 commit import/sec00:57
dhx_mmaybe another idea for initial imports is to write a script that works off a local repo (could be anywhere) to create a formatted file which can be uploaded to Mantis00:58
nuclear_eclipsethat sounds about right given latencies and bandwidth...00:58
dhx_mand Mantis will parse that file00:58
dhx_mto quickly import (without all the overhead of HTTP calls)00:58
nuclear_eclipsetrue00:58
dhx_mI guess you don't have to import often00:59
dhx_mso having to wait 3hrs for an initial import isn't too bad00:59
dhx_min the scheme of things00:59
nuclear_eclipseyeah, that's generally what I assumed, plus in most cases, you'll generally have the gitweb instance on either the same server, or a more local server anyways, which greatly speeds up the import rate01:00
dhx_myep01:01
nuclear_eclipseI tested importing the full mantisbt.git from my local gitweb, and it only took about 5 minutes for the 5000+ commits01:01
dhx_mthat's quite good01:02
dhx_mI'm a little confused with how branching works01:04
dhx_mdo I have to specify branches as being a "primary branch" in order for them to show in Mantis?01:04
nuclear_eclipseyou do need to specify in your repo management page what branches/refs you want to follow01:06
dhx_mok so you wouldn't follow branches that are likely going to be deleted in the future?01:06
nuclear_eclipseyou can if you want, it just depends on how much you care about them being tracked in mantis :)01:07
nuclear_eclipseat most, it will just try to import a non-existent branch and silently eat the failure and continue to the next branch01:07
dhx_mwhat would be nice is if you delete a branch (after merging it into master) the branch commits can also be removed from Mantis01:08
dhx_mand the new commits in master (after the merge) are linked in the same way there were in the branch01:08
nuclear_eclipsewell, if you do a real merge (not a rebase), there's no reason to delete the commits, because they're identical to what you see in the remaining branch...01:08
dhx_mso it just updates the branch they're in?01:09
nuclear_eclipsegit doesn't actually track what branch commits are "in"01:09
dhx_mnope01:09
nuclear_eclipsesimilarly, Mantis only tracks the name of the last branch it started importing from01:10
dhx_mI know that a commit to one branch will have the same hash when it is merged into another branch (without conflicts)01:10
dhx_mI was just wondering how Mantis works out which branches contain the commit01:10
nuclear_eclipseeven with conflicts, it will stay as the same hash; the conflict resolutions are stored in the merge commit01:10
dhx_m"last imported from"?01:10
dhx_mah ok01:11
dhx_mlet's say you have master and master 2, where master2 is a direct copy of master01:11
dhx_mdoes Mantis report the commit as being contained within both branches, or just one?01:11
nuclear_eclipsejust the branch that it imported from first01:12
dhx_mhmm ok01:12
dhx_mI guess that makes some sense :)01:13
nuclear_eclipseeg, it traces the 'master' branch, the first commit is hash 123abc, imports it as part of branch 'master', and then continues to import 123abc's parent; then it traces master2, see 123abc and stops because 123abc has already been imported01:13
dhx_mexcept if a commit is pulled from a remote repo into two separate branches?01:13
nuclear_eclipseit basically allows you to retain history of where a commit was first seen01:15
nuclear_eclipseeg, branch master to 'feature' make a commit, and import the feature branch; mantis will make the feature commits as on the feature branch, and later when you merge that to master, it retains the history of that commit having been made on a separate branch01:15
dhx_myep01:16
nuclear_eclipseIMO that keeps more data than rewriting it later01:16
dhx_mbut what if you had two feature branches01:16
dhx_mthat have both pulled in a prerequisite from a remote branch somewhere else01:16
dhx_mor allow me to restart...01:17
dhx_myou have 2 Mantis projects A and B01:17
dhx_mand a gitweb repo setup called X01:17
nuclear_eclipsewell, if they're both identical, then a) the first branch in the list "wins", and b) you have issues :P01:17
dhx_mthe repo has two feature branches I and J01:17
dhx_mfeature branch I is being developed by project A, and J by project B01:18
dhx_mhence both projects want to track process on their branches separately01:18
dhx_ms/process/progress01:19
nuclear_eclipseok, I'm following you so far...01:19
dhx_mif they both pull in a patch from a remote repo01:19
dhx_mboth projects A and B should link the corresponding changeset in Mantis to their 2 separate tickets for feature branch I and J?01:20
dhx_mie.01:20
dhx_mchangeset linked to Mantis ticket #1 in project A01:20
dhx_mchangeset also linked to Mantis ticket #2 in project B01:20
dhx_myet when they click on that changeset to view details, it will just show up as belonging to branch I, because that merge was done first?01:21
nuclear_eclipsethat's correct01:21
nuclear_eclipseI'm not really sure of a better way to do it without duplicating a *lot* of data01:21
dhx_mwhat about the ability to link a changeset to multiple branches?01:22
nuclear_eclipseif that sort of behavior is really a problem, a local tracking branch of the remote commit could be made, and followed by mantis with a higher order than the feature branches....01:22
dhx_myep, I see01:22
nuclear_eclipsedhx_m: that also implies that Mantis needs to start tracing entire branches to check for commits on multiple branches, rather than being able to stop as soon as an existinc commit is found01:23
dhx_mjust with the current system, it'd be a little weird to view ticket #1, click on the attached changeset... and be redirected to the gitweb branch J01:23
dhx_mhmm true01:24
nuclear_eclipsetrue, but if it's really a shared commit from a remote branch, I think there should be tracking of that remote branch in Mantis as well, not just the feature branches01:24
dhx_myep, that makes sense01:24
dhx_mexcept that you'd have to go through the pain of importing repositories at a rate of 1commit/sec :p01:25
dhx_malthough you're right, I doubt it'd be a HUGE problem ;)01:25
nuclear_eclipsewell, I mean more that the local repo should have tracking branch that has any remote commits, and then have I/J pull from that tracking branch01:25
nuclear_eclipseeg, your local repo would have 'master', 'shared' branch for all remote commits, and 'I' and 'J' as feature branches pulling from master and shared....01:26
nuclear_eclipses/all/all shared/01:27
dhx_mah ok01:27
nuclear_eclipsethis is one of those topics where I explicitly decided upon a more generalized approach to the topic, because trying to implement the perfect way of handling every VCS's little nuances would make this project impossible01:28
dhx_myep01:28
nuclear_eclipseand it also greatly simplifies the data model to have only a single branch for each commit01:29
dhx_myep01:29
dhx_malthough that information will likely be incorrect if you've commited something to branch X and then a minute later, you merge it to Y01:30
nuclear_eclipseit's similar to the compromise I make on only storing a single parent commit, which discards data from merge commits, but also greatly simplifies the data model, and still lets the individual integrations follow multiple parent commits during the import process, while discarding them from the resulting data model01:30
dhx_mthen Mantis 4 minutes later (on a cron job) first imports Y, then X... the branch for the changset will be wrong (it didn't first appear in Y)01:31
nuclear_eclipseI would argue that any feature branch that gets merged to another branch 1 minute later is useless to track in Mantis :P01:32
dhx_m:)01:32
dhx_mso best practice for using the plugin would be: use import hooks to ensure that commit notification is done in order01:33
nuclear_eclipsenow, cherry-picking is a different story, and in that case, it will end up with a different commit hash, therefore showing up as committed to both branches...01:33
dhx_moh fun lol... I can see why the simple approach is better :)01:33
nuclear_eclipseyes, the use of cronned-imports is generally only a usecase for when you don't have total control over the canonical repository, eg mantisforge.org or sourceforge.net01:34
nuclear_eclipsecherry-picking is the one use-case I can think of where merging a commit one minute later is useful, eg, for porting a fix on master back to a stable release branch01:35
dhx_mtrue01:35
dhx_mbut then again, larger bugfixes you want to backport may have their own branches01:36
dhx_mso instead of cherry picking, you'd probably want to merge instead01:36
nuclear_eclipsetrue, but if you're truly backporting them, you have to cherry-pick, otherwise you're merging the entire history of whatever branch the fix was originally created on...01:36
dhx_moh yeah, true :)01:37
nuclear_eclipseie, the bugfix branch still contains the entire history of what it was based on, so a straight merge is not what you want to do01:37
dhx_myep01:37
nuclear_eclipseone thing to remember is that I spent a *lot* of time researching how different VCS tools track data (software development tools in general are a big interest of mine), and I spent a lot of time designing the framework to fit as many different styles and situations, making some compromises along the way to keep it simple;  so I probably have a reason or an argument for just about anything you can think of to change from it's current state, except01:39
nuclear_eclipsenow, that said, I'd still love to discuss these things, because there's always the possibility that I'm too stubborn/stupid/blind, and I need people like you to question my decisions to actually make sure I'm doing things the best way01:43
dhx_mwell actually, I'm just trying to learn more about how it works :)01:43
dhx_mI'm not trying to suggest you didn't research it, don't know what you're doing, etc :)01:43
nuclear_eclipseright, it was just a point I wanted to bring up, to make sure you didn't think I was being a stuckup jerk who didn't want to hear anything negative ;)01:44
dhx_mand I appreciate the help and feedback a lot01:45
dhx_mno no, you wouldn't be talking here if that was the case :)01:45
nuclear_eclipsehehe01:45
dhx_mah.. problem encountered... my import stopped at commit 397301:46
nuclear_eclipsebtw, my presentation over the weekend bombed something horrible; it was the worst trainwreck of a presentation I've ever been a part of01:46
dhx_mnow I'll be negative lol01:46
nuclear_eclipsedhx_m: it's probably an OOM issue I assume?01:46
dhx_mnuclear_eclipse: the script is still loading... maybe a script timeout01:47
dhx_mnuclear_eclipse: or maybe this server kills runaway threads01:47
dhx_mah, sorry to hear about the presentation01:47
dhx_mwas it fun otherwise? :)01:47
nuclear_eclipsewell, the day was fun up till the presentation... =/01:47
nuclear_eclipsefirst, my laptop wouldn't display on the porjector, and then my demonstration failed due to a SQL error, even though I had rehearsed the whole thing twice the night before...01:48
dhx_moh ouch it sucks when that happens01:48
dhx_mI'm sure it could have been a lot worse01:49
nuclear_eclipseanyways, the git plugins just keep importing changesets like mad until they hit a duplicate commit, so on a large repository it'll eventually OOM before it completese01:49
dhx_m99% of Windows users take 5 minutes to get Powerpoint to show up :)01:49
dhx_mah ok01:49
nuclear_eclipseas opposed to the SVN plugins, which only import in sets of 20001:49
nuclear_eclipseI set up the framework that would allow me to replicate the SVN behaviors in Git as well, but I just haven't yet gotten around to implementing it01:50
dhx_mI'm surprised that it starts importing from the latest changeset to the oldest01:50
nuclear_eclipsedhx_m: that's because it has to01:50
dhx_moh yeah true... tracing the parent, etc01:50
nuclear_eclipseGit/Hg/Bzr use a DAG, so you can't do anything but trace backwards01:51
dhx_mis it possible to just go to the last page of the shortlog in gitweb and look at each changeset 1 by 1 in reverse?01:51
dhx_mthen you'd be importing by page (fixing the OOM issue)01:52
nuclear_eclipsedhx_m: but you lose a lot of info with the shortlog01:52
nuclear_eclipseie, no list of modified files, no committer info01:53
dhx_mwell you'd only use it as an index01:53
dhx_mthen you'd load each commit in gitweb to read the details01:53
dhx_mbut you'd know the reverse order of commits for each branch01:53
nuclear_eclipsethe OOM issue is just a matter of adding a static counter to the import function, and dump info after the counter hits an upper limit01:53
dhx_mand you can ignore a commit if you already have a sha1 hash for it in another branch01:53
nuclear_eclipseI guess I'm not really convinced that it would do anything other than require an extra page load...01:54
dhx_mwell if you do get an import error... you wouldn't have to start a full import all over again to fill in the blanks01:55
nuclear_eclipsewell, you don't here either...01:55
nuclear_eclipseit looks for the oldest commit on the branch and tries importing starting from its parent, as well as starting an import from the branch itself01:56
dhx_mah :)01:56
dhx_mnice01:56
nuclear_eclipsethe only reason in your case that you would need to start a full import again is because the OOM issiue would have prevented the commit message-parsing from happening...01:57
nuclear_eclipseoh, and it also would have prevented the author/committer->user_id mapping from happening too01:57
dhx_mnot an issue in my case01:57
dhx_myep01:57
* nuclear_eclipse gets an itch to fix the OOM issue01:57
dhx_mI guess #24 would fix the issue of redoing message parsing at a later time01:59
dhx_mnot really a priority though02:00
dhx_mmost people can just run their own SQL query manually to make the fix for now02:00
nuclear_eclipsemy biggest problem with #24 is that I'm not sure of a best solution for how to handle the update process without introducing multiple edge case02:01
dhx_mthe problem to me appears to be that the userid column in the changeset table is really just a cache02:03
dhx_mthe actual relationship between userid's and changesets is defined elsewhere02:04
dhx_msomeone could change their real name at any time, for instance02:04
nuclear_eclipsewell, yes, but who's realistically going to be changing something like that?02:04
dhx_msomeone might change their name (marriage) :p02:05
dhx_mrare case02:05
nuclear_eclipsetrue, but that doesn't change the fact that all the previous commits they made under their old realname are no longer theirs...02:05
nuclear_eclipseand the source control tool will be forever storing it under that old name anyways...02:06
dhx_myep, which is why I am interested in having the ability to let users control how the Mantis -> VCS user mapping is done02:06
dhx_myep02:06
nuclear_eclipseNow, I'll agree that it could be useful to have multiple mappings of name to user id, but I don't think we should be re-parsing all of the existing changesets when a user's info or mappings have changed02:06
dhx_mit'd be useful if someone signs up to Mantis after they've been committing to the repository02:07
dhx_mlet's say a project moves from Bugzilla to Mantis02:07
dhx_mthey already have a VCS history and would like to link old changesets to the new Mantis userid's02:07
nuclear_eclipsewell, a repository can always be re-imported....02:08
dhx_mbut then you lose changset => Mantis ticket mappings02:08
nuclear_eclipseand in the case of a migration, I would assume that the repo import would take place *after* all the existing accounts had been migrated to Mantis02:08
dhx_mhmm yeah, if you migrate accounts automatically for people that would be OK02:09
dhx_mrather than have them sign up02:09
dhx_mhmmm this is ugly03:00
dhx_mI imported mantisbt/dhx.git/master OK... then went to import my 'fyp' branch03:01
dhx_mwhich imported OK up to the point where I last merged master into my 'fyp' branch03:02
nuclear_eclipseright, which makes sense03:02
dhx_mexcept it won't import any of the commits that went into those merges?03:02
nuclear_eclipseit should follow the parent commit that's part of your feature branch, while ignoring any commits that came from the master branch03:03
nuclear_eclipseif that's not working, then yes, that's a probllem, and please file a bug report :P03:03
dhx_mOldest 'master' branch parent: ''03:03
dhx_mRetrieving master ... processing e50944ce028886db539855a0d7d0acbf5dc3a94b ... already exists.03:03
dhx_mOldest 'fyp' branch parent: 'e50944ce028886db539855a0d7d0acbf5dc3a94b'03:03
dhx_mRetrieving fyp ... processing 301c8ee78f47fd8e6b47432f01847fdf2328dc89 ... already exists.03:03
dhx_mRetrieving e50944ce028886db539855a0d7d0acbf5dc3a94b ... processing e50944ce028886db539855a0d7d0acbf5dc3a94b ... already exists.03:03
nuclear_eclipseso it that case, it seems that it's already imported from both sides of the merge...03:04
dhx_myep03:05
nuclear_eclipsecan you verify that by looking at the changesets listed in mantis?03:05
dhx_mif you check: http://git.mantisforge.org/w/mantisbt/dhx.git?a=shortlog;h=refs/heads/fyp03:06
dhx_mMantis has imported changesets from 'fyp' down to 'master' (not including 'master') but hasn't imported any of the patches there were merged03:06
dhx_mie the stuff from '10330' on down03:06
dhx_moh I see03:08
dhx_mI'd need to add the branch that was merged03:08
dhx_mso that Mantis can follow the 2nd parent in the merge03:08
nuclear_eclipsehmm, you shouldn't need to...03:09
dhx_mwell the importing of my 'fyp' branch stopped at http://git.mantisforge.org/w/mantisbt/dhx.git?a=commit;h=3e1f38ecf6297c6e5c28939d5283eee279db393d03:09
nuclear_eclipseeg, it should get to the merge commit, find two parent id's, and then queue both those parents for importing03:09
dhx_mand the first parent e509 is already in the master (that was where the fyp branch was started from)03:09
nuclear_eclipsehmm, I wonder if I botched implementation of multiple parent ids for gitweb03:09
dhx_myeah I guess it might not have followed the 2nd parent id03:10
nuclear_eclipseI know for sure it works (or worked) for GitHub, but that uses GitHub's JSON API for importing data03:10
nuclear_eclipsego ahead and log a bug, and I'll look at it tomorrow if I get the chance03:10
nuclear_eclipseI'm unfortunately too busy atm working on classwork... =\03:11
dhx_mif( preg_match( '#<tr><td>parent</td><td class="sha1"><a [^<>]*>([a-f0-9]*)</a></td>#', $t_gitweb_data, $t_matches ) ) {03:11
dhx_m$t_commit['parent'] = $t_matches[1];03:11
dhx_m}03:11
dhx_mso it seems it only remembers one parent in Gitweb03:11
nuclear_eclipsethat should probably be a preg_match_all() :P03:11
dhx_mno problem, I'll patch it up :)03:11
dhx_mthen $t_commit['parent'] is changed to be an array of parentids?03:12
nuclear_eclipseI believe so03:12
dhx_mok03:12
dhx_m$t_parents = array();03:12
dhx_mif ( isset( $t_commit['parent'] ) ) {03:12
dhx_m$t_parents[] = $t_commit['parent'];03:12
dhx_m}03:12
nuclear_eclipsepreg_match_all() makes me think hard everytime I try to use it...03:13
nuclear_eclipsewell, think hard plus read and reread the online docs03:13
dhx_myep :)03:14
dhx_moh this is much harder now03:25
dhx_mthe database only stores a single parent ID per changeset03:25
dhx_mis it OK to assume we're only interested in the 2nd (last) parent ID from the Gitweb output?03:26
dhx_mactually that isn't ok now I think about it03:26
nuclear_eclipseyou could check to see if either of the commits already existi, and prefer non-existent commits03:27
nuclear_eclipsethat should cover the majority of merges in feature branches03:28
dhx_mit'll be a problem when you have a commit like:03:28
dhx_mhttp://git.mantisforge.org/w/mantisbt/dhx.git?a=commit;h=74ad243099c1b5e802e254b56bf9425d37028c5303:28
dhx_mwhere both parents are unknown03:28
nuclear_eclipsewell, my point being that you could pick an arbitrary parent, with preference on parents that haven't yet been imported...03:29
nuclear_eclipseor you could just do what the github importer does, and just always choose the first parent03:30
dhx_mthe problem though is that for the commit I just linked to, both parents haven't been imported yet03:30
dhx_mand you'd want to import both03:30
dhx_mthe first parent lets you continue searching through the branch for previous commits/merges03:31
dhx_mthe second parent will import the actual changesets from the merge03:31
nuclear_eclipsewell, right, you'd naturally queue all the parent commits for import, but just pick an arbitrary parent as the one to store in the current changeset object03:32
dhx_mah ok03:32
dhx_malthough I think github just ignores the parent thing entirely03:32
nuclear_eclipsewell, either way, by returning an array of parent commits, the importer process will eventually trace both paths03:33
dhx_mthat's correct03:33
nuclear_eclipseif github doesn't actually set the parent_id on the changeset object, that's yet another bug :P03:34
dhx_mis the 'parent' field in the database largely irrelevant?03:34
nuclear_eclipsedhx_m: not entirely03:34
nuclear_eclipsea) it shows up when viewing an individual commit in Mantis, and b) it's used to continue importing a tree of commits in case of error/OOM prevention03:35
dhx_mso we'd really need to have 2 parent fields to cater for the instance of merging?03:35
nuclear_eclipsewell, that's the real problem03:35
dhx_mI'm not sure if there would ever be 3 or more parents03:36
nuclear_eclipsetechnically, merges in Git/Hg can potentially have any number of merge parents03:36
dhx_mah ugly03:36
nuclear_eclipseeg, that's what Git terms an 'Octopus' merge, and yes, it's ugly, but possible03:36
dhx_myep03:36
nuclear_eclipseand that's the main reason I just chose an arbitrary schema of storing a single parent, because otherwise you'd need either an entire extra table to map changeset parents, or you'd need a fulltext field, which is no longer efficiently searchable03:38
dhx_mmaybe it'd be better to just lookup the parent ids from github/gitweb03:38
nuclear_eclipsewell, I'd prefer to not require constantly hitting the remote data source03:38
dhx_mor do the lookups when the parent is blank?03:38
nuclear_eclipseesp in the case of github or remote gitwebs, where the latency would be a huge pitfall03:38
dhx_myep03:39
nuclear_eclipseI'd rather just discard extra data :P03:39
dhx_malthough we can't discard the extra data in this case?03:39
dhx_mbecause if there is an import error that lands on a commit with more than one parent, it'll be stuck forever03:40
nuclear_eclipsethere is one potential option though that would fit the current schema, but require more work on the app: storing multiple parent ids separated by | or something03:40
dhx_mthat sounds like a performance hit compared to creating a new table03:42
nuclear_eclipseusing a separator would allow 3-4 parent ids to be tracked in Git, but would require using the slow/complex LIKE clauses in queries03:43
nuclear_eclipsealthough using LIKE is faster than using a join :P03:43
dhx_mwould you use a join though... or perform 2 separate queries (even slower?)03:43
dhx_mactually yeah multiple queries would be worse03:44
nuclear_eclipsewell, my biggest concern with using a second table is that loading any changeset objects now requires a JOIN03:44
dhx_myou don't really need to get the parent on each query though?03:44
dhx_mah, in OO PHP you would03:45
dhx_mI see03:45
nuclear_eclipsewell, no, but then you add complexity to the codebase to start using conditional queries, and then what happens when you forget to explicitly load parent ids before referencing them...03:45
nuclear_eclipsethe incidental complexities are what I try to avoid03:46
dhx_myep03:46
dhx_munless you can load the parent information upon first request?03:46
nuclear_eclipsethere are only three JOINs in the entire object API, two of which are only used when gathering stats, and so are only used rarely...03:47
nuclear_eclipsedhx_m: I would *really* rather not start implementing lazy loading... :P03:48
dhx_myeah, performance problems either way argh03:48
nuclear_eclipselazy loading also generally implies a lot more database queries03:48
dhx_myep03:48
nuclear_eclipsedhx_m: compromises suck, don't they?03:50
dhx_msure do03:50
dhx_mI see the dilemma here03:50
dhx_mI feel like I'm the first other person in the world to use this plugin :)03:52
nuclear_eclipsehehe03:52
dhx_mI'm surprised more people aren't taking interest in it, given that it is a very cool feature03:52
dhx_malthough if they're still running Mantis 1.0.1.... :p03:52
nuclear_eclipseyeah, that seems to be our biggest problem: getting 1.2.x out the door :P03:53
nuclear_eclipsebut then again, we can barely get users to upgrade for major security fixes... :/03:53
dhx_musers... useless :p03:57
dhx_mand to think Mantis users are most likely programmers heh03:57
nuclear_eclipseyeah....03:57
dhx_mit is funny looking at some public trackers out there03:58
dhx_mhttp://straight-street.com/tracker/view.php?id=11003:58
dhx_mthey say "Child of xxx" in the summary of bugs03:59
dhx_mwhere xxx is the parent bug03:59
nuclear_eclipselol04:00
nuclear_eclipsebrought to you by the Department of Redundancy Department :)04:00
dhx_mhaha04:00
nuclear_eclipsere #31: you can simply axe the appropriate regexes :P04:13
nuclear_eclipsebut really, why would you have the ability to import repo data into mantis without linking changesets to issues?04:14
dhx_minitial commits04:14
nuclear_eclipseI'm curious what the purpose would be...04:14
dhx_mI wanted to import the mantis repo04:14
dhx_mand some of the very old commits were being linked to my existing bugs04:15
nuclear_eclipseah04:15
dhx_manyway... I think the linking settings should really be per-repo04:15
dhx_ma checkbox would also be good to have, as it is more user friendly04:15
dhx_motherwise the current Mantis 1.0.0 users won't have any hope :p04:16
nuclear_eclipsejust as a curiousity, why are you importing the mantis repo into your own tracker?04:16
dhx_mwell I'm actually importing my own branch04:16
dhx_mso I can track my own development of the branch04:17
nuclear_eclipseoh, I see04:17
dhx_mand link fixes I make (or are made upstream) to bug reports on my own tracker04:17
* nuclear_eclipse slaps dhx_m 04:17
nuclear_eclipsestop breaking my use cases!04:17
dhx_mhaha04:17
mantisbotNew bug: Bug 10373 - karthisudar - open - new04:18
mantisbotNew bug: test - http://www.mantisbt.org/bugs/view.php?id=1037304:18
mantisbotNew bug: Bug 10374 - karthisudar - open - new04:18
mantisbotNew bug: test - http://www.mantisbt.org/bugs/view.php?id=1037404:18
nuclear_eclipselord04:18
dhx_magain!!!04:18
nuclear_eclipsenot again...04:18
dhx_mlol04:18
* nuclear_eclipse wishes he had access to manage users...04:19
dhx_mactually to really break your use cases, I'd go as far as saying 90% of the configuration settings in the Source Configuration page should instead be per-repo04:20
* nuclear_eclipse tells ChanServ to ban dhx_m 04:20
dhx_mhaha04:20
dhx_malthough I think a new config backend would solve a lot of these problems04:21
nuclear_eclipsethe biggest problem with using per-repo settings is losing the ability to a) piggyback off the existing config_api, and b) keep things simple by only having one place to make these changes04:21
nuclear_eclipseeg, if I want to change the regex for commit messages I now have to change the message for every repository I have in Mantis...04:22
dhx_mwell IMO it'd be best to have a configuration system which has a concept of "context"04:23
nuclear_eclipseexcuse me while I go laugh my ass off in the next room :P04:23
dhx_m:D04:23
dhx_mwhat I mean is...04:23
dhx_myou can set a high level configuration value04:23
dhx_mand then either inherit that for more fine grained cases04:24
dhx_mor you can override it as required with a more specific value04:24
dhx_mmaybe this is a bit radical heh04:24
nuclear_eclipseright, you just want a more generalized case of the existing config_api's ability to set values on a project and/or user basis as well as globally04:24
dhx_mI guess so, yes04:24
nuclear_eclipsethe problem is how to define a generalized context04:25
nuclear_eclipseesp once you bring in the concepts of the plugin system, where any plugin can now introduce it's own set of configuration options04:25
dhx_mI'm not sure who I was talking to in this channel about tagging, but maybe those sort of concepts can come into play?04:26
nuclear_eclipsethat was me again :P04:26
dhx_m:)04:26
dhx_mwhat about having a system where you can tag configuration settings?04:26
dhx_mtag types might be "user", "group", "project", "repository"04:27
nuclear_eclipseurg04:27
dhx_mhah04:27
nuclear_eclipseand then you instantly have the ability for tags/contexts to overlap in meaning with plugins04:27
dhx_mthe idea is that you would have unlimited ability to configure settings04:28
dhx_mnot necessarily, you'd have an API which "registers" the contexts04:28
nuclear_eclipseyou're making things more and more complex with every sentence, you know...04:28
dhx_mwell yes, it is complex ;(04:29
dhx_mbut it'd be very nice to be able to make settings like "the user group X can view source code repository A"04:29
nuclear_eclipseas one of my professors likes to harp on, the "grand unified data structure" is just a way to spend 100x the effort on 0.1x  the implementation... :P04:30
dhx_m:)04:30
dhx_mI wonder if what I'm talking about has been done before... probably not ;)04:30
nuclear_eclipseI think the better approach would be to simply create more tables for contextual data like that04:31
dhx_mso to check if someone has view access, you'd have something like:04:31
nuclear_eclipsethe more generalized your data storage, the more complex your implementation04:31
dhx_min our case you would be able to generate the data structure of tables automatically04:32
dhx_mie. you have one config table with a column for each context04:32
dhx_malthough that gets SOOOOOOO complicated :)04:33
nuclear_eclipsedynamic schema like that is a nightmare04:33
nuclear_eclipseyou must remember that we have rigid schema restrictions for the purpose of backend independence and reliable/predictable upgrade paths04:34
nuclear_eclipseadding a column for each new context is more-or-less out of the question04:34
dhx_monly plugins would add columns though04:35
dhx_mand if you uninstall a plugin, the column goes away04:35
nuclear_eclipsewell, we basically have a rule in place that plugins never touch core tables :P04:35
nuclear_eclipseand that schema changes only happen as a result of an explicit upgrade process04:36
dhx_mthrough core API of course :)04:36
dhx_mwell currently there is already something like this in place04:36
nuclear_eclipsethis is where it's a good thing you can't stab people over the internet...04:36
dhx_mthe database configuration has config options named like:04:36
dhx_mplugin_SourceGithub_schema04:36
dhx_mhaha04:36
nuclear_eclipsedhx_m: yes, but that doesn't actually change the schema definitions of Mantis04:36
nuclear_eclipsethat allows you to have predictable schema changes for plugin tables, and shouldn't change anything involving core schemas04:37
nuclear_eclipseyou must also remember that there are a good deal of users who have mantis connect to the database as a user that doesn't have alter permissions for database tables04:38
nuclear_eclipseso like I said before, dynamic schema is out of the question :P04:38
dhx_mplugins are already allowed to plant their own data in the core config table and I don't see the addition of a new column to the table being much different (as long as the core API does it)04:39
dhx_myep04:39
nuclear_eclipsewell, adding rows of data is a completely different ballgame compared to adding columns....04:39
dhx_myep, but if there is a unified way to add columns, that would be mostly solved04:40
nuclear_eclipseand letting plugins piggyback on the existing config_api is done so that plugins don't all have to define their own configuration tables and apis04:41
dhx_mthe whole point being that you don't need multiple queries across a "core" and "plugin" table anymore04:41
dhx_mactually...04:41
dhx_mhmm04:42
dhx_mjoining a plugin config table wouldn't work04:42
nuclear_eclipseI'm open to changes to the core schema, but only if that schema is a static schema - adding and removing columns on the fly, regardless if it's done through a core API, is borderline insane from a DBA point of view, IMO04:42
dhx_mwell the only time you add/remove columns is part of an upgrade04:43
dhx_min a similar way to if you upgraded Mantis core04:43
dhx_mthe number of times it'd happen are very limited04:44
dhx_mto when you install or uninstall a plugin04:44
nuclear_eclipsewell, I'm still of the mind that plugins should *never* modify core schema, even if it's done as part of a core API - way too much can go wrong, and all of a sudden you lose the reasonable ability to drop a plugin and reason about the stability of Mantis afterwards...04:44
dhx_mif you go to adm_config_report.php04:45
dhx_myou'll see there are already two columns "Username" and "Project Name"04:45
nuclear_eclipsebut anywho, we can continue this discussion tomorrow; it's 12:45am, and I have class in 7 hours... :P04:45
dhx_mwhere those are "contexts" in my discussion here04:45
dhx_m:)04:45
nuclear_eclipsegood night04:46
dhx_m(this is mainly theoretical will-happen-in-Mantis-v8) :p04:46
dhx_mok cya04:46
dhx_mnuclear_eclipse: ah, what I was doing ^^ was talking about left joining various configuration tables into one (bad) when it'd be better to use tables than merge them05:11
[KK]Kirillmorning05:50
dhx_mhi05:51
[KK]Kirillwhat's new?05:53
[KK]Kirillor nothing?05:53
dhx_mnot much, was busy breaking nuclear_eclipse's use cases before :p05:54
dhx_mand now he wants to stab me though the internet :p05:54
[KK]Kirill:-)05:55
dhx_mthen I got thinking about configuration on a per-anything basis05:56
dhx_mie. I want to receive email notifications when a bug in project A is linked to a changeset from repository X, but not when any other changesets are linked05:57
dhx_mI guess I was going off on a theoretical tangent to see if that sort of thing is possible05:57
dhx_m(in a generic, easy, fast, etc way)05:58
[KK]Kirillsorry, for why?05:58
[KK]Kirillsome example?05:58
dhx_mI just pulled that example from nowhere as an example of what could be possible under this imaginary config subsystem I was thinking of05:59
dhx_ma better example would be:06:00
dhx_m"I want to receive email notifications when a bug in project A is opened but I want to receive SMS notifications as well when the severity is above HIGH"06:00
dhx_m... it gets too complex I guess06:01
[KK]Kirillyes.. I want this too06:01
dhx_mso it is probably easier to just let people write their own custom functions06:01
[KK]KirillI think too06:02
dhx_mthe problem is how you store and access that sort of configuration06:02
dhx_mit isn't easy06:02
dhx_mmaybe you want to receive those SMS notifications when the priority is above HIGH06:03
dhx_mor when the person submitting it is a certain user06:03
mantisbotNew bug: Bug 10375 - karthisudar - open - new06:03
mantisbotNew bug: Testing the defect - http://www.mantisbt.org/bugs/view.php?id=1037506:03
mantisbotNew bug: Bug 10376 - karthisudar - open - new06:03
mantisbotNew bug: wdasdsad - http://www.mantisbt.org/bugs/view.php?id=1037606:03
dhx_mat this point, I'd like to wish all the worst spam upon karthisudar's inbox06:05
[KK]Kirilldit you have his mail?06:05
dhx_mnah lol06:06
[KK]KirillI redirect my spam :)06:06
[KK]Kirillpaul not wake up?06:08
dhx_mnot that I've noticed :)06:11
[KK]Kirill:) did you have twitter?06:12
dhx_mnope06:12
mantisbotNew bug: Bug 10377 - karthisudar - open - new06:13
mantisbotNew bug: testing for cor - http://www.mantisbt.org/bugs/view.php?id=1037706:13
[KK]Kirill*angry*06:14
dhx_mhaha06:15
dhx_mI can understand the need to make a few test tickets06:15
dhx_mbut making 20+ test tickets over the span of multiple days?06:15
dhx_myou would have thought after the first 5 or so, you'd have a good idea of how Mantis works06:15
[KK]KirillI don't understand, why he can't test mantis on local system06:16
dhx_mwell I'm just assuming he thinks /bugs is a testing ground for people to play around in06:17
dhx_minstead of using demo.mantisbt.org06:17
[KK]Kirillold version06:19
dhx_mtrue06:21
mantisbotNew bug: Bug 10378 - karthisudar - open - new06:23
mantisbotNew bug: testing defect - http://www.mantisbt.org/bugs/view.php?id=1037806:23
mantisbotNew bug: Bug 10379 - berton - open - new07:24
mantisbotNew bug: Characters when $g_show_extended_project_browser = ON - http://www.mantisbt.org/bugs/view.php?id=1037907:24
mantisbotNew bug: Bug 10380 - quazardous - open - new08:39
mantisbotNew bug: Using $g_csv_columns with custom field cause fatal error - http://www.mantisbt.org/bugs/view.php?id=1038008:39
mantisbotNew bug: Bug 10381 - karthisudar - open - new08:54
mantisbotNew bug: testing for cor - http://www.mantisbt.org/bugs/view.php?id=1038108:54
mantisbotNew bug: Bug 10382 - karthisudar - open - new08:59
mantisbotNew bug: testing for correlation - http://www.mantisbt.org/bugs/view.php?id=1038208:59
[KK]Kirillsiebrand: ban karthisudar09:11
dhx_mthat doesn't quite go far enough09:14
mantisbotNew bug: Bug 10383 - karthisudar - open - new09:14
mantisbotNew bug: test - http://www.mantisbt.org/bugs/view.php?id=1038309:14
dhx_msomeone needs to cast the "curse of much spam" on him09:15
* giallu lose his magic wand09:15
dhx_m[KK]Kirill: wouldn't we need to write a new "ban IP" patch to do that? :p09:18
[KK]KirillI think would09:19
siebrand[KK]Kirill: not possible, unless it would be done by a firewall/application server rule or a live patch.09:31
siebrandI have access to neither.09:31
siebrandI also do not have the access level to close the account, i think.09:32
siebrandnope, I do not.09:32
siebrandgiallu appears to be on it.09:32
dhx_mif I were karthisudar, I'd be running right about.... NOW :)09:33
siebranddhx_m: he's got a Yahoo account. He probably couldn't care less.09:35
dhx_myeah heh09:37
harpreet_singhhi09:39
dhx_mhi09:39
harpreet_singhhow are you09:41
harpreet_singhI am trying to Install Mantis on RHEL 4update 509:42
harpreet_singhbut not sure how to setup the apache/php/mysql and mantis.09:42
harpreet_singhif possible can u send me the detailed document at harpreetrajan@gmail.com09:42
harpreet_singhI am new to this...09:42
harpreet_singhwe have an existing setup which is running on Redhat 9 with Mantis 0.17.09:43
harpreet_singhbut dont have any documentation for the setup.09:43
harpreet_singhplease advise.09:44
dhx_mFYI http://www.catb.org/~esr/faqs/smart-questions.html#easyreply09:46
dhx_mThere is a whole stack of Mantis documentation online at mantisbt.org09:47
dhx_mwhich covers installation09:47
dhx_mI think you may have problems with RHEL4 being from the stone age, hence Mantis might not work with the old version of PHP?09:48
harpreet_singhmay I know the sutable configuration to Install mantis.09:50
harpreet_singhin mantis they say from this ver...  onwards.. etc09:50
dhx_mhttp://www.mantisbt.org/requirements.php09:50
dhx_myou should be able to use Mantis 1.1.x09:51
harpreet_singhok..09:52
harpreet_singhcan i assume only the listed version will work with mantis09:52
dhx_mno, it defines the minimum requirements09:52
dhx_myou might even be able to use lower versions of those products if you turn off some Mantis features, make some code fixes yourself, etc09:53
harpreet_singhto be brank from the last one week I am not able to make it.09:54
harpreet_singhto be frank.. from last one week I am not able to make it...09:54
harpreet_singhsome time apache and php issue or some time mysql issue.09:55
harpreet_singhif u dont mind can i have your working configuration09:55
dhx_mthe default configuration works for me just fine :)09:56
harpreet_singhlike operating system, apache/php/mysql and Mantis09:56
harpreet_singh:)09:56
harpreet_singhso tonight again I can try to setup again.09:56
dhx_mRHEL4 + PHP5.1 + Apache2.2 + MySQL509:56
dhx_mGentoo + latest version of everything else09:57
dhx_mif you come across an error, you should copy that down09:57
dhx_mand paste it here09:57
dhx_mI can't help you without some idea of what the real problem is (an error message or something technical would help)09:57
harpreet_singhnow I am at home.. I will be in office during my night shift.09:58
harpreet_singhwhy mantis dont come in a single tar file for installation.09:59
harpreet_singhso during installation it should prompt for the installation location. Like Oracle database.09:59
harpreet_singh:) :)10:00
dhx_mthis is a platform independent piece of software written in PHP10:00
dhx_mso a graphical installer makes no sense :)10:00
dhx_mjust untar mantisbt-1.1.7.tar.gz to your web directory10:01
dhx_myou should really be reading the manual @ http://www.mantisbt.org/manual/manual.installation.php10:02
harpreet_singhdo i have to install apache and php with some module10:02
dhx_mit explains everything10:02
dhx_mprobably not10:02
dhx_mit depends on your operating system10:03
dhx_mas long as you have PHP scripts executing under Apache, you're fine10:03
dhx_myou don't even have to use Apache if you don't want to10:03
harpreet_singhok.10:04
harpreet_singhLet me do it tonight.. If i have any issue. I will let you know.10:06
harpreet_singhmany thanks for the advice..10:06
harpreet_singhif u have any setup document you can  pass me at harpreetrajan@gmail.com10:06
dhx_mI'm not sure you're reading what I write10:09
dhx_mI already said that all the documentation you'll ever need is at the URL I pointed out (the official website for Mantis)10:09
dhx_m:)10:09
AndyHHas anyone been able to use the configuration option $g_logo_image correctly? When ever enter it into Mantis, it says "Configuration option "logo_image" not found."10:11
dhx_mworks for me in 1.210:12
AndyHim using 1.1.610:20
AndyHi'll make sure I get the latest10:20
[KK]Kirilllatest 1.1.710:21
AndyHThe site says the latest stable is 1.1.7, so I guess I'll have to wait till I can get 1.2 - I'd rather go for stable realises10:21
[KK]Kirillbut i don't remember is present this var10:21
dhx_mmaybe you're setting it wrong?10:21
mantisbotNew bug: Bug 10384 - ruslan - open - new10:25
mantisbotNew bug: Roadmap can/should show priority  symbol for issues. - http://www.mantisbt.org/bugs/view.php?id=1038410:25
AndyHCould some advice how to set it up correctly? I've typed in the following into manage Configuration10:25
AndyHusername: admin.., project: all, configuration option: logo_image type:default, value: images\mantis_logo2.jif10:26
AndyHAnd the responce I get (i'm using version 1.1.6) is "Configuration option "logo_image" not found."10:27
dhx_mcan you try setting the option in config_inc.php?10:28
dhx_m$g_logo_image= 'images/mantis_logo.gif';10:29
dhx_mor maybe your config option is just named wrong... it should be logo_image10:29
AndyHSounds like a good idea! :) i'll get back to you10:29
mantisbotNew bug: Bug 10385 - ruslan - open - new10:30
mantisbotNew bug: ROADMAP should HIDE released versions !!! - http://www.mantisbt.org/bugs/view.php?id=1038510:30
AndyHIt has no affect10:36
AndyHI've typed in: $g_logo_image = 'images/rss.gif';10:36
dhx_mlooks ok to me, assuming mantisroot/images/rss.gif actually exists10:37
dhx_mwell... that isn't true... that doesn't have to exist10:37
dhx_mare you still getting the same error?10:37
AndyHI've typed in other configuration options into the 'Manage Configuration', things like $g_window_title which have worked fine. But arn't seen when I view my config_inc.php file, is there anything file that can over write config_inc.php10:38
dhx_mwell the settings you're defining in Mantis itself are stored in the database10:39
dhx_mand they take precedence10:39
dhx_mconfig_inc.php is just the text file configuration method10:39
AndyHOk, so even though I use Manage Configuration on the web front end, and the options don't appear in config_inc.php doesn't mean that the config_inc.php is invalid, simply means that stored in the mantis database10:41
dhx_myes10:42
AndyHThanks good to know,10:42
AndyH:)10:42
dhx_mconfig_defaults.php contains the full set of available config options you can use10:42
dhx_mbut don't edit that file directly10:42
AndyHsure10:42
AndyHGoing to give that another go, Thanks for all the advice :)10:43
mantisbotNew bug: Bug 10386 - Au1 - open - new10:55
mantisbotNew bug: Multi-Line string field type is absent - http://www.mantisbt.org/bugs/view.php?id=1038610:55
mantisbotNew bug: Bug 10387 - ruslan - open - new10:55
mantisbotNew bug: PRODUCT LINE / GROUP OF PROJECTS - http://www.mantisbt.org/bugs/view.php?id=1038710:55
mantisbotNew bug: Bug 10388 - ruslan - open - new10:55
mantisbotNew bug: RoadMap should respect a PRODUCT LINE - http://www.mantisbt.org/bugs/view.php?id=1038810:55
dhx_mHI I HAVE A CAPS LOCK KEY! :p10:56
[KK]Kirill:)10:59
mantisbotNew bug: Bug 10389 - ruslan - open - new11:00
mantisbotNew bug: Mantis should be more smart working with VERSIONs.   ALPHA, BETA builds integrated together. - http://www.mantisbt.org/bugs/view.php?id=1038911:00
mantisbotNew bug: Bug 10390 - ruslan - open - new11:10
mantisbotNew bug: Easy VIEW ISSUES from a person. - http://www.mantisbt.org/bugs/view.php?id=1039011:10
* daryn_away is away: Gone away for now13:05
* daryn is back.13:05
AndyHI've just updated my evaluation server to 1.2.0a3 to fix an issue I had with logo_image and logo_url, but an issue that was in 1.1.6 is there still there in 1.2, to do with default_bug_view_status,13:25
AndyHwhen I try and enter in my default_bug_view_status into config_inc.php it complains that it needs a number, whereas default_bug_view_status should be VS_PRIVATE or VS_PUBLIC not a number. I've tried all numbers up to 5, but nothing sets the default bug view. ANY ideas?13:26
AndyH$g_default_bug_view_status = 'VS_PRIVATE'; that's what's in config_inc.php13:28
AndyHand the answer I get is A number was expected for view_state.13:28
darynAndyH don't put quotes around it13:29
darynit's a constant13:29
darynit should be $g_default_bug_view_status = VS_PRIVATE;13:29
AndyHAH! :D13:29
AndyHFANTASTIC .. there and then just solved the issue13:30
AndyHdidn't think about variables and constant, I was just reading the manual, and typing in what I saw13:30
AndyHThank you! :) :) :)13:30
darynyw13:30
mantisbotNew bug: Bug 10391 - cmattmiller - open - new14:06
mantisbotNew bug: Upgrading not modifying tables? - http://www.mantisbt.org/bugs/view.php?id=1039114:06
mantisbotNew bug: Bug 10392 - cmattmiller - open - new17:12
mantisbotNew bug: Error after upgrade from 1.0.6 to 1.1.1 - http://www.mantisbt.org/bugs/view.php?id=1039217:12
* paul_ moos18:16
twolfyhi, is the 1.2.0 release using some AJAX improvements?18:59
twolfyor a template system like smarty?19:00
twolfymay be I'm able to help out a bit (with ajax and / or smarty) if that would be welcome (I don't know where mantis likes to go)19:06
twolfyis there a "where we like to go"-paper?19:07
paul_twolfy: mmm ajax19:18
paul_you experienced in ajax stuff? :)19:18
twolfya litle (with jquery and jquery-ui)19:19
twolfybut AJAX is very easy with jquery :)19:19
paul_jquery = framework right?19:21
twolfyyes, JS-framework19:21
paul_how/where would you like some ajax improvements?19:22
* paul_ isn't a ajax expert19:22
twolfysubmiting bug-reports, get more informations - but only if they would be needed19:22
twolfypage-reloading19:23
twolfycheck for new changes19:23
w00terHow do i put the options for status_enum_string in the array field of Configuration Report (which on file looks like; $s_status_enum_string = '10:Gelogd,20:Geprioriteerd,30:Impact Analyse,40:Bouw,50:SRT Test,60:GAT,80:Op Productie,90:Gesloten'; )19:23
twolfy(so you don't have to reload the whole page)19:23
twolfycool is, you could use AJAX in a way that all functionality wont be lost if the user hasn't JS enabled19:24
daryntwolfy: not just cool. essential19:24
twolfybut if the user has, AJAX would be used and improved the user-experience19:25
paul_twolfy: i'd like to make the project dropdown selector thing more ajax'y19:25
paul_either using the stuff we have in mantis atm19:25
paul_or doing something more funky19:26
twolfyyes daryn, you're right19:26
paul_if you fancy a play19:26
darynregarding templates...some people working on it19:26
paul_daryn: people should stop caring about templates ;019:26
twolfyhmm, how should the drop-down menu work with AJAX?19:27
twolfywith search-capability?19:27
paul_I dont know really :)19:27
paul_atm, there's the normal project dropdown19:27
paul_and also what you get if you turn on extended view (can't recall the config option)19:28
paul_I guess from one point of view it might need to be a tree type stucture19:28
paul_to show subprojcts nicely19:28
* paul_ doens't really know ;)19:28
gialluif anyone wants my opinion, I'm ok with jquery19:28
darynme too19:28
darynsooner the better19:28
twolfy:)19:29
giallutwolfy, on the other hand19:29
paul_jquery seems to come up, with got projax in atm (which seems to still be getting updated - /me sync'd the jscript with upstream other day)19:29
paul_and when I asked my friend who does ajax stuff19:30
paul_he said mootools?19:30
paul_or something19:30
gialluif you're serious about contributing some patches (god knows how we need new blood...) I'd hope you'll stay with us also later19:30
twolfyAJAX is only one good point in jquery - it's only about reduce load from the server19:30
twolfyand providing something like "auto-update", the simple way19:31
* paul_ reads http://blog.creonfx.com/javascript/dojo-vs-jquery-vs-mootools-vs-prototype-performance-comparison19:31
* nuclear_eclipse is not convinced we need AJAX for much in mantis19:31
* paul_ thinks nuclear_eclipse is webgarbage19:32
paul_it's about the web2.0!!19:32
nuclear_eclipseI will agree that we need jQuery, but not AJAX19:32
twolfynuclear_eclipse, you wont need it, but it can improve some workflow :)19:32
paul_whats the difference between jquery+ajax?19:32
twolfyalso it should be possible to make ajax-template as option19:33
giallupaul_, go RTFM ;)19:33
nuclear_eclipsejquery is a library for manipulating the DOM; AJAX is asynchronous communication with the server outside the standard pageload scope19:33
paul_twolfy: well, we already have a 'javascript' config option19:33
darynbtw paulr...projax is based on prototype19:34
nuclear_eclipseAJAX would also require that we have an XMLRPC interface, which we don't, and we can barely keep SOAP up to date19:34
paul_just make it per-user and dont need a template19:34
paul_daryn: right19:34
darynwhich is the worst for performance19:34
twolfynuclear_eclipse, no - ajax won't require xmlrpc19:34
paul_nod19:34
twolfyonly pain-html19:34
twolfyplain19:34
gialluanyway, projax should die, rather sooner thatn later19:34
twolfyyou won't use it the xmlrpc/soap-way19:34
nuclear_eclipseAJAX = Async. JavaScript And XML ...19:35
paul_giallu: it's still updated - http://script.aculo.us/19:35
gialluthen nuclear_eclipse, please note XMLRPC is _not_ the only transport you can use19:35
nuclear_eclipsethen don't call it AJAX :P19:35
twolfy:) you are free to call it, as you like it :)19:36
paul_(someone remind me why we needed to get rid of what we use atm?19:36
gialluJSON looks like the most widely used replacement19:36
* nuclear_eclipse likes JSON19:36
giallupaul_, because we move away from prototype19:36
paul_'why'19:37
giallubecasue we like more jquery19:37
nuclear_eclipsebut either way, async javascripting would require a lot more work, and maintenance of even more API systems, and Idon't think it's feasible for us; I'd rather see developers focus on the core and SOAP19:37
darynit isn't just moving 'away' from projax.19:37
gialluand less code == less bugs19:37
darynwhat we have impemented currently is terrible19:37
paul_is that our fault or frameworks?19:38
gialludaryn, so I'm not the only one with this idea ;)19:38
darynwe need to redesign how we use the js19:38
darynjquery has very nice syntax19:38
paul_where i'm at is:19:38
paul_atm we have a js framework called prototype/projax/script.aculo.us/whatever it's bloody called19:38
twolfynuclear_eclipse, you don't need to do this 'more' work19:39
paul_people have thrown around jquery as a framework19:39
twolfyyou could start with a simple AJAX-implementation19:39
nuclear_eclipsetwolfy: if you want asynchronous communication with the backend for refreshing the content without reloading the page, you have to have an API19:39
paul_when I asked the only person I know that seems to do ajax stuff (someone who's written an irc client in ajax amongst other things) he came back with mootools19:39
twolfyand then growing slowly19:39
twolfyright19:39
paul_so i'm trying to work out what differences between these 3 things are :)19:40
darynmost likely mootools because it's faster on firefox19:40
nuclear_eclipsemy point is that generating a javascript-powered interface is going to be a lot of effort that I think would be far better spent elsewhere in the codebase19:40
darynthe biggest debate for not using jquery is that it is slower on ff19:40
twolfybut you could wrap your application and provide those functionality19:40
twolfythat won't require a lot of work19:41
paul_daryn: why do we want to use jquery/mootols over whateveritcallsitself?19:41
paul_is there a technical reason or19:41
twolfypaul_, jquery provides already an easy way to integrate AJAX in your application19:41
darynnuclear_eclipse done properly it should not affect the code base except to add id's/classes which is needed anyway19:41
darynjs should not be in the html19:41
darynover projax?19:42
paul_http://blog.creonfx.com/javascript/mootools-vs-jquery-vs-prototype-vs-yui-vs-dojo-comparison-revised19:43
twolfyit's not only about "what does the framework support/provide now" - also where does it go in 3 or 5 or more years19:46
darynpaulr yeah?  what is your point?19:46
twolfyand jquery seems to be supported by a lot of companies (google, MS and so on :)19:46
paul_looks like guy started a war :)19:46
* paul_ nods19:47
darynmaybe19:47
paul_so how easy would it be to dump what we have now for jquery?19:47
daryni think either mootools or jquery would probably be fine but I like jquery syntax19:47
darynwould take a while...but the js needs to be removed from pages anyway and loaded dynamically.19:48
twolfyjquery-syntax is similar to prototypes one19:48
twolfyin some parts of course :)19:48
darynmaybe. but it is significantly faster in every way19:49
twolfyright19:49
* giallu thinks we have relatively few JS stuff, it shouldn't be so hard to switch at this stage19:50
paul_http://blog.thinkrelevance.com/2009/1/12/why-i-still-prefer-prototype-to-jquery seems to do some good comparision... anyway...19:51
paul_from our point of view jquery is probably more popular = good19:51
paul_i'm not necessarily sure we *need* to move to something different19:52
paul_however, I think we'd probably benefit from using something that's gaining popularity19:52
paul_i.e. jquery19:52
twolfyalso jquery has an UI part19:54
twolfywhich integrates nicely with the core19:54
paul_twolfy: you could work on a patch to replace current js stuff with jquery19:55
twolfyokay, will start tomorrow at work19:56
paul_as i'm guessing it's probably worth replacing current code with jquery equiv19:56
twolfyhmm, charset whithin code would be utf8 I guess?19:58
paul_lang_get('charset') :P19:58
paul_but yes, I think would normally be utf819:58
paul_not sure it's guaranteed to be :)19:58
twolfyoh, okay  :)19:59
paul_nuclear_eclipse: what about putting project selector on a different page to top right?20:01
nuclear_eclipsehuh?20:02
paul_the project selector20:02
paul_;)20:02
darynhow about...removing the project selector20:02
* paul_ wants to either move or ajaxify20:02
nuclear_eclipseI'd rather see if get javascript treatment, but I don't see how that will improve anything...20:02
darynno...it needs to be rethunk20:03
darynthat thing is the source of much confusion20:03
twolfyhmm how far is the 1.2.0 release?20:03
darynat the current rate?20:04
daryn204220:04
twolfyis master already open for changes?20:04
twolfy;)20:04
nuclear_eclipsetwolfy: it's been open since 1.1.0rc1 was released :P20:04
twolfyis there an internal release-date?20:05
paul_sure20:05
nuclear_eclipsewhenitsdone20:05
paul_sunday20:05
paul_:)20:05
twolfy:)20:05
twolfyokay20:05
paul_I need at least 48 hours to break trunk before we can do a relase20:06
paul_can't have a release without breaking something20:06
twolfy:)20:06
paul_moving to jquery seems like a good thing to do as the last commit before a release!20:06
paul_oh, and sync in my dates branch20:06
twolfyright, that could help you to break things :)20:06
nuclear_eclipseas unofficial release manager, I'll make sure to revoke your commit access before announcing a release date :P20:07
giallu+1 to removing project selector (sorry, I'm late ) ;)20:07
nuclear_eclipsehow do we get rid of the project selector?20:07
daryndelete it20:07
daryn:D20:08
nuclear_eclipseright, but then everything in Mantis breaks for any installation with >1 project....20:08
darynit still works....you just have to use the filter20:08
gialluand add it as a field in the bug report page20:09
darynyeah20:09
darynthat too20:09
nuclear_eclipsethat sounds annoying...20:09
giallunuclear_eclipse, granted20:09
giallubut just the coding part20:09
gialluthen it's a lot less bug reports20:10
darynwhat's more annogying is spending an hour trying to figure out why your issues aren't showing up in the filter and then realizing the stupid selector has changed20:10
darynor submitting a bug report and then CRAP wrong project20:10
gialluthen suddenly you can also show issues from teo20:10
giallufrom two projects20:10
giallunot just one or all20:11
paul_well could just amke top right be20:11
paul_'<currentprojectname> [change]20:11
paul_clicking changes goes to set_proj.php or whatever it is20:11
paul_that means we dont need to render project dropdown on every page20:11
paul_speeding up mantis ;)20:11
nuclear_eclipsepaul_: I'd rather see that20:12
darynright...by .0000000000000000000000000001 sec20:12
paul_what i just said ?20:12
paul_daryn: not if you have 2000 projects20:12
paul_:)20:12
gialludaryn, well. the dropdown is a killer for someone20:12
giallusee help list20:12
darynif we're going to do that can we add some kind of project indicator?  like a nice wide border with the project name or something?20:12
giallubut surely, we don't change just for optimizing that use case20:13
darynno...because it's annoying20:13
nuclear_eclipseI've never actually had any problems with the dropdown doing things wrong, but maybe I'm the weird person who actually keeps track of what project they have selected....20:13
* daryn smacks nuclear_eclipse for his smugness20:13
paul_well20:13
twolfyas a user of mantis I like the project-selector - may be it should be configure-able20:13
* nuclear_eclipse bans daryn from #mantishelp20:13
giallunuclear_eclipse, really. we should stop thinking about just what bogs us, we also have users20:13
twolfyand be disabled on default20:13
paul_it's a fun one :)20:14
gialluand we have lots of bugreports related to the selector20:14
darynso...how can we improve it20:14
nuclear_eclipsewell, anywho, I need to go eat and work out20:14
gialluI'm +1 for the '<currentprojectname> [change]' type20:14
giallubut20:14
nuclear_eclipse+1 from me as well20:15
nuclear_eclipsecheers all20:15
gialluof bug report page we also add a field for the project20:15
daryn+1 from me with the addition of some kind of notifier...on every page20:15
paul_for the most part20:15
giallus/of/on20:15
paul_people use 1 project right?20:15
twolfyhmm, in our company we are using a lot of projects at the same time :)20:16
gialluand we aslo add it to filters20:16
darynwe are too. i think he means one at a time20:16
paul_i was going to say20:16
paul_people use 1 project20:17
paul_*but* subprojects20:17
paul_i.e. if we made mantis have subprojects for various areas20:17
paul_you'd probably want the subprojects on each page20:17
twolfyhmm we have multiple master-projects20:22
twolfyfor our it there are 4 with multiple subprojects20:22
twolfybut right - many of us only working in one master-branch20:23
twolfyhmm, what's about using smarty as template-system to split code from the output-format?20:30
twolfythat's something that sould be easly done (as I'm working on the prototype->jquery port - I should be able to also switch the code to smarty)20:32
twolfyif it would be welcome :)20:32
daryntwolfy some people have been working on that20:33
darynnot sure if they are using smarty or not.  has been alot of discussion20:33
twolfydo you have any checkout-uri for me?20:34
paul_tbh, I dont think we'll end up with user-modifiable templates anyway20:35
giallutwolfy, daryn consensus was going to smart was not worth, sticking with a simpler php based template system looked feasible20:35
darynpaul_...we're not talking about user modifiable templates so...get that out of your head!20:35
paul_;)20:35
twolfy:)20:36
daryntwolfy i don't see a repo...can't remember who was working on it dhx maybe?20:36
twolfyyes, it's about MVC ^^20:36
daryni'm fine with straight php if we can be disciplined and keep business logic out of the html20:36
paul_daryn: we mainly do that now though?20:37
darynand if i have freedom to slap anyone who doesn't20:37
twolfy:)20:37
darynpaul_ you are joking, right?20:37
twolfyokay, I'll prepare some thougth tomorrow and pubish them on github, so you're able to check them out20:38
paul_twolfy: do jquery stuff20:39
twolfyyes, I'll :)20:39
paul_daryn: well, some pages20:39
paul_*most* db queries are in api's20:39
darynright, but we have a ton of html being printed from php pages, functions, and api's20:39
twolfyyes20:40
darynall of which should be removed and made into nice html templates with php to control the display logic20:40
paul_I want to get all the sql calls that are left out of the _page.php files20:42
darynthat would be good20:42
twolfyokay, got to go20:46
twolfybye bye up to tomorrow20:46
darynbye. welcome aboard20:46
twolfythx :)20:46
harpreet_singhhi21:02
CapitanPolpohi!21:03
harpreet_singhhi... I am trying to install mantis 1.1.721:03
CapitanPolpohi! i have installed mantis 1.1.7. .... i have trouble?21:04
CapitanPolpoyou have problems?21:04
harpreet_singhbut I am not able to find the db_generte.sql file.21:04
harpreet_singhyes...21:04
harpreet_singhthis is a fresh installation.21:04
CapitanPolpoyou have start with the instant mantis 1_1_1?21:05
moto-moidoesn't the installer create the database for you :?21:05
moto-moi<-- hasn't installed mantis in a few years :P21:05
harpreet_singhno I have downloaded the tar file21:06
harpreet_singhthis is on server....21:06
CapitanPolpoi have started whit version 1.1.1, that contains also the database, and after i have upgrade it with version 1.1.7 and it work well!21:07
CapitanPolposorry for my bad english! (-:21:08
harpreet_singhu means I can not directly install Ver 1.1.721:08
CapitanPolpono21:08
harpreet_singhno issue.. same here.. zombe....21:08
harpreet_singhin night shift...21:08
CapitanPolpothe 1.1.7 as only the php source21:09
CapitanPolpohave only the php source.. but you need also the server, apache, mysql and php21:09
CapitanPolpois all in the istant_mantis installationù21:09
CapitanPolpounderstand?21:10
harpreet_singhI have already install apache 2.2.11, php-5.2.9, mysql 5.1.33-0.21:11
harpreet_singhhi..may I know where I can download mantis 1.1.121:15
CapitanPolpoi'm sorry, i can't help you, i have installed the instant_mantis21:15
CapitanPolpook... just a moment21:15
harpreet_singhno issue.21:17
CapitanPolpook21:18
CapitanPolpohttp://sourceforge.net/project/downloading.php?group_id=14963&filename=InstantMantis-1.1.1.zip&a=4161972221:18
CapitanPolpohere21:18
CapitanPolpook?21:20
harpreet_singhok21:23
CapitanPolpo(-:21:23
harpreet_singhThanks...21:23
CapitanPolpo(-:21:23
harpreet_singhbut this one also dont have db_generate.sql21:23
CapitanPolpoi don't know...... just a minute, i check21:24
CapitanPolpono not find in my installation21:24
harpreet_singhI have ver 0.17 where I can see the mantis/sql/db_generte.sql file21:28
paul_0.17?21:40
paul_or 1.1.7?21:40
CapitanPolpoi think 1.1.721:42
harpreet_singhmantis-0.17.521:43
paul_0.17.5 is *OLD*21:48
harpreet_singhyah...21:52
CapitanPolpo....21:52
harpreet_singhso now I am doing a new setup.21:53
paul_i'm confused21:53
paul_are you trying to upgrade21:53
paul_or do a new install?21:53
harpreet_singhno...21:53
harpreet_singhthis is a new Install.21:53
CapitanPolpohave you installed instant mantis 1.1.1??21:54
paul_harpreet_singh: /admin/install.php creates the db now21:54
harpreet_singhinstant mantis is for server ?21:54
CapitanPolpoistant mantis contains the servers, apache, mysqk and php21:55
CapitanPolpoit's ready to run21:55
harpreet_singhoh..21:55
harpreet_singhI think you are running InstantMantis on your PC22:05
harpreet_singhnot a server base22:05
harpreet_singhC:\ABC\manual\manual.installation.html22:10
harpreet_singhNext we will create the necessary database tables and a basic configuration22:10
harpreet_singh:)22:23
harpreet_singhhi22:50
harpreet_singhhi23:47

Generated by irclog2html.py