Monthly Archives: November 2014

Pharo development’s metronome: another tick

40391
14549 Clean Critics and RBRule related information
https://pharo.fogbugz.com/f/cases/14549
40390
14544 tiny code critique cleanup of NautilusRefactoring
https://pharo.fogbugz.com/f/cases/14544

14543 Pharo4.0 settings do have Appearance and appearance (twice the entries that is)
https://pharo.fogbugz.com/f/cases/14543

40389
14540 Add new methods for accessing traitUsers
https://pharo.fogbugz.com/f/cases/14540

14539 dropping a textfile opens an empty filelist
https://pharo.fogbugz.com/f/cases/14539
40387
14261 Delay refactoring (part 1) – move scheduler from class-side to instance-side of its own class
https://pharo.fogbugz.com/f/cases/14261

40386
14525 tiny code critic clean NautilusCommon
https://pharo.fogbugz.com/f/cases/14525

6320 We need a “Save As” Dialog
https://pharo.fogbugz.com/f/cases/6320
40385
14524 WateryTheme broken, again
https://pharo.fogbugz.com/f/cases/14524

14421 Polymorph-Tools-Diff should be packaged as Tool-Diff
https://pharo.fogbugz.com/f/cases/14421

14526 unload GT and Glamourtests on #cleanUpForProduction
https://pharo.fogbugz.com/f/cases/14526

40384
14506 Add class inst vars to hold SmallInteger class>>minVal and maxVal.
https://pharo.fogbugz.com/f/cases/14506
40383
14498 Unnecessary instance creation in OrderedCollection>>#asOrderedCollection?
https://pharo.fogbugz.com/f/cases/14498

40382
14516 use an explicit copy of subclass collection in RBAbstractClass>>#allSubclasses
https://pharo.fogbugz.com/f/cases/14516

12007 BorderMorph halo menu border colour broken
https://pharo.fogbugz.com/f/cases/12007

14494 PSMCChangesGrouper is missing #visitClassTraitDefinition:
https://pharo.fogbugz.com/f/cases/14494

40381
14487 do:displayingProgress: in Collection should be part of the UIManager package
https://pharo.fogbugz.com/f/cases/14487

14458 Add BlockClosure>>memoized
https://pharo.fogbugz.com/f/cases/14458

40380
14510 Wrong editing history positions after using home-key
https://pharo.fogbugz.com/f/cases/14510

14495 Adding dependent projects in Versionner fails (adding to array instead of collection)
https://pharo.fogbugz.com/f/cases/14495

40378
14508 add class ivars to SmallInteger: subclass responsibility #extending:scope:host:
https://pharo.fogbugz.com/f/cases/14508

14507 DNU when accepting a class side definition for class instance vars
https://pharo.fogbugz.com/f/cases/14507

40377
14502 remove unsent methods #patchworkUIThemeColor
https://pharo.fogbugz.com/f/cases/14502

7390 EventHander and MouseOverEventHandler Cleanup
https://pharo.fogbugz.com/f/cases/7390

40376
13516 Canvas and all subclasses should not be in Morphic
https://pharo.fogbugz.com/f/cases/13516

14489 Clean references from System Support to Themes
https://pharo.fogbugz.com/f/cases/14489
40374
14385 move growl settings to Growl class
https://pharo.fogbugz.com/f/cases/14385

14484 Remove debugging methods from Integer
https://pharo.fogbugz.com/f/cases/14484

13982 Failing test: ReleaseTest>>testMethodsWithUnboundGlobals
https://pharo.fogbugz.com/f/cases/13982
40373
14490 Opal depends on System-Announcements
https://pharo.fogbugz.com/f/cases/14490

14469 Merge back OrderPreservingDictionary improvements
https://pharo.fogbugz.com/f/cases/14469

14465 Unexpected DNU when compiling a method code without selecting a class
https://pharo.fogbugz.com/f/cases/14465

14415 error while retrieving all icons from aThemeIcon
https://pharo.fogbugz.com/f/cases/14415

40372
14486 Debugging failing primitives crash spur images
https://pharo.fogbugz.com/f/cases/14486

14485 InstructionStream scanner failing in spur.
https://pharo.fogbugz.com/f/cases/14485
40371
14261 Delay refactoring (part 1) – move scheduler from class-side to instance-side of its own class
https://pharo.fogbugz.com/f/cases/14261
40370
14473 GTools version 2.0.2 – bug fixes
https://pharo.fogbugz.com/f/cases/14473

