text:
Dropdown closes immediately using Space key on Firefox

components: Dropdown
reactstrap version #7.0.2 but confirmed on latest too.
import method es
react version 16.2.0
bootstrap version 4.3.1

What is happening?
When using the keyboard to tab to the dropdown, then pressing Space, the dropdown opens then closes.
What should be happening?
The same behavior as Chrome/Safari/IE: The dropdown should stay open until a selection is made or the menu is navigated away from.
Steps to reproduce issue

https://reactstrap.github.io/components/dropdowns/
Tab to the dropdown menu example.
While it is focused, press Space.
You should see it open and close right away.

Error message in console
N/A
Code
The example from the website shows the issue - https://reactstrap.github.io/components/dropdowns/
Thanks!

I’ve had a quick look at this. The problem does not appear to be with the dropdown component, instead with the button component triggering an onClick (therefore firing the toggle function to change isOpen prop). By the looks of things this is intended accessibility functionality from the browser.
What would be the expected behaviour of this to allow best accessibility?

I believe the intended functionality should be for the dropdown to remain open if you press Space with the button focused. This would allow keyboard users to view and select options from the dropdown. This is the behavior in other browsers except for Firefox.

@res33100 do we have any further update on this issue?

@res33100 do we have any further update on this issue?

Nothing from me, I have not looked at it since putting this issue in as it was for a previous project.

Hmm this seems similar to an issue I am having, but on Chrome. I have an Input in my DropdownToggle and when I push space, the Dropdown closes.
My hack around it is to preventDefault and manually change the input... but I didn't really expect this behaviour in the first place. It makes sense for accessibility but maybe there ought to be a way to turn it off, when you don't want a classic button behaviour as your toggle?

After migrating to Bootstrap 5, this issue is still valid? Just tested here, and pressing space worked perfectly on Firefix.

authors: ashwingattani hedgecox matttk res33100 ryan3E0 watinha

repo: reactstrap/reactstrap


text:
Programmatically changing SetTemporary from script does not update in Scene Structure UI.

Create a script that adds a new entity to the scene.
Have the script call SetTemporary(true) for the new entity.
While having the Scene Structure window open, execute the script.

Observe that the new entity pops in to the Scene Structure window, but it will show up as non-temporary.

Close and reopen the Scene Structure window.

Observe that the newly created entity is now properly shown as temporary.

This is the same issue as https://github.com/realXtend/naali/issues/55

source: gharchive/issue

repo: realXtend/naali

license_type: permissive

license_source: github-api


text:
Make Jenkins stages parallel (dividing kitchen test stage and integration tests to multiple jobs so that multiple Jenkins slave can perform tasks in parallel)

Parent task #32

See "Parallel From List"
https://jenkins.io/doc/pipeline/examples/

ansible-role-localtime is a good test case because it is the simplest, and the shortest to run,  role. The time of kitchen test stage equals to the sum of each kitchen test $platform but it would equal to the longest test time in the tests.

i have not heard of any progress on this one and the bottleneck is now the monolithic build process, we need the issue to be fixed soon.
as discussed in the weekly review, the issue is assigned to @mitsururike

ERROR: The ?stage? step must not be used inside a ?parallel? block.
with Pipeline plugin ver. 2.1.
it needs to be upgraded to 2.5 which requires Jenkins >= 2.7.3.

authors: mitsururike trombik

repo: reallyenglish/ansible-role-example

license: isc

license_source: bigquery


text:
Bug: Object reset to default empty state after update

When i'm using realm.add(object, update: true) to update an existing object, it causes the object to have empty values the next time i query it. If i use this method it works fine every time and always queries with the right values afterwards.
try realm.write {
    if realm.object(ofType: ChecklistObject.self, forPrimaryKey: list.id) == nil {
        realm.add(object, update: true)
    } else {
        realm.create(ChecklistObject.self, value: dict, update: true)
    }
}

Object:
class ChecklistObject: Object {
    dynamic var id = ""
    dynamic var name = ""
    dynamic var subtitle: String? = nil
    dynamic var authorId: String? = nil
    dynamic var author: UserObject?
    dynamic var index = 0
    dynamic var listImageUrl: String? = nil
    dynamic var shareImageUrl: String? = nil
    dynamic var headerColorHex: String? = nil
    dynamic var createdAt: Date? = nil
    dynamic var updatedAt: Date? = nil
    dynamic var coverImageData: Data? = nil

    let items = List<ChecklistItemObject>()

    override static func primaryKey() -> String? {
        return "id"
    }
}

Thanks for getting in touch with us. I couldn't reproduce this bug.
Since the code definitions are incomplete, I simplified your model. Here is what I did:
class ChecklistObject: Object {
    dynamic var id = ""
    dynamic var name = ""

    override static func primaryKey() -> String? {
        return "id"
    }
}

let realm = try! Realm()
        // Add the object
        try! realm.write {
            let obj = ChecklistObject()
            obj.id = "a"
            obj.name = "test"
            realm.add(obj)
        }

        print("First attempt: Object: \(realm.object(ofType: ChecklistObject.self, forPrimaryKey: "a")!)")

        // Update the object
        let obj2 = ChecklistObject()
        obj2.id = "a"
        obj2.name = "hello"
        try! realm.write {
            realm.add(obj2, update: true)
        }

        // Get the object with ID 'a'
        print("Second attempt: Object: \(realm.object(ofType: ChecklistObject.self, forPrimaryKey: "a")!)")

This results in the output:
First attempt: Object: ChecklistObject {
	id = a;
	name = test;
}
Second attempt: Object: ChecklistObject {
	id = a;
	name = hello;
}

If you could kindly point out where your code differs from my attempted reproduction case, I can investigate further. Even better would be a project we could run to see the behavior you're reporting for ourselves.

I'm going to close this issue due to no response. Please feel absolutely free to reopen if you have more questions.

authors: austinzheng bevbomb kishikawakatsumi

repo: realm/realm-cocoa


text:
deleteRealmIfMigrationNeeded not working

In my realm configuration I am using:
       var configuration = Realm.Configuration(fileURL: appURL, schemaVersion: 0)         configuration.deleteRealmIfMigrationNeeded = true
And yet I see the following errors in my logs:
Realm database error. Error Domain=io.realm Code=10 "Migration is required due to the following errors:

Primary Key for class 'FalxEventEntity has been added.
Property 'FalxEventEntity.processedByAggregator' has been added.
Property 'FalxEventEntity.primaryID' has been added." UserInfo={NSLocalizedDescription=Migration is required due to the following errors:
Primary Key for class 'FalxEventEntity has been added.
Property 'FalxEventEntity.processedByAggregator' has been added.
Property 'FalxEventEntity.primaryID' has been added., Error Code=10}

Expected Results
Because of the schema mismatch it should just delete the schema as I specified deleteRealmIfMigrationNeeded = true
Actual Results
It does not delete realm, instead I get the realm database error

The error in question should definitely be suppressed by deleteRealmIfMigrationNeeded, which makes me think that you happen to be opening the Realm before you've enabled that configuration option.
Can you set a breakpoint (or add a print statement) before you do configuration.deleteRealmIfMigrationNeeded = true and verify that it is hit before you see the error raised?

I'm not able to reproduce it consistently, I noticed it on the logs of some of our devices, I wonder if something is stopping it form performing a migration. I see the error every time we try to save an event, which is odd. Also odd that I don't see it on all devices.

authors: bdash yusufoos


text:
Failed to load dynamic library with flutter_test

