Visualising ARGs inferred from the Kreitman dataset

In our ARG paper, we show a number of ARGs inferred from the same classic D. melanogaster dataset (by Kreitman):

It would be great to see how these can be displayed by the ts_arg_visualiser. I've zipped up the respective tree sequences below:
Kreitman_SNP_inferred_ARGs.zip

Starting with the simplest one, these are for the ARG from KwARG with y_axis_scale="time" and y_axis_scale="rank". For the first, I didn't move the nodes at all. I would say that the ordering of the tips is better in your version. The second one, I've tried to untangle as much as possible. I'm not sure why there are unary nodes (13, 20, 17, 16, etc) in this ARG, but haven't worked with the method before.

Hmm, perhaps we are creating a 2-RE-node ARG when converting from kwARG, but not setting the flags that you expect. I.e. it may be that 35 & 36 represent a single "recombination node".

Wouldn't we then expect nodes 35 and 36 to have the same time? I have node 35 at time=387592 and node 36 at time=144455.

Good point. Yes we would. I'm not sure why this happens then. I will investigate.

Ana points out that kwARG doesn't infer times, so these are somewhat arbitrary. The reason that we have 2 re nodes at different times is that to get semi-reasonable times out of the ARG, we run the "tsdate" program on the ARG output from kwARG, and tsdate doesn't know to keep the 2 recombination nodes at the same time.
The simplest way around this would be to convert the kwARG output to a 1-RE-node format and keep the mapping of old -> new node IDs. We could then date the 1-re-node version, and port the times back.
This would be useful for redating "full" ARGs from whatever source. The 2-RE-node version is needed to calculate likelihoods under the CwR.

Apologies - it looks like I only bothered running the tsdate algorithm on my local copy. I have updated the repo placing the correct node flags at https://github.com/tskit-dev/what-is-an-arg-paper/pull/332. A copy of the Kreitman-kwARG inference is below, and it gives a much nicer picture:
Kreitman_SNP_kwarg.trees.zip

This is about the best I can come up with (3 crossings):

Here's some starting points for visualizations of the different methods:
kreitman_jsons.zip
The first and last trees from the tsinfer trees appear to be empty in the .trees file that I was using; I don't know if that was intentional or not. Also for most of the them, we are stuck using edge_type="line" until I work out the pathing for polytomies. I've added that to the milestone TODO list for v0.0.2. You can almost get away with "ortho" for argweaver, but as the D3ARG object is expecting 2-RE-format when using D3ARG.from_ts(), it doesn't quite work.
Let me know if you have trouble running any of the JSONs!

Thanks. We should have a 2 <-> 1 conversion routine, I guess (difficult for diamonds, though).
The tsinfer post-processing step deliberately cuts off the topology before the first site and after the last site, which is why there are empty regions at the start and end of most tsinferred tree sequences.

I think we are done here


Update docs for march 2024

Currently includes basic cleanup of the markdown files and introduction page. Also updated a few RPC command help texts, revised scripts/apidocs.py and ran it.
TODO:

[x] Add edge_schema.json and validate edges with it (important for LN channels)
[x] Add a new script like apidocs.py that parses the schema files and automatically documents in graph.md including an example of all the <key attr.name=... headers that are needed in each graphml file
[ ] Add another script that parses the justfile and automatically documents those, maybe in a new kubernetes.md file
[ ] Finally, make sure our installation instructions are still accurate

marking as ready for now, will check installation and k8s docs in a future PR


Suggesting UUID.randomUUID() and avoiding Groovy interpolation in sh

Ought to be tested somehow.

BTW it might be more helpful to show how to use this to cache ~/.m2/repository/, as a more realistic example.

Thanks @jglick! I was looking for any random-ish step in https://www.jenkins.io/doc/pipeline/steps/ and couldn't find any, so I left that to the user. Good to know this method is whitelisted by default in CPS.
I still have to work on better documentation and tests.

Might be handy to have a block-scoped step in workflow-basic-steps to bind a random UUID to an environment variable. We usually try to avoid the need for such things. (Prior to POD_LABEL that was the typical idiom for associating a podTemplate with a nested node.) https://github.com/jenkinsci/script-security-plugin/pull/56


Determine non-breaking changes between revisions

Implement the determination of whether a job/recipe revision change is breaking or not and have this determination used when doing a recipe diff. This would allow non-breaking job updates (change resources, etc) to not automatically mark nodes as "changed" and require reprocessing.

We believe this means to give the operator more credit whether or not they want to re-run a parent of the changed job and only mark a recipe node as "changed" and in need of reprocessing if the interfaces are known to be incompatible (mismatched inputs/outputs, etc).

This is correct.  Since recipes are now pinned to a revision, when a sub-recipe or job type is updated we want to be smarter about whether a recipe needs to be reprocessed automatically.  If a job type interface change is just a small one and the output won't be changed it makes sense to mark the recipe as updated and notify the user if they want to re-process but don't automatically reprocess when the result won't change.  How to actually determine if a diff rises to the point of breaking is going to be tricky.


Fixed protobuf installation on Travis

Still have errors on the build, but not for protobuf installation reasons!


ci(release.yml): add @semantic-release/exec "dependency"

:tada: This PR is included in version 0.15.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


CREATE TABLE AS SELECT WITH NO DATA can fail with "connector does not support creating tables with data"

Have a connector which supports creating tables (io.prestosql.spi.connector.ConnectorMetadata#createTable), but not creating tables with data (io.prestosql.spi.connector.ConnectorMetadata#beginCreateTable).
Run CREATE TABLE new_table AS SELECT * FROM tpch.tiny.nation WITH NO DATA

Currently this fails with:
Query 20200320_101505_00001_hc6iv failed: This connector does not support creating tables with data
io.prestosql.spi.PrestoException: This connector does not support creating tables with data
	at io.prestosql.spi.connector.ConnectorMetadata.beginCreateTable(ConnectorMetadata.java:389)
	at io.prestosql.plugin.base.classloader.ClassLoaderSafeConnectorMetadata.beginCreateTable(ClassLoaderSafeConnectorMetadata.java:365)
	at io.prestosql.metadata.MetadataManager.beginCreateTable(MetadataManager.java:772)
	at io.prestosql.sql.planner.optimizations.BeginTableWrite$Rewriter.createWriterTarget(BeginTableWrite.java:179)
	at io.prestosql.sql.planner.optimizations.BeginTableWrite$Rewriter.visitTableFinish(BeginTableWrite.java:142)
	at io.prestosql.sql.planner.optimizations.BeginTableWrite$Rewriter.visitTableFinish(BeginTableWrite.java:76)
	at io.prestosql.sql.planner.plan.TableFinishNode.accept(TableFinishNode.java:106)
	at io.prestosql.sql.planner.plan.SimplePlanRewriter$RewriteContext.rewrite(SimplePlanRewriter.java:84)
	at io.prestosql.sql.planner.plan.SimplePlanRewriter$RewriteContext.lambda$defaultRewrite$0(SimplePlanRewriter.java:73)

-- the exception message ("... with data") is confusing, since user explicitly asked to create table WITHOUT data.

So this should create table as connector supports this?

Yes, the expected behavior from my POV is that beginCreateTable() should not be called, and createTable should be called instead.
cc @kokosing @martint

Sounds good to me. I think the current implementation in the engine is a hack that needs to be fixed.

The thing is that this query should not run any sql query execution. It should be a DDL task. All we care is the output schema of query, so output from analysis should be enough.


Global - Investigate loading times when restarting Uplink

task: Sheldon, Hogan and I have been doing testing on Uplink Dev branch tonight. We have found some things that are interesting:
When one of your friends updates they're profile picture and you close and re open the app, the chat and friends page will take very very long to load. During that time you will get a error in chat for each friend that you have that says "Copy  found in sidebar but not in hashmap"
After about 1-3 minutes your friends page will load, the user who changes their pfp, will have a blank profile picture for about another 30 seconds after the list has loaded. Once it updates the pfp they changed all your chats and most messages will load again

Do note that there is usually a difference in performance between debug and release (since release does alot of optimizations in itself), however there may be more room for optimization in uplink.

Phill agreed this was solved!


refactor: use ::class to config() param

Description
::class keyword is better than string for IDE or static analysis.
Checklist:

[x] Securely signed commits
[] Component(s) with PHPDoc blocks, only if necessary or adds value
[] Unit testing, with >80% coverage
[] User guide updated
[x] Conforms to style guide

develop means 4.3.x now.

Why should the framework care about the IDE?
::class means more code line.

Why should the framework care about the IDE?

Because it guides the developers. and provides more details when programming.

If we use ::class, IDE can navigate us to the Config property.

When we use ::class, IDE can autocomplete the classname.

::class means more code line.

If you mean use statements like use Config\Exceptions;,
I think it is better to write all use statements for all dependencies.
Then all classes on which this class depends will be visible.
Too many usesstatements mean too many dependencies, which may be an issue in class design.
config('classname') hides the dependency.
And if you use IDE, the use statement will be added automatically.


Modified permission to User.Read.All

Does the app truly require the ability to write to all users in the directory? if not, than User.Read.All should be sufficient to receive notifications. Yes, it still requires admin consent.

@jasonjoh , can you please have a look? is User.ReadWrite.All truly required for the demo app?

#hold-off

@andrewconnell do you know if ReadWrite is required?

Offhand I don't know. I seem to recall some issues without this permission where changing some properties (office location / phone) weren't triggering webhook notifications, but it's been a while and I don't recall.

Closing this as this was changed as part of quarterly refresh in #15


muP (maximum update parametrization)

Main changes (see mup.md file for more details):

Modify random initialization
Scale attention scores by 1/d instead of 1/sqrt(d), also add an attn_mult tunable coefficient
Scale activations by 1/width_mult before mapping into logits
Update learning rate & weight decay for a subset of layers
Add coordinate check test - it's like gradient check but for muP

where:

width_mult is the ratio of widths of the current model to the base model
d is the number of channels in a single attn head

Test
To test muP vs SP (standard parametrization):

Run scripts/mup_coordinate_check.sh script
Run dev/mup_coordinate_check_visualize.py script

Run

Set use_mup to 1
Set mup_width_mult to ratio of widths of your target model to your base model
mup_base_attn_mult is a tunable param, 1 seems to be working nicely for our family of models.

Ablations
The coord check results are highly dependent on the learning rate and max width used.
In my preliminary ablations (max width = 1024 & lr = 0.0006) I concluded that the only thing that would mess up the coordinate check was this line:
scale = (model->use_mup && i != 0 && i != 1) ? mup_scale_inv*scale : scale;
In my subsequent ablations (max width = 1024 & lr = 0.006, i.e. lr almost the same as in the reference mup gpt-2 imp, they use 0.01) i concluded that the results are much more sensitive: Adam modifications also matter, 1/width_mult logits scaling matters and whether we use 1/d.
See the next comment for more thorough ablation results.
References:

https://github.com/microsoft/mup
https://github.com/microsoft/mutransformers

Ablation study
Setting:
lr = 0.006
width goes from 64 -> 4096 (geometric sequence, 2x coefficient)
Baseline muP:

At step 4 it seems we observe a bit more oscillations. These do dissapear with a bit lower learning rate so not sure what to think of it. Ultimately running a sweep of runs and confirming we have stable HPs will be the final test.
Here is what happens setting attn_mult to 1. It looks like it's a bit more stable? My implementation follows that of mutransformers but it's possible they had a bug when it comes to the attn_mult logic, will have to consult paper again:

SP (standard parametrization) baseline:

These clearly explode.

Comment out zeroing out of the embedding/readout layer & queries:

Observe that one of the layers is decreasing with width, which is undesirable.
Remove learning rate / weight decay modulating logic:

Remove scale = (model->use_mup && i != 0 && i != 1) ? mup_scale_inv*scale : scale;:

Remove logit scaling by 1/width_mult:

Set attn_mult to 1 and replace 1/d q*k scaling with the usual 1/sqrt(d):

Hello, I looked over your implementation of muP in both CUDA and Python, and found that in CUDA (layernorm.cuh) you scale the output of all the layernorms by mup_scale (which is defined as sqrt(mup_width_multiplier)) :

but I haven't seen the same scaling in your Pytorch version (train_gpt2.py) (which is very concise and clear btw!)
Also, this is not mentioned in the doc/mup/mup.md file so I was wondering about where did it come from.
Thank you

it's mentioned in mup.md it is under 3.3 (1. / model->mup_width_mult), I don't use sqrt in the c/cuda code?

Ok I didn't realize that the layernorm code I showcased is only used pre-logits, as per 3.3 (I thought it was used for every layer norms).

Hyperparam sweeps
scheduler sweep:

Conclusion: cosine is a good choice.
attn_mult tunable param sweep:

Conclusion: Using 1 is a good default.
lr sweeps:

Conclusion: ~1/2^10 is a sweet spot for lr. The curves are stable as we increase the depth, i.e. the optimal lr is invariant to depth scaling.
out_mult sweep (out_mult is currently not supported in this PR but it's a minor tweak i've implemented locally):

Conclusion: 1 is a good default.
cc: @karpathy
next steps:

See whether mup authors reply to my issue here: https://github.com/microsoft/mup/issues/76
Run mup at 7B scale

@Yuchen Jin would be great to kick off a 7B mup run if you have some bandwidth! :)

