Regression for rendering between 1.117 and 1.118

A user provided a glTF model at https://community.cesium.com/t/measurment-tools-stopped-working/32962/12
When uploading this to Cesium ion and tiling it as 3D tiles, this is the result:
Forum 32962 4x panel stojak as 3D Tiles.zip
Here is a comparison of the model rendered in 1.117 and 1.118:

The actual model is stored as a composite tile. For convenience/debugging/analyzing that, I extracted the GLB parts from that, including the JSON parts of the GLBs, attached here:
Forum 32962 composite elements.zip
The GLBs are using (Draco and) the rendering-related extensions
    "KHR_materials_specular",
    "KHR_materials_ior",

which might help to narrow down where the error was introduced. I didn't do a bisection or analysis of https://github.com/CesiumGS/cesium/compare/1.117...1.118 yet, but maybe someone already has an idea based on the description here.

The model has the following value set in the KHR_materials_specular extension:
        "KHR_materials_specular": {
          "specularColorFactor": [
            2,
            2,
            2
          ]
        },

Before version 1.118, CesiumJS did not support this extension at all.
If I remove the specularColorFactor from the glTF and load in 1.118, the model renders as before:

It is not immediately clear to me what the impact of the specularColorFactor should be in this case. But we could potentially have an error somewhere in https://github.com/CesiumGS/cesium/pull/11970

The KHR_materials_specular extension spec is... quite elaborate and math/shader-heavy, so I can not quickly say anything profound. A few things that caught my attention:

The specularFactor is constrained to minimum:0.0, maximum:1.0
The specularColorFactor does not have a maximum. I found that strange at the first glance, and considered that this might have been omitted accidentally, but...
Quickly skimming over the spec text brings up the Materials with reflectance parameter section, which says

... Typically, the reflectance ranges from 0% to 8%, given as a value in range [0,1], ...
...
Therefore, by encoding an additional constant factor of 2 in specularColorFactor, we can convert from reflectance to specular color without any loss.

So that might explain where these 2, 2, 2 are coming from (and why there is no maximum: 1.0 ... even though I'd ask whether there should be a maximum: 2.0 then ...).
Maybe the possibility of these values being >1.0 is not taken into account properly.
(As a preliminary workaround, I posted a version of the model in the form where the KHR_materials_specular extension was removed, just to at least have the option to render it properly (or at least "better") for now...)


Consider if we want to support subnets and explorers when deploying a devnet

Subnets won't be supported. The platform is able to just provide users with an explorer link that sets their devnet as a custom network, so running the explorer shouldn't be necessary either. Closing


Copy nbind.node into root and cleanup win target

nbind.node get's copied to the root directory after building.
(https://github.com/parro-it/libui-node/pull/58#issuecomment-372144662)
The compiler flags for windows weren't used and wouldn't work anyway (rpath doesn't exist on windows and there is no C++11 flag).

If you work on the 0_1_0 branch, the CI tests are passing there both on Travis and on Appveyor

I checked this on macOS (I locally merged your copylib branch into 0_1_0).
Seems to work fine, I can even delete the build folder after install...

Yes. Also: one thing to remember when packaging is to exclude the build folder (78mb on macOS).

I checked this on macOS (I locally merged your copylib branch into 0_1_0).

Could you push the merged 0_1_0?

Could you push the merged 0_1_0?

sure

oh and it work on Windows 7 too 🎉


api: promote tracing operation to listener level

Signed-off-by: Kuat Yessenov<EMAIL_ADDRESS>Description:
Promote tracing operation field to listener level. This expands the scope of the field to support two use cases:

Tracing TCP connections: istio can send connection events to create a service communication graph. Network filters can benefit from the common knowledge about the intent of the listener/filter chain (client-side vs server-side).
Using ingress/egress designation for other telemetry. The direction of the traffic is a useful label on metrics, and it is not explicit at the moment, unless depending on tracing configuration in HTTP connection manager or naming convention. Both workarounds are not ideal.

Risk Level: low
Testing: all unit tests continue to pass
Docs Changes:
Release Notes:

I am not a fan of using the default value 0 to mean INGRESS, but alas, the API needs to stay backwards compatible. I'd like to add a third option to mean undefined/middle proxy, but that requires plumbing through all tracers.

cc @mandarjog @bianpengyuan

cc @htuch for UDPA visibility / compatibility, this breaks generated code as well.

I'm fine putting HTTP thingy where it belonged and duplicating the proto. I just think this is less sustainable long-term.

@kyessenov Just wondering if this is a good opportunity to change the concept from "operation" to what it truly represents, i.e. "direction"? Operation can be misleading, as it can also refer to the "operation" being performed on the service.

Waiting for @htuch to take a look from the API perspective.
/wait-any

@objectiser I'm happy to pick a better name. Tracing direction? Traffic direction? Direction?

@htuch undid changes to HTTP tracing and added a TODO to align it later.

@kyessenov traffic direction LGTM.

OK, so this is now good from an API compat standpoint, but I'm questioning why we need this. Can't you use LDS metadata for direction? I'm wondering how universal the notion of ingress/egress is here vs. something that is Istio specific? Envoy is used in a ton of configurations, including edge and middle proxy, so ingress/egress doesn't really capture these, in particular when there is no local application. How do we deal with these?

@htuch Ingress/egress is used in all HTTP tracers' configurations, so I think it's fairly common apart from istio as well. The issue with middle proxies is a real one, and I don't have a good answer here apart from adding a new enum value to model it. The question should be how would you model a middle proxy in the existing HTTP tracer config, and we can incorporate the answer into this new config.

@kyessenov OK. Can you open an issue for that? Also, needs master merge. Otherwise, LGTM.

/retest

/retest

/retest

/azp run


hfetch-nt (or the hfetch neofetch theme variant)

hfetch-nt is designed to be a bit like my fetch (aka hfetch)
and hfetch-nt is a little bit smaller than hfetch. it has the hostname/user removed.
still the colorblocks and everything else (expect the colors and logo) looks like hfetch.
preview:

nah, i changed my mind. it's also on the hfetch repo now


Debian and CP1250 encoding for SQLSRV driver

I have a PHP application which uses CP1250/Windows-1250 encoding + MSSQL database with  Czech_CI_AS collation (all text columns types are VARCHAR).
If I use these setting on Windows platform, it works perfectly.
$connectionInfo = array("UID" => DB_USER, "PWD" => DB_PASSWORD, "Database" => DB_NAME, "CharacterSet" => SQLSRV_ENC_CHAR);
But now I need to install this application on Debian Linux server. If I try to read data from the database (via PHP script, VARCHAR data type) all Czech special chars are displayed incorrectly.
How can I set explicitly CP1250 encoding in SQLSRV driver?

Debian 9.9
Linux manadesk2 4.9.0-7-amd64 #1 SMP Debian 4.9.110-3+deb9u2 (2018-08-13) x86_64 GNU/Linux
php 7.3 (7.3.6-1+0~20190531112735.39+stretch~1.gbp6131b7)
msodbcsql17 (<IP_ADDRESS>-1)
pdo_sqlsrv 5.6.1
sqlsrv      5.6.1

many thanks,

hi @pavero01 , we are not experts with Czech chars, but have you configured to use the right locale in your Debian 9? For example, what's the output of locale? If it shows utf8, please do the following:

Check the file /etc/locale.gen and look for cs_CZ ISO-8859-2 (which is the equivalent of Windows 1250).
If the line begins with a #, run sed -i 's/# cs_CZ ISO-8859-2/cs_CZ ISO-8859-2/g' /etc/locale.gen (you need admin rights for this)
type locale-gen cs_CZ

Something like this will show up:
Generating locales (this might take a while)...
  cs_CZ.ISO-8859-2... done
  en_US.UTF-8... done
Generation complete.

Now you have several options, depending on your needs or requirements.
You may call the setlocale() function in each php script before you make any connection to your database server.
Alternatively, in a terminal, type
export LANG="cs_CZ.ISO-8859-2"
export LANGUAGE="cs_CZ.cs"
export LC_ALL="cs_CZ.ISO-8859-2"

Then run a php script. See if you can your Czech chars correctly. This basically affects your current settings in this terminal. It's up to you whether to modify .bashrc by appending the above lines at the end, which affects the programs launched from any terminal subsequently.
If you're planning to use Czech locale as the system default, it's another story. Please consult with your system administrator. You might also find this reference page useful.

Thanks for your answer. Unfortunately  ISO-8859-2 isn't fully equal with Win-1250 encoding. There are some differences. And win-1250 locale on Linux distributions isn't available.
https://cs.wikipedia.org/wiki/Windows-1250
Is there really no other way how to specify for SQLSRV driver Win-1250 (or some other specific) encoding?

Hi @pavero01, our main focus is UNICODE support rather than individual codepage.
That being said, please launch a Debian terminal and try to set its encoding as follows:
Terminal -> Set Encoding -> Central European -> WINDOWS 1250
Does it help? But this only affects the current terminal.
Thus, similar to my first reply, try to modify /etc/locale.gen by appending cs_CZ CP1250 at the end. Then locale-gen cs_CZ should produce the output below:
Generating locales (this might take a while)...
  en_CA.UTF-8... done
  cs_CZ.CP1250... done
Generation complete.

Again, you can set LANG etc. but this time you should use cs_CZ.CP1250 instead. Hope this helps.

@pavero01 any update? FYI, due to inactivity, we might close this issue soon.

Sorry for longer inactivity. We were quite busy in these days.
We have an admin access on Debian server. So we tried:
Generating locales (this might take a while)...
  en_US.UTF-8... done
  cs_CZ.CP1250... done
Generation complete.

And set in etc/default/locale
LANG=cs_CZ.cp1250
We obtained these error:
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "cs_CZ"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory

We also tried to set in etc/default/locale
LANG=cs_CZ
The second case didn't generated any errors.
But Czech special chars from MSSQL DB were displayed still incorect in PHP script (default charset for PHP CP1250, the script itself was saved in CP1250 encoding).

hi @pavero01
What's the output of the following env variables? Are they cs_CZ.CP1250? Something like this?
LANG="cs_CZ.CP1250"
LANGUAGE="cs_CZ.cs"
LC_ALL="cs_CZ.CP1250"
Have you tried this?

please launch a Debian terminal and try to set its encoding as follows:
Terminal -> Set Encoding -> Central European -> WINDOWS 1250

You might not need to call the setlocale() function in a php script before you make any connection to your database server, but the above fails, you might want to give it a try.

`LANG=cs_CZ.CP1250
LANGUAGE=
LC_CTYPE="cs_CZ.CP1250"
LC_NUMERIC="cs_CZ.CP1250"
LC_TIME="cs_CZ.CP1250"
LC_COLLATE="cs_CZ.CP1250"
LC_MONETARY="cs_CZ.CP1250"
LC_MESSAGES="cs_CZ.CP1250"
LC_PAPER="cs_CZ.CP1250"
LC_NAME="cs_CZ.CP1250"
LC_ADDRESS="cs_CZ.CP1250"
LC_TELEPHONE="cs_CZ.CP1250"
LC_MEASUREMENT="cs_CZ.CP1250"
LC_IDENTIFICATION="cs_CZ.CP1250"
LC_ALL=`
Terminal isn't available on the server.

But maybe we have find another solutions:
Debian locale UTF-8
PHP defaul charset UTF-8
All PHP scripts saved with UTF-8 encoding
$connectionInfo = array("UID" => DB_USER, "PWD" => DB_PASSWORD, "Database" => DB_NAME, "CharacterSet" => "UTF-8");
Now, all varchars from DB are displayed correctly on HTML output.
If I send UTF-8 string to the database via PHP script (SQL statement INSERT/UPDATE), the string is saved correctly with CP1250 encoding.
Do you think we can use this solution? Or can we expect any problems?

Yes @pavero01 UTF-8 is the way to go. In Debian, where the default is UTF-8, if you want a different ANSI encoding using "CharacterSet" => SQLSRV_ENC_CHAR you have to do additional work, like I have mentioned above.
One thing to check is whether you have to alter your codepage settings at all with this solution. I suspect you might not need to do that now. Also, if your char and varchar columns all display correct characters, then indeed you might have found the solution.

Any update @pavero01 ? If not we will close this issue in a few days.

Yes, I think we can close it now.
We will test the solution described above.

Sounds good @pavero01! Please feel free to reopen this if necessary.


[nnstreamer/apptest] update env variables

Before adding a script to build nnstreamer plugins, set env variables for nnstreamer.
TODO :
We have to build (or download) nnstreamer plugins later.
Signed-off-by: Jaeyun Jung<EMAIL_ADDRESS>

:memo: Version: 1.20190225. Thank you for submitting PR #461. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.


integrate polkadart and get rid of JS

The wait is over, finally there seems to be a promising dart api to communicate with substrate based chains: https://github.com/rankanizer/polkadart
Except for signing extrinsics, everything we need is there: https://github.com/rankanizer/polkadart#road-map-and-current-state

Creating and signing the extrinsic is in the making: https://github.com/rankanizer/polkadart/pull/315

If I understand correctly, we can get rid of flutter_inappwebview and JS codes running in the background, right?

Yes, absolutetly! Some pieces are not yet implemented in polkadart, but soon it has all the features, we need. :)


fix: various readme typo/clarity improvements

@evanorti lmk if you'd like to review as well!

@ericHgorski looks like the Terra.js issue has been resolved in the latest release, wondering if you could undo the wallet-provider requirement?


Add TicTacToe.sol

This PR adds tic tac toe as a sample app.

@snario I think so, which reminds me I should write some docs for it.

@IIIIllllIIIIllllIIIIllllIIIIllllIIIIll rebased this to update it, and the SharedContrats PR is closed for now
@mvanderh are you still reviewing this?

@cf19drofxots Ya, my bad, reviewing


Cannon plugin: Add "common cannon spots" for Wilderness slayer

I noticed the cannon plugin does not show common cannoning spots in the Wilderness (at least I noticed that for my last two tasks of Mammoths and Black demons), however for most of mobs for Wilderness slayer are cannonable. The list of relevant monsters and areas is: https://oldschool.runescape.wiki/w/Krystilia#Tasks

What tiles are commonly used?

Hi, I'm a first timer, but I think I could tackle this since it's just adding new WorldPoints to the CannonSpots enum. There are a couple things I need to figure out first though.
First, how are optimal cannon spots for each monster determined? I was searching for a guide for all cannon spots or similar, but I haven't been able to find anything close to comprehensive, and I found nothing with the best tiles for wilderness slayer monsters. I guess I'm wondering how the current list of best tiles was created, so I can figure out which are the best tiles to add for wilderness slayer.
Second, I'm haivng a hard time figuring out which tiles each WorldPoint belongs to. I've been looking at the WorldPoint definition, but I'm still confused as to how the system works, so once I find the tiles to add I can create the corresponding WorldPoint coordinates for them.

We use the spots given to us by contributors. Generally speaking, they have a good sense for what tiles are optimal.
Use the client's developer tools

I recommend joining our Discord server and asking questions like these in our #development channel. (read the channel description for directions on how to chat there)

Clarification: I noticed there ARE some cannon spots in the wildy, namely in rev caves. I missed cannon spots for 1) black demons in Edgeville dungeon 2) Mamooths 3) scorpions. There are probably much more mobs without recommended cannon spots.