What happened?
When running tests with flutter_test on macos, the following error is thrown:
Failed to load dynamic library 'librealm_dart.dylib'
The workaround was to install realm_dart to pubspec.yaml and run dart run realm_dart install
Now the error becomes:
Failed to load dynamic library 'realm.framework/realm'
The workaround was to edit _getAppDirectory in realm_core.dart and replace
if (!isFlutterPlatform) {
with
if (!isFlutterPlatform || Platform.environment.containsKey('FLUTTER_TEST')) {
I don't know if this is the best practice but can something like this be added so we can run flutter test with realm on the command line?
Repro steps
run flutter test on a test file that import realm
Version
3.3.4
What Realm SDK flavor are you using?
Local Database only
What type of application is this?
Flutter Application
Client OS and version
macOS 12.6 21G115 darwin-arm
Code snippets
import 'package:realm/realm.dart';
void main() {
Realm.logger.info('is flutter? $isFlutterPlatform');
Realm(Configuration.inMemory([]));
}
Stacktrace of the exception/crash you're getting
No response
Relevant log output
Invalid argument(s): Failed to load dynamic library 'realm.framework/realm': dlopen(realm.framework/realm, 0x0001): tried: '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/./realm.framework/realm' (no such file), '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/../../../realm.framework/realm' (no such file), '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/Frameworks/realm.framework/realm' (no such file), '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/./realm.framework/realm' (no such file), '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/../../../realm.framework/realm' (no such file), '/Users/xxx/.fvm/versions/stable/bin/cache/artifacts/engine/darwin-x64/Frameworks/realm.framework/realm' (no such file), 'realm.framework/realm' (no such file), '/System/Library/Frameworks/realm.framework/realm' (no such file)

Hi @dossiman
Thank you for trying out our beta. The issue you face is already known (#791, #870) and there is a PR (#929) with a fix that didn't get reviewed in time for 0.5.0+beta. I expect it to be merged before the next release.

waiting for the fix in #929

authors: dossiman nielsenko

repo: realm/realm-dart


text:
Add a new sample app

Demo app using Realm-Kotlin Multiplatform SDK
🎨 UI: using Jetpack compose
---- Shared ---
📡 Network: using Ktor & Kotlinx.serialization
💾 Persistence: using Realm Database
Screenshots

I only have one comment and I don't think it's a great deal so 👍 from me

merged in https://github.com/realm/realm-kotlin-samples

source: gharchive/pull-request

authors: edualonso nhachicha

repo: realm/realm-kotlin


text:
region playlist does not retain playlists bug

After a few minutes all playlists are gone from the Region Playlist. I love the region playlist, I hope there is a fix. Should I try out the beta?
Reaper v6.78 - March 14 2023
SWS v2.12.1.3 featured build (February 6, 2021)
Mac OSX Monterery 12.6.3
MacBookPro 2015 15"

Could be related to #1743 (region playlist and track notes use a similar storage mechanism), first seen at the beginning of the month. There's also been a very suspicious crash report (SWS auto-color, same data storage method) pointing to that.
Need to find a reliable way to trigger the data loss to investigate. Playlist didn't disappear when I created 2 region playlists in a blank project with 2 regions, closed the playlist window, waited 15 minutes, re-opened the playlist window.

Should I try out the beta?

Generally yes: we've made a lot of fixes since 2.12. And if the bug ever causes a crash it would be easier to look into reports made with the latest version rather than a 2 years old version.

As a temporary fix I went back to Reaper v6.71 - November 28 2022 and so far has the problem not occurred again.

Closing as duplicate of #1743. I've observed both notes and region playlist getting lost at the same time via undo so now I'm convinced it's the same problem. Further findings should be posted there.

authors: cfillion jnlundberg

repo: reaper-oss/sws

license: MIT


text:
Fix master JS

As discussed in #97, current master has not js source up to date.

I have a fix locally on the style branch. The commits will land very soon.

authors: MoOx wokalski

repo: reasonml-community/bs-react-native

license: mit


text:
superfluous error when seeing "_build" in sub-app

A minor issue while working with umbrella projects:  While porting an existing umbrella project to rebar3 I would cd to the directory of a subapp and do various invocations of rebar3 compile and rebar3 clean to get things going.  When I then go back to the main directory and do rebar3 release, I am greeted with an error like...
===> Missing beam file myapp_app <<"/home/goertzen/test/myapp/apps/myapp/_build/default/lib/myapp/ebin/myapp_app.beam">>

Everything seems to work correctly in the end, but that message definitely makes you think that it did not.
Manually going into the app and wiping out the _build directory removes the error message.  Related question: is there something stronger then clean that will wipe this dir out for me?
Steps to reproduce:
goertzen@g550jk ~/test $ rebar3 new release
===> Writing myapp/apps/myapp/src/myapp_app.erl
===> Writing myapp/apps/myapp/src/myapp_sup.erl
===> Writing myapp/apps/myapp/src/myapp.app.src
===> Writing myapp/rebar.config
===> Writing myapp/config/sys.config
===> Writing myapp/config/vm.args
===> Writing myapp/.gitignore
===> Writing myapp/LICENSE
===> Writing myapp/README.md

goertzen@g550jk ~/test $ cd myapp/apps/myapp/
goertzen@g550jk ~/test/myapp/apps/myapp $ rebar3 compile
===> Verifying dependencies...
===> Compiling myapp

goertzen@g550jk ~/test/myapp/apps/myapp $ rebar3 clean
===> Cleaning out myapp...

goertzen@g550jk ~/test/myapp/apps/myapp $ cd ../..
goertzen@g550jk ~/test/myapp $ rebar3 release
===> Verifying dependencies...
===> Compiling myapp
===> Starting relx build process ...
===> Resolving OTP Applications from directories:
          /home/goertzen/test/myapp/_build/default/lib
          /home/goertzen/test/myapp/apps
          /usr/local/lib/erlang/lib
===> Missing beam file myapp_app <<"/home/goertzen/test/myapp/apps/myapp/_build/default/lib/myapp/ebin/myapp_app.beam">>
===> Resolved myapp-0.1.0
===> Dev mode enabled, release will be symlinked
===> release successfully created!
goertzen@g550jk ~/test/myapp $

No, there isn't anything stronger than clean that would get rid of a sub-app's _build.
That warning message is from relx. It is one I'm thinking about getting rid of for most cases. It is warning that it found an app that has a list of modules that doesn't correspond to beams found for that app. In this case it doesn't ultimately matter since it also finds a full copy of myapp to use.

authors: goertzenator tsloughter


text:
Support for QR codes

Hi,
Does esc2html command support QR codes?

Not currently. The parser knows how to skip past the commands, but we don't use a library to turn them into images for HTML output yet.
We have one test file (qr-code.bin from escpos-php) which uses a 2D data command for QR codes, but shows only blanks.

It would be possible to add support for some types of QR code fairly easily.
Do you have any example binary files that contain QR codes which could be used for testing such a feature?

Hi @mike42
I have ended up generating QR codes as images and then adding them as images.
Here is an example of escpos file with QR code:
qr_code.escpos.gz

@bblimke  where do you add them? And how you distiguish the QR inside the lines? Could you share some code please?

@gelinger777 QR is not supported and I don't remember how to distinguish them. I ended up producing escpos files with images of QR codes instead of QR codes.

problem is that different manufacturers have different commands which should be sent before the  qr code string and after it. If we could achive at least that on epson/metapace and 2 other major manufacturer's qr codes would be  detected and replaced with base64 images would be great imho...

repo: receipt-print-hq/escpos-tools


text:
Feature: ADD  Tools PAGE IN YOUR WEBSITE

Is your feature request related to a problem? Please describe.
Tool page are missing.

i want add tool page
Describe the solution you'd like
Tools Page Concept:
The Tools page will provide a collection of useful resources and tools for GitHub users, developers, and open-source enthusiasts.
Describe alternatives you've considered
Tools Page Structure:

Introduction
Categories
Tool Listings
Search Bar (optional)
Filtering (optional)

please assign me under gssoc'24 and hacktoberfest 24

#873 issues

@Darshan3690 any update regarding this?

@HimangshuSharma01 I already created the tool page but I have a one problem in PR

@HimangshuSharma01 I already created the tool page but I have a one problem in PR

tell me the issue

@HimangshuSharma01  i add my code in gh-pages repository. i have problem to create a pr in main repository.

@HimangshuSharma01  i add my code in gh-pages repository. i have problem to create a pr in main repository.

Please attach a screenshot so that I can understand better.

@HimangshuSharma01

you must fork the project.

add tool page #1  @sanjay-kv

ADD TOOL PAGE #942 PR @sanjay-kv

repo: recodehive/awesome-github-profiles


text:
added  code of conduct page

Description
Please include a summary of the changes and the related issue. Please also include relevant motivation and context. List any dependencies that are required for this change.
#1167
Type of change

[ ] Added a new machine learning frameworks, libraries or software.
[ ] Documentation update

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings

@sanjay-kv

It is looking like this because i have zoomed it out but it is look good if you take it properly

repo: recodehive/machine-learning-repos


text:
readonly mode

Just like in standard Annotorious. Should by mostly a bit of extra plumbing.

This doesn't seem to work for me. After:
var anno = OpenSeadragon.Annotorious(viewer, {
    readOnly: true
})

if I click an annotation, I can still edit its size.

Yikes. Good point. Readonly mode was introduced before shape editing, so this fell off the radar. Will look into it. Thanks for reporting!

This is fixed now in the main branch. I hope to have a new release up in a couple of days (to support touch devices). This next release will then include the fix.

authors: bennlich rsimon

repo: recogito/annotorious-openseadragon


text:
[Feature][AI][Premium] User Discovery

For now this feature source code is private. We only show service availability status here.

predict the similarity among user profiles.

authors: Qolzam huynhnguyen

repo: red-gold/react-social-network


text:
must-gather: skip helper pod creation and ceph log collection

skip helper pod creation and ceph log collection for MCG only cluster
Signed-off-by: Mudit Agarwal muagarwa@redhat.com

/hold
tested on MCG only cluster, need to test on the normal one.

/cc @yati1998

/hold cancel
Tested on both type of clusters, helper pod is not being created on the standalone cluster

/cc @umangachapagain

/cherry-pick release-4.10

@yati1998 please review

repo: red-hat-storage/ocs-operator


text:
iTunes Connect query without app version is too vague

We started getting an error when trying to retrieve the current build version in iTunes Connect.
https://circleci.com/gh/redbadger/pride-london-app/3571
We use this to know what a valid build number would be before starting a release build. This has worked fine up until now but a recent iTunes issue caused build 91 of 1.0.5 to not be accepted. To get around that initial issue we increased our app version to 1.0.6 and build 91 of this version was submitted succesfully.
But as of today iTunes now shows the failed 91 build of 1.0.5 so when we query for the latest build number there are two versions with build number 91 leading to iTunes not knowing which version we mean.
You have to specify a new version number, as there are multiple to choose from
The fix is to start passing the app version to this call, we get the current version from the Xcode project.

Agh, ran this locally and the build numbers now correctly reset to 1 each version but we already have some builds for 1.0.6 I'm going to push a version bump and we should be good moving forwards.

repo: redbadger/pride-london-app


text:
network-util doesn't handle NULL values

Issue encountered when when apparent null value is collected by the network-util. Error message below (1200 into 5000+ results processed).
Traceback (most recent call last):
File "network-util.py", line 370, in
sys.exit(main())
File "network-util.py", line 357, in main
domain=args.domain)
File "network-util.py", line 158, in process_search
dst_ip = ipaddress.ip_address(netconn.remote_ip)
File "/usr/lib/python3.5/ipaddress.py", line 54, in ip_address
address)
ValueError: '' does not appear to be an IPv4 or IPv6 address

Hi @atmathis, I've submitted a pull request to help fix this issue here: https://github.com/redcanaryco/redcanary-response-utils/pull/15

authors: atmathis crahan

repo: redcanaryco/redcanary-response-utils


text:
Support converting Hba1c mmol/mol to % and back

If a user types an hba1c of units mmol/mol it would be nice if it was converted to % units and back.

Formulas can be found here: http://www.ngsp.org/ifccngsp.asp

repo: reddit-diabetes/lita-diabetes


text:
Appstudio update rhtap-demo-component-bots

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI has failed.There was an error creating the PipelineRun: rhtap-demo-component-bots-on-pull-request-
creating pipelinerun rhtap-demo-component-bots-on-pull-request- in namespace rhtap-demo-dev-wyws-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

repo: redhat-appstudio-qe/hacbs-test-project


text:
Appstudio update mvp-test-component

Pipelines as Code configuration proposal

Pipelines as Code CI/mvp-test-component-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
6 seconds
init

✅ Succeeded
13 seconds
clone-repository

✅ Succeeded
1 minute
build-container

✅ Succeeded
18 seconds
deprecated-base-image-check

✅ Succeeded
19 seconds
sanity-inspect-image

✅ Succeeded
59 seconds
clamav-scan

✅ Succeeded
21 seconds
clair-scan

✅ Succeeded
11 seconds
sbom-json-check

✅ Succeeded
8 seconds
sanity-optional-label-check

✅ Succeeded
7 seconds
sanity-label-check

✅ Succeeded
6 seconds
show-summary


text:
Appstudio update hacbs-test-project-magd

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI has failed.There was an error creating the PipelineRun: hacbs-test-project-magd-on-pull-request-
creating pipelinerun hacbs-test-project-magd-on-pull-request- in namespace rhtap-demo-hvii-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: hacbs-test-project-magd-on-pull-request-
creating pipelinerun hacbs-test-project-magd-on-pull-request- in namespace rhtap-demo-umlg-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request


text:
[DEVHAS-53] Add Go module for gitops resource generation

Signed-off-by: John Collier jcollier@redhat.com
What does this PR do?:
Adds a separate Go module and CLI for generating GitOps resources (base, tekton, and overlay manifests). Once this is merged in, a separate PR that will run this "generator CLI" as part of a Kubernetes job will be added to HAS.
Which issue(s)/story(ies) does this PR fixes:
https://issues.redhat.com/projects/DEVHAS/issues/DEVHAS-53?
PR acceptance criteria:

[x] Unit/Functional tests

[ ] Documentation

[ ] Client Impact

How to test changes / Special notes to the reviewer:

Log in to an OpenShift / Kubernetes cluster and make install the HAS CRDs (Note: You do not need HAS running)
Clone my changes and cd into gitops-generator folder.
Create a dummy gitops repository somewhere
go build main.go
export GITHUB_TOKEN=<some-token>
Create the necessary resources on your cluster:
a. If testing base resource generation, just create a sample component
b. If testing overlays resource generation, you'll need to create an Application, Component, Environment, Snapshot, and SEB
./main --operation generate-base --component <component-cr-name> --namespace <namespace> --repoURL <repo-url> to generate the base and tekton resources
./main --operation generate-overlays --seb <seb-name> --namespace <namespace> --repoURL <repo-url> to generate the overlay resources

/retest

repo: redhat-appstudio/application-service


text:
Remove PaC config for ec-cli repo

This is causing problems as we onboard EC to RHTAP. RHTAP is saying "Git repository is already handled by Pipelines as Code" and refusing to create the custom build pipeline PR.
IIUC the existing PaC pipelines in this repo were experimental and should not be mission critical. The tekton bundles being created by those are also pushed by the GitHub actions workflow.
Ref: EC-289

:pray:

repo: redhat-appstudio/infra-deployments


text:
Remove leftover code + spinner

No references to the code and file in question were found.

released with rebase 0309ae59c7274408810c75c1fbc1b449d7ad2df4


text:
Update dependencies to latest versions

sinon is not updated to 2.0.0 yet, because of migration problems with unit tests

Codecov Report

Merging #611 into master will increase coverage by 0.14%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #611      +/-   ##
==========================================
+ Coverage   86.36%   86.51%   +0.14%
==========================================
  Files          27       27
  Lines        2457     2588     +131
  Branches      218      218
==========================================
+ Hits         2122     2239     +117
- Misses        335      349      +14

Impacted Files
Coverage Δ

browser/model/hyperv.js
92.68% <0%> (-2.19%)
:x:

browser/directives/breadcrumb.js
10% <0%> (-1.12%)
:x:

browser/services/request.js
20% <0%> (-0.84%)
:x:

browser/services/platform.js
86.39% <0%> (-0.38%)
:x:

browser/pages/start/controller.js
44.79% <0%> (-0.04%)
:x:

browser/model/virtualbox.js
71.75% <0%> (-0.03%)
:x:

browser/model/helpers/version.js
100% <0%> (ø)
:white_check_mark:

browser/model/cygwin.js
100% <0%> (ø)
:white_check_mark:

browser/services/data.js
100% <0%> (ø)
:white_check_mark:

browser/pages/location/controller.js
100% <0%> (ø)
:white_check_mark:

... and 15 more

Continue to review full report at Codecov.

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

authors: codecov-io dgolovin


text:
Refactor util method to create ConfigEntries for TopicSettings

Enhancement description
The util method to create config entries while creating/updating a topic uses specific field as an argument (which is retenPeriod for now). This method can get bit cumbersome if we are to add multiple config entries.
Proposed solution
The CreateConfig should accept a map and return array of configEntries according to it. It should check for null strings in order to determine which fields are to be updated.

I like the solution proposed, it should be way more elegant and scalable!

repo: redhat-developer/app-services-cli


text:
Implement server and extension build scripts

This PR replaces PR #10 .
All of the changes requested in #10 has been completed for this PR.
Also @fbricon , the wildcard * for the extension name doesn't seem to work in the package.json. Is there a workaround?
Signed-off-by: David Kwon dakwon@redhat.com

the workaround is for the gulp script to rename the file to a version-less jar, that you can reference in the package.json

alternatively, the maven build could generate a version-less jar

I went with the first option for now

@fbricon I changed the version to 0.15.0 and ran npm install

authors: fbricon xorye

repo: redhat-developer/vscode-quarkus


text:
Handle cases where serial number is blank

In cases where --sku is not defined and serial number is blank, the script will now default to using the hostname as the machine's unique identifier. If the hostname cannot be derived via socket.gethostbyaddr() and has not been manually defined using -n, the script will throw an error.

I think this is fine, but wonder if hostname is unique enough/too ephemeral. This is definitely an edge case where skus/serial numbers don't exist but I foresee a couple of issue that may arise (or should at least be documented): Changing hostname leading to multiple, stale entries and hostname collision leading to overwritten entries. As long as those are acceptable tradeoffs I think it's fine, otherwise it might make sense to use something more unique (like UUID if it's present, which should be globally unique). If this was thought through and you think hostname is best as implemented then I'm fine approving, just looking for feedback

What you're saying about UUID makes more sense - If all three of UUID, serial number, and SKU are empty, then we can throw an error ("the machine is not in an importable state"). Although I will note that I have seen machines with generic UUID's before. But I don't think hostnames are stable enough to use as an identifier, so SKU -> Serial Number -> UUID -> Fail is a reasonable solution IMO.
@Gelob Any thoughts?

I'm not familiar with the UUID field, but if its also sometimes generic I wouldn't want to use it automatically. Anything that is generic or blank could result in that server in GLPI getting updated with another servers data which is what happened with the Quanta server. I think SKU -> Serial Number -> Fail is fine, but we should print out UUID, SKU, Serial Number and have an option for the user to force using one of those or at the least be able to allow import with hostname or BMC IP.
Ultimately in these edge cases we want the server imported and tracked in GLPI by some name that the end user would be familiar with. Even if we never run an import on it again because of the manual methods it requires when running the script.

I'm working on a flag that prompts the user to choose between UUID, Serial Number, SKU, BMC IP, DNS Name, or a custom name if the --interactive flag is provided. Whatever the user specifies will be used as the computer's name, and will also be used as the machines serial number if both SKU and serial number are not provided by redfish.
I can't seem to get this to work with subprocess, so I'll convert this PR to a draft, get our script working without subprocess, and reopen this.

repo: redhat-eets/glpi-helper-scripts


text:
operators namespace-configuration-operator (1.2.0)

New Submissions

[ ] Has you operator nested directory structure?
[ ] Have you selected the Project Community Operator Submissions in your PR on the right-hand menu bar?
[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?
[ ] Have you tested your Operator with all Custom Resource Definitions?
[ ] Have you tested your Operator in all supported installation modes?
[ ] Is your submission signed?

Updates to existing Operators

[x] Is your new CSV pointing to the previous version with the replaces property?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Submit operators to both upstream-community-operators and community-operators at once
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file a PR against this repo and explain your need
2 For more information see here

/merge possible

authors: framework-automation raffaelespazzoli


text:
operators [CI] aws-efs-operator (0.0.6)

Thanks submitting your Operator. Please check below list before you create your Pull Request.
New Submissions

[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?
[ ] Have you tested your Operator with all Custom Resource Definitions?
[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want use semantic versioning order?
[ ] Is your submission signed?
[ ] Is operator icon set?

Updates to existing Operators

[x] Did you create a ci.yaml file according to the update instructions?
[x] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

/merge possible


text:
OPCT-192: Automatically create changelog based on the tags

https://issues.redhat.com/browse/OPCT-192
The goal of this card is to automatically create the changelog based on the commit standards.
The labels should be defined to fit OPCT project. The existing is suggested, it would be nice to be adapted for the same used by OCP projects

@rvanderp3 action plugin exercised here: https://github.com/mtulio/lab-ghpages/releases

ready for review after our meeting today. ptal?
/assign @rvanderp3 @faermanj

/lgtm
/approve


text:
Jetpack support for OSP13(RHEL7.9) & OSP16.2(RHEL8.4)

Set OSP16.2 release with RHEL8.4 base OS.

modified:   setup_undercloud.yml
modified:   tasks/install_os.yml

Note: OSP16.2 Undercloud deployed with RHEL8.4 base OS. But the overcloud still have 8.3 as the overcloud image has not yet upgraded by the OSP and it doesn't create any conflict. Also in future, it won't the Jetpack code as there are no dependencies.

FIX2:

Create a separate playbook tasks/update_repo.yml to remove the existing repos configured by Formen during OS provision and install rhos-release-latest rpm. As this task is common each OSP configuration, included this task in the setup_undercloud.yml playbook.

Created seprate task in setup_undercloud.yml to upgrade RHEL7.9 and RHEL8.4 as this OS are currently not available in foreman.

Note: OSP16.2 Undercloud deployed with RHEL8.4 base OS. But the overcloud still have 8.3 as the overcloud image has not yet upgraded by the OSP and it doesn't create any conflict. Also in future, it won't the Jetpack code as there are no dependencies.

rerun tests

authors: masco pradiptapks

repo: redhat-performance/jetpack


text:
PCM-1789: Enabled HTML in Alerts of all types

@gandhikeyur @vrathee Please review.

Reviewed!

authors: jtrantin vrathee


text:
Incorrect handling of commands in pub/sub state with RESP3

hiredis misbehaves when you upgrade the connection to RESP3 and then try to run commands other than SUBSCRIBE/UNSUBSCRIBE.
Both Redis source code and documentation seem to agree that it should be possible to run other commands. For example, the following should work:
HELLO 3
SUBSCRIBE foo
PUBLISH foo bar
PING
GET baz
UNSUBSCRIBE FOO

Unfortunately, when trying to run this, I trigger the following assertion:
/* No more regular callbacks and no errors, the context *must* be subscribed or monitoring. */
assert((c->flags & REDIS_SUBSCRIBED || c->flags & REDIS_MONITORING));

...because here, hiredis does not push user callbacks into replies when in pub/sub mode:
if (c->flags & REDIS_SUBSCRIBED) {
    /* This will likely result in an error reply, but it needs to be
     * received and passed to the callback. */   // <- no longer true with RESP3
    if (__redisPushCallback(&ac->sub.invalid,&cb) != REDIS_OK)
        goto oom;
} else {
    if (__redisPushCallback(&ac->replies,&cb) != REDIS_OK)
        goto oom;
}

Additionally, here, it assumes that all regular callbacks are handled before entering pub/sub mode. I think this is also incorrect, since it should be possible to receive a reply to a command interleaved with subscription messages with RESP3.
I think that, in the async case, this can be fixed by:

keeping track of current connection protocol in redisContext
conditionally allowing other commands depending on protocol in __redisAsyncCommand
reordering the code in redisProcessCallbacks to first handle all push messages, and then all others

I would like to help you with this, but I wanted to ask for some preliminary feedback on how a fix should look like.
I haven't tried the above using the synchronous API yet.

Thanks for the report.  I'll try to replicate the behavior locally.  The tricky part about any fix is probably making sure we don't break existing code.

How is it going with this problem?

authors: capathida michael-grunder stolyaroleh

repo: redis/hiredis


text:
ETIMEDOUT connecting to AWS Elasticache (non-cluster)

Trying to connect to an AWS Elasticache instance and running in to this problem.
Verifying that Redis connection works from EC2 instance;
/usr/src/app/packages/api # redis-cli -h <AWS_URL> -p 6379
<AWS_URL>:6379> SET a b
OK
<AWS_URL>:6379> GET a
"b"

Connecting like this:
const getRedisConfig = () => {
  const cfg = {
    host: process.env.REDIS_HOST
  };
  if (process.env.NODE_ENV === 'production') {
    cfg['tls'] = {};
  }
  return cfg;
};
// ...
this.connection = new Redis(getRedisConfig());
// ...

Recieving ETIMEDOUT error when connection through ioredis;
/usr/src/app/packages/api # DEBUG=ioredis:* yarn start
yarn run v1.21.1
warning package.json: No license field
$ node dist/server/index.js
redis cfg =>  {
  host: '<AWS_URL>>',
      port: 6379,
      tls: {}
}
ioredis:redis status[<AWS_URL>:6379]: [empty] -> connecting +0ms
redis cfg =>  {
  host: '<AWS_URL>>',
      port: 6379,
      tls: {}
}
ioredis:redis status[<AWS_URL>:6379]: [empty] -> connecting +2ms
ioredis:redis queue command[<AWS_URL>:6379]: 0 -> set([ 'a', 'b' ]) +1ms
redis cfg =>  {
  host: '<AWS_URL>>',
      port: 6379,
      tls: {}
}
ioredis:redis status[<AWS_URL>:6379]: [empty] -> connecting +2ms
ioredis:redis queue command[<AWS_URL>:6379]: 0 -> subscribe([ 'ASSESSMENTS' ]) +0ms
ioredis:redis status[pad-app-api-redis.dj3r40.0001.euw1.cache.amazonaws.com:6379]: [empty] -> connecting +1ms
ioredis:redis status[10.0.0.33:6379]: connecting -> connect +546ms
ioredis:redis write command[10.0.0.33:6379]: 0 -> info([]) +1ms
ioredis:redis status[10.0.0.33:6379]: connect -> ready +4ms
(node:843) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
    ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +0ms
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +2ms
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +0ms
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +10s
ioredis:connection reconnect in 50ms +1ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +0ms
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +1ms
ioredis:connection reconnect in 50ms +1ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +0ms
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +1ms
ioredis:connection reconnect in 50ms +1ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +0ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +48ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +2ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +1ms
ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +10s
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +0ms
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:connection error: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
  errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect'
} +1ms
    [ioredis] Unhandled error event: Error: connect ETIMEDOUT
at TLSSocket.<anonymous> (/usr/src/app/node_modules/ioredis/built/redis/index.js:282:31)
at Object.onceWrapper (events.js:312:28)
at TLSSocket.emit (events.js:223:5)
at TLSSocket.Socket._onTimeout (net.js:474:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +10s
ioredis:connection reconnect in 100ms +1ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +1ms
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +0ms
ioredis:connection reconnect in 100ms +0ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +0ms
ioredis:redis status[<AWS_URL>:6379]: connecting -> close +0ms
ioredis:connection reconnect in 100ms +0ms
ioredis:redis status[<AWS_URL>:6379]: close -> reconnecting +0ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +101ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +1ms
ioredis:redis status[<AWS_URL>:6379]: reconnecting -> connecting +1ms

Timeouts continue indefinitely like above.
Out of ideas with this one so if anyone could help I would really appreciate it.

Checked timeout setting on Elasticache parameters - is set to 0 so doesn't look like that's the problem.

+1 Some of the time, having this error in AWS lambdas connecting to elasticache
ERROR	[ioredis] Unhandled error event: Error: connect ETIMEDOUT
    at Socket.<anonymous> (/var/task/src/SQS-consumer/node_modules/ioredis/built/redis/index.js:282:31)
    at Object.onceWrapper (events.js:286:20)
    at Socket.emit (events.js:198:13)
    at Socket.EventEmitter.emit (domain.js:448:20)
    at Socket._onTimeout (net.js:443:8)
    at ontimeout (timers.js:436:11)
    at tryOnTimeout (timers.js:300:5)
    at listOnTimeout (timers.js:263:5)
    at Timer.processTimers (timers.js:223:10)

I have encountered the same problem. Do you have a solution?

@simondutertre @wjt382063576 I'm still trying to find a solution - if I find anything I will post it here - hopefully the maintainers of ioredis will be able to help soon.

I managed to find a working stopgap solution as follows;
In AWS Elasticache Redis:

Turn OFF Encryption in-transit
Turn OFF Encryption at-rest

In code - connect like this;
const connection = new Redis({
    host: "my_aws_redis_instance_url"
});

This is only a temporary solution so I can continue development - encryption will be required for production deployments of my code so a solution for this timeout problem will still need to be found.

FYI, you have to run your Lambdas in your own VPC to be able to connect to Elasticache. Double check subnets and security groups.

I've already double-checked everything you mentioned in this thread but I keep getting timeout errors and I don't know where to look at!

@demian85 is your Lambda in your own VPC with the right subnet group?

Which should be the right subnet group?
The Redis instance is in 2 subnets, the same for the lambda function. The same security group also, allowing inbound and outbound connections for everyone in the same group.

Did anyone find a solution for this? I am seeing the same issue. @luin

Same issue as well.

I'm still running into the same issue and I don't know which is the proper solution to Lambda aggressively killing the socket and making the connection not reusable. Is that the problem, right?
So:

If I use lazyConnect and disconnect at the end of the lambda execution, will this work when reusing the lambda instance later?
Can I use the client that was previously closed and connect implicitly when sending a command? Should I connect explicitly always?

Thanks.

Hi guys,
I'm still having this problem on AWS Elasticache with encryption in-transit and at-rest, with TLS. Did you find any solution? If I turn encryption off on AWS, it works, but I need encryption for my production environment.

hello.. I am on ioredis 4.19.4 and still having this issue. i tried @vcalmic 's configs but it still keep trying to reconnect. I tried to call disconnect() manually but look like it doesn't have affect.

hello.. I am on ioredis 4.19.4 and still having this issue. i tried @vcalmic 's configs but it still keep trying to reconnect. I tried to call disconnect() manually but look like it doesn't have affect.

I'm also having this issue, I've tried using very similar config to @vcalmic but I still get ETIMEDOUT events to my client. I'm wondering if this is just a logging issue whether these errors can be ignored when you have reconnectOnError set up. If it helps I'm running on aws lambda and sharing the connection between executions.

I'm also facing this problem

+1 facing performance issue due to this problem

+1 facing same issue

Encountered the identical problem and successfully resolved it by
 const redisClient = new Redis({         host: 'url',         port: 6379,         connectTimeout: 17000,         maxRetriesPerRequest: 4,         retryStrategy: (times) => Math.min(times * 30, 1000),         reconnectOnError: (error)  => {                 const targetErrors = [/READONLY/, /ETIMEDOUT/];                return targetErrors.some((targetError) => targetError.test(error.message));        }       });

authors: Aung-Myint-Thein ColeTownsend CostaFernando ShraddhaMantri aalimovs ayeshasiddiqs chrisfinch demian85 juli0mendes simondutertre vaibhavp2710 vaibhavphutane willm wjt382063576

repo: redis/ioredis


text:
search sort does not handle DESC direction ?

The spec here
https://github.com/redis/node-redis/blob/master/packages/client/lib/commands/SORT.spec.ts
does not mention sort direction 'DESC', only 'ASC'.
Lines 55-62 seem to indicate that only 'DIRECTION' 'ASC' is transformed into 'SORT' 'key' 'ASC', but 'DIRECTION' 'DESC' will not be managed.
Environment:

Node.js Version: 14.18.1
Redis Server Version: 6.2.0-v1 (via Redis Stack and "brew services")
Node Redis Version: 4.0.6
Platform: macOS 11.6.5

https://github.com/redis/node-redis/blob/master/packages/client/lib/commands/generic-transformers.ts#L501
transformArguments('key', {
    DIRECTION: 'DESC'
});
// ['SORT', 'key', 'DESC']
);

My Javascript which is worlink :
let searchResultsLines = await this.redisClient.ft.search('lines', q, {
        LIMIT : {
          from: query.nblines_from,
          size: query.nblines_size
        },
        SORTBY: {
          BY: 'dt',
          DIRECTION: 'DESC'
        }
      })

which produces :
!@# [
  'FT.SEARCH', 'lines',
  '%guer%',    'SORTBY',
  'dt',        'DESC',
  'LIMIT',     '0',
  '50'
]

authors: RupertBarrow leibale

repo: redis/node-redis


text:
Strict type decleration for PropertyName causing tsc compile error

I'm working on a project using typescript and created an index using json. Each json object has a unix timestamp, and I wanted to filter as well as sort objects with timestamps from the last 5 mins which led to the code below;
redis.ft.search('vehicleIdx', '@timestamp:[${Math.floor(Date.now() / 1000) - 300}, +inf]', {SORTBY: {BY: 'timestamp', DIRECTION: 'DESC'}, LIMIT: {from: 0, size: 100}})

At least when compiling from ts this will cause a compilation error due to the lack of a @ or $. prefix before 'timestamp' as the SORTBY argument. This can be fixed quite easily by packages/search/lib/commands/index.ts line 126 to
export type PropertyName =`${string}`;

... And it works for me just as intended.
I'm unfamiliar with the codebase and started working with redis the other night so I wonder if there would be any unintended consequences to such a change.
Environment:

Node.js Version: 18.7.0
Redis Server Version: 7.0.4
Node Redis Version: 4.2.0
Platform: Ubuntu 22.04

For a little more context;
Index creation: FT.CREATE vehicleIdx ON JSON PREFIX 1 vehicles:data: SCHEMA $.timestamp AS timestamp NUMERIC SORTABLE
roughly equivalent ft.search: FT.SEARCH vehicleIdx "@timestamp:[0, +inf]" SORTBY "timestamp" DESC

Have the same problem.
SortByProperty type accepts only PropertyName type, but should accept just string.
// packages/search/lib/commands/index.ts:137
export type PropertyName = `${'@' | '$.'}${string}`;

export type SortByProperty = PropertyName | {
    BY: PropertyName;
    DIRECTION?: 'ASC' | 'DESC';
};

Even in examples it is used without $. or @
https://github.com/redis/node-redis/blob/master/examples/search-hashes.js#L51
Environment:

Node Redis Version: "4.5.1"

Fixed in #2343. I'll comment here again once it's released

authors: JmsPae VladimirChuprazov leibale


text:
Unable to use +/- inf at method: zAdd

Description
method zAdd only accept (key, {score: number, value: xxx})
Node.js Version
No response
Redis Server Version
No response
Node Redis Version
No response
Platform
No response
Logs
No response

I'm pretty sure await client.zAdd('key', { score: Infinity, value: '...' }); work?

I'm pretty sure await client.zAdd('key', { score: Infinity, value: '...' }); work..?

amazing... thank you

authors: KwaiTushan leibale


text:
[WIP] feat: streaming read with DoReader()

This is a draft of #450.
Initial benchmark result with redjet v0.5.0:
▶ go test -bench .
goos: darwin
goarch: arm64
pkg: rueidis-benchmark/redjet
Benchmark/rueidis/payload1B-10         	  223470	      5317 ns/op	       0 B/op	       0 allocs/op
Benchmark/rueidis/payload1K-10         	  197715	      5407 ns/op	       0 B/op	       0 allocs/op
Benchmark/rueidis/payload1M-10         	    6476	    186107 ns/op	       3 B/op	       0 allocs/op
Benchmark/redjet/payload1B-10          	  155618	      7209 ns/op	     257 B/op	       4 allocs/op
Benchmark/redjet/payload1K-10          	  163492	      7393 ns/op	     257 B/op	       4 allocs/op
Benchmark/redjet/payload1M-10          	    6300	    208079 ns/op	     317 B/op	       5 allocs/op
PASS
ok  	rueidis-benchmark/redjet	9.510s
(base)

Code:
package bench

import (
	"context"
	"io"
	"strings"
	"testing"

	"github.com/coder/redjet"
	"github.com/redis/rueidis"
)

func Benchmark(b *testing.B) {
	tests := [][2]string{
		{"payload1B", strings.Repeat("x", 1)},
		{"payload1K", strings.Repeat("x", 1024)},
		{"payload1M", strings.Repeat("x", 1024*1024)},
	}

	rj := redjet.New("localhost:6379")
	defer rj.Close()

	ru, err := rueidis.NewClient(rueidis.ClientOption{InitAddress: []string{"127.0.0.1:6379"}})
	if err != nil {
		panic(err)
	}
	defer ru.Close()

	for _, t := range tests {
		if err := ru.Do(context.Background(), ru.B().Set().Key(t[0]).Value(t[1]).Build()).Error(); err != nil {
			panic(err)
		}
	}

	b.Run("rueidis", func(b *testing.B) {
		sc := ru.(rueidis.StreamClient)
		for _, t := range tests {
			b.Run(t[0], func(b *testing.B) {
				b.ResetTimer()
				b.ReportAllocs()
				b.RunParallel(func(pb *testing.PB) {
					for pb.Next() {
						s := sc.DoStream(context.Background(), sc.B().Get().Key(t[0]).Build())
						n, err := s.To(io.Discard)
						if err != nil {
							panic(err)
						}
						if n != int64(len(t[1])) {
							panic("wrong")
						}
					}
				})
			})
		}
	})

	b.Run("redjet", func(b *testing.B) {
		for _, t := range tests {
			b.Run(t[0], func(b *testing.B) {
				b.ResetTimer()
				b.ReportAllocs()
				b.RunParallel(func(pb *testing.PB) {
					for pb.Next() {
						n, err := rj.Command(context.Background(), "GET", t[0]).WriteTo(io.Discard)
						if err != nil {
							panic(err)
						}
						if n != int64(len(t[1])) {
							panic("wrong")
						}
					}
				})
			})
		}
	})
}

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (a171bb7) 95.66% compared to head (9fdf3e5) 94.98%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #460      +/-   ##
==========================================
- Coverage   95.66%   94.98%   -0.69%
==========================================
  Files          67       49      -18
  Lines       31821    27061    -4760
==========================================
- Hits        30443    25703    -4740
+ Misses       1184     1172      -12
+ Partials      194      186       -8

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

authors: codecov-commenter rueian

repo: redis/rueidis


text:
RedissonLock fails to unsubscribe from channel when a lock is acquired

Expected behavior
The pub/sub channels that are created while trying to acquire a lock with RedissonLock should be unsubscribed when no longer needed.
Actual behavior
Some pub/sub channels are still present (meaning that the client did not unsubscribe) even after some locks are no longer used (either they expired or were unlocked). These channels are never cleaned up (still present after 24h since created). The only workaround to get rid of these is to restart the client.
This was observed because it caused a connection leak. When calling RedissonLock to obtain new locks this returned the error : Subscribe timeout: (7500ms). Increase 'subscriptionsPerConnection' and/or 'subscriptionConnectionPoolSize' parameters. We have increased the limits in order to have a workaround for this bug
Steps to reproduce or test case

use RedissonLock.java implementation with method lockInterruptibly(long leaseTime, TimeUnit unit) to obtain multiple locks simultaneously.
use lower limits for  subscription-connection-pool-size and  subscriptions-per-connection to increase the probability to see the bug
wait until this error shows up Subscribe timeout: (7500ms). Increase 'subscriptionsPerConnection' and/or 'subscriptionConnectionPoolSize' parameters.
connect to Redis server and fetch all lock keys and all pub-sub channels.
if number of pub-sub channels > active locks , then the bug was reproduced
if number of pub-sub channels does not decrease at all long after locks are being created, this means that subscriptions have leaked, active long after these are no longer used in RedissonLock implementation

Redis version
5.0.5
Redisson version
3.11.6
Redisson configuration
    <redisson:client id="redissonClient">
        <redisson:single-server
            address="${redis.url}"
            idle-connection-timeout="10000"
            ping-timeout="1000"
            connect-timeout="10000"
            timeout="5000"
            connection-pool-size="32"
            connection-minimum-idle-size="12"
            subscription-connection-pool-size="64"
            subscriptions-per-connection="25"
        />
    </redisson:client>

The pub/sub channels that are created while trying to acquire a lock with RedissonLock should be unsubscribed when no longer needed

All channel are unsubscribed in finally code block of lock method.
Unable to reproduce this. Below is my test:
        Config config = new Config();
        config.useSingleServer()
                .setSubscriptionConnectionPoolSize(1)
                .setSubscriptionConnectionMinimumIdleSize(1)
                .setSubscriptionsPerConnection(1)
                .setAddress("redis://127.0.0.1:6379");

        RedissonClient redisson  = Redisson.create(config);
        ExecutorService e = Executors.newFixedThreadPool(16);
        for (int i = 0; i < 100000; i++) {
            e.submit(() -> {
                RLock lock = redisson.getLock("lock");
                lock.lock();
                lock.unlock();
            });
        }

        e.shutdown();
        e.awaitTermination(10, TimeUnit.MINUTES);

authors: mrniko oanagoanta-td

repo: redisson/redisson


text:
[JCache] IllegalStateException: Default configuration hasn't been specified

I have specified redisson-jcache.yaml in my resources folder.
If I add the codec property in the configuration then get java.lang.IllegalStateException: Default configuration hasn't been specified!
If I remove the codec configuration property then everything works fine.
Expected behavior
Config should be parsed successfully with codec property.
Actual behavior
Caused by: java.lang.IllegalStateException: Default configuration hasn't been specified!
at org.redisson.jcache.JCacheManager.createCache(JCacheManager.java:118)
Steps to reproduce or test case
Please use the config below.
Redis version
https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/WhatIs.html
Redisson version
3.13.3
jackson-dataformat-avro
2.11.2
netty-tcnative-boringssl-static
2.0.31.Final
Redisson configuration
---
clusterServersConfig:
  password: "pass"
  clientName: clisrvet
  sslProvider: OPENSSL
  keepAlive: true
  nodeAddresses:
    - "rediss://no-user-name-for-redis:pass@host:port"
codec: !<org.redisson.codec.AvroJacksonCodec> {}

Upon debugging I found this exception at org.redisson.jcache.JCachingProvider Line 20
Cannot construct instance of `org.redisson.codec.AvroJacksonCodec` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `org.redisson.codec.AvroJacksonCodec` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
 at [Source: (StringReader); line: 9, column: 48] (through reference chain: org.redisson.config.Config["codec"])

AvroJacksonCodec requires classes to be defined explicitly.

authors: mrniko rahuldeepattri


text:
delayedqueue  serialization is not expected

redisson version = 3.16.6
RBlockingQueue<ChannelResourceDistribution> jsonQueue = redissonClient.getBlockingQueue("redisson:delay:object:json", new JsonJacksonCodec());
RDelayedQueue<ChannelResourceDistribution> jsonDelayedQueue = redissonClient.getDelayedQueue(jsonQueue);
jsonDelayedQueue.offer(distribution, 20, TimeUnit.MINUTES);

view by rdm:

random unique value is added per entry to guarantee element uniqueness for zset

authors: mrniko ymgjava


text:
GCP Memorystore Standard Failover and SingleServer Mode expected to be recoverable?

Trying to understand if this should be expected behavior or potentially a bug.
GCP Standard supports failover with non-read replica as described https://cloud.google.com/memorystore/docs/redis/high-availability. In this mode, the client applications should only need to worry about connecting to a single IP as there is no exposed replica IP.
When running a redisson client with the default SingleServerConfig, using stream i.e. (XREADGROUP) does not recover from the failover. The application detects the failover and exception is thrown:
caused by: org.redisson.client.RedisException: UNBLOCKED force unblock from blocking operation, instance state changed (master -> replica?). channel: [id: 0x7a0d3644, L:/10.0.0.219:54872 - R::6379] command: (XREADGROUP), promise: java.util.concurrent.CompletableFuture@224c1509[Not completed, 1 dependents], params: [GROUP, , , BLOCK, 100, STREAMS, [65, 100, 100, 72, 105, 116], >] 	at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:370) ~[redisson-3.17.7.jar!/:3.17.7] 	at org.redisson.client.handler.CommandDecoder.decodeCommand(CommandDecoder.java:198) ~[redisson-3.17.7.jar!/:3.17.7] 	at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:137) ~[redisson-3.17.7.jar!/:3.17.7] 	at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:113) ~[redisson-3.17.7.jar!/:3.17.7]
The application has to be restarted even though the connection is restored ( Other calls PING, PENDING continue to occur).
Should this case be handled by redisson? Or is this expected behavior and application code must be updated to handle it or run with read replicas when using blocking calls.
Reproducible with Redisson 3.17.7, GCP Standard 6.X. and issue manual failover using the gcp client as described https://cloud.google.com/memorystore/docs/redis/manual-failover-overview.