Github for Pharo using SourceTree Video by Kilon Alios

Hello pharoers , at last , my video tutorial for those that are not familiar with git and github, has been uploaded to YouTube. I describe the very basics of the process and give you enough information to create a github repository, clone the online repository to your hard driver and use the hard drive copy to commit changes to your code, upload and download your commits to and from your github repo . I use sourcetree to make the interaction with git as gui based as you are used with Pharo.

The tutorial can be watched here
and these are the relevant links for whatever is used in the tutorial
if you have any issue , problem and compliant, dont be shy, share it 🙂
Kilon kilon.alios@gmail.com

NetGen – Open Street Map Roassal Demo

Hi all,

We are pleased to announce a wireless sensor network animation demo in Pharo, Roassal and OpenStreetMap.

https://github.com/OnilGoubier/Cirela

The release contains 2 packages:
1. Cirela-OSM Package consists of the visualization of geographical information using roassal with  OpenStreetMap as background.
2. Cirela-Netgen-Sim: this package allows the execution of a synchronous and concurrent Wireless Sensor Network (WSN) simulation program [1] from Pharo. Outputs of the simulation are then animated on a map visualizing the locations of the simulated sensors.

A video of the animated wireless sensor network simulation:

https://www.youtube.com/watch?v=sMB7DG-lbiU

Another video showing Cirela-OSM:

https://youtu.be/6zoGIsQaGUo

A word about CIRELA

CIRELA (Communication and Information technology for REsiLience to disAsters) is a non profit NGO aiming at providing open source solutions to monitor and prevent natural and environmental disasters. Currently we are focusing on wireless sensor network monitoring and warning systems.

[1] This program is generated in Occam by NetGen, from B. Pottier et al. (UBO)

Regards,

Onil

On Screen Keyboard

Hi,

I created the first version of a virtual keyboard morph for Pharo. To
try it, evaluate:

Gofer it
     url: 'http://www.smalltalkhub.com/mc/PavelKrivanek/OnScreenKeyboard/main';
     package: 'OnScreenKeyboard';
     load.

OnScreenKeyboard new open.

Currently it doesn't work well together with completion morphs so
please disable code completion.

Features:
- splitted int two parts
- compact look
- swipe up to write uppercase letter
- swipe left to do backspace
- swipe down to write special character
- swipe right to write numbers and other special characters
- swipe up right to press combination with ctrl (e.g. ctrl+p)
- swipe down right to press combination with alt
- press Kb button to move the keyboard up and down on the screen
- press shift/alt/ctrl keys to hold them (e.g. for selecting text with
cursor keys and shift)

Feel free to send patches and improvements directly to the project
repository :-)

OnScreenKeyboardPavel

OpenStreet map support for Roassal

One video to show everything

Nireas: A theme manager for Pharo

Hello pharoers , I would like to present to you my latest project and a good excuse to learn Spec. First I would like to thank Nicolai for his help and all other people who helped me out understand Spec. Of course I am still learning 🙂

So , Nireas is a theme manager for Pharo 4. What this means is that Nireas takes the dark theme and by presenting you with an easy to use gui allows you to change the colors on the fly to adjust the theme to your own preferences and habits.
This is an example
you can see the Nireas GUI on the bottom, the Nautilus on the left has the default dark theme colors, the one on the right has the color selected by Nireas.
You can find instructions on how to install Nireas and how to use here
Unfortunately the last one the scroll bar color seems to have no effect, I will have to look into it, but the other options work fine. Please note also that you will have refresh issues so its advisable to close existing windows and reopen them so they update properly to the new colors.
Please try this tool inside a new fresh pharo 4 image, this code is very experimental and has been known to crash Morphic. So use with caution.
Nireas implements its own theme subclassing the dark theme, the big diffirence here is that it defines color to be independent and dynamic so the theme can be , well, …. themable 😀
Nireas does not change anything inside Pharo so it can be installed safely.
I would like to take this tool further to allow of course deeper customisations that goes beyond just customising colors, meaning change the look and feel of Pharo. But this means unfortunately/fortunately that some things will have to change inside Pharo and Pharo will have to become much more dynamic GUI wise to make dynamic themes much easier to implement.
Nireas is part of my Ephestos project, so this is why it appears inside an Ephestos menu and hopefully I will keep working it as customising Pharo GUI is something that I find really interesting and fun,
As always comments, insults, worship and rage is more than welcomed. 8LDSy22nPnkalQ2rem9vqgvQIrfc4pjPFa6cAPkC-fQ

