Can't get column from ParquetFile schema using PyArrow

Describe the bug, including details regarding any error messages, version, and platform.
Consider this code
import pandas as pd
from pyarrow.parquet import ParquetFile

df = pd.DataFrame({"a": [1], "b": [2]})
df.to_parquet('/tmp/test.parquet')
f = ParquetFile('/tmp/test.parquet')
f.schema.column('a')

Using Python 3.8, pyarrow 11.0.0 and pandas 1.5.3, I get the following error from the last line:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pyarrow/_parquet.pyx", line 907, in pyarrow._parquet.ParquetSchema.column
TypeError: '<' not supported between instances of 'str' and 'int'

Component(s)
Python

Hi @JonathanDCohen, thanks for the bug report. f.schema.column takes a column index (docs) rather than a name so you should use it like,
>>> f.schema.column(0)
<ParquetColumnSchema>
  name: a
  path: a
  max_definition_level: 1
  max_repetition_level: 0
  physical_type: INT64
  logical_type: None
  converted_type (legacy): NONE

It would be good to add a check for the type that argument or maybe even allow the user to pass a column name in addition to an index. Would you be interested in contributing a change?


Bug: Refinement of tuple length does not work

Try flow
// @flow
type One = [any]
type Two = [any, any]

function oneOrTwo(tuple: One | Two) {
  if (tuple.length === 2) {
    tuple[1] // results in flow error, but shouldn't
  }
}

I got bit by the same bug today.

Also this example should be relevant too:
// @flow

type State = ['one'] | ['two', number]

let s: State = ['one']

if (s[0] === 'two') {
  s[1]
}

Works now


[Migration] SSR and Server Actions

Implement SSR and Server Actions
Description:
Currently The Next.js Branch uses regular React.js Like Client Side rendering with useState, useEffect hooks and authentication System using Local storage.

Replace localStorage with Cookie based authentication
Implement Server Side Rendering (SSR). Fetch the data from backend in server components, then pass it to client components through props.
Implement Server actions on form submissions instead of regular API calls from client side.
Implement proper loading state on server components and form submissions

will u assign me this issue i can work on it

will u assign me this issue i can work on it

Sure, go ahead


Peer list is not consistent tested with small network

Description
As a blockchain client validador or not i want a list of a peers of my network not in duplicated and more consistent.
Acceptance Criteria

In small network (we talk about 4 validators) only of validators should by a consistent count between all peers
Not have duplicated nodes (like filter by enode public key and ip)

Steps to Reproduce (Bug)

I made a setup local with multiple clients using docker-compose below i will put my findings.

In the following tests i made with same group of validators that is composed by:
1 bootnode + validator IBFT 2.0
3 validators IBFT 2.0
Test 1 - Testing only a small group of validators

This result some times give the same amount of peers should be 4 on each of them that i think it is correct i suppose.
working dockers more than 30 min.
Test 2 - Testing only a small group of validators + clients

Some result as test 1 the peers count never is equal working time > 1h.
Test 3 - Testing validators + clients with other parameters

some of the peers have duplicated peer enode but network property have different ports (at first time i thought maybe is a docker-compose thing) but when i checked my aws network i also have duplicate enodes and this exists in different pods.

Additional Information (Add any of the following or anything else that may be relevant)

Besu version is 21 (this bug is present in older versions) I tested this to try solve the other issue  #2011
Linux l480 5.13.0-39-generic 20.04.1-Ubuntu SMP Thu Mar 24 16:43:35 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

i5, 16 GB RAM.

Thanks for the detailed report - this is a known issue that's currently in our backlog, we had a draft PR up but other priorities came up so it's pending further work, we'll use this issue and report back once progress is made.
Feel free to look at the draft pr in the meantime https://github.com/hyperledger/besu/pull/3383

For clarity @helderjnpinto we are closing this issue as a duplicate - this will be addressed as part of the work for https://github.com/hyperledger/besu/issues/2689


examples/rtp-forwarder: speed up udp packet forwarding

Description
Spawn a goroutine to forward udp packets in a for loop to reduce packet losing in receiver.
Reference issue
Fixes #1935

Hey @williamlsh
Thank you so much for the PR! Does this improve packet loss for you?
pion/webrtc caches inbound packets and putting them in a packetio.Buffer, so even if you don't read fast enough you shouldn't see lost packets.

Hey @williamlsh
Thank you so much for the PR! Does this improve packet loss for you?
pion/webrtc caches inbound packets and putting them in a packetio.Buffer, so even if you don't read fast enough you shouldn't see lost packets.

Hi, @Sean-Der
I didn't dive deeply into pion/webrtc internals, but in my test, it indeed reduces packet delay and missing in #1935. You can try it.
My guess is that track.Read, rtpPacket.Unmarshal, rtpPacket.MarshalTo and conn.Write, these io pipes put inside a for loop could really be inefficient, especially for udp connection. So I put the conn.Write inside a separate goroutine to speed up a little.


Announce when rippled exits

"It would be nice for rippled to announce when it finally exits. I currently run a command to ensure its gone: ps ax | grep rippled"

"Elvis has left the building..."


Automatically follow user's OS-level dark/light preference.

Previous Functionality
Earlier, there was just a switch in the SettingsScreen to enable or disable the Night mode.

https://user-images.githubusercontent.com/53913514/111917328-61cd1800-8aa5-11eb-870b-261acaa03c27.mov
Changes Done
This PR creates a new component called ThemeScreen and provides 3 options to a user for the theme in the Zulip mobile app.

Dark (ignore OS-level setting)
Light (ignore OS-level setting)
System Default (makes use of OS-level setting)

https://user-images.githubusercontent.com/53913514/111917352-845f3100-8aa5-11eb-90cc-a4c348048259.mov
PS - One useful shortcut to change the Appearance on iOS simulator is Cmd + Shift + A
Fixes: #4009

Thanks, @Gautam-Arora24! In particular, I appreciate your attention to the commit message! 🙂 See some comments below.
Also, there's a point mentioned at #4009 (comment) about changing the name for the 'default' theme to something else, like 'light', and Greg also mentions at #4009 (comment) that the naming for the dark mode/theme should use 'dark' instead of 'night'. Let's do those renames in a separate NFC commit or two; could go before or after the functional changes of the PR. Or it could go in a separate PR as a followup, if you'd prefer to focus on the more exciting changes in this PR (we should just be sure not to forget about it). 🙂

I will be making a separate followup PR for this part where I will need to change the current naming for the theme 🙂

Thanks @Gautam-Arora24 for your work on this! Closing, as I think subsequent developments have simplified what's needed here so that a fresh PR for this issue will look rather different: https://github.com/zulip/zulip-mobile/issues/4009#issuecomment-1248752538


Attempting to install, but the available python3 package in Ubuntu is too new?

dragonfire : Depends: python3 (< 3.6) but 3.6.5-3ubuntu1 is installed

@08server I think the only constraint we have is in here so is that the whole traceback or error output? Could you share more information?

`$ sudo dpkg -i dragonfire_1.0.0_amd64.deb
Selecting previously unselected package dragonfire.
(Reading database ... 396265 files and directories currently installed.)
Preparing to unpack dragonfire_1.0.0_amd64.deb ...
Unpacking dragonfire (1.0.0) ...
dpkg: dependency problems prevent configuration of dragonfire:
dragonfire depends on python3 (<< 3.6); however:
Version of python3 on system is 3.6.5-3ubuntu1.
dpkg: error processing package dragonfire (--install):
dependency problems - leaving unconfigured
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for man-db (2.8.3-2) ...
Processing triggers for desktop-file-utils (0.23-1ubuntu<IP_ADDRESS>) ...
Processing triggers for bamfdaemon (0.5.3+18.04.20180207.2-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-11ubuntu1) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Errors were encountered while processing:
dragonfire
`

@mertyildiran
$ sudo dpkg -i dragonfire_1.0.0_amd64.deb
Selecting previously unselected package dragonfire.
(Reading database ... 396265 files and directories currently installed.)
Preparing to unpack dragonfire_1.0.0_amd64.deb ...
Unpacking dragonfire (1.0.0) ...
dpkg: dependency problems prevent configuration of dragonfire:
 dragonfire depends on python3 (<< 3.6); however:
  Version of python3 on system is 3.6.5-3ubuntu1.

dpkg: error processing package dragonfire (--install):
 dependency problems - leaving unconfigured
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for man-db (2.8.3-2) ...
Processing triggers for desktop-file-utils (0.23-1ubuntu<IP_ADDRESS>) ...
Processing triggers for bamfdaemon (0.5.3+18.04.20180207.2-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-11ubuntu1) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Errors were encountered while processing:
 dragonfire

@08server probably because I packed .deb file with Python 3.6 machine. Please try to install Dragonfire with sudo ./install.sh (alternative installation method)

@mertyildiran Yeah, installed fine with that method... thanks


subscription order with native sdk

PayPal Android SDK Version
0.0.13
Environment
Both
Android Version & Device
No response
PayPal dependencies
implementation "com.paypal.android:paypal-native-payments:0.0.13"
Describe the bug
I am trying to integrate PayPal native payments with my android app but can't find a way to show subscription order payment (or recurring charges). It is not mentioned in the documentation. Is it supported or will be supported in the future?
To reproduce
Follow Demo app.
Expected behavior
Should allow me to process subscription payments by providing subscription id.
Screenshots
No response

👋 Hi @vivekfilo - thank you for using the PayPal Android SDK. Recurring billing will be introduced in a future version of the SDK.
Let's leave this GH issue open for a week or so to see if we have other immediate interest in this feature, which we can share with our product team.

Thankyou @scannillo 🙌🏼

Hello, I am also integrating PayPal in my android app using your SDK and I need to implement recurring payments, are there updates on the implementation of this feature?

Hi, I was trying to integrate in my android app the PayPal SDK but I see that the recurring payments or subscriptions feature is not yet available, do you know when this feature will be available or if it is already in development?

Some progress in this feature??

I also need this feature for a PayPal integration. I was very surprised to discover it was not already supported.

