cargo doc does not seem to respect RUSTFLAGS

Problem
In the following repo:
https://github.com/yongqli/bug-test
Running
RUSTFLAGS="-L/opt/homebrew/opt/libomp/lib" cargo build --release

on macOS works, but running
RUSTFLAGS="-L/opt/homebrew/opt/libomp/lib" cargo test --doc

fails with linker error.
Tested on cargo 1.71
Steps
No response
Possible Solution(s)
No response
Notes
On macOs you may need to install dependencies by running brew install libomp.
Version
No response

Looks like this was the issue: https://github.com/rust-lang/cargo/issues/4737

Have you tried RUSTDOCFLAGS?

Is there a way to pass linker arguments to cargo doc based on target triple? Only rustflags is listed under [target.<triple>]: https://doc.rust-lang.org/cargo/reference/config.html#configuration-format

Have you tried RUSTDOCFLAGS?

Yes, RUSTDOCFLAGS worked.

Is there a way to pass linker arguments to cargo doc based on target triple? Only rustflags is listed under [target.<triple>]: https://doc.rust-lang.org/cargo/reference/config.html#configuration-format rustdocflags is not accepted.

No. And afaik no one requested for that. (I've fixed an issue around btw https://github.com/rust-lang/cargo/pull/11323)
The request does look different from this issue you've tried to fix. If possible, to make it clear, could you open a new one and close this?

Okay. Maybe don't need to open a new one. In #6460 there are some upstream issue linked need to deal with first. I'll close this now. If you have different thoughts, please let use know. Thank you :)


Fixing get version bug in cli section

fixed an error which prevents to get current version of json-server using  json-server --version command for version alpha v1

Hello, I downloaded this package as a global package by using the command below:
npm install -g json-server
Then when I want to use json-server --version  command to learn version of json-server package
I got this error:
 file:///C:/Users/xxxxxxxxxx/npm/node_modules/json-server/lib/bin.js:60
            const pkg = JSON.parse(readFileSync(join(__dirname, '../package.json'), 'utf8'));
                                                     ^

ReferenceError: __dirname is not defined in ES module scope
This file is being treated as an ES module because it has a '.js' file extension and 'C:\Users\xxxxxxxxxx\npm\node_modules\json-server\package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs' file extension.
    at args (file:///C:/Users/xxxxxxxxxx/npm/node_modules/json-server/lib/bin.js:60:54)
    at file:///C:/Users/xxxxxxxxxx/npm/node_modules/json-server/lib/bin.js:91:49
    at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:530:24)
    at async loadESM (node:internal/process/esm_loader:91:5)
    at async handleMainPromise (node:internal/modules/run_main:65:12)

Node.js v18.12.1

Hello, I think this is a bug seen if type of package is set as 'module'   in package.json file because when you want use __dirname variable directly,  this error occurs. I wrote some codes to fix this bug, and I think I solved this bug for version alpha v1.

Hi,
Thanks for the PR!
Really sorry, I didn't see it before quick fixing it myself right now.
The fix is correct though :+1:


cast error while ExplorerLocalizationsDelegate() + french support

fix : Unhandled Exception: type '() => Future<dynamic>' is not a subtype of type '() => Future<Object>' in type cast
The explorer pluggin does not work. At least under  (I haven't tried an older version) :
Flutter 2.2.0 • channel stable • https://github.com/flutter/flutter.git
Framework • revision b22742018b (il y a 11 jours) • 2021-05-14 19:12:57 -0700
Engine • revision a9d88a4d18
Tools • Dart 2.13.0

A cast error is caused by : localizationsDelegates: [ExplorerLocalizationsDelegate()]
I did a quick fix by removing the forced cast to let the dynamic conversion do it.
I know that this code has been generated via package:intl/generate_localized.dart but at least now it works.

Thanks for you contribution!

@EmixamPP update published at pub.dev (2.1.0)
https://pub.dev/packages/explorer/versions/2.1.0

Nice !


Separation of driver interface from high level library

Looking forward to ev3dev-lang-python 2.0...
I don't know if this has come up in GitHub before, but in some of my out-of-band discussions with @rhempel in the early days of ev3dev-lang-python, the idea was that it would be a low-level wrapper around the drivers and that a (separate) higher level library/API would be built on top of it.
One of the most frequent support requests I get for ev3dev is how do I make a motor move in python. Explaining this is not easy. The reason being that the library exposes all of the driver implementation details and requires the user to understand them.
I think this library would be much more fun and easy to use if we could make all of the low-level driver wrappers internal or separate somehow where most people don't have to worry about it or ever see it. This would also fix the problem of breaking driver changes resulting in breaking all user programs. If we hide the driver details from the user, then we only have to fix ev3dev-lang-python and all user programs keep working.
I've had the idea in the back of my mind for a long time to make a python API based on the EV3-G blocks to make is super-easy to transition from official EV3 to text based programming. I'm remembering back 8 years ago when I got my first MINDSTORMS (NXT) and I was not an expert programmer like I am now. I found it really helpful that NXC basically had the same API and features as the NXT-G software. It made learning the new language/library easier because for me because I knew what to look for. I knew how motors and sensors worked in NXT-G, so I knew there must be functions in NXC that did more-or-less the same thing and would have more-or-less the same name.
Here is an example of something I did a while back that shows how you could make a 1:1 correspondence between EV3-G and python.

In practice, I don't think I would make it 1:1 exactly, but the point is to make something a bit more familiar to EV3 users and hide all of the driver details so that we can continue to improve the drivers without breaking everyone's programs.
I see some pull requests adding high level APIs, which is nice, but I think it would be tremendously helpful to have a clear separation between these APIs and the driver wrappers.

So maybe have ev3dev-lang-python be primarily the code generated via the templates (that would allow this repo to be comparable to other ev3dev-lang-XYZ repos) and then create a ev3dev-lang-python-api that would contain

helper.py
GyroBalancer.py
fonts?
webserver.py
demo...or put these in a separate repo?  It seems like having them in the api repo would be a good place for them but I'm not sure if that muddies the waters for including the demo folder as part of the base ev3dev image.

I like the idea of having an API for many of the EV3-G blocks.  That would make it much easier for someone who is following an EV3-G program in a book to port it to python.

I've generally been attempting to move in the direction of adding higher-level APIs, but we certainly haven't hit complete interface parity with EV3-G.
Personally, I think we should avoid having two entirely different libraries (it causes confusion when some people use one and other people use a different one) but I could certainly see an architecture where we pull out the low-level interfaces into their own module and don't advertise them for the purposes of external use. If someone is particularly interested in execution speed they could use the inner module, but we wouldn't recommend it for most users. Does that seem reasonable?
The question I have is: exactly what level of API are we interested in supporting? We should begin by defining, at least in a general sense, the API surface that we want to expose, and then draw a line between the lower-level interfaces and the new ones. For example, for sensors, would we expose get_mode and set_mode? Or just get_distance and then it sets the mode automatically?

Starting on page 21 here they cover a few of the motor blocks
http://stemrobotics.cs.pdx.edu/sites/default/files/Lego Robot - 2013EV3Programming.pdf
To be sure there are full docs out there somewhere on all of the different blocks...hopefully

Here are the medium motor blocks. They are exactly the same as the Large motor but operate on the Medium motor.

Move steering has all of the same methods as the single motor blocks with additional parameters an extra port and for steering.

The move tank blocks are similar to move steering, but have independent motor power parameters instead of a steering parameter.

The display block:

RE: micropython - The micropython framebuffer module is missing drawing circles, images from file and different text sizes, but otherwise has the same functions.

The sound block. The play_type parameter can be "Wait for completion", "play once" or "repeat".

LED block:

Buttons:

Color sensor. Note: calibration is implemented in software, it is not a feature of the hardware driver.

The blocks above should give a pretty good idea of the core features of the EV3-G software, but is by no means exhaustive. All of the green action blocks are shown, but I've only included one sensor in the yellow sensor blocks. Also, all sensors can be used in the orange flow control blocks, but those can be implemented using python if, while orfor statements. The red data operation blocks can be implemented using built-in python operators for the most part (variable assignment, comparisons, math operations, lists/tuples) and some standard modules (random)

And for comparison, here is another simple "api" from OpenRoberta. Again, just doing motors and sensors because everything else can be done with basic python stuff.

Here is the implementation of the OpenRoberta blocks:
https://github.com/OpenRoberta/robertalab-ev3dev/blob/develop/roberta/ev3.py
It shows that we quite far away for having a 1-2 lines of py for each block. Suggestions to reduce code size (or even PRs) welcome. The new MotorSet will certainly help.

I'll file bugs for each for each of these so we can break this down into some smaller chunks

See

#353
#354
#355
#356
#357
#358

Also see

#361
#362
#363
#364


merge with huge amount of diffs, 500 in UI, GetPatch: signal: killed in log

Gitea version (or commit ref): 1.8.3
Git version: 2.17.1
Operating system: Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-1043-aws x86_64)
Database (use [x]):

[ ] PostgreSQL
[ X ] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ X ] No
[ ] Not relevant

Log gist:
2019/07/17 00:36:19 [...routers/repo/pull.go:929 CompareAndPullRequestPost()] [E] GetPatch: signal: killed

attempt to create Pull Request. There's a great many changed files as a large binary dependency is being swapped in, new for old. Along with many other required changes to update the dependency. After picking the To and From branches, it's about 6 seconds before the next screen of the UI appears. says at the bottom, "Some files were not shown because too many files changed in this diff " . If we then click the Create Pull Request button, it spins for Page: 60126ms Template: 2ms and gives a 500. Log shows:
2019/07/17 01:53:55 [...routers/repo/pull.go:929 CompareAndPullRequestPost()] [E] GetPatch: signal: killed
I tried changing in app.ini:
PULL_REQUEST_QUEUE_LENGTH = 10000
from the default of 1000, but this had no effect. I think this seems like a hard coded timeout is being exceeded. Possibly quick fix for this?
Thanks much,

Drew

Maybe you can change some timeout args on [git]

Maybe you can change some timeout args on [git]

Nope. I already have all those values set VERY high. None of them effect this exactly 60 second timeout...
[git.timeout]
MIGRATE = 1800
MIRROR  = 1800
CLONE   = 1800
PULL    = 1800
GC      = 1800

also, nothing is getting killed by OOM killer. Judging by the page load timer, this always gets killed at 60 seconds. I think this is a non-exposed timeout limit, there doesn't seem to be a way to adjust it currently.

also experiencing the same issue, even though this happens for PRs and also for the diff screen itself. No error is shown in the logs.
git diff -M dev origin/master > out.txt produces a ~2MB file.

Hmm... could you check on master as following #9302 the calls to GetPatch no longer involve storing the patch in memory and should just get streamed directly to a file.

We have a similar/same problem. We can replicate the issue on try.gitea.io.
Diffs are displayed correctly, but the pull request creation doesn't work. We can see nothing related in the logs.
You can easily replicate the issue with a repository at https://github.com/fpiecka/gitea-pr-fail
Import/clone the repository to try.gitea.io and try to create a PR merging branch1-link into branch1. The page will hang indefinitely in Firefox.
While playing with file sizes in the repository, I was able to get a 500 error from time to time.

@fpiecka So this is I'm certain due to the memory issue in diff display. Does the PR get created?

The PR isn't created. However the diff is displayed correctly before creating the PR.

I'm having this same problem.  18K deletions.  PR is NOT created.

still? dang, I'd been hoping this was fixed. What version are you running?
On Fri, Apr 17, 2020 at 3:40 PM jamoeder77<EMAIL_ADDRESS>wrote:

I'm having this same problem. 18K deletions. PR is NOT created.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/go-gitea/gitea/issues/7495#issuecomment-615494594,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD24PKCFKXHOLTHXWTR534DRNDLFDANCNFSM4IEJPQHA
.

(sorry for the delayed response).
1.10.6 built with GNU Make 4.1, go1.13.8 : bindata, sqlite, sqlite_unlock_notify
Git Version 2.8.0
Just ran into this same issue on another PR.  Just as an FYI for a workaround, I've been recreating the branch in a single commit, disabling branch protection, merging the branch into the main working tree, and then re-enabling branch protection.  It's not convenient but it works.

Run into the same problem today. The 60 second timeout of my nginx reverse proxy killed the connection.
I added som timeout settings to my http section of /etc/nginx/nginx.conf.
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;

Outdated. Some code has been optimized.


ControlQ key binding has no effect

I'm playing around with the custom key binding example. I've added the following key binding to the main loop:
@key_bindings_manager.registry.add_binding(Keys.ControlQ)
def quit(event):
    event.cli.set_return_value(None)

When I run the example and press Ctrl-Q, nothing happens. However when I replace ControlQ with e.g. ControlA or ControlB, it seems to work.

Both Control-S and Control-Q are by default used for flow control in vt100 terminals. As far as I understand, it means that the application running in the terminal will never receive any of these two key strokes. By running stty -ixon you disable flow control and that should work again.

I got the same issue here. Adding stty -ixon worked. Is This not a case to add another example within docs? Or maybe to add a note for this?


runtime: async preemption still fail for pure tight loop

What version of Go are you using (go version)?

$ go version
go version devel +8054b13536 Thu Nov 28 15:16:27 2019 +0000 darwin/amd64

and

go version devel +8054b13536 Thu Nov 28 15:16:27 2019 +0000 linux/amd64

Does this issue reproduce with the latest release?
Yes, current tip
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/changkun/Library/Caches/go-build"
GOENV="/Users/changkun/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/changkun/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/Users/changkun/dev/golang-go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/changkun/dev/golang-go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/jd/vym7tt9s2_379d4ccjcj1xrw0000gn/T/go-build916704906=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
I tested the current tip, and the async preemption remains to fail in a very simple case:
package main

import (
	"runtime"
	"time"
)

func main() {
	runtime.GOMAXPROCS(1)
	go func() {
		for {
		}
	}()
	for {
		time.Sleep(time.Millisecond)
		println("OK")
	}
}

I debugged a little and the issue is caused by the following check
https://github.com/golang/go/blob/8054b13536fc71d6f8867f90d7614de4064191ba/src/runtime/preempt.go#L397
Deleting this if the check seems can fix the preemption for the example and pass all tests as well.
What did you expect to see?
Many OK
What did you see instead?
Nothing appears.

/cc @aclements

Maybe it's because that anonymous function is nosplit here?
"".main.func1 STEXT nosplit size=3 args=0x0 locals=0x0
  0x0000 00000 (main.go:17) TEXT  "".main.func1(SB), NOSPLIT|ABIInternal, $0-0
  0x0000 00000 (main.go:17) PCDATA  $0, $-2
  0x0000 00000 (main.go:17) PCDATA  $1, $-2
  0x0000 00000 (main.go:17) FUNCDATA  $0, gclocals·33cdeccccebe80329f1fdbee7f5874cb(SB)
  0x0000 00000 (main.go:17) FUNCDATA  $1, gclocals·33cdeccccebe80329f1fdbee7f5874cb(SB)
  0x0000 00000 (main.go:17) FUNCDATA  $2, gclocals·33cdeccccebe80329f1fdbee7f5874cb(SB)
  0x0000 00000 (main.go:18) XCHGL AX, AX
  0x0001 00001 (main.go:1048575)  JMP 0
  0x0000 90 eb fd

It seems that all leaf functions with small stack will be treated as nosplit function.
https://github.com/golang/go/blob/master/src/cmd/internal/obj/x86/obj6.go#L635

Deleting this if the check seems can fix the preemption for the example and pass all tests as well.

This is definitely incorrect. There are various non-preemptible regions, which are marked with -2.
There is a known issue that the very last instruction in a function is marked non-preemptible. For this particular function, that is the loop back-edge, making the empty loop hardly preemptible (which we should fix). However, it should be more preemptible in real code with non-empty loops.

@cherrymui
I understand it is absolutely incorrect. Just curious: how all tests were passed with this change in terms of so many non-preemptible regions?

@changkun The failure would be sporadic, not deterministic. You may need to run multiple times to see a failure. Also, it may be more likely to fail on some architectures than others.


setub babel with pnpm

What version of React, ReactDOM/React Native, Redux, and React Redux are you using?
i cloned this repository , hoping to bundle my custom react library using this babel config,
the difference is that iam using pnpm and am getting this error
Error: Cannot find package '@babel/plugin-proposal-private-methods' imported from C:\Users\ssss\tests\react-redux\babel-virtual-resolve-base.js

What is the current behavior?

What is the expected behavior?

Which browser and OS are affected by this issue?
No response
Did this work in previous versions of React Redux?

[ ] Yes

I'm confused what you're trying to do. What "custom React library"?  Why are you cloning the React-Redux library?  Why are you trying to use PNPM?
FWIW we specifically use yarn v3 to install packages for this repo.


XIVY-8025 revert jar hack

Great! It seems like that all artifacts has the same version, right? Which means they all have the same release cycle? which means the release pipeline is no longer broken?
you solved this issue? https://axonivy.atlassian.net/browse/XIVY-8387
thanks!

Yes, that should be the case. Thanks for sharing the issue-no. I'll give it a try right after merging this and release the next version just to see if the pipeline is running.
Maybe the release-pipeline will complain about the -SNAPSHOT project-build-plugin in charge, but we will see :sweat_smile:

Great! It seems like that all artifacts has the same version, right? Which means they all have the same release cycle? which means the release pipeline is no longer broken?
you solved this issue? https://axonivy.atlassian.net/browse/XIVY-8387
thanks!

Yes, that should be the case. Thanks for sharing the issue-no. I'll give it a try right after merging this and release the next version just to see if the pipeline is running. Maybe the release-pipeline will complain about the -SNAPSHOT project-build-plugin in charge, but we will see sweat_smile

should not complain about -snapshot!

should not complain about -snapshot!
actually It does https://github.com/axonivy-market/msgraph-connector/runs/7915716499?check_suite_focus=true

ah didn't know that, that you can't use then snaphot versions


Horde integration with modoboa db

Hello,
I stumbled upon Horde webmail. I know that modoboa has its own webmailer, which unfortunately has (hopefully temporary) its limitations due to python (#635). However, a webmailer is still needed.
Having now played with horde I came across some interesting options:
It is able to authenticate and manage users with not only some horde standard queries but also with custom ones. (Apart from authentication via imap and other options)
These are the points, which horde allows custom queries to, and some other settings, too:

Authenticate the user

Add user

Get a user's password

Update user

Reset a user's password

Remove user

List users

Check if an account exists

The password hashing algorithm to use

Prepend the password algorithm to the password value?

"\L" will be replaced by the user's login
"\P" will be replaced by the user's password
"\O" will be replaced by the old user's login (required for update)
Eg: "SELECT * FROM users WHERE uid = \L AND passwd = \P AND billing = 'paid'"
Would it be possible to get horde working together with modoboa via the db?
Thanks you a lot and happy holidays :)

@piwats Modoboa now provides a basic API (for example, it is possible to update user passwords)
Is that what you were talking about ?

@piwats The API has been completed and now allows operations on accounts. Since I don't know Horde, I'm not going to develop such a connector but maybe Horde's team would be interested to do it. I suggest you move the issue to Horde's repository :)


Redesign: Editor border

Feature Description
Add a border to the entire editor according to Figma.

[ ] Apply the "Divider / Secondary" color (8% white) on a properly colored background ("Background / Secondary") to some appropriate element. Only apply to top and left.

Ignore anything but the border between the editor and the WP admin chrome.
Context

Current design
New design

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

Deemed irrelevant by UX.


[New Template] Major Releases media push needed

This is part of the 3.3 retrospective release written and that will be discussed in the next Community call later this April.
focus on whats easily applicable and executable as 4.0 is on a GO and needs to be discussed on the mktg hangout too, the design template & media pushes could be valuable to our community and future contributors:
Goals:

to increase awareness of whats changing with release

invite potential new contributors to join the release effort

push via media the active repos being affected by the release

have more reviewers help with release documentation...

use MP media to push early on release work, explain how to get involved and get applicable HOW oss move forward on each release.

etc

@jclingan,
Confirmed that wiki steps are documented under Mktg repo. Lets link the document to your update on the tech side while you are adding above data?  Thank YOU! :)


Add recording smoke test

Feature request
We would like to add an automated test that:

calls openadapt.record
waits for the recording.started signal to be emitted (fails after e.g. 30s if no such signal is emitted)
stops the recording by emitting the stop sequence on the keyboard (re-use openadapt.playback)
asserts something about the state of the database (e.g. that the recording has been created) and filesystem (the video and performance plots have been created)

Motivation
Avoid regressions like in:

https://github.com/OpenAdaptAI/OpenAdapt/pull/774
https://github.com/OpenAdaptAI/OpenAdapt/pull/784

/bounty $100

/attempt #775

@abrichr can i get assigned?

@unworld11 feel free to submit an attempt, we will merge whoever submits working code that meets the required standard first.


update targets for [bower] service tests

closes #8068
There's something odd going on upstream with bootstrap specifically. https://libraries.io/api/bower/bootstrap shows it as having no stable versions, whereas of course it has many. This is an upstream issue specific to this package though so lets just change the test target.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @chris48s!

  Generated by :no_entry_sign: dangerJS against d7435324ffe3ae8a6d61c82da3d831fda2d856df


Add a flag to enable/disable reload mock config automatically

The Mock Server can only read the config at the startup stage. Users need to restart it if they modified the config file content.
Solution
Support to watch the changes of the mock config file. And provide a flag to enable or disable this feature. The usage might be:
atest mock --files demo-server.yaml --auto-reload [true|false]

And I prefer setting the flag value --auto-reload to be false.
References

https://medium.com/@skdomino/watch-this-file-watching-in-go-5b5a247cf71f

/assign @yuluo-yx


Update CI baseline to Gurobi version to 9.5.2

See title. Consistent with internal licensing changes.

CI is now green. Will merge.


Creating Perpendicular Planes and Line Intersection in CesiumJS

What happened?
I am trying to create a visualization in CesiumJS where:
1.	There is a line connecting two geographic points.
2.	There is a plane passing through the first point and perpendicular to the line.
3.	There is another plane passing through the line and perpendicular to the first plane.

However, despite following the steps, the second plane does not seem to correctly pass through the line as expected. Below are the coordinates and my implementation steps.
Coordinates:
•	Point 1:<PHONE_NUMBER>, 37.0466284)
•	Point 2: (118.533065, 37.0466414)

Reproduction steps

Calculate the direction vector from Point 1 to Point 2.
Create the first plane with a normal vector perpendicular to the direction vector.
Create the second plane with a normal vector perpendicular to both the direction vector and the first plane’s normal vector.

Sandcastle example
Example in Sandcastle
Environment
Browser: Chrome 126.0.6478.183
CesiumJS Version: 1.119
Operating System: MacOS 14.5 & Windows 11

CesiumJS is a big project, so we use GitHub for feature requests and bug tracking exclusively. In the future, please take any questions to the Cesium Forum where there are members of the community and developers from the team who can help. Thanks!


add an option to load the app inside an html component

Tested in local and worked.

@robinComa did you reviewed the pull request?

Sorry for the delay I merge It, I update the npm version as soon as possible

Waiting for it to integrate inside my project 😎

Done ! Sorry for the delay, the new version is 0.4.2


related-links scope is not cascaded