SciSmalltalk v0.16

Dear all,

we are to happy to announce SciSmalltalk v0.16

SciSmalltalk is a Smalltalk project, similar to existing
scientific libraries like NumPy, SciPy for Python or SciRuby for Ruby.
SciSmalltalk already provide the following basic functionalities:

- complex and quaternions extensions,
- random number generators,
- fuzzy algorithms,
- Didier Besset's numerical methods,
- Ordinary Differential Equation (ODE) Solver.

Version 0.16 includes updates from Werner Kassens to several packages,
the work Nicolas Cellier about arbitrary precision floats.

SciSmalltalk project web page is here:
https://github.com/SergeStinckwich/SciSmalltalk
All the code is available under the MIT licence.

We have more than 563 green unit tests and we run a CI job here:
https://ci.inria.fr/pharo-contribution/job/SciSmalltalk/

This version should work on Pharo 3.0/4.0 and also Squeak 4.5 (to
be confirmed).

We are looking for more code contributions and also tests, documentation !
Join the mailing-list : https://groups.google.com/forum/#!forum/scismalltalk

[ANN] Hubcap – a SmalltalkHub API and browser for Pharo

Hi,

as I wanted to browse the SmalltalkHub contents directly from within Pharo image
I wrote a simple browser:

  Gofer it
     url: 'http://www.smalltalkhub.com/mc/TorstenBergmann/Hubcap/main';
     configurationOf: 'Hubcap';
     loadDevelopment.

Attached is a screenshot. Works on Pharo 4.0. Still not finished but maybe it is 
already useful to others as well.

One can access the tool from the world menu, implementation lives in 
"Hubcap-Tools" package. The UI shows and allows to filter users, shows
their projects and packages. Special icons display the state (loaded, 
modified, public writable, ...). One can load from the UI or open Monticello tools.

The "Hubcap-Core" package includes an API to query STHub and write
expressions like:

   HubClient new allProjectsForUserNamed: 'TorstenBergmann' 

   HubClient new hasUserNamed: 'TorstenBergmann'

So "Hubcap-Core" may be usefull to people who want to build other tools
that depend on STHub infos. Basic documentation lives on 

 http://www.smalltalkhub.com/#!/~TorstenBergmann/Hubcap

and as class comment on ConfigurationOfHubcap.

Beware: the tool is sill not optimized, any clicking involves a query 
to STHub (hope STHub will not crash when many people use it). API
may still undergo changes in the future.

Also teams are not yet supported as STHub still returns an MNU error 
in the REST interface: http://www.smalltalkhub.com/hub/teams?term=Pharo
Anyone able to fix that?

Thanks to Stephan Eggermonts who gave me the initial idea with some code
I've found in "Deprecation finder" and to Sven for the easy to use NeoJSON
package.

Contributors can just commit, the project is public.
sthubbrowser
Bye
T.

Another stream of changes…

40364
14429 DebuggerTests package should be Debugger-Tests
https://pharo.fogbugz.com/f/cases/14429

14431 FontInfrastructureTests package should be FontInfrastructure-Tests
https://pharo.fogbugz.com/f/cases/14431

14430 EmbeddedFreeTypeTests package should be EmbeddedFreeType-Tests
https://pharo.fogbugz.com/f/cases/14430
40362
14425 FileList should not be used as Widget for opening Folders
https://pharo.fogbugz.com/f/cases/14425

14436 NautilusTests package should be Nautilus-Tests
https://pharo.fogbugz.com/f/cases/14436

14435 NECompletionTests package should be NECompletion-Tests
https://pharo.fogbugz.com/f/cases/14435

40361
14417 remove #theme from GraphicsFontSettings class
https://pharo.fogbugz.com/f/cases/14417

14260 Add gt inspector views to Ordered[Identity]Dictionary
https://pharo.fogbugz.com/f/cases/14260

14441 SmartSuggestionsTests package should be SmartSuggestions-Tests
https://pharo.fogbugz.com/f/cases/14441

14440 SlotTests package should be Slot-Tests
https://pharo.fogbugz.com/f/cases/14440

40360
14407 GTools version 2.0.0
https://pharo.fogbugz.com/f/cases/14407
40359
14403 never use EventHandler but MorphicEventHandler (and migrate all existing instances)
https://pharo.fogbugz.com/f/cases/14403

14348 Package Keys got lost
https://pharo.fogbugz.com/f/cases/14348

14388 Can not inspect IRMethod
https://pharo.fogbugz.com/f/cases/14388
40358
14391 GTIRBrowser modifies cached IRMethod on browse
https://pharo.fogbugz.com/f/cases/14391

14402 GTIRBrowser can not select the IRMethod node (MNU)
https://pharo.fogbugz.com/f/cases/14402

14409 remove RBTranslateLiteralsInMenusRule
https://pharo.fogbugz.com/f/cases/14409

40357
14401 GTIRBrowser shows only decompiled source
https://pharo.fogbugz.com/f/cases/14401

14406 Replace Announcer>>#on:do:s senders in SUnit-Tests
https://pharo.fogbugz.com/f/cases/14406

14408 Replace Announcer>>#on:do:s senders in Versionner-Tests-Core-Model
https://pharo.fogbugz.com/f/cases/14408

14394 RBConfigurableFormatter>>newLinesBeforeStartingAt: fails if originalSource is nil
https://pharo.fogbugz.com/f/cases/14394

40356
14399 UIManager>>#theme got lost
https://pharo.fogbugz.com/f/cases/14399
40355
14396 Merge Polymorph-EventEnhancements into the event mechanism that it extends
https://pharo.fogbugz.com/f/cases/14396

14398 remove Spec-Tools-Editor
https://pharo.fogbugz.com/f/cases/14398
40354
13260 inspecting variables in the debugger fails in some cases
https://pharo.fogbugz.com/f/cases/13260

14393 CollectionValueHolder>>remove: does not annnounce change
https://pharo.fogbugz.com/f/cases/14393

14397 reduce polymorph extension methods
https://pharo.fogbugz.com/f/cases/14397

40353
14254 AST method replaceWith: does not change source interval
https://pharo.fogbugz.com/f/cases/14254

14380 Replace Announcer>>#on:send:to:s senders in Tests
https://pharo.fogbugz.com/f/cases/14380

14371 Traits should not be allowed to have nil as their category
https://pharo.fogbugz.com/f/cases/14371
40351
14246 CompiledMethod>>hash can produce clashes
https://pharo.fogbugz.com/f/cases/14246

14379 Code critique pass Spec-Tools
https://pharo.fogbugz.com/f/cases/14379

14375 Random #obsoleteClasses test failures
https://pharo.fogbugz.com/f/cases/14375

40350
14373 Replace Announcer>>#on:send:to:s senders in System-Support
https://pharo.fogbugz.com/f/cases/14373

14372 Replace Announcer>>#on:send:to:s senders in System-Changes
https://pharo.fogbugz.com/f/cases/14372

14377 FileOut creates invalid comment entries for classes with class side methods
https://pharo.fogbugz.com/f/cases/14377

40349
14368 tiny code critic pass Collection-Unordered
https://pharo.fogbugz.com/f/cases/14368

14369 tiny code critic font infrastructure
https://pharo.fogbugz.com/f/cases/14369

14341 NonInteractiveManager should provide a default value on #nonInteractiveWarning:
https://pharo.fogbugz.com/f/cases/14341
40348
13113 remove generateSpecFormat
https://pharo.fogbugz.com/f/cases/13113

14366 HDTestReport>>#initializeOn: bad initialisation of suiteTime
https://pharo.fogbugz.com/f/cases/14366

14365 missing #callPrimitive: method in OCDecompiler
https://pharo.fogbugz.com/f/cases/14365

40347
14364 tiny code critique cleanup in Ring
https://pharo.fogbugz.com/f/cases/14364

14358 PseudoClass DNU printHierarchy in FileContentsBrowser
https://pharo.fogbugz.com/f/cases/14358

14254 AST method replaceWith: does not change source interval
https://pharo.fogbugz.com/f/cases/14254

40346
14336 monkey fails with Methods equivalently defined in superclass
https://pharo.fogbugz.com/f/cases/14336

14363 move StartupLoader to Deprecated40
https://pharo.fogbugz.com/f/cases/14363

40345
14335 renaming addUpdating:action: into addUpdating:selector:
https://pharo.fogbugz.com/f/cases/14335

14360 ThemeIcons should be cleared on #cleanUp
https://pharo.fogbugz.com/f/cases/14360

