TouchDevelop - Release Notes

Release Notes for the TouchDevelop Windows Phone app

v2.10.0.0 beta (8/28/2012)

Read the announcement blog post for a walkthrough of the new features in this update.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

New features:

  • tutorial videos
  • code synthesis
  • trace+replay, crash debugging

v2.9.0.0 beta (6/25/2012)

Bug fixes

v2.8.0.0 beta (5/26/2012)

Read the announcement blog post for a walkthrough of the new features in this update.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

New features:

  • structured datatypes allow you to declare tables, indices, decorators, objects
  • tags organize scripts in the script bazaar
  • create page-based user interfaces with pages and buttons
  • revamped in-app help and api search
  • featured screenshots
  • new samples

v2.7.0.0 beta (3/21/2012)

Bug fixes and changes to license terms

v2.6.0.0 beta (2/21/2012)

Read the announcement blog post for a walkthrough of the new features in this update.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

What is new:

  • Enhanced user profiles: picture, about-me text, website
  • User scores: compete with other script writers by earning hearts and using features
  • Improved comments: speech-recognition, ♥, profile pictures, consolidated forum
  • Redesigned script editor
  • More events: tap on anything on wall
  • Recycle code with libraries
  • Create libraries
  • New APIs to access devices in your home network
  • New Samples

v2.5.0.0 beta (12/20/2011)

Read the announcement blog post for a walkthrough of the new features in this update.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

New features:

  • New tutorial that guides you through the app
  • Pick pictures and sounds from the web
  • Pick colors
  • Better organization of installed scripts
  • Semantic zoom: pinch in action editor
  • General discussion forum in the app
  • Pin any top-level page
  • Many bug fixes

v2.4.0.0 beta (11/11/2011)

Read the announcement blog post for an overview.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

New features:

  • Receive push notifications when someone does something related to your scripts; you must opt-in via the Settings menu in the app or on the web
  • Updates: publish a script update (same author, same name), and TouchDevelop will make it easy for everyone to find and get the latest version
  • Discussions: write comments, reply to comments; you will find the new discussions screen in the “rate and review” dialog for each script.
  • Simplified reviews: No more complicated stars and text, you can just do "+♥" or "-♥" to cast your vote.
  • New APIs for live camera access, geo augmented reality and to query more contact information
  • Crowd-sourced IntelliButtons in the calculator: we analyze all published scripts in the cloud, and the app regularly downloads the latest prediction model from the cloud to offer you the operations upfront that you are most likely to use.
  • Many bug fixes

v2.3.0.0 beta (10/7/2011)

Read the announcement blog post for an overview.

This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).

New features:

  • "Pin to start" of your script actions to the main phone start screen (as a consequence, the tiles screen within the TouchDevelop has been removed)
  • Support for fast application switching in Mango
  • Boards can now be shown "full" screen
  • New APIs to copy text to the clipboard
  • The "share" APIs now use the Facebook/Twitter/... accounts which you configure in the general phone settings, and not the one you use to sign in to TouchDevelop to maintain your scripts
  • "for each" loops now have a "where" clause to filter elements more easily
  • New APIs to access even more phone sensors and data

v2.2.0.0 beta (9/13/2011)

Read the announcement blog post for an overview.

New and improved features:

  • Tutorial-mode
  • Editor improvements: Swipe between actions and statements, add new statements from calculator, button to go to called action
  • Introduced concept of events
  • Many bug fixes and other small improvements

v2.1.0.0 beta (8/18/2011)

Read the announcement blog post for an overview.

New and improved features:

  • The Script Bazaar to find and install scripts from the cloud has now been folded into the main experience.
  • Many bug fixes and other small improvements.

v2.0.0.0 beta (8/2/2011)

Read the announcement blog post for an overview.

New and improved features:

  • Script sharing in the cloud
    • Share scripts with other people by publishing in the script bazaar
    • Share screenshots, write reviews, compete on leaderboards
    • Automated script backup in the cloud
    • View what other people are doing in the livefeed
    • Find scripts on the web: touchdevelop.com
  • Better scripts
    • Choose custom colors, icons (from billybarker.net)
    • View what capabilities a script uses
    • View the information flow of (published) scripts to decide if you want to install them, and what private information you want to expose
    • Language changes: multiple return values, "is invalid" property for all values, comments
  • Editor improvements
    • Selection of multiple statements
    • Better auto-completion using historical API usage patterns
    • Display expression errors, and fix them with a hammer
  • Interactive Wall
    • Search by text
    • Translate to other languages
  • Many new awesome samples, performance improvements, and bug fixes

