Monthly Archives: February 2022

[Ann] Fuel 5.0 is out.

Hi everyone,

I’m happy to announce Fuel version 5.0.0 today.

The changes to 4.0.0 aren’t huge but I’ve had to adjust the format once more.

5.0.0 comes with full support for stateful traits, i.e. traits with instance variables. You can find the release notes here: https://theseion.github.io/Fuel/releases/5.0.0/.

Cheers,
Max (on behalf of the Fuel team)

Keepers of the lighthouse’ first book

Hello

Just a little post to let you know that I’m working on a way to get new books printed and distributed by http://www.bod.com and http://www.bod.fr.

I tried with an largely updated version of Pharo with Style and the results are super nice! Now I will produce a public version so that the book can be found on all the major platforms. And then I will work and publish the following ones: testing with Pharo, Pharo by example 9, and many more.

I would like to create an editor house. So for the moment I decided to brand the edition with a new name: “Keepers of the lighthouse”, because Square Bracket Associates in hosted in Switzerland and I need a french version for regulation concerns. (Now if you have ideas for a cool editor name related to Pharo. Let me know. I was thinking about Keepers of the light or Keepers of the flamme – by reference to our love to Pharo.

— Thanks Hernan Morales for the help and thanks Damien Pollet for the hints for the format adaptation!

[Ann] Pharo Oracle Call Interface

Hi,

Pharo Oracle Call Interface (https://github.com/Ironirc/Pharo-Oracle-Call-Interface) is a new project that is currently under development. It was started and implemented by Ivo Roefs.

This library allows you to connect to an Oracle SQL RDBMS from Pharo (versions 8 and up). It provides a binding with Oracle’s OCI (also known as the Oracle Call Interface) using FFI.

Usage

Once correctly installed on your local computer, you use OciClient to interact with the Oracle database:

| client rows |

client := OciClient new
environmentString: ‘pharotst202112_medium’;
username: ‘SCOTT’;
password: ‘TIGER’; 
yourself.

rows := client query: ‘SELECT * FROM emp’.  

client close.

rows.

Installation

To install this library you clone the repository and load BaselineOfPharoOracleCallInterface. This can be done using the Iceberg UI tools or with the following script:

Metacello new
baseline: ‘PharoOracleCallInterface’;
repository: ‘github://Ironirc/Pharo-Oracle-Call-Interface:main/‘;
load.

You have to make sure that the Pharo VM can access/load the necessary native library for your client side OS platform. The easiest way to get started is using Oracle Instant Client and an Oracle Cloud account. You also have to set up and configure access, contact your DBA for help.

Status

This project is new and currently under development. It should not be used for production applications. Basic queries are working on 32 and 64 bit Windows and 64 bit macOS.

We are looking for collaborators, fellow developers who can help.

Ivo & Sven

[Ann] LZ4 in Pharo for Pharo

Hi,

Pharo LZ4 Tools (https://github.com/svenvc/pharo-lz4-tools) is an implementation of LZ4 compression and decompression in pure Pharo.

LZ4 is a lossless compression algorithm that is focused on speed. It belongs to the LZ77 family of byte-oriented compression schemes.

– https://en.wikipedia.org/wiki/LZ4_(compression_algorithm)
– https://lz4.github.io/lz4/
– https://github.com/lz4/lz4

Both the frame format (https://github.com/lz4/lz4/blob/dev/doc/lz4_Frame_format.md) as well as the block format (https://github.com/lz4/lz4/blob/dev/doc/lz4_Block_format.md) are implemented. Dictionary based compression/decompression is available too. The XXHash32 algorithm is also implemented.

Of course this implementation is not as fast as highly optimised native implementations, but it works quite well and is readable/understandable, if you like this kind of stuff. It can be useful to interact with other systems using LZ4.

Sven

Another week of work

We merged 15 PRs and closed 31 Issues.

Fixes
=====

– Increasing minimum size for Calypso browser #10838
https://github.com/pharo-project/pharo/pull/10838

– Add back beautifulcomments #10832
https://github.com/pharo-project/pharo/pull/10832

– 10800-Broken-FT2-library-setting #10851
https://github.com/pharo-project/pharo/pull/10851

Breakpoint interaction
======================

– Breakpoint position from cursor #10812
https://github.com/pharo-project/pharo/pull/10812

– Inserting variable breakpoint when the selected node is variable
https://github.com/pharo-project/pharo/pull/10841


Cleanup
=======

– Remove Class>>isAbstract as it actually call the super class method #10825
https://github.com/pharo-project/pharo/pull/10825

– Remove Spec1 Critic Browser #10816
https://github.com/pharo-project/pharo/pull/10816

– Remove Spec1 #10818
https://github.com/pharo-project/pharo/pull/10818

– Cleanup-unsent-Deprecated90 #10833
https://github.com/pharo-project/pharo/pull/10833

– fix-users-canBeGlobalVarInitial #10820
https://github.com/pharo-project/pharo/pull/10820

– Cleanup : remove Class>>isValidTraitName. No more sender of it in the… #10826
https://github.com/pharo-project/pharo/pull/10826

– Replace Moose algos graphs by AI graphs algorithms #10839
https://github.com/pharo-project/pharo/pull/10839

– Integrate Roassal3 v0.9.9e #10846
https://github.com/pharo-project/pharo/pull/10846

Comments
========

– 10214 improving comments and adding tests to tree searcher #10636
https://github.com/pharo-project/pharo/pull/10636

– 10214 improving comments and adding tests to tree searcher #10817
https://github.com/pharo-project/pharo/pull/10817

Pharo days 2022 registration is open!

Pharo Days

March 3rd and 4th, Lille, France

https://days.pharo.org/
————————————————————————————————————————

Inscriptions are open!

Do not miss the opportunity to meet the Pharo programming environment and its community! PharoDays is a unique event where you can meet other Pharoers, discover latest advances, and share your experience. Hand-ons sessions are there to help you getting started on advance topics. Follow the “Show us your project” sessions to get immersed in Pharo lively community.

This year, PharoDays is a mix of technical talks and hand-ons. Come to join business chat and enjoy friendly atmosphere and discuss with experts.
Check the tentative schedule: from building command line interfaces to web applications, through modern desktop applications, visualisations, debugging and even a live music performance!

See you in march!