Fix to read terabyte dataset in .gzip format

Current data_utils has a bug that limits the reading of the terabyte dataset. It throws an error:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte
This fix address this issue by allowing gzip files to be opened correctly.

Addressed

Thank you for looking into the data loader and proposing an update to it. I don't believe this is a bug. The code expects that the downloaded zipped files are first unzipped and then operates on the resulting text files (this is mentioned in the README).
However, an important consideration is a speed of reading the data. Do you know whether reading zipped files is faster than unzipped text files? and by how much?

@mnaumovfb thanks for looking at my changes. After taking a look at the code a bit more, I would like to reject this PR I recreated. Ofcourse reading .gzip read is faster than text reader especially when the dataset is stored in slow media like HDD. There is definitely some benefit but it is only incremental and no big deal.
Having said that, I believe what is worth changing is how the code is doing data prep. Here is the issue: the high-level pseudo code of data_utils.py is something of this sort -
for i in days:
     read(day_$i.gz) to find totallinecount and totallinecountperfile    - limited by read bw
For i in days:
     read(day_$i) to write(day_$i.npz) with minor data cleaning and insert missing fields.  -- limited by read/write bw
For i in days:
     read(day_$i.npz) to write(day_$i_processed.npz) do calculate pre-computed dictionaries.  -- limited by read/write bw

This pseudo-code is great if you are working on a few GBs of data but with a TB of data, like in the case of Crieteo Dataset, this is fundamentally limited by IO bandwidth, and performing repeated reads to this large dataset during data prep stage takes days to complete. I am considering addressing this issue now even though this is a one-time process to create .npz file.
I have a rough idea of how I can merge the second and third for-loop to one loop thus effectively improving the overall performance by at least 33%. I want to merge the first loop too but haven't figured out a simple way to do it.
I believe we can also do parallel reads (until we saturate disk IO bandwidth) to gain further performance beyond 33%. Something to think about that too while making changes to the code.

The pre-processing is indeed an important part of the code.
There is a reason why the code pre-processing is broken into three stages, notice that we can restart the pre-processing on stage boundaries and this can be helpful if the preprocessing is interrupted. However, if you are able to completely merge the last two stages it might be helpful (notice that you also need to support --memory-map flag to reduce the memory consumption).
Finally, the parallel pre-processing of multiple days of the code has also been discussed in https://github.com/facebookresearch/dlrm/issues/58 and the following PR has been recently proposed for it https://github.com/facebookresearch/dlrm/pull/117 This parallelization is not as trivial as it looks https://github.com/facebookresearch/dlrm/pull/117#issuecomment-673247484, but I'm reviewing the proposal in https://github.com/facebookresearch/dlrm/pull/117 which looks promising.


Make JSON result values in double quoted

JSON standard allows only double quoted string as property key

Log messages are still single quoted


Package request: Hauk

Project description
A service for real time location sharing.
On one side is the Android companion app for sharing the location of the device.
On the other side is the web based map for display of currently shared locations.
The latter one is written in PHP.
Metadata

homepage URL: https://github.com/bilde2910/Hauk/wiki/FAQ
source URL: https://github.com/bilde2910/Hauk
license: apache
platforms: linux

Add a :+1: reaction to issues you find important.

@Sigmanificient The java code in the repo belongs to the Android companion app, which I didn't mean to request packaging for. The server part is 100% PHP.

Ah, my bad then!

Tuah!


Fix to use the real USB device (not default ttyACM0)

Pull Request check-list
To ensure your Pull Request can be accepted as fast as possible, make sure to review and check all of these items:

[x] If your changes affects code, did your write the tests?
[x] Are tests passing? (npm test on both front/server)
[x] Is the linter passing? (npm run eslint on both front/server)
[x] Did you run prettier? (npm run prettier on both front/server)
[x] If you are adding a new features/services, did you run integration comparator? (npm run compare-translations on front)
[x] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
[x] If you are adding a new features/services which needs explanation, did you modify the user documentation? See the GitHub repo and the website.
[x] Did you add fake requests data for the demo mode (front/src/config/demo.json) so that the demo website is working without a backend? (if needed) See https://demo.gladysassistant.com.

NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
Description of change
Config file services/zigbee2mqtt/docker/zigbee2mqtt-container.json is read at the beginning of the file and updated after that.
This generate a bug, as the zigbee device chosen by the user is not used, only the default device already present on the file is used.
Finally, the zigbee2mqtt-env file was called without the device as an argument.

Sorry for these 3 commit, I had to fix one copy / past error and fix the npm test result.
This code is still working well on my side.

Sorry for these 3 commit, I had to fix one copy / past error and fix the npm test result.
This code is still working well on my side.


except syntax error for "into table"

REPORT zfoobar.
DATA str TYPE string.
DATA int_tab TYPE TABLE OF i.
str = '1 2 10'.
SPLIT str AT ` ` INTO TABLE int_tab. " only tables with a character-like row type (data type C, N, D, T, or STRING) are allowed with the addition "INTO TABLE"
str = '20'.
INSERT str INTO TABLE int_tab. "  "STR" and the row type of "INT_TAB" are incompatible.

Neither are allowed in abap but there's no error in abaplint.

@mbtools try again, latest version

it gives error for split which is good.
but there's still no error for the insert statement. (2.85.50)


unable to find libraries with '.' in the group.

mimaPreviousArtifacts := Set("me.jeffshaw.harmony" %% "harmony_cats0.9.0_scalaz7.2" % "1.0")

gives
[warn] 	module not found: me.jeffshaw.harmony#harmony_cats0.9.0_scalaz7.2_2.12;1.0
[warn] ==== local: tried
[warn]   /Users/jshaw/.ivy2/local/me.jeffshaw.harmony/harmony_cats0.9.0_scalaz7.2_2.12/1.0/ivys/ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/me/jeffshaw/harmony/harmony_cats0.9.0_scalaz7.2_2.12/1.0/harmony_cats0.9.0_scalaz7.2_2.12-1.0.pom
[warn] 	::::::::::::::::::::::::::::::::::::::::::::::
[warn] 	::          UNRESOLVED DEPENDENCIES         ::
[warn] 	::::::::::::::::::::::::::::::::::::::::::::::
[warn] 	:: me.jeffshaw.harmony#harmony_cats0.9.0_scalaz7.2_2.12;1.0: not found
[warn] 	::::::::::::::::::::::::::::::::::::::::::::::

Changing it to the following fixes it. It appears to be maven name mangling.
mimaPreviousArtifacts := Set("me.jeffshaw.harmony" %% "harmony_cats0-9-0_scalaz7-2" % "1.0")

I think this is not mima bug, the specification of sbt and/or maven.

https://github.com/sbt/sbt/blob/v0.13.13/main/src/main/scala/sbt/Defaults.scala#L1200
https://github.com/sbt/sbt/blob/v0.13.13/main/src/main/scala/sbt/Keys.scala#L216

The fact that I have to manually normalize the name makes this a bug somewhere. It's not expected that I do the same for libraryDependencies or other ModuleIDs.

You mean '.' in the artifactId (or "name" as Ivy calls it).
I agree it's a bug. Ideally one that would be fixed in sbt. But we could potentially workaround it in mima.

Even documenting that you have to do the character replacement would be
pretty good.
On Wed, Feb 22, 2017 at 7:22 PM, Dale Wijnand<EMAIL_ADDRESS>wrote:

You mean '.' in the artifactId (or "name" as Ivy calls it).
I agree it's a bug. Ideally one that would be fixed in sbt. But we could
potentially workaround it in mima.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/typesafehub/migration-manager/issues/168#issuecomment-281849605,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABjO3pJMENY1FgJRlmPnh_92fiiqun4oks5rfNEwgaJpZM4MGyRe
.

That breaks libraries that actually have a . in their name (like this one, published like this, or this one, published like this), and tweak moduleName to enforce it.
A way to circumvent that would be to disable cross-versioning, then manually add the right suffix in moduleName,
crossVersion := CrossVersion.disabled
moduleName := {
  val name0 = name.value
  CrossVersion(platformDepsCrossVersion.value, scalaVersion.value, scalaBinaryVersion.value).fold(name0)(_(name0))
}

but with 0.7.0, this gives
$ sbt
…
sbt:scalacheck-shapeless> mimaReportBinaryIssues
[info] downloading https://repo1.maven.org/maven2/com/github/alexarchambault/scalacheck-shapeless_1.14_2.12/1.2.5/scalacheck-shapeless_1.14_2.12-1.2.5.jar ...
[info] 	[SUCCESSFUL ] com.github.alexarchambault#scalacheck-shapeless_1.14_2.12;1.2.5!scalacheck-shapeless_1.14_2.12.jar (109ms)
[info] downloading https://repo1.maven.org/maven2/com/github/alexarchambault/scalacheck-shapeless_1.14_2.12/1.2.5/scalacheck-shapeless_1.14_2.12-1.2.5.pom ...
[info] 	[SUCCESSFUL ] com.github.alexarchambault#scalacheck-shapeless_1.14_2.12;1.2.5!scalacheck-shapeless_1.14_2.12.pom (18ms)
not a directory or jar file: /Users/alexandre/.ivy2/cache/com.github.alexarchambault/scalacheck-shapeless_1.14_sjs1_2.12/poms/scalacheck-shapeless_1.14_sjs1_2.12-1.2.5.pom
2020-05-28 10:21:55,845 shutdown-hooks-run-all ERROR No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2
$

(sbt abruptly exits, seems this calls System.exit!)

The workaround works in https://github.com/lightbend/mima/pull/508, I guess it should be the same with https://github.com/lightbend/mima/pull/509 when setting up coursier.

About the original issue here, things like this don't work:
scalaVersion := "2.12.11"
libraryDependencies += "me.jeffshaw.harmony" %% "harmony_cats0.9.0_scalaz7.2" % "1.0"

One has to do
scalaVersion := "2.12.11"
libraryDependencies += "me.jeffshaw.harmony" %% "harmony_cats0-9-0_scalaz7-2" % "1.0"

So I'm not sure there's a point in making
mimaPreviousArtifacts := Set("me.jeffshaw.harmony" %% "harmony_cats0.9.0_scalaz7.2" % "1.0")

work.
https://github.com/lightbend/mima/pull/323 should be reverted I think.

Same problem here.


Version shouldn't be hardcoded

https://github.com/slashformotion/radioboat/blob/master/cmd/root.go#L36

If I understand correctly you are trying to add radioboat to some build system ?

