release_notes_2.0.0.txt

(20 KB) Pobierz
===============================================
Python for S60 2.0.0 RELEASE NOTES, 11.02.2010
===============================================

Product Description
===================

Python for S60 (hereafter PyS60) is intended for developers looking to create
programs that use the native features and resources of the S60 phones, using the
Python programming language.

About this release
==================

This is the new 2.0.0 final release of PyS60. This release is intended
only for S60 3rd edition, S60 3rd edition FP1, S60 3rd edition FP2 and
S60 5th edition devices.

Note on versioning: The versioning scheme in PyS60 releases is such that the
releases with an even minor version (1.0.x, 1.2.x ...) are "stable" and releases
with an odd minor version (1.1.x, 1.3.x ...) are "development" releases.

What is new when compared with PyS60 1.9.7?
-------------------------------------------
- Repeat support in 4-way directional pad
- Lot of memory leaks in the interpreter code is fixed.
- appuifw.app.track_allocations can be set if the interpreter should track all
  memory allocations and then free the memory which was not explicitly released
  before application exit. To debug memory leaks in 3rd party extension
  modules set the value to false.
- All the Pyds that have zero UID will be assigned with the applications UID at the time of packaging. 
  As a result, Python applications can now be symbian signed. This opens the door for submitting Python applications to OVI Store.
- Pdf documentation is available in the installer/archive.
- API cleanup in the SensorFW module.
- On the below mentioned devices Python runtime and its dependencies will be installed automatically
  when the Python applications is started.     
  6220 classic, N86 8 MP, N85, 6720 classic, 6730 classic, N96, 5730 XpressMusic, N78, 5630 XpressMusic, 
  E52, E55, 6710 Navigator, E75, N79, 5800 XpressMusic, 5530 XpressMusic, 5230, X6 and N97 mini    

Feature requests:
-----------------
3792 - Python Runtime and application sis can be on different drives. The limitation of both should be installed on the same drive is eliminated.

Corrected defects:
------------------
4345 - Missing (platform) functionality on ensymble/Application packager: The 2nd point in the bug description is fixed
3935 - appuifw.Icon sample code refers to non-existing file [doc error]

What is new when compared with PyS60 1.9.6?
-------------------------------------------
- Touch support added for GLCanvas UI Control. Directional pad is displayed
  by default on touch enabled devices. A sample application - gles_touch_demo.py
  is added to ScriptShell which demonstrates the functionality.

- Two new APIs are added to canvas - begin_redraw and end_redraw. These can be
  used to instruct the window server to enable redraw drawing on the canvas UI
  control. Please refer the documentation (Section 3.1.10) for more details.

- The multi-selection listbox has been modified such that the dialog
  for the option 'checkmark' now has 'Options' and 'Back' as its left and right
  softkeys respectively. The 'Options' has Mark/Unmark entry that can be used
  to select and de-select respectively. The 'Back' softkey returns the
  current state of the listbox based on the selected items.

- 4-way directional pad support in landscape mode
    
- Different flavors of Scriptshell application can coexist on the device.

- Scribble application improvements:
  - Performance improvements by using API's begin_redraw and end_redraw.
  - The drawing area is retained between landscape and portrait
    modes as the toolbar shifts to accommodate for this change.
  - Pen width can be selected from a list of predefined values.

- PyS60 document is available online on maemo.garage
  http://pys60.garage.maemo.org/doc/

Corrected defects:
------------------
4251 - The compression type for the dll and exe files for Python is shown
       as Deflate instead of Byte-pair.
4313 - Scrollbar visible afterwards, should not be there
4338 - Multiple lisbox objects decrease scroll performance
4349 - time.mktime() taking too much time to execute

What is new when compared with PyS60 1.9.5?
-------------------------------------------
- Support for a virtual 4-way directional pad is added for Canvas and text
  widgets. This D-Pad is displayed at the bottom of the screen and this
  feauture is enabled by default on touch enabled devices. Currently, this is
  supported only in the portrait mode and landscape support will be available
  in a future release.
  The 'full_max' mode is invalidated by this change and is removed in this
  release.

- The modules in the base runtime is more refined and hence the size of
  application SIS, created using PyS60 Application Packager is reduced.

