Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Offray Vladimir Luna Cárdenas
Hi Pierce,

My workflow with Gitea is pretty similar to yours. The only difference
is that the Gitea server is community hosted on the web, instead of
running on local hardware. It seems we share the joy of minimalist self
contained little tools, as your work on SQLite shows :-). BTW, thanks
for it.

Cheers,

Offray

On 13/05/20 8:22 p. m., Pierce Ng wrote:
> On Wed, May 13, 2020 at 11:07:00AM -0500, Offray Vladimir Luna Cárdenas wrote:
>> This is perfect timing, as I have started to slowly migrate my own repos
>> from SmalltalkHub to a  simple, self hosted and self contained Gitea[1]
> Hi Offray,
>
> I run Gitea on a Raspberry Pi at home. I have a couple of scripts that
> back up the Gitea data, encrypt the backup with GPG, then uploads
> somewhere. Happy to share if you want them.
>
> On the topic, Iceberg works fine with Gitea. My SOP as follows:
>
> - create repo using Gitea web interface
> - using command line, clone locally via ssh 
> - using command line, 'git remote add ...'
>
> Then in Iceberg use the local clone. 
>
> Pierce
>
>



Re: [Pharo-users] Need help putting my Pharo package under source control

2020-05-13 Thread tbrunz
Well, you can capture the stack to the clipboard, and you can save it as a
'Fuel' file.  That allows examination (including by others, within a
different image).

If you look at the image you posted, of the debugger window, on the far
right of "Proceed Restart Into Over Through" there's a small drop-down menu
(with an icon of horizontal bars).  Click on that and you should see options
for 'Fuel out Stack' and 'Copy Stack to Clipboard'.

As far as how to make the best use of this... That's over my head!  (But
others on this forum know.)

-t




--
Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html



Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Pierce Ng
On Wed, May 13, 2020 at 11:07:00AM -0500, Offray Vladimir Luna Cárdenas wrote:
> This is perfect timing, as I have started to slowly migrate my own repos
> from SmalltalkHub to a  simple, self hosted and self contained Gitea[1]

Hi Offray,

I run Gitea on a Raspberry Pi at home. I have a couple of scripts that
back up the Gitea data, encrypt the backup with GPG, then uploads
somewhere. Happy to share if you want them.

On the topic, Iceberg works fine with Gitea. My SOP as follows:

- create repo using Gitea web interface
- using command line, clone locally via ssh 
- using command line, 'git remote add ...'

Then in Iceberg use the local clone. 

Pierce




Re: [Pharo-users] [ANN] What are good reasons to use Smalltalk?

2020-05-13 Thread Richard O'Keefe
This is an ambiguous question.  There are at least
- Smalltalk the language
- Smalltalk the libraries
- Smalltalk the IDE
Now my own Smalltalk system does not have an IDE,
it does not support run-time modifications to the
system, and it does not (yet) have graphics.  But
I still enjoy using it and find it worth using.
The poll includes only one option that is close to
my reasons for using Smalltalk.

It's ambiguous another way.  Different Smalltalk
systems have different IDEs and different libraries.
The VisualAge IDE is different in a number of ways
from Squeak & Pharo.  So is Dolphin, but in a *good*
way.  Dolphin is easily the *prettiest* GUI/IDE around.
The libraries are different too.  The ANSI Smalltalk
standard has been around a long time, and I *still*
cannot open a file in a portable way.  So when you
ask about "Smalltalk", I have to ask "which?"
VisualAge was designed to fit into the IBM commercial
programming environment, and it does so admirably.


On Thu, 14 May 2020 at 07:43, Richard Kenneth Eng 
wrote:

>
> https://smalltalk.tech.blog/2020/05/13/what-are-good-reasons-to-use-smalltalk/
>
>
> Please participate in the poll.
>


[Pharo-users] Siren 9.0 Released

2020-05-13 Thread step...@heaveneverywhere.com

Hello all,

The Siren system is a general-purpose framework for music and sound 
composition, processing, performance, and analysis; it is a collection of about 
350 classes written in Smalltalk-80 (40 kLOC or so). Siren 9.0 works on 
VisualWorks Smalltalk (though the bulk has been ported to other dialects as 
well); Siren supports streaming I/O via OpenSoundControl (OSC), MIDI, and 
multi-channel audio ports. The Siren release is available via the web from the 
URL http://FASTLabInc.com/Siren. 