I just went through all the cannonable wilderness slayer monsters, and you're right there are some missing ones. So far, I've been been able to find optimal cannon spots for 4 monsters that have missing spots: black knights, fire giants, scorpions, and zombies. Most of the rest of them are cannonable, but are not commonly cannoned (lava dragons or bears for example). There are some that should be added that I haven't found optimal cannon spots yet such as greater demons and black demons.
One small correction is that mammoths do have a cannon spot already right next to the wilderness obelisk.


PHP example clean up.

Remove check for expired token as this is handled by JWT.

Merge is caught in request, sorry.

Is the merge okay to leave in there?

I thought the JWT library would've handled this. Didn't test it, though!


[Error] Startup fails due to bad response from 7TV API

As of a few days ago, the docker image always fails to start, displaying the following error message:
Fetching 7TV emotes...

 FATAL  Request failed with status code 410

   ~U~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~U
   ~T~B                                         ~T~B
   ~T~B   ~\~V Nuxt Fatal Error                    ~T~B
   ~T~B                                         ~T~B
   ~T~B   Request failed with status code 410   ~T~B
   ~T~B                                         ~T~B
   ~U~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~T~@~U

The API route used for 7TV (https://api.7tv.app/v2/emotes/global) gives the following response
{
  "status_code": 410,
  "status": "Gone",
  "error": "Unknown Route",
  "error_code": 70498,
  "details": {
    "message": "The API endpoint requested does not exist"
  }
}

I couldn't find anything about this version of the API online, so I'm not sure if this is due to it being deprecated, or something else. I found a v3 API, but it doesn't seem to be fully implemented at the moment.

Created a pull request #66

Hi,
Thanks for the PR, I've merged this. I don't personally use this application anymore so I'm not going to look into actually fixing the issue.
I've published a new release with this PR.

Thanks for merging. It seems the docker image was updated for the master branch, but not the next branch. I'm not sure how GitHub actions works, but it's saying it failed the build. If you get a chance to look at it I'd appreciate it, but for now I've built the image locally so no worries if you don't have the time.

next should be pushed to the repository.

Great thanks


Link to specification sections in error messages

Typically, each specification section has an identifying UUID. When a file is shown to be invalid, it would be nice to quote the section of the spec that can describe what the problem is.

Done.


passwordsafe: init at 3.99.2

Motivation for this change
Wanted application to replace keepass
other interest in this application: https://discourse.nixos.org/t/trouble-building-passwordsafe-a-meson-python-gtk3-package/4652
Things done
Added gnome-passwordsafe 3.99.2 application

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/trouble-building-passwordsafe-a-meson-python-gtk3-package/4652/17

Wow cool thanks for packaging! Works good for me so far. Building only fails locally because of unknown license licenses.gpl3Only. Changed it to licenses.gpl3 and then it compiles.

It seems you've done the opposite of https://github.com/NixOS/nixpkgs/pull/98044#discussion_r488718323 suggestion.
gobject-introspection belongs in nativeBuildInputs because we need its setup-hook, but it's not a python-modules so it shouldn't be propagated. You will however notice if gobject-introspection is only in nativeBuildInputs it won't work, and that's because the setup-hook is broken with strictDeps in the python application deriver https://github.com/NixOS/nixpkgs/issues/56943. So adding https://github.com/NixOS/nixpkgs/blob/84cf00f98031e93f389f1eb93c4a7374a33cc0a9/pkgs/tools/audio/mpdris2/default.nix#L16 will also be necessary (comment also please)

I think it is less confusing to review if I push fixes and suggested changes individually, and then squash and force-push once someone is ready to commit it, is that a good assumption? This is the most in-depth I've used github... Thanks for being so helpful. :+1:

Using this package already for a while, works really well. Thank you for your work!

Result of nixpkgs-review pr 98044 1
1 package built: gnome-passwordsafe
Works fine for me

If you could squash it into one commit I can merge :+1: I think this has been good for awhile

Squashed.


Support for specifying subnet?

Hi, will this software support launching instances into subnets (or whatever the generic equivalent would be)?

Yes. That's definitely on the cards. At the moment, work has not been started on that front, but any suggestions/contributions are welcome.

A preliminary implementation for private networks has been added at this point. Until we put together some docs, take a look at the add_network_iterface method.


Fixes #838. Added a Visible property to the View.

Can you describe the use case where this is useful? I think the code is fine, but I'm curious what drove the need for this since there's no test case included.

Can you describe the use case where this is useful? I think the code is fine, but I'm curious what drove the need for this since there's no test case included.

@tig that is very simple. You only need to set Visible property to false on any view and all his subviews aren't drawn and set to true to get his drawn again.

I get that, but I'm asking for a description of a real-life use case where an app would do this.

Oh sorry. In windows is used often. For example, if you have a window with two frame and some conditional query that only shows some data related only for one frame you can hide the other frame from showing. Sometimes is needed to hide instead of disabling. It's only an improvment feature that some users like to use.


Disable diagnostics about problem NSCoding-conforming classes for now.

Adoption so far shows that the criteria we set up here are too broad. This is particularly problematic for subclasses of NS/UIView and the like that might never be encoded at all.
rdar://problem/32306355

@swift-ci Please smoke test

Looks good to me too.


WIP: Add support for Docker containerisation.

This PR refactors the old Dockerfile to use a multi-stage build that builds govarnam, varnamcli, and govarnamd and produce a debian:bullseye-slim container image that can run the govarnamd server with a single command.
Usage instructions are in the new accompanying README-docker.md doc.

Thank you for the PR @knadh ! Highly appreciate it for taking the time to do this. Have made a new issue #10 to complete the Docker support so that the remote image is available as mentioned in the README-docker.md.


Keyboard shortcuts

[ ] Next / prev page in PDF reader (left, right, h, l)
[ ] Next / prev result (up, down, j, k. Should also work when PDF reader is open)
[x] Focus to Searchbar (/)
[x] Close PDF reader (esc)
[x] Fit to screen (f)

Todo:

[ ] Use REF instead of class for search (relevant issue)
[ ] Fix pagination bug (relevant issue)


What is the difference between Karpenter and EKS auto scaling?

Description
How can the docs be improved?
I was wondering what is the difference between Karpenter and OOTB EKS node scaling? The only difference I see is that Karpenter supports multiple cloud providers but is there anything else? Maybe Karpenter is smarter about node scaling and is more cost-efficient?

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

What's EKS OOTB Node Scaling?

here is an example, in EKS module all you need to do is define node groups  and k8s will autoscale these nodes as necessary

here is an example, in EKS module all you need to do is define node groups and k8s will autoscale these nodes as necessary

that's what is called Managed Node Groups.
it's a special version of AWS ASG (auto scaling group)
those provide static compute capacity, while karpenter is far more dynamic, cost effective, and aims at binpacking workloads

I just realized that I have https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler installed. Thats what doing autoscaling for me
I guess the question should have been whats the difference between Karpenter and https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler

I'd recommend Googling for talks or blogs on this topic. CAS uses AWS native APIs like Autoscaling Groups to manage instances. Karpenter combines responsibilities of both ASG and CAS, and does both scaling and lifecycle management.


Find Loop in a Linked List.

Hello, I think this is an important question and this should definitely be added in the Algo-Tree and I will start working on it as soon as I get assigned!! as I am a part of GSSoC'21, so I would like to implement this in c++.
Kindly assign this issue to me!
@anubhavitis @dheerajkotwani @tarun26091999 @todi-2000 @geekquad @plazzy99

Hey ,I am a part of GSSoC'21,  I would like to implement this problem in java. Kindly assign this issue to me.
@anubhavitis @dheerajkotwani @tarun26091999 @todi-2000 @geekquad @plazzy99

present at #189


Unexpected behaviour in OpenTelemetry::Common::Utilities.untraced with opentelemetry-instrumentation-mysql2

Description of the bug
Hello all,
Not sure if this bug is for opentelemetry-ruby or for the opentelemetry-ruby-contrib repository.
OpenTelemetry::Common::Utilities.untraced is not working as expected with opentelemetry-instrumentation-mysql2
Share details about your runtime
Operating system details:  Docker ruby:3.1-slim-bullseye
RUBY_ENGINE: "ruby"
RUBY_VERSION: "3.1.1"
Share a simplified reproduction if possible
We have encountered an issue, detailed in this test. Despite using the 'untraced' option with MySQL instrumentation, traces still include spans that should be omitted.
In contrast, when using net_http instrumentation , the behaviour aligns with expectations, as it correctly excludes the spans from the trace
Thanks.

Untraced is unspecified behavior and is a convenience method provided by the Ruby SDK. It is inspired by other implementations and the reason it works with the Net HTTP instrumentation is that there is an explicit check for it as opposed to other instrumentations that rely on the sampler to make a decision about when to create a span.
@fbogsany If I recall correctly checking for untraced in a sampler was problematic but I don't recall what yall decided to do to get this working with other instrumentations.
what do you recommend in this scenario?


Remove enable-lease=true as it is invalid

Signed-off-by: Yu Cao<EMAIL_ADDRESS>

/assign @zhiweiyin318
/assign @hanqiuzh

/approve
/lgtm


Sp3 changes + unittesting

Set of changes in the read SP3 triggered by trying to read a corrupted sp3 file. now each epoch is read separately to be able to read most of a corrupted file.
conversion / add of some of the preexisting test into the python unittest package framework & creation of a pipeline to run the test at the push on the repo.
More to come.

f8e6493 tested working for sp3 files with velocities, with pOnly option either True or False in read_sp3().


Add admin level

Changes login in add_admin_level to prevent overwriting existing admin_level values.
This is important for CDC where admin_level is derived from provider information.


The gray used for 'Labels' has an accessible level of contrast.

The gray used for 'LABELS' needs to be darker...

The gray is still a little too light....

Fixed


I'm missing something fundamental about views

Hi,
I've got the following issue and there is something basic I'm missing in my understanding, since I can't see how the problem is even theoretically possible. Here's what I'm doing (render code is in this order with nothing else)

View 0 = I render a tile map to a texture of a fixed size (base width,height).
View 1 = I render my sprites to the same texture (but with a different projection so the sprite world coords are translated to screen coords).
For debug, I can press a key which reads back the texture and saves it. The texture is exactly as I'd expect with the sprites on top of the map.
View 2 = I render that off-screen texture to the screen (current width, height).

The problem is if the screen size (current width, height) doesn't match the texture size (base width, height) then just the sprites are in the wrong position on the screen (as I make the screen smaller the sprites move towards the top left).
Note that the copy of the texture I am rendering is still correct. Nothing about the screen size is used anywhere except in step4 to render the final texture. How is it possible that the texture I read back is correct, but the screen render is somehow using 2 separate layers?
By mucking around I found I could get it to work if I change step2 to the following
2. View 0 = I render my sprites to the same texture (same projection. Instead I translate them when populating the vertex buffer).
i.e. render sprite to the same view as the map (view 0) and using the same projection, but I don't understand why that fixes it e.g. it's still broken if I use view1, but with the same projection as view0.
Here's some code, but really I'm looking for understanding as to what I'm missing, not asking for help debugging.
--Thanks.
`
// Render valid part of mapTexture to FBO
bgfx::setViewFrameBuffer(0, mFBO);
bx::mtxOrtho(proj, -mBaseWidth/2, mBaseWidth/2, -mBaseHeight/2, mBaseHeight/2, -1.0f, 100.0f);
bgfx::setViewTransform(0, NULL, proj);
bgfx::setViewRect(0, 0, 0, uint16_t(mBaseWidth), uint16_t(mBaseHeight) );
mapTextureQuad();  // Creates a transient VB with 4 textured vertices
bgfx::setTexture(0, mUniforms[TEX_COLOR_UNI], getMapTexture()->mHandle);
bgfx::setState(0
| BGFX_STATE_RGB_WRITE
| BGFX_STATE_ALPHA_WRITE
| BGFX_STATE_PT_TRISTRIP
);
bgfx::submit(0, mPrograms[TEX_PRG]);
// Render sprites to FBO
bgfx::TransientVertexBuffer vb = mSpriteRenderer->createVertexBuffer(mSprites, mNumSprites);
bgfx::setViewFrameBuffer(1, mFBO);
bx::mtxOrtho(proj, screenCenterWX-mBaseWidth/2, screenCenterWX+mBaseWidth/2,
screenCenterWY-mBaseHeight/2, screenCenterWY+mBaseHeight/2, -1.0f, 100.0f);
bgfx::setViewTransform(1, NULL, proj);
bgfx::setViewRect(1, 0, 0, uint16_t(mBaseWidth), uint16_t(mBaseHeight) );
bgfx::setVertexBuffer(&vb);
bgfx::setIndexBuffer(mSpriteRenderer->getIndexBuffer());
bgfx::setTexture(0, mUniforms[TEX_COLOR_UNI],  mSpriteRenderer->getTexture()->mHandle);
bgfx::setState(0
| BGFX_STATE_RGB_WRITE
| BGFX_STATE_ALPHA_WRITE
| BGFX_STATE_BLEND_NORMAL
);
bgfx::submit(1, mPrograms[SPRITE_PRG]);
// Render the FBO texture to the screen
bx::mtxOrtho(proj, -mCurWidth/2, mCurWidth/2, -mCurHeight/2, mCurHeight/2, -1.0f, 100.0f);
bgfx::setViewTransform(2, NULL, proj);
bgfx::setViewRect(2, 0, 0, uint16_t(mCurWidth), uint16_t(mCurHeight) );
screenSpaceQuad(mCurWidth, mCurHeight, true /* centered */); // Creates trans VB with 4 textured vtxs
bgfx::setTexture(0, mUniforms[TEX_COLOR_UNI],  bgfx::getTexture(mFBO));
bgfx::setState(0
| BGFX_STATE_RGB_WRITE
| BGFX_STATE_ALPHA_WRITE
| BGFX_STATE_PT_TRISTRIP
);
bgfx::submit(2, mPrograms[TEX_PRG]);
`

Can you create simple repro by using some existing example? Looking at code it looks fine, but by description it feels like your logic of maping baseWidth/Height to curWidth/Height is somehow messed up.

Ok, I'll give it a go. I'm actually off on holiday for a couple of weeks, so it probably won't be until I get back.
--Thanks.

Found it. When I started playing with bgfx months ago I really didn't understand what views were at all (I was trying to map everything an OpenGL concept). Anyway, my framework code had a seqViewSeq(1,true) it set up nvg using view1. I've never even tried using nvg and I haven't touched that code in months.
Removing that line and the strange effect went away.
Thanks.


🐞[Bug]: google singup

Wanted to fix this.

@varshith257 please assign me this issue

@varshith257 please assign me this issue

@varshith257 please assign me this issue


⚠ Bofrost.be has degraded performance

In e563268, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1929 ms

Resolved: Bofrost.be performance has improved in 1777f67.


Updates to generalized architecture

Updated the generalized architecture merging the work from the vendor we hired. There's been quite a bit of cleanup done, simplifying the architecture.
Current status:

The template works. It deploys, and the cluster comes up and working. I was able to confirm it's working with every pre-made "t-shirt size". Haven't fully tested all the possible configurations, however.
The documentation hasn't been fully updated yet. The README is up to date and has been expanded. In the docs folder, some pages need extra work - I'll be working on that in the next days and update the PR.
I haven't performed load tests yet.

Hey @rgardler thanks for the review:

Deployments are working (functionally working, by installing both WordPress and another app on the same cluster, not just "it deploys"), but haven't run load tests yet.
The docs in the docs/ folder haven't been fully updated yet. Got it on the file that needs to be auto-generated, I'll fix that.
The configuration for Varnish is very app-dependent. The scripts before were specific to Moodle (see for example: https://github.com/Azure/LAMP/blob/master/scripts/helper_functions.sh#L1068 ). When I spoke with the vendor, we felt that we could accomplish a better result for a generic LAMP app, in a much simpler way, by recommending the use of an external CDN rather than adding "our own CDN".
In the current version of the code, there were both Apache2 and Nginx configured. Apache2 was serving only HTTP requests, while Nginx was serving only HTTPS requests. We were not sure what the reason was, probably something Moodle-specific? If you prefer to just use Apache2 rather than Nginx, I'll switch back

1 - 3 sounds good
Item 4:
Apache was handling all the PHP requests, NGinx was merely a termination for HTTPS requests. It did not serve content.
The original templates only used NGinx but we heard that many customers preferred the debug experience in Apache. The Apache + NGinx solution was always a bit of a cludge.
Don't put it back but be aware of this and listen for user feedback.
LGTM.

I looked into it more.
I don't know the rationale for picking Apache2 as main webserver, but looking at the code again now I think it might have been because of the .htaccess and mod_rewrite support? On Nginx you can achieve those things by changing the website configuration in the /etc folder. However, I noticed now how the Nginx config is created on-the-go for each VMSS node. So, I think there could be two options here:

Revert back to use Apache2, so .htaccess files would work and people could easily configure URL rewrites. In this case, however, would it make sense to terminate SSL directly on Apache, rather than having another server running?
Move the Nginx configuration to the /azlamp folder for persistent storage and generate it on the controller (then replicate on each node), so users could modify them once for all.

What do you think?

See my overlapping comment which gives the reason

I've updated the documentation. Please let me know if this is good to merge (I will still make changes after that)

I have not tested this, but it LGTM. If you are confident in its stability go ahead and merge.


Moving cloudplatform(1) resource to v1beta1 version

Description of your changes
Moving 1 resource to v1beta1 version

[x] google_project_iam_custom_role

Fixes #213
I have:

[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested
Manual and Uptest:
google_project_iam_custom_role  - Link

/test-examples="examples/cloudplatform/projectiamcustomrole.yaml"

/test-examples="examples/cloudplatform/projectiamcustomrole.yaml"

/test-examples="examples/cloudplatform/projectiamcustomrole.yaml"

/test-examples="examples/cloudplatform/projectiamcustomrole.yaml"


[MATLAB] Migrate the MEX gateway function to use the C++ MATLAB Data Array (MDA) API, instead of C Matrix API

The current MEX gateway function uses the [C Matrix API|[https://www.mathworks.com/help/matlab/cc-mx-matrix-library.html?s_tid=CRUX_lftnav]]
We should update to use the latest C++ MATLAB Data Array API, to gain access to modern C++ features and memory management.
Reporter: tahsin hassan / @tahsinH
Note: This issue was originally created as ARROW-13057. Please see the migration documentation for further details.

Marking this as resolved.
The MATLAB Interface now uses mathworks/libmexclass under the hood which is based on C++ MEX and the MATLAB Data API for C++.
The MEX gateway function is now https://github.com/apache/arrow/blob/main/matlab/src/cpp/arrow/matlab/mex/gateway.cc.


Different invitation token -> invitation token is invalid

I can"t figure out the reason of the error "The invitation token provided is not valid!" when a User clicked on the linked received by email.
I could see that tokens in params and User search were different:
Started GET "/users/invitation/accept?invitation_token=a172dc623ba35066f37de602fdfff95e19cce2261871cab56ff7dabb27eed292" for <IP_ADDRESS> at 2013-11-28 11:49:17 +0100
Processing by Users::InvitationsController#edit as HTML
  Parameters: {"invitation_token"=>"a172dc623ba35066f37de602fdfff95e19cce2261871cab56ff7dabb27eed292"}

Now in the generated query the token is different:
User Load (0.4ms)  SELECT "users".* FROM "users" WHERE "users"."invitation_token" = 'cf6092da5ff99718b6400693527405a606b0672eb0c5f2ab4608c6964865f2e7' ORDER BY "users"."id" ASC LIMIT 1
Redirected to http://localhost:3000/
Filter chain halted as :resource_from_invitation_token rendered or redirected
Completed 302 Found in 7ms (ActiveRecord: 0.4ms)

The code seems to be in devise/invitations_controller:
def resource_from_invitation_token
    unless params[:invitation_token] && self.resource = resource_class.find_by_invitation_token(params[:invitation_token], true)
      set_flash_message(:alert, :invitation_token_invalid)
      redirect_to after_sign_out_path_for(resource_name)
    end
  end

I'm on Rails 4, devise 3.1.2, devise_invitable 1.3.1. Did I miss something in devise configuration? I commented the following line in devise.rb initialiser:
#config.token_authentication_key = :auth_token

Any idea? Thnx

@Javix  :100:


Specifying a unique index for upsert's conflict_target

Hi
I have the following partial unique index
execute "CREATE UNIQUE INDEX user_email_idx ON visitors(email) WHERE type = 'user';"
But I have not been able to find a way to specify this when performing the upsert. I want to do something akin to
opts = [on_conflict: on_conflict, conflict_target: "user_email_idx"]

Can you please use the mailing list for questions? Here is an example from the documentation:
MyRepo.insert(%Post{title: "this is unique"}, on_conflict: on_conflict, conflict_target: :title)

@madshargreave I am not sure it matters. All Postgres expects is a name. If you are getting an error, please let us know which one is it, but that is likely a Postgres limitation rather than Ecto.

It complains that the the 'column' doesnt exists, ie. it interprets the conflict_target value as a column name, and not as the name of the index

Can you please paste the full error? Also can you try to write the query using Postgres directly in the Postgres terminal and let us know if there is a variant that works?

Here's an example @josevalim:
Let's say I have a table with primary key email and constraint: "email_preference_email_unique_index" UNIQUE, btree (lower(email::text))
If I specify the conflict target as :email I get:
** (Postgrex.Error) ERROR 23505 (unique_violation): duplicate key value violates unique constraint "email_preference_email_unique_index"

    table: email_preference
    constraint: email_preference_email_unique_index

Key<EMAIL_ADDRESS>already exists.
    (ecto) lib/ecto/adapters/sql.ex:195: Ecto.Adapters.SQL.query!/5
    (ecto) lib/ecto/adapters/postgres.ex:86: Ecto.Adapters.Postgres.insert_all/7
    (ecto) lib/ecto/repo/schema.ex:55: Ecto.Repo.Schema.do_insert_all/7

Here's a postgres query that works:
INSERT INTO email_preference (email, should_receive_emails) VALUES<EMAIL_ADDRESS>'f') ON CONFLICT (lower(email)) DO UPDATE SET should_receive_emails='f';

If i try setting conflict_target: "lower(email)" in my insert_all call, I get the following error:
** (Postgrex.Error) ERROR 42703 (undefined_column): column "lower(email)" does not exist
    (ecto) lib/ecto/adapters/sql.ex:195: Ecto.Adapters.SQL.query!/5
    (ecto) lib/ecto/adapters/postgres.ex:86: Ecto.Adapters.Postgres.insert_all/7
    (ecto) lib/ecto/repo/schema.ex:55: Ecto.Repo.Schema.do_insert_all/7

Not sure why it wouldn't work to be honest

Dug deeper and I think its because we intersperse the quote names here: https://github.com/elixir-ecto/ecto/blob/v2.1.4/lib/ecto/adapters/postgres/connection.ex#L197. The resulting binary looks something like (\"lower(email)\") which I think might be tripping up postgres since it thinks thats a column

I'm not sure if this issue has been resolved already, but I am also trying to use Repo.insert with a unique_index :conflict_target. I tried Repo.insert(on_conflict: :replace_all, conflict_target: :unique_index_name) and found that it was being checked as a table name as well.
Per @josevalim I tried writing the query using Postgres directly and found the same error:
dev=# INSERT INTO "future_event_people" ("checked_in") VALUES (true) ON CONFLICT ("unique_future_person") DO UPDATE SET "checked_in" = true RETURNING "id";
ERROR:  column "unique_future_person" does not exist
LINE 1: ..._people" ("checked_in") VALUES (true) ON CONFLICT ("unique_f...

Here is the index listed:
Indexes:
    "unique_future_person" UNIQUE, btree (person_id, future_event_id)

Found this postgres post and tried out the proposed solution:
INSERT INTO "future_event_people" ("checked_in") VALUES (true) ON CONFLICT (person_id, future_event_id) DO UPDATE SET "checked_in" = true RETURNING "id";
This does execute for me, but I don't know if it is checking the correct unique index.

Just hit this issue as well when trying to use conflict_target: "(person_id, event_id)". The query debug statement prints out this: ON CONFLICT ("person_id, future_event_id")

@adenisonafifi have you tried passing a list to conflict_target? conflict_target: [:person_id, :event_id]?

And yes, if we solve #2081 this would then be possible too. Good catch.

conflict_target: [:person_id, :event_id] properly resolved to ON CONFLICT ("person_id","event_id"). Thank you, I should have tried that.


Can't copy correctly when a folder or a file that contains Japanese dot (。) dragged to PowerShell or the path is copied from Windows Explorer to PowerShell

PowerShell can't copy correctly when a folder or a file that contains a Japanese dot or full stop (。) dragged or the path copied from Windows Explorer. I've tried the same folder with Windows PowerShell but it seems it only affects PowerShell.
I've tried using Get-ChildItem to check whether PowerShell can detect the folder or not, and it displays the folder correctly
PS D:\> Get-ChildItem

    Directory: D:\

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d----          26/02/2021    16:32                Data
d----          05/01/2021    19:13                Games
d----          29/01/2021     6:39                Master
d----          23/02/2021    22:32                Multimedia
d----          07/11/2020    12:10                SUPERVISI MUTU LPMP
d----          03/03/2021    15:03                Tools
d----          05/03/2021    19:16                君の名は。 (Deluxe Edition)
-a---          17/08/2020    22:22         193632 JADWAL PELAJARAN DAN LAPORAN MATERI AJAR BDR SMP 5.docx
-a---          30/12/2019     8:55         403928 TIME TABLE GANIJIL TATAPMUKA.roz

when I tried to change the directory to 君の名は。 (Deluxe Edition) via dragging the folder or copying the folder path from Windows Explorer, PowerShell can't do it.
PS D:\> Set-Location "D:\君の名は (Deluxe Edition)"
Set-Location: Cannot find path 'D:\君の名は (Deluxe Edition)' because it does not exist.

notice that PowerShell didn't display (。) at all.
Then I typed (。) manually or copied (。) separately to PowerShell and it worked
PS D:\> Set-Location "D:\君の名は (Deluxe Edition)"
Set-Location: Cannot find path 'D:\君の名は (Deluxe Edition)' because it does not exist.
PS D:\> Set-Location "D:\君の名は。 (Deluxe Edition)"
PS D:\君の名は。 (Deluxe Edition)>

Steps to reproduce
Name a folder with Japanese full stop
a。

then drag the folder or copy the folder path from Windows Explorer or to PowerShell then run Set-Location command to go to the folder
Expected behavior
PowerShell should read the folder path correctly
PS D:\> Set-Location "D:\君の名は。 (Deluxe Edition)"
PS D:\君の名は。 (Deluxe Edition)>

Actual behavior
PoweShell doesn't display (。) at all when the folder is dragged or when the directory path is copied or when the folder name is copied
PS D:\> Set-Location "D:\君の名は。 (Deluxe Edition)"

becomes
PS D:\> Set-Location "D:\君の名は (Deluxe Edition)"

Environment data
Name                           Value
----                           -----
PSVersion                      7.1.2
PSEdition                      Core
GitCommitId                    7.1.2
OS                             Microsoft Windows 10.0.19042
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Hmm weird, I've tried this again directly on Powershell console, and it worked. Apparently, it's a Windows Terminal problem, not Powershell. Thank you for answering.


What is PFM file?

I was very impressed with your paper and results.
I am studying your paper.
The result of depth is a .PFM file.
What is a PFM file?
Is it different from Depth-Image?
Can't you just open PFM like depth-image and see?

这个pfm文件就是深度图


why the chemistry scopeV2.0.1 have lower Valid Reads of just 22% than other chemistries like scopeV2.1.1 or scopeV2.2.1?

Different chemistry corresponds to different beads pattern. See https://github.com/singleron-RD/CeleScope/blob/master/docs/chemistry.md for more details.
It is recommended to use --chemistry auto to auto-detect the chemistry.

Different chemistry corresponds to different beads pattern. See https://github.com/singleron-RD/CeleScope/blob/master/docs/chemistry.md for more details. It is recommended to use --chemistry auto to auto-detect the chemistry.
Yeah, at first time, I didn't specify the chemistry of each library and all of them were auto-detected. But all of the libraries of scopeV2.0.1 can only map to 1 gene per cell. It's so odd! I wanna know if there are some parameters help me to solve this problem?

How many samples do you have and what are their auto-detected chemistry?

There are 24 samples and all of them are auto-detected. Three of them are  scopeV2.0.1, One is scopeV2.1.1. The rest are scopeV2.2.1.

发件人: Tony Zhou @.>
发送时间: Tuesday, March 8, 2022 4:03:30 PM
收件人: singleron-RD/CeleScope @.>
抄送: MugenQin @.>; Author @.>
主题: Re: [singleron-RD/CeleScope] why the chemistry scopeV2.0.1 have lower Valid Reads of just 22% than other chemistries like scopeV2.1.1 or scopeV2.2.1? (Issue #108)
How many samples do you have and what are their auto-detected chemistry?
―
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsingleron-RD%2FCeleScope%2Fissues%2F108%23issuecomment-1061507603&data=04|01||a47b815703114be549fb08da00da2317|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637823234138624247|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=TXAClJTxdFwSOxhD%2FXvbKAHstL%2Fwx%2BwajeQTji8erk0%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAUXAXTFM2YAPKJZ2JXMKNQLU64CVFANCNFSM5QFN5WGQ&data=04|01||a47b815703114be549fb08da00da2317|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637823234138624247|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=8DM%2FILUOMwNv9in1K4M%2F%2Fb8JTnwRBUK8s91axRDc%2BDk%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01||a47b815703114be549fb08da00da2317|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637823234138624247|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=wBbvQCyh%2B%2F%2B3hNxgtdv7Iu3n2TWQoKZ9q%2FleiRUSLtE%3D&reserved=0 or Androidhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01||a47b815703114be549fb08da00da2317|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637823234138780468|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=FxCKr5Uhal7d5p15YysYDxSU%2BIdqz7FD5XQTbpfCk9w%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>

It's weird. If the samples are from the same batch, they should have the same chemistry. Also scopeV2.0.1 and scopeV2.1.1 are old versions that are no longer in use.
Can you pick a sample detected as scopeV2.0.1 and send the first 10000 reads (first 40000 lines) of R1 reads here? (github comments can have attachments)

R1.txt
Can you see this one?

After analysis, I found that none of the 10,000 reads fit any chemistry.
The reason why some reads are detected as scopeV2.0.1 is because the automatic detection method of chemistry has been changed in the celescope v1.7.* version. The conditions for detecting scopeV2.0.1 are too loose, and only the position of polyT is required to match. Among the 10,000 reads, the polyT positions of some of the reads coincided.
The 10,000 reads above fit a pattern: 21bp random oligo (probably some kind of barcode) + polyT. This doesn't match any chemistry from Singleron. A possible explanation is that the three fastqs detected as scopeV2.0.1 are from another platform (nor 10X as far as I know: 10X is 16bp barcode + 10 or 12 bp UMI).

I am also curious about the 22% valid reads for samples detected as scopeV2.0.1. In theory, the valid reads of these three samples should be close to 0. Can you send an HTML report to<EMAIL_ADDRESS>? Thanks

Get it! Thank you so much! I will check these libraries. I think some other libraries which can not get the reports may have the same reason.

I am also curious about the 22% valid reads for samples detected as scopeV2.0.1. In theory, the valid reads of these three samples should be close to 0. Can you send an HTML report to<EMAIL_ADDRESS>? Thanks

After checking the HTML report, 22 is the number of vaild reads, not the fraction of valid reads. The fraction of valid reads is close to 0%.

I am also curious about the 22% valid reads for samples detected as scopeV2.0.1. In theory, the valid reads of these three samples should be close to 0. Can you send an HTML report to<EMAIL_ADDRESS>? Thanks

After checking the HTML report, 22 is the number of vaild reads, not the fraction of valid reads. The fraction of valid reads is close to 0%.

Thanks! I got that wrong.

I am also curious about the 22% valid reads for samples detected as scopeV2.0.1. In theory, the valid reads of these three samples should be close to 0. Can you send an HTML report to<EMAIL_ADDRESS>? Thanks

After checking the HTML report, 22 is the number of vaild reads, not the fraction of valid reads. The fraction of valid reads is close to 0%.

Thanks! I got that wrong.


Invalid config - combination not allowed

Running the scraper (amader_somoy, banglanews24) gives ValueError: combination of (end_page, start_page, __class__) not allowed' This happens because in corpus-builder/corpus_builder/templates/spider.pyfile classgets appended touser_configuration. This problem can be solved by deleting this key using del args['class']`

#12

@j-a-h-i-r Thank you so much for your contribution. (y)


[Playground] two slash @filename not work in typescript playground

Bug Report

🔎 Search Terms

playground
two slash
filename

🕗 Version & Regression Information

This is a crash
This changed between versions ______ and _______
This is the behavior in every version I tried, and I reviewed the FAQ for entries about _________
I was unable to test this on prior versions because _______

⏯ Playground Link
Playground link with relevant code
💻 Code
Code from https://github.com/microsoft/TypeScript-Website/tree/v2/packages/ts-twoslasher#import_filests

// @filename: file-with-export.ts
export const helloWorld = "Example string"

// @filename: index.ts
import { helloWorld } from "./file-with-export"
console.log(helloWorld)

🙁 Actual behavior

TS2307: Cannot find module './file-with-export' or its corresponding type declarations.
🙂 Expected behavior

It works.

Multiple files aren’t supported on the playground.

@andrewbranch You should consider updating the help docs on ts-playground then, it has an extra entry regarding multi-file playgrounds: https://www.typescriptlang.org/play#handbook-15

please consider reopening this. this used to work, otherwise it wouldn't be documented. it also behaves very weird if you use it by showing a default "/input.tsx":

this used to work

We don't intend to support this in the playground. You can use the Bug Workbench to do multi-file repros.

We don't intend to support this in the playground. You can use the Bug Workbench to do multi-file repros.

@RyanCavanaugh Thanks for mentioning that. I wasn't aware of the Bug Workbench before today.
I'm actually still not sure how to discover it: there are no search results for "workbench" in the docs:

@jsejcksn I searched for multi-file TS Playground and found your answer. I also didn't know about Bug Workbench before. Thanks for your sharing, it's very helpful for my debugging with the latest option verbatimModuleSyntax.


Tick event for 'exiting' a recipe

Current approach is that "finishing" a recipe is the same as loading a new recipe into a project that already has a recipe open. When users are done with the entire chain of recipes, they would hit the "Finish" button which would be a different tick that represents being done with all the recipes in that progression path.

Awesome, thanks so much for looking into this Shannon!  What happens if they just click Ok?  So they finish that chapter, but don't move on to the next recipe?  Will they get an exit event?

Also, probably a separate issue, but when they do click Ok, I feel like they should automatically "Finish" the tutorial and be taken to the editor.  Instead of staying in the last step with a blank instruction pane.  Eventually, we should think about how to allow a user to take their project and jump back into the recipe flow later... maybe part of the Skills Map brainstorm...?

no, if they click "Ok" they are still in the tutorial (could theoretically be going back to look at previous steps, or messing with their existing code, so they won't get an exit even. if they click "Ok" then afterwards click "Finish", they'll get a tutorial.complete event.
and yeah, definitely agreed! i remember david came up with a nicer design for the final recipe modal ("Ok" was "Finish", and there were buttons under each GIF, i think?), it would be great to have custom UI for it instead of just reusing our markdown rendering, which is a little limiting.

@soniakandah - another little project for you to think about in your spare time...
@shakao - if this is true, I should see a tutorial.complete event for /recipes/shark-splash/01-character, but that's not the case

@Jaqster ah, looks like there was a bug with the tutorial.complete event--i'm not seeing any completion events for chase the pizza or galga either. i added the tutorial name to those ticks as well!

Oh dear.  How long has this bug been messing things up?  Was it not firing at all?  Or just not associated with a tutorial?  Wondering if I need to throw out our Arcade completion rates entirely...?  Does it affect other targets?

the event was firing at the right time, so the existing data is still correct! it just wasn't associated with a specific tutorial. there might be some query with session id and the tutorial.start event ("this user started galga and sometime later in the session a tutorial.complete event was fired") we could use to estimate that information as well


Option to not inject .css in index.html during build

Thanks for a great vite plugin. :clap:
When using cesium.js in a lazy loaded JavaScript bundle, cesium({ rebuildCesium: true }) works well since https://github.com/nshen/vite-plugin-cesium/blob/3eefe025fbe186e7051fee88b30418d948dec43a/src/index.ts#L110-L117 ensures the <script...> tag is not included in the index.html, and therefore also cesium.js (which is quite large in size) is not loaded when visiting the main entrypoint of the application.
I think it would be beneficial to also have the plugin option to not inject the stylesheet link, i.e. https://github.com/nshen/vite-plugin-cesium/blob/3eefe025fbe186e7051fee88b30418d948dec43a/src/index.ts#L100-L108
Use case arguments:

When lazy loading cesium.js, it would be nice to also lazy load the associated cesium CSS file, which is quite large (30 kB) and unhashed (i.e. can't be cached safely). For projects who want to lazy load the .css this is easily accomplished by importing the css as wellimport "cesium/Build/Cesium/Widgets/widgets.css";

in the source code where import * as Cesium from "cesium"; is already imported (maybe adding this assoicated css import can even be done automatically by the vite plugin when rebuildCesium: true, before vite/rollup do their bundling?). The required cesium .css then goes through all the vite machinery for minimizing/lazy-chunking it...
...which then also puts it into a hashed file, which ensures the cesium css can also be strongly cached, instead of having to load it every time (without hash you would have problems when updating cesium later).

Current "workaround" is to remove the injected <link rel="stylesheet" href="/cesium/Widgets/widgets.css"> line in the generated index.html, and instead ensure the .css is added to the vite generated .css bundle by adding import "cesium/Build/Cesium/Widgets/widgets.css";

Hi @anderskiaer thanks, I didn't follow cesium for some time, would you mind create a PR?


Setup Reviewers

The project reviews need to be updated.
Acceptance Criteria

Reviewers:

Laura
Pete
Ellen
John

Added Laura, Pete, Ellen, and John as reviewers.


Update Use Case Documentation

The Orchestration use case documentation has been made redundant and was removed
The Threat Response documentation has been updated to reflect the new URLs for SecureX

Thank you @maugertg  and @ceilingduster


[Bug]: {{selected_code}}, {{active_editor_file_url}} and similar template arguments don't work as described

Before Reporting

[X] I have checked FAQ, and there is no solution to my issue
[X] I have searched the existing issues, and there is no existing issue for my issue

What happened?
I'm trying to use the {{selected_code}} and {{active_editor_file_url}} template arguments, but they are not being replaced by the actual values as expected when I run commands in the chat window.
Perhaps I'm trying this in an unexpected way?
How to reproduce the bug.
Open plugin chat window, type "/run echo {{selected_code}}"
Expected output:

echo of whatever is currently highlighted in my Xcode editor window

Actual output:
{{selected code}}
Relevant log output
N/A

macOS version
13.4.1
Xcode version
14.1
Copilot for Xcode version
0.20.0(200)
Node version
16.19.0

This works if you set it up as a custom command.

It currently only works for custom commands. Do you think it should be supported for sending messages as well?

Well perhaps my issue is strictly with custom commands then 😅
I started by trying to use this from a custom command, but I couldn't get that to actually be run. I created a similar test command as what you showed @KieranConlon, closed and re-opened Xcode, but then couldn't figure out how to actually execute it. What exactly did you do in the chat window to execute that command? :)

It's available from the Xcode > Editor > Copilot menu and the context menu of the circular widget.

Ah nice, got it working, thank you!
I'll close this issue out, I'd suggest making it more clear how to use custom commands, since the steps shared here I was definitely not able to intuit from the material available thus far 👍


Add bilinear resample method & supporting TypeScript types (plus bugfixes)

Overview
For accurately displaying elevation model rasters (DEM), we'd prefer bilinear resampling over the current nearest neighbor implementation. This PR adds the option to use bilinear resampling with the resampleMethod: 'bilinear' constructor option.
To help own understanding of what was going on, I removed a lot of the TypeScript ambiguity to the resample and reprojection areas of the code. I removed (most) casts to any, mostly with geotiff.js's TypedArray and variations. I also fixed a few bugs while I was investigating the codebase.
Primary changes

New resampleBilinear method, based on the geotiff.js implementation
Added resampleMethod to TIFFImageryProviderOptions
Improved TypeScript types & annotations
Uses geotiff.js's copyNewSize utility to maintain TypedArray type throughout transformations

Bugfixes

Swapped sourceWidth & targetWidth in reprojection()

My colleague pointed out they seemed incorrectly flipped, but I noticed the values are typically the same anyway, so I'm not sure the significance of this bug in the implementation.

stringColorToRgba() used green for blue, potentially missing a whole band of data.
No more any (in the code I was looking at)
Fixed typo of ResampleDataOptions

@TheMrCam What a great update! Thank you for your contribution!
I've reviewed your code, and it all looks correct, including the fixes for a few bugs.
The addition of linear interpolation is fantastic!

Dear @TheMrCam
I've added a buffer parameter for the bilinear interpolation resampling method, which can ensure continuous changes at the tile seams. However, the buffer parameter has not yet been adjusted in the reprojection method, and the rendering performance doesn't seem to have changed much. I'll need to address this problem when I have some time.
Additionally, I've moved the resampleMethod parameter into the renderOptions.


react native fast refresh not working

When I run fastLinkJS, I see the refreshing banner appear, but no change is picked up in the UI. I am using slinky 0.7.0 along with react native 0.66.4.

Thanks for the report! I wonder if React Native moving to the native fast refresh support has broken something. We only support hot reloading for class components using the old method right now.

This may be fixed by #588, could you give it a try with the latest preview build?

Closing for now, feel free to bump this if things are still broken!


Improve Powertools Logger usage

:question: General Issue
Hi, I am one of the maintainer of powertools-lambda-typescript projects. I have stumbled upon the project and noticed that you use powertools logger and metrics extensively, thank a lot 🙏. I hope powertools improves your observability and is of great help in navigating through logs and metrics.
I have noticed that there are some cases where we could further improve powertools usage in the project and hope this can be valuable for you. These are really small issues, but as a sum could overall be improvement for the future.
Remove unnecessary event logging: you have configured POWERTOOLS_LOGGER_LOG_EVENT as true in your commons package. This means that powertools will log lambda invocation events automatically. There are several cases where we log lambda events additionally, i.e. here. We could remove this lines and simplify our code further
Remove JSON.stringify() in logger: Powertools Logger has many features and one of them is to accept objects. Instead of calling JSON.stringify() you can pass entire object:
// before
logger.info('requestJson:', JSON.stringify(event, undefined, 2));
// after
logger.info('request arrived:` , {event});

Inject Lambda context: Lambda context contains function name, arn, cold start, function size, memory and request, which is helpful when troubleshooting issues and filtering logs. With additional method logger.addContext(context) we could add this information for free into the log structure of our Lambda functions.
Add tracer: I see that you use a lot of SDK clients which we could easily add to x-ray using powertools tracer. This would improve visibility into the processing requests and highlight observability capabilities into a complex system.
I am happy to work on these topics and contribute these changes in a dedicated PR, if you think this is helpful for the project. Let me know what you think.

@am29d Alex, thanks for the helpful information. The team is working on other stuff now, and we must wait a while to prioritize it. Any PR is appreciated. 🙏🏼

@zxkane completely understand, I will be more than happy to contribute.


Dev

Coverage decreased (-5.1%) to 86.57% when pulling 8e224075252f81182390989d5071b5df551faec7 on dev into 0d89d6b2de10ab5c660855de67e42d117751caba on master.


Re-style Footer

What does this PR do?

Re-style Footer

Description of Task to be completed?

Re-style Footer & add newsletter functionality

How should this be manually tested?

Check the footer of the application

What are the relevant Trello Card stories?  Trello Card Item

https://trello.com/c/BIReYJTc/64-possibly-remove-email-from-footer

Pull Request Type (check one)

[x] Feature
[ ] Bug Fixes
[x] Chore

Developer Checklist

[x] New code has been scanned for ESlint issues
[x] I have tested my code locally
[x] I made sure that there are no other pull requests that solve for this issue
[x] My code follows the same structure within the guidelines

Screenshots (if appropriate)

@Easybuoy Can you remove the settings link as well?

@Easybuoy Can you remove the settings link as well?

Done @kouamendri

Just circling back on this, so @Bedrock02 & @DanFerrer can approve.

Just circling back on this, so @Bedrock02 & @DanFerrer can approve.

Anyone can approve if you think it's good to go, we just need at least 2 code reviews on every PR

could you resolve the conflicts?


Omi Server compatibility fixes

Necessary to get OMI and this gem talking. More info on https://github.com/Microsoft/omi/pull/577#issuecomment-424214040
Still a work in progress as it should require some additional validation.

Finished on <IP_ADDRESS>:
  STDOUT:

    Name                           Value
    ----                           -----
    PSVersion                      6.1.0
    PSEdition                      Core
    GitCommitId                    6.1.0
    OS                             Linux 4.15.0-34-generic #37-Ubuntu SMP Mon Aug 27 15:21:48 UTC 2018
    Platform                       Unix
    PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
    PSRemotingProtocolVersion      2.3
    SerializationVersion           <IP_ADDRESS>
    WSManStackVersion              3.0

Successful on 1 node: winrm://<IP_ADDRESS>
Ran on 1 node in 1.50 seconds

@mwrock any chance you could have a look?
Thanks!

Thanks for the review / merge @mwrock! No worries on the review time - we're all busy!
Excited to see this has already shown up in gem form too!


Persisting data across intents

I'm working on an application that needs data to be persistent across intents (i.e., data calculated in one intent and then that data used in the next intent). How would I go about doing this? (I'm using API.ai).

The client library provides a convenient storage mechanism to store data within a session. Use "app.data" to store JSON values that can then be retrieved by the intent handlers of subsequent parts of the conversation.


Update Mixer Architectural Overview Docs

I've update the main Mixer concept doc. @mandarjog was going to update the Mixer Config doc.
When that is complete, we will need to decide what/how to update the Mixer Aspect Config doc.
Assigning to @mandarjog for the Mixer Config doc update.

This https://github.com/istio/istio.github.io/pull/527 is out for review.

This is all happy.


Bug: Fetch Adapter support for Request objects is incomplete

As of https://github.com/Netflix/pollyjs/pull/220, the Fetch Adapter allows you pass in a Request object as the only argument. However, it will simply extract the URL from the Request, and not use any of the other parameters.
This means if I have code being tested that uses Request objects to POST with a bunch of headers, like this:
const reqOpts = {
    body: xml,
    method: "POST",
    headers: {
      Accept: "application/xml",
      "Content-Type": "application/xml",
      "X-custom-header": "secret value"
    }
  };
req = new Request(url, reqOpts);
fetch(req);

Polly will do a GET to url, with a minimal set of headers.
I suspect this could be mostly fixed by modifying this code:
https://github.com/Netflix/pollyjs/blob/master/packages/%40pollyjs/adapter-fetch/src/index.js#L41
To be:
      // Support Request object
      if (typeof url === 'object' && 'url' in url) {
        options = url;
        url = url.url;
      }

I'm testing this solution for us, I'll let you know how it goes.

This doesn't seem to be enough. It's maintaining the method now, but not the headers. I'll keep working on that.

I figured out what was going on with the headers, and got that sorted out, but there's still something very fishy going on.
If I set Polly to be in passthrough mode, and change our app code to call fetch(url, options) instead of fetch(Request(url, options)), it works. But using the developer tools, I grabbed the HAR of this fetch for each run, and they are identical (other than the responses).

Yeah looks like we're not doing enough to support the Request object in it's entirety.

I believe in this case we are using a session cookie for authentication, and I see we call fetch() with credentials: "include", which I believe is how that is supposed to be passed through. Perhaps that's where this is breaking down currently.

OK, I've sort of found where this is breaking down. Sort of, because only in the compiled version, where it uses objectSpread() like this:
return this.native.apply(global$1, [pollyRequest.url, objectSpread({}, options, {
    method: pollyRequest.method,
    headers: pollyRequest.headers,
    body: pollyRequest.body
})]);

When options is a Request object, this doesn't work, it loses things like credentials: "include". I'll try serializing the Request object before passing it in as options.

Turning the Request object into an anonymous object mostly worked, but it doesn't account for the body, which isn't a property, but something that must be read asynchronously. Still trying to figure out the best way to do that here.

OK, so I've rewritten the fetch method to turn everything into a Request, and do the request handling in the body of the returned promise. This is within the compiled version, because that's the only one I'm able to modify and see my changes reflected, but I'll get someone here who does JS to help me put together a nicer version for the source.
I've tested this a bit, and it seems to be performing well, but I'm a little concerned about using .text() for reading the body of the request, given that it provides 4 other methods.
context.fetch = function(request){
  // If two arguments were passed in, we create a request object, treating the first as the URL, second as options
  if (arguments.length > 1 && arguments[1] !== undefined){
    request = new Request(request, arguments[1]);
  }
  // If one argument is passed in, and it's a string, we treat it as the URL and create a request object
  else if (_typeof_1(request) === 'string'){
    request = new Request(request);
  }
  // Otherwise the single argument is already the request we are looking for

  // Extract all the request properties into an options object:
  var options = {}
  for (var property in request){
    options[property] = request[property];
  }

  // Turn the headers from an iterator into an object
  var headers = serializeHeaders(options.headers);

  var promise = new promise$1(function (resolve, reject) {
    var respond = function respond(_ref) {
      var response = _ref.response,
          error = _ref.error;
      if (error) {
        reject(error);
      } else {
        resolve(response);
      }
    };

    request.text().then(function(myText){
      _this.handleRequest({
        url: request.url,
        method: request.method,
        headers: serializeHeaders(new context.Headers(headers)),
        body: myText.length > 0 ? myText : undefined,
        requestArguments: {
          options: options,
          respond: respond
        }
      });
    });
  });
  return promise;
};

I’ve played around with the idea of defaulting to using the Request object in order to support this but ran into some regressions with the generated for the Polly request ID changing. I do think this would be the best way to do this though.
@jasonmit is working on some regression tests in order to catch these sort of issues. I’ll be back from vacation next week and look into this more.

I'll be honest, not terribly familiar with the Request API but the support between the options might mean it's not the best internal default.
https://developer.mozilla.org/en-US/docs/Web/API/Request#Browser_compatibility

@jasonmit is working on some regression tests in order to catch these sort of issues. I’ll be back from vacation next week and look into this more.

Good to know this is related, I'll try and land that soon.

Fix released with v2.6.3.

Thanks!

Looks like it didn't quite work, I'm getting this:
index.esm.js:38 Uncaught TypeError: Failed to construct 'Request': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
    at new ExtendedRequest (pollyjs-adapter-fetch.js:6502)
    at index.esm.js:22
    at fetchJSON (fetch.js:9)
    at getStatus (Status.js:10)
    at fetchAndCache (useFetch.js:35)
    at useFetch.js:145
    at commitHookEffectList (react-dom.development.js:17079)
    at commitPassiveHookEffects (react-dom.development.js:17103)
    at HTMLUnknownElement.callCallback (react-dom.development.js:149)
    at HTMLUnknownElement.b (index.esm.js:4)

The line in question in the compiled version is:
_this2 = possibleConstructorReturn(this, getPrototypeOf$2(ExtendedRequest).call(this, url, options));

Which I believe corresponds to<EMAIL_ADDRESS>:
super(url, options);

Can you provide a reproduction? Also, are you using the fetch adapter in the browser or in node?

I'm doing it in the browser. I'll see if I can provide a simple reproduction.

@offirgolan @fudomunro here is a simple reproduction of the issue:
https://codesandbox.io/s/late-surf-xil0t

Actually, lets open this up as a new bug since it's not the same as originally reported.

FYI @offirgolan fixed this in 3.0.1

Excellent, I'll have to try this out again when I get back to work. Thanks everyone!


Unable to convert setState(function) to hooks

I'm unable to convert to class to functions when I use setState with a function argument.
For example:
this.setState(prevState => ({
      profile: {
        ...prevState.profile,
        roles: [
          ...prevState.profile.roles,
          {
            title: "",
            link: "",
          }
        ]
      }
    }));
  };

The expected output should be:
setProfile({ ...profile, roles:[...profile.roles, {title: "", link: "" }]})

But instead I get an error: ""Cannot read property 'forEach' of undefined".

@aeciorc Thanks for the report! Ill have a look ASAP, unless you wanna give it a go yourself :) Thanks

Sure, I'll have a try at it

@aeciorc just a quick update. I've been researching the problem. Glean currently doesnt support passing a function to a state hook. useState does support passing a function to its setter, but the problem here is that the object u are passing to this.setState can potentially contain multiple state updates and thus need to be inspected. It can be pretty complex since you can have multipe variations of that. Ill try to come up with a simple solution at first that will at least cover your case

Awesome, @borislit, thanks!

@aeciorc just a short update. IM currently on vacation. Ill have a fix in a week or so when im back

Sounds good @borislit, thanks. Meantime I've created a small PR for another small issue I was having: https://github.com/wix/vscode-glean/pull/85

@aeciorc short update. I've done plenty of progress on the solution. I think ill have it ready for review next week.  I have managed to handle most cases (turns out there are several). Currently, the biggest issue is the following use case:
this.setState(prev =>({     foo: prev.foo,      bar: prev.bar }))
The issue here is that I'll need to rewrite references to prev.foo and prev.bar.

@borislit I see, it can get pretty complicated. Another thing I've noticed is that after the refactoring, we may end up with reference errors if a variable we're passing to setState isn't available on the outer scope. E.g:
fetchData = () => {
    fetch("/").then(r => {
      this.setState({ m: r});
    });
  };

would cause the result to have
const [m, setM] = useState(r);

I was thinking about working on a feature that initializes the state with null when that happens. What do you think about it?

@aeciorc Boom! It should fully support using functions to update the state now https://github.com/wix/vscode-glean/pull/86
Im releasing a new version now, that will include your PR and this. Check it out. Tell me what you think

Ok i see that there are still some issues. Ill push an additional fix

ahaha shoot. Hmu if I there's anything I can do to help

@aeciorc The new version should be up! Check it out (4.18.0)

Hey @borislit , I tried it out, the functional setState conversion is working great!  Noticed that this release added one bug though:
If a state hasn't been initialized (either in the constructor or class property), the useState declaration won't be generated for it.
E.g:
class Foo extends React.Component {
  lol = () => {
    this.setState({ done: true });
  };
  render() {}
}

becomes
const Foo = props => {
  const lol = useCallback(() => {
    setDone(true);
  });
};

Unrelated to the release, I also noticed a case for which converting to hooks might be very hard:

  handleCheckbox = type => {
  //type can be "checkboxA", "checkboxB", etc
    this.setState({ [type]: true });
  };

Since the value of "type" isn't know til runtime, the state would have to be an object: setBla({...bla,[type]:true}). But if somewhere else in the original code there was a this.setState for a specific checkbox type, like this.setState({checkboxA: true}), we'd end up two state hooks for the same class state lol

Hey @aeciorc ! So, I've pushed the fix for the first issue. Let me know.
In terms of the second issue - I dont think this should be solved. Its sort of an anti pattern and I think there is no way for it to be expressed with hooks.  I mean you can, but in a totally hacky, terrible way.

I've tried it with a few test cases, seems to be working perfectly @borislit!
Yes, can't disagree about it being a bad pattern, although it's useful when working with forms because you can give each input a name corresponding to its state and have a single handler onChange = event => this.setState({[event.target.name]:event.target.value})
Anyways, thanks for the release, it's definitely gonna help me save time in the future!


TypeError: can only concatenate str (not "int") to str

Describe the issue
A clear and concise description of what the issue is.
elyra 3.7.0

elyra/util/gitlab.py", line 113, in get_git_url
if parsed_url.port:
port = ':' + parsed_url.port
should be:
if parsed_url.port:
port = ':' + str(parsed_url.port)
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Screenshots or log output
If applicable, add screenshots or log output to help explain your problem.
Log Output

Paste the log output here.

Expected behavior
A clear and concise description of what you expected to happen.
Deployment information
Describe what you've deployed and how:

Elyra version: [e.g. 1.5.3]
Installation source: [e.g. PyPI, conda, from source, official container image, custom container image]
Deployment type: [e.g. local installation, Docker, Kubernetes, Kubeflow [notebook server] , Open Data Hub]
Operating system: [e.g. macos, linux]

this patch not merge into the latest version 3.7.0?    https://github.com/elyra-ai/elyra/pull/1312


Please add license

Thanks for this great tutorial - I'd love to use it as a starting point for my own app.  Would you consider adding a license?
http://opensource.stackexchange.com/q/1720/775

Absolutely! Just added. Appreciate you reaching out, thanks.


rafs: only append more chunks to last bio when amplify io

Amplified IO chunks should be appended to the last Desc rather
than creating a new desc comprising several chunks.
Other wise it will consume IO buffers provided by upper layer.
Moreover, two descs can't be merged before issuing to backend storage.
Signed-off-by: Changwei Ge<EMAIL_ADDRESS>

A significant read performance improvement has been observed.
6,9c6,9
<             runtime:            9169
<             iops:               340.27702
<             bw(KB/S):           1361
<             latency/ms:         min:0.011646, max: 150417.624, mean: 8.859469373077
---
>             runtime:            3678
>             iops:               776.508972
>             bw(KB/S):           3106
>             latency/ms:         min:0.011943, max: 268322.442, mean: 3.9111191943279997
33,36c33,36
<             runtime:            8933
<             iops:               349.266764
<             bw(KB/S):           1397
<             latency/ms:         min:0.012335, max: 153843.736, mean: 8.598720666026
---
>             runtime:            2678
>             iops:               1066.467513
>             bw(KB/S):           4265
>             latency/ms:         min:0.012388, max: 198249.429, mean: 2.584388967437

Does v6 have the same issue or not?

No. In fact v6 has no read amplification from Rafs layer inherently. For v6, we'd better amplify backend IO from storage layer.

@bergwolf @xujihui1985 Have time to review this PR?

I'll take a look later today.


Deye 4MPPT - missing values - 24.09.2x

Describe the bug
Version 24.09.08 - with "deye_4mppt.yaml" - works fine
Version 24.09.20 - no values
Version 24.09.22 - no values
"Total AC Output Power (Action)" -  missing
There are no more values for the current PV production.
Or the entity has changed to "Output Power"
Is that what you want?
If so - I really have to adjust a lot of things.
To Reproduce
Steps to reproduce the behavior:
Update Solarman from 24.09.08 to latest version
Expected behavior
Why were the entities changed and the old ones remained but without values.

Total AC Output Power (Action) - unavailable
Output Power

Screenshots
see 3 files from device "Garage"
Metadata:
Version: 24.09.08 - yaml version 12.08.2024
Version: 24.09.22 - yaml version 17.09.2024
I replaced the file "deye_4mppt.yaml" with the old one.
New entities are displayed without values

Output Frequency
Output Power
Total Production 3 & 4

24.09.08

24.09.22

24.09.22 - with old yaml

Hi @Wubarius, yes it is. You can still use the older version of the file as custom profile if it's too much problem for you. 😉

Hi @davidrapan,
thanks for the quick reply.
I'll probably keep the old ones. I'd have to change too much if the entity was renamed.
I've now integrated the new one - but I'm still using the old ones.

Yeah, sorry that I totally forgot to write about those changes in the Release Note. That's big fail from my side. That shouldn't have happened. Another fail is that i messed up the new entity names anyway. Guess I need a break, lol.
Again sorry.


Automatically handle "latest" url when downloading via PLUGINS

Enhancement Type
Improve an existing feature
Describe the enhancement
WorldEdit latest can be downloaded via the latest link on bukkit's website.    Unfortunately the URL does not redirect properly, leaving the file "latest" in the /plugins directory.   This request is to add support for this (and possibly other urls like it.
Testing was done against the following container image version:
REPOSITORY              TAG       IMAGE ID       CREATED        SIZE
itzg/minecraft-server   latest    2b05b286719e   2 days ago     840MB

Below is the  docker-compose.yaml config excerpt.
      PLUGINS: |
        https://dev.bukkit.org/projects/worldedit/files/latest

Running curl against the URL shows the redirect to forgecdn with the correct filename.
curl -v https://dev.bukkit.org/projects/worldedit/files/latest 2>&1 | grep location
< location: https://edge.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar?api-key=267C6CA3

In the event that you are using wget to pull the URLS, adding the parameter --content-disposition renames file redirects if specified by the url provider.   In the example of worldedit / bukkit you can see the difference that this parameter makes:
➜  /tmp wget https://dev.bukkit.org/projects/worldedit/files/latest
--2023-07-17 22:06:55--  https://dev.bukkit.org/projects/worldedit/files/latest
Resolving dev.bukkit.org (dev.bukkit.org)... <IP_ADDRESS>, <IP_ADDRESS>, 2606:4700::6813:9384, ...
Connecting to dev.bukkit.org (dev.bukkit.org)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 307 Temporary Redirect
Location: https://edge.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar?api-key=267C6CA3 [following]
--2023-07-17 22:06:55--  https://edge.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar?api-key=267C6CA3
Resolving edge.forgecdn.net (edge.forgecdn.net)... <IP_ADDRESS>, <IP_ADDRESS>
Connecting to edge.forgecdn.net (edge.forgecdn.net)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://mediafilez.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar [following]
--2023-07-17 22:06:55--  https://mediafilez.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar
Resolving mediafilez.forgecdn.net (mediafilez.forgecdn.net)... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, ...
Connecting to mediafilez.forgecdn.net (mediafilez.forgecdn.net)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6395168 (6.1M) [application/java-archive]
Saving to: ‘latest’

latest                                     100%[======================================================================================>]   6.10M  --.-KB/s    in 0.05s

2023-07-17 22:06:55 (123 MB/s) - ‘latest’ saved [6395168/6395168]

➜  /tmp wget --content-disposition https://dev.bukkit.org/projects/worldedit/files/latest
--2023-07-17 22:07:09--  https://dev.bukkit.org/projects/worldedit/files/latest
Resolving dev.bukkit.org (dev.bukkit.org)... <IP_ADDRESS>, <IP_ADDRESS>, 2606:4700::6813:9384, ...
Connecting to dev.bukkit.org (dev.bukkit.org)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 307 Temporary Redirect
Location: https://edge.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar?api-key=267C6CA3 [following]
--2023-07-17 22:07:09--  https://edge.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar?api-key=267C6CA3
Resolving edge.forgecdn.net (edge.forgecdn.net)... <IP_ADDRESS>, <IP_ADDRESS>
Connecting to edge.forgecdn.net (edge.forgecdn.net)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://mediafilez.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar [following]
--2023-07-17 22:07:09--  https://mediafilez.forgecdn.net/files/4586/220/worldedit-bukkit-7.2.15.jar
Resolving mediafilez.forgecdn.net (mediafilez.forgecdn.net)... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, ...
Connecting to mediafilez.forgecdn.net (mediafilez.forgecdn.net)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6395168 (6.1M) [application/java-archive]
Saving to: ‘worldedit-bukkit-7.2.15.jar’

worldedit-bukkit-7.2.15.jar                100%[======================================================================================>]   6.10M  --.-KB/s    in 0.06s

2023-07-17 22:07:09 (99.8 MB/s) - ‘worldedit-bukkit-7.2.15.jar’ saved [6395168/6395168]

It works fine for https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot by following the redirect and looking at content disposition. I'll have to implement the specific difference you noted with theirs.

...so how does wget "ask" for content-disposition? I don't see it coming from any of the headers, so all I can presume is that wget is overcoming file providers by assuming the filename in the last URL is like the filename part of an attachment content-disposition.

I did some initial investigation and to do what wget is doing the implementation will be forced to re-download the requested file every single time even if it already exists locally. It is the HEAD request that Forge CDN is not correctly supporting, which is what gives the download logic the ability to resolve the final filename via a content disposition header or the final redirected URL without needing to actually download via a GET.

...and I'll have to add a heuristic to not use "error" as the filename, which is what the redirected HEAD currently provides for worldedit:
$ curl -X HEAD -O -fsSL -v https://dev.bukkit.org/projects/worldedit/files/latest 2>&1 | egrep "< HTTP|content
-disposition|location|GET"
* successfully set certificate verify locations:
< HTTP/2 302
< location: /error?aspxerrorpath=/projects/worldedit/files/latest
< HTTP/2 200

I started to research this again and now get a 403, forbidden both with wget and curl:
$ wget https://dev.bukkit.org/projects/worldedit/files/latest
--2023-07-29 00:59:29--  https://dev.bukkit.org/projects/worldedit/files/latest
Resolving dev.bukkit.org (dev.bukkit.org)... 2606:4700::6813:9384, 2606:4700::6813:9284, <IP_ADDRESS>, ...
Connecting to dev.bukkit.org (dev.bukkit.org)|2606:4700::6813:9384|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2023-07-29 00:59:29 ERROR 403: Forbidden.

wget --content-disposition does the trick.
E.g. wget --content-disposition https://dev.bukkit.org/projects/worldedit/files/latest

--content-disposition doesn't actually make a difference since bukkit.org's file responses do not include the content-disposition header. In the case of errors I reported, it is wget 1.21.1 vs 1.20.3. The latter works as expected.
In any case, it looks like the algorithm will need to fall back to taking the filename from the last redirected URL.

Maybe the base image could be Ubuntu 22.04 LTS.

Since this execution is idempotent it should work.
curl -JOs "$(curl -Lso /dev/null -w %{url_effective} https://dev.bukkit.org/projects/worldedit/files/latest)"
Just replace the URL with proper variable.

I really appreciate the advice on wget and curl 😀, but it is implemented with neither
https://github.com/itzg/mc-image-helper/blob/master/src/main/java/me/itzg/helpers/sync/MulitCopyCommand.java#L225
There's several features I need to balance there which is why it is not a super trivial change.


Handle default error response

Hi, thanks for creating such a great library.
I came across a situation where an openapi schema contains a default response to cover all error cases. Quoting from here

You can use the default response to describe these errors collectively, not individually. “Default” means this response is used for all HTTP codes that are not covered individually for this operation.

I think it would be useful to support this in the generator as a special-case - so perhaps the operations.responses object could be in the form
[
  {200, {ResponseSchemaFoo, :t}},
  {:default, {ResponseSchemaBar, :t}}
]

That will allow users to handle the default in their Client library.

Hi @aej — thanks for taking the time to share this bit of OpenAPI. I wasn't aware you could do this, and it's very convenient.
Do you happen to have a test specification that you could use to validate if #5 fixes this behaviour?


Updates AboutUs.md and yh-15.md

Updates AboutUs.md
Adds yh-15.md skeletal PPP

Codecov Report
Base: 72.15% // Head: 72.15% // No change to project coverage :thumbsup:

Coverage data is based on head (3758056) compared to base (ede7e4b).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master      #60   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


GAE Standard Runtime needs to set up classpath

e.g. include servlet-api.jar like the Generic Server Framework runtime does.

Is this the same as https://github.com/GoogleCloudPlatform/gcloud-eclipse-tools/issues/161#issuecomment-219847235

No, this isn't. #161 is to create a runtime for the project if one doesn't already exist.
This bug is that the non-GSF based runtime does not set up the classpath like the GSF based runtime does.

Might have something to do with CloudSdkFacetInstallDelegate

This looks like it has been fixed.
So if you have an Eclipse workspace that doesn't have an App Engine runtime (whether 'App Engine' or 'GAE Standard' runtimes), when you create a new project using either the 'Google App Engine Standard Java Project' option or the 'Maven-based Google App Engine Standard Java Project' option,  the servlet-api.jar and jsp-api.jar are added to the new project's classpath.


[TLM] Add custom types to docstrings

This change will allow our custom defined types to show up on help.cleanlab.ai here

@ulya-tkch I unfortunately don't find the new descriptions super clear either.  Perhaps you could first explain everything as if it were just floats or list of floats. And then later in the docstring say:
Actually instead of float, this may be a TLMScore object if ... (important to specify when it might not be a float / the simpler return type).
Will leave reviews of this to @jas2600
But encourage you to write as simply and clearly as you can.

MAX_PROMPT_LENGTH_TOKENS needs to be increased for TLM unit tests to start passing again.