Panorama X 10.2.0 b40 Build 4502 EXPERIMENTAL FOR SEQUOIA

I’ve posted an experimental build of Panorama X that, at least in initial limited testing, seems to resolve all of the reported problems with macOS 15 Sequoia. You have to manually download this experimental build using this URL:


https://www.provue.com/downloads/sparkle/PanoramaX/4502/PanoramaX.zip

In addition to my limited testing, a handful of Panorama X users have been using this for a few hours today. So far, all reports are :+1:. That said, I am definitely planning a follow up release in the very near future. And I would still recommend that if you haven’t already upgraded your computer to Sequoia, you probably still want to wait.

In addition to the Sequoia fix (all of the reported problems were caused by ONE new bug in a low level Apple API, see the detailed notes at the bottom of this post if you are interested), this new release also includes just over a dozen other improvements:

  • Panorama no longer allows the user to click to change window order while a procedure is running.
  • When opening a shared database Panorama prevents window switching or running other procedures until synchronization is finished.
  • Implemented the webshare statement (brought over from Panorama 6.0).
  • New nanzero( and nanerror( functions provide additional flexibility in dealing with invalid floating point values.
  • The View and Action menus now work correctly with form and procedure names that contain the } character.
  • Double chevron notation now works in the formulavalue function and statement, and formulacalc. (This means that it now works correctly in the Formula Workshop, and dialogs like Morph > Formula Fill.)
  • The BinaryDataBuild( function now works correctly with double chevron notation.
  • Fixed pattern( function for scientific/engineering notation with small numbers and negative numbers.
  • Creating a new database with an imported text file with field names now strips off any blank lines from the beginning and end of imported data.
  • The PrintToPDF statement COPIES option now works correctly if default printer specified.
  • Updated Zip Code information with July 2024 data from US post office.
  • Oops. Misspelled “dictionary” in seven error messages!! Now fixed.
  • Documentation of info(“guid”) function now mentions UUID as well as GUID.
  • Documentation corrections from David Thompson, Peter Newble, James Cook, Robert Ameeti, David Scott

For those that are interested, here is some background on what caused the problems with Sequoia. All of the problems resulted from a single new edge case bug in a low level macOS API. This is an API that goes all the way back to the 1990s, probably all the way back to NeXT OS. Apple has announced that for there own internal reasons, they are rewriting some of these old APIs in Swift. So my guess is that this old API was rewritten, and when writing the new code the programmer made a mistake in handling a particular unusual edge case. Unfortunately this unusual edge case was used by Panorama in dozens of places in the code (possibly hundreds). (Note that the API didn’t just change, the new behavior is definitely wrong - i.e. a bug. But only for an unusual edge case that possibly no one else ever uses.)

Once I understood the new bug, I was able to recode Panorama to avoid this edge case. This recode seems to work properly, but I’m going to do further research to make sure that a) I didn’t miss any spots where the edge case is a problem, and b) the new recode technique doesn’t cause any subtle new problems (I obviously don’t think so, but I want to take some time to make sure). So that’s why I’m planning a further minor release in the near future.

I don’t know if Apple has finished this rewrite of some old APIs, or if this is an ongoing project. If the latter (likely), then further problems of this sort may crop up in the future. Something for us all to look forward to, especially myself. In the near future I’ll speak to some Apple engineers I know to see if I can get any insight into this.

Preferences and Licence details are back again. Thank you!

I am getting an error when I am searching with cmd-F in a form window (while the data sheet is open in the background):

Interesting. I cannot duplicate that.

Some other issues:
Morphing with a lookup formula (to a second opened database) seems to have a 250 records limit.
Setting up relations between two databases does not see the second (open) database.

I think this was caused by user error: I tried to lookup a number field into a text field. Using both number fields all the records get morphed.

I went back to b39, because b40 broke some of my daily procedures. Then I noticed the relation setup issue applies for b39 (under Sequoia) in the same way.

The daily procedure in my test was a simple CSV import of banking data, doing some calculations and going to the last (most recent) record. Import seemed to work, but the calculated fields remained empty, and the current record remained the first record.

Since you are running Sequoia, going back to b39 isn’t really an option. You’ll find that after a few days Panorama will start telling you that you don’t have an internet connection. It will keep doing this every few mionutes.

You may need to recompile your procedures. You can open the View menu and use the Database > Recompile All Procedures menu item. You should do this for each database where there is a problem.

Jim, I was seeing this Sequoia bug with Safari and with other Apple applications like App Store, System Settings (Warning: Some Services need to be updated with your Apple account), Feedback Assistant …

For the moment, I have found a workaround: I keep Safari and the Screen Sharing app open in the background. As long they are open, I can work all day long. — As soon as I close Safari, it loses its Internet connection :face_vomiting: and I have to restart my Mac.

Thanks for this advice. I’ll try it today.

I believe Panorama being unable to contact provue.com is caused by the same Apple bug that caused all of the other problems in Panorama. I don’t think that it has anything to do with Safari or anything else, and I think that you would eventually find that your workaround may help with other applications but it won’t solve Panorama’s problem. You probably just haven’t accumulated enough usage for Panorama to start displaying that message. Once that happens, I don’t think your workaround will help.

I could be wrong - if you want to keep running b39 and prove me wrong, you’re free to try. However, knowing what I now know about Apple’s bug and how it can affect text calculations when running b39, I would not trust b39 (or any earlier version) to run any formula that does text manipulation on a computer running Sequoia. Any formula that uses tagdata(, after(, before(, and probably a number of others will not calculate the correct value. This is all cleaned up in b40, so I highly recommend you stick with that.

@admin Just installed B40 and I am back in operation again with Find/Select working. Thanks for the quick fix. :slightly_smiling_face:

That did nothing visible — except there were some old Pan 6 code remnants (like gocrosstab). I deleted those old procedures.

But the problem had a different cause: The code was running too fast. So it sometimes took a value from the top record when it should first have gone to the last record and pick a value there. Some wait 1 statements helped.

My workaround was not a durable solution, but now I have a better one: I have — temporarily — deactivated my macOS Firewall. I am still hoping that Apple will fix this annoying Sequoia bug with the next bugfix update.

The firewall problem is separate from the other Panorama problems, which could cause Panorama to fail to connect even if you didn’t have a firewall enabled. I’m sure Apple will fix this problem, it seems to be affecting many users that are using a wide variety of apps.

Ever since I updated to Sequoia 15.0 I have not been able to open any of my panorama files. I receive an error: The document “Bifold Ticket.pandb” could not be opened. The database is damaged (data.plist). I did the update and am running version 10.2.0.b40. Luckily if I right click on the file I have the option to open with Panorama (10.1.2) and then my file opens and I am able to continue working.

What you see has nothing to do with Sequoia, but with your transition from Pan X 10.1 to 10.2. Read Panorama’s documentation about database integrity:

The solution is to open your database with the Integrity Checks deactivated and to save your database in Panorama X 10.2. Then you can reactivate the database integrity checks.

There is actually another help page that more specifically addresses this particular issue.