Re: [sugar] [PATCH] Merge the journal activity into the shell
On Thu, Sep 11, 2008 at 2:39 AM, Marco Pesenti Gritti [EMAIL PROTECTED] wrote: On Wed, Sep 10, 2008 at 2:58 PM, Tomeu Vizoso [EMAIL PROTECTED] wrote: * I wonder if it would be easier to add a builtin journal activity to the registry, instead of special casing the model. Not sure, a couple of ifs may be less confusing. Hmmm not fully convinced, but I don't have a strong feeling. Something we can easily refactor anyway. The patch seem to have caused some pylint regressions: http://buildbot.sugarlabs.org/builders/fedora9-x86_64-quick/builds/177/steps/pylint/logs/stdio Fixed and some warnings at runtime (they don't prevent the activity to start): http://buildbot.sugarlabs.org/builders/fedora9-x86_64-quick/builds/177/steps/ui-check/logs/stdio Looks to be a 64 bit problem. File /home/buildbot/slave/fedora9-x86_64-quick/build/install/lib/python2.5/site-packages/olpc/datastore/xapianindex.py, line 471, in search checkatleast=sys.maxint) File /home/buildbot/slave/fedora9-x86_64-quick/build/install/lib/python2.5/site-packages/secore/searchconnection.py, line 610, in search mset = enq.get_mset(startrank, maxitems, checkatleast) OverflowError: in method 'Enquire_get_mset', argument 4 of type 'Xapian::doccount' sys.maxint is too big for Xapian. Any better idea than hardcoding 2**31-1 ? Regards, Tomeu ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] [PATCH] Merge the journal activity into the shell
On Thu, Sep 11, 2008 at 2:48 AM, Marco Pesenti Gritti [EMAIL PROTECTED] wrote: Finally, we need to drop the journal-activity module from jhbuild and from the module list on the 0.84 roadmap. And migrating translations to the sugar module :/ Sayamindu, how you would prefer to do this? Thanks, Tomeu ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] [PATCH] REVISED screenshots hurt
On Wed, Sep 10, 2008 at 11:46 PM, Erik Garrison [EMAIL PROTECTED] wrote: On Tue, Sep 09, 2008 at 12:10:41PM +0200, Tomeu Vizoso wrote: On Mon, Sep 8, 2008 at 3:44 PM, Eben Eliason [EMAIL PROTECTED] wrote: Should we verify that the activity is the active one, and that the desktop is not shown, before taking an invalid screenshot? Also, when is compositing potentially coming? Is it necessary to do this for 8.2.1 if we'll have a far better solution which handles all cases in a release or two? We have a chance of improving screenshot taking without composition, see https://dev.laptop.org/ticket/8303 . I'm slightly confused about what distinguishes this approach. You are moving the screenshot processing to the server side, correct? If you have time please clarify. We wait a long time for the server side pixmap to be copied to the client side. If we scaled in the server side instead, we transfer a much smaller pixmap. We may save as well some implicit format conversion that may happen inside gtk. Have you tested the change on an XO running a 8.2 release candidate? You mean scaling in the server? I wrote the code attached to the ticket about one year ago and then ran out of time before managed to have it working reliably. May have been a bug in the driver (that may have already been fixed), or just me not getting what X hacking is about. If someone could give it a try, may be worth it. Regards, Tomeu ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] [PATCH] Merge the journal activity into the shell
On Thu, Sep 11, 2008 at 9:26 AM, Tomeu Vizoso [EMAIL PROTECTED] wrote: http://buildbot.sugarlabs.org/builders/fedora9-x86_64-quick/builds/177/steps/ui-check/logs/stdio Looks to be a 64 bit problem. File /home/buildbot/slave/fedora9-x86_64-quick/build/install/lib/python2.5/site-packages/olpc/datastore/xapianindex.py, line 471, in search checkatleast=sys.maxint) File /home/buildbot/slave/fedora9-x86_64-quick/build/install/lib/python2.5/site-packages/secore/searchconnection.py, line 610, in search mset = enq.get_mset(startrank, maxitems, checkatleast) OverflowError: in method 'Enquire_get_mset', argument 4 of type 'Xapian::doccount' sys.maxint is too big for Xapian. Any better idea than hardcoding 2**31-1 ? Nope, we had something like that in gproperties and we had to hardcode :( Actually I didn't even spot that one. I was talking about this, which happens also on x86: Traceback (most recent call last): File /home/marco/sugar-jhbuild/install/share/sugar/shell/view/Shell.py, line 93, in __launch_started_cb if home_activity.is_journal(): File /home/marco/sugar-jhbuild/install/share/sugar/shell/model/homeactivity.py, line 176, in is_journal return self.get_type() == 'org.laptop.JournalActivity' File /home/marco/sugar-jhbuild/install/share/sugar/shell/model/homeactivity.py, line 172, in get_type return wm.get_bundle_id(self._window) File /home/marco/sugar-jhbuild/install/lib/python2.5/site-packages/sugar/wm.py, line 29, in get_bundle_id window = gtk.gdk.window_foreign_new(wnck_window.get_xid()) AttributeError: 'NoneType' object has no attribute 'get_xid' Marco ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] Status of Wordsmith / Scrabble activity
(copying sugar@ since I'm not sure how many people are really subscribed to games@ and activities@) Hey all, I just stumbled across the concept for a Wordsmith / Scrabble activity ( http://wiki.laptop.org/go/Wordsmith(scrabble)) and now I was wondering whether anyone was actively working on the project. The last edit to said wiki page happened in mid-June and I don't remember hearing about it since then. The main reason why I'm asking is that I'll be meeting up with professors at two Austrian universities who had previously expressed interest in contributing to OLPC via student projects 1 1/2 weeks from now. I'd like to be able to offer them a short list of cool projects, software, content (aka easy wins) that they or their students could be working on over the next 6 months. Any pointers appreciated! Cheers, Christoph -- Christoph Derndorfer co-editor, olpcnews url: www.olpcnews.com e-mail: [EMAIL PROTECTED] ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] [RELEASE] sugar 0.82.4
== Sources == http://dev.laptop.org/pub/sugar/sources/sugar/sugar-0.82.4.tar.bz2 = Closed tickets = * #7480 Need to 'reset' the network configurations - short term fix * #8368 Disable the server plugin if no server was specified ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] [RELEASE] sugar-toolkit 0.82.6
== Sources == http://dev.laptop.org/pub/sugar/sources/sugar-toolkit/sugar-toolkit-0.82.6.tar.bz2 = Closed tickets = * #8394 sugar shell leaks presence service info * #8392 Remove dynamic font height computation ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] [RELEASE] etoys 3.0.2141 / etoys-activity-92
In the rush towards 8.2 I've been a bit lazy announcing new Etoys releases. But here goes: = Sources = http://dev.laptop.org/pub/sugar/sources/etoys/ http://dev.laptop.org/pub/sugar/sources/etoys-activity/ = Changes = etoys-3.0.2141 / etoys-activity-92 * Enable object chooser etoys-3.0.2139 / etoys-activity-91 * Updated translations: de * Fix saving projects with non-ascii names (#8212) * Fix buddy flap showing more buddies (#7749) etoys-3.0.2126-1 / etoys-activity-90 * Updated translations: de, ja * Support private sharing (#5280) * Do not save menu project (#8046) etoys-3.0.2121 / etoys-activity-89 * updated translations: de, mn (#7976) * Fix crash in Russian locale (#8193) * Fix logging errors (#6391) * Fix corrupted project names in Journal (#8199) * Fix Journal timestamps (#8176) * Automatically enable pango (#7610, #8163) * fix clipboard (#8199) * fix forward-direction and rotation-center halo issues (#8210) * various fixes (#7320, #7737, #8162, #8193, #8210) etoys-3.0.2100-1 / etoys-activity-88 * add translations ar, bg, fa_AF, ht, mn, mr, nl, ro, si, te, tr * update bn, el, en, es, fr, it, ko, ne, ps, pt, pt_BR, ru, sv, zh_TW * fix text input (#7737) * fix sharing error (#8129) * save timestamp in Journal (#8152) * preserve name set in Journal (#8087) * fix 'obtrudes' tile (#7931) * hide broken audio chat and screen sharing (#7745, #7746) = VM changes = For two bugs, Squeak VM changes were necessary: squeak-vm-3.10-3olpc10 * fix writing to stderr (#6391) squeak-vm-3.10-3olpc9 * respect the TZ variable used by Sugar (#8176) A huge THANKS to the developers, testers and translators! - Bert - ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] [RELEASE] Journal 99
== Sources == http://dev.laptop.org/pub/sugar/sources/journal-activity/Journal-99.tar.bz2 = Closed tickets = * #8287 8.2-757: Copy-to-clipboard broken in Journal = Testcases = #8287 Take an screenshot with alt+1, go to the journal, with the palette on the screenshot entry, select Copy. Go to the new item in the clipboard in the right frame and select Open, check that it opens correctly in Browse or Paint. ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] [RELEASE] Browse 97
sources: http://dev.laptop.org/pub/sugar/sources/web-activity/Browse-97.tar.bz2 bundled: http://dev.laptop.org/~tomeu/Browse-97.xo = Closed tickets = * #8256 Corruption of JPEG image copied from Browse activity = Testcases = #8256 Go to http://wheelstick.com/wisdom/ , scroll a bit down until the big jpeg image, right click on it and select Copy. Go to Write, and drag the selected clipboard item from the left frame into the document. Check that the image is complete. ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] Sugar-meeting REMINDER (Thursday September 11 2008 - 14.00 (UTC)) --- irc.freenode.net, #sugar-meeting
---Topics--- * Roadmap ** keep on reviewing the list we have at ReleaseTeam/Roadmap/0.84#Goals * Sugarbot Zach Riggle will be talking about the sugarbot. sugarbot is a GUI automation utility for the OLPC Project's Sugar GUI. It provides functionality for developers to write tests for their Activities, and monitor those tests in a similar manner to unit-tests. sugarbot supports continuous integration with buildbot, so that multiple platforms and host configurations may be tested seamlessly. more here: http://sugarlabs.org/go/DevelopmentTeam/Meetings#Sugarbot ---Note--- We want to limit the meeting to 45 minutes - so be prepared to a dense, quick but hopefully successful meeting :) Best, Simon ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] #7685 NORM 9.1.0: Alternate home layouts; fixed ring scaling; better modularization of layouts
I want to initiate some discussion on a similar topic to the one you bring up here, regarding the extensibility of the layouts. What I'd like to see is layout modules which provide translation from a set of input coordinates to a set of output coordinates (eg, _calculate_position), which are then fed to a smooth positioning algorithm, making it possible to transition cleanly between layouts, and to rearrange layouts via drag'n'drop. Let me illustrate what I mean by way of an example. Consider the Ring view you bring up. If we define our translation function to calculate a radius based on the number of elements in the list, and then calculate the radial ordering of the elements by calculating the angle between the center of the ring and their input coordinates (atan2(y,x)), we can then equally space them around a ring spatially relative to their initial locations. The beauty of this idea is that we get drag'n'drop reordering for free. If, every time new coordinates are calculated, we animate the icons to their new target positions, we can simply drop an icon anywhere we choose on the screen and it will neatly slide into the nearest spot in the ring. Of course, the translation function could do anything. It could force things onto a grid, into a sunflower, into non-overlapping positions, etc. All of these types of layouts require merely the list of coordinates (since we assume equal size elements) as input. We can make things more interesting, however, by offering further information, both as input and output. If we define an object which represents an element in the layout, giving it size, position, orientation, name, tags, and other metadata, (all of these mutable by the translation function) it's possible to create layouts that perform logical grouping, create sortings (even in multiple dimensions), filter the input, etc. The visualization space is much greater (and think of how much fun it could be to create new layouts like this for visualizing the neighborhood view.) - Eben PS. You could raise UnimplementedException, or you could simply define the identity function in the base class. On Thu, Sep 11, 2008 at 3:07 AM, Zarro Boogs per Child [EMAIL PROTECTED] wrote: #7685: Alternate home layouts; fixed ring scaling; better modularization of layouts -+-- Reporter: cscott | Owner: marco Type: defect | Status: new Priority: normal | Milestone: 9.1.0 Component: sugar | Version: not specified Resolution: |Keywords: r? Next_action: never set |Verified: 0 Blockedby: |Blocking: -+-- Comment(by mtd): I like the (sugar) patch (it's moved to http://dev.laptop.org/git?p=users/cscott/sugar;a=summary ), especially the modularization parts. Comments on the patch are 1) there are a few times we do y = m*x+b instead of y = m * x + b that'd be nice to tidy up; and 2) I wish the RingLayout class's name could better express that it is suitable as a superclass to {Box,Triangle,Sunflower}Layout - perhaps RingLayout should be renamed BaseLayout and its _calculate_position() function should raise UnimplementedException, and then a new RingLayout defined, which implements that function as the current RingLayout does. If it were up to me it'd be r+ with those comments. I don't know when it should land, though. -- Ticket URL: http://dev.laptop.org/ticket/7685#comment:7 One Laptop Per Child http://laptop.org/ OLPC bug tracking system ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] License your bundles, please!
John Gilmore has been pushing us to get our licensing ducks in a row. The one remaining problem has been activities and content bundles: we can't legally distribute bundles that don't have a clear statement of license. I have added documentation to: http://wiki.laptop.org/go/Activity_bundles#.info_File_Format and http://wiki.laptop.org/go/Sample_library.info_file on a new 'license=' field in the activity.info and library.info files, closely modelled after the License: field in RPM packages. Now I need your help! Could you all look at any activity and content bundles you maintain, add an appropriate license statement if there isn't one already (comments at the top of source files, or a COPYING file, or a statement in the README, etc) and the add a 'license=' field to your activity.info or library.info documenting the license choice? Commenting on http://dev.laptop.org/ticket/8411 when you've done so will help me keep track of how we're doing. We will not be able to ship any activities in our G1G1 8.2 image which do not have appropriate license information -- since mstone's plan-of-the-moment is to make the first release candidate for this next week, the situation is pretty urgent. Also, we will probably need to remove any activity bundles hosted on the dev.laptop.org wiki which do not have statements of license at one point. Your help is appreciated! Thanks! --scott -- ( http://cscott.net/ ) ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] License your bundles, please!
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Thu, Sep 11, 2008 at 11:41:41AM -0400, C. Scott Ananian wrote: John Gilmore has been pushing us to get our licensing ducks in a row. The one remaining problem has been activities and content bundles: we can't legally distribute bundles that don't have a clear statement of license. There is also licensing problems in some PO-files. POT-files should replace PACKAGE with actual package name. PO-files should include both proper copyright and licensing info. As an example, the following has bogus copyright (and the actual translators do not claim copyright), and refer to bogus licensing info (the package PACKAGE does not exist): # Greek translation of Chat Activity. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Dimitris Sotiropoulos [EMAIL PROTECTED], 2007. # Simos Xenitellis [EMAIL PROTECTED], 2007. - Jonas Debian Sugar package maintainer - -- * Jonas Smedegaard - idealist og Internet-arkitekt * Tlf.: +45 40843136 Website: http://dr.jones.dk/ [x] quote me freely [ ] ask before reusing [ ] keep private -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkjJQ2MACgkQn7DbMsAkQLjleACgjUUHhYwv3opxl6pcorjKvKs+ 4H4AniUyzswVXx6SGOwtJEbt34ZmV19i =cIFy -END PGP SIGNATURE- ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] [PATCH] REVISED screenshots hurt
I have revised and tested the patches. The effects are as follows: On Fri, Sep 05, 2008 at 01:31:54AM -0300, Erik Garrison wrote: before, screenshots taken on these events: - frame visibility - tabbing start - activity next tab - activity previous tab - zoom into activity view - activity close (twice) after, screenshots taken on these events: - activity close (once) - activity keep / save I dropped the screenshot acquisition code into Activity.copy() and Activity.close() so that both user-initated 'keep' (==copy) and 'close' events (both keyboard initiated and frame-click initiated) will take screenshots for use in the journal. The patches are attached to this email. Should I make a new track ticket for this issue to log the introduction? Any objections or thoughts? Erik diff --git a/src/view/Shell.py b/src/view/Shell.py index bfaa72e..30ccd5c 100644 --- a/src/view/Shell.py +++ b/src/view/Shell.py @@ -191,8 +191,6 @@ class Shell(gobject.GObject): if level == self._model.get_zoom_level(): return -self.take_activity_screenshot() - if level == shellmodel.ShellModel.ZOOM_ACTIVITY: host = self.get_current_activity() if host is not None: @@ -209,7 +207,6 @@ class Shell(gobject.GObject): home_model = self._model.get_home() previous_activity = home_model.get_previous_activity() if previous_activity: -self.take_activity_screenshot() previous_activity.get_window().activate( gtk.get_current_event_time()) @@ -217,7 +214,6 @@ class Shell(gobject.GObject): home_model = self._model.get_home() next_activity = home_model.get_next_activity() if next_activity: -self.take_activity_screenshot() next_activity.get_window().activate(gtk.get_current_event_time()) def close_current_activity(self): @@ -229,7 +225,6 @@ class Shell(gobject.GObject): if active_activity.is_journal(): return -self.take_activity_screenshot() self.get_current_activity().close() def get_current_activity(self): diff --git a/src/view/frame/frame.py b/src/view/frame/frame.py index 6009e7f..c3f0de9 100644 --- a/src/view/frame/frame.py +++ b/src/view/frame/frame.py @@ -146,8 +146,6 @@ class Frame(object): if self._animator: self._animator.stop() -view.Shell.get_instance().take_activity_screenshot() - self.mode = mode self._animator = animator.Animator(0.5) diff --git a/src/view/tabbinghandler.py b/src/view/tabbinghandler.py index 03ce275..e3153b0 100644 --- a/src/view/tabbinghandler.py +++ b/src/view/tabbinghandler.py @@ -58,7 +58,6 @@ class TabbingHandler(object): self._tabbing = False else: shell = view.Shell.get_instance() -shell.take_activity_screenshot() self._frame.show(self._frame.MODE_NON_INTERACTIVE) diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py index f34553d..dcfeb1f 100644 --- a/src/sugar/activity/activity.py +++ b/src/sugar/activity/activity.py @@ -174,7 +174,6 @@ class ActivityToolbar(gtk.Toolbar): self._activity.copy() def __stop_clicked_cb(self, button): -self._activity.take_screenshot() self._activity.close() def __jobject_updated_cb(self, jobject): @@ -813,6 +812,7 @@ class Activity(Window, gtk.Container): copy work that needs to be done in write_file() logging.debug('Activity.copy: %r' % self._jobject.object_id) +self.take_screenshot() self.save() self._jobject.object_id = None @@ -968,6 +968,7 @@ class Activity(Window, gtk.Container): write_file() to do any state saving instead. If the application wants to control wether it can close, it should override can_close(). +self.take_screenshot() if not self.can_close(): return ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] multiple activities per bundle
[ this isn't related to 8.2 at all. greg, please ignore. :-) ] one missing piece (for me) in sugar is easy user customization of the desktop. in other window managers it's fairly trivial to create menu items (or toolbar buttons or icons...) that invoke personal favorites. under sugar, custom actions are expensive in that you need to create an activity bundle for every little one-line shell script you might want to invoke. thinking about this problem led me to the following pseudo-design, which i think could be useful in other ways as well. basically, i think a single activity bundle should be allowed to represent multiple activities. the activity.info file currently specifies the name, icon, command, etc., for an activity. this file format could be extended to allow a single bundle to expose multiple activities: [Activity] # global information for the bundle. for backward compatiblity, # any name/icon/exec information here would still be honored, # and any key/values pairs not supplied by a later section would # come from here. service_name = com.example.some_multipurpose_activity activity_version = 1 show_launcher = yes mime_types = ...some global types... [Activity someID] # values that are unique for the first sub-activity name = first-subactivity-name icon = clevericon.svg exec = /home/olpc/bin/some-command [Activity anotherIDstring] # values that are unique for the second sub-activity name = second-subactivity-name icon = evenbettericon.svg exec = /home/olpc/bin/some-other-command mime_types = ...some unique types... in addition, the commandline specification for the invoked exec commands could/should be extended with one more standard parameter to the command, which passes the secondary someID/anotherIDstring identifiers: -i activity idstring. that might eliminate the need for per sub-activity exec = lines in some cases. uses for this might be to invoke a single activity in two similar ways (e.g. debug and non-debug modes, during development), or to simply to reduce the overhead involved in creating small utility activities -- in my case i tend to create lots of small shell scripts for myself, all of which could share a bundle. another obvious example would be an ssh activity where each iconic instance on the home screen connected one to a different network host. one more thing to really make this useful would be the ability to pass customization text to the icon being displayed (not sure of the mechanics of this). picture using this to annotate the icons in the ssh activity example: icon-text = host1 and icon-text = host2. like name, this could be subject to localization. paul =- paul fox, [EMAIL PROTECTED] ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] [PATCH] REVISED screenshots hurt
On Thu, Sep 11, 2008 at 01:01:31PM -0400, C. Scott Ananian wrote: On Thu, Sep 11, 2008 at 12:39 PM, Erik Garrison [EMAIL PROTECTED] wrote: The patches are attached to this email. Should I make a new track ticket for this issue to log the introduction? Please file a trac ticket, attach the patches there, and request review using the standard sugar process. Mention the trac ticket here on sugar@, and those interested in further discussion can cc themselves on the trac ticket. http://dev.laptop.org/ticket/8432 Erik ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] License your bundles, please!
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Thu, Sep 11, 2008 at 12:56:40PM -0400, C. Scott Ananian wrote: On Thu, Sep 11, 2008 at 12:12 PM, Jonas Smedegaard [EMAIL PROTECTED] wrote: On Thu, Sep 11, 2008 at 11:41:41AM -0400, C. Scott Ananian wrote: John Gilmore has been pushing us to get our licensing ducks in a row. The one remaining problem has been activities and content bundles: we can't legally distribute bundles that don't have a clear statement of license. There is also licensing problems in some PO-files. POT-files should replace PACKAGE with actual package name. PO-files should include both proper copyright and licensing info. Could you suggest a patch to http://dev.laptop.org/git/projects/image-builder or a stand-alone script that could audit for such problems? Sorry, no. I can read and patch Python code, but write it :-/ Or, more exactly, I am slw at expressing myself in Python. Checking *.po for this should catch the ones using stander boilerplate: ^#.*(YEAR|PACKAGE|HOLDER) (if possible to limit to, say, first 10 lines of the file, some possible false positives would be avoided. I believe most of our po files are generated/maintained by a Pootle instance; Sayamindu, is patching Pootle to check for reasonable license information feasible? That would address the problem at the source. Sounds sane! Here is the sed rule I currently use to get autogenerated POT-files into shape: sed -i \ -e /^# Copyright/ s/THE PACKAGE'S COPYRIGHT HOLDER/Jonas Smedegaard [EMAIL PROTECTED]/ \ -e '/^\(# This file\|Project-Id-Version\)/ s/PACKAGE/$(DEB_SOURCE_PACKAGE)/' \ -e '/^Project-Id-Version:/ s/VERSION/$(DEB_UPSTREAM_VERSION)/' \ debian/po/templates.pot Should be ease to transform into Perl for use in Poodle. If above is applied to POT-file, autogenerated PO-files might be acceptable - depending on how well Poodle makes use of that (they are when using commandline tool msginit and similar). Would be nice if the following lines was replaced/updated too, but not necessary from a licensing perspective: # SOME DESCRIPTIVE TITLE. # FIRST AUTHOR [EMAIL PROTECTED], YEAR. Last-Translator: FULL NAME [EMAIL PROTECTED]\n Language-Team: LANGUAGE [EMAIL PROTECTED]\n - Jonas - -- * Jonas Smedegaard - idealist og Internet-arkitekt * Tlf.: +45 40843136 Website: http://dr.jones.dk/ [x] quote me freely [ ] ask before reusing [ ] keep private -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkjJWmEACgkQn7DbMsAkQLhrKgCfcm7pi7v5kml+kapHi/Zgxs/4 IU0An1BMUJ4MgnjpDhSD0C1R+18wn5wp =F82M -END PGP SIGNATURE- ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] Spreadlayout is *not* leaking
Hello, I guess this is not very useful, but the attached testcase shows how Spreadlayout is *not* leaking. Marco test.py Description: Binary data ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
Re: [sugar] Spreadlayout is *not* leaking
Actually, it is leaking when there is a large number of icons. That's because we are never removing _collisions when items are removed from the grid. I supect that's not the problem you was seeing though, Tomeu. Guppy report those... Anyway I'm attaching a random implementation of SpreadLayout, which does without the Grid. Could you give it a try to exclude the Grid from the possible culprits? Marco spreadlayout.py Description: Binary data ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] Memory leaks summary
Hello, here is a summary of what we know so far about the memory leaks related to network activity (buddies joining/leaving). 1 We was leaking the palette that we create for each buddy. Tomeu fixed it, should be in the next stable build. 2 We are still leaking the palette icons. It should not be too hard to track that down. Failing that we can make the palette lazy to work around the problem for 8.2.0. It's something we should be doing anyway to save memory and cpu. 3 If I disable the palette completely I still get some leaking. I'm using a script that continuously create and destroy 10 buddies. Here is typical relative memory consumption reported by guppy (running it in a loop of 5 seconds). Note that I completely disabled the sugar shell model and view before taking this data. Partition of a set of 1108 objects. Total size = 104160 bytes. Index Count % Size % Cumulative % Kind (class / dict of class) 0174 1623664 23 23664 23 dict (no owner) 1 82 715144 15 38808 37 str 2 50 510680 10 49488 48 unicode 3120 11 7920 8 57408 55 dbus.String 4 80 7 7360 7 64768 62 dbus.connection.SignalMatch 5 10 1 5280 5 70048 67 dbus.Dictionary 6 10 1 5200 5 75248 72 dict of 0x94254cc 7 10 1 5200 5 80448 77 dict of dbus.proxies.ProxyObject 8 80 7 4480 4 84928 82 function 9 91 8 4448 4 89376 86 list 16 more rows. Type e.g. '_.more' to view. Does that mean we have a leak in sugar.presence? The code I'm using: diff --git a/src/main.py b/src/main.py index 1ccfbb8..3ab0e52 100644 --- a/src/main.py +++ b/src/main.py @@ -79,8 +79,17 @@ def _software_update_cb(): home_box = shell.home_window.get_home_box() home_box.show_software_updates_alert() +import guppy +heapy = guppy.hpy() + +def _heapy_cb(): +print heapy.heap() +heapy.setref() +return True + def main(): gobject.idle_add(_shell_started_cb) +gobject.timeout_add(5000, _heapy_cb) try: logsmanager.setup() 4) The grid layout is leaking objects when collision solving fails (i.e. you have a very full mesh view). We are probably not hitting this case in testing, but still should be fixed. Marco ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar
[sugar] control panel keeps focus
Was using the Control Panel (called up from the palette of the central icon in Home View). Wanted to see which users were online, so pressed the key to take me to Neighborhood View. But could see very little of the Neighborhood View, since the XO was still showing me the Control Panel as occupying most of the screen. My question -- should the Control Panel be associated with Home View, such that calling up any other screen would hide the Control Panel, and allow the information from that other screen to occupy the entire display area -- or should the Control panel take over what the user sees, such that the user would have to complete what he was doing with the Control Panel in order for the Control Panel _NOT_ to overlay any other screen that the use might wish to see ? mikus ___ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar