Switching

I’m happy to se Xojo has decided that maintaining bug base software is not the business we are in
However, the issues that many people have complained about are not JUST about the tool

Some have characterized their feelings about Xojo as Expected behavior working is not Xojo’s strength

And thats not the result of what tool is used to track bug reports or api proposals

That is is a lack of process in how they do what they do. A rigorous process for making sure what goes out the door works as specified would reduce surprises when betas go out to users.
But I don’t believe they have such a thing.
Sure they changed from Feedback to Issues to have abetter tool for tracking whats in each release. Great !
All that does it give you better tracking of changes.
It doesnt mean that when you make changes you have done rigorous testing of those changes and QA before it gets to users

Was a unit test created that exposes the bug?
And JUST that bug ?
Then the bug fixed and now the unit test passes ?

And do those unit tests get run on every check in so regressions are found & fixed long before they get to an alpha build, never mind a beta ?

Trust me I realize that UI testing this way is tougher to automate.
But its necessary to automate what you can (hello AppleScript & Accessibility !)
And where you cant make darned sure you try & test everything that could be affected.
And if you say it works on Xojo Cloud make sure that is tested too !
Don’t just assume that because it works on my desktop it will work there too !

Issues might be a great tool but it alone is not likely to be the answer to better quality releases

Numbers after the change

Xojo recently shifted way from Feedback, their home grown bug tracker, to Issues from GitLab. As part of this they’ve added a number of bots that seem to automatically deal with cases.

Comparisons to my old #’s are difficult because Issues tracks multiple tags per case where Feedback basically had a single status

There are some easy comparisons

In Feedback I had 58 Archived cases, several of which I requested be reopened,
In issues there are 99, with several I’ve asked to be reopened.
Archived is a label I’d like to see tossed out as it is, at least in my experience, a label that just plainly says “Thanks for the report we just don’t care to look at this.”

In Feedback I had had 433 Open cases.
As of today in Issues there are 117.
When I look at my closed cases I see a lot that have been updated recently. But I just don’t have the energy to review all the lines closed in the last 2 weeks. I see some marked as duplicates of other cases.

Beyond that its hard to do direct comparisons.

One thing Issues makes possible is that it is possible to quickly search for all kinds of labels

Like, bugs, archived, not marked fixed, by design, implemented, not actionable or not reproducible

Such a query shows, as I write, 4148 of these

Labelled Bug, reproducible and archived a paltry 11

Or reported by other users

Numbers 2022-05

Current count of my cases in Feedback

Archived 58
Closed (already Exists) 12
Closed (by Design) 49
Closed (Duplicate) 55
Closed (Misc) 37
Closed (No Longer Reproducible) 5
Closed (Not Actionable) 9
Closed (Not Reproducible) 48
Fixed 9
Fixed & Verified 133 (broken down as)
       Build 2
       Compiler 1
       Crashes & assertions 5
       Database Plugins 1
       Debugger 1
       Documentation 37
       Examples 2
       Framework – All 16
       Framework – Web 4
       Framework – Windows 2
       Framework – macOS 4
       IDE – Auto Complete 6
       IDE – Build Automation 2
       IDE – Code Editor 5
       IDE – Constant Editor 1
       IDE – Debugger 1
       IDE – Enum Editor 1
       Ide – Errors & Warning Panel 2
       IDE – FileIO 3
       IDE – Inspector 10
       IDE – Language Reference 1
       IDE – Layout Editor 4
       IDE – Library 1
       IDE – Menu Editor 1
       IDE – Miscellaneous 6
       IDE – Navigator 1
       IDE – Refactoring Tools 1
       IDE -Scripting 1
       IDE – UI 3
       IDE – UI – Menus 1
       IDE – UI – Tabs 1
       N/A 6
       XojoScript 1
Implemented 5
Implemented & Verified 16
Open 433
Resolved 2

XojoScript

An interesting question posed on TOF

is there any way to inject code into a control’s events at runtime?
Or, is there a way to create a function or sub procedure and create its methods, parameters, and insert code at runtime?

The consensus is, to alter compiled code – no. Which I agree with.

The suggestion was to investigate Xojoscript – which I also agree with.

And with careful planning and configuration you CAN make controls that can actually have their “event handlers” altered at runtime.

Here’s a very rudimentary sample that might spark some imagination & use

SVG for Xojo

There are a few Xojo coded SVG handlers

Most do a minimal level of SVG abut dont handle lots of extra fancy bits. Like proper clip path handling, defs with later uses sections, rotation, scaling, gradient fills and several others.

I’ve been lucky enough to get my hands on a VERY VERY VERY early test version of an SVG plugin.

I posted a movie of it in action on INN

Your most infuriating bug report ?

Mine is easy to list. A serious noticeable regression in the debugger.

http://feedback.xojo.com/case/59520
The debugger simply doesnt work as expected and the more I work the more infuriated I get that this bug has existed for over 2 years now

Voting for it hasnt gotten it fixed. And there are other similar bugs that seem related (like step not behaving a expected (http://feedback.xojo.com/case/68263)

Whats YOUR most important bug report for Xojo to fix ?
Bug – not feature request

Numbers 2022

Since the last numbers post Xojo has moved a lot of cases to an”archived” status which I believe is a lot like “we’re not spending time on this unless you say its still relevant”. As well they removed several “open” statuses like Reviewed.

Direct comparisons to my last numbers post are more difficult with these changes. As well its hard to get a list of which Archived cases I have asked to be reopened as they are still happening and that I still experience.

archived 61
closed (already exists) 10
closed (by design) 49
closed (duplicate) 54
closed (misc) 36
closed (no longer reproducible) 5
closed (not actionable) 7
closed (not reproducible) 48
fixed 18
fixed & verified 118
implemented 3
implemented & verified 16
open 425
resolved 2

In total theres been a little movement in the intervening 5 months but not a lot

Automating adding comments

In Xojo I often need to add in a comment about when I modified something or what I was working on
And the comment needs to be in a particular format – and it needs the current date & time as part of the comment
And, I want to be able to insert these EASILY into whatever code I’m working on right where the insertion point is

To do this I came up with this IDE Script that I saved in my Scripts dir next to the IDE

Dim stripped As String
stripped = DoShellCommand("echo ""// Updated `/bin/date ""+%Y-%m-%d %H:%M:%S %Z""` -- NJP"" | /usr/bin/tr -C -d ""[:print:]"" | /usr/bin/pbcopy -Prefer txt")

DoCommand("Paste")

this will make use of the DoShellCommand to get the unix shell to write a line with the current date in it, copy that to the clipboard, and then paste it right where the insertion point is

You can modify the unix shell commands used to do just about whatever else you want

Archived cases to be reopened

Posting this list here so its publicly known these exist & should be reopened
I’d post this list on TOF as well if I could

http://feedback.xojo.com/case/55562
http://feedback.xojo.com/case/55777
http://feedback.xojo.com/case/56094
http://feedback.xojo.com/case/56923
http://feedback.xojo.com/case/55319
http://feedback.xojo.com/case/57381
http://feedback.xojo.com/case/57380
http://feedback.xojo.com/case/56113
http://feedback.xojo.com/case/57125
http://feedback.xojo.com/case/56765
http://feedback.xojo.com/case/56233
http://feedback.xojo.com/case/57500

if you have your own list add to the thread on INN