It's a Redis setup issue. Redis instance you are connected to is acting as a slave, this is why you get that error.

On reconnect, your application is automatically redirected to the new primary node using the same connection string or IP address. You do not need to update your application after a failover.

Can you provide logs for org.redisson with trace logging level to check that IP has changed?


text:
Unable to send command! Node source

org.redisson.client.RedisTimeoutException: Unable to send command! Node source: NodeSource [slot=null, addr=null, redisClient=null, redirect=null, entry=MasterSlaveEntry [masterEntry=[freeSubscribeConnectionsAmount=1, freeSubscribeConnectionsCounter=50, freeConnectionsAmount=31, freeConnectionsCounter=63, freezed=false, freezeReason=null, client=[addr=redis://10.8.137.108:6379], nodeType=MASTER, firstFail=0]]], connection: RedisConnection@1152922437 [redisClient=[addr=redis://10.8.137.108:6379], channel=[id: 0x76d81725, L:/10.7.74.23:53758 - R:10.8.137.108/10.8.137.108:6379]], command: (EVAL), command params: [if (redis.call('exists', KEYS[1]) == 0) then redis.call('hset', KEYS[1], ARGV[2], 1); redis.call('pe..., 1, InventorySycLock--1001-YY101131449719808386739, 1800000, 1ab08d95-f14d-4d90-b8bf-7f6b0533bf07:856] after 3 retry attempts
at org.redisson.command.CommandAsyncService$10.run(CommandAsyncService.java:715)
at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:672)
at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:747)
at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:472)
at java.lang.Thread.run(Thread.java:748)
redisson version: 3.9.1
singleServerConfig:
address: xxx
database: xxx
password: xxx
pingConnectionInterval: 30000
other conifg is default;

I want to know if this is a bug or if there are some configuration errors?

https://github.com/redisson/redisson/wiki/16.-FAQ#q-what-is-the-cause-of-redistimeoutexception

I don't know how to solve it，Can you give me some advice

Try to set nettyThreads=32

I need to update the version of redission?

I would update. Since 3.9.1 is 5 years old.

Which version is currently the most stable and recommended for use.

@ykrenz
You can find it in release page  https://github.com/redisson/redisson/releases/

authors: mrniko wynn5a ykrenz


text:
RedissonMultiLock attempt to unlock lock, not locked by current thread by node id: d0ab590d-f55b-4c1b-9c13-0e67ad1543f9 thread-id: 1

An error occurs when using RedissonMultiLock, used method ->  lock.lock(10, TimeUnit.SECONDS);
java.util.concurrent.CompletionException: java.lang.IllegalMonitorStateException: attempt to unlock lock, not locked by current thread by node id: d0ab590d-f55b-4c1b-9c13-0e67ad1543f9 thread-id: 1
at org.redisson.RedissonBaseLock.lambda$unlockAsync$2(RedissonBaseLock.java:325)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:836)
at java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:811)
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975)
at org.redisson.command.CommandBatchService.lambda$executeAsync$7(CommandBatchService.java:322)
at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975)
at org.redisson.command.RedisCommonBatchExecutor.handleResult(RedisCommonBatchExecutor.java:162)
at org.redisson.command.RedisExecutor.checkAttemptPromise(RedisExecutor.java:478)
at org.redisson.command.RedisExecutor.lambda$execute$3(RedisExecutor.java:172)
at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975)
at org.redisson.client.handler.CommandDecoder.decodeCommandBatch(CommandDecoder.java:318)
at org.redisson.client.handler.CommandDecoder.decodeCommand(CommandDecoder.java:210)
at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:137)
at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:113)
at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:508)
at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:366)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.IllegalMonitorStateException: attempt to unlock lock, not locked by current thread by node id: d0ab590d-f55b-4c1b-9c13-0e67ad1543f9 thread-id: 1
at org.redisson.RedissonBaseLock.lambda$unlockAsync$2(RedissonBaseLock.java:323)
... 39 more
My code is as follows:
@Resource
private RedissonClient redissonClient;