(Note to myself: https://github.com/gohugoio/hugo/blob/72b0ccdb010fcdfeb3bb4a955d4fc04529816c0d/common/hugo/version.go#L136)

If I understand correctly you are trying to add radioboat to some build system ?

Nixpkgs is a repository of 'nix packages'. It's part of a Linux distribution called NixOS². But can be used in standalone mode in basically any distro (mac/darwin, debian, arch, etc).
@zendo wanted to publish radioboat package. But version was not matching.


Fix enable_cluster_dns test

Fixes #4118

Could you also tackle cluster/saltbase/salt/top.sls - 2 very similar instances and 2 sort-of similar instances there.
cluster/saltbase/salt/top.sls
11:{% if pillar['enable_node_monitoring'] is defined and pillar['enable_node_monitoring'] %}
14:{% if pillar['enable_node_logging'] is defined and pillar['enable_node_logging'] %}
15:  {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'elasticsearch' %}
18:  {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'gcp' %}
cluster/saltbase/salt/kubelet/default
32:{% if pillar['enable_cluster_dns'] is defined and pillar['enable_cluster_dns'] %}

Do you want me to do this, or are you doing it?  Happy either way.
If you want me to do it, just assign it to me in Github.

I think these two are OK, BTW (unless there's another problem I'm not seeing!):
15: {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'elasticsearch' %}
18: {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'gcp' %}

I was hoping you'd do it since you have a PR open :)
I thought maybe those two should become .get() also to stay consistent, but
I am a relative newb to salt idioms.
On Wed, Feb 4, 2015 at 10:49 AM, Justin Santa Barbara <
<EMAIL_ADDRESS>wrote:

I think these two are OK, BTW (unless there's another problem I'm not
seeing!):
15: {% if pillar['logging_destination'] is defined and
pillar['logging_destination'] == 'elasticsearch' %}
18: {% if pillar['logging_destination'] is defined and
pillar['logging_destination'] == 'gcp' %}
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/pull/4120#issuecomment-72913949
.

I think my weird ".get() ==" isn't exactly idomatic, because our use of quoted truth isn't exactly idiomatic. I used it because it made sense for me in Python, but I'm no Salt-speaker either.

Sorry to disappoint, but I don't speak Salt either!
The get() makes sense to me from Python (and I think we're in Jinja, so Python)  But I have no idea about what is idomatic Salt (Salty?).
I'll fix the definitely-broken ones.  I suggest that I don't fix the two which aren't broken, unless someone has a strong opinion.

(There are also a few more occurences of the non-broken case):
cluster/saltbase/salt/sdn/init.sls:{% if grains.network_mode is defined and grains.network_mode == 'openvswitch' %}
cluster/saltbase/salt/top.sls:  {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'elasticsearch' %}
cluster/saltbase/salt/top.sls:  {% if pillar['logging_destination'] is defined and pillar['logging_destination'] == 'gcp' %}
cluster/saltbase/salt/top.sls:{% if grains['cloud'] is defined and grains['cloud'] == 'azure' %}
cluster/saltbase/salt/top.sls:{% if grains['cloud'] is defined and grains['cloud'] == 'azure' %}

SGTM
On Wed, Feb 4, 2015 at 11:00 AM, Justin Santa Barbara <
<EMAIL_ADDRESS>wrote:

Sorry to disappoint, but I don't speak Salt either!
The get() makes sense to me from Python (and I think we're in Jinja, so
Python) But I have no idea about what is idomatic Salt (Salty?).
I'll fix the definitely-broken ones. I suggest that I don't fix the two
which aren't broken, unless someone has a strong opinion.
--
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/pull/4120#issuecomment-72916002
.

I did push a new version of this fix BTW (not sure exactly how alerts work etc)

LGTM

I am running a quick cluster up with this before commit


can build an AI model target mcu?

What happened?
Hi
just a question, not bug.
I know can build an AI model target cpu, finally it have two part: host(cpu) and device(such as X86). if my device is MCU(single core), can iree build the an AI model for deploy at MCU? thanks
Steps to reproduce your issue

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

What component(s) does this issue relate to?
No response
Version information
No response
Additional context
No response

HI
can anybody reply this question? maybe this problem is non-professional ， thanks very much


External Pipeline: Best Gulp Example?

Hi,
Reading over the external pipeline feature (which is awesome by the way) I'd like to make sure I understand how a typical workflow would look like using something like Gulp; since I didn't see a full-fledged example.
Using https://github.com/pfulton/mm4-ext-pipeline as a reference, this user has both their src files and build files in the source/ directory and ignoring the source files on the MM build. I'm seeing a .tmp/dist path mentioned as the source on both the MM docs and in this example, so I didn't know if I should really be building my assets with gulp in that .tmp/dist directory or if I should be doing what this repo is and have them both co-mingled; which I'd rather not to avoid confusion on my team.
It also seems like we could just pull-out the gulp assets from the source/ directory all-together, but not sure if that adds another layout of complexity. Would appreciate some guidance on how others are doing this. Thanks!

Basically, create a gulp watch or build command which deposits files in a folder. Point the external pipeline at that folder. Where it lives doesn't really matter.
The ignoring of files in source is so they are served by external pipeline. You could also keep your gulp-related files outside of source so you don't need this step.

Hey @tdreyno,
Thanks for the reply; as always :)
So if my directory structure looked like the following:
assets/
   css/
      style.scss
source/
   index.html.erb
config.rb
gulpfile.js

Then if I had the assets set to build to .tmp/build through any gulp tasks, then I could simply set the external pipeline to be:
activate :external_pipeline,
  name: :gulp,
  command: "./node_modules/gulp/bin/gulp.js",
  source: ".tmp/build"

Does that sound about right?

Yes. Notice, that gulp will only do what you tell it to. Since you're not specifying a task for gulp  to run, then your default task should be doing what you expect.
External pipeline runs in parallel. So if you want it to be constantly watching and re-building file changes, you need to make sure gulp is configured to do that.

Cool, sounds good. Thanks!

Hey @tdreyno,
How do we take advantage of Compass utilities such as image-url() within the scope of Gulp to reference the correct path to built images:
url('foo.png')

Would return:
url('/assets/images/foo-398ds09.png')

Oh awesome! I get it, since the external pipeline still ultimately passes through Middleman (for any cache-busting or gzipping) Middleman still reads those style files and injects the needed updated paths, right?

Yup

Cool, thanks @tdreyno


For isc20

This updates the io500.sh script for ISC20 (README.md, CHANGELOG.md) as well as the prepare.sh script to reference (currently non-existent) io500-isc20 tags in the IOR, io-500-dev, and io500-app repos.
Once this patch is tested locally and landed those tags should be created.  It would be possible to create the io500-isc20 tag on the IOR repo now, since there aren't any pending ISC20 changes for it.
There will be a separate push to the io-500-dev repo in a for-isc20 branch that also updates the README.md and CHANGELOG.md files there, and makes it clear that repo is deprecated by printing an error and refusing to run unless it is done as part of the io500.sh script here.
That patch should be landed when this one is landed, and both can be tagged.  I'm not sure if I can push tags myself, so Julian might need to do that.

+1 for me


No Type Declaration for No CSS Litepicker

Describe the bug
A clear and concise description of what the bug is.
Attempting to import the no-css version of litepicker into a StencilJS typescript library. When importing according to the documents there is a standard type declaration error.
Could not find a declaration file for module ‘litepicker/dist/nocss/litepicker.umd.js’. .../node_modules/litepicker/dist/nocss/litepicker.umd.js’ implicitly has an ‘any’ type.   Try npm i --save-dev @types/litepickerif it exists or add a new declaration (.d.ts) file containingdeclare module ‘litepicker/dist/nocss/litepicker.umd.js’;ts(7016)”
To Reproduce
Steps to reproduce the behavior:

Create a typescript project
Add noImplicitAny: true to tsconfig.json
add litepicker dependency
Try to import no-css Litepicker according to docs
See error

Expected behavior
A working import without errors
jsfiddle.net / codepen.io / etc
No-CSS Litepicker
Additional context
Add any other context about the problem here.

Tagging co-worker for resolution
@NicDominguez


error handling: should save await and return errors

if i build save a random file (not a variant of a test that exists in my account), I get a 200 Uploaded X from the CLI even though in mhq the save didn't happen b/c the test doesn't actually exist
Unless there's a reason we always return 200 from save_variant in mhq, I'd expect an error if I try and fail to save a variant

per the PR comment.. I think we should probably just update the text on the response to 'Response was submitted'. This endpoint gets hammered by auto-saves in the UI and I don't want to wait on the save action.


Add deployment option via CVP

Because ansible-cvp requires a specific input structure for cv_container cv_configlet and cv_device, a module is part of the repository to transform data from inventory to correct struture:
all:
  children:
    CVP:
      hosts:
        cvp:
# DC1_Fabric - EVPN Fabric running in home lab
    DC1:
      children:
        enterprise_servers:
          hosts:
            srv01:
        DC1_FABRIC:
          children:
            DC1_SPINES:
              hosts:
                DC1-SPINE1:
                DC1-SPINE2:
            DC1_L3LEAFS:
              children:
                DC1_LEAF1:
                  hosts:
                    DC1-LEAF1A:
                DC1_LEAF2:
                  hosts:
                    DC1-LEAF2A:
                    DC1-LEAF2B:
                DC1_SVC3:
                  hosts:
                    DC1-SVC3A:
                    DC1-SVC3B:
                DC1_BL1:
                  hosts:
                    DC1-BL1A:
                    DC1-BL1B:

Modul inputs
- name: generate intented variables
  inventory_to_container:
    inventory: 'inventory.yml'
    container_root: 'DC1_FABRIC'
    destination: 'generated_vars/{{inventory_hostname}}.yml'
  register: CVP_VARS

Output is currently like:
inventory_to_cv_topology:
      CVP_TOPOLOGY:
        DC1_BL1:
          devices:
          - DC1-BL1A
          - DC1-BL1B
          parent_container: DC1_L3LEAFS
        DC1_FABRIC:
          parent_container: Tenant
        DC1_L2LEAF4:
          devices:
          - DC1-L2LEAF4A
          parent_container: DC1_L2LEAFS
        DC1_L2LEAF5:
          devices:
          - DC1-L2LEAF5A
          - DC1-L2LEAF5B
          parent_container: DC1_L2LEAFS

resolved by #41


bug: a bad login attempt does not log a 401 HTTP error but a 200 (problem for fail2ban)

Hi there,
Awesome software.... I changed from a paid pinboard.in to this in a 1 sec,
But
A bad login attemp is logged with a HTTP 200 instead of a HTTP 401 error..
This makes it that I can't use Fail2ban because I can't filter 401's!
No other mention of a failed attempt in the log either....
please log the 401's!!

Hi Sascha,
Thanks for explaining all of this, I will dive into this and see if I can find a solution (if it is in my power).
Fair enough this is not a bug, as you explain de Django framework is like this.
This software is still awesome… I love everything about it… as said I turned away from pinboard.in 1 sec.
I’ve been there for 12 years…. But this is so nice…
It there a way I can make a donation to you for your hard work?
Best regards,
Marco

Op 3 apr 2024, om 01:55 heeft Sascha Ißbrücker @.***> het volgende geschreven:
Awesome software.... I changed from a paid pinboard.in to this in a 1 sec,
Cool!
A bad login attemp is logged with a HTTP 200 instead of a HTTP 401 error..
It's debatable whether that is a bug or not. This is how the Django framework used by linkding, and tons of other web apps, choses to implement their login view. This SO answer explains it quite well: https://stackoverflow.com/questions/25839434/django-login-with-wrong-credentials-returns-200-not-401/25840166#25840166
Now I get that this doesn't help if you want to implement fail2ban, but I'll probably not change the defaults. Rather there should be an option for returning a different status code, or a feature for logging failed attempts to the Docker logs. Both should be fairly easy to implement, so contributions are welcome.
Apart from that fail2ban support was already requested in #489 https://github.com/sissbruecker/linkding/issues/489, so let me close this in favor of that.
—
Reply to this email directly, view it on GitHub https://github.com/sissbruecker/linkding/issues/677#issuecomment-2033297142, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABMFKPA7GAAOYJVD7F7KHSTY3NAQHAVCNFSM6AAAAABFUEDL5CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZTGI4TOMJUGI.
You are receiving this because you authored the thread.

Donated to Internet Archive like you said!
Have a great weekend!
Marco
On 3 apr 2024, 22:11 +0200, Sascha Ißbrücker @.***>, wrote:

The linked SO question contains some pointers on how to customize the login view to return a different status code. The other part of the task would be to add a new option in base.py for customizing the status code, and then use that in the custom login view.

It there a way I can make a donation to you for your hard work?
Currently I have no plans to profit from this project and as such don't accept donations. If you want you can donate to the Internet Archive, which receives some additional traffic from linkding. So helping them compensate for that, and their useful service in general, is a nice thing to do. Or, you know, invest some time, dig into the code base and add this feature 🙂.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Provide stream functions to handle Result streams

Add a ResultStream trait providing functions modeled after the native
Result type, if their stream counterpart is meaningful. This includes
functions to extract and map Ok or Err variants, as well as
unwrapping, and chaining results with and_then.
Signed-off-by: Moritz Hoffmann<EMAIL_ADDRESS>

These look good, thanks! Do you have any thoughts about how / whether to blend these with ok_err.rs, which demuxes Result types into two streams?

We could definitely merge it with ok_err.rs. Let me take a look!

Scanning, I think the main difference is that ok_err.rs uses a closure to be "broadly applicable" to any timely stream, whereas these methods apply only to streams of results (which makes sense). If we unified them, either might lose part of what makes them nice (ergonomics here, and economy there). Happy to chew on that, or just land this as is. Lmk once you've chewed on it a bit!

It seems more intuitive to keep ResultStream<S, T, E> instead of moving T and/or E to the functions itself. For this reason, I'm inclined to keep it separate from or_err.rs -- technically we could copy/paste the content in ok_err.rs because it somewhat belongs together. If that's fine with you, feel free to go ahead and merge :)