We hope to see progress in implemetation


ARXIVNG-1355 CU logo in header, ® in footer

Applies Cornell official identity to header.
Applies registered trademark language to footer.
Opportunistic cleanup on other elements: improved arXiv logo (and dropped .org), improved header spacing on mobile, added sticky footer styling (having the floating footer on short pages was bugging me).
Desktop

Mobile

We should just be sure to bring the removal of ".org" to the attention of anyone reviewing this, in the unlikely event it's problematic.

Approval and .org: good idea


Add javadoc for API

Description of new idea or improvement on existing one
There isn't any javadoc for method showed on API use example.
But, personnally, I would like to know if getJobsPlayer(Player) or getJobProgression(Job) can return null, or if I have to add the player to the job progression before getting it. And that's only example.
So, can you add Javadoc please ?

This would be an awesome feature!

This would be an awesome feature!


Out of Memory error when installed via Admin Console

Attempting to install via admin console. Core and all plugins at current rev. Error appears in red popup window after "Dependencies installed" popup:
Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 177506056 bytes) in /srv/www/[xxxmysite.comxxx]/vendor/symfony/http-client/Response/ResponseTrait.php on line 130 {"error":{"type":"Whoops\\Exception\\ErrorException","message":"Allowed memory size of 134217728 bytes exhausted (tried to allocate 177506056 bytes)","code":1,"file":"\/srv\/www\/[xxxmysite.comxxx]\/vendor\/symfony\/http-client\/Response\/ResponseTrait.php","line":130}}
End result, not installed. 😢 Re-attempting results in same. Tools/Reports shows green checks for all other config.
Server is nginx, "top" on the machine reports:
MiB Mem : 1978.855 total,  276.793 free,  646.664 used, 1055.398 buff/cache
MiB Swap: 2048.977 total, 1878.227 free,  170.750 used. 1085.695 avail Mem

Actually... issues via console install also:
 bin/gpm install page-stats
GPM Releases Configuration: Stable
Preparing to install Page Stats [v1.9.3]
  |- Downloading package...     0%PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 2094190 bytes) in /srv/www/[xxxmysite.comxxx]/vendor/symfony/http-client/Response/ResponseTrait.php on line 371
* stopped the pause stream!
* Callback aborted
* Connection #2 to host codeload.github.com left intact

@anders8 It seems to me it might be an issue with grav not being able to handle such a big package.
most people work around this by increasing php memory limit in their php.ini or by mnually installing it (just extract the package to user/plugins folder)

Installing it manually was ultimately successful, I have three recommendations:

Documentation, the "manual install" section doesn't mention that the "configuration" step is required, and while somewhat obvious, the order of those things (configure listed, first, then install) isn't the most streamlined.
Without the config done/there, a blurp of errors is the entirety of the tool page. Having a check to see that it was entirely missing would a big benefit.
I had to unzip the geo db manually. Everything quietly failed (logged no users/loads) until that was done. Same again, having a check that looks for the geo db before proceeding and warns of it's absence would be great.

Since all of these troubles (from the huge size causing install hassle, to manual install cascading to extra config issues) go back to the large size of the geo db, I humbly submit for consideration: make the geo an optional after-install download. If the plugin worked without it (just didn't have city/country) That would very much still give me 95% of the functionality I'm interested in.
Finally, THANK YOU for building this dude! 👍👍🌞

@anders8 want to try out 2.0.0 ?
I moved to a much smaller geolocation db (42Mb instead do the 300MB) all should work fine without exceeding memory limits

2.0.0 successfully installed via Admin Panel without any hassle. 👍 (And for any readers, no, I never changed any PHP memory limits.)

@anders8 perfect!
Let me know of you experience using the plugin, I build it for myself, so i'm not very sure of what other people find useful or not


pass update

Hi all,
I have been working for a while on a very similar system in the form of a pass extension, pass update. I just published on github my work so you can see the (still work in progress) program on the branch auto.
My system uses:

Selenium webdriver for easy browser interaction
YAML file for website support (called instance because the data are the same either it is gitlab.com or every gitlab instances). See my yaml doc
Full pass integration (well, it is a pass extension). It is actually the biggest part. Because the rotate system is quite simple. See updater.py
Provides a dedicated password store wrapper. (WIP)

I'd like to have comments from you guys. Also because it does not make sense to have two different (concurrent) program, it could be interesting to merge them (taking the best of the two world).

Took a look at your YAML docs. Neat idea, but I think it's better served by Python modules so that we can handle niche edge cases. Some of the providers we already support would be difficult to handle with your YAML spec (namecheap, for example).
I think we will need to use selenium to support some providers, and I'll be experimenting with this soon.
As for the future of your project, it might make sense to rejigger it into a project that integrates with pass-rotate to do the actual rotation and provides pass-specific functionality?

I think it's better served by Python modules so that we can handle niche edge cases.

It is unmaintainable to only have python code for the support of all the instance. Moreover, YML allow to handle special update process where for instance the website ask the user to go to a few different page. For more complex website it could still be possible to provide a python module.
Moreover, using YML file (and selenium) allow us to have a very simple update code (10 lines)

As for the future of your project, it might make sense to rejigger it into a project that integrates with pass-rotate to do the actual rotation and provides pass-specific functionality?

I'm perfectly agree on this point, pass-rotate provides the updater library, pass-update provides the integration with pass.
That said. If you need help with the update process, I'm here, moreover, the actual stage of pass-update could provide new idea...

It is unmaintainable to only have python code for the support of all the instance.

Why is that unmaintainable?

Moreover, using YML file (and selenium) allow us to have a very simple update code (10 lines)

Sure, but yours doesn't support a lot of use-cases. In my experience so far, the norm is for websites to be weird, not simple, and custom code would be required a lot. Also, using selenium for everything is overkill and will significantly slow down the process of rotating a lot of passwords at once. We should only resort to it for websites that are just too complicated to reverse engineer and do in Python (i.e. Amazon) - cases where it's doing a lot of work in JavaScript, has anti-bot measures (PayPal, Patreon), etc.

A suggestion for pass-update, by the way: currently if setting the user's password fails in execute, the new password will have already been set in pass.

I think the best way to fix that might be to switch away from using gen-password to set-password or something, then having pass-rotate decide what the new password should be. Then we can write complexity requirements into pass-rotate for example.

Why is that unmaintainable?

It is more complex (and therefore not KISS). An example, for the (simple) case of github:

With python module
With yml file

That said my system does not support complex workflow. But the yml parser should be able to be improved in order to support them. The worst case scenario would be to have a yml file that just contains a module: True to switch back to a python module. (could also support both).
For the selenium support only in complex case, you're right, but it is not incompatible with the use of yml file.

A suggestion for pass-update, by the way: currently if setting the user's password fails in execute, the new password will have already been set in pass.

This part is not finished, actually the system is not yet able to overwrite the password, and the code relating to that is commented. (only because the pass wrapper is not finished).

It is more complex (and therefore not KISS).

Only marginally so, but that still doesn't make it unmaintainable. What sounds unmaintainable to me is maintaining a selenium driver + YAML format that is extended to support enough situations to cover all of the weird edge cases we're definitely going to see.
The Python code is quite clean and approachable to people who know even an entry-level amount of Python, imo. It's perfectly maintainable. Adding a YAML system on top of this increases complexity where it matters and decreases complexity where it doesn't.

The YAML file is also effectively a DSL, which has a greater cognitive load on people learning the codebase so they can contribute.

You're right, unmaintainable is not the term (sorry for that). But because the purpose of this project is to support a lot of websites/instances. The use of YAML file provide an easier to contribute.

After, it is our work to find a YAML format complex enough to support complex case, and still easy to maintain.

I disagree. It makes it harder to contribute. I imagine that the average contributor already knows Python and already knows how to use requests, but does not know how to write one of your YAML files.

it is our work to find a YAML format complex enough to support complex case, and still reasonable easy to maintain

This is an oxymoron.

In my opinion, the use of yml file is the right tool to do the job.
That said it is your project although I did the same project on my side, yours is more advanced. Therefore I won't continue the automatic update part on mine. However, as said earlier I will continue pass update but on the pass extension side. Where pass-rotate provides the library, pass-update provides the integration with pass.

Sounds good. I think we've got everything we need from this issue.


predict failed with  tensorrtserver-1.12.0

Description
my model works well with tensorrtserver 1.7.0 but failed with tensorrtserver-1.12.0 client
Triton Information
client:  tensorrtserver-1.12.0
server: nvcr.io/nvidia/tritonserver:20.03-py3
Are you using the Triton container or did you build it yourself?
just use Triton container
To Reproduce

install tensorrtserver 1.7.0 predict , everything is ok
uninstall tensorrtserver 1.7.0 and install tensorrtserver-1.12.0 , predict failed

when run predict, will throw this error:
[ 0] input 'class/class_result' values must be specified as a list of numpy arrays or as a single
c_void_p (representing the shared memory handle) or as a tuple of c_void_p (representing the
shared memory handle) and list (representing the shape of the input tensor) - remaking context

We added some stricter checking to make sure the python APIs are being used correctly. It looks like your are not passing input tensor data as a list of numpy arrays. Can you share how you are invoking the inference run API in your code.

We added some stricter checking to make sure the python APIs are being used correctly. It looks like your are not passing input tensor data as a list of numpy arrays. Can you share how you are invoking the inference run API in your code.

yes, it's working now, thanks.


AutoModelForVision2Seq support

Recently onnx export for AutoModelForVision2Seq has been added: https://github.com/huggingface/transformers/pull/19254
I would be really interested in converting this topology to coreml. Is this feature planned for coreml as well?
Thanks!

Hi, I'm currently adding support for encoder-decoder models to the Core ML exporter.
In theory this should work already but there are some issues with coremltools that prevent these kinds of models from being converted correctly (or at all).
I'm actively working on getting this fixed because we do want to support Core ML versions of these models.


Create plugin-windocks-start-container.yml

Added yml file to ask for upload permission for windocks plugin

Added yml file to ask for upload permission for windocks plugin

Location of the GitHub plugin code is -
https://github.com/jenkinsci/windocks-start-container-plugin

@windocks-github It appears these are GitHub accounts, not Jenkins community accounts, so these permissions will not work. Please follow up with a fixed PR.


Add support for setting stream: true for EventSource responses

Problem
The current version of this library does not support setting stream: true for EventSource responses. This means that when a user makes a request to the API that expects an EventSource response, the library cannot properly parse the incoming events.
Solution
In addition to the existing create() function, add a new function stream() to build something like CompletionStream that implements the futures::Stream trait. Then, the user can use the following to call the API in streaming mode:
let chat_completion_stream = ChatCompletion::builder()
    .model(ModelID::Gpt3_5Turbo)
    .messages(vec![...])
    .stream()
    .unwrap();

while let Some(event) = chat_completion_stream.next().await {
    println!("Got {:?}", event);
}

Alternatives
No response

Perfect solution! It'll be implemented in the next alpha :)

Perfect solution! It'll be implemented in the next alpha :)

I was wrong ;-;
I now remember why I put off implementing this feature before, haha-

That would be great! Feel free to make a fork and draft a pull request :)
I'll try to not let you do all of it-