@Test
void testRedisLock() {
    RLock lock1 = redissonClient.getLock("lock-test-" + 1L);
    RLock lock2 = redissonClient.getLock("lock-test-" + 2L);
    RLock lock3 = redissonClient.getLock("lock-test-" + 3L);

    RLock lock = redissonClient.getMultiLock(lock1, lock2, lock3);
    try {
        lock.lock(10, TimeUnit.SECONDS);
        Thread.sleep(1000);
        log.info("thread-id: {}", Thread.currentThread().getId());
    } catch (InterruptedException e) {
       Thread.currentThread().interrupt();
    } finally {
        lock.unlock();
    }
}

redis is a cluster mode
version:
org.redisson
redisson-spring-boot-starter
3.17.1
Thanks.

Can you try 3.24.3 version?

I have switched to 3.24.3 version, It still doesn't work.
The error remains the same as before.

Can you try 3.24.3 version?

why

authors: YLongGe javalxg mrniko


text:
How to use filter,like QueryFilter?

SearchResult r = s.search("idx", "*", QueryOptions.defaults().filters(QueryFilter.geo("field").from(1, 1).radius(10, GeoUnit.FEET)));

thank you


text:
handle deb/rpm packaging split (1 to 3) for redpanda 24.2

Upcoming Redpanda release 24.2 includes a split of the monolithic redpanda package into three separate packages:

