Lion Macro Bug

M.Oostrik's picture

Anyone had this problem already? Where the Macro patches have a multiple personality issue... (see top of the picture)

I tried rebuilding some macro's but problem returns.

PreviewAttachmentSize
Screen Shot 2011-07-24 at 6.42.46 PM.png
Screen Shot 2011-07-24 at 6.42.46 PM.png145.16 KB

M.Oostrik's picture
Re: Lion Macro Bug

It seems every new macro patch i create, get's 1 extra layer.

first is fine

second get's 1 to much

third 2

and so on

p.s. i have no plugins running

cybero's picture
Re: Lion Macro Bug

This reminds me why I am currently quite happy [temporarily] to not be in Lion QC right now. I can no longer get QC to load without shortly crashing before even a composition has been loaded to render. It's a known problem what you are reporting here.

Mind you I could reproduce the problem before QC became instantaneously buggy for me.

Bug it :-) .

It's what I am choosing to do. As well as not using Lion [much at present].

M.Oostrik's picture
Re: Lion Macro Bug

I'ts the same old QC story.

In my experience all the new QC versions were sort of unstable in the beginning. I made it my rule never to use a new version before version .2 of the operating system (OSX 5.2, 6.2, etc). Except of course for the purpose of checking it out.

So it's back to my 10.6 system disk. The CL Augmented Reality comp is faster (for now) anyways (on 10.6).

Always nice to do some experimentation on a rainy sunday afternoon :)

dust's picture
Re: Lion Macro Bug

got some bad news for your @ties. i can confirm this bug on my system. you might have to wait till 10.7.3. I'm running 10.7.2 and am getting the same odd behavior. see pic for !!

PreviewAttachmentSize
10.7.2.png
10.7.2.png42.54 KB
bug.png
bug.png674.15 KB

cybero's picture
Re: Lion Macro Bug

I guess 10.7.2 is the iOS Developer version, as I cannot find any such update on the Mac Dev area, nor through Software Update.

gtoledo3's picture
Re: Lion Macro Bug

cybero wrote:
I guess 10.7.2 is the iOS Developer version, as I cannot find any such update on the Mac Dev area, nor through Software Update.

iOS devs get access to Mac OS updates first, before Mac devs? Wow. I really hope this is some kind of bad dream...

gtoledo3's picture
Re: Lion Macro Bug

gtoledo3 wrote:
cybero wrote:
I guess 10.7.2 is the iOS Developer version, as I cannot find any such update on the Mac Dev area, nor through Software Update.

iOS devs get access to Mac OS updates first, before Mac devs? Wow. I really hope this is some kind of bad dream...

Ok, I can def reconfirm that no possible update route presents 10.7.2 save for possibly the iOS program. So, I guess this has been made available to iOS devs and NOT paid Mac devs?

BTW, to be OT, I've seen this hierarchy display problem as well on one install attempt. Later, I did an install onto a blank partition (as opposed to an upgrade install), and this hasn't shown itself since. However, I've seen report of it from people who have done a clean install as well.

EDIT: Go to the iCloud download page. Really. Yep.

psonice's picture
Re: Lion Macro Bug

A small hint from the ye olde clue shoppe: what about 10.7.1? There seems to be two updates coming:

10.7.1 will be the bug fix release you're looking for.

10.7.2 seems to be all about iCloud. It enables iCloud support in OS X, but doesn't cover the bug fixes.

So you'll be wanting 10.7.1, while we iOS devs will want 10.7.2 to test iCloud integration.

