Mercurial plug in for Delphi - delphi

Is there a project or project in progress for creating a Mercurial plug in for Delphi XE?
Failing that, where can I learn more about creating one?

Delphi XE has SVN support and the integration is an open source project, you can get it's code from here
I read somewhere that they made it generic so it's not tied for SVN, but they add the SVN support because it's more popular and as starting point.
also as Uwe Schuster blog (who developed the version insight for Delphi XE), both Git or Mercurial support are planned.
Q: Will there be support for Git or
Mercurial? A: Support for both is
planned and first tests have been done
in the past months, but I don’t have a
timeframe. (Remember I do have a full
time job, work on Version Insight in
my free time and it’s not the only
thing)

Related

Turbo Power - SongBeamer or SourceForge for Delphi XE?

It looks like the SongBeamer site which put up some nice ports for the TurboPower OpenSource projects for Delphi 2009+ are now being outdated with some recent updates in SourceForge. But, then again, maybe not? Which versions are best used with Delphi XE?
I'm most interested in Abbrevia, LockBox, and Async Pro. It looks like Abbrevia-SourceForge, AsynPro-SongBeamer, LockBox..?
I am the "owner" of the Turbopower projects on SourceForge. They are all in various states of development, but the most popular ones are XE ready.
I confess that I don't know the exact state of any individual project, but I can say that SourceForge is the best place to get the most recent and up to date "official" version.
As far as I know, the SourceForge versions of the projects are currently actively being maintained, under the direction of Nick Hodges.
Abbrevia is much better on SourceForge. The SongBeamer version was based on unstable code from mid-2008. I started maintaining the project in 2009 and the official 3.05 stable release had a lot of cleanup and fixes after that. v4.0 was released in March 2011, and added new features, include full support for Unicode filenames in zips, bzip2 archives, and decompression support for most of the new zipx compression algorithms (LZMA, bzip2, PPMd, WavPack). The current Subversion trunk also has Zip64 support and much better splitting/spanning support.
Async Pro appears to be better on SourceForge, but it's a bit of a mix. Officially only a handful of components have been updated to Unicode. In the SourceForge release the admin added $IFDEFs to keep the remaining files from compiling, while on SongBeamer they may still compile but might not be correct. There have been a few releases on SongBeamer since the SourceForge 5.0 release, so there may be some fixes not in the official release, but it's not based on the 5.0 release, so they're both missing stuff.
LockBox 2 is better on SongBeamer. The SourceForge version hasn't been updated with Unicode support at all. The SourceForge site does include a LockBox 3 project that supports Delphi 2007 through Delphi XE, but it's entirely new, incompatible code, so the only thing they share is the name. It is being updated though, unlike LB2.
Orpheus is better on SourceForge and incorporates all of the fixes from SongBeamer.
Office Partner has had a Unicode update posted in the SourceForge project's forums, but doesn't have a maintainer, so it's not official released or in the SVN repository. Not available on SongBeamer.
OnGuard and SysTools are the same on both sites.
ShellShock has Unicode support in the SourceForge Subversion repository.
XML Partner has the SongBeamer code committed to the SourceForge Subversion repository.
TP Essentials is better on SongBeamer.
The rest of the TurboPower projects SourceForge projects are dead.
Stay away from LockBox. Version 2.x in now really outdated (but for very simple cryptography needs), while version 3.x developer has somehow "stolen" the LockBox name, writing another library not compatible, and its quality doesn't look good.
Moreover IMHO he has no rights to change the license, only the Initial Developer - Turbo Power - can relicense under different ones, if he didn't like MPL 1.1 he could have created his own library without taking Turbo Power's Lockbox name and Sourceforge project. Thereby you may end up using a library with an invalid license, especially if you plan to use it under GPL terms.
If you have needs for good cryptography look elsewhere.
The sourceforge version of AsyncPro doesn't add the BCB components either - these seem to have suffered a lot since TP opensourced. I had to build packages for this a couple of times to support various versions of RAD studio. Haven't checked the latest songbeamer build.

Anyone would like to share their experience using TFS for Application life cycle management