Siren is a programming framework and tool kit; the intended audience is 
Smalltalk developers, or users willing to learn Smalltalk in order to write 
their own applications. The built-in applications are meant as demonstrations 
of the use of the libraries, rather than as end-user applications. Siren is not 
a MIDI sequencer, nor a score notation editor, through both of these 
applications would be easy to implement with the Siren framework.

There are several elements to Siren:

* the Smoke music representation language (music magnitudes, events, event 
lists, generators, functions, and sounds);

* voices, schedulers and I/O drivers (real-time and file-based voices, sound, 
score file, OSC, and MIDI I/O);

* user interface components for musical applications (UI framework, tools, and 
widgets);

* several built-in applications  (editors and browsers for Smoke objects); and

* external library interfaces for streaming I/O and DSP math (sound/MIDI I/O, 
fast FFT, CSL & Loris sound analysis/resynthesis packages )

The best in-depth doc (book chapter) is in,
http://FASTLabInc.com/Siren/Doc/SirenBookChapter.pdf

The read the demo code workbook (this text), go to,
http://FASTLabInc.com/Siren/Siren7.5.Workbook.html
or
http://FASTLabInc.com/Siren/Siren7.5.Workbook.pdf

If you like to read manuals, take a look at,
http://FASTLabInc.com/Siren/Manual

or watch the detailed Siren demo at,
https://vimeo.com/120751122

The links to get Siren9 are,

Web site: http://fastlabinc.com/Siren 

Package download: http://fastlabinc.com/Siren/Siren_9.0.zip 


Github repo: https://github.com/stpope/Siren9 


Comments solicited.

Stephen Pope


--

Stephen Travis Pope   Santa Barbara, California, USA
  http://HeavenEverywhere.com 
http://FASTLabInc.com 
   https://vimeo.com/user19434036/videos 
  
http://heaveneverywhere.com/Reflections

--





Re: [Pharo-users] Uptime

2020-05-13 Thread Vince Refiti
Hello Sven

This is the kind of thing I like to see. Gives me more confidence in 
recommending Pharo to management for production use.

Just some things that still concern me though: Why are people surprised at 
discovering that Pharo is capable of such uptimes? Are people experiencing 
instability with Pharo in production settings? If so, what kind of instability 
are people experiencing?

Thanks, Vince

-Original Message-
From: Pharo-users  On Behalf Of Sven Van 
Caekenberghe
Sent: Tuesday, 12 May 2020 6:06 PM
To: Pharo users 
Subject: [Pharo-users] Uptime

EXTERNAL: Do not click links or open attachments if you do not recognize the 
sender.

Hi,

So here is a little anecdote from the real world. I was planning to update the 
OS on my Linux server, from Ubuntu 18.04 LTS to 20.04 LTS (Long Term Support). 
This small (Digital Ocean, 1GB RAM, 1 Core) cloud server runs 3 Pharo images 
with public facing web sites.

The machine itself reports:

$ uptime
 12:37:50 up 530 days, 21:46,  1 user,  load average: 0.02, 0.04, 0.01

which means it hasn't been powered down or didn't restart in 530 days.

I was surprised to discover that 2 of the Pharo images on that machine did just 
as well:

$ ./repl.sh
Connecting to Telnet REPL at locahost:41011 Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Neo Console 
Pharo-7.0+alpha.build.660.sha.2eb9bd2f41e7b0bd8f9f4190906910f83c178ab1 (32 Bit)
pharo> get system.uptime
405 days 20 hours 29 minutes
pharo> quit
Bye!

$ ./repl.sh
Connecting to Telnet REPL at locahost:41001 Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Neo Console Pharo4.0 of 18 March 2013 update 40620
> get system.uptime
530 days 21 hours 44 minutes
> quit
Bye!

So both Pharo 7 and Pharo 4 kept on doing their jobs for a very long time. I 
think this is a testament to the stability of Pharo and to what is possible.

Regards,

Sven

--
Sven Van Caekenberghe
Proudly supporting Pharo
https://urldefense.com/v3/__http://pharo.org__;!!I_DbfM1H!U29_nUf8k6rmGjsp2AQSL8IDqW4-0JavFUItRuu0N2MQbNF35jnzLuQJwzgetkVf2_QA6g64JQ$
https://urldefense.com/v3/__http://association.pharo.org__;!!I_DbfM1H!U29_nUf8k6rmGjsp2AQSL8IDqW4-0JavFUItRuu0N2MQbNF35jnzLuQJwzgetkVf2_TO4j9SBA$
https://urldefense.com/v3/__http://consortium.pharo.org__;!!I_DbfM1H!U29_nUf8k6rmGjsp2AQSL8IDqW4-0JavFUItRuu0N2MQbNF35jnzLuQJwzgetkVf2_RhpurXTg$
 




Re: [Pharo-users] [ANN] What are good reasons to use Smalltalk?

2020-05-13 Thread Richard Sargent
You missed the fact that it makes it easier to communicate with the user
community, since it's a "near-English" grammar, and you can easily use a
common terminology.


On Wed, May 13, 2020, 12:43 Richard Kenneth Eng 
wrote:

>
> https://smalltalk.tech.blog/2020/05/13/what-are-good-reasons-to-use-smalltalk/
>
>
> Please participate in the poll.
>


[Pharo-users] [ANN] What are good reasons to use Smalltalk?

2020-05-13 Thread Richard Kenneth Eng
https://smalltalk.tech.blog/2020/05/13/what-are-good-reasons-to-use-smalltalk/


Please participate in the poll.


[Pharo-users] Pharo-Sound

2020-05-13 Thread Russ Whaley
I'm using Pharo 8 stable (64bit) version.

I pulled PharoSound from the Catalog and installed.  Installed fine, no
errors.

I went to the comments on the abstract class.  Copied the examples to the
Playground, ran them - worked fine (although I don't know how to stop the
dang PluckedString example!!)... I digress  :)

I created my own subclass to play specific sounds at certain events in my
application.  Worked well.  A day later - I have no sound in my image at
all now.  Nothing works.  I reinstalled from the Catalog. Ran the code
listed in the AbstractSound comments - nothing.

I installed a new Pharo 8 stable 64-bit image - pulled PharoSound in,
copied the sampe code from AbstractSound comments... and it worked just
fine.

Any ideas how I can get sound to work again on my original image?  For me,
it is a real pain to try and migrate all my code over to a new image.  It
is apparently a character flaw on my part, but it takes me hours to get
Git/Iceberg working properly on a new image. (yes, I'm ashamed).  I see a
new book on the topic, but I had been following that book while it was wip,
and Git/Iceberg just whips my butt.  But if going to a new image is the
solution, I'll try, try again.

What do you think?

Thanks,
Russ

-- 
Russ Whaley
whaley.r...@gmail.com


[Pharo-users] Need help with Spec2

2020-05-13 Thread Russ Whaley
I've been using the Spec2-wip.pdf - dated Feb 24, 2020.  Is there a newer
version?  I see something updated about TinyChat - but I don't know how to
get that as a pdf, and I doubt TinyChat will address my issues below.

I am using SpPresenter - with SpBoxLayouts for labels and buttons. (Pharo 8
stable 64bit)

I've been able to figure out (in a very heavy-handed way) how to update the
widgets from my model object, and when the UI refreshes (on its own) my
data appears.  Very good.

What I can't seem to understand is, when model updates, there are times I
want it to redisplay NOW - for instance, I want to display a 'saved' or
'correct' in a text field, for just a second or two, then allow the normal
model update and display.

In my example, I have a button with a label (SpPresenter>>newButton) label:
'ABC'.

Once my model updates (with the button press action: ), the model is
updated and the button label with then be 'DEF' and displays just fine.

However, what I'd like to be able to do is to update the button label (or
any other widget label) and have it display *immediately*... something
like, the button says 'ABC', I press the button, then it says 'Correct!'
(pause for a second) and then proceeds with the normal update/redisplay
process where the button label then displays 'DEF'.  This example is
changing a label, but I'd like to also change icons, colors, etc.

