gcc-python-plugin is a plugin for GCC 4.6 onwards which embeds the
CPython interpreter within GCC, allowing you to write new compiler
warnings in Python, generate code visualizations, etc.
It ships with "gcc-with-cpychecker", which implements static analysis
passes for GCC aimed at finding bugs in CPython extensions. In
particular, it can automatically detect
reference-counting errors:
http://gcc-python-plugin.readthedocs.org/en/latest/cpychecker.html
The major features in this release are:
* gcc 4.9 compatibility
* a major revamping to the HTML output from
gcc-with-cpychecker
More detailed information on these and details of the other changes can
be seen in the release notes at:
http://gcc-python-plugin.readthedocs.org/en/latest/0.13.html
Tarball releases are available at:
https://fedorahosted.org/releases/g/c/gcc-python-plugin/
Prebuilt-documentation can be seen at:
http://gcc-python-plugin.readthedocs.org/en/latest/index.html
The project's homepage is:
https://fedorahosted.org/gcc-python-plugin/
The plugin and checker are Free Software, licensed under the GPLv3 or
later.
Thanks to Buck Golemon, Denis Efremov, Philip Herron, and Tom Tromey for
their contributions to this release.
Enjoy!
Dave Malcolm
Microsoft has released a compiler package for Python 2.7 to make it easier for people to build and distribute their C extension modules on Windows.
The Microsoft Visual C++ Compiler for Python 2.7 is available from: http://aka.ms/vcpython27
This package contains all the tools and headers required to build C extension modules for Python 2.7 32-bit and 64-bit (note that some extension modules require 3rd party dependencies such as OpenSSL or libxml2 that are not included). Other versions of Python built with Visual C++ 2008 are also supported.
You can install the package without requiring administrative privileges and, with the latest version of setuptools, use tools such as pip, wheel, or a setup.py file to produce binaries on Windows.
(Note: This version of Visual C++ is no longer supported by Microsoft, and so new features, support, or bug fixes are not available.)
________________________________________________________________________
ANNOUNCING
eGenix PyCon UK 2014 Talks & Videos
This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/PyCon-UK-2014-Presentations.html
________________________________________________________________________
We have just published the talk slides and videos of our PyCon UK 2014
presentations.
The PyCon UK Conference is the premier conference for Python users and
developers in the UK. This year it was held from September 19-22 in
Coventry, UK.
________________________________________________________________________
EGENIX TALKS AT PYCON UK 2014
At this year's PyCon UK, Marc-André Lemburg, CEO of eGenix, gave the
following talks at the conference. The presentations are available for
viewing and download from our Presentations and Talks section:
http://www.egenix.com/library/presentations/
When performance matters ...
----------------------------
Simple idioms you can use to make your Python code run faster and
use less memory.
Python applications sometimes need all the performance they can
get. Think of e.g. web, REST or RPC servers. There are several ways
to address this: scale up by using more processes, use Cython, use
PyPy, rewrite parts in C, etc.
However, there are also quite a few things that can be done directly
in Python. This talk goes through a number of examples and show
cases how sticking to a few idioms can easily enhance the
performance of your existing applications without having to revert
to more complex optimization strategies.
The talk was complemented with a lightning talk titled "Pythons and
Flies", which addresses a memory performance idiom and answers one
of the audience questions raised in the above talk.
Talk video and slides:
http://www.egenix.com/library/presentations/PyCon-UK-2014-When-performance-…
Python Web Installer
--------------------
Installing Python packages is usually done with one of the available
package installation systems, e.g. pip, easy_install, zc.buildout,
or manually by running "python setup.py install" in a package
distribution directory.
These systems work fine as long as you have Python-only
packages. For packages that contain binaries, such as Python C
extensions or other platform dependent code, the situation is a lot
less bright.
In this talk, we present a new web installer system that we're
currently developing to overcome these limitations.
The system combines the dynamic Python installation interface
supported by all installers ("python setup.py install"), with a web
installer which automatically selects, downloads, verifies and
installs the binary package for your platform.
Talk video and slides:
http://www.egenix.com/library/presentations/PyCon-UK-2014-Python-Web-Instal…
If you are interested in learning more about these idioms and
techniques, eGenix now offers Python project coaching and consulting
services to give your project teams advice on how to achieve best
performance and efficiency with Python:
http://www.egenix.com/services/coaching/
Please contact our eGenix Sales Team for information: sales(a)egenix.com.
________________________________________________________________________
INFORMATION
About Python (http://www.python.org/):
Python is an object-oriented Open Source programming language
which runs on all modern platforms. By integrating ease-of-use,
clarity in coding, enterprise application connectivity and rapid
application design, Python establishes an ideal programming
platform for today's IT challenges.
About eGenix (http://www.egenix.com/):
eGenix is a software project, consulting and product company
focusing on expert project services and professional quality
products for companies, Python users and developers.
Enjoy,
--
Marc-Andre Lemburg
eGenix.com
Professional Python Services directly from the Source (#1, Sep 29 2014)
>>> Python Projects, Consulting and Support ... http://www.egenix.com/
>>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
________________________________________________________________________
2014-09-30: Python Meeting Duesseldorf ... tomorrow
::::: Try our mxODBC.Connect Python Database Interface for free ! ::::::
eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
Registered at Amtsgericht Duesseldorf: HRB 46611
http://www.egenix.com/company/contact/
A pair of basic tkinter desktop utility programs that others
may find useful:
1) frigcal -- a "refrigerator" style calendar desktop GUI
2) mergeall -- do-it-yourself "cloud" storage, script + GUI
Both were coded in part as supplements for book readers, but
have grown useful enough to merit a wider post and broader
user testing. Feedback welcome; details follow.
------------------------------------------------------------------------
1) frigcal -- a "refrigerator" style calendar desktop GUI
Documentation:
http://learning-python.com/README-frigcal.html
Download:
http://learning-python.com/frigcal.zip
Screenshots:
http://learning-python.com/screenshots/01-win7-main-window.pnghttp://learning-python.com/screenshots/02-win7-clones-and-images.pnghttp://learning-python.com/screenshots/
A Python 3.X program that implements a basic personal calendar GUI.
It uses portable iCalendar files for event storage, and sports Python
coded configuration, persistent events, event colorization, multiple
calendar files, multiple month windows, and automatic calendar backups.
This program is not an Outlook replacement: it does not implement tools
such as task scheduling, journaling, alarms, invitations, or recurring
or multiday events. In exchange for its limited utility, though, this
program minimizes code and GUI complexity; reduces the risk of data loss;
and yields a calendar sufficient for most personal needs, that requires
neither a subscription nor an account log-in.
------------------------------------------------------------------------
2) mergeall -- do-it-yourself "cloud" storage, script + GUI
Documentation:
http://www.rmi.net/~lutz/mergeall.html
Download:
http://www.rmi.net/~lutz/mergeall.zip
Screenshots:
http://www.rmi.net/~lutz/launch-mergeall-GUI-screenshot-main.pnghttp://www.rmi.net/~lutz/mergeall-desktop-screenshot-tablet.pnghttp://www.rmi.net/~lutz/mergeall-desktop-screenshot-linux.png
A Python 3.X/2.X script and GUI useful for managing backups and changes
in multiple copies of large directory trees (folders). Designed to
quickly synchronize changes in content mirrored across multiple devices
such as laptops, tablets, and USB flashdrives, this program in some
contexts can provide a manual alternative to cloud-based storage.
Directory tree synchronization isn't the same as a "cloud," of course;
but together with fast local storage devices, this program might just
help you avoid paying to store your personal data at sites that may
share it with, or sell it to, both advertisers and government agencies
(who, shockingly, may not have your best interest at heart).
------------------------------------------------------------------------
Cheers,
--Mark Lutz (http://learning-python.com, http://www.rmi.net/~lutz)
I am pleased to announce the release of mds-utils 2.1.0
<http://www.micheledestefano.joomlafree.it/en/mds-utils.html>.
Features summary
---------------------------
MDS-UTILS provides:
1. a tool for detecting machine endianity.
2. utilities for the Boost uBLAS library. Amongst them, some type traits
for detecting different uBLAS matrix types.
3. some useful classes that allow to treat the old C FILE pointer as a
C++ stream.
4. C++ wrappers of the main Python objects, independent of those in
Boost Python. Wrappers are provided also for NumPy arrays.
5. C++ classes that help on treating Python file objects as C++ streams.
6. a review and refactor of the indexing support in Python extensions.
Now access in write mode is supported too.
7. new C++ *to-Python* and *from-Python* converters for some *Boost
uBlas* objects and for standard Python objects. These converters do not
depend on Boost Python.
8. a new sequence iterator that is able to wrap Python sequences and
allows also to modify them. This feature does not depend on Boost.Python.
9. the NDArrayIterator class, that wraps the Numpy C-API iterator and
allows easy management of conversions to/from Numpy arrays.
10. some SWIG interface files, for easy integration with SWIG extensions
for Python.
Each class is a well-documented, small, easy to use and it should never be
too difficult to learn to use it.
A large percentage of this library makes a heavy usage of the Boost C++
libraries <http://www.boost.org/>: so, they must be installed on the
system. It is assumed that the user is familiar with them.
Michele De Stefano
Find a new release of python-ldap:
http://pypi.python.org/pypi/python-ldap/2.4.17
python-ldap provides an object-oriented API to access LDAP directory
servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for
that purpose. Additionally it contains modules for other LDAP-related
stuff (e.g. processing LDIF, LDAP URLs and LDAPv3 schema).
Project's web site:
http://www.python-ldap.org/
Ciao, Michael.
----------------------------------------------------------------
Released 2.4.17 2014-09-27
Changes since 2.4.16:
Lib/
* New hook syncrepl_refreshdone() in ldap.syncrepl.SyncReplConsumer
(thanks to Petr Spacek and Chris Mikkelson)
Modules/
* Added support for getting file descriptor of connection
with ldap.OPT_DESC
Hey everyone,
The "rom" package is a Redis object mapper for Python. It sports an
interface similar to Django's ORM, SQLAlchemy with the declarative base, or
Appengine's datastore.
The changelog for recent releases can be seen below my signature.
You can find the package at:
https://www.github.com/josiahcarlson/romhttps://pypi.python.org/pypi/rom
And docs can be found at:
http://pythonhosted.org/rom/
Please CC me on any replies if you have any questions or comments.
Thank you,
- Josiah
#---------------------------------- 0.28.0
-----------------------------------
[added] Composite unique constraints like SQLAlchemy's UniqueConstraint()
and
Django's unique_together, spelled and used like Django's
unique_together.
See http://pythonhosted.org//rom/rom.html#rom.Model for details.
[fixed] Deleting entities will no longer leave extra index data around
(regardless of whether the entitiy had any indexes defined).
[added] Convenience function for cleaning out old index data from deleted
entities. See and read the help on util.clean_old_index() .
[added] Convenience function util.show_progress() to show the progress of
util.refresh_indices() and util.clean_old_index() . See and read the
help
on util.show_progress() for usage.
[fixed] Tests to no longer leave testing data in db 15, and running tests
again should clean out the testing data.
[fixed] Incorrect documentation about the String column type.
#---------------------------------- 0.27.0
-----------------------------------
[changed] Added auto-tagging support for release versions pushed to PyPI.
[added] Foreign key references defined with a OneToMany and ManyToOne
relationship will now have the "one" side of the relationship deletion
optionally restrict. Thanks to https://github.com/pconerly for the
initial
request and patch.
[added] Additional warnings and tests for future on_delete behavior choices.
[fixed] Re-save issue for datetime objects, as well as any future re-save
issues (like what happened with json columns in rom 0.15). Thanks to
https://github.com/iamkhush for the bug report and example testcase that
lead to the solution.
#---------------------------------- 0.26.5
-----------------------------------
[added] the ability to selectively choose rom's session caching behavior,
see
http://pythonhosted.org//rom/rom.html#using-a-non-caching-session-object
#---------------------------------- 0.26.4
-----------------------------------
[fixed] forgot one reference that should have been fixed in 0.26.3. Everyone
should upgrade from 0.26.3 . Thanks to https://github.com/Alanperd for
the
report and test case.
#---------------------------------- 0.26.3
-----------------------------------
[fixed] issue when pattern match queries would sometimes produce more
results
than would be correct, bug report, test, and initial fix thanks to
https://github.com/Alanperd
#---------------------------------- 0.26.2
-----------------------------------
[fixed] issue when pattern-match queries wouldn't always return full
results,
bug report, test, and initial fix thanks to https://github.com/Alanperd
[fixed] two testing errors in Python 2.6.
[fixed] some test cases that weren't properly namespaced for easy cleanup.
[removed] built documention from rom source distribution (see
http://pythonhosted.org/rom/ instead).
[fixed] base documention about rom including the readme is now a part of the
docs available at http://pythonhosted.org/rom/ , thanks to
https://github.com/pconerly for the report on incomplete docs.
[fixed] added modern requirements thanks to report from
https://github.com/pconerly .
[fixed] documentation on per-model connection objects.
[removed] extraneous and confusing documentation about the `index` and
`columns` submodules.
#---------------------------------- 0.26.1
-----------------------------------
[fixed] issue with deleted entity resurrection, bug report and fix thanks to
Justin Mayfield https://github.com/mayfield
[fixed] issue with deleted entities not being completely cleared out during
delete with Lua writes enabled, bug report and fix also courtesy of
Justin
Mayfield https://github.com/mayfield
Dear all,
The latest release of TextTest includes
- Support for parallel testing using EC2 cloud
- Packaging and release process should now be smoother
- Now integrates with Git as well and bzr and hg.
- Performance data in HTML reports overhauled
and many other things besides.
Regards,
Geoff Bache
....
TextTest is a tool for automatic text-based functional testing. This
means running a batch-mode executable in lots of different ways from
the command line, and using the text output produced as a means of
controlling the behavior of that application. As well as being usable
"standalone", it is an extendable framework for black-box testing
written in Python. It's also useful as a test management tool wrapping
some other test tool as a test runner.
Homepage: http://www.texttest.org
Download: http://sourceforge.net/projects/texttest
Mailing list: https://lists.sourceforge.net/lists/listinfo/texttest-users
Bugs: https://bugs.launchpad.net/texttest
Source: https://code.launchpad.net/texttest
On behalf of the Bokeh team, I am very happy to announce the release of
Bokeh version 0.6.1!
Bokeh is a Python library for visualizing large and realtime datasets on
the web. Its goal is to provide to developers (and domain experts) with
capabilities to easily create novel and powerful visualizations that
extract insight from local or remote (possibly large) data sets, and to
easily publish those visualization to the web for others to explore and
interact with.
This point release includes several bug fixes and improvements over our
most recent 0.6.0 release:
* Toolbar enhancements
* bokeh-server fixes
* Improved documentation
* Button widgets
* Google map support in the Python side
* Code cleanup in the JS side and examples
* New examples
See the CHANGELOG for full details.
In upcoming releases, you should expect to see more new layout capabilities
(colorbar axes, better grid plots and improved annotations), additional
tools, even more widgets and more charts, R language bindings, Blaze
integration and cloud hosting for Bokeh apps.
Don't forget to check out the full documentation, interactive gallery, and
tutorial at
http://bokeh.pydata.org
as well as the Bokeh IPython notebook nbviewer index (including all the
tutorials) at:
http://nbviewer.ipython.org/github/ContinuumIO/bokeh-notebooks/blob/master/…
If you are using Anaconda or miniconda, you can install with conda:
conda install bokeh
Alternatively, you can install with pip:
pip install bokeh
BokehJS is also available by CDN for use in standalone javascript
applications:
http://cdn.pydata.org/bokeh-0.6.1.min.jshttp://cdn.pydata.org/bokeh-0.6.1.min.css
Issues, enhancement requests, and pull requests can be made on the Bokeh
Github page:
https://github.com/continuumio/bokeh
Questions can be directed to the Bokeh mailing list: bokeh(a)continuum.io
If you have interest in helping to develop Bokeh, please get involved!
Cheers,
Damián Avila
damian.avila(a)continuum.io
What is PyDev?
---------------------------
PyDev is an open-source Python IDE on top of Eclipse for Python, Jython and
IronPython development.
It comes with goodies such as code completion, syntax highlighting, syntax
analysis, code analysis, refactor, debug, interactive console, etc.
Details on PyDev: http://pydev.org
Details on its development: http://pydev.blogspot.com
What is LiClipse?
---------------------------
LiClipse is a PyDev standalone with goodies such as support for Multiple
cursors, theming and a number of other languages such as Django Templates,
Kivy Language, Mako Templates, Html, Javascript, etc.
It's also a commercial counterpart which helps supporting the development
of PyDev.
Details on LiClipse: http://brainwy.github.io/liclipse/
Release Highlights:
-------------------------------
* **Important**: PyDev requires Eclipse 3.8 or 4.3 onwards and Java 7! For
older versions, keep using PyDev 2.x (use LiClipse:
http://brainwy.github.io/liclipse for a PyDev standalone with all
requirements bundled).
* **Debugger**
* It's now possible to **attach debugger to running process in Windows
and Linux** (open debug perspective > PyDev > Attach to Process)
* pep8 upgraded to 1.5.7
* Fixed issue in dialog shown when PyDev editor is opened which could lead
to closing the IDE.
* Selecting PyQT API version using sip.setapi no longer fails in debug mode
(PyDev-452).
* Code completion tries to get docstring definition from class before
evaluating property (PyDev-412).
* Internal error error when parsing file with wrong syntax:
java.lang.ClassCastException for invalid dict (PyDev-411).
* runfile was restored in pydevconsole (Ctrl+Alt+Enter is working again).
* **Variables** and **Expressions** views working again when debugging
interactive console (PyDev-446).
* Pressing Shift to debug with Ctrl+F9 test runner now properly works in
Linux (PyDev-444).
* Fixed interpreter configuration when the interpreter prints something
before actually running interpreterInfo.py (PyDev-448).
* Fixed NullPointerException when debugging file without extension.
Cheers,
--
Fabio Zadrozny
------------------------------------------------------
Software Developer
LiClipse
http://brainwy.github.io/liclipse
PyDev - Python Development Environment for Eclipse
http://pydev.orghttp://pydev.blogspot.com