This page contains information (both frequently asked and just stuff we think you ought to know) about the source release of Pueblo/UE. If you're not interested in using the source code, and only want to use the precompiled program, then don't worry about anything on this page and just go back to the product page.
Stuff you'll need
The source code release is subject to the Andromedia Public License, so make sure you read that before you do anything else. And while it's not explicitly stated in the license, please do not misrepresent your own compiled versions, either as an official Pueblo/UE release or as your own original work. It's not; please don't pretend otherwise.
How to obtain the source code
The latest source code can be obtained from the SourceForge project CVS repository. Once you're familiar with how to use your CVS client, just create an appropriate working directory and use the commands listed under "Anonymous CVS access" in the SourceForge documentation. The modulename is pueblo.
As an alternative to using CVS, you can also obtain an archive of the Pueblo/UE 2.61 complete source tree (including libmng). These files have been packaged for convenience, and I haven't actually tested whether they will build out of the box (though they should, since they're straight from CVS).
THIS STEP IS NOT NECESSARY IF YOU DOWNLOAD THE ZIPPED SOURCE ARCHIVE
Starting with version 2.60 of Pueblo/UE, the libmng library is used for PNG, MNG, and JPEG image rendering. Go to the libmng site and download lm1008x.zip (make sure you get the 'x' version, as it contains all the other dependencies required by libmng itself). Extract the folders to your Pueblo source directory (so you end up with four subfolders in your source folder).
Here's the really important bit though: in order to get things to compile and run correctly, I had to make a few minor modifications to the source files for libmng and its components. So you should unzip libmng first, and then afterwards copy in the Pueblo source code (overwriting any existing files).
How to compile
There are actually two different compile chains included in the source release; the first is through Borland C++ makefiles, and the second is through Microsoft Visual Studio.NET.
So I can compile now. Can I implement awesome new feature XX?
Please send me an email before you start working on some new feature; it's possible that someone else has already thought of it and is already working on it. No sense duplicating work. There also might be some features that I don't want to put into Pueblo/UE (because I think they go against what it's designed for, for example), though hopefully not too many of those. And if you disagree with my decision, just collect enough friends who use Pueblo/UE frequently together and get them to yell at me, and I might come around :-)
I've finished the new feature, tested it, and it works brilliantly. Now what?
Send me a context diff of the changes that you've made; I think you can produce one using WinCVS. Failing that you can use a directory-compare tool to compare your source against clean source straight from the CVS. That way you should be able to find the exact files that you've changed. Again, I'd prefer a context diff if you can produce one, but if not, just package up a zip containing all the modified files (don't include the files that you haven't changed!) and send it to me, along with a detailed description of how your feature works. If it works well I'll integrate it into the next version of Pueblo/UE; if not I might just put the patch up on the site somewhere so that interested parties can tinker with it. Whatever seems more useful at the time ;)
Well, that's it from me for the moment. If there's anything else you can think of that you need to know, just drop me a line and I'll try to answer.