Clear?  So I think my questions are:


   1. How do I tell a particular widget to redisplay?
   2. And if I can't, how can I tell the window to redisplay.
   3. how can I pause (very short - just to let the temporary change be
   visible for a short time) and then allow the normal processing continue -
   resetting labels, icons, colors, etc. (I'm using  '1 seconds asDelay wait.')
   4. and since I've been talking about buttons - SpButtonPresenter - I
   don't see how to control width and height - all the way up through the
   hierarchy. If buttons share a layout (SpBoxLayout) row or column, those are
   all the same size (although I can't seem to control that sizing).  Buttons
   in the next layout>row - are huge.  I'd like to be able to set their size
   specifically (then I can work on making them relative to the extent later).

Thanks for listening.

-- 
Russ Whaley
whaley.r...@gmail.com


Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Saša Janiška
On Wed, 13 May 2020 11:07:00 -0500
Offray Vladimir Luna Cárdenas
 wrote:

> and maybe at some point, add support for things like Fossil (and, hopefully
>  be able to help with that).

+1

-- 





Re: [Pharo-users] Zinc short-url-server-demo (was Re: Uptime)

2020-05-13 Thread Cédrick Béler
Just perfect !

Thanks Sven

> Le 13 mai 2020 à 17:47, Sven Van Caekenberghe  a écrit :
> 
> Hi,
> 
> I couldn't resist: 
> https://github.com/svenvc/zinc/commit/264cbd3160f665f776232c02d013ce533df18f55
> 
> This is based on your core idea, but adds an html/page/form to shorten URLs 
> which can also be used programmatically. There are also some functional tests.
> 
> Sven
> 
>>> On 13 May 2020, at 13:55, Cédrick Béler  wrote:
>>> 
>>> 
>>> I would just like to see what you did.
>>> 
>>> I would like to see if it would be a good demo candidate.
>>> 
>>> In any case, the focus of the examples should be on HTTP, not the stuff 
>>> around it.
>> 
>> Yes sure.
>> 
>> Basically, here is the full playground I did with them (so in 10 minutes), 
>> doing a manipulation each line (the script was done gradually from halt) :
>> 
>> 
>> 
>> 
>> I doing it a server delegate lie the ZnImageExampleDelegate with a new dict 
>> each time the server is started. 
>> 
>> I’ll send it later. 
>> 
>> Cheers,
>> Cédrick
>> 
>> 
>> 
> 
> 



[Pharo-users] git and Pharo new book...

2020-05-13 Thread Michael Burns via Pharo-users
--- Begin Message ---


I think we just jumped threads. 
I’m still getting familiar with using this list. 

Cédrick just posted this 
I think in response to my exception  report:
http://forum.world.st/file/t372658/Screen_Shot_2020-05-12_at_2.png

> I just had a quick look. This is cool. 
> I might be missing a use case where I dit a previous fork and I want to use 
> it later in time. I think that’s nice to cover this use case. Do you sync 
> your fork on github ? From iceberg ? Or maybe no sync is possible ?
> 
> Cheers,
> Cedrick 
> 
Assuming that is true here is my response:

I have not done any syncing yet.  I created an empty github repository and was 
trying to add that to Iceberg when this exception.  There is virtually nothing 
in my github repo:
Https://github.com/MichaelKentBurns/FredsLunch-Pharo-iceberg

“trying to use iceberg to coordinate with GitHub repository“


--- End Message ---


Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Offray Vladimir Luna Cárdenas
Hi,

This is perfect timing, as I have started to slowly migrate my own repos
from SmalltalkHub to a  simple, self hosted and self contained Gitea[1]
instance, as I don't "commit" to the dangerous logic of hyper
centralization that being mainly where everybody is (GitHub, Facebook,
Gmail, etc).  Knowing Iceberg and its rationale is an important step to
use improved DVCS for the community and maybe at some point, add support
for things like Fossil (and, hopefully be able to help with that).

[1] https://gitea.io/

Thanks a lot, Guille, Steph, Allex, and all the community that makes
this possible.

Offray

On 13/05/20 2:16 a. m., Stéphane Ducasse wrote:
>
> Hello we are happy to announce a new little book that we hope will
> help you to master git and Pharo.
>
> http://books.pharo.org/booklet-ManageCode/pdf/2020-05-12-ManageCode.pdf
>
> Thanks for your reading.
>
> S.
>
> BTW if you like my pharo free books you can donate at 
> http://stephane.ducasse.free.fr/FreeBooks.html
> 
> Stéphane Ducasse
> http://stephane.ducasse.free.fr / http://www.pharo.org 
> 03 59 35 87 52
> Assistant: Julie Jonas 
> 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
>


Re: [Pharo-users] Zinc short-url-server-demo (was Re: Uptime)

2020-05-13 Thread Sven Van Caekenberghe
Hi,

I couldn't resist: 
https://github.com/svenvc/zinc/commit/264cbd3160f665f776232c02d013ce533df18f55

This is based on your core idea, but adds an html/page/form to shorten URLs 
which can also be used programmatically. There are also some functional tests.

Sven

> On 13 May 2020, at 13:55, Cédrick Béler  wrote:
> 
> 
>>  I would just like to see what you did.
>> 
>> I would like to see if it would be a good demo candidate.
>> 
>> In any case, the focus of the examples should be on HTTP, not the stuff 
>> around it.
> 
> Yes sure.
> 
> Basically, here is the full playground I did with them (so in 10 minutes), 
> doing a manipulation each line (the script was done gradually from halt) :
> 
> 
> 
> 
> I doing it a server delegate lie the ZnImageExampleDelegate with a new dict 
> each time the server is started. 
> 
> I’ll send it later. 
> 
> Cheers,
> Cédrick
> 
> 
> 




Re: [Pharo-users] Zinc short-url-server-demo (was Re: Uptime)

2020-05-13 Thread Sven Van Caekenberghe



> On 13 May 2020, at 12:04, Cédrick Béler  wrote:
> 
> 
>>> 
>>> PS: btw Sven, we (with a group of students did a naive and simple url 
>>> shortener that would fit nicely to default zinc demos ;-)
>>> 
>>> Here is the script for accessing registered urls (sweet):
>>> 
>>> server := (ZnServer startDefaultOn: )
>>>  onRequestRespond: [ :request |  | key |
>>> 
>>>  key := request requestLine uri segments last.
>>>  dataBase at: key
>>>   ifPresent: [:val |  ZnResponse redirect: val ]   
>>>   ifAbsent: [ZnResponse badRequest: request].
>>> ].
>> 
>> Yes, that does look nice: it is very concise.
> 
> Yes, the concise code was what I liked and this is because of your design. 
> 
> I was doing it live with students in something like 10 minutes… so thanks for 
> making me feel like a magician to them ;-)
> 
> 
>> 
>> I would like to see the whole code, any pointers ?
> 
> 
> We finish the project in two weeks time, so I’ll send the resulting code. We 
> need to do the shortUrl registration page.
> Basically, for now, this code snippet only need : dataBase := 
> (Ordered)Dictionary new.
> 
> I want to keep it concise. One objective is keeping the dictionary  
> (dataBase) size controlled as it’s intended to be a demo app. 
> 
> I’m thinking of limiting this size (dataBase) to  n entries (100, 1000 ?). 
> There could be eventually be an option to grow the size (but by validation).
> 
> Another objective (but they won’t do it if I don’t do it myself) is to keep 
> track of the history of clicked url for statistic purposes (probably one of 
> next semester projet ^^).
> 
> It’s kind of a very nice and simple example to show students client/server 
> concepts, hashing techniques, QRcode usage (short-url are a must-have for 
> them), etc… and so concise in Pharo… probably a good candidate too for the 
> dev-blog.
> 
> I’ll keep you informed - maybe by PR as I finally start to get my head around 
> git :)

