← Back to team overview

xpresser-team team mailing list archive

Re: Welcome

 

On 02/23/2012 01:18 PM, Christian Tismer wrote:
On 2/23/12 6:33 PM, Christian Tismer wrote:
On 2/23/12 5:38 PM, Chris Wayne wrote:
Welcome everyone, to the newly created Xpresser Team!

First of all, I'd like to thank Gustavo for all the great work he's
done by creating/maintaining xpresser for such a long time.

I'd just like to briefly discuss the top priority for development of
Xpresser today, and that is the GTK3 port. Without this, Xpresser
will not work natively in Precise, which could cause a lot of
problems for a lot of people. So our main goal is to finish the GTK3
port of Xpresser before 12.04 LTS is released.

There is already a work-in-progress for this port (thanks Gustavo!)
that can be found here:
https://code.launchpad.net/~niemeyer/xpresser/gtk3-port and a
blueprint can be found here:
https://blueprints.launchpad.net/xpresser/+spec/xpresser-gtk3-port


Does anyone have any ideas/plans for the best ways to accomplish
this? From what I understand from Gustavo, the issue currently is
that in GTK3, there is no quick way to get a numpy array of pixels
from a framebuffer, which is how Xpresser worked in GTK2 (feel free
to correct me if I'm wrong!)


Howdy!

Interesting, I didn't expect that. How comes that GTK3 is crucial?
My internal plan was the opposite - getting rid of GTK alltogether
and using QT for as much as possible, because PySide seems to
be very capable meanwhile.
The interfacing to NumPy is no problem then, ASFAICT.

cheers - Chris (name clash)


Correcting myself:
I think it is a design error to carve _any_ toolkit or GUI in stone.
There things should be configurable and need an API that describes
the necessary functionality, which is then mapped onto certain
configurations.


Agreed. A library of calls available without a platform specific bias is the correct design methodology.

That said, Canonical is currently in the middle of several high profile projects using Xpresser that will cease to be tested if we do not get a port to GTK3 complete by April.

I think your ideas are good and definitely a direction I am excited to explore. I think some UDS blueprints would be a good place to open the discussion about the future direction of the project. We can then plan based on feedback and begin development in the next cycle of Ubuntu (Q).

Until then, however, any assistance you can provide with porting would be greatly appreciated.

I have also added some more in-line comments below.


Kepping this choice open and not forcing the user/developer to
finally decide makes the project more valuable and flexible.
It also avoids that specifics of GTK, QT or what ever show up
through the whole layout, which would influencing the overall design.

So I'm actually trying to draw a slightly bigger picture with pluggable
components.

Understood and interesting.


To get more specific again:
What is "Precise"? I tried to find out with not much effort, and I have
to admit that I'm not a Ubuntu developer, but seeking for the simplest
efficient solutions.

Precise Pengolin = Ubuntu 12.04


My intention is to make things run smoothly under
- OS X
- Windows
- Linux (Debian)

We may have to compromise on that order a bit. :-)


which is the order of importance for me.

Then, I would like to include a different approach as an option, which
is of value for testing: Using a VNC interface instead of direct frame
grabbing. This gives more flexibility and a better abstraction and allows
to decouple the system under test from the OS of the test implementation.


This is also an interesting idea and worth discussing further. It would also allow us to build a recording interface abstracted from the system under test. I like it.



Not saying that I want to actually do everything, but to keep the choices
open.

Well, enough brain dump for now ;-)

cheers - chris




--
Chris Gregan
Project Quality Manager
Professional and Engineering Services
Canonical USA Inc.
cgregan@xxxxxxxxxxxxx
cgregan[irc.freenode.net]
W-781-761-9448

----
1024/8806032D
E70F 7391 6C78 9B9E 6461 1CC7 B168 E1E7 8806 032D


References