Python for S60 2.0.0 is now released. This is an officially signed release.
You can download the release from the usual place in maemo garage:
This release runs on S60 3rd edition, S60 3rd edition FP1, S60 3rd edition FP2 and S60 5th edition devices.
The release includes:
- Installer for Windows platform that includes
- Getting started guide
- Nokia signed PyS60 runtime sis which will work on S60 3rdEd, 3rdEdFP1, 3rdEdFP2 and 5thEd devices.
- Two Nokia signed default capability set PythonScriptShell sis files.
- Nokia signed high capas PythonScriptShell sis. This sis file comes with higher capabilities than self signed (SwEvent, WriteDeviceData, ReadDeviceData)
- Unsigned developer certificate PythonScriptShell sis. This sis file can be used for Symbian Open signing.
- Application packaging tool with GUI and README
- Archive for Linux/Mac platform which includes the same contents as included in Windows installer
- Separate SDK zips for 3rdEdFP1 and 3rdEdFP2. SDK zip contains both gcce and armv5 link libraries. Python 3rdEdFP2 SDK zip will work fine on S60 3rdEd and 5thEd
- Python source code
- OpenSSL source code. This source code is released just to be in complaint with the terms of LGPL licensed software. This source code is
nothing to do with PyS60 software.
- Python for S60 pdf documentation
The release is officially Nokia signed. The capabilities for the PythonForS60 component are "ALL -TCB -DRM -AllFiles", so the DLLs are usable with almost all applications as is and thus there is no longer a need for a separate unsigned-freedevcert version of this package.
The Script Shell packages are signed and available in different flavors varying in the capability set.
The capability set for PythonScriptShell_2.0.0_3_0.sis is ReadUserData WriteUserData NetworkServices LocalServices UserEnvironment.
The capability set for PythonScriptShell_2.0.0_3_2 is ReadUserData WriteUserData NetworkServices LocalServices UserEnvironment Location.
The capability set for PythonScriptShell_2.0.0_high_capas.sis is LocalServices NetworkServices ReadUserData WriteUserData UserEnvironment Location SwEvent WriteDeviceData ReadDeviceData
If you need more capabilities, you need to obtain a devcert and sign the PythonScriptShell_2.0.0_unsigned_devcert.sis script shell package with it. The UID for unsigned_devcert script shell package is updated with untrusted range (0xE0000000...0xEFFFFFFF)
The capability set for unsigned_devcert script shell package is LocalServices NetworkServices ReadUserData WriteUserData UserEnvironment Location PowerMgmt ProtServ SwEvent SurroundingsDD ReadDeviceData WriteDeviceData TrustedUI
Now, on to what we have now - the 2.0.0 release.
On the brighter side:
- Repeat support added 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.
- Python Runtime and application sis can be on different drives. The limitation of both should be installed on the same drive is eliminated.
- 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
- The latest PyS60 document is available online on maemo.garage
- Couple of defects are fixed with this release. Refer release notes for more details.
Python for S60 source will be made available soon in Symbian Foundation, so that users can contribute easily and actively to the growth of PyS60.
Here are couple of the things that are worse in 2.0.0 when compared to 1.4.5:
- There is an additional dependency to the OpenC libraries, which must be installed for the runtime to work.
- Sadly, S60 2.x devices are not supported by the new code-base, and never will be. This is because OpenC libraries aren't available for S60 2.x.
All users are recommended to upgrade.
Bug reports and feature requests can be filed in mamemo garage. That's what we track regularly, not every thread in the discussion board.
If you post a bug report only in the DiBo, we might miss it.
Feature Requests: https://garage.maemo.org/tracker/?at...54&func=browse
When filing bugs, include the device you used, its firmware version (you can see this by entering *#0000# in the idle screen), the PyS60 version
and a minimal test case (if applicable).
For more details on reporting bugs refer the "Reporting Bugs" section of the Python documentation.
That's it for now. Try it out, send feedback and stay tuned.
-- Python for S60 team