Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- 144631 messages
Progress Report -> Refactoring Project - ( January 11 - 15 )
by EVELYN CUSI LOPEZ
Hi all
Last week I did these tasks:
- Fix add parameter issue, now this refactoring can permute arguments (
https://github.com/pharo-project/pharo/pull/8382 )
- Fix extract method issue, when we have symbols and strings, now Literal
node can compare correctly these types of literals (https://github.com/pharo
-project/pharo/pull/8381)
- Fix find and replace issue, to know how many occurrences were found and
changed (https://github.com/pharo-project/pharo/pull/8380)
- I started to do the new "extract setUp" refactoring, by the moment this
has some problems
Tasks for this week:
- Finish to do extract setUp refactoring
- Migrate class and method commands, to commander2
- Fix undo refactoring issue
- Fix Renaming protocol: current value not selected #4461
<https://github.com/pharo-project/pharo/issues/4461>
- Fix Cannot extract method with arguments #5855
<https://github.com/pharo-project/pharo/issues/5855>
Cheers,
Evelyn
Jan. 18, 2021
This week (02/2021) on the Issue Tracker
by Marcus Denker
Event Cleanup
==============
- Make Old events work as new ones in SDL2 #8318
https://github.com/pharo-project/pharo/pull/8318
- RubTextEditor uses deprecated enclose: #8316
https://github.com/pharo-project/pharo/pull/8316
- Remove unused and non working keystrokeSelector: #8322
https://github.com/pharo-project/pharo/pull/8322
- Remap OS keys to use Home and not Begin #8337
https://github.com/pharo-project/pharo/pull/8337
- 8214-Global-shortcuts-only-works-when-a-Pharo-window-is-focused #8321
https://github.com/pharo-project/pharo/pull/8321
- Fixes in code completion shortcuts #8340
https://github.com/pharo-project/pharo/pull/8340
- Fix enclosing and adding comment to KeyboardKey #8350
https://github.com/pharo-project/pharo/pull/8350
Refactorings
============
- Fix issue replace message send by another message send #8314
https://github.com/pharo-project/pharo/pull/8314
- RB - Fix issues extract method and ocurrences #8193
https://github.com/pharo-project/pharo/pull/8193
Debugger
========
- Using rub text decorators to show the next instruction to execute #8359
https://github.com/pharo-project/pharo/pull/8359
- Fixing assertion layout in the debugger inspector when we encounter a shouldnt:raise: failure #8372
https://github.com/pharo-project/pharo/pull/8372
- 8174 st peel to first command looks wrong #8347
https://github.com/pharo-project/pharo/pull/8347
Fixes
=====
- Add tfPointerAddress to FloatArray and family #8344
https://github.com/pharo-project/pharo/pull/8344
- Add literalsEvenTheOnesInTheInnerBlocks to the CleanBlockClosure #8
https://github.com/pharo-project/pharo/pull/8306
- fixing-eval-in-interactive-session #8286
https://github.com/pharo-project/pharo/pull/8286
- Smalltalk-restartMethods #8351
https://github.com/pharo-project/pharo/pull/8351
- Correctly throw a syntax error notification in unfinished statements #8367
https://github.com/pharo-project/pharo/pull/8367
- Only open completion menu if in a completion position #8363
https://github.com/pharo-project/pharo/pull/8363
Fluid Class Defintions
======================
- 8332-Better-and-nicer-display-of-slots #8333
https://github.com/pharo-project/pharo/pull/8333
- 8216-FluidClass-API-for-traits- #8331
https://github.com/pharo-project/pharo/pull/8331
Cleanups
========
- add WriteBarrierTest class>>#restartMethods #8362
https://github.com/pharo-project/pharo/pull/8362
- PRRichTextComposer-resetStylers #8360
https://github.com/pharo-project/pharo/pull/8360
- Refactor ChangeSetClassChangesTest to use ClassFactoryForTestCase. #8221
https://github.com/pharo-project/pharo/pull/8221
- Typo in PasteUpMorph class>>#shouldSwapMenuOpenerButtonsSetting: #8343
https://github.com/pharo-project/pharo/pull/8343
- Unused ivars in SliderPresenter #8328
https://github.com/pharo-project/pharo/pull/8328
- Unused ivars in ListPresenter #8356
https://github.com/pharo-project/pharo/pull/8356
Jan. 15, 2021
This week (01/2021) on the Issue Tracker
by Marcus Denker
A bit late: the what happend the first week of the year.
Merge spec 0.8.1
=================
- Fixes to filtering lists SpFilteringListPresenter and SpFilteringSelectableListPresenter.
- Some changes to enhance Spec<->Morph interaction when using SpMorphPresenter.
- In tables and trees, adding methods updateItemsKeepingSelection:/updateRootsKeepingSelection: that will prevent an activation to be triggered when refreshing the elements of a list/tree.
- tree and tree table refactored to extract common behavior.
- add whenFocusReceivedo: and whenFocusLostDo: convenience methods to SpWindowPresenter.
- Added some missing spec builders
- several small bugfixes
- https://github.com/pharo-spec/Spec/releases/tag/v0.8.1
- https://github.com/pharo-project/pharo/pull/8239
merge newtools
===============
- v0.5.1: several bugfixes for new tools
https://github.com/pharo-project/pharo/pull/8302
- v0.5.1.1 advanced steps
https://github.com/pharo-project/pharo/pull/8303
Refactoring
============
- RB - Fix push up sharedPools issue #8207
https://github.com/pharo-project/pharo/pull/8207
Fixes
=====
- 8241-Warning-PotentialOutDatedDependencyWarning-Kernel-FFI-Kernel-dependenc
https://github.com/pharo-project/pharo/pull/8279
- 8280-From-Twitter-There-is-an-error-in-the-image-tutorial-related-to-read-only-literals #8281
https://github.com/pharo-project/pharo/pull/8281
- 8215 detect sum is a strange name for an unconditional loop #8299
https://github.com/pharo-project/pharo/pull/8299
- Compiled code 'literals' do not behave the same that compiled code 'hasLiteral' #8206
https://github.com/pharo-project/pharo/pull/8206
Improvements
============
- improving-TFFI-semaphore-pool #8255
https://github.com/pharo-project/pharo/pull/8255
- Renamed the method Integer >> take:, wrote a better comment and better variable names #8217
https://github.com/pharo-project/pharo/pull/8217
Speed
=====
- RPackageOrganizer >> packageMatchingExtensionName: seems to be very slow #8203
https://github.com/pharo-project/pharo/pull/8203
Cleanups
=========
- Small cleanup OCASTSemanticAnalyzer: #declareVariableNode: #8227
https://github.com/pharo-project/pharo/pull/8227
- 2138 Rubric cleanup #8222
https://github.com/pharo-project/pharo/pull/8222
- Fix a few more package extensions #8213
https://github.com/pharo-project/pharo/pull/8213
- Fix Compression package extensions #8211
https://github.com/pharo-project/pharo/pull/8211
- Behavior>>#parseTreeFor: extension #8209
https://github.com/pharo-project/pharo/pull/8209
- Cleanup MockForCompilation #8290
https://github.com/pharo-project/pharo/pull/8290
- Cleanups in package 'TraitsV2-Tests' #8296
https://github.com/pharo-project/pharo/pull/8296
- 8283-ClassDescriptiondefinition-called-from-GTSpotterExtensionsOnClassTesttestBasic-has-been-deprecated #8301
https://github.com/pharo-project/pharo/pull/8301
Dead Code Cleanups
==================
Mostly related to unused instance variables
- Remove unused class FT2BitmapSize #8247
https://github.com/pharo-project/pharo/pull/8247
- Remove unused ivars in TaskIt #8225
https://github.com/pharo-project/pharo/pull/8225
- Cleanup unused ivars Enlumineur #8236
https://github.com/pharo-project/pharo/pull/8236
- Clean unused ivars in package Debugger-Model-Tests-Core #8232
https://github.com/pharo-project/pharo/pull/8232
- Unused ivars in FTHeaderColumnCellMorph and FastTablePresenter #8249
https://github.com/pharo-project/pharo/pull/8249
- Remove unused ivars in ClassParser package #8230
https://github.com/pharo-project/pharo/pull/8230
- Cleanup unused ivars in ExampleForTestWithSharedPool #8238
https://github.com/pharo-project/pharo/pull/8238
- Care on unused ivars in Microdown #8254
https://github.com/pharo-project/pharo/pull/8254
- Remove unused vars in HandMorph #8251
https://github.com/pharo-project/pharo/pull/8251
- Cleanup unused ivars for new EmergencyDebugger #8234
https://github.com/pharo-project/pharo/pull/8234
- Remove unused ivar selectedItem in deprecated TreePresenter #8228
https://github.com/pharo-project/pharo/pull/8228
- Clean unused class ivar in RGEnvironmentAnnouncer #8272
https://github.com/pharo-project/pharo/pull/8272
- Unused ivar WorldState lastCycleTime #8259
https://github.com/pharo-project/pharo/pull/8259
- Unused ivar in NECTestClass #8270
https://github.com/pharo-project/pharo/pull/8270
- Clean unused ivar in Shift-ClassBuilder #8274
https://github.com/pharo-project/pharo/pull/8274
- Unused ivars in Pillar tests #8268
https://github.com/pharo-project/pharo/pull/8268
- Unused ivars in MonticelloMocks #8265
https://github.com/pharo-project/pharo/pull/8265
- Unused ivar in ClassHierarchyPrinter #8261
https://github.com/pharo-project/pharo/pull/8261
- Unused ivars in WriteBarrier Stub classes #8257
https://github.com/pharo-project/pharo/pull/8257
- Care on unused ivars in StepThroughTest #8278
https://github.com/pharo-project/pharo/pull/8278
- Cleanup unused ivar in FLDebuggerStackMaterialization #8245
https://github.com/pharo-project/pharo/pull/8245
- Unused ivars in FluidClassBuilder #8263
https://github.com/pharo-project/pharo/pull/8263
- Care on unused ivars in ThreadedFFI #8276
https://github.com/pharo-project/pharo/pull/8276
- Unused ivars in Kernel slot classes #8285
https://github.com/pharo-project/pharo/pull/8285
- RubTextEditor has unused ivar #8292
https://github.com/pharo-project/pharo/pull/8292
- Unused ivars in Rubric Spec2 dialogs #8294
https://github.com/pharo-project/pharo/pull/8294
Jan. 15, 2021
Part 2 of Pharo Smalltalk related series of articles in a french magazine
by Noury Bouraqadi
Hi everyone,
The part 2 of the articles by the Pharo Smalltalk community is out, as part of the french magazine Programmez #244.
You can find a summary (in french) at:
https://nootrix.com/fr/smalltalk-magazine-2021-01/
Enjoy,
Noury
Jan. 14, 2021
Re: [Pharo-users] Beta Testing ARM64 Linux & Windows
by Stéphane Ducasse
Excellent News.
My Rasps just arrived in time so I will try.
S
> On 11 Jan 2021, at 18:21, tesonep(a)gmail.com wrote:
>
> In the last months, we have been working on the implementation of a MIT-licenced ARMv8 Just-In-Time compiler for Pharo VM.
> We would like to announce that a beta first version of our JIT backend is available for beta-testing for ARM Linux and Windows machines.
>
> We are very happy with the advance in this subject, as we have not only implemented a new backend but we have added more than 2500 tests of the JIT, the primitives, code generation, plugins, and the VM in general. Also, we are generating a lot of documentation and improving the process to really democratize the development of the VM.
>
> After all the text there are details on how to obtain the versions for testing it.
>
> The following sections give more details of the current status, and the following steps including Apple Silicon, Windows, and Linux ARM64.
>
> Current Status
>
> Our objective is to have a running JIT for the new aarch64 architecture (ARM 64bits). This task includes not only a new backend for the JIT compiler but also adding support for external libraries, dependencies, and the build process. This means having a working VM with comparable features as the one existing in Intel X64. We are targeting all the major operating systems running on this platform (Linux, OSX, Windows). Each of them presents different restrictions and conditions.
>
> After expending some time this is the current status:
>
> - We implemented a full backend for the JIT compiler targeting aarch64.
> - All the image side was adapted to run on it, tested on Ubuntu ARM 64 bits.
> - We added support for: Iceberg (Libgit) / Athens (Cairo) / SDL / GTK
> - We implemented a LibFFI based FFI backend as the default one for Pharo 9 in aarch64 (next to come in all platforms). This opens the door to easily port the features to other platforms and OSes. This new implementation does not have an impact on performance as it has comparable results with the old implementation. Much more, this implementation opens also the door to have runners in different threads than the VM thread (non-blocking FFI).
>
> Status By Platform
>
> Linux
>
> We have a working version of the VM. It is using the same code-base and build process for both architectures (Intel X64 / ARM aarch64). A version can be compiled and executed in all the platforms. Also, we have integrated the build using Open Build Services (OBS) to generate packages for all the mainstream distributions.
> Currently, the version for Debian-like systems (Debian, Ubuntu, Raspberry pi OS, etc) is available and ready to beta test; the details for installing them are in the end of the mail. Versions for ARCH-based and RPM-based systems are in the working (If you want to get them or to test them please contact us, so we can pass on the detail of how to get them).
>
> Windows
>
> We have extended the build process to fully support Microsoft Visual Studio compilers and more flexibility to select the targets, also we are building it to run in Windows ARM. To correctly run the VM in Windows it is needed to build all dependencies for aarch64.
> In this path, we have a working Intel x64 version with Cygwin and MSVC, and a MSVC version for aarch64 (ARM64).
> The ARM64 version is available to be beta-testing on machines with this architecture.
> The Details are at the end of the mail.
>
> OSX
>
> Our third target is to have a working version for the newest Apple silicon. We are acquiring the corresponding hardware to test and to address the differences in the API exposed to JIT applications. As it is the case of the Windows VM, there is no need to change the machine code generation backend, as it is the same that has been implemented for Linux; but to compile external libraries and particularities of the new OS version.
>
> Thanks for your support. In the meantime, we will continue giving you news about the current state and where are we going.
>
> Beta Testing - Linux
>
> For Debian like distributions, the instructions are the following.
>
> Installation
>
> 1) Add a new APT source, usually modifying a file in /etc/apt/sources.list.d/, for example, we can add the pharo.list file with the following content. Also, we need to register the key of the repository. These steps should be done only once. We are giving a little script for modifying the configuration. It is only needed to execute line by line.
>
> For Raspbian:
>
> echo "deb https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…> ./" >> pharo.list
>
> sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
>
> wget https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…>
>
> sudo apt-key add Release.key
>
>
> For Ubuntu:
>
> echo "deb https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…> ./" >> pharo.list
>
> sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
>
> wget https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/… <https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…>
>
> sudo apt-key add Release.key
>
> 2) Update the repository to take the current versions
>
> sudo apt update
>
> 3) Install Pharo9 VM
>
> sudo apt install pharo9 libgit2
>
>
> 4) In case of using the interactive version (with UI) check if the packages libsdl2-2.0-0 and libcairo2 are installed (Usually they are installed, but depends what it is installed in the system). These are not needed for the headless execution or if it is not used by the image.
>
>
> Getting the images:
>
> The images can be downloaded using zero-conf, the latest image is ready to be used. It can be done with:
>
> wget -O - get.pharo.org/64/90 <http://get.pharo.org/64/90> | bash
>
>
> Running Pharo
>
> pharo Pharo.image eval 42 factorial
>
> Or interactive
>
> pharo Pharo.image --interactive
>
> Windows Testing
>
> A version of the VM is ready to be tested in Windows ARM64. A zip containing the VM is available in:
>
> https://files.pharo.org/vm/pharo-spur64/Windows-ARM64/PharoVM-9.0.0-4df0e56… <https://files.pharo.org/vm/pharo-spur64/Windows-ARM64/PharoVM-9.0.0-4df0e56…>
>
> As in Linux, the latest image is compatible with this version of the VM.
>
> Error reporting
>
> In case of encountering errors please report them attaching:
>
> - crash.dmp file and PharoDebug.log
> - Version of the image using (in case of any community project loaded, the names of those)
>
> - Complete machine version (the result of executing uname -a)
> - Complete information about the Linux distribution
>
> - Steps for reproducing the error (if needed)
>
> Thanks for the effort!!
>
> --
> Pablo Tesone.
> tesonep(a)gmail.com <mailto:tesonep@gmail.com>
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.fr / http://www.pharo.org
03 59 35 87 52
Assistant: Aurore Dalle
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Jan. 12, 2021
Beta Testing ARM64 Linux & Windows
by tesonepï¼ gmail.com
In the last months, we have been working on the implementation of a
MIT-licenced ARMv8 Just-In-Time compiler for Pharo VM.
We would like to announce that a beta first version of our JIT backend is
available for beta-testing for ARM Linux and Windows machines.
We are very happy with the advance in this subject, as we have not only
implemented a new backend but we have added more than 2500 tests of the
JIT, the primitives, code generation, plugins, and the VM in general. Also,
we are generating a lot of documentation and improving the process to
really democratize the development of the VM.
After all the text there are details on how to obtain the versions for
testing it.
The following sections give more details of the current status, and the
following steps including Apple Silicon, Windows, and Linux ARM64.
*Current Status*
Our objective is to have a running JIT for the new aarch64 architecture
(ARM 64bits). This task includes not only a new backend for the JIT
compiler but also adding support for external libraries, dependencies, and
the build process. This means having a working VM with comparable features
as the one existing in Intel X64. We are targeting all the major operating
systems running on this platform (Linux, OSX, Windows). Each of them
presents different restrictions and conditions.
After expending some time this is the current status:
- We implemented a full backend for the JIT compiler targeting aarch64.
- All the image side was adapted to run on it, tested on Ubuntu ARM 64
bits.
- We added support for: Iceberg (Libgit) / Athens (Cairo) / SDL / GTK
- We implemented a LibFFI based FFI backend as the default one for Pharo 9
in aarch64 (next to come in all platforms). This opens the door to easily
port the features to other platforms and OSes. This new implementation does
not have an impact on performance as it has comparable results with the old
implementation. Much more, this implementation opens also the door to have
runners in different threads than the VM thread (non-blocking FFI).
*Status By Platform*
*Linux*
We have a working version of the VM. It is using the same code-base and
build process for both architectures (Intel X64 / ARM aarch64). A version
can be compiled and executed in all the platforms. Also, we have integrated
the build using Open Build Services (OBS) to generate packages for all the
mainstream distributions.
Currently, the version for Debian-like systems (Debian, Ubuntu, Raspberry
pi OS, etc) is available and ready to beta test; the details for installing
them are in the end of the mail. Versions for ARCH-based and RPM-based
systems are in the working (If you want to get them or to test them please
contact us, so we can pass on the detail of how to get them).
*Windows *
We have extended the build process to fully support Microsoft Visual Studio
compilers and more flexibility to select the targets, also we are building
it to run in Windows ARM. To correctly run the VM in Windows it is needed
to build all dependencies for aarch64.
In this path, we have a working Intel x64 version with Cygwin and MSVC, and
a MSVC version for aarch64 (ARM64).
The ARM64 version is available to be beta-testing on machines with this
architecture.
The Details are at the end of the mail.
*OSX*
Our third target is to have a working version for the newest Apple silicon.
We are acquiring the corresponding hardware to test and to address the
differences in the API exposed to JIT applications. As it is the case of
the Windows VM, there is no need to change the machine code generation
backend, as it is the same that has been implemented for Linux; but to
compile external libraries and particularities of the new OS version.
Thanks for your support. In the meantime, we will continue giving you news
about the current state and where are we going.
*Beta Testing - Linux*
For Debian like distributions, the instructions are the following.
*Installation*
1) Add a new APT source, usually modifying a file in
/etc/apt/sources.list.d/, for example, we can add the pharo.list file with
the following content. Also, we need to register the key of the repository.
These steps should be done only once. We are giving a little script for
modifying the configuration. It is only needed to execute line by line.
*For Raspbian:*
echo "deb
https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…
./"
>> pharo.list
sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
wget
https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…
sudo apt-key add Release.key
*For Ubuntu:*
echo "deb
https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…
./"
>> pharo.list
sudo cp pharo.list /etc/apt/sources.list.d/pharo.list
wget
https://download.opensuse.org/repositories/devel:/languages:/pharo:/latest/…
sudo apt-key add Release.key
2) Update the repository to take the current versions
sudo apt update
3) Install Pharo9 VM
sudo apt install pharo9 libgit2
4) In case of using the interactive version (with UI) check if the packages
libsdl2-2.0-0 and libcairo2 are installed (Usually they are installed, but
depends what it is installed in the system). These are not needed for the
headless execution or if it is not used by the image.
*Getting the images:*
The images can be downloaded using zero-conf, the latest image is ready to
be used. It can be done with:
wget -O - get.pharo.org/64/90 | bash
*Running Pharo*
pharo Pharo.image eval 42 factorial
Or interactive
pharo Pharo.image --interactive
*Windows Testing*
A version of the VM is ready to be tested in Windows ARM64. A zip
containing the VM is available in:
https://files.pharo.org/vm/pharo-spur64/Windows-ARM64/PharoVM-9.0.0-4df0e56…
As in Linux, the latest image is compatible with this version of the VM.
*Error reporting*
In case of encountering errors please report them attaching:
- crash.dmp file and PharoDebug.log
- Version of the image using (in case of any community project loaded, the
names of those)
- Complete machine version (the result of executing uname -a)
- Complete information about the Linux distribution
- Steps for reproducing the error (if needed)
Thanks for the effort!!
--
Pablo Tesone.
tesonep(a)gmail.com
Jan. 11, 2021
Re: Progress Report -> Refactoring Project - ( January 4 - 8 )
by Tim Mackinnon
Hi Evelyn - I’m glad your making progress on the refactorings - they were very unloved - to the point I had mostly stopped using them as they were either broken or didn’t work right. Given refactoring was basically invented in Smalltalk we had got into a bad place in the Pharo IDE so I am so pleased to see this getting sorted - and hopefully we can get back to a position where ours work as well as those in IntelliJ or Eclipse.
On this note - I haven’t noticed whether there is some work to add decent keystroke shortcuts to the most important ones so that you do them quickly. I am equally hopeful … that its a bit easier for us to write some of our own as there are some higher level ones that I would like to try creating (but gave up on as it wasn’t particularly obvious how to do it). The mention of refactoring2 sounds promising.
Anyway - just wanted to add a big thumbs up.
Tim
On Mon, 11 Jan 2021, at 3:09 AM, EVELYN CUSI LOPEZ wrote:
> Hello everyone.
>
> Last week I did these tasks:
>
> - Fix PR of "extract method and occurrences" refactoring (https://github.com/pharo-project/pharo/pull/8193)
> - Fix "replace senders of message by another message" refactoring, the modification is for replace in all classes or only in owner class, this can be scale to replace in determinated classes (https://github.com/pharo-project/pharo/pull/8314)
> - Divide coupled logic between commands, views and refactorings (to remove NautilusRefactoring class).
> - Review how to fix Undo Refactoring issue.
>
> Tasks for this week:
>
> - Fix undo refactoring issue.
> - Migrate extract method to refactoring2.
> - Review how migrate all refactoring commands to commander2 now only works in source code context.
> - Fix rename protocol issue (https://github.com/pharo-project/pharo/issues/4461)
> - Fix add argument issue (https://github.com/pharo-project/pharo/issues/5852)
>
> Cheers,
> Evelyn
Jan. 11, 2021
Progress Report -> Refactoring Project - ( January 4 - 8 )
by EVELYN CUSI LOPEZ
Hello everyone.
Last week I did these tasks:
- Fix PR of "extract method and occurrences" refactoring (
https://github.com/pharo-project/pharo/pull/8193)
- Fix "replace senders of message by another message" refactoring, the
modification is for replace in all classes or only in owner class, this can
be scale to replace in determinated classes (
https://github.com/pharo-project/pharo/pull/8314)
- Divide coupled logic between commands, views and refactorings (to remove
NautilusRefactoring class).
- Review how to fix Undo Refactoring issue.
Tasks for this week:
- Fix undo refactoring issue.
- Migrate extract method to refactoring2.
- Review how migrate all refactoring commands to commander2 now only works
in source code context.
- Fix rename protocol issue (
https://github.com/pharo-project/pharo/issues/4461)
- Fix add argument issue (https://github.com/pharo-project/pharo/issues/5852
).
Cheers,
Evelyn
Jan. 11, 2021
This week (52 and 53/2020) on the Issue Tracker
by Marcus Denker
A bit late… this is what happened the last two weeks of 2020:
Fixes
=====
- Fix class variable entanglement issue #8045
https://github.com/pharo-project/pharo/pull/8045
- Change Sorter broken #8154
https://github.com/pharo-project/pharo/pull/8154
- Fixes in the Parser #8148
https://github.com/pharo-project/pharo/pull/8148
- Fix Morphic Shortcut Error handling #8156
https://github.com/pharo-project/pharo/pull/8156
- Fixes #6993 against P9: Incorrect error message on failed parsing of a number with high radix #6995
https://github.com/pharo-project/pharo/pull/6995
- Add `visitSelectorNode:` #8163
https://github.com/pharo-project/pharo/pull/8163
- Fix broken (deprecated) UTF8TextConverter #8177
https://github.com/pharo-project/pharo/pull/8177
Debugger
=========
- 8135-When-executing-a-doit-against-a-context-the-class-is-not-correct #8136
https://github.com/pharo-project/pharo/pull/8136
- Do not add DoIts to the cache for now. fixes #7955 #7959
https://github.com/pharo-project/pharo/pull/7959
- Debugger fuel out stack command #8141
https://github.com/pharo-project/pharo/pull/8141
Class Definitions
=================
- 8150-Trait-creation-should-use-the-traitBuilder #8151
https://github.com/pharo-project/pharo/pull/8151
- 8145-Cleaning-subclass-users #8149
https://github.com/pharo-project/pharo/pull/8149
- 8181-When-fluid-class-on-two-traitTest-are-failing #8190
https://github.com/pharo-project/pharo/pull/8190
Features
========
- 8120-RPackageOrganizer-and-RPackage-should-report-about-if-a-package-is-a-test-package #8152
https://github.com/pharo-project/pharo/pull/8152
- Switch to pharo-icon-pack v1.0.1-idea11 #8089
https://github.com/pharo-project/pharo/pull/8089
- Add a lint rule for classes to have no "Uncategorized" classes in the package #8033
https://github.com/pharo-project/pharo/pull/8033
Refactorings
============
- Fix issue 4902, remove duplicated method #8147
https://github.com/pharo-project/pharo/pull/8147
- Fix Abstract instance variables issue #8138
https://github.com/pharo-project/pharo/pull/8138
Dead Code
=========
- 8158-ContextquickStep-is-unused-and-strange #8159
https://github.com/pharo-project/pharo/pull/8159
- DelayBasicScheduler had debug code left from review #7990
https://github.com/pharo-project/pharo/pull/7990
- remove itemFilterName for the spotter, as it seems to be unused… #6700
https://github.com/pharo-project/pharo/pull/6700
Cleanups
========
- 8143-Cleaning-Fluid-Builder #8144
https://github.com/pharo-project/pharo/pull/8144
- Tag uncategorized classes in package Refactoring-Tests-Core #8019
https://github.com/pharo-project/pharo/pull/8019
- RBMethodNode #pragmas is the only instance variable for AST children that has an accessor checking for nil #7979
https://github.com/pharo-project/pharo/pull/7979
- Move business logic from new tools to system-support #7659
https://github.com/pharo-project/pharo/pull/7659
- 8127-FFICalloutAPITestmethod2-sends-non-implemented-call #8139
https://github.com/pharo-project/pharo/pull/8139
- remove unused ivar DelayBasicScheduler #8164
https://github.com/pharo-project/pharo/pull/8164
- Fix testCreationByUnnamed #8165
https://github.com/pharo-project/pharo/pull/8165
- Fix #8196 clean some shadowed variables #8197
https://github.com/pharo-project/pharo/pull/8197
Pharo 8 backports
=======
- Fixes #6993 against P8: Incorrect error message on failed parsing of a number with high radix #6994
https://github.com/pharo-project/pharo/pull/6994
- backportIfErrorDo #6154
https://github.com/pharo-project/pharo/pull/6154
Jan. 5, 2021
Progress Report -> Refactoring Project - ( December 28 - 31 )
by EVELYN CUSI LOPEZ
Hello everyone.
Last week I did these tasks:
- Migrate extract method command to commander2 (as an experiment to review
how effort we need to migrate all refactorings).
- Fix push up with sharedPools issue.
- Start to create extract setUp and tearDown methods.
Tasks for this week:
- Finish to create extract setUp and tearDown methods.
- Fix undo refactoring issue.
- Add option to limit classes where we replace senders of method to other
method (https://github.com/pharo-project/pharo/issues/8087)
- Fix push up issue (https://github.com/pharo-project/pharo/issues/2656)
Cheers,
Evelyn
Jan. 4, 2021