Re: [Sugar-devel] [IAEP] stepping down as maintainer
Hi David, I think everyone agrees that Tomeu stepping down as a maintainer is a big loss. I join my voice to those who already expressed this and my thanks to Tomeu for all the crazy work he's been achieving here - and it's not only lines of code, it's also a general welcoming and helping attitude, which is priceless. I did a small experiment: I clicked on the Getting involved button. I'm not falling into those categories: developer, designer, educator, content writer. I can help as a translator (I did so in the past) and as a people person. So I clicked on the People person button. I understand the projects listed here and how I can help them: marketing team, documentation team, deployment team, local labs, soas. Here is my list (preference order) : - *Local labs*: I will try to have more people involved in Sugar from France. Since early october, we have at least two new members of OLPC who will work more on Sugar. - *Sugar on a stick*: together with other members, I will try to develop a french Soas. - *Marketing team*: [sadly enough, we don't seem to have news from Sean. Hopefully nothing bad happened to him - he's usually very responsive.] My role here could be a general outreach role: trying to translate marketing documents, speak more about Sugar in events, etc. I'm addressing this message to you since your the contact for this role. :) There is something I miss in the list of teams/projects for people persons: community management. This is very different from marketing and outreach. Maybe this project/role could be advertized somewhere on the wiki. I'll keep this list updated about progress I make in this role. PS: I don't dwell on Sugar criticism because I fail to grok how this could help us go ahead and keep moving forward. Criticism is useful when resources are growing, not when they are shrinking. -- Bastien ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] stepping down as maintainer
On 19 October 2010 17:50, Tomeu Vizoso to...@sugarlabs.org wrote: Hi, for personal reasons have to drastically reduce my involvement in the project. Will be leaving maintenance of my modules and unsubscribing from the mailing lists. My place on the board is vacant from now on and I'll be adding to the wiki the new vacancies: http://wiki.sugarlabs.org/go/Vacancies Cheers and good luck, Tomeu Thank you for all the help and handholding :) I wish you all the best. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Dextrose] [PATCH v5 sugar] Pulsing icon delayed by 5 seconds or so SL#2080
The present issue has two possible scenarios of solving it 1) Optimise the present pulsing icon animation to reduce the delay : Thats what I have worked towards till now in my patches. 2)Replace the present pulsing icon animation with a better and faster animation: Thats what I think everyone agrees to be the best solution of the issue right now. If we're still taking about the v5 patch that was posted to the list, I don't understand how this change is supposed to fix the bug: +if self._count 2: + self.update() +self._count = self._count + 1 The animation of the pulsing icon is basically constituted by filling the raw svg icon with colours based on a sinusoidal function and it is this sinusoidal filling of the colour that brings about the pulsing effect , so if we dont fill the icon with colour then the icon wont pulse and would render and appear as a raw svg icon only which undoubtedly will take lower system resources to get rendered than the animation. Skipping the first frame of the animation unconditionally is wrong and isn't the same thing of skipping frames dynamically, based on the time elapsed to render the previous frame. I feel like we're trying a number of random tweaks without addressing the root cause of the problem. The first frame of the animation is not being skipped but its just not being filled with colour so as to make the pulsing icon animation start earlier and I hope we both agree on the fact that the delay is caused due to the time taken for the rendering of the zoom in and zoom out animation for the first frame. So if the load of processing the first frame would have been reduced somehow then the animation would start earlier and this approach was confirmed by positive log results upon benchmarking the whole scenario before and after the fix. Perhaps Anurag could work on a fix in team with other Seeta developers? -- // Bernie Innocenti - http://codewiz.org/ \X/ Sugar Labs - http://sugarlabs.org/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
On Sun, Oct 24, 2010 at 7:55 AM, Bastien bastien.gue...@wikimedia.fr wrote: Hi David, I think everyone agrees that Tomeu stepping down as a maintainer is a big loss. I join my voice to those who already expressed this and my thanks to Tomeu for all the crazy work he's been achieving here - and it's not only lines of code, it's also a general welcoming and helping attitude, which is priceless. I did a small experiment: I clicked on the Getting involved button. I'm not falling into those categories: developer, designer, educator, content writer. I can help as a translator (I did so in the past) and as a people person. So I clicked on the People person button. I understand the projects listed here and how I can help them: marketing team, documentation team, deployment team, local labs, soas. Here is my list (preference order) : - *Local labs*: I will try to have more people involved in Sugar from France. Since early october, we have at least two new members of OLPC who will work more on Sugar. - *Sugar on a stick*: together with other members, I will try to develop a french Soas. - *Marketing team*: [sadly enough, we don't seem to have news from Sean. Hopefully nothing bad happened to him - he's usually very responsive.] My role here could be a general outreach role: trying to translate marketing documents, speak more about Sugar in events, etc. Bastien, Thank you for all you have done and being the first person to _step_up_ and identify yourself as willing (and from your past performance -- able) to commit to working on a much needed set of tasks. I'm addressing this message to you since your the contact for this role. :) There is something I miss in the list of teams/projects for people persons: community management. This is very different from marketing and outreach. Maybe this project/role could be advertized somewhere on the wiki. I'll keep this list updated about progress I make in this role. PS: I don't dwell on Sugar criticism because I fail to grok how this could help us go ahead and keep moving forward. +1. The focus is not criticism or even discussion. The criticism is a call to action -- Sugar Labs needs help. The focus is the generous response of people like you going though the process of: 1. Determining what can be done to make Sugar and Sugar Labs better. 2. Identifying how you can apply your time and specific talents to those needs. 3. Making the public commitment to work on a few specific needs. david Criticism is useful when resources are growing, not when they are shrinking. -- Bastien ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Dextrose] [PATCH v5 sugar] Pulsing icon delayed by 5 seconds or so SL#2080
The first frame of the animation is not being skipped but its just not being filled with colour so as to make the pulsing icon animation start earlier and I hope we both agree on the fact that the delay is caused due to the time taken for the rendering of the zoom in and zoom out animation for the first frame. So if the load of processing the first frame would have been reduced somehow then the animation would start earlier and this approach was confirmed by positive log results upon benchmarking the whole scenario before and after the fix. Can you show the result or your tests? Gonzalo ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Excerpts from David Farning's message of Sun Oct 24 06:42:24 +0200 2010: Sugar Labs lost its lead developer. It is unfortunate that no-one has done a public review of the reasons and implications of Tomeu quiting. Tomeu's leaving is significant enough that Sugar Labs should take a hard look at what is working, what is not working, and how to fix the pieces that are not working. Was there something going on behind the scenes? From Tomeus mail I would have thought his reasons were entirely personal ones (i.e. something like having to take care of his parents or his girlfriend not wanting to have to share him with Sugar Labs anymore). At the risk of angering pretty much everybody Thanks for asking hard questions! Sugar Labs is certainly living in interesting times [6] and will continue to do so in the near to medium future. Premise 1. Sugar is open source, written in python, and the source is easily available. Therefore kids will develop and improve Sugar. Premise 2. Sugar is open source, written in python, and the source is easily available. Therefore deployments will develop Sugar. What fraction of useful and usable improvements have been committed into sugar by deployments. [Premise 2 pulled up] Your premises 1-2 are not useful because they fail to make an important distinction: Hacking Sugar might be easy, but producing something that is good enough for millions of users is hard. Sugar Labs is trying to build a product with exceptional goals (Collaboration [1], Journaling [2], easy hacking [3], Security [4] to name a few). It's only natural that this requires extraordinary capability of the people involved. Hacking is easy. Everyone can learn it. But building a complex system that works _well_ is a craft. It requires years of experience. You can't teach it in front a class and expect students to be good at it. Sure, a lot of the knowledge taught at university can be useful, but it isn't sufficient. I've seen teenagers write better programs than most of the (ex-)students I know that finished information science. Additionally, we are working with technologies that are often bleeding edge and with complex interactions that even I (as an experienced Sugar developer) don't understand fully. This means there a few people experienced enough to work on Sugar core and a steep learning curve. Fortunately, there are ways to manage complexity without requiring everybody to be a genius. I highly recommend reading the iMatix essay about software design [5] at least once. It still requires at least one exceptional developer (called architect in the essay) and hard work (e.g. writing test suites). The current design is quite monolithic with virtually no automated testing. It's fine for Proof-of-Concept code, but not sound for an actual product. Bugs in one part can affect the entire system (e.g. the pass phrase dialog locking up the entire UI); the only way to discover bugs is by exposing humans to the software. This makes it even more important to accept only high-quality code into Glucose. My long-term goal is to split up and factor out as much possible from the Shell: - moving out our custom functionality into mainstream components like NetworkManager (for automatic Ad-Hoc/Mesh network selection), window managers / pagers / panels (parts of or the entire Frame), - separating independent functions into individual processes (Journal) - using (now-)standard protocols. I firmly believe this will make Sugar easier to maintain (we can tap on the resources of the mainstream projects), more reliable, easier to customise and enhance. The latter will facilitate a growing developer community. In theory this premise is sound, and desirable, the overall technical capabilities of a nation will improve as more people are exposed to Sugar at an early age. The question become what is the time lag between exposure to Sugar and useful contribution to Sugar? Depends entirely on your definition of useful contribution. Fixing a typo: as low as one day (with outside help). Writing a useful activity: a few weeks or months maybe. Non-trivial patches to Glucose: Several years minimum. Sugar Labs is lead by veto rather than vision. A _symptom_ is the development process. It it easy to have fix commited to Fedora or OLPC. It is hard to have a fix commited to Sugar Labs. When someone sends a useful fix to either OLPC or Fedora, a senior developer takes the patch, review it, fixes it up (if necessary) and thanks the contributor. This provides an incentive and on-ramp for less experienced developers to participate and contribute. I am certainly guilty of this attitude, so let me state my intentions: Creating good patches (code contributions) can only be learned by doing. Improvements to the personal style and abilities only happen if there's something you know you can (and want to) improve on. This is at least my personal experience. So rather than accepting a patch and fixing it up
Re: [Sugar-devel] [PATCH v6 sugar] Downgrading activities not allowed. (SL #2164)
On Sun, Oct 24, 2010 at 12:21:13AM +0530, anub...@seeta.in wrote: Activity can be downgraded on the availability of an older .xo version of an activity. An alert pops up on downloading an older .xo file of an activity, which asks the user to make a selection on whether to move to an older activity version or not. Co-authored-by: Anubhav Aggarwal anub...@seeta.in, Shanjit Singh Jajmann shan...@seeta.in --- v1 - v2. Inline function used, signal emission condition revised and global variables removed. Recommendations by James Cameron and Aleksey Lim added. v2 - v3. Used misc.resume. v3 - v4. Changes in the copyright of the new file. v4 - v5. Alert shown in the same window as the journal. v5 - v6. Static variable removed, name of the functions changed. Recommendations by James Cameron and Aleksey Lim added. src/jarabe/journal/journalactivity.py |6 ++-- src/jarabe/journal/journalwindow.py | 33 +++ src/jarabe/journal/misc.py| 56 +++-- src/jarabe/model/bundleregistry.py|7 +++- 4 files changed, 87 insertions(+), 15 deletions(-) create mode 100644 src/jarabe/journal/journalwindow.py diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py index 44cc018..a48063b 100644 --- a/src/jarabe/journal/journalactivity.py +++ b/src/jarabe/journal/journalactivity.py @@ -44,6 +44,7 @@ from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal.objectchooser import ObjectChooser from jarabe.journal.modalalert import ModalAlert from jarabe.journal import model +from jarabe.journal.journalwindow import JournalWindow J_DBUS_SERVICE = 'org.laptop.Journal' J_DBUS_INTERFACE = 'org.laptop.Journal' @@ -102,11 +103,10 @@ class JournalActivityDBusService(dbus.service.Object): def ObjectChooserCancelled(self, chooser_id): pass -class JournalActivity(Window): +class JournalActivity(JournalWindow): def __init__(self): logging.debug(STARTUP: Loading the journal) -Window.__init__(self) - +JournalWindow.__init__(self) self.set_title(_('Journal')) self._main_view = None diff --git a/src/jarabe/journal/journalwindow.py b/src/jarabe/journal/journalwindow.py new file mode 100644 index 000..957f1eb --- /dev/null +++ b/src/jarabe/journal/journalwindow.py @@ -0,0 +1,33 @@ +#Copyright (C) 2010 Software for Education, Entertainment and Training Activities +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +import gtk +from sugar.graphics.window import Window + + +_journal_window = None + + +class JournalWindow(Window): + +def __init__(self): +global _journal_window +Window.__init__(self) +_journal_window = self + + +def get_journal_window(): +return _journal_window diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py index 32a2847..388837c 100644 --- a/src/jarabe/journal/misc.py +++ b/src/jarabe/journal/misc.py @@ -27,8 +27,10 @@ from sugar.activity import activityfactory from sugar.activity.activityhandle import ActivityHandle from sugar.graphics.icon import get_icon_file_name from sugar.graphics.xocolor import XoColor +from sugar.graphics.alert import ConfirmationAlert from sugar import mime from sugar.bundle.activitybundle import ActivityBundle +from sugar.bundle.bundle import AlreadyInstalledException from sugar.bundle.contentbundle import ContentBundle from sugar import util @@ -36,6 +38,7 @@ from jarabe.view import launcher from jarabe.model import bundleregistry, shell from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal import model +from jarabe.journal import journalwindow def _get_icon_for_mime(mime_type): generic_types = mime.get_all_generic_types() @@ -150,6 +153,7 @@ def get_activities(metadata): def resume(metadata, bundle_id=None): registry = bundleregistry.get_registry() +version_downgrade = False if is_activity_bundle(metadata) and bundle_id is None: @@ -159,19 +163,24 @@ def resume(metadata, bundle_id=None): bundle = ActivityBundle(file_path) if not registry.is_installed(bundle):
Re: [Sugar-devel] [PATCH v6 sugar] Downgrading activities not allowed. (SL #2164)
On Sun, Oct 24, 2010 at 04:23:22PM +, Aleksey Lim wrote: On Sun, Oct 24, 2010 at 12:21:13AM +0530, anub...@seeta.in wrote: +alert.props.title = _('Older Version Of ' + bundle.get_name() \ + + ' Activity') +alert.props.msg = _('Do you want to downgrade to version ' + \ + str(bundle.get_activity_version()) + ' ?') this usage of _() will break translation, text in _() should be a static string, better to use something like: alert.props.title = _('Older Version Of %(bundle_name)s Activity') % bundle.get_name() oops, sorry alert.props.title = _('Older Version Of %(bundle_name)s Activity') % {'bundle_name': bundle.get_name()} -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Dextrose] [PATCH v5 sugar] Pulsing icon delayed by 5 seconds or so SL#2080
Congratulations -- and welcome to the world of hacking:) This email represents the crux of problem solving. All of the git, python, pep8, variable name, stuff is just syntax and semantics. Important to follow or you get 'errors and warnings':) At it's core 'hacking' is identifying and solving problems. david On Sun, Oct 24, 2010 at 10:53 AM, Anurag Chowdhury anu...@seeta.in wrote: The present issue has two possible scenarios of solving it 1) Optimise the present pulsing icon animation to reduce the delay : Thats what I have worked towards till now in my patches. 2)Replace the present pulsing icon animation with a better and faster animation: Thats what I think everyone agrees to be the best solution of the issue right now. If we're still taking about the v5 patch that was posted to the list, I don't understand how this change is supposed to fix the bug: + if self._count 2: + self.update() + self._count = self._count + 1 The animation of the pulsing icon is basically constituted by filling the raw svg icon with colours based on a sinusoidal function and it is this sinusoidal filling of the colour that brings about the pulsing effect , so if we dont fill the icon with colour then the icon wont pulse and would render and appear as a raw svg icon only which undoubtedly will take lower system resources to get rendered than the animation. Skipping the first frame of the animation unconditionally is wrong and isn't the same thing of skipping frames dynamically, based on the time elapsed to render the previous frame. I feel like we're trying a number of random tweaks without addressing the root cause of the problem. The first frame of the animation is not being skipped but its just not being filled with colour so as to make the pulsing icon animation start earlier and I hope we both agree on the fact that the delay is caused due to the time taken for the rendering of the zoom in and zoom out animation for the first frame. So if the load of processing the first frame would have been reduced somehow then the animation would start earlier and this approach was confirmed by positive log results upon benchmarking the whole scenario before and after the fix. Perhaps Anurag could work on a fix in team with other Seeta developers? -- // Bernie Innocenti - http://codewiz.org/ \X/ Sugar Labs - http://sugarlabs.org/ ___ Dextrose mailing list dextr...@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/dextrose ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Excerpts from Bastien's message of Sun Oct 24 14:55:30 +0200 2010: There is something I miss in the list of teams/projects for people persons: community management. This is very different from marketing and outreach. Maybe this project/role could be advertized somewhere on the wiki. That's something Tomeu has been calling for for the last few months: A Community Team [1] (with a Community Team Coordinator that initiates the team). It's definitely something we need, but all of the people that I think would make excellent members of that team (alphabetical order: Bernie, David, Mel, Walter) are busy with other stuff already. Sascha [1] https://wiki.sugarlabs.org/go/Vacancies -- http://sascha.silbe.org/ http://www.infra-silbe.de/ signature.asc Description: PGP signature ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
On Sun, Oct 24, 2010 at 06:21:38PM +0200, Sascha Silbe wrote: Excerpts from David Farning's message of Sun Oct 24 06:42:24 +0200 2010: Sugar Labs lost its lead developer. It is unfortunate that no-one has done a public review of the reasons and implications of Tomeu quiting. Tomeu's leaving is significant enough that Sugar Labs should take a hard look at what is working, what is not working, and how to fix the pieces that are not working. Was there something going on behind the scenes? From Tomeus mail I would have thought his reasons were entirely personal ones (i.e. something like having to take care of his parents or his girlfriend not wanting to have to share him with Sugar Labs anymore). Well, seems at least to not be a sudden move: http://blog.tomeuvizoso.net/2010/10/now-moving-for-real.html [lots of great reflections - from both of you - snipped] For those posting thankyou mails to the list, let me share an insight passed to me recently by a fellow Debian developer: If you want to thank a person then do it discretely. Posting thankyous to a mailinglist has the side effect of boosting your own ego and, more damaging, affects similar future events: Who is appreciated enought to get many comments when leaving (or, as was the case at the debian-private list: has a baby). Hope I did not step on anyones toes with this. I certainly do not want to brag about being better than others: as said, someone just pointed out the exact same thing to me very recently. My intend is to care for the community, not only the person at the center of the various events. - Jonas -- * Jonas Smedegaard - idealist Internet-arkitekt * Tlf.: +45 40843136 Website: http://dr.jones.dk/ [x] quote me freely [ ] ask before reusing [ ] keep private signature.asc Description: Digital signature ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Dextrose] [PATCH v5 sugar] Pulsing icon delayed by 5 seconds or so SL#2080
On 24 Oct 2010, at 16:53, Anurag Chowdhury wrote: The present issue has two possible scenarios of solving it 1) Optimise the present pulsing icon animation to reduce the delay : Thats what I have worked towards till now in my patches. 2)Replace the present pulsing icon animation with a better and faster animation: Thats what I think everyone agrees to be the best solution of the issue right now. -1 from a Sugar design point of view. The zoom animation is part of the Sugar views zoom metaphor as you move from level to level (neighbourhood -- group -- home -- activity). The pulsing is an indication that the activity is still starting (unspecified/unknown amount of time hence no scroll bar, clock dial, or such quantitive measure of completion). Ideally, if launching were less than a few seconds we would not have needed the pulsing animation. We did play around with a few ideas when Wade last worked on the pulse optimisation/enhancements. He landed improvements for speed by minimising the area being redrawn, and landed the addition of the failed to launch check and button/message. He also found a few extra cpu seconds worth of improvement that didn't land in time. The trick was to fade in, _hold_, fade out, _hold_, the effect is still of pulsing activity but you can get away with less frames as you don't need to redraw anything during the hold. This doesn't effect the initial start-up however, which I believe was the original ticket... FWIW I think F14 builds have regressed for some other reason here, perhaps it's the window manager being laggy (I occasionally see window bezels before things go full screen). Regards, --Gary If we're still taking about the v5 patch that was posted to the list, I don't understand how this change is supposed to fix the bug: +if self._count 2: + self.update() +self._count = self._count + 1 The animation of the pulsing icon is basically constituted by filling the raw svg icon with colours based on a sinusoidal function and it is this sinusoidal filling of the colour that brings about the pulsing effect , so if we dont fill the icon with colour then the icon wont pulse and would render and appear as a raw svg icon only which undoubtedly will take lower system resources to get rendered than the animation. Skipping the first frame of the animation unconditionally is wrong and isn't the same thing of skipping frames dynamically, based on the time elapsed to render the previous frame. I feel like we're trying a number of random tweaks without addressing the root cause of the problem. The first frame of the animation is not being skipped but its just not being filled with colour so as to make the pulsing icon animation start earlier and I hope we both agree on the fact that the delay is caused due to the time taken for the rendering of the zoom in and zoom out animation for the first frame. So if the load of processing the first frame would have been reduced somehow then the animation would start earlier and this approach was confirmed by positive log results upon benchmarking the whole scenario before and after the fix. Perhaps Anurag could work on a fix in team with other Seeta developers? -- // Bernie Innocenti - http://codewiz.org/ \X/ Sugar Labs - http://sugarlabs.org/ ___ Dextrose mailing list dextr...@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/dextrose ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Hi Sasha, Sascha Silbe sascha-ml-reply-to-201...@silbe.org writes: Excerpts from Bastien's message of Sun Oct 24 14:55:30 +0200 2010: There is something I miss in the list of teams/projects for people persons: community management. This is very different from marketing and outreach. Maybe this project/role could be advertized somewhere on the wiki. That's something Tomeu has been calling for for the last few months: A Community Team [1] (with a Community Team Coordinator that initiates the team). Yes, I saw that. It's definitely something we need, but all of the people that I think would make excellent members of that team (alphabetical order: Bernie, David, Mel, Walter) are busy with other stuff already. If that can help, I just posted a call for help in this area on the french mailing list. Don't expect miracles though, as we are a small busy team as well :/ But making such a call public is a first step. -- Bastien ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
On Sun, Oct 24, 2010 at 11:21 AM, Sascha Silbe sascha-ml-reply-to-201...@silbe.org wrote: Excerpts from David Farning's message of Sun Oct 24 06:42:24 +0200 2010: There is the lack of accountability to stakeholders. I'm not even sure what that phrase means in the context of an Open Source community. Sascha Stakeholder is an English business term which applies to both for-profits and non-profits. A stakeholder is a person, group, organization, who affects or can be affected by an organization's actions. For example: Every contributor - Each individual has an interest in how effectively their contributions in time and talent meet the needs of the target community served by the project. OLPC* - OLPC is the primary distributor of sugar to end users. Deployments, both individually and as a group -- Deployments take the laptops + software and combine it with additional infrastructure, educational resources, and support and distribute it to school. Schools, both individually and collectively -- NZ testers -- Translators -- Researchers -- Universities like RIT -- david ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Excerpts from David Farning's message of Sun Oct 24 19:55:39 +0200 2010: On Sun, Oct 24, 2010 at 11:21 AM, Sascha Silbe sascha-ml-reply-to-201...@silbe.org wrote: Excerpts from David Farning's message of Sun Oct 24 06:42:24 +0200 2010: There is the lack of accountability to stakeholders. I'm not even sure what that phrase means in the context of an Open Source community. Stakeholder is an English business term which applies to both for-profits and non-profits. A stakeholder is a person, group, organization, who affects or can be affected by an organization's actions. It's the combination with accountability that puzzles me. _Who_ is going to be held accountable for _what_? And what are the _consequences_ of wrong behaviour/outcomes/whatever? Sascha -- http://sascha.silbe.org/ http://www.infra-silbe.de/ signature.asc Description: PGP signature ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
On 24 October 2010 05:42, David Farning dfarn...@ubuntu.com wrote: Sugar Labs lost its lead developer. It is unfortunate that no-one has done a public review of the reasons and implications of Tomeu quiting. Tomeu's leaving is significant enough that Sugar Labs should take a hard look at what is working, what is not working, and how to fix the pieces that are not working. I think a lot of contributors forgot to be nice to the maintainer. If I were in Tomeu's position I think I would have stepped down a while ago (I've been put in what I think are similar positions in other projects I've been involved in). Too much emails and not enough code, simple maintainers wishes being ignored, nobody stepping up to help the maintainer with the increasing workload, etc. A key part of contributing to an open source is keeping the maintainer engaged and motivated. Daniel ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] stepping down as maintainer
On Tue, Oct 19, 2010 at 06:50:23PM +0200, Tomeu Vizoso wrote: Hi, for personal reasons have to drastically reduce my involvement in the project. Will be leaving maintenance of my modules and unsubscribing from the mailing lists. My place on the board is vacant from now on and I'll be adding to the wiki the new vacancies: http://wiki.sugarlabs.org/go/Vacancies Cheers and good luck, Tomeu I'm just remembering What keeps me going on?... Anyway I guess people, who join Sugar, do it not only because of FOSS is so attractive (there are a bunch of more useful options to join) but because of ideas behind Sugar and community around this ideas. If people leave Sugar they think they can realize the same ideas by different ways (or they just need to take a rest). Though problems are obvious, but it is another topic... -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Excerpts from Bastien's message of Sun Oct 24 19:51:08 +0200 2010: If that can help, I just posted a call for help in this area on the french mailing list. Don't expect miracles though, as we are a small busy team as well :/ But making such a call public is a first step. Great, thanks! FWIW, spending time on the Community Team could be considered a kind of investment. If it works out, we will enlarge the community and have more time to spend in total. So while it detracts from other near-term efforts, the long-term benefit will more than make up for it. Sascha -- http://sascha.silbe.org/ http://www.infra-silbe.de/ signature.asc Description: PGP signature ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH v7] Downgrading activities not allowed. (SL #2164)
From: Shanjit Singh Jajmann shan...@seeta.in Activity can be downgraded on the availability of an older .xo version of an activity. An alert pops up when trying to install an older .xo file of an activity, which asks the user to make a selection on whether to move to an older activity version or not. Co-authored-by: Shanjit Singh Jajmann shan...@seeta.in Anubhav Aggarwal anub...@seeta.in --- v1 - v2. Inline function used, signal emission condition revised and global variables removed. Recommendations by James Cameron and Aleksey Lim added. v2 - v3. Used misc.resume. v3 - v4. Changes in the copyright of the new file. v4 - v5. Alert shown in the same window as the journal. v5 - v6. Static variable removed, name of the functions changed. Recommendations by James Cameron and Aleksey Lim added. v6 - v7. Logic for the alert pop up made simpler. Recommendations by Aleksay Lim added. --- src/jarabe/journal/journalactivity.py |5 ++- src/jarabe/journal/misc.py| 47 ++-- src/jarabe/model/bundleregistry.py|7 +++- 3 files changed, 46 insertions(+), 13 deletions(-) diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py index 44cc018..beb0962 100644 --- a/src/jarabe/journal/journalactivity.py +++ b/src/jarabe/journal/journalactivity.py @@ -44,6 +44,7 @@ from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal.objectchooser import ObjectChooser from jarabe.journal.modalalert import ModalAlert from jarabe.journal import model +from jarabe.journal.journalwindow import JournalWindow J_DBUS_SERVICE = 'org.laptop.Journal' J_DBUS_INTERFACE = 'org.laptop.Journal' @@ -102,10 +103,10 @@ class JournalActivityDBusService(dbus.service.Object): def ObjectChooserCancelled(self, chooser_id): pass -class JournalActivity(Window): +class JournalActivity(JournalWindow): def __init__(self): logging.debug(STARTUP: Loading the journal) -Window.__init__(self) +JournalWindow.__init__(self) self.set_title(_('Journal')) diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py index 32a2847..1d73fa8 100644 --- a/src/jarabe/journal/misc.py +++ b/src/jarabe/journal/misc.py @@ -27,8 +27,10 @@ from sugar.activity import activityfactory from sugar.activity.activityhandle import ActivityHandle from sugar.graphics.icon import get_icon_file_name from sugar.graphics.xocolor import XoColor +from sugar.graphics.alert import ConfirmationAlert from sugar import mime from sugar.bundle.activitybundle import ActivityBundle +from sugar.bundle.bundle import AlreadyInstalledException from sugar.bundle.contentbundle import ContentBundle from sugar import util @@ -36,6 +38,7 @@ from jarabe.view import launcher from jarabe.model import bundleregistry, shell from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal import model +from jarabe.journal import journalwindow def _get_icon_for_mime(mime_type): generic_types = mime.get_all_generic_types() @@ -159,19 +162,16 @@ def resume(metadata, bundle_id=None): bundle = ActivityBundle(file_path) if not registry.is_installed(bundle): logging.debug('Installing activity bundle') -registry.install(bundle) +try: +registry.install(bundle) +except AlreadyInstalledException: +_downgrade_option_alert(bundle) +return else: logging.debug('Upgrading activity bundle') registry.upgrade(bundle) -logging.debug('activityfactory.creating bundle with id %r', -bundle.get_bundle_id()) -installed_bundle = registry.get_bundle(bundle.get_bundle_id()) -if installed_bundle: -launch(installed_bundle) -else: -logging.error('Bundle %r is not installed.', - bundle.get_bundle_id()) +_install_bundle(bundle) elif is_content_bundle(metadata) and bundle_id is None: @@ -215,6 +215,17 @@ def resume(metadata, bundle_id=None): launch(bundle, activity_id=activity_id, object_id=object_id, color=get_icon_color(metadata)) +def _install_bundle(bundle): +registry = bundleregistry.get_registry() +logging.debug('activityfactory.creating bundle with id %r', + bundle.get_bundle_id()) +installed_bundle = registry.get_bundle(bundle.get_bundle_id()) +if installed_bundle: + launch(installed_bundle) +else: +logging.error('Bundle %r is not installed.', +bundle.get_bundle_id()) + def launch(bundle, activity_id=None, object_id=None, uri=None, color=None, invited=False): if activity_id is None or not activity_id: @@ -239,6 +250,24 @@ def launch(bundle, activity_id=None, object_id=None, uri=None, color=None,
[Sugar-devel] [RELEASE] Browse-120
== Source == http://download.sugarlabs.org/sources/sucrose/fructose/Browse/Browse-120.tar.bz2 == News == * Release 120 (Lucian Branescu Mihaila) * fix error writing file if there are not a url in the location bar (Gonzalo Odiard) * Fix OLPC #6874 - Web activity uses gettext on file name (Gonzalo Odiard) * Move to hashlib to avoid deprecation warnings. (Lucian Branescu Mihaila) * Browse-side fix for #1638. For better names, more work is needed. (Lucian Branescu Mihaila) ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [ASLO] Release Edit-5
Activity Homepage: http://activities.sugarlabs.org/addon/4349 Sugar Platform: 0.82 - 0.90 Download Now: http://activities.sugarlabs.org/downloads/file/27082/edit-5.xo Release notes: Now with MANY mimetypes! Sugar Labs Activities http://activities.sugarlabs.org ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] Downgrading activities not allowed. (SL #2164)
Activity can be downgraded on the availability of an older .xo version of an activity. An alert pops up when trying to install an older .xo file of an activity, which asks the user to make a selection on whether to move to an older activity version or not. Co-authored-by: Shanjit Singh Jajmann shan...@seeta.in Anubhav Aggarwal anub...@seeta.in --- v1 - v2. Inline function used, signal emission condition revised and global variables removed. Recommendations by James Cameron and Aleksey Lim added. v2 - v3. Used misc.resume. v3 - v4. Changes in the copyright of the new file. v4 - v5. Alert shown in the same window as the journal. v5 - v6. Static variable removed, name of the functions changed. Recommendations by James Cameron and Aleksey Lim added. v6 - v7. Logic for the alert pop up made simpler. Recommendations by Aleksay Lim added. --- src/jarabe/journal/journalactivity.py |5 ++- src/jarabe/journal/journalwindow.py | 33 +++ src/jarabe/journal/misc.py| 47 ++-- src/jarabe/model/bundleregistry.py|7 +++- 4 files changed, 79 insertions(+), 13 deletions(-) create mode 100644 src/jarabe/journal/journalwindow.py diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py index 44cc018..beb0962 100644 --- a/src/jarabe/journal/journalactivity.py +++ b/src/jarabe/journal/journalactivity.py @@ -44,6 +44,7 @@ from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal.objectchooser import ObjectChooser from jarabe.journal.modalalert import ModalAlert from jarabe.journal import model +from jarabe.journal.journalwindow import JournalWindow J_DBUS_SERVICE = 'org.laptop.Journal' J_DBUS_INTERFACE = 'org.laptop.Journal' @@ -102,10 +103,10 @@ class JournalActivityDBusService(dbus.service.Object): def ObjectChooserCancelled(self, chooser_id): pass -class JournalActivity(Window): +class JournalActivity(JournalWindow): def __init__(self): logging.debug(STARTUP: Loading the journal) -Window.__init__(self) +JournalWindow.__init__(self) self.set_title(_('Journal')) diff --git a/src/jarabe/journal/journalwindow.py b/src/jarabe/journal/journalwindow.py new file mode 100644 index 000..957f1eb --- /dev/null +++ b/src/jarabe/journal/journalwindow.py @@ -0,0 +1,33 @@ +#Copyright (C) 2010 Software for Education, Entertainment and Training Activities +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +import gtk +from sugar.graphics.window import Window + + +_journal_window = None + + +class JournalWindow(Window): + +def __init__(self): +global _journal_window +Window.__init__(self) +_journal_window = self + + +def get_journal_window(): +return _journal_window diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py index 32a2847..527c4e3 100644 --- a/src/jarabe/journal/misc.py +++ b/src/jarabe/journal/misc.py @@ -27,8 +27,10 @@ from sugar.activity import activityfactory from sugar.activity.activityhandle import ActivityHandle from sugar.graphics.icon import get_icon_file_name from sugar.graphics.xocolor import XoColor +from sugar.graphics.alert import ConfirmationAlert from sugar import mime from sugar.bundle.activitybundle import ActivityBundle +from sugar.bundle.bundle import AlreadyInstalledException from sugar.bundle.contentbundle import ContentBundle from sugar import util @@ -36,6 +38,7 @@ from jarabe.view import launcher from jarabe.model import bundleregistry, shell from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal import model +from jarabe.journal import journalwindow def _get_icon_for_mime(mime_type): generic_types = mime.get_all_generic_types() @@ -159,19 +162,16 @@ def resume(metadata, bundle_id=None): bundle = ActivityBundle(file_path) if not registry.is_installed(bundle): logging.debug('Installing activity bundle') -registry.install(bundle) +try: +registry.install(bundle) +except AlreadyInstalledException: +_downgrade_option_alert(bundle) +return else: logging.debug('Upgrading activity bundle')
Re: [Sugar-devel] [PATCH sugar 09/21] style cleanup: prefer ' for strings
On Sat, Oct 23, 2010 at 01:11:59PM +0200, Sascha Silbe wrote: Anything else you'd like changed or do you think it's ready to go in? Otherwise it's fine. -- James Cameron http://quozl.linux.org.au/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] broken playback in record and jukebox
On Fri, Oct 22, 2010 at 03:31:23PM -0400, Erik Blankinship wrote: If I pause a video in either the record or jukebox activities and wait about 20 seconds, then just moving the mouse causes the video to go blank! Or I can wait about 80 seconds and the video will go blank on its own. Is Automatic Power Management (My Settings, Power) enabled? Does the power LED blink? -- James Cameron http://quozl.linux.org.au/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] broken playback in record and jukebox
On Sun, Oct 24, 2010 at 9:38 PM, James Cameron qu...@laptop.org wrote: On Fri, Oct 22, 2010 at 03:31:23PM -0400, Erik Blankinship wrote: If I pause a video in either the record or jukebox activities and wait about 20 seconds, then just moving the mouse causes the video to go blank! Or I can wait about 80 seconds and the video will go blank on its own. Is Automatic Power Management (My Settings, Power) enabled? Yes, it is on. Does the power LED blink? Not that I have noticed. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Fascinating fragment ... On Sat, Oct 23, 2010 at 11:42:24PM -0500, David Farning wrote: Sugar Labs is lead by veto rather than vision. A _symptom_ is the development process. It it easy to have fix commited to Fedora or OLPC. It is hard to have a fix commited to Sugar Labs. When someone sends a useful fix to either OLPC or Fedora, a senior developer takes the patch, review it, fixes it up (if necessary) and thanks the contributor. This provides an incentive and on-ramp for less experienced developers to participate and contribute. Sugar Labs rejects most patches. Seems to be a 90% chance, yes. ;-) Once a patch is technically correct, which can take several iterations for a new developer, it is forward to another developer for their vote of approval. The end result is that very few people bother to submit patches upstream. Yes, you're on the right track here. For other open source projects where I am maintainer, if a patch is proposed which is nearly right, then I tend to merge it and correct it rather than reject it. I'm often confused as to why Sugar maintainers don't merge and correct rather than reject. I don't think it is due to lack of time, since it can take longer to reply in detail than to merge and correct. The _disease_ is a marginalization of anyone who dissents. As a result no one is willing to take a risk. There is an unwritten checklist for participation. In Australian culture, dissent is normal and anticipated, being embedded with fair go and underdog support behaviours. Being a regular dissenter is one of the reasons I enjoy reviewing patches. I'm not a maintainer of any Sugar components. I don't get to merge the patch, but I can still reduce the load on the maintainer by pointing out the obvious ... giving the underdog contributor a fair go, and treating the maintainer as a tall poppy who isn't necessarily doing their job right. ;-) -- James Cameron http://quozl.linux.org.au/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel