Improve dynamic keys infering

With following code:
function make(prop) {
	return {
		[prop.name]: prop.value,
	};
}

const withA = make({name: 'a', value: 5});

(withA.a : number);
(withA.b : number);

Flow will throw an error:
10: (withA.b : number);
           ^ Cannot get `withA.b` because property `b` is missing in object literal [1].
References:
2: 	return {           ^ [1]

Which is ok. But if we add one more call expression of function make:
function make(prop) {
  	const result = {
      [prop.name]: prop.value,
    };
	return result;
}

const withA = make({name: 'a', value: 5});
const withB = make({name: 'b', value: 5});

(withA.a : number);
(withA.b : number);

(withB.a : number);
(withB.b : number);

Flow does not report any error. It should report error on (withA.b : number); and (withB.a : number);
Flow version: any
Flow Try https://flow.org/try/#0GYVwdgxgLglg9mABAWwIYGsCmAKADgJzlwEpEBvAKEUQEgIEBnKRfTBkAG2YF5yrqBAbQJEAdGFTJMAXQBciEblEA3VBxCYANP2oBfANwUarKCHxJW7Lod0UK9ME0QB3GFAAWAQUS80WbGQSUvIA5Kghmoiq6pjyAKy6xIYOTq4eAEI+KBg4gZKxiCEARhFRahrxiYYU2GleoqiI8mAgyEWY+Ek1dZ6iRU2ILW0dXd1u7ukNA0PtnYa145P9za2zo0A

Out of scope since we will now require the function to be annotated.


shortcut remap not working

Microsoft PowerToys version
0.67.1
Installation method
GitHub, PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
Keyboard Manager
Steps to reproduce
I set a bunch of shortcut remappings and it worked fine for a long time. Today all mapping failed (it happened time to time, when CPU load is high, but restarting always helps), I've tried restart my PC, restart PowerToys, and restart Keyboard Manager, but the situation remains the same. FYI, I noticed that single key remapping seems to work fine.
Attached you can find bug report file, hope that would help.
PowerToysReport_2023-02-09-17-33-38.zip
✔ Expected Behavior
functional shortcut remapping
❌ Actual Behavior
shortcut remap not working
Other Software
No response

It worked now magically....


[minigzip] Close gzFile before exiting on error.

ASAN will complain if gzFile is not closed before program exits.

I think a PR for the same change on develop would be a good idea.
Not sure why it didn't already trigger the same error there though.

I think a PR for the same change on develop would be a good idea. Not sure why it didn't already trigger the same error there though.

It took me a while to be able to reproduce the issue locally... I had to run each test individually instead of through ctest.

I cherry-picked this since it would have otherwise needed a rebase.


Hover documentation for JSX (like for HTML)

Upon hover, elements and attributes in HTML files display a small documentation window with the HTML info. This can be useful as a reminder.
JSX should have this too, as it'd be more helpful than what is currently displayed.
Currently this is displayed (JSX):

This could be augmented or replaced with the HTML info. Suggestion:

Related to #44204

This is already supported, it's just that the React definition files don't provide these comments.
declare var React: any;
namespace JSX {
  export interface IntrinsicElements {
    /**
     * Is a neat thing
     */
    thing: any;
  }
}
// Works on hover
const p = <thing></thing>;


Show change log in the README.md

I should add change log section in the README.md

IMO this is not needed as we can see the same in this link
https://github.com/mingrammer/flog/releases


AGR-431 point RGD BGI and disease data to latest tarball: RGD_0.6.4.t…

Please merge this into release 0.6
New RGD file available on S3 bucket.

@cmpich Seeing some errors from the Travis build:
Extracting files from (tmp/RGD_0.6_4.tar.gz) ...
Traceback (most recent call last):
  File "fetch_test_index.py", line 7, in <module>
    al.load_from_mods(test_set = True)
  File "/home/travis/build/alliance-genome/agr/indexer/src/loaders/aggregate_loader.py", line 56, in load_from_mods
    for gene_list_of_entries in genes:
  File "/home/travis/build/alliance-genome/agr/indexer/src/mods/rat.py", line 27, in load_genes
    TARFile(path, "RGD_0.6_4.tar.gz").extract_all()
  File "/home/travis/build/alliance-genome/agr/indexer/src/files/tar_file.py", line 13, in extract_all
    tfile = tarfile.open(self.path + "/" + self.tarfilename, 'r')
  File "/opt/python/2.7.12/lib/python2.7/tarfile.py", line 1678, in open
    raise ReadError("file could not be opened successfully")
tarfile.ReadError: file could not be opened successfully
make: *** [test_index] Error 1


Create login page

#32 is merged now so if you rebase by master you will have no issues with Node engine requirements.


FN cli does not work on Alpine linux

The reason is custom libc implementation on Alpine linux. As w/a following can be suggested to customer in installation doc.
apk add --no-cache libc6-compat
After that go binaries built on linux with common libc will work on Alpine linux too.

Alpine 3.9 is used as base image.
docker pull alpine:3.9
docker run -it --rm alpine:3.9  /bin/sh
/ # apk add curl
(1/5) Installing ca-certificates (20190108-r0)
(2/5) Installing nghttp2-libs (1.35.1-r0)
(3/5) Installing libssh2 (1.8.0-r4)
(4/5) Installing libcurl (7.64.0-r1)
(5/5) Installing curl (7.64.0-r1)
Executing busybox-1.29.3-r10.trigger
Executing ca-certificates-20190108-r0.trigger
OK: 7 MiB in 19 packages
/ # curl -LSs https://raw.githubusercontent.com/fnproject/cli/master/install | sh
sh: fn: not found
/ #
/ #
/ # /usr/local/bin/fn
/bin/sh: /usr/local/bin/fn: not found
/ # apk add --no-cache libc6-compat
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
(1/1) Installing libc6-compat (1.1.20-r3)
OK: 7 MiB in 20 packages
/ # /usr/local/bin/fn
Fn Command Line Tool  -  Version 0.5.62


No network requirements section

We've seen several situations for users struggling with network configuration to use LAD successfully. Kindly point to the correct network requirements or add a network section in this documentation. Thank you.

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

ID: 13249027-1524-dd0c-9d83-15a9733a3d19
Version Independent ID: bf8a2d1a-8d9b-228a-6919-16127f315d40
Content: Azure Compute - Linux diagnostic extension 4.0 - Azure Virtual Machines
Content Source: articles/virtual-machines/extensions/diagnostics-linux.md
Service: virtual-machines
Sub-service: extensions
GitHub Login: @amjads1
Microsoft Alias: amjads

Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.

#reassign @MsGabsta

I am looking into this.

#reassign @bwren
Engaging Azure Monitoring Team.

Thanks for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner and we sincerely apologize for the delayed response. The requested updates have not been made since the creation of this issue, and the timeline for resolution may vary based on resourcing. We are closing this issue for now, but feel free to comment here as necessary. #please-close


When JkImport(Selenium), ivy breaks cause of XmlParser...

The exception seems to appear when running JDK 6 only. The FAQ in documentation explains how to workaround.


add instagram block tests

These changes are about Instagram testing

URL
Blocks
Messages

This branch will be merged to main. all good

This branch will be merged by me

deleted my old branch


Automatic dark mode

I'd love to see this on iOS 13. Seems hopefully straightforward since dark themes already exist

Device: iPhone / iOS 13.2.2
Version: 2.2.4 (1230)

Supported dark-mode in v2.3.0.


win: map <IP_ADDRESS> and :: addresses to localhost

On Linux when connecting, IP addresses <IP_ADDRESS> and :: are automatically converted to localhost. This adds the same functionality to Windows.
Ref: https://github.com/nodejs/node/issues/14900
Ref: https://github.com/nodejs/node/pull/14111

CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/419/

Another run, with correct Makefile: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/420/

Ideally I'd got the other way and throw on connect('<IP_ADDRESS>') since it reads as "connect to wherever", but I guess that will cause too much breakage...
So I'm +1 on this

Some bots had failed with Jenkins issues, I retriggered the build: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/421/

I'm +1 on this, as long as all Unixen behave like Linux.

Updated, PTAL. New CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/434/

The failures are unrelated, and the automatic mapping of <IP_ADDRESS> to localhost works on all tested platforms.

Updated, PTAL.
CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/442/

ping?

ping

ping?

ping?
@saghul @bnoordhuis

@bzoz I've dismissed my review but like I said, I don't know if I agree that this is a change for the better.  I won't block this PR but I can't say I wholeheartedly endorse it either.
@libuv/collaborators WDYT?

I'm conflicted as well.
But it does bring uniformity, and enables the
server.bind(0, '<IP_ADDRESS>');
client.connect(server.port, server.address);

pattern which is useful for IPC (and testing which is also nice)...

@imran-iq I've followed up on your suggestion, I think that indeed it looks simpler now.
PTAL

new CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/538/

Fixed the test, new CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/539/, PTAL

@libuv/collaborators ping?
I know it might be controversial. But it eases out differences between platforms, and fixes real world use case.
CI, since last 404ed: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/555/

ping?

CI after rebase: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/641

Landed in https://github.com/libuv/libuv/commit/2b32e77bb6f41e2786168ec0f32d1f0fcc78071b

Ho @bzoz, there's still a -1 from a collaborator.  You'll have to revert this.

@saghul commented he is generally +1 on the change and I've addressed his feedback here

@saghul Can you update your review if you're okay with this?
@bzoz As long as there's a negative review, you can't merge it.

Should I make a PR for revert or just push a revert commit?
Also, @saghul did not respond to my pings for some time now, how can I get this merged then?


Loading of fcsv agnostic to AFID order

I am trying to load an fcsv file which has some "jumbled" ordering of AFIDs (i.e., AFID 19 placed at 4th position but still contains the correct label). The load method seems to fail due to that (see attached screenshot). Perhaps creating a load method with some agnostic features to the loaded file may be a good thing to include.

Can you post the FCSV in question here?
If I'm understanding correctly, it had label 19, and desc Genu of CC, but because it wasn't the 19th row in the FCSV, the load method failed. I think it would make sense to support that case.

Just out of curiosity, @ataha24, was this installed via pip or was this a local install? I don't think the behaviour would change in any case, but if this was pip, it would be using v0.1.0 instead of the v0.2.0-pre-15.

This was indeed with pip install!

I editted the previous comment with a bit more detail, but just to reiterate, if you could post (or send) the fcsv in question, we can do a more in depth debug.


do not send address on request

related to https://github.com/impactMarket/api/pull/25

LGTM! BUT, I'd like to understand why address used to be sent through the API if we can discard is now.


Add functionality for opening self-servicing apps for major OS upgrade workflows

This PR adds a json config item local_url_for_upgrade intended to open a local URL within Jamf Self Service or Munki Managed Software Center (and other compatible management tools) to initiate a major OS upgrade workflow.

Up to you, but should it handle this part as well?
https://github.com/erikng/nudge/blob/725de44c747bfb5fabf15237b7534a11cea19a32/payload/Library/Application Support/nudge/Resources/nudge#L456-L477

This is a good point and brought to light a "gotcha" I missed in my method. Because you're simply reassigning the prefpane or MAS link to PATH_TO_APP when doing a minor version update, an admin using nudge for minor version updates ("update_minor": true) and specifying a local_url_for_upgrade for major versions would find major upgrades working correctly, but minor updates failing to open the prefpane/MAS since my redefinition of button_update included a logical switch around the former's case.
I've worked around this issue by following your lead and simply reassigning PATH_TO_APP with the admin-provided local_url_for_upgrade if present and removing changes to button_update. This winds up being an even more minor update to the codebase.
Since point updates don't require administrative privileges an external policy would not be needed unless an admin desired consistency by always pointing to a self-servicing app. My use case does not require this, so I'll leave it to someone else if this functionality is needed.
The feature now exists as an entirely optional "override" for redirecting major OS upgrade requests to the appropriate self-servicing app, and the README is updated accordingly.

Latest commit 6752d37 integrates these changes 👍

merged


gitter badge

Merge from dlthread to dev for gitter badge

I don't prefer merging from web interface as this always creates a new commit, but you could use this if you are uncomfortable with the command line.


onExecute hooks not called for subscriptions?

Issue workflow progress
Progress of the issue based on the Contributor Workflow

[ ] 1. The issue provides a minimal reproduction available on Stackblitz.

Please install the latest @envelop/* packages that you are using.
Please make sure the reproduction is as small as possible.

[ ] 2. A failing test has been provided
[ ] 3. A local solution has been provided
[ ] 4. A pull request is pending review

Describe the bug
Our application is leaking memory, and profiling reveals that executionContextDependencyStore in GraphQL Modules is growing for every new subscription. In our case, there are many subscriptions where a connection is established with subscriptions, and the subscription (separately or along with connection) is closed without ever executing anything.
When checking the implementation of graphql modules plugin,  it appears that related context cleanup is done in onExecute and onExecuteDone hooks.
In our described case, it appears onExecute is never called. The actual setup is very similar to graphql-ws example.
Before providing more exact steps and a canned test case, may I ask is this expected behavior, or have I simply broked our envelop so that execute() is never called? In case of subscriptions, how might I cleanup the graphql-module global map, e.g. as part of onComplete() callback from web socket server?
To Reproduce
Steps to reproduce the behavior:
Expected behavior

Environment:

OS: Alpine Linux / MacOS
NodeJS: 18.x
@envelop/* versions: 2.4.x

@envelop/core: 2.4.2
@envelop/graphql-modules: 3.4.2

Additional context

For subscriptions, onSubscribe is called. SO the cleanup there is missing 😓
Would you like help out and send PR for fixing this?

@n1ru4l Absolutely! I'll write a quick patch to @envelop/graphql-modules and see how it goes.

@n1ru4l I hope this one is acceptable. I am not perfectly happy about the test not verifying the actual leak, but I ran out of inspiration on how to verify that easily. At least the added test verifies it does not crash.
We are not in a hurry as we run a patch-package patched version, so if changes are needed, just let me know.


Review Neo4j documentation and the Auto-configuration implementation

Review the https://docs.spring.io/spring-ai/reference/api/vectordbs/neo4j.html documentation.
Source: https://github.com/spring-projects/spring-ai/blob/main/spring-ai-docs/src/main/antora/modules/ROOT/pages/api/vectordbs/neo4j.adoc

Review the neo4j boot auto-configuration: https://github.com/spring-projects/spring-ai/tree/main/spring-ai-spring-boot-autoconfigure/src/main/java/org/springframework/ai/autoconfigure/vectorstore/neo4j
Shouldn't we consider using the existing Neo4j boot starter and auto-conf instead of re-implementing the driver configuration again?

I think going with an "optional driver configuration" section and explaining that otherwise the auto-configured bean will be used is the way to go. There is already no need to configure it manually. Will do this.

Resolved with ffcb84e


⚠ ClamAV has degraded performance

In e058a18, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 71 ms

Resolved: ClamAV performance has improved in 54ad322 after 13 minutes.


NetApp IP MC - Switch monitoring or Cisco switch in general

Is your feature request related to a problem? Please describe.
Feature request if this is possible
Describe the solution you'd like
If possible any metric from the Cisco Cluster switches specially from the Metro Cluster. We had and issue with one of the replication port where down and ONTAP did not reported this. Case is open for investigation but independent from this it would be a huge improvement when harvest could collect some data from the supported/recommended Cisco switches.
Additional context
From my point of view harvest collects at the moment all possible metrics that are currently available in ONTAP. If this could be extended to Cisco switches this would be awesome.

While we evaluate the feasibility of adding a Cisco switch collector to Harvest, I gathered a list of existing open-source Cisco exporters. Have you tried any from the list below @BrendonA667?
You should be able to use one of these to:

collect and export Cisco switch metrics
update your existing instance of Prometheus to scrape the new endpoint
use those metrics in Grafana

Looks like most of the Cisco switches do not provide a REST API and instead, the collectors listed below, gather the metrics via ssh. Some of the Nexus switches provide a REST API. Most of the projects below have not been updated in a few years which may mean they are abandoned or feature complete.
We have not tried them and can not vouch for their quality.

https://github.com/wobcom/Cisco-Exporter
https://github.com/lwlcom/cisco_exporter
https://github.com/greenpau/network_exporter
https://github.com/AS-Path/cisco_exporter
https://karneliuk.com/2022/08/tools-11-running-prometheus-exporters-on-dis-aggregated-data-center-switches-cisco-nx-os-nvidia-cumulus-linux-arista-eos/

Hi @cgrinds Thank you for your feedback. We will discuss this if we use one of these exporters dedicated for Cisco or like a generic one with SNMP. My idea behind this request is, that since ONTAP already monitor the switches, there should (in my small world) any informations that Harvest could collect

hi @BrendonA667 understood. I like your idea. Can you see if this returns anything for you? Replacing $ip, $user, $pass with correct values.
curl -sk -u$user:$pass 'https://$ip/api/storage/switches?fields=*'

Hi @cgrinds with the API api/network/ethernet/switches?fields=* there is like the CLI output but unfortunately nothing which adds a big value regarding performance or the port status

@BrendonA667 looks like api/storage/switches?fields=*' should tell you if a port is down along with some speed and environmental metrics. Can you try that endpoint instead of network/ethernet/switches?

Having monitoring of MetroCluster ISL links in Harvest + nabox would be really useful. For example, we'd like to see the utilisation of the links to know if we need to upgrade the bandwidth between sites. Of course the up/down status is also really important.


Can't use DIRECT method

Hello! Thank you so much for developing this project, is helping me a lot in my research.
Until now I used local optimizers with no problem, but now that I'm trying to use a global optimizer I'm facing some troubles that I can't find solution to.
I'm trying to use the DIRECT method, which also happened with other global optimizers. No matter how many parameters I set up, I always get an NLOPT_INVALID_ARGS code. Here is a minimal script to replicate this, in the script I only set bounds but I've tried every method that starts with set_. Am I doing something wrong?
module myfoo
  use iso_fortran_env, only: wp => real64
  implicit none

contains

  function foo(x, gradient, func_data) result(f)
    real(wp), intent(in) :: x(:)
    real(wp), intent(in out), optional :: gradient(:)
    class(*), intent(in), optional :: func_data
    real(wp) :: f

    f = x(1)**2 + x(2)**2

  end function foo
end module

program main
  use myfoo, only: foo, wp
  use nlopt_wrap, only: create, destroy, nlopt_opt, nlopt_algorithm_enum
  use nlopt_callback, only: nlopt_func, create_nlopt_func
  implicit none

  type(nlopt_opt) :: opt
  type(nlopt_func) :: f

  real(wp) :: x(2), fval
  integer :: stat

  X = [2, 5]

  f = create_nlopt_func(foo)
  ! opt = nlopt_opt(nlopt_algorithm_enum%LN_NELDERMEAD, 2)
  opt = nlopt_opt(nlopt_algorithm_enum%GN_DIRECT, 2)

  call opt%set_min_objective(f)

  call opt%set_lower_bounds([-1._wp, -1._wp])
  call opt%set_upper_bounds([1._wp, 1._wp])

  call opt%optimize(x, fval, stat)
  print *, X
  print *, fval, stat

end program main

From the example code posted the main issue I am spotting is that X is already above the upper bounds of the optimizer. This could be for this particular example a reason for failure.
I will try to set some time on the weekend to check in more detail.

This works fine for me:
module myfoo
  use iso_fortran_env, only: wp => real64
  implicit none

contains

  function foo(x, gradient, func_data) result(f)
    real(wp), intent(in) :: x(:)
    real(wp), intent(in out), optional :: gradient(:)
    class(*), intent(in), optional :: func_data
    real(wp) :: f

    f = x(1)**2 + x(2)**2
    print *, "[", x, "]", f

  end function foo
end module

program main
  use myfoo, only: foo, wp
  use nlopt_wrap, only: create, destroy, nlopt_opt, nlopt_algorithm_enum
  use nlopt_callback, only: nlopt_func, create_nlopt_func
  use nlopt_enum, only: result_to_string
  implicit none

  type(nlopt_opt) :: opt
  type(nlopt_func) :: f

  real(wp) :: x(2), fval
  integer :: stat

  X = [.2, .5]

  f = create_nlopt_func(foo)
  ! opt = nlopt_opt(nlopt_algorithm_enum%LN_NELDERMEAD, 2)
  opt = nlopt_opt(nlopt_algorithm_enum%GN_DIRECT, 2)

  call opt%set_min_objective(f)

  call opt%set_lower_bounds([-1._wp, -1._wp])
  call opt%set_upper_bounds([1._wp, 1._wp])

  call opt%set_maxeval(200)

  call opt%optimize(x, fval, stat)
  print *, X
  print *, fval, result_to_string(stat)

end program main

Closing this as resolved, feel free to reopen.

Thanks for the help! I did not know that detail about the initial vector, makes sense


Fix for off('', '') throwing an exception

unsub was incorrectly treating the return value of Array.unshift as an array, when in fact it is the length of the array. It was also calling this.off.call incorrectly.

if a _event_ has a event '*', will the function off into loop ?

@hxsf your PR is more complete than mine; closing this one


[ja] Localize Distributed System into Japanese

Describe your changes
Localize https://glossary.cncf.io/distributed-systems/ into Japanese
Related issue number or link (ex: resolves #issue-number)
Resolve https://github.com/cncf/glossary/issues/2864
Checklist before opening this PR (put x in the checkboxes)

[x] This PR does not contain plagiarism

don’t copy other people’s work unless you are quoting and contributing it to them.

[x] I have signed off on all commits

signing off (ex: git commit -s) is to affirm that commits comply DCO. If you are working locally, you could add an alias to your gitconfig by running git config --global alias.ci "commit -s".

Target previews:

https://deploy-preview-3043--cncfglossary.netlify.app/ja/distributed-systems/


Catalog down?

When following the link to http://jkan.riskdatalibrary.org/ from the header of https://riskdatalibrary.org/, I get a 404 error:

The Jkan catalog was meant as a proof of concept before we had collaboration going with WB DDH (data catalog). At some points months ago there was some library issue that broke the website. I have no idea how to fix it.
Suggesting to just change the website link to point to RDL collection on DDH, as it is coming together.
@pzwsk @stufraser1 ?

That one is on me. It was working until recently actually, but I tried to update the Jkan with new metadata few days/weeks ago and must have broke something. In any case, agree to change website link to DDH but good to keep Jkan as another example (if working and with the right metadata).

Jkan site is back, deployed from rdl-0.1 branch.


Fails to build on the latest nightly for AArch64 when using the nightly feature

Hi, thanks for your work on this useful library! 😄
As stated in the issue title, crc32fast fails to build on the latest nightly (rustc 1.78.0-nightly (d44e3b95c 2024-02-09)) for AArch64 targets due to an unstable feature that was removed:

This is a fairly recent regression: nightlies older than a week or so are unaffected.
The Rust tracking issue for the removed stdsimd feature has already been referenced by other affected projects: https://github.com/rust-lang/rust/issues/48556

Thanks, fixed in 3580338b07a098b20288645e1c6126cf5f187f75 and released in v1.4.0. Please let me know if you encounter any other issues!

Now it builds fine again, thanks for the quick fix! :+1:


Moved: Vivaldi.Vivaldi version 5.5.2805.42

This pull request is automatically generated by 🥟 Dumplings
Microsoft Reviewers: Open in CodeFlow

@wingetbot run


Promises to enable clean load test scripts as complexity increases

The following changes were made:

Added Meteor.apply (via Client.prototype)
Added Meteor.call_GetPromise (via Client.prototype)
Added Meteor.apply_GetPromise (via Client.prototype)
Added Meteor.subscribe_GetPromise (via Client.prototype)

The Promise methods enable more complicated load tests. For instance, for the simple todos example, a good load test would:

start subscriptions to get all lists

one for public lists
another subscriptions for private lists

for each list so obtained, subscribe to the list items

This implies a level of asyncrony that vanilla Meteor.subscribe with callbacks cannot provide for. The same applies for methods. What we need are simple promises. So here is the described load test for Meteor's todos example:
LoadTester.addTask('get-all-data', function(Meteor, complete) {
    Promise.resolve()
        .then(function() {
            // Subscribe to both public lists and private lists
            return Promise.all([
                new Promise(function(resolve, reject) {
                    Meteor.subscribe('publicLists', function() {
                        resolve();
                    });
                }),
                Meteor.subscribe_GetPromise('privateLists')
            ]);
        })
        .then(function() {
            // For each available list, subscribe to the contents of each list
            return Promise.all(
                Object.keys(Meteor.collections.lists).map(
                    id => Meteor.subscribe_GetPromise('todos', id)
                )
            );
        })
        .then(function() {
            // Report what was done and complete task
            console.log(Object.keys(Meteor.collections.todos).length + ' todos from ' + Object.keys(Meteor.collections.lists).length + ' lists downloaded.');
            complete();
        });
});

Don't mind the LoadTest object and the complete method. It's part of a "quickstart" I've been goofing around with.

I like this.

Will merge soon.

cool

Would you be open to including a bit more syntactic sugar in meteor-down?
Stuff such as:

packaging operations into tasks
managing precedences
controlling the number of concurrent activities (e.g.: at most two concurrent "heavy methods" where there are 10, possibly different, items in the "heavy method" categoy)

I rolled a lot of that into a "quickstart" for meteor-down:
https://github.com/convexset/meteor-down-quickstart
It's more of a distro. since underscore and lodash are packed in to make it a real "quick start". Playing with that has led to me thinking about proper "operations orchestration" in load testing.
 Some of this was implemented a long time ago in a meteor package (some of it is ugly, first few months as a JS developer).
Perhaps things could be extended into "demographically realistic" load testing to "sample" use cases (with given probabilities).
What do you think about including this stuff in meteor-down?

Any update on this?

This looks awesome!

This is great!


Best practices for multi-host system configuration

This is partly inspired by the latest episode, where nixus was discussed.
While NixOS is awesome for configuring one computer. I am quite stumped on how i could leverage Nix to connect several machines together. Currently i am simply using DNS lookups trough a VPN or local-connection and just using my own knowledge where the services would connect between the hosts. Preferably we could stay around using nixos-rebuild --target and not super large tools like nixops.

I don't think this is entirely fit for a Nix hour, because Nix won't be involved for this other than configuring some runtime services. For example, here's some options that I know of to do this:

Discovery (figuring out which machine to connect to)

Hardcoded IPs in Nix
DNS records
Consul

Connectivity (how to transmit data between the machines)

Public IP
Zerotier
Some other VPN

I hope this helps, let me know!


⚠ Samsung has degraded performance

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

HTTP code: 200
Response time: 2150 ms

Resolved: Samsung performance has improved in 97ed063.


Update scalafmt-core to 3.7.0

Updates org.scalameta:scalafmt-core from 3.6.1 to 3.7.0.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (3.6.1).
You might want to review and update them manually.
yarn.lock

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "scalafmt-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scalameta", artifactId = "scalafmt-core" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, old-version-remains, commit-count:1

Codecov Report

Merging #729 (5be172f) into main (eec56ab) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff             @@
##              main      #729    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           66        56    -10
  Lines         2861      1970   -891
  Branches       475       322   -153
==========================================
- Hits          2861      1970   -891

Impacted Files
Coverage Δ

packages/recheck/src/lib/native.ts

packages/recheck/src/main.ts

packages/recheck/src/lib/exe.ts

packages/recheck/src/lib/worker-pool.ts

packages/recheck/src/browser.ts

packages/recheck/src/lib/env.ts

packages/recheck/src/lib/agent.ts

...ges/eslint-plugin-redos/src/rules/no-vulnerable.ts

packages/recheck/src/lib/java.ts

packages/recheck/src/lib/pure.ts

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Is it an error with rn 0.75.2. addView overrides nothing.

when I try to run my application I get the following error in building phase:
e: file:///C:/Users/yogid/Desktop/WE%20RNS/indibaba/node_modules/react-native-pager-view/android/src/paper/java/com/reactnativepagerview/PagerViewViewManager.kt:72:5 'addView' overrides nothing
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':react-native-pager-view:compileDebugKotlin'.

A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
Compilation error. See log for more details

The following is my package.json:
{
  "name": "indibaba",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "lint": "eslint .",
    "start": "react-native start",
    "test": "jest",
    "clean": "react-native-clean-project"
  },
  "dependencies": {
    "@react-native-community/masked-view": "^0.1.11",
    "@react-navigation/bottom-tabs": "^6.6.1",
    "@react-navigation/drawer": "^6.7.2",
    "@react-navigation/material-top-tabs": "^6.6.14",
    "@react-navigation/native": "^6.1.18",
    "@react-navigation/native-stack": "^6.11.0",
    "@tanstack/react-query": "^5.51.23",
    "axios": "^1.7.3",
    "indibaba": "file:",
    "react": "18.3.1",
    "react-native": "0.75.2",
    "react-native-bootsplash": "^6.1.1",
    "react-native-gesture-handler": "^2.18.1",
    "react-native-mmkv": "^2.12.2",
    "react-native-notifier": "^2.0.0",
    "react-native-pager-view": "^6.3.4",
    "react-native-reanimated": "^3.15.0",
    "react-native-safe-area-context": "^4.10.8",
    "react-native-screens": "^3.34.0",
    "react-native-tab-view": "^3.5.2",
    "zustand": "^4.5.4"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0",
    "@babel/preset-env": "^7.20.0",
    "@babel/runtime": "^7.20.0",
    "@react-native/babel-preset": "0.75.2",
    "@react-native/eslint-config": "0.75.2",
    "@react-native/metro-config": "0.75.2",
    "@react-native/typescript-config": "0.75.2",
    "@types/react": "^18.2.6",
    "@types/react-test-renderer": "^18.0.0",
    "babel-jest": "^29.6.3",
    "babel-plugin-module-resolver": "^5.0.2",
    "eslint": "^8.19.0",
    "jest": "^29.6.3",
    "prettier": "2.8.8",
    "react-native-clean-project": "^4.0.3",
    "react-test-renderer": "18.3.1",
    "typescript": "5.0.4"
  },
  "engines": {
    "node": ">=18"
  },
  "packageManager"<EMAIL_ADDRESS>}

I haven't used it yet I just installed react-native-pager-view and @react-navigation/material-top-tabs. Now I am getting this error

Already merged changes in https://github.com/callstack/react-native-pager-view/pull/857 will release new version soon

Running into this too, Thanks @MrRefactor !

is that with changes from the PR applied? @anudit

Fixed in https://github.com/callstack/react-native-pager-view/releases/tag/v6.4.0

hey @hakanolgun as for now 7.0.0-rc is no longer supported, all features from 7.0.0 are also in 6.4.0 so I highly encourage you to use that version.


Support for STM32MP257

0x01002927
OK I didn't know that (currently learning as I go!). I tried it and it works with these 2. Thanks for that.
I went to check the IDs for the STM32 board and I'm having no luck. According to ARM Development Studio, these were the IDs it discovered with automatic discovery (using an ST-LINK v3):
[28/12/24 22:44:28] Enumerating AP devices for DAP at scanchain index 0:
[28/12/24 22:44:28] APIDR of access port 0 = 0x54770002 (APB-AP)
[28/12/24 22:44:28] APIDR of access port 1 = 0x84770001 (AHB-AP)
[28/12/24 22:44:28] Failed to read AP_IDR register for AP index 4
[28/12/24 22:44:28] APIDR of access port 4 = 0x44770004 (AXI-AP)
[28/12/24 22:44:28] Failed to read AP_IDR register for AP index 16
[28/12/24 22:44:28] Number of AP buses detected: 3
[28/12/24 22:44:28] AP types:
[28/12/24 22:44:28] 		APB-AP
[28/12/24 22:44:28] 		AHB-AP
[28/12/24 22:44:28] 		AXI-AP

Are the above 3 APIDR values what I should be using with target-sel?
The output with them is:
C:\Apps\Probe>probe-rs.exe info --protocol swd --target-sel 0x54770002
Probing target via SWD

Error showing ARM chip information for Debug Port Multidrop(1417084930): An ARM specific error occurred.

Caused by:
    0: An error occurred in the communication with an access port or debug port.
    1: Target device did not respond to request.

Debugging RISC-V targets over SWD is not supported. For these targets, JTAG is the only supported protocol. RISC-V specific information cannot be printed.
Debugging Xtensa targets over SWD is not supported. For these targets, JTAG is the only supported protocol. Xtensa specific information cannot be printed.

C:\Apps\Probe>probe-rs.exe info --protocol swd --target-sel 0x84770001
Probing target via SWD

Error showing ARM chip information for Debug Port Multidrop(2222391297): An ARM specific error occurred.

Caused by:
    0: An error occurred in the communication with an access port or debug port.
    1: Target device did not respond to request.

Debugging RISC-V targets over SWD is not supported. For these targets, JTAG is the only supported protocol. RISC-V specific information cannot be printed.
Debugging Xtensa targets over SWD is not supported. For these targets, JTAG is the only supported protocol. Xtensa specific information cannot be printed.

C:\Apps\Probe>probe-rs.exe info --protocol swd --target-sel 0x44770004
Probing target via SWD

Error showing ARM chip information for Debug Port Multidrop(1148649476): An ARM specific error occurred.

Caused by:
    0: An error occurred in the communication with an access port or debug port.
    1: Target device did not respond to request.

Debugging RISC-V targets over SWD is not supported. For these targets, JTAG is the only supported protocol. RISC-V specific information cannot be printed.
Debugging Xtensa targets over SWD is not supported. For these targets, JTAG is the only supported protocol. Xtensa specific information cannot be printed.

If I do a more generic "info", I get:
C:\Apps\Probe>probe-rs.exe info --protocol swd
Probing target via SWD

ARM Chip with debug port Default:
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
 WARN probe_rs::probe::arm_debug_interface: DAP FAULT
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
 WARN probe_rs::probe::arm_debug_interface: DAP FAULT
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
Error showing ARM chip information for Debug Port Default: An error occurred in the communication with an access port or debug port.

Caused by:
    Target device responded with a FAULT response to the request.

Trying alternate multi-drop debug ports
Error showing ARM chip information for Debug Port Multidrop(16787751): An ARM specific error occurred.

Caused by:
    0: An error occurred in the communication with an access port or debug port.
    1: Target device did not respond to request.

Error showing ARM chip information for Debug Port Multidrop(285223207): An ARM specific error occurred.

Caused by:
    0: An error occurred in the communication with an access port or debug port.
    1: Target device did not respond to request.

Debugging RISC-V targets over SWD is not supported. For these targets, JTAG is the only supported protocol. RISC-V specific information cannot be printed.
Debugging Xtensa targets over SWD is not supported. For these targets, JTAG is the only supported protocol. Xtensa specific information cannot be printed.

C:\Apps\Probe>

If I use a ST-Link v2 on ARM Dev Studio, it complains Multi-drop SWD is not supported, but on the v3 there are no such complaints. Segger's J-Link software also complains this is a Multi-drop SWD device and only does bare minimal with the first AP it finds.
I can confirm that I can access all APs with J-Link on OpenOCD, so this proves the SWD connection is wired up correctly.
Info : J-Link V10 compiled Jan 30 2023 11:28:07
Info : Hardware version: 10.10
Info : VTarget = 3.336 V
Info : clock speed 5000 kHz
Info : SWD DPIDR 0x6ba02477
Info : [stm32mp25x.ap0] Examination succeed
Info : stm32mp25x.a35_0: hardware has 6 breakpoints, 4 watchpoints
Info : stm32mp25x.a35_1: hardware has 6 breakpoints, 4 watchpoints
Info : [stm32mp25x.m33] Cortex-M33 r1p0 processor detected
Info : [stm32mp25x.m33] target has 8 breakpoints, 4 watchpoints
Info : [stm32mp25x.m0p] Cortex-M0+ r0p1 processor detected
Info : [stm32mp25x.m0p] target has 4 breakpoints, 2 watchpoints
Info : [stm32mp25x.axi] Examination succeed

The .cfg used is from ST direct.
Should I turn this into a new bug focusing on STM32MP2x, or maybe I should rename this one?
I will try writing the yaml for it in the meantime.

Originally posted by @DualTachyon in #2996

@DualTachyion, I'm continuing the discussion here, to make it clearer.
The APIDR values are something different, based on the output it seems that the chip has the standard layout, where you have a single debug port (DP), which gives you access to multiple access ports (APs). In this setup, you usually don't need to specify a targetsel value.
You could try connecting over JTAG, the STM chips usually support both JTAG and SWD.

Thanks for migrating to this bug!
Unfortunately, the development board only exposes SWD. Link: https://www.myirtech.com/list.asp?id=780
Just running "info" with SWD protocol yields these errors. Are they something worth pursuing?
ARM Chip with debug port Default:
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
 WARN probe_rs::probe::arm_debug_interface: DAP FAULT
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
 WARN probe_rs::probe::arm_debug_interface: DAP FAULT
 WARN probe_rs::probe::arm_debug_interface: Error reading CTRL/STAT register. This should not happen...
Error showing ARM chip information for Debug Port Default: An error occurred in the communication with an access port or debug port.

I wrote a new and very basic yaml based on the BCM2712 file and I can confirm that running just "gdb" works. I will look into adding the other cores and more detailed memory map.
name: STM32MP2 Series
variants:
- name: STM32MP257
  cores:
  - name: CPU0_0
    type: armv8a
    core_access_options: !Arm
      ap: 0
      debug_base: 0x80210000
      cti_base: 0x80220000
  memory_map:
  - !Ram
    name: SRAM
    range:
      start: 0x20000000
      end: 0x20040000
    cores:
    - CPU0_0

I added all 4 cores using information from the ST OpenOCD config file, but I'm getting an error related to the Cortex M cores:
C:\Storage\GIT\probe-rs>cargo run -- gdb --chip STM32MP257
   Compiling probe-rs v0.25.0 (C:\Storage\GIT\probe-rs\probe-rs)
   Compiling probe-rs-tools v0.25.0 (C:\Storage\GIT\probe-rs\probe-rs-tools)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.85s
     Running `target\debug\probe-rs.exe gdb --chip STM32MP257`
Error: Connecting to the chip was unsuccessful.

Caused by:
    0: An ARM specific error occurred.
    1: The AP with address FullyQualifiedApAddress { dp: Default, ap: V1(8) } does not exist.
error: process didn't exit successfully: `target\debug\probe-rs.exe gdb --chip STM32MP257` (exit code: 1)

I don't know if it's a mistake or an omission I made, or whether the SoC has some quirkiness or if I hit a bug with probe-rs.
name: STM32MP2 Series
variants:
- name: STM32MP257
  cores:
  - name: CPU1_0
    type: armv8a
    core_access_options: !Arm
      ap: 0
      debug_base: 0x80210000
      cti_base: 0x80220000
  - name: CPU1_1
    type: armv8a
    core_access_options: !Arm
      ap: 0
      debug_base: 0x80310000
      cti_base: 0x80320000
  - name: CPU2
    type: armv8m
    core_access_options: !Arm
      ap: 8
      cti_base: 0xe0042000
  - name: CPU3
    type: armv6m
    core_access_options: !Arm
      ap: 2
      cti_base: 0xf0000000
  memory_map:
  - !Ram
    name: SRAM
    range:
      start: 0x20000000
      end: 0x20040000
    cores:
    - CPU0_0
    - CPU1_0
    - CPU2
    - CPU3

I added a "cti_base" to the 2 Cortex M cores as OpenOCD defines them, but it seems probe-rs is not expecting them? I tried without including the CTI bases and it made no difference.
The relevant information from OpenOCD:
# define AXI & APB Memory Access Ports
# NOTE: do not change the order of target create
target create $_CHIPNAME.ap0 mem_ap -dap $_CHIPNAME.dap -ap-num 0
target create $_CHIPNAME.axi mem_ap -dap $_CHIPNAME.dap -ap-num 4
target create $_CHIPNAME.ap2 mem_ap -dap $_CHIPNAME.dap -ap-num 2 -defer-examine
target create $_CHIPNAME.ap8 mem_ap -dap $_CHIPNAME.dap -ap-num 8 -defer-examine

# define the first Cortex-A35
cti create $_CHIPNAME.cti.a35_0 -dap $_CHIPNAME.dap -ap-num 0 -baseaddr 0x80220000
target create $_CHIPNAME.a35_0 aarch64 -dap $_CHIPNAME.dap -dbgbase 0x80210000 -ap-num 0 -cti $_CHIPNAME.cti.a35_0 -defer-examine

# define the second Cortex-A35
cti create $_CHIPNAME.cti.a35_1 -dap $_CHIPNAME.dap -ap-num 0 -baseaddr 0x80320000
target create $_CHIPNAME.a35_1 aarch64 -dap $_CHIPNAME.dap -dbgbase 0x80310000 -ap-num 0 -cti $_CHIPNAME.cti.a35_1 -defer-examine

# define the Cortex-M33
target create $_CHIPNAME.m33 cortex_m -dap $_CHIPNAME.dap -ap-num 8 -defer-examine
cti create $_CHIPNAME.cti.m33 -dap $_CHIPNAME.dap -ap-num 8 -baseaddr 0xe0042000

# define the Cortex-M0+
target create $_CHIPNAME.m0p cortex_m -dap $_CHIPNAME.dap -ap-num 2 -defer-examine
cti create $_CHIPNAME.cti.m0p -dap $_CHIPNAME.dap -ap-num 2 -baseaddr 0xf0000000

# define the system CTIs
cti create $_CHIPNAME.cti.sys0 -dap $_CHIPNAME.dap -ap-num 0 -baseaddr 0x80090000
cti create $_CHIPNAME.cti.sys1 -dap $_CHIPNAME.dap -ap-num 0 -baseaddr 0x800a0000

I suspect this portion is needed to make the Cortex Ms appear:
# Uses AP0 and AXI
proc _enable_debug {} {
	# set debug enable bits in DBGMCU_CR to get ap2/cm0+ and ap8/cm33 visible
	# set DBG_SWD_SEL_N bit in DBGMCU_CR to get ap2/cm0+ on main debug interface
	$::_CHIPNAME.ap0 mww 0x80010004 0x17

Is there a way to make this write from the yaml, or is a change in the Rust code necessary?

There are "sequences", which are used for this. See e.g probe-rs/src/vendor/st/sequences/stm32h7.rs


httpx.TooManyRedirects: Exceeded maximum allowed redirects.

Traceback (most recent call last):
File "/root/QChatGPT/plugins/revLibs/main.py", line 105, in normal_message_received
reply_message = procmsg.process_message(session_name=kwargs['launcher_type']+""+str(kwargs['launcher_id']),
File "/root/QChatGPT/plugins/revLibs/pkg/process/procmsg.py", line 32, in process_message
session: revss.RevSession = revss.get_session(session_name)
File "/root/QChatGPT/plugins/revLibs/pkg/process/revss.py", line 111, in get_session
sessions[name] = RevSession(name)
File "/root/QChatGPT/plugins/revLibs/pkg/process/revss.py", line 41, in init
self.rev_interface_impl,,_ = rev_interface_impl_class.create_instance()
File "/root/QChatGPT/plugins/revLibs/pkg/process/impls/edgegpt.py", line 34, in create_instance
return EdgeGPTImpl(cookies_dict, revcfg.new_bing_style if hasattr(revcfg, "new_bing_style") else ConversationStyle.balanced), True, cookies_dict
File "/root/QChatGPT/plugins/revLibs/pkg/process/impls/edgegpt.py", line 38, in init
self.chatbot = Chatbot(cookies=cookies)
File "/usr/local/lib/python3.10/dist-packages/EdgeGPT.py", line 320, in init
Conversation(self.cookiePath, self.cookies, self.proxy)
File "/usr/local/lib/python3.10/dist-packages/EdgeGPT.py", line 217, in init
response = self.session.get(
File "/usr/local/lib/python3.10/dist-packages/httpx/_client.py", line 1018, in get
return self.request(
File "/usr/local/lib/python3.10/dist-packages/httpx/_client.py", line 785, in request
return self.send(
File "/usr/local/lib/python3.10/dist-packages/httpx/_client.py", line 871, in send
response = self._send_handling_auth(
File "/usr/local/lib/python3.10/dist-packages/httpx/_client.py", line 907, in _send_handling_auth
response = self._send_handling_redirects(
File "/usr/local/lib/python3.10/dist-packages/httpx/_client.py", line 939, in _send_handling_redirects
raise TooManyRedirects(
httpx.TooManyRedirects: Exceeded maximum allowed redirects.

Same here


[New Feature]: Premium scroll bar using lenis scroll

🎮 feature Request
Premium scroll bar using lenis scroll
Point down the features
feature points
Select program in which you are contributing
No response
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

I want to work on the nav section, please assign me this under gssoc level 2
Record
I agree to follow this project's Code of Conduct
I'm a GSSOC'24 contributor
I want to work on this issue

@rajlaxmi03 Could you please explain more what you want to do, if possible you can also add screenshot.
If you have any doubt you can directly send message on our discord (https://discord.gg/rZb46cCMmK), we have created seprate chennals for all projects...
Thank you :)


docker run --storage-opt=size= fails within sysbox container with XFS /var/lib/docker

On a host with an XFS filesystem mounted at /var/lib/docker, docker run --storage-opt=size=<x> succeeds on containers (runc and sysbox-runc) launched from the host, but fails on containers launched from within a sysbox-runc container with a volume mounted /var/lib/docker, running dockerd.
Steps to reproduce:

Mount an XFS filesystem at /var/lib/docker on the host:

# mount -v | grep /var/lib/docker
/dev/sdb on /var/lib/docker type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,prjquota)

Launch a sysbox container e.g. docker run --runtime=sysbox-runc --mount=type=volume,dst=/var/lib/docker and launchdockerd within the container. Confirm that, within the sysbox container, /var/lib/docker is indeed XFS (as it should be, as it will be located within /var/lib/docker/volumes on the host):

# mount -v | grep docker
/dev/sdb on /var/lib/docker type xfs (rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,prjquota)

Now, within the same sysbox container, running docker run --rm -it --storage-opt=size=<x> debian bash will fail:

# docker run --rm -it --storage-opt=size=2G debian bash
docker: Error response from daemon: --storage-opt is supported only for overlay over xfs with 'pquota' mount option.

Hi @struanb , thanks for filing the issue.
# docker run --rm -it --storage-opt=size=2G debian bash
docker: Error response from daemon: --storage-opt is supported only for overlay over xfs with 'pquota' mount option.

Sounds like the inner Docker does not think it's /var/lib/docker is on XFS, even though you confirmed that it is.
What does the inner Docker report with docker info?
Thanks!

Here is docker info from the inner Docker, on the sysbox container:
$ docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.7.1-docker)
  scan: Docker Scan (Docker Inc., v0.12.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.12
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc version: v1.0.2-0-g52b36a2
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.10.0-9-cloud-amd64
 Operating System: Debian GNU/Linux 10 (buster)
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 4GiB
 Name: b7c93c4c034b
 ID: GVSC:KL2A:V3FX:AXJV:KV3N:DNJM:PNCT:HJXE:G4TN:F7IC:RMBK:BH2N
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false

Also, for completeness, here is findmnt /var/lib/docker from the sysbox container:
$ findmnt /var/lib/docker/
TARGET          SOURCE                                                                                FSTYPE OPTIONS
/var/lib/docker /dev/sdb[/volumes/a8ff0dfc54fe3e83c50871aa0e282142698657958b4de5ea09df57b5b6128652/_data] xfs    rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,prjquota

HI @ctalledo thanks for considering this. I believe the prjquota cannot be the problem, as the host also reports prjquota yet doesn't complain.
Both host and sysbox container are running Debian Bullseye, and docker info reports version 20.10.12 on both.
Is it possible that shiftfs is not propagating some other property from the underlying xfs filesystem that Docker expects to find?

I've also just retested with shiftfs removed, and userns enabled (by the sysbox package installer), and I experience the same error, which seems to rule out shiftfs per-sais, although I don't know if uid/gid mapping could still be triggering the issue.
The only other difference reported by docker info between host and sysbox container is Native Overlay Diff, which is true on the host, and false on the sysbox container.
P.S. Even if unrelated to this issue, this might be worth looking into as apparently this may impact performance:
time="2022-02-12T22:55:43.937324506Z" level=warning msg="Not using native diff for overlay2, this may cause degraded performance for building images: running in a user namespace" storage-driver=overlay2

A bit more digging, suggests that access to the underlying XFS device may be needed for quota management.
Running strace xfs_quota -c quota /var/lib/docker/ on the host (where /dev/sdb is the XFS block device) shows access is made to /dev/sdb, and ultimately quotactl(QCMD(Q_XQUOTASYNC, USRQUOTA), "/dev/sdb") = 0 is called.
Bind-mounting /dev/sdb from host into the sysbox container would rather defeats the purpose if, as seem likely, it undermines security; but in any event, inside the sysbox container the same call fails with quotactl(QCMD(Q_XQUOTASYNC, USRQUOTA), "/dev/sdb") = -1 EPERM (Operation not permitted).

Hi @struanb, thanks for the update regarding the work-around. Using --volume-opt on the sounds great, was not aware of this option. How did you specify it? I image at volume creation time correct?
Having said this, we still want to investigate why using --storage-opt on the inner Docker containers does not work. I think this will require digging a bit more into XFS as well as into the Docker engine code to see exactly why it's confused into thinking that it's not working on XFS:
# docker run --rm -it --storage-opt=size=2G debian bash
docker: Error response from daemon: --storage-opt is supported only for overlay over xfs with 'pquota' mount option.

Examples (on the host):

docker run --rm -it --mount=type=volume,dst=/opt,volume-opt=size=2G debian bash -c 'df -h / /opt'
Filesystem      Size  Used Avail Use% Mounted on
overlay          50G  5.2G   45G  11% /
/dev/sdb        2.0G     0  2.0G   0% /opt

docker volume create --name test124 -o size=5G && docker run --rm -it --mount=type=volume,src=test124,dst=/opt debian bash -c '
df -h / /opt'
test124
Filesystem      Size  Used Avail Use% Mounted on
overlay          50G  4.1G   46G   9% /
/dev/sdb        5.0G     0  5.0G   0% /opt

Thanks for the info @struanb ...


How can I add two galleries in a simple html?

Hi.
I'm really excited with this plugin, but I need add two galleries in a simple html, can you help me?
Thanks

check issue #37, is it the same question as you?


Implement RFC 0050: Rename Buildpack

Renames 'Paketo PHP Distribution Buildpack' to 'Paketo Buildpack for PHP Distribution'.
Implements RFC 0050, https://github.com/paketo-buildpacks/rfcs/issues/233, for this buildpack.
Signed-off-by: Daniel Mikusa<EMAIL_ADDRESS>

@thitch97 need a review please!


Provide a version that will run in a browser.

surrealdb.js runs in a browser.  This should too?

Turns out it does run in browser.


PROFIBUS DP with CP 5711

I am using PROFIBUS DP with CP 5711.
How can we communicate and get data?

Snap7 only handles Ethernet S7 Protocol communications. An USB->MPI adapter does not work. An MPI->Ethernet adapter should work.


Finalize 8.2.1 release notes

Add last minute fixed issues

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.


Add-PowerBIDataset cmdlets

Add-PowerBIDataset and related cmdlets
New-PowerBIDataset
New-PowerBITable
New-PowerBIColumn
Added implicit converter to models.
Added md files.
Add DataType enum

I fixed my local code following the feedback. I will wait until i get remaining questions answered by some of you, then I complete them and commit.


[regex] [CSV_REQ_OPTION]

Summary
when I use csv_req_option, it seems that I can only put the true value of parameter or filter in csv_req_option, can we use regex to filter the data? cuz for tableau, it could be possible that for some field there would be some similar value pulled in in the future.

Unfortunately that's not possible. TSC is a simple wrapper on the Tableau REST APIs and there is no support for regex searching like this, just age and filters: https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_ref.htm#query_view_data
I'll take as a backend enhancement for future reference.

thank you so much


Remove unused RetrieveProperty function

Summary
Remove RetrieveProperty from properties service
Fixes #4421
Change Type
Mark the type of change your PR introduces:

[ ] Bug fix (resolves an issue without affecting existing features)
[ ] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[x] Refactoring or test improvements (no bug fixes or new functionality)

Testing
Ran unit tests
Review Checklist:

[ ] Reviewed my own code for quality and clarity.
[ ] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[ ] Checked that related changes are merged.

coverage: 54.595% (-0.05%) from 54.642%
when pulling 58e9392aaece49b30c677ae2ba9b9ca6b59c2b3e on navnitms:remove-unused-RetrieveProperty
into 657bf015e97b53d58cb057bc87420b31c4fbeeb7 on mindersec:main.


Remove list of other tools

Or replace it with a link to https://www.open-contracting.org/resources/open-contracting-tools-directory/

Fixed by #54


updated package.json

updated package glob from 7.1.1 to 7.1.2

Is there a particular bugfix this is needed for? Otherwise, the semver range will auto update to this version when you install.


CreatePipe should have *mut HANDLE arguments instead of *mut isize

Current CreatePipe signature:
pub unsafe extern "system" fn CreatePipe(
    h_read_pipe: *mut isize,
    h_write_pipe: *mut isize,
    lp_pipe_attributes: *mut SECURITY_ATTRIBUTES,
    n_size: u32
) -> BOOL

I feel that should be instead:
pub unsafe extern "system" fn CreatePipe(
    h_read_pipe: *mut HANDLE,
    h_write_pipe: *mut HANDLE,
    lp_pipe_attributes: *mut SECURITY_ATTRIBUTES,
    n_size: u32
) -> BOOL

It's been fixed in commit https://github.com/microsoft/windows-rs/commit/d82a5232fa7ba86b5dec3cfcacc2ac1e0561a9bd after metadata was updated (https://github.com/microsoft/win32metadata/issues/198).
Are you building from the master branch?

I was building off 0.3.1, I'll try with master. Thanks!

The docs have also been updated. Here is CreatePipe.


Generate RPC endpoint documentation for api.oxen.io

This enhances/fixes/updates storage server's RPC documentation to make it convertible to markdown documentation —and thus in-browser documentation, via docsify—for https://api.oxen.io/storage-rpc .
(This is currently built on top of #477 as I wanted to document the new subaccount endpoints without bothering with the old subkey endpoints; this PR is done, but pending completion/merging #477).

Thank you for writing the document!
I think we need to be very careful when utilizing a deterministic blinding mechanism like k = H(A.pubkey || B.pubkey) mod L . We might risk exposing social graph if not using it carefully, especially in closed-group settings.
According to https://oxen.caliban.org/operator/ranking, the foundation controls 170+ nodes, while a significant number of other operators manage between 10 and 120+ nodes.  These operators have access to a significant amount of Session identity public keys, covering from 5% to over 40% of Session ID partition spaces within a total of 260+ swarms.
If operators decide to scan their nodes and extract Session IDs, coupled with closed-group public keys observed from their respective nodes, they could essentially replicate the deterministic blinding mechanism. If they run through all possible combinations of (Session ID, Group ID) exhaustively, they can recover a substantial amount of the social graph, because Session IDs who share the same closed group might leak their social connections.

First point: There's nothing in here that specifically requires that: you could generate a random k put that into the key instead of k = H(...) (by which I mean: this mechanism doesn't require determinism; that's just a suggestion).

Indeed, I was aware of this. My intention was to discuss the design of the close group in general, but I was unable to find an appropriate thread. I apologize for hijacking the thread. Please let me know if you have a better suggestion for where to discuss close group design.

The information leak is something of a problem, but is somewhat mitigated by the fact that the storage server doesn't know which keys have been issued: the admin simply generates it and sends it to a user, so there's no (easy) ability to scrape pubkeys in use (unlike, say, with SOGS): you'd have to modify storage server, hook into the authentication code to dump incoming auth requests, and then use that -- and that is only doable on SNodes in your control.

That's an aspect I hadn't considered—thank you for pointing it out. It certainly makes sense. However, ideally we should try as hard as we can to protect the association between the user's unblinded and blinded ID from being scraped.
A resourceful attacker might be able to gain access to 50% of unique swarm IDs by controlling only 10% of nodes, according to swarm id coverage of individual service node operator.
If an attacker were to stake 3750 Oxen per node and offer an extremely low operation fee to attract contributors, they would need only 170*3750 = 637,500 Oxen to control 10% of nodes, or 50% of unique swarms. With access to 50% of Session IDs, the attacker might be able to recover a significant portion of the social graph if they are able to modify the storage server and recompute the deterministic link between Session ID and Closed Group ID.
According to research such as Robust De-anonymization of Large Sparse Datasets, an anonymous social network can be de-anonymized if its social graph is known and a third-party dataset of the social network is used for comparison and matching.
If we don't prevent potential social graph leakage from the beginning, the longer we operate the network, the less confidence we can have in the social graph protection we provide to our users. It would be incredibly difficult to assure users of the likelihood of their social graph being protected or their privacy being preserved. It would be complex to explain to users that "under certain assumptions, if the number of bad operators is below a certain threshold, then the likelihood of your privacy being compromised is not higher than a certain value, please do your own research to evaluate your risk based on your threat model".

According to https://api.oxen.io/storage-rpc/#/subaccounts?id=authentication, https://api.oxen.io/storage-rpc/#/subaccounts?id=revoke_subaccount, as well as related source code and other documents, I understand that a persistently maintained list of keys belonging to removed users resides on the storage server.
Ideally, I think the resources we allocate to a task should be proportionate to the value it confers to the user. When a user is removed from a group, we cease to offer them any value. If we are obliged to indefinitely retain some metadata to prevent the user from scraping the storage server, then the resources we allocate are disproportionately higher than the value they afford the user. In this context, our 'resources' include storage, time, and future maintenance obligations. Holding onto an indefinite obligation of maintenance in the time dimension for a user who no longer accesses a group seems disproportionately high. Conversely, a system design where an authentication key is rotated each time a user is removed would align more closely with the principle that "the resources we allocate should be proportional to the value it provides to the user."
Let's imagine a catastrophic event leading to some swarms losing random data. In a future update, we may accidentally delete or overwrite some revocation lists or some of their elements during a migration. This would place us in an unfortunate situation, as we would be unable to identify which groups' scraping protections are affected and which remain secure. If we were to implement a key rotation mechanism for scraping protection, the worst-case scenario in a catastrophic event involving the loss of random data (including authentication public keys), would necessitate asking users to issue new public keys. Despite this inconvenience, we could still assure users that their groups would not be vulnerable to scraping by former members.
In essence, an 'authentication key rotation' design would offer greater robustness than a 'revocation list' design in the event of a catastrophe.

Conversely, a system design where an authentication key is rotated each time a user is removed would align more closely with the principle that "the resources we allocate should be proportional to the value it provides to the user."

Indeed, and the subaccount revocation is a non-airtight solution that is mainly advisory rather than providing long-term security.
The long-term security happens within the group itself: once a user is removed, the group's keys are rotated so that even if a user still has access to the group (e.g. because of the revocation not being added, or because they are an admin of a storage server in the group's swarm) they can't do anything with the group data as they no longer are issued encryption keys.
This is by design: we need groups to be re-joinable on a newly restored device, or when a device has been offline for a considerable amount of time.  Our design achieves this by storing the keys within the swarm, with a best-effort (but not airtight) authentication revocation on the outside, so that a user on a new device, or who has been away for a long time, can still come back to the group, re-fetch keys/info/members messages, and get updated keys needed to decrypt and rebuild all the group's info.  It's important that a removed user cannot get that data, though, and so there is the two-pronged approach here: a best-effort revocation list, plus an (inner) key rotation of all the stored messages so that even if the best-effort revocation isn't enough, the user still can't get anything out of the group other than seeing that opaque binary blobs are being posted in it.
A key rotation mechanism on the storage server itself would mean that there is state (the access keys) that has to be externally communicated when it changes: until you get the new keys, you can't access the storage server at all, and so if you are away for an extended period during which keys rotated, you would have no way to get those keys yourself: we'd need to build out-of-band communication with an admin, which is a pretty bit usability drag.


Change model

There are 3 models in the _notebook : naive bayes, simple neural networks, and CNN with google hub.
I created dataset directory to organize.
I kept all models just in case.
For the website, use the model with hub.
Import custom dataset (Dr.kahng mentioned) doesn't apply yet because there is an issue on uploading speed.
I will add import dataset button later after finding the best option for it.
Let me know if you have problem!
Thanks

In the TextClassification (naiveBayes) when u import the trainingSet file, it's missing datasets/ before it so it doesnt work -- could u fix that?

In the TextClassification (naiveBayes) when u import the trainingSet file, it's missing datasets/ before it so it doesnt work -- could u fix that?

In SimpleNN I get this error "UserWarning: IPython.utils.traitlets has moved to a top-level traitlets package."  so it might be a me issue but I couldnt run and test it for this reason, i have other hw so i dont want to figure it out but if laura & owen say its cool to merge its cool w./ me

In SimpleNN I get this error "UserWarning: IPython.utils.traitlets has moved to a top-level traitlets package."  so it might be a me issue but I couldnt run and test it for this reason, i have other hw so i dont want to figure it out but if laura & owen say its cool to merge its cool w./ me


Parts of terrain "world noise" disappear when looking up

When looking up at a bit of an angle, bits of terrain start disappearing, seemlingly just the parts added with the "world noise" option. This happens with a fresh setup with the latest version of the addon, even inside the demo.
2023-09-16 09-19-59.webm

World noise isn't real terrain. It's just noise generated in the shader.
When parts of the mesh disappears, it means the height of the real or fake terrain is outside of the AABB, which is visible under storage/read_only/height range. Sculpting the real terrain adjusts the height range but adjusting the shader noise does not. I don't think it's a good idea for world noise to change the AABB of the real data, or I'd have to have a separate AABB for the world noise 🤔 .
You can either disable noise, reduce it's size, or update the AABB with set_height_range:
https://github.com/TokisanGames/Terrain3D/blob/13ea87e0988fed86b71a91b2d21348c16d078d6c/src/terrain_3d_storage.cpp#L1547

That all makes perfect sense, and thanks for the suggestions! May be a good idea to put that somewhere in the docs or something, maybe troubleshooting? Thanks for the help

Fixed in 668b3a3 Increase cull margin in the settings to something like 2000 if the noise is very tall.


ConfigMap with embedded YAML file

I've been trying to write some tests around the generation of a configmap with an embedded YAML file.
Eg my template looks something like:
apiVersion: v1
kind: ConfigMap
metadata:
  name: agent-config
  labels:
    {{- include "jetstack-agent.labels" . | nindent 4 }}
data:
{{- if .Values.config.override.config }}
  config.yaml: |-
  {{- toYaml .Values.config.override.config | nindent 4 }}
{{- else }}
  config.yaml: |-
    server: {{ .Values.config.server | quote }}
    organization_id: {{ required "Organisation is a required input value" .Values.config.organisation }}
    cluster_id: {{ required "Cluster is a required input value" .Values.config.cluster }}
...

The problem I have in my test, is how to say, check that the generated config.yaml has the relevant contents.
I tried this:
suite: test configuration overrides
templates:
  - templates/configmap.yaml

tests:
  # This checks the configmap is rendered properly when required config is given
  - it: render correctly when required config is given
    set:
      config.organisation: test_org
      config.cluster: test_cluster
    template: configmap.yaml
    asserts:
      - equal:
          path: data
          value: config.yaml |-
            server: https://platform.jetstack.io
            organization_id: test_org
            cluster_id: test_cluster
            data-gatherers:
            # gather k8s apiserver version information
           ...

But get the following:
 FAIL  	deploy/charts/jetstack-agent/tests/configuration_test.yaml
	- Execution Error:
		yaml: line 58: mapping values are not allowed in this context

I could embed the whole thing as a string, but then I have to do the same to the expected value to make it match which is no longer testing a valid input.
I also tried removing the |- and I think that was better. But then it's no longer a valid configmap.
Does anyone do something similar? any good examples? I'm a little stuck how to test the configmap contents.

For context I had a great suggestion from a colleague to use snapshots. (TY @davidcollom)
  # This checks the configmap is rendered properly when required config is given
  - it: render correctly when only required config is given
    set:
      config.organisation: test_org
      config.cluster: test_cluster
    template: configmap.yaml
    asserts:
      - hasDocuments:
          count: 1
      - isKind:
          of: ConfigMap
      - isAPIVersion:
          of: v1
      - matchSnapshot: {}

Where I just templated the end configmap and dumped the file over in tests/__snapshot__/configuration_test.yaml.snap
So I guess my question is if this the right approach in this type of scenario?
YAML config files seem fairly common.

Hello @hawksight,
When you want an equals to the configmap the snapshot is the best option. You can even snapshot only the data part, see https://github.com/helm-unittest/helm-unittest/blob/main/DOCUMENT.md
When you want validation of parts you can also use a similar approach like in this sample https://github.com/helm-unittest/helm-unittest/blob/main/test/data/v3/basic/tests/configmap_test.yaml
Greetings,
@quintush

Thank you @quintush for the speedy reply.
Those examples are perfect as well. I'll close this as it works now.


Toolbar title cannot be read fully on mobile

Hey,
When I visited your demo site, I only saw "Angular ..." as title in the toolbar. If you want it to show fully, add mdc-toolbar__section--shrink-to-fit as a class to the section that contains the github icon. Take a look at this
Hope it helps

@touficbatache, thanks! Looks much cleaner.
Incase anyone else encounters this in the future..
    <mdc-toolbar-section [alignEnd]="true" [shrinkToFit]="true">

@touficbatache, wondering if you have any suggestions to make the Toolbar demo more dynamic. Switching between the different checkbox options, doesn't seem to fire off recalculations on the Toolbar if (fixed, waterfall and flexible are checked). Debugging the MDC Toolbar code, it may not be performing recalculations.
Any thoughts?


Problem Module not found: Can't resolve '../assets/icons/align-center.png' in 'C:\node_modules\react-native-cn-quill\lib\src\constants'

how i can solove C:/Users/Dell/app/node_modules/react-native-cn-quill/lib/src/constants/icons.js
Module not found: Can't resolve '../assets/icons/align-center.png' in 'C:\Users\Dell\app\node_modules\react-native-cn-quill\lib\src\constants'

@hayaAbdulaziz could you please provide more details like your environment.
As this files are included in the package, there shouldn't be any problem.

@hayaAbdulaziz could you please provide more details like your environment.
As this files are included in the package, there shouldn't be any problem.

"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"@expo-google-fonts/inter": "^0.1.0",
"@expo/webpack-config": "^0.12.77",
"@react-native-picker/picker": "^1.16.1",
"@react-navigation/native": "^5.9.4",
"@react-navigation/stack": "^5.14.5",
"expo": "~41.0.1",
"expo-app-loading": "^1.1.2",
"expo-linear-gradient": "^9.1.0",
"expo-status-bar": "~1.0.4",
"expo-video-thumbnails": "^5.1.0",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-41.0.0.tar.gz",
"react-native-cn-richtext-editor": "^1.0.43",
"react-native-dropdown-picker": "^5.1.21",
"react-native-elements": "^3.4.2",
"react-native-gesture-handler": "^1.10.3",
"react-native-modal-dropdown": "git+https://github.com/siemiatj/react-native-modal-dropdown.git",
"react-native-responsive-dimensions": "^3.1.1",
"react-native-responsive-screen": "^1.4.2",
"react-native-screens": "^3.4.0",
"react-native-selectme": "^1.2.3",
"react-native-web": "~0.13.12"
},
"devDependencies": {
"@babel/core": "^7.14.5"
},
"private": true
}

I have the same issue. My Expo project is not in TypeScript, might that be the problem? @imnapo

I've tried to reproduce this error but it worked as expected, both on iPhone and android devices in typescript and JavaScript expo projects.

Have possible the same problem on icons resolving (on all icons)
Could not read source map for
http://localhost:8081/node_modules/react-native-cn-quill/src/assets/icons/align-center.bundle?platform=ios&modulesOnly=true&app={MyAppName}&dev=true&minify=false&runModule=true&shallow=true:
Unexpected 500 response from http://localhost:8081/node_modules/react-native-cn-quill/src/assets/icons/align-center.map?platform=ios&modulesOnly=true&app={MyAppName}&dev=true&minify=false&runModule=true&shallow=true:

Error

Error: Unable to resolve module
./node_modules/react-native-cn-quill/src/assets/icons/align-center from
{Path to my app}.: None of these files exist:
  * node_modules/react-native-cn-quill/src/assets/icons/align-center(.native|.ios.js|.native.js|.js|.ios.json|.native.json|.json|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx)
  * node_modules/react-native-cn-quill/src/assets/icons/align-center/index(.native|.ios.js|.native.js|.js|.ios.json|.native.json|.json|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx)
    at ModuleResolver.resolveDependency ({Path to my app}/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:107:15)
    at DependencyGraph.resolveDependency ({Path to my app}node_modules/metro/src/node-haste/DependencyGraph.js:288:43)
    at {Path to my app}/node_modules/metro/src/lib/transformHelpers.js:129:24
    at Server._resolveRelativePath ({Path to my app}/node_modules/metro/src/Server.js:1072:12)
    at async Server.requestProcessor [as _processSourceMapRequest] ({Path to my app}/node_modules/metro/src/Server.js:428:37)
    at async Server._processRequest ({Path to my app}/node_modules/metro/src/Server.js:389:7)

@hayaAbdulaziz , @ChechkovEugene and @Samilei , I removed image files and replaced it with base64 strings in the new update to fix this issue.
Let me now if it's working now.


How to handle authorization via middlewares

Today I noticed an issue with Livewire and routes that are protected by authorization middlewares.
The component will initially load as defined by the policy that is enforced by the middleware. Now where the issue kicks in is when I trigger any action that causes a request to the server which will result in a 403.
Route
https://github.com/convertlog/convertlog/blob/master/routes/dashboard.php#L91-L93
View
https://github.com/convertlog/convertlog/blob/master/resources/views/livewire/notification-settings/email.blade.php#L40
Components
https://github.com/convertlog/convertlog/blob/master/app/Http/Livewire/NotificationSettings/NotificationSettings.php
What would currently be the recommended way of handling cases where Livewire components are pages and protected by middlewares for authentication and authorization?

The issue seems to be that getGateArguments in this line https://github.com/laravel/framework/blob/5.8/src/Illuminate/Auth/Middleware/Authorize.php#L43 returns an empty array because it runs against /livewire/message instead of the URL of the page/component which would contain the model.
That seems like a tricky one to solve as this is the direct result of how Livewire works overall.

@calebporzio What do you think would be the best approach here?

Make authorization middlewares work nicely together with components which requires some changes to how requests are send due to missing route bindings.
Decouple Livewire from middlewares for authorization and introduce a authorize method on components that would be called as abort_unless($this->authorize(), 403) before a component is rendered.

<?php

namespace App\Http\Livewire;

use Livewire\Component;

class ShowPost extends Component
{
    public function authorize(): View
    {
        return Gate::allows('update', Post::first());
    }
}

I am also curious on this. I just made a "hacky" work around.
I have a route like this using a Policy:
Route::get('organizations/{type}/{number}/edit')
    ->middleware('can:update,Models\Organization');

My middleware loads the organization based on type and number by pulling them from the route.
$organization = Organization::getByTypeAndNumberOrFail(
    request()->route('type'),
    request()->route('number')
);

As @faustbrian mentioned, when Livewire calls this middleware, the route values are null as the request is a Livewire request.
For the time being, I set two public properties of type and number on the component and in the middleware first checking the route and then request()->data['type|number'].
I am looking for a better solution. I could store the Organization model in Livewire's State Management when the page initially loads and trust that they still have access to that organization on subsequent requests by Livewire but I don't like that. I like to explicitly check auth on every request.
I think @faustbrian idea of an authorize method on the Component is a good alternative.
Open to other suggestions and best practice for this in Livewire!

@faustbrian - yeah, I think you're right. An "->authorize()" method is best.
The middleware mimicking in livewire used to make sense before other security measures were in place. I think I'll remove it. It just causes more headaches and doesn't even really make sense anymore.

@faustbrian / @wsamoht -> mind checking over this PR: https://github.com/livewire/livewire/pull/309
I want to make sure I'm not messing anything up.
Are we safe to just assign the default web middleware group to the livewire/message/ route?

I am not yet familiar enough with the inter-workings of Livewire to comment on whether or not you are messing things up :) But, it does make sense to remove the middleware mimicking and add a ->authorize() method so the developer can have full control of any required authorization. Are you thinking of adding the authorize option in this PR or with the release of this change? Just wondering as I am using Livewire in an admin panel so I need some sort of authentication. Can you also elaborate on the "other security" measures that are in place?
Thinking about assigning the default web middleware group, I think that works. Livewire is always going to be used with a GUI/frontend so it makes sense to apply that just like any other web page/route. Maybe though, a config option could be added, like middleware_group if someone wanted to override it?

Just had an idea in that why not use the Illuminate\Foundation\Auth\Access\AuthorizesRequests trait like Laravel controllers do. I added the trait and am calling $this->authorize in my Livewire component save method. Works great!
Maybe just remove the middleware logic, add the web middleware group, and document that if you need authorization, use the AuthorizesRequests trait and Laravel's standard gates/policies.
Example:
use Livewire\Component;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

class OrganizationEdit extends Component
{
    use AuthorizesRequests;

    public $type;
    public $number;

    public function mount(Organization $organization)
    {
        $this->type = $organization->type;
        $this->number = $organization->number;
    }

    public function render()
    {
        return view('livewire.app.organization-edit');
    }

    public function save()
    {
        $organization = Organization::getByTypeAndNumberOrFail($this->type, $this->number);

        $this->authorize('update', $organization);

        // Do saving stuff
    }
}

Solid! I changed livewire to not mimic middleware, default to "web", and added a config option for the middleware group called: config('livewire.middleware_group').
Also, I added documentation describing your solution:
https://laravel-livewire.com/docs/authorization/
Great work on this! Thanks a bunch all the great help!

I'm curious whether this pattern can/should also be used for scoping? I mean something like this: https://forum.laravel-livewire.com/t/scoping-component-data-based-on-url-path/322
Where you have a route like: app.com/{company}/products, you'd normally want to scope the list of products to the company, also making sure the current user can even access the company in the first place. Easy enought with standard Laravel, but when Livewire fetches the component via AJAX, the scoping is gone, because there is no {company} in the livewire endpoint path.
I got it to work by passing $company as a public prop to the ProductsList component, but I'm a little concerned that since Livewire simply passes this via AJAX back to the server, it can be tampered with and changed.
I would normally just use a middleware on those company-scoped paths, but Livewire only uses a single middleware group. This makes it impossible to use the middleware for company-scoped components only.
This made me think whether I should forego the middleware in my controllers for ensuring proper scope completely, and simpply use Policies, which would always check if the user has access to the company in question, and only then check if they can for example, update a product for that company.


Cutom log format error

Hello,
I am getting following error.
root@stag-vultr:~# goaccess -f /var/log/nginx/energy.staging90.com.access.log -a
GoAccess - version 0.8.5 - Sep 17 2021 04:01:53
Fatal error has occurred
Error occured at: goaccess.c - main - 832
Nothing valid to process.
Sample log: [21/Sep/2021:18:39:46 +1000] <IP_ADDRESS> 0.424 - energy.staging90.com "GET / HTTP/2.0" 503 3929 0.423 "https://energy.staging90.com/" "WordPress/5.8.1; https://energy.staging90.com"
Could you please advise me with the correct log format.
Thank you!

This should work. Also, please make sure to update your goaccess to the latest version since 0.8.5 is pretty behind.
goaccess access.log --log-format='[%d:%t %^] %h %T %^ %v "%r" %s %b %^ "%R" "%u"' --date-format=%d/%b/%Y --time-format=%T

Feel free to use the official deb repo if running debian/ubuntu.

Could you help me with my log as well?
<IP_ADDRESS> - - [16/Sep/2021:23:43:19 +0200] "GET /console/ HTTP/1.1" 302 161 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"
<IP_ADDRESS>.0 - - [28/Sep/2021:00:00:03 +0200] "GET /datascience/stats HTTP/2.0" 200 436 "https://domain/datascience" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36 OPR/79.0.4143.50" "-"

goaccess aggregated.log --log-format=COMBINED
Parsed 1 linesproducing the following errors:

Token '<IP_ADDRESS>.0' doesn't match specifier '%h'

Format Errors - Verify your log/date/time format

Hi @massih10
Please, try the suggestion made for allinurl. It is seems OK and work in my tests.
However You have some problem, maybe try set LANG, i.e. export LANG en_US.UTF-8, and try run again.


Bump artifacts dependencies

Merge / deployment checklist

[ ] Confirm this change is backwards compatible with existing workflows.
[ ] Confirm the readme has been updated if necessary.
[ ] Confirm the changelog has been updated if necessary.

Okay... it looks like uploading to a different artifact directory (name) each time will work, but this will break how some of our PR checks look for debug artifacts so I'll have to update those too.
Also, I'm trying to think of any other consumers we have that might expect the debug directories to look a certain way 🤔

I split out a bunch of the refactoring into https://github.com/github/codeql-action/pull/2475 so that this PR can stick to bumping the dependencies.

Closing in favor of https://github.com/github/codeql-action/pull/2482.


Adding IDP section, article, and YT video

Description
This PR adds a section for internal developer portals, which are a tool used in platform engineering. It adds Port to this lift and shifts Backstage and OpsLevel to this list as well. This PR also adds a YouTube video and a guide about platform engineering as it relates to IDPs. Finally, since a new section is added, the table of contents have been updated.

Thank you @aidan-port , approved 👍


Add certification tests for MemCached State Store component

The MemCached State Store component requires certification tests to be created.
Add conformance tests if not present.

/assign

Updated test plan, adding "Test network instability section"

Memcached State Store certification testing
This project aims to test the Memcached State Store component under various conditions.
This state store supports the following features:

CRUD
TTL

Test plan
Basic Test for CRUD operations:

Able to create and test connection.
Able to do set, fetch, update and delete.
Negative test to fetch record with key, that is not present.

Test save or update data with different TTL settings:

TTL not expiring (0 for memcached)
TTL not a valid number
Provide a TTL of 1 second:

Fetch this record just after saving
Sleep for 2 seconds
Try to fetch again after a gap of 2 seconds, record shouldn't be found

Test network instability

Configure memcache with a known (non-default) timeout of 20 seconds.
Set a key to show the connection is fine. Make the TTL is way bigger than the timeout. Say 4x its value.
Interrupt the network (the memcache ports) for longer than the established timeout value.
Wait a few seconds seconds (less than the timeout value).
Try to read the key written on step 2 and assert its.

Out of scope

Tests verifying content persistence on Memcached reloads are out of scope as Memcached data is ephemeral.
Tests for features not implemented by Memcached are out of scope. This includes

Transactional
ETag

Notice that memcached has the concept of 64-bit CheckAndSet (CAS) values but that doesn't translate cleanly to ETags.

Actors
Query

References:

Memcache State Component reference page
List of state stores and their features
Memcached API reference
gomemcache - our client documentation


[ISSUE #4650] Admin tool sendMsgStatus add more description

Make sure set the target branch to develop
What is the purpose of the change
Close #4650
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Codecov Report

Merging #4651 (dcf3c29) into develop (8ccffa7) will decrease coverage by 0.06%.
The diff coverage is 100.00%.

@@              Coverage Diff              @@
##             develop    #4651      +/-   ##
=============================================
- Coverage      44.31%   44.24%   -0.07%
+ Complexity      7280     7266      -14
=============================================
  Files            968      968
  Lines          65899    65899
  Branches        8635     8635
=============================================
- Hits           29204    29158      -46
- Misses         33086    33130      +44
- Partials        3609     3611       +2

Impacted Files
Coverage Δ

...tmq/tools/command/broker/SendMsgStatusCommand.java
34.28% <100.00%> (ø)

...q/namesrv/routeinfo/BrokerHousekeepingService.java
72.72% <0.00%> (-9.10%)
:arrow_down:

...a/org/apache/rocketmq/logging/inner/SysLogger.java
28.57% <0.00%> (-5.72%)
:arrow_down:

...java/org/apache/rocketmq/logging/inner/Logger.java
51.67% <0.00%> (-4.31%)
:arrow_down:

...mq/broker/topic/TopicQueueMappingCleanService.java
12.43% <0.00%> (-3.63%)
:arrow_down:

...ava/org/apache/rocketmq/filter/util/BitsArray.java
59.82% <0.00%> (-2.57%)
:arrow_down:

...org/apache/rocketmq/store/ha/DefaultHAService.java
67.48% <0.00%> (-1.85%)
:arrow_down:

...lient/impl/consumer/DefaultMQPushConsumerImpl.java
31.64% <0.00%> (-1.56%)
:arrow_down:

...mq/store/ha/autoswitch/AutoSwitchHAConnection.java
73.56% <0.00%> (-1.37%)
:arrow_down:

...rg/apache/rocketmq/remoting/netty/NettyLogger.java
14.96% <0.00%> (-1.37%)
:arrow_down:

... and 18 more

Coverage increased (+0.03%) to 48.503% when pulling dcf3c29b677cfa9b2236ff237dc140a0cd7370a8 on Oliverwqcwrw:develop-sendmsgstatus-fix-32 into 8ccffa7e8ad3fcc30c3390591118b86b0f5be897 on apache:develop.


Question about crop size

Hello, author:
If I want to use Crop size 512, in evaluate function, col += int(grid * 2 / 3) and row += int(grid * 2 / 3) in sliding_window, this 2/3 will cause code error because of non-integer division, how much will the author suggest to set?

或许设置原始的321就不错呢

Hi, could you please detail the code error? Why would int(grid * 2 / 3) cause the error when grid is set as 512?


GUI showing wrong interface mappings

After creating the topology on the GUI, it is observed that it does not show the interface mapping correctly. For example vmx1 -- vmx2 interface is being shown as vmx1 -- vmx3.
Attachment shows the wrong mapping. The correct is as shown in the CLI below
root@vmxa_1# show interfaces
ge-0/0/0 {
description "To vmxa_2";
unit 0 {
family inet {
address <IP_ADDRESS>/30;
}
}
}
ge-0/0/1 {
description "To vmxa_3";
unit 0 {
family inet {
address <IP_ADDRESS>/30;
}
}
}
ge-0/0/2 {
description "To A-LR-mx104";
flexible-vlan-tagging;
encapsulation flexible-ethernet-services;
unit 101 {
vlan-id 101;
family inet {
address <IP_ADDRESS>/30;
}
}
}
fxp0 {
unit 0 {
family inet {
address <IP_ADDRESS>/24;
}
}
}

found a an issue with GUI library. I've implemented a fix, but it requires some testing and validation first. Please test the latest commit and let me know how this works for you.

It got fixed partially but few routers still showing wrong mappings.... :(


Validation Image Decoding Fails

Description
The validation image generation is currently producing only random noise patterns (see attached example image) instead of proper decoded images. This appears to be a systematic failure in the VAE decoding pipeline, particularly with bfloat16 handling.

Current Behavior

Validation images show random noise/static pattern
No visible image structure or content
Consistent gray background with small white/black dots
Pattern suggests early pipeline failure rather than just dtype mismatch

Current Implementation
def prepare_image(img):
    with torch.cuda.amp.autocast():
        if img.shape[1] == 4:
            img = self.default_vae.decode(img / 0.18215).sample
        img = img.float()
    return img

Root Cause Analysis

VAE Initialization:

self.default_vae = AutoencoderKL.from_pretrained(
    "stabilityai/stable-diffusion-xl-base-1.0",
    subfolder="vae",
    torch_dtype=torch.bfloat16
).to(device)

Potential Issues:

VAE weights not properly loaded in bfloat16
Decoder normalization failing
Latent scaling factor incorrect
Memory corruption during decode

Proposed Fix
class ModelValidator:
    def __init__(self, ...):
        # Load VAE in float32 first
        self.default_vae = AutoencoderKL.from_pretrained(
            "stabilityai/stable-diffusion-xl-base-1.0",
            subfolder="vae"
        ).to("cuda")

        # Explicit dtype handling for decode
        def prepare_image(img):
            with torch.no_grad():
                # Convert to float32 for decode
                if img.dtype == torch.bfloat16:
                    img = img.float()

                # Proper scaling and decode
                if img.shape[1] == 4:
                    img = img / 0.18215
                    img = self.default_vae.decode(img).sample

                # Ensure valid image range
                img = torch.clamp(img, -1, 1)

            return img

Validation Steps

Add tensor validation:

def validate_tensor(tensor, stage=""):
    print(f"[{stage}] Shape: {tensor.shape}, "
          f"dtype: {tensor.dtype}, "
          f"range: ({tensor.min():.3f}, {tensor.max():.3f}), "
          f"mean: {tensor.mean():.3f}")

Add checkpoints in decode pipeline:

# Before decode
validate_tensor(img, "pre-decode")
# After decode
validate_tensor(decoded, "post-decode")

Testing Plan

Generate validation images with float32 VAE
Compare with bfloat16 results
Add tensor validation logging
Test with small batch of known-good latents

Impact

Validation images showing noise pattern
Unable to verify training progress
Potential training issues going undetected

even with bf16 images returned failed decodes as such:

Have you considered using ollin's fixed vae or tiny vae implementation for validation loop?


Column "authohide"

Hello
does materialize support "autohide" option, like jQuery Collumn toggle:
http://demos.jquerymobile.com/1.4.5/table-column-toggle/
What I need is to display only 1 or 2 columns on small screens, 2 or 3 columns on mid-size screens and 4 or more columns on large screens.
Thank you.

https://github.com/Dogfalo/materialize/issues/4767

I'm sorry about that :(
I just try to find our how to use Materialize with some features from Bootstrap, like https://v4-alpha.getbootstrap.com/migration/#responsive-utilities
Do you have any suggestion of how to do that, please?

This is less of a materialize issue itself and more of a general "how to" question. As the framework maintainers we can't possibly answer every "how to do this and that" question. Try asking on stack overflow or in our gitter channel. Thanks.


MAJOR BUG IN PYGAM VERSION 0.9.0

THERE IS A MAJOR BUG IN PYGAM VERSION 0.9.0 !!
When installing pygam version 0.9.0, the command :
import pygam
pygam.__version__ gives0.8.0 instead of 0.9.0
Please update the pygam.__version__ accordingly.
Thank you.

Thanks for pointing this out!
this is super confusing