Warning/Error not present when not using the result of write in a TensorArray

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 16.04
TensorFlow installed from (source or binary): pip
TensorFlow version (use command below): 2.1.0
Python version: 3.6.8

Describe the current behavior
When not using the result of a write method from a TensorArray, I am not getting any warning or error.
Describe the expected behavior
According to the docs of write, I should receive a warning or error.
I think it's also important to receive one given I spent quite some time realizing it was not inplace.
Standalone code to reproduce the issue
import tensorflow as tf
@tf.function
def use_tensor_array(x):
    y = tf.TensorArray(x.dtype, tf.shape(x)[0])
    for i in tf.range(tf.shape(x)[0]):
        y.write(i, x[i])
    y = y.stack()
    return y

use_tensor_array(tf.constant([1, 3, 4, 6]))

I have replicated the mentioned issue and it persist,please find the gist here

I have tried in colab with TF versions 2.2,2.3-rc1,nightly versions(2.4.0-dev20200712) and was able to reproduce the issue.Please, find the gist here.Thanks!

Was able to reproduce your issue in Tf Nightly 2.6.0-dev20210524, please find the gist here. Thanks!

This issue is still reproducible on tf 2.7-nightly version.

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.


fcos for MaxIoUAssigner

MaxIoUAssigner for fcos_head 中没找到相关调用，MaxIoUAssigner 在fcos中用到了没？，谢谢

FCOS is an anchor free method, which uses the central positive sample assign strategy.

https://github.com/open-mmlab/mmdetection/blob/003f520cad88be52bd5fd44cdcab2d7ec45dd551/configs/fcos/fcos_r50_caffe_fpn_gn-head_1x_coco.py#L45-L51
The config is confuse

It seems that if we delete train_cfg, it may get some error while training FCOS

It seems that if we delete train_cfg, it may get some error while training FCOS

既然没有用到，就不应该配置文件中有该配置，这让人困惑

It seems that if we delete train_cfg, it may get some error while training FCOS

既然没有用到，就不应该配置文件中有该配置，这让人困惑

🤷♂🤷♂🤷♂ヽ(￣д￣;)ノ

FCOS is an anchor free method, which uses the central positive sample assign strategy.

但是，mmdetection配置文件fcos算法中配置了MaxIoUAssigner，不知道为啥？

FCOS is an anchor free method, which uses the central positive sample assign strategy.

但是，mmdetection配置文件fcos算法中配置了MaxIoUAssigner，不知道为啥？

This is a legacy issue of the 2.0 version, which will be corrected in the next major version.


EDC - Multiple EDC management and Catalog Federation

Scenario: A data provider operates multiple EDC connectors and data catalogs
Problem: If a data consumer is unaware of which EDC holds the desired offer, he needs to iterate over all catalogs, that's quite inefficient.
Proposed solution: Concept to manage multiple EDCs to federate their catalogs and expose them in a unified manner is done here https://github.com/eclipse-edc/Connector/blob/main/docs/developer/management-domains/management-domains.md and need to be implemented
Impacted components

Upstream EDC
Tractus-X EDC
DSP for get catalogue?
CX-0018?

Management domains will help enable this. However, the reason there are multiple URLs is because it was decided some time ago to have a central service that resolves connector URLs (emphasis on plural) for a participant. Before decentralized identities, this made sense because DIDs were not used. However, that is not the case anymore.
It's also worth noting that the current approach to resolving connector URLs is not aligned with the DSP and DCAT specifications, which embed endpoint information in DID documents and DCAT catalogs. In order to come up with a complete solution, we need the following:

Management domains
Federated Catalog integration with TX-EDC
A change to the core CX service

Presented in the DRAFT Feature Freeze -> Committer is available
Impact on how the catalogue is provided

Hi @paullatzelsperger @rafaelmag110 , last time we talked about the issue, there was a reference to a documentation PR which needed to be merged. Is this done? Could you then please close this issue? Thanks!

Hi @lgblaumeiser, that documentation PR is not related to this issue in specific. This can be closed.


RD: Update Credit Card Payment From Payment Information Modal

As a user I want to enter new credit card information on a recurring donation so that I can charge the correct card for my donor.
Critical Changes
Changes
Issues Closed
Community Ideas Delivered
New Metadata

Custom Label:

NextPaymentDonationDateInfo
UpdatePaymentInformation

LWC:

rd2EditPaymentInformationModal

Deleted Metadata

Attach to WI-8154733

@npsp-reedestockton @force2b The code is ready for review

@force2b The code is updated based on the commend.


third PR Jesulayomi

Description
Attach Screenshot

Note 2 code reviewer approval needed. Approach in twitter group & discord channel.

Closing this PR.
Unnecessary files delete.


build windows versions of tenforty in github actions

The package currently does not build successfully for windows in github actions. OpenTaxSolver distributes windows binaries, so we expect that tenforty's cython extension should also in principle build successfully on windows.
See e.g. the train of action failures from the does-windows-work branch: https://github.com/mmacpherson/tenforty/actions?query=branch%3Adoes-windows-work :)
We'd made some progress on the package discovery issues, and got stuck on strings.h compilation.
Success here would simply be the package building for all supported interpreters in the github action, like macos and linux do now.

Thanks to @ekerstein for raising, here: https://github.com/mmacpherson/tenforty/issues/18


Add a way to packetize incoming data even in the absence of a pending ORSSerialRequest.

A common scenario for serial communications is a device that automatically sends packets of data periodically or in response to (real world) events, rather than as a response to some request from the computer. ORSSerialPort doesn't currently provide any help with parsing/packetizing this kind of incoming data, like it does for structured request/response scenarios.
It would be valuable to provide an API so that a user of ORSSerialPort could install a "packetizer", then be notified of incoming packets that have been validated. This could look quite similar to the existing response part of ORSSerialRequest support, including the use of a response evaluator block (could be called a "packet evaluator" block).
Some requirements for the API:

Should not interfere with the existing raw data receipt mechanism (-serialPort:didReceiveData:).
Should work simultaneously with the request response API.
Should allow for multiple packetizers to be used at once, for cases where a serial device sends packets in more than one format.
Should allow for removal of specific packetizers in order to cease notification for incoming packets of a given type.

I think this may warrant some refactoring of the existing request response API, so I think it should wait until the next major update (ie. 2.0).

Implemented by pull request #66.


How to custom train of unifomer for video classification on my own custom dataset

Hello everyone,
I would like some guidance on how to train UniFormer using my custom video dataset. I have structured my dataset similarly to the Kinetics-400 dataset, with separate train and validation folders, as well as corresponding CSV files for both.
My goal is to fine-tune a UniFormer model that has been pre-trained on the Kinetics-400 dataset using my own data. I would greatly appreciate any suggestions or detailed steps on how to achieve this.
Thank you in advance for your assistance!

Sorry for missed response. You can follow the scripts used for UCF101 to train your own data.


Support Prism highlighter

As highlight.js doesn't support line number nativly. I made a support for the Prism.js.

Can you take a screenshot to see the effect?

With line_number and light theme:

With line_number and dark theme:

Without line_number and light theme:

Without line_number and dark theme:

Can I ask you a favor? Add a little bit of margin to these code highlights

emm... It looks as if it does not need the look, I run a look


Using Service Bus Connection String instead of owner/secret

Because of the globalization of the Azure, Java SDK no longer default to US instance because it is likely to cause global confusion. Instead, we support connection string, it will be great the how to guides can be updated accordingly
http://www.windowsazure.com/en-us/develop/java/how-to-guides/service-bus-topics/
http://www.windowsazure.com/en-us/develop/java/how-to-guides/service-bus-queues/
it is recommended to use connection string and corresponding overloads instead.
/**
 * Creates a service bus configuration using the specified connection string.
 * @param profile
 *          A String object that represents the profile.
 * @param configuration
 *          A previously instantiated Configuration</cone> object.
 * @param connectionString
 *          A String object the contains the connection string for the
 *          service bus connection information.
 * @return
 *         A Configuration object that can be used when creating an instance of the
 *         ServiceBusService class.
 */
public static Configuration configureWithConnectionString(String profile, Configuration configuration,
    String connectionString) {

@gcheng Thank you for the suggestion.  Since you are a MSFT employee, we ask that you use the GitHub capability to contribute to the article by submitting a change and a pull request through the process.  If you need guidance on how this works, please see the contributors guide here: https://github.com/Azure/azure-content-pr/blob/master/contributor-guide/contributor-guide-index.md


Support for multiple signatures/fingerprint for the same platform via JSON provided from https://git.io/signatures_json

Please make content key to be iterated via JSON, and check the content through each iterated content making it look something like:
{"platforms": [
      {
          "platform": "GitHub Pages",
          "content": [
			"
There isn't a GitHub Pages site here.
",
                        "For root URLs (like http://example.com/) you must provide an index.html file"
			]
	},
	{...},
]}

Cheers!

Hello @naryal2580,
Thanks for opening up this issue! I have just added support for multiple signatures for the same platform via the JSON provided at the given URL.
The changes will be live in the upcoming release of NtHiM, and for now, you can check out the commit 9cc70f9929636fa84bf33fbc1a713573e8e4a9c6.
Thanks,
@TheBinitGhimire

Hello @naryal2580,
Thanks for opening up this issue! I have just added support for multiple signatures for the same platform via the JSON provided at the given URL.
The changes will be live in the upcoming release of NtHiM, and for now, you can check out the commit 9cc70f9929636fa84bf33fbc1a713573e8e4a9c6.
Please note that the existing JSON structuring is also supported!
Thanks,
@TheBinitGhimire


[BUG] Crc start is failing

General information

OS: Linux (Fedora 29)
Hypervisor: KVM
Did you run crc setup before starting it (Yes/No)? Yes

CRC version
version: 1.0.0-rc.0+34371d3
OpenShift version: 4.2.0-0.nightly-2019-09-26-192831 (embedded in binary)

CRC status
ERRO Error occurred: Driver "libvirt" not found. Do you have the plugin binary accessible in your PATH?```
## CRC config
```bash
- bundle                                : /home/akash/Downloads/crc_libvirt_4.1.0-rc.5.tar.xz
- cpus                                  : 4
- memory                                : 8192
- vm-driver                             : libvirt

Host Operating System
NAME=Fedora
VERSION="29 (Workstation Edition)"
ID=fedora
VERSION_ID=29
VERSION_CODENAME=""
PLATFORM_ID="platform:f29"
PRETTY_NAME="Fedora 29 (Workstation Edition)"
ANSI_COLOR="0;34"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:29"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f29/system-administrators-guide/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=29
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=29
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
VARIANT="Workstation Edition"
VARIANT_ID=workstation

KVM Installed
akash@localhost ~/Downloads/crc-linux-1.0.0-rc.0-amd64 $ lsmod | grep kvm
kvm_intel             274432  6
kvm                   749568  1 kvm_intel
irqbypass              16384  4 kvm

Logs
crc start --log-level debug
ERRO Error occurred: crc_libvirt_4.1.0-rc.5.tar.xz bundle is not supported by this binary, you must use crc_<hypervisor>_4.2.0-0.nightly-2019-09-26-192831.crcbundle

@akashshinde Can you try to do following, this is mostly because you have a old bundle version set to the config.
$ crc config unset bundle
$ crc delete
$ crc setup
$ crc start

Thanks @praveenkumar
It works


Updating build process to be able to build repository on non-windows machines as well

Does this need a README update?

@granicz Yes, I'll do that and will update the PR with it

Thanks!


Explore GPS Station Inspections Mobile App

Benefit
Investigate out-of-box products similar to Google Table, Airtable, Survey123 and other Mobile Apps that can be configured to help track on-site GPS Network Station Inspections.
Acceptance Criteria

[x] Investigate cost and functionality.
[x] Demo apps using a sample of our GPS Stations data.
[x] Confirm the suggested product has all of the functionality available.
-Import a table of all GPS stations
-Allows for checklists
-Allows for  data fields to be modified Mobily
-Allows for photos to be incorporated into the data

Notes
No response
Risks
No response
Issue Reference
refs #

All items listed under the Acceptance Criteria are completed as outlined.
The web app I chose to investigate was Airtable for managing TURN GPS Site Inspections.
There are different fees associated with the business needs ranging from Free, to Team, to Business and Enterprise Scale and the cost are attached.
I believe the Free version would work for our needs base on the demo.
This product has the ability to do the following as shown in the attachments

:
-Import a table of all GPS stations
-Allows for checklists
-Allows for data fields to be modified Mobily
-Allows for photos to be incorporated into the data

Just as an FYI from Joe Jackson,

Airtable is not approved and the few groups using it have been asked to migrate to one of the approved platforms. Salesforce, ServiceNow, and Power Platform are the ones people are supposed to be migrating to. Jared Jensen can connect you with his teams and help determine which would be the best fit.

Thanks for the info. At the time I was investigating I was unaware of these restrictions, so it sounds like I will need to test some new products from the list you've provided.
Thanks

Yeah it is best to start with Joe Jackson on solution requests like this to know what is already available and what to stay away from.


Kaylyn issue 73

Coverage decreased (-9.9%) to 81.295% when pulling 4050a04168108b48160e226f820a4b91c17ca033 on kaylyn-issue-73 into 363199f16a8eced1f8ceaa9d83dd5160dbc4cc20 on staging-branch.


Add details to update configmap settings during runtime

Description
This PR adds instructions on runtime parameters that can be updated by the user using configmaps. The specific parameters have been listed for karavi-metrics-powerflex and karavi-topology.
Issues
List the issues impacted by this PR:

Issue ID

#25

Checklist:

[x] I have performed a self-review of my own changes.

@sharmilarama: Thank you for submitting your pull request!
Please make sure you have followed our contributing guidelines. We will review it as soon as possible.

We want your feedback! If you have any questions or suggestions regarding our contributing process/workflow, please reach out to us at<EMAIL_ADDRESS>


ViroImage and ViroAnimatedImage show up as a white rectangle

when I use some thumbnail picture in a ViroImage or a gif in a ViroAnimatedImage it only renders a white rectangle , I'm currently working on galaxy S6 , any idea ?

the issue was due to nesting ViroImage and ViroAnimatedImage in a ViroNode


distribution profile cannot process symlinked directories

When there are symbolic-linked directories in the Git-tracked files, distribution profile fails while creating src.zip.

Fixed in b3abbf991b231a270daeb4f52cf043bf6331fd92.


Not working

I guess it's because of the new PostCSS 5.0 API?

5.x is not officially supported until cssnano 3.x.
https://github.com/ben-eb/cssnano/issues/46#issuecomment-132757272

Ok!


Can not jump to member's definition

I use vscode on Ubuntu18.04
i can jump to memeber's definition only as code is just opened,  it's not working after some while

@huanhexiao What version of vscode are you using? What language are you programming with?

my code is the latest version, 1.37.1
i use C++

@huanhexiao What version of vscode are you using? What language are you programming with?

my code is the latest version, 1.37.1
i use C++

i think it's an issue about the OS, i tested it on Ubuntu 16.04, everything is Ok


MAAS-2470 | Added custom max_instances for initial push checks job

Coverage remained the same at 83.492% when pulling 5ff44a978b161b24b59d1b6a85409e63d5a8b8a9 on max_instances into a331dfcfc8bf28d8e66cfd8134d5ab5bec773070 on develop.


uriToPath function returns a colon in Windows

Environment

Windows, source

Description

Expected behavior: uriToPath function shouldn't return the : character in windows.
Actual behavior: It doesn't strip it. Follow up issue to the discussion in this comment.

Before the discussion, this ci error tracks the error in CI where the output of joinPaths strips the character and the uriToPath doesn't.
The error doesn't occur when the authority is set, because in that case the joinPath function is called at the end. See Helpers.cc#66
Steps to address this issue

[ ]  Explicitly define expected input and output for the uriToPath function.
[ ]  Update the uriToPath function accordingly.
[ ]  Modify the tests in Helpers_TEST.cc accordignly.

Just noticed this is a duplicate of https://github.com/ignitionrobotics/ign-fuel-tools/issues/106


Horribly inconsistent behavior between const/non-const reference in operator [] ()

Things like
std::string tag;
try {
    tag = json["tag"];
} catch (const std::domain_error &e) {
    //  handle it
}

works nicely and as expected. However, if json is a const reference, the above code will fail by assertion. Why is it designed like so? Shouldn't it be better and more consistent to at least throw a domain_error instead of fail by assertion? It took me more than one hour to debug this issue when I pass the above json by const reference to another function to extract data...

Neither version of operator[](key) checks if the given key exists and only throw std::domain_error when called on a JSON value that is not of type object. Therefore, your code will - in both cases - only catch exceptions indicating that json is not a JSON object. The behavior differs in case key is not stored in the object:

The nonconst version (1) silently converts a null value to an empty object, and (2) creates a null value at key if it does not exist before it returns a reference to the value at key. This reference is always valid, because of step (2): there will always be a value at key.

The const version returns a const reference to the value at key. If there is no value at key, we can neither alter the object nor return a "null reference". The behavior is undefined in this situation (basically, the code is equivalent to return *object.find(key);). An assertion checks this.

I though about the semantics for quite a while as there is no similar operator[] for std::map returning a const reference. However, there is at for checked access, so operator[] is for the unchecked access. Checking whether key exists in the const version would result in overhead which would contradict the "not pay what you don't use" principle.
I would be happy for ideas how to improve this situation.

Hello!
I think I have a solution how to

at least throw a domain_error

In that metod (string 3616):
template<typename T>
const_reference operator[](T* key) const;

We should simply change this:
assert(m_value.object != nullptr);
assert(m_value.object->find(key) != m_value.object->end());
return m_value.object->(key)->second;

to something like this:
assert(m_value.object != nullptr);
if(m_value.object->find(key) == m_value.object->end()) {
        throw std::domain_error("something");
}
return m_value.object->find(key)->second;

It works pretty nice for me :-)

That's exactly what nlohmann said he doesn't want to do

Checking whether key exists in the const version would result in overhead which would contradict the "not pay what you don't use" principle.

Well, I think this problem is not too hard, but it might require some API change. To see what is the appropriate behavior here, let's learn from how others do it.
Since JSON originates from and is heavily used by high-level scripting languages, we consider Python and Javascript's handling of json here (these two languages even have json functionalities built into the language, and these functionalites work intimately with built-in data structures).
[Javascript]
Here is the behavior of Javascript object, which maps to JSON objects:

Reading. Reading a  non-exist key does not throw exception, but returns undefined. But nothing is inserted into the object when reading:
>> o = {}
Object {}
>> o.x
undefined
>> o
Object {}

Writing. Writing to non-exist key works as expected:
>> o.x = {123: '321'}
Object {123: "321"}
>> o.y = null
null
>> o
Object {x: Object, y: null}

Note that Javascript has two different built-in types: undefined and null. undefined means variable does not exist. null maps to JSON null.

[Python]
Here is the behavior of Python dict, which maps to JSON objects:

Reading. Reading a non-exist key throws KeyError exception, and the dict itself is of course not touched:
In [1]: d = {}

In [2]: d['x']
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-2-58142e8c3daa> in <module>()
----> 1 d['x']

KeyError: 'x'

In [3]: d
Out[3]: {}

Writing. Writing to non-exist key works as expected:
In [3]: d
Out[3]: {}

In [4]: d['x'] = {'10': 100}

In [5]: d['y'] = None

In [6]: d
Out[6]: {'x': {'10': 100}, 'y': None}

Python does not have equivalent of Javascript's undefined. Python's None type maps to JSON null.

Now return to the C++ world. I think these two principles are worth following:

Const and non-const behavior should definitely match.
A production quality library should really get rid of assertions. See the C++ standard library for an example. Grep assert in the source of clang's libcxx and you will find that assertions are only used when exception is not available or very sparingly for internal debug purpose.

