Author Topic: Team System aka Team Block idea  (Read 25003 times)

Offline eranif

  • Regular
  • ***
  • Posts: 256
Re: Team System aka Team Block idea
« Reply #15 on: August 28, 2006, 01:20:50 pm »
Hi,

Quote
If that's so, a very good (and comfortable) solution would be to make a server-client (C++) C::B bugtracking plugin with an sqlite/mysql backend, and another implementation of the client in PHP, so that the bugtracking data can be viewed from both inside C::B local/remotely and from the web.

Again, I want to recommend a very nice tool I was working with, both in php & mysql - phpbugtracker
http://sourceforge.net/projects/phpbt

Eran

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #16 on: August 28, 2006, 03:36:56 pm »
Thanks for giving me back my thread :D
Takeshi: Actually I was thinking about something like that. I Was even thinking about doing db access using php web services. Don't know if this would be good idea but surely it would be portable.
As for trac - I've heard a little bit about that. Don't know if I will follow that pattern or maybe create simpler system. As for one thing I'm quite sure - there is a need to create some links between bugs and their orgin, their resolution in connection to svn versions. I'mean - it would be good to attach information about: in which svn version this bug appeared for the first time, and in which it was resolved.

I plan to create simple solution during first few iterations, and then build up another features. Also - first few iterations will work with local server instead of remote as this is much easier to handle.

takeshimiya

  • Guest
Re: Team System aka Team Block idea
« Reply #17 on: August 28, 2006, 11:49:32 pm »
Again, I want to recommend a very nice tool I was working with, both in php & mysql - phpbugtracker
http://sourceforge.net/projects/phpbt
Yes, I know it, and using it could serve as a start because it's made in PHP, but mind that it lacks the svn, wiki and roadmap integration.

As for trac - I've heard a little bit about that. Don't know if I will follow that pattern or maybe create simpler system.
Make sure to check it deeply, it haves the best integration I have found.

As for one thing I'm quite sure - there is a need to create some links between bugs and their orgin, their resolution in connection to svn versions. I'mean - it would be good to attach information about: in which svn version this bug appeared for the first time, and in which it was resolved.
Yes, trac just does that, and even shows automatically the code changes for a bug/revision.
The latest versions of TortoiseSVN now includes a Bug-ID string, so you'll want to use it.
See here: http://tortoisesvn.tigris.org/issuetrackers.html

Offline Game_Ender

  • Lives here!
  • ****
  • Posts: 551
Re: Team System aka Team Block idea
« Reply #18 on: August 29, 2006, 01:13:51 am »
I don't know if having the bug tracking application integrated into the IDE will give you that much of a benifite.  I use Xcode and SVN + Trac at work.  I have a browser almost open for viewing documentation and such.

What do you hope to achieve by reinventing trac and then recreating the interface within Code::Blocks?  If you really wanted that kind of information in the IDE, you could make a pluggin for trac that allows remote use, and then a C++ client for Code::Blocks and save yourself lots of time.

If my questions seem off base could you layout a clear set of features for what Team Blocks will contain?

takeshimiya

  • Guest
Re: Team System aka Team Block idea
« Reply #19 on: August 29, 2006, 02:03:55 am »
What do you hope to achieve by reinventing trac and then recreating the interface within Code::Blocks? 
Speed and usability of course, it would be far more comfortable doing Right-click->Add issue inside C::B, navigating the current issues without leaving the IDE (thus with zero possible distraction), integrating TODO lists from C::B with it, and you can think a lot more possibilities.
The "I" in IDE is for Integrated, so sure you can use external documentation/bugtracking/compilers/whatever, but it's more comfortable to have everything in one place.

If you really wanted that kind of information in the IDE, you could make a plugin for trac that allows remote use, and then a C++ client for Code::Blocks and save yourself lots of time.
Well, that's a very good option too and it will save lots of time reinventing the wheel. :)
However it faces a little problem: trac itself and it's python dependency.
To put it simply, PHP is far more extendend in hostings than Python, aside that trac is not easy to install.

