3.9
2023-10-27
Air Code Enhancements
- Introducing auto-complete support!
- All your projects are now directly available in VSCode's explorer view. Create, rename projects, and collections straight from VSCode
- New Codea Reference section in the sidebar with a "Find reference..." command
- Ability to rename symbols and display Lua errors directly in VSCode
- Enhanced stability with fixes for crash issues, filename case sensitivity, saving large files, and more
Dropbox Update
- Support for the Dropbox asset pack and sync has been removed. Access your Dropbox.assets folder via the Files app.
- What replaces Dropbox? Well...
External Asset Folders
- Introducing "External folder references" for your assets. Seamlessly integrate top-level folders with assets from iCloud, local storage, Dropbox, and other locations
UI and Functionality Improvements
- Now with an option to disable warning messages in the output console using viewer.showWarnings = false
- Improved "Add To" menu with more destinations
- Case-insensitive search in references
3.8
2023-06-04
Air Code 2.0
• Completely rewritten and redesigned
• Use VS Code to debug and code your projects
• Code live on your iPhone or iPad
• Interact with parameters right in VS Code
Updated
• New output pane in the viewer
Objective-C
• GameKit added to objc
• Support passing a pointer instead of an NSString for char* objc arguments
• Support const return types (simply ignored)
• Superclass members are now shown in autocomplete
Fixes
• Minor UI fixes
• Fixes to default sky settings in Craft
• Updates German, Japanese and French localizations to include full documentation
3.7.1
2022-12-22
Fixes
- Issue where dragging the starting selection handle on some text would cause the selection to narrow to zero length and possibly crash
- Multiple runtime errors should now clear correctly on a subsequent run
- Syntax errors that occur when runtime errors are visible should not incorrectly persist
- Using the sprite (or any) picker when a function contains other arguments containing expressions using the % sign will no longer produce corrupt text around the location of the % sign when an asset is selected
3.7
2022-12-12
LIVE CODING
- Run in New Window: you can now run projects in a new window and keep the editor open
- Live Coding: when you edit code which is running in a new window, it will update live
NEW
- Projects can be opened in new windows (long press the project icon)
- Codea tries to understand the types of your variables better
- This should result in better autocomplete
- We now support manual type annotation in comments, simply type three `-` characters above a variable declaration or function
- These type annotations will help Codea provide better autocomplete
- Updates LuaSocket to latest version
OBJ-C
- Objective-C methods and properties now autocomplete
- Callbacks can now work with BOOL pointers
- Struct arguments are supported in Lua callbacks
- Objective-C Sets: you can now use `objc.set()` to create an NSSet
- Objective-C Colors: Codea colors are now bridged to Objective-C. This means you can do things like `view.backgroundColor = color(128)`
- You can now use `vec2` where you would use a `CGPoint` in the `objc` library. For example: `uiTextView:setContentOffset_(vec2(0, 100))`
FIXED
- Animation example project fix
- Roller Coaster example project fix
- Sounds Plus example project fix
- Improved the Project Browser's sidebar behaviour when rotating or changing size
- Improved the animation when opening projects to be more seamless
- Fixes when adjusting editor settings in a scrolled file (shouldn't lose position)
- Fixes Project Browser filter bar turning black briefly when closing a project
- Fixes a crash when denying screen recording permission
Thanks to Jean-François Pérusse and Unsung Lee for their amazing work on this release!
3.6
2022-09-09
New Render Engine Preview
- Includes a preview of the new Metal-based renderer coming in Codea 4.0. You can enable it on a per-project basis, and documentation is available in the editor.
- The new renderer allows for advanced effects like compute shaders, better text and vector rendering, and more
Objective-C Library Updates
- Exposes more types through the objc library
- Allows for interaction with delegates and other callback-style APIs from the renderer
Asset Library Improvements
- You can now add sprites, music and sounds to your project using the document picker
- Or by drag-and-drop directly into the code editor!
3.5.3
2022-04-10
- Optimizes the asset picker when you have lots of images in a directory
- Fixes a bug in Air Code that could cause Codea to crash when re-running a project after fixing an error
3.5.2
2022-02-24
- Improves stability of Codea especially in situations where the renderer interacts with other threads in the system
- Adds objc.delegate for creating delegate objects when interacting with Obj-C libraries
- See the documentation for more info!
3.5.1
2022-01-10
- Changes the behaviour of Cmd+Left Arrow to jump to the start of the line while respecting indentation (i.e., after the whitespace)
- Fixes a crash on iOS 14
3.5
2022-01-07
The Objective-C Update
This is a big update! It includes bindings for native Objective-C APIs under the `objc` namespace
Now you can do things like implement your own game controller support, call web sockets and URL sessions, use pathfinding and octrees from GameplayKit, access MIDI interfaces and much more
Check the Objective-C section of the Lua chapter in the documentation for details
This update was authored by contributor @jfperusse, say hi (and thanks!) on Codea Talk if you enjoy it
Also Included:
- Improvements to Craft. You can now set a main scene and have its callbacks automatically called
- Entities can have callbacks for update, fixedUpdate and destroyed
- We also have fixes to find / replace, opening reference from your code, and dependency loading
3.4.7
2021-12-29
- New physics.bodies property
- Provides a read-only list of all physics bodies currently active
- Useful if you want to draw all your physics objects, identify static shapes such as walls and floors, and so on
3.4.6
2021-12-22
- Fixed screen recording in the viewer
- Improved editor code saving
- Improved closing the viewer when Lua code is unresponsive
- Improved jump to next symbol key behaviour around comments
3.4.5
2021-12-19
- Autocomplete now shows up for dependent projects, and works better with symbols from other tabs
- Fixes a crash in pastboard.copy(image) (thanks @jfperusse!)
- Re-jigged order of frame and fixed updates
- Fixes a bug where the current project could show as a selectable dependency when closing and re-opening Codea
- Linked scene fixed update loop to physics simulation
- Fixed bug where Cmd+Right Arrow would not jump to end of line if autocomplete bar was visible and caret placement style was set to 'exact' in editor preferences
- Added deltaTime parameter to update(dt) entity callback
- Added fixedUpdate(dt) entity callback
- Fixes a bug where running and closing a project caused a memory leak if the project had dependencies
- Changed how rigidbody awake property sets/gets
- applyForce/applyTorque family of methods now wake up sleeping rigidbodies
3.4.4
2021-10-05
+ The code editor now shows the status bar. This plays nicer with the new iPadOS multitasking indicator
+ Prevent the undo button getting covered by autocomplete after hitting undo
+ Show function argument help earlier when typing
3.4.3
2021-09-20
Here's some new stuff for you while we work on the next big version of Codea!
You can now:
- Create subfolders inside your project asset folders, just hit the "+" button in your project asset
- View assets right from the code editor. Select Do > Assets
- On iPhone you get an undo button right above the keyboard, you're welcome
Fixes:
- Big changes to the way your projects read and save, this should make things more reliable
- Asset UI now supports light and dark modes
- Project sorting wasn't sticking. It sticks now
- Improved memory use
- Little UI tweaks here and there
3.4.2
2021-08-01
Fixes an issue that could occur when using asset pickers in your code
3.4.1
2021-07-31
Fixes a crash in Shader Lab, thanks for all your reports!
3.4
2021-07-25
- Brand new project browser design!
- You can drag-and-drop projects between collections
- New "Jump to Next Symbol" key. The software tab key will contextually turn into this symbol which allows you to quickly navigate to the next symbol, and quickly jump over operators and syntax
- You can now dismiss autocomplete by hitting escape or backtick (`) on your hardware keyboard
- Fixed: line numbers over 999 are no longer truncated
- Improved: Codea's launch time should be slightly faster
3.3.3
2021-06-24
- saveProjectTab and readProjectTab should interact much better with the project currently being edited
- readProjectTab will ensure the editing changes are saved before use
- saveProjectTab should ensure the open project updates to reflect its state
- Same goes for readText/saveText functions
3.3.2
2021-05-06
+ Adds extra spacing around color annotation marks in the editor
+ Re-indenting now preserves the editor caret position
+ Pasting when 'Format Code on Paste' no longer shifts the caret to the end of the line
+ Improved autocomplete results when nested members are partially completed
+ 'else' and 'elseif' will indent after being typed
+ Fixes a bug that could cause a wrapped line to disappear
+ Update documentation for Craft getMaterial and other methods
+ Update documentation for smooth/noSmooth
3.3.1
2021-04-13
ENHANCEMENTS
+ Find button / Cmd+F focuses the find field
+ Console output shows an approximate (+) indicator
FIXES
+ Improves stability of code editor
+ Fixes context menu when used on projects on main screen while filter is active
+ Disable smart quotes and dashes on find/replace fields
+ Scope formatting now correctly accounts for multi-line strings and comments containing scope-defining keywords
3.3
2021-04-07
tldr: Autocomplete is completely re-written, there's a brand new editor settings panel, all new line wrapping, and tons of bug fixes
NEW AUTOCOMPLETE
- The old autocomplete bar is gone, welcome the new autocomplete bar
- Color coded, sorted, keyboard accessible and respects editor font size
- Long press any underlined items in the autocomplete bar to get instant help
- When used with asset keys (asset.*) you'll see icons indicating file types
- Long press any asset in the list to get an instant preview of the asset
NEW EDITOR FEATURES
- The editor now indents wrapped lines, instead of leaving them hanging at the left margin
- Wrapped lines display a wrapped line indicator on the left
- Access advanced editor settings by selecting Do -> Preferences when editing code
- Exact caret placement puts the cursor exactly where you tap
- Disable line wrapping entirely
- Change font size, theme, tab width and more while editing
- Search for dependencies in the dependency pane
NEW XCODE EXPORT
- Xcode export automatically picks up assets specified with asset keys
- Lots of bug fixes and updates to the export process
- You'll now need to run the "Download Frameworks" target first in your exported project before building
FIXES
- Fixed various scrolling bugs in the editor
- Lots of additional dark mode UI support
- Editor better maintains your scroll position
- Paste on last line places cursor one character short of end
- Placing cursor near top of keyboard is jumpy
3.2.12
2021-03-10
- Fix for occasional crashing issue
- Updates Brick Out example for Lua 5.4
- Remove deprecated table.maxn function
3.2.11
2021-03-03
Fixes
+ Updates all example projects for Lua 5.4
3.2.10
2021-03-01
New Features
+ Updates to Lua 5.4. Up to 70% faster in some cases!
+ New const and close local variable types
Enhancements
+ Editor gutter better resizes with code editor font size
+ More advanced editor configuration options available from the "Editor Configuration" panel in the sidebar
Fixes
+ parameter.integer sometimes would not trigger its callback
+ Improved text editing experience
+ Fixes an Air Code crash bug
Updates
+ Xcode export project updated
3.2.9
2020-12-12
New Features
- pinch gesture callback for pinch gestures on trackpads
- Gesture type adds `pinchScale` and `pinchVelocity`
- New viewer.share() function to share image or text content
Enhancements
- Integer division (//) support for vec types
- alert has been renamed viewer.alert
Bug fixes
- Tab names containing accents or special characters should work properly
- saveImage respects the image.premultiplied
- image:copy copies the premultiplied flag setting