Check total count during transfer dialog

@nicoschmitt This checks the total count of the current Pokemon you are considering transferring.

Sorry I was just waiting on basically the same thing. Could you update from master and check what I did and modiy it accordingly is necessary?

@nicoschmitt not sure what you want me to do here... Do you like my implementation better and you think we should use it? Or... what?

Check what I did and tell me if it's good for you. If not submit a updated pr.

@nicoschmitt my implementation is less code, but its up to you. Both work.

fair enough, I did mix both, thanks!


improvements to Zcheripte text

Agreed
On Wed, 13 Nov 2024, 21:04 Jessica Clarke, @.***> wrote:

@.**** commented on this pull request.
In src/cheri-pte-ext.adoc
https://github.com/riscv/riscv-cheri/pull/451#discussion_r1841157449:

-NOTE: There is no explicit mechanism for enabling or disabling {cheri_pte_ext_name}. A VM-enabled legacy (non-CHERI) OS running in {cheri_int_mode_name} will not load or store capabilities, and so the default state of CW=0 causing loaded capabilities to have their tags cleared, and stored capabilities with their tags set to cause a page fault, won't occur. A CHERI-aware OS running a VM-enabled OS is required to support {cheri_pte_ext_name}, and the minimum level of support is to set CW to 1 in all PTEs and leave <<sstatusreg_pte,sstatus>>.CRG and CRG in all PTEs set to 0, which will allow capabilities with their tags set to be loaded and stored successfully.
+A CHERI-aware OS running a VM-enabled OS on an RV64 core is required to support {cheri_pte_ext_name}, and the minimum level of support is to set CW to 1 in all PTEs intended for storing capabilities (i.e. anonymous mappings) and leave <<sstatusreg_pte,sstatus>>.CRG and CRG in all PTEs set to 0, which will allow capabilities with their tags set to be loaded and stored successfully.
+
+Therefore Implementing any RV64 virtual memory translation scheme (Sv39, Sv48 or Sv57) and {cheri_base_ext_name} requires {cheri_pte_ext_name} to be implemented.
You would need to do so extremely early in boot.  Just because you technically can doesn't mean you
should.
—
Reply to this email directly, view it on GitHub
https://github.com/riscv/riscv-cheri/pull/451#discussion_r1841157449,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOCTJAH6Q3YN4VMOJSAA4G32AO5EDAVCNFSM6AAAAABRW2VT2OVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDIMZUGQYTKNRUGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

any objections to merging this?


Add double quote for elastic parameter --docker_args as the value may include spaces

Add double quote for --docker_args as the value may include spaces
Also update version to support jdk17
Update exclusion lists
Signed-off-by: Sophia Guo<EMAIL_ADDRESS>

Current failure looks incorrect https://ci.adoptopenjdk.net/view/work-in-progress/job/grinder_sandbox_new/662/console
04:47:08  No DOCKERIMAGE_TAG set, tag as default 'nightly'
04:47:08  The test here is elasticsearch
04:47:08  The directory in the external.sh is elasticsearch
04:47:08
04:47:08  elasticsearch_test_hotspot_0_FAILED
04:47:08

Tests are running with failures.
https://ci.adoptopenjdk.net/view/work-in-progress/job/grinder_sandbox_new/693/console

This PR won't fix the test failures listed https://github.com/adoptium/aqa-tests/issues/3567


RFC-20220829-distributed-dynamic-routing

Describe This Problem
Disribeted dynamic routing for CeresDB cluster mode,  provide failover and load balancing for cluster.
Proposal
In Release v0.3, we initially implemented the cluster mode of CeresDB and provided static routing based on configuration.
However, it is obvious that this simple implementation cannot supported the dynamic scheduling in distributed scenarios.
Through distributed dynamic routing, we hope to achieve：

Provide disaster recovery and high availability for the distributed mode of CeresDB.
Control the scheduling of CeresDB computing nodes and provide good load balancing capability. Automatically schedule the routing relationship between data and computing nodes to solve the hot issues of computing nodes

Additional Context

Feature Name: distributed-dynamic-routing
Tracking Issue: #198

Summary
Disribeted dynamic routing for CeresDB cluster mode,  provide failover and load balancing for cluster.
Motivation
In Release v0.3, we initially implemented the cluster mode of CeresDB and provided static routing based on configuration.
However, it is obvious that this simple implementation cannot supported the dynamic scheduling in distributed scenarios.
Through distributed dynamic routing, we hope to achieve：

Provide disaster recovery and high availability for the distributed mode of CeresDB.
Control the scheduling of CeresDB computing nodes and provide good load balancing capability.  Shard's roles are divided into leader and follower, Only the leader is responsible for writing requests.
Node: CeresDB Compute Node, One node is responsible for processing multiple Shards.
Table:  Minimum unit of CeresDB scheduling, CeresDB implements distributed scheduling by adjusting the routing of the table.
Routing: Routing relationship from table to endpoint, The client relies on it to make requests to the correct node.
CeresMeta: An independently deployed service for managing and scheduling CereDB cluster.

Metadata Definition
ShardRole
pub enum ShardRole {
    LEADER = 0,
    FOLLOWER = 1,
    PENDING_LEADER = 2,
    PENDING_FOLLOWER = 3
}

// LEADER has RW permission
// FOLLOWER has R permission
// PENDING_LEADER is the follower who will become the leader in the process of leader switching，It has R permission
// PENDING_FOLLOWER is the leader who will become the follower in the process of leader switching，It has RW permission

┌────┐                   ┌────┐
│ RW ├─────────┐         │ RW ├─────────┐
├────┘         │         ├────┘         │
│    Leader    ◀─────────│PendingLeader │
│              │         │              │
└───────┬──────┘         └───────▲──────┘
        │                        │
┌────┐  │                ┌────┐  │
│ R  ├──▼──────┐         │ R  ├──┴──────┐
├────┘         │         ├────┘         │
│   Pending    ├─────────▶   Follower   │
│   Follower   │         │              │
└──────────────┘         └──────────────┘

ClusterTopologyState
const (
    ClusterTopology_EMPTY             ClusterTopology_ClusterState = 0 // EMPTY Cluster，unable to provide external services
    ClusterTopology_PREPARE_REBALANCE ClusterTopology_ClusterState = 1 // Rebalance is in progress, and some requests may be affected at this time
    ClusterTopology_AWAITING_CLOSE    ClusterTopology_ClusterState = 2 // The cluster is shutting down and writing is prohibited
    ClusterTopology_AWAITING_OPEN     ClusterTopology_ClusterState = 3 // The cluster is initializing and cannot provide services normally
    ClusterTopology_STABLE            ClusterTopology_ClusterState = 4 // In a stable state, external reading and writing services can be provided normally
)

┌──────────┐         ┌──────────┐      ┌──────────┐
│          │         │ PREPAPRE │      │          │
│  EMPTY   ◀─────────▶REBALANCE ◀──────▶  STABLE  │
│          │         │          │      │          │
└────▲─────┘         └────▲────▲┘      └─────▲────┘
     │                    │    └────────┐    │
     │                    │             │    │
     │               ┌────▼─────┐      ┌┴────┴────┐
     │               │ AWAITING │      │  AWATING │
     └───────────────▶  CLOSE   ├──────▶   OEPN   │
                     │          │      │          │
                     └──────────┘      └──────────┘

Routing scheduling strategy
Shard Load Balance
The simple load balancing strategy based on shard,  only ensures that the number of shards distributed on each computing node is balanced, and cannot guarantee that the actual load of the computing node is balanced.

The implementation is simple, only the routing relationship between shard and computing nodes is processed, and the routing relationship between table and shard is randomly allocated
Real load balancing cannot be realized.

The implementation is relatively complex, and the realtime load needs to be collected and reported by the computing node, with a certain extra cost.
CeresMeta maintains a map<table, tablecost> for each computing node.
Wait for the leader shard to complete the preparatory action before the leader switch, and notify the CeresMeta after the completion. In this process, the new leader cannot process the write request.
After receiving this request, meta will update the status of the two shards, and the leader switch is completed.

Shard Migrate

Leader Shard：

First, CeresMeta adjusts the routing relationship and create a new follower shard on the node.
Follower shard notifies CeresMeta after initialization.
CeresMeta started the process of leader switch, switched the leader to the newly created follower shard.
Close the original leader shard after the leader switch is completed.

Follower Shard：

Adjust shard node mapping to directly assign this shard to another node.

Shard Split

CeresMeta creates a new shard and distributes it to the node with the lowest load.
After the new shard is created, the table routing relationship in the shard is processed, and a part of the table is split to the new shard according to certain rules.

Pending Problem：

How to decide which tables need to be split into new shards?

Processing flow
Cluster registration and initialization

Meta received the request for cluster registration, create cluster meta info and save in etcd, set the ClusterTopologyState is EMPTY.
Waiting for node regisration, When the number of registered nodes has reached minimum number required by the cluster, the cluster initialization process will start.
Initialize the shard routing topology and distribute the shard evenly on each node.
Set the ClusterTopologyState to STABLE, initialization complete, after that, the cluster can normally provide external services.

Create Table

The client initiates a create table request. In RPC mode, it will access the specified endpoint returned by CeresmMeta. In HTTP mode, it will randomly access an available endpoint.
After receiving the request, the node will complete the table creation operation and notify CeresMeta. All subsequent reads and writes to this table will be processed by the node. CeresMeta will modify the routing relationship between the table and the shard and associate this table with the shard of the current node.
The routing relationship of the new table has been registered. Now the table can be read and written to the outside normally.

Write / Read Table

Client accesses the endpoint specified by ceresmeta through RPC. Because the client caches the routing relationship, it may be expired.
After receiving the request, the node needs to decide whether to process the request normally according to the latest routing table.

Shard is in normal status and handles requests normally.
The current shard is no longer on this node. The node returns an expiration flag. The client re initiates the route request to refresh the routing relationship.

Drawbacks
Table Split
CeresDB's current minimum scheduling unit is table. It does not support splitting or merging table. It can only migrate tables between nodes. In extreme cases, a single table may be too large for a single node to handle.
Alternatives
Remove Shard
In the current design, the concept of shard adds a lot of complexity, and it seems to have no obvious effect at present. Direct scheduling table can also achieve the same function. Maybe shard can be removed in the future?
More complex scheduling
In the current design of scheduling, we only implement load balancing based on table cost. In the future, we can refer to the design of PD scheduler to implement more kinds of schedulers.

@ZuLiangWang A PR about this RFC will be better so that it can be reviewed by others.

https://github.com/CeresDB/ceresdb/pull/79 is an example

moved to https://github.com/CeresDB/ceresdb/pull/234


rename repos to rhel_repos in downstream.yaml

rename the repos objects in dowstream.yaml.
Signed-off-by: rakeshgm<EMAIL_ADDRESS>

this is based on commits https://github.com/ceph/teuthology/commit/c32831cde8222926ea77341225c7a405d6c90ed6 which will be sent to upstream later


Decounvolution output mismatch

Hi,
I have tried to use the deconvolution primitive instead of convolution_backward primitive  to implement the  transposed/de-convolution.
But I see the mismatch in the outputs when I  use the deconvolution primitive . When same input is given  to the convolution_backward primitive ,outputs match.
Dimensions of input, output ,weights and bias are given below
Inputs : batchsize-2, channels-3, height/width-5
outputs : batchsize-2, channels-4, height/width-5
weights : inputchannels-3, outputchannels-4. filterHeight/width-3
bias: size is 4
I have attached both the implementations for your reference . Please let me know If  I am missing anything here.
Thank you.
deconv_example_setup.tar.gz

Hi,
From your implementation I see that you pass bias to deconvolution primitive, so two primitives (bwd_d conv and deconv) perform different computations. Deconvolution with bias performs bwd_d convolution and adds bias to destination. Bwd_d convolution primitive does not perform any computations with bias.
Thanks,
Irina

One more thing,
When you call convolution bwd_d, physical layout of weights in your example is o=3i=4hw
So when calling deconvolution the layout of weights should be different: o=4i=3hw
for outputs of deconvolution and bwd_d convolution to match

Sure,
Both convolution and deconvolution in your examples take on input weights in oihw format which states for "output channels, input channels, height, width". However, because convolution and deconvolution act in different directions, source for convolution is a destination for deconvolution and number of input channels for convolution is the number of output channels for deconvolution. This implies that deconvolution and convolution expect different physical layout of weights in memory.
I know it is very confusing, so this is how it works for your example:
conv:
src [n =2, ic = 4, h=w =5]  * wei[oc =3, ic = 4, h=w=5]  = dst[n = 2, oc = 3, h=w=5]
deconv:
src [n =2, ic = 3, h=w =5]  * wei[oc =4, ic = 3, h=w=5]  = dst[n = 3, oc = 4, h=w=5]
To get the same result for deconvolution and bwd_d convolution you should pass source of conv as a destination to deconv, destination of conv as a source for deconv and transpose weights from oihw format to iohw. In your code it would be explicit transposition of weights array before passing it to deconvolution.

In the deconv.cpp that I have shared with you has the same dimensions that you specified below
deconv:
src [n =2, ic = 3, h=w =5] * wei[oc =4, ic = 3, h=w=5] = dst[n = 3, oc = 4, h=w=5]
However as per your explaination ,transpose of weights is the one that is missing.
It would be of great help if you could  update me the deconv.cpp code to do the transpose of weights.
One more point to note is the weights might already have been transposed since the conv_backward.cpp is working as is with the same inputs and weights.

After changing the weights layout . It worked using DeConvolution. Thank you.


Testing

Added some more testing to increase coverage. Note that not all exceptions have been tested.

looks good, we are seeing improvements in branch coverage!


Support multi-range RGB gamma

Feature request
Support multiple RGB gamma entries in the UI (similar to a HDTV display)
What problem does this feature solve?
In current implementation with one RGB gamma, entire color range 0-255 is adjusted based on that value.
As a result, when displaying an image on the screen which has sections of 10 brightness levels next to each other for a color

prime color R can be calibrated with the R gamma very well to show gradual brightness from 0% to 50%. Above 60%, maximum brightness is reached and color is just the same. Reducing brightness is not an option as the LED strip would be too dark
yellow can be calibrated well for the lower, medium or upper brightness region - but not all at once. If medium yellow is calibrated, dark yellow is brownish and bright yellow reddish.

What does the proposed API look like?
n/a
How should this be implemented in your opinion?

On the UI, allow user to choose from a drop-down/text field the number of RGB gamma ranges to be defined (1-n)
On the UI and based on 1), allow user to define the RGB gamma values for each range (table)
At runtime, when determining the color of a pixel/region, determine it's brightness and calculate the defined RGB gamma by looking up the RGB gamma ranges from 2)
RFC: If the (lower) ranges are e.g. 0-24, 25-49, 50-74, and the brightness is 45 then RGB gamma has to be calculated based on the range 25-74. That way, gamma is not FIXED for a range but is calculated from two gamma values allowing for better matching with less ranges

Are you willing to work on this yourself?
With pointers to the code spots in question, yes

Hey,
2 days ago we discussed internal if the actual rgb-cmy color theory makes sense...
We talked a little bit end came to an end that we need more theoretical knowledge and read a lot or best case: someone with knowledge.
with all the different color theories it is nice to have them, but it is also important to consider the hardware part, are the leds able to show the calculated color....
i've read a lot in the past time that users say "hyperion classic had better colors", thats where the internal discussion came from...
hyperion classic used only rgb and hyperion.ng was extend by rgb-cmyk, more infos are here:
https://hyperion-project.org/threads/color-adjustment-2-0.552/
and
https://hyperion-project.org/threads/better-color-adjustment.104/
and the change was here
https://github.com/hyperion-project/hyperion.ng/pull/351
Do you have knowledge and want to help us improving this topic?
@Lord-Grey told me that philips uses HSV in their HUE lamps...maybe this one is also a good point?
Greetings TP

I have no extra knowledge here, I just played around and saw that with different RGB gamma I got a perfect result for a specific color.
I use an HDMI Grabber along with a HDFury Diva, so the picture & colors hyperion gets is pretty close to what is shown on the HDTV.
What I can offer is the following: I can check the part "with all the different color theories it is nice to have them, but it is also important to consider the hardware part, are the leds able to show the calculated color...."
Using color pictures with different brightness (which I used to calibrate my HDTV to near-perfect with a Spyder X Pro) I can adjust the RGB gamma for each and note down the values which look "good" to me. That should tell us something about how, at least my, LEDs behave.
That should at least help to understand if, at least my, LEDs actually can display the colors the HDTV shows.
If they can't I'll throw them out the window as then I have no use for them - I simply cannot see tolerate brown color on my TV and blue on the wall ;) So just for my own peace of mind I'll do this test myself and will update the results here. I think 4 different brightness levels should be enough to get an idea...

Finally I got the time to check out what calibrations in hyperion would make the LEDs create a similar color compared to what I see on my TV.
tl;dr :
No single RGB gamma works for all colors. For each color (RGBCMYW)

the RGB gamma value is different
in the region of 20%-100% brightness, one constant RGB gamma value results in "mostly ok" results
in the region of 10% brightness requires significant lower gamma value (otherwise LED is off)
the brightness setting may also be used for even closer match

I've uploaded the images I used for the calibration here: https://easyupload.io/44tl8y - feel free to use them!
I've not calibrated every single brightness level - only where I saw significant and undesirable differences between hyperion LEDs and TV. For 10% brightness, I used the lowest possible gamma which would illuminate the LEDs - any less value would turn them off / make them flicker.
My RGB values for the colors (most colors do not exactly match my TV for 100% brightness images):
Red: 253,3,3
Green: 35,235,3
Blue: 0,0,200
Cyan: 50,255,255
Magenta: 255,0,255
Yellow: 235,255,0
White: 255,255,255
Brightness and brightness adjust are at 100 each.
Findings:
Red 10%: R gamma 1,52
Red 20%+: R gamma 1,8
Green 10%: G gamma 1,62
Green 20%+: G gamma 1,75
Blue 10%: B gamma 1,3
Blue 20%+: B gamma 1,8
Cyan 10%: R gamma 1,4 ; G gamma 1,45; B gamma 1,3
Cyan 20%+: R gamma 1,7 ; G gamma 1,75; B gamma 1,7
Magenta 10%: R gamma 1,25 ; G gamma 1,0; B gamma 1,0
Magenta 20%+: R gamma 1,9 ; G gamma 1,7; B gamma 1,7
White 10%: R gamma 1,3 ; G gamma 1,35; B gamma 1,3
White 20%: R gamma 1,8 ; G gamma 1,8; B gamma 1,8
White 50%: R gamma 1,8 ; G gamma 1,8; B gamma 1,8 & Brightness 80 or else the image is too light - gamma itself does not change the result?
Note: Any input (FireTV Cube, Kodi, Chromecast) goes into a HDFury Diva, which outputs the original signal to my TV as well as a down converted SDR HDMI signal to a HDMI splitter, going to an HDMI USB grabber that is used by Hyperion and to my TV on a second input. In my testing I used the SDR input, so I see on my TV what hyperion also got as input. As this is all digital input, the picture hyperion gets is basically "perfect" - no washed out colors, no greyish black etc.


add workflow_dispatch to trigger workflow manualy

refer：https://files.slack.com/files-pri/T5S0DHU2X-F037HB5TC1Y/image.png

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Zhou Cheng seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


bug: when the controller is deployed into a container if fails to delete the gateway

Error deleting certs	{"controller": "gateway", "controllerGroup": "gateway.networking.k8s.io", "controllerKind": "Gateway", "Gateway": {"name":"prod-web","namespace":"multi-cluster-gateways"}, "namespace": "multi-cluster-gateways", "name": "prod-web", "reconcileID": "69370902-6ee8-4554-89ca-f283cd0e639e", "error": "error deleting cert secret: secrets "test.cb.hcpapps.net" is forbidden: User "system:serviceaccount:multicluster-gateway-controller-system:mgc-controller-manager" cannot delete resource "secrets" in API group "" in the namespace "multi-cluster-gateways""}
two things to investigate

why is it trying to delete the secret it should just delete the certificate cert manager will delete the secret
does it need additonal perms in the hub

ah awesome thanks! I hit this on a PR so perhaps just needs a rebase


remove custom serializer from Differential type

fixed with
https://github.com/trivium-io/trivium/commit/f8586a88d75c0ab2182ab8eb64486306dbe756b6


Support group name when create space

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: darionyaphet:x: yixingluYou have signed the CLA already but the status is still pending? Let us recheck it.


Remove non-existing arguments from docstring

Removes non-existing parameters from a docstring for a method; these parameters existed as a part of development of the function, but were removed in subsequent reviews of the original PR that introduced the method.  The docstring was not updated with the code.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (7ed3988) 93.14% compared to head (3ca9558) 93.10%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #3096      +/-   ##
===========================================
- Coverage    93.14%   93.10%   -0.05%
===========================================
  Files           66       66
  Lines        14237    14237
===========================================
- Hits         13261    13255       -6
- Misses         976      982       +6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[javascript] Generate ciDict.ts from ciDict.json

For future conversion of this package into a hybrid esm/cjs one, we need
to convert ciDict.json into a typescript file.

Wait for the CI to be ready before merging


Rye is not added to path even after choosing add to path option

Steps to Reproduce
On Linux Mint
Copy paste linux install line
Respond y when asked to add to path
Expected Result
typing $ rye should give results
Actual Result
rye command not found
❯ ls -alh ~/.rye/shims                                                       ─╯
total 79M
drwxrwxr-x 2 appinv appinv 4.0K Mar 12 11:41 .
drwxrwxr-x 6 appinv appinv 4.0K Mar 12 11:41 ..
-rwxrwxr-x 3 appinv appinv  27M Mar 12 11:39 python
-rwxrwxr-x 3 appinv appinv  27M Mar 12 11:39 python3
-rwxrwxr-x 3 appinv appinv  27M Mar 12 11:39 rye
Version Info
idk
Stacktrace
No response

Fixed it for now by manually adding the shim path to bashrc

Can you add a few more details please?

What shell are you using?
Can you reproduce it (Remove ~/.rye, remove ~/.rye from $PATH, reinstall rye)?
Do you remember if you received the message: "Added to PATH", while installing rye?

shell: oh my zsh


Session is removed when app is resumed without network

Describe the bug
The locally stored auth credentials of the current session are removed when app is resumed without network.
To Reproduce

Launch an app with Supabase Auth while you have access to network.
Log in
Turn on airplane mode
Leave app, but don't close it! Eg go to your home screen
Wait for the access token to expire. Eg set the session duration to 30sec in Supabase dashboard.
Then return to the app. I set a breakpoint at my currently installed supabase version in supabase_auth.dart -> _recoverSupabaseSession() I can see this:

You can see that the local session has been removed
Fully close the app, and restart it. Supabase attempts to resume the session, but the session got deleted. Therefore, your user is logged out.

On physical iOS devices, this seems to be a bit tricker: The above behaviour happens already when launching the app while device is in airplane mode. As It's hard for me to debug this, I can only make an assumption atm. From experience, connection errors that come from active airplace mode resolve almost immediately, so that it could be possible that the WidgetsBindingObserver which SupabaseAuth  is implementing attaches much quicker than in simulator debug builds (where I simply turn off Wifi) so that the didChangeAppLifecycleState is already triggered when the app is launched. So when my state management logic checks supabase's auth store, it already sees that the session is delted on app-launch, and therefore navigates to the sign in screen.
Expected behavior
I can launch and resume the app while offline, and app can go offline and online while using it, and session never gets deleted unless user explicitly signs out.
Version (please complete the following information):
On macOS, tested on iOS Simulator & iOS physical device
── supabase_flutter 2.0.0-dev.2
│   ├── supabase 2.0.0-dev.2
│   │   ├── functions_client 2.0.0-dev.0
│   │   ├── gotrue 2.0.0-dev.1
│   │   ├── postgrest 2.0.0-dev.0
│   │   ├── realtime_client 2.0.0-dev.1
│   │   ├── storage_client 2.0.0-dev.0

Additional context
Add any other context about the problem here.

I also noticed that on supabase_auth.dartL119 errors are catched during initialization. So I'm wondering, would it be a possible solution to do something similar in the _recoverSupabaseSession() method?

This should be fixed, and you should now be able to launch your app while being offline.


Various fixes and improvements

Bug fixes:

removed onedark highlight namespace, it prevented user to change colorscheme properly after setting onedark as colorscheme
sp option (to select underline color) in highlights.lua now works
fixed php highlighting, no more strange reverse text

Refactoring:

vim.g.disable_toggle_style -> vim.g.onedark_disable_toggle_style
some global variables had better to be local

Features:

undercurl options available in highlights.lua
added vim.g.onedark_diagnostics_undercurl
added vim.g.onedark_darker_diagnostics
Telescope borders are more colourful now
added light_grey color
better vimscript highlighting, since treesitter parser for vimscript isn't always available

All the changes looks valid and useful

Thank you for making this colorscheme


Processing seems broken (again?)

Describe the bug
This issue has been previously referenced in #66518 and should have been fixed in #66740 . I tried to install Processing today and I get the same error described in #66518 .
hash mismatch in fixed-output derivation '/nix/store/74jkcqrddp7nxijr3ha09d2mnfck5836-reference.zip':
  wanted: sha256:0ai0cr62gc7n6y22ki3qibyj1qnlaxv1miqxmmahfk3hpbyfqz9n
  got:    sha256:198bpk8mzns6w5h0zdf50wr6iv7sgdi6v7jznj5rbsnpgyilxz35

cannot build derivation '/nix/store/bp16h84nmjx2fysz2ikaz41i5kw9hbwm-processing3-3.4.drv': 1 dependencies couldn't be built

