[OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

[OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
 

Could the VM provide an option for separating its own output from the image's output?

Concretely, the VM complains about pthread_setschedparam in my Travis builds, which prevents writing command-line scripts with clean output both on stdout and stderr. See hpi-swa/smalltalkCI#388

Maybe it's possible to play with the file descriptors at image startup, but it would make sense if the VM itself had something like a --silent or a --vm-stderr FILE flag (the JVM has -Xlog) to redirect its diagnostic messages so that anything that goes to stdout or stderr exclusively comes from the image.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Provide control over VM messages (#275)"}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Damien Pollet**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@cdlm", "facts": [ { "name": "Repository: ", "value": "OpenSmalltalk/opensmalltalk-vm" }, { "name": "Issue #: ", "value": 275 } ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
 
Hi Damien,

On Wed, Aug 8, 2018 at 9:29 AM, Damien Pollet <[hidden email]>
wrote:

> Could the VM provide an option for separating its own output from the
> image's output?
>

Yes, I guess it could. But (to state the obvious) this wouldn't help e.g.
errors coming from C library code, only explicit error messages from the VM
code itself.

> Concretely, the VM complains about pthread_setschedparam in my Travis
> builds, which prevents writing command-line scripts with clean output both
> on stdout and stderr. See hpi-swa/smalltalkCI#388
> <https://github.com/hpi-swa/smalltalkCI/issues/388>
>
The thing is, this is worrying. If pthread_setschedparam complains then it
likely means you don't have reliable time or delays in the running system.
You may be better off using an timer heartbeat VM if your build machine
won't support multiple thread priorities. Alternatively it could simply be
a issue of the age of the kernel.

Can you post the exact error message and the build machine's kernel version?

> Maybe it's possible to play with the file descriptors at image startup,
> but it would make sense if the VM itself had something like a --silent or
> a --vm-stderr FILE flag (the JVM has -Xlog) to redirect its diagnostic
> messages so that anything that goes to stdout or stderr exclusively comes
> from the image.
>

Yes, but this would require some intelligence to ensure the VM does answer
actual stderr through the primitives that provide access to them
(stdioHandles uses the primitiveFileStdioHandles primitive in
FilePlugin). So it's not trivial.

> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275>, or mute
> the thread
> <https://github.com/notifications/unsubscribe-auth/APHa0KEfhqUkkNSkZ6TO2e2dPJeoZyI6ks5uOxHTgaJpZM4V0Q3j>
> .
>
_,,,^..^,,,_
best, Eliot


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"PERSON","message":"@eliotmiranda in #275: Hi Damien,\n\nOn Wed, Aug 8, 2018 at 9:29 AM, Damien Pollet \u003cnotifications@github.com\u003e\nwrote:\n\n\u003e Could the VM provide an option for separating its own output from the\n\u003e image's output?\n\u003e\n\nYes, I guess it could. But (to state the obvious) this wouldn't help e.g.\nerrors coming from C library code, only explicit error messages from the VM\ncode itself.\n\n\u003e Concretely, the VM complains about pthread_setschedparam in my Travis\n\u003e builds, which prevents writing command-line scripts with clean output both\n\u003e on stdout and stderr. See hpi-swa/smalltalkCI#388\n\u003e \u003chttps://github.com/hpi-swa/smalltalkCI/issues/388\u003e\n\u003e\nThe thing is, this is worrying. If pthread_setschedparam complains then it\nlikely means you don't have reliable time or delays in the running system.\nYou may be better off using an timer heartbeat VM if your build machine\nwon't support multiple thread priorities. Alternatively it could simply be\na issue of the age of the kernel.\n\nCan you post the exact error message and the build machine's kernel version?\n\n\u003e Maybe it's possible to play with the file descriptors at image startup,\n\u003e but it would make sense if the VM itself had something like a --silent or\n\u003e a --vm-stderr FILE flag (the JVM has -Xlog) to redirect its diagnostic\n\u003e messages so that anything that goes to stdout or stderr exclusively comes\n\u003e from the image.\n\u003e\n\nYes, but this would require some intelligence to ensure the VM does answer\nactual stderr through the primitives that provide access to them\n(stdioHandles uses the primitiveFileStdioHandles primitive in\nFilePlugin). So it's not trivial.\n\n\u003e —\n\u003e You are receiving this because you are subscribed to this thread.\n\u003e Reply to this email directly, view it on GitHub\n\u003e \u003chttps://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275\u003e, or mute\n\u003e the thread\n\u003e \u003chttps://github.com/notifications/unsubscribe-auth/APHa0KEfhqUkkNSkZ6TO2e2dPJeoZyI6ks5uOxHTgaJpZM4V0Q3j\u003e\n\u003e .\n\u003e\n_,,,^..^,,,_\nbest, Eliot\n"}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411523476"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411523476", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411523476", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Eliot Miranda**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@eliotmiranda", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411523476" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
In reply to this post by David T Lewis
 

Hi Eliot,

Is there actual proof of issues caused by rtprio not raised correctly or is this more a precaution/speculation? smalltalkCI, for instance, builds hundreds of projects every week and we didn't see any problems when we switched from itimer to threaded VMs.

The easiest fix here, obviously, would be to hide the note all-together and maybe add it to some sort of README.txt that ships alongside the binaries. Maybe it could be that simple?


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"PERSON","message":"@fniephaus in #275: Hi Eliot,\r\n\r\nIs there actual proof of issues caused by rtprio not raised correctly or is this more a precaution/speculation? smalltalkCI, for instance, builds hundreds of projects every week and we didn't see any problems when we switched from itimer to threaded VMs.\r\n\r\nThe easiest fix here, obviously, would be to hide the note all-together and maybe add it to some sort of `README.txt` that ships alongside the binaries. Maybe it could be that simple?"}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Fabio Niephaus**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@fniephaus", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