Is there a reason that ok() and err() have custom operators, rather than being instances of flat_map()? Just trying to grok the complexity there (and minimize, if possible).

Yep, good point. Definitely easier to define ok/err in terms of flat_map.

Looks good; thanks for the PR!

Thanks a lot! What about pushing a new release to crates?

That sounds like a responsible thing to do! It's been .. almost a year I think? Maybe more. I'll investigate today!


[Test Failed] I use pairDeviceWithCode to Connect，but it always failed.Android

Test issue(s)

pairDeviceWithCode(long deviceId, String setupCode, boolean discoverOnce, boolean useOnlyOnNetworkDiscovery, @Nullable byte[] csrNonce, @Nullable NetworkCredentials networkCredentials, @Nullable ICDRegistrationInfo icdRegistrationInfo)

I use pairDeviceWithCode(deviceID,setupCode,false,true,null,null,null)
my matter device:
OnboardingPayload(version=0, vendorId=4965, productId=28673, commissioningFlow=0, discoveryCapabilities=[ON_NETWORK], discriminator=3899, hasShortDiscriminator=false, setupPinCode=91300495, optionalQRCodeInfo={}, optionalVendorData={}, optionalExtensionData={})
I use pairDeviceWithCode("deviceid","91300495",false,true,null,null,null)
I tried to connect the device, but it always failed
Do I still need to transmit the parameter csrNonce, and what does this parameter correspond to?
byte[] csrNonce = discriminator?
2.
3.
...
Platform
No response
Anything else?
No response

@JasonClark2
Could you share android Chiptool full log?

i cannot reproduce this issue, closing this one, feel free to reopen it with the log if the issue is still outstanding.


Soft logout: Support SSO auth

Make sure we can log in back after a soft logout on a homeserver running SSO auth.
Information to test against a SSO auth homeserver is pinned in the #softlogout-dev room.
Riot-Web PR: matrix-org/matrix-react-sdk#3197