we are developing white label web and mobile healthcare application for our clients. our product is evolving rapidly and we are supporting existing clients and going to support new clients.
current development workflow involves SVN for source code, requirement documents tracking and mantis for defect tracking.
We are considering VS TFS 2010 based Application life cycle management for our organization. we are hoping that VS TFS 2010 will help us streamline the following
1) Requirements Management
2) Source code Version control
3) Build automation
4) Test management
just wondering is anybody have experience using VS TFS 2010 and would like to share their experiences? is there any worthwhile alternatives to VS TeamSystem?
Preface: This is a personal opinion and I have no ties to Microsoft other than that I develop with their tools for their platform, even though I come across as a Microsoft lover in this answer. (which I am - I love .NET development)
I haven't used TFS 2010, but I HAVE used the 2005 Team Suite including TFS and the Visual Studio versions supported. We didn't move forward to 2008 or 1020 because of how extraordinarily difficult the 2005 version was to install. However, once we got it installed... Loved it. The project management tools were intuitive, and worked well. Setting up builds was a breeze, and it did everything I wanted it to do simply and efficiently.
Since then, however, we've adopted open source tools to do the same type of stuff. As I said, the install of 2005 was a NIGHTMARE and even though the 2010 version of Team Foundation Server installs VERY easily (I tested it myself and demonstrated it to the poor team who helped with the 2005 version just to show them how much better it is), I was unable to convince my team to give it a second chance. They chose to stick with tools that didn't need to be upgraded as often, and that were easier to upgrade when it did need to be done.
If it were just me, I'd be using it. This is one of those things where things just work right, and work together seamlessly. And the available documentation (MSDN, videos, etc) is exhaustive. I doubt any other set of tools is as well-documented.
It's just too bad that the experience with the older version was so bad that nobody else here will give the newer version a fair shake.
As for alternatives - it's not open source, but Atlassian has a nice set of tools. They work well for Java and we're using some of them in our .NET shop. We're using SVN for source control. That's about the only thing I like better about our new environment than I did the Team System.
I started at a new company 2 months back that uses TFS 2010 exclusively (for source control and issue/task tracking), and I haven't been able to get comfortable with it. Previously, I've mainly used SVN for source control and either OnTime (by Axosoft) or Fogbugz (Joel Spolsky) and have loved them both.
I don't know if it's the way they're using TFS (branching is nothing as nice as it was in SVN... and they have Product Backlog Items, Sprint Backlog Items, Bugs, Impediments, and god knows what else to keep track of) but I find it way too convoluted.
I think the tools a developer uses should assist the dev, not get in the way of. If I have to stop and think about how to branch code or assign an issue, then something's wrong with my tools (or I just need to spend more time learning them... which doesn't make sense to me either).

What testing framework/unit testing to use with Delphi XE Starter Edition

I'm looking at moving from Delphi 2007 (purchased by my employer) to Delphi XE Starter Edition (purchased by me because my employer is moving away from Delphi) for some open source/hobby work. So, price is definitely a concern.
Delphi XE Starter Edition doesn't appear to have the integrated DUnit stuff. Are there any recommendations for testing frameworks that will work well with XE Starter? The framework must be automatible; for example, it must must be runnable by a Continuous Integration System such as Hudson or CruiseControl. Of course, free would be best. Integration directly into the IDE would also be handy, but not a requirement.
DUNIT is on SourceForge so you can get it from there. The version on SF is 9.4.0, the same that ships with Delphi XE. The code is however not identical. I do not know if it works with Delphi XE Starter edition but I don't see why it should not.
Will DUnit2 do?
Dunit2 is used in tiOPF framework and said to be quite good. The download sites are:
http://sourceforge.net/projects/dunit2/
http://members.optusnet.com.au/~mcnabp/
http://github.com/graemeg/dunit2
DUnit may be a better choice that DUnit2. With DUnit you can use the jcl and USE_JEDI_JCL to get the line numbers of failures. DUnit2 doesn't appear to support this.
DUNit2 doesn't seem to be getting much attention since Peter's death either. I don't know if it has been updated to use the latest version of delphi but it doesn't look like it.

Which is a better source control with NetBeans (Ruby on Rails), VSS or Subversion?

