zoomLevel 20 with OSM zooms beyond map tile data in Chrome while OSM data provides level 20

Steps to reproduce:

view zoom level 20 in chrome with OSM data
view OSM max zoom level of 20 here - https://wiki.openstreetmap.org/wiki/Zoom_levels

Expected behavior
Map tiles to not be greyed out.
Current behavior
Map tiles are greyed out, similar to when zoomed beyond a tile sets maximum zoom level.
Environment

Leaflet version: 1.7.1
Browser (with version): Chrome 92.0.4515.107 (Official Build) (arm64)
OS/Platform (with version): macOS Big Sur Version 11.4, iMac M1

Additional context
Works in Safari with the same zoom level.

while OSM data provides level 20

The default OSM tile server does not serve zoom level 20 tiles.
Not a Leaflet issue.

Then why does safari automatically change it to 19 and chrome does not?

It is correct to say that it will render a tile image if no error is returned, obviously.
I originally linked the osm project webpage noting the supported zoom levels, can you tell me where they specify that their public tileserver does not support zoom level 20 and that it provides an error via the http response?
@IvanSanchez

We'll keep this here for future (historical at the time) reference.

can you tell me where they specify that their public tileserver does not support zoom level 20 and that it provides an error via the http response?

https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames#Tile_servers

Cool, any plans to have tileservers publish 4 direction next max/min zoom and current x/y min/max zoom for missing tiles via http headers?
Thank You,
Andrew Hodel

On Jul 29, 2021, at 3:10 PM, Iván Sánchez Ortega @.***> wrote:

can you tell me where they specify that their public tileserver does not support zoom level 20 and that it provides an error via the http response?
https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames#Tile_servers
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

https://youtu.be/0rB8p63YXUg
I’ve experienced missing data.
4 direction gives you an average (like checkers) for the whole view area and what to expect outside the bounds without expecting to send 8/16/32 directions per tile or that the tileserver would calculate bounds.
Thank You,
Andrew Hodel

On Jul 29, 2021, at 3:24 PM, Andrew Hodel @.***> wrote:
Cool, any plans to have tileservers publish 4 direction next max/min zoom and current x/y min/max zoom for missing tiles via http headers?
Thank You,
Andrew Hodel

On Jul 29, 2021, at 3:10 PM, Iván Sánchez Ortega @.***> wrote:

can you tell me where they specify that their public tileserver does not support zoom level 20 and that it provides an error via the http response?
https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames#Tile_servers
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Then we can expect to zoom into a building (photos, drawings, AR, live camera) and smoothly pan across the street with anything that can render compressed images fast enough.

Cool, any plans to have tileservers publish 4 direction next max/min zoom and current x/y min/max zoom for missing tiles via http headers?

Read the documentation about OSM's renderd and mod_tile yourself. This is theLeaflet bug tracker, and just the Leaflet bug tracker.


How to use with gitlab

some way to use with gitlab?

Closing this for now, if you have any concrete issue you may reopen it.


WIP: Add EVP_MAC API

We currently implement EVP MAC methods as EVP_PKEY methods.  This
change creates a separate EVP API for MACs, to replace the current
EVP_PKEY ones.
A note about this EVP API and how it interfaces with underlying MAC
implementations:
Other EVP APIs pass the EVP API context down to implementations, and
it can be observed that the implementations use the pointer to their
own private data almost exclusively.  The EVP_MAC API deviates from
that pattern by passing the pointer to the implementation's private
data directly, and thereby deny the implementations access to the
EVP_MAC context structure.  This change is made to provide a clearer
separation between the EVP library itself and the implementations of
its supported algorithm classes.

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

This is a start.  There's more work to do, such as moving the current EVP_PKEY implementations to use the EVP_MAC API instead, tests, refinement, and documentation.

Initial thoughts.
Why does init not take a key? Using a ctrl to provide it seems unusual. "oneshot" as a name does not fit current API naming elsewhere does it?
Why void * for the key? Are you expecting something other than raw bytes? If so it should be typed appropriately. If not it should be unsigned char *.

And that approach pretty much ignores the current generic API under EVP_PKEY_new_mac_key which is what you are looking at replacing. That is where the "pattern" should come from IMHO.
And what I'm curious about is what happens to be wrong with the current interface in this area. It is used and is workable.  It lets you use EVP_DigestSign/EVP_DigestVerify as the interface for both signatures and MACs in a unified manner.
This approach was added back in 2007 - i.e. it is a 1.0.0 API - when SteveH modeled MACs as effectively being signatures.
I think looking at the original initial low level HMAC interface isn't the right place to draw from in terms of the model.
I'm also curious as to the driver behind wanting to replace the existing EVP_PKEY model approach.

I'll have a closer look at EVP_PKEY_new_mac_key.  I did notice it, but thought it didn't tell the whole story.
As for the driver, it's mostly clarity.  A MAC is kinda sorta a digest and yet not.  This is not the first time that we find ourselves being quite confused by the current construct.
Remember that with 1.0.x, we had everything in public headers, which lead to many attempts to retrofit new features into already existing structures.
I'm sure @mattcaswell has a few choice words on this as well.  What got me immediately started now was the repeated desire for a MAC API, mentioned in #7387

There's more work to do, such as moving the current EVP_PKEY implementations to use the EVP_MAC API instead, tests, refinement, and documentation.

Right. And if this PR is done, then people can take what they are interested in to move to the new APIs concurrently...

And what I'm curious about is what happens to be wrong with the current interface in this area. It is used and is workable. It lets you use EVP_DigestSign/EVP_DigestVerify as the interface for both signatures and MACs in a unified manner.

It is a gross perversion of what an EVP_PKEY is supposed to be and is totally counter intuitive and non-obvious.
The state of this API was mentioned recently by @slontis as a justification for not using EVP when it was easier and simpler to just use HMAC directly:
https://github.com/openssl/openssl/pull/6779#discussion_r216897292
MACs are not signatures. Nor are they digests. Yes they have some similarities to both but they are a different primitive and deserve their own dedicated high level API.

MACs are not signatures. Nor are they digests. Yes they have some similarities to both but they are a different primitive and deserve their own dedicated high level API.

In an operations based API (which our current API is not), it would be expressed in terms of "MACs can be used for..." rather than "MACs are..."

I have now beefed this up quite a bit.  The EVP_MAC API is done, the quick adaptation of existing code is done.  All current tests pass, and because the current EVP_PKEY_METHOD implementations have been recoded to use EVP_MAC, it means that the new code is automatically tested as well.
Still lacking: documentation, and seeing if I can make a more generic MAC interface to enhance / replace EVP_PKEY_new_CMAC_key...  I frankly don't see a reason why we should have something so specialised at the EVP level.

Description got updated too, with the text from the first commit.

I am a little confused about this. For MAC algorithms like poly1305, should that be used by calling the newly added EVP_MAC_* interfaces?

Depends, really.  If you want to use it as a signing mechanism, then it's still going to be through EVP_PKEY, at least as far as I can deduce.  Please note that this is still work in progress.

Could you add some tests that use the new API's directly? Maybe the key should be an init parameter (that can be NULL).

Could you add some tests that use the new API's directly?