Expected Behavior
The example source for the related-links element should build without errors
Actual Behavior
scope="external" from the <related-links> element is not cascaded to child <link> elements, causing issues in gen-list / topic-reader  steps. Adding scope="external" to each <link> element solves the issue, but isn't required by the specification.
In PDF:
Warning [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'. is triggered.
In XHTML / HTML5:
Warning [DOTJ036W][WARN] The file "http://www.example.org" is outside the scope of the input dita/map directory. is triggered.
The linked file / target is interpreted as a dita source
Error [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.com'.: http://www.example.com Line 1:The markup in the document preceding the root element must be well-formed. is triggered.
Steps to Reproduce
Source related-link.zip

Build example for HTML5 with dita --input test.ditamap --format html5 -v
Check report output for gen-list step
Build example for PDF with dita --input test.ditamap --format pdf -v
Check report output for topic-reader step for pdf

Copy of the error message, log file or stack trace
HTML5:
gen-list:
 [gen-list] Using Xerces grammar pool for DTD and schema caching.
 [gen-list] Processing file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/test.ditamap
 [gen-list] Processing file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita
 [gen-list] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:9:41: [DOTJ036W][WARN] The file "http://www.example.org" is outside the scope of the input dita/map directory.
 [gen-list] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:12:41: [DOTJ036W][WARN] The file "http://www.example.com" is outside the scope of the input dita/map directory.
 [gen-list] Processing http://www.example.com
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.com'.: http://www.example.com Line 1:The markup in the document preceding the root element must be well-formed.
 [gen-list] Processing http://www.example.org
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.org'.: http://www.example.org Line 1:The markup in the document preceding the root element must be well-formed.
 [gen-list] Serializing job specification

debug-filter:
   [filter] Using Xerces grammar pool for DTD and schema caching.
   [filter] Processing file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/test.ditamap to file:/C:/Users/siti/AppData/Local/Temp/temp20220112110608444/test.ditamap
   [filter] Processing file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita to file:/C:/Users/siti/AppData/Local/Temp/temp20220112110608444/references.dita
   [filter] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
   [filter] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.

PDF:
topic-reader:
[topic-reader] Using Xerces grammar pool for DTD and schema caching.
[topic-reader] Reading file:/C:/Users/siti/AppData/Local/Temp/temp20220112105218543/27231446edb815c5c6342125ca7f0cc1b12166c1.ditamap
[topic-reader] Processing file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita to file:/C:/Users/siti/AppData/Local/Temp/temp20220112105218543/dc4de4fa6eaa53eff1b41942a1d778a9a3a13b27.dita
[topic-reader] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
[topic-reader] file:/C:/Users/siti/OneDrive%20-%20Nordic%20Semiconductor/Documents/dita_test/related-link/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
[topic-reader] Serializing job specification

Environment

DITA-OT version: 3.7 - Introduced in DITA-OT 3.0.2
Operating system and version:
Windows
How did you run DITA-OT?
dita command
Transformation type:
XHTML / HTML5 / PDF

In preprocess, the messages occur in gen-list and filter:
 [gen-list] file:/mnt/c/nobackup/3848/references.dita:9:41: [DOTJ036W][WARN] The file "http://www.example.org" is outside the scope of the input dita/map directory.
 [gen-list] file:/mnt/c/nobackup/3848/references.dita:12:41: [DOTJ036W][WARN] The file "http://www.example.com" is outside the scope of the input dita/map directory.
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.com'.: http://www.example.com Line 1:The markup in the document preceding the root element must be well-formed.
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.org'.: http://www.example.org Line 1:The markup in the document preceding the root element must be well-formed.
   [filter] file:/mnt/c/nobackup/3848/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
   [filter] file:/mnt/c/nobackup/3848/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.```

In `preprocess2`, the messages occur in `topic-reader`:

[topic-reader] file:/mnt/c/nobackup/3848/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
[topic-reader] file:/mnt/c/nobackup/3848/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.

These are Java modules, so I am not sure how to implement an ancestor-or-self `@scope` evaluation.

In which version is this fixed ? @simtind @chrispy-snps @jelovirt @infotexture @nakohdo Anybody has any idea, becuase i see in DITA 4.1.1, this is fixed.

@pradyumanaggarwal - In 3.7, I see three types of messages for an HTML5 transformation:
 [gen-list] file:/home/chrispy/3848/references.dita:9:41: [DOTJ036W][WARN] The file "http://www.example.org" is outside the scope of the input dita/map directory.
 [gen-list] file:/home/chrispy/3848/references.dita:12:41: [DOTJ036W][WARN] The file "http://www.example.com" is outside the scope of the input dita/map directory.
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.com'.: http://www.example.com Line 1:The markup in the document preceding the root element must be well-formed.
 [gen-list] [DOTJ013E][ERROR] Failed to parse the referenced file 'http://www.example.org'.: http://www.example.org Line 1:The markup in the document preceding the root element must be well-formed.
   [filter] file:/home/chrispy/3848/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
   [filter] file:/home/chrispy/3848/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.

In 4.1.1, the first two are no longer emitted but the last type is:
   [filter] file:/home/chrispy/3848/references.dita:9:41: [DOTJ075W][WARN] Absolute link 'http://www.example.org' without correct 'scope' attribute. Using 'scope' attribute value 'external'.
   [filter] file:/home/chrispy/3848/references.dita:12:41: [DOTJ075W][WARN] Absolute link 'http://www.example.com' without correct 'scope' attribute. Using 'scope' attribute value 'external'.

so I don't think this can be considered fixed in 4.1.1.

My concern is little different, while generating HTML5 output, dita-ot is recognizing that href is outside scope but not resolving.
For example, I am running dita-ot for 5 mins and still dita-ot was not able to resolve link and add scope="external" by itself.
So, I had to give timeout exception after 5 mins in my usecase. I have tried DITA-OT version : 3.7.4
Is it time taking process or am I missing something ?
@chrispy-snps
log-arg :
[echo] * transtype = html5
[echo] * outputdir = build
[echo] * clean.temp = no
[echo] * DITA-OT version = 3.7.4
[echo] * XML parser = Xerces
[echo] * XSLT processor = Saxon
[echo] * collator = ICU
NOTE :  I have tried using dita command in terminal with version 4.1.1, and there output has been generated within no time. So, is there a fix after 3.7 ? If not, then how come it's working differently for ant and dita commands.

@pradyumanaggarwal - I replied to your DITA-OT Users post here, but I did not see a response. My guess is that your long runtime issue is not related to this @scope inheritance issue. I suggest continuing the discussion in DITA-OT Users.


name is required

But I'm not sure what it's for. I just set mine to ".".
Can it's purpose be documented and/or it made optional?

@justin-caldicott could you explain the issue a little bit more?

In the .dotnetexec.json file there's a required name property. I'm not sure what this is for, but it's required. I'm not sure what putting the solution name in there gives us, as in the readme. I'd prefer to not have the property if it's not needed for anything.

added to the board


Normal flow rate Nm³/h

There are already units for flow rate implemented, however we need to convert m³/h to Nm³/h.
This is used to denote gas volumes at normalized conditions.
Flow rate would be the correct unit class to add this unit, am I correct?

Some quick googling suggests that the "normal" temperature varies from application to application (or industry to industry). Wouldn't that mean the conversion rate isn't constant?

Yes, the temperature is important. But there are standards for this as well:
DIN 1343:  273,15 K = 0 °C
ISO 2533: 288,15 K = 15 °C
ISO 6358 / ISO 8778 (standard reference atmosphere): 293,15 K = 20 °C
Like you said, depending on the application/industry, different temperatures will be used. But these temperatures are still constant.
Do you think there is a chance to include this in UnitsNet somehow?
If I know where, I would try to contribute this one, instead of implementing the conversion in my own application.

I am not familiar with this unit, but from my googling it seems there are "normal" vs "standard" flow rates.
http://control.com/thread/1026177675

The difference between normal and standard conditions is the temperature. Here is an explanation that I found.
The most common units of industrial gas measurement are; SCFH and Nm3/hr. Note, that there is a difference between Normal cubic meters and Standard cubic meters. The difference lies in the reference temperature that each specific unit is measured with respect to. Normal meters are measured with respect to the Metric system (0C, 1 atm), and standard meters are measured with respect to the imperial system of standard conditions (70F, 1atm).
1 Normal Cubic Meter equals 38.042 SCF
There are also other defined "standard" conditions at other temperatures (32F, 60F), but normal is always 0C.

Then another guy goes:

The values used for "Normal" & "Standard" conditions vary by country and industry. Some places they are the same others quite different. In this country 60, 68, 70, and 75 F are used depending on the industry as are 14.696, 14.7, 14.73 psiA. The most common that I see are;
Standard: 70 F & 14.696 psiA (21 C & 1 Atm)
Normal: 32 F & 14.5038 psiA (0 C & 1 Bar) or, 32 F & 14.696 psiA (0 C & 1 Atm)

So my understanding is, when representing flow rate of gases, you need to consider the temperature to get the right volumes. Nm3/h and Sm3/h is used to denote Normal and Standard flow rates, but the definitions of these vary between applications and industries.
If I am not entirely mistaken, we can't convert from FlowRate [m3/h] to normal/standard flow rates [Nm3/h and Sm3/h], because that would be converting X liters/hour of gas with no known reference temperature to Y liters/hour of gas with a certain reference temperature. There is missing information in FlowRate as it is today.
I believe we need a custom handwritten type for this, something like FlowRateAtTemperature, that holds two properties: FlowRate FlowRate { get; } and Temperature Temperature { get; }
Then it has a constructor to set those readonly properties, and constructor methods like FromDin1343(FlowRate flowRate) {} and FromIso2533(FlowRate flowRate) {} that calls the constructor with the correct reference temperature.
It can then have conversion property getters like Din1343 => /* conversion from FlowRate and Temperature to Din1343 /*;
You can then convert that from m3/h to mm3/h and all the other FlowRate units already defined, by calling:
var iso2533 = FlowRateByTemperature.FromIso2533(FlowRate.FromCubicmetersPerHour(1));
double mm3phIso2533 = iso2533.FlowRate.CubicmillimetersPerHour;
FlowRateByTemperature din1343 = iso2533.Din1343;
double mm3phDin1343 = din1343.CubicmillimetersPerHour;

Another approach would be to have types like FlowRateDin1343 and FlowRateIso2533 with only a FlowRate property, and conversion properties to the other flow rate types.
The same example would be:
var iso2533 = new FlowRateIso2533(FlowRate.FromCubicmetersPerHour(1));
double mm3phIso2533 = iso2533.FlowRate.CubicmillimetersPerHour;
FlowRateDin1343 din1343 = iso2533.Din1343;
double mm3phDin1343 = din1343.CubicmillimetersPerHour;

Does that make sense?
Now, we are talking gases here, but I believe liquids like water also have a tiny bit of thermal expansion. Do we want to simply represent the flow rate at a certain temperature or do we also want to convert from one temperature to another? If so, how do we distinguish between the conversion for different gases and liquids?

Thank you very much for your investigation!
Today I only have the requirement to work with gases but others will follow (co2 emission, mol).
I really cannot tell you which benefits (advantages) these approaches offer in detail and which one feels right. But I'm sure the approach we decide for will always be wrong 😃

That's.. troubling :-)
I really need a domain expert to recommend a solution here, someone who know what conversions are used and how UnitsNet would best help out in representing and converting between units of standard flow rates and standard volumes.
I can help out with how to fit this best into UnitsNet, but I am not in a good position to decide how we best go about implementing this.
I found this conversion tool:
https://www.almig.com/tools/standard-cubic-metres.html#
Apparently there are a number of variables to go into calculating the standard volume from a DIN1343 or ISO2533 normal volume, such as humidity, air pressure and temperature.

How do we move this forward?

Anyone care to move this forward? Or else I will close this due to inactivity.

Actually, closing this. Reopen if you intend to pursue this.


Select Default Profile do not actually open gitbash. After relaunch, on startup, it just keeps open PowerShell

Issue Type: Bug

OS: Windows 10
Download/Install VScode
Open integrated terminal (PowerShell) - ctrl+`
Add new Terminal: Git Bash
Select Git Bash Terminal
Select Default Profile: Git Bash
Go back to powershell - kill/destroy it.
Let terminal (git bash) open
(do not close terminal) close VS code
Relaunch VS code

It should launch with gitbash terminal. Instead it opens PowerShell.
If we add new terminal then it opens gitbash
The problem is when running python and there is a virtual environment, vscode runs a command to activate virtual environment through power shell and that command do not recognized through git bash. So Virtual Environment do not activated and needs to activated manually!!
The desired (expected) behaviour should be "open bash git then run activate script then (virtual enviroment)-interpreter is selected"
VS Code version: Code 1.56.1 (e713fe9b05fc24facbec8f34fb1017133858842b, 2021-05-06T10:08:05.141Z)
OS version: Windows_NT x64 10.0.19041

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (6 x 2808)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
7.95GB (3.23GB free)

Process Argv
--crash-reporter-id 2ca24900-0b24-4633-a462-02357d811a6c

Screen Reader
no

VM
0%

Extensions: none
A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
pythonvspyt700cf:30270857
pythonvspyt602:30300191
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyt639:30300192
pythontb:30283811
vspre833cf:30267465
pythonptprofiler:30281270
vshan820:30294714
pythondataviewer:30285071
vscus158cf:30286554
bridgeflightcf:30299255

Will be fixed as of tomorrow on Insider's via https://github.com/microsoft/vscode/pull/123729

Hi @meganrogge ,
This issue is not fixed.
I am using vscode 1.57.1 (Windows_NT x64 10.0.19042) and it keeps opening powershell instead of gitbash at startup.


Add new sort api in demo that allows multiple sort fields and is typed 2/3

Alternative to #734 and #736
example query:
query {
  newsList(scope: { domain: "de", language: "de" }, sort: [ Visible_DESC ] ) {
    nodes {
      id
    }
  }
}

closing in favor of https://github.com/vivid-planet/comet/pull/787


Filter sites in SiteSwitchForm

Issue Summary
We have several sites with individual SiteSettings for each site, but there is no way to handle permissions as to who sees which site in the dropdown for site settings (the one on the top right corner). So basically someone on Site 1 can go edit Site 3 settings through the dropdown. (Unless I'm missing some obvious permission or wagtail setting)
The code that handles this is in contrib/settings/forms.py. My suggestion is adding a hook to filter sites in the __init__ and also preferrably passing along the request object from contrib/settings/views.py
I'd be happy to contribute if this sounds good.

Hi @rinti,
The problem with making permission logic configurable through hooks is that it makes the code hard for us to maintain in future - it's hard to refactor the code (e.g. optimising queries) because we have no way of knowing what kind of customisations people have made, and what we're going to break as a result.
Giving users permission over a single site setting record is probably quite a common requirement, so it would be good to have that functionality built in to Wagtail, rather than needing a customisation. Is there some way we can extend the permission model to support that?

Yeah, perhaps it would be possible to change SiteSettings permissions on a per site basis. Like the document and image permissions but for each type of site setting.
So I can make a group and then under the heading " permissions" I can add which sites has read/change on that type of setting. The group admin has potential to be cluttered depending on how many types of site settings there is though.

Has anyone found a workaround for this beyond hacking the templates?

From a multisite perspective this would definitely a good feature. For now we accomplished this by monkey patching the SiteSwitchForm in combination with using threads to get the user (or request). Should be a better way.

With the migration to class based views in https://github.com/wagtail/wagtail/pull/11014 (Wagtail 6.0), it is now getting easier to modify the behavior.
I think the missing piece to allow an easy customization of the listed sites based on the current request without duplicating much of the code, is to extract the querying of the sites into a separate view method or (cached-)property, and then pass the resulting list to the SiteSwitchForm (avoiding the extra query here).
This alone would make it easy for devs to restrict the access based on other factors.
Independently of the above (API-)improvement, we could change the default behavior and only show those settings to the user, where the user has access to pages below the root page of the settings' site. We could use the path of the site's root page to check if a user has access (checking if the root page's path is a prefix of the accessible pages).
To still allow the current behavior, we may then add an additional permission to BaseSiteSetting (and therefore to every subclass), which allows to give access to all settings, independently of the accessible pages.
I know, this approach is not as flexible as the approach of "Giving users permission over a single site setting record", but it should be quite simple to implement, and I currently cannot think of cases of past projects, where that is not enough.


perf: improve FlagDependencyExportsPlugin for large JSON by depth

Summary
Aligned with https://github.com/webpack/webpack/pull/19058.
I will update doc later.

Checklist

[x] Tests updated (or not required).
[ ] Documentation updated (or not required).

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

parser.json.exportsDepth: 1

parser.json.exportsDepth: Infinity

Update to 1.2.0-alpha.0 and found that
when module.parser.json.exportsDepth: Number.MAX_SAFE_INTEGER
$ rspack build --config dev.config.js
Rspack compiled successfully in 1.94 s
✨  Done in 2.94s.

when module.parser.json.exportsDepth: Number.MAX_SAFE_INTEGER
$ rspack build --config dev.config.js
Rspack compiled successfully in 505 ms
✨  Done in 1.34s.


feat(usb): Prepare embassy-usb for USB Audio, and add USB Audio Class 1.0 (playback only)

Hello,
I implemented a UAC 1.0 device, but this required some extensions and fixes to the implementation of embassy-usb.
Some changes are taken from or inspired by https://github.com/embassy-rs/embassy/pull/2736.
Here is an example of where this is in use (still rough): https://github.com/blus-audio/firmware-rs
The feedback endpoint is not yet in use.
Features:

Added usage type and synchronization type settings for endpoints. This is only relevant for isochronous endpoints.
Added extra_fields that can be appended to an endpoint descriptor. This is required for UAC (e.g. bRefresh and bSynchAddress fields for UAC1.0)
Added functionality for allocating endpoints and writing their descriptors separately. This is required, because in UAC1.0, the synch endpoint must follow the audio streaming endpoint, but the descriptor of the latter must contain the endpoint index of the former. So I allocate the endpoints first, then write the descriptors with the information about the endpoints. Find an implementation of that approach here: https://github.com/blus-audio/firmware-rs/blob/main/firmware/src/uac1/mod.rs#L223

Fixes:

Set correct even/odd frame bit for isochronous endpoints. Otherwise, half of the packets are lost.
Consistent naming of register setters

Awesome!
Run cargo +nightly fmt to fix CI
Do you have a basic usage example to include?

Thanks! I just fixed formatting.
I could add an example for the STM32H7, because I can test that.
In my case, I stream USB->SAI->DAC.
However, such an example would still be a bit useless without explicit feedback. There will be jumps in the audio due to the rate discrepancies of SAI output and USB input. Measuring the value that has to be provided over the feedback endpoint is hardware dependent.
I will try to make something useful.

I guess I have to do this first, in order to create an example: https://github.com/embassy-rs/stm32-data/issues/509#issuecomment-2247156321
Maybe some details for the reasoning:
The fix allows v2 timers to trigger on the USB_SOF signal, which will be used for measuring the feedback value.
The feedback value expresses, how many samples were consumed by the audio device between two USB_SOF interrupts. It thus relates the rate of sample consumption to the rate at which input samples are provided. The feedback value is sent to the host, in order for it to adjust the rate at which it sends samples. It can be thought of as a control loop, where the USB audio device is the sensor.

This should now be ready for review. You can go through the commits one-by-one:

Preparation of embassy-usb for USB audio
Implementation of UAC1
An example, based on STM32F4

The class is meant to be extended by more "applications" in the future. I implemented only a "speaker" application, where the device receives audio from the host. It has the following features:

Volume control
Mute control
Selectable sample rate
Selectable sample width
Implementation of the sample rate feedback mechanism (see example for details)
Separate streaming, control, and feedback instances

Disclaimer: I did not test the example on the STM32F4 platform, because I don't have that hardware. I only tested on my STM32H723, which does not exist as an example platform, and I feel like it makes more sense to use the more common F4.
Can someone please test it? For example, print the measured feedback value (in the usb_feedback_task) and received sample lengths (in the audio_receiver_task).

ISO endpoint support itself in the USB drivers was split off to https://github.com/embassy-rs/embassy/pull/3314.
Therefore, this depends on the other PR.

Is this PR still blocked by something?

No, it should be fine. I am only waiting for review and maybe for someone to restart the build job.
I may also rebase it.

Looks great to me!

@elagil I am trying out your code on my Blackpill (STM32F401 with a PCM5102 DAC without MCLK (I2S3)).
I am the feeling that you are using the SOF capture not in the way it was intended.
Ideally you can run timer2 in normal mode and use channel 1 as a capture channel.
But your have to route the SOF signal to the trigger input.
One crucial part is setting the option registers.
But that is very microcontroller specific, you have to look in the Referance manuals what the options are.
// See RM0368 TIM2 option register (TIM2_OR)
    tim2.regs_gp32().or().write(|r| *r = 0b10 << 10);

This is how I currently have wire it.
https://github.com/vDorst/stm32_audio/commit/2a8c20c35e405f396b7de428857eda6aa7521381
Other thing I see is that something is flaky.
I mean that I get different errors/panic while the Linux is setting-up the USB/soundcard.
If I press the reset, I may the an other error or it just works fine.
Like issue in USB driver
0.848297 INFO  Volume changed to Muted on channel LeftFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
0.848358 INFO  Volume changed to Muted on channel RightFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
0.851623 DEBUG USB set interface number InterfaceNumber(1) to alt setting 0.
└─ embassy_usb::class::uac1::speaker::{impl#10}::set_alternate_setting @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:745
0.851776 DEBUG Got channel 1 mute state: true.
└─ embassy_usb::class::uac1::speaker::{impl#9}::interface_get_request @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:660
0.851989 DEBUG Got channel 2 mute state: true.
└─ embassy_usb::class::uac1::speaker::{impl#9}::interface_get_request @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:660
0.852386 ERROR panicked at /home/r/dev/rust/embassy/embassy-usb-synopsys-otg/src/lib.rs:46:9:
assertion failed: ep_num < ep_count

Index out of bound
0.681365 INFO  Volume changed to DeciBel(0.0) on channel LeftFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
0.681427 INFO  Volume changed to DeciBel(0.0) on channel RightFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
0.681701 INFO  endpoint_set_request: Request { direction: Out, request_type: Class, recipient: Endpoint, request: 1, value: 256, index: 1, length: 3 } []
└─ embassy_usb::class::uac1::speaker::{impl#9}::endpoint_set_request @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:588
0.681823 ERROR panicked at /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:606:36:
index out of bounds: the len is 0 but the index is 0

BufferOverflow in USB
21.306182 WARN  control accept_in failed: BufferOverflow
└─ embassy_usb::{impl#1}::handle_control_in::{async_fn#0} @ /home/r/dev/rust/embassy/embassy-usb/src/lib.rs:383

When it works and I change the volume, then I see the change in the probe-rs output.
again a assertion failed: ep_num < ep_count
16.083160 DEBUG Set channel 1 volume: -4608
└─ embassy_usb::class::uac1::speaker::{impl#9}::interface_set_volume @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:533
16.083251 INFO  Volume changed to DeciBel(-18.0) on channel LeftFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
16.083343 INFO  Volume changed to DeciBel(-17.0) on channel RightFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
16.083435 INFO  interface_set_request: Request { direction: Out, request_type: Class, recipient: Interface, request: 1, value: 514, index: 512, length: 2 } [0, 238]
└─ embassy_usb::class::uac1::speaker::{impl#9}::interface_set_request @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:543
16.083679 DEBUG Set channel 2 volume: -4608
└─ embassy_usb::class::uac1::speaker::{impl#9}::interface_set_volume @ /home/r/dev/rust/embassy/embassy-usb/src/class/uac1/speaker.rs:533
16.083770 INFO  Volume changed to DeciBel(-18.0) on channel LeftFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
16.083862 INFO  Volume changed to DeciBel(-18.0) on channel RightFront.
└─ stm32_audio::__usb_control_task_task::{async_fn#0} @ src/main.rs:223
16.130187 ERROR panicked at /home/r/dev/rust/embassy/embassy-usb-synopsys-otg/src/lib.rs:47:13:
ep num: 14 cnt 4
assertion failed: ep_num < ep_count

I have the feeling that the stm32-usb driver is buggy.
I am using embassy commit 8eb80c6816a1f6ea7814acd4f48f07e79891f804
Os: OpenSUSE with kernel 6.11.3-2-default
Rust: rustc 1.82.0 (f6e511eec 2024-10-15)

I am the feeling that you are using the SOF capture not in the way it was intended.
Ideally you can run timer2 in normal mode and use channel 1 as a capture channel. But your have to route the SOF signal to the trigger input.
One crucial part is setting the option registers. But that is very microcontroller specific, you have to look in the Referance manuals what the options are.

Yes, you are right. By just reading the counter value in the interrupt, there will be some error due to delays. Using capture should fix that. I will also enable the missing routing of the trigger input for F4.

I have the feeling that the stm32-usb driver is buggy.

That looks like it, unfortunately. Do you have an idea what might cause it? I think I have some F401 board that I can test this on as well. The H7 (that I tested with) and the F4 use the same synopsis OTG driver, but there are some device-specific config-functions. I will have a look at those. Another idea is that there is some issue with the FIFO sizes.

I can reproduce your issues with some custom F401 board that I have.
Some configuration values are not received correctly. For example, in dmesg I see
[ 1329.474212] usb 3-5.1: current rate 458752 is different from the runtime rate 48000
[ 1344.887822] usb 3-5.1: 2:0: failed to get current value for ch 2 (-110)

Some investigation will be required.

@elagil I have no idea what is causes it.
I have seen these dmesged too.

@vDorst I changed the timer setup for SOF to capture mode
The example should work on F4, as soon as https://github.com/embassy-rs/embassy/pull/3565 is merged. I don't have an F429 to test, but I did test the H5 example for sample and feedback transfer. I also made sure the feedback value is reasonable.
From my point of view, this is ready to merge.

thanks!
(rebased to fix missing ci job)

Thanks for merging!

@elagil Great, I had no time to test it before the merge.
I copied the TMR2 setup and interrupt handler from the F4 example in my code.
First the setup so I could see the interrupt working and second time also the interrupt code.
It seems to work fine without a glitch.

@vDorst Great, thanks for testing!


Add kexec_file_load system call for arm linux

This syscall was introduced in Linux 5.0. References:

torvalds/linux@4ab65ba7a5cbad47520274d88d066bf8eb83f161

Thanks! @bors r+

:pushpin: Commit 133e4b13c90996e1e1da6afcad26226b85fdf42a has been approved by JohnTitor
It is now in the queue for this repository.

:hourglass: Testing commit 133e4b13c90996e1e1da6afcad26226b85fdf42a with merge 23327067b530b17abb48f18c8e794ad5777d555d...

:boom: Test timed out

@bors retry

:hourglass: Testing commit 133e4b13c90996e1e1da6afcad26226b85fdf42a with merge 3bba713e5037bb8208f2cb8b8a3a738b60a29d82...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13, checks-cirrus-freebsd-14
Approved by: JohnTitor
Pushing 3bba713e5037bb8208f2cb8b8a3a738b60a29d82 to master...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13, checks-cirrus-freebsd-14
Approved by: JohnTitor
Pushing 3bba713e5037bb8208f2cb8b8a3a738b60a29d82 to master...

:eyes: Test was successful, but fast-forwarding failed: 422 Changes must be made through a pull request.


Fix PC signs when using PCA initialization

I find it very convenient to have some convention for fixing PC signs, when using PCA initialization. I usually fix them such that the sum of eigenvector values is positive (of course some other conventions could work equally well). My suggestion is to insert this snippet
# fix PC signs
flipSigns = np.sum(pca_.components_, axis=1) < 0
embedding[:, flipSigns] *= -1

in here https://github.com/pavlin-policar/openTSNE/blob/master/openTSNE/initialization.py#L57.
By the way, why not add svd_solver='auto' parameter to initialization.pca() and pass it into the sklearn PCA call? Could be convenient IMHO.

Isn't this already deterministic? scikit-learn's PCA calls svd_flip everywhere, which

Adjusts the columns of u and the rows of v such that the loadings in the
columns in u that are largest in absolute value are always positive.

This is called in every branch of their PCA (here, here and here)

By the way, why not add svd_solver='auto' parameter to initialization.pca() and pass it into the sklearn PCA call?

I'd have nothing against that.

Oh wow. I wasn't aware that scikit-learn does that. My apologies. I'm closing this.


[Meta] Implement Openverse redesign

Openverse is live with transitional styles at wp.org/openverse. Openverse will be redesigned with a new brand, color palette, and UI designed by @panchovm.
Concurrently with this redesign, we will begin using our new approach to components. That is described in detail in this discussion. Essentially, we will be building a new small framework of components  to power the Openverse front-end.
Resources

Public Figma File (blocked by: WordPress/openverse#91)

Tasks

[ ] Outline component requirements and structure of the header component (blocked by WordPress/openverse#92)

Closing in favor of #364


HHH-13415 Restore build compatibility with JDK11.0.3

https://hibernate.atlassian.net//browse/HHH-13415
Necessary to work on HHH-13409 in particular.

@gsmet Just rebased on what you did. Would you mind reviewing this?


Issue with memory consumption

I think there may be a memory allocation issue with the Python interface to ArrayFire . Consider the following code:
In [1]: import arrayfire as af

In [2]: a = af.randu(100, 100, 100, 100)

In [3]: af.print_mem_info()
Memory Info
---------------------------------------------------------
|     POINTER      |    SIZE    |  AF LOCK  | USER LOCK |
---------------------------------------------------------
|  0x7f4c9cb90010  |   381.5 MB |       Yes |        No |
|       0x26ff790  |       1 KB |        No |        No |
---------------------------------------------------------

In [4]: a = af.randu(100, 100, 100, 100)

In [5]: af.print_mem_info()
Memory Info
---------------------------------------------------------
|     POINTER      |    SIZE    |  AF LOCK  | USER LOCK |
---------------------------------------------------------
|  0x7f4c80287010  |   381.5 MB |       Yes |        No |
|  0x7f4c9cb90010  |   381.5 MB |        No |        No |
|       0x26ff790  |       1 KB |        No |        No |
---------------------------------------------------------

In [6]: del a

In [7]: af.print_mem_info()
Memory Info
---------------------------------------------------------
|     POINTER      |    SIZE    |  AF LOCK  | USER LOCK |
---------------------------------------------------------
|  0x7f4c9cb90010  |   381.5 MB |        No |        No |
|  0x7f4c80287010  |   381.5 MB |        No |        No |
|       0x26ff790  |       1 KB |        No |        No |
---------------------------------------------------------

In [4] why is a being assigned to a new memory location with the older memory location not being deallocated. Additionally del a seems to only remove the lock. What is happening here?
Even when using a[:] to change the values of the array, this is the result:
In [2]: a = af.randu(100, 100, 100, 100)

In [3]: af.print_mem_info()
Memory Info
---------------------------------------------------------
|     POINTER      |    SIZE    |  AF LOCK  | USER LOCK |
---------------------------------------------------------
|  0x7fcf5490e010  |   381.5 MB |       Yes |        No |
|       0x1e1d430  |       1 KB |        No |        No |
---------------------------------------------------------

In [4]: a[:] = 0

In [5]: af.print_mem_info()
Memory Info
---------------------------------------------------------
|     POINTER      |    SIZE    |  AF LOCK  | USER LOCK |
---------------------------------------------------------
|  0x7fcf5490e010  |   381.5 MB |       Yes |        No |
|  0x7fcf38287010  |   381.5 MB |        No |        No |
|       0x1e1d430  |       1 KB |        No |        No |
---------------------------------------------------------

A similar trial using numpy shows:
In [1]: import numpy as np

In [2]: a = np.random.rand(100, 100, 100, 100)

In [3]: # htop shows that<PHONE_NUMBER>25 MiB is taken as expected

In [4]: a = np.random.rand(100, 100, 100, 100)

In [5]: # memory consumption remains at<PHONE_NUMBER>25 MiB

In [6]: del a # memory gets freed

@ShyamSS-95 This is because the memory can only be "deleted" / "freed" when all references to a are gone. These references only go away after = is called. I am pretty sure numpy is also using 762MB x 2 when np.random.rand() is called on the RHS and freeing 762 MB once it assigns to a.
You only notice the issue in arrayfire because of the memory manager (it says onl 381 B is being used, the rest ca be reused again). If you deleted a before assigning to it then it wouldn't be a problem.
That said a[:] = 0 shouldn't use more memory. I'll look into that.

@pavanky You are right about numpy allocating memory and we confirmed it. This is our (mine and @ShyamSS-95) understanding of the process:
In [2]: a = af.randu(100, 100, 100, 100)
In [4]: a = af.randu(100, 100, 100, 100)

In [2], the causal sequence of events is the following

The call to af.randu allocates memory
The pointer to the memory is passed to the variable a

Now in [4]:

The call to af.randu allocates additional memory at a distinct location from that allocated earlier
The pointer to the new location is then passed into a
The memory allocated earlier is now not accessible, and I think this is what AF LOCK = NO means.
The earlier memory should have been cleared up by Python's garbage collector since all references to it are gone. But that doesn't seem to be happening. Could it be because of some bug in af-python?

@mchandra @ShyamSS-95
The memory is "free" as in it is no longer locked by anything. It can be reused by a new array that tries to allocate memory. You can verify this by assigning to a or a new variableb.
If for some reason you are running out of memory and the memory manager isnt doing its job, call af.device_gc() as a work around  and file a bug. Otherwise using the memory manager is much faster than having constant memory allocs and frees.

An example showing the memory manager at work: https://gist.github.com/pavanky/6a31486ba5d45c0484e2900bcac37362


make named template p2t:tei-header public

The visibility of the named template p2t:tei-header must be public, so that downstream packages can overwrite it to provide their own meta data in the header.

added 10m of time spent

Closed in 2f2f2e0e13e16d6493fcfaa803129648a76fe88a.


⚠ Secret Website 3 has degraded performance

In 786dafa, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 18888 ms

Resolved: Secret Website 3 performance has improved in f023647.


What are the differences with the original version of threerings ?

Hi Sir
what are the differences with the original version of threerings ?
Regards
Andrea

Just forked it to be able to use my own maven repo, plus I needed to be able to 'downgrade' to a older version of java if I remember right:
https://github.com/makkus/getdown/commits/nesi


Add to Html::radioList() an ability to generate  if containing tag is set to

Currently Html::radioList() allows to set a tag for containing element. It can be set to <fieldset> but then if the user wants to add a <legend> to that <fieldset> element in would not be possible. Same goes for Html::checkboxList().
Alternatively, an option for radioList() to skip generation of containing element would work also (so user can specify containing elements manually around the inputs, generated by the radioList() function.

Actually, in its current state, radioList() and checkboxList() violate HTML5 spec by rendering a label with a for attribute linking to a div element which is not allowed in HTML5. fieldset and legend elements should be used to provide a label for a group of radio buttons or checkboxes.


Kibana - where it is?

Hi
I' ve deployed logsearch-boshrelease v21 on aws and everything is ok - elasticsearch is collecting logs.
curl <IP_ADDRESS>:9200/_cat/indices?v   shows that there are logs, but how to see these logs?
And main question how to access Kibana?
I will be really grateful if someone show me the way where to find Kibana...

You'll find kibana 3 is installed at http://<IP_ADDRESS>:9200/_plugin/kibana/ as an elasticsearch plugin, or kibana 4 available on port 80 of whatever job you deployed the kibana template to.

Thank you very much for fast response:)
In deed there is Kibana 3, but maybe you know how to access it from outside? Not by private ip address...
Anyway thanks for your response again searching for it was very tiring:)

If you need to access it by hostname or public IP, you'll need to configure it for that in your deployment manifest and DNS services - for that sort of thing you'll need to reference the BOSH documentation.

Ok, thanks for help.


Read Me and Model Examples Update.

Hey N,
I merged my read me stuff in and it didn't just merge it into the master like I expected.
I feel like this shouldn't look like this but I haven't merged changes to the API git before so I don't know for sure.
I was expecting my pull to go straight to the master since I didn't think we have a develop branch for the API repository.
Thanks for the feedback.

Same sort of setup for this repo. I would recommend going through the same release project locally (create a release and complete the release via the Git flow commands and push that to the server, rather than using a PR).

Ok. So it is safe to just close this PR and then do a release and then do I need to push an update somehow like we do for the installations?

I think so.

Looks great!


vdk-frontend: Decide on Oauth provider for testing

What is the feature request? What problem does it solve?
VDK-frontend was copied from an internal VMware project.
Internally it was using a VMWare solution for oauth for production and testing.
This solution can't be used for testing in the open source repo.
We need to investigate possible alternatives.

In Control Service REST API we use https://console-stg.cloud.vmware.com/ (CSP).
Being consistent would be a good idea and considering that the UI would likely work against the Control Service it might be necessary (or how it would authenticate?)
An alternative is to use Google (e.g people can login using Gmail) but then we need to set authorization rules(*) and change the control service to use google. Definite con of this approach is we can enable some functionality of the UI for anyone with gmail account (which providedly are more people then those with csp).
(*) With CSP we allow anyone who has a CSP Staging account (which is few and generally trusted) so we have not special authorization.


Minor doc edits to consolidate wording and for better readability.

/kind documentation
What this PR does / why we need it:
While reviewing #4 on the train, I made a couple edits which I found valuable to share even though that PR has been merged already.
Special notes for your reviewer:
You are all awesome and deserve having a nice day!
Does this PR introduce a user-facing change?:
NONE

/lgtm


OceanPool.get_liquidity_history returns incorrect timestamps on non-ethereum-mainnet chains

Describe the bug
OceanPool.get_liquidity_history() interpolates to estimate block timestamps based on a 15 second block time. This assumption works for Ethereum mainnet, but is incorrect for other chains like Polygon or BSC. For example, the average Polygon block time in recent months has been 2.15 seconds.
The offending logic can be seen at https://github.com/oceanprotocol/ocean.py/blob/main/ocean_lib/ocean/ocean_pool.py#L1056
        # get timestamps for blocknumber every 4 hours, assuming there is
        # 240 blocks/hour (on average) or 15 seconds block time..
        # use interpolation to fill in the other timestamps
        timestamps = []
        blocks = list(range(firstblock, lastblock, 240 * 4)) + [lastblock]
        for b in blocks:
            timestamps.append(self.web3.eth.get_block(b).timestamp)

        f = interp1d(blocks, timestamps)
        times = f([a[1] for a in ocn_add_remove_list])
        ocn_add_remove_list = [
            (a[0], times[i]) for i, a in enumerate(ocn_add_remove_list)
        ]
        times = f([a[1] for a in dt_add_remove_list])
        dt_add_remove_list = [
            (a[0], times[i]) for i, a in enumerate(dt_add_remove_list)
        ]
        return ocn_add_remove_list, dt_add_remove_list

Upon second look, I realize that despite the "15 second block time" assumption, the logic should still work as intended. Chains that process block faster than ethereum will still interpolate timestamps every 240 * 4 blocks which will map to time intervals less than 4 hours.


iOS dropdown presents itself behind other components

Though this component works well on Android, iOS applications get this weird behaviour:

The specific Front-end Tech stack that I use is React Native Expo, and the error presents itself on dev and Internal Builds. The display of the menu can be fixed as a result of zIndex: -1 and position: "absolute" in the parent View component, however this is far from adequate as this affects the component's positioning relative to other components. It is the exact same issue as here:
Issue 212
Please provide an adequate solution for this on iOS that decouples it from other components. Thanks

In my case, it was enough to set the parent's zIndex to a higher value than the following elements. Try it at your case maybe it will work too 😄

In my case, it was enough to set the parent's zIndex to a higher value than the following elements. Try it at your case maybe it will work too 😄

I couldn't manage to get ti to work. Do you mind sharing an example?

In my case, it was enough to set the parent's zIndex to a higher value than the following elements. Try it at your case maybe it will work too 😄

I was able to resolve this issue. As it turns out, this is the solution, but this requires a nuanced understanding of component elevation and how your app styling is structured.
Here is my example:

Using React Native Modal component, we have an already-elevated "root" component with a Stack component container:

const parentModal = () => {
   ...
   return (
      <View>
        ...
        <Stack
                 gap={2}
                style={{
                    zIndex: 1,
                }}
        >
           <ModalContents/>
        </Stack>
        ...
      </View>
   );
}

const ModalContents = () => {
   ...
   return (
      <View>
         ...
         <View style={{zIndex: 1}}>
               <AutoCompleteInput {...props}
                  inputContainerStyle={[
                      {
                          position: "relative",
                          borderWidth: 0,
                          height: theme.spacing(8),
                      },
                      props.inputContainerStyle,
                  ]}
                  listContainerStyle={[
                      {
                          position: "absolute",
                          top: theme.spacing(8),
                          zIndex: 1,
                          width: "100%",
                      },
                      props.listContainerStyle,
                  ]}

               />
         </View>
      </View>

   );
}

In order to solve it in my case, I needed to somehow communicate between the "base" component and the autocomplete its elevation without losing its elevation within the nesting of it in views. Though this is very specific to my use-case. Perhaps the best way this can help someone else is to say i fixed it by playing around.
Hope this helps someone!


Custom roles

Does Permify allow to create custom roles defined by the application at runtime ?
Could you provide an example ?
Here is an example of how it's possible to create custom roles in Oso:
https://www.osohq.com/docs/guides/model-your-apps-authz#custom-roles

Hi @leonard-henriquez, we don't have a custom roles feature and not in our roadmap for near future to be honest.


Trim all trailing whitespace.

Also add trailing newlines if there wasn't one.

@anmacdonald please review when you have time, merge as well if it looks ok. This is purely cosmetic and purging all trailing whitespace. I spot checked all the modifications and avoided messing with image files.


Maya: Arnold Scene Source overhaul - OP-4865

Brief description
General overhaul of the Arnold Scene Source (ASS) workflow.
Description
This originally was to support static files (non-sequencial) ASS publishing, but digging deeper whole workflow needed an update to get ready for further issues. During this overhaul the following changes were made:

Generalized Arnold Standin workflow to a single loader.
Support multiple nodes as proxies.
Support proxies for pointcache family.
Generalized approach to proxies as resources, so they can be the same file format as the original.

This workflow should allow further expansion to utilize operators and eventually USD.
Discussion
By supporting proxies for the pointcache family, we can also get rid of the specialized proxyAbc workflow. What do we think of that?
We could also implement/support proxy workflows when it comes to animation and rig, although not sure how much that is used outside of big studios.
Testing notes:

Create and publish Arnold Scene Source or Pointcache instance.
Load and render.
Repeat with proxy workflow to see proxy in viewport and original at render time.

I have tested loader and extractor, so far so good. Apart from the question about the second extraction in the extractor, I think it looks ok but it somehow breaks another loader due to the adjustment

This is something I saw when I run reference .ass standin with proxy

I have tested loader and extractor, so far so good. Apart from the question about the second extraction in the extractor, I think it looks ok but it somehow breaks another loader due to the adjustment
This is something I saw when I run reference .ass standin with proxy

Not sure how you get that Loader since I've removing it with this commit?
https://github.com/ynput/OpenPype/pull/4449/commits/9733b07f6dd383a63c00d51312bf700a475aa5d8

I have tested loader and extractor, so far so good. Apart from the question about the second extraction in the extractor, I think it looks ok but it somehow breaks another loader due to the adjustment
This is something I saw when I run reference .ass standin with proxy

This is something I saw when I run reference .ass standin with proxy

@moonyuet Not sure how you get that Loader since I've removing it with this commit? 9733b07

Sorry, maybe I mixed with other forks. my bad! Let me test again!

I have tested it again, the loader works fine. Sorry for the inconvenience!

   Did you not get it publish and loaded?


Infinite loop when LD_PRELOADing calloc

Hi,
I'm trying to use redhook to hook memory allocation functions, including malloc and calloc. The problem is that the hook implementation ends up allocating memory on the heap. This leads to infinite regress—here's part of the stack from gdb:
#1  0x00007f7641d8e86a in redhook::initialized ()
    at /home/itamarst/.cargo/registry/src/github.com-1ecc6299db9ec823/redhook-1.0.0/src/lib.r:
21
#2  0x00007f7641d89484 in calloc (nmemb=1, size=32)
    at <::redhook::ld_preload::hook macros>:24
#3  0x00007f76416ec673 in __cxa_thread_atexit_impl () from /lib64/libc.so.6
#4  0x00007f76414071a2 in std::sys::unix::fast_thread_local::register_dtor ()
    at src/libstd/sys/unix/fast_thread_local.rs:29
#5  std::thread::local::fast::Key<T>::try_register_dtor () at src/libstd/thread/local.rs:444
#6  std::thread::local::fast::Key<T>::try_initialize () at src/libstd/thread/local.rs:430
#7  0x00007f764141fd7e in std::thread::local::fast::Key<T>::get ()
    at src/libstd/thread/local.rs:416
#8  std::sys_common::thread_info::THREAD_INFO::__getit () at src/libstd/thread/local.rs:177
#9  std::thread::local::LocalKey<T>::try_with () at src/libstd/thread/local.rs:259
#10 std::sys_common::thread_info::ThreadInfo::with ()
    at src/libstd/sys_common/thread_info.rs:16
#11 std::sys_common::thread_info::current_thread ()
    at src/libstd/sys_common/thread_info.rs:29
#12 std::thread::current () at src/libstd/thread/mod.rs:634
#13 std::sync::once::Once::call_inner () at src/libstd/sync/once.rs:404
#14 0x00007f7641d8c219 in std::sync::once::Once::call_once (
    self=0x7f7641db2048 <pymemprofile_preload::calloc::get::ONCE>, f=...)
    at /rustc/73528e339aae0f17a15ffa49a8ac608f50c6cf14/src/libstd/sync/once.rs:224
#15 0x00007f7641d89449 in pymemprofile_preload::calloc::get (self=0x7f7641d99017)
    at <::redhook::ld_preload::hook macros>:14
#16 0x00007f7641d8c0aa in pymemprofile_preload::calloc::calloc::{{closure}} ()
    at <::redhook::ld_preload::hook macros>:29
#17 0x00007f7641d89dea in core::option::Option<T>::unwrap_or_else (self=..., f=...)
    at /rustc/73528e339aae0f17a15ffa49a8ac608f50c6cf14/src/libcore/option.rs:419
#18 0x00007f7641d8950e in calloc (nmemb=1, size=32)
    at <::redhook::ld_preload::hook macros>:24
#19 0x00007f76416ec673 in __cxa_thread_atexit_impl () from /lib64/libc.so.6
#20 0x00007f76414071a2 in std::sys::unix::fast_thread_local::register_dtor ()
    at src/libstd/sys/unix/fast_thread_local.rs:29
#21 std::thread::local::fast::Key<T>::try_register_dtor () at src/libstd/thread/local.rs:444
#22 std::thread::local::fast::Key<T>::try_initialize () at src/libstd/thread/local.rs:430
#23 0x00007f764141fd7e in std::thread::local::fast::Key<T>::get ()
    at src/libstd/thread/local.rs:416
#24 std::sys_common::thread_info::THREAD_INFO::__getit () at src/libstd/thread/local.rs:177
...

The traditional generic solution for this sort of thing is a flag that tells you whether you're reentrantly calling the same function again, and if so not applying the hook. And that's problematic to implement already, but impossible given heap allocation inside the hook implementation.

I've seen a couple of crates that implement static allocators, I wonder if they would solve my problem without this having to be fixed in redhook. Will go try that.

Updated the traceback with the starting point; apparently it's redhook::initialized().
Static allocator doesn't seem to help, probably because it's using libc routines for the threading APIs.

The underlying problem here is described in https://github.com/geofft/redhook/blob/master/src/lib.rs - we're trying to work around another infinite loop by forcing Rust libstd to fully initialize itself in a static constructor. The approach doesn't seem to be working right, though, and anyway Rust switched away from jemalloc, so maybe the right approach is to remove this workaround and bump the MSRV (I think Rust 1.29?), or at least make the workaround conditional on whether jemalloc is in use, somehow.

Thanks for the quick response. My current thought for my own project is to write the LD_PRELOAD part in C and call into Rust with dlopen/dlsym + RTLD_DEEPBIND, because overriding memory allocation is so fraught anyway.
Thanks for you work on redhook, in any case, this isn't an easy problem!

I've merged the change to remove redhook::initialized, but I think that doesn't actually fix the problem, so reopening.


a big refactoring of tokens, origins, inputs and positions

review @mdemarne

/cc @duhemm (see the changes in the token API)

Summary of the most important changes:

Vector[Token] => Tokens (the underlying collection is still a vector of tokens, but now it's encapsulated under a decent name; the API hasn't changed - the usual stuff like :+, map or slice works)
Removed Token.dialect, Token.index, Token.prototype.  In the future, I'm going to make Token a value class over a long, and Tokens will become a bitstream of delta-encoded starts.
Refactored origins. There are now Origin.Parsed and Origin.Synthetic. The former is used as usual, the latter is lazily assigned to every tree that doesn't have an explicitly specified origin. @mdemarne, the logic that you'll need to implement lives in https://github.com/xeno-by/scalameta/blob/master/scalameta/src/main/scala/scala/meta/internal/ui/InferTokens.scala, which is called to fill in tokens of a synthetic origin.
Refactored inputs. There are now Input.Real (and a bunch of its subclasses with concrete def content: Array[Char]) and Input.Virtual (that contains an underlying collection of tokens). Since tokens no longer need an index, we can create virtual inputs at will and not worry about their tokens not belonging to the same input. The new distinction between inputs is propagated into some type signatures (e.g. Token.input is now typed as Input.Real), which has made things more precise.
Encapsulated start and end into Point, which has input, offset, line and column. A start and an end can be combined into Position.
Implemented initial support for XML literals. We now have dedicated tokens for them, as well as a tree representation (encoding via string interpolations). Current support is pretty stupid - it detects starts and ends of XML literals and then stuffs everything in-between into a static interpolation part, but that at least allows stuff to parse successfully.

@mdemarne, the logic that you'll need to implement lives in https://github.com/xeno-by/scalameta/blob/master/scalameta/src/main/scala/scala/meta/internal/ui/InferTokens.scala, which is called to fill in tokens of Origin.Synthetic.
As we discussed, the tokens that you'll be creating will combine the tokens from subtrees that come from Origin.Parsed as well as synthetic tokens that you'll create similarly to what ShowCode does at the moment. I think that you'll be able to use @duhemm's token quasiquotes for this purpose - we'll need to discuss that tomorrow.
Please let me know whether these changes make sense.

What annoys me somewhat is that even if we have a tree with Origin.Parsed, then we still have to change the origin to Origin.Synthetic if we insert it somewhere (in order to accommodate indentation). If we come up with a solution that would allow to leave original tokens alone, it would be really cool.

LGTM!


Update App.js

improve error handling , give more informative error handling.
use destructure instead of datas.wind?.temp.
add a seperate button component for reusability.

it is under IWOC


Add support for "assert" style

Potential fix for #69

@alxndrsn
Thanks for this PR.
It's published in<EMAIL_ADDRESS>


icm42688: Follow st's devicetree bindings

Fix the devicetree bindings to actually be used as the default configuration, following the example set by various ST sensor devices.
This requires sadly dropping enums and using #defines for various options as well as repeating many numbers, but presumably is the way to do it given the precedent set by ST with sensors like the lsm6dso.
Related #73296 (doesn't entirely fix, only the dts half of the issue, the shell still doesn't work right)

hm... docs build fine for me locally, guess some debugging is needed on that front

@kartben I couldn't find a nice place (group) to put the dt-bindings related #defines in other than a top level ICM42688 group which seems so-so to me, any thoughts?


fetch kubeconfig from master after deployment

Proposed Changes
This PR adds a final step to the site.yml playbook, downloading the ~/.kube/config file from the first master to kubekonfig in the playbook directory.
This way you can export KUBECONFIG=${PWD}/kubeconfig, and deploy, reset, deploy, reset, deploy... and never worry about having the right kubeconfig.
I deliberately placed this task in the playbook, it shouldn't be part of a (reusable) role.
Checklist

[x] Tested locally
[x] Ran site.yml playbook
[x] Ran reset.yml playbook
[x] Did not add any unnecessary changes
[x] Ran pre-commit install at least once before committing
[x] 🚀

Thank you so much!


Enable users to run checks against the charts

Enable partners to run checks against a Helm Chart
Checks:

Helm Chart Checks #47

Features:

Ability to integrate with other Helm Chart Check providers #36 (ie. Stackrox, IBM cv)
Ability to define which checks are mandatory, optional, experimental

Outcome of the check:

Digest of Helm Chart content (not sha of tarball) #42
OCP version used for performing the checks #43
Outcome of all performed checks (passed/failed)

Closing as now combined with #47


Unable to locate iTunesMetadata.plist in archive

I have manually archived my app to test on real device but i'm getting error on console where ios server is running
Error--
could not locate iTunesMetadat.plist in archive!
could not locate Payload/2012 Olympics.app/SC_Info/2012 Olympics.sinf in archive!
any help will be appreciated

You have solved this problem？ Could you share the solution,please? Now, I'm in this dilemma.


Prevent wrong CMS AMI from being deployed

Adding intentional incompatible migration script to protect against accidentally deploying the wrong CMS AMI in the wrong environment.

Coverage remained the same at 57.748% when pulling 6eca4aae7794975356d87434e304a5c0f6987e3a on tlisonbee:intentional_incompatible_change into 01ec6ca64dc32169a57bc37c0b6435d5f46d0f49 on Nike-Inc:master.

Coverage remained the same at 57.748% when pulling c52810399147063b88c7a505d763713d6fc01533 on tlisonbee:intentional_incompatible_change into 01ec6ca64dc32169a57bc37c0b6435d5f46d0f49 on Nike-Inc:master.


[Enhancement] flush WAL should avoid block brpc worker when transaction commit

What type of PR is this：

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #22487
Problem Summary(Required) ：
In the current implementation, after the transaction commit is completed, flushWAL will be executed, which will block brpc worker. Therefore, we need to find a new implementation to avoid blocking brpc worker.
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[x] 2.5
[x] 2.4
[x] 2.3

LGTM

@Mergifyio backport branch-2.5

@Mergifyio backport branch-2.4

@Mergifyio backport branch-2.3


provide "timeSeries.getIndex(Tick t)"

Please provide a method TimeSeries#getIndex(Tick t), which returns the index of the tick within the timeSeries.
for example:
timeSeries.addTick(t1);
timeSeries.addTick(t2);

timeSeries.getIndex(t1): returns 0
timeSeries.getIndex(t2): returns 1

I guess, there is no need for that.


[feature request] Allow customization of the syndicate sheet

It's currently possible to customize the syndicate sheet by unpacking the JAR, changing the <JAR>/app/helpIGImg.png file, but being able to change it through the GUI would be better in my opinion.

It's currently possible to customize the syndicate sheet by unpacking the JAR, changing the <JAR>/app/helpIGImg.png file, but being able to change it through the GUI would be better in my opinion.
Thank you for sharing this method.
How would you go about doing that in rar version?

Hi, can you share updated cheatsheet?

Hi, can you share updated cheatsheet?

https://www.reddit.com/r/pathofexile/comments/ekjv21/syndicate_cheat_sheet_39_prices/?utm_medium=android_app&utm_source=share
I found it here on reddit.
I used the color version, direct link: http://imgur.com/KpSJB1j

Thanks!

Thank you! Would be great if you could de-couple the image from the distribution and allow us to specify a custom image (say in the same folder as the jar and the rar) - what op said :D

This takes more time to do than replacing img file :) but you still can to do it by yourself

https://github.com/Exslims/MercuryTrade/releases/tag/<IP_ADDRESS>


Add tests for @yamada-ui/tag

related: #74
Description
Currently, no tests in @yamada-ui/tag. In the future, I feel the need for testing when operating @yamada-ui/tag.
Problem Statement/Justification
Testing is essential to ensure quality when operating a package.

This was already done.


[SP-5993] JSON input: Step does not return record when trying to retr…

…ieve a field with NULL value. Fix using kettle.properties KETTLE_JSON_INPUT_INCLUDE_NULLS value to accomplish this
This commit is a cherry-pick from master 7e8f41a66

:white_check_mark: Build finished in 24m 14s
Build command:
mvn clean verify -B -e -Daudit -amd -pl core,plugins/json/core

:ok_hand: All tests passed!
Tests run: 5106, Failures: 0, Skipped: 7    Test Results

:information_source:  This is an automatic message


Verify SSL certificates with local deployment (linux + kind)

Describe the bug
We need to verify if SSL certificates with Traefik/Let's Encrypts work on local deployments, and update the "Deploy Nebari on local machines (for testing)" docs accordingly.
Originally noted here: https://github.com/nebari-dev/nebari-docs/pull/235#discussion_r1042436871
Expected behavior
.
OS and architecture in which you are running Nebari
Linux, local deployment with kind
How to Reproduce the problem?
.
Command output
No response
Versions and dependencies used.
No response
Compute environment
None
Integrations
No response
Anything else?
No response

Closing for now, please open a new issue if the certs don't work on local deployments


installing php v-3

How do i require this sdk in my project. tried composer require Flutterwave-PHP-v3 and it seems not to be working

@Loydtafireyi this should work composer require flutterwavedev/flutterwave-v3.

@obaydmir can you please include this in the readme file to avoid confusion for new users. Thank you.

@obaydmir can you please include this in the readme file to avoid confusion for new users. Thank you.

Unfortunately, I'm not able to do that. I'm not part of their development team.

@Loydtafireyi Thanks for the feedback. Will do

I have tried composer require. There is a conflict with "monolog/monolog": "^2.0". Your package currently requires "monolog/monolog": "1.*". Can you upgrade the required package?

Thanks. Will do

Thanks. Will do


Increased memory available to generate-tsv.job.

Until we can replace generate-TSV with a stream-based solution (#65), we need all the memory we can use. This PR increases the memory requirement for running generate TSV to ~1000 GB.

That's a lot of memory! Did you already implement the streaming version?