Skip to content

Release v2.7.1

Choose a tag to compare

@github-actions github-actions released this 07 Oct 13:34
· 14 commits to main since this release
  • (@GermanBluefox) Added: an event only reaches a connection whose user may read what it is about. A subscription says which ids a client is interested in, never which ids it may see - subscribe asks whether the user may read states at all, so whoever subscribed to * was told about every state of the system, the ACL of the single objects notwithstanding, and the same went for objects and for files. The fan-out asks that question now, for state, object and file events alike. Members of the administrator group are not restricted, as everywhere else, and with authentication switched off every connection is the configured default user - so for most installations nothing changes at all. Where restricted users exist, they will see less than before: that is the point, but it is the kind of change that comes back as "my user stopped getting updates". The database decides, not this package: mayRead of js-controller 8.0 and newer is asked where it exists, which knows the ACL of a state rather than that of its object and the mode of a single file rather than that of the adapter; an older controller is asked for the object instead, which is coarser but refuses in the same direction. One question per user and thing, remembered until the object - or the rights themselves - change, and the objects are watched from the first decision on, so an installation whose connections are all administrators never asks anything
  • (@GermanBluefox) Changed: publish and publishFile answer true where the event is on its way to the client, which now includes the moment it waits for the decision described above; false means the client is not subscribed to it, or may not see it. Only the first event of a thing ever waits, and only the newest one of it, so nothing can overtake it