Version 9: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
Created page with "== Major New Features == # PhoneGap: Auto Generate images, streamlined operation # Electron: Streamlined operation - much easier to use! # Hot Reload: Restarting in browser doesn't create new tab # Python 3: AppStudio used to be in Python 2. Now we're up to date. # wxPython 4: The UI AppStudio uses is now also up to to date. # Windows 64 is now required. (MacOS already required 64 bit) == Upgrading == If you have AppStudio 7 or older and don't have a subscription, you..."
 
 
(99 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Major New Features ==
== Major New Features ==
# PhoneGap: Auto Generate images, streamlined operation
# [[AI Coding Assistant]] to help you with your code
# Electron: Streamlined operation - much easier to use!
# [[Bootstrap 5]] support added
# Hot Reload: Restarting in browser doesn't create new tab
# [[Using_SQLite_with_Chrome_119|SQL WASM]] support added
# Python 3: AppStudio used to be in Python 2. Now we're up to date.
# VoltBuilder integration improved.
# wxPython 4: The UI AppStudio uses is now also up to to date.
# [http://wiki.appstudio.dev Online Wiki] - server reconfigured for faster response
# Windows 64 is now required. (MacOS already required 64 bit)


== Upgrading ==
== Upgrading ==


If you have AppStudio 7 or older and don't have a subscription, you will need to get the upgrade to use these new features. You can [https://www.nsbasic.com/i/Subscription/ order it here].
If you have AppStudio 8 or older and don't have a subscription, you will need to get the upgrade to use these new features. You can [https://www.nsbasic.com/i/Subscription/ order it here].


If you like would to try it first, download from the 'Check for Updates' screen in the Help menu. You'll get a demo copy.
If you like would to try it first, download from the 'Check for Updates' screen in the Help menu. You'll get a demo copy.


== Version 8.5.8.0 ==
== Version 9.1.1 ==
# Bootstrap 4: Fix padding on Label
# Controls: New [[Spinner_(Bootstrap)|BS5 Spinner]] control
# Bootstrap 4: Modals - fix bug with 2 modals
# Documentation: off line Wiki updated
# Design Screen: Improve selecting controls on newer versions of MacOS.
# Project Explorer: Duplicate filename when adding a file starting with a non-alpha fixed.  
# Design Screen: Improve stability by fixing internal error
# Project Properties: [http://VoltBuilder iOS properties] updated to use same terms as VoltBuilder
# Licensing: Use new ALS licensing system
# Runtime: new [[BuildCounter]] global
# Samples: Fix how video source works
# Samples: new Spinner samples
# Samples: Remove whitelist plugin
# Libraries: various libs updated
# Samples: Update Camera Sample permissions for VoltBuilder
# SQLImport: Fix initialization of SQL on VoltBuilder jobs
# SQLImport: Fix timing issue when importing
# VoltBuilder: Add flag to build for Xcode 13
# VoltBuilder: Add support for Android 12
# VoltBuilder: Add verbose property
# Copyright updated to 2023
# Libraries: Many updates to dependent libraries.


== Version 8.5.7.0 ==
== Version 9.1.0 ==
# Bootstrap: update [[Slider (Bootstrap)|Slider]] to 11.0.2
# AppStudio: Icon in top left corner now appears properly.
# Electron: Fix Slider
# AppStudio: Save As now copies all the files in the project directory.
# [[Obfuscation]]: fix missing parameter and improve docs
# BS4, BS5: added ''disabled'' property to several controls
# Translater: fix bug in [[Fix]]()
# BS4, BS5: added ''name'' property to several controls.
# EULA: Fix agreed [[EULA]] not being recognized
# BS4, BS5: Label: added blank ''appearance'' property for no styling
# Samples: Fix Delete in IndexedDB sample.
# BS5: Dropdown: added ''index'' property.
# Samples: Overhaul IndexedDB sample.
# BS5: Input-group: ''button'' has been added as an itemType: Buttons can be part of a group.
# Installer: fix problem in Windows signing
# Design Screen: Now uses Edge instead of IE to render. Should fix some BS5 issues.
# Installer: Update Windows certificate
# Docs: [[Add AI to your app using ChatGPT]]
# IDE: Change copyright to 2022
# Docs: [[Using SQLite]] updated for SQLite WASM
# Libraries: Many updates to dependent libraries.
# Docs: Wiki for [[ForEach]] updated.
# Docs: Offline wiki updated.
# Libraries: wxPython updated to 4.2.2
# Native: don't initialize SQLite WASM if Cordova plugin is being used.
# Samples: ElectronWeather now shows how to do a custom icon in Electron.
# Samples: New ChatGPT sample
# Update Screen: Links to proper place in Wiki.


== Version 8.5.6.0 ==
== Version 9.0.7 ==
# [[Using_Node_and_Electron_to_build_Desktop_Apps|Electron]]: Fix problems caused by updated libraries
# ChatGPT: Now uses latest model: GPT-4o
# [[EULA]]: Encode newlines properly
# Samples: ElectronWeather (JavaScript) updated.
# [[QRCode]]: Update library to 1.5.0
# Electron: Error reporting improved - check log in About screen to see messages.
# QRCode: add new options argument to setValue
# Electron: Electron updated to 31.2, Electron-builder to 24.13.3
# QRCode: add new options property in Design Screen
# Libraries: PyInstaller updated to 6.9
# Libraries: Update to current versions
# Libraries: Python updated to 3.11
# Windows 11: Now fully supported
# Libraries: wxPython update to 4.2.1
# SQLite: Fix bug in empty tables test (Windows only)
# Bootstrap: Update to 4.6.1
# Libraries: Update to current versions
# VoltBuilder: fix 'Cannot find googlePlayKey' message
# Electron: Fix 'isElectron not defined' by adding contextIsolation: false, enableRemoteModule: true to webPreferences.
# Electron: Update electron-build to 22.13.1
# Node: Update to 16.13.1
# IDE: Fix drag and crash when moving Help panel.
# IDE: Fix link to VoltSigner on Run menu.
# Navs: Navs.value returns the correct value.
# Code Window: Lint button fixed.
# Update copyright to 2022.
# Eslint: Update to use latest version and API
# MacOS Installer: simplify notarization.


== Version 8.5.5.0 ==
If you are using Electron, make sure the following versions are set in package.json property (Project Properties, in the Electron section):
# [[Properties_Window#Project_Properties|Project Properties]]: New androidPackageType to build .aab files
<pre>
# BS4: Fix problem with icons and i18n.
  "electron": "^31.2.0",
# Installer: PyInstaller updated to 4.5
  "electron-builder": "^24.13.3",
# Libraries: lots of updates!
  "npm": "^10.8.2"
# Runtime: Don't output anything if no fontfamily on body.
</pre>
# Runtime: Javascript ValueOf was calling a BASIC function.
# Runtime: remove redundant line in asStyle.css
# Runtime: remove some unneeded debugging
# Samples: update Barcode sample.(Thanks, LotsOfCows!)
# [[Sqlimport|SQLImport]]: fix NSB.overwriteNever when using SQLite plugin.
# SQLite: fix error in error trapping function.


== Version 8.5.4.0 ==
== Version 9.0.6 ==
# BS5: New [[Range (Bootstrap)|Range]] control. Replaces [[Slider (Bootstrap)|BS5 Slider]]
# BS5: [[Slider (Bootstrap)|Slider]] control deprecated. Replaced by a placeholder.
# Samples: Northwind updated to use SQLite WASM
# SQLite WASM: [[SqlImport|SQLImport]] and [[SqlExport|SQLExport]] are now fully supported.
# [[SqlExport|SQLExport]]: Output is now sorted properly


# [[Input (Bootstrap)|BS4 Input]]: Add new Datetime-local input type.
== Version 9.0.5 ==
# [[Code Window]]: fix 'async function' in function list
# [[AI_Coding_Assistant|ChatGPT]]: Now uses gpt-3.5-turbo-0125. Can handle more data in and out.
# Code Window: fix error in building function list
# Samples: SQLSample1 has a new Lookup feature.
# [[Cordova]]: Improve some descriptions.
# Samples: SQLSample1 now saves to localStorage and clears database properly.
# [[Using Node and Electron to build Desktop Apps|Electron]]: Start app issue on Mac OS fixed.
# Splashscreens: Support for Android 12 splashscreens added.
# [[Deploy Bar|Local Deploy]]: Skip the confirm message.
# Splashscreens: New [[VoltBuilder|splash background]] property.
# MacOS: Notarization now works - New installs should be much more smooth.
# SQLite: Additional required files are now deployed.
# Node: Updated to 14.16.1
# SQLite: Data saved to localStorage by default
# [[Preferences|Preferences - VoltServer]]: Default email to registered email.
# SQLite: Error reporting improved.
# Preferences - VoltServer: Disable unusable buttons.
# SQLite: Headers for OPFS support added.
# Preferences: Create new VoltServer account goes to correct page
# SQLite: New [[SQLDump]]() command for the console.
# Preferences: Put VoltBuilder and VoltServer tabs in order.
# SQLite: Main() is not called until SQLite WASM finished loading
# Runtime: Import large SQLite databases fixed on iOS web apps.
# SQLite: Warning appears if no SQLite library is installed when trying to open.
# Samples: Fix TwoForms sample
# SQLite: SQLite WASM no longer needs to be selected if using Cordova plugins
# [[Volt for appstudio|VoltServer]] - clear voltID and voltDomain when loading samples.
# SQLite WASM: Updated to 3.46
# VoltServer - Dashboard: Update to Bootstrap 4.
# VoltServer: Default email to registered email if not set up in Prefs.
# VoltServer: Erase account information when license is deactivated.
# VoltServer: Give a better message if account not set up properly.
# VoltServer: Pass email address to Forgot Password dialog.
# Windows: Window 10 is now required. (Windows 7 is EOL by Microsoft)


== Version 8.5.3.0 ==
== Version 9.0.4 ==
# BS5: new [[Carousel (Bootstrap)|Carousel]] control
# BS5: [[Input (Bootstrap 5)|Input]].files now works properly
# BS5: [https://getbootstrap.com/docs/5.3/getting-started/introduction/ Bootstrap 5] updated to 5.3.3
# Code Window: Selecting a item in the Functions panel now goes to that function.
# Docs: The offline wiki has been updated with the latest changes.
# SQLite: [[SqlOpenDatabase]] can now save to localStorage
# Libraries: [[Using SQLite with Chrome 119|SQLite WASM]] updated to 3.45.3
# Libraries: Shake library removed (no longer maintained by author)
# Samples: new [https://gemini.google.com/?hl=en Google Gemini AI] sample
# Samples: new [[Carousel (Bootstrap)|Carousel]] sample


# IDE: Python updated to 3.9
== Version 9.0.3 ==
# IDE: Translation files updated.
# BS4, BS5: Checkbox: inline property no longer adds a BR
# IDE: Add a ctrl+p shortcut to open older projects.
# BS5: Textarea now supports .text and .value
# IDE: Change "Volt Server" to "VoltServer"
# Build: Action scripts updated.
# Design Screen: fix jqWidgets controls not appearing, caused by IE11 ECMAScript incompatibilities. (Windows)
# Build: Upgraded signing certificates for Windows
# Design Screen: Drag handles disappeared sometimes (MacOS only)
# ChatGPT: Context size increase 4x. Larger code modules can be handled.
# Installer: Sign some additional libraries (MacOS), update for Python 9
# ChatGPT: error messages improved.
# Runtime: Body should inherit color and background-color (Dark mode)
# ChatGPT: Version updated to gpt-3.5-turbo-1106
# Translation: Clean up some text strings for better translation.
# Electron: package-lockfile now added by default
# Node: Update to 14.16.0.
# Libraries: multiple updated
# Samples: Unneeded voltbuilder folders deleted.
# [[Snackbar (Bootstrap 4, 5)|Snackbar]]: Duration is now user controllable.
# Stripe: User's name now used instead of defaulting to 'Stripe'.
# Toolbox: SQL WASM description improved.
# VoltBuilder: do not include SQL WASM module when using - use Cordova plugin.
# VoltBuilder: Log file name now includes date and time of build.
# Voltbuilder: Missing download folder now handled properly.
# VoltBuilder: update trial messages


'''Breaking change''': Windows 7 is no longer supported. Microsoft dropped support for Windows 7 a while ago. Now, the libraries we use to build AppStudio are dropping support for Windows 7.
== Version 9.0.2 ==
# BS5: Input-item: enable style property
# Design Screen: Formatting problems fixed with BS4 Scroller and others. (Windows)
# SQLite: To use SQLite in your app, select '''SQLite (WASM)''' in [[Toolbox|Libraries]].
# SQLite: SQLite.js and SQLite.wasm are no longer included for VoltBuilder. Use plugins instead.


== Version 8.5.2.0 ==
== Version 9.0.1 ==
# SQLite: Does not execute [[SqlImport]] until initialization is complete.
# Demo: Users of older versions of AppStudio can now try AppStudio 9 for 10 days.
# SQLite: If a Cordova SQLite plugin is specified in config.xml, it will override the native WebSQL. (possible breaking change!)
# Controls: BS5 Input uses size instead of font attributes for sizing.
# VoltServer: Deploy without an account disabled in demo.
# Controls: BS5 TextArea now shows headers and footers.
# VoltServer: Volt and Volt server are now called VoltServer
# Copyright: Updated to 2024
# Demo: Period shortened to 10 days due to abuse.
# Electron: Updated to version 28 (samples too)
# IDE: Node updated to version 14.16.
# Installer: proper icon shows in the Windows toolbar
# Runtime: Navigo warning removed by using Version 7.1.2
# Samples: Compass sample now asks for permission from user (iOS)


'''Breaking change''': Native apps now use the SQLite plugin if specified in config.xml. If you used the native WebSQL (built into the browser) and switch to using the SQLite plugin, you'll need to plan to export your SQLite data from the native WebSQL and import it to the new plugin - the data will not carry over automatically. The [[SqlExport|SQLExport]] and [[SqlImport]] functions may help you.
== Version 9.0.0 ==
 
== Version 8.5.1.0 ==
# Browser Arrows: Navigo changed to 7.1.3. Seems to clear up issues.
# Installer: Workaround for bug in underlying strptime module which broke About.
# Sample: Get rid of more PhoneGap references.
# VoltBuilder: fix a problem when using Demo interface (8.5.1.1)
 
== Version 8.5.0.0 ==
# IDE: wxPython updated to 4.1.1. Uses wxWidgets 3.1. Tons of fixes and minor improvements, and it just looks better.
# BS4: [https://blog.getbootstrap.com/ Updated to 4.6]
# BS4: [https://bootswatch.com/ Bootswatch] themes updated to 4.6
# BS4: [[Input (Bootstrap)|Input]] password now has option to toggle plain text on or off.
# BS4: [[Navs (Bootstrap)|Navs]] - fix .clear() and .addItem() functions
# BS4: [[Slider (Bootstrap)|Slider]] - Add .hide() and .show() functions
# Code Window: Improve function list to catch more JavaScript function formats.
# Code Window: Improved function name find.
# IDE: MacOS: control keys for copy and paste work in dialog windows.
# Demo: Do not allow Cordova Build.
# Deploy: Allow wasm files to be deployed.
# Deploy: Some redundant code eliminated - may be quicker
# Design Screen: Change "Add Component" to "Add Control".
# [[Using Node and Electron to build Desktop Apps|Electron]]: Spaces are not allowed in Title
# Electron: Updated to 9.4.0. (electron-builder and npm also updated)
# IDE: Copyright is now 2021
# IDE: MacOS: control keys for copy and paste work in dialog windows.
# Installer: Windows signing certificate renewed.
# Navigo: Updated to 8.4.3. Used by BrowserArrows (see sample)
# [[Properties and Methods|Project Properties]]: Remove androidDname - replaced by [https://volt.build/certificate/ VoltSigner]
# [[Properties and Methods|Project Properties]]: Signing filenames default to [https://volt.build/certificate/ VoltSigner's] values.
# Run Menu: Add "Get Signing Certificate with VoltSigner" .
# Run Menu: Change "Volt" to "Volt Server".
# Samples: Change PhoneGap references to VoltBuilder.
# Samples: Volt Services is now called VoltServer.
# Samples: SQLSample1 updated.
# Samples: Some samples would not open due to a PWA_manifest problem.
# SQLite: [[SqlOpenDatabase]] now takes only 1 argument.
# SQLite: When running as a native app, the Cordova library is used instead of the browser's.
# VoltBuilder: Default key names to be same as [https://volt.build/certificate/ VoltSigner] defaults.
# VoltBuilder: Remove reference to xmlns:gap in default config.xml
# VoltBuilder/Cordova: Main() is now called on [https://cordova.apache.org/docs/en/9.x/cordova/events/events.html#deviceready deviceready event].
# [https://volt.build/certificate/ VoltSigner]: added to Run menu.
 
'''Breaking change''': When running as a native app, the Cordova SQLite library is used instead of the browser's. That means the database data will be saved in the file system and not in the browser's sandbox. Please check where your app is saving the data: you may have to consider a migration strategy if you are affected. Please contact support@appstudio.dev if you need help. The need for this changed comes from Safari changing support for WebSQL. This does NOT affect web apps.
 
== Version 8.4.2.0 ==
# [https://volt.build/certificate/ Certificate Wizard]: Make Android and iOS certificates easily.
# [[Input (Bootstrap)|BootStrap Input]]: minlength added as a property.
# [[Grid|Common Grid]]: addCols() wasn't setting cell ids properly.
# Installer: Updated to the latest pyInstaller
# [[Obfuscation|Obfuscator]]: Updated to the latest version. stringArrayEncoding is now an array.
# Samples: Update button on JavaScript NorthWind sample fixed.
# Windows Installer: Fixed a problem with the certificate
 
== Version 8.4.1.5 ==
# Cordova: Now outputs resources properly.
# Deploy: Improve the deploy confirmation message.
# Deploy: Content Security Policy is now output for all deploys except desktop
# [[NSB.MsgBox|MsgBox]]: new option to put data url in custom button.
# Sample: MsgBox sample fixed - icon was not displaying properly.
# VoltBuilder: Account errors (like expired) are reported properly.
# Wiki: extensive updates, especially moving from PhoneGap to VoltBuilder
# Wiki: offline copy updated.
 
== Version 8.4.1.0 ==
# VoltBuilder: Only generate images for platform being built.
# VoltBuilder: Add properties for [https://volt.build/docs/google_play/ upload to Google Play Store].
# VoltBuilder: Add properties for [https://volt.build/docs/itunes/ upload to iTunes App Store].
# VoltBuilder: Add prompt before submitting build.
# Deploy: Add confirm prompt to FTP/SFTP Deploy.
# Runtime: Defer execution of SQLImport until after load completes.
# Deploy: Content Security Policy is now output for all jobs.
# Project Properties: Content Security Policy moved from VoltBuilder to General.
 
== Version 8.4.0.0 ==
# VoltBuilder now uploads to the Apple Store after building.
# Build using VoltBuilder now hooked into VoltBuilder billing.
# Preferences: VoltBuilder panel now accepts API Credentials.
# Preferences: Links changed to buttons to fix MacOS issue.
# About: New Deregister button removes serial number from copy.
# References to PhoneGap removed.
# BS4, BS3: Text alignment now works properly.
# Bootstrap: Updated to 4.5.3.
# DataTables: Updated to latest version (different modules).
# Libraries: Upgraded to Python 3.8.
# DropDMG: Updated to 3.6
 
== Version 8.3.0.1 ==
# VoltBuilder: token expiry extended to 1 hour.
# VoltBuilder Status: Now updates every 10 seconds.
 
== Version 8.3.0.0 ==
# PhoneGap Build: All references removed. PhoneGap has been discontinued by Adobe.
# VoltBuilder has replaced PhoneGap Build in AppStudio.
# VoltBuilder: work files removed after upload
# VoltBuilder: name of downloaded file uses project name.
# VoltBuilder Status: Now works like PhoneGap Status used to.
# VoltBuilder: Proper token now sent on submit.
# VoltBuilder: Use VoltBuilder API when submitting jobs.
# VoltBuilder: recover gracefully from bad data in config.xml.
# jqWidgets: Set theme properly on jqxPhotoGallery.
# Samples: All PhoneGap samples now reference Cordova and have been renamed.
 
== Version 8.2.2.0 ==
# Bootstrap: Updated to 4.5.2
# Bootstrap: add 'auto' option to Bootstrap position
# VoltBuilder: Timing out too quickly in some cases.
# VoltBuilder: improve error messages and logging
# VoltBuilder: make log downloadable after successful build.
 
== Version 8.2.1.0 ==
# VoltBuilder: pass through email address
# VoltBuilder: Don't open VoltBuilder Status if already open.
# Bootstrap: Updated to 4.5.1
# Bootstrap Themes: Updates to 4.5.1
# DataTables: Updated all libraries to latest version.
 
== Version 8.2.0.0 ==
# VoltBuilder: Improve interface - better information and reporting.
# PhoneGap: Move it down the menu (will be removed soon)
 
== Version 8.1.0.6 ==
# VoltBuilder: Fixed a problem with dates when uploading
 
== Version 8.1.0.5 ==
# VoltBuilder: Update interface - server interface was changed.
# Samples: Improve Adsense sample
# VoltBuilder: Improve message on build exception
 
== Version 8.1.0.4 ==
# VoltBuilder: display download info in a new window.
 
== Version 8.1.0.3 ==
# VoltBuilder: clean up HTML on return
 
== Version 8.1.0.2 ==
# VoltBuilder: Android Alias had wrong edit type.
 
== Version 8.1.0.1 ==
# VoltBuilder: Fixed problem with androidDname
 
== Version 8.1.0 ==
# NEW: [[VoltBuilder]] replacement for PhoneGap Build
# NEW: Automatic creation of Android keystores.
# BS4: Fix Navs.addItem()
# Icons and Splash Screen: generator updated.
# Internal: Updated to jQuery 3.5.1
# Internal: Updated to Node 12.16.3
# Internal: Updated to Python 3.8.2
# jqxValidator: Allow the id to be other than Validator1.
# Resources: Fix config.xml paths due to change in cordova-build
# Samples: Clean up PlaySound sample.
# Samples: VoltBuilder, Cordova and Electron will ask you to save to a working folder.
# Stripe: Don't throw an error if Stripe is offline.
# VoltBuilder: new Certificates folder in all projects.
 
== Version 8.0.6 ==
# [[PhoneGap CLI]] renamed [[Cordova]]
# Cordova: Completely renovated, simpler and easier to use.
# Cordova: Uses wxWebView (required by Apple)
# PhoneGap config.xml: Now uses wkWebView, as required by Apple.
# Project Properties: New Cordova Command property.
# Project Properties: PhoneGap section now named "PhoneGap and Cordova"
# [[Modal_(Bootstrap)|BS4 Modal]]: Add ids to title, header, body and footer.
# [[Label|Common Controls: Label]] - alignVertical with height=auto fixed.
# Controls: Add onfocusin event to list of events for all Input controls.
# Controls: Add oninput event to list of events for all Input controls.
# [[Cordova]]: Build using XCode 11 (required by Apple)
# Design Screen: Problem with rotation fixed.
# [[Using_Node_and_Electron_to_build_Desktop_Apps|Electron]]: ElectronMain now passes eslint.
# Electron: Give error message if icon not found.
# Electron: was getting default icon from wrong folder.
# Electron: New electronIcon property.
# [[Form|Forms]]: Bounds properties now properly note how fullscreen is handled.
# Installer: Properties for AppStudio.exe now shows the version.
# [[Progressive_Web_Apps|PWA]]: Don't cache php files.
# PWA: Use default scope instead of explicit. Clears a Chrome warning message.
# Samples: Improved BS4 Modal sample. (Thanks, Gary!)
 
== Version 8.0.5 ==
# [[Frameworks|BS3]]: Change icon color to red, so it looks more obsolete.
# [[Frameworks|BS4]]: Update Sketchy theme.
# [[Using_Node_and_Electron_to_build_Desktop_Apps|Electron]]: Don't include PWA files.
# Electron: Fix formatting error in electronMain.js.
# Electron: Use main icon, not PhoneGap icon.
# Offline Help: fixed on Windows (was OK on MacOS)
# [[Progressive_Web_Apps|PWA]]: Allow multiple apps on the same server by checking id when clearing cache.
# Samples: Fix problems with Camera samples. (Thanks, bsommer!)
# Samples: Update all PhoneGap config.xml properties
 
To install on MacOS Catalina, you may need to right click on the .dmg file. Apple has just increased the security requirements for apps, and one of the libraries we (and millions of others) use has not been updated to this standard yet.
 
== Version 8.0.4 ==
# BS4 Checkbox: Do not allow multiline strings for value property.
# BS4: Remove references to Bootstrap-theme.min.css
# BS4: Themes all updated.
# Design Screen: Do not allow designHeight/Width to be strings.
# Electron: Error on deploy fixed.
# Project Explorer: Do not append "copy" if not needed when cut/pasting controls.
# Project: manifest.json and package.json are pure JSON now.
# Samples: Camera sample is now in JavasScript.
# Samples: PhoneGap samples were trying to load unneeded files.
# Samples: Problem with PhoneGapCamera fixed. (Thanks, BSommer!)
# SQLite: Problem with deploying databases with app fixed.
# Translation: "Replace" on Find screen now appears in the proper language.
# Translation: Deutsch was adding an extra space to file names.
# Translation: German translations improved.
# Windows: Round icons now appear everywhere.
 
== Version 8.0.3 ==
# [[Progressive Web Apps|PWA]]: 'disablePWA' is now called 'Make PWA?'
# PWA: Test new variable NSB.PWA if see if running as a PWA.
# PWA: If not running as a PWA, don't initialize PWA.
# [https://blog.appstudio.dev/2018/10/as7-syntax-checking-for-javascript/ esLint]: Handles Windows line ending properly.
# Design Screen: Problem with deleting controls which have been cut and pasted fixed.
# Samples: Fix JavaScript version of Camera sample.
# [https://bootswatch.com/ BS4 themes]: Fix spelling of Lumen.
# BS4 themes: Paper and Readable shouldn't have been listed.
# BS4 themes: Litera and Sketchy added.
# Libraries: Updates to Python, Node, obfuscater, eslint and more.
 
== Version 8.0.2 ==
# Bootstrap 4: bootstrap-enhanced.css removed - obsolete.
# Controls: Emoji in text fields now display properly.
# Deploy: obsolete code for nsbapp.com removed.
# Images: Do not delete image file when control referencing it is deleted.
# Properties Grid: Duplicate ID numbers checked.
# Samples: Dark Mode sample improved.
# Windows: File Version fixed in Windows' Properties.
# Windows: Signing certificate updated.
 
== Version 8.0.1 ==
# [[About Screen|About]]: Display serial number
# [[Introduction_to_Bootstrap|Bootstrap]]: Make themes easier to see and preview.
# [[Using_Node_and_Electron_to_build_Desktop_Apps|Electron]]: IScroll now loads properly.
# [[Code Window]]: Remembers position when switching forms.
# IDE: Copyright dates changed to 2020.
# IDE: Fix error on startup - deploy_deploymode not initialized
# MacOS: Builds are notarized, so they should work with Catalina's security.
# MacOS: Minimum version is now 10.13 (High Sierra).
# [[Progressive_Web_Apps|PWA]]: Duplicate filenames are handled properly.
# PWA: Filenames with spaces work properly.
# PWA: Fix missing function in PWA.js
# PWA: new onPWAReload() event gets called when new version detected. Can be used to override default behaviour.
# Translations: Add full Chinese Traditional
# Updates: URLs are no longer hard coded.
# [[Validation]]: Library updated to 1.19.1.
# Wiki: Offline edition's Search feature fixed.
 
== Version 8.0.0 ==


Here's a list of what is new.
Here's a list of what is new.


If you own a previous version of AppStudio and do not have a subscription, you need to buy the upgrade to use Version 8. You can do this from within the app or from our order form.
If you own a previous version of AppStudio and do not have a subscription, you need to buy the upgrade to use Version 9. You can do this from within the app or from our order form.


Until you have bought the upgrade, you can use AppStudio 8 in Demo mode for up to 30 days. Once you buy, your copy will convert automatically to the full version.
Until you have bought the upgrade, you can use AppStudio 9 in Demo mode for up to 10 days. Once you buy, your copy will convert automatically to the full version.


===IDE===
===IDE===
====General====
====General====
# AppStudio icon updated to a more modern circle style.
# AppStudio icon updated to a modern squared circle.
# Dark Mode Support: AppStudio can now make Dark Mode apps. AppStudio does not support Dark Mode fully itself: there are still parts of the underlying wxWidgets library that its developer's need to work on.
# Registration and validation now uses new backend stem.
# Filename checking improved. Properly supports spaces, underbars, dashes and periods.
# Opens to HelloWorld the first time AppStudio is started.
# Check for updates on startup.
# [[Menu_Options#Tools|Tools Menu]]: New option to open project in GitHub website.
# Tools Menu: New option to open project in GitHub Desktop app.
# New version check on startup.
# Landscape enabled in the Layout option of the browser's Print dialog.
# [[Menu_Options#Run|Run menu]]: If Local Path is not defined, Deploy Local can now start the app after Deploy.
# Run menu: Deploy option now uses the deploy method selected in the picker.


====Code Window====
====Code Window====
# More keyboard shortcuts now work on MacOS
# New [[AI Coding Assistant]] icon added.
# [[Code Window|eslint]] messages now show just the first 10,000 characters (fixes an error)
# Code formatting updated to use Prettier instead of jsBeautifier
# Pasted code with smart quotes no longer crashes Code Window.
# Switching between tabs is now faster.
# Format Code is now in sync with Check Syntax.
# Format Code now uses the latest JS best practices.
# Changed indent preference takes effect immediately.
# Using the Functions window to navigate code has been improved.
# [[Properties_Window#Project_Properties|eslintRules]] can be used to fine tune syntax checking.


====Design Screen====
====Design Screen====
# Hang which could be caused by adding and deleting a jQM control fixed.
# Stability of dragging controls improved.
# Right clicking on a control will refer to the control, not its parent.
# Avoid adding control to container it already is in.
# Changes to Project CSS are updated in the Design Screen right away.
# Fix underlining and reporting of syntax errors in code.
# Design Screen: Add warning for mixed frameworks (like BS4 and BS5 in same project)


====Preferences====
====ToolBox====
# A download directory has been added to PhoneGap Preferences.
# SQLite WASM added
# Option to specify deploy location removed from Deploy Preferences.
# Bootstrap 5 controls added


====Project Explorer====
===Runtime===
# Filenames with spaces can be dragged and dropped.
# Change delays in startup to improve import of SQLite databases.
# Filenames now display their actual names.
# SQLite error messages improved.
# Option to use [[Using SQLite with Chrome 119|SQLite WASM]] added to libraries.


====Project Properties====
===Deploy Methods===
# Background: Set this to inherit to enable dark mode.
# PWA: New 'disable PWA' property turns off creation of PWA.


====Status Bar====
====Local Deploy====
# Updates more frequently
# Deploy: fix error on Windows local deploy when using Hebrew.


===Runtime===
====VoltBuilder and Cordova====
# Async/Await support added.
# Cordova: remove option from Run menu.
# "apple-mobile-web-app-capable" no longer included in head.
# VoltBuilder: Rename "VoltBuilder and Cordova" to "Cordova"
# "jquery 3.3.1 SNYK-JS-JQUERY-174006 assets/www/nsb/library/jquery3.js" message from Google fixed.
# VoltBuilder: Remove "Cordova command" property.
# VoltBuilder: Add "Release" and "Platform" properties.
# VoltBuilder: properties renamed to be consistent with VoltBuilder docs.
# VoltBuilder: Use utf-8 encoding to handle extended characters in Arabic, Hebrew, etc.
# VoltBuilder: Improve handling of special characters in "description" property.
# VoltBuilder: Update "config.xml" property template for latest requirements.
# VoltBuilder Status: Work gracefully if job not submitted yet.


===Deploy Methods===
====Electron====
# Packages listed in package.json are now deployed with your project.
# isElectron set earlier in startup - fixes possible runtime error
# Updated to latest version.


====Electron====
====ToolBox====
# 'Make Desktop App using Electron' added to Run menu
# [[Using_SQLite_with_Chrome_119|SQLite WASM]] added
# 'Make Desktop App for Distribution' added to Run menu
# Electron build now uses [https://www.electron.build/ Electron-build] library.
# ElectronWeather sample updated to use electron-build.
# Electron Wiki article updated to show how to use electron-build manually.


====PhoneGap====
====PhoneGap====
# New PhoneGap icon property added. Should be 1024x1024 png.
# PhoneGap dropped - no longer in business.
# New PhoneGap splash property added. Should be 2732x2732 png.
# If icon or splash are the wrong size or missing, a 'Missing source image' message is shown.
# All required icons are now automatically generated.
# All required splash screens are now automatically generated.
# Config.xml is automatically updated with the correct paths for icons and splashes.
# 'Generate Icons for PhoneGap' removed from Tools menu.
# Errors in config.xml now throw an appropriate message.
# Build counter property added. Increments on each build and updates config.xml.
# CSP is now required for all PhoneGap apps (Google requirement).
# PhoneGap samples now give a warning when not run with PhoneGap.
# PhoneGap Preferences: Download directory added.
# Get Native Build Status: After PhoneGap app is generated, it is automatically downloaded.
# A reasonable filename is now generated for download PhoneGap apps.
# PWA code is no longer included in PhoneGap apps.
# QR Code is no longer displayed if no PhoneGap account.
# PhoneGap Status exits if new project loaded.


====PWA====
===Frameworks===
# Errors in manifest.json now throw an appropriate message.
# Add project property to turn off PWA code.
# Better message given when starting PWA with file://. Must be started from a server.
# 'scope' line added to manifest.json for iOS.


===Frameworks===
Bootstrap 5 has been released. The developers continue to support Bootstrap 4 as well: both are supported by AppStudio.


Another year has passed without updates to jQuery Mobile. That's 5 years now. While the controls still work, for the most part, they throw error messages in Chrome for using insecure libraries. We recommend [[Converting_jQuery_Mobile_to_Bootstrap_4|converting to Bootstrap 4]].
Bootstrap 3 is no longer supported. We recommend [[Converting_jQuery_Mobile_to_Bootstrap_4|converting to Bootstrap 4] or Bootstrap 5.


Bootstrap 3 has been replaced by Bootstrap 4. We recommend switching to the new version.
jQuery Mobile is no longer supported. While the controls still work, for the most part, they throw error messages in Chrome for using insecure libraries. We recommend [[Converting_jQuery_Mobile_to_Bootstrap_4|converting to Bootstrap 4]] or Bootstrap 5.


====AppStudio====
====Bootstrap 5====
# Complete new framework. Read about [[Bootstrap 5]].


====Bootstrap 4====
====Bootstrap 4====
# Listgroup: Using button style with appearances now works properly.
# Select: name and required properties are now implemented.
# Textarea: Use rows property, not height, to set size of control.
# New themes: morph, quartz, vapor, yeti and zephyr.
# Updated to Bootstrap 4.4.1
# Toast - Add z-index property
# Datatables controls updated to current version.
 
====Bootstrap 3 (Obsolete)====
# Now marked as Obsolete in the Toolbox and Samples.


====Common====
====Common====
Line 484: Line 213:
====jQuery Mobile (Obsolete)====
====jQuery Mobile (Obsolete)====
# Now marked as Obsolete in the Toolbox and Samples.
# Now marked as Obsolete in the Toolbox and Samples.
====jqWidgets====
=== BASIC ===
# Async and Await are translated properly.
# False syntax error on Catch fixed.


=== Samples ===
=== Samples ===
# All: All samples now use Bootstrap 4 controls.
# BootStrap 5 samples added.
# New Async sample shows how to use Async/Await.
# SQLSample1, 2 and 3 updated to use SQLite WASM
# New DarkMode samples shows how to initiate dark mode.
# Add missing descriptions to some samples.
# PhoneGap samples now give a warning when not run with PhoneGap.
# Fix JS Northwind sample.
# GoogleMaps sample now tells user an API key is needed.
# HeaderBodyFooter: Add comment to app describing what it is for.
# jqxComboBox sample fixed.
# Splitview: Add comment to app describing what it is for.
# StockQuote sample dropped.
# PictureBox - fix image not showing
# Samples automatically have BASIC library included, in case they use those functions.
# StudentsLocalStorage - Add a message if record not found
# jQuery Mobile removed from all samples.
# ScrollingForm sample now uses native scrolling, not iScroll.


=== Documentation ===
=== Installer ===
# Windows installer now shows 9.0.0.0
# Windows Installer: use new icon


=== Internals ===
=== Internals ===
# Python updated from 2.7 to 3.7.
# jQuery updated to 3.7
# wxPython updated to Version 4 ("Phoenix")
# Python updated to 3.8.10.
# All references to hfunc.js removed (obsolete)
# Node updated to 20
# jQuery updated to 3.4.1
# Many, many internal libraries updated.
# Customer and level set in .env (affects dev environment only)
# PDFMake updated to fix unsafe-eval issue.
# Code quality improved by linting
# Windows installer: now built by InnoSetup 6.0.3
# Windows installer: appearance updated


=== Breaking Changes ===
=== Breaking Changes ===
# [https://support.microsoft.com/en-us/help/15056/windows-32-64-bit-faq 64-bit Windows] is required. 32-bit Windows will not work any more: some of the underlying libraries AppStudio uses are not available in 32 bit.
# Calling Cordova to build your project locally is no longer supported. Use VoltBuilder instead - it's much easier and is mult-platform. (If you need to build locally, you can use the files in the VoltBuilder folder which is created on a deploy to VoltBuilder)
# AppStudio now installs to c:/Program Files, not c:/Program Files (x86). You may need to [[Solutions_to_Common_Problems#How_can_I_do_a_complete_uninstall.3F|do a complete uninstall]] for this to happen.
# MacOS 10.13 or later is required.
# The PhoneGap config.xml property needs to be updated. Fill in values for PhoneGap Icon (1024) and Splash (2732), then delete these lines from config.xml. AppStudio now generates this content automatically:<br>* Sections with &lt;icon lines<br>* Sections with &lt;splash lines<br>* &lt;gap:splash src='{splashscreen}'/><br>Or, start fresh by copying the config.xml sample in shown [[Submitting_to_the_iOS_App_Store#Config.xml|here]] and adding any other changes you have made. Don't forget to delete all the old icons and splashscreens which are no longer needed.

Latest revision as of 15:11, 4 November 2024

Major New Features

  1. AI Coding Assistant to help you with your code
  2. Bootstrap 5 support added
  3. SQL WASM support added
  4. VoltBuilder integration improved.
  5. Online Wiki - server reconfigured for faster response

Upgrading

If you have AppStudio 8 or older and don't have a subscription, you will need to get the upgrade to use these new features. You can order it here.

If you like would to try it first, download from the 'Check for Updates' screen in the Help menu. You'll get a demo copy.

Version 9.1.1

  1. Controls: New BS5 Spinner control
  2. Documentation: off line Wiki updated
  3. Project Explorer: Duplicate filename when adding a file starting with a non-alpha fixed.
  4. Project Properties: iOS properties updated to use same terms as VoltBuilder
  5. Runtime: new BuildCounter global
  6. Samples: new Spinner samples
  7. Libraries: various libs updated

Version 9.1.0

  1. AppStudio: Icon in top left corner now appears properly.
  2. AppStudio: Save As now copies all the files in the project directory.
  3. BS4, BS5: added disabled property to several controls
  4. BS4, BS5: added name property to several controls.
  5. BS4, BS5: Label: added blank appearance property for no styling
  6. BS5: Dropdown: added index property.
  7. BS5: Input-group: button has been added as an itemType: Buttons can be part of a group.
  8. Design Screen: Now uses Edge instead of IE to render. Should fix some BS5 issues.
  9. Docs: Add AI to your app using ChatGPT
  10. Docs: Using SQLite updated for SQLite WASM
  11. Docs: Wiki for ForEach updated.
  12. Docs: Offline wiki updated.
  13. Libraries: wxPython updated to 4.2.2
  14. Native: don't initialize SQLite WASM if Cordova plugin is being used.
  15. Samples: ElectronWeather now shows how to do a custom icon in Electron.
  16. Samples: New ChatGPT sample
  17. Update Screen: Links to proper place in Wiki.

Version 9.0.7

  1. ChatGPT: Now uses latest model: GPT-4o
  2. Samples: ElectronWeather (JavaScript) updated.
  3. Electron: Error reporting improved - check log in About screen to see messages.
  4. Electron: Electron updated to 31.2, Electron-builder to 24.13.3
  5. Libraries: PyInstaller updated to 6.9
  6. Libraries: Python updated to 3.11
  7. Libraries: wxPython update to 4.2.1

If you are using Electron, make sure the following versions are set in package.json property (Project Properties, in the Electron section):

  "electron": "^31.2.0",
  "electron-builder": "^24.13.3",
  "npm": "^10.8.2"

Version 9.0.6

  1. BS5: New Range control. Replaces BS5 Slider
  2. BS5: Slider control deprecated. Replaced by a placeholder.
  3. Samples: Northwind updated to use SQLite WASM
  4. SQLite WASM: SQLImport and SQLExport are now fully supported.
  5. SQLExport: Output is now sorted properly

Version 9.0.5

  1. ChatGPT: Now uses gpt-3.5-turbo-0125. Can handle more data in and out.
  2. Samples: SQLSample1 has a new Lookup feature.
  3. Samples: SQLSample1 now saves to localStorage and clears database properly.
  4. Splashscreens: Support for Android 12 splashscreens added.
  5. Splashscreens: New splash background property.
  6. SQLite: Additional required files are now deployed.
  7. SQLite: Data saved to localStorage by default
  8. SQLite: Error reporting improved.
  9. SQLite: Headers for OPFS support added.
  10. SQLite: New SQLDump() command for the console.
  11. SQLite: Main() is not called until SQLite WASM finished loading
  12. SQLite: Warning appears if no SQLite library is installed when trying to open.
  13. SQLite: SQLite WASM no longer needs to be selected if using Cordova plugins
  14. SQLite WASM: Updated to 3.46

Version 9.0.4

  1. BS5: new Carousel control
  2. BS5: Input.files now works properly
  3. BS5: Bootstrap 5 updated to 5.3.3
  4. Code Window: Selecting a item in the Functions panel now goes to that function.
  5. Docs: The offline wiki has been updated with the latest changes.
  6. SQLite: SqlOpenDatabase can now save to localStorage
  7. Libraries: SQLite WASM updated to 3.45.3
  8. Libraries: Shake library removed (no longer maintained by author)
  9. Samples: new Google Gemini AI sample
  10. Samples: new Carousel sample

Version 9.0.3

  1. BS4, BS5: Checkbox: inline property no longer adds a BR
  2. BS5: Textarea now supports .text and .value
  3. Build: Action scripts updated.
  4. Build: Upgraded signing certificates for Windows
  5. ChatGPT: Context size increase 4x. Larger code modules can be handled.
  6. ChatGPT: error messages improved.
  7. ChatGPT: Version updated to gpt-3.5-turbo-1106
  8. Electron: package-lockfile now added by default
  9. Libraries: multiple updated
  10. Samples: Unneeded voltbuilder folders deleted.
  11. Snackbar: Duration is now user controllable.
  12. Stripe: User's name now used instead of defaulting to 'Stripe'.
  13. Toolbox: SQL WASM description improved.
  14. VoltBuilder: do not include SQL WASM module when using - use Cordova plugin.
  15. VoltBuilder: Log file name now includes date and time of build.
  16. Voltbuilder: Missing download folder now handled properly.
  17. VoltBuilder: update trial messages

Version 9.0.2

  1. BS5: Input-item: enable style property
  2. Design Screen: Formatting problems fixed with BS4 Scroller and others. (Windows)
  3. SQLite: To use SQLite in your app, select SQLite (WASM) in Libraries.
  4. SQLite: SQLite.js and SQLite.wasm are no longer included for VoltBuilder. Use plugins instead.

Version 9.0.1

  1. Demo: Users of older versions of AppStudio can now try AppStudio 9 for 10 days.
  2. Controls: BS5 Input uses size instead of font attributes for sizing.
  3. Controls: BS5 TextArea now shows headers and footers.
  4. Copyright: Updated to 2024
  5. Electron: Updated to version 28 (samples too)
  6. Installer: proper icon shows in the Windows toolbar
  7. Runtime: Navigo warning removed by using Version 7.1.2
  8. Samples: Compass sample now asks for permission from user (iOS)

Version 9.0.0

Here's a list of what is new.

If you own a previous version of AppStudio and do not have a subscription, you need to buy the upgrade to use Version 9. You can do this from within the app or from our order form.

Until you have bought the upgrade, you can use AppStudio 9 in Demo mode for up to 10 days. Once you buy, your copy will convert automatically to the full version.

IDE

General

  1. AppStudio icon updated to a modern squared circle.
  2. Registration and validation now uses new backend stem.

Code Window

  1. New AI Coding Assistant icon added.
  2. Code formatting updated to use Prettier instead of jsBeautifier
  3. Switching between tabs is now faster.
  4. Format Code is now in sync with Check Syntax.
  5. Format Code now uses the latest JS best practices.
  6. Changed indent preference takes effect immediately.
  7. Using the Functions window to navigate code has been improved.
  8. eslintRules can be used to fine tune syntax checking.

Design Screen

  1. Stability of dragging controls improved.
  2. Avoid adding control to container it already is in.
  3. Fix underlining and reporting of syntax errors in code.
  4. Design Screen: Add warning for mixed frameworks (like BS4 and BS5 in same project)

ToolBox

  1. SQLite WASM added
  2. Bootstrap 5 controls added

Runtime

  1. Change delays in startup to improve import of SQLite databases.
  2. SQLite error messages improved.
  3. Option to use SQLite WASM added to libraries.

Deploy Methods

Local Deploy

  1. Deploy: fix error on Windows local deploy when using Hebrew.

VoltBuilder and Cordova

  1. Cordova: remove option from Run menu.
  2. VoltBuilder: Rename "VoltBuilder and Cordova" to "Cordova"
  3. VoltBuilder: Remove "Cordova command" property.
  4. VoltBuilder: Add "Release" and "Platform" properties.
  5. VoltBuilder: properties renamed to be consistent with VoltBuilder docs.
  6. VoltBuilder: Use utf-8 encoding to handle extended characters in Arabic, Hebrew, etc.
  7. VoltBuilder: Improve handling of special characters in "description" property.
  8. VoltBuilder: Update "config.xml" property template for latest requirements.
  9. VoltBuilder Status: Work gracefully if job not submitted yet.

Electron

  1. Packages listed in package.json are now deployed with your project.
  2. isElectron set earlier in startup - fixes possible runtime error
  3. Updated to latest version.

ToolBox

  1. SQLite WASM added

PhoneGap

  1. PhoneGap dropped - no longer in business.

Frameworks

Bootstrap 5 has been released. The developers continue to support Bootstrap 4 as well: both are supported by AppStudio.

Bootstrap 3 is no longer supported. We recommend [[Converting_jQuery_Mobile_to_Bootstrap_4|converting to Bootstrap 4] or Bootstrap 5.

jQuery Mobile is no longer supported. While the controls still work, for the most part, they throw error messages in Chrome for using insecure libraries. We recommend converting to Bootstrap 4 or Bootstrap 5.

Bootstrap 5

  1. Complete new framework. Read about Bootstrap 5.

Bootstrap 4

  1. Select: name and required properties are now implemented.
  2. New themes: morph, quartz, vapor, yeti and zephyr.
  3. Toast - Add z-index property

Common

  1. Forms: iScroll no longer used - use native scrolling instead.
  2. QRCode: setValue added to autocomplete in Code Window

jQuery Mobile (Obsolete)

  1. Now marked as Obsolete in the Toolbox and Samples.

Samples

  1. BootStrap 5 samples added.
  2. SQLSample1, 2 and 3 updated to use SQLite WASM
  3. Add missing descriptions to some samples.
  4. Fix JS Northwind sample.
  5. HeaderBodyFooter: Add comment to app describing what it is for.
  6. Splitview: Add comment to app describing what it is for.
  7. PictureBox - fix image not showing
  8. StudentsLocalStorage - Add a message if record not found

Installer

  1. Windows installer now shows 9.0.0.0
  2. Windows Installer: use new icon

Internals

  1. jQuery updated to 3.7
  2. Python updated to 3.8.10.
  3. Node updated to 20
  4. Many, many internal libraries updated.
  5. PDFMake updated to fix unsafe-eval issue.

Breaking Changes

  1. Calling Cordova to build your project locally is no longer supported. Use VoltBuilder instead - it's much easier and is mult-platform. (If you need to build locally, you can use the files in the VoltBuilder folder which is created on a deploy to VoltBuilder)