This week (42/2021) on the Pharo Issue Tracker

MD
Marcus Denker
Fri, Oct 22, 2021 9:05 AM

We merged 34 PRs and closed 35 issues.

Literal Sharing

Since Pharo9, literals are compiled as read-only objects. This used to be a source of ugly bugs (code accidentally changing a literal, but the source not showing it).

As we now can not change literals, and identity changes anyway on recompile, we are free to unify literals over the whole image.

This seems to save ~2MB with the current build.

We do this once as part of the build, users with large code bases can re-run it (see ImageCleaner>>#shareLiterals) and save some space.

Speed

Features

Class Parser

Work continous on the class parser / fluid class definitions

Fixes

Cleanup - Old Blocks / Bytecode

Cleaning the core system and compiler

Cleanup

Pharo9

[P9] 8170-Pharo-image-freeze-on-Windows-after-some-hours-Idle #10179
https://github.com/pharo-project/pharo/pull/10179

We merged 34 PRs and closed 35 issues. Literal Sharing =============== Since Pharo9, literals are compiled as read-only objects. This used to be a source of ugly bugs (code accidentally changing a literal, but the source not showing it). As we now can not change literals, and identity changes anyway on recompile, we are free to unify literals over the whole image. This seems to save ~2MB with the current build. We do this once as part of the build, users with large code bases can re-run it (see ImageCleaner>>#shareLiterals) and save some space. - Enable-SharedLiterals #10186 https://github.com/pharo-project/pharo/pull/10186 - 10190-Literal-Sharing-unify-nested-arrays #10195 https://github.com/pharo-project/pharo/pull/10195 Speed ===== - Use-equivalentTo-ReEquivalentSuperclassMethodsRule #10183 https://github.com/pharo-project/pharo/pull/10183 Features ======== - 10200-add-isClassSide-to-CompiledMethod #10202 https://github.com/pharo-project/pharo/pull/10202 - 4211 easy support for equality and hash with nice default behavior #4803 https://github.com/pharo-project/pharo/pull/4803 - Migrating RBInlineMethodRefactoring into Refactoring2 #10163 https://github.com/pharo-project/pharo/pull/10163 - Parameter refactoring migrations #10162 https://github.com/pharo-project/pharo/pull/10162 Class Parser ============ Work continous on the class parser / fluid class definitions - Changing uses: and trait: to use traits: in the class definition. #10199 https://github.com/pharo-project/pharo/pull/10199 - Removing #<< from SequentialCollection class #10197 https://github.com/pharo-project/pharo/pull/10197 Fixes ===== - Autofixes on class side raise DNU #10235 https://github.com/pharo-project/pharo/pull/10235 - fix: #10211 addSearch: -> addRule: adding two little tests to start #10220 https://github.com/pharo-project/pharo/pull/10220 - 9973-Different-behavior-in-Playground-for-deprecated-method-transformed-vs-nontransformed-deprecations #10222 https://github.com/pharo-project/pharo/pull/10222 - [P10] 8170-Pharo-image-freeze-on-Windows-after-some-hours-Idle-P10 #10188 https://github.com/pharo-project/pharo/pull/10188 - 10193-testNoEquivalentSuperclassMethods-failing-on-ci #10194 https://github.com/pharo-project/pharo/pull/10194 Cleanup - Old Blocks / Bytecode =============================== Cleaning the core system and compiler - 9929-Reflectivity-compiler-still-uses-pushClosureCopyCopiedValuesargsjumpTo #10177 https://github.com/pharo-project/pharo/pull/10177 - Cleanup-FullBlocks: remove dead code #10221 https://github.com/pharo-project/pharo/pull/10221 - Cleanup-optionFullBlockClosure #10229 https://github.com/pharo-project/pharo/pull/10229 - Remove-EncoderForV3PlusClosures #10181 https://github.com/pharo-project/pharo/pull/10181 - Fix 10178: Cleanup OldBlocks Compiler/Decompiler #10180 https://github.com/pharo-project/pharo/pull/10180 Cleanup ======= - Cleanup-Deprecated9-More #10236 https://github.com/pharo-project/pharo/pull/10236 - Release test to ensure we have no protocol names with leading or trailing spaces #10233 https://github.com/pharo-project/pharo/pull/10233 - Mark a few abstract refactorings #10246 https://github.com/pharo-project/pharo/pull/10246 - Mark abstract classes in Ring #10250 https://github.com/pharo-project/pharo/pull/10250 - "Tools-Test" package should be "Tools-Tests" #10244 https://github.com/pharo-project/pharo/pull/10244 - Fix lint in Array>>#copyWithDependent: #10252 https://github.com/pharo-project/pharo/pull/10252 - Cleanup: no leading or trailing space in method category name #10230 https://github.com/pharo-project/pharo/pull/10230 - 10205-LiteralVariable-classcheckValidName-has-commented-out-code #10207 https://github.com/pharo-project/pharo/pull/10207 - Remove empty protocols in ZnStaticFileServerDelegate #10224 https://github.com/pharo-project/pharo/pull/10224 - Cleanup-hasLinks #10206 https://github.com/pharo-project/pharo/pull/10206 - 10191-MCClassDefinitionring2LayoutType-misses-Double-layouts #10192 https://github.com/pharo-project/pharo/pull/10192 - Fix a few lints regarding categorization of "converting" #10175 https://github.com/pharo-project/pharo/pull/10175 - Adopte testNoUncategorizedMethods #10169 https://github.com/pharo-project/pharo/pull/10169 Pharo9 ====== [P9] 8170-Pharo-image-freeze-on-Windows-after-some-hours-Idle #10179 https://github.com/pharo-project/pharo/pull/10179