[Pharo-dev] Pharo 7 changelog proposal

Alistair Grant akgrant0710 at gmail.com
Sun Dec 23 12:22:58 EST 2018


Hi Pavel,

You've mentioned the Zinc update and deprecating FileStream, but I
think the adoption of Zinc streams as the default is probably worth
it's own entry (that was Pharo 7, right?, maybe my memory is failing).

Cheers,
Alistair

On Sun, 23 Dec 2018 at 12:29, Pavel Krivanek <pavel.krivanek at gmail.com> wrote:
>
> Hi,
>
> I'm trying to summarize the changelog for Pharo 7 (based on about 2500 merged PRs, not counting standalone commits to Iceberg and Calypso). If something more should be mentioned, please let me know.
>
> Revolutionary kernel changes
> - bootstrap
> - modular stateful traits
> - traits flattening in kernel packages
> - new sources file for every bootstrapped version, empty changes
> - new class builder
> - binary packages loading (Hermes)
>
> Infrastructure changes
> - switch to GitHub
> - Tonel code format
> - update building infrastructure to Jenkins 2
>
> Code management
> - Calypso, the new system browser
>   - new navigation model
>   - faster UI
>   - tabs toolbar instead of single source code panel
>   - explicit commands instead of duplicated menu and shortcuts
>   - extendable by plugins
>   - suitable for the remote scenario
>   - "dynamic protocols", support multiple tags per method
>   - not required star convention for class extension
>   - support multiple tags per class
>   - visibility option for inherited methods
>   - methods inherited from traits are not shown by default
>   - variable view as the special mode for method group view.
>   - better keyboard navigation
>   - and many more
>
> Iceberg
> - a new friendly user interface
> - simplification of solving problems with repositories
> - workflow simplification
> - better GitHub, BitBucket, GitLab support
> - improved code merging and comparisons
> - new code serialization format (Tonel)
> - repositories metadata
> - documentation
> - better error handling, tags support
> - improved Iceberg-Metacello integration
> - credentials store
>
> Cleanups
> - remove Nautilus
> - remove UpdateStream
> - remove all Configurations
> - remove ShoreLine-Report
> - remove TxText
> - remove PluggableTabBarMorph
> - remove the old Compiler
> - remove Watery theme
> - remove Versionner
> - remove Komitter
> - remove LegacyWeakSubscription
> - continue on deprecation of FileStream
> - dead code cleanups
> - code organization cleanups
> - unify categorization of common methods
> - cleanups of object inspection protocol
> - start with Ring deprecation
> - better structure of packages
> - package comments
>
> Updates
> - Zinc
> - Epicea
> - FFI
> - Metacello
> - Fuel
>
> New
> - Calypso
> - integrate WebBrowser
> - integrate ReferenceFinder
> - Hermes
> - Refactoring 2
> - Commander
> - ClassAnnotation
>
> Spec
> - ComposableModel renamed to ComposablePresenter
> - new calendar presenter
> - Spec-Demo
> - improve Spec linking to domain models
>
> Look & Feel
> - use the white theme by default
> - improve themes switching
> - main menu bar
> - new window management shortcuts
> - better support of fallback bitmap fonts
> - improved Inspector refreshing
> - Spotter is looking for opened windows
> - display scale factor
> - FastTable improvements
>
> VM interface
> - DoubleWord and DoubleByte arrays
> - add EncoderForSistaV1
> - read-only literals support
> - improvements and fixes for 64-bit support
> - fixes for FullBlockClosure
> - support of the new bytecode set
>
> Reflectivity
> - breakpoints improvements
> - test coverage using metalinks
> - reflectivity and metalinks improvements
>
> Other
> - startup running in a fresh process
> - better pin messages
> - NewValueHolder and Model API unification
> - better working and image directories meaning separation
> - SortFunctions composable
> - better OSWindow support
> - convert rules to the Renraku architecture
> - class and method comments improvements
> - extensible Playground (pageActionOrder:)
> - optional password management for command line handlers
> - system dependencies tests
> - unify way to obtain package manifests



More information about the Pharo-dev mailing list