On Sat, Nov 26, 2022 at 3:40 PM Deleu wrote:
>
> As I think more about this, there's nothing about the current RFC in this
> code sample. What's breaking LSP here is the child class doing state
> modification, not PHP. To further expand that rationale, PHP allows us to
> create child classes. Wh
On Thu, Nov 17, 2022 at 11:47 AM Marco Pivetta wrote:
> ```php
>
> /* readonly */ class ImmutableCounter {
> public function __construct(private readonly int $count) {}
> public function add1(): self { return new self($this->count + 1); }
> public function value(): int { return $this
On Sat, 26 Nov 2022, 23:56 G. P. B., wrote:
>
> As all the invariants will be maintained in the child classes
>
> The invariant here is the immutability from a behavioural PoV.
LSP has 100% been broken in that example.
>
>
On Thu, 17 Nov 2022 at 14:47, Marco Pivetta wrote:
> Hey Máté,
>
> On Tue, 15 Nov 2022 at 07:30, Máté Kocsis wrote:
>
> > Hi Everyone,
> >
> > Following Nicolas' thread about "Issues with readonly classes" (
> > https://externals.io/message/118554), we created an RFC to fix two
> issues
> > with
On Sat, 26 Nov 2022, 20:45 Máté Kocsis, wrote:
> We proposed this change because it wouldn't break anything that's already
> not "broken".
>
That's quite a terrible rationale, TBH 😬
>
On Sat, Nov 26, 2022, 4:45 PM Máté Kocsis wrote:
> We proposed this change because it wouldn't break anything that's already
> not "broken".
>
> Regards:
> Máté
>
The example provided already raised some eyebrows from people. I think the
argument of "let's furthet enhance this 'broken' behavior"
Hi Marco,
Sorry for the very late reply!
As explained in
> https://github.com/lcobucci/jwt/pull/979#discussion_r1025280053, a
> consumer relying on a `readonly`
>
implementation of a class probably also expects replacement implementations
> as read-only.
> I am aware that we lack the `readonly` m
On Fri, 25 Nov 2022 at 14:01, Mikhail Galanin <
mikhail.gala...@team.bumble.com> wrote:
> 2. The INI-thing. When initially I mentioned being configurable, I
> realised that it could've been perceived in many different ways:
>
> - we can enable/disable the microseconds
> - we can choose from a pre-