redpanda-rpk
redpanda-tuner
redpanda

All three must now be downloaded and installed, instead of the single one pre 24.2.  Order must be as specified above (top to bottom).  This applies to both rpm AND deb.

I see https://github.com/redpanda-data/redpanda-ansible-collection/pull/105 was merged, which takes care of airgapped installations. I think we need something similar for regular installs for releases after 24.2, similar to what's done here https://github.com/redpanda-data/vtools/commit/3c37ce3fa760b114def803edb79238b7813f4855.

authors: ivotron jackietung-redpanda


text:
Support for Visual Studio 2022

Add support for VS 2022.

Fixed in 040f7bd86d99ab5d2502a1a4fca18090ed2626c3.

repo: reduckted/ProjectFilter


text:
Add new Shipping Option to discount shipping

Part 1 - Coding:
Add the new shipping option to discount shipping.

Part 2 - Design Shipping App to use the Unit of Work pattern via commit: 46680d0

repo: reebonz/MarketplaceInterview


text:
Bug that i found, if you found another bug you can sent it here

Discord profile banner is gone while using this theme

Profile banner bug is fixed
----------------------CLOSED----------------------

fixed in b8749b2


text:
quick-label-removal: deferredContentWrapper is undefined

Please ensure:

[X] The bug is caused by Refined GitHub. It doesn't happen if I disable the extension.