Updated code and fixed Style errors

Category

[x] Content fix

Related issues

fixes #8395

What's in this Pull Request?
Updated code and fixed Style errors

Docs Build status updates of commit 9b4830e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/spfx/web-parts/get-started/using-microsoft-graph-apis.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Explore Disel framework

Explore Disel framework.

Following is an overview of the DiseL framework, as of version 2.3 (November 2022).
Disel is a framework for implementation and compositional machine-assisted verification of distributed systems and their clients. The proof-of-concept implementation of the framework is built on top of Coq. The framework provides both high-level programming constructs and low-level communication primitives. The system-level logic and properties of distributed system components are formally specified as protocols separately from a specific implementation and their properties are proven in an abstract model, whereby well-typed implementations are guaranteed to satisfy the protocol properties, thanks to Diesel's dependent type system. The logic provided by the framework allows composing system components elaborating and preserving protocol invariants. Diesel focuses on verification of safety invariants under non-Byzantine failures, leaving reasoning about liveness properties for future work. Diesel programs can be extracted into OCaml code, linked with a trusted shim, and executed.
Model
Distributed systems in Diesel consist of nodes communicating through asynchronous exchange of messages, which can be lost or reordered. Each node, concurrently with other nodes, executes a Diesel program, which implements a composition of components. The high-level interfaces between components are specified as abstract protocols, whose properties are proven separately.
Protocols are basic specification units in Diesel. They are defined as state-transition systems, where each protocol's send and receive transitions synchronize the exchange of messages with changes in the protocol-specific piece of node's local state. Diesel programs are composed of protocol transitions.
The whole system is modeled in terms of the global state, which is a collection of protocol-specific statelets. Each statelet represents a protocol-specific component, consisting of a "message soup" and per-node local states of the protocol.
The message soup models the current state and the history of the network. To simplify reasoning about past events in Diesel's model, messages are never removed from the soup, instead they are marked either as active or consumed. Protocol-specific local state-spaces are disjoint, though protocols can be coupled via inter-protocol behavioral dependencies called send-hooks, which allow restricted logical access to other protocol's state.
Structure and Notation
Distributed protocols in Diesel are first specified declaratively in a high-level abstract model, and their properties are proven using Coq's machine-assisted verification facilities. Then using Diesel's lower-level primitives, the specifications can be implemented as effectful programs, whose correctness is proven using a type-based machine-assisted verification method.
High-level abstract protocol specifications are defined in terms of state-space coherence predicates and send/receive transitions. Each send or receive transition corresponds to a particular message type and represents the change to the node's local state, which happens upon sending or receiving of the corresponding message, respectively. Each state transition is guarded by a precondition predicate w.r.t. the node's local state. Preconditions in send-transitions can be arbitrary predicates that must be satisfied whenever the node actively decides to send a message, whereas preconditions of receive-transitions must be decidable because the node has to react to any valid received message.
For implementing protocol specification, Diesel provides a domain-specific language, embedded shallowly into Coq, that extends Coq's specification language Gallina, which does not support effectful statements and general recursion, with effectful commands (actions), such as sending and receiving messages, reading from local state, monadic sequential composition, and general recursion. For message sending and receiving actions, Diesel provides transition wrappers, which lifts low-level operations on the networking layer to the level of well-typed program primitives corresponding to the protocol specification. Sending and receiving messages with those primitives in Diesel programs only happens when corresponding preconditions are satisfied and, as a result, the local state is modified according to the corresponding transition of the protocol specification.
Diesel programs and their fragments are assigned types corresponding to the protocol specification in higher-order separation-style Hoare logic. Well-typed programs are guaranteed to be correct by construction w.r.t. the protocol specifications. The notation {x .. y}, DHT [this, W] (p, q) represents a Hoare type of a program fragment, where x ... y are free logical variables, this denotes the local node identifier, W is the world (a collection of protocols with inter-protocol dependencies), p and q are pre- and post-conditions, respectively. The pre/post-conditions are encoded as Coq functions fun s => ... and fun res s' => ..., correspondingly, which are parametric predicates, where s and s' stands for pre- and post-states, and res is the result of computation. Program fragments can only be combined so that the pre-/post-conditions encoded in their Hoare types agree.
Protocol specifications in Diesel can be generic and parameterized. The generic protocol specifications with their proven invariants can be used in composition. Diesel provides mechanisms to establish stronger properties of generic protocols and their combinations. The protocol combinator ProtocolWithIndInv allows elaborating a protocol by strengthening it with additional inductive invariants. The mechanism of inter-protocol hooks allows restricting protocols with additional pre-conditions on certain send-transitions depending on the logical state of another protocol.
 It only supports sending messages to a single destination at a time, with best effort delivery and no guarantee about the order of message delivery. The networking functionality is implemented in OCaml in the trusted shim, which extracted Diesel programs are compiled with.
Tracing and Controlling Execution
Disel doesn't seem to specifically provide any functionality for tracing or controlling protocol execution.


coach-student-objects

The tokens are different because I regenerated them. Maybe we should regenerate one more time after the merge so any branch from this point on is working with the same tokens.

agreed, let's regenerate those test tokens

one other thing I noticed -- in the get_details method we have @teamstudents.org hard coded.  let's turn that into a parameter (email_domain, maybe).  I think that will be a common practice -- stripping out personal emails and using a school-specific one.

:dancers:


The same state is printed more than once.

I run examples/eos-transfers/ and got the results like below:
State updated:
 {
  "volumeBySymbol": {
    "EOS": 200
  },
  "totalTransfers": 1,
  "indexState": {
    "blockNumber": 9824478,
    "blockHash": "0095e8de6fb6c6cd022963ab5d34f1ede76d5015e9b4c5e2046df621ceccc294"
  }
}
State updated:
 {
  "volumeBySymbol": {
    "EOS": 2037.2462999999998
  },
  "totalTransfers": 4,
  "indexState": {
    "blockNumber": 9824585,
    "blockHash": "0095e949ff4b903ae495895510e4a03cbc406cf4af3c6a6ff73f056d65067417"
  }
}
State updated:
 {
  "volumeBySymbol": {
    "EOS": 2037.2462999999998
  },
  "totalTransfers": 4,
  "indexState": {
    "blockNumber": 9824585,
    "blockHash": "0095e949ff4b903ae495895510e4a03cbc406cf4af3c6a6ff73f056d65067417"
  }
}
State updated:
 {
  "volumeBySymbol": {
    "EOS": 2037.2462999999998
  },
  "totalTransfers": 4,
  "indexState": {
    "blockNumber": 9824585,
    "blockHash": "0095e949ff4b903ae495895510e4a03cbc406cf4af3c6a6ff73f056d65067417"
  }
}
State updated:
 {
  "volumeBySymbol": {
    "EOS": 2037.2472999999998
  },
  "totalTransfers": 5,
  "indexState": {
    "blockNumber": 9824595,
    "blockHash": "0095e953419c71e69787aa35dfd91998357c82ddfb70b6886a2553091dd9d8ca"
  }
}

This is because that handleActions() in src/demux/handlers/AbstractActionHandler.ts first processes the actions in runUpdaters() and then processes them in runEffects(). So if a block contains more than one monitored actions, the updater gets called a few times and so does the state, before the effect is called.
Is this an expected behavior (so that the user of demux-js should be careful about their usage) or an issue of demux-js?

Thank you for your answer. Understood.


v0.7.1

Proposed new release with the fixes needed to support testing edx-platform via Docker containers.

@edx/testeng This is ready for review.

:+1:


Minor gramatical fix.

This commit makes a very minor change fixing the grammar in a sentence.
Problem:

There's a grammar error in a sentence "A ConfiguredBundle is a bundle that require a configuration "
Solution:

"require" -> "requires"
Result:

Thanks!


The Color Picker extension reported an error

VSCode Version: 1.45.1
OS Version: macOS Catalina 10.15.1

Steps to Reproduce:

Install Color Picker extensions.
Normally, the mouse hover would activate the palette, but the palette was not activated under the vue file, and there were no color blocks in front of the color code. Then I tried to execute the Alt +c and Alt +c p commands and the error was reported as shown above.
I reported the problem to the Color Picker author, but the Color Picker author said I should report the problem to the VS Code team

https://github.com/anseki/vscode-color/issues/99

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

@sandy081 this looks like an extension installation corruption issue.

I went through the original issue user reported https://github.com/anseki/vscode-color/issues/99 and user is complaining about the colour picker we support in VS Code and it is nothing to do with the extension.

Not sure who owns colour picker.

The Vue extension should contribute the color info otherwise the color picker won't work.


Generate a page's navigation links one time and re-use in the navbar / sidebar

Context
Right now we have have this function to generate either the navbar navigation or the sidebar navigation:
https://github.com/pydata/pydata-sphinx-theme/blob/06a35adef9bd23ccd15ca7f31114472e483ef662/src/pydata_sphinx_theme/__init__.py#L200-L209
And we then re-use it in a few places to do the actual HTML generation:

In the navbar: https://github.com/pydata/pydata-sphinx-theme/blob/e1d40097204b3617740c9f86112ab0071654d8d2/src/pydata_sphinx_theme/theme/pydata_sphinx_theme/components/navbar-nav.html (two times, once for navbar, once for sidebar)
In the sidebar: https://github.com/pydata/pydata-sphinx-theme/blob/f57ca0d33fc1ce3d8547a7ff066c7c3fd79af361/src/pydata_sphinx_theme/theme/pydata_sphinx_theme/layout.html

It seems like this function in particular is time-consuming, and I wonder if this is true regardless of whether it's the sidebar/navbar variety. E.g.:

https://github.com/pydata/pydata-sphinx-theme/issues/855

Idea
If indeed this function is what is causing all of the slowness, how about instead of calling it multiple times, we generate the full HTML structure of the page's toctree one time, we store it in the page context as a beautifulsoup object, and then we re-use that object in building the actual sidebar / navbar HTML.
I think this might be a way to reduce redundant computation and maybe speed things up, it also feels a bit simpler to me.

I think that this issue is potentially a simpler way to resolve this problem in the long term:

https://github.com/pydata/pydata-sphinx-theme/issues/876

I realized that the proposal here will actually be more complex than I originally thought, because the caption elements aren't generated at the 2nd-and-below level.

ref: https://github.com/sphinx-doc/sphinx/issues/10697


logging format errors

There are a few spots that use logging.exception, passing two arguments, but no format.
This causes the std library logging to fail:
File "/usr/local/lib/python3.12/logging/__init__.py", line 392, in getMessage
msg = msg % self.args
~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting

an example: producer.py:619 has:
    async def _timer(self):
        logger.debug("Background timer task created")
        try:
            while not self._close_called:
                logger.debug("Background timer task looping for ingestion")
                await asyncio.sleep(0.5)
                for stream in self._buffered_messages:
                    try:
                        await self._publish_buffered_messages(stream)
                    except BaseException as exc:
                        logger.exception("producer _timer exception: ", {exc}) <<<
        except Exception as ex:
            logger.exception("exception in _timer: " + str(ex))

if this exception is hit, a 2nd exception is thrown by the logger.

@donbowman
I think this one https://github.com/qweeze/rstream/pull/215 should solve the issues but we haven't released yet a new version of the client. I can make a new release for you, did you notice any another spot not covered by https://github.com/qweeze/rstream/pull/215 ?

those are the ones i noted. Thanks! i guess i should have looked harder in the closed PR, just looked in issues.

I tried to publish 0.20.7 including this fix but apparently there is something wrong during the publication on pypi: https://github.com/qweeze/rstream/actions/runs/12046209703
@qweeze Do you have any idea? maybe something wrong with the uploading token?