Metadata
Please run nix run nixpkgs.nix-info -c nix-info -m and paste the result.
- system: `"x86_64-linux"`
 - host os: `Linux 4.19.77, NixOS, 19.03.173575.0e0ee084d6d (Koi)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.2.2`
 - channels(max): `""`
 - channels(root): `"nixos-19.03.173663.6d448d7fbd6"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Basically I get the old 3-3.4 and not the new 3.5.3.
How can I have the fixed version? Is it not available for channel 19.03 (I already updated the channel)?

Perhaps the hash wasn't updated to the reflect the version. Try copy-pasting the "got" hash into the expression for "processing" in your NIX_PATH and see if that works for you.

Thank you @kolbycrouch , I had to switch to channel 19.09 to get the fixed version :)

@maxdevjs is it still ok for you ? Tried on the 19.09 in the current state and it still fails the same way. Gonna update the channel to check if that's better.

@stephane-rolland sorry for the late reply.
No, for what I know it broke again a couple days after it was fixed (#66740, my comment) and still it is in 19.09 (tried right now).
I am not using NixOS, but what I did back then has been to use steam-run (installed steam-run-native).

@maxdevjs  sorry I did not find a solution. But I did not tried very hard. I wanted just to give Processing a try, and discovered that Processing Python module is based on obsolete Python 2.7 / Jython , so it was not I wanted.


Small Updates to install script and upperair menu (added pirep)

That's not possible the way this script is set up I don't think. Everything above are functions that get called by going through that special input check. I could create a function that does that, but it would still need to go in each of those 4 flags.
I might be able to put it after the input check (line 429)

Ahh, yes exactly what I was thinking.  But looking at it now there is also the -h help case....
Potentially after that CASE statement, I'd have an if to say if it wasn't the -h, then do the yum disable, so then it only needs to be there once.
The other thing I had noticed, was the registry change is in like 3 or 4 of the cases as well... So potentially combining both that and the yum change into a function and then just calling that function.
None of that is super necessary though, so if you don't feel like making any other changes right now, that's okay.

Okay great!  Looks much better.  One last thing, line 439 can just be cleanup you don't need to pass the variables, since they're already set and you're just reading them from being set in the script already.


[backport] Override forward in LinkHook documentation

Backport of #6546

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit e51ce41d46ebde3c607cd07c87ef848ce6683370, target branch v5) failed with status FAILURE.
(For contributors, please wait until the reviewer confirms the details of the error.)


dts: riscv: Add sifive,plic-1.0.0 binding and fix riscv,ndev values

Add a new sifive,plic-1.0.0 binding that inherits from the riscv,plic0
binding. The new binding adds a required riscv,ndev property, which
gives the number of external interrupts supported.
Use the new binding for microsemi-miv.dtsi (with a value of 31 for
riscv,ndev, from http://www.actel.com/ipdocs/MiV_RV32IMAF_L1_AHB_HB.pdf)
and riscv32-fe310.dtsi (which already assigns riscv,ndev).
Also remove a spurious riscv,ndev assignment from
riscv32-litex-vexriscv.dtsi.
Also make edtlib and the old scripts/dts/ scripts replace '.' in
compatible strings with '_' when generating identifiers.

@galak
Changed

@galak
Updated

Got help from @PiotrZierhoffer and @mateusz-holenko re. the MiV board.

You made need to update soc/riscv32/riscv-privilege/miv/dts_fixup.h and drivers/interrupt_controller/plic.c

Done

How'd you get 31 for riscv,ndev on microsemi-miv.dtsi?

According to this doc: https://www.microsemi.com/document-portal/doc_download/1243781-mi-v-rv32imaf-l1-axi-handbook, page 10, Table 2 "MiV_RV32IMAF_L1_AHB Architecture" there are 31 external interrupts for MiV.

According to this doc: microsemi.com/document-portal/doc_download/1243781-mi-v-rv32imaf-l1-axi-handbook, page 10, Table 2 "MiV_RV32IMAF_L1_AHB Architecture" there are 31 external interrupts for MiV.

So is NUM_IRQS incorrect in soc/riscv/riscv-privilege/miv/Kconfig.defconfig.series ?


Loging in with facebook on Parse platform Server

Hello,
I would like to use this plugin to login my users on a parse server.
Now the best way in our days to login on Parse was something that is described here: https://stackoverflow.com/questions/40529682/making-a-prettier-facebook-login-screen-for-parse-com-server-with-xamarin-androi
which pretty much what it says is that after you do a native facebook login, with the return data you do something like this to login on Parse:
public async void OnSuccess(Object result)
    {
        // We know that this is a LoginResult
        var loginResult = (LoginResult) result;

        // Convert Java.Util.Date to DateTime
        var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
        var expireDate = epoch.AddMilliseconds(loginResult.AccessToken.Expires.Time);

        // FB User AccessToken
        var accessToken = loginResult.AccessToken.Token;

        ParseUser user = await ParseFacebookUtils.LogInAsync("Your Facebook App Id", accessToken, expireDate);
    }

But how i can get AccessToken and expireDate with your plugin?
Thanks

@rdelrosario @Pujolsluis please assist :) :)

Hey @CDrosos ,
I'm glad you're looking forward to using the plugin! :D, thank you for submitting this issue. we will be working on it to enable the required properties.

@CDrosos  Just released a new version:
https://www.nuget.org/packages/Plugin.FacebookClient/1.1.0
Should be able to access token:
CrossFacebookClient.Current.ActiveToken

And expiration date as well:
CrossFacebookClient.Current.TokenExpirationDate

Available on latest version
https://www.nuget.org/packages/Plugin.FacebookClient/1.2.0

@rdelrosario would it be possible to also provide a property for the AuthorizationCode as well?
https://developers.facebook.com/docs/accountkit/accesstokens/#authcode
I am consuming some APIs that required the code instead of the ActiveToken.


feat: low level callsupport

This PR adds two macros to the project: fn_selector!() and calldata().
These macros simplify the usage of the std::low_level_call::call_with_function_selector function by providing a more convenient way to generate the function_selector and calldata arguments.
contracts/low_level_call/src/main.sw
fn call_low_level_call(
    target: ContractId,
    function_selector: Bytes,
    calldata: Bytes,
    single_value_type_arg: bool,
) {
    let call_params = CallParams {
        coins: 0,
        asset_id: BASE_ASSET_ID,
        gas: 10_000,
    };

    call_with_function_selector(target, function_selector, calldata, single_value_type_arg, call_params);
}

low_level_cal test
let function_selector = fn_selector!(set_value(u64));
let call_data = calldata!(42u64);

contract_instance
    .methods()
    .call_low_level_call(
        contract_id.clone().into(),
        Bytes(function_selector),
        Bytes(call_data),
        true,
    )
    .call()
    .await?;

Checklist

[x] I have linked to any relevant issues.
[ ] I have updated the documentation.
[x] I have added tests that prove my fix is effective or that my feature works.
[x] I have added necessary labels.
[x] I have done my best to ensure that my PR adheres to the Fuel Labs Code Review Standards.
[x] I have requested a review from the relevant team or maintainers.

I faced a challenge while attempting to enable return for call_with_function_selector function for dynamic data types. Vec<_>
I sought the opinion of @MujkicA  and together we concluded that returning Vec<> would not be feasible without support from the SWAY team. @nfurfaro later confirmed that supporting low_level_call return may not be necessary at all. In light of this, I decided to remove support for returning static data for the time being, with the possibility of adding it later if required.


feat(plugins) Add plugins tpl functions

This PR aims to add dynamic and external plugins through a single new shortcode plugin.Open.
Related to #796

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

Could you please discuss this PR in an issue with detailed examples?


Can't be imported when installed in a virtualenvwrapper environment

I've installed maya on OSX in a virtualenv using virtualenvwrapper with python 2.7 and 3.5.  On both of them maya can't be imported even though it's dependencies can (eg humanize) ("ImportError: No module named 'maya'" is reported).  I haven't had this problem with any other package in several years of using virtualenvwrapper for all of my environments, so it's quite unusual.
Installing into a manually created virtualenv works fine.

Actually, it turns out installing into a manually created virtualenv also fails, so its not virtualenvwrapper specific.

this should now be fixed by #12


Connection to webpage refused when trying to login with github

When trying to upload my settings, clicking on the "Login with github" button takes me to a webpage with a refused connection which says :
This site can’t be reached.
localhost refused to connect.
Don't know what might be causing this issue.
Thanks.

It was an issue related with the windows firewall.

I have same issue, how to fix it?

I have same issue, how to fix it?

As I mentioned before, it was a problem related with the windows firewall. Try to look at your firewall settings.

I have the same issue. Tried changing my current connected network from Public to Private in network and sharing center, did not work. Do you have to allow VSCode in the firewall?

@o-l-a-v Unfortunately I don't remember at all, sorry

Remove extension, restart machine and try install Extension again


Chef-13: remove deprecated run_context methods

your tests are passing, i'm just seeing some transient travis failures


Browser Usage

The usage of fs to simply read README.md into a variable makes it difficult to use this module in browser. Is this line necessary? Removing it would make it easier to consume this library with webpack/browserify without additional configuration.

Sure. Submit a PR if you like, or I'll do it when I get a chance.
On Mon, Aug 15, 2016 at 1:41 PM, James DiGioia<EMAIL_ADDRESS>wrote:

The usage of fs to simply read README.md
https://github.com/aceface/crayon/blob/master/crayon.js#L364 into a
variable makes it difficult to use this module in browser. Is this line
necessary? Removing it would make it easier to consume this library with
webpack/browserify without additional configuration.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/aceface/crayon/issues/5, or mute the thread
https://github.com/notifications/unsubscribe-auth/AADdj2FCTGqHj3T89cpVTI-Qx4uodlHbks5qgM7pgaJpZM4Jkv_O
.


Console link (pull secret) among doc links

https://github.com/openshift-assisted/assisted-installer-ui/blob/322630e1276b254cfc10619d749f98cd5e46bf45/libs/ui-lib/lib/common/config/docs_links.ts#L16
This link looks like it does not belong in docs_links.ts.

Now in production: https://console.redhat.com/openshift/assisted-installer/clusters/~new


Feature request: ALE should prefer buffer-local variables over global variables (helpful for dynamic linter configuration)

Background
I'm trying out ALE as a replacement for Syntastic.
I work with both Python 2 and 3, and I need ALE to select the correct version of flake8 to use based on the file I'm working in. As suggested by the ALE documentation, I can set the executable and arguments used to invoke flake8 as follows:
let g:ale_python_flake8_executable = 'python3'   " or 'python' for Python 2
let g:ale_python_flake8_args = '-m flake8'

I'd rather do this automatically, e.g. by parsing the shebang line (shebang parsing borrowed from Syntastic):
function! BufferParseShebang()
    let l:line = getline(1)
    if line =~# '^#!'
        let l:line = substitute(line, '\v^#!\s*(\S+/env(\s+-\S+)*\s+)?', '', '')
        let l:exe = matchstr(line, '\m^\S*\ze')
        let l:args = split(matchstr(line, '\m^\S*\zs.*'))
        return { 'exe': l:exe, 'args': l:args }
    endif
    return { 'exe': '', 'args': [] }
endfunction

function! ALEPythonVersionDetect()  " {{{
    let l:shebang_info = BufferParseShebang()
    if l:shebang_info['exe'] =~# '\m\<python[2-3]'
        let g:ale_python_flake8_executable = l:shebang_info['exe']
        let g:ale_python_flake8_args = '-m flake8'
    endif
endfunction  " }}}
augroup ale_python_detect
    autocmd!
    autocmd filetype python call ALEPythonVersionDetect()
augroup END

Problem
The above code correctly sets the version of Python to use with flake8 when I open a new file, but the linter settings are stored as global variables in vim. If I open a file written in one version of Python and another file written in a different version of Python, ALE won't select the correct linter to use for each file (since the settings are global).
To illustrate this:

Put the above chunk of code in your .vimrc
Place the following in a file called py2:

#!/usr/bin/env python2
print 'test in python 2'

Place the following in a file called py3:

#!/usr/bin/env python3
print 'test in python 3'

Open py2: vim py2. Note that ALE correctly shows no flake8 errors.
Open a new split with py3. Note that ALE correctly shows an error about the invalid print statement syntax (since Python 3 requires parentheses with print).
Navigate back to the original split with py2. Note that ALE shows an error about the print statement, since the global settings for flake8 now invoke it with python3.

Solution
This problem would be solved if ALE supported reading linter settings from buffer-local variables, e.g. b:ale_python_flake8_executable, etc. Syntastic supports this behavior which makes working with different versions of Python easy using similar configuration as above, as each buffer has its own settings for invoking flake8.
ALE should be updated to prefer reading settings from buffer-local variables (b:), and fall back to the global (g:) variable of the same name if the buffer-local variable has no value.

Sure, why not? Also, parsing of the shebang should probably be implemented too. A similar thing has been done already for shell scripts. I'd open a separate issue for that.
One complication is that the handlers for when callbacks for commands are fired can happen from a different buffer from the one you scheduled linting for. I recommend using 'getbufvar' when implementing this.
Another thing to bear in mind is that ALE has been setting default values for globals. I wanted to set defaults so you can always use :echo to see what the current value is. I suppose defaults should be set in the same way for buffer variables.
One implementation could look like ale#Var('name', a:buffer, s:), which would check getbufvar(a:buffer, ale_name), g:ale_name, then get a default from the s: variable you passed before, remembering to always set defaults when either is undefined.
Then again, it might not be worth setting default for buffer variables at all, as there's no guarantee variables will be set, even after linters run, and it's purely just so you can echo the default value. If they aren't set, you can also print the overrides in :ALEInfo more easily. So ale#Var(a:buffer, 'name') is probably better, taking the default value from the global instead, without setting the buffer variable. That should also be easier to implement. (Just sed every current use of variables in the dir besides the first level of indentation.)
All officially supported linters will have to be changed to using callbacks instead of strings for things when they use variables. They ought to be that way anyway. There are a few variables which still need to be renamed. I think those older ones should only be taken from global scope, and the newer variables should be preferred. I might fix the latter first, the former second, and then tackle this issue afterwards.
I recommend implementing this for linter options first, and considering global options second. There might be some global options where they won't make sense as buffer variables.
There are my morning thoughts!

Buffer-local variables would also be really useful for disabling the shellcheck linter on scripts that only set variables, because you will get errors saying that the variables appear unused.
Examples of these scripts would be PKGBUILDs and dotenv files.

I have now implemented buffer variable overrides for all linter options. I'll add some documentation for this behaviour tomorrow.

I'll leave a comment here to remind myself. :ALEInfo needs to be updated to also output any buffer-local overrides that are set.

Now linters and aliases can be configured with buffer-local variables. ALE will look at the buffer-local Dictionary values for keys first, then the global Dictionary values, and then default Dictionary values.

I reckon enough options are supported in each buffer now. If any more are wanted, issues can be opened for them.


Function should not send a response when returned Null

Function should return no event/no payload when the Null value for the language is returned.
Right now this code is producing a new event as a reply:
apiVersion: extensions.triggermesh.io/v1alpha1
kind: Function
metadata:
  name: ocimetrics-to-logz
spec:
  runtime: python
  responseIsEvent: true
  public: false
  ceOverrides:
    extensions:
      source: ocimetrics-to-logz
  entrypoint: handleOCImetrics
  code: |
    def handleOCImetrics(event, context):
      return None

Function should be able to

If Null is returned ACK should be sent back with default attributes.
If an event is returned but the data element contains the Null value, and ACK should be sent back with user attributes.
If an event is returned with data in it (not Null but some content or the 0 value), return ACK plus the payload, just as it does now.

Right now this code is producing a new event as a reply:

I see that this function returns structured CloudEvents with required attributes to be properly evaluated by sender/receiver:
curl -s ocimetrics-to-logz-rnfplv.default.k8s.test | jq
{
  "id": "72d2fcf6-7fc9-4369-a61e-95ae83abbf66",
  "type": "io.triggermesh.function.python",
  "source": "ocimetrics-to-logz",
  "specversion": "1.0"
}

which looks like what you listed. Or should it return no message body at all? I'll need to check if CE receiver will register such a response as ACK

My original statement is wrong, I'll update it. I totally forgot ACKs do not contain attributes at all.

If Null is returned, ACK should be sent back.
If an event is returned, the current behavior should be kept.


Backend returns same transaction separately

Paul reported via Telegram that their Safe (https://gnosis-safe.io/safes/0x71B94163b085cc2ea7432D8cC96A94989Da4FD6e/transactions) shows the tx with nonce 18 as pending even though Etherscan shows it as successful.
https://safe-transaction.gnosis.io/api/v1/safes/0x71B94163b085cc2ea7432D8cC96A94989Da4FD6e%2F/transactions/ returns it twice:

Once with 1 confirmation and pending
Once with 2 confirmation and successful.

Why is that? Why isn't the backend able to connect both txs?
That might confuse the frontend.

but the 2 transactions with nonce 18 are different transactions ... ofcourse we return 2 of them

So then it’s more of a front end issue that I shouldn’t have had two tx with the same nonce in the first place? Or is the problem with MetaMask?

@pcowgill It was a mixed issue, backend was lacking a tx and frontend was not showing it right. Thank you for your reports Paul.


Move to catch2 v3?

At some point it may be worth modernizing our test infrastructure by moving from v2 of catch2 to v3. v3 is not header-only, it's more a proper static library, which should speed up compilation/linking times, as the entire catch library doesn't need to be built/linked per translation unit.
My question for you all is: what are the impediments to doing so from the perspective of our tooling?

@mauneyc-LANL you have a comment in the singularity-eos build that v2.13.7 is the version of catch that works with clang/newer compilers. Is this a problem for updating to newer catch?
Similarly, do we need update Spiner and ports-of-call to newer catch if we want singularity-eos updated?
Finally, for spack, is it enough to change the target in the spackage? Or do we need to install catch v3 on the CI shared spack? (Question for @ktsai7 or @rbberger )

@Yurlungur if you change the dependency to<EMAIL_ADDRESS>in the spackage, it will get pulled in and installed during CI, so it shouldn't stop your development
The CI will be slightly slower since it has to build the<EMAIL_ADDRESS>inflight until the next regular deployment cycle that pulls in the updated newer spackage after the spackaage has been merged in. If this slowed down is too much, then let me know and I can trigger a manual deployment update to pull the package in.

Isn't this now completed @Yurlungur ?

No this is the one thing I didn't get to when messing with the tests.

This is now done correct?

Yes.


Support Fever API

Docs

https://github.com/DigitalDJ/tinytinyrss-fever-plugin/blob/master/fever-api.md
https://github.com/nkanaev/yarr/blob/master/doc/fever.md

Closing for now. Google Reader covers a lot of services.


Create examples for Python

The examples are placed in the examples folder and are used by the Sphinx documentation generation tool
TODO:  Need to determine where output is hosted.
References

https://github.com/senzing-garage/garage-roadmap/issues/6

Delivered in https://github.com/senzing-garage/sz-sdk-python/issues/3


[Gekidou MM-44209] Markdown heading style updates

Summary
Udpates heading styles to use Metropolis and adjust some spacing for markdown rendering.
Ticket Link
Fixes: https://mattermost.atlassian.net/browse/MM-44209
Checklist

[ ] Added or updated unit tests (required for all new features)
[x] Has UI changes
[ ] Includes text changes and localization file updates
[ ] Have tested against the 5 core themes to ensure consistency between them.

Device Information
This PR was tested on: iOS Simulator (iPhone 13)
Screenshots

Before
After

NONE

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/22727
https://circleci.com/gh/mattermost/mattermost-mobile/22726

Artifact links:
https://output.circle-artifacts.com/output/job/ca65001d-9ef1-4699-9e2c-9f87cc02404e/artifacts/0/tmp/artifacts/Mattermost_Beta.ipa
https://output.circle-artifacts.com/output/job/578e89c7-0524-45ed-9811-6f860c335721/artifacts/0/tmp/artifacts/Mattermost_Beta.apk

👍  on the typography helper.. (1/5) really..
@matthewbirtch can you make sure this is also working as expected on Android? I see you only tested iOS

Changes look good to me - I do wonder if it's worth swapping over and using the typography helper to keep all the text consistent?
https://github.com/mattermost/mattermost-mobile/blob/gekidou/app/utils/typography.ts; use via heading1: { ...typography('Heading', 500) }

Great idea @shazm. I'll give that a try tomorrow and will see if I can sort that out. Definitely makes sense to keep it consistent.

@matthewbirtch can you make sure this is also working as expected on Android? I see you only tested iOS

Sure thing @enahum. I should have marked this as a Draft PR as I was going to review in Android as well before requesting any reviews.

@shazm @enahum typography is now being used. Thanks for the suggestion!

Waiting on the Android review before merging

Android simulator review looks good @enahum


Refactor file management pattern

We have a few places where the user can manipulate "files":

map edits in the main traffic sim
named routes in the bike network tool
bike network extensions (really just map edits, but presented in a different UI)
story maps (niche/experimental tool but still)
soon, the modal filter edits in the LTN tool (maybe that'll be map edits underneath, maybe not)

We have no consistent handling today. Some shared concerns / features for these things:

creating a new / blank file
saving / autosaving
naming them (and when do we force a name? and how to assign automatic names?)
renaming files
making copies of files
deleting files
prompting to save / delete before you navigate away and lose the state
sharing - a new in-progress feature needed ~immediately for #743
browsing files

and in the route tool, we even have a quick way of scrolling through all the routes

Step 1 is figure out what the ideal UX of file management even should be. Possible inspirations:

figma
excalidraw
streetmix

Then it'd be awesome to refactor code to handle this stuff consistently!

Not to increase scope here, but potentially this should also handle undo / redo / listing each change to a model. We really only have one implementation of that today in the main sim's edit mode, but it'd be useful everywhere.

save_dialog.excalidraw.txt

This is roughly how the LTN tool does it today, drawn with excalidraw
Crazy idea: as soon as you click some proposal and make a change, add a little "3 edits to above" button below the proposal. Have a button to save/overwrite, and a button to save as / fork

#1083 related too

Just some drive by commentary...
one common pattern in applications that manage document is to present the user first with quick access to a "recents" list with the option to "browse" to dig deeper - expanding the scope to explore the entire file system. Variants of this might be presented at application startup, or if the user manually selects some kind of "load" action. This is nice because the user doesn't have to decide up front that they want to "quick load" then realize they need to back out and "load from file system".
If reasonably possible, orienting the design around familiar notions like "load", "recents", and "browse" might help the user guess how things work.
I'm not sure exactly how to reconcile all that with the notion of undo/redo though, if that's still something you're hoping to tackle.
Going with the document mgmt paradigm, a couple of undo/redo patterns that I can think of:

occasional "autosaves" that appear in the filesystem with an intuitive name like "My Proposal - autosave 2023-04-12-16:00.json". If you had a notion of "autosaves" like this, I'm not sure if they should automatically appear in "recents" or not - it'd be more discoverable if they appear in recents, but it might quickly crowd out the recents list, so you'd then maybe need some kind of pruning.

have the version browsing not as part of the file picker, but as a separate step once the document is loaded, a la google docs version history.

If reasonably possible, orienting the design around familiar notions like "load", "recents", and "browse" might help the user guess how things work.

Thank you for this writeup! I was considering getting rid of the custom document management UIs entirely and just using native file dialogs (which have a "sort by modified time" control already that should be familiar). But the built-in UI is faster and can potentially summarize more info about the proposal. (rfd has slight lag before showing the dialog.) More recent feedback in #1082 from a regular user was asking for an app start screen that emphasizes recently opened projects. So I think in the short term, I'll take your suggestion and nest the full file loaders underneath the existing load/save dialogs, and re-word them a bit. Then as a next step, try a new start screen emphasizing recent files.

Going with the document mgmt paradigm, a couple of undo/redo patterns that I can think of:

These both seem reasonable, with the first being easier to implement. I'm trying to first simplify internal implementation of the edits in the LTN tool in #1079 and reduce the save file size by not including all boundary areas (even when they're unmodified). That'd partly give version history for free (if the saved files were not compacted, like they currently are) and make the cost of auto-saving copies less intense (especially in browsers, with that ~5MB local storage limit).


Fix the membership check in fsadmin

What changes are proposed in this pull request?
Fix the membership check in fsadmin
Why are the changes needed?
Fix the membership check
Does this PR introduce any user facing changes?
NA

alluxio-bot, merge this please


add credential on file support

This PR adds the credential on file support for Moneris.

Hey @njaw, sorry it took so long to get back to you. I had a chance to dig into why the tests were failing and it turns out it was the version of PHPUnit being installed. I've updated master with a new Travis config. Can you merge that in?

@craigpaul Updated


The problem of multiple chain types

Hi,
I got a question about the chain type and the clonotype definition in the tools.
It seems that each chain (no matter TCR α/β) in the same data file will be considered one type of clonotype right, instead of considering a combination of them?
So it means that different kind of chains should not be put in the same input file?
Are there any reference for this?
Many thanks,
Meng

Hello @MungLAW ! Yep, each chain will be considered as one type of clonotype.
You could sent a small part of the data you are working with. It will help us to deal with input formats you are using.
Next, it would be great to formulate data-problem you are trying to solve more specifically. May be we'll come up with a simple fix or solution to your case. But now It's hard to understand what functionality of Immunarch you are using.

@MungLAW, we finally fixed this in 0.4.3 version. Just apply the repLoad function to your data, and it will split files automatically. Note the "_TRA" and "_TRB" at the end of samples, new "Chain" and "Source" columns.
To test this download this data from 10xGenomics official website (http://cf.10xgenomics.com/samples/cell-vdj/2.2.0/vdj_v1_hs_pan_t/vdj_v1_hs_pan_t_filtered_contig_annotations.csv)
Then apply repLoad:
tmp = repLoad("path/to/your/data/vdj_v1_hs_pan_t_filtered_contig_annotations.csv")

Hi @MungLAW ,
did you manage to try the new version of the package? Is it working for you?

Hi @MungLAW , we are closing this issue for now, feel free to re-open it if the problem still persists.


single states data source as backup

add the single states data source tables as backup if the main table is not updated (as the last 2 days)
the backup is only used if the main data table is not updated!
In the past I have seen similar failures that the separate data tables (for each federal state individually) were usually not affected!

moved also the function parseDate() from data-requests/districts.ts to utils.ts because this function is also needed in data-request/states.ts and data-requests/germany.ts
add the function getDataAlternateSource() witch will do the requests for the single data tables.

Fix #415

i' m now on vacation till sunday, if more changes are needed i will do that on next monday

the data request from the seperatly state databases is now realy fast, maybe we should switch to the alternate by default?

@marlon360 Hi marlon all your requested changes are done, ready for re-review!

add some small bugfixes and revised the promises,


crawl_config -> headers -> cookie ERROR

Hi binux
TypeError: translate() takes exactly one argument (2 given)  in headers cookie format.
How should i wirte cookie in headers,thank you.
I define headers contain cookie like this
"headers": {
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
      "Accept-Encoding": "gzip, deflate, sdch",
      "Accept-Language": "zh-CN,zh;q=0.8",
      "Cache-Control": "max-age=0",
      "Connection": "keep-alive",
      "Cookie": "ASP.NET_SessionId=srd5jj55nfz4bifu4qj0md45; safedog-flow-item=061291BD561E31C88845D84BAF857382; ",
      "Host": "www.hzyhrc.net",
      "User-Agent": "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36"
    }

then program with this error
Traceback (most recent call last):
  File "/opt/pyspider/pyspider/run.py", line 348, in <lambda>
    app.config['fetch'] = lambda x: webui_fetcher.fetch(x)[1]
  File "/opt/pyspider/pyspider/fetcher/tornado_fetcher.py", line 114, in fetch
    return self.http_fetch(url, task, callback)
  File "/opt/pyspider/pyspider/fetcher/tornado_fetcher.py", line 249, in http_fetch
    c.load(fetch['headers']['Cookie'])
  File "/usr/lib/python2.7/Cookie.py", line 635, in load
    for k, v in rawdata.items():
AttributeError: 'unicode' object has no attribute 'items'

so i change cookie to dictionary like this
"Connection": "keep-alive",
      "Cookie": {
        "ASP.NET_SessionId": "rkexw03xyrt3r445dknl0y2u",
        "safedog-flow-item": "061291BD561E31C88845D84BAF857382"
      },
      "Host": "www.hzyhrc.net",

then program with another error like this
File "/opt/miniconda/lib/python2.7/site-packages/pyspider/fetcher/tornado_fetcher.py", line 249, in http_fetch
    c.load(fetch['headers']['Cookie'])
  File "/opt/miniconda/lib/python2.7/Cookie.py", line 644, in load
    self[k] = v
  File "/opt/miniconda/lib/python2.7/Cookie.py", line 600, in __setitem__
    self.__set(key, rval, cval)
  File "/opt/miniconda/lib/python2.7/Cookie.py", line 589, in __set
    M.set(key, real_value, coded_value)
  File "/opt/miniconda/lib/python2.7/Cookie.py", line 458, in set
    if "" != translate(key, idmap, LegalChars):
  File "/opt/miniconda/lib/python2.7/string.py", line 495, in translate
    return s.translate(table, deletions)
TypeError: translate() takes exactly one argument (2 given)

Project url:"http://demo.pyspider.org/debug/zhang_test2"

self.crawl(headers={},cookies={})
This two different the object.
This: Headers = {"cookie":{}} - not corrected
http://docs.pyspider.org/en/latest/apis/self.crawl/

I don't know why your cookie is unicode, but /usr/lib/python2.7/Cookie.py is testing string type with         if type(rawdata) == type(""): is definitely bad behaviour.
I try to fix it by a try...catch, but as I cannot reproduce it and do full test, feel free to reopen if it's not fixed.


Unable to start plugin

I am trying to follow the instructions to mount my CIFS share since I am new to this plugin. When I run the command below, I get an invalid group message.
service docker-volume-netshare start
chgrp: invalid group: ‘docker’

Also, what am I supposed to change for step "Modify the startup options in /etc/default/docker-volume-netshare"? Am I supposed to uncomment this line and pass in the username, password and domain? -
## CIFS
#DKV_NETSHARE_OPTS="cifs -u user -p pass -d domain"

It looks like your starting the plugin as a "non-root" user.  Like the docker daemon this needs to run as root.

Hi Jeremy, I am signed in as root. Even tried with sudo.
root@f40fae534f99:/# service docker-volume-netshare start
chgrp: invalid group: ‘docker’

Can you paste the contents of the systemd or init service that executes docker-volume-netshare.  I've never seen this issue and the code itself doesn't try to chgroup so its something external.  What happens if you execute the binary yourself as root (you can CTRL-C to exec).  ./docker-volume-netshare cifs -u user -p pass -d domain

If I try to execute binary as root -
root@f40fae534f99:/# ./docker-volume-netshare cifs -u user -p pass -d domain
bash: ./docker-volume-netshare: No such file or directory

Install information
root@f40fae534f99:/# dpkg -s docker-volume-netshare
Package: docker-volume-netshare
Status: install ok installed
Priority: extra
Section: devel
Maintainer: Jeremy Unruh (https://github.com/gondor<EMAIL_ADDRESS>Architecture: amd64
Version: 0.15
Description: Docker Volume Plugin - Netshare

Here are the contents of systemd and init from the docker container -
Contents of systemd -
root@f40fae534f99:/etc/systemd# ls -lrt
total 40
-rw-r--r-- 1 root root 1127 Oct 15 05:01 user.conf
-rw-r--r-- 1 root root  534 Oct 15 05:01 timesyncd.conf
-rw-r--r-- 1 root root 1471 Oct 15 05:01 system.conf
-rw-r--r-- 1 root root  589 Oct 15 05:01 resolved.conf
-rw-r--r-- 1 root root  966 Oct 15 05:01 logind.conf
-rw-r--r-- 1 root root  970 Oct 15 05:01 journald.conf
-rw-r--r-- 1 root root  720 Oct 15 05:01 bootchart.conf
drwxr-xr-x 2 root root 4096 Oct 15 05:01 user
drwxr-xr-x 2 root root 4096 Oct 15 05:01 network
drwxr-xr-x 5 root root 4096 Feb 17 04:49 system

Contents of init
root@f40fae534f99:/etc/init# ls -lrt
total 44
-rw-r--r-- 1 root root 284 Jul 23  2013 hostname.conf
-rw-r--r-- 1 root root 300 May 21  2014 hostname.sh.conf
-rw-r--r-- 1 root root 363 Jun  5  2014 procps-instance.conf
-rw-r--r-- 1 root root 119 Jun  5  2014 procps.conf
-rw-r--r-- 1 root root 109 May 18  2015 hwclock.sh.conf
-rw-r--r-- 1 root root 444 May 18  2015 hwclock-save.conf
-rw-r--r-- 1 root root 557 May 18  2015 hwclock.conf
-rw-r--r-- 1 root root 534 Jul 20  2015 passwd.conf
-rw-r--r-- 1 root root 352 Oct 15 04:34 udevtrigger.conf
-rw-r--r-- 1 root root 360 Oct 15 04:34 udevmonitor.conf
-rw-r--r-- 1 root root 337 Oct 15 04:34 udev.conf

@gondor if it helps this is the docker container I am using - https://github.com/SeleniumHQ/docker-selenium/tree/master/NodeChromeDebug

Sorry, didn't know you installed the package.

I was running these commands in the container. I may have misunderstood, but are these commands run on the host?

Yes, All docker volume based plugins need to run on the host system since they register with the Docker daemon.
Thats how you can then run your containers using the docker run --volume-driver cifs --volume host/share:/container/mount SomeContainer etc
The Docker daemon calls the volume plugin who mounts a volume in a tmp directory on the host and links it to the specified directory within the container being run.

Hi @gondor sorry I wasn't able to test it out yesterday as I wasn't at work. Will the commands listed to set up docker-volume-netshare work on a Mac (dpkg isn't available)?

No, Docker doesn't run natively on mac.  This has to run where Docker runs which on a mac would be the docker VM.  The docker vm though is pretty slim so you may have to mess around with it to get it to work.


No helpful warnings when Tessel is in DFU mode

We get an error when running Tessel commands with a Tessel in DFU mode. See: https://github.com/tessel/t2-cli/issues/827
This is my experience with upgrading vintage Tessels by hand. 🙃 My goal was to boot into DFU mode and flash the latest OpenWRT and latest SAMD21 firmware.
I guess I'm confused about t2 restore and t2 update in general. Right now, when I plug in a T2 in DFU mode, I'm not sure what I can do with it from the command line. We have the option to physically boot it into this mode, but is there no way for the user to do anything with it?
My expectation is that t2 update would suggest only flashing firmware if we are in DFU mode. I also expected t2 restore to flash OpenwWRT, possibly.

Actually I guess I'm confused about t2 restore in general:

It only flashes OpenWRT, not OpenWRT and firmware. But it flashes it through the SAMD21, so could it also flash the SAMD21?
It can't detect a device in DFU mode.
When running t2 update with a device in DFU mode, it doesn't detect or suggest options. But we use DFU mode to flash the SAMD21. i.e. there's no "only flash SAMD21" option from the command line that's trivial.

I would expect the following, probably:

When not booted, t2 update says there's a T2 booting.
When booted, t2 update flashes version on OpenWRT and SAMD21.
When in DFU, t2 update says there's a T2 in DFU mode. If you want to flash it in this mode, use t2 restore.
When not booted, t2 restore succeeds in flashing both OpenWRT and SAMD21. (Maybe there are options to just do OpenWRT OR SAMD21?)
When booted, t2 restore succeeds in flashing both OpenWRT and SAMD21.
When in DFU, t2 restore succeeds in flashing both OpenWRT and SAMD21.

Right now, when I plug in a T2 in DFU mode, I'm not even sure what I can do with it from the command line. We have the option to physically boot it into this mode, but no way for the user to do anything with it.

I think the assumption made when building those two commands was that most users wouldn't know what DFU mode is and shouldn't have to.
Both t2 restore and t2 update work properly from a Tessel in a standard boot state (not DFU).
I think that they could be made to work better if they could deal with a Tessel that's in DFU mode without throwing any errors.
Second best would be a warning telling the user to take the device out of DFU mode and to try the command again.

Second best would be a warning telling the user to take the device out of DFU mode and to try the command again.

I would prefer is this was the approach

@johnnyman727 Yeah, I can probably submit a PR to accomplish either of those.
Nonetheless, say I have a borked SAMD21. The bootloader still works—if I throw it into DFU mode. But we have no commands which allow you to flash it that way, but t2 update would, if we could skip the OpenWRT updating part. Is that reasonable to add? "Your T2 is in DFU mode, only updating firmware."

And also, should t2 restore reflash the SAMD21 firmware as well? Why not?

Right now there is no use for holding down reset to get into DFU mode, since the user can't do anything meaningful with it from the CLI.

I don't agree with this reasoning. The CLI's capabilities don't have an obligation to the button on the board. The on board button's "hold for DFU mode"  functionality is vital for local t2-firmware development.

And also, should t2 restore reflash the SAMD21 firmware as well? Why not?

IIRC, there is no Tessel remote connection available at the end of the restore operation. This also prevented the automatic rebooting of the board at the end of t2 restore

I don't agree with this reasoning. The CLI's capabilities don't have an obligation to the button on the board. The on board button's "hold for DFU mode" functionality is vital for local t2-firmware development.

Fair point. I'm just saying from a user standpoint this is what we currently provide:

My OpenWRT partition is screwed up. — Run t2 restore.
 — Manually download a firmware file from builds.tessel.io. Install dfu-util. Switch into DFU mode on boot, then run the dfu-util command.

It's less discoverable, unless I'm missing something? This is just my experience this morning figuring out how to bring some old T2's to life. This process doesn't have to be added to t2-cli, but we should document it somewhere; and I think t2 restore-dfu or something would be useful in a pinch.

IIRC, there is no Tessel remote connection available at the end of the restore operation.

Can we switch the USB alt setting at the end of the flashing period to DFU mode?

Okay, so here's what I propose I try. A PR that does the following:

A PR that warns the user to take the device out of DFU mode and to try the command again.
A change to t2 restore that flashes factory firmware on the SAMD21, then flashes the OpenWRT firmware, without requiring user intervention.

If I can't accomplish number 2) then I'd concede it's not worth the cost of integrating into the CLI. ;)

A change to t2 restore that flashes factory firmware on the SAMD21, then flashes the OpenWRT firmware, without requiring user intervention.

In t2 update, the SAMD21 is updated last because doing so automatically reboots the SAMD21, which means the Tessel connection is lost.

t2 restore uses a different mechanism for flashing, specifically a dedicated USB alt setting.

A PR that warns the user to take the device out of DFU mode and to try the command again.

:+1:

A change to t2 restore that flashes factory firmware on the SAMD21, then flashes the OpenWRT firmware, without requiring user intervention inbetween / any potential for additional issues.

Yeah, I think this makes sense. We didn't implement it originally because we were just focusing on borked OpenWRT images. As a user, I think I would expect it to update the firmware as well. Maybe more importantly, we should try to make sure the firmware running on the SAMD21 is compatible with the version of OpenWRT which necessitates flashing the firmware as well. You should be able to switch it into dfu mode from flash mode without a problem.
Also, it would be nice to not have to use dfu-util anymore. :+1:


Sequence Selection - selecting primers resets pending date selection

In the sequence selection modal, if switching to primer mode and selecting/deselecting primers, a pending date change (and potentially other selections) are reset

Closed by #460


assign doesn't support ensuring Context matches TypeState

Description
Currently xstate supports changing state in an action using assign. This works great, but it is implemented in a way that ensures that if you provided a TypeState, it may mutate the context in a way that defies the TypeState definition.
If you pass a callback to assign, it correctly provides a TypeState-narrowed version of Context as an argument based on the origin state, but because the callback assumes you want to do a partial merge to context, using Partial<Ctx> as the return type, it means that you can replace the context with a value that actually defies what the TypeState parameter says the shape of the object will be (it will accept any return value so long as it's Partial<Ctx> and merge it blindly).
Expected Result
That's fine for convenience but if I want to actually make sure my program is type safe, I'd like the return type of the assign function to constrain me to the shape of the destination TypeState.
@davidkpiano rightly pointed out that doing that with the partial merge syntax is probably impossible - which is because that behavior is inherently type-unsafe to begin with, blindly merging objects and hoping they match any arbitrary constraint on the context type.
So what that means is a syntax or alternative to assign that forces me to implement the transformation from the past context + event data to the next context, much like any normal reducer pattern / the useState hook would force me to do anyway.
So long as that "replace" version of assign forces a shape matching the proper TypeState (which should be easily parameterized given that the on block already has the destination state annotated), then I can get TypeScript to force me to provide a valid context value.
Actual Result
I can cause TypeScript to be mistyped with a bad assign, turning the type checker against me (debugging scenario: TypeScript says this value should be some type, so I trust it!! (little did I know that the types were lying, in fact it was something else and I'm sent the wrong direction debugging or stop trusting my TypeScript types)
Reproduction
Will do in a little bit

Additional context
I can force myself to do this by explicitly typing the return value of the assign callback to be the proper TypeState object, but it's wordy and repetitive to have to do that by hand every time.

Moving this to a more general discussion, since this is not yet a feature of XState: https://github.com/davidkpiano/xstate/discussions/2322


[REQUEST] Supports Google's Embeddings Model

Reference Issues
No response
Summary
Supports these Google's Embeddings Model

Basic Example
I hope this project will support Google's embedding model
Drawbacks
Slight increase in complexity
Additional information
No response

I too am waiting for this because Cohere gets rate limited quite easily. I have a real bad time pulling in docs.

Cohere gets rate limited quite easily. I have a real bad time pulling in documents into Kotaemon.

@umeshkumarasamy We are workin on this in our backlog. Stay tuned!


GPU

I checked the paper that says it is using multiple GPUs, how big a GPU and its model is needed.

Thank you for your attention. It's fine to train our model with more than 2xA40 GPUs.

Hi, I found that the pre-training weights URL is not opening, can you send me an email? I would appreciate it if you could send it to me<EMAIL_ADDRESS>

Thank you for your reminder. I have sent our pre-training weights to your email, or you can download them from here: Dropbox link.


Using async-http as a transport

Async::HTTP is an asynchronous persistent and scalable HTTP client which works very well within the Falcon server.
I have been reading https://github.com/elastic/elasticsearch-ruby/blob/master/elasticsearch-transport/README.md#transport-implementations but it's not clear how you achieve thread safety.
Do you use one faraday connection instance per client?
Are you aware of the new hooks to manage life-cycle of persistent connections? e.g. Faraday::Connection#close?
Do you expose those methods from the client?
Just wondering how best to support elasticsearch.

Hi @ioquatix, I've transferred this issue to the new home for elastic-transport. You can see how connections are handled in base.rb and the different implementatiosn in http. You can write a new implementation by including Elastic::Transport::Base and implementing the API.
Adding support for Async::HTTP is not on our roadmap at the moment, but we'll gladly review the code if you submit a PR.
Thank you!


[Bug]: changes to order in spot market facilities array is not tolerated

Terraform Version
latest used in CI
Equinix Provider Version
version = "1.18.0"
Effected Terraform Resources
equinix_metal_spot_market_request
Terraform Config Files
resource "equinix_metal_project" "test" {
  name = "tfacc-spot_market_request-%s"
}

resource "equinix_metal_spot_market_request" "req" {
  project_id    = "${equinix_metal_project.test.id}"
  max_bid_price = 0.01
  facilities    = local.facilities
  devices_min   = 1
  devices_max   = 1
  wait_for_devices = false

  instance_parameters {
    hostname         = "tfacc-testspot"
    billing_cycle    = "hourly"
    operating_system = local.os
    plan             = local.plan
  }
}

data "equinix_metal_spot_market_request" "dreq" {
  request_id = equinix_metal_spot_market_request.req.id
}

Debug Output
resource "equinix_metal_spot_market_request" "req" {
              ~ facilities       = [ # forces replacement
                  + "am6",
                  + "ch3",
                    "da11",
                  - "tr2",
                  + "da6",
                  + "dc10",
                    "dc13",
                  - "ty11",
                  + "fr2",
                  + "hk2",
                  + "la4",
                  + "md2",
                    "ny7",
                  + "pa4",
                    "se4",
                  - "sg4",
                  - "dc10",
                    "sg1",
                  - "pa4",
                  - "fr2",
                  + "sg4",
                  + "sg5",
                    "sp4",
                  - "hk2",
                  + "sv15",
                    "sv16",
                  - "da6",
                  - "ch3",
                    "sy5",
                  - "am6",
                  - "md2",
                  - "sg5",
                  - "sv15",
                  + "tr2",
                  + "ty11",
                ]

Panic Output
No response
Expected Behavior
Mismatched order of the returned facilities should not trigger replacement.
Actual Behavior
replacement is needed
Steps to Reproduce
Run the project CI - that's where this bug was found. TestAccDataSourceMetalSpotMarketRequest_basic
https://github.com/equinix/terraform-provider-equinix/actions/runs/6629149298/job/18007833452#step:5:3011

The resource already ignores changes to ordering in the facilities attribute, but it does that via a SuppressDiff function, so when other changes happen in the facilities attribute, the diff shows those changes as well as the changes to the ordering.
In this case, there is one facility added to the list: + "la4",.  I'm not sure how that change is coming in; I guess the local.facilities--read from the plan data and cached in terraform state--includes la4, but the API response for the spot market request doesn't include that facility for some reason?
I'm not sure how much we should really sink into this, given the impending deprecation of facilities platform-wide.  At some point soonish, the affected attribute should become read-only, at which point the weird diff behavior goes away.  That said, adding a CustomizeDiff function for the resource would at least make it easier to see what the real change is, even if we can't track down why the facilities list is different.


fixed Issue #9673

Issue Reference
#9673

Checked and Found that the issue has been fixed and working fine now. Please check the screenshot for reference.
Video
https://github.com/bagisto/bagisto/assets/92721837/3ad0c5ea-0b0a-498e-ae8a-defddff92c8a


Some primitive Views cannot access @Environment

For instance, the Text element inside of EnvironmentDemo will never get any Environment injected. You can see this by putting the following print after // Inject @Environment values in StackReconciler.swift:
print(compositeView.view.type)

The Text element is never logged.
I'm not sure how to fix this. Do you have any ideas @MaxDesiatov ?

Thanks, I'll have a look...

Hmm, ok I'll try and find a better spot for it...


Removed from Sudoers

I just had a case where I ran my playbook configured an existing user with groups etc.
After rebooting, I found that my user is no longer in the sudoers.
This should not happen :/

Hi, and it shouldn't... got any more info on this one?

This is the configuration I used:
users:
- name: DP Developer
  username: vagrant
  group: vagrant
  authorized_keys: []
  groups: ["vagrant", "docker"]

After investigating the user suddenly was part of the group "DP Developer" only.
Now this might be a bug in the user module for on Ubuntu 16.04 because your role works perfectly find on my 14.04 targets. I didn't have time to properly investigate this issue though.

Mmh, yeah, guess this will take some time to figure out what really happened... let me know if you figured sth out.

@mozzymoz I believe the expected ansible behaviour is to set the group membership to those specified, unless you setappend: yes.
See http://docs.ansible.com/ansible/user_module.html for information about the append parameter.
You should either add append: yes to your configuration, or add the appropriate sudo group to the groups list.

@terbolous thanks for the hint.


Master-CI

Do we need all this?

Refers to: Source/MSBuildTools.Unity/Packages/manifest.json:41 in 43acf68. [](commit_id = 43acf68e08fc0af4058e44422aa0f28cc321b85f, deletion_comment = False)


Fix tls_cbc_digest_record is slow using SHA-384 and short messages

The right value for this variable is
kVarianceBlocks = 384 / md_block_size;

Notice that md_block_size=64 for SHA256, which results on the
magic constant kVarianceBlocks = 384/64 = 6.
However, md_block_size=128 for SHA384 leading to
kVarianceBlocks = 384/128 = 3.

CLA:trivial

Placing a hold on this while I look at it in more detail.

I don't really understand how the formula you propose is derived.
Given any particular encrypted record an external observer will not know exactly how much data is in it. If there is a long padding then we will need to hash less data than if there is a short padding. We do not want to leak any timing information which might indicate the length of the data. As I understand it the kVarianceBlocks variable holds the difference between the maximum and minimum number of hash blocks that will be required to process any particular record.
The minimum number of hash blocks will occur in the case where padding is maximal (because with more padding stripped off there is less data left to hash). We're specifically talking about the TLS case here (not SSLv3), so the maximum padding is 255 bytes, plus 1 byte of padding length.
There is a comment in the code here which says "We conservatively assume that the MAC size varies from 0..20 bytes". This is clearly referring to a SHA1 hash. It's not clear to me why we would need to assume this since the MAC size is constant and is public information. However, in order to be able to make a comparison with the current code, I'll make the same assumption. So this means that the difference in the amount of data that might need to be hashed  (in the SHA1 case) is:
255 /* padding bytes */ + 1 /* padding length */ + 20 /* hash length */

For a maximally padded record we will need to "pretend" to hash that amount of data in order to be doing the operation in constant time. That means that the number of hash blocks required for that is:
(255 + 1 + 20) / md_block_size

But actually that's not entirely correct, because in C integer arithmetic that will round down. However in practice if we have a partial block we need to round up, so that makes it:
(255 + 1 + 20 + md_block_size - 1) / md_block_size

However there is a further complication. The "real" data that needs to be hashed has to be padded for the hashing algorithm. For SHA1 the smallest amount of padding that can be added is the "0x80" byte plus 8 bytes containing the message length, i.e. 9 bytes. If the data length is within 9 bytes of the end of the hash block boundary then the padding will push it into an extra block to be hashed. The same argument applies for all the other hashes (except for SHA384 the minimal padding is 17 bytes). Therefore for SHA1 the whole formula is:
((255 + 1 + 20 + md_block_size - 1) / md_block_size) + 1

Or more generally:
((255 + 1 + md_size + md_block_size - 1) / md_block_size) + 1

Working this out for all the various hash algorithms gives us: MD5 == 6, SHA1 == 6, SHA224 == 6, SHA256 ==6, SHA384 == 4
We could actually simplify the formula even more because the hash size is a public value. Also the padding length value will always be present. So, with slightly less conservative assumptions we could ignore these and simplify the formula to:
((255 + md_block_size -1) / md_block_size) + 1

This would give us: MD5 == 5, SHA1 == 5, SHA224 == 5, SHA256 == 5, SHA384 == 3
I'm not sure if I have the courage to make that change though in case there is something I haven't thought of :-)

@mattcaswell I'm following and in agreement up until:
((255 + 1 + md_size + md_block_size - 1) / md_block_size) + 1

I'm uncomfortable with the simplification at the end.  Even though these two sizes are known, wouldn't the presence / absence of an extra block indicate something nonetheless?

I'm uncomfortable with the simplification at the end. Even though these two sizes are known, wouldn't the presence / absence of an extra block indicate something nonetheless?

I can't think how it would. But I'm also a little uncomfortable, so I think we can stick with the un-simplified form.

The key point is that the kVarianceBlocks value depends on the hash algorithm, and more specifically, in the md_block_size since larger SHA functions consume more data per block. Thus, there are required a less number of extra "dummy" blocks.
I considered kVarianceBlocks = 384/md_block_size guided by the comments in the code. However, it is more accurate the derivation proposed, which considers also the 255+1 bytes from the padding (in the worst case).
kVarianceBlocks = ((255 + 1 + md_size + md_block_size - 1) / md_block_size) + 1

Ping @paulidale.

I've merged to 1.1.1 and master.  I edited the commit message to reflect the formula actually used.


The online editor cant render on Chrome

Using Chrome, even in an incognito session, when i try to render the code i get  an error message:

The change you wanted was rejected.
Maybe you tried to change something you didn't have access to.
If you are the application owner check the logs for more information.

Even if i try to render the default code without touching the code.
On my friend PC right next to me, the editor works fine.
For me- works fine on Firefox.
Thanks!

Related to #27

true. closings.


[WFLY-19493] Upgrade the OWASP Dependency Check Plugin to 10.0.1

https://issues.redhat.com/browse/WFLY-19493

Thanks @darranl


Remove unused parameter from the "depr" function.

Tried to dig in the commits for a reason for this parameter but couldn't find any. It was once introduced as "hard" with no explanation and then changed to "strict". It never served a purpose as far as I can see.

I rewrote the function some time ago and the patch no longer applies. Chances are high that this PR triggered the rewrite, so thanks anyway ;) This can be closed.


GC: wasmparser: Add (ref null? i31) type

Unboxed integers (i31) is the most trivial reference type added by the Wasm GC specification, and the easiest to parse 🙂
This PR adds and enables a roundtrip test to demonstrate support for all flavors of i31 references.
Also, change RefType internal structure to represent types introduced by the GC spec as described below.
RefType is a bit-packed enum that fits in a u24 aka [u8; 3].
Note that its content is opaque (and subject to change), but its API is stable.
It has the following internal structure:
[nullable:u1] [indexed==1:u1] [kind:u2] [index:u20]
[nullable:u1] [indexed==0:u1] [type:u4] [(unused):u18]

, where

nullable determines nullability of the ref
indexed determines if the ref is of a dynamically defined type with an index (encoded in a following bit-packing section) or of a known fixed type
kind determines what kind of indexed type the index is pointing to:10 = struct
11 = array
01 = function

index is the type index
type is an enumeration of known types:1111 = any

1101 = eq
1000 = i31
1001 = struct
1100 = array

0101 = func
0100 = nofunc

0011 = extern
0010 = noextern

0000 = none

(unused) is unused sequence of bits

Thanks for the quick response @alexcrichton!

Thanks for this! Out of curiosity are you interested in implementing the GC proposal in wasmparser?

This is my intention 🙂

Otherwise though, one thing I'm curious about is whether it's worth getting "extra clever" with the representation here. For example an alternative representation would be:
[nullable:u1] [kind:u3] [index:u20]
[nullable:u1] [kind:u5] [(unused):u18]
where kind:u3 has the first two bits as "what is being index" and the third bit is always set:
001 = func
011 = struct
101 = array

where alternatively kind:u5 always has the 3rd bit unset:
00000 = func
01000 = struct
10000 = array

11000 = any
11001 = eq
11010 = i31
11011 = nofunc
11100 = extern
11101 = noextern
11110 = none

or... something along those lines. The idea here being that "is this a function" only needs to look at 2 bits and it doesn't matter whether it's indexed or not. Everything else would fit around the indexed func/struct/array.

Hopefully, it can already be determined if the ref is a function using my layout 😅
This was a goal. It turns out to also work for structs (but not arrays, apparently, as they have the same 2 bits as any and eq)

I don't know whether this is worth it though and it sort of highly depends on what the perf bottlenecks are in gc validation, if any. As I wrote all this out I suspect that going with a simpler scheme like you've implemented is probably the way to go.

Yeah, and we can change it (if needed) when we know more.

Looks like there's still a compile error in the workspace:
https://github.com/bytecodealliance/wasm-tools/actions/runs/4826112620/jobs/8597648525?pr=1004#step:4:361
error[E0063]: missing field `gc` in initializer of `WasmFeatures`
   --> crates/wasm-smith/tests/core.rs:285:5
    |
285 |     WasmFeatures {
    |     ^^^^^^^^^^^^ missing `gc`

FYI, you can build all crates in the workspace and run all of their tests with cargo test --all.

Thanks! Fixed.


feat: Migrate DraggableListCard and DraggableListComponent from ads

Description
Migrated DraggableListCard & DraggableListComponent from ads folder to components/propertyControl. Currently these components can't be migrated to design system package because the usage of propertyControl components inside these. This can be picked up later while refactoring if necessary.
Fixes #17201
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Tested in local

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/ok-to-test sha=ce30a8b

/ok-to-test sha=4ba9b62

/ok-to-test sha=7c2f8e8

This PR has been tested. No issues found.


Change the collection of proxy service from cookie to localStorage

Change the collection of proxy service from cookie to localStorage

关联 issue：#8
Doraemon 文章订阅功能升级步骤：https://dtstack.yuque.com/docs/share/295be9d9-43dd-4c80-ad2a-077b58c4be30

关联 issue：#16


Custom input type not separated like default bot composer input type

Describe the bug
Created a custom input type . GUI is not separated like default bot composer input type

Right side panel display in the flat view , not tab wise like Bot Asks, User Input , other
Visual editor title is missing ( Ref the screenshots)

Version
Version:  1.4.0-nightly.236155.f2b2823
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0
Browser

[X] Electron distribution
[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[X] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:
code is available here : https://github.com/BotBuilderCommunity/botbuilder-community-dotnet/pull/381/files
Expected behavior
Should be separated like default bot composer input type
Screenshots

@rvinothrajendran the tabbed input type is a custom control bound to the Bot Framework SDK Input Dialogs. We do not expose the ability to reuse these tabs in custom actions like you have created at the moment.
In the future, we will expose additional tooling to customize this experience further for you. We'll keep this on the backlog as a feature-request.

@cwhitten thanks for the information.


mame 0.180

Created with brew bump-formula-pr.

This should have the rom-tools added to it, but I will leave that to someone else.
See https://github.com/Homebrew/homebrew-games/pull/744.


sys/src/libauthsrv: prevent k10cpu+/dev/sdXX/nvram from panic

a cpu server of 9k kernel using nvram partition can't read nvram.
so readnvram asks and writes new key but kernel panics.
steps to reproduce:

add sd device support to dev section of k10cpu
remove nvram from rootdir section of k10cpu
make kernel and reboot

Thanks. I've added your change to 9legacy (see http://9legacy.org/patch.html)
http://9legacy.org/9legacy/patch/libauthsrv-findnvram-amd64.diff
This repository will automatically be regenerated from the latest patches available on http://9legacy.org/.


Azure OpenAI Service preview API 2023-12-01-preview will be retired by 2 April 2024

Package Name:  @azure/openai
Package Version: 1.0.0-beta.11
Operating system:  Windows 11
[ ] nodejs

version:  18

[ ] browser

name/version:  -

[ ] typescript

version: 5.3.3

Is the bug related to documentation in

[ ] README.md
[ ] source code documentation
[ ] SDK API docs on https://docs.microsoft.com

Describe the bug
I've received an email with Update your code to use the latest Azure OpenAI Service preview API by 2 April 2024 from Microsoft Azure stating that the API version "2023-12-01-preview" will be retired. It seems the @azure/openai 1.0.0-beta.11 is still using the "2023-12-01-preview" API version.
Do we need to wait for the new @azure/openai npm package or we need to update our code to overwrite the API version with  "2024-02-15-preview" by using the apiVersion field of the ClientOptions?

@sfodor Thanks for reaching out! Yes, we recommend setting the apiVersion client option for now. We'll release more details on how we support newer API versions in the near future. Please let me know if you have any other questions!

Hi, appreciate this is a closed ticket and you've provided this as the answer, but... with only a few days to go before the deadline, are you sure you don't want to put out a new beta with the default version updated to the latest GA?
Judging by NPM stats, almost all of your users (me included) are on beta.11.

<EMAIL_ADDRESS>has been released with support for March API version.


Added support to mongodb logging

Working well locally. The OpenShift part is still TBD, I see some mongo related stuff in the openshift folder but I'm a little bit confused about how it should be configured. Please, feel free to modify this branch @ashtonmeuser

Closing in favour of PR#84.


Removed cyphering capability from OpenXML

Q
A

Bug fix?
no

New feature?
yes

New sample?
no

Related issues?
nothing

What's in this Pull Request?
Removed the encyphering arguments, because we will not provide encryption in the OpenXML connector.

Ouch! I targeted the wrong repo ... sorry about that! :)