Possible misuse of method fluent_uri::Path::segments

Hi, the maintainers of rgb-std. I'm the author of fluent-uri. I notice that this repo contains code calling the method fluent_uri::Path::segments: https://github.com/RGB-WG/rgb-std/blob/9e23bd272a989c5f0315f458565abfe3c1f7b2a0/invoice/src/parse.rs#L333-L337
Which might not work as intended. It currently accepts both absolute and rootless paths, for example /foo/bar and foo/bar.
Whether this behavior is intended or not, I think I should expand the method's documentation so that it's less likely to be misused. I have changed it to the following: https://github.com/yescallop/fluent-uri-rs/blob/db4cde70754126cdc75425fefd655d1c88904a82/src/encoding/mod.rs#L382-L414
Thanks for depending on my crate fluent-uri and I'll continue to make sure it offers a good user experience.
As an aside, I find that the following code looks a bit strange on line 274: https://github.com/RGB-WG/rgb-std/blob/9e23bd272a989c5f0315f458565abfe3c1f7b2a0/invoice/src/parse.rs#L268-L277
It might not work as intended as I imagine the rgb: prefix should be written in both branches, or I could be wrong since I don't know much about the project. Still, I bring this up just in case.

Dear @yescallop! Thank you very much for taking time reviewing our code and writing such a detailed fix proposal!

BTW you are right about the needed check on whether the path is absolute. I did a PR here: https://github.com/RGB-WG/rgb-std/pull/209
As for the rgb: prefix in the second suggestion, everything is correct since in the first branch it is printed as a part of ContractId Display implementation


Update v 1.2.1 and master samples documentation

Due to long time required to install OpenMetadata catalog we need to provide a faster option - working with Katalog.
Please update getting starting and notebook samples examples to allow working with both catalogs.
The documentation should be updated for v1.2.1 and master.

The following PRs address this issue:
https://github.com/fybrik/fybrik/pull/1926
https://github.com/fybrik/fybrik/pull/1934
https://github.com/fybrik/fybrik/pull/1935
https://github.com/fybrik/fybrik/pull/1941

@cdoron , we will need similar PRs to the master.
why did you set the issue as blocked ?

@cdoron , we will need similar PRs to the master. why did you set the issue as blocked ?

https://github.com/fybrik/fybrik/pull/1951 updates documentation on master


DOCS: Update LICENSE to include 2020

What this PR does / why we need it:
Update LICENSE to include 2020
Which issue (if any) this PR fixes:
Fixes # n/a
Any other useful info:

Good spot, thank you!


Add recipies to build an image for this board

The image should support  OP-TEE

related changes are in the hardknott branch


Memory leak on unmounted DOM element or component

Vue version
3.4.29
Link to minimal reproduction
Reproduction
Steps to reproduce
Click the toggle button a few times.
What is expected?
There is a div with an @click event listener, and my expectation is that the event listener should be added when the div is mounted to the DOM and removed when the div is unmounted.
What is actually happening?
The console shows that the event listener gets added, but never that it gets removed. Performance recordings show that the amount of listeners keeps increasing, never decreasing.

System Info
System:
    OS: Windows 11 10.0.22631
    CPU: (12) x64 12th Gen Intel(R) Core(TM) i5-12400F
    Memory: 3.23 GB / 15.79 GB
  Binaries:
    Node: 18.17.1 - C:\Program Files\nodejs\node.EXE
    npm: 10.1.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Chromium (126.0.2592.87)
    Internet Explorer: 11.0.22621.3527
  npmPackages:
    vue: ^3.4.29 => 3.4.31

Any additional comments?
Using vue in the building of an online game where elements with click/mouseenter/mouseleave events often are added/removed from the DOM, and noticed significant memory leaks with ever-increasing listener amounts.
Thanks in advance for any help!

EventTarget.prototype.addEventListener = function (type, listener, options) {
-  console.log(`Added event listener: ${type}`, this);
  originalAddEventListener.call(this, type, listener, options);
};

EventTarget.prototype.removeEventListener = function (type, listener, options) {
-  console.log(`Removed event listener: ${type}`, this);
  originalRemoveEventListener.call(this, type, listener, options);
};

console.log() causes memory leaks

EventTarget.prototype.addEventListener = function (type, listener, options) {
-  console.log(`Added event listener: ${type}`, this);
  originalAddEventListener.call(this, type, listener, options);
};

EventTarget.prototype.removeEventListener = function (type, listener, options) {
-  console.log(`Removed event listener: ${type}`, this);
  originalRemoveEventListener.call(this, type, listener, options);
};

console.log() causes memory leaks

Thanks, that makes sense! Still, regardless of the memory leaks it does seem strange to me that the removal of the listener is logged when removing it manually but not when the div is unmounted. Or is that expected behaviour?

That's because the elements are removes from the DOM when the component is unmounted, so they will be garbage collected and there's no need to remove the listeners.

That's because the elements are removes from the DOM when the component is unmounted, so they will be garbage collected and so there's no need to remove the listeners. Removing them individually would just be overhead

Thanks a lot, that's a clear explanation and cool to hear how that works! Then I'll have to search elsewhere for what's causing my leak 😄


Fixing unresolved custom properties due to apparent typo

My linter detected this small mistake. Fixing it to resolve for everyone. Not sure what changes this will cause/resolve

I think I fixed that last month in the last PR here but I haven't heard from the maintainers for now.


adds role of button to all links that are buttons #10619

This PR fixes an accessibility bug. The anchor tags that were not redirecting users to a new browser window were all set incorrectly as links. The role of button has been set for the anchor tags that act as buttons.
This PR fixes #10619

could you please first resolve the conflict?

Coverage increased (+0.1%) to 39.836% when pulling b7a16760427d8b93c1c315b9667ff70ed44e2cdc on fixes-all-controls-being-set-as-links-2 into b57cae5b6049a6e43f9091884c1811a8c03294fb on main.


tooltip on disabled reporting button during fork is innacurate

i am logged in but it is disabled because it is during a fork

done. closing


Revisit "None" shape (was: Icon is not material flat)

Why is Effect None still creating raised edges? The icon is not flat as it should be in Material Design.
Also the solid color is messed up.
Per Android icons specifications:

Shape: Full square – Google Play dynamically handles masking. Radius will be equivalent to 20% of icon size.
Shadow: None – Google Play dynamically handles shadows. See 'Shadows' section below on including shadows within your artwork.
After the asset is uploaded, Google Play dynamically applies the rounded mask and shadow to ensure consistency across all app/game icons.
Utilize the full asset space as the background when dealing with minimalistic artwork.

The "none" shape needs to be fundamentally revisited in light of the adaptive icon changes in the platform...

This shape will be removed, it no longer makes sense w/ adaptive icons.


Importing SciPy in Python 3.9.1 yields zsh: bus error; Apple Silicon M1 Mac OS 11