Include in this issue:

[ ] Screenshots/video/gif demonstrating the bug, if it’s visual
[X] Console errors, if any

Description
Removing a label using the feature produces the following error in the console:
TypeError: deferredContentWrapper is undefined quick-label-removal.tsx:31:15

(The feature still does its job though.)
Example URL
https://github.com/refined-github/github-sandbox/issues/3
Browser(s) used
Firefox

I get
refined-github.js:8589 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'closest')
    at HTMLHtmlElement.removeLabelButtonClickHandler (refined-github.js:8589)

repo: refined-github/refined-github


text:
Fix hide-tips CSS feature

Test URLs

PR list
Gobal conversations list

Screenshot
Before

After

ขอบคุณครับ

There's also a tip on the dashboard:

However I'm not sure if we want to hide it since the links in it are useful (?)

There's also a tip on the dashboard (above the square, too lazy to make another screenshot):

https://github.com/refined-github/refined-github/pull/5196#discussion_r767328562

authors: cheap-glitch fregante kidonng


text:
Read and Write Cookie with httpOnly=true.

All Submissions:

[ ] Have you followed the guidelines stated in CONTRIBUTING.md file? A little bit, but not all.
[X] Have you checked to ensure there aren't any other open Pull Requests for the desired changed?

Type of change
Please delete options that are not relevant.