Hmm I'm not sure. My guess is that has something to do with this error:
Certificate's Build Config URI
         (<Extension(oid=<ObjectIdentifier(oid=<IP_ADDRESS>.4.1.57264.1.18,
         name=Unknown OID)>, critical=False,
         value=<UnrecognizedExtension(oid=<ObjectIdentifier(oid=<IP_ADDRESS>.4.1.5726
         4.1.18, name=Unknown OID)>,
         value=b'\x0cYhttps://github.com/qweeze/rstream/.github/workflows/publis
         h-release.yaml@refs/tags/0.20.7')>)>) does not match expected Trusted
         Publisher (publish-pypi.yaml @ qweeze/rstream)

Is that \x0cY supposed to be there? 🤔

HI @donbowman we were finally able to release a new version of rstream containing this improvement. If you can do some tests on this!


Feature/game with responsabilities of board

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.8%) to 81.954%

Totals

Change from base Build<PHONE_NUMBER>:
0.8%

Covered Lines:
604

Relevant Lines:
737

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.8%) to 81.954%

Totals

Change from base Build<PHONE_NUMBER>:
0.8%

Covered Lines:
604

Relevant Lines:
737

💛  - Coveralls


Skip execution of Actions on ACKNOWLEDGED Alerts for Bucket-Level Monitors

Signed-off-by: Mohammad Qureshi<EMAIL_ADDRESS>Issue #, if available:
Description of changes:
Filter out Acknowledged Alerts when executing Actions for Bucket-Level Monitors
CheckList:
[x] Commits are signed per the DCO using --signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #158 (fbd74b8) into main (0eed799) will increase coverage by 0.17%.
The diff coverage is 61.90%.

@@             Coverage Diff              @@
##               main     #158      +/-   ##
============================================
+ Coverage     78.57%   78.75%   +0.17%
- Complexity      211      214       +3
============================================
  Files           172      172
  Lines          6886     6905      +19
  Branches        888      897       +9
============================================
+ Hits           5411     5438      +27
+ Misses          996      985      -11
- Partials        479      482       +3

Impacted Files
Coverage Δ

...in/kotlin/org/opensearch/alerting/MonitorRunner.kt
71.42% <54.54%> (+0.05%)
:arrow_up:

...ain/kotlin/org/opensearch/alerting/AlertService.kt
76.58% <70.00%> (-0.07%)
:arrow_down:

.../kotlin/org/opensearch/alerting/core/JobSweeper.kt
71.72% <0.00%> (-0.53%)
:arrow_down:

...n/kotlin/org/opensearch/alerting/TriggerService.kt
82.92% <0.00%> (ø)

...ing/model/destination/DestinationContextFactory.kt
66.66% <0.00%> (ø)

...e/action/node/ScheduledJobsStatsTransportAction.kt
75.51% <0.00%> (ø)

...selectorext/BucketSelectorExtAggregationBuilder.kt
55.90% <0.00%> (+1.57%)
:arrow_up:

.../opensearch/alerting/core/schedule/JobScheduler.kt
76.38% <0.00%> (+6.94%)
:arrow_up:

... and 2 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 0eed799...fbd74b8. Read the comment docs.


For #943, created jacoco profile.

For #943, created jacoco profile.

Job #967 is now in scope, role is REV

This pull request #967 is assigned to @fabriciofx/z, here is why; the budget is 15 minutes, see §4; please, read §27 and when you decide to accept the changes, inform @paulodamaso/z (the architect) right in this ticket; if you decide that this PR should not be accepted ever, also inform the architect; this blog post will help you understand what is expected from a code reviewer; there will be no monetary reward for this job

Codecov Report

Merging #967 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #967      +/-   ##
============================================
- Coverage     72.31%   72.29%   -0.03%
+ Complexity      972      971       -1
============================================
  Files           224      224
  Lines          4905     4905
  Branches        364      364
============================================
- Hits           3547     3546       -1
  Misses         1209     1209
- Partials        149      150       +1

Impacted Files
Coverage Δ
Complexity Δ

src/main/java/org/takes/http/MainRemote.java
54.09% <0%> (-1.64%)
6% <0%> (-1%)

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 df1f2f1...96b2722. Read the comment docs.

@fabriciofx ping

ping @fabriciofx

@paulodamaso could you review this PR?

@oridan Let's give some more time do @fabriciofx

@fabriciofx Please review this commit

@oridan The PR looks good but I think that we won't execute the jacoco profile in CI that way. Please fix the configuration files for CI providers adding the profile jacoco to be executed too.

@paulodamaso/z not enough funds available in the project, can't set budget of job #967, see §21; @paulodamaso/z will get no money on completion; in order to fix that, add funds to the project and assign the job again

Manual assignment of issues is discouraged, see §19: -5 point(s) just awarded to @paulodamaso/z

@paulodamaso It is already configured in .travis.yml (https://github.com/yegor256/takes/blob/458b51f753d5e82398f1e4081850ca28dae17dd0/.travis.yml#L12)

@oridan Thanks

@rultor merge

@rultor merge

@paulodamaso OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@paulodamaso Done! FYI, the full log is here (took me 24min)

Job #967 is not in the agenda of @paulodamaso/z, can't retrieve data and time of add

Job was finished in 20 hours, bonus for fast delivery is possible (see §36)

The job #967 is now out of scope

Order was finished: +20 point(s) just awarded to @paulodamaso/z


DBT tag glossaries

Is your feature request related to a problem? Please describe.
Currently, the DBT importer can only import arbitrary tags. However, it would be great if it can at least link to already pre-created glossary entries
Describe the solution you'd like

similar to the tags allow to link to a pre-existing glossary entry
ideally, allow to create glossary entries

yes something like this.
ideally with an extension where descriptions in DBT format which are referenced from Markdown files with an ID could auto-generate these glossaries (if maybe placed in a special folder of the DBT project).

I think the best option is to use the meta field with an openmetadata key in the dbt yaml file. This would allow for linking an already existing glossary term or define a new one, e.g.:
    tables:
      - name: DATA_TABLE
        description: Data ,
        columns:
          - name: gross_revenue
            description: column description
            meta:
              openmetadata:
                - type: GlossaryTerm
                  fullyQualifiedName: BusinessGlossary.GrossRevenue

Using dbt's tags could work for simple linking, with some sort of format requirement, e.g., tags: ["omd::glossary::BusinessGlossary.GrossRevenue"]

It would be great if glossary terms could also be created based on the tags inserted here

Fixed by https://github.com/open-metadata/OpenMetadata/pull/15833


Review npm dependencies

[x] Since we depend on bluebird, there's no reason to also depend on promise
[x] fs-extra means we don't need mkdirp
[x] There's no good reason to depend on underscore
[x] object-values is literally 11 lines of code and provides no useful benefit
[x] I'm pretty sure datauri usage is unnecessary and can be replaced with one line of code.

There might be more, but this is good low hanging fruit for anyone looking to contribute.

object-values was removed in #162.

Tasklist is complete.
Please reopen if other libraries should be replaced.


Update Tesla.Middleware.Logger for Elixir 1.11+

Elixir 1.15 is now warning whenever the :warn level is used with the
recommendation of using :warning instead. The Logger middleware uses
Logger.log/3, so a compile-time warning would not be shown, only
a runtime warning.
This change adds :warning as a valid configuration option for Tesla
log level and automatically translates :warn or :warning to the
appropriate level (:warn for Elixir 1.10.x, :warning for Elixir
1.11.x or higher, as Logger.warning/2 was introduced in 1.11.0).

@teamon how do you feel about requiring elixir 1.11?


Tests for detection features

We should add all the environment variables you added for detection to https://github.com/appview-team/appview/blob/master/docs/Library.md


Converting form encoded parameters to an object

I was working on an annotated service method to handle POST application/x-www-form-urlencoded, which means the body of the request looks like foo=1&bar=2.
My initial idea was to define a request object and annotated method like this:
public class MyRequest {
    String foo;
    String bar;
}

@Post("/")
public String myPost(@RequestObject MyRequest request) {
    return request.foo;
}

But it looks like Armeria only deserializes the request like this if the specified content type is JSON, so the solution was to use QueryParams or annotate MyRequest fields with @Param.
I was wondering if Armeria could add support for converting the parameters in this case as well or not. Perhaps the use case is very low (even in our case it's only one endpoint, which we'll most likely replace), so this might be feature creep. What do you think?

I agree with you but we need to define something that's not confusing to our users. What do you think about introducing an annotation which adds a RequestConverterFunction? e.g.
@Post("/query")
@Form // Adds FormRequestConverterFunction
public String post(MyRequest request) {
  ...
}

@Get("/get")
@Form // Could also work for GET requests, sourcing from the query string in path
public ... { ... }

How do we map the query parameters into MyRequest? I think it'd be awesome if we can use Jackson for this. For example, it'd be nice if we can tell Jackson to create MyRequest, just like it received a JSON object. For example, if query string is foo=bar&alice=bob, we could feed Jackson with a JsonNodethat represents{ "foo": "bar", "alice": "bob" }`. WDYT?


Publish a tag

I was wondering if a tag could be created for a commit at 88b3a1901e03c7d370d33085363ffd9655e5a888 (or later). I'm using docformatter with pre-commit and I can point my config to use docformatter at 88b3a1901e03c7d370d33085363ffd9655e5a888, but if I could instead point to a tag, then pre-commit autoupdate would be able to pull in new updates as new releases/tags are published. Thanks!

Sure, tagged and uploaded to PyPI.

Thanks!


[Bug] Cloned an app and the original one isn't available.

Description
Steps to reproduce the behaviour:
Add steps to reproduce this behaviour, include console / network logs & screenshots

Go to '...'
Click on '....'
Scroll down to '....'
See error

Important Details

Version: [Cloud / Self-Hosted vx.x]

@trishaanand this is related to the issue uolo faced

@Nikhil-Nandagopal : Yes. But unfortunately haven't been able to reproduce this.

@trishaanand closing for now. Can we add some logs for self-hosted instances? Maybe we can just write our console logs to a file?
@mohanarpit

Reopening this issue because it was reproduced on the cloud deployment of Appsmith.


bufferTime operator is impure

Bug Report
Current Behavior
import { interval, Subject } from 'rxjs';
import { bufferTime, takeWhile, tap } from 'rxjs/operators';

const subject = new Subject<number>()

interval(100).pipe(tap(n => subject.next(n))).subscribe();

const log = batch => {
  // setTimeout(()=>{
    subject.next(99)
  // })
  console.log(batch)
}

const source = subject.pipe(
  takeWhile(x => x < 100),
  bufferTime(1000),
  tap(batch => log(batch))
);

source.subscribe();

99 shows up at end of each array that bufferTime emits, it should not be possible for an operator that comes later to modify a value a previous operator emits. It should show up at the start of the 2nd buffer onwards.
Discovered while unit testing code that pushes onto a buffer in a jest mock callback that was being used in a side effect, after a bufferTime().
Environment

Runtime: both node / chrome
RxJS version: 6.5.4

Possible Solution
don't mutate

Yeah, this is a bug. buffer doesn't have this problem, as it assigns a new array to the subscriber's property before nexting:
https://github.com/ReactiveX/rxjs/blob/82bcc2179b8aefc08342a419ccc549080c358a64/src/internal/operators/buffer.ts#L84-L86
bufferTime does not. This code needs to be rearranged:
https://github.com/ReactiveX/rxjs/blob/82bcc2179b8aefc08342a419ccc549080c358a64/src/internal/operators/bufferTime.ts#L212-L218

Could I volunteer to tackle the fix & create the PR?

Could I volunteer to tackle the fix & create the PR?

Sure. If you could create a PR that contains two commits - a failing test that reproduces the problem; and the fix - that would be great. Thanks.

This is done. It was a bit more complex than just swapping the order of statements in the code snippet you posted above, unfortunately. I can see some refactoring I'd like to discuss separately after I get my feet more wet, will post more follow up Qs on the PR.


fix TypeError: matrixBridge.opts.registration.getSenderLocalpart is not a function

fix TypeError: matrixBridge.opts.registration.getSenderLocalpart is not a function
#53

Thank you very much for fixing the CI tests to fit the new typing system!
It helps our codebase to continue CI/CD, appreciate it!


Pin to<EMAIL_ADDRESS>for now

Sounds like this will fix #859.

Hopefully https://github.com/lerna/lerna/pull/507 will merge soon and we can get back on Lerna.


Misspelling across the repo

Signed-off-by: kanav-raina<EMAIL_ADDRESS>Issue #
Misspelling across the repo
Changes
Changed Accord Protocol to Accord Project
Flags

Related Issues

Issue #
Pull Request #

Coverage remained the same at 88.676% when pulling 43e0d4973bbdfbe510dc5ccc22494bc7b757c3a4 on kanav-raina:patch-1 into 2f850724e0da4ad0d0a54f483929a5b57784b688 on accordproject:master.


[SMALLFIX][k8s] Add template for persistent volume

The template can be used for requesting NFS volumes for journal
Docker entrypoint has added commands, e.g, for starting master without format

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17669/
Test PASSed.

@aaudiber

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17676/
Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17682/
Test PASSed.

Merged build finished. Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17690/
Test PASSed.

@aaudiber Addressed all except one comment. Let me know.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17701/
Test PASSed.


Keyboard shortcut for tabs

Is it possible to add in the shortcut functionality to go back and forth between two recently visited tabs? For instance, if previous tab is A and current tab is B, then a keyboard shortcut would enable users to go B -> A and, when pressed a second time, go A -> B. There are some extensions available in Chrome App store, but the one I used had performance issue and froze a lot.

Thanks for using this extension.
There is no direct API to get the last active tab in Chrom: https://developers.chrome.com/extensions/tabs
But the feature is doable, there are a few blockers:

[] The popup implementation restricts the App to track all tabs information in Chrome, we have to move to background.html implementation to keep track all tabs, #17
[] Once we have background page, we can keep tracking the tabs information in entire lifecycle #19
[] Add shortcuts work on all pages #18

Fixed in a50426a687f052d7dff79d0e22dfcbd4f5bca156


Numeric scalar variable attributes (including fill_value, scale_factor, add_offset) are 1-d with h5netcdf backend, 0-d with netcdf4 backend, which may trigger ValueError: non-broadcastable output on application

What happened:
When I try to pass a file object opened using fsspec.open, an attempt to access data results in ValueError: non-broadcastable output operand with shape () doesn't match the broadcast shape (1,).  The MCVE (see below) results in:
Traceback (most recent call last):
  File "mwe89.py", line 4, in <module>
    print(ds["Rad"][400, 300])
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/common.py", line 134, in __repr__
    return formatting.array_repr(self)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/formatting.py", line 479, in array_repr
    short_data_repr(arr),
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/formatting.py", line 464, in short_data_repr
    return short_numpy_repr(array)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/formatting.py", line 440, in short_numpy_repr
    array = np.asarray(array)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/numpy/core/_asarray.py", line 83, in asarray
    return array(a, dtype, copy=False, order=order)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/common.py", line 131, in __array__
    return np.asarray(self.values, dtype=dtype)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/dataarray.py", line 569, in values
    return self.variable.values
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/variable.py", line 510, in values
    return _as_array_or_item(self._data)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/variable.py", line 272, in _as_array_or_item
    data = np.asarray(data)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/numpy/core/_asarray.py", line 83, in asarray
    return array(a, dtype, copy=False, order=order)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/indexing.py", line 685, in __array__
    self._ensure_cached()
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/indexing.py", line 682, in _ensure_cached
    self.array = NumpyIndexingAdapter(np.asarray(self.array))
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/numpy/core/_asarray.py", line 83, in asarray
    return array(a, dtype, copy=False, order=order)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/indexing.py", line 655, in __array__
    return np.asarray(self.array, dtype=dtype)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/numpy/core/_asarray.py", line 83, in asarray
    return array(a, dtype, copy=False, order=order)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/core/indexing.py", line 560, in __array__
    return np.asarray(array[self.key], dtype=None)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/numpy/core/_asarray.py", line 83, in asarray
    return array(a, dtype, copy=False, order=order)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/coding/variables.py", line 70, in __array__
    return self.func(self.array)
  File "/data/gholl/miniconda3/envs/py38b/lib/python3.8/site-packages/xarray/coding/variables.py", line 220, in _scale_offset_decoding
    data *= scale_factor
ValueError: non-broadcastable output operand with shape () doesn't match the broadcast shape (1,)

What you expected to happen:
I expect the data access to work similarly to when I open a local file without fsspec.
Minimal Complete Verifiable Example:
import fsspec, xarray
with fsspec.open("s3://noaa-goes16/ABI-L1b-RadF/2019/321/14/OR_ABI-L1b-RadF-M6C01_G16_s20193211440283_e20193211449591_c20193211450047.nc", mode="rb", anon=True) as f:
    ds = xarray.open_dataset(f)
    print(ds["Rad"][400, 300])

Anything else we need to know?:
This appears to be a consequence of the fill_value, scale_factor, and add_offset being 1-D instead of scalar when a file is opened with the h5netcdf engine; see this comment and this comment for details.
I've also tried to use fsspecs filecache as suggested here, or to pass backend="h5netcdf", but in both cases the result is identical.
I don't know if this is expected to work at all, so I don't know if this is a bug report or a feature request, but it would be very nice if it would work.
Environment:
I've confirmed this issue installing xarray and fsspec from latest master, which means xarray 0.16.2.dev11+gf821fe20 and fsspec 0.8.3+13.g974e9c9.

I just tested this with some more combinations:

decode_cf=True, mask_and_scale=False, everything seems fine.
decode_cf=False, mask_and_scale=True, everything seems fine.
decode_cf=True, mask_and_scale=True results in the ValueError and associated traceback.

Probably related: when reading an open file through a file system instance, the _FillValue, scale_factor, and add_offset are arrays of length one.  When opening by passing a filename, those are all scalar (as expected):
import xarray
from fsspec.implementations.local import LocalFileSystem
fn = "/data/gholl/cache/fogtools/abi/2017/03/14/20/06/7/OR_ABI-L1b-RadF-M3C07_G16_s20170732006100_e20170732016478_c20170732016514.nc"
ds1 = xarray.open_dataset(fn, decode_cf=True, mask_and_scale=False)
print(ds1["esun"].attrs["_FillValue"])
print(ds1["Rad"].attrs["scale_factor"])
with LocalFileSystem().open(fn) as of:
    ds2 = xarray.open_dataset(of, decode_cf=True, mask_and_scale=False)
    print(ds2["esun"].attrs["_FillValue"])
    print(ds2["Rad"].attrs["scale_factor"])

Result:
-999.0
0.001564351
[-999.]
[0.00156435]

I strongly suspect that this is what causes the ValueError, and in any case it also causes downstream problems even if opening succeeds as per the previous comment.

Some further digging shows it's due to differences between the h5netcdf and netcdf4 backends:
import xarray
fn = "/data/gholl/cache/fogtools/abi/2017/03/14/20/06/7/OR_ABI-L1b-RadF-M3C07_G16_s20170732006100_e20170732016478_c20170732016514.nc"
with xarray.open_dataset(fn, decode_cf=False, mask_and_scale=False, engine="netcdf4") as ds:
    print(ds["esun"].attrs["_FillValue"])
    print(ds["Rad"].attrs["scale_factor"])
with xarray.open_dataset(fn, decode_cf=False, mask_and_scale=False, engine="h5netcdf") as ds:
    print(ds["esun"].attrs["_FillValue"])
    print(ds["Rad"].attrs["scale_factor"])

Results in:
-999.0
0.001564351
[-999.]
[0.00156435]

However, a simple `xarray.open_dataset(fn, engine="h5netcdf") still fails with ValueError only if passed an open file, so there appear to be still other differences apart from the dimensionality of the variable attributes depending on backend.

My last comment was inaccurate.  Although the open succeeds, the non-scalar scale factor does trigger failure upon accessing data (due to lazy loading) even without any open file:
import xarray
fn = "/data/gholl/cache/fogtools/abi/2017/03/14/20/06/7/OR_ABI-L1b-RadF-M3C07_G16_s20170732006100_e20170732016478_c20170732016514.nc"
with xarray.open_dataset(fn, engine="h5netcdf") as ds:
    print(ds["Rad"][400, 300])

The data file is publicly available at:
s3://noaa-goes16/ABI-L1b-RadF/2017/073/20/OR_ABI-L1b-RadF-M3C07_G16_s20170732006100_e20170732016478_c20170732016514.nc

Interestingly, the problem is prevented if one adds
ds.load()
before the print statement.

The ds.load() prevents the traceback because it means the entire n-d data variable is multiplied with the 1-d scale factor.  Similarly, requesting a slice (ds["Rad"][400:402, 300:302]) also prevents a traceback.  The traceback occurs if a single value is requested, because then Python will complain about multiplying a scalar with a 1-d array.  I'm not entirely sure why, but would be a numpy issue:
In [7]: a = np.array(0)

In [8]: b = np.array([0])

In [9]: a * b
Out[9]: array([0])

In [10]: a *= b
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-10-0d04f348f081> in <module>
----> 1 a *= b

ValueError: non-broadcastable output operand with shape () doesn't match the broadcast shape (1,)

According to The NetCDF User's Guide, attributes are supposed to be vectors:

The current version treats all attributes as vectors; scalar values are treated as single-element vectors.

That suggests that, strictly speaking, the h5netcdf engine is right and the netcdf4 engine is wrong, and that other components (such as where the scale factor and add_offset are applied) need to be adapted to handle arrays of length 1 for those values.

other components (such as where the scale factor and add_offset are applied) need to be adapted to handle arrays of length 1 for those values.

Great diagnosis @gerritholl . This could be fixed here (I think): https://github.com/pydata/xarray/blob/333e8dba55f0165ccadf18f2aaaee9257a4d716b/xarray/coding/variables.py#L245-L263 Are you up for sending in a PR?

I can try to fix this in a PR, I just need to be sure what the fix should look like - to change the dimensionality of attributes (has the potential to break backward compatibility) or to adapt other components to handle either scalars or length 1 arrays (safer alternative, but may occur in more locations both inside and outside xarray, so in this case perhaps a note in the documentation could be in order as well).  I don't know if xarray thrives for consistency between what the different engines expose on opening the same file.

adapt other components to handle either scalars or length 1 arrays

I think we can make this change safely in the decoding machinery. As you point out, it will be backwards compatible.

I agree, xarray's decoding should be robust as to whether these attributes are scalars or vectors of length one.
This should probably be considered a bug in h5netcdf, which I guess should the assumption from netCDF4-python that vector attributes of length 1 are scalars.
(h5netcdf can store true scalar attributes in HDF5 files, but it's probably better to be consistent with netCDF)


Add GitHub actions CI workflow

Using GitHub actions has been a massive success, so I thought of contributing my workflow file.

No worries. You can try this workflow yourself in actions tab of your repo.

Nice

It should show the key in the summary over here
https://github.com/rzc0d3r/ESET-KeyGen/actions/runs/7070842943

Also in case you use it for your personal use, make sure you delete the run incident otherwise your key shall be publically visible.

Yes, I have seen this. Is it possible to add a function to the script that will change the date of the last test in README.md?

It is possible. I'll try to get it done.

We have 2 options here.
One: edit this workflow. This will cause the workflow to be restricted to your repo and if anyone forks this repo. Other repos won't be able to use it.
Second: Create a new workflow, named say test, which will also generate a key and an account, and update the time as well.
in the second case, you also have an option to either generate 1 or more license key, or choose to generate a particular number on every run, as per your wish. In this case, do you also want a summary?
What do you want?

In 2, do you want to hardcode it to generate 1 account and 1 license key every time, or ask you the number of accounts and licenses to be generated

We have 2 options here.
One: edit this workflow. This will cause the workflow to be restricted to your repo and if anyone forks this repo. Other repos won't be able to use it.
Second: Create a new workflow, named say test, which will also generate a key and an account, and update the time as well.
in the second case, you also have an option to either generate 1 or more license key, or choose to generate a particular number on every run, as per your wish. In this case, do you also want a summary?
What do you want?

You will need to use key generation in the script, as it will show if the project is working at 100%

In 2, do you want to hardcode it to generate 1 account and 1 license key every time, or ask you the number of accounts and licenses to be generated

Only 1 license key. Without ask.

Ok

What time zone do you use to show time on your repo?

What time zone do you use to show time on your repo?

Gmt+2

Check https://github.com/rzc0d3r/ESET-KeyGen/pull/45


How to use Jmeter for UI performance testing?

Hi,
I would like to use Jmeter for UI performance testing.
How to use Jmeter for UI performance testing?
How can I get the loading time of the HTML elements?
Thanks

Use 'jp@gc - Chrome Driver Config’ element
where chromedriver.exe is a driver for browser.
For performance test use 'jp@gc - Webdriver Sampler’
Code looks crappy, but as example it’s fine
Kind regards,
Eugene

On Dec 4, 2019, at 10:44 AM, Muhammet Mektebi<EMAIL_ADDRESS>wrote:
Hi,
I would like to use Jmeter for UI performance testing.
How to use Jmeter for UI performance testing?
How can I get the loading time of the HTML elements?
Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/aliesbelik/awesome-jmeter/issues/13?email_source=notifications&email_token=AABFLYS4YKWWAZLNPA6MGRDQW5NVTA5CNFSM4JVEKW3KYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4H55MVSQ, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABFLYWQAOLYVF3VKUJOL23QW5NVTANCNFSM4JVEKW3A.

I don't really see the point of doing this in Jmeter. You won't be able to create much load if every single Jmeter user needs to create and control a whole Browser instance (each one using a significant amount of memory and CPU).

I know only one case when example above can be used: When require to measure time of page load in browser (i.e measure time when elements on the page will be visible when user open page or do any actions via browser).
For the other cases, this solution does not fit!

Any example of measuring the time of page-load in browser?

'Aggregate Report' listener can help to measure time. The case looks as follows: User need to enter login and pass and click submit button to login to app via browser
We add 2 samplers: 1st sampler will open required URL and fill login and password fields. The 2nd will do click on submit button and wait the longest load element on the next page, where user redirected once login to app. With 'Aggregate Report' listener we will analyze load time of the 2nd sampler.
With this case we exclude time for preparation cases (when user fill fields) and measure only the useful time (time between submit button click and when expected element will be displayed on the next page).
Something like that

Hi @mhdmaktabi.
For asking such specific questions, not directly related to this repo content, using any load-testing or JMeter-related Q&A community or user-group seems to be better idea.
Thank you.

Hi @Kitichka
I need to simulate 500 users. but in your way, I couldn't run more than 25 headless chrome instances.
Any idea?

Use remote servers for that. More details available here: https://jmeter.apache.org/usermanual/remote-test.html


[Migration Client] Error when dropping the index UM_ROLE_NAME from UM_HYBRID_ROLE table.

Describe the issue:
When running the migration client in SchemaMigrator of version 7.0.0 order 3,
   version: "7.0.0"
   migratorConfigs:
  -------------------------------------------------------------
     - name: "SchemaMigrator"
       order: 3
       parameters:
         location: "step1"
         schema: "um"

Below SQL ERROR can be seen.
Caused by: java.sql.SQLSyntaxErrorException: Can't DROP 'UM_ROLE_NAME'; check that column/key exists
This occurs because of the below SQL query:
ALTER TABLE UM_HYBRID_ROLE
	ADD COLUMN UM_AUDIENCE_REF_ID INTEGER DEFAULT -1 NOT NULL,
        ADD COLUMN UM_UUID VARCHAR(36),
	**DROP INDEX UM_ROLE_NAME,**
	ADD CONSTRAINT UM_AUDIENCE_REF_ID UNIQUE (UM_ROLE_NAME, UM_TENANT_ID, UM_AUDIENCE_REF_ID);

There is no index created for UM_HYBRID_ROLE with the name UM_ROLE_NAME. Upon further inspection of the migration resources, there is no indication of an index being created named UM_ROLE_NAME. However, in the file migration-resources/5.9.0/dbscripts/step2/carbon/mysql-cluster-5.7.sql, an index is created for the same column but with a different name, UM_ROLE_NAME_IND
How to reproduce:
Run the migration client to version 7.0.0 with any version.
Expected behavior:
The index should be created by the migration client in an earlier step if it does not already exist, under the name UM_ROLE_NAME_IND.
Environment information (Please complete the following information; remove  any unnecessary fields) :
migration client

@bhagyasakalanka are we good to close this issue?


[Preview 4] Change in Appearance of AppBarButton with Flyout on CommandBar in WinUI3

Describe the bug
We used a CommandBar with AppBarButton with a Flyout in our UWP application. However, once we switched over to WinUI3 Preview 4 Desktop, the appearance of the button changed.
The button in the WinUI3 Preview4 application has a ">" next to the icon whereas the UWP application did not.
See Screenshots below to compare differences.
Steps to reproduce the bug

Clone the WinUI3 Problems CommandBarFlyout repository.
Go to the CommandBarFlyoutWinUIPreview4 folder.
Open the CommandBarFlyoutWinUIPreview4 solution in Visual Studio 2019 Preview.
Build and run with Debug x64.
Notice the additional ">" next to the first icon in the CommandBar on the right side of the application.

Expected behavior
We expect to see no difference in appearance in the UWP and WinUI3 Preview 4 Desktop CommandBar buttons. The button in the WinUI3 Preview 4 Desktop application should only be the AppBarButton icon.
Build and run the CommandBarFlyoutUWP inside the CommandBarFlyoutUWP folder to see expected behavior.
Screenshots

Screenshot#1 - Expected Appearance (UWP)

Screenshot#2 - Current Appearance (WinUI3 Desktop)
Version Info
NuGet package version:
[Microsoft.WinUI 3.0.0-preview4.210210.4]
Targeting:
Target: Universal Windows
Target version: Windows 10, version 1809 (10.0; Build 17763)
Min version: Windows 10, version 1803 (10.0; Build 17134)
Windows app type:

UWP
Win32

Yes

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

May 2020 Update (19041)

November 2019 Update (18363)

May 2019 Update (18362)

October 2018 Update (17763)
Yes

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop
Yes

Xbox

Surface Hub

IoT

Additional context

In winui2 there is a bug where this chevron appears for app bar buttons which have attached flyouts, but only when they are not in command bar's primary commands. It seems like this issue is that command bar is failing to apply its custom style to this app bar button.

This bug has been fixed in WinUI 3 in the upcoming Project Reunion 0.8 Preview, which you can expect within the next few days. Thanks for filing this!


Improve translation addition instructions

Toward #6631.

@di @ewdurbin @nlhkabu @woodruffw @yeraydiazdiaz please feel free to update & modify this PR; I won't have time to update it this month.

Maybe this should include a "spend 5 minutes thinking about how the CDN will mess this up" pre-merge checklist (hat tip to @di).

Sorry, didn't realize this PR existed, and I made a bit more detailed set of instructions in https://github.com/pypa/warehouse/commit/fad3f30bcb0d60b437f2e5526c47ac90cb942f95 which I think should cover the changes proposed in this PR.

Other related followup: #8022


Explicitly specify libcudart_static in CMake config

nvcc defaults to statically linking libcudart, so this PR merely codifies the current behavior. This is useful in case where we were to use clang to build XGBoost with GPU support, as clang uses dynamic linking for libcuart unless explicitly stated otherwise.
Patch RMM's CMake config to use the static cudart.

@trivialfis Can I get a review?

Thanks Philip & Jiaming! 🙏


[CVP-970] [CVP-1071] Improve output of prepare-metadata step for users

Currently according to the upstream playbook the following happens:

Playbook takes two inputs that can be overriden by
operator_dir: directory consisting of unzipped operator metadata zip
operator_work_dir: directory which is usually the empty directory which
in which the operator metadata is copied and parsed
Given both attributes, operator data is being parsed and outputs to
and simple jinja template based file.package_name: operatorname
package_path: data2_work_dir/operatorname.package.yaml
current_channel: stable
current_csv: operatorname.vx.x.x
current_csv_dir: data2_work_dir/x.x.x
csv_path: data2_work_dir/x.x.x/operatorname.vx.x.x.clusterserviceversion.yaml
operator_pod_name: xxxx-operator
operator_capabilities: Seamless Upgrades
operator_container_name: xxx-operator
operator_allnamespaces_support: True
operator_ownnamespace_support: False
operator_singlenamespace_support: False
operator_multinamespace_support: False
crd_paths:
- data2_work_dir/x.x.x/operatorname.crd.yaml
- data2_work_dir/x.x.x/operatorname.crd.yaml
- data2_work_dir/x.x.x/operatorname.crd.yaml

Observations:
Through out the playbook shell commands have been extensively used.
Further, binaries like
yq, jq have also been used to fetch specific attributes from JSON documents.
This is effecting the readablity and ease of debugging steps inside the
Approach:
Improvements can be made by writing pure ansible code to do the above tasks
with built in functionality of Ansible. Which increases the readability.
Further, A simple block level exception handling needs to implemented
to know where the ansible task has failed and what is the result of the failure.
Which also acts as debugger whenever there is a specific failure inside the
the playbook run
The following PR has been created to resolve the issues to update the playbooks
and add few debug statements and exception statements using block and rescue
constructs inside Ansible.
As a positive side effect of this PR CVP-1071 is also resolved.
ansible playbook fails on parse-operator-metadata fails on
special characters like '+' being included inside the operator
How to test this PR:

Download metadata.zip file of operator
Unzip the contents of metadata.zip into folder say data_dir
Create another directory data_work_dir
Create another directory work_dir to collect output of parsed file
Run ansible prepare-operator-metadata.yml

ansible-playbook -vvvv prepare-operator-metadata.yml -e"operator_dir=./data_dir/"
 -e"operator_work_dir=./data_work_dir/" -e"work_dir=./work_dir/"parsed_operator_data.yml

The you should be able to get output of parsed operator-metadata as output in work_dir in parsed_operator_data.yml

@scoheb PTAL

@scoheb Tests have passed,
I have updated the debug task value too.

I think @dirgim should review this too

@dirgim PTAL
Fixed it


chore: add linkedin feature to chrome extension

Description

This PR adds the explanation of the linkedin feature to docs.
Note: I could not run this locally there was few errors in the project that needs to be solved.
What type of PR is this? (check all applicable)

[ ] 🍕 Feature
[ ] 🐛 Bug Fix
[x] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Related Tickets & Documents

closes https://github.com/open-sauced/docs/issues/111
Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

Hi @a0m0rajab. There some parts of the PR form that are incomplete. Can you work on that please?

Thanks, I added an extra two sentences! Thank you for the suggestion.

Thanks for the approval.

@a0m0rajab I'm going to close this for now since I don't think the Chrome extension currently has this functionality. If there's a fix in place on the ext, feel free to reopen.

@BekahHW sorry not sure how I missed the previous comment.

I will add that to the sidebar.
We can do this in a separate PR to keep this scope for LinkedIn only.
Sure, will add direction. This feature only works on the repo page and would not work on other pages in GitHub. I think it should be extended to PR/issues pages as well tbh.

An example: https://github.com/open-sauced/docs

I'm not seeing the LinkedIn button when I use the ext:

Since the chrome extension doesn't currently have this functionality, I'm going to close this issue.


Update knife tool to return FQDNs instead of IPs

Currently, Dreadnot wraps the knife command to query Chef-Server to get values like the array of IPs to use for a given step.
We should tweak Dreadnot to return hostname / FQDNs instead of IP address. This way, when we ssh $(ip) $(cmd), we'll be doing a DNS lookup.
I tried applying #137 manually, but it didn't appear to make a difference. CC @racker/rackspacemonitoringbombardiers

@mburns check out https://github.com/racker/chef/pull/4693


Backup/Restore Feature not working on iOS

Steps to reproduce
https://github.com/kodjodevf/mangayomi/assets/122187151/d93d0f5f-1123-43f9-bd8d-fdc93d466c0a
Expected behavior
Should actually backup the app data and be able to restore it.
Actual behavior
App crashes whilst not backing/restoring the apps data.
Mangayomi version
0.1.4
Device
iPhone 15 pro max
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an extension, I should be opening an issue in the extensions repository.
[X] I have updated all installed extensions.

It was said to be fixed in #56  which was my issue. I have verified automatic backup works after the fix but still not manual backup so maybe it's a file permission issue or a bad string formatting? The default backup location doesn't have any spaces.

Fixed !!


Show CiTO properties when hovering over the citation with the mouse (HTML and PDF)

As discussed in https://github.com/pandoc-ext/cito/issues/1 we split the issue
Idea: Implement the rendered HTML and PDF  in a way, that hovering over the citation would show the CiTO properties together with the link/citation etc.

From https://github.com/pandoc-ext/cito/issues/1: You may also be interested in https://github.com/jcheminform/markdown-jcheminf; CiTO properties are added to the bibliography entries.

If this would be implemented directly in CiTO this would implement the feature I think. I tried to use the lua filters from the cited markdown template in quarto via adding it as
filters:
  - cito  # list here because it needs to be run before citeproc, installed via extensions:
          # For semantic enhanced citations we use cito: https://github.com/pandoc-ext/cito
          # see https://quarto.org/docs/extensions/managing.html for details on how to install
  - /home/m/.vim/plugged/zotcite/python3/zotref.py # kills the HTML reference-output
  - ./Scripting/Lua_filter/extract-cito.lua
  - ./Scripting/Lua_filter/insert-cito-in-ref.lua

but it seams not as trivial.


[Error] Line types dashed_solid and solid_dashed are swapped

I've recognized that there is an error that dashed_solid and solid_dashed are swapped. For example lanelets that are separated with solid_dashed line have left relation AdjacentLeft and right relation Right.

Did you check the orientation of the linestring? The attribute is relative to the orientation of the linestring. If your lanelet looks like below, lanelet2 inverts the effect of the solid_dashed, meaning it is possible to do a lane change into the lanelet, but not out of it via its left bound.
<<<<<<<<<<<<< left: solid_dashed <<<<<<<<<<<

                  some lanelet

>>>>>>>>>>>>>>>>> right >>>>>>>>>>>>>>>>>>>>


什么运行不起来

bash urbangpt_train.sh
W&B offline. Running your script from this directory will only write metadata locally. Use wandb disabled to completely turn off W&B.
/home/admin/UrbanGPT/urbangpt/train /home/admin/UrbanGPT
ST_Encoder /home/admin/UrbanGPT/urbangpt/model/st_layers
compute_dtype torch.bfloat16
You are using a model of type llama to instantiate a model of type STLlama. This is not supported for all configurations of models and can yield errors.
Loading checkpoint shards:   0%|                          | 0/2 [00:00<?, ?it/s]ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: -9) local_rank: 0 (pid: 751) of binary: /usr/bin/python
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 798, in
main()
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/elastic/multiprocessing/errors/init.py", line 346, in wrapper
return f(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 794, in main
run(args)
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 785, in run
elastic_launch(
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 134, in call
return launch_agent(self._config, self._entrypoint, list(args))
File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 250, in launch_agent
raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
urbangpt/train/train_mem.py FAILED
Failures:
<NO_OTHER_FAILURES>
Root Cause (first observed failure):
[0]:
time      : 2024-10-30_18:57:25
host      : dsw-468486-77f8bcd5db-dk2dj
rank      : 0 (local_rank: 0)
exitcode  : -9 (pid: 751)
error_file: <N/A>
traceback : Signal 9 (SIGKILL) received by PID 751

你好，可能是由于权重加载和多卡配置的原因，请根据运行环境调整参数


tiflow verify ci uploads codecov report to wrong repo

Given a sample pipeline: https://do.pingcap.net/jenkins/blue/organizations/jenkins/pingcap%2Ftiflow%2Fghpr_verify/detail/ghpr_verify/878/pipeline/164
The coverage report was uploaded to pingcap/dm
    -> Reports have been successfully queued for processing at https://app.codecov.io/github/pingcap/dm/commit/0200ec56551e7d12ae5755bb5d8bcc5e39a8c8d6

Did we use the correct token for TICDC_CODECOV_TOKEN, seems there is no other configuration.

currently using the token of the dm repo incorrectly, i will fix this


Spelling Fixes

Additional Spelling fixes @Court72
(correct branch this time :)  )

@lrtoyou1223 @nabhishek @anthonychu
Can you review the proposed changes in your respective articles, then approve, comment or revise as needed?
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


hover_vicon.launch error

When I ran the hover_vicon.launch，the following error occurred.
In file included from /usr/include/c++/5/array:35:0,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDKCore/RetimingClient.h:28,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDKCore/CoreClient.h:27,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamClient.cpp:31:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
In file included from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamClient.cpp:29:0:
/home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamClient.h:57:10: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
std::shared_ptr< std::vector< unsigned char > > m_Data;
^
In file included from /usr/include/c++/5/array:35:0,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDKCore/RetimingClient.h:28,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDKCore/CoreClient.h:27,
from /home/ubuntu/ros_ws/src/vicon_bridge/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamRetimingClient.cpp:29:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support
^
^Cvicon_bridge/CMakeFiles/vicon_sdk.dir/build.make:86: recipe for target 'vicon_bridge/CMakeFiles/vicon_sdk.dir/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamRetimingClient.cpp.o' failed
make[2]: *** [vicon_bridge/CMakeFiles/vicon_sdk.dir/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamRetimingClient.cpp.o] Interrupt
Traceback (most recent call last):
File "/opt/ros/kinetic/bin/catkin_make", line 298, in
sys.exit(main())
File "/opt/ros/kinetic/bin/catkin_make", line 242, in main
run_command(cmd, make_path)
File "/opt/ros/kinetic/lib/python2.7/dist-packages/catkin/builder.py", line 239, in run_command
vicon_bridge/CMakeFiles/vicon_sdk.dir/build.make:62: recipe for target 'vicon_bridge/CMakeFiles/vicon_sdk.dir/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamClient.cpp.o' failed
make[2]: *** [vicon_bridge/CMakeFiles/vicon_sdk.dir/vicon_sdk/DataStream/ViconDataStreamSDK_CPP/DataStreamClient.cpp.o] Interrupt
proc.wait()
File "/usr/lib/python2.7/subprocess.py", line 1392, in wait
CMakeFiles/Makefile2:4304: recipe for target 'vicon_bridge/CMakeFiles/vicon_sdk.dir/all' failed
make[1]: *** [vicon_bridge/CMakeFiles/vicon_sdk.dir/all] Interrupt
Makefile:138: recipe for target 'all' failed
make: *** [all] Interrupt
pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0)
File "/usr/lib/python2.7/subprocess.py", line 476, in _eintr_retry_call
return func(*args)

Add the following statement to the CMakeLists.txt:
  SET( CMAKE_CXX_FLAGS "-std=c++11 -O3")


Issue with SteamVR Input system in the Standalone package

First of all, thank you for this amazing toolkit. It will fit perfectly in my project.
My issue is regarding the Standalone package that does not register controllers' input out of the box. (It may also extend to the Integration package as well).
The problem is that the Vive Input Utility action set is not generated after importing the toolkit.
Trying to reimport the Vive Input Utility prompts to the automatic action set generation, but a bug in Unity or SteamVR makes it impossible to create the actions.
I used the following steps to solve this issue:

Create an empty project
Import the SteamVR asset from the Asset Store (Accept all recommended settings in the windows that will pop up).
Generate the SteamVR input (Window->SteamVR Input). Generate the example files and click and "Save and Generate". This step is solves the Vive Input Utility bug mentioned above.
Import the Standalone package.
Import the Vive Input Utility from the Asset Store (Accept all recommended settings in the windows that will pop up). It will automatically generate the Vive Input Utility action set.

After these steps, I was able to use the controllers to input my actions into the forms.
I hope this is useful information to update the standalone package.
--
Tested in Unity version 2019.4

Thank you very much for reaching out! We have tried to reproduce the error on 3 different Win10 machines (Unity version 2019.4), but we failed to do so:

Created empty unity3d project
Imported standalone version
-> it worked (HTC Vive setup)

So, we do not know what is causing the issue, since we are unfortunately unable to replicate it. I am assuming it is caused on the SteamVR side.
I am glad that you eventually found a way getting it to work.
If someone else stumbles across the same issue, please let us know!

Thank you very much for reaching out! We have tried reproducing the error on 3 different Win10 machines (Unity version 2019.4), but we failed to do so:
Created empty unity3d project
Imported standalone version
-> it worked (HTC Vive setup)
So, we do not know what is causing the issue, since we are unfortunately unable to replicate it. I am assuming it is caused on the SteamVR side. I'll spent some time on the weekend looking into this.
I am glad that you eventually found a way getting it to work.
If someone else stumbles across the same issue, please let us know!


Plugin : 2d heightmap collision boxes in Godot's 2D editor

Godot version: 4.x
Descripition:
"Greetings.
This here is a suggestion or more precisely a feature request for the engine's 3.1 stable release, please read ASAP...
I was wondering if you could add new modules to Godot's 2d editor to help make 2d heightmap collision boxes.
The system would work based on a 2d flat texture that would have various properties like height, depth, opacity, oblique direction, slope... and help simulate 2.5d in a 2d game...
Well, to illustrate how it would work, here's an example video :
https://www.youtube.com/watch?v=Un9urBgX91c&t=510s "

This here is a suggestion or more precisely a feature request for the engine's 3.1 stable release, please read ASAP...

3.1 is feature freeze now, we don't accept new features.
But in any case, what you describe probably better suits a plugins.

Okay. Then what am I to do now ? Oh, of course, if it better suits a plugin, then compatibility with Godot 2.1.5 would be really helpful as well... So, have I done the necessary for the plugin to come later... ?
Should I try to code it myself(if so, a link to a tutorial on plugin coding would help me) ?..

compatibility with Godot 2.1.5 would be really helpful as well

Not really, Godot 2.1 is getting old now. And most people are going to use 3.x now.

So, have I done the necessary for the plugin to come later... ? Should I try to code it myself(if so, a link to a tutorial on plugin coding would help me) ?..

Well I have no clue, if people are interesting in your plugin, maybe someone's going to work on it. But yeah, if you do it yourself, you probably have more changes to get it done soon.
You can read the engine documentation, but for learning learning how to code this is another level. You should probably try finding tutorials on the internet about Gdscript (or maybe python, as it is a similar language) I guess.

Nevertheless. Adding the functionality by designing it as a feature would save the life of many gamedevs.
You said Godot 3.1 is feature freeze. Then please bring it in Godot 4.0. I'm talking about extending the Editor's 2D capabilities by adding a perfect or near perfect 2.5D collision box manager...
For the plugin, Good luck to me... I'm not sure I can code it very fast(say less than a year) given my time and lack of resources(docs, articles and tutorials)...
If you have good resources to help me, never hesitate...

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!