So from the above discussions, IMHO the best solution is to mimic Python's behavior, which is well tested, widely used and already familiar by many programmers. There's really no need to invent a new behavior. We can just define some exceptions like key_error or something. (In Python's case, KeyError is a built-in standard exception. But there's no reason that we must stick to built-in exceptions.  The reasons for using an exception on reading a non-exist key include:

Reading a non-exist key is indeed an exceptional case. Which maps well to exception conceptually.
Using exception avoids the overhead of doing unnecessary tests. JSON is a highly dynamic data format. A common use case of a json library is on a server that processes high-throughput json input from the outside world. In this case, 99.99% percent of the requests are just valid. Every field exists as expected. The remaining 0.01% are some malformed jsons, maybe just several out of tens of thousands a day. So we certainly don't want to test every field for existence and type conformance for the 99.99% requests. And this is the exact reason that why I abandon rapid_json and come to nlohmann/json.
Note that in the current status of the library, if assertion error/UB may occur, this amounts to force the user of the library to write all of the tests on all of the json fields. So we come to the point again: assertions should really be eliminate in favor of exceptions in production libraries.

So, to sum up, IMHO, I think we really should follow the behavior of Javascript or Python. I would just choose Python's. Or, we can implement both and provide a global config option to let the user choose which flavor to use.

avoids the overhead of doing unnecessary tests. JSON is a highly dynamic data format. A common use case of a json library is on a server that processes high-throughput json requests from the outside world. In this case, 99.99% percent of the requests are just valid. Every field exists as expected. The remaining 0.01% are some malformed jsons, maybe just several out of tens of thousands a day. So we certainly don't want to test every field for existence and type conformance for the 99.99% requests. And this is the exact reason that why I abandon rapid_json and come to nlohmann/json.

This is exactly why the test isn't there.

Note that in the current status of the library, if assertion error/UB may occur, this amounts to force the user of the library to write all of the tests on all of the json fields. So we come to the point again: assertions should really be eliminate in favor of exceptions in any production-ready libraries.

The assertions are removed when you build with NDEBUG, so there are no assertions when building for production.  They're debugging aids.  Therefore, ignore them.
If the user of the library needs to know whether or not the desired field is there because it's reading from a const object constructed from an unknown source, then it is up to the user of the library to do the test.  Adding this test makes the 99.99% slower so that the 0.01% can be exactly the same speed, but with the test in the library instead of outside the library.

Const and non-const behavior should definitely match.

That is simply not possible.  It would mean that you could not do this:
json j;
j["foo"] = bar;

@gregmarr This is not what I mean. I mean 'the const part' should match, of course. In our specific case, it means the behavior on reading.

@Dka8 The fix you describe is (more or less) the code of the at function which offers checked access to the object. The operator[] function skips this check, just as std::vector or std::map do.

I confused your post with dka8's post.
What exactly are you proposing then?

@gregmarr I propose to leave everything as is:

at for checked access
operator[] for unchecked access

@kawing-chiu I am aware how other languages cope with JSON, and the motivation for this project was "What if JSON was part of Modern C++?". Where possible, I tried to make JSON feel like a part of the STL and basically combined the interfaces of std::vector and std::map. Both offer with at checked access to the elements. std::vector also has operator[] for both const and nonconst access - in both cases without bounds checking. As std::map has no const operator[], I basically had three choices:

not to offer a const operator[]
copy the behavior of at and provide checked access
mimic the behavior of vector and provide unchecked access

Option 1 makes no sense. There a so many Stack Overflow threads about people being confused that they cannot use operator[] for const std::map that I did not follow this.
Option 2 makes more sense, but would always check for an element even if such a check is not needed. This, in my opinion, is not very C++ like.
Option 3 is documented as such. Just like dereferencing the past-the-end iterator or using an invalid vector index, the behavior is undefined. One could argue that calling find, checking whether it's end() and returning the reference if not does not really add overhead, but in the end it is a check that no one really asked for when using operator[] rather than at.
About assertions: I shall think about switching them off by default and only to switch them on with a special preprocessor symbol. However, the current code only use assertions in cases of otherwise undefined behavior.

There is no need for a special preprocessor symbol, assert comes with one as part of the standard, as I mentioned.
I agree with leaving things as is.

@gregmarr I agree. I think the main issue of @kawing-chiu is that they did not expect an assertion in this case. I do mention assertions in the README - I am not sure what I can do to avoid such confusions.

@nlohmann OK, now I see why. Actually, I think Option 1 is the best of three and it make some sense. If we're to follow STL's lead, then just follow as close as possible...
Another possibility I can think of is to define subclass of std::logic_error, throw it and let the user know what happen instead of the assertion error.
Either way, I think there should be a section dedicated to it in the readme.

I think providing a function in the flavor of std::vector and offer unchecked access also for objects is more consistent than not allowing const access with operator[] at all. Anyway, I think the larger issue are the assertions. I don't think throwing an exception is a solution, because this again would introduce a check...
There is currently a notes section in the README, reading

The code contains numerous debug assertions which can be switched off by defining the preprocessor macro NDEBUG, see the documentation of assert.

What would you like to add?

Exceptions are not like checks. They are zero cost on the 'normal path'. And unlike assertions they can be catched and won't make your server crash.
As an example: std::promise::get_future() uses various kinds of future_error exceptions to indicate something that should not be done by the user (e.g. the future associate with the promise can only be retrieved once). The std::promise::get_future() function will not just irresponsibly assert and dead when the user access the future twice.

With

I don't think throwing an exception is a solution, because this again would introduce a check...

I meant that one would still need code like
if (m_object->find(key) != m_object->end())
  throw std::logic_error(key + " not found");

Or did you mean to have a different assertion macro that throws, so that check would not be executed in production?

I don't understand the point. You already have it in your assert()
assert(m_value.object->find(key) != m_value.object->end());

So isn't it just the same in terms of overhead??

OK, so you meant this:

Or did you mean to have a different assertion macro that throws, so that check would not be executed in production?

:)

Ok, so you propose to replace the vanilla assert by a function that throws some exception instead. And this function would be a no-op in production, right?

Well, not exactly. I mean we use the exception for both development and production, like std::promise::get_future().
But since there's at(). What really needs to be done I think is to add a section to readme to clarify things and warn the user. At least say explicitly that [] may assert.

The code contains numerous debug assertions which can be switched off by defining the preprocessor macro NDEBUG, see the documentation of assert.

is not quite enough. 'There is a minefield'. But where are the mines?

Option 1 makes no sense. There a so many Stack Overflow threads about people being confused that they cannot use operator[] for const std::map that I did not follow this.

C++ developers are still likely to work with const std::map and I don't think that using a different approach in this library makes them any less confused. I found a few caveats from my code where operator[] was used with const objects and I'd much rather prefer compiler errors in such cases (and consistency with std::map).

std::vector also has operator[] for both const and nonconst access - in both cases without bounds checking.

At least the behavior of both operators is consistent as neither of them can be used for adding new elements.

I agree with @maksis . I think that is the exact reason why std::map does not have a const operator[].

The assertions are now mentioned in the README and the documentation of the function. Furthermore, the release notes for 2.0.3 will also mention the existence of assertions in the project and how to disable them.

I know I'm late to the discussion here but I wanted to add some thoughts about this. I understand that the idea is that since const operator[] is unchecked for arrays, it should be fine to make it unchecked for maps too. But I don't think that's true. There are many reasons why operator[] is unchecked for arrays. But those reasons do not apply to maps.
First of all, indexing into an array is fundamentally a very cheap operation, possibly a single processor instruction. Adding a bounds check to it makes the operation many times slower. By contrast, looking up an entry in a string map is already an expensive operation involving O(log n) string comparisons. Doing an extra it != container.end() check only makes it negligibly slower.
Second of all, the most common operation with input arrays is to iterate through them and access each element. With this usage pattern, it's easy to ensure that there is no out-of-bounds access. By contrast, with input maps, random access by key is more common than iteration. And with random access it's a lot more likely that out-of-bounds access is a real possibility that you have to deal with.
Third of all, everyone is already very used to the fact that indexing into arrays in unchecked, ever since the days of C. There is no corresponding expectation for maps. I think that when people are writing code using json objects in C++, they might expect one of 2 things:

json objects are like std::map, i.e. there is no const operator[]
json objects are like dicts in Python, etc, i.e. operator[] throws for keys that aren't found

I really don't think that people's first thought would be that the behavior of operator[] for json objects is the same as it is for arrays, i.e. undefined behavior for out-of-bounds access. That, to me, is a fundamentally surprising thing about the interface of this library. Of course you can try to remedy the problem of a surprising interface with documentation, but it's still a problem.
I don't agree with the concern that it violates "pay only for what you use". Like I mentioned earlier, the cost of the check is negligible compared to the existing cost of the indexing operation. It's a small price to pay for eliminating a source of undefined behavior which, in my opinion, an inexperienced user is very likely to run into. Someone said that this check would make the 99.99% case slower for the sake of the 0.01% case. I strongly disagree with that analysis. How can it be that in 99.99% of cases, people are so sure about the source of their input that they're willing to invoke undefined behavior if they're wrong? In 99.99% of cases, the json that you're reading came from some external source, whether a config file or some other process. You really want to give that external source the power to cause a segfault in your application? I think in 99.99% of cases, people are going to want checked access. Or, if they're an inexperienced developer, they won't bother to do any checking thinking they don't need it, until the day that they're wrong and now they have a segfault to deal with.
In conclusion, what I want is for the const version of operator[] to have the same behavior as at, because operator[] has the nicer, more obvious syntax, so it should be the safe version. Adding this check would even be a backwards-compatible change because you're taking something that's undefined behavior now and making it defined behavior.
While we're here, another possible behavior for const operator[] would be to have an empty instance of basic_json as a static variable in the class, and have const operator[] return a const reference to this instance if the lookup fails. This would be very useful for reading nested configs where all the fields are optional, e.g.:
void loadConfig(const json& config) {
  const json& child = config["foo"];
  a_ = child.value("a", 0);
  b_ = child.value("b", true);
  c_ = child.value("c", "bar");
}

In this case, since all the fields inside of "foo" are optional, we can make "foo" itself be optional.
But probably the less surprising behavior for const operator[] is to throw. The above behavior of returning a const reference to a dummy instance is useful in its own right so it could be added as a new method, say child(key).

Adding a bounds check to it makes the operation many times slower

Actually, even for arrays it is only marginally slower even for cache-friendly sequential access on modern architectures (pipelining and all that), and is essentially free for not-cache-friendly random-access.
I have to agree that undefined behavior should not be introduced without really good reasons, and if can be eliminated for extremely negligible cost, that should be made so.
On that note, I'm a believer that asserts should be reserved for testing preconditions that are internal to the library, rather than for checking validity of external inputs that we have no control over - that's what domain_errors are for!

@eferreira The value() function) seems similar to your proposed child function, right?

The value function returns a copy, right? The child function would return a const reference. I'd like a function that returns a reference to a child if it's there, otherwise it returns a reference to some dummy instance. Is it possible to achieve that with the value function?

Right, it returns a copy.


Subclassing JSQMessageMediaData in Swift

I am trying to create a custom message media data in Swift, but it keeps telling me:
type 'CustomMedia' does not conform to protocol 'NSObjectProtocol'
My code:
class CustomMedia: JSQMessageMediaData {

@objc func mediaView() -> UIView! {
    let mediaView = UIView()
    let label = UILabel(frame: CGRectMake(0, 0, 200, 21))
    label.center = CGPointMake(160, 284)
    label.textAlignment = NSTextAlignment.Center
    label.text = "I'am a test label"
    mediaView.addSubview(label)
    return mediaView
}

@objc func mediaViewDisplaySize() -> CGSize {
    let size = CGSizeMake(200, 21)
    return size
}

@objc func mediaPlaceholderView() -> UIView! {
    return nil
}

@objc func mediaHash() -> UInt {
    return UInt(0)
}
}

Ok, seems like it has to inhert from NSObject. Solved.

Thanks @MHX792 ! :smile:


v1.1 deliverable

Pull Request Test Coverage Report for Build 139

0 of 77 (0.0%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-3.2%) to 65.817%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/address/model/event/exceptions/EventNotFoundException.java
0
1
0.0%

src/main/java/seedu/address/model/event/exceptions/DuplicateEventException.java
0
2
0.0%

src/main/java/seedu/address/model/event/EventName.java
0
10
0.0%

src/main/java/seedu/address/model/event/Event.java
0
25
0.0%

src/main/java/seedu/address/model/event/UniqueEventList.java
0
39
0.0%

Totals

Change from base Build 129:
-3.2%

Covered Lines:
1084

Relevant Lines:
1647

💛  - Coveralls


Update scala dependencies