New APIs:

  • bazaar->leaderboard score: Gets the current score for the current script
  • bazaar->open: Opens the bazaar
  • bazaar->open leaderboard: Opens the leaderboard page for the current script
  • bazaar->open review: Opens the review page for the current script
  • bazaar->post leaderboard score: Posts the current game score to the script leaderboard
  • board->create anchor: Create an anchor sprite
  • board->create boundary: Create walls around the board at the given distance
  • board->create spring: Create a spring between the two sprites
  • board->create sprite set: Create a new collection for sprites
  • board->is invalid: Return true if the current instance is useless
  • Boolean->is invalid: Return true if the current instance is useless
  • color->is invalid: Return true if the current instance is useless
  • color->chrome: Gets the chrome color in the current theme (control background)
  • color->subtle: Gets the subtle color in the current theme (light gray)
  • contact->*: New kind representing a contact
  • contact collection->*: New kind representing a contact collection
  • datetime->greater or equal: Replacement for datetime->greater or equals
  • datetime->is invalid: Return true if the current instance is useless
  • json object->is invalid: Return true if the current instance is useless
  • languages->current language: Replacement for languages->current lang
  • languages->detect language: Automatically detects the language of a given text using Bing.
  • link->is invalid: Return true if the current instance is useless
  • link collection->is invalid: Return true if the current instance is useless
  • location collection->is invalid: Return true if the current instance is useless
  • map->add link: Adds a link pushpin on the map (ignored if the location if not set)
  • map->add message: Adds a message pushpin on the map (ignored if the location is not set)
  • map->add picture: Adds a picture pushpin on the map
  • map->add place: Adds a place pushpin on the map (ignored if the location is not set)
  • map->add text: Adds a text pushpin on the map
  • map->is invalid: Return true if the current instance is useless
  • map->view pushpins: Changes the current zoom and center so that all the pushpins are visible. This method has no effect if the map is not posted on a the wall yet.
  • media->search marketplace: Searches the Windows Phone Marketplace (type in applications or music)
  • message->is invalid: Return true if the current instance is useless
  • message->media link: Gets a url to the media
  • message->post to wall: Posts the message to the wall
  • message->set media link: Sets the url to the media
  • message->set source: Sets the source of this message
  • message->set time: Sets the time
  • message collection->is invalid: Return true if the current instance is useless
  • number->is invalid: Return true if the current instance is useless
  • number->to character: Interprets a number as a unicode value and converts it to the single character string
  • number map->is invalid: Return true if the current instance is useless
  • picture album->is invalid: Return true if the current instance is useless
  • picture albums->is invalid: Return true if the current instance is useless
  • pictures->is invalid: Return true if the current instance is useless
  • place->*: New kind representing a place
  • place collection->*: New kind representing a place collection
  • playlist->is invalid: Return true if the current instance is useless
  • playlists->is invalid: Return true if the current instance is useless
  • social->contacts: Retrieves the list of contacts
  • social->create place: Creates a place
  • social->search places nearby: Searches for recent tweets in a social network (twitter, facebook)
  • song->is invalid: Return true if the current instance is useless
  • song album->is invalid: Return true if the current instance is useless
  • song albums->is invalid: Return true if the current instance is useless
  • songs->is invalid: Return true if the current instance is useless
  • sound->is invalid: Return true if the current instance is useless
  • sprite->color: Returns the sprite color.
  • sprite->is invalid: Return true if the current instance is useless
  • sprite->overlap with: Returns the subset of sprites in the given set that overlap with sprite.
  • sprite set->*: New kind representing a set of sprites
  • string->is invalid: Return true if the current instance is useless
  • string->to upper case: Replaces to upper
  • string->to unicode: Converts a single character string into its unicode number
  • string collection->is invalid: Return true if the current instance is useless
  • textbox->*: New kind representing a mutable text box that can be posted to the wall
  • tile->is invalid: Return true if the current instance is useless
  • time->stop and close: Stops the execution and leaves the wall.
  • wall->clear: Clears the entries
  • wall->create text box: Creates an updatable text box
  • web->search images nearby: Searching images near a location using Bing. Distance in meters, negative to ignore.
  • web->search nearby: Searching the web near a location using Bing. Distance in meters, negative to ignore.
  • web->search news nearby: Searching news near a location using Bing. Distance in meters, negative to ignore.
  • web->search phone numbers: Search phone numbers near a location using Bing. Distance in meters, negative to ignore.
  • xml object->is invalid: Return true if the current instance is useless