I plan to make a new PR (actually it's already underway...) based on this PR, which should include some test cases I think, but I found it's a little tricky to figure out the dependencies between PRs...

I plan to make a new PR (actually it's already underway...)

To make it clearer, that PR will contain an implementation for poly1305 based on the new MAC APIs.

I will add tests, yeah.
As for the key passed in init, that's more difficult. I would like the EVP_MAC implementations to be fairly minimal, and the underlying low level implementation may require that the associated crypto algorithm be set before the key (HMAC_Init works that way, for example), so if we send the key via init, then we must also send the associated crypto algorithm, which is an EVP_MD for HMAC and an EVP_CIPHER for CMAC. At that point, we're getting ourselves into a type safety issue, and since there's no telling what the future will give, it seemed saner to set all the associated data via ctrl.
Another option would be for every EVP_MAC to save the key away and use it later, like hm_pmeth.c does. I would rather not have to force every EVP_MAC to implement that kind of mechanism.
I hope that rationale is good enough.

Could you add some tests that use the new API's directly? Maybe the key should be an init parameter (that can be NULL).

Please take a reference to the test case in #7459

Yup, will do...  for the moment, I'm gonna battle the memleak to put all memleaks to shame (I've never seen that many lines displayed before)

(I've never seen that many lines displayed before)

Neither do I ;-)

Memory leak gone...  however, the API isn't quite as complete as I wish for.  Fair warning, you'll have to work a bit more on your Poly1305 work to fit with what's happening with this.

So, what happens with the EVP_PKEY interface for HMAC, CMAC (and eventually Poly1305)? This is explicitly stated as a replacement, but the EVP_PKEY to these algorithms remain.
If both interfaces remain, are we concerned about having two (three in some cases) ways to do the same thing? I'm not sure it makes these algorithms easier to use, but actually harder to use, given the multiple ways something can be done.

I'm looking quite a lot at that, and while I stated replacement at the beginning, I'm not going to take away the EVP_PKEY interface at this stage, especially since there may be some usage out there.  However, what I'm currently doing is to create a EVP_PKEY -> EVP_MAC bridge, which means that the diverse MAC specific EVP_PKEY_METHOD implementations are going away (in separate PRs).

Please do note WIP

Note that this PR only adds the API itself and the initializing infrastructure.
Other PRs will do the actual port of the different MAC algos to EVP_MAC and to the EVP_PKEY->EVP_MAC bridge.

HMAC port in #7483

CMAC port in #7484

And @InfoHunter is working on a Poly1305 port in #7459 (it will need a bit of work...  sorry for pulling the rug from under you like that, @InfoHunter)

@tmshort my thought would be that the EVP_MAC interface becomes canonical, the other interfaces being rewritten to use the EVP_MAC.  At some later point the other interfaces are deprecated and later removed or otherwise changed to legacy status.

It's very reasonable to separate the HMAC and CMAC out of this PR

I've added documentation (thanks for the reminder, @kroeckx), and fixed up crypto/evp/pkey_mac.c after having a run through with SipHash (PR coming up!).
I think this is as ready as I can get it at this stage.

I don't understand what's happening here...
ccache clang  -I. -Icrypto/include -Iinclude -fPIC -pthread -m64 -Wa,--noexecstack -Qunused-arguments -DDEBUG_UNUSED -DPEDANTIC -pedantic -Wno-long-long -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wswitch -Wsign-compare -Wmissing-prototypes -Wstrict-prototypes -Wshadow -Wformat -Wtype-limits -Wundef -Werror  -Wswitch-default -Wno-parentheses-equality -Wno-language-extension-token -Wno-extended-offsetof -Wconditional-uninitialized -Wincompatible-pointer-types-discards-qualifiers -Wmissing-variable-declarations -Wno-unknown-warning-option -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -DNDEBUG -DOPENSSL_API_COMPAT=0x10100000L -D__NO_STRING_INLINES -MMD -MF crypto/evp/libcrypto-shlib-pkey_mac.d.tmp -MT crypto/evp/libcrypto-shlib-pkey_mac.o -c -o crypto/evp/libcrypto-shlib-pkey_mac.o crypto/evp/pkey_mac.c
crypto/evp/pkey_mac.c:338:23: error: no previous extern declaration for non-static variable 'FAKE_pkey_meth' [-Werror,-Wmissing-variable-declarations]
const EVP_PKEY_METHOD FAKE_pkey_meth = {
                      ^

Isn't this declaration enough?
const EVP_PKEY_METHOD FAKE_pkey_meth;
const EVP_PKEY_METHOD FAKE_pkey_meth = {

https://github.com/openssl/openssl/pull/7393/commits/68639242f83017a4797b6852de89f012f441e5bc#diff-ffb1b6c2ed0dd0134c6d5cfe3b97d47aR337

D'oooooh....  staring myself blind, I didn't notice the missing extern

... and it builds!
Time for reviewers to step forward :-)

blake2 can also be used as a MAC using a key, but as far as I remember, we didn't implement the key/mac part. This might be a good opportunity to add that.

blake2 can also be used as a MAC using a key, but as far as I remember, we didn't implement the key/mac part. This might be a good opportunity to add that.

Sure.  That can be done as a separate PR, just like there are for HMAC, CMAC, SipHash and Poly1305

Fixed the two nits, then merged.
Thanks for the reviews, everyone!  Much appreciated.
f842b6b2a4d7cbb9d22e4605c502b73f25bb6a7b Add convenience functions EVP_str2ctrl() and EVP_hex2ctrl()
2bdb4af50364121a5f0e47024e9f71e1a6025fcf Adapt test/evp_test.c to deal with available EVP_MACs
5e55159b3adbb30482992e8fa8621e47d331d012 Add generic EVP_PKEY_METHOD for EVP_MACs
0145dd324e8fcfd2c0dfe296c12586101f0cf3b9 Add automatic initializations support for EVP_MAC objects
567db2c17d4ea8a0164d7abd8aed65b7a634bb40 Add EVP_MAC API


Replace stub4testtool.xsl with filters

Note to self: AttributesWrapper needs to be reworked, does not completely process the removal of attributes (indices are not updated)

Builds on #1981


Remove presentation server

The presentation server has been moved to a new Git repositoryhttps://github.com/odpi/egeria-react-ui

Please don't remove until the docker build is also sorted, plus the assemblies/packages or it will break other aspects of process such as merge.
See #4110 open to track the removal and migration

@davidradl ref commit - it's important we unwind this in the order referenced in #4110 or we will cause breakages.
Code deletion will be near the last task - we have to do the other steps first (I will try and start looking at this in the next day or two)

@davidradl ref commit - it's important we unwind this in the order referenced in #4110 or we will cause breakages.
Code deletion will be near the last task - we have to do the other steps first (I will try and start looking at this in the next day or two)

@davidradl ref commit - it's important we unwind this in the order referenced in #4110 or we will cause breakages.
Code deletion will be near the last task - we have to do the other steps first (I will try and start looking at this in the next day or two)

@planetf1 Thanks - I have been updating the documentation in the new repo. https://github.com/odpi/egeria-react-ui/issues/24. I can close this issue if it is on your task list. Or you could make the docker changes and I could do the rest. Let me know - I am happy either way.

@davidradl ref commit - it's important we unwind this in the order referenced in #4110 or we will cause breakages.
Code deletion will be near the last task - we have to do the other steps first (I will try and start looking at this in the next day or two)

@planetf1 Thanks - I have been updating the documentation in the new repo. https://github.com/odpi/egeria-react-ui/issues/24. I can close this issue if it is on your task list. Or you could make the docker changes and I could do the rest. Let me know - I am happy either way.


Getting started steps

Hello Carlos,
first of all thank you for your effort on this project: looks amazing!
I'm newbie on the blockchain side: could you add a getting started guide in the Readme? (e.g. how to install on own server, etc.).
Thank you,
Stefano

Hi! 🔮
Well, an installing readme is not coming any time soon, but others will be done by this/next week.
The page is running in http://guesser.io, we are running in Rinkeby. If you don't know how to connect to this testnet, we are going to create an article in medium by the end of this week.
Probably soon we will create a big deploy to the web page I wrote before, hang for that one.
Also, running it by yourself is not that hard tho, but probably first you need to know how to create/run an ethereum/truffle app. Once you have that, it will be a simple $npm install && npm run dev.
If you have any doubts tho, pls, send me an email to<EMAIL_ADDRESS>😃


Forms

Forms page localized first PR

@shahulhameed00

@stultus

@jomonthomaslobo , we can merge as soon as these corrections are made

OK
On Thu, Mar 21, 2019 at 2:43 PM Hrishi<EMAIL_ADDRESS>wrote:

@jomonthomaslobo https://github.com/jomonthomaslobo , we can merge as
soon as these corrections are made
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/reactjs/ml.reactjs.org/pull/12#issuecomment-475156725,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AQLsAHXAKwGW06vfc0eE1Qey8FwZpxd-ks5vY00ngaJpZM4bnFlJ
.


Avoid overwriting singleton init state when more than one user of LW exists in an application (Breaking change)

Problem
Because LW uses a singleton to track initialization state (the application name), any later initializations of LW can overwrite the original initialization values. Now that we are distributing components with LW in them, we are guaranteed to have multiple initializations. We already have 3 inits that overwrite themselves in KIUI – the app itself, ER, and the Graph API helper. So as the app runs, the supposedly universal app name is changed three times. This breaks the connection between the code a consumer of LW sets and the value of the header when sent, making it hard to infer what code sent what request.
Solution
Instead of enabling spooky action at a distance, we’ll make log weasel a simple function with no initialization. If people want to standardize the name they’re passing in they can either pull it from a single source or make a wrapping function that contains a constant. This is a little more work but allows us to more easily trace xhr requests back to what called them.
Todo

[ ] release after merge
[ ] convert all usage of LWJS to new functional usage (https://stitchfix.atlassian.net/browse/KFE-262)

Overall looks good. Do you have a sense of how many places will need to be updated due to the breaking change?

At least CAR, ER, the graph helper, and the UI apps that are not using ER. But I should be able to take care of it in a day. This is a change I'd like to populate ASAP because it affects our ability to debug as we roll out eventing changes.

I deleted the authors and contributing section as they're both OSS focused. Merging and moving on, but Brett, do tell me if you'd like any last minute revisions.

@robwierzbowski Belatedly approved, thanks! I assume you're taking care of releasing a new versions? When you do, can you update the release notes here?

Yep, can do!


Fix slo alert

Towards: https://github.com/giantswarm/giantswarm/issues/18975
This PR fixes an issue where the ServiceLevelBurnRateTooHigh never got re-reployed correctly after some file naming confusion which we attempted to fix some time ago with https://github.com/giantswarm/prometheus-rules/commit/5809fdf7b04e2554e10d6b3cd1e5273f0f1d3ef3, more details in the linked issue.
Checklist

[x] Update changelog in CHANGELOG.md.

Feels like this is not needed as this was already fixed manually. But this proves that nothing is broken an next changes to this file will correctly be deployed.

For the record
$ helm history prometheus-rules
REVISION        UPDATED                         STATUS          CHART                                                                   APP VERSION                                     DESCRIPTION
2               Mon Sep 27 13:58:52 2021        superseded      prometheus-rules-0.1.0                                                  0.0.1                                           Upgrade complete
3               Mon Sep 27 14:06:15 2021        superseded      prometheus-rules-0.6.1                                                  0.6.1                                           Upgrade complete
4               Mon Sep 27 14:10:56 2021        superseded      prometheus-rules-0.24.0                                                 0.24.0                                          Upgrade complete
5               Mon Sep 27 14:13:10 2021        superseded      prometheus-rules-0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5        0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5 Upgrade complete
6               Mon Sep 27 15:07:36 2021        superseded      prometheus-rules-0.24.0-24d653b6aabbd8956e632d727da583638239afe1        0.24.0-24d653b6aabbd8956e632d727da583638239afe1 Upgrade complete
7               Mon Sep 27 17:11:52 2021        superseded      prometheus-rules-0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5        0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5 Upgrade complete
8               Mon Sep 27 17:14:53 2021        deployed        prometheus-rules-0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5        0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5 Upgrade complete
9               Mon Sep 27 15:14:57 2021        superseded      prometheus-rules-0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5        0.24.0-3e5aae802d0fbc5ab82923dde82b1b0847213fa5 Rollback to 7
10              Mon Sep 27 15:16:28 2021        superseded      prometheus-rules-0.24.0-24d653b6aabbd8956e632d727da583638239afe1        0.24.0-24d653b6aabbd8956e632d727da583638239afe1 Upgrade complete
11              Mon Sep 27 15:31:24 2021        deployed        prometheus-rules-0.24.0-362d9a727789cd8038b70e3d681f28f86209fbdc        0.24.0-362d9a727789cd8038b70e3d681f28f86209fbdc Upgrade complete
$ helm diff revision prometheus-rules 11 10
...
monitoring, service-level.rules, PrometheusRule (monitoring.coreos.com) has changed:
  # Source: prometheus-rules/templates/alerting-rules/service-level.rules.yml
  apiVersion: monitoring.coreos.com/v1
  kind: PrometheusRule
  metadata:
    creationTimestamp: null
    labels:
      app.kubernetes.io/name: "prometheus-rules"
      app.kubernetes.io/instance: "prometheus-rules"
      app.giantswarm.io/branch: "fix-slo-alert"
-     app.giantswarm.io/commit: "24d653b6aabbd8956e632d727da583638239afe1"
+     app.giantswarm.io/commit: "362d9a727789cd8038b70e3d681f28f86209fbdc"
      app.kubernetes.io/managed-by: "Helm"
-     app.kubernetes.io/version: "0.24.0-24d653b6aabbd8956e632d727da583638239afe1"
-     helm.sh/chart: "prometheus-rules-0.24.0-24d653b6aabbd8956e632d727da583638239afe"
+     app.kubernetes.io/version: "0.24.0-362d9a727789cd8038b70e3d681f28f86209fbdc"
+     helm.sh/chart: "prometheus-rules-0.24.0-362d9a727789cd8038b70e3d681f28f86209fbd"
      giantswarm.io/service-type: managed
    name: service-level.rules
    namespace: monitoring
  spec:
    groups:
    - name: service-level
      rules:
      - alert: ServiceLevelBurnRateTooHigh
        annotations:
          description: 'Service level burn rate is too high for {{ $labels.service }} service.'
          opsrecipe: service-level-burn-rate-too-high/
        expr: |
          slo_errors_per_request:ratio_rate1h{service!~"efk-.*|.*external-dns.*|kong-.*|.*nginx-.*"}
          and on (service)
          (
          slo_errors_per_request:ratio_rate1h > on (service) group_left (cluster_type, cluster_id, class) slo_threshold_high
          and
          slo_errors_per_request:ratio_rate5m > on (service) group_left (cluster_type, cluster_id, class) slo_threshold_high
          or
          slo_errors_per_request:ratio_rate6h > on (service) group_left (cluster_type, cluster_id, class) slo_threshold_low
          and
          slo_errors_per_request:ratio_rate30m > on (service) group_left (cluster_type, cluster_id, class) slo_threshold_low
          )
        for: 5m
        labels:
          cancel_if_cluster_status_creating: "true"
          cancel_if_cluster_status_deleting: "true"
          cancel_if_cluster_status_updating: "true"
          severity: page
+         update: me
...
$ km get prometheusrules service-level.rules -oyaml|grep ServiceLevelBurnRateTooHigh
    - alert: ServiceLevelBurnRateTooHigh


Added invalid grant to the ErrorRespons Error enum

Hi, thanks for getting into this project!
Checklist for your PR:

[x] Check if there's any open issue
[x] Please file your request against the develop branch

Description of your changes
I've added the invalid_grant error code to the enum of possible errors as this is returned by keycloak.
How has this been tested?
Being tested locally using a build of my app
Is this a (API-) breaking change?
No

Hi, could you also add unsupported_grant_type and add the link for the token error response to the comment?
https://datatracker.ietf.org/doc/html/rfc6749#section-5.2
Thanks for fixing this!

@kalinjul Is there something I can do to make the build succeed, did I do something wrong? Also what is the process to get something like this PR to production/released? I'm kinda stuck going further with my implementation without this

@nmrsmn No everything is fine, thanks. I will merge this into develop and you can try the next snapshot build  (add maven("https://s01.oss.sonatype.org/content/repositories/snapshots/") to your repositories).
I will then release a new stable version soon-ish.


Update to the new release of nano 2.8

GNU nano 2.8.0 "Axat" makes it easier to move around in
softwrapped lines: the Up and Down keys now step from
visual row to visual row instead of jumping between
logical lines, and the Home and End keys now move to
the start and end of a row, and only when already
there, then to the start and end of the logical line.
Furthermore, the screen can now scroll per row instead
of always per logical line.  On an entirely different
front: nano now makes use of gnulib, to make it build
on more platforms.  In short: there were many internal
changes, not many user-visible ones (apart form the
new softwrap navigation).  The conversion to gnulib
was done by Mike Frysinger, the softwrap overhaul by
David Ramsey.

This was moved and merged in Homebrew/core.


How to add binding redirects in web config through NuGet packages installation

Hi Everyone,
I have prepared the sample MVC4 NuGet package for my dll with the dependent of the following NuGet packages compression.base, officeChart.base. I have installed my custom MVC4 NuGet pacakge in ASP.NET MVC project with framework version 4.5.2. After installation completed all dependent assembly entries are placed under the binding redirect tag of the webconfig file. But, I didn't add this entry in my NuGet packages and I don't aware regarding how this entries are added after install my NuGet packages.
<dependentAssembly>         <assemblyIdentity name="Compression.Base" publicKeyToken="3d67ed1f87d44c89" culture="neutral" />         <bindingRedirect oldVersion="<IP_ADDRESS>-1.4451.0.4" newVersion="1.4451.0.4" /> </dependentAssembly> <dependentAssembly>         <assemblyIdentity name="OfficeChart.Base" publicKeyToken="3d67ed1f87d44c89" culture="neutral" />         <bindingRedirect oldVersion="<IP_ADDRESS>-1.4451.0.4" newVersion="1.4451.0.4" />  </dependentAssembly>
Could you please update the details regarding how this entries are placed in the web config file while install the NuGet packages.
Also, Could you please suggest me how can I overwrite this entries from my side through NuGet packages installation like below
<dependentAssembly>         <assemblyIdentity name="Compression.Base" publicKeyToken="3d67ed1f87d44c89" culture="neutral" />         <bindingRedirect oldVersion="<IP_ADDRESS>-1.4451.0.4" newVersion="1.4400.0.4" /> </dependentAssembly> <dependentAssembly>         <assemblyIdentity name="OfficeChart.Base" publicKeyToken="3d67ed1f87d44c89" culture="neutral" />         <bindingRedirect oldVersion="<IP_ADDRESS>-1.4451.0.4" newVersion="1.4400.0.4" />  </dependentAssembly>
Could you please suggest me regarding this?
Thanks,
Ganesan R.

Issue moved to NuGet/Home #7763 via ZenHub


Language Server needs to use kernel started for notebook

Validated. Was a bit of a pain to figure out the best way. But moved from one kernel with seaborn installed and one kernel without in a notebook editor session. The intellisense for seaborn worked for the module in the kernel with seaborn and just resolved blank module with no intellisense for the kernel without.


HTML reports should set white as default background color

my desktop (and therefore the browsers) use a dark theme, ie light text on a dark background. Some browsers (but not all) set white as the default background color and black as default (text) color for HTML pages.
Firefox however does not (at least on Linux) and the HTML coverage reports become unreadable (see attached screenshot):

The problem can be fixed by adding the following CSS snippet to the 'body' (possible 'body, html') declarations in base.css
background-color: white;

Thanks for considering
Christian.

You can remove the height: 100% on base.css
body, html {
  margin:0; padding: 0;
  height: 100%;
}

Agree with this, using html preview in an IDE to view the report. Currently doing similar to the above and setting background-colour in base.css.
Considering all the styling only works on a white background anyway I think this is worth considering


fix: path resolve with global setup/teardown opts

Codecov Report

Merging #5096 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #5096   +/-   ##
=======================================
  Coverage   60.58%   60.58%
=======================================
  Files         201      201
  Lines        6686     6686
  Branches        4        4
=======================================
  Hits         4051     4051
  Misses       2635     2635

Impacted Files
Coverage Δ

packages/jest-config/src/normalize.js
91.95% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update df92340...3945f60. Read the comment docs.

Yap, we'll want that. Thanks for sending a PR!


Migrate HTML, CSS, JavaScript and PHP Project to Next.js

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Migrate the existing HTML, CSS, JavaScript and PHP project to Next.js to leverage server-side rendering, improved performance, and modular components.
The migration will occur in parallel with ongoing development to avoid disrupting current contributions.
Implementation Plan

Create a Separate Folder:

Set up a nextjs-migration folder in the repository to house the Next.js project.
Allow both the Next.js version and the original HTML/CSS/JS project to coexist without affecting each other.

Development Approach:

Migrate components, pages, and styles into Next.js incrementally, referencing the HTML/CSS/JS files to maintain functional and visual consistency.

Tech Stack Difference

Current Stack: HTML, CSS, JavaScript, Tailwind CSS, PHP and MySQL
New Stack: Next.js(React-based framework with server-side rendering and routing), Tailwind CSS (for styling), MongoDB, and integration with modern tooling and build optimizations.

Benefits

Improved Performance: Server-side rendering and static generation will reduce load times.
Enhanced SEO: Next.js improves SEO with server-rendered pages.
Modular Codebase: Next.js enables reusable, maintainable components for a more scalable codebase.

This sounds amazing @Shariq2003, But this is a full stack project. How are you planning on implementing the backend ?

Ohhk, so I can also collaborate with others contributors like Shubh , and Shivansh. We will make this project to next level
For which we have to connect together discord for project discussion

@Shariq2003 Sounds interesting, This is my discord username - looney091
Ping me there let's see if i can connect with you.

@Shariq2003 Sounds interesting, This is my discord username - looney091 Ping me there let's see if i can connect with you.

Okay sir , we will connect just give me  30 mints

I can work on the back end of the project @Vimall03 @Shariq2003

i can help with the migration of the project @Vimall03

hey @Vimall03 i would also like to help :)


auth tokens aren't listed by npm config ls

Looks like we're not gonna be able to get away with just invoking npm itself after all. We're gonna have to write config stuff ourselves or patch npm to allow outputting these vars

@mikesherov suggested on Discord that we could have an --unsafe flag npm-side that would force inclusion of these options, as a stopgap while we get npm-config extracted.


Generic parameter 'B' could not be inferred

var emailID = Observable<String>("")
@IBOutlet weak var texfField: UITextField!

    emailID.bidirectionalBind(to: texfField.reactive.text) throws compilation error "Generic parameter 'B' could not be inferred"

text on the text field is an optional string, so your observable also needs to be optional string in order for the bidirectional binding to work.
var emailID = Observable<String?>("")

@srdanrasic could be nice to have this in readme :)


Performance on loading \ inserting \ zooming in mxgraph

Currently I try to work with pretty big amount of objects in mxgraph, like rendering 10000 shapes at once. In that case there lots of problems with rendering cells. Each cell updated in a sequence, which leads to hanging browser. It would be great to use something like Cork / Uncork in nodejs. I will call something like mxgraph.stopUpdate(), add lots of elements, loadXML etc. and mxgraph.resumeUpdate() after finishing massive changes.
Unfortunately I can't find methods to control update behavior in mxgraph in documentation.

@ivanProdaiko94 - probably it wouldn't help. The main question is how to avoid unnecessary Rendering, not how to make it less interruptive.

Probably there is also the same problem at draw.io - when I try to create lots of elements zoom starts to work very slow.

Hmm, looks like there is a solution in Java version, but not in JS

Probably setting display:none on svg will help a bit. You can hide svg, then re-render, then show it.

@nosovk  U're using wrong Tool! Msxgraph purpose is to draw diagrams, not to draw 10000 objects!
Try to use d3.js maybe d3.js is capable !

@Diaskhan
I am developing graphic editor(area grid with squares).
Mxgraph provide a lot of ready-made solutions therefore I chose this lib.
Slow method is redrawLabel

@nosovk I rewrote some methods and added hiding svg. It enhanced productivity execution, pictures below.
before

after

profit from 1.8 min -> to 3sec
But I have maximum 1000x1000 small squares that do crash :(
Can somebody prompt me? (I have not time use other library, maybe create custom canvas render)

Could u provide code to reproduce crashing ?

Could u provide code to reproduce crashing ?
And very interesting how much memory use 10 k objects!

https://codepen.io/bohdan-skochko/pen/aRgXPM?editors=1000

What do U mean by saying Crashing ?

What do U mean by saying Crashing ?
Set
rowCounts = 1000,
colCounts = 1000;|

tab browser dead

Yes. I clicked. Try demo on another browser or device!

How long does it take to render after zoom?
If you have ideas for improve performance say please.

Слушай говорю же. ты используешь не тот инструмент !

Слушай говорю же. ты используешь не тот инструмент !
Попробуй поискать что-нить другое для своих квадратиков !
Это библиотека для диграмм а не для рисования !

Well, I agree. But mxgraph solves the problem because there are many ready-made tools. Now my project have begun to expand to huge sizes. I improved the performance myself. Nobody will rewrite the finished part. Therefore, the answer to take another library does not fit. I would not write issue then.
The question of performance! How can I yet improve?(I thought maintainer will answer me, but no)

In my drawings, there will be more than 2000 graphics, but by tracking the source code, it is very slow to find when scaling.
Each zoom is a modification of the value in the svg element, resulting in slower.
Called after performing scaling mxGraphView.prototype.revalidate function
this is my test drawing,has 2000 umlactor

It took more than 5 seconds to run to the validate function.
How can I speed up?

@lijunay
In my case i draw only square or img without text label. As what you saw my photos above redraw label take longer time. I deleted call method redraw Label. Additional a hide svg element before zooming. In your case, you use a label in the element. You can only use toggle display svg. In additiong, I have a problem with memory. I create 200x200 grid with items and tab consumes 1GB memory. And after remove and clean graph memory do not clean. :( I think its because of a lot of recursive calls. How do we fix it?
Unfortunately, maintainers lib didn`t answer an issue :(

We're starting a research task into using hardware zoom, rather than calculating the zoom internally and redrawing. It should address the main problems in this thread, but it's a minumum of 6-12 months work.

We're starting a research task into using hardware zoom, rather than calculating the zoom internally and redrawing. It should address the main problems in this thread, but it's a minumum of 6-12 months work.

Hi, I currently encounter the same problem mentioned in this thread.
As for the main problems in this thread,maybe it's not just about zooming.
In case of rendering big amount of objects in mxgraph,there is also an performance issue while loading/inserting/moving objects.
Could you kindly explain whether the solution you are working on will solve these problems or not? And it would be nice to know about the progress of the research task.
Thanks :）

@Blucbo
Hello,have you got performance issue while loading/dragging objects?
Could you share some other workarounds(if there's any) for the problems?
Thanks!

The main issue here is manipulating a large SVG DOM takes time. The change for zooming involved SVG zoom, to avoid the SVG DOM API.
In terms of the other issues, the solutions are going to be application specific. But, as @Diaskhan points out, mxGraph isn't the right library if you looking to draw 10,000 shapes. You're better off with a WebGL or canvas based library that is written for high performance.
If you still pick mxGraph for a large diagram, you'll need to implement some application level of detail (LOD) functionality. That is, when a huge graph is zoomed out, rather than try to render everything, render some summary of groups of cells, instead.
The LOD example demonstrates showing different views based on zoom level. That said, I haven't checked whether this would actually solve performance issues at scale. It might be that you would need to create a "shadow model" of cells removed from the graph and add/remove depending on the viewpoint and zoom to keep the number of cells to a certain limit.
But, at point this I consider the issue closed. We've made improvements to the zoom. If the performance problems are elsewhere, I'd suggest a different library or some level of detail implementation.
You're still welcome to post additional issues on performance, but please make them very specific to certain operations, show the example you used to test and the results of your performance profiling.

@RolkerMan
I make 2 steps

Set SVG display none before zooming
I draw the only cells. I delete methods redrawLabel and redrawControl

mx.mxCellRenderer.prototype.redraw = function (state, force, rendering) {
    const shapeChanged = this.redrawShape(state, force, rendering);
    if (state.shape != null && (rendering == null || rendering)) {
      // this.redrawLabel(state, shapeChanged);
      this.redrawCellOverlays(state, shapeChanged);
      // this.redrawControl(state, shapeChanged);
    }
  };

@davidjgraph Thank you for your answer anyway

I assume commenting out redrawLabel makes the main difference in terms of performance improvement

Yes, as we can see it on the picture above https://github.com/jgraph/mxgraph/issues/265#issuecomment-434691285

@Blucbo How did you finally work it out


Update documentation and clean up

Pull Request Test Coverage Report for Build 376332865

19 of 19 (100.0%)  changed or added relevant lines in 6 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.003%) to 81.559%

Files with Coverage Reduction
New Missed Lines
%

common/goos/Reader.cpp
2
93.0%

Totals

Change from base Build 376273611:
-0.003%

Covered Lines:
16590

Relevant Lines:
20341

💛  - Coveralls


Upgrade wabt to 1.0.31

Signed-off-by: Takeshi Yoneda<EMAIL_ADDRESS>

this comes with https://github.com/WebAssembly/wabt/issues/2022

will update the spectest version in the separate PR

feels like vagrant error is persistent :D


1.0.3 failed to render YAML

Just updated to 1.0.3 on Windows, and I got "failed to render YAML" error message when creating a new literature note. The settings were the same. What might cause this error? Thanks!

This might be caused by mapping creators or authors to YAML fields. That said, adding creators or authors on Template tab would cause failed to render YAML.

I am also getting the same error.
Here's the error log in the Obsidian console:
plugin:obsidian-zotero-plugin:35 Error: Tag not resolved for Function value
    at app.js:1:643147
    at mm (app.js:1:643201)
    at Cm.toString (app.js:1:650384)
    at mm (app.js:1:642650)
    at app.js:1:645921
    at Array.reduce (<anonymous>)
    at Am._toString (app.js:1:645520)
    at Am.toString (app.js:1:654571)
    at mm (app.js:1:643588)
    at app.js:1:645921
$e @ plugin:obsidian-zotero-plugin:35
renderFrontmatter @ plugin:obsidian-zotero-plugin:236
renderNote @ plugin:obsidian-zotero-plugin:235
eval @ plugin:obsidian-zotero-plugin:250
createNoteForDocItem @ plugin:obsidian-zotero-plugin:250
createNoteForDocItemFull @ plugin:obsidian-zotero-plugin:250

And here's a slightly different version of the same error message.  That said, adding creators or authors on Template tab would cause failed to render YAML.

I can confirm that I don't get this error, if I remove authors from my YAML mapping settings.

Here is an error log generated with Log level set to "All" under the Misc settings:
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.584] [DEBUG] obsidian-zotero:db-worker - Reading Zotero database for attachments of item 3081
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.584] [DEBUG] obsidian-zotero:db-worker - Finished reading Zotero database for attachments of item 3081, count: 1
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.585] [DEBUG] obsidian-zotero:db-worker - Reading Zotero database for tags
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.586] [DEBUG] obsidian-zotero:db-worker - Finished reading Zotero database for tags
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.586] [DEBUG] obsidian-zotero:db-worker - Reading Zotero database for annotations of attachment 9344
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.589] [DEBUG] obsidian-zotero:db-worker - Finished reading Zotero database for annotations of attachment 9344, count: 1
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.591] [DEBUG] obsidian-zotero:db-worker - Reading Zotero database for tags
0974d517-a743-4d27-8cd7-7fcc01900964:16 [2023-05-19T23:39:06.591] [DEBUG] obsidian-zotero:db-worker - Finished reading Zotero database for tags
plugin:obsidian-zotero-plugin:6 [2023-05-19T23:39:06.594] [WARN] obsidian-zotero:main - fileLink: file not found D:\User\Zotero\storage\JAVKTHRP\Acuna-Soto_et_al_2005_Drought,_epidemic_disease,_and_the_fall_of.pdf D:\User\Zotero\storage\JAVKTHRP\Acuna-Soto_et_al_2005_Drought,_epidemic_disease,_and_the_fall_of.pdf
plugin:obsidian-zotero-plugin:6 [2023-05-19T23:39:06.601] [ERROR] obsidian-zotero:main - Failed to renderYaml Tag not resolved for Function value <ref *1> {
  backlink: [Getter],
  fileLink: [Getter],
  authorsShort: [Getter],
  annotations: [
    {
      page: [Getter],
      backlink: [Getter],
      blockID: [Getter],
      commentMd: [Getter],
      imgPath: [Getter],
      imgUrl: [Getter],
      imgLink: [Getter],
      imgEmbed: [Getter],
      fileLink: [Getter],
      textBlock: [Getter],
      colorName: [Getter],
      docItem: [Circular *1]
    }
  ],
  creators: [
    { fullname: [Getter], toString: [Function: toString] },
    { fullname: [Getter], toString: [Function: toString] },
    { fullname: [Getter], toString: [Function: toString] },
    { fullname: [Getter], toString: [Function: toString] },
    { fullname: [Getter], toString: [Function: toString] }
  ],
  authors: [Getter]
} whitelist {
  title: true,
  citekey: true,
  year: true,
  DOI: 'doi',
  date: 'year',
  publicationTitle: 'publisher',
  authors: true
}
plugin:obsidian-zotero-plugin:35 Error: Tag not resolved for Function value
    at app.js:1:643147
    at mm (app.js:1:643201)
    at Cm.toString (app.js:1:650384)
    at mm (app.js:1:642650)
    at app.js:1:645921
    at Array.reduce (<anonymous>)
    at Am._toString (app.js:1:645520)
    at Am.toString (app.js:1:654571)
    at mm (app.js:1:643588)
    at app.js:1:645921
$e @ plugin:obsidian-zotero-plugin:35
renderFrontmatter @ plugin:obsidian-zotero-plugin:236
renderNote @ plugin:obsidian-zotero-plugin:235
eval @ plugin:obsidian-zotero-plugin:250
createNoteForDocItem @ plugin:obsidian-zotero-plugin:250
createNoteForDocItemFull @ plugin:obsidian-zotero-plugin:250
await in createNoteForDocItemFull (async)
xy @ plugin:obsidian-zotero-plugin:249

This bug still exists in 1.0.5

Same bug in 1.0.6

Note Property now has a dedicated template in v1.1.0, which should fix this issue, make sure to check out the document on this changes and cheatsheets

Probably when editing the property in the zt-field.eta file， there is a space missing after “:”.


Fix for Normalize methods of Int2 and Int3

The previous methods would always produce inv == 0, and thus normalization would always zero-out the vector components.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Gah.. that's what I get for doing 3 things at once :)

@nemerle That would be more consistent indeed.

now that i think about it again, a vector with integer components can only have length 1 if all components are 0 except one. so basically the normalization can be simplified by finding the biggest absolute component and return a vector that has set this component to 1 or -1 depending on its sign.

@tebjan agree, those methods don't make much sense
they don't exist in HLSL either:
https://docs.microsoft.com/en-us/windows/desktop/direct3dhlsl/dx-graphics-hlsl-normalize
maybe we should just get rid of them for IntX types?

Merged, thanks!


The git command performs an error

I can't execute the following command with git:
. / scripts/watch - demo demos/nn - art/nn - art. Ts
Error:
events.js:160
throw er; // Unhandled 'error' event
^
Error: spawn node_modules/.bin/watchify ENOENT
at exports._errnoException (util.js:1018:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:367:16)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:390:7)
at startup (bootstrap_node.js:150:9)
at bootstrap_node.js:505:3
What should I do?

It's already running.

It seems like you have an npm issue, did npm run prep give you errors?

no errors at all

Do I need to re-download and rerun?

What operating system are you on?

window 10

I've just tried it again, and I made the same mistake.

Ah, we haven't tried on windows.
Can you try editing this script:
https://github.com/PAIR-code/deeplearnjs/blob/master/scripts/watch-demo#L23
Change "node_modules/.bin/watchify" to "node_modules/.bin/watchify"
If that doesn't work, look in the node_modules/.bin directory and see what the watchify binary filename is and use that.
https://github.com/nodejs/node/issues/3675
We will check in a real fix.

@dsmilkov just letting you know this is an issue we should resolve.

thank you so much,i try it at once.thanks again.

Change "node_modules/.bin/watchify" to "node_modules/.bin/watchify"
The path is the same, right?

Hi, I think the problem is that the path separator in windows is '' which is different than linux '/'.
I just put a PR #28 that tries to fix this problem. In the mean time, can you checkout the scripts-os branch and see if the new changes work for you? Thanks!


Sgratzl/boxplot tooltip

related issues:  #237
Pre merge/review checklist

[ ] branch is up-to-date with the branch to be merged with, i.e. master
[ ] travis build works
[ ] internal code review by requester is done:

[ ] code is formatted
[ ] removed debug output console.log, ...
[ ] use of readonly for readonly fields and interfaces fields
[ ] parameters, fields, variables that are not initialized are typed, e.g.,  function f(a) => function f(a: number)
[ ] optional options objects are typed using option interfaces, see e.g. ILineUpConfig
[ ] code is formatted using your preferred editor formatting tool (e.g. atom beautifier, WebStorm Format Code,...)
[ ] use of meaningful names in camelCase especially for public functions and fields
[ ] file structure: avoid of large code files containing multiple elements (classes, functions) better to create a nested structure, e.g., model
[ ] in case of DOM elements: assigning the id is avoided or the prefix in the lineup config is prepended
[ ] in case of css styles: global classes prepended with lu- or within a lu- namespace
[ ] public fields/function those purpose is not obvious are documented
[ ] complex code is documented
[ ] code is well structured regarding use of variable names, complexity
[ ] public interfaces (e.g. public interface of a class) are minimal, no superfluous fields, functions
[ ] complex code is not duplicated. Otherwise justified within the code, why needed

[ ] code reviewer is assigned
[ ] in case of second review round: review comments are justified or implemented

works with the multivalue.json demo
is there another demo that uses the boxplot column type?

should this also work for the Canvas or HTML Renderer?

should this also work for the Canvas or HTML Renderer?

there is no html renderer for box plots + canvas doesn't have useful tooltips


Fix discovery of audio groups

Description:
Improve reliability of chromecast audio groups by connecting to the service name(s) instead of to an IP.
This is an attempt to improve #13530
This depends on balloob/pychromecast#267
Note:
In some cases there will be slightly different service name depending on which chromecast is the leader (suffixed by -1, -2 and so on), this is why a set of service names is maintained.
Checklist:

[ ] The code change is tested and works locally.
[ ] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

@masterz666 It would be great if you could test this.
You need both the changes from this PR, and the changes from balloob/pychromecast#267

@balloob Review comments fixed.
Two test cases are failing:

test_switched_host
No longer relevant, but could add a test checking for changed service name
test_internal_discovery_callback_only_generates_once
Fails because we no longer return here:
https://github.com/home-assistant/home-assistant/blob/33818034dd3c6d9df0e3350ebf5d0ec599f3fa42/homeassistant/components/cast/media_player.py#L128-L129
I think this is fine though, because we still check for unique UUID here:
https://github.com/home-assistant/home-assistant/blob/33818034dd3c6d9df0e3350ebf5d0ec599f3fa42/homeassistant/components/cast/media_player.py#L230-L233

Remove them.


Hello there, I'm trying to change lineColor, and it changes on my state but not on my screen, if I change tool after pick a new color it does.

It should change when ending the line, but a realtime update would be nice. I'm also looking for a solution

It should change when ending the line, but a realtime update would be nice. I'm also looking for a solution

Have you found a solution to this issue ?

same problem, we have to draw a line, and then the next line should be right color


I wonder if the invokers proposal could take the place of the scroll buttons proposal?

Please see the Invokers Proposal for details. But that API proposal allows any button to "target" any other element, and provide an action to take on that target. It seems like scroll up/down might make a good use case for this API? As in
<div id=scroller> Content </div>
<button id=scroll_up invoketarget=scroller invokeaction="scroll up"> UP </button>

@keithamus

Thanks for the suggestion. That could certainly work. I'd say the dedicated pseudo element has two main advantages over this:

the HTML can be just the content, e.g. the carousel HTML in the demo is effectively a plain list of items.
The linkage to the scroller is automatic, so the same pattern can be shared by multiple scrollers without needing unique scroller ids. E.g. it is common for a single vertically scrolling page to have multiple horizontal caroursels.

That said, invokers could still work well if we decide not to pursue dedicated psuedo elements.

Hmm, both of your advantages are indeed compelling. I'm inclined to agree! Feel free to close this and just keep Invokers in mind, should the current proposal fall apart. Thanks!

I suspect as with the scroll marker issue that there will be value in having this as an explanation for what the generated pseudo-elements do internally and how you could turn arbitrary elements into scroll buttons.


Add tests for must-gather logs

ODS-505: RHODS uses custom must-gather image to collect logs from the generated
namespaces. This test suite adds tests to verify if the custom image runs as expected
and also checks if logs are generated for all pods from the namespaces.

Currently as a part of cleanup I am deleting the must-gather-* logs directory. Not sure if we want to keep it around.


Minor fixes

Use batched bulk creation for shipment details
Account for alphabetically sorted label identifiers
Extend docs about Box.location and Box.product
Use batch-loading for createdBy and lastModifiedBy fields
Extend test case

 2.0: Minor fixes and improvements


Vue files are not type checked or linted with useTypescriptIncrementalApi

Hi,
My config is:
            new ForkTsCheckerWebpackPlugin({
                tsconfig: './tsconfig.json',
                tslint: './tslint.json',
                vue: true,
                async: false,
                formatter: "codeframe",
                useTypescriptIncrementalApi: true,
                measureCompilationTime: true
            }),

Using that config an error I implemented in a vue file is not checked:
e.g.:

const test: string =<PHONE_NUMBER>;

Does not produce any error.
Changing useTypescriptIncrementalApi to false works but is much slower.

Thanks for reporting. We have integration tests that check that Vue errors etc are caught:
https://github.com/Realytics/fork-ts-checker-webpack-plugin/blob/master/test/integration/incrementalApi.spec.js
Could you compare your setup with this please? I'm keen we understand why you might not be picking up errors with your config. It might help you're able to produce a minimal reproduction of the issue and then compare that to our integration tests.
Any help you can provide would be greatly appreciated!

Thanks for the answer.
I can't really find a big difference when it comes to configuration but it seems there is no test that checks for type and linting errors directly in *.vue files (or I missed that).
Maybe it's also just related to the output/cli?
I made a sample project here:
https://github.com/WolfspiritM/simplevue
npm install
npm run build

In that code results with:
Starting type checking and linting service...
Using 1 worker with 2048MB memory limit
Hash: d042033d16e0ac6c5f8f
Version: webpack 4.29.5
Time: 2274ms
Built at: 2019-02-27 22:06:50
Entrypoint bundle = js/bundle.js
[0] multi ./scripts/app.ts 28 bytes {bundle} [built]
[./node_modules/webpack/buildin/global.js] (webpack)/buildin/global.js 472 bytes {bundle} [built]
[./scripts/app.ts] 170 bytes {bundle} [built]
    + 14 hidden modules

Even so the ./scripts/components/HelloWorld.vue file contains a type error.
Changing the webpack config to not use the new api and running build again the errors are correctly reported.

Thanks so much for that. I think you may have identified a bug. If you (or anyone else) is able to take a look I'd greatly appreciate the assistance.
In the meantime I'll change the plugin so it doesn't default to use the incremental API with Vue projects. I'll make we get that in for the 1.0.0 release.

I had a fresh look at the tests, and vue tests for useTypescriptIncrementalApi are quite poor - there is only one test actually testing for errors and it is wrong (there should 2 errors, not 1).
@johnnyreilly, what do you think about applying same technique as in index.spec.js ? (creating two sets of tests for incremental compilation true/false )

Completely agree @0xorial.
I believe @wolfspiritm has been working on trying to fix the issue here: https://github.com/Realytics/fork-ts-checker-webpack-plugin/pull/220
I'm not too sure how things are going.

@WolfspiritM
Please try fork-ts-checker-webpack-plugin@alpha - I've published a new version which supports Vue.js with the Watch API  🚀(note: TypeScript >= 3.8.0 required)
I will close this issue to clean-up the backlog :)


Wiki Links Out of Date

On the wiki page of this repo, the installation package links are out-dated, v2.3 instead of v2.5
From the readme, the latest release is, https://login.salesforce.com/packaging/installPackage.apexp?p0=04tb0000000MXVO

Thanks, sorted this, with a link to the package list in the readme.


bug: The theme color is incorrect in yarn serve mode after Docusaurus is built

What version of daisyUI are you using?
latest
Which browsers are you seeing the problem on?
Edge
Reproduction URL
https://stackblitz.com/edit/github-snyqqa?file=src/pages/index.js
Describe your issue
Both the new and old versions of Docusaurus and DaisyUI encounter this issue. Reproducing steps are as follows:
The Windows system theme is set to dark mode.
After running yarn build and yarn serve, Docusaurus displays light colors, while DaisyUI displays dark colors.
The displayed effects differ between development mode using yarn start and service mode using yarn serve.

On your link, when I run  yarn build && yarn serve I get this error
SyntaxError: Unexpected identifier '𝐬𝐛_𝐞𝐱𝐩𝐨𝐬𝐞'
[ERROR] Unable to build website for locale en.
[ERROR] Error: Failed to compile with errors.
    at eval (file:///home/projects/github-snyqqa/node_modules/@docusaurus/core/lib/webpack/utils.js:207:24)
    at eval (file:///home/projects/github-snyqqa/node_modules/webpack/lib/MultiCompiler.js:554:14)
    at processQueueWorker (file:///home/projects/github-snyqqa/node_modules/webpack/lib/MultiCompiler.js:491:6)
    at _0x3b802d (https://githubsnyqqa-0xfm-v1vb2tl8.w-credentialless-staticblitz.com/blitz.41fbae16.js:352:155078)
    at https://githubsnyqqa-0xfm-v1vb2tl8.w-credentialless-staticblitz.com/blitz.41fbae16.js:352:154835
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I had a similar problem where for some reason when I built my docusaurus project for production my daisy-ui overwrites were not working. In the end I hacked it with overwriting the css variables in the docusaurus specific src/css/custom.css file like this:
* {
  --s: <insert your color>;
}

In this case I wanted to override the secondary color to something other than the default one. This is not something that I would recommend btw.


bug in jax.nn.glu

There is an issue with jax.nn.glu  in the latest release
https://github.com/google/jax/blob/728e4fd3fad334e551dcd1a13b47b8d51aae5a9f/jax/_src/nn/functions.py#L261
Here the static_argnames should be axis. Right now  calling glu  results in a TracerIntegerConversionError
import jax
import jax.numpy as jnp

jax.nn.glu(jnp.ones((1, 4)), axis=1)

full error messages/tracebacks.
TracerIntegerConversionError              Traceback (most recent call last)
Input In [8], in <module>
----> 1 jax.nn.glu(jnp.ones((1, 4)), 1)

    [... skipping hidden 14 frame]

File ~/transformers-env/lib/python3.8/site-packages/jax/_src/nn/functions.py:269, in glu(x, axis)
    261 @partial(jax.jit, static_argnames=("glu",))
    262 def glu(x: Array, axis: int = -1) -> Array:
    263   """Gated linear unit activation function.
    264
    265   Args:
    266     x : input array
    267     axis: the axis along which the split should be computed (default: -1)
    268   """
--> 269   size = x.shape[axis]
    270   assert size % 2 == 0, "axis size must be divisible by 2"
    271   x1, x2 = jnp.split(x, 2, axis)

File ~/transformers-env/lib/python3.8/site-packages/jax/core.py:473, in Tracer.__index__(self)
    472 def __index__(self):
--> 473   raise TracerIntegerConversionError(self)

TracerIntegerConversionError: The __index__() method was called on the JAX Tracer object Traced<ShapedArray(int32[], weak_type=True)>with<DynamicJaxprTrace(level=0/1)>
See https://jax.readthedocs.io/en/latest/errors.html#jax.errors.TracerIntegerConversionError

Thanks for the report - it looks like a typo. The fact that this made it into a release makes me worried that we don't have good test coverage for the function.
I'll make a fix

Do you think you can do a patch release for this one as we have a couple of Flax/JAX models in Transformers failing to due this on master at the moment and are also looking into doing another release soon.

Sorry for the breakage. We'll do a pypi release as soon as the PR gets merged.

We uploaded jax==0.3.3 to pypi with this fix. Google colab servers might not get updated until tomorrow night though.

Let me know if anything is still broken about this!

Thanks a lot for helping so quickly!


[BUG] System.Exception: LiteDB ENSURE: empty page must be defined as empty type

Version
LiteDB v5.0.10
.NET Standard 2.1
Xamarin.Forms v<IP_ADDRESS>2
Describe the bug
The database seems to get corrupted when I insert data. Here are multiple examples:

System.Exception: LiteDB ENSURE: empty page must be defined as empty type
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x0002a] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.NewPage[T] () [0x000a3] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.GetFreeDataPage (System.Int32 bytesLength) [0x00081] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService+<>c__DisplayClass3_0+<<Insert>g__source|0>d.MoveNext () [0x00052] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.BufferWriter..ctor (System.Collections.Generic.IEnumerable`1[T] source) [0x00029] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService.Insert (LiteDB.BsonDocument doc) [0x0005d] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.InsertDocument (LiteDB.Engine.Snapshot snapshot, LiteDB.BsonDocument doc, LiteDB.BsonAutoId autoId, LiteDB.Engine.IndexService indexer, LiteDB.Engine.DataService data) [0x00094] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass7_0.<Insert>b__0 (LiteDB.Engine.TransactionService transaction) [0x00076] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.Insert (System.String collection, System.Collections.Generic.IEnumerable`1[T] docs, LiteDB.BsonAutoId autoId) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.LiteCollection`1[T].Insert (System.Collections.Generic.IEnumerable`1[T] entities) [0x00027] in <8e1f39e9bcf3452cab277acc385e2e12>:0

System.Exception: LiteDB ENSURE: empty page must be defined as empty type
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x0002a] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.NewPage[T] () [0x000a3] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.GetFreeDataPage (System.Int32 bytesLength) [0x00081] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService+<>c__DisplayClass3_0+<<Insert>g__source|0>d.MoveNext () [0x00052] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.BufferWriter..ctor (System.Collections.Generic.IEnumerable`1[T] source) [0x00029] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService.Insert (LiteDB.BsonDocument doc) [0x0005d] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.InsertDocument (LiteDB.Engine.Snapshot snapshot, LiteDB.BsonDocument doc, LiteDB.BsonAutoId autoId, LiteDB.Engine.IndexService indexer, LiteDB.Engine.DataService data) [0x00094] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass7_0.<Insert>b__0 (LiteDB.Engine.TransactionService transaction) [0x00076] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.Insert (System.String collection, System.Collections.Generic.IEnumerable`1[T] docs, LiteDB.BsonAutoId autoId) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.LiteCollection`1[T].Insert (System.Collections.Generic.IEnumerable`1[T] entities) [0x00027] in <8e1f39e9bcf3452cab277acc385e2e12>:0

System.Exception: LiteDB ENSURE: empty page must be defined as empty type
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x0002a] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.NewPage[T] () [0x000a3] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.GetFreeDataPage (System.Int32 bytesLength) [0x00081] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService+<>c__DisplayClass3_0+<<Insert>g__source|0>d.MoveNext () [0x00052] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.BufferWriter..ctor (System.Collections.Generic.IEnumerable`1[T] source) [0x00029] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService.Insert (LiteDB.BsonDocument doc) [0x0005d] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.InsertDocument (LiteDB.Engine.Snapshot snapshot, LiteDB.BsonDocument doc, LiteDB.BsonAutoId autoId, LiteDB.Engine.IndexService indexer, LiteDB.Engine.DataService data) [0x00094] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass7_0.<Insert>b__0 (LiteDB.Engine.TransactionService transaction) [0x00076] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.Insert (System.String collection, System.Collections.Generic.IEnumerable`1[T] docs, LiteDB.BsonAutoId autoId) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.LiteCollection`1[T].Insert (T entity) [0x0002e] in <8e1f39e9bcf3452cab277acc385e2e12>:0

System.AggregateException: One or more errors occurred. (LiteDB ENSURE: empty page must be defined as empty type) ---> System.Exception: LiteDB ENSURE: empty page must be defined as empty type
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x0002a] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.NewPage[T] () [0x000a3] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.GetFreeDataPage (System.Int32 bytesLength) [0x00081] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService+<>c__DisplayClass3_0+<<Insert>g__source|0>d.MoveNext () [0x00052] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.BufferWriter..ctor (System.Collections.Generic.IEnumerable`1[T] source) [0x00029] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService.Insert (LiteDB.BsonDocument doc) [0x0005d] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.InsertDocument (LiteDB.Engine.Snapshot snapshot, LiteDB.BsonDocument doc, LiteDB.BsonAutoId autoId, LiteDB.Engine.IndexService indexer, LiteDB.Engine.DataService data) [0x00094] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass7_0.<Insert>b__0 (LiteDB.Engine.TransactionService transaction) [0x00076] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.Insert (System.String collection, System.Collections.Generic.IEnumerable`1[T] docs, LiteDB.BsonAutoId autoId) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.LiteCollection`1[T].Insert (T entity) [0x0002e] in <8e1f39e9bcf3452cab277acc385e2e12>:0
   --- End of inner exception stack trace ---
---> (Inner Exception #0) System.Exception: LiteDB ENSURE: empty page must be defined as empty type
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x0002a] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.NewPage[T] () [0x000a3] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.Snapshot.GetFreeDataPage (System.Int32 bytesLength) [0x00081] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService+<>c__DisplayClass3_0+<<Insert>g__source|0>d.MoveNext () [0x00052] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.BufferWriter..ctor (System.Collections.Generic.IEnumerable`1[T] source) [0x00029] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.DataService.Insert (LiteDB.BsonDocument doc) [0x0005d] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.InsertDocument (LiteDB.Engine.Snapshot snapshot, LiteDB.BsonDocument doc, LiteDB.BsonAutoId autoId, LiteDB.Engine.IndexService indexer, LiteDB.Engine.DataService data) [0x00094] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass7_0.<Insert>b__0 (LiteDB.Engine.TransactionService transaction) [0x00076] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.Engine.LiteEngine.Insert (System.String collection, System.Collections.Generic.IEnumerable`1[T] docs, LiteDB.BsonAutoId autoId) [0x00055] in <8e1f39e9bcf3452cab277acc385e2e12>:0
  at LiteDB.LiteCollection`1[T].Insert (T entity) [0x0002e] in <8e1f39e9bcf3452cab277acc385e2e12>:0

Code to Reproduce
Unfortunately I cannot share code, since I could not reproduce it easily in a test project and I cannot share my business work. I can just say that I'm pretty sure I'm not doing any kind of magic with LiteDB; I'm using it basically just to store data (delete all, re insert, get all)
Expected behavior
No exception.

I'm getting this too, also the same workflow - delete and a bulk re-insert

I'm getting a ton of ENSURE exceptions. If I start the app first, everything works fine. I guess, because there is not data yet and with my login I'm loading and using this data.
Then after a restart the madness begins with ENSURE exceptions.
Also got this beauty now:
System.Exception: LiteDB ENSURE: if there is no items, HighestIndex must be clear
  at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x00015] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.BasePage.Delete (System.Byte index) [0x0010b] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.DataPage.DeleteBlock (System.Byte index) [0x00000] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.DataService.Delete (LiteDB.Engine.PageAddress blockAddress) [0x00020] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.LiteEngine+<>c__DisplayClass3_0.<Delete>b__0 (LiteDB.Engine.TransactionService transaction) [0x00078] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.LiteEngine.AutoTransaction[T] (System.Func`2[T,TResult] fn) [0x00037] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.LiteEngine.Delete (System.String collection, System.Collections.Generic.IEnumerable`1[T] ids) [0x00046] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.Engine.LiteEngine.DeleteMany (System.String collection, LiteDB.BsonExpression predicate) [0x000d9] in <e37eae51170e472a88b7e61cb2c985c3>:0
  at LiteDB.LiteCollection`1[T].DeleteAll () [0x00000] in <e37eae51170e472a88b7e61cb2c985c3>:0

Adding a stacktrace too, I've got a ton of these. Looks like most of the time it's happening when there isn't a database/file yet.
LiteDB ENSURE: page type must be collection page in Constants.ENSURE (Boolean conditional, String message)

LiteDB.Constants.ENSURE(Boolean conditional, String message);LiteDB
LiteDB.Engine.CollectionPage..ctor(PageBuffer buffer);LiteDB.Engine.CollectionPage
LiteDB.Engine.BasePage.ReadPage[T](PageBuffer buffer);LiteDB.Engine
LiteDB.Engine.Snapshot.ReadPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion);LiteDB.Engine
LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion);LiteDB.Engine
LiteDB.Engine.CollectionService.Get(String name, Boolean addIfNotExists, CollectionPage& collectionPage);LiteDB.Engine
LiteDB.Engine.Snapshot..ctor(LockMode mode, String collectionName, HeaderPage header, UInt32 transactionID, TransactionPages transPages, LockService locker, WalIndexService walIndex, DiskReader reader, Boolean addIfNotExists);LiteDB.Engine.Snapshot
LiteDB.Engine.TransactionService.g__create|42_0(<>c__DisplayClass42_0& );LiteDB.Engine
LiteDB.Engine.TransactionService.CreateSnapshot(LockMode mode, String collection, Boolean addIfNotExists);LiteDB.Engine
LiteDB.Engine.LiteEngine.<>c__DisplayClass5_0.b__0(TransactionService transaction);LiteDB.Engine.LiteEngine
LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn);LiteDB.Engine
LiteDB.LiteCollection`1.EnsureIndex(String name, BsonExpression expression, Boolean unique);LiteDB
Acars.AirportDatabase.AirportDatabase.Save();Acars.AirportDatabase
Acars.AirportDatabase.AirportDatabase.CreateAndGenerateDatabase(SimType type

Hi guys, this ensure error avoid/detect corruption state. I will review this operations to try reproduce this error.

Thanks @mbdavid. This is happening on a brand new/fresh DB, or when deleting.
Another type:
System.Exception: LiteDB ENSURE: transaction must be active to rollback (current state: Disposed) in Constants.ENSURE (Boolean conditional, String message)
LiteDB.Constants.ENSURE(Boolean conditional, String message);LiteDB
LiteDB.Engine.TransactionService.Rollback();LiteDB.Engine
LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn);LiteDB.Engine
LiteDB.LiteCollection`1.Delete(BsonValue id);LiteDB
Acars.Database.DatabaseInterface.Delete[T](String tableName, Int32 id);Acars.Database
Acars.Services.PirepService.Delete(Pirep pirep);Acars.Services

I think that these errors occur when you first make a DeleteAll and afterwards an Insert (I usually use a Replace extensions method for this). But they first occur after a complete app restart. Before that everything works fine at first app launch.

Another thing I noticed: I'm not totally sure what exactly is the thing.
Usually my replace method looks like this:
collection.DeleteAll();
collection.Insert(newItems);

I got the feeling that the DeleteAll method got some problems with writing correctly. OR the problem is that deleting and inserting happens to fast 🤔
I implemented the method to first get all existing items from the database, compare to the new ones, find Inserts, Updates and Deletes and then change only what has to be changed. And this seems to work now 👍

If you are interested in my method you can see it here: https://gist.github.com/GW-FUB/d7cfa866023e82f6538bbf83047c331e

Hi @GW-FUB. maybe this DeleteAll has some problem. I tried to replicate using many different types of insert/delete all but don't get this error. Will be great if you tell me:

How many collections have your database?
Which is avg of your document size?
Do you use Singleton database instance? Or you open/close after each operation?
Do you have more indexes in this collection?

I will keep trying reproduce this error along this week

Hey @mbdavid ,
of course I will tell you what I can. I got this error on different collections and at the moment I have fixed it, but I will try to gather as much information as possible :-)

How many collections have your database?

Around 23. I'm not totally sure as I got some default ones in my library that I'm not using in every app. I have split my database in three single ones:

UserData
UserFiles
AppData

Each one of them has its own file. That makes it easier to reset if something goes wrong (or e.g. to make a backup of user data without the files).

Which is avg of your document size?

Around 250 - 500 bytes. And there are usually 20 - 50 of them. So not a lot.

Do you use Singleton database instance? Or you open/close after each operation?

Yes I use a singleton. I added this in my Gist example.

Do you have more indexes in this collection?

Usually I use 0 to 2 indices in one collection. Also added an example.

Do you change any pragma parameter?

No, I don't use any pragmas. Not sure if UtcDate (database property) also counts.

How many documents you have in this insert/delete operation?

As I said: Usually 20 - 50
I'm really confused for this thing as I don't think I'm doing anything special and also not using a lot of data. Also in my other apps I didn't have any problems with v5, just in this one; I really hope I'm not missing anything important 😅

If you want I can send you the database classes, because they're quite isolated and there shouldn't be any "business" code

Hi @GW-FUB, thanks for the infos. I'm sure that you are not doing wrong... because ENSURE tests was added in 5.0.10 to avoid/test database corruption. So, if any exception like this occurs, I must take a look better.
Using your use-context I try reporduce this error in a long loop-sequence of operations. I will back as sson as I reproduce this. Thanks in advice

Just also adding in case it helps - I'm using a single database file for storing several different collections. It's happening in a separate thread, using InsertBulk. I'm deleting the file first instead of using DeleteAll - not sure if that's a problem, but it was faster. But here is that code, and the corresponding exception:
        public void Save()
        {
            var stopwatch = new Stopwatch();
            Logger.Info("Saving airport database");

            lock (_lock) {

                stopwatch.Start();

                var dbFile = GetDbName(SimType);

                // Delete the old db file. Don't bother with updating rows
                if(File.Exists(dbFile)) {
                    File.Delete(dbFile);
                }

                //var connStr = $"Filename={dbFile};InitialSize=250MB";
                var connStr = dbFile;
                Logger.Debug($"Connection string: {connStr}");

                using (var db = new LiteDatabase(connStr)) {
                    var airports = db.GetCollection<FsAirport>("airports");
                    var runways = db.GetCollection<FsRunway>("runways");
                    var gates = db.GetCollection<FsGate>("gates");

                    airports.EnsureIndex("ICAO");
                    runways.EnsureIndex("ICAO");
                    gates.EnsureIndex("ICAO");

                    airports.InsertBulk(Airports);
                    foreach(var apt in Airports) {
                        if (apt.Runways.Count > 0) {
                            runways.InsertBulk(apt.Runways);
                        }

                        if (apt.Gates.Count > 0) {
                            gates.InsertBulk(apt.Gates);
                        }
                    }
                }

                stopwatch.Stop();
                Logger.Info($"Saving airport data time {stopwatch.ElapsedMilliseconds}ms");
            }
        }

And the exception (just reposting it from above)
LiteDB ENSURE: page type must be collection page in Constants.ENSURE (Boolean conditional, String message)

LiteDB.Constants.ENSURE(Boolean conditional, String message);LiteDB
LiteDB.Engine.CollectionPage..ctor(PageBuffer buffer);LiteDB.Engine.CollectionPage
LiteDB.Engine.BasePage.ReadPage[T](PageBuffer buffer);LiteDB.Engine
LiteDB.Engine.Snapshot.ReadPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion);LiteDB.Engine
LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion);LiteDB.Engine
LiteDB.Engine.CollectionService.Get(String name, Boolean addIfNotExists, CollectionPage& collectionPage);LiteDB.Engine
LiteDB.Engine.Snapshot..ctor(LockMode mode, String collectionName, HeaderPage header, UInt32 transactionID, TransactionPages transPages, LockService locker, WalIndexService walIndex, DiskReader reader, Boolean addIfNotExists);LiteDB.Engine.Snapshot
LiteDB.Engine.TransactionService.g__create|42_0(<>c__DisplayClass42_0& );LiteDB.Engine
LiteDB.Engine.TransactionService.CreateSnapshot(LockMode mode, String collection, Boolean addIfNotExists);LiteDB.Engine
LiteDB.Engine.LiteEngine.<>c__DisplayClass5_0.b__0(TransactionService transaction);LiteDB.Engine.LiteEngine
LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn);LiteDB.Engine
LiteDB.LiteCollection`1.EnsureIndex(String name, BsonExpression expression, Boolean unique);LiteDB
Acars.AirportDatabase.AirportDatabase.Save();Acars.AirportDatabase
Acars.AirportDatabase.AirportDatabase.CreateAndGenerateDatabase(SimType type

In this case - the airports that are saved are about 30-35k records, the runways and gates are probably 50-60k records. It ends up being really slow - I have an SSD and it takes a few minutes sometimes (the file, in the end, is about 200MB) But that's fine. You can see it's failing in trying to create the index.

Hi @nabeelio, I will try your example too. In you case seams in EnsureIndex method.
DeleteAll is slower way to delete all records from a collection, but it's only way to use inside a transaction. If you don't need run another operations in same transaction, you can use DropCollection or even delete you phisical file (fastest way but drop all database).
v5 works different from v4 because use better memory cache, WAL (write ahead log) and sql syntax... but API changes are minimal (and you got any compilation error).

@mbdavid Thanks, I posted the other case where it's happening above in a Delete() method.
Yeah I'm just deleting the database file since it's the fastest. It's basically a write-once operation and then only reads after that, until the user needs to reload the data from the source files, which doesn't happen often. But from what I've seen, this has been on databases that aren't there.

@nabeelio Have you tried deleting the log file when you delete the data file?

@lbnascimento I don't see a log file with those database files in that directory. It's the _nav files. What's weird is that settings.db does have one. The Delete() error I posted happens with the settings.db file. The other _nav files

Hello,
I'm getting "LiteDB ENSURE : empty page must be defined as empty type" exception too.
It s occuring in a database, where I keep inserting, uploading and deleting documents.
I'm in v5.0.10.
System.Exception: LiteDB ENSURE: empty page must be defined as empty type
at LiteDB.Constants.ENSURE(Boolean conditional, String message)
at LiteDB.Engine.Snapshot.NewPageT
at LiteDB.Engine.Snapshot.GetFreeDataPage(Int32 bytesLength)
at LiteDB.Engine.DataService.<>c__DisplayClass3_0.<g__source|0>d.MoveNext()
at LiteDB.Engine.BufferWriter..ctor(IEnumerable1 source)    at LiteDB.Engine.DataService.Insert(BsonDocument doc)    at LiteDB.Engine.LiteEngine.InsertDocument(Snapshot snapshot, BsonDocument doc, BsonAutoId autoId, IndexService indexer, DataService data)    at LiteDB.Engine.LiteEngine.<>c__DisplayClass7_0.<Insert>b__0(TransactionService transaction)    at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func2 fn)
at LiteDB.LiteCollection1.Insert(T entity)    at LiteDB.LiteFileStream1.WriteChunks(Boolean flush)
at LiteDB.LiteFileStream1.Dispose(Boolean disposing)    at System.IO.Stream.Close()    at LiteDB.LiteStorage1.Upload(TFileId id, String filename, Stream stream, BsonDocument metadata)

I'm getting this issue when using Library with Hangfire.LiteDb.
It seems that some entries end-up on the wrong page

Any news about this issue? I'm getting this error message:
LiteDB ENSURE: transaction must be active to rollback (current state: Disposed)
when executing GetCollection on v5.0.10
System.Exception: LiteDB ENSURE: transaction must be active to rollback (current state: Disposed)    at LiteDB.Constants.ENSURE(Boolean conditional, String message)    at LiteDB.Engine.TransactionService.Rollback()    at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func2 fn)    at LiteDB.Engine.LiteEngine.EnsureIndex(String collection, String name, BsonExpression expression, Boolean unique)    at LiteDB.LiteCollection1.EnsureIndex(String name, BsonExpression expression, Boolean unique)    at LiteDB.LiteCollection1.EnsureIndex(BsonExpression expression, Boolean unique)    at Relationship.Promotion.Applier.Infrastructure.Databases.LiteContext1.GetCollection() in /home/vsts/work/1/s/RelationshipPromotionApplier/src/Relationship.Promotion.Applier.Infrastructure/Databases/LiteContext.cs:line 41

This is happening too...
System.Threading.SynchronizationLockException   HResult=0x80131518   Message=Object synchronization method was called from an unsynchronized block of code.   Source=System.Private.CoreLib   StackTrace:    at System.Threading.Monitor.Exit(Object obj)    at LiteDB.Engine.LockService.ExitLock(String collectionName)    at LiteDB.Engine.Snapshot.Dispose()    at LiteDB.Engine.TransactionService.Rollback()    at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func2 fn)    at LiteDB.Engine.LiteEngine.EnsureIndex(String collection, String name, BsonExpression expression, Boolean unique)    at LiteDB.LiteCollection1.EnsureIndex(String name, BsonExpression expression, Boolean unique)    at LiteDB.LiteCollection1.EnsureIndex(BsonExpression expression, Boolean unique)    at Relationship.Promotion.Applier.Infrastructure.Databases.LiteContext1.GetCollection() in C:\Users\jmourao\workspace\MotorPromocao\RelationshipPromotionApplier\src\Relationship.Promotion.Applier.Infrastructure\Databases\LiteContext.cs:line 56

@rasert Could you test with the latest version?

Hello,
Any update to this one? I got very similar issue LiteDB ENSURE: page type **must be index page** on 5.0.8 database.
I got this error message from LiteDb Studio v. 1.0.2 when debugging the database table.
I got a little different error message when rebuilding the same database:
LiteDB.LiteException: Invalid Data on 74699. Full zero: False. Page Type: Empty. Prev/Next:<PHONE_NUMBER>/74700. UniqueID: 0. ShareCounter: 0.     at LiteDB.Engine.DataPage..ctor(PageBuffer buffer)    at LiteDB.Engine.BasePage.ReadPage[T](PageBuffer buffer)    at LiteDB.Engine.FileReaderV8.ReadPage[T](UInt32 pageID)    at LiteDB.Engine.FileReaderV8.GetDocuments(String collection)+MoveNext()    at LiteDB.Engine.LiteEngine.RebuildContent(IFileReader reader)    at LiteDB.Engine.LiteEngine.Rebuild(RebuildOptions options)    at LiteDB.LiteDatabase.Rebuild(RebuildOptions options)
Some basic info:

database file size ~800MB
database log file ~78MB
most probably there was similar scenario, reading huge data & writing some data at the same time, maybe the disk was overloaded a while

Unfortunately I cannot share the database since it is customer one & password protected.
Thank you for any update.
Regards,
Vlastimil

Hi, I am getting this error in production too... It starts with the following exception:
System.Exception: LiteDB ENSURE: must have no pages in used when call Clear() cache
   at LiteDB.Constants.ENSURE(Boolean conditional, String message)
   at LiteDB.Engine.MemoryCache.Clear()
   at LiteDB.Engine.WalIndexService.Clear()
   at LiteDB.Engine.WalIndexService.CheckpointInternal()
   at LiteDB.Engine.WalIndexService.TryCheckpoint()
   at LiteDB.Engine.LiteEngine.CommitAndReleaseTransaction(TransactionService transaction)
   at LiteDB.Engine.LiteEngine.Commit()
   at LiteDB.LiteDatabase.Commit()

After that, the empty page exception occurs every time I try to insert more data:
System.Exception: LiteDB ENSURE: empty page must be defined as empty type
   at LiteDB.Constants.ENSURE(Boolean conditional, String message)
   at LiteDB.Engine.Snapshot.NewPage[T]()
   at LiteDB.Engine.Snapshot.GetFreeDataPage(Int32 bytesLength)
   at LiteDB.Engine.DataService.<>c__DisplayClass3_0.<<Insert>g__source|0>d.MoveNext()
   at LiteDB.Engine.BufferWriter..ctor(IEnumerable`1 source)
   at LiteDB.Engine.DataService.Insert(BsonDocument doc)
   at LiteDB.Engine.LiteEngine.InsertDocument(Snapshot snapshot, BsonDocument doc, BsonAutoId autoId, IndexService indexer, DataService data)
   at LiteDB.Engine.LiteEngine.<>c__DisplayClass7_0.<Insert>b__0(TransactionService transaction)
   at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn)
   at LiteDB.LiteCollection`1.Insert(T entity)

In our case we have set a data file size limit and use the direct connection mode. When the limit is reached, we delete the oldest data (basically a ring buffer). One thread is writing data to the data file periodically, and another thread is reading from it.
The problem starts when we delete old data. In MemoryCache.Clear() the PagesInUse is not 0, which means the ENSURE should throw an exception. I was never able to reproduce the error, or at least I thought so. When taking a closer look into the code I noticed the following code:
    /// <summary>
    /// Ensure condition is true, otherwise throw exception (check contract)
    /// </summary>
    [DebuggerHidden]
    public static void ENSURE(bool conditional, string message = null)
    {
      if (!conditional && !Debugger.IsAttached)
        throw new Exception("LiteDB ENSURE: " + message);
    }

The ENSURE actually fails for me too, but since I have my debugger attached, the error is just swallowed (see !Debugger.IsAttached) and no exception is thrown! The program silently continues in corrupted state.
@mbdavid is there any reason, why corrupted states are ignored when a debugger is attached?

Update: The problem for me seems to have been, that I was reading the documents from the collection, while removing those documents item by item after they have been read. Like this:
_Database.BeginTrans();

var toDeleteDocuments = _MyCollection.Find(**my condition**);

foreach (var deleteDocument in toDeleteDocuments)
{
    // Do some stuff with the 'deleteDocument'

    _MyCollection.Delete(deleteDocument.Id);
}

_Database.Commit();

Not using a transaction and deleting all documents at once after I am done processing the affected documents seems to have solved this issue. Like this:
var toDeleteDocuments = _DbValuePages.Find(**my condition**);
var toDeleteDocumentIds = new HashSet<long>();

foreach (var deleteDocument in toDeleteDocuments)
{
    // Do some stuff with the 'deleteDocument'

    // Remember ID of the document to delete.
    toDeleteDocumentIds.Add(deleteDocument.Id);
}

var tmp = toDeleteDocumentIds.Select(id => new BsonValue(id)).ToArray();
_MyCollection.DeleteMany(Query.In("_id", tmp));

Further I created a pull request to throw ENSURE exceptions when a debugger is attached as well. I am sure I am not the first person which had difficulties to reproduce the issue, because they use a debugger (https://github.com/mbdavid/LiteDB/pull/2094).

After running a rebuild a single time, I can't run it again due to this error.
[Exception: LiteDB ENSURE: page type must be collection page]
   LiteDB.Constants.ENSURE(Boolean conditional, String message) +97
   LiteDB.Engine.CollectionPage..ctor(PageBuffer buffer) +139
   LiteDB.Engine.BasePage.ReadPage(PageBuffer buffer) +269
   LiteDB.Engine.FileReaderV8.ReadPage(UInt32 pageID) +247
   LiteDB.Engine.<GetIndexes>d__6.MoveNext() +107
   LiteDB.Engine.LiteEngine.RebuildContent(IFileReader reader) +1123
   LiteDB.Engine.LiteEngine.Rebuild(RebuildOptions options) +890
   LiteDB.SharedEngine.Rebuild(RebuildOptions options) +56

I'm on LiteDB Nuget package version v5.0.11

Any resolution? Quick fix? App is crashing

Sqlite?

HI...
I'm facing the same issue here. There are some news about it?

Same issue on Checkpoint() call
Autofac.Core.DependencyResolutionException: An exception was thrown while activating λ:LiteDB.ILiteDatabase. ---> System.AggregateException: One or more errors occurred. (LiteDB ENSURE: position must be in PAGE_SIZE module) ---> System.Exception: LiteDB ENSURE: position must be in PAGE_SIZE module at LiteDB.Constants.ENSURE (System.Boolean conditional, System.String message) [0x00015] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.Engine.AesStream.Write (System.Byte[] array, System.Int32 offset, System.Int32 count) [0x00018] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.Engine.DiskWriterQueue.ExecuteQueue () [0x00055] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at System.Threading.Tasks.Task.InnerInvoke () [0x0000f] in <fda9d17a914c4c1ab667b1e3694c0281>:0 at System.Threading.Tasks.Task.Execute () [0x00000] in <fda9d17a914c4c1ab667b1e3694c0281>:0 --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <fda9d17a914c4c1ab667b1e3694c0281>:0 at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken) [0x00043] in <fda9d17a914c4c1ab667b1e3694c0281>:0 at System.Threading.Tasks.Task.Wait () [0x00000] in <fda9d17a914c4c1ab667b1e3694c0281>:0 at LiteDB.Engine.DiskWriterQueue.Wait () [0x00019] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.Engine.WalIndexService.CheckpointInternal () [0x00018] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.Engine.WalIndexService.Checkpoint () [0x00029] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.Engine.LiteEngine.Checkpoint () [0x00000] in <47be80e4df11402fa4b0c9d0d61b2517>:0 at LiteDB.LiteDatabase.Checkpoint ()

Hi,
I also have this problem.
It's very important to us to arrive to solution.
I can share my db file. and also my code.
When using DeleteAll() we got LiteDB ENSURE: page type must be data page error.
One more thing :
if I try to delete by raw query from the LiteDbStudio - so it works !
BUT, same raw query, from code, using Execute - failed.
Can you help please ?

Just started using LiteDB and have observed this same issue. Definitely appears to be a threading issue, as wrapping all database calls with Reader Writer locking looks to solve the problem.

Hello,
This issue still persist in version 5.0.16.
It occurs when using DeleteAll() and then Upsert(). Any solution?
Thank you

I have same error use FileStore. Maybe db file is broken by kill app?

Hi,
For previous comments it seems DeleteAll funcion takes too much time and can cause issues when perform some further actions on the repository immediately.
I implemented a workaround to solve and it seem it's working. Instead of run DeleteAll, use DeleteMany.
Best regards

Is there any progress, using the latest version I am also facing the same issue

I will just give a simple solution: do not hold the connection. Just open it, do whatever you need and close it immediately.
With this we were enabled to "kind" of solve this issue.

From my side the Rebuild from the .NET SDK every time I am facing this issue is resolving it.

Not sure if this will help anyone, I'm working on a Xamarin Forms Project, I deleted all the bin and obj folders and did a rebuild on the solution. It seemed to work for me, not facing any issue so far.

I am getting this error too. Could be that Dispose() was called on the database while a record was being inserted.


[FLINK-19429][docs-zh] Translate page Data Types into Chinese

What is the purpose of the change
Translate page Data Types into Chinese
Brief change log
Translate page Data Types into Chinese. The doc located in "flink/docs/dev/python/datastream-api-users-guide/data_types.zh.md"
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (o)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Hi @dianfu, Could you help have a review in your free time, Thank you.

@wangxlong Thanks for the PR. LGTM. Merging...


Add FCIS to README

How about moving classification first?
I mean
Image Classification,
Object Detecion,
Semantic Segmentation,
Instance Segmentation