This PR is simply to make the review of the Scala dependency update easier.
fs2-io was not updated as with its latest version we will need to transfer from using java.nio for everything path related to use fs2.io

Even though the current Scala Steward doesn't seem to kick off the CI checks, I'd still prefer the individual PRs per dependency upgrade.

Even though the current Scala Steward doesn't seem to kick off the CI checks, I'd still prefer the individual PRs per dependency upgrade.

@arosien After this PR is merged that is how it will be handled from now on. I just an encompassing PR since we there were so many keeping up with them not will be less. So this is basically a one time same thing we did with dependabot.


[eigen3] [ignition-modularscripts] Fix installed pkgconfig files

Describe the pull request

What does your PR fix?

This PR fixes the installed pkgconfig files for ignition libraries and some dependent ports. It is related to https://github.com/microsoft/vcpkg/issues/11087, but clearly it does not fix it completely.

Which triplets are supported/not supported? Have you updated the CI baseline?

This PR should  not affected the supported or not supported  triplets.

Does your PR follow the maintainer guide?

Yes

Cool, LGTM! Thanks @traversaro :)


Pull Request component

[ ] Displayed after a pull request got created or updated
[ ] Lets the user return to the projects selection page

:dart: 1d


LOG4J2-3107: SmtpManager.createManagerName ignores port

This patch is short and affects only one class.

@sman-81, thanks so much for the contribution! Could you also add a test to verify this new behavior?

