topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday December 13, 2024, 1:09 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: For Developers - Today - 12MAY09 - Visual Build Pro v. 7 60% OFF  (Read 5807 times)

tinjaw

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • View Profile
    • Donate to Member
I just purchased Visual Build Pro v. 7 (1-computer license), sight unseen. I have wanted FinalBuilder for years, but can't afford it. Visual Build has always looks comparable, but also priced too high for my pocketbook. With the discount, Visual Build is only $119. I purchased a copy just now and expect it will be worth the cost.

I have Ultra Recall from Kinook already and like it, so I suspect this will be of comparable quality.

http://www.bitsdujou...ftware/visual-build/

tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
I just purchased Visual Build Pro v. 7 (1-computer license), sight unseen. I have wanted FinalBuilder for years, but can't afford it.

I've been eyeing this one too, but I figure it's overkill for a one-man hobby shop. FinalBuilder likewise, both are really shiny!

There is one particular functionality I'm looking for this type of app: being able to generate documentation by substituting values in templates. For example, there would be a dictionary which defines something like
Version=1.0.0.23

and then a readme file template that says
"Welcome to MyApp v. %Version%"

Do you think Visual Build Pro can do this sort of thing? From the description I cannot be sure if it's supported - the bolded fragments approach the possibility but aren't specific enough: 

It can compile help projects, deploy applications, and perform builds on an automated, scheduled, remote, or continuous basis. And when it comes to distributing your applications, Visual Build is perfectly capable of creating installers for your software, burning physical media, creating ZIP archive files, and writing files directly to a website, network path, or FTP server.


tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
...to continue the above substitution idea - it can of course be much smarter than my simple description.

The version number could actually be picked from the compiled executable; substitution variables could carry formatting specifiers, something like %date{format="yyyy-mm-dd"}% (the syntax doesn't matter), they could support recurrency, etc. Template syntax could support simple formatting markup as well, which the builder would turn into html, bbcode, wiki markups or other types depending on project specs. That way you could use the same template both for a plain text readme file, and for a website page that describes the software.

Does anyone use anything like that? Does it even exist?

In general, what does everyone do when releasing a build? When you increment the version number, do you manually update it everywhere in the docs, readmes, help, PAD files and on the website? It's not just the version number of course, there are tons of little details that change, and in the end I always forget do update a couple of places. What do you do?

Just last night I was designing an xml format for a "documentation compiler" that could do what I listed above, but I'm sure this wheel must have been invented a dozen times already.




« Last Edit: May 12, 2009, 09:30 AM by tranglos »

tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
...and to continue some more, it looks like Visual Build Pro can indeed do (some of) what I want. The supported tools page mentions the ability to replace text in files, and among the samples there is a mention of substitution dictionaries:

Dictionary: Demonstrates initializing a collection of values using the Dictionary object, storing in a temporary macro, and using in a later step.

10 hours and 50 minutes to decide... :)

tinjaw

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,927
    • View Profile
    • Donate to Member
Although I purchased Visual Build Pro, I haven't used it so I can't tell you if it does the things you want. If I had see your postings soon enough I would have suggested making the purchase and asking for a refund if it doesn't meet your needs. OR asking via email to be allowed to try the demo for a week and then get it at the BdJ price. But alas I am too late.

As to a more general answer to your question about build processes...

Let me start by saying that in the commercial world that is  literally a full time job. The position is called Build Engineer and it is a job that does all of the stuff you are talking about.

Every language and development environment has *some* way to do all of that, but they all do things differently. Almost always the solution is one or more of three types: custom code, custom code using a build framework, using a tool like FinalBuilder or Visual Build.

For example, Python has distutils, EasyInstall / Setuptools, templating with Cheetah and Python Paste, Buildbot, among others.

tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
Although I purchased Visual Build Pro, I haven't used it so I can't tell you if it does the things you want. If I had see your postings soon enough I would have suggested making the purchase and asking for a refund if it doesn't meet your needs. OR asking via email to be allowed to try the demo for a week and then get it at the BdJ price. But alas I am too late.

No problem, Tinjaw. I wasn't ready to part with over $100 anyway. I got engaged in my own idea meanwhile - and I need that kind of substitution engine much more than automated uploading or checking in. Things like compiling help can be plugged into Delphi build process now.