Which is better source control with NetBeans (Ruby on Rails), VSS or subversion?
I want to use source control, so I want to know which is better for NetBeans (RoR). Visual Source safe or Subversion?
Absolutely Subversion.
I'd explain why, but Jeff Atwood has done a great job already and the blog entry links to other sites with great information.
Avoid VSS like the plague. You are far better off with SVN or Git.
I can give you the recommendation to use Subversion if possible. Even according to Microsoft, SourceSafe is a rather limited version control system. It lacks quite essential features such as transactional commits/revisions, branching and merge support, an easily corrupted database etc.
Alan de Smet has put up a rather long list here:
Visual SourceSafe: Microsoft's Source Destruction System
If you for any reason have to live with VSS make sure that you install all service packs and updates as there are a number of highly critical issues in the RTM version (e.g. this update, updates don't come automatically with Windows update).
Anything but SourceSafe. In all seriousness though, Java-based IDEs such as Netbeans, Eclipse and IDEA usually have the best support for Subversion. It's free, and it's fast, and it's solid.
The Subversion Netbeans module is provided as part of the platform and is more likely to be supported than the VSS one.
I don't think you should let an IDE to decide for you which Source ( Control program to use. If anything, it should be the other way around, but best if the decision to choose each (IDE and source control) are decided by its own merits. In case the chosen IDE does not have tight integration with the source control, it's not the end of the world or a show stopper. In other words, you can still be very productive if they're not integrated.
Be careful using any source control within Netbeans.
You need to be very cautious about ensuring that you stick to a version of Subversion that your version of Netbeans supports. Assuming you are using windows you will probably also install tortoise and it constantly checks for tortoise & SVN updates which you may foolishly opt to do and then suddenly your netbeans subversion integration is screwed up.
If you search for netbeans subversion plugin a lot of the top entries include the words "upgrade" and "broke".
My advice would be to avoid the IDE integration altogether. You reduce the number of things that can break and interfere with your work. If you learn the command line options you become platform/ide independent.
I gave up on SVN in Netbeans a while ago after getting frustrated with the constant fiddling with the plugin, netbean versions, and svn versions.
I have used subversion with Netbeans before and it is very effective - subversion allows you to keep your source organised in a nice, simple folder structure whilst being almost universally supported. Besides all of the VSS haters out there, SVN is almost certainly the best "traditional" versioning system out there.
Update 2019:
the Subversion support page date from 2013, for SVN 1.8
And the request for SVN 1.9 (opened in 2015) is still pending.
So using the Git Netbeans integration is a good choice.
As an aside, Ruby itself just got migrated from Subversion to Git.
The initial request for that migration was opened three years ago, and at the time rejected.
But bugs.ruby-lang.org issue 14632 opened one year ago (March 2018) went through.
As announced in "Ruby Repository Moved to Git from Subversion" (April, 23rd 2019),
Today, the canonical repository of the Ruby programming language was moved to Git from Subversion.
The web interface for the new repository is https://git.ruby-lang.org, and is provided by cgit.
We can keep the commit hash from the contributor on the Ruby repository directly.

Delphi: Moving away from VSS

We are team of few Delphi developers who have been using VSS since years (I know it's a pity), but we don't use any of the advanced features of VCS, so it was working fine in many cases (but some times it was driving me crazy :( ).
The good thing that we have with VSS that we use third-party plug-ins to integrate VSS with Delphi, which is working great, but now when our projects becomes larger, and we would like to move a way from VSS.
I have looked at few other VCS (free and commercial) and found most of them seems be made for Linux guys, and you have to use command line for many admin work(I know I'm windows guy :P).
What I'm looking for the new Version control that it should be easy to use and to maintain and Integrated nicely with Delphi IDE (D2007), or at least have a good UI for the Admins an developers.
Just use SVN and an excellent TortoiseSVN client which integrates with the Windows Explorer.
P.S. Found this question: What is the best set of tools to develop Win32 Delphi applications? and this Delphi IDE/TortoiseSVN integration tools in one of the answers: http://delphiaddinfortortoisesvn.tigris.org/
You should at least take a look at JVCS. It integrates with the Delphi IDE, it's written in Delphi and is open source, and you can choose from a number of databases including Firebird to store your archive in.
There is Team Coherence (http://www.teamcoherence.com/) which is written in Delphi and integrates with the IDE very well. We still use it. Support is patchy though.
Most people seem to be moving to SubVersion though.
Team Coherence is a good choice. They just released a new client, so it looks like support is alive and well.
Unless you are directly heading to SVN (which I wouldn't recommend, if you're thinking on something free go to Git or Mercurial) check Plastic SCM. Find a couple of Delphi specific tutorials here:
http://codicesoftware.blogspot.com/2008/06/branching-and-merging-with-delphi-part.html
http://codicesoftware.blogspot.com/2008/06/branching-and-merging-with-delphi-part_02.html
Our Delphi team recently (last year ) upgraded from VSS to Perforce which is an absolute joy to work with. It is expensive but is well worth it. It makes source code control one of the tools of your trade rather than a chore or a hinderance. It has good GUI tools, a great commandline when required and there is a free Delphi IDE integration available online.
It does take a bit of getting used to, but is worth putting in the effort when you get to the point where you can create branches with abandon and merge changes knowing you dont ever have to worry about losing any changes ever. Its fast, efficient and a pleasure to use.

Resources