- A new chapter is added in the PyS60 documentation (Extending and Embedding
  PyS60), that is an end-to-end tutorial for creating 3rd party extention
  modules and distributing them.

Corrected defects:
------------------
3223 - Floating point formatting/parsing routines on this platform are imprecise
4078 - socket.access_points() returns iapid 0 for lots of entries
4106 - Problems exiting standalone apps
4185 - Calendar module returns end time with time zone offset added to Unix time
4186 - Using rollback in calendar module returns error
4198 - Screen orientation remains landscape after exit, while device was
       portrait all the time
4215 - default.py cannot load .pyc files
4216 - sys.exit() doesn't exit Python

What is new when compared with PyS60 1.9.4?
-------------------------------------------

- e32.s60_version_info is now modified to do a dynamic fetch and return of S60
  version information, instead of returning the version information configured
  at the compile time.
- Default heapsize for PyS60 applications is increased to 100k,4M from 4k,1M
- An option "Continue with missing dependencies" is added to packaging tool.
  Enabling this option will display the missing dependencies as warnings and 
  continue with SIS generation. Otherwise the packaging is strict. Missing 
  dependencies are displayed as errors and SIS generation is aborted.

Feature requests:
-----------------
3261 - Add option to convert to bytecode before py2sis
3298 - appuifw listbox now sports a scrollbar

Corrected defects:
------------------
3228 - time.clock() does not work as expected.
3784 - Python shell file listing in reverse alphabetical order
3788 - uninstall_Python script for SDK has a leading \ in path
3934 - appuifw.Icon creates only grey boxes
3938 - Listbox scrolling off-by-one with touch
4006 - Fake selection problem when sliding quickly your fingers over a list
       with two lines per raw (XM 5800)
4007 - Lists with one raw per item are generating a type_error when sliding
       my finger from top to down
4013 - relates to 1.9.4. !! returns wrong S60 OS version number
4016 - ZeroDivisionError running ball.py in 1.9.4

What is new when compared with PyS60 1.9.3?
-------------------------------------------

- A single Nokia signed runtime package which can be installed on all S60 3rd ED
  and above devices is available. The actual size of the runtime is ~1MB, but due
  to the embedded OpenC sis and Platform Service sis, the size is increased to
  2.8MB. The runtime includes only the most essential modules. The Rest of the
  modules are available with the application packager tool.

- Improved version of application packager tool. The PyS60 application packager
  now scans the Python application being packaged and picks up the missing
  Python modules on which the application is dependent and packages them along
  with the application files. Refer Chapter 7. "Module Repository" in the
  PyS60 Documentation for more details.

- Easier runtime deployment: Python runtime and its dependent components can be
  installed by just running any Python application packaged using 1.9.4
  application packager. This feature is available only from S60 3rd edition FP2
  devices onwards and also these devices should have been updated with the
  latest firmware.

- Two new APIs are added to the socket module - access_points() &
  set_default_access_point() which have similar functionality to the APIs
  present in btsocket module.

- Two new APIs are added to e32 module - get_capabilities() and
  has_capabilities(). The former can be used to get the capabilities, the
  application has been signed with, and the latter to check if a given list of
  capabilities is granted to the application or not.

  Note: The capabilities of scriptshell are displayed on startup using the
  get_capabilities() API.

- Added a new mode to appuifw.app.screen - 'full_max' which can be used to
  achieve fullscreen on devices that don't have Left Soft Key and Right Soft
  Key(e.g.: Nokia 5800). Setting the screen to 'full' will translate to
  'large' mode on these devices.

- The prefix to the binaries of 1.9.x to support co-existence with 1.4.x
  runtime, has been changed from '251_' to 'kf_'.

Corrected defects:
------------------
3368: Importing modules under application's private directory fails.
3841: socket vs. btsocket interoperability

What is new when compared with PyS60 1.9.2?
-------------------------------------------
- Touch event support is added to appuifw Canvas. An API is added to appuifw
  module, touch_enabled() for checking if the device supports touch input.

- scribble application developed using PyS60 touch feature is available in the
  installer.

- This release includes a new extension module, scriptext. This is an enabler for
  using S60 Platform Service APIs that were introduced in the S60 5th Edition
  ...
Zgłoś jeśli naruszono regulamin