No need for that, at the moment, I would just like to see what you did.

I would like to see if it would be a good demo candidate.

In any case, the focus of the examples should be on HTTP, not the stuff around 
it.

> Cheers,
> Cédrick
> 
> 
>> 
>> Sven
>> 
 Le 12 mai 2020 à 10:06, Sven Van Caekenberghe  a écrit :
 
 Hi,
 
 So here is a little anecdote from the real world. I was planning to update 
 the OS on my Linux server, from Ubuntu 18.04 LTS to 20.04 LTS (Long Term 
 Support). This small (Digital Ocean, 1GB RAM, 1 Core) cloud server runs 3 
 Pharo images with public facing web sites.
 
 The machine itself reports:
 
 $ uptime
 12:37:50 up 530 days, 21:46,  1 user,  load average: 0.02, 0.04, 0.01
 
 which means it hasn't been powered down or didn't restart in 530 days.
 
 I was surprised to discover that 2 of the Pharo images on that machine did 
 just as well:
 
 $ ./repl.sh 
 Connecting to Telnet REPL at locahost:41011
 Trying 127.0.0.1...
 Connected to localhost.
 Escape character is '^]'.
 Neo Console 
 Pharo-7.0+alpha.build.660.sha.2eb9bd2f41e7b0bd8f9f4190906910f83c178ab1 (32 
 Bit)
 pharo> get system.uptime
 405 days 20 hours 29 minutes
 pharo> quit
 Bye!
 
 $ ./repl.sh 
 Connecting to Telnet REPL at locahost:41001
 Trying 127.0.0.1...
 Connected to localhost.
 Escape character is '^]'.
 Neo Console Pharo4.0 of 18 March 2013 update 40620
> get system.uptime
 530 days 21 hours 44 minutes
> quit
 Bye!
 
 So both Pharo 7 and Pharo 4 kept on doing their jobs for a very long time. 
 I think this is a testament to the stability of Pharo and to what is 
 possible.
 
 Regards,
 
 Sven
 
 --
 Sven Van Caekenberghe
 Proudly supporting Pharo
 http://pharo.org
 http://association.pharo.org
 http://consortium.pharo.org
 
 
>> 
>> 
> 
> 