[x] Check soft logout display on SSO
[x] If the hydrated user ID doesn't match the session's user ID, overwrite (done in https://github.com/matrix-org/matrix-ios-kit/pull/584/commits/8a296097638639401e37a3e08b8b02674201ecac)
[x] Pass the device_id in the fallback URL we use for SSO
[ ] Final test when device_id is implemented on the fallback page (blocked by https://github.com/matrix-org/synapse/issues/5755).

Kamino cloned this issue to vector-im/riotX-android


Adding vectors, dot above, double dot above

The following were added :

vectors for all letters, uppercase and lowercase
dot above for all lowercase letters and a few greek letters
double dot above for all lowercase letters and a few greek letters

This is more of a suggestion. Feel free to modify this pull request to bring it inline with project requirements.

When using my phone, shortcuts using • do work properly.
However, your point in using ascii characters seems sensible to me, I have made the changes.

When using my phone, shortcuts using • do work properly.

You are right, it seems I put it in wrong when testing. I assumed it was a similar issue to #13 but it seems like even that is working again now in the latest version of Gboard.


Updates in UI (Layout) & some functionalities

removes TabPanel class
implements tab switching visuability in tab panel. (after handling tab switch, tab will be visible as 'selected'

Resolves #151


TypeError: this.log is not a function

Just experienced this morning (got homebridge running in a screen session to look up stuff when it crashes, since it's not yet perfectly stable):
/usr/lib/node_modules/homebridge-squeezebox/index.js:92
            this.log(e)
                 ^

TypeError: this.log is not a function
    at /usr/lib/node_modules/homebridge-squeezebox/index.js:92:9
    at handle (/usr/lib/node_modules/homebridge-squeezebox/node_modules/squeezenode/squeezerequest.js:46:13)
    at /usr/lib/node_modules/homebridge-squeezebox/node_modules/squeezenode/squeezerequest.js:54:13
    at Client._parseResponse (/usr/lib/node_modules/homebridge-squeezebox/node_modules/squeezenode/node_modules/jayson/lib/client.js:151:18)
    at /usr/lib/node_modules/homebridge-squeezebox/node_modules/squeezenode/node_modules/jayson/lib/client.js:112:10
    at ClientRequest.<anonymous> (/usr/lib/node_modules/homebridge-squeezebox/node_modules/squeezenode/node_modules/jayson/lib/client/http.js:88:7)
    at emitOne (events.js:77:13)
    at ClientRequest.emit (events.js:169:7)
    at Socket.socketOnEnd (_http_client.js:305:9)
    at emitNone (events.js:72:20)
    at Socket.emit (events.js:166:7)
    at endReadableNT (_stream_readable.js:921:12)
    at nextTickCallbackWith2Args (node.js:442:9)
    at process._tickCallback (node.js:356:17)
^C
[1]+  Exit 1                  homebridge

Updated version just two or three days ago, package.json says version 0.0.5, npm upgrade doesn't see  new version, so I assume it's the latest one.

Experienced it again two hours ago (just to confirm that it's not a single incidence, but repeated stuff)

Bad thing is this is crashing my homebridge even if I do not have SqueezeBox in my platforms list :-(
Looking into the code, I found this is a follow-up of my previous issue (#2) about the power state... the "correcting" code is what triggers this.

I had similar crashes. I uninstalled it, then used Domoticz to export dimmers that would get/set volume & power via HomeKit app/Siri.

I'm doing a similar thing now; I have homebridge-fhem in use as well, and use custom fhem devices instead.


Change string references of fields/properties/methods to nameof()

I feel like NaughtyAttributes should be using nameof() in their examples, this is useful for a few reasons:

During editor naming refactors your NaughtyAttributes don't suddenly break.
Prevents spelling mistakes, the compiler will throw an error if it can't find what it's looking for.
If someone new to a codebase is trying to find where a function is used via "Find All References", the attribute will show up, instead of being hidden and the field/property/method being seemingly unused.

(Also please ignore the messy commit history, I was lazy and just did the edits via the web ui)

Thank you for mention this, I agree with that using nameof is best practice. But in tutorial, string format can be more straightforward for those users new to C#.
May consider add this as a tip before examples?

I was thinking the same thing. I can mention about nameof, but I prefer to leave the examples with raw strings

I wouldn't mind an overload that only accepts delegates/methods/Actions, if technically feasible ;)

I wouldn't mind an overload that only accepts delegates/methods/Actions, if technically feasible ;)

You can't pass delegates to attributes' constructors, unfortunately. You can't pass anything that is dynamic in nature. You are pretty much limited to constant literals that can be precompiled. nameof is basically a keyword that creates a constant string literal at compile time.

I personally disagree, I think we should start new users with best-practices, rather than something that's slightly easier to read, but worse for functionality.
But a mention of nameof() at the start of the doc would help. If you wanted to go with that approach @dbrizov I'll close this PR and I'll let you write that in your own words.

bump @dbrizov ? What the consensus here?

Yeah, sorry for the late reply. I will mention nameof() in the docs


Implement Send/Sync trait to Webview

@lucasfernog I would like to make the async refactoring as simple as possible.
I hope we can just use Webview instance in most of cases.
Does this look good to you?
Does WebviewMut also need eval method to it?

What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[x] Feature
[ ] New Binding Issue #___
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[ ] Yes. Issue #___
[ ] No

The PR fulfills these requirements:

[ ] It's submitted to the dev branch and not the master branch
[ ] When resolving a specific issue, it's referenced in the PR's title (e.g. fix: #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

[ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

@wusyong if the Webview is Send+Sync, do we still need the WebviewMut type?

@wusyong if the Webview is Send+Sync, do we still need the WebviewMut type?

It wraps the underlying with webview pointer with Arc. WebviewMut is a weak reference to it. Perhaps someone still need to have multiple owner to it.
But I do wish we can just stick with one type. I would make sure wry crate could achieve this.

It wraps the underlying with webview pointer with Arc. WebviewMut is a weak reference to it. Perhaps someone still need to have multiple owner to it.
But I do wish we can just stick with one type. I would make sure wry crate could achieve this.

Alright, that's fine then.

Alright, that's fine then.


Permissions

Hey,
this is just a quick question. Do I get the permissions to add this mod to the "NonCurseForge-Mod"List? Want to use it in my modpack but I cant until it is on the list ^^'
Greetings Xaikii

Now on curseforge: https://minecraft.curseforge.com/projects/omni-ocular


Error Constructor does not accept more than one argument

Reading the MDN, I noticed that we can pass multiple arguments to the Error constructor
MDN - Error

The first argument is the error message
The second argument is an object which includes the property cause

Testing out whether the Node implementation of Error allows this, I came up with this code
const cause = { id: 1, example: "other" }
const err = new Error("Misc. Error description", { cause })

console.log(err.message)  // Misc. Error description
console.log(err.cause) // { id: 1, example: "other" }

I tried instantiating an Error instance as follows
new Error(
  "Required environment variables not set",
  { cause },
)

I got the following error
Expected 0-1 arguments, but got 2.ts(2554)

It appears that the type declarations for Error constructor should be updated to accommodate this.

You forgot to fill out the issue template.
The constructor overload with cause is only supported with ES2022 or later.

The constructor overload with cause is only supported with ES2022 or later.
In my tsconfig I have

  "compilerOptions": {
    "target": "ES2022",

But anyway I got this error. What the way to fix?

But anyway I got this error. What the way to fix?

Please provide the rest of your tsconfig.json file


warnings of accept-forwarded-url features should not pollute logs

If Couper is configured to use x-forwarded-host header to determine its URL, every incoming request that does not have this header, results in the same warning being logged:
couper accepting X-Forwarded-Host, but no X-Forwarded-Host request header found, using default host localhost:8080

This pollutes the log files, especially for health check requests to /healthz. These are often carried out by an agent behind the TLS offloader. E.g. in Kubernetes, the kube-probe agent sending the livenessProbe does not use the Ingress which would add the XFH header.
This M/R removes the warning from the log.
As the interpreted hostname is logged in the access log, we don't loose the ability to check whether the XF* configuration works.

The slightly different -xfh flag did also log that warning. Following the same reasoning, I have removed that warning, too.


Gif command doesn't work often for multi-term queries

A lot of gif commands fail to return any result. For example @mrsnot often searches fbo pug love and Flambo can't find anything.

This is a limitation of the giphy api... find a better gif search api and i'll change to that.

Maybe the deprecated Google Image Search API would do or whatever search API the bb bot used to use.

Since I've removed Google Search from flambo, @danspencer you should evaluate imgur vs giphy gif search and report back which is better.


Add LGTM code quality badges

Hi there!
I thought you might be interested in adding these LGTM code quality badges to your project. They indicate how you care about code quality and encourage your future contributors to do the same.
To get an idea of the analyses reflected by these grades, check the alerts discovered by LGTM.
N.B.: I am on the team behind LGTM.com, I'd appreciate your feedback on this initiative, whether you're interested or not, if you find time to drop me a line. Thanks.

Coverage remained the same at 90.311% when pulling 797e1330acb582d84a54d7e0dc29ee357ae7939c on xcorail:master into 826b6d23f943c7590e43bb2f0d54b8db07ac4262 on benas:master.

Hi @benas
Happy you found it useful.
Some precisions about the service:

By default, LGTM will poll your repo once a day and analyze all commits, most recent first
But our recommended usage is to activate Pull request integration: LGTM will analyze your PR immediately, and report any new problem or fix directly in the PR. It's free for open source, and it's a one click operation
For help, feedback, suggestions ... it's here

Enjoy!


Store events in repositories

This might be a bit of a long shot idea. In addition to aggregating projects hosted on GitHub/GitLab, consider using repos to store the hackdays themselves. Maybe even host Dribdat right on GitHub Pages (or something similar for GitLab)? This could simplify the setup, reduce hosting cost, and help with archiving.

Yes! See also #112 and #214 - what we need is, basically, is a complete export of event metadata in a form that could be well stored in a repository. Probably easiest initially as a ZIP file download from the user interface.

Initial branch to test this: https://github.com/loleg/dribdat/tree/datapackage

Working build deployed: see #259 for the ability to download a ZIP file containing a full data package, that is a step towards Git-hosted dribdat events. @tamberg

What kind of features - or at least, what kind of information (countdown timer? terms? resources? ...) - should we also be bundling into a static site? I think the basic requirement of "storing events" has been met, but of course we can build a lot from here. I would say that further issues and ideas would be more appropriate at dribdat/backboard, and close this.


As a service author, I can describe in a manifest that OAuth2 credentials should be generated for a deployed application

GIVEN The application manifest contains:
spring.cloud.appbroker.apps[0].credentials:
  - OAuth2CredentialsProvider

AND The application manifest contains an app named basic-oauth2-app
WHEN a service instance is created
THEN the application basic-auth-app has a SPRING_APPLICATION_JSON environment variable containing the values:
{"security": {"oauth2": {"client": {"access-token-uri: "https://uaa.example.com/oauth/token", "client-id": "ageneratedid", "client-secret": "ageneratedsecret"}}}}

I believe this story will also require that the generated client ID and secret are stored in the OAuth2 provider when they are generated. If so, the story should be specific to CF UAA, and use the UAA REST API to store the generated ID and secret.


add npm run watch to docker-compose.yml

Description of the Change

Add node.js and npm to the docker image.
Create a new docker container that runs npm install && npm run watch. Any changes to the assets will automatically recompile.

Alternate Designs
We could look at adding this capability to the amber watch with a configuration file similar to foreman.
Why Should This Be In Core?
Docker and Docker Compose provide easily configurable containers to setup a development environment.  This change adds another container to handle the new asset management via npm and web pack.
Benefits
This allows any developer who has docker installed to run docker-compose up -d and they will have a running development environment with all the needed services.
Possible Drawbacks
Docker has a fairly steep learning curve and is intimidating for new users.  We already provide Docker and Docker Compose configuration files so adding another container should not be much of an issue.
Applicable Issues
None that I'm aware of

Lol


WIP postgres commands for resource-based servers.

Current dependencies on/for this PR:

main

PR #997   👈

This comment was auto-generated by Graphite.


PowerShell Core does not have -Encoding Byte

Ran into an issue while running the PowerShell script to upload certificate to Azure SQL MI. I had to follow the following link and the script worked
https://www.jonathanmedd.net/2017/12/powershell-core-does-not-have-encoding-byte-replaced-with-new-parameter-asbytestream.html

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 9a4697d7-2e64-dd45-0bb7-676c41fafe88
Version Independent ID: 92168a06-a032-873b-37bc-dcd46b37ae13
Content: Migrate TDE certificate - managed instance - Azure SQL Database
Content Source: articles/sql-database/sql-database-managed-instance-migrate-tde-certificate.md
Service: sql-database
Sub-service: security
GitHub Login: @MladjoA
Microsoft Alias: mlandzic

@avinashkota Thank you for the feedback.
This is being assigned to the content author to evaluate and update the documentation as appropriate.

@avinashkota Thanks again for the feedback.
The code sample has been fixed some time ago. Closing this issue now.

#please-close


Refactor weight mod

Just a few trivial fixes:

type implementations are under the tests and not grouped together.
assignment statements in the test have confusing variable names.
expect message wording is wrong.  It should be the reason the behavior is expected to succeed ref: https://doc.rust-lang.org/std/option/enum.Option.html#recommended-message-style
doc message says overflow when it should say underflow for subtraction

Looks good to me. Needs rebase. Will ACK in a sec. Note that, like when Tobin does this, I did not really look at the commit that merely moves code within the same file. As far as I care such commits are no-ops and I'll ack them every time. So if other reviewers care about this, they should check :P.

Needs rebase.

Hmm github shows "this branch has conflicts" although when I rebase, there are no actual conflicts.  There's been a net new function in weight.rs pub const fn from_vb_const although this shouldn't cause a conflict with this branch.  Is this just a Github error?

Yeah, Github glitches out in this way all the time. If it's really not an issue you can ignore it, though it may discourage other reviewers.

I'm not blocking this one but could we please minimize code moves like this for a bit?  (Yeah, the hashes PR took me about a day to rebase.)

could we please minimize code moves like this for a bit?

I'm a major contributor to that pain, reiterating what I've said before - I'll do any of your rebases @Kixunil that I caused and push them to a separate branch so you can grab them.

Well that helps me but not the project as whole since the time is wasted on churn.

no changes, only a rebase.

no changes, only a rebase

I believe this statement is incorrect, the test changes seem to be different in the force push.

In the last force push, I changed the assigned var to be weight instead of wu.

NACK all the expect changes.

@tcharding These expects are now just unwraps.  Is https://github.com/rust-bitcoin/rust-bitcoin/pull/2215/commits still a NACK?

ACK the expect to unwrap changes. FTR typically I prefer the use of expect in tests but these expect strings are particularly bad and the tests are short and simple.

FTR typically I prefer the use of expect in tests but these expect strings are particularly bad and the tests are short and simple.

I'm confused about which version or part of the expect strings you think are bad.  If you have advice on how to make them better so that you're happy with them please let me know.

I'm confused about which version or part of the expect strings you think are bad.

Why are you removing them then?

I noticed this PR seems to have stalled so closing it.  Worthwhile commits can be cherry picked to a new PR.


Rename ICacheMethod.FlushAsync to ICacheMethod.ClearAsync

This is a badly named method that causes confusion, see #30.
Needs to be marked as deprecated in 0.8.0 and be fully renamed in 0.9.0+.

Deprecation is handled in #34. I'm keeping this issue open until v0.9.0 where FlushAsync will be fully removed in favor of ClearAsync.


Best way to customize ContentTools native behavior

For example I want to change the behavior of Image element completely.
What would be the best way to do that?

Hi @Eeliya this question is a little too open, to be able to answer it would be useful if you could define what it is you're looking to achieve by changing the behaviour.

For example, the Image element use a div with background-image to represent the image in the edit mode. I want to change that and use a img tag instead of div tag.

OK so replacing the div tag with an img tag could be a little painful purely because we use pseudo elements (:before and :after) to show information about the image.
However you could try using an img tag and then applying the following method to make it support pseudo elements: http://stackoverflow.com/questions/5843035/does-before-not-work-on-img-elements (the answer starting I found a way to make this work in pure css).
If that does work you'd just need to change the mount method (https://github.com/GetmeUK/ContentEdit/blob/master/src/scripts/images.coffee#L62) to output an img and set the source instead of the background.

Alright,
Because I do not want to change the mount method of ContentEdit.Image, I copied the ContentEdit.Image class and add my changes to it and loaded after the ContentTools is loaded.
So I overwrite ContentEdit.Image completely with my custom version of it.

That approach would work too :)

Could you please share your code that replace a div with background with an img tag to deal with images in content tools ?
I'm also interested as my website is responsive design, the background method is not appropriate at all to handle this.


Expand ExternalLibraries

The newly added (7.0) support for external libraries is cool.
But it currently sounds like it is restricted to onBot and Blocks.
It seems like it could serve the needs of Android Studio developers as well - making it so external libraries don't have to be packaged with the robotcontroller apk.
It would provide a consistent way for transferring/storing .so files on the RC and copying them to protected storage and loading them.
It seems like this would help with things like openCV, vuforia, and others.

Personally I see it completely the other way. Keeping everything in Android Studio helps for configuration control and consistency when using different devices. Also, this would still require building against external libraries in Android Studio in order for the compilation to succeed, just you'd be adding the dependencies as compile-only instead of runtime. And then you could have the possibility for version conflicts between the version you built against and the version used at runtime.

Thanks for the response.  Maybe you can help me understand.
EOCV uses OpenCV-Repackaged (as api in build.gradle) and RobotCore as compile-only.
Is it not possible for EOCV to get conflict with the RC version?
OpenCV-Repackaged takes care of version conflict using MD5 checks.  And it currently limits EOCV and RC to armeabi-v7a.  It looks like the approach in ExternalLibraries supports but armeabi-v7a and arm64-v8a - with the loaded libraries checked for match against the RC type.
Instead of a hardcoded MD5 check, could there be a minimum required library version check or similar?
Also, OpenCV-repackaged has the opencv java code files to compile against, but doesn't appear to actually generate the opencv .so files - instead it relies on manual transfer of the prepackaged .so files.
We were previously using a old home grown system for loading libraries (primarily opencv).  But the strategy could apply to others.  That is why I was looking to see if there was a somewhat generic approach that could do what OpenCV-repackaged has a specialized solution for, and what ExternalLibraries seems to provide (but limited to onbot/blocks).
I am interested in learning more on this.  Thanks.

EOCV uses OpenCV-Repackaged (as api in build.gradle) and RobotCore as compile-only.
Is it not possible for EOCV to get conflict with the RC version?

Oh, it's absolutely possible does happen - due to API/ABI changes in SDK v7.0, EOCV versions before 1.5.x will blow up on a 7.0 RC due to changed method signatures.

Also, OpenCV-repackaged has the opencv java code files to compile against, but doesn't appear to actually generate the opencv .so files - instead it relies on manual transfer of the prepackaged .so files.

Building the OpenCV native library is a pain, and the OpenCV Android SDK provides them prebuilt, so I just reuse those. Essentially OpenCV-Repackaged is just the vanilla OpenCV Android SDK, but packaged nicely on Maven so it can be pulled in from Gradle. I could absolutely package the native library inside the AAR so the user doesn't need to copy it manually - but I specifically did extra work for the dynamic load to avoid bloating the APK with the 10MB native library. The OnBotJava EOCV bundle uses prepackaged native libraries (for both 64 and 32 bit) because that's a one-time thing (doesn't affect build times) and it just makes the install process easier. The Android Studio version currently only supports 32-bit for sake of simplicity. I could provide an alternative artifact on Maven like the OBJ version which has the 64 and 32 bit libraries prepackaged to make the install super simpler at the expensive of APK size. shrug


Source generator may attempt to register child class before parent class

Godot version
4.3.stable.nixpkgs.77dcf97d8
Godot .NET packages version
6bd7581
System information
NixOS 24.11
.NET information
9.0.100-rc.1.24452.12
Issue description
When using the source generator and inheriting from a [GodotClass] the source generator registers classes in an arbitrary order which may lead to child classes being registered before their parents and therefore failing to become registered into ClassDB
Steps to reproduce
Create a parent class annotated with [GodotClass]
Create a child class that inherits from the parent class annotated with [GodotClass]
Main.generated.cs may place the parent class after the child class which will fail
Minimal reproduction project
N/A

Thanks for the report!
You are right, currently the EntryPoint generator doesn't attempt to sort the classes to register in any way, so it's very likely that they'll be registered in the wrong order.
As a workaround you can disable the entry point generation with the DisableGodotEntryPointGeneration attribute:
[assembly: DisableGodotEntryPointGeneration]

Then you can write the entry point yourself, you can see an example in the Summator sample.


Support package configuration in the package's directory

Motivations
When working in larger workspaces, its much easier to have a package be an atomic unit that you can then copy, etc.  This doesn't jive with having all of the config in a central file.

Would you like to implement this feature? maybe

Solution
Support a config file in the package's directory, whether that be release-plz.toml or the Cargo.tomls package.metadata.release-plz.
Alternatives

Additional context
See https://github.com/MarcoIeni/release-plz/discussions/1019

This is a great idea! The package-level configuration should support the options listed here, except "name", which is inferred by the directory where release-plz.toml is placed or Cargo.toml file.
PR welcome!

I would like to work on this feature ✋🏼 feel free to assign it to me!

Sure thing, thanks Orhun!

You can extract package metadata with this

Do you still want to check if they both exist and throw an error?

That would be nice, yes!

PR is updated!

I closed https://github.com/MarcoIeni/release-plz/pull/1082 for inactivity.
If anybody wants to implement this feature request, you can look at that PR as a starting point 👍


Fixes to make CI tier-2 work

Required to fix tier-2 testing (which is currently red).

Docker image is only 37 MB!


Changed the styling of the detail-view-navigator

Closes #1212
@GabrielInTheWorld  in a commit of yours that was merged yesterday you had switched one css class for another in the detail-view-navigator template.
This made the component go haywire whenever it was displayed in a dot menu (as part of the list-of-speakers-button).
For now I've switched it back. It seems like this broke nothing in the other components that use the navigator.
If this is somehow horribly wrong just tell me, I'll look for a different solution.

@GabrielInTheWorld in a commit of yours that was merged yesterday you had switched one css class for another in the detail-view-navigator template.

I changed the css classes, because the DetailViewNavigatorComponent used in list views didn't cover a whole cell, if the css class stretch-to-fill-parent was not included. Please check, if that still works.

@GabrielInTheWorld in a commit of yours that was merged yesterday you had switched one css class for another in the detail-view-navigator template.

I changed the css classes, because the DetailViewNavigatorComponent used in list views didn't cover a whole cell, if the css class stretch-to-fill-parent was not included. Please check, if that still works.

No problem, everything still works


Compiler crash in AnalyseDeclarationsTransform

This is with 0.27.3:
$ python setup.py build_ext --inplace -vvv
Compiling distributed/schedulerstate.py because it changed.
[1/1] Cythonizing distributed/schedulerstate.py

Error compiling Cython file:
------------------------------------------------------------
...
        self.worker_restrictions = None
        self.resource_restrictions = None
        self.loose_restrictions = False

    @cython.ccall
    def get_nbytes(self):
   ^
------------------------------------------------------------

distributed/schedulerstate.py:440:4: Compiler crash in AnalyseDeclarationsTransform

File 'ModuleNode.py', line 122, in analyse_declarations: ModuleNode(schedulerstate.py:1:0,
    full_module_name = 'distributed.schedulerstate')
File 'Nodes.py', line 417, in analyse_declarations: StatListNode(schedulerstate.py:3:0)
File 'Nodes.py', line 417, in analyse_declarations: StatListNode(schedulerstate.py:153:0)
File 'Nodes.py', line 4461, in analyse_declarations: PyClassDefNode(schedulerstate.py:153:0,
    doc = '...',
    name = 'TaskState')
File 'Nodes.py', line 417, in analyse_declarations: StatListNode(schedulerstate.py:154:4)
File 'Nodes.py', line 361, in analyse_declarations: CompilerDirectivesNode(schedulerstate.py:440:4)
File 'Nodes.py', line 417, in analyse_declarations: StatListNode(schedulerstate.py:440:4)
File 'Nodes.py', line 2367, in analyse_declarations: CFuncDefNode(schedulerstate.py:440:4,
    args = [...]/1,
    modifiers = [...]/0,
    overridable = True,
    visibility = 'private')
File 'Nodes.py', line 2376, in declare_cpdef_wrapper: CFuncDefNode(schedulerstate.py:440:4,
    args = [...]/1,
    modifiers = [...]/0,
    overridable = True,
    visibility = 'private')
File 'Nodes.py', line 2437, in call_self_node: CFuncDefNode(schedulerstate.py:440:4,
    args = [...]/1,
    modifiers = [...]/0,
    overridable = True,
    visibility = 'private')

Compiler crash traceback from this point on:
  File "/home/antoine/miniconda3/envs/dask36/lib/python3.6/site-packages/Cython/Compiler/Nodes.py", line 2437, in call_self_node
    type_entry = self.type.args[0].type.entry
AttributeError: 'PyObjectType' object has no attribute 'entry'
Traceback (most recent call last):
  File "setup.py", line 21, in <module>
    ext_modules = cythonize(extensions)
  File "/home/antoine/miniconda3/envs/dask36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 1039, in cythonize
    cythonize_one(*args)
  File "/home/antoine/miniconda3/envs/dask36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 1161, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: distributed/schedulerstate.py

Hmm, something is wrong here. The conversion from a Python class to an extension type should have been done at that point, based on the @cclass class decorator, so self should be properly typed and not be a plain Python object anymore - which is what makes it fail here.
Could you try to strip this down to a shorter test case that allows me to reproduce this? Please also use the latest Cython master, which has some fixes for the other tickets that you created.


fix: Added a periodic ping mechanism

When user is heavy on pub-sub usecase and in case if there is no message exchange for long - underlying http connection will get timed out. This is to keep it alive by making periodic ping to server.

updated api submodule.

Codecov Report
Base: 82.49% // Head: 82.06% // Decreases project coverage by -0.42% :warning:

Coverage data is based on head (4d02fa0) compared to base (a211a1e).
Patch coverage: 61.22% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #181      +/-   ##
==========================================
- Coverage   82.49%   82.06%   -0.43%
==========================================
  Files          29       29
  Lines        2634     2677      +43
==========================================
+ Hits         2173     2197      +24
- Misses        338      357      +19
  Partials      123      123

Impacted Files
Coverage Δ

driver/http.go
76.36% <0.00%> (-1.27%)
:arrow_down:

driver/internal.go
87.50% <ø> (ø)

driver/types.go
0.00% <ø> (ø)

tigris/client.go
100.00% <ø> (ø)

driver/grpc.go
85.57% <50.00%> (-1.20%)
:arrow_down:

driver/driver.go
92.14% <92.30%> (-0.02%)
:arrow_down:

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.


Get authorized amount from succeeded auth transactions instead of payment.total

The Preauthorized amount used in dashboard's order detail page is using payment.total. But this may be wrong such as when a payment is created but authorize method fails. In this case, a payment did in NOT_CHARGED status but it is not acutally authorized since the authorization process is failed.
So this authorized amount should be calcuated from the succeeded auth transactions.
Pull Request Checklist

[x] Privileged views and APIs are guarded by proper permission checks.
[x] All visible strings are translated with proper context.
[x] All data-formatting is locale-aware (dates, numbers, and so on).
[x] Database queries are optimized and the number of queries is constant.
[x] Database migration files are up to date.
[x] The changes are tested.
[x] The code is documented (docstrings, project documentation).
[x] GraphQL schema and type definitions are up to date.

@maarcingebala Sure, working on it!

@maarcingebala The test is added! Thanks for review.


Exporting via command line circumvents Rcedit execution for Windows x86

Can no longer reproduce it. Must have been a fluke.


Custom tianocore build not retaining EFI variables

Hello,
I am sorry if this is not the place to ask this. I have compiled a custom coreboot ROM for my C720 (cypress version) using the build-uefi.sh script. Everything, as far I can tell, is working properly. I can boot, suspend etc. The only thing not working is that EFI variables are reset everything I reboot the computer. efivar-tester does not report any issues, though.
I have obtained most blobs by extracting them from the most current ROM from the website and gotten the GOP driver from win-raid. I have had to downgrade my gcc to 8.3 to compile the toolchain, but once the toolchain is build, I assume my own gcc version shouldn't matter. The only change that I have applied was using a custom bootsplash image (90% of the reason for building the ROM by myself - my daughter wanted "a cuter bunny" in the boot sequence).
Am I missing some configuration? I have followed the steps that the firmware.sh script does, by disabling WP and setting the range to 0 0. I am not saving the RW_MRC_CACHE or SMMSTORE since I did not find them in the original ROM.
Any help is greatly appreciated.

which coreboot branch are you building from? using my default config?

I'm using the 2020.06.04 branch using the .config.peppy.uefi (although I've been simply calling $ ./build-uefi.sh peppy, which as far as I can tell does the same).

that's because I'm a dummy and forgot to set the default tianocore branch to 2020.06.04. the default branch (uefipayloadpkg) has since changed due to changes on the coreboot side to SMMSTORE v2, and is no longer compatible with the 2020.06.04 coreboot branch.
edit config.peppy.uefi and add this line to the end:
CONFIG_TIANOCORE_REVISION_ID="origin/2020.06.04"
then rebuild with ./build-uefi.sh peppy

You are amazing. Thank you so much!

Now everything works. Closing!


fix loophole for creating person with empty string values

SonarQube analysis reported 7 issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 JsonValidation.java#L297: Replace this usage of System.out or System.err by a logger.
 JsonValidation.java#L346: Either log or rethrow this exception.
 JsonValidation.java#L19: Remove this duplicated import.
 JsonValidation.java#L20: Remove this duplicated import.
 JsonValidation.java#L21: Remove this duplicated import.
 JsonValidation.java#L73: Define a constant instead of duplicating this literal "Missing required field " 15 times.
 JsonValidation.java#L93: Define a constant instead of duplicating this literal " does not exist" 9 times.


adding IsSet function for default value checking

For configuration migration. Exposing IsSet function so that we can check whether a key is manually set by the users.
Signed-off-by: Chengxuan Xing<EMAIL_ADDRESS>

Codecov Report

Merging #34 (d43863f) into main (c202ce9) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head d43863f differs from pull request most recent head a4775a5. Consider uploading reports for the commit a4775a5 to get more accurate results

@@            Coverage Diff            @@
##              main       #34   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           39        39
  Lines         2188      2194    +6
=========================================
+ Hits          2188      2194    +6

Impacted Files
Coverage Δ

pkg/config/config.go
100.00% <100.00%> (ø)

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


feat: add desktop entry for linux systems

This PR just adds a .desktop file that Linux users can use to start Neovide from their Desktop manager.
We can add this to the AUR for Linux so it's installed there.

You should probably add a %F argument to the Exec line, so it can be used to open files as well. Ideally, a mime-type as well.
For an example, the .desktop file for nvim also contains this:
TryExec=nvim
Exec=nvim %F
Terminal=true
Type=Application
Keywords=Text;editor;
Icon=nvim
Categories=Utility;TextEditor;
StartupNotify=false
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;

Good suggestions, thanks @ericonr. :)

I have no idea what this does, but I see no problem adding it ;)


SLF4JLogDelegate calls wrong methods of org.slf4j.Logger

The method log(int level, Object message, Throwable t, Object... params) in SLF4JLogDelegate has several issues:

When the underlying logger is an instance of LocationAwareLogger, the parameter array is not passed to it since its log method is called with null instead of the parameter array.
Otherwise the SLF4JLogDelegate tries to transfer message, params, and t to the underlying SLF4J Logger by calling its according log method with message, t and params, e.g., logger.error(message, t, params) for ERROR level. Unfortunately, SLF4J Logger does not provide log methods accepting a message with parameters AND a Throwable. Therefore SLF4JLogDelegate calls SLF4J Logger's log method with a message and two parameters (t is the first parameter and the Object array params the second one) which breaks the parameter substitution.

Hello,
These issues are fixed in https://github.com/eclipse/vert.x/pull/1282.


WIP - Thunks in Prod bug fix

Coverage increased (+0.8%) to 99.091% when pulling ec1128031081814f0ae7a191ae64f261140d67c9 on fix/thunksProduction into bf36067de415dad4a27f6f0956f3345e5cc23354 on master.

Coverage increased (+0.8%) to 99.091% when pulling e20fc57c7eca07a48008e066f61bf880e06efc19 on fix/thunksProduction into bf36067de415dad4a27f6f0956f3345e5cc23354 on master.

Coverage increased (+0.8%) to 99.091% when pulling 98b9c2e14722e4de5a4bb249928be9c1f8299a3b on fix/thunksProduction into bf36067de415dad4a27f6f0956f3345e5cc23354 on master.

Coverage increased (+0.8%) to 99.091% when pulling 1c5877aaa9a64722adf4a173ba16ec7f641f7ed3 on fix/thunksProduction into bf36067de415dad4a27f6f0956f3345e5cc23354 on master.


The Skybox plugin uses cave sky color on POHs instead of overworld sky color

Type
Incorrect behavior
Operating System
None
OS Version
No response
Bug description
It's supposed to use the overworld sky color for the surface of POHs.
Screenshots or videos
No response
RuneLite version
Runelite version <IP_ADDRESS>
Launcher version: 2.6.7
Logs
No response

Nevermind, seems like the issue is gone.


Sample broken...

Steps to reproduce -

Create a new Doc Intelligence Resource
Try to use the python SDK sample

Expected:

it works? Not sure what the result is

Actual:
Throws:
Inner error: {
"code": "ParameterMissing",
"message": "The parameter urlSource or base64Source is required."

Same issue as here - https://learn.microsoft.com/en-us/answers/questions/1639700/unable-to-use-new-api-for-document-intelligence
Please fix this

Thanks for the feedback, we’ll investigate asap.

Hi @jainparakh , I've tried the layout model sample in this doc(link) but didn't see any errors. Based on the error you got, I looks the issue is from using begin_analyze_document(). Can you provide the package name, package version and code snippet for how you're using begin_analyze_document()? These would help us to reproduce and investigate the issue.
In general, if you're analyzing a doc from local, you can pass it directly or wrap it to a AnalyzeDocumentRequest object.
e.g.
with open(path_to_sample_documents, "rb") as f:
    poller = document_intelligence_client.begin_analyze_document(
        "prebuilt-layout",
        analyze_request=f, # pass it directly
        content_type="application/octet-stream",
    )
result = poller.result()

with open(path_to_sample_documents, "rb") as f:
    poller = document_intelligence_client.begin_analyze_document(
        "prebuilt-layout",
        AnalyzeDocumentRequest(bytes_source=f.read()), # pass it to "AnalyzeDocumentRequest"
    )
result = poller.result()

Note: we've changed the parameter name in "AnalyzeDocumentRequest" from "base64_source" to "bytes_source" since azure-ai-documentintelligence package version 1.0.0b2 as we expect the input in bytes, not in base64 encoded.
If you're analyzing a doc from remote, you can pass the url in "AnalyzeDocumentRequest" like this:
poller = document_intelligence_client.begin_analyze_document(
    "prebuilt-layout", AnalyzeDocumentRequest(url_source=url)
)


Mark the source_object argument to the ThreadedSocketService::run as …

…nullable
Just like everywhere else.
Fixes https://github.com/gtk-rs/gio/issues/300

CC @EPashkin @GuillaumeGomez

@sdroege Thanks, 👍


Corner Rounding, Offset and Outline Operations

Hello, it would be nice to have the operations of filleting, offset and boolean implemented on gdsfactory components. These were present in previous versions of gdsfactory. I think they have been removed in v8.

Filleting was implemented through gdstk polygons, but in klayout there should be an analogous function. I could not find anything in v8.
The offset operation is mentioned in the component tutorial through the p1.sized() function, but the implementation is pretty cumbersome.
The outline operation was present in previous versions and is just the combination of offset and not operations. It is not crucial but I found it neat to use.
It would be nice to have these operations directly acting on gdsfactory components. Even if I have to deal with simple polygons, I find it much better to use gdsfactory components rather than moving to gf.kdb.DPolygon. Thanks in advance!

Fillet is implemented with (D)Polygon.round_corners https://klayout.de/doc/code/class_DPolygon.html#method57
The reason the offset is not as easy is because imo gdstk uses rather restrictive assumptions for getting the outline.
How do you size? How do you handle sharp corners? How do you handle self-intersecting polygons? And so on.
I think this would be quite hard to define a sane default behavior and generally requires individual adjustments per component.
but generally an outline (of a layer) can happen two ways:

r = gf.kdb.Region(c.shapes(layer_index)))
c.shapes(layer_index).insert(r.sized(outline_in_dbu)-r) # not r.sized vs r.size; the latter will change in place and therefore not work

if it should be non-recursive
if recursive

r = gf.kdb.Region(c.begin_shapes_rec(layer_index)))
c.shapes(layer_index).insert(r.sized(outline_in_dbu)-r)

This is the standard isotropic sizing case. Note this can cause problems with self-intersecting polygons. For safe usage a minkowski sum is most likely necessary.

maybe it would be useful to add functions that are compatible with the old behavior though? and we can add options to customize as necessary?

Yes, I apologize for the documentation not being yet as extensive as it was in version 7.
However, these operations are now much easier due to the enhanced functionality and usability of the Klayout classes.
I can some examples on how to do this

We added some examples in https://github.com/gdsfactory/gdsfactory/pull/2845
let us know if you find further improvements

Hello, thanks for the explanations and for adding the examples to the tutorials, I found them pretty useful and they allowed me to do what I wanted. I also understand the concerns about offsetting, but it is very useful to have a simple way to handle non-problematic cases, as shown in the tutorial. Just a couple more questions:

Is there a possibility to round different corners of a polygon with different radii? I could not find this functionality in (D)Polygon.round_corners, I was wondering if there is any possibility to implement it.
It seems to me that booleans and grid function do not have the cell decorator anymore, thus they produce unnamed components. Am I missing something? Is this made on purpose?
Thanks a lot in advance!

Hello @Alessio-Zicoschi,
Klayout does support that natively, no. I onlu supports rounding for inner vs outer radii (I think defined as <180° opening vs bigger).
If you want more rounding options, I am afraid you'll either have to cut out the pieces you want manually or export and afterwards import to something like shapely.
If you absolutely want to stay in KLayout, I guess you could try to create partial paths and then round them and then stitch them back together. But that seems like a lot of work for what other packages can do better most likely


pefile swapping Google Code repo for Github.

In 2015 Google retired it's online code repo. As a result pefile moved to Github - https://github.com/erocarrera/pefile/. I have gone ahead an updated the dockerfile to include the new destination of the pefile. In addition I have computed the new SHA256 for the file which has been included. Finally the .tar.gz during decompression creates the directory pefile-pefile-1.2.10-139 which I have also updated on the dockerfile.
I hope this helps!

This is superseded by changes made by @wzod
Thanks anyway!


Draft/review: proposed Pythia integration

closing the PR since there is a new branch for this change.


tcp_proxy: remove support for v1 routes

Description: This PR removes the previously deprecated v1 routes support in the TCP Proxy implementation. See #4622, #4487 and #4430 for more information.
Risk Level: Med
Testing: Existing tests suffice
Docs Changes: Added feature removal notice to version_history.rst
Release Notes: NA
Signed-off-by: Venil Noronha<EMAIL_ADDRESS>/cc @ggreenway @rshriram

Unfortunately, (and I feel bad saying this after all the back and forth about when we can do this), I'm not sure we can delete this yet, because in FilterChainMatch (the new way of doing this), we still have:
  // [#not-implemented-hide:]
  repeated core.CidrRange source_prefix_ranges = 6;

So if we delete this, there's no way to configure routing based on source address (to the best of my understanding).
@rshriram Does this seem correct? Or am I missing something?

So if we delete this, there's no way to configure routing based on source address (to the best of my understanding).

FYI this was recently asked about: https://github.com/envoyproxy/envoy/issues/4535#issuecomment-427684316. Perhaps we can just get it implemented?

not stale.

IMHO, we need at least one release that supports both: the new-style filter chain matching based on source ports/IPs (#4457) and old-style v1 tcp proxy, which this PR removes.

sorry I missed this. Yes, we will miss source matching. But I don't think anyone is using it are they? docs are hiding source match. Istio isn't using it either for sure.
We have been saying that v1 is going to be deprecated and I view this as part of v1 removal.

I mean v1 api is going away.. and this is part of that process

not stale.

This PR is synced with master now.

/retest

@ggreenway @PiotrSikora  I haven't been following the history here. Can we merge this now?

I quick check shows no change in the blockers for this: source_prefix_ranges is still not implemented.

OK then I will close this now since it's not going to get merged any time soon.


C#: Fix very slow build log update in the editor

I noticed today the editor would hang for a few seconds after finishing building while updating the build log text. Not sure what's happening exactly as I didn't experience this before, but it no longer hangs after this change.

Thanks!
Is this relevant for 3.2 too?

Ugh, yes. I forgot. I think it auto cherry-picking should work. Let me know if that's not the case and I'll open a PR for it.

Cherry-picked for 3.2.4.


iptables in istio-init fails under OpenShift 4

Bug description
Bookinfo fails to start under OpenShift 4. istio-init throws;
+ iptables -t nat -N ISTIO_REDIRECT
iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
+ dump
+ iptables-save
+ ip6tables-save

I've modified the configmap for istio-sidecar-injector per other issues to include;
      securityContext:
        capabilities:
          add:
            - NET_ADMIN
        privileged: true
        runAsUser: 0
        runAsNonRoot: false
        procMount: Default

Expected behavior
Pods should start
Steps to reproduce the bug
Deploy istio operator (oc apply -n istio-operator -f https://raw.githubusercontent.com/Maistra/istio-operator/maistra-0.10/deploy/servicemesh-operator.yaml) following the standard guide. Then deploy bookinfo.
Version (include the output of istioctl version --remote and kubectl version)
[root@localhost ~]# istioctl version --remote
client version: version.BuildInfo{Version:"1.1.5", GitRevision:"9b6d31b74d1c0cc9358cc82d395b53f71393326b", User:"root", Host:"3e29fde4-6c3f-11e9-b00d-0a580a2c0205", GolangVersion:"go1.10.4", DockerHub:"docker.io/istio", BuildStatus:"Clean", GitTag:"1.1.4-10-g9b6d31b"}
citadel version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
egressgateway version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"4408997686d86a157f006403acfd46508d166f8c", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
galley version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
ingressgateway version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"4408997686d86a157f006403acfd46508d166f8c", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
pilot version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
policy version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
sidecar-injector version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
telemetry version: version.BuildInfo{Version:"0.10.0-1", GitRevision:"a998810d2048a4c4acf206613f9c789a0df7a5aa", User:"redhat", Host:"redhat", GolangVersion:"go1.11.4", DockerHub:"brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888/openshift-istio-tech-preview", BuildStatus:"Clean", GitTag:"unknown"}
[root@localhost ~]# oc version
Client Version: version.Info{Major:"4", Minor:"1+", GitVersion:"v4.1.0-201905062232+ef90487-dirty", GitCommit:"ef90487", GitTreeState:"dirty", BuildDate:"2019-05-07T03:33:12Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.4+34f13a8", GitCommit:"34f13a8", GitTreeState:"clean", BuildDate:"2019-05-09T21:13:37Z", GoVersion:"go1.11.8", Compiler:"gc", Platform:"linux/amd64"}

How was Istio installed?
Operator
Environment where bug was observed (cloud vendor, OS, etc)
OpenShift 4.0 rc1 in AWS, stock install
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[X] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
Additionally, please consider attaching a cluster state archive by attaching
the dump file to this issue.

Could this be a duplicate of https://github.com/istio/istio/issues/12948 and https://github.com/istio/istio/issues/4500 ?

@esnible No, they are not the same.  The other issues are related to the need for privileged containers which the Maistra distribution handles whereas this is a bug in the OCP 4.1 rc1 release as they have switched to nftables on the host and not correctly set up the iptables for the containers.
The OCP team expect iptables to continue working, see https://issues.jboss.org/browse/MAISTRA-410 for a workaround using a daemonset until this is fixed.

The workaround not working, mentioned by knrc :-(
Before daemonset from upstream istio 0.12:

iptables -t nat -N ISTIO_REDIRECT
iptables v1.6.0: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

After  installing the daemonset :

iptables -t nat -A ISTIO_REDIRECT -p tcp -j REDIRECT --to-port 15001
iptables: No chain/target/match by that name.

Not able to demo to our customer: Openshift 4.1 with Istio :-(

@knrc can you get this issue on the right person's plate?
Cheers
-steve

@sdake The issue is with the istio-init container, the community one expects iptables to be present on the host whereas OpenShift 4 uses nftables.
On the maistra side we have two init-containers, one with the older iptables utility (used with iptables hosts) and a second with the newer iptables utility (used with nftables hosts) however we are now switching completely over to CNI since the utility will come from the host itself.
I've raised this in a few meetings, especially when the topic of iptables/nftables arises, as we will start to see this more often as other kubernetes distributions also move to nftables.

The documentation has been fixed in #4905 to document that CNI must be used instead of proxy-init on OpenShift 4

@brian-avery https://github.com/istio/istio/pull/4905 points to a PR that removes a couple of un-related lines imo, do you remember which was teh original issue you were referring to?


Problems with loading RKE1 Configuration iframes in Dashboard

What kind of request is this (question/bug/enhancement/feature request): bug
Steps to reproduce (least amount of steps as possible):

deploy a single-node local RKE cluster with rancher/rancher:master-head d44698d
Go to Cluster Managment in Explorer UI and select RKE1 Configuration pane

Result:

On attempt to see Cloud Credentials it is showing very often (I'd say 5 of 10 tries) a blank page with Loading... text and the content is not loaded after a while - one have to switch to another entry in this RKE1 submenu and it will eventually recover on a new attempt.

Expected Result:

Loading... is expected but after a while the data/iframe should be dispayed

Other details that may be helpful:

this stands for RKE Templates as well, Node Templates are usually loaded in the end but it takes a bit longer
the Cloud Credentials are shown immediately in Ember UI
doesn't matter if there are some credentials stored or not
not a network issue - local cluster is running virtualized on my desktop / same results with local cluster in AWS
I see this Error in Developer's Console (no idea if it is related):

vue-router.esm.js:1958 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location: "/c/local/manager/pages/cloud-credentials".
    at $t (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:66772)
    at e.Ut.confirmTransition (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:69738)
    at e.Ut.transitionTo (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:69067)
    at e.replace (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:72431)
    at https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:77403
    at new Promise (<anonymous>)
    at Qt.replace (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:77366)
    at f.toggle (https://releases.rancher.com/dashboard/latest/app.d1dbc3d….js:2:1177011)
    at click (https://releases.rancher.com/dashboard/latest/app.d1dbc3d….js:2:1882774)
    at Qt (https://releases.rancher.com/dashboard/latest/commons/app.fbf38c3….js:2:173683)

Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): rancher/rancher:master-head d44698d
Installation option (single install/HA): single/HA

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): local custom RKE1 cluster (in my case)
Machine type (cloud/VM/metal) and specifications (CPU/memory): any
Kubernetes version (use kubectl version): any

The error message can be ignored.
I could not reproduce this - a change has gone in as part of another PR which I think might have resolved this issue - can you please verify again and let me know if you are still able to reproduce it.

Indeed, I couldn't reproduce this anymore on current rancher/rancher:master-head bfdeb22. All the iframe entries in RKE1 Configuration menu are loaded immediately and corresponding data are shown. Close.

I am experiencing this same issue on a single-node/HA installation with rancher 2.6.2
This is in 3 different installations and is true not only for rke templates, node templats and custom clusters, but also for any other cluster creation variant (vsphere, linode, aws, etc.)
RKE2 cluster creation works just fine.
This issue is present since at least 2 weeks - prior to that, it was working fine with rke1 clusters.


GEODE-9936: Modified multi-key commands for wrong type key

For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[x] Is your initial contribution a single, squashed commit?

[x] Does gradlew build run cleanly?

[x] Have you written or updated unit tests to verify your changes?

[NA] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

In addition to the comments I left, this test if added to AbstractZInterStoreIntegrationTest also passes with native Redis but fails with geode-for-redis:
  @Test
  public void shouldReturnWrongTypeError_withNonSortedSetKeyAsThirdSourceKeyAndNonExistentSortedSetAsFirstSourceKey() {
    jedis.zadd(KEY2, 1, "value2");

    final String STRING_KEY = "{tag1}stringKey";
    jedis.set(STRING_KEY, "value");

    assertThatThrownBy(() -> jedis.zinterstore(NEW_SET, "{tag1}nonExistentKey", KEY2,
        STRING_KEY)).hasMessageContaining(RedisConstants.ERROR_WRONG_TYPE);
  }

This can be fixed by changing the for loop in the zinterstore() method to the following:
    for (ZKeyWeight keyWeight : keyWeights) {
      RedisSortedSet set =
          regionProvider.getTypedRedisData(REDIS_SORTED_SET, keyWeight.getKey(), false);

      if (set != NULL_REDIS_SORTED_SET) {
        sets.add(set);
      }
    }

Forced pushed to rebase


ENH Create Requirements::customScriptWithAttributes

Allows custom type and crossorigin attributes when using the new method Requirements::customScriptWithAttributes, as suggested here: https://github.com/silverstripe/silverstripe-framework/pull/11061#discussion_r1402892340/.
Resolves #11060

Hi, I believe I fixed the errors from the last workflow.

Requests should be resolved in latest commit: 3f909d97e2508cf13669dd8e731a7fcbae88c159

Hi, I believe I fixed the errors from the last workflow.

Cant seem to reply to the left over ['content'] issue. But ill push a fix to this with a test for uniquenessID so this sort of issue is detected in future PRs.

Hi, I believe I fixed the errors from the last workflow.

Oops, misread that as space rather than new line. Pushed a new fix now

Something's not quite right with the $uniquenessID, it's showing custom attributes if a non attributes version is called after an attributes version with the same uniquenessID
    // PageController.php

    protected function init()
    {
        parent::init();
        Requirements::customScriptWithAttributes('console.log("Hello World abc!");', [
            'crossorigin' => 'abc'
        ], 'my-script');
        // this works correctly, it will overwrite the 'abc' script
        Requirements::customScriptWithAttributes('console.log("Hello World def!");', [
            'crossorigin' => 'def'
        ], 'my-script');
        // this incorrectly will include the custom crossorigin attribute
        Requirements::customScript('console.log("Hello World ghi!");', 'my-script');
    }

Gives an unexpected result:
<script type="application/javascript" crossorigin="def">//<![CDATA[
console.log("Hello World ghi!");
//]]></script>

Should be:
<script type="application/javascript">//<![CDATA[
console.log("Hello World ghi!");
//]]></script>

This makes sense, there isnt any clearing of the customScriptAttribute when Requirements::customScript is called. I'll push a fix to this with a test.

Cheers for the contribution, this will be released in 5.2.0

Cheers for the contribution, this will be released in 5.2.0

Yay! Thank you for the support on this PR :grin:!


Better test sentences for all 3 difficulties

The current sentences in easy.txt, moderate.txt and heroic.txt arent the best ( easy.txt especially :') ).
Overhaul these files with new test strings!
Some generic guidelines:

easy.txt: Must contain simple english words with no punctions or capitalisation and max word length under (or equal to) 8.
moderate.txt: All criteria of easy.txt + basic punctuation like , . ? ; and minimal capitalisation
heroic.txt: All criteria of aforementioned + trickier punctuation like " ' (words like don't, can't, mustn't, whomst've, whomst'd've'ly'yaint'nt'ed'ies's'y'es)(ok maybe not that last one)

BONUS POINTS: create an implementation where the string for easy mode is a string of randomly generated simple words in random order (Something akin to Monkeytype!)

@Geeker357 I've assigned you to 2 issues already atm. Leaving this open for the others :)

can i get this

Go ahead @Keshav1105

can i work on this?

Go ahead! It's open access season!


[BUG]: nlp-sentencize wrongly breaks sentences in quotation marks

Description
As the title says.
Here are some quick examples
console.log(sentencize('I said "Look out" right before he banged his head'));
> [ 'I said "Look out" right before he banged his head' ] // This is correct

console.log(sentencize('I said "Look out!" right before he banged his head'));
> ['I said "Look out!"', 'right before he banged his head'] // This should be one sentence

From looking at the code it seems to be doing exactly as it's told, but doesn't seem quite right.

If it's a suffix aka " and previous token is a punctuation mark .!?, then split.
Related Issues
#3013
Questions
No.
Demo
No response
Reproduction
console.log(sentencize('I said "Look out!" right before he banged his head'));
> ['I said "Look out!"', 'right before he banged his head']

Expected Results
['I said "Look out!" right before he banged his head']

Actual Results
['I said "Look out!"', 'right before he banged his head']

Version
0.2.2
Environments
Node.js
Browser Version
No response
Node.js / npm Version
v22.9.0
Platform
Windows 11
Checklist

[x] Read and understood the Code of Conduct.
[x] Searched for existing issues and pull requests.

The Tool is likely splitting based on punctuation marks, it seems to be applying the case where the sentence ends with one of those punctuation marks, which in such cases isn't true.
The logic could be updated to check if the punctuation mark (!, ., ?) is within a quotation.


PubSub : add AckReplyConsumer to PubsubMessage

Currently for asynchronous subscribers, they must implement MessageReceiver ...
Current interface ...
public interface MessageReceiver {
    void receiveMessage(final PubsubMessage message, final AckReplyConsumer consumer);
}

The decoupling of PubsubMessage and AckReplyConsumer for this interface provides no benefit to developers and requires another object to contain both AckReplyConsumer and PubsubMessage for easy processing, etc.
New interface ...
public interface MessageReceiver {
    void receiveMessage(final PubsubMessage message);
}

AckReplyConsumer then can be retrieved from a PubsubMessage via a new method getAckReplyConsumer().
This provides a cleaner interface contract and allows a developer to dispatch the PubsubMessage to various handler methods as a single object.
An an even cleaner alternative would be to add the ack() and nack() methods to the PubsubMessage and remove the AckReplyConsumer altogether, which is the approach that spring-cloud-gcp has taken.

As @ajaaym points out in https://github.com/googleapis/google-cloud-java/issues/3816 PubsubMessage is a proto object, so I don't believe this can be implemented.


⚠ Samsung has degraded performance

In c18b81a, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2617 ms

Resolved: Samsung performance has improved in e051e87.


accountdetailsplus not working (or is it just me?)

the status changing to dnd online and stuff works
but the user profile doesnt
help

Not a bd issue, please close this


add: cuda gpu capable images

I want to add some work that has been done to add nvidia gpu capabilities into the developer images.
Original work here:
https://github.com/redhat-na-ssa/demo-ocp-gpu

I admit this is a YOLO PR.
I'm not really clear on how you might want this PR structured as I have some ideas how I would refactor to make this a little more modular.
Looking for feedback around what liberties I can take without breaking your current workflows.


Document get secrets command cleanly

We need to document the secret labels used by the get secrets command.
https://cnoe.io/docs/reference-implementation/installations/idpbuilder/usage This kinda describes it but not explicit enough.

https://github.com/cnoe-io/website/pull/60


Missing byline leaves empty space

A screenshot is better than a thousand words.
Even when the Artwork#byline is set to null the space reserved for it remains in place. One possible improvement would be centering the title vertically when the byline is not available.

While the initial issue is fixed, this is causing an unwanted overlap between attribution and byline if title is null or set to an empty string.


AADSTS700054: response_type 'id_token' is not enabled for the application

Have followed this article above to create a web application, and when trying to login I am getting this error and not clear why, from reading online I need to have 'Implicit Flow' enabled which it is as per above.
Any help as to the cause or solution would be greatly appreciated.

Document details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 670bf490-966b-e72e-ab6c-1d189f9a1f58
Version Independent ID: a55b7372-87e9-c760-1a37-57728171395d
Content: Tutorial - Register your applications in Azure Active Directory B2C
Content Source: articles/active-directory-b2c/tutorial-register-applications.md
Service: active-directory-b2c
GitHub Login: @davidmu1
Microsoft Alias: davidmu

I am looking into this on my end and checking on it with the product team. In the meantime I would suggest opening a one-time free technical support ticket to have this investigated. Please send your Azure Subscription ID to<EMAIL_ADDRESS>and I will send back instructions to have a free support ticket created.

@StickNitro I have escalated this issue to the product team. In the meantime if you can, would you be willing to post this same question to MSDN for visibility? https://social.msdn.microsoft.com/Forums/en-US/home?forum=WindowsAzureAD

Your error code begins with AADSTS, meaning you're hitting the Azure AD service, and not Azure AD B2C. Please ensure that your request URL has the Azure AD B2C policy specified. I would also suggest using b2clogin.com instead of login.microsoftonline.com

Hi @StickNitro ,
As Parakh said, please try using B2Clogin and see if it resolves the issue. If you have further questions feel free to open a thread on MSDN and we can diagnose, or email your subscription ID to<EMAIL_ADDRESS>and I will help you open a free support case.