Having a SQlite backend (without more dependencies) as a C++ C::B plugin would mean that it will not requiere having to install any server software (be it apache/mysql/whatever) to use it in a local way (common usage for a 1-person development).
And having the DB in SQlite would mean that it will be easily accessed from PHP from a web interface (common usage for a team development).


But in a way, I think the best-fit-all solution would be to use the current Trac SQlite DB schema (and make compatible with it).
That will save from initially having to write the Web code, thus reusing Trac, and if it later proves to be worth, write a PHP version.
Put it simply, the C::B version will not have any Trac dependency, but it will be DB-compatible.
« Last Edit: August 29, 2006, 02:06:37 am by Takeshi Miya »

Offline Game_Ender

  • Lives here!
  • ****
  • Posts: 551
Re: Team System aka Team Block idea
« Reply #20 on: August 29, 2006, 06:43:21 am »
Again, what are really going to have here?  Issue tracking integration with Code::Blocks, team management with Code::Blocks, source control integration with Code::Blocks, or a generic implementation of all three? 

The OP has seem to have left the thread without a super clear layout of what he wanted to accomplish, we could argue the best ways to do issue tracking integration all day.

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #21 on: August 29, 2006, 09:07:50 am »
Game_Ender: I suggest You read the thread from beginning. This is supposed to be called Team Block - not bug block, bug related isuess are only one part of the whole system. I mentioned a lot of features, and I guess a lot of them will appear during the development. I'm not trying to create extra super detailed specification as this is one person project, and it is also supposed to be community driven so in the end it will be adjusted few times during development. It is quite normal for community projects.

Actually idea of Team Block came to me after taking a deeper look at Microsoft Team System. They are quite proud of their team system. So why we shouldn't be proud of our too? :D

Ideal solution would also bring support for continuous build, automated testing framework and many more. But i prefer to start from something simpler. Lets build small firework and then we move to building the space rocket ;)

Takeshi: I will think about reusing existing trac db structure. And hey - that is just great that TortoiseSVN now support bug-id string. I will download new version right now :D

Offline David Perfors

  • Developer
  • Lives here!
  • *****
  • Posts: 560
Re: Team System aka Team Block idea
« Reply #22 on: August 29, 2006, 09:38:41 am »
This is a very nice idea, but I think it is better to make sepperate plugins for every functionality, so every one can choose which plugin it wants (some don't want bug tracking, other don't want to have svn support)
An other advantage of multiple plugins is that it is easier to maintain.
Just my 2 cents ;) (I am looking forward to a first release)
OS: winXP
Compiler: mingw
IDE: Code::Blocks SVN WX: 2.8.4 Wish list: faster code completion, easier debugging, refactoring

takeshimiya

  • Guest
Re: Team System aka Team Block idea
« Reply #23 on: August 29, 2006, 09:45:13 am »
This is a very nice idea, but I think it is better to make sepperate plugins for every functionality, so every one can choose which plugin it wants
But there should be some kind of TeamBlocks SDK (it may be not trivial to make) for communicating eg. between SVN <-> bugtracking.
On the other (more easier) hand you could have the same functionality but toggleable at runtime.

AFAIK when going for the Trac DB route, it would be rather difficult not having everything in the same plugin because the issue tickets, revisions, wiki articles and everything is tightly integrated and kept in the same SQlite DB.
« Last Edit: August 29, 2006, 09:49:24 am by Takeshi Miya »

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #24 on: August 29, 2006, 09:58:26 am »
Eventually it will be set of separate plugins. But I don't plan to put bug tracking in one and change management in another. But for example svn will be separate plugin - that's for sure ;). Maybe I will even be able to reuse existing ones (as far as I know there is one).
If everything goes well then TM will be center for much more plugins. As I wrote - continuous builds and automated testing are just the few ideas that would be most helpfull.

mispunt: On more thing  - I plan to add some customization element. This is normal thing that every project in every company looks a little bit different. Some companies do not allow req changes during dev, other do, some handle bugs in one way, others do this in completely different way. So I plan to allow user to customize his view - does he need change management, should all the bugs be approved by somebody or maybe thay are moved to developer right after their appear in the system. There is so many combinations. And I plan to create TB as flexible as I can.

Takeshi: SDK. Well. Who knows. I think you are right. But i will think about this later.

Offline Game_Ender

  • Lives here!
  • ****
  • Posts: 551
Re: Team System aka Team Block idea
« Reply #25 on: August 29, 2006, 02:55:03 pm »
MazriuszP, I wasn't asking for a set in stone feature list or anything like that.  More like the roadmap  that the CB team has on the wiki.  If you want community involvement the community has to know what features are currently under development so they can lend a hand.  Just because you write down "For version 0.1.0 there will be X features" doesn't mean you can't change those features based on community feedback and time constraints.

VS Team System:
That Microsoft website was dog slow on my machine with firefox but after slogging through it does seem to a very broad product.  They have 5 or 6 editions  (or just split the product into 5 or 6 chuncks) and each has a different focus, from database designing, to software architecting, and software development.  The development one has issue tracking integration, profiling tools, source control, and automated test tools.

It would be awesome to see some of this stuff in Code::Blocks (we already have a gprof pluggin), good luck MazriuszP.  Where do you plan on hosting your project?

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #26 on: August 29, 2006, 08:42:23 pm »
Game_Ender: roadmap will eventually appear somewhere. As for now I'm still working on overall idea. I'm trying to figure out what architecture I could use ,I'm trying to find out what should be put in first versions. When I will have everything ready I will eventually write everything out and put somewhere. Actually I started this thread to check out what features will get most attention.

AS for VS Team System: Well - this is not definitelly not a speed demon ;). You are right that it's split into few sub products but there is also something called Team Suite that covers this all. And actualy I would be more than happy if we could put most of vs team system in Code blocks. (I like to see how Microsoft guys react on info that some features that VS lacks are already implemented in open source products). Company I'm working for is MS gold partner so I have access to most of the tools, and I have a chance to speak with MS or MS related guys from time to time.

I don't know yet where will I host TB. I guess I still have some time to decide :D

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #27 on: September 05, 2006, 09:15:58 pm »
Hi,
For last few days I've tried to create sample app that would use sqlite. I've been using sqlite previously under windows, but it was my first time when i tried to use it on linux platform. Right now it's 0:4 for sqlite. I just cannot make it work. I'm using wxSqlite. I found out that it works with sqlite 2.x while I plan to use 3.x. So I'v changed library and right now I got plenty of undefined symbol errors.

Heh. Right now, when I was writing this post I got some idea which seems to be good. I've checked sqlite home page and found out that actually it was impossible to find such methods, because instead of sqlite_open there is sqlite3_open. Damn. I lost 4 days. So right now I'm going to get myself a break ;)


Offline eranif

  • Regular
  • ***
  • Posts: 256
Re: Team System aka Team Block idea
« Reply #28 on: September 05, 2006, 09:33:22 pm »
Hi,

Have a look here (SVN) - http://opensvn.csie.org/CodeLite/
My little project (also for codeblocks) is using sqlite.

You can find an example for wxSQLite usage in addition to the updated dll for windows, makefile that will build it on linux etc.

Specifically, have a look at TagsDatabase class


HTH
Eran

MariuszP

  • Guest
Re: Team System aka Team Block idea
« Reply #29 on: September 05, 2006, 11:49:07 pm »
Thanx,
I'll take a look at this in the morning.
I'v been using wxSqlite but not under linux. It was about year ago. And, well I got stange impression that it looked a little bit different than now ;)