Michal - really like the changes, it all looks good now except for the 
download progress.

- Install/upgrade check coming up right away and the pulse progress is 
fine for this evaluation phase.
- Installing Packages - Creating packages Index - good to have this as 
there was a noticeable pause after install to update the indecies and 
feedback was needed.
- Download packages progress still looks broken :( Will be great to get 
some smoother notification here, at present it looks as if its hung, 
because we are only getting download byte data atfer n files have been 
downloaded.

Few comments below to do with use of gobject.idle_add(), but rest looks 
good.

JR

src/gui/modules/installupdate.py

Assuming widget calls in __init__ and callbacks are ok and don't need wrapped 
in gobject.idle_add()

      200 +        def __progressdialog_progress_pulse(self):
      201 +                while not self.progress_stop_timer_thread:
      202 +                        
gobject.idle_add(self.w_createplan_progressbar.pulse)
      203 +                        time.sleep(0.1)
      204 +                self.progress_stop_timer_thread = False    <-- Not 
required


      218 +        def __update_install_pulse(self):
      219 +                while not self.progress_stop_timer_thread:
      220 +                        self.progress_stop_timer_running = True
      221 +                        
gobject.idle_add(self.w_installing_progressbar.pulse)
      222 +                        time.sleep(0.1)
      223 +                self.progress_stop_timer_thread = False  <-- Not 
required
      224 +                self.progress_stop_timer_running = False


 563  681          def __installation_stage(self):
      682 +                '''Code duplication from imageplan.py def 
execute(self)'''
 564  683                  self.gui_thread.run()
      684 +                
self.w_installingdialog_label.set_text(self.parent._( \   <-- Wrap in a 
gobject.idle_add call
      685 +                    "Installing Packages..."))   


      928 +        def __indexing_progress(self):
      929 +                if not self.progress_stop_timer_running:
      930 +                        self.w_installingdialog_label.set_text(\     
<-- Wrap in a gobject.idle_add call
      931 +                            self.parent._("Creating packages 
index..."))
      932 +                        Thread(target = 
self.__update_install_pulse).start()


src/gui/modules/remove.py


 143  169          def __plan_the_removeimage(self, list_of_packages):

      179 +                                        
self.w_createplan_dialog.hide() <-- Wrap in a gobject.idle_add call
 152  180                                          return
 153  181                                  self.ip.propose_fmri_removal(fmri)

         186 +                                     
self.w_createplan_dialog.hide() <-- Wrap in a gobject.idle_add call
      187 +                                        return                       
      
      188 +                        except imageplan.NonLeafPackageException, e:
 162  189                                          self.error = e[1]
 163  190                                          
gobject.idle_add(self.ip.progtrack.evaluate_done)
 
      222 +                        self.w_removing_dialog.hide() <-- Wrap in a 
gobject.idle_add call 
      229 +                        self.w_removing_dialog.hide()
      236 +                self.w_removing_dialog.hide()

      255 +                self.progress_stop_timer_thread = False <- Not needed
      262 +                self.progress_stop_timer_thread = False

      342 +                self.w_removingdialog_label.set_text(\   <-- Wrap in 
a gobject.idle_add call 
      343 +                    self.parent._("Removing Packages..."))
 
      362 +                        self.w_removingdialog_label.set_text(\ <-- 
Wrap in a gobject.idle_add call 
      363 +                            self.parent._("Creating packages 
index..."))

Michal Pryc wrote:
> Hello pkg community,
>
> On the build 96a the GUI is not functional due to the change in the IPS.
>
> I've sync the duplicated parts with the current IPS and also I have 
> added nice progress bar for indexing actions.
>
> The bug which shows the breakage is logged at:
> http://defect.opensolaris.org/bz/show_bug.cgi?id=3193
>
> The *webrev* is posted at:
>
> http://cr.opensolaris.org/~migi/04_09_2008_sync_with_ips_bug_3193/
>
>
> Mostly the changes which I had to sync were from the files filelist.py 
> and imageplan.py done after 14th of Aug 2008:
>
> For the filelist.py:
> http://src.opensolaris.org/source/diff/pkg/gate/src/modules/client/filelist.py?r2=%2Fpkg%2Fgate%2Fsrc%2Fmodules%2Fclient%2Ffilelist.py%40488&r1=%2Fpkg%2Fgate%2Fsrc%2Fmodules%2Fclient%2Ffilelist.py%40411
>
>
> for the installupdate.py and remove.py:
> http://src.opensolaris.org/source/diff/pkg/gate/src/modules/client/imageplan.py?r2=%2Fpkg%2Fgate%2Fsrc%2Fmodules%2Fclient%2Fimageplan.py%40495&r1=%2Fpkg%2Fgate%2Fsrc%2Fmodules%2Fclient%2Fimageplan.py%40456
>
> I did run few smoke tests using install/uninstall several packages and 
> everything worked fine for me with the gate version of the SUNWipkg and 
> SUNWipkg-gui.
>
>   

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to