~jackmordaunt

Australia

https://jackmordaunt.srht.site

Software Developer.

~jackmordaunt/public-inbox

Last active 8 months ago

~jackmordaunt/gio-planet

Last active 3 years ago

~jackmordaunt/kanban-ci

Last active 3 years ago

~jackmordaunt/audiotube-devel

Last active 4 years ago

~jackmordaunt/audiotube-announce

Last active 4 years ago
View more

Recent activity

Re: [PATCH gio] app: [X11] fix window destroy/wakeup race condition 2 years ago

From Jack Mordaunt to ~eliasnaur/gio-patches

Build failed because I made use of `TryLock` which is only available
since Go 1.18.

Re: [gio/patches] build failed 2 years ago

From Jack Mordaunt to ~eliasnaur/gio-patches

Build failed because my solution makes use of `TryLock` which is only
available since Go 1.18.  

On Jul 12 2022, at 3:47 pm, builds.sr.ht <builds@sr.ht> wrote:

> gio/patches: FAILED in 24m7s
>  
> [app: [X11] fix window destroy/wakeup race condition][0] from [~jackmordaunt][1]
>  
> [0]: https://lists.sr.ht/~eliasnaur/gio-patches/patches/33785
> [1]: jackmordaunt.dev@gmail.com
>  
> ✗ #799925 FAILED  gio/patches/freebsd.yml https://builds.sr.ht/~eliasnaur/job/799925
> ✗ #799926 FAILED  gio/patches/linux.yml   https://builds.sr.ht/~eliasnaur/job/799926

[proposal] (re)setting window title 2 years ago

From Jack Mordaunt to ~eliasnaur/gio

Hello! 

We can set window title by supplying the `app.Title` option to window
creation. However, I have not identified a means to reset the title
after the window is created (maybe I just missed it?). 

I propose we surface the ability to reapply options, or at least the
title option, perhaps by surfacing a `Configure` method on high-level
`app.Window` object. 

I understand that we would be at the mercy of the drivers, and support
for changing options at runtime my not be available for any given drive,
however I remain ignorant of those details at this point.

Re: [skel] (c4703338) go,scheduler: redefine Future to be generic 2 years ago

From Jack Mordaunt to ~gioverse/chat

On Jun 22 2022, at 9:00 pm, Chris Waldon
<christopher.waldon.dev@gmail.com> wrote:

> On Wed, Jun 22, 2022 at 12:55 AM Jack Mordaunt
> <jackmordaunt.dev@gmail.com> wrote:
>> 
>> Hey! This is my retro-active review of the recent skel changes.
> 
> Hi Jack, I guess I should have posted those changes as patches. I thought
> they weren't going to be contentious, and I was eager to use them, so I
> merged them. We can definitely revise them as patches though.
> 

Re: [PATCH] scheduler: define documented types for Future's input 2 years ago

From Jack Mordaunt to ~gioverse/chat

@Chris You raise good points, and I ultimately I agree with your conclusion.
Let's leave it then! Though I would still like to drop the "And" part.
;)

re: [skel] (c4703338) go,scheduler: redefine Future to be generic 2 years ago

From Jack Mordaunt to ~gioverse/chat

Hey! This is my retro-active review of the recent skel changes.

I noticed that we explicitly internalize the `future` method on the the
skel connection.

I don't like this because:

A) it means no third party can implement the interface
B) it's not a "hard error" to use it, merely a choice for the caller 

I acknowledge that exporting it would avail two ways to do the futures
(dynamic and type-safe) which you could argue makes the API more
complex/confusing, however we can't help that Go hasn't implemented
generic methods which forces us into using a function wrapper.

Re: [PATCH] scheduler: define documented types for Future's input 2 years ago

From Jack Mordaunt to ~gioverse/chat

Hi Andrew, I like this!

I wonder if we can take this further and push the function definitions
into the type constraints. I've read that this is ideal in the current
implementation of generics, since it provides more opportunity for
in-lining.

    func Future[T any, Work WorkFunc[T], Then AndThenFunc[T]](c
Connection, w Work, th Then) 

I'm not even sure that snippet is valid, but you know what I mean. 

Perhaps we can also drop the `And` prefix, `ThenFunc` seems plenty
fine to me.

[PATCH] app: note the implications of custom rendering 2 years ago

From Jack Mordaunt to ~eliasnaur/gio-patches

Small note to make clear how the window behaviour
changes when you call for custom rendering.

Signed-off-by: Jack Mordaunt <jackmordaunt.dev@gmail.com>
---
 app/window.go | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/app/window.go b/app/window.go
index 79899bfb..f958f848 100644
--- a/app/window.go
+++ b/app/window.go
@@ -827,6 +827,10 @@ func NavigationColor(color color.NRGBA) Option {

[message trimmed]

[PATCH skel v2] scheduler: protect channel send with atomics 2 years ago

From Jack Mordaunt to ~gioverse/chat

In the case where an application schedules from it's own
goroutine we can't guarantee that no work will be submitted
after a connection is closed and disconnected.

This patch guards against this by setting an atomic on the
connection and checking that before attempting to submit
work.

When the connection is marked "closed", any submissions
thereafter will be ignored. The work will not be executed
and no result will be delivered over the (closing or closed)
output channel.

v2: mark the connection as closing prior to disconnection, not
[message trimmed]

[PATCH skel] scheduler: protect channel send with atomics 2 years ago

From Jack Mordaunt to ~gioverse/chat

In the case where an application schedules from it's own
goroutine we can't guarantee that no work will be submitted
after a connection is closed and disconnected.

This patch guards against this by setting an atomic on the
connection and checking that before attempting to submit
work.

When the connection is marked "closed", any submissions
thereafter will be ignored. The work will not be executed
and no result will be delivered over the (closing or closed)
output channel.

Signed-off-by: Jack Mordaunt <jackmordaunt.dev@gmail.com>
[message trimmed]