40344
14330 rename KeyChainTest –> KeyChainTests so it gets unloaded by #cleanUpForProduction
https://pharo.fogbugz.com/f/cases/14330

14362 Iconset is wrong
https://pharo.fogbugz.com/f/cases/14362

40342
14326 ThemeIcons should use LRUCache
https://pharo.fogbugz.com/f/cases/14326

14357 add Current class var to ThemeIcons
https://pharo.fogbugz.com/f/cases/14357

40341
14356 Replace Announcer>>#on:send:to:s senders in System-Announcements
https://pharo.fogbugz.com/f/cases/14356

14355 Replace Announcer>>#on:send:to:s senders in SlotTests
https://pharo.fogbugz.com/f/cases/14355

14352 Cleaning, fixing and documenting NautilusPugin
https://pharo.fogbugz.com/f/cases/14352

40340
14351 cleanup ClassModification: remove unused ivars
https://pharo.fogbugz.com/f/cases/14351

14350 Replace Announcer>>#on:send:to:s senders in SUnit-UI
https://pharo.fogbugz.com/f/cases/14350

40339
14345 Replace Announcer>>#on:send:to:s senders in Refactoring-Changes
https://pharo.fogbugz.com/f/cases/14345

10520 Right clicking on the source pane in Nautilus and clicking extended search itself produces a walkback
https://pharo.fogbugz.com/f/cases/10520
40338
14343 MorphicUIBugTest failing with GTPlayground active
https://pharo.fogbugz.com/f/cases/14343
40337
14349 announcement subscription in TestCase class>>#initialize should be weak
https://pharo.fogbugz.com/f/cases/14349
40336
14337 Removing a trait usage raises an exception (2nd attempt)
https://pharo.fogbugz.com/f/cases/14337
40335
14334 Replace Announcer>>#on:send:to:s senders in RecentSubmissions
https://pharo.fogbugz.com/f/cases/14334

14332 use #ast, not #parseTree so we benefit from the ASTCache
https://pharo.fogbugz.com/f/cases/14332

40334
14333 clean translated in add:subMenu: and add:icon:subMenu:
https://pharo.fogbugz.com/f/cases/14333
40333
14331 cleaning more menu
https://pharo.fogbugz.com/f/cases/14331

40332
14327 Simplification of the popScope logic in IRTranslator
https://pharo.fogbugz.com/f/cases/14327

40331
14329 Playground “print it” does not work anymore since 40 #330
https://pharo.fogbugz.com/f/cases/14329

14328 Typo: optionIlineNone => optionInlineNone
https://pharo.fogbugz.com/f/cases/14328

40330
14324 ThemeIcons has a class instance var “icons” that is not used
https://pharo.fogbugz.com/f/cases/14324

14316 Float zero and negative zero should not be #literalEqual:
https://pharo.fogbugz.com/f/cases/14316

14322 fixed WorldSate>>#runLocalStepMethodsIn:
https://pharo.fogbugz.com/f/cases/14322

40329
14323 Replace Announcer>>#on:send:to:s senders in RPackage-Tests
https://pharo.fogbugz.com/f/cases/14323

14274 Socket timeTestUDP fails
https://pharo.fogbugz.com/f/cases/14274

14320 Small clean in Polymorph
https://pharo.fogbugz.com/f/cases/14320

5139 Monticello uses the wrong compiler for class and trait definitions
https://pharo.fogbugz.com/f/cases/5139

40327
13115 unnecessary concatenation
https://pharo.fogbugz.com/f/cases/13115

13158 Adding class-side #initialize should not template with /super initialize/
https://pharo.fogbugz.com/f/cases/13158

40326
14313 Replace Announcer>>#on:send:to:s senders in RPackage-SystemIntegration
https://pharo.fogbugz.com/f/cases/14313

14303 RemotesManager: Make more generally useful
https://pharo.fogbugz.com/f/cases/14303

11065 Blocks should have some suggestions (at least the same as expressions so far)
https://pharo.fogbugz.com/f/cases/11065
40325
14309 add #selectItems: and #selectedItems protocols to TickDialogWindow
https://pharo.fogbugz.com/f/cases/14309

14256 wrong number of tempvars for optimized loops
https://pharo.fogbugz.com/f/cases/14256

10839 VirtualMachine>>#maxExternalSemaphores: has bogus implementation (sort of)
https://pharo.fogbugz.com/f/cases/10839

14308 EyeInspector should not register as #basicInspector
https://pharo.fogbugz.com/f/cases/14308