Removed APIs:

  • board->share: was useless
  • datetime->greater or equals: replaced by greater or equal
  • languages->current lang: replaced by current language
  • map->add pushpin: replaced by add link, add message, add picture, add place, add text
  • string->to upper: replaced by to upper case

v1.2.0.1 beta (5/27/2011)

Read the announcement blog post for an overview.

  • New fast game and physics engine ("board")
  • Improved tiles on app home screen
    • Pinning of individual actions as tiles
    • Separation of tiles and scripts
  • Post on your Facebook wall directly from your script
  • Global variables ("data")
  • Run all actions directly; enter arguments on wall if needed
  • Improvements in code editor
    • Selection of subexpressions
    • Extraction of subexpressions (a refactoring that introduces a new local variable)
    • Copy & paste of entire actions
    • Undo
  • Tutorial videos
  • Many new samples, performance improvements, and transition animations, and bug fixes

New APIs:

  • media->create board: Create a board
  • board->*: Game and physics engine
  • sprite->*: Sprites on boards
  • social->create message: Create a message
  • social->search: Searches your favorite social networks
  • message->*: Messages
  • *->share: Easy sharing of text, images, etc. on your favorite social network
  • math->mod: Function to compute modulus
  • string->to location: Parses a string representing a geo coordinate
  • tile->set panorama: Marks a tile as a wide tile
  • wall->*: Directly interact with wall
  • web->rss: Fetch rss stream from web
  • web->xml: Fetch xml document from web
  • xml->*: Easily access xml elements

API changes:

old API new API
math-pi math->π

 

media->choose picture,
media->has chosen picture,

media->chosen picture

media->choose picture
(immediately returns chosen picture)

 

phone->choose phone number,

phone->has chosen phone number,

phone->chosen phone number

phone->choose phone number
(immediately returns chosen number)

 

senses->take camera picture,

senses->has taken camera picture,

senses->taken camera picture

senses->take camera picture
(immediately returns taken picture)

 

social->choose email,

social->has chosen email,

social->chosen email

social->choose email
(immediately returns email)

phone->message box wall->prompt
phone->number box wall->ask number
phone->string box wall->ask string
phone->screenshot wall->screenshot
picture->show picture->post to wall

 

v1.1.0.0 beta (5/2/2011)

Read the announcement blog post for an overview.

  • Many bug fixes
  • Better auto-completion in expression editor
  • Access to accelerometer, location, maps, translation services, web search, tile customization, charting, and more.
  • Take screenshots of your actions (if you want to show other people your code), and the execution wall; look for the "send screenshot to library" button under the “…” in the application bar.
  • API changes (see below). If you update an existing installation, all your existing scripts get renamed to "v1.0 ...". Since we changed APIs, your old scripts might have errors which you have to edit and fix yourself.

New APIs:

  • senses->acceleration quick/smooth/stable: Access to accelerometer
  • locations->*: Access to GPS/geo-coordinates
  • maps->*: Access to Bing maps
  • languages->*: Access to Bing- and Hawaii-based translation services
  • web->search *: Searching the web with Bing
  • tile->*: Configuration of script tile properties
  • math->create number map: charting functionality

API changes:

old API new API
engine->assert time->fail if not
engine->stop time->stop
phone->sleep time->sleep
phone->now time->now
json->get field json->field
json->get boolean json->boolean
json->get number json->number
json->get string json->string
senses->snap camera picture senses->take camera picture
senses->has camerea picture senses->has taken camera picture
senses->camera picture senses->taken camera picture
web->deep zoom link web->link deep zoom
web->hyperlink web->link url
web->image link web->link image

 

v1.0.0.0 beta #0 (4/9/2011)

Read the announcement blog post for an overview.