For now, in my 'deployed' image, I have:
1. Disabled SourceFilesArray >> forceChangesToDisk
I did not find any code branch that would avoid this, so for now I just
made it do nothing. Maybe I should disable ChangesLog >> logChange: instead.

2. Disabled PharoFilesOpener >> changesFileOrNil
Same story. But this only causes warning get printed out, not error.
Disabling it removes the warning message.

3. Set changesFileStream to nil (SourceFiles changesFileStream: nil).
Some code does have guard against nil value for this changes stream.

This works for me if I do not have the changes file with the image. If I
have the changes file and it's read-only, that's a different problem.

It seems that this was possible before, judging from the older links I
found in my original email and the existence of some guards against
non-existence changes file.

I'll check those links and perhaps see if I can be helpful there, but I
right now have delivery to make. And I can't wait to try Pharo 6 too.

--
Andreas


On Tue, Jun 6, 2017 at 6:37 PM, Ben Coman <b...@openinworld.com> wrote:

>
>
> On Wed, Jun 7, 2017 at 3:23 AM, Andreas Sunardi <a.suna...@gmail.com>
> wrote:
>
>> Hi Stef,
>>
>> I can't have changes file bundled with the tool because the tool is
>> installed in a centralized location in my network and multiple users will
>> run it. So the image is in a central location and read-only and so is the
>> changes file (if I must have a changes file). The tool is only a processor.
>> It does not need to keep/save its state.
>>
>> Hence, I cannot have multiple users writing to that one and the same
>> changes file.
>>
>> I'm trying to dissect the call chain to ChangesLog and try to cut it so
>> Pharo won't write to the changes file. I'm sure I should not do this. There
>> must be a better way.
>>
>
> I guess this use case just hasn't been critical for other people (there
> are lots of competing priorities) and they've found ways of working around
> it, like making your network located tool a script that copies itself
> itself to a use folder and run from there.  But of course it would be
> better for Pharo to work cleanly without a changes file. To make it better,
> someone has to do it, so feel free to propose some code changes (with
> discussion of such on pharo-dev list).
>
> Here is one hint (something related I worked on recently)...
> https://pharo.fogbugz.com/f/cases/20074/Red-pane-of-death-
> when-sources-file-missing
> To view the changes, open image 60494 (easiest using PharoLauncher)
> and load the slice.
>
> Filtering the issue tracker on "changes file" pops up a few other
> possibilities (I haven't reviewed them, and you might find others)
> https://pharo.fogbugz.com/f/cases/11204/Crash-if-changes-
> file-is-not-writable
> https://pharo.fogbugz.com/f/cases/11426/Extract-the-logic-
> that-opens-the-sources-and-changes-files
>
> cheers -ben
>
>
>>
>> On Tue, Jun 6, 2017 at 11:55 AM, Stephane Ducasse <
>> stepharo.s...@gmail.com> wrote:
>>
>>> We started to work on making the system ready to stop using these files.
>>> There are two things.
>>> - the changes are a tape that logs what you are doing and right now
>>> the system is not done to accept not to log
>>> So I imagine that you can remove the changes file but then do not
>>> compile code.
>>> - I do not get the "so I can't have changes file bundled with the tool."
>>> you do not have a bat or script that launches the application that is
>>> somewhere in a folder where you have the vm and the image? you could
>>> have the changes file there.
>>>
>>> We are interested in your scenario because last year I got a guy
>>> working on making pharo silent. I do not know if its changes got
>>> integrated into pharo.
>>> This is really something that we want to have.
>>> - having sources and changes in a specific location
>>> - having no source and no changes (even if it means lose your code).
>>> - ...
>>>
>>> Stef
>>>
>>> On Tue, Jun 6, 2017 at 8:14 PM, Andreas Sunardi <a.suna...@gmail.com>
>>> wrote:
>>> > Sorry to bring this up again. But it turns out that I had the image
>>> > directory writable by myself, so it created a new changes file. That's
>>> why
>>> > Pharo didn't complain about missing changes file. When I removed write
>>> > permission in the tool installation, Pharo gives error for not having
>>> or not
>>> > able to write to changes file.
>>> >
>>> > I guess I'm back to the problem how to deploy a tool without changes
>>> file. I
>>> > have multiple users that will be running this tool, which is installed
>>> in a
>>> > centralized site, so I can't have changes file bundled with the tool.
>>> >
>>> > On Mon, Jun 5, 2017 at 5:47 PM, Andreas Sunardi <a.suna...@gmail.com>
>>> wrote:
>>> >>
>>> >> I had my changes and sources files in the bundle but has their write
>>> >> permission removed, and that causes the error. Simply deploying the
>>> tool
>>> >> without the changes file seems to fix it. Pharo5 doesn't complain if
>>> the
>>> >> changes file isn't there.
>>> >>
>>> >> However, without the sources file, I get this warning that pharo
>>> cannot
>>> >> locate the sources file. Including the sources file in the deployed
>>> tool is
>>> >> fine with me.
>>> >>
>>> >> So, I think that's my solution. Thanks!
>>> >>
>>> >>
>>> >> On Mon, Jun 5, 2017 at 5:07 PM, Andreas Sunardi <a.suna...@gmail.com>
>>> >> wrote:
>>> >>>
>>> >>> I found this StackOverflow question:
>>> >>>
>>> >>> https://stackoverflow.com/questions/14737695/is-it-possible-
>>> to-deploy-a-pharo-image-without-changes-and-sources-files/14747328
>>> >>>
>>> >>> and this older forum thread:
>>> >>>
>>> >>> https://www.mail-archive.com/pharo-project@lists.gforge.inri
>>> a.fr/msg21170.html
>>> >>>
>>> >>> I'm using Pharo5.0 and neither of these options is available anymore.
>>> >>> What is the new way to do this?
>>> >>>
>>> >>> --
>>> >>> Andreas Sunardi
>>> >>
>>> >>
>>> >
>>>
>>>
>>
>

Reply via email to