Re: [Pharo-users] Code completion in blocks (Pharo8)

2020-05-13 Thread Guillermo Polito
Hi Davide,

I’m not sure if that works on Pharo8. Could you try quickly Pharo9 to see if 
that’s fixed there?
I’ve made a pass on the code completion there.. Don’t know how difficult it 
would be to back port it, I could give you the pointers if you want.

> El 6 may 2020, a las 12:24, Davide Varvello via Pharo-users 
>  escribió:
> 
> 
> De: Davide Varvello 
> Asunto: Re: Code completion in blocks (Pharo8)
> Fecha: 6 de mayo de 2020, 12:24:46 CEST
> Para: pharo-users@lists.pharo.org
> 
> 
> nobody?
> 
> 
> 
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
> 
> 
> 



[Pharo-users] Zinc short-url-server-demo (was Re: Uptime)

2020-05-13 Thread Cédrick Béler


>> 
>> PS: btw Sven, we (with a group of students did a naive and simple url 
>> shortener that would fit nicely to default zinc demos ;-)
>> 
>> Here is the script for accessing registered urls (sweet):
>> 
>> server := (ZnServer startDefaultOn: )
>>   onRequestRespond: [ :request |  | key |
>> 
>>   key := request requestLine uri segments last.
>>   dataBase at: key
>>ifPresent: [:val |  ZnResponse redirect: val ]   
>>ifAbsent: [ZnResponse badRequest: request].
>>  ].
> 
> Yes, that does look nice: it is very concise.

Yes, the concise code was what I liked and this is because of your design. 

I was doing it live with students in something like 10 minutes… so thanks for 
making me feel like a magician to them ;-)


> 
> I would like to see the whole code, any pointers ?


We finish the project in two weeks time, so I’ll send the resulting code. We 
need to do the shortUrl registration page.
Basically, for now, this code snippet only need : dataBase := 
(Ordered)Dictionary new.

I want to keep it concise. One objective is keeping the dictionary  (dataBase) 
size controlled as it’s intended to be a demo app. 

I’m thinking of limiting this size (dataBase) to  n entries (100, 1000 ?). 
There could be eventually be an option to grow the size (but by validation).

Another objective (but they won’t do it if I don’t do it myself) is to keep 
track of the history of clicked url for statistic purposes (probably one of 
next semester projet ^^).

It’s kind of a very nice and simple example to show students client/server 
concepts, hashing techniques, QRcode usage (short-url are a must-have for 
them), etc… and so concise in Pharo… probably a good candidate too for the 
dev-blog.

I’ll keep you informed - maybe by PR as I finally start to get my head around 
git :)

Cheers,
Cédrick


> 
> Sven
> 
>>> Le 12 mai 2020 à 10:06, Sven Van Caekenberghe  a écrit :
>>> 
>>> Hi,
>>> 
>>> So here is a little anecdote from the real world. I was planning to update 
>>> the OS on my Linux server, from Ubuntu 18.04 LTS to 20.04 LTS (Long Term 
>>> Support). This small (Digital Ocean, 1GB RAM, 1 Core) cloud server runs 3 
>>> Pharo images with public facing web sites.
>>> 
>>> The machine itself reports:
>>> 
>>> $ uptime
>>> 12:37:50 up 530 days, 21:46,  1 user,  load average: 0.02, 0.04, 0.01
>>> 
>>> which means it hasn't been powered down or didn't restart in 530 days.
>>> 
>>> I was surprised to discover that 2 of the Pharo images on that machine did 
>>> just as well:
>>> 
>>> $ ./repl.sh 
>>> Connecting to Telnet REPL at locahost:41011
>>> Trying 127.0.0.1...
>>> Connected to localhost.
>>> Escape character is '^]'.
>>> Neo Console 
>>> Pharo-7.0+alpha.build.660.sha.2eb9bd2f41e7b0bd8f9f4190906910f83c178ab1 (32 
>>> Bit)
>>> pharo> get system.uptime
>>> 405 days 20 hours 29 minutes
>>> pharo> quit
>>> Bye!
>>> 
>>> $ ./repl.sh 
>>> Connecting to Telnet REPL at locahost:41001
>>> Trying 127.0.0.1...
>>> Connected to localhost.
>>> Escape character is '^]'.
>>> Neo Console Pharo4.0 of 18 March 2013 update 40620
 get system.uptime
>>> 530 days 21 hours 44 minutes
 quit