timrowledge
 


> On 08-08-2018, at 1:26 PM, Fabio Niephaus <[hidden email]> wrote:
>
> Hi Eliot,
>
> Is there actual proof of issues caused by rtprio not raised correctly

Yup; take a look for messages a couple of years ago about  having to edit the files giving permissions for priority manipulation. The earlier Raspberry Pi Cog work suffered from it, for example. IIRC even quite recently there have been people reporting trouble that had machines with pre-kernel 2.6 (?) installed.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
To err is human; to forgive, beyond the scope of the Operating System.


Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
In reply to this post by David T Lewis
 
Hi Fabio,

On Wed, Aug 8, 2018 at 1:26 PM, Fabio Niephaus <[hidden email]>
wrote:

> Hi Eliot,
>
> Is there actual proof of issues caused by rtprio not raised correctly or
> is this more a precaution/speculation? smalltalkCI, for instance, builds
> hundreds of projects every week and we didn't see any problems when we
> switched from itimer to threaded VMs.
>

Absolutely. The symptom is that when there is no idle time then the clock
does not advance and delays don't fire. So for example,e, if you spawn a
process at userBackgroundPriority that simply loops, delays will not work.
Tis is because the VM thread is now always union and hence the heartbeat
thread, being at the same priority as the VM thread, never gets a chance to
run, and so the heartbeat gets disabled.

If your concern is that the error message itself may be in error, I assure
you that it is real, and it is reporting that on the system it is not
allowed to spawn threads at higher priority without taking special steps.
And indeed this is described in the source code and the error message. It
really is there for good reason, not just because I'm anal about it ;-)


> The easiest fix here, obviously, would be to hide the note all-together
> and maybe add it to some sort of README.txt that ships alongside the
> binaries. Maybe it could be that simple?
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/APHa0ENm8XYsI9kG-HZaS5oB8KD1aZHGks5uO0l7gaJpZM4V0Q3j>
> .
>
_,,,^..^,,,_
best, Eliot


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"PERSON","message":"@eliotmiranda in #275: Hi Fabio,\n\nOn Wed, Aug 8, 2018 at 1:26 PM, Fabio Niephaus \u003cnotifications@github.com\u003e\nwrote:\n\n\u003e Hi Eliot,\n\u003e\n\u003e Is there actual proof of issues caused by rtprio not raised correctly or\n\u003e is this more a precaution/speculation? smalltalkCI, for instance, builds\n\u003e hundreds of projects every week and we didn't see any problems when we\n\u003e switched from itimer to threaded VMs.\n\u003e\n\nAbsolutely. The symptom is that when there is no idle time then the clock\ndoes not advance and delays don't fire. So for example,e, if you spawn a\nprocess at userBackgroundPriority that simply loops, delays will not work.\nTis is because the VM thread is now always union and hence the heartbeat\nthread, being at the same priority as the VM thread, never gets a chance to\nrun, and so the heartbeat gets disabled.\n\nIf your concern is that the error message itself may be in error, I assure\nyou that it is real, and it is reporting that on the system it is not\nallowed to spawn threads at higher priority without taking special steps.\nAnd indeed this is described in the source code and the error message. It\nreally is there for good reason, not just because I'm anal about it ;-)\n\n\n\u003e The easiest fix here, obviously, would be to hide the note all-together\n\u003e and maybe add it to some sort of README.txt that ships alongside the\n\u003e binaries. Maybe it could be that simple?\n\u003e\n\u003e —\n\u003e You are receiving this because you commented.\n\u003e Reply to this email directly, view it on GitHub\n\u003e \u003chttps://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411540745\u003e,\n\u003e or mute the thread\n\u003e \u003chttps://github.com/notifications/unsubscribe-auth/APHa0ENm8XYsI9kG-HZaS5oB8KD1aZHGks5uO0l7gaJpZM4V0Q3j\u003e\n\u003e .\n\u003e\n_,,,^..^,,,_\nbest, Eliot\n"}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411569935"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411569935", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411569935", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Eliot Miranda**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@eliotmiranda", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-411569935" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
In reply to this post by David T Lewis
 

According to hpi-swa/smalltalkCI#388 (comment), Pharo builds require threaded VMs on CI infrastructure. Please have a look at #279, another possible solution.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"PERSON","message":"@fniephaus in #275: According to https://github.com/hpi-swa/smalltalkCI/issues/388#issuecomment-411985528, Pharo builds require threaded VMs on CI infrastructure. Please have a look at #279, another possible solution."}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414115904"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414115904", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414115904", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Fabio Niephaus**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@fniephaus", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414115904" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T Lewis
In reply to this post by David T Lewis
 

@akgrant43 also thinks a command line flag would be the way to go here (see #279 (comment)).

Here's one last argument against it that I can think of: the option parser fails on unknown options and that means that CI scripts can only use, e.g., a -suppress* option iff supported by the vm, otherwise it will fail. The only way to make that work is to check the version of the vm before opening an image, which in turn adds complexity to CI scripts.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"PERSON","message":"@fniephaus in #275: @akgrant43 also thinks a command line flag would be the way to go here (see https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/279#issuecomment-414133977).\r\n\r\nHere's one last argument against it that I can think of: the option parser fails on unknown options and that means that CI scripts can only use, e.g., a `-suppress*` option iff supported by the vm, otherwise it will fail. The only way to make that work is to check the version of the vm before opening an image, which in turn adds complexity to CI scripts."}],"action":{"name":"View Issue","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414142778"}}}</script> <script type="application/ld+json">[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414142778", "url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414142778", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)", "sections": [ { "text": "", "activityTitle": "**Fabio Niephaus**", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@fniephaus", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"IssueClose\",\n\"repositoryFullName\": \"OpenSmalltalk/opensmalltalk-vm\",\n\"issueId\": 275\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/275#issuecomment-414142778" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 366022115\n}" } ], "themeColor": "26292E" } ]</script>
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

David T. Lewis
 
On Sun, Aug 19, 2018 at 10:31:15AM -0700, Fabio Niephaus wrote:
>  
> @akgrant43 also thinks a command line flag would be the way to go here (see https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/279#issuecomment-414133977).
>
> Here's one last argument against it that I can think of: the option parser fails on unknown options and that means that CI scripts can only use, e.g., a `-suppress*` option iff supported by the vm, otherwise it will fail. The only way to make that work is to check the version of the vm before opening an image, which in turn adds complexity to CI scripts.
>

For the unix VM, command line arguments are (or should be) supported by
environment variables. See function vm_parseEnvironment() for environment
variables that match with various corresponding command line arguments.

If you follow this pattern, then you woould define a new command line parameter
as previously suggested, and also a new environment variable to do the same
thing. With that approach, you can use the environment variable that does
what you want, rather than adding special-case handling for ${CI}.

Dav

Reply | Threaded
Open this post in threaded view
|

Re: [OpenSmalltalk/opensmalltalk-vm] Provide control over VM messages (#275)

Eliot Miranda-2
 


On Sun, Aug 19, 2018 at 1:32 PM, David T. Lewis <[hidden email]> wrote:
 
On Sun, Aug 19, 2018 at 10:31:15AM -0700, Fabio Niephaus wrote:

> @akgrant43 also thinks a command line flag would be the way to go here (see https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/279#issuecomment-414133977).
>
> Here's one last argument against it that I can think of: the option parser fails on unknown options and that means that CI scripts can only use, e.g., a `-suppress*` option iff supported by the vm, otherwise it will fail. The only way to make that work is to check the version of the vm before opening an image, which in turn adds complexity to CI scripts.
>

For the unix VM, command line arguments are (or should be) supported by
environment variables. See function vm_parseEnvironment() for environment
variables that match with various corresponding command line arguments.

If you follow this pattern, then you woould define a new command line parameter
as previously suggested, and also a new environment variable to do the same
thing. With that approach, you can use the environment variable that does
what you want, rather than adding special-case handling for ${CI}.

Good suggestion David.
 

Dav




--
_,,,^..^,,,_
best, Eliot