@YuchenJin would be great to kick off a 7B mup run if you have some bandwidth! :)

@YuchenJin would be great to kick off a 7B mup run if you have some bandwidth! :)

Hey @gordicaleksa, happy to! Do you want me to just run the two scripts (scripts/mup_coordinate_check.sh and dev/mup_coordinate_check_visualize.py)? What LR should I use for the 7B model?

@gordicaleksa
https://github.com/karpathy/llm.c/blob/b125cc6ae2b850cd3511720fb1eaf9db83130972/train_gpt2.py#L165
AFAIK this line zero initializes modules with 'LLMC_SKIP_INIT' flag if mup is enabled. There is only one module with 'LLMC_SKIP_INIT' flag, it is lm_head. lm_head weight is tied to wte.weight.
Since embedding layers are initialized later in the code, what is the purpose of the zero initialization referenced above?

@gordicaleksa
https://github.com/karpathy/llm.c/blob/b125cc6ae2b850cd3511720fb1eaf9db83130972/train_gpt2.py#L165
AFAIK this line zero initializes modules with 'LLMC_SKIP_INIT' flag if mup is enabled. There is only one module with 'LLMC_SKIP_INIT' flag, it is lm_head. lm_head weight is tied to wte.weight.
Since embedding layers are initialized later in the code, what is the purpose of the zero initialization referenced above?

After reading mup.md, I can see now that MUP requires output layers to be initialized to zero.
The code assumes that embeddings are initialized before linear layers, which is a correct but IMHO a weak assumption.
Thanks for the great work.


DocumentDB Trigger support

Starting the DocumentDB trigger integration following PR: https://github.com/Azure/azure-webjobs-sdk-extensions/pull/244 to integrate with Azure Functions Script Host.
Working on adding E2E tests.

@ealsur,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Thank you! Will take a look ASAP!
I've flagged your PR in the extensions repo so we can get a full CI build. Once that is merged, I'll push the new package to the MyGet feed to allow the CI tests to run as expected here.


Support updating repository url

When using the ansible-scale-gui role I accidentally set wrong repository urls for scale_install_repository_url and scale_install_zimon_repository_url which made ansible fail mid through applying the role. Changing the repository urls after the fact didn't work and I had to manually remove the bad repo files under /etc/yum.repos.d/ before reapplying the role with the correct url's set. You probably need to use the ini module to update an existing repo file.
While this was found while using the ansible-scale-gui role the same problem should arise here as well, so posting it here.
As a sidenote this is what I ended up setting:
scale_install_repository_url: >-
  file:///usr/lpp/mmfs/{{ scale_version }}/gpfs_rpms/

scale_install_zimon_repository_url: >-
  file:///usr/lpp/mmfs/{{ scale_version }}/zimon_rpms/rhel7/

Here's the code that generates the repo definition:

I'm sorry that I haven't been able to invest time in this, yet. It's this time of the year again...

I was looking at this issue again just now, and I can't seem to be able to reproduce the behavior. Looks like yum_repository will now update existing files if the baseurl changes.
Ansible version: 2.9.14
Python version: 3.8.6
Managed host: RHEL 7.8
This can be verified with a quick test:
- hosts: node1
  tasks:

    - name: test | Clean existing YUM repository
      file:
        path: /etc/yum.repos.d/spectrum-scale-gpfs.repo
        state: absent

    - command: ls -l /etc/yum.repos.d/

    - name: test | Configure new YUM repository
      yum_repository:
        name: spectrum-scale-gpfs
        description: IBM Spectrum Scale (GPFS)
        baseurl: http://infraserv/yum/gpfs/<IP_ADDRESS>/gpfs_rpms
        state: present

    - command: grep baseurl /etc/yum.repos.d/spectrum-scale-gpfs.repo

    - name: test | Modify existing YUM repository
      yum_repository:
        name: spectrum-scale-gpfs
        description: IBM Spectrum Scale (GPFS)
        baseurl: http://infraserv/yum/gpfs/<IP_ADDRESS>/gpfs_rpms
        state: present

    - command: grep baseurl /etc/yum.repos.d/spectrum-scale-gpfs.repo

The output of the first grep is:
baseurl = http://infraserv/yum/gpfs/<IP_ADDRESS>/gpfs_rpms
The output of the second grep is:
baseurl = http://infraserv/yum/gpfs/<IP_ADDRESS>/gpfs_rpms (version number has changed)
Hence, I guess that there were changes to the yum_repository module and it now works as expected (modifies existing repos).
Are you able to reproduce the issue with Ansible 2.9?

@acch I posted this bug during an education session regarding Spectrum Scale, part of the session was to install Spectrum Scale over a couple of virtual machines and I decided to try using this role instead of using the manual installation method described in the course.
In short: I don't have access to Spectrum Scale right now so can't really help. I'm sorry. If this works on your end (and the test looks sound to me) I'd assume this got fixed in Ansible itself. :)

Thanks for your feedback. I'll close the issue for now.


Branch folding

I have implemented branch folding for constant value conditionals inside the egraph midend.  This covers BrIf and BrTable, converting them to Jump instructions and removing edges in the ControlFlowGraph and updating the DominatorTree, detecting unreachable code and removing them as well.
This necessitated having mutable access to the DominatorTree in egraph, so it had to be removed from AliasAnalysis and passed to AliasAnalysis for the functions that needed it.  As a side benefit, this cleaned up some lifetimes sprinkled around to have a reference to DominatorTree in AliasAnalysis.
A block is determined to be unreachable if it no longer has any predecessors or has one predecessor and is the head of a loop.
After folding the branch and removing pred/succ to dead code, when a block is processed, a check is made to see if there are parameters to the block and there is one and only one pred to the block.  If this is the case, the parameters are detached from the block and aliased to the passed arguments in the BlockCall.
I have chatted briefly with @cfallin while implementing this, and he suggested I create a PR to let people review the changes.

This function contains both BrIf and BrTable with a loop and optimizes it down to a constant return.
function u0:0() -> i32 system_v {
block0:
v0 = iconst.i32 1
v1 = iconst.i32 10
brif v0, block1, block2(v1)  ; v0 = 1, v1 = 10
block1:
v2 = iconst.i32 0
jump block5(v2)  ; v2 = 0
block2(v3: i32):
v4 = iconst.i32 1
v5 = isub v3, v4  ; v4 = 1
jump block3
block3:
brif.i32 v5, block2(v5), block4
block4:
v6 = iconst.i32 8
jump block5(v6)  ; v6 = 8
block5(v7: i32):
br_table v7, block6, [block7, block8]
block6:
v8 = iconst.i32 4
jump block9(v8)  ; v8 = 4
block7:
v9 = iconst.i32 8
jump block9(v9)  ; v9 = 8
block8:
v10 = iconst.i32 16
jump block9(v10)  ; v10 = 16
block9(v11: i32):
return v11
}
[cranelift_codegen::isa::x64] disassembly:
pushq   %rbp
unwind PushFrameRegs { offset_upward_to_caller_sp: 16 }
movq    %rsp, %rbp
unwind DefineNewFrame { offset_upward_to_caller_sp: 16, offset_downward_to_clobbers: 0 }
block0:
jmp     label1
block1:
jmp     label2
block2:
jmp     label3
block3:
jmp     label4
block4:
jmp     label5
block5:
movl    $8, %eax
movq    %rbp, %rsp
popq    %rbp
ret

This is a fantastic illustration of how much better Cranelift could do with all these optimizations combined. Thank you for putting it together! The example you've given in the comment above is compelling: I love seeing all that code disappear.
I'm having trouble reviewing this all at once, though. I'm hoping we can split it into a series of smaller PRs. Individually they won't be nearly as effective, of course, but we need to be able to reason about the correctness of each change individually.
What I'd like to see first is just brif/br_table folding. I'd like to leave out the changes to block parameters and the changes for domtree reconstruction. Maybe that just means putting your first two commits in a new PR?
I suspect that piece by itself will be uncontroversial and easy to merge, while already being a big improvement. We'll need one more thing before merging it: some new small regression tests in cranelift/filetests/filetests/egraph/ demonstrating that these kinds of branches are correctly folded away in simple cases. For bonus points, you could measure the impact of this change using our Sightglass benchmark suite.
Once that's merged, let's come back to the rest of the changes in this PR!

I've written up a bunch of thoughts about our general requirements for branch folding in a pair of issues. These two issues describe essentially independent tasks, and both are complex enough that we need to solve them separately so we can have a chance at reviewing each of them. On top of that, a third independent issue may make the other two easier. So probably the best order to tackle these is:

