Early release aficionados rejoice! There is a new beta (dated 2016-03-20) here which fixes a crash in some situations in the video handling. (memory pointer free at the wrong place in time)
Speaking of video, we’ve slightly simplified the use. Now, only
require 'shoes/videoffi' is required so delete
Vlc.load_lib in your scripts after installing the new beta. There are code attempts in there to not do it twice but why tease the Gods?
A problem has been reported for Video on OSX 10.9.5 (Mavericks) but seems to be localized to that OSX version. The audio plays, but no video is shown, just the black box. OSX 10.10 doesn’t have that problem.
LASTLY, as stated before, using 3.3.1 BETA to package is just asking for confusion. I’ll also note that packaging is now 100% ruby code, albeit very confusing code which you can read for yourself to see what’s going on. It’s just scripts included in every Shoes.
You might be familiar with Packaging a Shoes script or directory (.shy). You had two choices Should Shoes be included or should Shoes download itself on the users system. I call those repack (include) and dnlif (download if needed). It a way to Install Shoes on the users system and then run your script (or .shy) You could do it from any platform for any platform (a 5x5x2 matrix)
You might notice that is kind of what virus do, only they don’t ask for permission. Windows 10 does not like the repack style and they probably only tolerate dnlif because no one has flagged it (and because the Mozilla/Firefox installer does the same thing). There are voodoo dead chicken dances that users could go through and it might work.
From a slightly different direction, some folks would prefer Shoes would not be shown to their end user (and side installed for all to see). They’d like to to have some control over the Windows installer (images, shortcuts and so on). That was only possible if you built Shoes from source which was never easy for Windows or OSX and full of hidden gotcha’s since Ruby 1.9.3. The old HacketyHack program( aka HH) did a style of packaging where it copied/replaced/modified Shoes source and build a new program but that packaging style disappeared in Shoes 3.2. It had it’s own rakefiles the used arcane entry points in the Shoes rakefiles. It had it’s own NSIS installer script for Windows.
Do you see two vecters pointing into one solution? I did and I call it merge packaging. If you have Shoes installed on your Windows machine and all them gems you want the end user to have then that could be merged with your scripts and your nsis installer scripts. Voolah! . Which only works if use Shoes/Windows 3.3.1 (the beta) or better. It’s not really a part of Shoes because it’s platform specific. It only runs on Windows and only builds for Windows. And it’s not GUI – you’ll have to use the Windows command line. But, It works!! It solves the Win-10 problem and you can exert as much control of the install experience as you’re will to do.
There’s no GUI although you could write one buts its kind of low benefit/high cost to you or me since you’ll be modifying the installer to do what you want. As an example, the exe-shoes project has a copy of my YTM sample code which requires the ‘rubyserial’ native gem installed on the packaging system. Just to demonstrate.
One could imagine an OSX version (mostly creating the dpg/dmg and the plists) and Linux versions (.deb, .rpm …. the fpm gem can do that). Like Windows, those would only be a template for you to start with because if you want to hide Shoes you need to do it your way, not mine. Your name, your webserver, your installer, your credentials at the app stores(s) or linux repo’s. Shoes can’t provide that for you script. That’s on you. I’m happy to work with anyone trying to do those things or fill in the missing pieces (OSX & Linux) but it not really Shoes infrastructure so it not going to happen unless there willing contributers.
What is the difference? For Shoes, not much. It’s pretty arbitrary. In the case of 3.3.1 there are a few bugs/features that we want to fix before we say done. But there’s some features we think you want to look at so, 3.3.1 is available for beta download.
- Video Widgets. You must have a recent VLC downloaded and installed in it default location, versions 2.1.x or 2.2.x. If Shoes finds it, it enables you to use the new code. Please try the sample/expert-video-play.rb for a great example of what it can do. Since its Shoes/Ruby code you’ll want to study it before you write your own.
- Secondary Packaging – This is too odd to describe here so read the wiki
articles This one and this too.
- For Windows, a better way of dealing with Fonts. This needs some more testing so you can help. Aside from a faster install it will be easier/faster to test packaged scripts on the same box. This is a precursor to a way to package apps and pretend to hides Shoes from the user. As always, uninstall older Shoes first before installing 3.3.1
- Ruby 2.2.4 – Beware this may require you to update binary gems that you installed into Shoes.
The Changelog is always the last thing to get updated. Or is it the manual? One of them is the last.
There is one gotcha with betas. If you package a Shoes app or script with the beta, it’s going use the older 3.3.0 unless you know how to change it (you can but then have to remember to undo that when you get the real Release.
I got busy chasing Shiny Things like new bug reports and then went even deeper into some long standing ‘if only you knew’ arcane things and I forgot I’m supposed to release 3.3.1. In my defense, I am becoming more Windows knowledgeable and some of those arcane bugs are really hard. None of which would actually matter to getting Shoes 3.3.1 out of the door, usable for most people.
That’s a personal failing. I was trying to make it perfect and get some other bugs fixed. That and the new features like Video and secondary packaging are not so easy to understand, document or debug. But it is documented in the manual (thanks to passenger94) and at the wiki and I’m always going to get lost chasing shiny things.
It’s released. For better or worse. I think better. Look at the changelog
Walkabout – Shoes 3.3
The name reflects back to when Shoes creator why_the_lucky_stiff disappeared
from the internet. He went walkabout! We changed some icons and backgrounds
to reflect that whimsical theme.
Walkabout (3.3) will be less compatible with the unmaintained 3.1 and not really released yet 4.0 (jRuby), We have interesting ideas of we what we do with Shoes that maybe very difficult to implement in Shoes 4.
New with 3.3.0
- Uses Gtk3 (not gtk2) for Linux and Windows. This will change visuals on both platorms.
- add font and wrap styles for list_box. A popular request – we are limited to what Gtk3 can do, however. The default behaviour for long strings in the list box is now to
ellipize … in the middle. THIS could effect your current apps.
Issue 109 https://github.com/Shoes3/shoes3/issues/109
- A new Svg widget to display svg images – similar to Image but
NOT really the same. Has aspect scaling options based on the svg internals. See samples/good-svgview.rb. samples/good-flip.rb and the manual. We also include a svg deck of playing cards. It’s a bit fragile so please file bug reports and ask for feature requests.
- Very verbose Issue 54 – https://github.com/Shoes3/shoes3/issues/54
- Pay attention to the OSX workaround #178 https://github.com/Shoes3/shoes3/is
- Preliminary save and export methods:
Issue #177 https://github.com/Shoes3/shoes3/issues/177
- add a refresh slot method
Issue 152 https://github.com/Shoes3/shoes3/issues/152
- Uses ruby 2.1.7 or 2.1.8 and rubygems 2.4.7+
Issue 164 https://github.com/Shoes3/shoes3/issues/164
- New splash screen (no animation).
- Added samples/good-image-rotate.rb because it’s fun to watch.
Issue 157 – https://github.com/Shoes3/shoes3/issues/157
Fixed with 3.3.0
- OSX – do not use home brew to manage dependecies.
- Remove pango-querymodules from OSX. Yay!
Issue 156 – https://github.com/Shoes3/shoes3/issues/156
- Uninstall Shoes menu item for Linux (for some window managers)
Issue 31 – https://github.com/Shoes3/shoes3/issues/31
- repaint after slot remove
Issue 151 – https://github.com/Shoes3/shoes3/issues/151
- Windows: 256×256 icons failed when packaging.
Issue 10 – https://github.com/Shoes3/shoes3/issues/10
- developer name and RVM and linker info gets embedded in
binary libraries. No solution worth the effort.
Issue 66 – https://github.com/Shoes3/shoes3/issues/66
- Windows: fontconfig problems if you build shoes and download shoes
Issue 141 – https://github.com/Shoes3/shoes3/issues/141
Yes, we have been busy beavers. Next up is Shoes 3.3.1. It will be Amazing Too! You’ll get tired of how awesome Shoe 3.3 will be. Shoes will be great Again!
There’s just a few more things to finish before Shoes 3.3.0 (WalkAbout) is finished. In fact its good enough for folks who like to poke at new things and leave some feedback. So, there are beta downloads.
There are numerous big fixes and a couple of new features. One popular request is to do something that can shrink long strings in list_box. OSX does a wonderful job at this but Linux and Windows don’t. In 3.3.0 you can set the font for a list_box and you can create a two line entry if you specify a wrap: option which shows two lines of the string with some control on wrapping. The default without wrap is show the first part an ellipsis … and the last part of the long string. That effects existing Shoes programs visually. If long strings is a problem for you, try the beta and let us know if it’s good enough or unsatisfactory. Of course you’ll have to read the manual for what the options details are.
The other new feature is the ability to load and display Svg files and keep them in vector format. You also get some Svg unique methods for managing aspect and drawing a (sub)group in an Svg file. This is actually a brand new widget for Shoes 3.3.0 which took us a long time do correctly. It only looks like an Image. We also included two good sample programs and a deck of playing cards so after reading the manual, you can read the sample code and get familiar with what could be done. If you study the samples you’ll notice an OSX work around. It’s only a beta! We know that bug exists.
And the artwork has changed and – that’s enough for now.
That’s what happens when you package a script with your custom Windows ico file that has a 256X256x32 bit icon. The icon is bigger than the .shy and I couldn’t be happier because Shoes can do it now.
In order to test that I had to create some large icons and since the walkabout release needed a new icon, I chose to do the hardest thing first: Create a new icon for Shoes. Federales was only a maintenance release – and we did maintain the hell out it and it’s pretty damn good. Anyway, it needed a new icon and there’s now a wiki post about how to do that. I also updated the Windows installer images which is something I’ve wanted to do for years but never got around too.
I’m very likely to change that Walkabout icon again. I’m not all that happy about the icon above. And then I’ll replace the splash screen animation with something less attention grabbing.
It’s available. Nothing really important to most of you.
New with 3.2.25
Fixed with 3.2.25
- documented app.slot().
- really remove shy temp file remnants on Windows
Infrastructure for 3.2.25
What is not mentioned above is this will be the last 3.2.x release. Don’t worry – we are going to create to a Shoes 3.3 because this is as far as I can go with a “maintenance release”. Most of you won’t even notice. And that is is as it should be.
One reason I wanted to analyze the logs was to see if Shoes is being downloaded by real people and how many downloads are from packaging. I did discover an easy way to do some of that. Below is the partial url and the number of time it was used by Shoes for the week of data.
/public/select/pkg.rb cnt 120
/public/shoes/shoes-3.2.24-gtk2-x86_64.install cnt 7
/public/shoes/shoes-3.2.24-osx-10.9.tgz cnt 4
/public/shoes/shoes-3.2.24-gtk2-32.exe cnt 16
/public/shoes/shoes-3.2.24-gtk2-i686.install cnt 2
/public/images/dino.jpg cnt 1
/ cnt 4
Unique IP's 42 Total: 154
There are interesting things. 42 people attempted to do something with the packaging. There were real (to me) 29 packaging attempts in that week and 120 presses on the “Select Architecture” button. 24% decided to package. (29/120). Because of the way Shoes caches downloads, when 3.2.24 was released that week – those 29 had to grab the new version for their cache. Once the new version is loaded in the cache. Further packaging attempts would only be in the 120 number
I’m pleased by these numbers. They are higher than I thought. Shoes is being used! I have no way of knowing how many people actually run Shoes. I might be able to figure out how many new shoes were downloaded by real people that week although that’s a lot harder to figure out and has plenty of uncertainty.
P.S. I have no interest or desire track the ip# back to the origin network or country or try to identify individual users. That said, there are people or bots that are trying to break in. Those I do hunt down and block.