>>> Bye!
>>> 
>>> So both Pharo 7 and Pharo 4 kept on doing their jobs for a very long time. 
>>> I think this is a testament to the stability of Pharo and to what is 
>>> possible.
>>> 
>>> Regards,
>>> 
>>> Sven
>>> 
>>> --
>>> Sven Van Caekenberghe
>>> Proudly supporting Pharo
>>> http://pharo.org
>>> http://association.pharo.org
>>> http://consortium.pharo.org
>>> 
>>> 
> 
> 




Re: [Pharo-users] Code completion in blocks (Pharo8)

2020-05-13 Thread Davide Varvello via Pharo-users
--- Begin Message ---
Don't you use the autocompletion feature?



--
Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html

--- End Message ---


Re: [Pharo-users] Uptime

2020-05-13 Thread Sven Van Caekenberghe
Hi Cédrick,

> On 12 May 2020, at 11:27, Cédrick Béler  wrote:
> 
> Clearly amazing 😉 
> 
> Is it the setup you use ?
> 
> https://ci.inria.fr/pharo-contribution/job/EnterprisePharoBook/lastSuccessfulBuild/artifact/book-result/DeploymentWeb/DeployForProduction.html

Yes, more or less.

Apart from the infrastructure around it (like monitoring and automatic 
(re)starts), the fact is simple that the image started and kept working for 
400+ days.

> Cheers,
> Cedrick
> 
> PS: btw Sven, we (with a group of students did a naive and simple url 
> shortener that would fit nicely to default zinc demos ;-)
> 
> Here is the script for accessing registered urls (sweet):
> 
> server := (ZnServer startDefaultOn: )
>onRequestRespond: [ :request |  | key |
>
>key := request requestLine uri segments last.
>dataBase at: key
> ifPresent: [:val |  ZnResponse redirect: val ]   
> ifAbsent: [ZnResponse badRequest: request].
>   ].

Yes, that does look nice: it is very concise.

I would like to see the whole code, any pointers ?

Sven

>> Le 12 mai 2020 à 10:06, Sven Van Caekenberghe  a écrit :
>> 
>> Hi,
>> 
>> So here is a little anecdote from the real world. I was planning to update 
>> the OS on my Linux server, from Ubuntu 18.04 LTS to 20.04 LTS (Long Term 
>> Support). This small (Digital Ocean, 1GB RAM, 1 Core) cloud server runs 3 
>> Pharo images with public facing web sites.
>> 
>> The machine itself reports:
>> 
>> $ uptime
>> 12:37:50 up 530 days, 21:46,  1 user,  load average: 0.02, 0.04, 0.01
>> 
>> which means it hasn't been powered down or didn't restart in 530 days.
>> 
>> I was surprised to discover that 2 of the Pharo images on that machine did 
>> just as well:
>> 
>> $ ./repl.sh 
>> Connecting to Telnet REPL at locahost:41011
>> Trying 127.0.0.1...
>> Connected to localhost.
>> Escape character is '^]'.
>> Neo Console 
>> Pharo-7.0+alpha.build.660.sha.2eb9bd2f41e7b0bd8f9f4190906910f83c178ab1 (32 
>> Bit)
>> pharo> get system.uptime
>> 405 days 20 hours 29 minutes
>> pharo> quit
>> Bye!
>> 
>> $ ./repl.sh 
>> Connecting to Telnet REPL at locahost:41001
>> Trying 127.0.0.1...
>> Connected to localhost.
>> Escape character is '^]'.
>> Neo Console Pharo4.0 of 18 March 2013 update 40620
>>> get system.uptime
>> 530 days 21 hours 44 minutes
>>> quit
>> Bye!
>> 
>> So both Pharo 7 and Pharo 4 kept on doing their jobs for a very long time. I 
>> think this is a testament to the stability of Pharo and to what is possible.
>> 
>> Regards,
>> 
>> Sven
>> 
>> --
>> Sven Van Caekenberghe
>> Proudly supporting Pharo
>> http://pharo.org
>> http://association.pharo.org
>> http://consortium.pharo.org
>> 
>> 




Re: [Pharo-users] FFI and absolute path to dll

2020-05-13 Thread Benoît Verhaeghe
I use this with VLC

win32LibraryName
((OSEnvironment current at: 'Path' ifAbsent: [ '' ]) substrings: ';'),
{'C:\Program Files\VideoLAN\VLC'}
do: [ :path |
| libraryPath |
libraryPath := path asFileReference / 'libvlc.dll'.
libraryPath exists ifTrue: [ ^ libraryPath fullName ] ].
self error: 'Cannot locate vlc library. Please check if it installed on
your system'

