[Pharo-users] Re: pharo image and vm

2022-03-14 Thread Otto Behrens
Thanks Esteban,

I'm on Ubuntu 16.04. Where did I miss the "pointed in the download page"?
If I go to https://pharo.org/download, I can see a section called
"Pharo standalone", with a link there to "

   -  Pharo VM 9 for Linux: 64bit (default)
   <https://files.pharo.org/get-files/90/pharo64-linux-stable.zip> | 32bit
   <https://files.pharo.org/get-files/90/pharo-linux-stable.zip>

Why would that not work?

I really prefer not to install a deb. More work for me now.

Otto Behrens

+27 82 809 2375
[image: FINWorks]
[image: FINWorks] <http://za.linkedin.com/in/waltherbehrens>
www.finworks.biz

Disclaimer & Confidentiality Note: This email is intended solely for the
use of the individual or entity named above as it may contain information
that is confidential and privileged. If you are not the intended recipient,
be advised that any dissemination, distribution or copying of this email is
strictly prohibited. FINWorks cannot be held liable by any person other
than the addressee in respect of any opinions, conclusions, advice or other
information contained in this email.


On Mon, Mar 14, 2022 at 6:39 PM Esteban Lorenzano  wrote:

> Hi,
>
> which is your distribution?
> In anycase, as pointed in the download page, preferred way in linux to
> install the vm is through openbuildservice:
>
>
> https://software.opensuse.org/download.html?project=devel:languages:pharo:latest=pharo9-ui
> can you try one of that and tell us if problem remains?
>
> Esteban
>
> On Mar 14 2022, at 5:28 pm, Otto Behrens  wrote:
>
> Hi,
>
> I downloaded a new pharo from
>
> https://files.pharo.org/get-files/90/pharo64.zip
> https://files.pharo.org/get-files/90/pharo64-linux-stable.zip
>
> When I start up the image with the VM, I get "Your VM is too old for this
> image. Please download the latest VM"
>
> None of the shortcut keys seem to work. Something like -c does
> nothing. Does this have something to do with the incorrect VM?
>
> What am I missing here?
>
> Thanks for your help
>
> Otto Behrens
>
> +27 82 809 2375
> [image: FINWorks]
> [image: FINWorks] <http://za.linkedin.com/in/waltherbehrens>
> www.finworks.biz
>
> Disclaimer & Confidentiality Note: This email is intended solely for the
> use of the individual or entity named above as it may contain information
> that is confidential and privileged. If you are not the intended recipient,
> be advised that any dissemination, distribution or copying of this email is
> strictly prohibited. FINWorks cannot be held liable by any person other
> than the addressee in respect of any opinions, conclusions, advice or other
> information contained in this email.
>
>


[Pharo-users] pharo image and vm

2022-03-14 Thread Otto Behrens
Hi,

I downloaded a new pharo from

https://files.pharo.org/get-files/90/pharo64.zip
https://files.pharo.org/get-files/90/pharo64-linux-stable.zip

When I start up the image with the VM, I get "Your VM is too old for this
image. Please download the latest VM"

None of the shortcut keys seem to work. Something like -c does
nothing. Does this have something to do with the incorrect VM?

What am I missing here?

Thanks for your help

Otto Behrens

+27 82 809 2375
[image: FINWorks]
[image: FINWorks] <http://za.linkedin.com/in/waltherbehrens>
www.finworks.biz

Disclaimer & Confidentiality Note: This email is intended solely for the
use of the individual or entity named above as it may contain information
that is confidential and privileged. If you are not the intended recipient,
be advised that any dissemination, distribution or copying of this email is
strictly prohibited. FINWorks cannot be held liable by any person other
than the addressee in respect of any opinions, conclusions, advice or other
information contained in this email.


[Pharo-users] Re: Upgrade job

2021-09-08 Thread Otto Behrens
Thanks, Steph

On Thu, 09 Sep 2021, 07:26 stephane.duca...@free.fr, <
stephane.duca...@free.fr> wrote:

> Hello
>
> I will distribute this announce to other lists.
> if you encounter any problems related to Pharo itself (which should not be
> the case please let us the consortium knows
> so that it takes action. We are investigating Grease to see if there is a
> mismatch with the new exception for the debugger.
>
> S
>
> > On 8 Sep 2021, at 19:45, Otto Behrens  wrote:
> >
> > Hi,
> >
> > We are running a seaside app on GemStone 3.4.1 and develop in Pharo 6.1.
> >
> > Is there someone out there who would be interested in taking on the job
> of upgrading both GemStone, Pharo and Seaside to recent versions? This is
> in our environment, with numerous databases, testing and dev environments.
> >
> > It would be preferable if the person (or people) understand Monticello,
> Metacello and Seaside packages that work together.
> >
> > This would be on a contract basis until the project is complete. Please
> contact me directly if you are interested.
> >
> > Kind regards
> > Otto Behrens
>
>
>


[Pharo-users] Upgrade job

2021-09-08 Thread Otto Behrens
Hi,

We are running a seaside app on GemStone 3.4.1 and develop in Pharo 6.1.

Is there someone out there who would be interested in taking on the job of
upgrading both GemStone, Pharo and Seaside to recent versions? This is in
our environment, with numerous databases, testing and dev environments.

It would be preferable if the person (or people) understand Monticello,
Metacello and Seaside packages that work together.

This would be on a contract basis until the project is complete. Please
contact me directly if you are interested.

Kind regards
Otto Behrens


Re: [Pharo-users] [ANN] GitBridge

2019-07-17 Thread Otto Behrens
Thanks a lot! this is great functionality.

Otto

On Tue, Jul 16, 2019 at 10:08 PM Cyril Ferlicot D. 
wrote:

> Hi!
>
> Today I released the v1 of a project I wanted to do since a long time:
> GitBridge.
>
> The goal of the project is to easily access external resources stored in
> the git repository of the project and other information.
>
> For more infos check the Quick start or documentation present at:
> https://github.com/jecisc/GitBridge
>
> When Monticello was the most common VCS usable with Pharo we stored a
> lot of external resources in the image. Now we are able to store them
> outside, get a lighter image and make it easier to edit and version them!
>
> This can be useful to store test resources, CSS/JS files for web
> applications, documentation, etc.
>
> This can also be useful to get from the application some information
> such as the current version of the application instead of hard-coding it
> in a method to update at each release.
>
> It implementation relies on Iceberg and the repositories registered in it.
>
> --
> Cyril Ferlicot
> https://ferlicot.fr
>
>


Re: [Pharo-users] shortlist of businesses providing professional Pharo services in the Netherlands/Europe

2019-05-22 Thread Otto Behrens
Hi,

We have had some experience with this kind of question, although we are
using Pharo to develop, but GemStone in production. We provide our systems
on a SaaS model to all our customers.

We have set up Escrow agreements with some of our clients, which involves a
third party company. At the very first level, this company acts as a
"safekeeper" and verifier of the escrow event. This means that the escrow
agent can start up your application and keep it running, until your
customer have found a solution. Should the customer need more than thant,
the escrow agent can provide the ability to maintain the application, until
the customer have a solution. This solution could be that the customer
acquires the IP (intellectual property) and proceeds to develop in-house or
finds an alternative provider of the service.

Setting up an agreement like this or at least giving your potential
customer the comfort that there is option of an escrow agreement, does a
lot for risk aversity, in our experience.

The better option is to find an escrow agent that can work on your
application, but at the very basic level it requires that the agent can at
least "run" the application (eg ensure that it is up, ensure backups are
made, etc).

If you need more info, please let me know,

Otto Behrens

+27 82 802 2375
[image: FINWorks]
[image: FINWorks] <http://za.linkedin.com/in/waltherbehrens>
www.finworks.biz

Disclaimer & Confidentiality Note: This email is intended solely for the
use of the individual or entity named above as it may contain information
that is confidential and privileged. If you are not the intended recipient,
be advised that any dissemination, distribution or copying of this email is
strictly prohibited. FINWorks cannot be held liable by any person other
than the addressee in respect of any opinions, conclusions, advice or other
information contained in this email.


On Wed, May 22, 2019 at 11:18 AM Jonathan van Alteren <
jvalte...@objectguild.com> wrote:

> Hi all,
>
> One of our potential clients has asked about business continuity regarding
> our use of the Pharo platform. In other words, they want to know which
> companies can take over development/maintenance of their Pharo application,
> in the unlikely event that we end our services.
>
> Besides the Pharo Consortium members, is there perhaps a shortlist of
> professional Pharo software service businesses in the Netherlands and/or
> Europe?
>
> Do you know businesses providing professional Pharo services in the
> Netherlands?
>
>
> Kind regards,
>
> Jonathan van Alteren
> Object Guild (https://objectguild.com)
>


Re: [Pharo-users] [Pharo-dev] [OT] (slightly) What makes other dialects "enjoyable" for you? (WAS: difference between double dispatch...)

2019-04-12 Thread Otto Behrens
Hi,

We use Pharo as a development environment and we run a business. So, for us
stability and an LTS version makes sense.

I think there should be a compromise. The Ubuntu LTS model is a compromise
in a sense because the releases between the LTS versions include the newer
/ more experimental stuff.

>From what I understand, the fork of Pharo from Squeak was intended to
provide more stability and make Pharo an environment that businesses like
us could use. This means that there must be a reasonable degree of
stability in Pharo. I also understand that the goal was to get to a minimal
Pharo and build up by loading what you need on top of that. And other
reasons.

Our experience was that Pharo 2 was quite stable, Pharo 3 was even better.
We lived on Pharo 3 for a very long time. Pharo 4 broke, 5 was better and
we're now on 6.1. None of these are as good as Pharo 3 was from a stability
point of view.

I understand the innovation dilemma and wish there was a clean answer, but
believe we need both.

I wish I could get a tiny gap to work on Pharo itself and not have this
relentless focus on survival in the business. I thank you all for your hard
work on Pharo.

Cheers

Otto Behrens

+27 82 802 2375
[image: FINWorks]
[image: FINWorks] <http://za.linkedin.com/in/waltherbehrens>
www.finworks.biz


On Fri, Apr 12, 2019 at 10:26 AM Norbert Hartl  wrote:

> So you earn money with pharo? Isn’t that a bit risky if you don’t have
> someone to ask if you have a critical problem? That is what you get when
> you pay into the consortium. Is it that you demand that from the mailing
> list and the people that work in their free time?
>
> Norbert
>
> > Am 12.04.2019 um 03:06 schrieb john pfersich :
> >
> > +1 on the long term support idea. Changing an application every year to
> support a new version of Pharo is a nonstarter for most of my clients.
> >
> > /*—-*/
> > Sent from my iPhone
> > https://boincstats.com/signature/-1/user/51616339056/sig.png
> > See https://objectnets.net and https://objectnets.org
> >
> >> On Apr 11, 2019, at 06:33, "jtuc...@objektfabrik.de" <
> jtuc...@objektfabrik.de> wrote:
> >>
> >> +1 on the long term support and stability topic.
> >
>
>
>


Re: [Pharo-users] pharo bash script with startup

2018-06-27 Thread Otto Behrens
Thanks for the effort guys.

I tried to download the image, sources and vm separately (basically
extracted what https://get.pharo.org/64/61+vm does), but ran into fresh
trouble.

Firstly, is "wget -O - https://get.pharo.org/64/61+vm | bash" not risky in
terms of security? It should be quite possible to inject a lovely trojan
horse with this, or not?

Secondly, the pharo bash script that it generates is different to the one
in the zip. The directory structure (where the image & vm goes) is also
different. Why is that?

I started the image (http://files.pharo.org/get-files/61/pharo64.zip) with
the vm (http://files.pharo.org/get-files/61/pharo-linux-stable.zip), and
got the following, which I tried to do, but that did not take the message
away:

pthread_setschedparam failed: Operation not permitted
This VM uses a separate heartbeat thread to update its internal clock
and handle events.  For best operation, this thread should run at a
higher priority, however the VM was unable to change the priority.  The
effect is that heavily loaded systems may experience some latency
issues.  If this occurs, please create the appropriate configuration
file in /etc/security/limits.d/ as shown below:

cat < wrote:

> When we get confirmation of success - we need to make sure this gets
> applied to both zeroconf and official downloads.
>
> Anything we can do to simplify and make it robust is gratefully
> appreciated as there is nothing worse than falling at the lunch hurdle.
>
> It’s cool to see so many clever minds on this.
>
> Tim
>
> Sent from my iPhone
>
> > On 27 Jun 2018, at 19:52, Hernán Morales Durand <
> hernan.mora...@gmail.com> wrote:
> >
> > 2018-06-27 10:50 GMT-03:00 K K Subbu :
> >>> On Wednesday 27 June 2018 06:39 PM, K K Subbu wrote:
> >>>
> >>>
> >>> The double quotes are required here to skip splitting arguments with
> >>> embedded spaces into different words.
> >>>
> >>> I suspect the error is earlier in the image=$@ assignment. This
> requires
> >>> double quotes. Double quotes are also required while calling zenity to
> avoid
> >>> word splitting.
> >>
> >>
> >> My earlier fix is also in error, Sorry!
> >>
> >> Essentially, we are mixing up single value variable (image) with
> argument
> >> array ($@). I found a cleaner fix :
> >>
> >> 
> >> if [ $# -eq 0 ]; then
> >>image_count=`ls "$RESOURCES"/*.image 2>/dev/null |wc -l`
> >>if [ "$image_count"  -eq 1 ]; then
> >>set -- "$RESOURCES"/*.image
> >>elif which zenity &>/dev/null; then
> >>set -- "$(zenity --title 'Select an image'
> --file-selection
> >> --filename "$RESOURCES/" --file-filter '*.image' --file-
> >> filter '*')"
> >>else
> >>set -- "$RESOURCES/Pharo6.1-64.image"
> >>fi
> >> fi
> >>
> >
> > Use $() instead of backticks for command substitution:
> > http://mywiki.wooledge.org/BashFAQ/082
> >
> > Cheers,
> >
> > Hernán
> >
> >> # execute
> >> exec "$LINUX/pharo" \
> >>--plugins "$LINUX" \
> >>--encoding utf8 \
> >>-vm-display-X11 \
> >>"$@"
> >> 
> >>
> >> HTH .. Subbu
> >>
> >
>
>
>


Re: [Pharo-users] pharo bash script with startup

2018-06-27 Thread Otto Behrens
Thanks, but it does not. I give a full path for both the image and the
startup files. It must have something to do with the stuff packaged in the
zip file.



On Wed, Jun 27, 2018 at 9:59 AM, Norbert Hartl  wrote:

>
>
> Am 27.06.2018 um 09:38 schrieb Otto Behrens :
>
> I am running with an absolute image path.
>
> The issue is definitely exec "$image" in the script. If I remove the "",
> i.e. exec $image, then it works.
>
> /opt/pharo/pharo6.1-64/bin/lib/pharo/5.0-201708271955/pharo "my.image
> startup.st"
>
> Does just giving a path still work. I use the commandline option
>
> vm pharo.image *st* path/to/script.st
>
> Norbert
>
> gives me the same problem
>
> On Wed, Jun 27, 2018 at 9:28 AM, Julián Maestri  wrote:
>
>> Try with ./pharo or try with an absolute image path.
>>
>> On Wed, Jun 27, 2018, 04:03 Tim Mackinnon  wrote:
>>
>>> I’ve not noticed that problem on ubuntu or AWS lambda so there must be
>>> something different going on.
>>>
>>> Sent from my iPhone
>>>
>>> On 27 Jun 2018, at 07:30, Otto Behrens  wrote:
>>>
>>> Hi,
>>>
>>> I just installed pharo 6.1 using the .zip file (
>>> http://files.pharo.org/platform/Pharo6.1-64-linux.zip) and battled to
>>> start up pharo with arguments.
>>>
>>> The issue is that the pharo bash script (in the extracted home dir)
>>> quotes all arguments:
>>>
>>> # execute
>>> exec "$LINUX/pharo" \
>>> --plugins "$LINUX" \
>>> --encoding utf8 \
>>> -vm-display-X11 \
>>> "$image"
>>>
>>> where
>>>
>>> image = $*
>>>
>>> The impact is that if I want to run a startup script, eg.
>>>
>>> pharo my.image startup.st
>>>
>>> pharo complains with "Could not open the Pharo image file: 'my.image
>>> startup.st'
>>>
>>> So I must run the executable directly?
>>>
>>> If so, some questions about the options that the bash script passes in:
>>> --plugins "$LINUX"is this necessary? will the default not be enough?
>>> --encoding utf8  the usage output says for example --textenc
>>> default is "UTF-8". Is utf8 the same thing?
>>> -vm-display-X11I tried starting without this, and it worked. Do
>>> I need to explicitly start with this?
>>>
>>> Thanks
>>> Otto
>>>
>>>
>
>


Re: [Pharo-users] pharo bash script with startup

2018-06-27 Thread Otto Behrens
I extracted the file that I downloaded again and checked. The file (
http://files.pharo.org/platform/Pharo6.1-64-linux.zip) seems to have an old
VM zipped:

/opt/pharo/pharo6.1-64/bin/lib/pharo/5.0-201708271955

What I get with

wget -O - https://get.pharo.org/64/61+vm | bash

is:

pharo-vm/lib/pharo/5.0-201805090836



On Wed, Jun 27, 2018 at 9:45 AM, Guillermo Polito  wrote:

> That's strange, is this a new problem or you always had it?
>
> I've just tested it, pharo 61 64 bits.
>
>  $ wget -O - https://get.pharo.org/64/61+vm | bash
> [SNIP]
> $ ./pharo Pharo.image eval 1+1
> 2
>
> Maybe the so called starter scripts (pharo, pharo-ui) are not the same
> using zeroconf and by downloading a plain vm like that?
>
> On Wed, Jun 27, 2018 at 9:38 AM Otto Behrens  wrote:
>
>> I am running with an absolute image path.
>>
>> The issue is definitely exec "$image" in the script. If I remove the "",
>> i.e. exec $image, then it works.
>>
>> /opt/pharo/pharo6.1-64/bin/lib/pharo/5.0-201708271955/pharo "my.image
>> startup.st"
>>
>> gives me the same problem
>>
>> On Wed, Jun 27, 2018 at 9:28 AM, Julián Maestri 
>> wrote:
>>
>>> Try with ./pharo or try with an absolute image path.
>>>
>>> On Wed, Jun 27, 2018, 04:03 Tim Mackinnon  wrote:
>>>
>>>> I’ve not noticed that problem on ubuntu or AWS lambda so there must be
>>>> something different going on.
>>>>
>>>> Sent from my iPhone
>>>>
>>>> On 27 Jun 2018, at 07:30, Otto Behrens  wrote:
>>>>
>>>> Hi,
>>>>
>>>> I just installed pharo 6.1 using the .zip file (http://files.pharo.org/
>>>> platform/Pharo6.1-64-linux.zip) and battled to start up pharo with
>>>> arguments.
>>>>
>>>> The issue is that the pharo bash script (in the extracted home dir)
>>>> quotes all arguments:
>>>>
>>>> # execute
>>>> exec "$LINUX/pharo" \
>>>> --plugins "$LINUX" \
>>>> --encoding utf8 \
>>>> -vm-display-X11 \
>>>> "$image"
>>>>
>>>> where
>>>>
>>>> image = $*
>>>>
>>>> The impact is that if I want to run a startup script, eg.
>>>>
>>>> pharo my.image startup.st
>>>>
>>>> pharo complains with "Could not open the Pharo image file: 'my.image
>>>> startup.st'
>>>>
>>>> So I must run the executable directly?
>>>>
>>>> If so, some questions about the options that the bash script passes in:
>>>> --plugins "$LINUX"is this necessary? will the default not be enough?
>>>> --encoding utf8  the usage output says for example --textenc
>>>> default is "UTF-8". Is utf8 the same thing?
>>>> -vm-display-X11I tried starting without this, and it worked. Do
>>>> I need to explicitly start with this?
>>>>
>>>> Thanks
>>>> Otto
>>>>
>>>>
>>
>
> --
>
>
>
> Guille Polito
>
> Research Engineer
>
> Centre de Recherche en Informatique, Signal et Automatique de Lille
>
> CRIStAL - UMR 9189
>
> French National Center for Scientific Research - *http://www.cnrs.fr
> <http://www.cnrs.fr>*
>
>
> *Web:* *http://guillep.github.io* <http://guillep.github.io>
>
> *Phone: *+33 06 52 70 66 13
>


Re: [Pharo-users] pharo bash script with startup

2018-06-27 Thread Otto Behrens
I am running with an absolute image path.

The issue is definitely exec "$image" in the script. If I remove the "",
i.e. exec $image, then it works.

/opt/pharo/pharo6.1-64/bin/lib/pharo/5.0-201708271955/pharo "my.image
startup.st"

gives me the same problem

On Wed, Jun 27, 2018 at 9:28 AM, Julián Maestri  wrote:

> Try with ./pharo or try with an absolute image path.
>
> On Wed, Jun 27, 2018, 04:03 Tim Mackinnon  wrote:
>
>> I’ve not noticed that problem on ubuntu or AWS lambda so there must be
>> something different going on.
>>
>> Sent from my iPhone
>>
>> On 27 Jun 2018, at 07:30, Otto Behrens  wrote:
>>
>> Hi,
>>
>> I just installed pharo 6.1 using the .zip file (http://files.pharo.org/
>> platform/Pharo6.1-64-linux.zip) and battled to start up pharo with
>> arguments.
>>
>> The issue is that the pharo bash script (in the extracted home dir)
>> quotes all arguments:
>>
>> # execute
>> exec "$LINUX/pharo" \
>> --plugins "$LINUX" \
>> --encoding utf8 \
>> -vm-display-X11 \
>> "$image"
>>
>> where
>>
>> image = $*
>>
>> The impact is that if I want to run a startup script, eg.
>>
>> pharo my.image startup.st
>>
>> pharo complains with "Could not open the Pharo image file: 'my.image
>> startup.st'
>>
>> So I must run the executable directly?
>>
>> If so, some questions about the options that the bash script passes in:
>> --plugins "$LINUX"is this necessary? will the default not be enough?
>> --encoding utf8  the usage output says for example --textenc
>> default is "UTF-8". Is utf8 the same thing?
>> -vm-display-X11I tried starting without this, and it worked. Do I
>> need to explicitly start with this?
>>
>> Thanks
>> Otto
>>
>>


[Pharo-users] pharo bash script with startup

2018-06-27 Thread Otto Behrens
Hi,

I just installed pharo 6.1 using the .zip file (
http://files.pharo.org/platform/Pharo6.1-64-linux.zip) and battled to start
up pharo with arguments.

The issue is that the pharo bash script (in the extracted home dir) quotes
all arguments:

# execute
exec "$LINUX/pharo" \
--plugins "$LINUX" \
--encoding utf8 \
-vm-display-X11 \
"$image"

where

image = $*

The impact is that if I want to run a startup script, eg.

pharo my.image startup.st

pharo complains with "Could not open the Pharo image file: 'my.image
startup.st'

So I must run the executable directly?

If so, some questions about the options that the bash script passes in:
--plugins "$LINUX"is this necessary? will the default not be enough?
--encoding utf8  the usage output says for example --textenc
default is "UTF-8". Is utf8 the same thing?
-vm-display-X11I tried starting without this, and it worked. Do I
need to explicitly start with this?

Thanks
Otto


Re: [Pharo-users] copy & paste

2018-06-26 Thread Otto Behrens
>
> > The stable version on opensuse is quite old. And apparently not 6.1.
> > So, does this sadly mean that the paragraph on the top of the page
> > "Zip file" is updated, but the rest of the page not?
>
> Very likely, as the Zip packager (human) is probable not the Suse
> packager (another human)
>
> Does the zip package work for you?
>

I prefer to use the deb package because I make it part of my ubuntu
installation.

Does this mean that even the .zip package could be old?

I would just like to generally say that this could influence how people out
there see Pharo. If a newbie tries it out, he or she may just get stuck
with stupid things like this copy & paste (by trying to copy an example
from the Pharo site), only to realise that this is an old version. It gives
the impression that the "stable" version is not stable. Old campaigners
like me might persist, but most people will give up right here.

I think I should revert to the .zip.


Re: [Pharo-users] copy & paste

2018-06-25 Thread Otto Behrens
Thanks for the answer.

We use the package installation for ubuntu described here:
https://pharo.org/gnu-linux-installation-64.

The stable version on opensuse is quite old. And apparently not 6.1. So,
does this sadly mean that the paragraph on the top of the page "Zip file"
is updated, but the rest of the page not?



On Sun, Jun 24, 2018 at 11:58 AM, Hilaire  wrote:

> Hi Otto,
>
> I had this issue, but it seems to be gone with P7, at least on the DrGeo
> build based on it I can copy and paste from Chromium.
>
> Hilaire
>
>
> Le 24/06/2018 à 11:11, Otto Behrens a écrit :
> >
> > A very annoying issue I'm having with Pharo 6.0 (running on Ubuntu
> > 16.04) is that if I copy text from other applications (eg. chromium
> > browser), I cannot paste it into Pharo. I get text copied in Pharo
> > from a previous copy.
> >
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] copy & paste

2018-06-25 Thread Otto Behrens
Thanks for the help. Unfortunately, this does not work.

We actually ran it with --encoding UTF-8 --pathenc UTF-8 --textenc UTF-8
I tried utf8, UTF8 and with just --textenc

But I see our installation is relatively old. Will comment on another post
here.

On Sun, Jun 24, 2018 at 11:31 AM, Peter Uhnák  wrote:

> I thought that this was fixed a long time ago?
>
> Try running it with  --textenc utf8  and see if it fixes it.
>
> Peter
>
> On Sun, Jun 24, 2018 at 11:11 AM, Otto Behrens  wrote:
>
>> Hi,
>>
>> A very annoying issue I'm having with Pharo 6.0 (running on Ubuntu 16.04)
>> is that if I copy text from other applications (eg. chromium browser), I
>> cannot paste it into Pharo. I get text copied in Pharo from a previous copy.
>>
>> To work around this, I have a "gedit" text editor open and I paste the
>> text in there. After that, I cut it from the text editor and paste it into
>> pharo.
>>
>> So, it appears as if this may be an issue with text (/encoding?). Any
>> ideas?
>>
>> Thanks
>> Otto
>>
>
>


[Pharo-users] copy & paste

2018-06-24 Thread Otto Behrens
Hi,

A very annoying issue I'm having with Pharo 6.0 (running on Ubuntu 16.04)
is that if I copy text from other applications (eg. chromium browser), I
cannot paste it into Pharo. I get text copied in Pharo from a previous copy.

To work around this, I have a "gedit" text editor open and I paste the text
in there. After that, I cut it from the text editor and paste it into pharo.

So, it appears as if this may be an issue with text (/encoding?). Any ideas?

Thanks
Otto


Re: [Pharo-users] Magritte extension

2017-03-21 Thread Otto Behrens
> do you have any documentation that summarizes the changes you did. With all 
> the new mails about magritte and problems it might be time to form a new 
> group caring about a new implementation of a meta-object layer. I think now 
> that we have slots the implementation can be made much more powerful than 
> magritte is today.

+1

>> We ran into the instance side problem too, and solved that with
>> prototypes. You need them anyway to get better memento's.
>>
> Same here. There are times where it seems cumbersome to use the instance side 
> descriptions. But the benefits outweigh that problem by far (for me at 
> least). But I do like the idea that instance _and_ class side descriptions 
> are taken into account. Feels right at first.

We needed to retain the class side descriptions and hacked the new
magritte to still do the old class side thing using the
 pragma. (ulgy)

This is because we use MAReport with MADescribedColumn a lot. This
often have to be on the class side because the column applies to all
the rows in the report. How do you guys to table-like lists of things?

We have an extension to use the descriptions to edit the cells in the
table as well, for the case where you need to edit various columns in
a list. The standard MAReport is read only, as I understand it. Do you
have the requirement to edit tables? And how do you do that?



Re: [Pharo-users] Magritte extension

2017-03-20 Thread Otto Behrens
Hi,

We also made several sub-classes of Magritte classes and / or
components. This causes a lot of problems because when we upgraded
Magritte it was difficult. It also shows that Magritte (the core
classes) cannot change much because the impact will be high for most
users of Magritte. This makes us think that Magritte is not easy to
use or customise. And it also appears as if all the custom changes are
not being generalised into the framework. Perhaps us users of Magritte
should stand back and discuss our changes and issues more so that we
can improve it? I suppose we need some magritte champion(s) to take it
somewhere.

To get more flexibility with Magritte styling we are using CSS and
classes more in stead of rendering in a different way. Often one can
get away with adding a CSS class and changing the style sheet.

This is a bit fluffy, but it there's a lot of stuff to talk about
here. In principle, are you sharing my frustration with Magritte?

Cheers
Otto


On Sat, Mar 18, 2017 at 7:40 PM, Mariano Martinez Peck
 wrote:
> Hi Asbath,
>
> Some answers below. But a general comment is that the typical case to
> customize magritte is by subclassing and then somehow use your own
> subclasses instead of magritte ones.
>
> On Fri, Mar 17, 2017 at 3:54 AM, Asbath Sama biyalou
>  wrote:
>>
>> Hello.
>>
>> I am using Magritte to generate reports for a pharo class. I want to
>> customize generated components in order to have a better design.
>>
>> My class is Match
>>
>> Object subclass: #Match
>> instanceVariableNames: 'date_match hour_match status actions stadium
>> comments teams goals1 goals2 competition'
>> classVariableNames: ''
>> category: MyProject-Entity'
>>
>>
>> Descriptions for some variables.
>>
>> Stadium is also a Class.
>>
>> Match>>descriptionStadium
>> 
>> ^ MASingleOptionDescription new
>> label: 'Stadium';
>> priority: 305;
>> accessor: #stadium;
>> options: Team allStadiumsName;
>> componentClass: TBSMagritteSelectListComponent;
>> beRequired;
>> yourself
>>
>>
>> Match>>descriptionTeams
>> 
>> ^ MAMultipleOptionDescription new
>> label: 'Teams';
>> priority: 805;
>> accessor: #teams;
>> options: Team allTeamsName;
>> componentClass: MAMultiselectListComponent;
>> yourself
>>
>>
>> The generated component in the form is not very pretty. I want to have
>> multiple checkbox.
>
>
>
> In my case, I have customized ALL the components I use for Magritte. That
> is, I have my own Fa version (Fa is my package prefix). So I have
> FaMAMultiselectListComponent  subclass of MAMultiselectListComponent. I have
> FaTBSMagritteSelectListComponent, subclass of TBSMagritteSelectListComponent
> , etc... so basically, you subclass and override the parent methods you
> want. Most common methods you need to override are renderEditorOn: html or
> renderViewerOn: html  etc...but that depends on WHAT you want to change and
> in WHICH component. Note they are all subclasses of MADescriptionComponent.
>
> You can also set your own properties in the magritte so that you can read
> them at your component level. For example, above I could say:
>
> Match>>descriptionTeams
> 
> ^ MAMultipleOptionDescription new
> label: 'Teams';
> priority: 805;
> accessor: #teams;
> options: Team allTeamsName;
> propertyAt: 'showInMultipleCheckboxs' put: true;
> componentClass: FaMAMultiselectListComponent;
> yourself
>
>
> Then in the rendering code of your subclass FaMAMultiselectListComponent you
> can do:
>
> (self magritteDescription propertyAt: 'showInMultipleCheckboxs') ifTrue: [
>  self renderAsMultiCheckboxsOn: html...
> ] ifFalse: [
> ...
> ]
>
> Of course, you can even define the accessors for #showInMultipleCheckboxs as
> extension methods in  MADescription
>
>
> To avoid having to define FaMAMultiselectListComponent for each
> MAMultipleOptionDescription .. well, there are many ways. But I guess that
> is for a later topic. Ask me if you want this.
>
>
>>
>>
>> Match>>descriptionStatus
>> 
>> ^ MASingleOptionDescription new
>> label: 'Status';
>> priority: 505;
>> accessor: #status;
>> options: #('Pas en cours' 'En Cours' 'Mi-temps' 'Terminé');
>> componentClass: TBSMagritteSelectListComponent;
>> yourself
>>
>>
>> For the report I use the class SEMatchReport
>>
>> TBSMagritteReport subclass: #SEMatchReport
>> instanceVariableNames: 'report'
>> classVariableNames: ''
>> category: 'MyProject-Components'
>>
>>
>> SEMatchReport class>>from
>> | report matchs commandColumn |
>> matchs := Match selectAll.
>> report:= self rows: matchs description: (self
>> filteredDescriptionsFrom: matchs anyOne).
>>
>> commandColumn := MACommandColumn new.
>>
>> (SEMatchReport new session isSimpleAdmin)
>> ifTrue: [
>> report addColumn: (commandColumn
>> addCommandOn: report selector: #editMatch: text: 'Modifier';
>> 

Re: [Pharo-users] CodeGenerator, your opinions?

2016-10-18 Thread Otto Behrens
Sorry, I see there are some unresolved dependencies on our code. Let
me know if I should work on that.

On Wed, Oct 19, 2016 at 5:44 AM, Otto Behrens <o...@finworks.biz> wrote:
>> Do you mean internal or embedded DSL? I am open to write an DSL if
>> facilitates the job, the thing with the Trevor's paper is that he defines 6
>> implementations of FSM's (and in each implementation he considers several
>> issues leading to sub-implementations) so I would like a DSL which let me
>> express different implementations for the same FSM. Plus there are FSM
>> implementations out there: HotDraw, Connectors, MIDIInputParser, XMIReader,
>> SState, etc. I think a "correct" DSL would enable to define any of them
>> right?
>
> I just meant some syntactically terse way of expressing a state
> machine so that one can see the logic clearly. Representing a state
> machine in a graphical way is ideal. We did this once, but the problem
> is to make the state machine definition resilient to refactorings and
> changes to the code. What I mean is that compiling something into code
> is a one way thing; to keep it maintained, one would like to "reverse
> compile" and draw the state machine from code.
>
> A "correct" DSL would be something like a Harel state diagram, which
> should be able to express most requirements.
>
> I attach our state package, if you're interested. Not directly one of
> the approaches in Trevor's paper. Perhaps another option. I would like
> to extend it to use guards and actions and more.
>
>> The approach I am using now is a parametrized code generator, using
>> templates (not in the form of T4 templates), so it's a long way.
>> Maybe Helvetia could help?
>
> Out of my depth here; will have to read a lot more.
>
>>
>>
>>>
>>> On Tue, Oct 18, 2016 at 9:29 AM, Julien Delplanque <jul...@tamere.eu>
>>> wrote:
>>> > Hello,
>>> >
>>> > A generator for the visitor design pattern:
>>> > - Generate methods in visited objects: VisitedObject>>#accept: (with the
>>> > selector name configurable)
>>> > - Generate empty methods (or methods with a "self
>>> > subclassResponsability" if
>>> > an abstract visitor is generated)
>>> > called in #accept: methods of VisitedObjects in the Visitor i.e
>>> > Visitor>>#acceptVisitedObject: (with the selector
>>> > name configurable again).
>>> >
>>> > Each time this design pattern has to be used, it is annoying to write by
>>> > hand all these methods.
>>> >
>>> > Regards,
>>> >
>>> > Julien
>>> >
>>> >
>>> > On 18/10/16 07:24, Hernán Morales Durand wrote:
>>> >>
>>> >> Hi guys,
>>> >>
>>> >> I am writing a code generator, doing a few iterations right now.
>>> >> I want your opinion, which most useful thing would you like to be
>>> >> generated
>>> >> automatically? It could be a pattern, an idiom, another language...
>>> >>
>>> >> For example my own wish (roadmap) list:
>>> >>
>>> >> - A "settings framework" settings class generator.
>>> >> - A state machine generator (based in the excellent paper of Trevor P.
>>> >> Hopkins)
>>> >> - A Spec UI generator.
>>> >>
>>> >> Let me know your thoughts.
>>> >>
>>> >> Cheers,
>>> >>
>>> >> Hernán
>>> >>
>>> >
>>> >
>>>
>>



Re: [Pharo-users] CodeGenerator, your opinions?

2016-10-18 Thread Otto Behrens
> Do you mean internal or embedded DSL? I am open to write an DSL if
> facilitates the job, the thing with the Trevor's paper is that he defines 6
> implementations of FSM's (and in each implementation he considers several
> issues leading to sub-implementations) so I would like a DSL which let me
> express different implementations for the same FSM. Plus there are FSM
> implementations out there: HotDraw, Connectors, MIDIInputParser, XMIReader,
> SState, etc. I think a "correct" DSL would enable to define any of them
> right?

I just meant some syntactically terse way of expressing a state
machine so that one can see the logic clearly. Representing a state
machine in a graphical way is ideal. We did this once, but the problem
is to make the state machine definition resilient to refactorings and
changes to the code. What I mean is that compiling something into code
is a one way thing; to keep it maintained, one would like to "reverse
compile" and draw the state machine from code.

A "correct" DSL would be something like a Harel state diagram, which
should be able to express most requirements.

I attach our state package, if you're interested. Not directly one of
the approaches in Trevor's paper. Perhaps another option. I would like
to extend it to use guards and actions and more.

> The approach I am using now is a parametrized code generator, using
> templates (not in the form of T4 templates), so it's a long way.
> Maybe Helvetia could help?

Out of my depth here; will have to read a lot more.

>
>
>>
>> On Tue, Oct 18, 2016 at 9:29 AM, Julien Delplanque 
>> wrote:
>> > Hello,
>> >
>> > A generator for the visitor design pattern:
>> > - Generate methods in visited objects: VisitedObject>>#accept: (with the
>> > selector name configurable)
>> > - Generate empty methods (or methods with a "self
>> > subclassResponsability" if
>> > an abstract visitor is generated)
>> > called in #accept: methods of VisitedObjects in the Visitor i.e
>> > Visitor>>#acceptVisitedObject: (with the selector
>> > name configurable again).
>> >
>> > Each time this design pattern has to be used, it is annoying to write by
>> > hand all these methods.
>> >
>> > Regards,
>> >
>> > Julien
>> >
>> >
>> > On 18/10/16 07:24, Hernán Morales Durand wrote:
>> >>
>> >> Hi guys,
>> >>
>> >> I am writing a code generator, doing a few iterations right now.
>> >> I want your opinion, which most useful thing would you like to be
>> >> generated
>> >> automatically? It could be a pattern, an idiom, another language...
>> >>
>> >> For example my own wish (roadmap) list:
>> >>
>> >> - A "settings framework" settings class generator.
>> >> - A state machine generator (based in the excellent paper of Trevor P.
>> >> Hopkins)
>> >> - A Spec UI generator.
>> >>
>> >> Let me know your thoughts.
>> >>
>> >> Cheers,
>> >>
>> >> Hernán
>> >>
>> >
>> >
>>
>


Wonka-StateTransition-Core-otto.1645.mcz
Description: Binary data


Wonka-StateTransition-Tests-Core-otto.4385.mcz
Description: Binary data


Re: [Pharo-users] CodeGenerator, your opinions?

2016-10-18 Thread Otto Behrens
> for things like that, I would consider looking into the SmaCC visitor
> automatic generation. From an grammar, SmaCC creates the class, respecting
> an eventual inheritance constraint you specify, adds the instance variables,
> and generates the visitor (and an equality test too).

Nice. Will have a look. Thanks.

> Regarding state machines generation, what class of automatons are you
> looking at? Because I'm looking at automatons generation by reusing SmaCC
> (for a tentative hardware architecture subject).

We have some domain specific objects, for example investment
instructions, that go through some domain specific state transitions.
It is not enormous, but a state transition model helps to understand
what valid transitions there are. As a simplistic example, when we
receive an investment instruction, one user "submits" the instruction,
another "authorises". From there it moves into a processing state and
then complete when the investment is placed.

What will be nice is to set up guards on transitions, entry / exit
actions and more nice things that can be done with a state machine.
Reading the state machine then gives a nice overview of the logic.
What will be nice is to see that in the form of a graph, with all the
annotations.

We do not currently use complexities like concurrency and nesting, but
have seen that working before.

Does this answer what you're asking?

>
> Regards,
>
> Thierry
>
>
> Le 18/10/2016 à 10:01, Otto Behrens a écrit :
>>
>> +1 for the visitor. What would be nice is to generate methods in the
>> form #visit: for all classes in a given hierarchy (eg
>> Magritte's MAVisitor). The default implementation of such a method
>> would be to call #visit:
>>
>> We have been using state machines for a long time and have built
>> generators for it (on a previous project, for which I do not have the
>> code). I still think that is a useful idea. It is difficult for the
>> code generator to maintain changes in the generated code with changes
>> in the "spec". Will you then define a DSL for the state machine?
>>
>> On Tue, Oct 18, 2016 at 9:29 AM, Julien Delplanque <jul...@tamere.eu>
>> wrote:
>>>
>>> Hello,
>>>
>>> A generator for the visitor design pattern:
>>> - Generate methods in visited objects: VisitedObject>>#accept: (with the
>>> selector name configurable)
>>> - Generate empty methods (or methods with a "self subclassResponsability"
>>> if
>>> an abstract visitor is generated)
>>> called in #accept: methods of VisitedObjects in the Visitor i.e
>>> Visitor>>#acceptVisitedObject: (with the selector
>>> name configurable again).
>>>
>>> Each time this design pattern has to be used, it is annoying to write by
>>> hand all these methods.
>>>
>>> Regards,
>>>
>>> Julien
>>>
>>>
>>> On 18/10/16 07:24, Hernán Morales Durand wrote:
>>>>
>>>>
>>>> Hi guys,
>>>>
>>>> I am writing a code generator, doing a few iterations right now.
>>>> I want your opinion, which most useful thing would you like to be
>>>> generated
>>>> automatically? It could be a pattern, an idiom, another language...
>>>>
>>>> For example my own wish (roadmap) list:
>>>>
>>>> - A "settings framework" settings class generator.
>>>> - A state machine generator (based in the excellent paper of Trevor P.
>>>> Hopkins)
>>>> - A Spec UI generator.
>>>>
>>>> Let me know your thoughts.
>>>>
>>>> Cheers,
>>>>
>>>> Hernán
>>>>
>>>
>>>
>>
>>
>
>



Re: [Pharo-users] CodeGenerator, your opinions?

2016-10-18 Thread Otto Behrens
+1 for the visitor. What would be nice is to generate methods in the
form #visit: for all classes in a given hierarchy (eg
Magritte's MAVisitor). The default implementation of such a method
would be to call #visit:

We have been using state machines for a long time and have built
generators for it (on a previous project, for which I do not have the
code). I still think that is a useful idea. It is difficult for the
code generator to maintain changes in the generated code with changes
in the "spec". Will you then define a DSL for the state machine?

On Tue, Oct 18, 2016 at 9:29 AM, Julien Delplanque  wrote:
> Hello,
>
> A generator for the visitor design pattern:
> - Generate methods in visited objects: VisitedObject>>#accept: (with the
> selector name configurable)
> - Generate empty methods (or methods with a "self subclassResponsability" if
> an abstract visitor is generated)
> called in #accept: methods of VisitedObjects in the Visitor i.e
> Visitor>>#acceptVisitedObject: (with the selector
> name configurable again).
>
> Each time this design pattern has to be used, it is annoying to write by
> hand all these methods.
>
> Regards,
>
> Julien
>
>
> On 18/10/16 07:24, Hernán Morales Durand wrote:
>>
>> Hi guys,
>>
>> I am writing a code generator, doing a few iterations right now.
>> I want your opinion, which most useful thing would you like to be
>> generated
>> automatically? It could be a pattern, an idiom, another language...
>>
>> For example my own wish (roadmap) list:
>>
>> - A "settings framework" settings class generator.
>> - A state machine generator (based in the excellent paper of Trevor P.
>> Hopkins)
>> - A Spec UI generator.
>>
>> Let me know your thoughts.
>>
>> Cheers,
>>
>> Hernán
>>
>
>



[Pharo-users] exception handling problem when running tests in Nautilus

2015-04-19 Thread Otto Behrens
Hi,

Thanks everyone for the new Pharo and all the work done. I like Spotter!

I gave Pharo 4 a try today and ran into a problem with running tests
in a TestCase (test class - run tests). I just get the debugger
popping up with WARequestContextNotFound.

In the setUp of our test case, we call WACurrentRequestContext value,
but handle the error when we do not have a context, for example:

[ WACurrentRequestContext value. true ]
on: WARequestContextNotFound
do: [ :e | false ]

This handler: [ :e | false ] is never called. What influences this
is the exception handling in:

AbstractNautilusUI  #runTestsOfClass:notifying:

Firstly, I think that it may be slighly better to call e pass or e
outer in stead of e defaultAction, as this would give another outer
handler a chance to do something. The defaultAction is called when
there are no more outer handlers anyway.

After trying this, it did not help my cause. And I think that this is
because the WACurrentRequestContext is a Notification and not an
Error.

I then replaced Exception with Error in the handler in
AbstractNautilusUI. This seem to work. What also works is to
completely remove the exception handling in AbstractNautilusUI 
#runTestsOfClass:notifying:

What is a bit strange is the inconsistency in this exception handling
when running a suite or an individual test. Perhaps this kind of code
could be better on the TestSuite and not in the Nautilus UI?

Can anyone please help? Should I be doing something else?

Cheers
Otto