[X] New feature (non-breaking change which adds functionality)

New Feature Submission:

[ ] Does your submission pass the tests?
[X] Have you linted your code locally prior to submission?

Changes To Core Features:

[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your core changes, as applicable?
[ ] Have you successfully ran tests with your changes locally?

Description
Now its possible to set and read httpOnly Cookies.
What I did?

Added 'cookie' to HeaderData(state.py).
Added new default_endpoint(app.py) as _/set_cookie/
Added new set_http_only_cookie event(event.py) to easy create a httpOnly cookie.

How to use it?

Create a State
Use 'self.router.headers.cookie'
Create a function and 'return rx.set_http_only_cookie(...)'

Like that:
class MyCustomState(rx.State):
    def get_my_cookies(self):
        myCookies = self.router.headers.cookie
        logger.info(myCookies)

    def set_cookie(self):
        return rx.set_http_only_cookie(
            key="Test",
            value="5Test5",
            max_age=1500,
        )

...

rx.button(
            "Get All Cookie",
            width="100%",
            size="3",
            radius="large",
            variant="solid",
            on_click=MyCustomState.get_my_cookies,
        ),

rx.button(
            "Set A Cookie",
            width="100%",
            size="3",
            radius="large",
            variant="solid",
            on_click=MyCustomState.set_cookie,
        ),

What can be improved?

self.router.headers.cookie should be a dictionary... Possible but need more work...
self.router.headers.cookie doesnt returns any cookie that has a 'path' different to '/'. It only works with a path='/'. I dont know why...
Maybe can it be built-in with rx.Cookie in state.py? I couldnt find a good way to integrate with it...

Marking this as draft until resynced with main and conflict are addressed.

authors: Fabricio-T Lendemor

repo: reflex-dev/reflex


text:
[TASK] Make birth date optional

Estimated story points: 1
Description

The birth date is not always required

Acceptance criteria

The date is not required to save

time: 20min

repo: reform-org/reform


text:
Fix proposal ID not found error

Despite the proposal being successfully submitted, submitting a proposal results in the following error without redirecting the user to the group page to view the successfully submitted proposal:

Hey team! Please add your planning poker estimate with Zenhub @haveanicedavid @ryanchristo

authors: blushi ryanchristo

repo: regen-network/groups-ui


text:
Scope Widening Injection detected

I've just added your bundle to my Symfony 2.4 project, I get:
[Symfony\Component\DependencyInjection\Exception\ScopeWideningInjectionException]
  Scope Widening Injection detected: The definition "templating.helper.assets" references the service "rj_frontend.package.fallback" which belongs to a narrower scope. Generally
  , it is safer to either move "templating.helper.assets" to scope "request" or alternatively rely on the provider pattern by injecting the container itself, and requesting the
  service "rj_frontend.package.fallback" each time it is needed. In rare, special cases however that might not be necessary, then you can set the reference to strict=false to ge
  t rid of this error.

any clue on how to get rid of this?

Nm forgot to add that
rj_frontend:
    override_default_package: false

I thought that was just about templates not general errors like the above one

I'm reopening this issue because it should also work with override_default_package: true.

I'm reopening this issue because it should also work with override_default_package: true.

repo: regularjack/frontend-bundle


text:
vagrant can't run apt-get

/Users/tyler/citizenry> vagrant up
[default] Importing base box 'lucid32'...
[default] The guest additions on this VM do not match the install version of
VirtualBox! This may cause things such as forwarded ports, shared
folders, and more to not work properly. If any of those things fail on
this machine, please update the guest additions and repackage the
box.
Guest Additions Version: 4.1.0
VirtualBox Version: 4.1.8
[default] Matching MAC address for NAT networking...
[default] Clearing any previously set forwarded ports...
[default] Forwarding ports...
[default] -- ssh: 22 => 2222 (adapter 1)
[default] -- http: 80 => 8080 (adapter 1)
[default] -- rails: 3000 => 8000 (adapter 1)
[default] Creating shared folders metadata...
[default] Running any VM customizations...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Mounting shared folders...
[default] -- v-root: /vagrant
[default] -- vagrant: /vagrant
[default] -- vagrant-apt-cache: /var/cache/apt
[default] -- v-csc-1: /tmp/vagrant-chef-1/chef-solo-1/cookbooks
[default] Running provisioner: Vagrant::Provisioners::ChefSolo...
[default] Generating chef JSON and uploading...
[default] Running chef-solo...
[default] stdin: is not a tty
: stderr
[default] [Thu, 22 Dec 2011 15:47:01 -0800] INFO: *** Chef 0.10.2 ***
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Setting the run_list to ["recipe[vagrant]"] from JSON
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Run List is [recipe[vagrant]]
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Run List expands to [vagrant]
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Starting Chef Run for lucid32
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Processing execute[update-profile-chdir] action run (vagrant::default line 5)
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: execute[update-profile-chdir] sh(printf "
if shopt -q login_shell; then cd /vagrant; fi" >> ~vagrant/.profile)
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: execute[update-profile-chdir] ran successfully
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: Processing execute[update-apt] action run (vagrant::default line 12)
: stdout
[default] [Thu, 22 Dec 2011 15:47:03 -0800] INFO: execute[update-apt] sh(apt-get update && touch /root/.apt-get-updated)
: stdout
[default] [Thu, 22 Dec 2011 15:47:10 -0800] ERROR: execute[update-apt] (vagrant::default line 12) has had an error
: stdout
[default] [Thu, 22 Dec 2011 15:47:10 -0800] ERROR: Running exception handlers
: stdout
[default] [Thu, 22 Dec 2011 15:47:10 -0800] ERROR: Exception handlers complete
: stdout
[default] [Thu, 22 Dec 2011 15:47:10 -0800] FATAL: Stacktrace dumped to /tmp/vagrant-chef-1/chef-stacktrace.out
: stdout
[default] [Thu, 22 Dec 2011 15:47:10 -0800] FATAL: Chef::Exceptions::ShellCommandFailed: execute[update-apt] (vagrant::default line 12) had an error: Expected process to exit 0, but it exited with 100
---- Begin output of apt-get update && touch /root/.apt-get-updated ----
STDOUT: Get:1 http://security.ubuntu.com lucid-security Release.gpg [198B]
Hit http://us.archive.ubuntu.com lucid Release.gpg
Get:2 http://us.archive.ubuntu.com lucid-updates Release.gpg [198B]
Get:3 http://security.ubuntu.com lucid-security Release [44.7kB]
Hit http://us.archive.ubuntu.com lucid Release
Get:4 http://us.archive.ubuntu.com lucid-updates Release [44.7kB]
Get:5 http://security.ubuntu.com lucid-security/main Packages [247kB]
Hit http://us.archive.ubuntu.com lucid/main Packages
Hit http://us.archive.ubuntu.com lucid/restricted Packages
Hit http://us.archive.ubuntu.com lucid/main Sources
Hit http://us.archive.ubuntu.com lucid/restricted Sources
Hit http://us.archive.ubuntu.com lucid/universe Packages
Hit http://us.archive.ubuntu.com lucid/universe Sources
Hit http://us.archive.ubuntu.com lucid/multiverse Packages
Hit http://us.archive.ubuntu.com lucid/multiverse Sources
Get:6 http://us.archive.ubuntu.com lucid-updates/main Packages [536kB]
Get:7 http://security.ubuntu.com lucid-security/restricted Packages [14B]
Get:8 http://security.ubuntu.com lucid-security/main Sources [73.1kB]
Get:9 http://security.ubuntu.com lucid-security/restricted Sources [14B]
Get:10 http://security.ubuntu.com lucid-security/universe Packages [107kB]
Get:11 http://security.ubuntu.com lucid-security/universe Sources [28.1kB]
Get:12 http://security.ubuntu.com lucid-security/multiverse Packages [4557B]
Get:13 http://security.ubuntu.com lucid-security/multiverse Sources [1750B]
Get:14 http://us.archive.ubuntu.com lucid-updates/restricted Packages [3998B]
Get:15 http://us.archive.ubuntu.com lucid-updates/main Sources [208kB]
Get:16 http://us.archive.ubuntu.com lucid-updates/restricted Sources [1850B]
Get:17 http://us.archive.ubuntu.com lucid-updates/universe Packages [246kB]
Get:18 http://us.archive.ubuntu.com lucid-updates/universe Sources [84.9kB]
Get:19 http://us.archive.ubuntu.com lucid-updates/multiverse Packages [10.5kB]
Get:20 http://us.archive.ubuntu.com lucid-updates/multiverse Sources [5073B]
Fetched 1648kB in 6s (248kB/s)
Reading package lists...
STDERR: E: Couldn't make mmap of 25165824 bytes - mmap (22: Invalid argument)
W: Unable to munmap
E: The package lists or status file could not be parsed or opened.
---- End output of apt-get update && touch /root/.apt-get-updated ----
Ran apt-get update && touch /root/.apt-get-updated returned 100
: stdout
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
chef-solo -c /tmp/vagrant-chef-1/solo.rb -j /tmp/vagrant-chef-1/dna.json
The output of the command prior to failing is outputted below:
[no output]

Thanks for reporting this. I've pushed a fix to master, please try again. Details about the issue and fix are provided in the commit above.

authors: igal tjgillies

repo: reidab/citizenry


text:
🛑 Scribees is down

In e67950d, Scribees (https://binus.ac.id/scribees/login/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Scribees is back up in eab655e.


text:
🛑 GreatNusa.com is down

In 6df2c43, GreatNusa.com (https://greatnusa.com) was down:

HTTP code: 403
Response time: 87 ms

Resolved: GreatNusa.com is back up in 2c31062.


text:
🛑 Library and Knowledge Center (LKC) is down

In 7e2c3ea, Library and Knowledge Center (LKC) (http://library.binus.ac.id) was down:

HTTP code: 500
Response time: 1725 ms

Resolved: Library and Knowledge Center (LKC) is back up in dc62a74.


text:
Create fourier descriptors for neighborhoods

[x] Create equal-length vectors from geometries.
[x] Is there a way to create equidistant points?
[x] Is it even necessary to create equidistant points?

Done

repo: reinvantveer/Topology-Learning


text:
Error when trying to run update-schema

Hi, I started working on a simple app using the starter kit, following the todo example in the official Relay repo, but have been stuck on one issue for the last few hours. First, I edited my database.js and schema.js files. When trying to run npm run update-schema I am getting an error:
ERROR:  [
  {
    "message": "Cannot return null for non-nullable type.",
    "locations": [
      {
        "line": 32,
        "column": 7
      }
    ]
  }
]

Looking at my schema.js file I cannot figure out where the issue is. Perhaps I am missing something?
Here is a link to my database.js and schema.js.
Any tips or point to a direction would be greatly appreciated! Thanks!

Found it!
Look at GraphQLUser. In the definition of a user's fields, you've made reference to ContactsConnection, but at that point in the code, ContactsConnection is undefined.
You can fix this by reordering the code, or by lazy-evaluating the fields definition:
  /* ... */
  fields: () => ({
    id: globalIdField('User'),
    contacts: {
      type: ContactsConnection,
      description: 'A person\'s collection of contacts',
      args: connectionArgs,
      resolve: (obj, args) => connectionFromArray(getContacts(), args),
    },
  }),
  /* ... */

Thanks for your help, @steveluscher! I did not take into consideration that order matters :) Great stuff!

Hey @steveluscher what would be one reason for the npm run update-schema to get stuck, i mean it doesnt shown an error, it just never exits the current tasks and node.js keeps hang. any clue?

authors: CoericK maringerov steveluscher

repo: relayjs/relay-starter-kit


text:
set handshake failure exception in connectionReadyPromise

Hi dear jchambers,
I found that from the cause method for connectionReadyPromise we never get the SSLHandshakeException even though there do have a handshake failure occured because we used a bad certificate to send notification and get this log in ApplicationProtocolNegotiationHandler
logger.warn("{} TLS handshake failed:", ctx.channel(), cause);

What we always get from the cause method for connectionReadyPromise when handshake failure occur is the IllegalStateException created in closeFuture's listener in ApnsClient:
new IllegalStateException("Channel closed before HTTP/2 preface completed.")

I think we need to call
super.handshakeFailure(context, cause);

behind ctx.close() in the handshakeFailure method of ApplicationProtocolNegotiationHandler. In this way we never got this problem ever.
What do you think?

Sounds good to me! Please pardon the slow reply, and thanks for the fix!

authors: jchambers ylgrgyq

repo: relayrides/pushy


text:
bug: SMTP E-Mail "fromname: XXX" not working

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Set "fromname: XXX" in config.yml
Start Release-Argus
Wait until new Release
See E-Mail Sender Name not matching configured From-Name

Expected behavior
Seeing the properly set From-Name from the config.yml. This does work with other Services so it cannot be an E-Mail-Client or E-Mail-Server Problem. I have tried to write the String after "fromname:" within Quotation Marks but this has not resolved the Problem.
Screenshots

Desktop:

OS: Windows 11
Release-Argus-Version: 0.15.2
E-Mail Client; Microsoft Outlook Version 2312 (Build  17126.20132 Klick-und-Los)

Ah, thanks for reporting! Looked into this and it seems to be an issue with Shoutrrr ignoring the params var. Have made a PR to try and address this

authors: JosephKav tobi-wld

repo: release-argus/Argus


text:
Serializer documentation fix + tests

First patch fixes a bug about documentation, second patch adds some tests for serializer documenatation generator. The patches are not really closely related, but the second depends on the first one (due to changed output).

Looks good to me.

authors: erichuanggit lubomir


text:
🛑 UpToBox is down

In ab7d226, UpToBox (https://uptobox.com/) was down:

HTTP code: 403
Response time: 123 ms

Resolved: UpToBox is back up in c602fbe.


text:
🛑 Sitio CIVIX is down

In defc07f, Sitio CIVIX (https://civix.mx/home/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Sitio CIVIX is back up in 1aae5b3.

repo: remgi/uptimecic


text:
Re-add boto2 dep to fix broken hooks imports

This should patch up #187 to unblock #183. boto2 and boto3 will happily co-exist until each of the hooks is migrated to the boto3 equivalent. Not sure how I missed this before...

Thanks!

authors: acmcelwee phobologic


text:
error: Environment variable not found: DATABASE_URL

Have you experienced this bug with the latest version of the template?
Yes
Steps to Reproduce

Clone this repository or run npx create-remix --template remix-run/indie-stack
yarn dev

Expected Behavior
The app should start up without a problem
Actual Behavior
It seems that it can't pick up the environment variables, though when I was using it for a project that I created yesterday it worked fine. The problem seems to have occurred when I used the template for another project today.
It builds the app at first, but when you open http://localhost:3000 on the browser, it throws the following error:
Error: error: Environment variable not found: DATABASE_URL.
  -->  schema.prisma:3
   |
 2 |   provider = "sqlite"
 3 |   url      = env("DATABASE_URL")
   |

Validation Error Count: 1
    at Object.loadEngine (C:\Users\Acer\Desktop\Development\remix-projects\streaming-website\node_modules\@prisma\client\runtime\index.js:41175:19)
    at Object.instantiateLibrary (C:\Users\Acer\Desktop\Development\remix-projects\streaming-website\node_modules\@prisma\client\runtime\index.js:41104:5)
    at Object.start (C:\Users\Acer\Desktop\Development\remix-projects\streaming-website\node_modules\@prisma\client\runtime\index.js:41254:5)
fatal error: all goroutines are asleep - deadlock!

Also, thanks for creating this wonderful template and the Remix framework, really loved them

@AviAvinav Did the install run when setting up the project?
remix.init should have been run as part of that, which will make sure .env file is setup correctly

I did not run it when it asks whether to install packages using npm, but I did do yarn install manually.

Try running npx remix init, this should do the same thing.

Thanks for the help! It works now.

authors: AviAvinav MichaelDeBoey

repo: remix-run/indie-stack


text:
Type instantiation is excessively deep and possibly infinite.ts(2589) when using readonly

Reproduction
https://stackblitz.com/edit/remix-run-remix-msgs25?file=app%2Froutes%2F_index.tsx
System Info
N/A

Used Package Manager
pnpm
Expected Behavior
No type error.
Actual Behavior
Getting error:

Type instantiation is excessively deep and possibly infinite.ts(2589)

The only code necessary to replicate is this:
export const loader = defineLoader(async () => {
  type RecentChat = {};

  const recentChats: readonly RecentChat[] = [];

  return {
    recentChats,
  };
});

const Route = () => {
  const data = useLoaderData<typeof loader>();
};

@brophdawg11 I am facing the same issue. This is a blocker for adopting turbo-stream.

I dug into types. Looks like fixing this is super simple:
- type Serializable = undefined | null | boolean | string | symbol | number | Array<Serializable> |
+ type Serializable = undefined | null | boolean | string | symbol | number | Array<Serializable> | ReadonlyArray<Serializable> |
{
    [key: PropertyKey]: Serializable;
} | bigint | Date | URL | RegExp | Error | Map<Serializable, Serializable> | Set<Serializable> | Promise<Serializable>;

This fixed the issue!

@brophdawg11 @jacob-ebey Can this me merged upstream?
At the moment, I have to patch local node_modules every time I update Remix.

defineLoader is going away in favor of a better type story soon so this will be resolved once that lands

defineLoader is going away in favor of a better type story soon so this will be resolved once that lands

That's great news, but apps that currently rely on defineLoader cannot lint properly.

It's an unstable API not intended for production use.  // @ts-expect-error is your friend here 😄

What defineLoader and defineAction have been replaced with?
How do I type them?

What defineLoader and defineAction have been replaced with?
How do I type them?

They have been completely removed and not longer required, but the single fetch types need to be enabled, although type inference is broken for me (see https://github.com/remix-run/remix/issues/9970).
ref: https://github.com/remix-run/remix/blob/main/CHANGELOG.md#improved-single-fetch-type-safety-unstable

@0t4u see https://github.com/remix-run/remix/discussions/9969#discussioncomment-10607083

repo: remix-run/remix


text:
chore: Typing changes in remix-react

I wanted to start with a simple change before taking on bigger tasks here. If anything here goes against convention or is unhelpful in any way I don't mind reverting parts or all of it 😉 I did not set the base branch to dev as suggested in contributing.md as I forked from main and they are not in sync 😕
This PR:

Removes a re-declaration of RouteData in components.tsx in two places
Removes the type AppData which was a renaming of any. Changes uses of AppData to unknown
Removes (seemingly😇 ) unnecessary type casts where I found them
Adds charset as a prop on metaProps as it is used in code. Both charSet and charset made optional as they seem from the code to indeed be optional 🤔
Adds a type to inputs for utility functions that check response headers.

Hi @hjonasson!
Are you still interested in getting this one merged?
If so, please rebase onto latest dev & resolve conflicts/remarks

These types seem fairly important, I was just trying to get some other changes to work. I think perhaps it is better that the core team works on these changes. I might close this PR to reduce clutter.

authors: MichaelDeBoey hjonasson