#5908
#6109
#6106

The biggest challenge for all of this work, and for this PR as it stands now, is that we want the egraph pass to visit each basic block only once. In fact some fundamental invariants of our egraph implementation currently rely on this. Someday I want to relax that restriction and have the option of running equality saturation to a fixpoint, but we aren't there today.
So we miss some optimization opportunities on loops, but we still find a lot of optimizations, and this restriction keeps the optimization pass fast.


Point & Click - Dysfunctional Collisions & Movement (v2>v3)

In point n click mode, I had locked movement in each direction by binding a key to move 3 tiles each time, and used collisions to prevent movement outside the UI shown.
Now (in converting to v3), the movement seems to be back to being unlocked (or the underlying movement wasn't overwritten by the script attached to the button), and the collision boundaries also seem very ineffective.
Gif shows before (v2) and after (v3)

Image below shows the collision boundaries (both versions)

Image below shows the scripts used for movement. Same respectively for all four directions

Platform:

OS: Windows 10 Pro
GB Studio V3.0

Note that per tile map collision was never part of point and click (though i don't see why it shouldn't be? Would be really useful).
Otherwise it's most likely doing both the default movement of pointandclick, plus the scripted movement.
Wether this is solved by removing (or having the option to remove) default functionality of a button with attached script (used to be in 2.0), or another event that stops player movement, needs to be investigated.

I agree that tile collisions should be part of point & click mode

Yes, tile collisions should part of point and click mode.
Hopefully you can still opt out of collisions and get the current behaviour by adding a Set Actor Collisions Disable on the player (cursor).
There is this use case where you want to be able to move the cursor anywhere on the screen, but actors must still conform to collisions when they move, a la Maniac Mansion.


Example apps segfault on macOS when opening spotlight menu

godot2:winit jdm$ lldb target/debug/examples/window
(lldb) target create "target/debug/examples/window"
Current executable set to 'target/debug/examples/window' (x86_64).
(lldb) r
Process 18636 launched: '/Users/jdm/src/winit/target/debug/examples/window' (x86_64)
Awakened
Focused(true)
MouseLeft
Awakened
KeyboardInput(Pressed, 55, Some(LWin))
Process 18636 stopped
* thread #1: tid = 0x47bdc, 0xffffea3effffea3e, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xffffea3effffea3e)
    frame #0: 0xffffea3effffea3e
error: memory read failed for 0xffffea3effffea00
(lldb) bt
* thread #1: tid = 0x47bdc, 0xffffea3effffea3e, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xffffea3effffea3e)
  * frame #0: 0xffffea3effffea3e
    frame #1: 0x00007fff8d571043 libunwind.dylib`unwind_phase2_forced + 128
    frame #2: 0x00007fff8d570fa4 libunwind.dylib`_Unwind_Resume + 72
    frame #3: 0x000000010001554a window`winit::platform::platform::NSEventToEvent(window=0x00007fff5fbff930, nsevent=0x0000000100221050) + 6458 at mod.rs:804
    frame #4: 0x00000001000107ae window`winit::platform::platform::{{impl}}::next(self=0x00007fff5fbff7c0) + 846 at mod.rs:254
    frame #5: 0x00000001000031bc window`winit::window::{{impl}}::next(self=0x00007fff5fbff7c0) + 44 at window.rs:402
    frame #6: 0x000000010000341b window`window::main + 283 at window.rs:14
    frame #7: 0x000000010003a53b window`panic_unwind::__rust_maybe_catch_panic + 27 at lib.rs:97
    frame #8: 0x0000000100039a07 window`std::rt::lang_start [inlined] std::panicking::try<(),fn()> + 44 at panicking.rs:332
    frame #9: 0x00000001000399db window`std::rt::lang_start [inlined] std::panic::catch_unwind<fn(),()> at panic.rs:351
    frame #10: 0x00000001000399db window`std::rt::lang_start + 347 at rt.rs:57
    frame #11: 0x000000010000379a window`main + 42
    frame #12: 0x00007fff94ad75fd libdyld.dylib`start + 1

I'm running 10.9.5 when I see this happen.

Can confirm this also occurs on 10.10.5.

Can confirm this also occurs on 10.11.6.
Seems that the application receives some events from spotlight window and winit::platform::platform::NSEventToEvent fails to handle them.

Not only spotlight window, but also opening system menu (ex: battery status, wifi menu) will invoke the same segfault.

Ok it seems like this is occurring because the [NSEvent type] method is returning a value that is not enumerated within the NSEventType enum from the cocoa-rs crate. E.g. If you try to debug print the returned NSEventType the app segfaults, however if you first cast it to u64 it prints 21 - a value that is not enumerated in the enum itself. Going to dig further to see if I can find the missing events and add them to the enum upstream.

I couldn't find any documentation on NSEventType values of 21 anywhere so I've added a temporary fix in our event handling in this commit as a part of #132.

I've added an issue upstream at servo/cocoa-rs#155.


Port to firefox?

I love this startpage, but I use Firefox as my browser and many others do too. Is it possible to port this startpage to Firefox?

Hey there, I added instructions on how to install it on Firefox.
I'm thinking of pushing it to the add on stores soon


doc: fix markdown links in code example project documentation (#1017)

Summary
doc: fix markdown links in code example project documentation (#1017)
Description
doc: fix markdown links in code example project documentation (#1017)
Additional Reviewers

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

seems like a dupe of https://github.com/aws/aws-advanced-jdbc-wrapper/pull/1018

@krisiye My apologies. I missed your pull request. I'll close this PR.


Instructions to "Make a Bookings user a super user without adding them as Staff in Bookings" actually do the opposite

This section describes how, using PowerShell, to add a user as an Admin without making them bookable.
In fact, the instructions do make them bookable just as if it has been set up via the GUI.
[Enter feedback here]

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

ID: 4fcbd22b-e14b-fe97-7b7f-eb672e84d382
Version Independent ID: f9a024d7-6600-4922-02b5-2c8ceeae13ab
Content: Add staff to Bookings
Content Source: microsoft-365/bookings/add-staff.md
Service: bookings
GitHub Login: @kwekuako
Microsoft Alias: kwekua

@mossywell Thank you for your feedback. I tested it with a new user and it works just as described. The cmdlets only assigned Mailbox permissions to the user and did not make the user bookable. Note that these steps only work if the user being added isn't already assigned a viewer role in Bookings.
Hope this helps!
Thanks
Sri

@msbemba Thank you very much for the contribution and sharing this explanation. @mossywell Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@yogkumgit This can be closed


returnValue isn't always set properly

issue mentioned in #102 is still valid. if you have a two button dialog view type=submit and value, nothing more, you don't get the value of used button. works in native implementation.
sample see http://demo.agektmr.com/dialog/ -> Integration with a form

I can't reproduce this. The returnValue is set to the value of the used button in my tests using Firefox (and Chrome w/o polyfill).
See the code checked in here: https://github.com/GoogleChrome/dialog-polyfill/commit/7e49e8d34e9111fa2329780650304057796ed05b
Can you elaborate or give me a clearer repro case?

(Also note that hitting enter while focused on the input type="text" sets the returnValue to the current value of the field. That's intentional and is the case natively too.)

Can't repro with Firefox. Closing.


Bump version for release

Codecov Report

Merging #254 (1ba38ea) into main (8cdff87) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main      #254   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            2         2
  Lines          185       185
=========================================
  Hits           185       185

Continue to review full report at Codecov.

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


[FLINK-32581][docs] Add docs for atomic CTAS and RTAS

What is the purpose of the change
Add docs for atomic CTAS and RTAS
Brief change log
add docs
Verifying this change
no need test
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (docs)

@luoyuxia  PTAL, if you have time, thanks~

@luoyuxia  thanks for your review. I have updated the pr, PTAL

@luoyuxia  PTAL, thanks

@luoyuxia  thanks for your view! has updated, PTAL


Why open html file shows a blank space

I'm using SingleFile to archive website into a single html file.
and it shows a blank space ,like this

the website is https://time.geekbang.org/column/article/39922

Please attach your html file to let me see its content.

开篇词 _ 从今天起，跨过“数据结构与算法”这道坎 (2023_11_22 23_52_54).html.zip
here is the file

開篇詞 _ 從今天起，跨過“資料結構與演算法”這道檻 (2023_11_22 23_52_54).html.zip
here is the file

Hmm, I think this HTML file has something conflict with this plugin's keyboard events, so its content soon flash out as a white page as you seen.
I will try to resolve this problem, and it may need a while.

thank you very much !!!


Feature Request: Please add wineasio

Could you add wineasio to the conty container? It is an aur and I'm not familiar enough with your script or arch-linux to install this myself and make a merge request.
This is the aur https://aur.archlinux.org/packages/wineasio/

It's a really small library, so why not. I will add it in the next release.
But even when it will be included in the container, you'll still need to manually register it for your Wine prefix (~/.wine by default):
./conty.sh wine64 regsvr32 wineasio.dll
./conty.sh wine regsvr32 wineasio.dll
However, i don't know if JACK works proprely from inside the container.

Added in the latest release.

Wonderful. Thank you so much!
Regards,
Steve Locke
Sent with ProtonMail Secure Email.
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Thursday, April 1, 2021 9:42 AM, Kron4ek @.***> wrote:

Added in the latest release.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Enqueue a Response when dropping a response (sampling)

Just realized Event.SendDroppedResponse needs to be implemented. We already have a Transmission.EnqueueResponse method so it should be a matter of exposing it and calling it.

Working on it.

Solved as part of 4a7aa48108e5b462603dfbb271b8c22e815f6924. Closing.


support screen sharing

hi, i need to implement share screen function? Can u help? Thanks

you can use replaykit

i cant find any guide's project about screen share

@fukemy
did you find any information about screen sharing?

lets google about swift replaykit tutorial


Example using dynamic parallelism

Can you add an example using -rdc=true ? I've added both -rdc=true, -dlink, it compiles but when the program runs,  I have __cudaRegisterLinkedBinary_name error.
Thanks!

This one is derived from tf_runtime, and it does not genernally supports dlto, and it is hardly to implement it. The cause is quite deeply rooted.
If you need dlto, you can use the new community effort https://github.com/bazel-contrib/rules_cuda.

Thanks! @cloudhan this reminds me to switch my repos to use your rules_cuda and archive this repo.


Create devcontainer.json

"ghcr.io/flexwie/devcontainer-features/op:1": {}

Thanks for opening! As mentioned in another PR, perhaps this PR was intended for another repo, since this repo is for spec/documentation content? If you have other questions/feedback/ideas, please let us know.


Force refreshing ticket near expiration?

Is your feature request related to a problem? Please describe.
So currently as I am experimenting the ticket expiration is always the same even if you call renew/authenticate and getserviceticket multiple times. This makes me wonder what would happen if at the edge of expiration kerberos ticket is retrieved but used in the request a second after it has expired (due to just some delay).
Describe the solution you'd like
To avoid this I would like to force refresh/generate new ticket that would have new expiration.
Describe alternatives you've considered
I couldn't get this to happen any other way except when creating new instance of the KerberosClient. I obviously could just add some sleep if I can see that the ticket is about to expire, but that is not ideal.
Is this already possible in some way or maybe the usage of kerberos is incorrect here?

Calling RenewTicket() actually only renews the TGT, which isn't especially helpful in this care. A new API could be added that accepts an indicator to a specific ticket instead and that would help things.
However, the underlying issue is that the ticket cache just returns whatever is in the cache up until it's expired. If it's expired by the time the cache retrieves it, it'll request a new one, cache that, and return it. However, in the scenario you describe it'll return a valid ticket, and as it expires a few seconds later the service receiving the ticket will do one of two things: it'll either accept it as it's within the time skew window (+/- 5 min give or take); or it'll return a specific error message indicating the ticket expired and it needs a new one. Which option it chooses is application-dependent.

I see, so yeah, I managed to achieve behavior that I wanted by replacing default MemoryTicketCache with one that allows to clear it on demand. Then obviously when it does authentication gets new ticket with which it then also gets new service ticket. I am not sure how common this use case would be for others, but being able to clear the initial authentication ticket to force new ticket generation might be beneficial to others.

I wouldn't recommend clearing the TGT. A simpler approach might be to just modify the cache behavior so it drops the ticket if it's going to expire in <5 min (or whatever set timeframe). That way the client is just forced to request a new ticket. The other bit of this though is that TGTs have fixed lifetimes, so they expire every 10 hours or so, but you can renew them before they expire for up to 14 days.


fix: raise exception when doing modulo ('%') by zero, instead of crashing with SIGFPE

Makes the behavior consistent with division ('/' operator), prevents full VM crash. Similar behavior is observed in Python (v. 3.11.8).
Additionally I have moved the actual  float modulo and division into the else branch of the check, to prevent UB even when the division by zero was caught.
Added testcase to check this behavior.

Awesome, thanks. I never realized that 1%0 causes a crash of the embedded system.

Additionally I have moved the actual float modulo and division into the else branch of the check, to prevent UB even when the division by zero was caught.

This is not strictly necessary but does not harm indeed. vm_error(vm, "divzero_error", "division by zero"); never returns.


B-20001

int pr
Agility ticket

[!IMPORTANT]
pptas_report_list_fetcher.go Is collapsed by default make sure you're opening it up and checking!

This will go after B-20997 is tested


ARROW-6701: [C++][R] Lint failing on R cpp code

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@cf9df14). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master    #5514   +/-   ##
=========================================
  Coverage          ?   76.76%
=========================================
  Files             ?       59
  Lines             ?     4330
  Branches          ?        0
=========================================
  Hits              ?     3324
  Misses            ?     1006
  Partials          ?        0

Impacted Files
Coverage Δ

r/src/table.cpp
87.61% <100%> (ø)

Continue to review full report at Codecov.

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


some bug ?

when i run mpc_path_tracking and mpc_sample
Traceback (most recent call last):
File "main.py", line 177, in
Main()
File "main.py", line 129, in Main
ustar, xstar, cost = CalcInput(A, B, C, x, u)
File "main.py", line 84, in CalcInput
constr = [x[:, t + 1] == A * x[:, t] + B * u[:, t] + C]
File "/usr/local/lib/python3.5/dist-packages/cvxpy/expressions/expression.py", line 46, in cast_op
return binary_op(self, other)
File "/usr/local/lib/python3.5/dist-packages/cvxpy/expressions/expression.py", line 452, in add
return cvxtypes.add_expr()([self, other])
File "/usr/local/lib/python3.5/dist-packages/cvxpy/atoms/affine/add_expr.py", line 33, in init
super(AddExpression, self).init(arg_groups)
File "/usr/local/lib/python3.5/dist-packages/cvxpy/atoms/atom.py", line 45, in init
self._shape = self.shape_from_args()
File "/usr/local/lib/python3.5/dist-packages/cvxpy/atoms/affine/add_expr.py", line 41, in shape_from_args
return u.shape.sum_shapes([arg.shape for arg in self.args])
File "/usr/local/lib/python3.5/dist-packages/cvxpy/utilities/shape.py", line 49, in sum_shapes
len(shapes)" %s" % tuple(shapes))
ValueError: Cannot broadcast dimensions  (4,) (4, 1)

same problem

I revised to constr = [x[:, [t + 1]] == A * x[:, [t]] + B * u[:,[t]] + C] and seems solve the problem.
But prob.constriants += at line 99  raised the error of "Attribute error: can's set attribute"

any updates on this problem?


--not-when-fullscreen... again

I'm having a similar issue, I think. If Firefox is fullscreen it will still trigger the screenlock. If audio is running it will still trigger screen dimming but not lock.
#! /bin/bash

# Run xidlehook
xidlehook \
  `# but not when fullscreen` \
  --not-when-fullscreen \
  `# and not when audio playing` \
  --not-when-audio \
  `# dim after 60 seconds inactivity, undim if activity` \
  --timer normal 60 \
    'xrandr --output HDMI2 --brightness .4 --output VGA1 --brightness .4' \
    'xrandr --output HDMI2 --brightness 1 --output VGA1 --brightness 1' \
  `# after ten seconds undim and run gllock` \
  --timer primary 15 \
    'xrandr --output HDMI2 --brightness 1 --output VGA1 --brightness 1; gllock' \
    '' \
  `#if no activity in another 30 seconds suspend `\
    --timer normal 60 \
      'systemctl suspend'\
      ''

Originally posted by @stevensonmt in https://github.com/jD91mZM2/xidlehook/issues/5#issuecomment-504781615

What DE/WM are you using? This has occured to me in xmonad due of a lack of EWMH hints.
To debug this, please run the following command and click a fullscreen window.
xprop | grep _NET_WM_STATE

WM is leftwm. Will update with other info when I get home again, but I did check that xprop showed the _NET_WM_STATE_FULLSCREEN property before adding my comment.

~/ xprop | grep _NET_WM_STATE
_NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_MAXIMIZED_HORZ, WM_COLORMAP_WINDOWS

~/ xidlehook --version
xidlehook 0.7.1

I assume the window is the selected one? See #19

yes, it is the focused window.

I'm afraid I don't have much time to debug this at the moment, especially since I can't reproduce it :(
If you'd like, you can spray some dbg!()s everywhere in https://github.com/jD91mZM2/xidlehook/blob/152d057a89a1be9b1fabf38e632efd779a725183/src/main.rs#L416. Once you reach a conclusion to what the issue is, I'll be happy to reproduce the bug for myself and fix it.

I'm going to be out of touch for the next week or so but when I get back I'll give it a look and see if I can figure it out. Thanks.

Just wondering if you could help me understand this bit of code from x11api.rs:
    // Get the window properties of said window
    let mut data: *mut u8 = ptr::null_mut();
    let mut nitems = 0;
    XGetWindowProperty(
        display,
        focus,
        XInternAtom(display, NET_WM_STATE.as_ptr() as *const c_char, 0),
        0,
        c_long::max_value(),
        0,
        XA_ATOM,
        ignored_ulong,
        ignored_int,
        &mut nitems,
        ignored_ulong,
        &mut data
    );

    let data = XIntPtr(data as *mut _);
    let atom = XInternAtom(
        display,
        NET_WM_STATE_FULLSCREEN.as_ptr() as *const c_char,
        0
    );

    // Check the list of returned items for _NET_WM_STATE_FULLSCREEN
    for i in 0..nitems as isize {
        if *data.0.offset(i) == atom {
            return Ok(true);
        }
    }

I don't see where nitems is incremented. If it is not incremented does the check never happen?

Of course!
Both nitems and data are set by XGetWindowProperty, assuming the call succeeds. I should actually have some error handling there, I guess.
A good sanity check would be to add dbg!(nitems) somewhere after that call to make sure it prints out 3. Then print out the element values and the value of atom which is what it's searching for.

So I've tried with chromium and firefox running fullscreen. With chromium fullscreen dbg!(nitems) returns nitems = 2 (not at fullscreen it returns nitems = 1), but with firefox in either fullscreen or not I get nitems = 0. In all cases atom = 349. I'm running this with leftwm, and that adds a wrinkle because chromium does not actually expand to fullscreen completely, leaving the bar uncovered, while firefox truly does take over the full screen real estate. I'm also running on a multi-monitor setup if that makes any difference.

Amazingly debugged :)! When you ran xprop | grep _NET_WM_STATE, did you make sure Firefox was fullscreen and focused?

Not sure, but just did it again and got
>> sleep 3 && xprop | grep _NET_WM_STATE
_NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_FOCUSED

The sleep was so I could use the mouse to focuse FF before xprop ran.

What's the output if you replace
if *data.0.offset(i) == atom {

with
if dbg!(*data.0.offset(i)) == atom {

?

Zeroes with firefox fullscreen or not, focused or not.
1 with chromium fullscreen, focused or not.

Only thing I can think of is wrapping those XGetInputFocus(...) and XGetWindowProperty(...) calls in dbg!, in case one of them is returning an error. Otherwise, none of this output makes sense to me :(

What output you would expect?

 But when xidlehook lists the same property, somehow it claims to have zero length. So the only thing I can think of is if the API invocation is failing and it uses zero as the default value.
In case I misunderstood, and you're asking what return value I expect from the two functions I asked you to wrap, 0 is the standard in C to specify success. Non-zero usually means failure, and a negative value almost certainly means failure

In leftwm, xprop for non-fullscreen window is empty for that property:
xprop | grep _NET_WM_STATE
_NET_WM_STATE(ATOM) =

I was trying to figure out what the XGetWindowProperty call was doing and had it print the return of that which is where that extra zero in the screenshots comes from.

I ignored that actually, but that's useful. Seems like XGetWindowProperty isn't failing at least... What's the return value of XGetInputFocus?

XGetInputFocus returns 1 no matter which window is focused in both leftwm and XFCE. I must have edited my earlier comment while you were replying, sorry.

Interesting, and highly useful. Unless I'm mistaken, that 1 means BadRequest. I'll take a look at what the values are on my machine. Sorry for the late reply

Nope, same on my system. When googling for how to handle errors I stumbled across a rant about Xlib, and rust-xcb which is a safe API. Guess that module is due for a rewrite... Be right back!!

Update: The xcb change is out, available at 7faf3e0d1112059d8b34ffe812e257062b778f3e. Xcb is amazing and rust-xcb is even more so.
I'm hopeful that, if anything, this will work for you. But no promises. At least we might get better error handling by default, which could lead us a step on debugging. So please do try this commit :D

Will have to spend some more time looking into it, but for now it does not seem to recognize a fullscreen window whether it is the focused window or not.

Not even for things that previously worked, like chromium (I think you mentioned?)

Hello, I am having the same problem using awesome v4.3 with xidlehook 0.7.0 and trying to watch movies in fullscreen in either YouTube or Netflix. This is my script:
#! /bin/bash
xidlehook \
  --not-when-fullscreen \
  --timer normal 90 \
    'xbacklight -set 0' \
    'xbacklight -set 100' \
  --timer normal 3600 \
    'xbacklight -set 100 && systemctl suspend' \
    ''

That's the output of xprop | grep _NET_WM_STATE for both YouTube and Netflix fullscreen windows while active:
_NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_MAXIMIZED_HORZ
Tell me if you need more information.

Thanks! Would you be so kind as to send me the output of xidlehook? Turns out I left a dbg! there and I suppose that's for the best.
What happens if you get the latest git version and run
cargo run --bin xidlehook -- --timer normal 5 "echo hi" "" --not-when-fullscreen

?

Hmm, really weird. It gives me [src/x11api.rs:54] prop.value() = [] no matter which window is focused, fullscreen or not. The only real output is given when the window I run the program from is focused:
[src/x11api.rs:54] prop.value() = [
    383,
    387,
]

Oh. It only checks for fullscreen status on active windows - that's a feature... or lack thereof, I guess. Feel free to drop a comment on #19 if you want that expanded.

Sorry, but I'm at a loss here. I would be happy if it (correctly) checked for fullscreen status on active windows such as Netflix or YouTube.

My bad, it is indeed supposed to check fullscreen status of other active windows. I must have misread the following:

The only real output is given when the window I run the program from is focused

I thought you meant when the window that's fullscreen is focused. Did you mean the only output that occurs is when you run xidlehook in a terminal and that terminal is fullscreen?

I also get unwanted screen locks when using FF to watch netflix with xidlehook 0.7.1 (using --not-when-fullscreen, of course). Window manager is dwm.
xprop says _NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN.

What do the debug logs say? Run the latest xidlehook with export RUST_LOG=trace and paste the output in gist or something.

What do the debug logs say? Run the latest xidlehook with export RUST_LOG=trace and paste the output in gist or something.

For this test I started xidlehook, switched to a workspace with a fullscreen firefox and waited for the timer to trigger.
karl@t480k:~$ xidlehook --not-when-fullscreen --timer 5 'xset dpms force off' ''
[2020-01-05T15:38:06Z INFO  async_std::task::block_on] block_on
[2020-01-05T15:38:06Z TRACE xidlehook_core] Taking the first timer into account. Remaining: 5s
[2020-01-05T15:38:06Z TRACE xidlehook_core] Relative time: 8ms
[2020-01-05T15:38:06Z TRACE xidlehook_core] Taking next timer into account. Remaining: 4.992s
[2020-01-05T15:38:06Z TRACE xidlehook_core] Sleeping for 4.992s
[2020-01-05T15:38:11Z TRACE xidlehook_core] Taking the first timer into account. Remaining: 5s
[2020-01-05T15:38:11Z TRACE xidlehook_core] Relative time: 2.659s
[2020-01-05T15:38:11Z TRACE xidlehook_core] Taking next timer into account. Remaining: 2.341s
[2020-01-05T15:38:11Z TRACE xidlehook_core] Sleeping for 2.341s
[2020-01-05T15:38:14Z TRACE xidlehook_core] Taking the first timer into account. Remaining: 5s
[2020-01-05T15:38:14Z TRACE xidlehook_core] Relative time: 5.001s
[2020-01-05T15:38:14Z TRACE xidlehook_core] Activating timer 0
[2020-01-05T15:38:14Z DEBUG xidlehook_core::modules::xcb] xcb::xproto::get_property(...) = []
[2020-01-05T15:38:14Z DEBUG xidlehook_core::modules::xcb] NET_WM_STATE_FULLSCREEN = 331
[2020-01-05T15:38:14Z TRACE xidlehook_core] Sleeping for 5s
[2020-01-05T15:38:19Z TRACE xidlehook_core] Taking the first timer into account. Remaining: 5s
[2020-01-05T15:38:19Z TRACE xidlehook_core] Relative time: 111ms
[2020-01-05T15:38:19Z TRACE xidlehook_core] Taking next timer into account. Remaining: 4.889s
[2020-01-05T15:38:19Z TRACE xidlehook_core] Sleeping for 4.889s
^C[2020-01-05T15:38:23Z INFO  async_std::task::block_on] block_on
[2020-01-05T15:38:23Z INFO  async_std::task::block_on] completed
[2020-01-05T15:38:23Z INFO  async_std::task::block_on] completed
[2020-01-05T15:38:23Z TRACE xidlehook] Signal received: SIGINT

Damn interesting, so I guess the question is reduced to: why would xcb::xproto::get_property ever be [] if xprop can still see the property?

Of course, xprop uses the exact same call I've used previously...
Idk, have you tried if version 0.7.1 works? It's using the X call directly, no XCB middleman. I mean it's unlikely, but I don't know how to proceed here, the docs on that function are pretty bad.

Idk, have you tried if version 0.7.1 works?

Yes, it has the same problem. I originally had the problem with 0.7.1 and only updated to provide up to date debugging info for this ticket.

Update: I experience this after switching to AwesomeWM! I can finally reproduce & attempt it

From my side, the error happens because the active window is actually different from the fullscreen window. To fix this, xidlehook would need to check all windows.

Alright, does the latest master work as you'd expect? I made it check all windows instead


Avail samples

Adds Sample values for Availabilites and OperatingReport where they were missing.

Closes issue #230

Pushback on the value between 0-1 from Technical Group. If it is a value representing a percentage, the consensus was that it should not be the percentage/100. If we want the values to be represented as a decimal value is should be a DecimalTypeItemType.


MultiMesh set_as_bulk_array() not available anymore in 4.0

Godot version:

4.0.47cf9985e
OS/device including version:

Windows 10 64bit, Ryzen 3600, RTX 2070s, Vulkan
Issue description:

set_as_bulk_array does not exist in 4.0 as it does in 3.x
Steps to reproduce:
Try to use the function.
Minimal reproduction project:

Not necessary? Function is missing.

It has just been renamed to multimesh_set_buffer
https://github.com/godotengine/godot/blob/edbc8488a5c1e090a5a98958ac3d368f13ba1492/servers/rendering/renderer_rd/renderer_storage_rd.cpp#L3725-L3756
Also note, the multimesh API is necessarily different in 4.0 with the overhaul of the rendering architecture, so not every concept from 3.x will map 1 to 1 in 4.0. However, in this case it does, it is just a rename and a slight change in internal behaviour.


You have to trust remote code execution to use this node!

How do I do that in comfy?

I'm not sure what you are asking about, but comfyui cannot help you gaining trust on someone else's work. The code is located here vikhyatk, if you think it is ok then you can use this node.

Then I shant use this considering the response I just received.  It installed it and I wished to know how to allow it because I have never seen any other node require this.  If the author of this isn't capable of telling me how, then red flags abound.

@DarkAlchy, if you load the node and activate this option

does this work for you?
On the other hand, there are other nodes providing the same model.


if labelvalues include ':', it will failed to render

If label values include ':', it will failed to render. But it could set labelvalues whit ':'(preg_match allowed ':').

Fix for this is in https://github.com/Jimdo/prometheus_client_php/pull/57

Closed via #57.


Use arc4random(3) on *BSD/macOS

Solution not involving file descriptors, seeded upon fork and on a regular basis.
This was done by @devnexen in https://github.com/google/AFL/pull/8. I only rebased it. I am hoping it can find a home here.

I saw the PR and read the Google employees rational why they did not accept it - code complexity.
Its little complexity, so I am fine with that, but the question I have is - how does that make afl-fuzz better? Is it faster or is needed to run on a target platform?
We need good randomness, and /dev/urandom does that very well, and it is available on a lot of platforms. and we are not really depleting the random pool as there is only an occasional reseed from /dev/urandom. so to add something that is specific to a subset of platforms must add something useful.
paging @hexcoder- in who is taking care of *BSD & portability :)

I read the google PR and after thinking about it ... i dont think its worth it, but it doesnt hurt either. so I dont care and accept it ;)

@t6 @devnexen  - thanks


GTK theme update

So the issue that I'm having atm is when I update the GTK theme, most application are updated instantly or showing the new color on restart except my gtk of the terminal (urxvt) (not the terminal itself).
I tried to restart the terminal without any success. It updates on reboot or reapplying the GTK-theme though. Im new to this software and will do some further research. I'm using Archlinux with Gnome-desktop and urxvt with fish shell.

Can you send me a screenshot?

Sorry for my late response. So I tried out different things and had to realize, that it wasn't only the gtk of my terminal but a bunch of different application. My calculator for example just needs a restart and shows the new colors in the gtk theme but other applications like my file browser or email client doesn't. After a relog the new color scheme is applied every where but the reason couldn't be gtk3: libgtksourceview-3.0.so.1 => /usr/lib/libgtksourceview-3.0.so.1 (0x00007f21bb3f2000) 	libgtk-3.so.0 => /usr/lib/libgtk-3.so.0 (0x00007f21baae2000)

Are the applications that require a restart GTK3 applications? If so then this is caused by the fact that GTK3 applications can't be reloaded on the fly.

the calculator for example is a gtk3 application and shows the new colorscheme after a restart. But the other applications like my filebrowser or the window decoration of my terminal window i have to logout and log back in. seems really strange to me because my filebrowser is gtk2: ldd /usr/bin/thunar | grep gtk 	libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x00007f1f69a4b000)

Thunar not updating on the fly isn't a pywal issue but an issue with Thunar itself. There's nothing we can do to fix it.
Basically we can't reload GTK3 programs on the fly nor can some GTK2 elements be reloaded on the fly.


feat: Implement domain scoping

This PR

Adds Domain Scoping

Related Issues

Fixes #257
Notes

Follow-up Tasks

How to test

@gunishmatta really nice work 🙌  could you please check the minor changes I proposed? They should be easy to complete and once done I think this is ready

Hi @Kavindu-Dodan  I am done with the changes, please merge if looks good.

I'll review this tomorrow. Thanks!


Pysd unable to parse GET XLS DATA

Hi, I'm trying to run a model (.mdl), but pysd is finding it hard to parse the file, I'm kind new to python and I don't seem to be able to find a way around it on my own, I'll appreciate any kind help.
This is the error I'm getting
IncompleteParseError: Rule 'entry' matched in its entirety, but it didn't consume all the text. The non-matching portion of the text begins with '::= GET XLS DATA('PM' (line 1, column 28).

Please see #209 !


Remove sale price set previously through content api

Through Google_Service_ShoppingContent_Product I am unable to set the sale price of a product to empty, as I must supply a Price object to the function, which seemingly cannot be set in a way to null the sale price. As no sale scheduling is used on the connected site, is there as way to set this to empty this as part of the api? Or a best practice way of avoiding this potential limitation, for example by setting the effective date into the past once the sale price is removed on the site?

Hello @AaronHibbett! Thanks for your message.
Do you have an example code for us to take a look at?


a2ac4d9 breaks existing cellwidth settings

After a2ac4d9 , nerdfont.vim breaks cellwidth setting by setcellwidth() called elsewhere.
Because of  setcellwidth()  behavior  that overwrites existing settings.
sample script is here.
set ambiwidth=single

" ● → 0x25cf

call setcellwidths([[0x25cf, 0x25cf, 2]])

" ● is displayed double width.

call nerdfont#cellwidths#fix()

" ● is now displayed sigle width.

thanks.

Probably fixed.

fix confirmed. thanks!


Answer to Exercise 6 of Chapter 7

@axel22 Please review.

It is certainly useful to have a Vector-based implementation, so I would keep it for instructional purposes and rename it to TVectorBuffer. However, the TArrayBuffer class should use transactions and the TArray class underneath.

@axel22 Thanks for review!
I will fix.

@axel22 I renamed TArrayBuffer to TVectorBuffer and fixed this.
Addtionally, I have implemented TArrayBuffer using TArray.
Please review.

Great - thanks a lot!

Thanks for merging :smile:


git:// url in submodules

.git/modules/modules/mavlink/config contains a reference to submodule pymavlink, the url giveni s:
[submodule "pymavlink"]
   url = git://github.com/ArduPilot/pymavlink.git

Lots of firewalls block git://, should probably be https:// like other URLs

pymavlink is a submodule of the MAVLink submodule. Thus, this issue should be go to MAVLink - See https://github.com/mavlink/mavlink/blob/master/.gitmodules

Oops sorry!


chore(plugins/dummy): bump dummy to 0.10.0-rc1

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area plugins

What this PR does / why we need it:
As per title
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: LucaGuerra
Once this PR has been reviewed and has the lgtm label, please assign mstemm for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 6c197f556b1e0cda9c460cbb3cbb1ae53d6cac93


devsecops-in-github missing reference to Token Scanning

The documentation on https://docs.microsoft.com/en-us/azure/architecture/solution-ideas/articles/devsecops-in-github is missing a reference to GitHub Advanced Security native Token Scanning capability.
It would also be great if we could segment the capabilities that are relevant to GitHub Open Source, GitHub Enteprise and GitHub Advanced Security. This will prevent confusion for readers who are trying to understand how the documentation maps to their env.
cc @secure-dev @issc29

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

ID: e3e82337-21f1-4c3c-0a71-2436a96cf9ad
Version Independent ID: 9fee3170-fd8b-dcb5-3bed-6858880f9337
Content: DevSecOps in GitHub - Azure Solution Ideas
Content Source: docs/solution-ideas/articles/devsecops-in-github.md
Service: architecture-center
Sub-service: solution-idea
GitHub Login: @fmigacz
Microsoft Alias: fmigacz

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#301792

Working on it today!

Rejected! No access! No access to Private repo 😪

#please-close
Resolved in this merged PR: https://github.com/MicrosoftDocs/architecture-center-pr/pull/6454


Old emails in Code of Conduct document

Code of Conduct document has CoreOS.com email addresses in it. These aren't a thing anymore right?
https://github.com/operator-framework/operator-sdk/blob/master/code-of-conduct.md

@flickerfly Thanks for pointing that out. I've updated the contact info on there.


Feature -> Allow the use of shipping addresses [requiredShippingContactFields]

This feature allows you to activate shipping addresses in Apple Pay.
[Apple Docs]: https://developer.apple.com/documentation/apple_pay_on_the_web/applepaypaymentrequest/2216121-requiredshippingcontactfields
In this way we can easily implement functionalities such as payment in one click or avoid handling shipping addresses in our developments.
You can enable this functionality by using the requiredShippingContactFields property in the createApplePay method call.

Two new events DidSelectShippingContact and DidCreatePaymentMethod have been created.
The DidSelectShippingContact event allows to retrieve the address when the user decides to change the one that is selected. The address received in this event is partially incomplete due to Apple's security policy of not providing the full address until the purchase has been made.
The DidCreatePaymentMethod event allows you to retrieve the address the purchase has been made successfully. This event is fired before the existing Completed event.

I trust that this improvement can be accepted and used by the rest of the developers.
Until then, I have made a package available here for anyone who is interested in this functionality.
"@rgarciadelongoria/stripe": "latest"
I am attaching some images below.

Nice and really useful feature!
Looking forward to be merged soon hopefully

I need the same!
lgtm 😉

Really neat feature!🤩 I was struggling to do just the same, thanks!

Useful functionality! It could help a lot to use Stripe with Apple Pay. 🤩

Looks good. @rgarciadelongoria Thanks your great work.
But I am having surgery tomorrow so I won't be able to verify for a week or so. I will merge and do a pre-release first.

Released on @next tag!
https://github.com/capacitor-community/stripe/releases/tag/v4.1.0-0

Released on @next tag!
https://github.com/capacitor-community/stripe/releases/tag/v4.1.0-0

Thank you very much, happy to contribute

Hi @rdlabo, I hope the surgery went well and you are recovering.
I have made some improvements to the code.
With what I had done previously, the possibility of including shipping addresses could only be enabled by means of a boolean value.
Now I have included the possibility of requiring, according to the needs of each moment, the agreement of name, email and contact telephone number.
All this information arrives in the same way in the DidCreatePaymentMethod event.
And now instead of using a boolean value in the requiredShippingContactFields property, an array of texts with at least one of the following values is needed: ['postalAddress', 'phoneNumber', 'name', 'emailAddress']
Below I include some screenshots:
['postalAddress', 'phoneNumber', 'name'] example:

['postalAddress', 'phoneNumber', 'name', 'emailAddress'] example:

I would be grateful if you could also merge these changes to improve this functionality, and that the rest of the developers can take advantage of them too.
At the moment, until they are merged, they can be tested using the temporary npm package that I have published @rgarciadelongoria/stripe
Thank you very much.

@rgarciadelongoria  I'm back. Thanks for great work, again. The code looks fine except for one point.
Is it possible to specify the type of Listener? Everything can be optional, but there should be a type specification.

@rgarciadelongoria I'm back. Thanks for great work, again. The code looks fine except for one point.
Is it possible to specify the type of Listener? Everything can be optional, but there should be a type specification.

Hi @rdlabo
You're right, better to specify a type.
In this case I have defined the DidSelectShippingContact and ShippingContact interfaces.
The DidSelectShippingContact interface consists of a "contact" property of type ShippingContact.
In this way, developers can import these interfaces to capture the information returned by the event with DidSelectShippingContact and, through ShippingContact, work with the same contact structure in their projects.

First, I think that this can change:
addListener(eventName: ApplePayEventsEnum.DidSelectShippingContact, listenerFunc: (data: any) => void) => PluginListenerHandle

This is only apple event. Is this right?
Next, I suggest union type for this:
addListener(eventName: PaymentSheetEventsEnum.DidSelectShippingContact, listenerFunc: (data: any) => void) => PluginListenerHandle

↓
addListener(eventName: PaymentSheetEventsEnum.DidSelectShippingContact, listenerFunc: (data: DidSelectShippingContact | ShippingContact) => void) => PluginListenerHandle

Usage:
Stripe.addListener(PaymentSheetEventsEnum.Completed, (data) => {
  if (Platform.is('ios')) {
    const handleData = data as DidSelectShippingContact;
  }

  if (Platform.is('android')) {
    const handleData = data as ShippingContact;
  }
});

What do you think? Thanks.

First, I think that this can change:
addListener(eventName: ApplePayEventsEnum.DidSelectShippingContact, listenerFunc: (data: DidSelectShippingContact) => void) => PluginListenerHandle

This is only apple event. Is this right?
Next, I suggest union type for this:
addListener(eventName: PaymentSheetEventsEnum.DidSelectShippingContact, listenerFunc: (data: any) => void) => PluginListenerHandle

↓
addListener(eventName: PaymentSheetEventsEnum.DidSelectShippingContact, listenerFunc: (data: DidSelectShippingContact | ShippingContact) => void) => PluginListenerHandle

Usage:
Stripe.addListener(PaymentSheetEventsEnum.Completed, (data) => {
  if (Platform.is('ios')) {
    const handleData = data as DidSelectShippingContact;
  }

  if (Platform.is('android')) {
    const handleData = data as ShippingContact;
  }
});

What do you think? Thanks.

Hi @rdlabo.
Ok, I think you are telling me to change only the README.md file, correct?
I have changed in this file the type any to DidSelectShippingContact since it is the type with which the new event works.

@rgarciadelongoria No, readme is created by docgen automatically. But I spent too much time approving your pull request. Also, this is not a critical issue.
Once merged, I will work on another pull request.

@rgarciadelongoria Thanks for contribute. We released v4.1.0! Please try it.
https://github.com/capacitor-community/stripe/releases/tag/v4.1.0


Review this Gradle problem in combination with OpenJDK 11

Unable to find method 'sun.misc.Unsafe.defineClass(Ljava/lang/String;[BIILjava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;'.
Possible causes for this unexpected error include:

Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)

The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
Stop Gradle build processes (requires restart)

Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.

In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

I think you have to somehow manually include the jdk.unsupported module or export the package to all unnamed modules.

Rejected by LEAN


Use newer build and install macros

If a project ships a pyproject.toml and does not ship setup.py, we should use %pyproject_wheel and '%pyproject_install` not the setup.py macros.

Done in #172


Dpn test fixes

Motivation
Most of the tests in DPN (which should probably be renamed to ol-framework) fail. This PR addresses some of the more trivial fixes but others warrant a more thorough review (e.g. DiemAccount changes).
Test Plan
cargo test --release in DPN root.
Related PRs
(not sure)

This is a great fix. Especially ones related to roles.
Could you rebase with the latest changes, I wonder if there was some drift in the version you were working from.
Then please use this test command:
NODE_ENV="test" cargo test -p diem-framework --test ol_transactional_tests

# with your changes now the  default should work:
NODE_ENV="test" cargo test -p diem-framework --test transactional_tests

https://github.com/0LNetworkCommunity/libra/blob/v6/ol/documentation/core-devs/_V6_test_cheatsheet.md#run-functional-move-tests-aka-transactional-tests

Getting errors running the test command you provided. Something to do with missing arg --round in task command.

Getting errors running the test command you provided. Something to do with missing arg --round in task command.

Are you running this commandsfrom the project root?
NODE_ENV="test" cargo test -p diem-framework --test ol_transactional_tests


Fix nix

this pr should fix https://github.com/Sherlock-Holo/fuse3/issues/45

tested on my machine
cargo cl --features=tokio-runtime
    Checking nix v0.25.0
    Checking fuse3 v0.5.0 (/home/sherlock/git/fuse3)
    Finished dev [unoptimized + debuginfo] target(s) in 3.87s


fix: content not available early in mobile rendering pipeline

Noticed this JS error gets thrown during dialog initialization in _updateOverflow if the viewport is initially small enough to fall into the "mobile" category.
The reason is that _updateSize is called from resize() which is called from _handleResize() which is called from Dialog's constructor. In Lit 2, the constructor runs before there's a shadow root.
In mobile mode, the code skips past all this autoSize logic which has a bunch of await this.updateCompletes in it and therefore defers the run long enough for the component to have rendered.

Agreed yeah. It was added here:
https://github.com/BrightspaceUI/core/commit/2e09c4e1af8ee637ea6d4b9ff9d8d3381e436567
I could move that call into the connectedCallback as well if you think that might be safer.

Agreed yeah. It was added here: 2e09c4e
I could move that call into the connectedCallback as well if you think that might be safer.

I think there's a setTimeout(,0), and the various await this.updateComplete calls, so the timing probably "just works" for constructor or connectedCallback most of the time, even though most of the code relies on the local DOM having been constructed.

After a bit more discussion, I've change this so that the call from dialog happens in firstUpdated, which will guarantee that the local DOM has been constructed. Fullscreen dialogs are different in that they don't make the call down to the mixin's resize(), so I've left them as-is for now.


refactor props and connections in Graph nodes

this went surprisingly smooth, which either means our code is so great, or.... that i missed something significant :)
shall we be optimistic?
PS: but it will break all the existing graphs... do we care?
PPS: there is also followup work to do to cleanup the Inspector handling of the prop/connection pair type, coming next week.


Add simple password length and username comparison validation

Added password validation to make sure the password is at least 12 characters (controlled by min-password-length setting), and that the username and password are not equal.

Tests are passing now, I've run ci locally on my machine so if the build fails it is likely a drone issue.


invalid date cannot be viewed in a browser

uploaded an image
date: invalid date ‘  +00:00’
date: invalid date ‘  +00:00’

this results in it being unviewable in a browser. it also seems to think this image is copyrighted?

(Relating to this object: https://atproto-browser.vercel.app/at/did:plc:v7tbr6qxk6xanxzn6hjmbk7o/blue.zio.atfile.upload/3l76ts2x7l62i)

this results in it being unviewable in a browser

Actually, this occurs to all uploads on that PDS (bsky.social / *.bsky.network)

it also seems to think this image is copyrighted?

This is a warning that flags up for everything as a reminder. It can be turned off with ATFILE_SKIP_COPYRIGHT_WARN=1 in the config


Made threading optional and added support for multi-process mode

What
Updated the serve capabilities to allow for optionally running in multi-process mode and/or disabling threading. The default behavior was kept the same, where threading is enabled and the server uses a single process.
Why
To optionally support a concurrency model that resembles that of API Gateway + Lambdas (where each request is routed to a separated Lambda container/instance) during local development.
Testing

pytest serve_test.py tests pass
npm test tests pass
Was able to run a test project with threading and multi-process flags/options passed, verifying serialized and concurrent request handling when serving 100+ requests at once.

Failing Tests
At the time of making this PR, the master branch has failing tests in wsgi_handler_test.py. Source: https://travis-ci.org/logandk/serverless-wsgi/jobs/546463386

@bworrell Awesome work, thanks for the PR!


Localizing strings for not event on this day and on today

Besides the days and months, I'm adding the strings used when there's no event on the days.
Here's the result on the multiple languages supported:

Please note that the German translation was done using Google Translate. It would be nice if someone could verify that.

Yeah, I was hacking the code for some project and noticed that this was missing. :D

Nice! I missed including this string in very language, thanks for this! :smile:


Not able to brew install ideviceinstaller

I am trying to run command brew install ideviceinstaller
Getting error:
Failed to connect to homebrew.bintray.com port 443: Connection refused
Running command in OSX Yosemite

Wrong tap. You want Homebrew/homebrew which ships this formula - I think you've already reported it there as well.


Mark up About Us Page

Figma (working): https://www.figma.com/file/5ThSdBlZBcQnuyk15DWJNQ/Venture-Studio-Site?node-id=585%3A49Fig
Figma (prototype): https://www.figma.com/proto/5ThSdBlZBcQnuyk15DWJNQ/Venture-Studio---Site?node-id=585%3A49&scaling=min-zoom
For the About Us page, add the content and html mark up. The same as #25, for this issue we're only concerned with content and markup. Not concerned with any styles or design decorations.
For the team member photos, for now, use any image with a similar aspect ratio. Can be from https://placeholder.com/

@will0101 Got a new one for you here when you're ready.

@tylergaw Ready when you are 👍.


Bug report from Darcy

Darcy Blankenship reports:

Hi there. A Vancouver office has tried to create a need a couple times today and it is reportedly deleting each newly created need. It’s been a little crazy for our volunteers and frustrating for the social worker.

Not a lot of info to go on here, but let's investigate what recent changes might cause a newly created need to disappear from the list.

I was able to create a need in my dev environment, and it did show up in the list. However I have a theory that they might be using the new date filter on accident, thus filtering the new needs from the list. I'd be happy to talk to the bug reporter about it, or if they want to provide steps to reproduce then that will be good too.

No further reports of this issue, closing it now.


[BugFix, Feature] pad_sequence refactoring

Description
The below changes have been discussed with @vmoens :
The current implementation fixes the pad_sequence implementation when return_mask=True and adds an additional key named "masks". The key "masks" contains a TensorDict with the same keys as the stacked tensordict (preserving nested keys) and every key contains the mask of valid values in the stacked tensordict. This PR removes the batch_first and always returns a tensordict with the batching dimension being first. Additionally, adds a parameter pad_dim: int = 0 where the user can select in which dimension to pad the tensors. Thus, the masks will have a shape of torch.Size([batch_size, max_seq_length]) of the given dimension. Finally, added tests for the new pad_sequence operator.
Motivation and Context
It fixes the issue:
https://github.com/pytorch/tensordict/issues/643
close #643

[Yes]  I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Remove all that do not apply:

Bug fix (non-breaking change which fixes an issue)
Documentation (update in the documentation)

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide (required)
[x] My change requires a change to the documentation.
[x] I have updated the tests accordingly (required for a bug fix or a new feature).
[Maybe?] I have updated the documentation accordingly.
I have updated the example and the description in the description of pad_sequence but I am not sure if I need to explicitly update the wiki.

Hey @dtsaras do you want me to take this over? I can do the patch for the batch size if you'd like


Bug: There are two bugs in the RPC error handling.

[2023-12-02T06:05:37Z TRACE starknet_providers::jsonrpc::transports::http] Response from JSON-RPC: {"jsonrpc":"2.0","error":{"code":-32603,"message":"Internal error","data":{"error":"Internal error: Error in the called contract (0x05686c52b6f38639eb9cfb3dfff1b3260315099aa045fcc0b4a865068ba36aad):\nError at pc=0:558:\nCouldn't compute operand op1. Unknown value for memory cell 7:5"}},"id":1}

called `Result::unwrap()` on an `Err` value: Provider(Other(TransportError(Json(Error("data did not match any variant of untagged enum JsonRpcResponse", line: 0, column: 0)))))

@xJonathanLEI

Sequencer gateway error handling implementation bug:
[2023-12-02T07:39:04Z TRACE starknet_providers::sequencer] Response from sequencer API: {"code": "StarknetErrorCode.DEPRECATED_ENDPOINT", "message": "Endpoint is deprecated from version 0.12.3."}
thread 'main' panicked at examples/mint_tokens.rs:65:10:
called `Result::unwrap()` on an `Err` value: Provider(Other(Serde(Error("data did not match any variant of untagged enum RawFieldElementResponse", line: 0, column: 0))))

For the original issue reported: you're using a JSON-RPC v0.4.x endpoint, which reports contract errors under the code -32603. Starknet-rs now works with JSON-RPC v0.5.1, which would instead report it under code 40.
For the 2nd issue, it's due to Starkware upgrading the Goerli testnet to v0.12.3 and deprecating most endpoints. At this point, using the sequencer gateway is almost pointless. The implementation of Provider for SequencerGatewayProvider will be removed in the next version.

For the original issue, check out the support for error data introduced in #513.


Unexpected issue when running on Sauce Labs

Are you requesting a feature or reporting a bug?
Bug
What is the current behavior?
Alert box error
What is the expected behavior?
No alert box error
Hey! Really sorry for such a vague and incomplete test report but checkout this screenshot:

I don't suppose you have any idea what could cause that? I'm not even sure if it's from the webpage or it's a Testcafe thing. Feel free to close this issue if you don't know, I appreciate you need more information to debug this one.

Hello Umar!
Thanks for report ! We need some additional information about reproducing this issue. Please, post here the test code and the command which launches TestCafe (we need to know OS X and Chrome versions). You can omit your credentials.

Test command:
SAUCE_USERNAME=xxx SAUCE_ACCESS_KEY=xxx ./node_modules/testcafe/bin/testcafe.js --skip-js-errors 'saucelabs:Chrome@55.0:OS X 10.10' src/test/*.js

Testcafe plugin versions:
"testcafe": "0.13.0-alpha1"
"testcafe-browser-provider-saucelabs": "^1.1.0"

Chrome Version:
Chrome@55.0:OS X 10.10

As for the test code itself, I believe it's this:
test.page('http://genomemedicine.biomedcentral.com/')('Submit Manuscript button', async t => {
    await t.click('.journal-identity__submit');
    await t.wait(1000);
    const expectedUrl = 'http://www.editorialmanager.com/gmed/default.aspx';
    const currentUrl = await utils.pageUrl();
    await t.expect(currentUrl).eql(expectedUrl);
});

// pageUrl() is implemented as follows

const pageUrl = clientFunction(() => window.location.href);

I should add that I can't reproduce it right now. But it did happen a few times.

Thank you for explanation! We have reproduced the issue and currently working on it.

@umaar, i'm sorry for late response, afaik it't doesnt relate to SauceLabs running, because i've reproduced it on local machine. I've created separate issue for investigating this problem - https://github.com/DevExpress/testcafe/issues/1336

Hello @umaar! We discovered that we have problems with <frameset>, you can track the issue here: https://github.com/DevExpress/testcafe-hammerhead/issues/1070

fixed in<EMAIL_ADDRESS>


IfConditionHelper: AssignOp\Coalesce shouldn't pops up "Do not compare objects directly" error

What is this feature about (expected vs actual behaviour)?
Expected: no issue.
Actual:
Coalesce: Do not compare objects directly, ACoalesceClass and ACoalesceInterface|null found.
Coalesce: Do not compare objects directly, ACoalesceInterface|null and ACoalesceClass found.

How can I reproduce it?
interface ACoalesceInterface {}
class ACoalesceClass implements ACoalesceInterface {}

class AFoo {
    public function __construct(
        private ?ACoalesceInterface $var
    ) {
        $this->var ??= new ACoalesceClass();
    }
}

Does it take minutes, hours or days to fix?
I tried to reproduce it in a PR, but the error never pops up in the test suite, probably I can figure out the proper position for the test case.
Any additional information?
PHP: 8.1
voku/phpstan-rules: 3.1.1

Hi, I tried to fix it in version 3.1.2
... but I am sure there must be a better way with PHPStan to check if one type is an interface and the other type has implemented it. accepts is not working here because we want to check, e.g. "__toString" vs "string" types.  :thinking:

fixed: "accepts" is working here, I only missed that it returns an \PHPStan\TrinaryLogic object and not bool :facepalm:


program esp8266 or arduino sheild?

Hello
can i use this library for esp8266 stand alone or i should use it with arduino board?

Hi,
I tested it only with esp8266 stand alone, I will be happy to know if you can run it on other platforms.

i plane to use it in real time program .... and how can i diagnose i have conection to modbus master(for example OPC) sometimes data qulity is "BAD" and how can i know it trough ESP?
thanks

the esp is the controller you do not need to communicate trough it.
you will have a problem of bad quality signal in any solution that is not physical lines, if you need high availability you will need to use physical lines ( Ethernet, rs485, ... ).

sometimes its ok but sometimes its BAD and if i reset it ... its ok! its randomly and stuck in "BAD" Quality.... is there any way that i know when data is BAD and i reset esp?
thanks alot for your answers

I do not have a good answer :-(
I will be very happy to know how you solved it (once you do).
I can think about many watch-dog like solutions, but I do not know what is best in your case.

i test watchdog but not works because ESP dosent stuck in program ... i can ping slave id ! but Data quality is Bad in OPC!!and i should reset  ESP to fix it!
do you use your code for real time working?

no, i did not test this code in a real environment.
wifi for important data is problematic even when it works well :-)

mmm...but todaty Iot is Based on wifi:)

I will be happy to know how you solved it, once you do. I'm sure you overlooked a solution ...

thanks i will try :)


Fix doc examples and add checking

Thanks for getting the doc tests up and running again, and for fixing up the examples.
Could you add "Resolves #33" somewhere in the description so that issue gets automatically closed when this merges?


Update mmdoc and buildhelper

https://github.com/marekmaskarinec/tophat/actions/runs/8281813607/job/22661171777#step:4:136

More generally, we need to switch tophat to the updated Umka standard library:

Most file I/O functions now return std.Err
There is std.freadall()

I fixed buildhelper and the CI should pass, but mmdoc has to be done from Marek's side.

There was also a custom (and ugly) readall() in misc.um.

Noted. I think I just found a bug in freadall, I'm going to post it in the Umka repository.

There was also a custom (and ugly) readall() in misc.um.

I remember this ancient implementation from the times when there was no ftell.


[WIP] Feature: High level APIs to create tags and filters

Description
Please describe your pull request.
Issue ticket number
closes #115 High level APIs to create tags and filters
Additional Context

Codecov Report
Base: 92.97% // Head: 92.68% // Decreases project coverage by -0.28% :warning:

Coverage data is based on head (d990138) compared to base (fbef2ab).
Patch coverage: 27.77% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #121      +/-   ##
===========================================
- Coverage    92.97%   92.68%   -0.29%
===========================================
  Files          270      272       +2
  Lines         4084     4102      +18
  Branches       537      537
===========================================
+ Hits          3797     3802       +5
- Misses         190      203      +13
  Partials        97       97

Flag
Coverage Δ

build
95.18% <ø> (ø)

core
93.05% <27.77%> (-0.62%)
:arrow_down:

extension-dbt
97.43% <ø> (ø)

extension-debug-tools
98.11% <ø> (ø)

extension-driver-duckdb
100.00% <ø> (ø)

extension-driver-pg
95.19% <ø> (ø)

integration-testing
96.15% <ø> (ø)

serve
90.03% <ø> (ø)

test-utility
∅ <ø> (∅)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

packages/core/src/lib/functional-extensions/tag.ts
18.75% <18.75%> (ø)

packages/core/src/index.ts
100.00% <100.00%> (ø)

...ckages/core/src/lib/functional-extensions/index.ts
100.00% <100.00%> (ø)

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


[Deployment] Automatically create pre-release NuGets

Automatically create and push pre-release NuGets on accepting PRs into develop.
Additionally allow manually building test NuGets from feature branches.

Implemented GitHub action for simple release creation in #29


ChangeFeed processor ignoring WithMaxItems

Describe the bug
I have a hosted service consuming the changes from a container and sometimes I need to make bulk operations in that container. Because of this requirement, I tried to use the .WithMaxItems() configuration to limit the amount of updates that I will received in a single batch but the processor seems to be ignoring the configuration.
To Reproduce
    public class ChangeFeedProcessor : IHostedService
    {
        private readonly ChangeFeedSettings _feedSettings;
        private readonly Lazy<ChangeFeedProcessor> _changeFeedProcessor;

        public ChangeFeedProcessor(IOptions<ChangeFeedSettings> feedSettings,
            ICustomLogger<AlertsChangeFeedProcessor> logger)
        {
            //some code to get the container
            _changeFeedProcessor = new Lazy<ChangeFeedProcessor>(() => container
                .GetChangeFeedProcessorBuilder<ItemDto>("some_name", OnChangesDelegate)
                .WithInstanceName("instance_name")
                .WithMaxItems(10)
                .WithLeaseContainer(leaseContainer)
                .Build());
        }

        public async Task StartAsync(CancellationToken cancellationToken)
        {
            await _changeFeedProcessor.Value.StartAsync();
        }

        public async Task StopAsync(CancellationToken cancellationToken)
        {
            await _changeFeedProcessor.Value.StopAsync();
        }

        public async Task OnAlertChangesDelegate(IReadOnlyCollection<ItemDto> changes,
            CancellationToken cancellationToken)
        {
            //changes has more than ten elements
            //some logic here
        }
    }
}

Expected behavior
I expect to receive the specified amount of items at most
Actual behavior
I receive a lot more
Environment summary
SDK Version: 3.19.0
OS Version: Windows

If you are storing the documents with Stored Procedures or Bulk or TransactionalBatch, this is expected.
Change Feed responses cannot break the transaction, if the documents were saved within the same transaction, they cannot be separated.

This is explained in the Change Feed Iterator options:
https://github.com/Azure/azure-cosmos-dotnet-v3/blob/master/Microsoft.Azure.Cosmos/src/RequestOptions/ChangeFeedRequestOptions.cs#L24-L37
We could replicate the same text on the ChangeFeedProcessorBuilder

Thanks for the clarification @ealsur . I wasn't aware of this behavior

I'll leave the issue open to track adding this note to the ChangeFeedProcessorBuilder APIs.


:book: updated read data function in library

in line with hw5.py file

Please import this and run in notebook before uploading @danidlsa


Last updated tracking for supplier parts

Add last updated tracking for supplier parts and the supplier price breaks as discussed in #3327.
Initial implementation was as a property on the model, which worked but was not sortable.  In the attempt to make the sortable part work, I am getting Internal Server Errors but I cannot figure out why the dev server is not printing the stack trace.
Even forcing Debug mode and Logging to DEBUG using INVENTREE_LOG_LEVEL=DEBUG INVENTREE_DEBUG=True invoke server, all it outputs is Internal Server Error and then the path.  The response to the broswer is slightly more useful in that it has the repr of the exception, but without a stack trace I can't find what is failing.

@nwns not really sure but as the migrations are fundamentally breaking the whole thing I would start by fixing them.

@nwns after fixing the migrations as suggested I get normal trackback written to the database and a notification informing me of the new error. To me the filter implementation seems to be the problem as @SchrodingersGat suggested.

@nwns I made a PR to your branch that works. Do you intend to submit this or should I make a new rewritten PR?

@nwns ping! Waiting for feedback on a number of points here. Let us know when you're able to get back to this.


vsphere.GetObjectCustomAttribute func (incorrectly) uses fixed object type in log/error messages

In this block:
https://github.com/atc0005/check-vmware/blob/78716fdb74be3ecab07972a64b7487bf166863ff/internal/vsphere/attributes.go#L249-L264
these lines incorrectly use fixed strings for the object type instead of referencing the live/dynamic values:
https://github.com/atc0005/check-vmware/blob/78716fdb74be3ecab07972a64b7487bf166863ff/internal/vsphere/attributes.go#L251-L255
https://github.com/atc0005/check-vmware/blob/78716fdb74be3ecab07972a64b7487bf166863ff/internal/vsphere/attributes.go#L258-L263

Discovered this from a Nagios notification today when the virtual hosting team brought a new host online that does not yet have a standard Location custom attribute in place.
Snippet from the Nagios notification:

CRITICAL: Error retrieving hosts with Custom Attribute Location
Additional Info:
ERRORS

failed to retrieve custom attribute for HostSystem host7.example.com: specified Custom Attribute Location not set on virtual machine host7.example.com: custom attributes not set

While I think the error message format needs further work, this specific issue is filed against the incorrect fixed string virtual machine; this isn't a virtual machine, it is a host.


SIGTERM instantly kills the process

I noticed that sending a SIGTERM (using the kill command) causes the node to immediately exit, without even printing any message to the log. Can we trap this and handle it the same way we handle a SIGINT (ctrl-c)?

@lrettig still relevant?

Yes. We're gracefully handling SIGINT:
https://github.com/spacemeshos/go-spacemesh/blob/2e58ca2817765c4f7e7c2c9f7968a76d643ce285/cmd/base.go#L87-L89
but not SIGTERM (which, e.g., docker sends). This can lead to data corruption.
This is definitely doable, see: https://www.rudderstack.com/blog/implementing-graceful-shutdown-in-go/


Some quicky starter info after running yo cf.

Wait for an update that addresses theming.

Ok, added.

Thanks for this. It's going to be really useful for new folks.


feat: Added locale for movies

Fixes #895

Added locale for movie data generation(Only completed en-us)
Added test cases for the same

please fix build

Fixed the build issues


chore(release): small tweaks

add contributing guide (based on IS.js one)
fix small error in api-extractor.json
better link in CI comment in release script
replace default with defaultValue: https://api-extractor.com/pages/tsdoc/tag_defaultvalue/
put todo in separate comments so they aren't found by api-extractor
avoid using > & {} in tsdoc comments, they can be confused with html apparently, and this looks nicer than the backslashes

Also seems that lint tests are failing.


Trouble opening cloud reader on iOS 7 iPad

I have a site up with tons of test books. Have switched to the Cloud Reader, vs JS Viewer as it is more compact and loads quicker.
Here's the URL to one of the libraires: /plasmacore.net/cloud-reader-layout
It opens fine, to the library, from my Windows 7 machine and books open and preform correctly.
From the iPad the library opens, but when you open a book it hangs once the small type at the very top appears.
The same epub-content files work well on the iPad in the JS Viewer. Check it out: /plasmacore.net/Readium_Layout

Duplicate: https://github.com/readium/readium-js-viewer/issues/352