I installed 10.7 myself today on my work box. My main work QC project failed to open, due to bad plugins. That now works after clearing out old plugins, but my nice shiny new ray tracer had a bunch of errors and outputs a black screen :(

gtoledo3's picture
Re: Lion Macro Bug

psonice wrote:
A small hint from the ye olde clue shoppe: what about 10.7.1? There seems to be two updates coming:

10.7.1 will be the bug fix release you're looking for.

10.7.2 seems to be all about iCloud. It enables iCloud support in OS X, but doesn't cover the bug fixes.

So you'll be wanting 10.7.1, while we iOS devs will want 10.7.2 to test iCloud integration.

I installed 10.7 myself today on my work box. My main work QC project failed to open, due to bad plugins. That now works after clearing out old plugins, but my nice shiny new ray tracer had a bunch of errors and outputs a black screen :(

I'm going to take a wild guess that they didn't make a fix in 10.7.1 and regress for 10.7.2 (though this kind of thing has happened), so it's probably ok to dl 10.7.2. FWIW, attached is the inside of a 3D transform with 10.7.2. No hierarchy weirdness.

10.7.2 is available to Mac devs (10.7.1 m.i.a), it's just they just planted it on the iCloud page. I wouldn't be 100% surprised if they skipped a point release, but I wouldn't be surprised if what you say holds true either. I think the act of putting it on the iCloud page was a weird layout/formatting decision that goes along with the paid vs. free download divvying that they do.

(It kinda makes sense that Mac Devs would want to test iCloud as much as iOS devs).

Try reinstalling your plugins, but letting them get manually validated (e.g., get the password prompts), and see if they start working ok, if you did some kind of update install. I have found the update install path as opposed to clean install, to be very problematic with Lion.

PreviewAttachmentSize
macro.jpg
macro.jpg95.45 KB

psonice's picture
Re: Lion Macro Bug

There's only one plugin I need nowadays (a modified image writer) so I can just delete them. It's the ray tracer I'm more worried about, there seems to be a lot of new GLSL errors causing it to break, and that breaks a bunch of connections breaking the comp :(

Just updating xcode to see if that helps.

cybero's picture
Re: Lion Macro Bug

Thanks for the tips.

Happy to report QC is back and working, presently after a 10.7.2 update which didn't even touch xCode so far as I can tell.

Maybe it just pushed a load of cache related kludge I'd somehow missed out of the way. iTunes 10.4 is also showing QC stuff again. SDK visualizers requiring an update to 64 bit builds was to be expected I guess , but the previously experienced loss of QC visualizers and the Composition Repository was baffling, seeing as how QC is 64 bit by design nowadays.

I am finding the entire framework supporting QC stuff to presently be far less forgiving of any clumsy design , especially for port values published up as preferences. Still, nil desperandum :-), just crashed out on QC [how new].

gtoledo3's picture
Re: Lion Macro Bug

There's some kind of issue with QC not always reflecting the correct key (actual names)/port values (actual numbers) as well. I haven't really had time to dive into it, but have some pretty crazy pics to prove it!

I don't think it's so much that it's not forgiving of clumsy design. Maybe it's some kind of weird convolution of a bunch of frameworks, and maybe some driver issues, and a couple of new bugs, weirding stuff out.

When you pull compositions like chipmunk or alien from the patch list, do they have really weird default values and/or not work? Do any supplied compositions appear to not take changes of port values until unpublishing and republishing? Do any appear to have broken noodles, but restore without prompt? (all issues I've had, though seem to not have now upon an install on a totally blank partition, save for the weird default value issue).

gtoledo3's picture
Re: Lion Macro Bug

psonice wrote:
There's only one plugin I need nowadays (a modified image writer) so I can just delete them. It's the ray tracer I'm more worried about, there seems to be a lot of new GLSL errors causing it to break, and that breaks a bunch of connections breaking the comp :(

Just updating xcode to see if that helps.

Woah. Do you actually get noodle restore errors, or nothing? Connections are actually breaking out of the GLSL environment patch, going to other stock patches? Are ports actually not restoring?

This is very disturbing that this is happening with the GLSL environment. Please report back with more specifics as possible, as I would like to know what to look at for asap.

cybero's picture
Re: Lion Macro Bug

Chipmunk & the other Face 'cuties' do as you describe - as also do the Mesh Filters upon being placed onto the stage.

Not had the unpublished / republished syndrome.

Supposedly broken noodles - a few times, not recently.

Stupidly recursive nesting list within macros at the editor header , as per m.oostrik's thread - [shed]loads of times :-)

psonice's picture
Re: Lion Macro Bug

Yeah, noodle restore errors. And my ray tracer now fails to render anything ;( I've not entirely figured it out yet, but I've already found one GLSL compiler change that's broken my shader.

Previously I had a float variable called 'ao' (to store ambient occlusion amount), and also a function called 'ao()' that determines the AO level. That worked fine before, but now fails to compile because I've redeclared AO. Watch out for that one! (It's bad practice anyway, I guess :)

gtoledo3's picture
Re: Lion Macro Bug

psonice wrote:
Yeah, noodle restore errors. And my ray tracer now fails to render anything ;( I've not entirely figured it out yet, but I've already found one GLSL compiler change that's broken my shader.

Previously I had a float variable called 'ao' (to store ambient occlusion amount), and also a function called 'ao()' that determines the AO level. That worked fine before, but now fails to compile because I've redeclared AO. Watch out for that one! (It's bad practice anyway, I guess :)

Wow, that sure sucks. (... it may be bad practice, but is it actually illegal?)

At least we can look at the documentation and read me's to discern what has changed...

NOT.

psonice's picture
Re: Lion Macro Bug

So far as I know, it's perfectly legal to have a function + a variable have the same name. When you use them, it's clear if it's a variable (like ao = 0.; ) or a function ( ao(position, normal); ). You can even have functions with the same name, so long as the parameters are different (which makes them distinguishable).

If you think about it, you're probably using that all the time:

float x = max(float a, float b); vec3 x = max(vec3 a, vec3 b);

That's 2 separate function, but in practice you just want to ask for the max value and not care to specify the float or vec3 versions.

Anyway, today's lion news:

  1. My ray tracer is back up and running. Apart from that variable/function name conflict, there were no other problems - although that one error messed up all the connections so it took a while to fix!

  2. Great new feature discovered! QC can now run with the screen turned off :D I guess most people won't need it, but I have a comp doing time-lapse photography 24-7 on this box.

On 10.6 I'd sleep the display (not the computer!) and the screen would turn off, but then it would turn back on after a few seconds and show the login box. Waste of energy and likely to damage the screen long term :(

On 10.7 the screen stays off, the comp stays running. Win.

gtoledo3's picture
Re: Lion Macro Bug

psonice wrote:
So far as I know, it's perfectly legal to have a function + a variable have the same name.

As far as I know as well; in GLSL I'm pretty darn sure this should be legal, and is used all the time. I personally do it all the time in GLSL.

What's kinda funny is that it's not legal in OpenCL. Originally, the compiler used to allow that stuff when SL first launched, but then it stopped working sometime around 10.6.3, and broke a bunch of Apple's stuff.

It really doesn't seem like the two things should be related, but it does bring that to mind.

cybero's picture
Re: Lion Macro Bug

This regressive Macro Patch naming problem has pretty much disappeared since 10.7.2 of June 2011 and most definitely has disappeared as of 10.7.3.

I doubt that anyone with a new machine and installation of QC should be falling foul of the previously reported problems with Macro name's regressing forever.

However , should someone, somehow have a Lion installation and a new QC [Developers Tools] install and get such a problem, my first advice is to update to the latest version of Lion currently available.

That shall make your OS 10.7.3 [or later - depending upon the time of such a putative problem occurring] and should cure that problem.