It might also be better to target this change to release-2.x branch, rather than master. (I will take care of cherry-pick'ing.)


[consent request] I added botocore-stubs package to PyPI

Hello,
In order to have type checking and code auto-complete in IDE while working with boto3/botocore, I created type annotations package for botocore in a scope of mypy_boto3_builder project.
Package has to be named botocore-stubs to be recognized by type checkers as type annotations for botocore. So please let me know if it is okay to use botocore in the name of the package.
Thank you!

Hi @vemel, I'm still waiting to hear back from the legal team regarding this request (from https://github.com/boto/boto3/issues/2213). I'll let you know when I hear more.

Hi @vemel,
Thanks again for your patience.
We have concluded that the use of the name is OK as long as it’s explicitly made clear that it is not endorsed or affiliated with AWS.


Number of pins exceed number of valid positions

Description
In order to test the joint workflow of Genus and OpenLane, I synthesized a simple design based on Sky130A with Genus and imported it into OpenLane. When running pin-placement, the program gave the error report as shown in the figure.

Environment
Kernel: Linux v4.18.0-240.1.1.el8_3.x86_64
Distribution: centos 8
Python: v3.10.2 (OK)
Container Engine: docker v20.10.7 (OK)
OpenLane Git Version: 5f20beb7928c7329ea1a199b9f494f48f2e6c080
pip:click: INSTALLED
pip:pyyaml: INSTALLED
pip:venv: INSTALLED
---
PDK Version Verification Status: OK
---
Git Log (Last 3 Commits)

5f20beb 2022-03-11T01:56:51+02:00 Fix issue with threads option in `run_designs.py` (#994) - Donn -  (HEAD -> master, tag: 2022.03.11_02.27.13, origin/master, origin/HEAD)
a82bf22 2022-03-11T01:47:51+02:00 scripts/checkers: fix report_file_relative scope (#989) - Johan Euphrosine -  ()
ec35dd7 2022-03-11T01:47:12+02:00 scripts/tcl_commands/scrot_klayout: add missing -log arguments (#990) - Johan Euphrosine -  ().

Reproduction Material

Upload a tarball containing the relevant design.
openlane_reproducible_6.zip
List the commands used to run the design.
./flow.tcl -interactive
prep -design BM64
run_floorplan

Expected behavior
Know the cause of the problem and fix it.
Logs
OpenROAD<PHONE_NUMBER>23e651e7b9c7c50efcce1fb04b4fee
This program is licensed under the BSD-3 license. See the LICENSE file for details.
Components of this program may be licensed under more restrictive licenses which must be honored.
[INFO ODB-0222] Reading LEF file: /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/merged_unpadded.lef
[INFO ODB-0223]     Created 13 technology layers
[INFO ODB-0224]     Created 25 technology vias
[INFO ODB-0225]     Created 441 library cells
[INFO ODB-0226] Finished LEF file:  /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/merged_unpadded.lef
[WARNING IFP-0028] Core area lower left (5.520, 10.880) snapped to (5.520, 10.880).
[INFO IFP-0001] Added 202 rows of 1197 sites.
[INFO] Extracting DIE_AREA and CORE_AREA from the floorplan
[INFO] Floorplanned on a die area of 0.0 0.0 561.7 572.42 (microns). Saving to /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/reports/floorplan/7-initial_fp_die_area.rpt.
[INFO] Floorplanned on a core area of 5.52 10.88 556.14 560.32 (microns). Saving to /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/reports/floorplan/7-initial_fp_core_area.rpt.
[INFO ODB-0222] Reading LEF file: /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/merged.lef
[INFO ODB-0223]     Created 13 technology layers
[INFO ODB-0224]     Created 25 technology vias
[INFO ODB-0225]     Created 441 library cells
[INFO ODB-0226] Finished LEF file:  /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/merged.lef
[INFO ODB-0127] Reading DEF file: /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/floorplan/7-initial_fp.def
[INFO ODB-0128] Design: BM64
[INFO ODB-0130]     Created 1028 pins.
[INFO ODB-0131]     Created 4426 components and 35055 component-terminals.
[INFO ODB-0133]     Created 5460 nets and 17351 connections.
[INFO ODB-0134] Finished DEF file: /openlane/designs/BM64/runs/RUN_2022.03.13_10.54.33/tmp/floorplan/7-initial_fp.def
Found 0 macro blocks.
Using 1u default distance from corners.
[INFO PPL-0007] Random pin placement.
[ERROR PPL-0072] Number of pins (1028) exceed number of valid positions (688).
Error: ioplacer.tcl, 60 PPL-0072

This is a user error - you have more pins than places along the edges of your design to place them.  You need a bigger area or to use more layers.  If you feel the message is erroneous please state why.

Matt is correct. You simply need a larger footprint. There physically isn't enough space for the number of pins you have.

Ok, thank you for your reply. Let me reconfigure it carefully. Thank you very much.

@shustinski set ::env(DIE_AREA) {0 0 1000 1000} sets an absolute size. You can increase or decrease it as you see fit.

I have already tried this, but it doesn't increase the number of valid pins positions

@donn Thank you, it really helps

I have set "FP_SIZING": "relative", but I also got this problem, doesn't that option means the area size is automatic increased? @donn

@b224hisl It does not. Relative only means the size is based on the amount of cells you have and your utilization. Pins are currently not factored into this equation.


Memory allocation error when inserting string of size 128

Environment

Python:  3.12.3
pyodbc: 5.1.0
OS: Ubuntu 24.04 LTS
DB: MariaDB 1:10.11.8
driver: odbc-mariadb, Version: 3.1.15-3

All environment components are defaults from the distro.
I took their version from aptitude show package-name
Issue
Hello.
I found a bug on inserting data to mariadb via pyodbc, but I am not sure which component (pyodbc, mariadb driver or mariadb itself) is guilty.
Could you help me to find it, and also give some ideas of how to workaround the bug?
Buggy script:
#!/bin/python3

import pyodbc

conn = pyodbc.connect(f'DRIVER={{MariaDB Unicode}};User=db_user;Password=db_password;Database=db_name;Server=localhost;Port=3306')
cursor = conn.cursor()

cursor.execute('DROP TABLE IF EXISTS test_table')
cursor.execute('CREATE TABLE test_table(data varchar(255))')

data = "A" * 128

cursor.execute("INSERT INTO test_table (data) VALUES (?)", (data))

result:
$ ./testing_bug.py
Traceback (most recent call last):
  File "/opt/doorphony/./testing_bug.py", line 13, in <module>
    cursor.execute("INSERT INTO test_table (data) VALUES (?)", (data))
pyodbc.OperationalError: ('HY001', '[HY001] [ma-3.1.15][10.11.8-MariaDB-0ubuntu<IP_ADDRESS>]Memory allocation error (0) (SQLPutData)')

I can reproduce the error. No error with isql.
odbctrace.log

This is very unusual, does it happen with pyODBC 4.x?
Looks like it's DAE'ing 255 bytes followed by 1 byte.
[ODBC][4334][1723022770.189265][SQLPutData.c][148]
		Entry:
			Statement = 0x28ff860
			Data = 0x782f9419efd0
			StrLen = 255
[ODBC][4334][1723022770.189671][SQLPutData.c][315]
		Exit:[SQL_SUCCESS]
[ODBC][4334][1723022770.189738][SQLPutData.c][148]
		Entry:
			Statement = 0x28ff860
			Data = 0x782f9419f0cf
			StrLen = 1
[ODBC][4334][1723022770.190018][SQLPutData.c][315]
		Exit:[SQL_ERROR]

does it happen with pyODBC 4.x?

Unknown. pyodbc 4.0.39 won't build under Ubuntu 24.04 (Python 3.12.).

Also, no error with
data = "A" * 129

If the string is longer than 128, then yes, there is no error, however, data written to DB are completely broken after 128th symbol.

does it happen with pyODBC 4.x?

Yes. It also occurs on Ubuntu 22.04 (Python 3.10, same version of odbc-mariadb) with both pyodbc 5.1.0 and 4.0.39. Same anomaly in the ODBC trace log,

@lazydev2 - Immediately after the pyodbc.connect() call, try adding
conn.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')
conn.setdecoding(pyodbc.SQL_WCHAR, encoding='utf-8')
conn.setencoding(encoding='utf-8')

as suggested in the wiki.

conn.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')
conn.setdecoding(pyodbc.SQL_WCHAR, encoding='utf-8')
conn.setencoding(encoding='utf-8')

It works, no erros, data are written correctly.
If those changes are mandatory, would be good to spread them among all pyodbc guides in the internet :)


TPC-DS 30TB regression on 1.2-rc1 vs 1.1 on hash operations

Backend
VL (Velox)
Bug description
There is a significant regression on TPC-DS between releases 1.1 and 1.2. For example, q95 went from ~165s to ~315s on TPC-DS 30TB and it looks like hash build/hash probe operations are the ones which have regressed the most (see images)

Other queries with similar regressions caused by hash operations are q23a(240s to 440s), q23b (similar to q23a), q47(85s to 101s)
I was able to reproduce this issue on both spark 3.4 and spark 3.5 - this is not a query plan change issue. I believe the regression happens in Velox but I'm not sure how to isolate it.
Spark version
Spark-3.4.x
Spark configurations
No response
System information
No response
Relevant logs
No response

cc @marin-ma

Probably related to https://github.com/apache/incubator-gluten/pull/5401 which was not resolved yet.

Thank you @zhztheplayer. I reran the benchmark after reverting #9079 and associated #9731 from gluten and it didn't make a difference for this benchmark. Are there any other suspects I can try to revert or any other tests I could run to debug this further?

@estoianovici
The hash build allocates more memory(783G vs 1157G) although the number of input rows are the same. We have run into such issue due to huge page based allocator, but it should be fixed in the recent release. Can you please check if below config is enabled?
spark.gluten.sql.columnar.backend.velox.memoryUseHugePages
https://github.com/apache/incubator-gluten/pull/3483
thanks, -yuan

This issue is caused by https://github.com/facebookincubator/velox/pull/10646. That fix should be cherry-picked into the associated velox branch.
@zhouyuan, Thanks for pointing me to #3483,

CC @weiting-chen


无法返回回答

Traceback (most recent call last):
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 2091, in call
return self.wsgi_app(environ, start_response)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 2076, in wsgi_app
response = self.handle_exception(e)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 2073, in wsgi_app
response = self.full_dispatch_request()
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 1518, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 1516, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/flask/app.py", line 1502, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/Users/zhangmeng/Downloads/EX-chatGPT-main/chatGPTEx/main.py", line 34, in get_bot_response
res = parse_text(web(q,conv_id=uuid))
File "/Users/zhangmeng/Downloads/EX-chatGPT-main/chatGPTEx/search.py", line 76, in web
apir = APIQuery(query,resp=resp)
File "/Users/zhangmeng/Downloads/EX-chatGPT-main/chatGPTEx/search.py", line 151, in APIQuery
response =  chatbot.ask(prompt,convo_id='api')
File "/Users/zhangmeng/Downloads/EX-chatGPT-main/chatGPTEx/optimizeOpenAI.py", line 206, in ask
full_response: str = "".join(response)
File "/Users/zhangmeng/Downloads/EX-chatGPT-main/chatGPTEx/optimizeOpenAI.py", line 154, in ask_stream
response = self.session.post(
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/requests/sessions.py", line 590, in post
return self.request('POST', url, data=data, json=json, **kwargs)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/Users/zhangmeng/opt/anaconda3/lib/python3.9/site-packages/requests/adapters.py", line 514, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='api.openai.com', port=443): Max retries exceeded with url: /v1/chat/completions (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1129)')))

SSL error

那怎么解决呢。。


Ferdi crashes multiple times on starting (win10)

hello i have many many crash on strating in WIN 10 windows start and clash ..... in loop
any idea ?
regards

@micker I have similar issue, Ferdi is starting but no gui shows up.

Please provide more information about used Ferdi version, error logs, etc.
Using 5.6.3-nightly.4 on Windows 10 and it works as expected.


Add back diagnostic edmfx aquaplanet job

Purpose

This is accidentally removed in #2254
To-do

Content

[ ] I have read and checked the items on the review checklist.

bors r+

bors r+

bors r+


[DEX] Market search should not be case sensitive [med prio]

Steps to Reproduce
Environment: Devnet

Go to /markets or market selection dropdown on trading UI
Focus on search bar
Provide search input with some character(s) in uppercase
Observe

Actual Results
Assuming the search input is BTC or bTC. There is no matching market returned despite BTC/USDT PERP is listed. The search criteria is case sensitive. BTC/USDT PERP is only returned if the input is btc.
Expected Results
The search criteria should not be case sensitive.

Resolved in commit https://github.com/InjectiveLabs/injective-dex/commit/762c657ce97b508be474db4e6e4f7c260758cf40

Verified in devnet


Implement a Neural Network Architecture Generation Function

Implement a function or a class so that a neural network is generated according to the user specified parameters.
User will provide, input shape, output shape, number of hidden layers, nodes, activations, dropouts etc...
The function/class is expected to return a pytorch model with the given architecture, no training etc... is needed

@muguryalcin has implemented some groundwork for this issue in PR #79

Below NARX class implemented by @muguryalcin provides a good base for building a NARX architecture with user specified architecture, any improvements/ideas are welcome
https://github.com/odtuyzt/chrono-kit/blob/c735bdc5788a742d5e461ed70f9ee9ce814895d3/chronokit/narx/narx.py#L42-L55

@muguryalcin has implemented the architecture generator class. Closing this as completed


Duplicate entries in token selection dropdown

On searching USDC, 4 entries for the token get displayed.

On closing the dropdown and opening it again, 2 are shown.

I believe the two tokens are native USDC and Wrapped USDC. They're getting duplicated in the first case.

This is fixed just not deployed. See https://github.com/project-serum/swap-ui/commit/8eb5dcae194223b3fd0321b50dc82f0eb7d33e36. Closing.

Awesome


[#7205, #8016] Fixes getUserId for simpleAuth

Codecov Report

Merging #8017 (76e4cc3) into master (030daf8) will increase coverage by 0.00%.
The diff coverage is 0.00%.

@@            Coverage Diff            @@
##             master    #8017   +/-   ##
=========================================
  Coverage     39.25%   39.26%
- Complexity    11097    11098    +1
=========================================
  Files          3201     3201
  Lines         88322    88324    +2
  Branches      10180    10181    +1
=========================================
+ Hits          34668    34676    +8
+ Misses        50459    50453    -6
  Partials       3195     3195

Impacted Files
Coverage Δ

...avercorp/pinpoint/web/service/UserServiceImpl.java
64.86% <0.00%> (-3.71%)
:arrow_down:

...p/pinpoint/rpc/stream/StreamChannelRepository.java
57.89% <0.00%> (-21.06%)
:arrow_down:

...pc/server/LoggingServerMessageListenerFactory.java
80.95% <0.00%> (-9.53%)
:arrow_down:

.../navercorp/pinpoint/rpc/client/RequestManager.java
62.31% <0.00%> (-7.25%)
:arrow_down:

...navercorp/pinpoint/rpc/common/SocketStateCode.java
81.25% <0.00%> (-3.13%)
:arrow_down:

...java/com/navercorp/pinpoint/rpc/DefaultFuture.java
69.29% <0.00%> (-1.76%)
:arrow_down:

...point/rpc/client/DefaultPinpointClientHandler.java
68.27% <0.00%> (+1.03%)
:arrow_up:

...orp/pinpoint/rpc/server/DefaultPinpointServer.java
81.06% <0.00%> (+1.23%)
:arrow_up:

...om/navercorp/pinpoint/rpc/codec/PacketDecoder.java
53.33% <0.00%> (+1.66%)
:arrow_up:

...vercorp/pinpoint/web/vo/ApplicationAgentsList.java
72.36% <0.00%> (+2.63%)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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


 To avoid this, bundle a modified version of sqlite-tag-spawned (similar to what is done with yarle) which only loads said modules on desktop.

Btw, Platform.isMacOS is true on iOS as well. Is this intentional?

Btw, Platform.isMacOS is true on iOS as well. Is this intentional?

Mostly; a lot of the behaviors between macOS and iOS are shared - things like the command modifier key (instead of ctrl), and plus iOS browsers "pretend" to be macOS. If you want to test for desktop mac then you'd want to check Platform.isDesktopApp as well.


feat(filterActions): pass existing and new product to filter function

@panshul007 @hajoeichler
We need this to be able to find out the SKUs and IDs of all variants, since a typical import only gets the SKUs

:+1:


Only  allowed now, your model ChatModel

D:\Local-LLM-Server\demos\dotnet-demo\bin\Debug\net6.0>dotnet-demo.exe
Unhandled exception. Microsoft.SemanticKernel.HttpOperationException: Service request failed.
Status: 400 (Bad Request)
Content:
{"object":"error","message":"Only  allowed now, your model ChatModel","code":40301}
Headers:
Date: Tue, 30 Jan 2024 06:08:50 GMT
Server: uvicorn
Content-Length: 83
Content-Type: application/json
---> Azure.RequestFailedException: Service request failed.
D:\Local-LLM-Server>python startup.py
2024-01-30 14:12:46 | ERROR | stderr | INFO:     Started server process [9664]
2024-01-30 14:12:46 | ERROR | stderr | INFO:     Waiting for application startup.
2024-01-30 14:12:46 | ERROR | stderr | INFO:     Application startup complete.
2024-01-30 14:12:46 | ERROR | stderr | INFO:     Uvicorn running on http://<IP_ADDRESS>:21001 (Press CTRL+C to quit)
2024-01-30 14:12:47 | ERROR | stderr | INFO:     Started server process [19276]
2024-01-30 14:12:47 | ERROR | stderr | INFO:     Waiting for application startup.
2024-01-30 14:12:47 | ERROR | stderr | INFO:     Application startup complete.
2024-01-30 14:12:47 | ERROR | stderr | INFO:     Uvicorn running on http://<IP_ADDRESS>:21000 (Press CTRL+C to quit)
2024-01-30 14:12:52 | INFO | model_worker | Loading the model ['ChatModel'] on worker b8b48c0d ...
2024-01-30 14:13:04 | INFO | stdout | INFO:     <IP_ADDRESS>:50817 - "POST /list_models HTTP/1.1" 200 OK
2024-01-30 14:13:04 | INFO | stdout | INFO:     <IP_ADDRESS>:50816 - "POST /v1/chat/completions HTTP/1.1" 400 Bad Request
2024-01-30 14:13:09 | INFO | stdout | INFO:     <IP_ADDRESS>:50820 - "POST /list_models HTTP/1.1" 200 OK
2024-01-30 14:13:09 | INFO | stdout | INFO:     <IP_ADDRESS>:50819 - "POST /v1/chat/completions HTTP/1.1" 400 Bad Request

please wait for the server started messge:
Local-LLM-Server is successfully started, please use http://<IP_ADDRESS>:21000 to access the OpenAI interface


Incorrect results with prange and sliced array

This is a simplified version of the reproducer from https://numba.discourse.group/t/how-do-i-parallelize-this-code/1085/6?u=gmarkall.
The following:
import numpy as np
from numba import prange, njit

@njit(parallel=True)
def myFoo(x, par, numthreads):
    n_par = par.shape[0]
    n_x = len(x)
    result = np.zeros((n_par, n_x), dtype=np.float64)
    chunklen = (len(x) + numthreads - 1) // numthreads

    for i in prange(numthreads):
        start = i * chunklen
        stop = (i + 1) * chunklen
        result[:, start:stop] = x[start:stop] * par[:, 0:1]

    return result

x = np.array(np.arange(0, 12, 1.0))
par = np.array([[1.0, 0.5], [2.0, 3.0], [3.0, 5.0]])
print(myFoo(x, par, 4))
print(myFoo.py_func(x, par, 4))

when run with parallel=False gives:
[[ 0.  1.  2.  3.  4.  5.  6.  7.  8.  9. 10. 11.]
 [ 0.  2.  4.  6.  8. 10. 12. 14. 16. 18. 20. 22.]
 [ 0.  3.  6.  9. 12. 15. 18. 21. 24. 27. 30. 33.]]
[[ 0.  1.  2.  3.  4.  5.  6.  7.  8.  9. 10. 11.]
 [ 0.  2.  4.  6.  8. 10. 12. 14. 16. 18. 20. 22.]
 [ 0.  3.  6.  9. 12. 15. 18. 21. 24. 27. 30. 33.]]

but when run with parallel=True gives:
[[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]]
[[ 0.  1.  2.  3.  4.  5.  6.  7.  8.  9. 10. 11.]
 [ 0.  2.  4.  6.  8. 10. 12. 14. 16. 18. 20. 22.]
 [ 0.  3.  6.  9. 12. 15. 18. 21. 24. 27. 30. 33.]]

Could you take a look please @DrTodd13 ?

TL;DR Another parallel=True doesn't supporting broadcasting issue but in this case the parfor assertion is happening but not being given to the user.
@stuartarchibald @sklam Issue7675 is similar to this one.  In 7675, I solved it by seeing that a setitem had differing dimensions on the left and right hand sides and if so then disallowing that setitem from becoming a parfor.  In this case, the right-hand side (x[start:stop] * par[:, 0:1]) is a problem because of the dimension mismatch.  If you say that parfors won't support that (which is true) and you try to disallow it at this early stage because you see the dimensionality is different (versus a dynamic broadcasting check which you can only do at runtime) then you end up with an arrayexpr inside a parfor.  You might think that is okay but in the outlining  process, the code goes through type inference which doesn't know about arrayexpr.  I hacked something to get that to work and then onto the next problem which is that array analysis saw the arrayexpr and inserted an equivalence check even though now I made it so that a parfor wouldn't be created on a dimension mismatch.  The final problem I note here is that in my modified code (and I think in the original code) there is an assert_equiv that is firing and terminating the parfor gufunc but that error is not being propagated.  It looks to be eaten somewhere and not reported to the user so rather than at least some error they just get the wrong answer.
One final note before I forget.  Since we have types for what is in the parfor, a lot of the typing phase of the parfor gufunc compilation can be viewed as unneeded.  There are parts of the parfor gufunc that haven't been typed  so maybe we don't have a choice but to go through it again but in that other PR that is outstanding where we avoid going through redundant parts of the compilation path for the parfor gufunc we could consider if there's a way to speedup the gufunc compilation by reusing some of the work that's already done.

TL;DR Another parallel=True doesn't supporting broadcasting issue but in this case the parfor assertion is happening but not being given to the user.

Slightly tangential, but do we need to go through the parfors code and replace its assertions with NumbaError instances? Would this help with the propagation of errors back to the user?


GraphQL subscriptions

Do you have plan to implement graphql subscriptions for real-time?

Yes, I'm planning to have this soon in the client.

This feature will make KitQL it even better!

I'm reading https://www.the-guild.dev/blog/subscriptions-and-live-queries-real-time-with-graphql. It's interesting!

It's the direction I'm going to! 👍

It's the direction I'm going to! +1

Is there a working branch or repo ?  How can we help?

It took time, but it finally happened!
Check out the Announcements here

Yes, GraphQL Subscription is in 🎉


Naming the keda connections in Rabbitmq

Proposal
Hi Team,
It would be good feature to add a name for the connection established by Keda in Rabbimq to estimate the no of connections consumed by each Keda config.
Use-Case
When Keda establishing Rabbitmq we could not name the connections , In our product multiple micro-services are connecting to Rabbitmq we can name the connections for all the micro-services so that we can estimate the no of connections utilized by the micro-services ,  In the similar way we have 100+ keda configs connecting to Rabbitmq but we could not name the connections to understand no of connections used by keda in Rabbitmq.
We observed multiple connections are named with ? but we could not understand whether these connections are used by Keda or others.

Is this a feature you are interested in implementing yourself?
No
Anything else?
If this feature can be implemented in different way in the existing Keda, could you please let us know.

Does RabbitMQ support naming of connections? If so and if it is part of the client library, then this could be added.

It does support naming connections. You can see in the screenshot, the first 9 connections are named, the gray text below the IP:PORT. The other connections below are unnamed, which is why you see a question mark ?.

OK, then this should be doable, if Rabbit clients supports this. Also worth noting that KEDA supports 2 protocols: http and amqp. Ideally we should add this for both (if supported).
Are you willing to contribute this?

I would be willing to contribute, though I don't know go. Maybe with some guidance it could be doable by me.
But before implementation, there should be an agreement on what to implement. What would be the connection names? Would the names be configurable?
From the github dependencies I see one is amqp091-go, is this the client? In python I have some code that creates named connections. And providing the name is not even required to be supported by the client because it is part of the url. I have something like broker_url = base_broker_url + '?client_properties={"connection_name":"' + connection_name + '"}'. If in keda the connections are already done using an url, then it is just changing that part of the code. More changes would be needed if the name is configurable.

Does https://github.com/kedacore/keda/pull/6093 get somewhere towards this, it is a static name right now, but can easily include a hostname or something relevant

I think it would be nicer if the connection name would be the same name of the scaler in kubernetes. But if that is difficult, a fixed name like currently in #6093 is already quite useful.

if the connection name would be the same name of the scaler in kubernetes.

What do you mean? The same as the ScaledObject name?

Yes, I meant the ScaledObject name. Just would be clearer which connection corresponds to what.

It can be a problem because the scaler doesn't have information about the ScaledObject/ScaledJob. Keeping the isolation point aside, you could have multiple ScaledObject/Job with same naming in different namespaces so we should include name-namespace. Is there any max length for the connection name?

I am not aware of a connection name max length.
What information does the scaler have access to? Would the ScaleTargetName be an option? Namespace for sure could be useful.

I tried a name with 147 characters and it still took it complete. If there is a limit, it is relatively high.


fix: ecrecover validation + migrate to KeccakBuiltin-based ecrecover

Fixes the ecrecover validatoin issues raised in audit + migrate ecrecover to use the KeccakBuiltin.

@ClementWalter wait, issues with CI, on it


Inputs from gpt

To implement the Celery tasks according to your specifications, we will structure the solution as follows:

Setup Celery: Define a Celery application.
Task Definitions: Implement the tasks (collector-request, collector-1, collector-2, collector-3, collector-gathering, cleanup, process) with the specified behavior.
Queues Configuration: Configure distinct queues for the tasks as needed.

For simplicity, I'll assume you have a running Redis server for both broker and result backend. This setup is common for Celery, but you can adapt it to use a different backend if necessary.
1. Setup Celery
First, install Celery and Redis (if you haven't already):
pip install celery[redis]

Now, let's define a basic Celery application in a file named celery_app.py:
from celery import Celery

# Create a Celery instance with Redis as the broker and result backend
app = Celery('tasks', broker='redis://localhost:6379/0', backend='redis://localhost:6379/0')

# Optional: configure specific queues for the tasks
app.conf.task_queues = {
    # Define queues here if needed
}

2. Task Definitions
Next, we'll define the tasks in a file named tasks.py. Ensure this file imports the app instance from celery_app.py.
import random
import uuid
from celery import group
from celery_app import app

@app.task
def collector_request(topic: str) -> None:
    """Generate an ID for the request and send topic name and ID to sub collectors."""
    request_id = str(uuid.uuid4())
    group(collector_1.s(topic, request_id),
          collector_2.s(topic, request_id),
          collector_3.s(topic, request_id)).apply_async()

@app.task
def collector_1(topic: str, request_id: str) -> None:
    """Process collector-1 task."""
    random_list = [random.randint(0, 100) for _ in range(random.randint(0, 10))]
    collector_gathering.s(random_list, request_id).apply_async()

@app.task
def collector_2(topic: str, request_id: str) -> None:
    """Process collector-2 task."""
    random_list = [random.randint(0, 100) for _ in range(random.randint(0, 10))]
    collector_gathering.s(random_list, request_id).apply_async()

@app.task
def collector_3(topic: str, request_id: str) -> None:
    """Process collector-3 task."""
    random_list = [random.randint(0, 100) for _ in range(random.randint(0, 10))]
    collector_gathering.s(random_list, request_id).apply_async()

@app.task
def collector_gathering(results: list, request_id: str) -> None:
    """Gather results from all collectors and pass them to cleanup."""
    combined_result = sum(results, [])  # Flatten and combine lists
    cleanup.s(combined_result, request_id).apply_async()

@app.task
def cleanup(data: list, request_id: str) -> None:
    """Cleanup task, printing size and ID, and passing data to process."""
    print(f"Cleanup: {request_id}, Size: {len(data)}")
    process.s(data, request_id).apply_async()

@app.task
def process(data: list, request_id: str) -> None:
    """Process task, counting items and printing ID and total items."""
    item_count = len(data)
    print(f"Process: {request_id}, Total Items: {item_count}")

3. Queues Configuration
If you need specific queues for each task to control concurrency or priorities, you can define them in the celery_app.py file within the app.conf.task_queues setting, and use the @app.task(queue='queue_name') decorator to assign tasks to those queues.
Running the Celery Worker
To run the Celery worker for these tasks, execute:
celery -A celery_app worker --loglevel=INFO

This command starts a Celery worker that listens for tasks defined in celery_app.py.
Note
This implementation assumes each collector_gathering task invocation corresponds to results from a single sub collector, not all three. To gather results from all three collectors before proceeding, you would typically use Celery's support for chords or other result aggregation patterns, which require keeping track of how many parts of the group have completed and only then proceeding to the next step. This can involve more complex state management or leveraging Celery's primitives like chord or group with callbacks, not shown in this simple example.

Testing a Celery task pipeline can be challenging due to its asynchronous nature and dependency on an external message broker. However, with the right setup, you can effectively test your tasks using pytest and pytest-celery. Here's how you can approach testing your Celery pipeline:
Step 1: Install Testing Libraries
First, make sure you have pytest and pytest-celery installed. You might also need factory_boy for generating test data.
pip install pytest pytest-celery factory_boy

Step 2: Configure Celery for Tests
For testing, configure Celery to use the eager mode. This mode allows tasks to be executed immediately rather than being sent to the queue, making it easier to test their outcomes. You can set this up in your Celery app configuration or dynamically in your test setup.
Step 3: Writing Tests
Create a new file for your tests, e.g., test_tasks.py. Here’s how you might structure a test for the collector_request task to ensure it properly triggers sub-tasks.
import pytest
from celery_app import app as celery_app
from tasks import collector_request, collector_1, collector_2, collector_3
from unittest.mock import patch

@pytest.fixture(scope='module')
def celery_config():
    return {
        'broker_url': 'memory://',
        'result_backend': 'db+sqlite:///test_results.sqlite',
        'task_always_eager': True,  # Execute tasks immediately rather than sending to the queue
    }

@pytest.fixture(scope='module')
def celery_enable_logging():
    return True

@pytest.fixture(autouse=True)
def setup_test_environment():
    # Setup code here, if necessary (e.g., mocking database connections)
    yield
    # Teardown code here, if necessary

def test_collector_request_triggers_sub_collectors():
    topic = "test_topic"

    # Mock the sub collector tasks to avoid executing real logic during the test
    with patch.object(collector_1, 'delay') as mock_collector_1, \
         patch.object(collector_2, 'delay') as mock_collector_2, \
         patch.object(collector_3, 'delay') as mock_collector_3:

        # Call the collector_request task
        collector_request(topic)

        # Assert each sub collector task was called once
        mock_collector_1.assert_called_once()
        mock_collector_2.assert_called_once()
        mock_collector_3.assert_called_once()

Step 4: Running Tests
Run your tests using the pytest command:
pytest test_tasks.py

Additional Considerations

Testing Other Tasks: For other tasks in your pipeline, you may want to assert that they correctly process data, manage exceptions, and call subsequent tasks as expected. You can use a similar approach with mocking and assertions.
Integration Tests: While unit testing individual tasks is valuable, consider writing integration tests that verify the pipeline's behavior from end to end. This might involve setting up test cases that simulate real-world usage and verify that the final outcome matches expectations.
Testing in Eager Mode: Keep in mind that testing in eager mode does not fully replicate the asynchronous execution environment of a production Celery setup. Certain behaviors, particularly those involving race conditions or timing, may differ.

By following these steps, you can build a comprehensive test suite for your Celery task pipeline, ensuring reliability and facilitating maintenance and development.

https://techcrunch.com/2024/03/31/why-aws-google-and-oracle-are-backing-the-valkey-redis-fork

@esloch


spatio_temporal_voxel_layer: 1.3.3-1 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository spatio_temporal_voxel_layer to 1.3.3-1:

upstream repository: https://github.com/SteveMacenski/spatio_temporal_voxel_layer.git
release repository: https://github.com/SteveMacenski/spatio_temporal_voxel_layer-release.git
distro file: melodic/distribution.yaml
bloom version: 0.8.0
previous version for package: 1.3.2-1

This is to fix the issues in the build farm -- somehow the missing tf2_geometry_msgs in package.xml escaped my builds

Got it, thanks for the help. I thought I had correctly added a track- I’ll resolve and open a new PR in a couple weeks (in Europe currently without computer access)


Input lag(nvim freeze for one second because of nvim-cmp)

I think it's a problem with nvim-cmp, but maybe you could give some workaround.
I faced with some freezes when inputing with lsp_signature, and make some measuring.
I guess that this helper function with calling cmp introduces this lags.

https://github.com/ray-x/lsp_signature.nvim/assets/62308020/a4f7740a-1ca4-41c0-b353-fddbc56a895f

Sometime people may have too many cmp sources and slow down the cmp response time.  Could you just enable LSP source in cmp and check if it still happens?

No, with only one source nvim_lsp, it also freezes. I searched some issues and found that my issue is a duplicate of https://github.com/hrsh7th/nvim-cmp/issues/1613 and possible cause described in https://github.com/hrsh7th/nvim-cmp/issues/1613#issuecomment-1595216446.


inconsistent use of ≤ and <=

Some but not all uses of <= were changed to ≤ (ampersand le;) to prevent them from displaying as a left arrow.  But now we have inconsistent usage as the two choices are rendered differently in html.  We might also want to change >= for consistency.

I can't assign you to review using the github UI.  OK with https://github.com/riscv/riscv-v-spec/pull/100 ?

Yes, it looks OK, though I managed to find another spec typo while trying to look at only the <= and >= stuff.

Alright, closing this one.


config: Add REDIS_HOST configuration variable

This is in anticipation of running the server in a container or any other environment in which redis is running on another host.

Coverage increased (+0.03%) to 98.016% when pulling 81bf6e211b562339bbee2c39aad8d884e0f82f8f on config-redis into b1d9e163af3ad2d2d7c3869ee9cbca475888f232 on master.

Coverage increased (+0.03%) to 98.016% when pulling 81bf6e211b562339bbee2c39aad8d884e0f82f8f on config-redis into b1d9e163af3ad2d2d7c3869ee9cbca475888f232 on master.


Make version group constants agree with master.

Codecov Report

Merging #13 into zip-tzes will increase coverage by 0.39%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           zip-tzes      #13      +/-   ##
============================================
+ Coverage     34.38%   34.77%   +0.39%
============================================
  Files            97       97
  Lines         11663    11680      +17
============================================
+ Hits           4010     4062      +52
+ Misses         7653     7618      -35

Impacted Files
Coverage Δ

zcash_primitives/src/transaction/mod.rs
41.50% <ø> (+0.50%)
:arrow_up:

zcash_primitives/src/consensus.rs
6.12% <0.00%> (-5.20%)
:arrow_down:

bellman/src/gadgets/multipack.rs
77.77% <0.00%> (-3.18%)
:arrow_down:

ff/src/lib.rs
46.66% <0.00%> (-1.34%)
:arrow_down:

zcash_client_backend/src/welding_rig.rs
95.48% <0.00%> (-1.29%)
:arrow_down:

bellman/src/gadgets/uint32.rs
23.12% <0.00%> (-1.25%)
:arrow_down:

zcash_primitives/src/jubjub/montgomery.rs
65.85% <0.00%> (-0.82%)
:arrow_down:

zcash_proofs/src/circuit/ecc.rs
83.80% <0.00%> (-0.74%)
:arrow_down:

zcash_proofs/src/circuit/sapling.rs
75.37% <0.00%> (-0.53%)
:arrow_down:

zcash_primitives/src/transaction/builder.rs
43.34% <0.00%> (-0.35%)
:arrow_down:

... and 26 more

Continue to review full report at Codecov.

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

Superseded by https://github.com/zcash/librustzcash/pull/286


Make language server install super reliable.

Ship Python with the IDE for each platform with pip already installed.

It's embedded now.


use callWithNuxt wrapper in signOut

Fixes H3Error: nuxt instance unavailable  error.
Closes #283.
Checklist:

[x] issue number linked above after pound (#)

replace "Closes " with "Contributes to" or other if this PR does not close the issue

[x] manually checked my feature / checking not applicable
[x] wrote tests / testing not applicable
[x] attached screenshots / screenshot not applicable

Looks good - just letting tests run through and we are good to merge (:


Rename maintainer for Carbon squad owned assets

At the moment, we specify which Carbon squad owns which assets. I think we could be more general with our maintainer name as most teams at IBM and outside IBM will not be familiar with out team structure and squad separation.
See the conversation also started here.

I believe there's value in showing that a dedicated team (within the Carbon core team) maintains the IBM.com components. That's shown in the catalogs through the team icons:

And then team name and pictogram in detail pages:

If we remove squad distinction and everything here is just "Carbon Team"... we'd no longer use that Carbon IBM.com icon and pictogram, which is maybe okay. If we go forward with this, we should time it with https://github.com/carbon-design-system/carbon-platform/issues/295 so we can specify who within the Carbon team is maintaining each library.


Passing access_log_class option to aiohttp

Description
I wanna pass custom formatting to access logs. I could not find an option to do that.
gunicorn config:
import os
import multiprocessing

workers = multiprocessing.cpu_count() * 2 + 1
worker_class = "aiohttp.worker.GunicornUVLoopWebWorker"
proc_name = "score_machine"

bind = ":8080"
accesslog = "-"  # send access log to stdout

app.py:
def create_app():
    connexion_app = AioHttpApp(
        __name__,
        specification_dir="schema/",
        options={"swagger_ui": True},
    )
    connexion_app.add_api(
        "schema.yml",
        validate_responses=True,
        strict_validation=True,
        resolver=RestyResolver("kw.score_machine.handlers"),
    )

    return connexion_app.app

application = create_app()

custom access log class:
from aiohttp.abc import AbstractAccessLogger

class AccessLogger(AbstractAccessLogger):

    def log(self, request, response, time):
        self.logger.info(f'{request.remote} '
                         f'"{request.method} {request.path} '
                         f'done in {time}s: {response.status}')

running server -> gunicorn kw.score_machine.app --config=.misc/gunicorn_config.py. FYI: There is related issue to access_log_class in aiohttp.
Expected behaviour
I could just put it to options as access_log_class=AccessLogger or handler_args={ 'access_log_class': AccessLogger}
Actual behaviour
I guess it's not supported?
Steps to reproduce
Additional info:
Output of the commands:

connexion version: 2.0.2

@dutradda do you know how to do this?

I found in code that you can do this doing:
    app.run(port=8080, access_log=your_access_log)

I saw this, but I am not running app, gunicorn is AFAIK. But I guess I did not dig deep enough here.

@lucas03 Don't use gunicorn with aiohttp, from docs: running aiohttp application under gunicorn is slightly slower
Async implementation works better with python bin...

running aiohttp application under gunicorn is slightly slower

If I wanna sacrifice slower app for gunicorn perks?

Yea, it's your choose, sorry.

OK, I'm resolving this issue. Thanks


AF-2189: Create Chrome Extension with BPMN editor

On this PR:

AF-2191
AF-2192
AF-2190
AF-2195

Great work!


Dockerfile: Added new 64-bit architecture for pi 4s

Connects-to: #58
Change-type: patch
Signed-off-by: Ryan White<EMAIL_ADDRESS>

LGTM code-wise, didn't test it though


Carthage support

Guys I made a quick fix for carthage support, working fine with the master branch

run carthage with carthage build --no-skip-current


Maximized state of a Result tab is reset after applying filters, sortings or moving through history

Description
It is expected the maximized state doesn't affected in these cases.
https://github.com/user-attachments/assets/5b90af22-c07e-430a-8e18-69739a518cd8
DBeaver Version
Enterprise Edition 24.2.4-202410172322
Operating System
Windows 10
Database and driver
PostgreSQL 16
PostgreSQL JDBC Driver 42.7.4
Steps to reproduce
No response
Additional context
No response

Thanks for the bug report


Add more authors in new format

Converts to the new format extension authors that claimed a name (VictrisGames, VegeTato, TheGemDev and MrJeje/Jérémy Leriche).

🚀


I need Select All & Remove All options inside the dropdown. Is it posible?

So the first two options might be Select All & Remove All. If I choose Select All option, then it has to select all the options listed. And it has to unselect, when I click the Remove(Which is a second dropdown option)

@dbrekalo Im also look for the same. Please help us.


Multiple tabs, colour code option

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when I have multiple tabs in superputty and I loose track on which I need to check what
Describe the solution you'd like
A clear and concise description of what you want to happen. By having an option to have colour code sticky note attached to hover over a tab, it would save a lot of time and potential mistakes.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here. Feel free to ping me for clarification

For example, to distinguish certain tabs and to be able to leave a short note, like for example after you do your work on that particular server to know the next step, since we triage multiple sites during shift that are hosted on multiple servers aka tabs. Cheers


Use shrinkwrap to fix dependencies

Estimate: 2 Points

[ ] use shrinkwrap

Am I misunderstanding something or are there some advanced problems I'm not aware of?
Following the documentation, this should definitely not be a 2 story point issue...

NPM Shrinkwrap


Add DDL for Jobot Database Schema

Added DDL for convenient loading of database schema into Supabase and CI for generate ERD schema based on the source DDL.

Thanks Harry!


Extension getting installed in remote environment when using Remote Development in vscode

This extension should default to getting installed locally rather than the remote environment.
As a workaround I've had to do the following:
https://code.visualstudio.com/docs/remote/ssh#_advanced-forcing-an-extension-to-run-locally-remotely

Also tried using it on WSL. Had to force it to run locally using the workaround you did.
Maybe the extension should set its execution location in the package.json file? I found this on the docs.


Automatic import of yml pipelines

Hey,
I was wondering if it's possible to auto-import yml pipelines, perhaps through some scripting. We have about 2000 projects that we are migrating to Azure DevOps, I can auto-generate a yml script for each module. However, I still need about 10-15 clicks per project to import it in Azure, making it a tedious & error-prone process.
Thanks in advance,
Sven

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

ID: 38f7a23b-ebd4-af3e-68a2-275f7e45c33e
Version Independent ID: f552a18c-ba29-00d4-03b6-254d7556d319
Content: Create your first pipeline - Azure Pipelines
Content Source: docs/pipelines/get-started-yaml.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

recall but interesting for other people: I found a way to do this using REST API :)
https://docs.microsoft.com/en-us/rest/api/azure/devops/build/definitions/create?view=azure-devops-rest-5.0
for instance:
curl -H "Content-Type: application/json" --data @some_build_profile.json https://yoururl/yourproject/_apis/build/definitions?api-version=5.0 -u username:generatedazuretoken
I auto-created that json file by simply doing a GET command on an existing YML build pipeline, and stripping it down to a bare minimum.. voila!


Avoid apt warning when building

Fixes WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Thanks @vadi2 ! I'll make a new release, v0.6.0, after merging this

Released as v0.5.1 rather than v0.6.0


docs: Clarify coordination for backporting process

Document the common workflow that we've been working under.
Signed-off-by: Chris Tarazi<EMAIL_ADDRESS>

@joestringer Good point, updated

Another good point; I added a small paragraph describing as such.

@christarazi I don't think we are maintaining 1.7 anymore, are we? Shall we remove the needs-backport/1.7 label?

Confirmed here on public Slack, 1.7 is EOL: https://cilium.slack.com/archives/CDD1S4BHC/p1621620861010800?thread_ts=1621620829.010600&cid=CDD1S4BHC


bug(tabs): ink-bar on not aligned on label initially

Reproduction
Use StackBlitz to reproduce your issue:

Components: https://stackblitz.com/edit/components-issue-j5sn8l?file=src/app/example-component.html

Failed to reproduce in StackBlitz.
Steps to reproduce:

Clone https://github.com/sign-language-processing/playground
Open the /translate router page (Online it is https://sign-language-processing.github.io/playground/translate)
Look at the spoken language selector

Expected Behavior
I expect the selected tab to be perfect with the ink (this is after clicking the tab)

Actual Behavior
This is how it actually is (before clicking the tab)

Environment

Angular:
CDK/Material: tried 11.2.12, tried 12.1.3
Browser(s): Chrome, iOS Safari
Operating System (e.g. Windows, macOS, Ubuntu): Windows, iOS

This could be confirmation bias, but is your issue the same issue as my issue?
https://github.com/angular/components/issues/23244
My hypothesis is that, in both our cases, the width of the various components is being calculated based on the browser's default font before our custom fonts are being downloaded. But if the custom font is already in the browser's cache, the issue will not manifest.

If I set the mat-label font to be Arial or Tahoma, which I have installed, It works perfectly.

The linked Stackblitz worked for me, but based on the discussion, it sounds like something that has come up in the past. In order to measure where to put the ink bar, we may end up triggering a reflow which can be expensive. That's why we try to do it only when we're sure that the content has changed (e.g. the number of tabs changed or the page was resized). I'll close the issue since we can't do much about it without sacrificing performance, but there are a couple of things you can do on your end:

There's a method called realignInkBar on MatTabGroup which you can use to tell the ink bar to re-align.
We have a new implementation of tabs coming up in material-experimental/mdc-tabs which uses a different way of positioning the ink bar which avoids this problem completely. You can try to switch to it. The public API and behavior are exactly the same (they extend off the same base classes as the current tabs), but the CSS is a little bit different. To use it, you have to change your import for MatTabsModule from @angular/material/tabs to @angular/material-experimental/mdc-tabs.

Thanks
Except for not respecting the forground text color in dark mode, it worked well
https://github.com/sign-language-processing/playground/commit/06dde3721d792fb693dcdbc8c362a55b80a945a5

Ah, I forgot to mention that the new tabs implementation also has a separate theme mixin that you have to import from material-experimental. There's more info here: https://github.com/angular/components/blob/master/src/material-experimental/mdc-tabs/README.md

@AmitMY just wondering how did you get that arrow down button next to your tabs? And what does the button do?


Runtime error: Vulkan is not initialized

I installed the ManiSkill environment on a new machine, but when I run basic_example.py there is the problem.
File /usr/share/vulkan/icd.d/nvidia_icd.json exists and 'VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json' is ensured

Traceback (most recent call last):
File "/home/shenhao/ManiSkill/basic_example.py", line 7, in
env = gym.make('MoveBucket-v0')
File "/home/shenhao/anaconda3/envs/mani_skill/lib/python3.8/site-packages/gym/envs/registration.py", line 145, in make
return registry.make(id, **kwargs)
File "/home/shenhao/anaconda3/envs/mani_skill/lib/python3.8/site-packages/gym/envs/registration.py", line 90, in make
env = spec.make(kwargs)
File "/home/shenhao/anaconda3/envs/mani_skill/lib/python3.8/site-packages/gym/envs/registration.py", line 60, in make
env = cls(_kwargs)
File "/home/shenhao/ManiSkill/mani_skill/env/move_bucket.py", line 17, in init
super().init(
File "/home/shenhao/ManiSkill/mani_skill/env/base_env.py", line 93, in init
obs = self.reset(level=0)
File "/home/shenhao/ManiSkill/mani_skill/env/move_bucket.py", line 26, in reset
super().reset(*args, **kwargs)
File "/home/shenhao/ManiSkill/mani_skill/env/base_env.py", line 168, in reset
self._setup_cameras()
File "/home/shenhao/ManiSkill/mani_skill/env/base_env.py", line 224, in _setup_cameras
camera = self._load_camera(cam_info)
File "/home/shenhao/ManiSkill/mani_skill/env/base_env.py", line 211, in _load_camera
camera = self._scene.add_mounted_camera(
RuntimeError: Vulkan is not initialized
Segmentation fault (core dumped)

Hi @shen-hhao ,

First make sure your Nvidia driver is correctly installed. You can check by nvidia-smi and nvcc -V
If your driver works well, then please check Vulkan by vulkaninfo.

nvcc -V

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Oct_12_20:09:46_PDT_2020
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0

vulkaninfo

ERROR: [Loader Message] Code 0 : libGLX_nvidia.so.0: cannot open shared object file: No such file or directory
Cannot create Vulkan instance.
This problem is often caused by a faulty installation of the Vulkan driver or attempting to use a GPU that does not support Vulkan.
/build/vulkan-tools-KEbD_A/vulkan-tools-<IP_ADDRESS>+dfsg1/vulkaninfo/vulkaninfo.h:371: failed with ERROR_INCOMPATIBLE_DRIVER

Hi @shen-hhao
As shown by the output of vulkaninfo, it seems your Vulkan driver is not correctly installed. What is your NVIDIA driver version?
Also, this command perhaps helps: sudo apt-get install mesa-vulkan-drivers

NVIDIA-SMI 470.63.01    Driver Version: 470.63.01    CUDA Version: 11.4
sudo apt-get install mesa-vulkan-drivers does not work

Problem solved by reinstall NVIDIA Driver with version 460.
Guess vulkan is not compatible with NVIDIA Driver Version 470.


Adding nested Runsettings arguments

I know there is functionality to manually pass in additional RunSettings parameters through the command line (e.g. -- ParentNode.ChildNode=Value), but I am trying to create an element one deeper beneath the "ChildNode", so the runsettings file after command line args would look like:
<RunSettings>
  <TaefAdapterSettings>
    <RuntimeParameters>
      <Parameter Name="Path" Value="Target\Path\" />
    </RuntimeParameters>
  </TaefAdapterSettings>
</RunSettings>

As you can see, I'm trying to set values in the TAEF test adapter here. With the API specified, though, I'm not sure how to drill down this specific using command line args for runsettings elements. Ideally, I would just use a runsettings file, but in my use case, this Runtime Parameter is variable and setting it via command line args would be ideal. I naively tried just setting the value to an entire XML element (-- TaefAdapterSettings.RuntimeParameters='<Parameter Name="Path" Value="Target\Path\" />') but with the reserved XML characters, I didn't have any luck there. Maybe there's still something there, though? Not sure.
Am I making sense here?
I saw in the documentation, there was specific ways to set the TestRunParameters (--%  -- TestRunParameters.Parameter(name=\"myParam\", value=\"value\")), but for my use, I need to set RuntimeParameters within the TaefAdapterSettings element.
Maybe I'm just missing something obvious, but any help here would be awesome!

I ended up going a different route actually, nulling this issue out. Thanks for the response, though!


Fix docker hub link

As you can see from #615 , if you click in "Docker (Universal)" on README, it points to PyPI instead of docker hub. Thus, I modify it to point to the proper docker hub link.
Fixes #615 .

Thank you!! @all-contributors please add @mohzulfikar for documentation!

Hey we're changing from MIT to GPLv3 because some of our projects are licensed with that, do you approve? If you do not approve we will be forced to delete your code and rewrite it 😢
By approving of this change, you are agreeing to re-license the code you wrote under GPLv3.

Hi @bee-san, I've no problem with that.


#3076: Scatterplot: Add coloring via expressions

add a little plus with a tooltip above the color column combo box
here we will call "Add new column", add it, and then use this column in the column combo box with others

[ ] Add more color customization options for created column data.

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-16722

updated with

[ ] Add more color customization options for created column data.

Olesia Pavlenko commented in Jira:

[file id="3c49ff6f-9ae8-4590-bbd2-02a9b7373e73"]

Olesia Pavlenko commented in Jira:

https://reddata.atlassian.net/browse/GROK-16804

Olesia Pavlenko commented in Jira:

ok on 1.22.0+


Fixing bug with sql

I found this bug when adding a test to check if the 'enabled' field is updated or not, but I cannot find a good way to test whether the user password and password confirmation fields have been updated.

I just started a road trip so I won't get to this for a day. You have two choices on the password. I think you get back the password hash, though I have to check. Assuming you do, you either check that it changed or you made a copy of the hash function, run the user:pass through it and check that it matches.

I pushed a change for this, please check it out. If it's good please close the PR.  GREAT CATCH!

That's great.