I recently purchased new Mac Pro w/ Mac Os X 11.0.1 & Apple Silicon M1.
I installed homebrew (when enabling Rosetta) and managed to install python3.9 and other packages through brew (numpy==1.19.5 & scipy==1.6.0, amongst others).
However, executing my one-liner script yields a "bus error". That happens when I try to import curve_fit from scipy.optimize. Any ideas how to solve that?
I believe this is hardware related and is due to non optimal compilation of scipy for the M1 architecture (data are lost somewhere on the memory bus? https://www.quora.com/Why-there-is-a-bus-error-in-the-Python-program-when-it-recurs-over-18-713-times ).
Python code:
from scipy.optimize import curve_fit

Error:
zsh: bus error

Tail lines when running this code in python3.9 with -v option.
import 'scipy.sparse.linalg.dsolve' # <_frozen_importlib_external.SourceFileLoader object at 0x1182ad040>
# /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/__pycache__/__init__.cpython-39.pyc matches /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/__init__.py
# code object from '/opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/__pycache__/__init__.cpython-39.pyc'
# /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/__pycache__/__init__.cpython-39.pyc matches /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/__init__.py
# code object from '/opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/__pycache__/__init__.cpython-39.pyc'
# /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/__pycache__/arpack.cpython-39.pyc matches /opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/arpack.py
# code object from '/opt/homebrew/lib/python3.9/site-packages/scipy/sparse/linalg/eigen/arpack/__pycache__/arpack.cpython-39.pyc'
zsh: bus error  python3.9 -v debug.py

I also posted this question on stack overflow: https://stackoverflow.com/questions/65838231/importing-scipy-in-python-3-9-1-yields-zsh-bus-error-apple-silicon-m1-mac-os-1

Hi @mdabrowski90 indeed apple being apple again, we have many reports coming in about M1. However we have no option other than waiting for the upstream compilers to catch up or hacking a way out by pretending in the compatibility mode. I'll close this as a duplicate of the other issues but feel free to continue the discussion
Duplicate of #13409

Hi @mdabrowski90 indeed apple being apple again, we have many reports coming in about M1. However we have no option other than waiting for the upstream compilers to catch up or hacking a way out by pretending in the compatibility mode. I'll close this as a duplicate of the other issues but feel free to continue the discussion
Duplicate of #13409

Duplicate of #13409

Duplicate of #13409

The relevant discussion on NumPy side is https://github.com/numpy/numpy/issues/17807

The relevant discussion on NumPy side is https://github.com/numpy/numpy/issues/17807

@ilayn Thanks! It's not entirely a duplicate, as I got over the installation of scipy. My issue relates to a specific scipy sub package i.e. optimize when being imported. However, I agreee we've to wait for compilers to catch up.

@ilayn Thanks! It's not entirely a duplicate, as I got over the installation of scipy. My issue relates to a specific scipy sub package i.e. optimize when being imported. However, I agreee we've to wait for compilers to catch up.

True. That's also why your binaries are incompatible even though it "thinks" it installed it correctly.

True. That's also why your binaries are incompatible even though it "thinks" it installed it correctly.

+1 the whole point of this new M1 mac is to do ML and numpy/scipy is pretty integral..

+1 the whole point of this new M1 mac is to do ML and numpy/scipy is pretty integral..


fix: issue with overlaping icons

Fixed the issue with the overlapping icons.
Shared code in common super-class TextInputWithIcon

This PR will conflict with that one: https://github.com/basxsoftwareassociation/bread/pull/26
I would prefer merging the other one first, and then resolving the conflicts on this branch.


Make MultiField property descriptor Obsolete

Not a lot to say. I guess that's what we wanted to do in the issue.

Thanks @TheFireCookie !


Tokenizing Phonetics

Currently, all tokenisers work on a character level. This means that transferring them to a new language is often not possible. At the same time, this means that a model trained with such a tokeniser is specific for that particular language and won't be able to transfer from Spanish to Italian without significant effort. Additionally, written language is a quantised form of speech to reduce the space you need to store it. However, this conversion is very lossy, as it doesn't contain sarcasm or other vocal information.
We hope to reduce the first issue by using phonetic information while leaving the second untouched. The second could be solved by #9, although that uses less sparsity and therefore needs a bigger context to encode the same information.
This issue tracks the progress of implementing such a tokeniser built on phonetic information and the resulting language model trained with it.

@ClashLuke How about using byte-level BPE ?

That would be a perfect combination! Do you want to give it a try?

I am still checking with the original facebook authors on some of the technical details about BBPE.
Once I understand the BBPE mechanism, I can help implement this for your project, but I supposed you are already well-versed in BBPE tokenizer ?

I managed to understand the rationale behind their dynamic programming in equation (1) for BBPE.
However, I am still checking as in why would the BBPE output be the same between 4K and 32K.

It's a bit hard to see, but the outputs do differ. Look at the bytes of the Japanese tokens and the spaces between them.

yup, it is hard to see the extra whitespace.  However, it is confusing as in how would an extra whitespace be introduced with the use of dynamic programming equation (1).  Any idea ?
Besides, the equation might needs to be adapted to limit t to maximum of 3 instead of 4 given that chinese characters are encoded with just 3 bytes, as I found.  Please correct me if wrong.

It's not about Chinese characters; it's about UTF-8, which can be made up of up to 4 bytes. Please look at its Wikipedia entry, as it explains the encoding quite well.


chore: add changeset workflow.

You will need both secrets.NPM_TOKEN and secrets.NPM_TOKEN` configured for it to work.

Thanks! Should be all good!


Update to quickstart section regarding service principal creation

Update to step 2 of the "Create a service principal" section to
update the instructions for setting AZURE_TENANT_ID
Fixes #131

Doc only change, no CI. Merged.


New version: UniversityOfLjubljana.Orange version 3.38.0

Created by 🥟 Dumplings.
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

@wingetbot run

This package installs and launches normally in a Windows 10 VM.


Tests for EventStream

made EventStream ctor public and allow passing in ILogger. We do not want to use the static EventStream.Instance for tests as they would all interfere with each other anytime a message type was sent that another test subscribed to.

I guess that depends if anyone cares about DeadLetterEvents being logged :) ?

I think you're right @adamhathcock - I'm going to delete the test that something is logged

Awesome!


How to Generate Other Guidance Signals?

Hello,
I see that you have provided a way for generating sentence guidance signals through the BERText Model, Could you give some pointers for generating other guidance keywords, for eg topic?

Hi, here are some examples of extracting keywords: https://github.com/neulab/guided_summarization/tree/master/scripts.

Hi, you can use the script to extract keywords from the training data, and then train another seq2seq model (e.g. BertAbs, BART) with source documents as inputs and the extracted keywords as outputs.

@zdou0830  Hi, I am wondering in case we want to use multiple guidance signals, such as keyword and important sentences, how the 'z' file should be? Should each guidance signal has separate 'z' file? If not how to put put multiple signals for each data point in one line in 'z' file? Thanks


repositoryContext needs better specification

ocm generated repo ctx like this:
  repositoryContexts:
  - baseUrl: eu.gcr.io
    componentNameMapping: urlPath
    subPath: <some-prefix/abc/def>/microblog
    type: OCIRegistry

Clarify:

Why is baseUrl only a host name and not a full path? Other tools create a full URL here?
subPath is neither mentioned in the specification nor in the schema.
Why do we need two fields for this?

@mandelsoft , can you please update this issue with a comment?


fetch logo from config instead of default image

Hello,
This PR will help in displaying the configured logo instead of showing the hard-coded one for unprivileged users
Thanks

Thanks for the fix!

Pull Request Test Coverage Report for Build c1de03fa122f3e802f722e5ed1e400d7fde7acc1-PR-1098

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 66.055%

Totals

Change from base Build 5d545da398473aa1ec3f8a5916b162396352c67c:
0.0%

Covered Lines:
1152

Relevant Lines:
1744

💛  - Coveralls


Trouble with cuda out of memory

Hi guys! Incredible work! I'm trying to train the model on the pascal voc with 92 labels on a NVIDIA TITAN X gpu. Unfortunately I keep getting the following error:  RuntimeError: CUDA out of memory.Tried to allocate 98.00 MiB (GPU 0; 11.90 GiB total capacity; 10.09 GiB already allocated; 100.38 MiB free; 10.42 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF.
So I did some research in how to use this function for cuda allocation and tried the following with some different values.
os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "max_split_size_mb:128" I added this line of code in the main of experiments.py but still doesn't work. My question is if I'm doing something wrong or my gpu just don't have enough memory to run this model.

Thank you for the advices! I will give it a try and if it works I will let you know.

Hi,
I'm trying to run the training for the model on 2 x A6000 GPUs and am still running into similar issues. I'm getting the following error:
RuntimeError: CUDA out of memory. Tried to allocate 388.00 MiB (GPU 1; 47.53 GiB total capacity; 44.65 GiB already allocated; 83.31 MiB free; 45.02 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Any idea what I could do to fix this?
Thanks!


Choose VideoFormat error

Hello,
Description
I'm trying to force quality for the camera. But I have an error when I'm trying to do it.
How to force a quality up to 720p or 1080p with good network quality?
Code
Code modified from the sample.
let format = VideoFormat()
format.dimensions = CMVideoDimensions(width: 1280, height: 720)
camera!.startCapture(device: backCamera!, format: format) { (captureDevice, videoFormat, error) in
    if let error = error {
        self.logMessage(messageText: "Capture failed with error.\ncode = \((error as NSError).code) error = \(error.localizedDescription)")
    } else {
        self.previewView.shouldMirror = (captureDevice.position == .front)
     }
 }

Expected Behavior
Camera and video of the participant in 720p or 1080p.
Actual Behavior
ERROR:Twilio:[Platform](0x16b8c3000): Fatal runtime capture error: Error Domain=com.twilio.video.capturer.camera Code=1004 "Could not find a valid device format." UserInfo={NSLocalizedFailureReason=Could not find a valid device format.}, code 1004
2021-04-27 11:48:21.365403+0200 VideoQuickStart[3638:287591] Capture failed with error.
code = 1004 error = The operation couldn’t be completed. Could not find a valid device format.

Versions
All relevant version information for the issue.
Video iOS SDK
[e.g. 4.4.0 via SPM]
Xcode
[e.g. 12.5]
iOS Version
[e.g. 14.5]
iOS Device
[e.g. iPhone X with back camera]
Thanks

Moved in https://github.com/twilio/twilio-video-ios/issues/183


Display gallery for each page with pictures

Done in https://github.com/pokatomnik/MrakopediaReader2/pull/69


Feature Request: Integrate SSO with Authentik

Hi there,
First, thank you for the incredible work on this project. The graphical interface for OpenVPN is incredibly useful, and the existing user management system is quite helpful.
However, I believe the user management experience could be further enhanced by integrating a Single Sign-On (SSO) solution, such as Authentik. Here are a few reasons why I think this would be beneficial:

Improved Security: SSO solutions like Authentik offer advanced security features such as multi-factor authentication (MFA) and centralized user management, reducing the risk of security breaches.
Better User Experience: Users can log in with their existing credentials, eliminating the need to remember multiple usernames and passwords.
Simplified Administration: With SSO, administrators can manage user access and permissions more efficiently, ensuring that only authorized users have access to the VPN.

Suggested Implementation:

Integrate the Authentik SSO provider into the existing user management system.
Allow administrators to configure SSO settings via the graphical interface.
Provide documentation and examples for setting up and using Authentik with the project.

I believe that this integration would greatly benefit many users and administrators by providing a more secure and user-friendly authentication method.
Thank you for considering this feature request. Please let me know if I can provide any further details or assist in any way.
Best regards,
Gauthier

Hi @gotiee,
This is very nice enhancement some people would like to be implemented, however it require some tome for development and existent functionality redesign. I'd be glad to include it, but not in the nearest future.


Save and load buttons.

Both save and load buttons now appear in the GUI for the parameter manager. Both of them are running in the instrument located in the server

@marcosfrenkel: two things i noticed when testing:

when i close the parameter manager and open again, then reload the parameters from file, the units are not reappearing
when loading the parameters from file, we should automatically refresh the list
Can you look into those?

Fixed both issues. I managed to make the units appear by refreshing the sub-modules instead of the parameters.


Add gitstats formula

The author will not create release tags, so we must use the HEAD of the
repository instead.
Closes hoxu/gitstats#29
Refs Homebrew/homebrew#14418
Refs Homebrew/homebrew#25447

@DomT4 @mistydemeo (tagged as recent mergers, maintainers?)
I can't seem to make out what the error is in the build process - any help?

@DomT4 We made it! :tada:

Merged in https://github.com/Homebrew/homebrew-head-only/commit/f09221ab5ff5ee81055a9c9e241487d25d27dd0e. Thank you for your contribution to Homebrew; we appreciate it! :smiley_cat:


Installing charlock_holmes 0.7.6 on Oracle Linux fails

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /home/git/gitlab/vendor/bundle/ruby/2.6.0/gems/charlock_holmes-0.7.6/ext/charlock_holmes
/usr/local/bin/ruby -I /usr/local/lib/ruby/2.6.0 -r ./siteconf20191030-23238-uot9nu.rb extconf.rb --with-icu-dir\=/usr/lib/icu
extconf.rb:12: warning: Insecure world writable dir /usr/local/bundle/bin in PATH, mode 040777
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/usr/local/bin/$(RUBY_BASE_NAME)
extconf.rb:12:in ``': No such file or directory - which (Errno::ENOENT)
        from extconf.rb:12:in `<main>'

extconf failed, exit code 1

Gem files will remain installed in /home/git/gitlab/vendor/bundle/ruby/2.6.0/gems/charlock_holmes-0.7.6 for inspection.
Results logged to /home/git/gitlab/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0-static/charlock_holmes-0.7.6/gem_make.out

An error occurred while installing charlock_holmes (0.7.6), and Bundler cannot continue.
Make sure that `gem install charlock_holmes -v '0.7.6' --source 'https://cernerrepos.net/api/gems/rubygems/'` succeeds before bundling.

In Gemfile:
  charlock_holmes

Tried:
 yum install libicu-devel

  installed icu.50.2 --> din't work

Built ICU4C from source
 git clone https://github.com/unicode-org/icu --depth=1 --branch=release-64-2
 cd icu/icu4c/source && ./configure --prefix=/usr && make install

Then
 gem install charlock_holmes -v 0.7.6 --with-icu-dir=/usr/lib/icu

Resolved: Dint have https://github.com/brianmario/charlock_holmes/blob/master/ext/charlock_holmes/extconf.rb#L3 installed


Avoid noise when code runs with Ruby warnings

New versions of RSpec have warnings turned on by default:
# This setting enables warnings. It's recommended, but in some cases may
# be too noisy due to issues in dependencies.
config.warnings = true

I believe these warnings are helpful in general to write better code. However, Grape and Grape Entity are very noisy. I get about 20 lines of warnings for one single test where Grape is involved.
I hope you agree. Many of my changes could also be solved differently for sure. I am happy to discuss and change those cases. I also changed the specs for less warnings and turned them on in the test suite.

I think initializers such as @status ||= nil should be @status = nil in def initialize. Otherwise this looks sensible.

I have done so in all the classes. The cases where I didn't are all modules in the DSL namespace.

Because those are included? I am not a huge fan of side-effects of assigning something on return to nil, warning or convention or not. Anyone else has an opinion, maybe @namusyaka or @lefnord?

I agree that @body ||= nil is not a very good pattern, rather hard to read/understand. I removed the two occurrences from the PR.

Sorry to bother you guys, I'm personally :-1: for this.
In prefer to move  "instance variable @var not initialized" warning to the other verbosity level than add more code to deal with it :)
bundle exec ruby -Ispec -W2 spec/grape/validations/validators/default_spec.rb - I'll happy to see it only here.
There are some good points in the sequel repo that can help with the decision.

The discussion is very interesting, also the references to the Ruby development. The warning gem in Ruby 2.4 will definitely help. The sequel gem should be a good reference.
I see that some of my changes may affect the performance of every API call, while others are only executed when the app is started. What do you think of changing only the occurrences in start-up code?

I would be down with what you're proposing @cpetschnig. Initialization in def initialize is ok with me, but side effects in properties aren't.

I updated the PR:
Instance variables are now only initialized in def initialize. Also removed the config.warning = true from spec_helper.rb.

Very true, I've changed it.

It's very good, thanks @cpetschnig!

🎉

Perfect, thanks!


MNT: Re-rendered with conda-smithy 2.4.5

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

It took awhile since my initial PR (#1), but all the dependencies are finally available for R 3.4.1. The problem was that a lot of the tidyverse packages had failed when the feedstocks were built.

👏 :) thanks a bunch @jdblischak
In related news we will have >1000 bioconductor packages in bioconda this week, if we are lucky :)

👏 :) thanks a bunch @jdblischak

Thanks @bgruening for the encouragement and also for all the guidance! Back in November there were over 100 conda-forge R packages that needed rerendered (defined as being built for R 3.3.2 or 3.4.1, but not both). As of today there are only 31 and decreasing (and this includes false positives like r-uniqueatommat that pins r-base >=3.4.1).

In related news we will have >1000 bioconductor packages in bioconda this week, if we are lucky :)

That's awesome! Keep up the amazing work. And with any luck, I can help increase the Bioconductor package count by 1 this week :-)


Sliding Window Maximum Problem using Heap data structure

Is your feature request related to a problem? Please describe.
The problem to be added is Sliding Window Maximum where an array and an integer K is given and we've to find the maximum for each and every contiguous subarray of size K.
Describe the solution you'd like
I would like to solve this question using Max-Heap approach. The element of the current window will be stored in the Max-Heap and the maximum element or the root will be printed in each iteration.
Do you want to work on it
Yes, I would want to be assigned with C++ language for this issue.

Please assign this issue to me, @nakul-19 @Rohan27s  @rudrakshi99 @shreyanspoddar  @OjusWiZard  @plazzy99  @yasharth291 . I would want to implement it in c++.

Please assign this to me in Python.

@plazzy99  @rudrakshi99  @nakul-19  @tarun26091999  @OjusWiZard  @shreyanspoddar  @raksha009  @anjul2000 @rish-singhal  Please assign me this project in C++. Thankyou


"log file" was incomplete

error.log 报错："log file" was incomplete
2020/11/12 10:36:25 [alert] 37098#0: *161574 write() to "log file" was incomplete: 65536 of 535811 while logging request, client: <IP_ADDRESS>
使用了如下这种方式，日志长度超过 64k， error 日志报错"log file" was incomplete
access_log  "pipe:rollback logs/error_log interval=60m baknum=5 maxsize=2048M" info;
nginx 则不会出现这个错误。

error.log 报错："log file" was incomplete
2020/11/12 10:36:25 [alert] 37098#0: *161574 write() to "log file" was incomplete: 65536 of 535811 while logging request, client: <IP_ADDRESS>
使用了如下这种方式，日志长度超过 64k， error 日志报错"log file" was incomplete
access_log "pipe:rollback logs/error_log interval=60m baknum=5 maxsize=2048M" info;
nginx 则不会出现这个错误。

请教下这个问题你们解决了么？ 我们也遇到同样的问题
版本：Tengine/2.3.2
2020/12/14 17:56:02 [alert] 8#0: *120030637 write() to "log file" was incomplete: 4096 of 9573 while logging request, client: X.X.X.X, server: XXX.XXX.cn, request: "POST /XXX/XXXX/XXX HTTP/1.1", upstream: "fastcgi://XXx.XXXX.XXX.XXX:9000", host: "XXX.cn", referrer: "http://XXX.cn"


Add return breakdown for connection_handler

Quick fix to add return breakdown for connection_handler.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

-1 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 38.135%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

sdx_controller/handlers/connection_handler.py
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
605

Relevant Lines:
1425

💛  - Coveralls


Sctx files

Any idea if the tools Will support sctx files?
Thanks

yes, it will happen someday, but right now there are some important gaps and unknown fields in sctx research, so I am in no rush to add support for it


EventBuilder - Expose getter for Event Level

Use case: We only want to customize the fingerprint (e.g. add client name) when the Event Level isn't ERROR.
Example code that would be possible with the getter:
public class FingerprintEventBuilderHelper implements EventBuilderHelper {

    private static final String DEFAULT_FINGERPRINT = "{{ default }}";

    @Override
    public void helpBuildingEvent(EventBuilder eventBuilder) {
        String clientName = ThreadContext.get(CLIENT_NAME);
        if (clientName != null && eventBuilder.getEventLevel() != Event.Level.ERROR) {
            eventBuilder.withFingerprint(DEFAULT_FINGERPRINT, clientName);
        }
    }
}

I've felt like the EventBuilder needed getters for a while now, too. One work around would be to build the event and then make a new EventBuilder. I'll try to add this soon.

@bretthoerner want me to create a PR where we expose getters inside EventBuilder? Any specific requirements and/or tests that are needed?

Yeah, that'd be great. I don't think we need tests for getters.

PR created, exposed Event


Sync prop changes

I am using an example component from the https://wuba.github.io/react-native-echarts/docs/getting-started/write-a-dynamic-data-chart with the difference that my data is coming from props. Upper component updates values every second.
The bug is that after the emulator opens, I can see that chart rerenders fully every second, which is reasonable. But in ~5 seconds I see an error:

As I understand, chart is not supposed to be rerendered on every props change. Instead rerender should be canceled and something like chart.setOption() called in the meantime. If that is true can you please provide an example? I guess that is a general usage for many users to get the data from the upper state and sync it over time.

Ok, after some searching on other github repos solution seems to be:
    const [chartInstance, setChartInstance] = useState(null);

    // Initialization
    useEffect(() => {
        if (chartRef.current && !chartInstance) {
            const chart = echarts.init(chartRef.current, 'light', {
                renderer: 'svg',
                width: E_WIDTH,
                height: E_HEIGHT,
            });
            setChartInstance(chart); // Store the chart instance in the state
        }
    }, []);

    // Data Update
    useEffect(() => {
        if (chartInstance) {
            chartInstance.setOption(option);
        }
    }, [data]);

Hope that is correct implementation. Original link: https://github.com/windalfin/fasttt/blob/ff30b40a040700e5fc99f807fa96cda3951ca01d/src/components/HomePage/FastingProgressGauge.tsx#L86-L105

Ok, after some searching on other github repos solution seems to be:
const [chartInstance, setChartInstance] = useState<EChartsType | null>(null);
  const skiaRef = useRef(null);

  useEffect(() => {
    let chart: EChartsType | null = null;
    if (skiaRef.current && !chartInstance) {
      chart = echarts.init(skiaRef.current, 'light', {
        renderer: 'svg',
        width: E_WIDTH,
        height: E_HEIGHT,
      });
      chart.setOption(options);
      setChartInstance(chart);
      return () => chart?.dispose();
    }
  }, []);

  useEffect(() => {
    chartInstance?.setOption(options);
  }, [data]);

Hope that is correct implementation. Original link: https://github.com/windalfin/fasttt/blob/ff30b40a040700e5fc99f807fa96cda3951ca01d/src/components/HomePage/FastingProgressGauge.tsx#L86-L105

@alexey-yarmosh  Did this approach solve your problem?  This is the correct implementation. When options change, instead of re-creating the echart instance, directly call setOption to re-render the chart.
However, some users still find that page switching is too fast and errors occasionally occur. After the echart instance is destroyed, some internal operations may continue to cause errors.  like  this discussion.  We also submitted a PR to zrender to solve the change problem, but the PR is still waiting for official verification and merging.

Yes, seems to be working for now. If some issues arise I'll get back here. Also probably that usage worth documenting on the website, I can assist with that if needed.

Thank you for your suggestion. We will provide the most suitable implementation case for the document. This issue will be closed. If you have other questions, welcome to open a new issue.


Suggestion: change route from 401 to 403

Just thinking 401 might be causing issues to users authenticated sessions and it maye be easier to implement custom error page styling for 403

Fair enough. Just released a fix for this.


preventChange: example does not have a boolean as the first param.

https://github.com/feathers-plus/docs/pull/21


Inquiry about Reference and Algorithmic Differences

Hello @Gwzwpxz @teshnizi
I hope this message finds you well. I recently came across your work on OptiMUS, presented in two versions on arXiv:
"OptiMUS: Scalable Optimization Modeling with (MI)LP Solvers and Large Language Models"
"OPTIMUS: OPTIMIZATION MODELING USING MIP SOLVERS AND LARGE LANGUAGE MODELS"
Firstly, congratulations on your innovative approach to optimization problems using Large Language Models (LLMs). I found both versions insightful, but noticed a discrepancy in the references cited between the two papers.
Specifically, in the first version, you reference the paper "Chain-of-experts: When LLMs meet complex operations research problems" which was presented at The Twelfth International Conference on Learning Representations, 2024. However, this reference does not appear in the second version of your paper. Could you please clarify why this reference was omitted in the second version? Was it an intentional decision to streamline the citations, or is there another reason?
Additionally, I am interested in understanding how your proposed OptiMUS algorithm differs from the approach presented in the "Chain-of-experts" paper. Your OptiMUS framework seems to emphasize a modular LLM-based agent for formulating and solving optimization problems, while the "Chain-of-experts" approach appears to tackle complex operations research problems with a different methodology. Could you provide some insights into the key distinctions between the two approaches, particularly in terms of problem-solving strategies, efficiency, and the types of problems each method is best suited to address?
Understanding these differences would be highly beneficial for my research, and I believe it would also be valuable for the broader community working at the intersection of LLMs and optimization.
Thank you very much for your time and attention to this matter. I look forward to your response and any clarifications you can provide.

Hi @ByteBender007, thanks for your questions.
Regarding the reference issue you mentioned, the first version [1] came out in 2023, and by that time the chain-of-experts paper [2] was not archived/published yet. For the second version [2], we added the citation [3]. At that time the author names were still anonymous, and we used the most up-to-date citation.
Regarding your second question, OptiMUS utilizes a modular approach and a graph to break down solving an optimization problem into smaller tasks. This makes it applicable to problems with long descriptions. Moreover, in CoE, all the problem information, including the data, is passed to the agents directly. We separate the data from the problem description and use a structured state to keep track of what's happening to each component of a solution throughout the processing, which also gives the user more visibility and control over how the LLM is modifying the solution. This is also helpful for developing better frameworks on top of it, as the model bottlenecks can be detected and eliminated more easily. In general, CoE introduces the novel idea of using an agent system to model and solve optimization problems, while OptiMUS introduces a way to process and solve optimization problems using an agent system in a modular and scalable way.
Thanks for raising these points! We agree that understanding these differences would be beneficial for the community. Please let us know if you have more questions!
[1] AhmadiTeshnizi, A., Gao, W., & Udell, M. (2023). OptiMUS: Optimization Modeling Using mip Solvers and large language models. arXiv preprint arXiv:2310.06116.
[2] AhmadiTeshnizi, A., Gao, W., & Udell, M. (2024). OptiMUS: Scalable Optimization Modeling with (MI) LP Solvers and Large Language Models. arXiv preprint arXiv:2402.10172.
[3] Xiao, Z., Zhang, D., Wu, Y., Xu, L., Wang, Y. J., Han, X., ... & Chen, G. (2023, October). Chain-of-Experts: When LLMs Meet Complex Operations Research Problems. In The Twelfth International Conference on Learning Representations.

I'm closing this issue. Feel free to open nother issue if you have more questions.


[AMBARI-25166]:Modifying the value of node memory in the YARN service will affect the maximum value of container memory, but the modification cannot be saved.

What changes were proposed in this pull request?
AMBARI-25166 repairs the following problem: Modifying the value of node memory in the YARN service will affect the maximum value of container memory, but the modification cannot be saved.
How was this patch tested?
We cannot save the maximum value of container memory associated with node memory value when modifying the YARN node memory.
see https://issues.apache.org/jira/browse/AMBARI-25166
For example:
The following is the initial configuration:

Step 1: if we modify the node memory (Memory allocated for all YARN containers on a node) in YARN CONFIGS page, the maximum value of "Minimum/Maximum Container Size (Memory)" and the current value of "Maximum Container Size (Memory)" will be affected.

Step 2: however, the configuration modifications do not take effect when we click the "save" button.

Step 3: Now we can save the maximum value of container memory when modifying the value of node memory with the committed modifications.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/4948/
Test PASSed.

merged to trunk, thanks @newyyshan for your contribution


Cannot use scope when crawling to another site

I have been following the crawling to another site example and came up with this configuration:
x(URL, '.level', [{
  title: '.level-title | trim',
  words: x('.level@href', '.thing', {
    word: '.col_a',
    meaning: '.col_b'
  })
}])

returns:
[
  { title: 'Fuel Your Vocab: Planet Earth', words: [] },
  { title: 'Human Preferences', words: [] }
]

while this:
x(URL, '.level', [{
  title: '.level-title | trim',
  words: x('.level@href', {
    word: '.thing .col_a',
    meaning: '.thing .col_b'
  })
}])

works fine, but only returns one value in words array:
[
  { title: 'Fuel Your Vocab: Planet Earth', words: { word: 'el norte', meaning: 'the north' } },
  { title: 'Human Preferences', words: { word: 'el libro policiaco', meaning: 'the crime book' } }
]

In the first case, I tried defining the scope for words (.thing) objects, so that I can select an array, the same way I did for .level objects, but somehow it does not work there, even though the conditions are pretty much the same.

Ok, so after fiddling a little, I've found a way to do what I want:
x(URL, '.level', [{
  title: '.level-title | trim',
  words: x('.level@href', x('.thing', [{
    word: '.col_a',
    meaning: '.col_b'
  }]))
}])

However, I still believe the first case should work...

I had the same problem. Your approach fixed it.


Update several Github actions (as Node12 is deprecated soon there)

This deprecation notice appears below Github Action runs:
Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16:
- actions/setup-python@v2
- actions/checkout@v2
-<EMAIL_ADDRESS>For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.

Not sure yet what exactly we'll have to do.
I guess visiting the websites of the said actions and find out what the latest stable version is.
For example, https://github.com/actions/setup-python/releases is at 4.5 already. So using "@v4" there instead of using "@v2" would be what I'd try first.

Latest version of pre-commit/action is v3.0.0.
It depends on:

actions/checkout@v3: Uses Node.js 16
actions/setup-python@v3: Uses Node.js 16

Overall, we need to update pre-commit/action to version v3, actions/checkout to version v3, actions/setup-python to version v3.

Why not use v4 for setup-python?
I guess we can go to the latest stable versions everywhere.

oh yes, let me update that!


主题的搜索在手机的UC浏览器上无法使用

主题的搜索功能在手机的UC浏览器上无法使用，华为手机自带浏览器也无法使用

NexT is rebased into organization repo.
If you want new feature, fix, or support, create new in NexT v6.x repo (desirable in English).
There is instructions on English or Chinese how to update from v5.1.x to v 6.x
You also may read this for details.


Actually make the run_compressed test useful

SUMMARY:

Make the test case useful
Previously testing identical model loads as run_compressed can't be turned off through the HFQuantizer pathway. Use ModelCompressor in its place until this is supported
Update prompt to be sensical

Note that
we need https://github.com/vllm-project/llm-compressor/pull/923
to load the model using run_compressed=False
and
HF side https://github.com/huggingface/transformers/pull/34719
to address the TODOs on the PR


Should I replace image + "_att" with image + "_att_proc"?

Thanks for the great job.
Process Att-Map will generate image + "_att_proc". Should I rename this to image +"_att"?

Yes, Att-Map load the image with "_att" suffix.


refresh the number of version

What type of PR is this?

[x] Enhancement
[ ] Displaying
[ ] Typo
[ ] Doc Request

Which issue(s) this PR fixes:
issue #
https://github.com/matrixorigin/matrixorigin.io.cn/issues/679
What this PR does / why we need it:

fix conflict

Done


Add scale option.

Hello,
I need scale option for some things, this simple solution works for me, please check it out.
Thanks,
Tomas

Looks good to me, i'll bump the version next commit and upload it to supermarket within an hour. Please note that if i'll finally have time to extend this cookbook, some arguments may change in 0.2.0 (but you should be still safe to use 0.1.x).

@cvakiitho should be available via supermarket by now

Awesome! Thanks.


meta-issue: Numba/NumPy interation+collaboration+discussion!

Following on from some recent OOB discussions, this is a meta-issue to track ways in which the Numba and NumPy projects could cooperate over common interaction points. The items presented herein are with the sole purpose of attempting to highlight areas to promote discussion and collaboration. Some of the following is also likely to apply to other packages that have similar requirements to Numba (i.e. type stability). Please feel free to comment and/or add more items.
CC @rgommers @seibert
Type stability challenges in the NumPy APIs.
Background: Numba uses type inference to compute the type of all variables in user code. This is performed by combining the type information from the arguments to the user function with a lot of rules defined in Numba about what the types of the variables returned by operations and functions for given input types will be. Note that type inference is performed at compile time and depends solely on the types of the arguments involved and not on their values.
The following contains specific examples of the kinds of problems a type inferring compiler may run into when attempting to replicate the NumPy API. The NumPy API has obviously grown and evolved over the years, it makes a lot of use of Python's dynamic nature, and predates e.g. Numba by a long way, so it is entirely understandable that these challenges exist. What will be interesting is working out if they can be overcome via e.g. more advanced type systems or type stable API updates.
Functions which change their output type depending on value.
Example::
In [12]: np.linalg.eigvals([[1, 1], [1, 1]])
Out[12]: array([2., 0.])

In [13]: np.linalg.eigvals([[1, 1],[-1, 1]])
Out[13]: array([1.+1.j, 1.-1.j])

this example is at one extreme of the issue in that there's a numerical reason for such a behaviour, however it demonstrates that some functions change their return type (float64 vs. complex128 array type) depending on run time value. Another such example is np.cross, which is discussed here https://github.com/numba/numba/pull/4128#issuecomment-498324729, where there is a return type specialisation depending on the runtime value of an index of an array shape.
Functions which change their output type depending on values of "flags".
Example::
In [18]: np.unique([1, 2, 1], return_index=False)
Out[18]: array([1, 2])

In [19]: np.unique([1, 2, 1], return_index=True)
Out[19]: (array([1, 2]), array([0, 1]))

The problem here is that unless the return_index flag is provided as a compile time constant value (literally True/False in the user code), it's impossible to determine the return type at compile time.
Functions that return mutable heterogeneous containers (e.g. lists) when their size is bounded.
Example::
In [21]: np.broadcast_arrays(np.ones(2), 3)
Out[21]: [array([1., 1.]), array([3, 3])]

In [22]: np.broadcast_arrays(np.ones(2), 3, 2)
Out[22]: [array([1., 1.]), array([3, 3]), array([2, 2])]

The size of the output container is a predicable function of the number of arguments. In a type system such as Numba's there is no support for heterogeneously typed mutable containers, however there is support for heterogeneously typed immutable containers. Given the above is predicable, could the return type reasonably be a tuple?
Functions implementations that do not match docstrings.
Example::
In [38]: print('\n'.join(np.broadcast_shapes.__doc__.splitlines()[:11]))

    Broadcast the input shapes into a single shape.

    :ref:`Learn more about broadcasting here <basics.broadcasting>`.

    .. versionadded:: 1.20.0

    Parameters
    ----------
    `*args` : tuples of ints, or ints
        The shapes to be broadcast against each other.

In [39]: np.broadcast_shapes([12,], (12,))
Out[39]: (12,)

Whilst not directly type stability... the issue is that Numba contributors end up having to "reverse" what is going on to work out what is accepted as input. It makes the support experience in Numba a little inconsistent depending on what was implemented and worked out at the time. There are also occasions where what is accepted changes between NumPy versions.
Some more general mismatches between NumPy and Numba.
There are a few areas where NumPy and Numba differ where they perhaps should not and it'd be good to discuss how to minimise the existing differences and make future ones smaller!
Naming of arguments to functions is sometimes inconsistent.
Example:
In [48]: np.linalg.matrix_power
Out[48]: <function numpy.linalg.matrix_power(a, n)>

In [49]: np.linalg.matrix_rank
Out[49]: <function numpy.linalg.matrix_rank(M, tol=None, hermitian=False)>

these two functions are in the same module and both take a matrix or stack of matrices as the first argument. However one implementation uses a as the argument name and the other M. This doesn't matter hugely but does present a bit of a general inconsistency. This impacts Numba users now and again when they write code which binds to variable names at the call site, if Numba hasn't used the same names as NumPy then the code won't compile. Numba really ought to fix this in its code base, but it might be something NumPy should consider too?
e.g.
In [52]: from numba import njit

In [53]: @njit
    ...: def foo(x):
    ...:     np.linalg.matrix_rank(M=x)
    ...:

In [54]: try:
    ...:     foo(np.ones((2, 2)))
    ...: except Exception as e:
    ...:     print(e)
    ...:
Failed in nopython mode pipeline (step: nopython frontend)
No implementation of function Function(<function matrix_rank at 0x7ffa1b198430>) found for signature:

 >>> matrix_rank(M=array(float64, 2d, C))

There are 2 candidate implementations:
  - Of which 2 did not match due to:
  Overload in function 'matrix_rank_impl': File: numba/np/linalg.py: Line 2419.
    With argument(s): '(M=array(float64, 2d, C))':
   Rejected as the implementation raised a specific error:
     TypingError: missing a required argument: 'a'

Numba erroneously uses a as its argument name, NumPy uses M.
Mismatch in the use of BLAS/LAPACK precision.
The majority of the NumPy linalg routines all upcast float32 and complex64 types to their 64 bit equivalents and then do the work at this precision before casting the answer back to the input type. This creates problems for Numba in that Numba type specialises the BLAS/LAPACK calls based on the input types, which results in a mismatch compared to NumPy's result. This is also why Numba has better performance NumPy in this area when it probably should not. It also causes a degree of issue in Numba's test suite in that the amount that the results differ is sufficiently large to have to write specialised reconstruction routines to check results (opposed to the more usual np.testing.assert_allclose equivalent).
Inf/NaN handling challenges.
Numba has to reimplement NumPy functionality using a what-Numba-supports subset of what is available in NumPy. As a result translating algorithms can be challenging, particularly with regards to Inf/NaN production as it is not always clear whether such an output was intentional or a side effect of the implementation. This often appears as an issue in the case of supporting a new version of NumPy in which some algorithm has changed and Inf/NaN production has changed as a result. An example might be the NumPy 1.19 upgrade https://github.com/numba/numba/pull/7019 where np.percentile and np.quantile changed production of inf/nan (and also dropped boolean support!). It might be beneficial to specify the expected Inf/NaN handling behaviour of functions cf. standards such as C99 or POSIX.
Other areas of interaction.
Exposing NumPy's internals as ctypes pointers.
Relatively recently NumPy added BitGenerator/Generator to the np.random module. Part of the implementation involved exposing the underlying C routines, that produce the bit streams and the "next" random number of a given type, via ctypes/CFFI. This is very useful on two fronts in
terms of Numba providing support for the same:

It means that Numba doesn't have to literally copy/replicate the entire C implementation in its code base.
It means that Numba can easily achieve bitwise parity to NumPy at a low level as literally the same functions are being called.

Essentially, due to this, it was possible to write something to get basic support plumbed through in a couple of hours (https://github.com/numba/numba/issues/4499#issuecomment-1063138477), without this it would have probably taken nearer a week, so thank you NumPy engineers, this was great! It also means that if NumPy needs to change something low level, these details are hidden from Numba!
There are a couple potential future improvements to this approach:

The ctypes functions appear as addresses which end up getting baked into the Numba JIT implementation as long longs which breaks Numba's on-disk caching. This is a problem for Numba to resolve!

The ctypes bound functions are essentially called like C function pointers, which means the performance is always going to be limited by having to stage a call and to use the compiled implementation from the NumPy DSO. Were there bitcode equivalants of these functions produced then Numba/JIT compilers could just consume these and LLVM could optimise across these function boundaries.

FFT support in Numba.
Tracking ticket: https://github.com/numba/numba/issues/5864. The main issue is that there's no binding exposed for the FFT functions in the way there is for BLAS/LAPACK (via SciPy) and now also BitGenerator. As noted on the ticket, part of the issue is that there's no "consistent" interface for dealing with FFTs. Resolving this in a consistent type stable interface and then exposing this via e.g. ctypes would likely help all JIT applications needing FFT support (and also non-JIT applications!).
Ufuncs.
There are a few interaction points in relation to ufuncs that might be of interest.

The ufunc inner loops could be provided as bitcode such that JIT compilers based on LLVM can request the bitcode implementation for given types and just consume that as part of compilation. This has the advantage of NumPy changes being picked up immediately by JIT compilers and that JIT compiler output becomes more consistent with NumPy. It also means a machine specific inner loop will always be generated by the JIT compiler.

NumPy could supply a hook for adding a JIT compiler to the ufunc machinery. As a result, if there is no specific loop available for given input types (i.e. casting would be required to get a match), the JIT compiler could potentially compile one which could lead to improved performance.

NumPy could abstract the entire ufunc interface such that an alternative implementation could be provided. Mixed with ideas in 1. and 2. this would let e.g. a JIT compiler produce CPU specific loops specialised directly on the types present. This again potentially leading to increased performance.

Release testing
Numba's test suite and build farm.
Numba has a large test suite, a lot of which exercises the NumPy APIs. The tests in the test suite are similar to NumPy's but not always the same. It's quite common for Numba's test suite to identify potential bugs/changes made to NumPy across releases.
Numba also has a large CI infrastructure which tests approximately the latest 3 or 4 NumPy releases against the Numba test suite on a large number of platforms. It has been noted a few times previously that it would be good for Numba to test against upcoming NumPy releases early as a mutually beneficial operation. Numba's test suite could potentially pick up issues in NumPy and vice versa. Further, if there are C-API changes in NumPy (especially with respect to ufuncs) there's a reasonable chance that Numba will pick them up. Numba has an "integration" testing project https://github.com/numba/numba-integration-testing that may help with orchestration of this.

Thanks @stuartarchibald, this is a super useful write-up!
Most of this is quite clear, and it seems feasible to make a number of changes in NumPy that would address some of these points. I'd like to open a discussion on the NumPy mailing list soon about putting something like "improve NumPy-Numba interactions" on the roadmap based on the above.
A few questions:

np.broadcast_arrays example [...] In a type system such as Numba's there is no support for heterogeneously typed mutable containers, however there is support for heterogeneously typed immutable containers.

This one surprised me a little. Is that a fundamental problem with Numba's type system? What do you do currently, not support such functions, not make them work in nopython mode, or just return a tuple anyway?

np.broadcast_shapes example [...] Whilst not directly type stability... the issue is that Numba contributors end up having to "reverse" what is going on to work out what is accepted as input.

Is this different from the general "wherever NumPy expects arrays, it also accepts anything that can be coerced to an array via a np.asarray call (sequences, scalars, generators, objects with a __array__ attribute, etc."?

Naming of arguments to functions is sometimes inconsistent.

That one is probably best fixed by making arguments where the one-letter name is not meaningful positional-only. Just to make sure: that would fix the issue for Numba, right?

Mismatch in the use of BLAS/LAPACK precision. [...]  which results in a mismatch compared to NumPy's result. This is also why Numba has better performance NumPy in this area when it probably should not.

I thought there was a significant performance gain also because Numba translates np.linalg calls to their scipy.linalg.cython_blas/lapack equivalents? (float64 is up to 4x faster for small inputs IIRC, due to avoiding Python overhead). That should remain even if you'd do an upcast right?
It's a little questionable by the way that NumPy does this upcasting. It won't be changed, but it basically means that there's not much point in using those lower-precision dtypes. They're used much more in deep learning libraries, which don't do this upcast (the lower precision results are fine, and performance gains are important).

re: the heterogenously typed mutable containers.  The limitation in Numba is not so much the type system as the compilation model that the type system is designed to serve.  Numba's JIT compilation model requires functions that can be statically typed at call time.  The dispatch mechanism can select between multiple compiled implementations based on argument types, but only as control passes from the Python interpreter into nopython mode.  Once in nopython mode, every value (and every function call) needs a static type derivable from those input argument types.
This creates a problem for a mutable container, because the return type of __getitem__() isn't known at compile time, even for constant indices.  Numba can make the types of tuple elements part of the type of the tuple itself (as if it were like a C struct), and that lets us handle things like constant indexing or even unrolling a loop over the tuple elements.  For a mutable heterogenous container, like a list, compilation would basically have to stop as soon as the list was indexed, and could only continue once the return type of the getitem was known.  (I've had conversations with @sklam about what it would take for Numba (or something like it) to support a partial compilation model that would solve this, but it is a radical change to how things currently work.)
We do offer a custom "typed list" (as well as typed dict) user data structure in Numba, but that is by design a homogenously typed list, which avoids these compilation issues.

Glancing over this, my feeling is that there are the two categories:

A new release of NumPy breaking numba (small or big)
API (usually ancient) where API changes or additions would be helpful

I still think that the first is something that numba should and can hopefully look into.  By adding a (basic?) CI run against our nightly wheels.  For example, I now saw that sklearn has this set-up to not fail CI, but rather post (and I think update) an issue.
(napari has as similar setup for pip --pre, but the "nightly" wheels would be better).
A test setup could have prevent all of the large breaks in the past year, and I think it would also help with the small ones:  You can promptly open an issue at NumPy to ask whether a change was intentional or clarify details about a particular change.
(I still often feel that NumPy changes are way too often taken as "given" when they should not be.  An example was when tensorflow imagined a NumPy ABI – rather than small API – break and just accepted it without even opening a NumPy issue to ask if it was intentional and notify of problems.)
The second thing: NumPy can maybe find ways to tag/float issues a bit better when there is explicit downstream need for them (this is not limited to numba, if an API addition would help sklearn that obviously is also important).
Of course API changes and all additions always require some champion and unfortunately, I am not sure that NumPy will have the man-power to pick up most of them.  But maybe we can work together to make sure such issues become more visible at the very least.  (If I understood Ralf correctly, he semi-agreed to champion improving the NumPy tagging as a start.)
OTOH, many of these seem rather mild breaks (e.g. returning a tuple rather than a list).  Those could break users, but we can also decide to go through with it with good reasons.
One point about such changes is that it might be nice to pack them up into a "major" release, since they are possibly breaking, but a warning is not possible.  (That is not a thing to worry about for Numba, but it makes it important to clearly tag them in NumPy.)

It doesn't seem to have been mentioned in this issue yet, so it's worth noting that quite a few of these issues intersect with changes from the array API https://numpy.org/devdocs/reference/array_api.html. For example

unique is split into different unique_* functions with consistent return types (the shape is still data-dependent, but that's fundamental to the function).
Every function/operation in the array API has a return dtype that depends only on the input dtypes.
Functions use positional-only arguments (this is something I forgot to mention in that doc), which presumably fixes the argument naming issue.
The broadcast_arrays thing actually is a list in the array API. Perhaps it should be changed to a Tuple there.

A challenge as Ralf mentioned on the NumPy mailing list is that the array API is only a subset of NumPy, so if NumPy were to just focus on array API compatibility it would miss similar issues in other places. For example, eigvals is not currently in the array API, and it's possible it won't be added. If it is added, it will not have the issue you mentioned because the array API functions never use value-dependent return dtypes. So as NumPy makes changes to be compatible with the array API, it should make similar changes everywhere else too, when it makes sense.
As an aside, I'm a little confused by the broadcast_shapes question. Is the issue that it says "tuples" but also accepts lists? That seems like a pretty standard thing that any Python function would do. Perhaps a true mypy compatible signature would more accurately say "Sequence[int]" or something. I would be surprised if NumPy restricted the inputs to only tuples for no good reason. OTOH, I would not really be that surprised if numba did require the input to be tuples, because my general experience with Numba is that it is much more restricting about types.

I'll note that fixing all these issues as much as possible is included on the NumPy 2.0 roadmap. Most things cannot be deprecated, instead they must/will simply be changed in NumPy's main branch after the 1.25.x branch split in May/June'23.

Functions that return mutable heterogeneous containers (e.g. lists) when their size is bounded.

https://github.com/numpy/numpy/pull/25570 attempts to address this point. It probably requires some more motivation before it can be accepted, because of the backwards compatibility impact - input from the Numba team there is very welcome.

Functions that return mutable heterogeneous containers (e.g. lists) when their size is bounded.

numpy/numpy#25570 attempts to address this point. It probably requires some more motivation before it can be accepted, because of the backwards compatibility impact - input from the Numba team there is very welcome.

Thanks for addressing this @rgommers, I've commented on the PR noted above with some remarks surrounding the benefits of this change from Numba's perspective. Hope this helps with the decision!


PNT 22 other polling sources

All Sources Call function now returns a Response and have Backoff implemented
TODO: implement a simple weight system to choose witch Sources to use

OpenExchangeRates gets its data from the European Central Bank, which publishes the rates only once a day. I don't think we should poll that data source given our use case.

@PaulBernier Got it, I will remove it then
PS: ExchangeRatesAPI is the same right?
Maybe we can leave ExchangeRatesAPI just for Local testing? ( no key required )

Oooops. I actually meant ExchangeRatesAPI update only once a day and not OpenExchangeRateswhich  can give much more precise data.
We can keep ExchangeRatesAPI for testing if you want but we should make sure that in prod it cannot be used. Users won't bother researching the quality of the pre-configured data sources and this could skew the values if they inadvertently pick this one.

At this stage different polling sources seem incredibly useful. Without it the grading mechanism isn't actually being tested, it's all down to hash difficulty. The current testnet exchange rate source requires a paid subscription to contribute to testnet, otherwise the free api limit runs out in a few days, this restricts developer contributions.

For many using general inbuilt sources is likely fine, offering more options doesn't hurt at all.
In a highly competitive mining environment peg values should be able to be updated at will to anything the miner decides is most likely to win.


Migrate to Jedis 4.2

    <jredisjson.version>1.5.0</jredisjson.version>
    <jredisearch.version>2.2.0</jredisearch.version>
    <jredisbloom.version>2.2.0</jredisbloom.version>

Should be replace with Jedis 4.2

@gkorland I really would like to do that but I'm getting the Jedis dependency from Spring Data Redis, at the moment, on the current release they are at 3.7.0 and I believe just overriding that with 4.2 would break SDR which we rely on for some of the lower-level APIs. Let's discuss soon!

https://github.com/spring-projects/spring-data-redis/pull/2287

https://github.com/spring-projects/spring-data-redis/pull/2287
Already closed :clap:

spring-projects/spring-data-redis#2287

I got a branch ready, waiting for a few dependencies to be published and we should be good to go.

Hi there - is there a release version coming out soon with this change? The last update was in May, so just checking in now that someone is assigned to it. Cheers

Hi there - is there a release version coming out soon with this change? The last update was in May, so just checking in now that someone is assigned to it. Cheers

0.6.0 was just released, but the Jedis upgrade is still in the works. So likely close to 1.0.0

Done!


TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'

I get the following error from site-packages\codeboxapi\config.py", line 14, in CodeBoxSettings
CODEBOX_API_KEY: str | None = None
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'

Sorry I forgot that this feature is new in python3.10 so you need to use python3.10+ for now. But I try to change this soon so you can also use 3.9+ or maybe even 3.8+

@shroominic  Got it. Would be great If you could enable it for Python 3.9+ . Thanks

Should be working now in v0.0.6 👍🏼

@nsankar


Cannot log Request Id's when using the Auto-Pagination pattern

Hello, I'm trying to reconcile the suggested auto pagination pattern in the docs with the recommendation from the Production Readiness Checklist to log request id's for all transactions, not just errors.
Logging errors with this pattern works fine as long as it is wrapped in a try ... catch block, where the catch can log the error. However, it appears there is no way to log non-erroring requests with this pattern, as it can't be used along with the withResponse method.
Am I understanding this correctly? Is it OK to not log these instances if so? Or is there some undocumented method to log using this pattern either currently available or upcoming?
Thank you!

Hey! The best way to do this will be to pass in a custom fetch into the Finch client. See https://github.com/Finch-API/finch-api-node#customizing-the-fetch-client.

Thank you @yjp20 ! This works fantastically! If I was more careful with the documentation, I think I could have found this - sorry for not seeing it. I do think a few small doc updates could streamline the dev experience nicely here: linking from the auto pagination pattern section as well as calling out in the Customizing the fetch client section that this is a recommended way to have consistent logging as mentioned in the Production Readiness Checklist.
Thank you again - I'll close this out as I'm good to go here!


Failing to create security-automations-for-aws-waf in il-central-1

Describe the bug
Solution is not deploying in il-central-1 region.
To Reproduce
Try to deploy the stack in il-central-1 region:
https://docs.aws.amazon.com/solutions/latest/security-automations-for-aws-waf/step-1.-launch-the-stack.html
Expected behavior
It should deploy in the il-central-1 region.
Please complete the following information about the solution:

[x] Version: [e.g. v3.1] latest

To get the version of the solution, you can look at the description of the created CloudFormation stack. For example, "Security Automations for AWS WAF v3.1: This AWS CloudFormation template helps you provision the Security Automations for AWS WAF stack without worrying about creating and configuring the underlying AWS infrastructure". If the description does not contain the version information, you can look at the mappings section of the template:
Mappings:
  SourceCode:
    General:
      TemplateBucket: 'solutions-reference'
      SourceBucket: 'solutions'
      KeyPrefix: 'waf-security-automation/v3.1'

[x] Region: [e.g. us-east-1] il-central-1
[x] Was the solution modified from the version published on this repository? No
[x] If the answer to the previous question was yes, are the changes available on GitHub?
[x] Have you checked your service quotas for the services this solution uses?
[x] Were there any errors in the CloudWatch Logs?

Screenshots
If applicable, add screenshots to help explain your problem (please DO NOT include sensitive information).
Additional context
When trying to deploy the below solution in il-central-1 region:
https://docs.aws.amazon.com/solutions/latest/security-automations-for-aws-waf/step-1.-launch-the-stack.html
Getting below error:
Error 1:
There was an error creating this change set
Template format error: Unrecognized resource types: [AWS::ServiceCatalogAppRegistry::AttributeGroup, AWS::ServiceCatalogAppRegistry::Application, AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation, AWS::ServiceCatalogAppRegistry::ResourceAssociation]
Now I found a document where it says that 'ServiceCatalogAppRegistry' is not supported for il-central-1 region but it is not a official document.
https://www.aws-services.info/servicecatalog-appregistry.html
The same stack is getting deployed successfully in us-east-1 region.
Tried to remove the dependancy for 'ServiceCatalogAppRegistry' resource from the template and deployed the stack. This time it failed with below error:
Resource handler returned message: "Error occurred while GetObject. S3 Error Code: IllegalLocationConstraintException. S3 Error Message: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to. (Service: Lambda, Status Code: 400, Request ID: ***)" (RequestToken: ***, HandlerErrorCode: InvalidRequest)
Please guide on this as to how we can proceed and deploy the solution in il-central-1 region

I think https://github.com/aws-solutions/aws-waf-security-automations/pull/254
provides a solution to be able to deploy to a region without AppRegistry.
Obviously AppRegistry cannot be used for monitoring in such a case.

The out-of-box solution is not supported in il-central-1 region. You can try to customize the source code, build and upload assets to s3, following https://github.com/aws-solutions/aws-waf-security-automations/blob/main/README.md.
This is a duplicate of an internal ticket. Close this ticket.

Hey Team, Could you please add this issue into the roadmap so that we can publicly track the same. As of now, we do not have the visibility on it.

Looks like this is a duplicate of issue #256. Closing.


shrink_osd: stop osd services before marking them out

I have tested many times to shrink more than one osds from a HEALTH_OK cluster. After the task is done, sometimes certain pgs will stuck in 'unknown' state, and only recover to active after I run 'ceph osd down xxx' to force them re-peering.
After I move 'stop osd services' in front of 'mark osds out', the issue never accur. I don't exactly know how it works.
Signed-off-by: wumingqiao<EMAIL_ADDRESS>

jenkins test dev-centos-non_container-shrink_osd

jenkins test dev-centos-container-shrink_osd

not sure this is the right order
http://docs.ceph.com/docs/master/rados/operations/add-or-rm-osds/#removing-osds-manual

@wumingqiao any update?

closing this due to inactivity, feel free to reopen if needed


fix: use relative links

Using relative links as per this wiki
I believe it's cleaner just in case there's a change to the org/repo name, etc.

Thanks!


During call, How to change the audio from loudspeaker to phone speaker vice versa

Hi Team,
I want an option to convert audio calls from loudspeakers to phone speakers and vice versa.
await AudioSession.configureAudio({
android: {
preferredOutputList: ['speaker'],
},
ios: {
defaultOutput: 'speaker',
},
});
I know this is for loudspeaker but how do I convert to phone

See https://htmlpreview.github.io/?https://raw.githubusercontent.com/livekit/client-sdk-react-native/main/docs/classes/AudioSession.html#selectAudioOutput

Hey all, I'm running into this same issue. If we configure "speaker" as the "defaultOutput", then we are given no option to select the phone receiver. What the "default" value that we provide to selectAudioOutput becomes is either the phone's speaker or headset, if it is connected.
Selecting the phone receiver is only possible if we provide "earpiece" as the "defaultOutput". Then "default" is either the receiver or headset. From there we can toggle to speaker with the "force_speaker" option.
But, my desired behavior is to have speaker be the default, but for receiver to be an option("default") that we can select with selectAudioOutput. I attempted a workaround by setting "earpiece" as the "defaultOutput" but then immediately calling selectAudioOutput with "forceSpeaker". The issue is that the underlying call to overrideOutputAudioPort returns an error and fails to perform the update. There seems to be some period after configureAudio where you can't call selectAudioOutput because it'll fail. If I wait like 3-5 seconds, that selectAudioOutput call works.
*also a side question:
I noticed that the startAudioSession implementation is empty. I would've expected maybe setActive to be called here. But I don't see it called anywhere. How does this work?

@awlui
I don't know if this will help, but I set the initial audio settings to
I forced it to switch to speaker mode when the LocalTrackPublished event is fired, as shown in the attached image.
await AudioSession.configureAudio({
  android: {
    preferredOutputList: ["earpiece"],
  },
  ios: {
    defaultOutput: "earpiece",
  },
});


C# syntax highlighting error

VSCode Version: 1.21.1
OS Version: macOS 10.13

Steps to Reproduce:

Create following code in C#

unchecked // Overflow is fine, just wrap
{
    ...
}

Look at the comment highlighted in plain text

Does this issue occur when all extensions are disabled?: Yes

This issue was moved to dotnet/csharp-tmLanguage#104


Updating to Oculus Integration v51

Upon updating to v51 Integration package and Meta XR Utilities v51 I am getting these errors -

Solved with same method as updating to v50 - reverting changes to the amf meta


Fix Groovy samples about transitive dependencies

It was using the deprecated compile instead of using api through the
application of the java-library plugin.

How are these samples tested? This should have failed because it would print a deprecation message.

The samples have tests ready but unfortunately, aren't running yet due to issues with the mixed of Snippets and Samples. We are working on solving this sooner.
On another note, am I the only one finding that applying the java-library for a pure Groovy project to be highly problematic for the users? It doesn't make sense this plugin is required. This sort of nonsense is exactly what "simple/basic" sample help to show.

The samples have tests ready but unfortunately, aren't running yet due to issues with the mixed of Snippets and Samples. We are working on solving this sooner.

That's all I wanted to hear. :)

This sort of nonsense is exactly what "simple/basic" sample help to show.

I won't call it "nonsense". :) The naming is probably not ideal. It's historical. Some plugins exist since forever, some were added later.
The message we should send with Gradle 6+ is:
A Decide if you build an JVM application or a JVM library and pick one (default to library):

application
java-library

B Decide which JVM languages you use in addition to Java and apply on top

groovy
scala
kotlin("jvm")
...

You are probably right and the samples should serve this purpose as much as possible. However, I think we should consider changing those legacy plugins when making Gradle simpler for the users. But that is another issue to discuss.

We're going to delete this sample since it's covered by the Java version too

Hmmm, I thought this was merged. I will manually merge it as part of other changes.


Is it support auto reconnect?

Hello Sir, May i know that is it support auto reconnect if can't connect to MYSQL server then the data can't read or write ? And are there any try and catch function for us to chekc if the database disconnected then stop player to write or read ? thanks @btk5h

Bump?
@btk5h is this addon still being updated?
It would be nice to either have an automatic reconnection or on database disconnect: event.
Thanks.

skript-db should already create new connections as necessary.


inferred new not working correctly

When trying to compile /vg/station, the following error occurs:
Error at code\modules\cmc\crew.dm:32:15: An inferred new requires a type!
at the following location:
21 /obj/machinery/computer/crew
...
32 	_using = new()

_using is defined in code/game/objects/objs.dm as:
var/list/mob/_using
In game, interacting with the crew monitoring computer adds the user's mob to _using

This is because override vars aren't keeping type information.


Editing django run/debug server arguments breaks launch

Create django project.
In project settings, debug, edit the debug server command arguments by adding a space before --settings.
Save project.
Note: Now the .pyproj file contains PythonDebugWebServerCommandArguments  property definition (it doesn't until you edit the project settings).
F5 to debug
Result: ModuleNotFoundError
Workaround: Edit the .pyproj and replace $(DjangoSettingsModule) in <PythonDebugWebServerCommandArguments> with its actual value.
Also reported at https://developercommunity.visualstudio.com/content/problem/224142/djangowebproject-runserver-command-fails.html

That property should be in the template by default (and $(MSBuildProjectName) isn't necessarily safe - it needs to be importable)

I had missed this bit of info. The project XML seems to have DjangoSettingsModule defined but in a different property group below the one where PythonDebugWebServerCommandArguments gets defined.  May be we should change the set property to add it to the end of the property group that contains DjangoSettingsModule.


Parsing overhaul

make parsing take less time than the httperf run

working on unit tests
i don't run pylint but run vscode's python linter and don't see unnecessary parens flagged. i'm not sure what you're referring to.

unit tests completed.
parens on if statements removed.


Matrix_multiplication

While synthesising example 05/06 I've encountered the problem that the Interface wasn't correctly generated for
void MatrixMultiplication(const double A[], const double B[], double C[])
I had to explicitly add the sizes for the arrays
void MatrixMultiplication(double const A[N * K], double const B[K * M], double C[N * M])
to get the right results in the Co-Simulation. I'm still a newbie so i'm not quite sure if this is a bug.

Vitis Version 2022.2
Well, the mistake is probably on me, because i've changed a few things for the co-simulation. In the headerfile Example5.h there is a function-declaration:
void Entry(double const A[], double const B[], double C[]);
but this function is nowhere to be found. Therefore I assumed that
void Example5_Reordered(double const A[], double const B[], double C[]);
is the correct entry function, which i've chosen as top-function. But to be co-simulated i need to call the top-function in the testbench. But in Test.cpp there was the call of the subfunction
' // Run simulation
MatrixMultiplication(a.data(), b.data(), c.data());'
So for the co-simulation i've replaced that call with
// Run simulation   Example5_Reordered(a.data(), b.data(), c.data());
Additionally i got a funny error message:
INFO: [COSIM 212-47] Using XSIM for RTL simulation.
INFO: [COSIM 212-14] Instrumenting C test bench ...
Build using "C:/Xilinx/Vitis_HLS/2022.2/tps/win64/msys64/mingw64/bin/g++"
Compiling Example5_Reordered.cpp_pre.cpp.tb.cpp
Compiling Test.cpp_pre.cpp.tb.cpp
Compiling Example5.cpp_pre.cpp.tb.cpp
Compiling apatb_Example5_Reordered.cpp
Compiling Entry.cpp_pre.cpp.tb.cpp
Compiling apatb_Example5_Reordered_ir.ll
Generating cosim.tv.exe
INFO: [COSIM 212-302] Starting C TB testing ...
ERROR: [COSIM 212-360] Aborting co-simulation: C TB simulation failed.
ERROR: [COSIM 212-320] C TB testing failed, stop generating test vectors. Please check C TB or re-run cosim.
ERROR: [COSIM 212-5] *** C/RTL co-simulation file generation failed. ***
ERROR: [COSIM 212-4] *** C/RTL co-simulation finished: FAIL ***
INFO: [HLS 200-111] Finished Command cosim_design CPU user time: 0 seconds. CPU system time: 1 seconds. Elapsed time: 4.13 seconds; current allocated memory: 8.152 MB.
command 'ap_source' returned error code
while executing
"source D:/Projekte/Vitis_HLS/ETH_hls_tutorial_examples/example_5_old/xilinx/build/prj/solution1/cosim.tcl"
invoked from within
"hls::main D:/Projekte/Vitis_HLS/ETH_hls_tutorial_examples/example_5_old/xilinx/build/prj/solution1/cosim.tcl"
("uplevel" body line 1)
invoked from within
"uplevel 1 hls::main {*}$newargs"
(procedure "hls_proc" line 16)
invoked from within
"hls_proc [info nameofexecutable] $argv"
That meant obviously that i had to lower the Matrix sizes (N,M,K) to 8 each
Now i get the error message:
INFO: [COSIM 212-302] Starting C TB testing ...
Mismatch at (0, 0): 0.0417684 (should be 1.65434).
ERROR: [COSIM 212-359] Aborting co-simulation: C TB simulation failed, nonzero return value '1'.
ERROR: [COSIM 212-320] C TB testing failed, stop generating test vectors. Please check C TB or re-run cosim.
ERROR: [COSIM 212-5] *** C/RTL co-simulation file generation failed. ***
ERROR: [COSIM 212-4] *** C/RTL co-simulation finished: FAIL ***

Ah, sorry, I missed that you are trying to do co-simulation. Co-simulation has traditionally not worked with hlslib that the examples use underneath, so this is generally not supported/expected to work 🙂

Ok thanks. Great tutorial btw.
But does the synthisised IP Block work? Especially if I don't use an axi interface.

I wouldn't know how to insert all matrix elements before starting the application.

Cool, I just saw how many optimized examples you have. This will be of great help to understand HLS better :)


Is navigation mode possible?

I'm submitting a ...  (check one with "x")
[X] question
[ ] any problem or bug report
[ ] feature request
Wow, what's up? I strolled through the issues and the closest I got to what I
#1803
When you put the videos, making the marker move to the next point, my situation I want to get as close as possible to a navigation in google maps for driver.
Videos --> https://www.youtube.com/watch?v=CXEBBYCulU0&feature=youtu.be
Videos --> https://www.youtube.com/watch?v=e1CGw-a0kFk&feature=youtu.be
Is it possible to do this with cordova-plugin-maps or at least the possibility of keeping the marker fixed and the map rotating around it according to the route?

This plugin does not have any navigation mode, even original Google Maps APIs do not have it.
You have to manage camera position, device location, and marker position by yourself.

Is there any sample code for this?

nop.

Ok, thanks, I'm scanning the internet and I'm going to try to get as close as possible and put the code here and most congratulations for the very practical plugin.


ModalHostView's child view size error

Signed-off-by: yk3372<EMAIL_ADDRESS>Motivation
In some Android device such as Samsung S8, the ModalHostView's child view can't fill the screen.
before:

The JS ModalHostView can't fill the bottom, the area is device's navigation bar.
In class ModalHostShadowNode, follow code calculate is error:
Point modalSize = ModalHostHelper.getModalHostSize(getThemedContext());
This way not care the device's navigation bar, so the height is smaller than real.
For Samsung S8, real height is 2220 and modalSize.y is 2076.
Cause:

The inner class ModalHostView.DialogRootViewGroup size is right, but when onSizeChanged is called, the getChildCount is 0. So the updateNodeSize not called.

After called onSizeChanged, addView is called, then ModalHostShadowNode.addChildAt is called.
So the child view used a smaller size. And will not correct after added. (onSizeChanged has called)

The main reason is onSizeChanged and addView call order is not sure.

Fix Way

I add the boolean variable isSizeChangedNotEffectChildView, used to record whether the onSizeChanged effect the child view or not.
(The variable isSizeChangedNotEffectChildView is true mean the method onSizeChanged is called but not affect the child view's size.)

if not and isSizeChangedNotEffectChildView is true, when add child view, I called the method updateFirstChildView to affect the child view.

And this fix way, has no side effect.
The result is:

Test Plan
Use ModalHostView component in JS file. And show it in Samsung S8.
The result is similar to above two pic. We has test it in many devices has no problem.

How to add Release Notes?

see: #18615

works +1


[release-v0.53.x] Do not require enable-api-fields: alpha for entrypoint cancellation

Changes
This commit removes the need for enable-api-fields: alpha to enable the entrypoint cancellation. This feature should only behind the keep-pod-on-cancel: true feature-flag.
(cherry picked from commit 1b075fb1f56f22abba058f59aaa9efbdfe37ac75)
This cherry-picks #7430 manually (as it conflicted).
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
[x] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings). See some examples of good release notes.
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
Entrypoint cancellation only requires `keep-pod-on-cancel: true` feature-flag.

/lgtm


Updated flax docs front page

Updated the code example on the flax docs front page to include a simple regression training loop.

Codecov Report

Merging #2671 (c523fcd) into main (3af2153) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #2671   +/-   ##
=======================================
  Coverage   80.74%   80.74%
=======================================
  Files          50       50
  Lines        5370     5370
=======================================
  Hits         4336     4336
  Misses       1034     1034

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

I think an extended sample is a good idea because it includes a simple training process.
Maybe we can include this in a README on GitHub (google/flax), instead of the Flax Landing Page (see Keras and NumPy examples further below)?

If the code example gets much longer, some users may not realize we have other docs. such as  the first "tutorial" called Getting Started (which covers end-to-end training). This especially applies to (new) users who are scrolling on a small device after coming across the Flax docs site for the first time.

Currently, the user journey is:
1 - Landing page: (easily) install with pip
2 - A short code snippet to get familiarized with the syntax
3 - Go to Learn More -> Getting Started to train a simple example
4 - ...
N - Learn about the Ecosystem with PaLM (!), DALL-E Mini (!), HF Flax models, etc

With a lengthened example on the landing page, some users may not be able to discover steps 3, 4, and the last part  🤷♂  unless they keep scrolling down. Some users may be (re)visiting Flax for the first time while on a smaller screen (13" laptop, mobile).

At the moment, the landing page is short and simpler. It's similar to:

Keras https://www.keras.io - you click on Guides and then Getting started. Notice the code snippet on the landing page doesn't appear to demo how to train a Keras model (it'd probably be too long).

NumPy https://numpy.org/ - you click on Learn to get to the Quickstart, and more Tutorials:

LMKWYT!

Thanks for the feedback @8bitmp3! My intention for the extended example was to give a new user a quick snapshot of what imports, classes and functions are typically used in a training loop. Perhaps the front page is not the best place to put it for the reasons you mentioned. I wonder if there's another section in the docs we can put it in or if we can make a new section for it? The purpose would just be a "quick and dirty" example, but shouldn't take away from the more thorough examples we have in the documentation. I'd also be open to putting the extended example on the google/flax README on GitHub, but I'd also like the example to be somewhere in the documentation as well.

I wonder if there's another section in the docs we can put it in or if we can make a new section for it?

I am 💯 for including the regression example. Let's do a UI/UX research on other OSS project sites and check how they do it. I think pandas.org is another (Sphinx... RTD) site that has a great UI. Maybe @jakevdp also has experience on the OSS side when it comes to presenting useful (but long) code blocks on landing pages.

@chiamp Maybe we can include the full regression code in a 2nd column. I'll review the reStructured Text and Sphinx docs.

I like the example, but I agree with @8bitmp3 that maybe it is already too long for the front page. The front page should be a summary, mostly consisting of resources pointing to places where to look further.
We currently have already three "introduction" tutorials: Flax Basics, Getting Started, and Linen intro. @8bitmp3 is planning on merging these into one tutorial.
Additionally, we have the JAX for the impatient guide, which actually develops a linear regression example in JAX.
Actually, thinking about it now, maybe you could simply add a new guide "Linear Regression". This would be very simple, but as you say, people like to see this when they are trying out a new library for neural nets.
I am also curious what @andsteing and @jheek think.

Regression is a cool end-to-end example. We can experiment with adding a second column on the landing page, so that other important sections can still be visible without scrolling too much.
fyi A while back I added a Flax regression example to Optax's /examples: https://github.com/deepmind/optax/blob/master/examples/flax_example.py

+1 on not making the initial example more complicated
(one could consider adding a line for the imports like import flax.linen as nn, jax, jax.numpy as jnp or simply import flax.linen as nn maybe, but I would not add more functionality to avoid making it too length)
but we could have a prominent link to a more complete example (though maybe the link to the beginner's guide is arguably more useful)