Le mar. 12 mai 2020 à 22:17, Trygve Reenskaug  a écrit :

> At some point in the history of Win 7, MS changed the rules for file lookup
>
> *Standard Search Order for Desktop Applications*
> * The standard DLL search order used by the system *
> *depends on whether safe DLL search mode is enabled or disabled.*
> * Safe DLL search mode places the user's current directory later in the
> search order.*
>
> At some point, MS enabled safe DLL search mode as default. It is now part
> of the Windows security barrier, and I dare not change it. A program I had
> scheduled to start every day stopped working when I moved the program to a
> new computer with a new edition of Windows. I'm hoping the creator of the
> program will fix the problem. In the mean time, I have to remember to start
> the program manually every morning. This applies to Win7 and Win 10.
>
> Hope this helps even if it doesn't solve the problem.
> --Trygve
>
> On 12.05.2020 21:04, ASAM wrote:
>
> Hello,
> I'm using Pharo 8 64bit on Windows 10 64bit.
> I am trying to access a 32bit dll via a relative path.
>
> I'm desperate. I've been reading the document
> (http://books.pharo.org/booklet-uffi/pdf/2020-02-12-uFFI-V1.0.1) all the
> time up and down but I can't find an example of absolute path and Windows.
>
> If e.g. my.dll file would be stored here.
>
> C:\Program Files (x86)\GALEP5\my.dll
>
> then what should the method win32ModuleName return?
>
> Another question came to me while reading the document.
> It is actually important to know whether the DLL was generated as cdecl or
> stdcall?
> The dll i try to call use stdcall.
>
> I would be very happy if someone helps me.
> I can no longer see the message "External module not found" :-)
>
> Thanks a lot!
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>
> --
>
> *The essence of object orientation is that objects collaborate  to achieve
> a goal. *
> Trygve Reenskaug  mailto: tryg...@ifi.uio.no <%20tryg...@ifi.uio.no>
> Morgedalsvn. 5A   http://folk.uio.no/trygver/
> N-0378 Oslo http://fullOO.info
> Norway Tel: (+47) 468 58 625
>


Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Cédrick Béler
I just had a quick look. This is cool. 
I might be missing a use case where I dit a previous fork and I want to use it 
later in time. I think that’s nice to cover this use case. Do you sync your 
fork on github ? From iceberg ? Or maybe no sync is possible ?

Cheers,
Cedrick 

> Le 13 mai 2020 à 09:17, Stéphane Ducasse  a écrit :
> 
> 
> Hello we are happy to announce a new little book that we hope will help you 
> to master git and Pharo.
> 
> http://books.pharo.org/booklet-ManageCode/pdf/2020-05-12-ManageCode.pdf
> 
> Thanks for your reading.
> 
> S.
> 
> BTW if you like my pharo free books you can donate at 
> http://stephane.ducasse.free.fr/FreeBooks.html
> 
> Stéphane Ducasse
> http://stephane.ducasse.free.fr / http://www.pharo.org 
> 03 59 35 87 52
> Assistant: Julie Jonas 
> 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
> 


Re: [Pharo-users] git and Pharo new book...

2020-05-13 Thread Cédrick Béler
This is a very important one !
Thanks for writing it.  I’ll read it soon. 

Cedrick

> Le 13 mai 2020 à 09:17, Stéphane Ducasse  a écrit :
> 
> 
> Hello we are happy to announce a new little book that we hope will help you 
> to master git and Pharo.
> 
> http://books.pharo.org/booklet-ManageCode/pdf/2020-05-12-ManageCode.pdf
> 
> Thanks for your reading.
> 
> S.
> 
> BTW if you like my pharo free books you can donate at 
> http://stephane.ducasse.free.fr/FreeBooks.html
> 
> Stéphane Ducasse
> http://stephane.ducasse.free.fr / http://www.pharo.org 
> 03 59 35 87 52
> Assistant: Julie Jonas 
> 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
> 


[Pharo-users] git and Pharo new book...

2020-05-13 Thread Stéphane Ducasse
Hello we are happy to announce a new little book that we hope will help you to 
master git and Pharo.

http://books.pharo.org/booklet-ManageCode/pdf/2020-05-12-ManageCode.pdf 

Thanks for your reading.

S.

BTW if you like my pharo free books you can donate at 
http://stephane.ducasse.free.fr/FreeBooks.html 


Stéphane Ducasse
http://stephane.ducasse.free.fr / http://www.pharo.org 
03 59 35 87 52
Assistant: Julie Jonas 
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