. .

smalltalk

Getting the Comments for a Store Publish

13 January 2011 2:33:17 PM

You would think that getting the version comment for a package or bundle you've published to Store would be simple - there's a method called #versionComment right there in Pundle - but you would be mistaken. No, that's not the comment you type into the text field when you publish.

Why do I care? Well, as part of my build automation work, I'm generating a small report, and part of that report involves pulling out the comment for a published package. That takes more work to get at than you might think:

 

pkg := (Store.Package withName: 'PkgNameHere' version: 'versionStringHere') first.
blessing := (Blessing 
				blessingsForRecordID: pkg  primaryKey
				type: pkg  typeStringForBlessing) first.
comment := blessing getCommentString.

 

Just tracing Store code to figure that out was painful; the comparison tool Version Browser doesn't make it obvious. Then there's the whole head scratching nature of "why isn't there a method that does this for me in Pundle?" Anyway, that does the job I wanted, and now I have that bit of my reporting task handled.

posted by James Robertson

 Share Tweet This

smalltalk

Registration for Smalltalk Solutions

12 January 2011 11:33:20 PM

Smalltalk Solutions

With the STIC site down, the registration information page is inaccessible. Fortunately, you can still register (and get early bird rates):

In the meantime, perhaps STIC should have someone edit the Apache configuration on their server, remove the redirect to the (non functional) WordPress site, and put up a static page with some basic links on it - at least until they get the problem solved.

Update: Sometime while I was asleep, the site came back :)

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Smalltalk Solutions Stuff

12 January 2011 1:37:33 PM

Smalltalk Solutions

I'll be at StS 2011, giving a talk on Smalltalk on the server side, focusing on cloud services. I still need to register - as I write this, the STIC website (where the registration page lives) is down though. I'll get to it when the site pops back online :)

posted by James Robertson

 Share Tweet This

smalltalk

Automated Testing for Seaside Apps

12 January 2011 9:14:05 AM

Tony Fleig talks about using a set of open source web tools to automate the testing of a Seaside app:

The WebClient package includes a simple and easy to use HTTP client. Soup is a port of the Beautiful Soup Python HTML/XML parser designed for screen-scraping. The combination of these two made it possible to perform black-box testing of my Seaside web application.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

XTreams For Squeak and Pharo

12 January 2011 7:08:40 AM

Martin Kobetic has ported the latest XTreams code over to Squeak and Pharo:

Hope it's OK to cross-post this, I figured there might be interested people on both sides. I finished the updates of the Xtreams port to match the VW version, so everything (that is available) should work as advertised in the documentation .

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

smalltalk

Looking at VA Smalltalk

11 January 2011 8:24:53 AM

The next podcast on the schedule will involve a look at where Instantiations is taking VA Smalltalk. Dave Buck and I will be talking to Mike Taylor, President and CEO of the company. If you have anything you would like us to ask Mike, email me before 5 PM EST today. The podcast will be out on Sunday, as per our regular schedule.

posted by James Robertson

 Share Tweet This

smalltalk

Build Oddities

10 January 2011 2:56:39 PM

I'm still working on build tools for the project I'm on, and I ran into an interesting thing today - a package that, when I have a script unload it, the script stops working.

Short explanation: I start by building an image from scratch using Store. From there, I unload a bunch of development tools. That works fine, unless I do the following:


(Store.Registry pundleNamed: 'StoreBase') ifNotNil: [:pundle |
      pundle leafItems do: [:each | each markNotModified].
      [pundle markNotModified; unloadFromImage] on: Warning do: [:ex | ex resume: true]].

Once I unload StoreBase, the build script I'm using (via -fileIn at the command line) simply stops working. No error messages either; the image just sits there, blinking at me. Very odd, but for now I'm dealing with that by just leaving StoreBase alone. I think I'll have to try it with that handler block left off, just so I can track the problem down.

posted by James Robertson

 Share Tweet This

smalltalk

Virtual Agility

6 January 2011 9:26:25 PM

Ron Teitelbaum talks about how Teleplace supports agile development - no matter how far flung your development team is.

Technorati Tags: ,

posted by James Robertson

 Share Tweet This

smalltalk

Building Clean

6 January 2011 2:08:00 PM

Before you can even get to building a runtime image from a clean base image, you have to get to the point where yoiu can build a clean development image from a clean base image. That was today's first challenge.

On any long lived project, things pile up if no one has been doing clean builds, and this one was no different. It wasn't bad - I only ran into one issue that needed resolving: four methods in one package were being invoked (via package initialization code), but those methods were defined in a package that hadn't loaded yet.

To back up a bit, the entire project here is in a "master bundle" - you load that, and you get everything (either in the bundle or via pre-reqs). Over the last little while, builds have only been done on top of previous development images, so no one spotted this issue. I cleaned that up, and then everything came in easily.

Next up was trying to save the bundle out as a parcel (I'd like to be able to build into an image without Store present). Now I ran into the second check: a bunch of external interfaces were defined with optimization level #debug, and parcels can't be saved with that setting. So... another bunch of small changes and bam - I had a parcel out on disk.

Now comes the fun part - one of the pre-reqs is all of the patch sets that Cincom support sends out (boy, would this be simpler if they just shipped new versions of the owning packages, but I digress). That stuff can't be saved (at least in VW 7.6) as a parcel, because they all contain overrides. So... I just filed that out. Since it's all patches on the base system, I can just set that up to load last and I shouldn't run into problems.

Thus far, I have the system loading cleanly from a base visual.im, which is progress. From there, I can move along to the next few steps and see if I can get a runtime build. Fingers crossed :)

posted by James Robertson

 Share Tweet This

smalltalk

S3 in Pharo

5 January 2011 10:03:48 PM

Sven Van Caekengergh has implemented an S3 client for Pharo Smalltalk:

I implemented and published a Pharo client for Amazon's AWS S3 service called ZnAWSS3Client. For some background, see the Amazon docs. The code can be found in the package 'Zinc-AWS' in Squeak Source. It depends on both Zinc HTTP Components and XML Support (an excellent package BTW) as well as on the cryptography functionality in Pharo (md5, sha1 & hmac). Basically, Amazon S3 (Simple Storage Service) is an online storage web service where you store and retrieve objects under keys organized in groups called buckets. Objects can be any web resource identified by a mime type. The main advantage is that S3 is a highly scalable, reliable, secure, fast, inexpensive service.

Technorati Tags: , ,

posted by James Robertson

 Share Tweet This

Previous Next (1106 total)