Poor visibility of some ui elements

Not sure if this is intended behaviour, but colors in my setup differ very much from the original vim theme. This makes some symbols (like split window separators, out-of-file line symbols ~ and other stuff) barey visible.

dracula.nvim, with termguicolors (barely visible split and ~, ~less vibrant colors~, but more colors)

dracula/vim without termguicolors ~(objectively best looking, but no 24-bit color support...)~ changed my mind when finaly checked other languages...

dracula/vim with termguicolors (possibly something wrong with my setup?)

Also is creating support for chadtree possible?
edit: I've checked other languages and see that there are more dracula colors used, but reduced visibility of ~ still remains.

Hi, EndOfBuffer symbol is actually hidden with background color. Because of your terminal and vim background is transparent, you are having that particular issue. Now, I have added a global variable #9   e89d452  vim.g.dracula_show_end_of_buffer set it to true or false  to turn enable/disable EndOfBuffer.

Unfortunately this fix doen't seem to work for me ;/

@FredeEB I am a bit confused here. Why true is undefined? Is it a Vim Language thing? I am not totally good with Vim Language.

@Mofiqul - Me neither. I assumed that true/false were defined in viml, but it appears to use numeric values, ie. 1/0 respectively.
I've created #13 to iron this out

@FredeEB - So if let g:dracula_show_end_of_buffer = 1 is set do we need to check like vim.g.dracula_show_end_of_buffer == true or vim.g.dracula_show_end_of_buffer == 1  in lua?

@Mofiqul -  That's a good point. I doubt people would set it to 0 which would fail.
vim.g.dracula_show_end_of_buffer = 1
vim.g.draucla_show_end_of_buffer = true

if vim.g.dracula_show_end_of_buffer then
    -- will get here in either case
end

however for the false case
vim.g.dracula_show_end_of_buffer = false

if vim.g.dracula_show_end_of_buffer then
    -- will not get here
end

vim.g.dracula_show_end_of_buffer = 0

if vim.g.dracula_show_end_of_buffer then
    -- will get here, because 0 evaluates to true
end

This is remedied by just not setting it
vim.g.dracula_show_end_of_buffer = nil

if vim.g.dracula_show_end_of_buffer then
    -- will not get here
end


Connect this router3 with .mdl-fragment if setting a value for src attribute

Separation of concerns... If an element already solves this question, then do not mix up .mdl-router3 with .mdl-fragment. Would be better if write an integration test that checks that a later added .mdl-router3 reacts to URL's fragment changes...

The solution is:
<div src="fragment.html" hash="fragment-hash" class="mdl-fragment mdl-router3">
  ..
</div>

If mix these two classes into a tag, then they behave as expected.


harvest optimization

If you made a contract change, make sure to complete the checklist below before merging it in master.
Refer to our documentation for more details about contract security best practices.
Contract change checklist:

[ ] Code reviewed by 2 reviewers. See template and example.
[ ] Unit tests pass
[ ] Slither tests pass with no warning
[ ] Echidna tests pass if PR includes changes to OUSD contract (not automated, run manually on local)

I left some comments on this on the original issue. Overall, I'd prefer to close this and keep the code simple.

I left some comments on this on the original issue. Overall, I'd prefer to close this and keep the code simple.


Added I2C Fifo Reset Test Fmt Rx

Signed-off-by: Viswanadha Bazawada<EMAIL_ADDRESS>

Looks like I2S smoke test still fails:

UVM_ERROR (cip_base_scoreboard.sv:579) [scoreboard] tl_a_chan_fifos[i] item uncompared: has 1 failures:

Test i2c_smoke has 1 failures.

0.i2c_smoke.1
Line 40, in log /azp/agent/_work/1/s/scratch/HEAD/i2c-sim-vcs/0.i2c_smoke/out/run.log
  UVM_ERROR @<PHONE_NUMBER> ps: (cip_base_scoreboard.sv:579) [uvm_test_top.env.scoreboard] tl_a_chan_fifos[i] item uncompared:
  -------------------------------------------------------------------
  Name                           Type             Size  Value
  -------------------------------------------------------------------
  req                            cip_tl_seq_item  -     @528402

Hi,
I still see this CI private error:
Failure Buckets

UVM_ERROR (cip_base_scoreboard.sv:579) [scoreboard] tl_a_chan_fifos[i] item uncompared: has 1 failures:

Test i2c_smoke has 1 failures.

0.i2c_smoke.1
Line 40, in log /azp/agent/_work/1/s/scratch/HEAD/i2c-sim-vcs/0.i2c_smoke/out/run.log
  UVM_ERROR @<PHONE_NUMBER> ps: (cip_base_scoreboard.sv:579) [uvm_test_top.env.scoreboard] tl_a_chan_fifos[i] item uncompared:
  -------------------------------------------------------------------
  Name                           Type             Size  Value
  -------------------------------------------------------------------
  req                            cip_tl_seq_item  -     @528402

Feel free to let me know if you have trouble reproducing it.

Hi, I still see this CI private error:
Failure Buckets

UVM_ERROR (cip_base_scoreboard.sv:579) [scoreboard] tl_a_chan_fifos[i] item uncompared: has 1 failures:

Test i2c_smoke has 1 failures.

0.i2c_smoke.1
Line 40, in log /azp/agent/_work/1/s/scratch/HEAD/i2c-sim-vcs/0.i2c_smoke/out/run.log  UVM_ERROR @<PHONE_NUMBER> ps: (cip_base_scoreboard.sv:579) [uvm_test_top.env.scoreboard] tl_a_chan_fifos[i] item uncompared:
  -------------------------------------------------------------------
  Name                           Type             Size  Value
  -------------------------------------------------------------------
  req                            cip_tl_seq_item  -     @528402

Feel free to let me know if you have trouble reproducing it.

@cindychip can you post the seed number ?

Sure! seed number is '1` in vcs, but here is the full instruction to reproduce it:
https://docs.opentitan.org/doc/getting_started/setup_dv/#reproduce-a-dv-failure-in-ci

Sure! seed number is '1` in vcs, but here is the full instruction to reproduce it: https://docs.opentitan.org/doc/getting_started/setup_dv/#reproduce-a-dv-failure-in-ci

@cindychip
// Simulator used to sign off this block is Xcelium
i ran a reseed 20 in xcelium and all tests passed.
Test Results

Milestone
Name
Tests
Passing
Total
Pass Rate

V1
host_smoke
i2c_smoke
20
20
100.00 %

V1
target_smoke
i2c_smoke
20
20
100.00 %

V1

TOTAL
20
20
100.00 %

TOTAL
20
20
100.00 %

INFO: [FlowCfg] [scratch_path]: [i2c] [/scratch/google/goo_opentitan/viswanadhab/i2c_host_fifo/i2c-sim-xcelium]
INFO: [FlowCfg] [results:email]: [/scratch/google/goo_opentitan/viswanadhab/email.html]
      [   legend    ]: [Q: queued, D: dispatched, P: passed, F: failed, K: killed, T: total]

00:00:50  [    build    ]: [Q: 00, D: 00, P: 01, F: 00, K: 00, T: 01] 100%
00:12:47  [     run     ]: [Q: 00, D: 00, P: 20, F: 00, K: 00, T: 20] 100%
Should i try the seed with vcs as well?

Yeah please follow the instruction and try to reproduce it using VCS. https://docs.opentitan.org/doc/getting_started/setup_dv/#reproduce-a-dv-failure-in-ci
Totally understand this block will be signed off in xcelium, but CI only has VCS licenses, and there isn't a way to bypass CI failure.
Thanks for your efforts!!

Yeah please follow the instruction and try to reproduce it using VCS. https://docs.opentitan.org/doc/getting_started/setup_dv/#reproduce-a-dv-failure-in-ci
Totally understand this block will be signed off in xcelium, but CI only has VCS licenses, and there isn't a way to bypass CI failure. Thanks for your efforts!!

Hi @cindychip I have used VCS simulator and test still passed.
VCS version for me : synopsys/vcs/R-2020.12-SP2-2
VCS version used by CI : VCS_VERSION: S-2021.09
I shall update to the CI version of VCS  and try again
Find the contents of log below
[Executing]:
make -f /projects/google/goo_opentitan/viswanadhab/opentitan_i2c/hw/dv/tools/dvsim/sim.mk run post_run_cmds='' pre_run_cmds='' proj_root=/projects/google/goo_opentitan/viswanadhab/opentitan_i2c run_cmd=/scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs/default/simv run_dir=/scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs/0.i2c_smoke/out run_opts='+UVM_NO_RELNOTES +UVM_VERBOSITY=UVM_LOW -licqueue -ucli -do /projects/google/goo_opentitan/viswanadhab/opentitan_i2c/hw/dv/tools/sim.tcl +ntb_random_seed=1 -assert nopostproc +UVM_TESTNAME=i2c_base_test +UVM_TEST_SEQ=i2c_smoke_vseq' sw_build_device='' sw_build_dir=/scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs sw_images='' uvm_test=i2c_base_test uvm_test_seq=i2c_smoke_vseq
mkdir -p /scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs/0.i2c_smoke/out
make: sw_build
make: simulate
cd /scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs/0.i2c_smoke/out && /scratch/google/goo_opentitan/viswanadhab/i2c_host_rx_sample/i2c-sim-vcs/default/simv +UVM_NO_RELNOTES +UVM_VERBOSITY=UVM_LOW -licqueue -ucli -do /projects/google/goo_opentitan/viswanadhab/opentitan_i2c/hw/dv/tools/sim.tcl +ntb_random_seed=1 -assert nopostproc +UVM_TESTNAME=i2c_base_test +UVM_TEST_SEQ=i2c_smoke_vseq
Chronologic VCS simulator copyright 1991-2020
Contains Synopsys proprietary information.
Compiler version R-2020.12-SP2-2_Full64; Runtime version R-2020.12-SP2-2_Full64;  Mar 28 12:22 2022
ucli% # Copyright lowRISC contributors.
ucli% # Licensed under the Apache License, Version 2.0, see LICENSE for details.
ucli% # SPDX-License-Identifier: Apache-2.0
ucli% # Common TCL script invoked at run-time by the simulator.
ucli% # VCS syntax: -ucli -do
ucli% # Xcelium syntax: -input
ucli% set dv_root ""
ucli% if {[info exists ::env(dv_root)]} {
set dv_root "$::env(dv_root)"
} else {
puts "ERROR: Script run without dv_root environment variable."
quit
}
/projects/google/goo_opentitan/viswanadhab/opentitan_i2c/hw/dv
ucli% source "${dv_root}/tools/common.tcl"
ucli% source "${dv_root}/tools/waves.tcl"
INFO: Dumping waves is not enabled.
INFO: Setting "dump_tb_top" to "1".
INFO: Dumping waves in scope "tb:0".
ucli% # In GUI mode, let the user take control of running the simulation.
ucli% global gui
ucli% if {$gui == 0} {
run
quit
}
UVM_INFO @ 0 ps: reporter [RNTST] Running test i2c_base_test...
UVM_INFO @   3499066 ps: (i2c_base_vseq.sv:200) uvm_test_top.env.virtual_sequencer [uvm_test_top.env.virtual_sequencer.i2c_smoke_vseq]
initialization is done, DUT/AGENT = Host/Target
UVM_INFO @<PHONE_NUMBER> ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]
--- UVM Report catcher Summary ---
Number of demoted UVM_FATAL reports  :    0
Number of demoted UVM_ERROR reports  :    0
Number of demoted UVM_WARNING reports:    0
Number of caught UVM_FATAL reports   :    0
Number of caught UVM_ERROR reports   :    0
Number of caught UVM_WARNING reports :    0
UVM_INFO @<PHONE_NUMBER> ps: (uvm_report_server.svh:904) [UVM/REPORT/SERVER]
--- UVM Report Summary ---
Quit count :     0 of    50
** Report counts by severity
UVM_INFO :    3
UVM_WARNING :    0
UVM_ERROR :    0
UVM_FATAL :    0
** Report counts by id
[RNTST]     1
[UVM/REPORT/CATCHER]     1
[uvm_test_top.env.virtual_sequencer.i2c_smoke_vseq]     1
TEST PASSED CHECKS

|_   |_  | |   _ __   __ _ ___ ___  ___  __| | |
| |/ _ / __| _| | ' \ /  / __/ __|/ _ \/ _ | |
| |  /_ \ |  | |) | (| _ __ \  / (| ||
|_|_||/_| | ./ _,|//___|_,()
||
$finish called from file "/tools/synopsys/installs/R-2020.12-SP2-2_vcs/etc/uvm-1.2/base/uvm_root.svh", line 527.
$finish at simulation time<PHONE_NUMBER> ps
V C S   S i m u l a t i o n   R e p o r t
Time:<PHONE_NUMBER> ps
CPU Time:     25.470 seconds;       Data structure size:   1.3Mb
Mon Mar 28 12:23:05 2022
make: post_run
make: run_result


Fix Spaces Braces and Brackets

Correction of spaces in comments, empty braces and brackets. When i run chart-test im my enviromment, these configuration impacting in the process and cause errors

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


libyang packages for Ubuntu for ppc64le architecture

hello,  I want to contribute to creating libyang package for Ubuntu for ppc64le architecture.  I was hoping someone from the community can help point me in the right direction on what I need to do to get .deb package in the download site for folks to download.  I appreciate your help.

I do believe this is already done as part of the official libyang package built for the Debian Buster (Debian 10) releases.
See https://packages.debian.org/buster/libs/libyang-cpp0.16
The Debian 10 binary packages should work unchanged on Ubuntu 14.04, 16.04 and 18.04 as well as Debian 8 and up (and probably others which I have not tested)

Thank you very much, I did not know built packages already existed. closing


About package does not disable cleanly

From @Ben3eeE on April 6, 2016 21:17
Prerequisites

[X] Can you reproduce the problem in safe mode?
[X] Are you running the latest version of Atom?
[X] Did you check the debugging guide?
[X] Did you check the FAQs on Discuss?
[X] Are you reporting to the correct repository?
[X] Did you perform a cursory search to see if your bug or enhancement is already reported?

For more information on how to write a good bug report or enhancement request, see the CONTRIBUTING guide.
Description
Disabling about package has some issues. Application:about command still exists in palette and help menu and executing it opens a weird atom:\about file that causes atom to hang when saving it.
Same issue different package: https://github.com/atom/settings-view/issues/764
Steps to Reproduce

Open atom
Disable about
(optional) Restart atom
Run application:about from command palette or help menu.

Expected behavior: Nothing or some default very basic atom/core about to show.
Actual behavior: Weird non existing file opens that causes atom to hang when saving.
Versions
1.6.X
Windows 7.
Copied from original issue: atom/about#22

From @magicznyleszek on May 18, 2018 7:32
Maybe instead of fixing the disabling, it would be better to work on performance (so less people would want to disable it). In my current setup timecop shows that about activates in 11ms

From @50Wliu on April 6, 2016 23:16
This is because the application:about command is registered in Atom core and not About, presumably so that it can be included inside the default Help menu.
https://github.com/atom/atom/blob/5464883c1ecc581ebe698bc2722b0fe51a7ccda5/src/browser/atom-application.coffee#L206

From @50Wliu on May 18, 2018 13:13
@smutnyleszek Please feel free to help!


✨ feat(npc): add elven village npcs

This PR adds all the Elden Village NPCs without their HTML files or interactions.
Changes:
data/Npcs/1-7400.json
data/Npcs/Spawns/spawns.json
Testing:

There a a couple missing in stores, and one overlapping in the "church" first floor (don't know how else to describe this).
Whenever you get the chance, change .writeF(1.0)   // Movement Multiplier to .writeF(5.0)   // Movement Multiplier and you will be able to check around the area fast.

There a a couple missing in stores, and one overlapping in the "church" first floor (don't know how else to describe this). Whenever you get the chance, change .writeF(1.0) // Movement Multiplier to .writeF(5.0) // Movement Multiplier and you will be able to check around the area fast.

@dkoluris Let me check again and I'll fix them. I'm working on the NPC interactions, I'll make the fix there.

@lucasvallejo1992 I have added a method to show Npcs to the connected user based on his/her position. This means, that if at some point we have far too many mobs on the datapack, the client will only receive the closest ones based on a predefined radius.
(World.npc.spawns.filter(ob => utils.isWithinRadius(ob.fetchLocX(), ob.fetchLocY(), coords.locX, coords.locY, 2500)) ?? []).forEach((npc) => {             session.dataSend(ServerResponse.npcInfo(npc));         });
If the 2500 radius brings you trouble, let me know so i can refine.

@lucasvallejo1992 I have added a method to show Npcs to the connected user based on his/her position. This means, that if at some point we have far too many mobs on the datapack, the client will only receive the closest ones based on a predefined radius.
(World.npc.spawns.filter(ob => utils.isWithinRadius(ob.fetchLocX(), ob.fetchLocY(), coords.locX, coords.locY, 2500)) ?? []).forEach((npc) => { session.dataSend(ServerResponse.npcInfo(npc)); });
If the 2500 radius brings you trouble, let me know so i can refine.

@dkoluris cool! Lemme check that up! I saw you have also added the fileExist function too, that's great so I can now check the HTML that I have added. In the future, I'd think about how to organize those HTML in folders by category.


EE-1043: step function

This PR adds a single step function to combine multiple auction activities into a single call to the contract-runtime / execution engine / grpc / test_support; et al.
https://casperlabs.atlassian.net/browse/EE-1043

bors try

bors r+


Regression of remote build through phonegap-cli in 6.3.0

Using Node 4.2.4, upgrading to phonegap-cli 6.3.0 broke remote builds. Fixed by downgrading to 6.2.9.
This issue was also raised on the Phonegap Build forums: https://forums.adobe.com/thread/2185419
[phonegap] compressing the app...
[phonegap] uploading the app...
_http_client.js:51
    throw new TypeError('Request path contains unescaped characters.');
    ^

TypeError: Request path contains unescaped characters.
    at new ClientRequest (_http_client.js:51:11)
    at Object.exports.request (http.js:31:10)
    at TunnelingAgent.exports.request (https.js:163:15)
    at TunnelingAgent.createSocket (/Users/calvin/projects/edxpassapp/node_modules/phonegap-build-api/node_modules/request/tunnel.js:116:25)
    at TunnelingAgent.createSecureSocket [as createSocket] (/Users/calvin/projects/edxpassapp/node_modules/phonegap-build-api/node_modules/request/tunnel.js:188:41)
    at TunnelingAgent.addRequest (/Users/calvin/projects/edxpassapp/node_modules/phonegap-build-api/node_modules/request/tunnel.js:80:8)
    at new ClientRequest (_http_client.js:133:16)
    at Object.exports.request (http.js:31:10)
    at Object.exports.request (https.js:163:15)
    at Request.start (/Users/calvin/projects/edxpassapp/node_modules/phonegap-build-api/node_modules/request/main.js:516:30)

If you haven't already, can one of you please take a look at this?
@wildabeast @goya

@surajpindoria this may be an issue in https://github.com/phonegap/node-phonegap-build and not directly the PGB API.

Ok, I'll take a look into this further too

@surajpindoria ping me if you'd like to walk through how the PG CLI uses the node-phonegap-build module. It's pretty straight-forward though.


Make GCS-style checkpointing configurable instead deciding it on is_gcs_path function output

Hi, i'm using s3fs which has very similar restrictions as GCS (no atomic moves, for example).
To enable GCS-style checkpointing I'm patching orbax which seems very ugly
def patch_with_gcs_style_checkpointing_for_path_prefix(prefix):
    def is_gcs_path(path: str) -> bool:
        return os.fspath(path).startswith(prefix)

    ocp.utils.is_gcs_path = is_gcs_path

patch_with_gcs_style_checkpointing_for_path_prefix("/mnt/s3")

Instead, I would prefer to have a parameter in ocp.CheckpointManagerOptions that would enable this checkpointing style.
Its default value may be False and in ocp.CheckpointManager.__init__ there could be self._gcs_style_checkpointing = gcs_style_checkpointing or is_gcs_path(directory) which would be totally backward compatible.

Curious for more context on why you want this. The only thing this really controls is whether the COMMIT_SUCCESS.txt file is written or atomic rename is used to indicate atomic save success, so are you just wanting COMMIT_SUCCESS.txt file in non-GCS contexts?
I'll add that atomic rename on GCS is supposed to be supported as of recently, so I was actually planning to get rid of COMMIT_SUCCESS.txt behavior entirely and replace everything with atomic rename.
Having two different ways of indicating whether a checkpoint is complete just creates compatibility problems and adds more complexity for us and users.

so are you just wanting COMMIT_SUCCESS.txt file in non-GCS contexts

Yes, exactly. Writing straight to final directory and marking writing as "finished" with COMMIT_SUCCESS.txt file.

Having two different ways of indicating whether a checkpoint is complete just creates compatibility problems and adds more complexity for us and users.

I understand your concern regarding complexity, but there is a few popular storage backends (which orbax might want to support in the future, i hope so at least) that doesn't have atomic rename/atomic rename, like Amazon S3 or any S3-compatible storages. And GCS right now.
If you're really commited to end with only one of behaviors (tmp dir with atomic rename or COMMIT_SUCCESS.txt file), is there any problem to stick to only COMMIT_SUCCESS.txt behavior? This would automatically support both storage types but i might be missing some in-depth context on why that's is not universal.

Hi, apologies for the delayed response. I'm sympathetic to this request - I think we can allow this behavior to be configurable. However, it isn't so easy to provide, unfortunately, because it's not just the finalize behavior that would need changing, it's also the logic to create tmp directories, check for finalized vs. unfinalized directories, and one place in CompositeCheckpointHandler. (Some other places in CheckpointManager itself, but that's less of a concern.)
So I'm not that keen on plumbing this option to all of those places, especially since we could imagine another FR along the lines of "enable marking commit success by writing to an external database". Probably the way we would want to go is to provide some sort of Storage class with methods for ensure_atomic_save and is_finalized/is_tmp, which is more modular and overridable.
Concern with going with COMMIT_SUCCESS.txt globally is for legacy compatibility - it becomes difficult to distinguish a checkpoint written successfully before the change from a checkpoint written unsuccessfully after the change. Probably it's not impossible though, so we can consider that approach.
I don't think we'll have time to prioritize this right away, but it'll be on our TODO list.

Ok, thank you!


Return heatmap embed with longest, current streak count, average points a day in streak.py

Think I'm going to take this on. Will have a look at the code and see what I can do


Use Azure pipelines for tests

repo2docker tests take a long time! There's not a whole lot we can do about this other than try to increase parallelism and caching (these are usually mutually exclusive) and use more unittests instead of full builds. We're already well passed the limit of parallelism available on Travis.
One way to increase parallelism is to switch to a CI provider other than Travis that offers more at the free tier. It's been popular recently to use Microsoft's Azure Pipelines for CI for projects that have really high demand (conda-forge, jupyterlab) and I think they offer the most for free (presumably since they are a. Microsoft and b. late to the game). Another, perhaps more tedious option, would be to spread tests over a few CI services if one service doesn't offer the parallelism we need, but that might make the maintenance burden more than it's worth.
cc @SylvainCorlay who brought up r2d tests clogging the Jupyter account travis queue.

At EuroPython I chatted with @ogrisel about CI and he said he was happy camper with Azure Pipelines and found that (because they were late to the party) the queues are short and things run fast.
I think we should try out moving to a different provider and only if that doesn't work out consider splitting because of the additional maintenance you mentioned. Going to a different provider would also fix the pain we cause others (as long as they don't also switch ;) )

I recently helped Carol et al. to migrate to Azure pipelines for a couple of repos to in the nteract org.
Thus I'd bee happy to implement this in a fork of mine of repo2docker so that you can compare?

I'd bee happy to implement this in a fork of mine of repo2docker so that you can compare?

Could we add it to the main repo and then run things in parallel? That way we'd have the two right next to each other in each PR which makes it easy to build up a feeling for which one is faster, more stable, nicer output, $stuff. Do you need an admin to enable/disable things in the settings?

Yes- I was suggesting implementing on a fork of mine as I would need elevated privileges to enable the Azure DevOps Github app

@minrk @Carreau or @willingc could one of you add the https://github.com/marketplace/azure-pipelines app to this repository please? (I think that is the right app to add)

I can work on this send the PR and on merge, this can be added/approved by @willingc (that's what we did for scrapbook - of course if Carol is happy with this)

Will do in a bit..

Thanks to @willingc and friends we now have a basic pipeline on Azure 🎉!
Things to do to get it up to "full production readiness" aka "good enough to replace travis":

is there a way to run the unit and lint jobs first (they complete quickly so give feedback early on)
run the "venv" (and "unit") tests with Python 3.5
a copy of the deploy setup we have that creates a release on PyPI when we create a new tag

(if you remember more things please mention them)

A big thank you to @trallard for helping me set Azure Pipelines on another repo and for teaching me the general process 💐

I made the things I thought of a checklist so people can pick one (or many) and we can tick them off one by one.

It seems the Azure pipelines do not propagate the test failures:
https://dev.azure.com/jupyter/repo2docker/_build/results?buildId=25&view=logs&jobId=7ff9283a-ab30-5e9f-8967-b9fdc546360c
ends with
================== 6 failed, 168 passed in 758.08s (0:12:38) ===================
~/work/1/s
##[section]Finishing: Run tests unit

But the job is still "succeeded".

We've switched to GitHub actions/workflows: https://github.com/jupyterhub/repo2docker/pull/942


Update to 1.12.2

Update the Minecraft version, Forge version and mappings.

Fixed in https://github.com/blay09/GravelMiner/commit/ea68a1706b8745a5c32308ca745d0a638af75183


listview border/colors

Is there a way to configure the listview to have a border or different background color than the window I place it in?

To create a color scheme, you pass int values to Attribute class constructor. Is there is a list which indicates colors and int number to use. For example if I have new Attribute(5), which color will that result?


ffmpeg: enable libdrm

Motivation for this change
Enables more hardware acceleration paths, particular screen capturey scenarios that need access to to libdrm.
Discovered via: https://github.com/atomnuker/wlstream/issues/3, printf-debugging and guess work with the derivation.
I can't guarantee every version of ffmpeg was tested, but I looked up the version the flag was added and it fixed all the copies of ffmpeg that my systems build.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Fits CONTRIBUTING.md.

@GrahamcOfBorg build ffmpeg

Success on aarch64-linux (full log)
Attempted: ffmpeg
Partial log (click to expand)
gzipping man pages under /nix/store/mq52niz2g6898hypyx2j35aa680ljqhs-ffmpeg-3.4.4-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/mq52niz2g6898hypyx2j35aa680ljqhs-ffmpeg-3.4.4-man
checking for references to /build in /nix/store/mq52niz2g6898hypyx2j35aa680ljqhs-ffmpeg-3.4.4-man...
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
Moving /nix/store/2nrk0b4bckdqji058vq1m20s0awh54dx-ffmpeg-3.4.4/bin to /nix/store/ab63pql5d9fjv249mcdpk0g36rgxx8s4-ffmpeg-3.4.4-bin/bin
rmdir: failed to remove '/nix/store/2nrk0b4bckdqji058vq1m20s0awh54dx-ffmpeg-3.4.4': Directory not empty
Moving /nix/store/2nrk0b4bckdqji058vq1m20s0awh54dx-ffmpeg-3.4.4/share/ffmpeg/examples to /nix/store/mqdvs5chrsw8gh1iwv82q1ypfjmaij9v-ffmpeg-3.4.4-doc/share/ffmpeg/examples
rmdir: failed to remove '/nix/store/2nrk0b4bckdqji058vq1m20s0awh54dx-ffmpeg-3.4.4/share/ffmpeg': Directory not empty
/nix/store/ab63pql5d9fjv249mcdpk0g36rgxx8s4-ffmpeg-3.4.4-bin

Success on x86_64-linux (full log)
Attempted: ffmpeg
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/y41w4fqklrwjmk27bm2apbkcrvzhj8gn-ffmpeg-3.4.4-man
gzipping man pages under /nix/store/y41w4fqklrwjmk27bm2apbkcrvzhj8gn-ffmpeg-3.4.4-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/y41w4fqklrwjmk27bm2apbkcrvzhj8gn-ffmpeg-3.4.4-man
checking for references to /build in /nix/store/y41w4fqklrwjmk27bm2apbkcrvzhj8gn-ffmpeg-3.4.4-man...
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
Moving /nix/store/rz4y5wpkdk26a9ziivp3ki0q5j8g9513-ffmpeg-3.4.4/bin to /nix/store/sfnjr6h3vq15ldgc8d8ljfr8carvdgfk-ffmpeg-3.4.4-bin/bin
rmdir: failed to remove '/nix/store/rz4y5wpkdk26a9ziivp3ki0q5j8g9513-ffmpeg-3.4.4': Directory not empty
Moving /nix/store/rz4y5wpkdk26a9ziivp3ki0q5j8g9513-ffmpeg-3.4.4/share/ffmpeg/examples to /nix/store/28dxy0f9fjhcysjbf27niznh7kq1i6dh-ffmpeg-3.4.4-doc/share/ffmpeg/examples
rmdir: failed to remove '/nix/store/rz4y5wpkdk26a9ziivp3ki0q5j8g9513-ffmpeg-3.4.4/share/ffmpeg': Directory not empty

Success on x86_64-darwin (full log)
Attempted: ffmpeg
Partial log (click to expand)
find: '/nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc': No such file or directory
find: '/nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc': No such file or directory
find: '/nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc': No such file or directory
find: '/nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc': No such file or directory
find: '/nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc': No such file or directory
Moving /nix/store/1ic3j8dfyjz2r6l3r87l175dfyxqjc4s-ffmpeg-3.4.4/bin to /nix/store/3ih551cmhi8pbbfxydaxb91cn9jd9pm0-ffmpeg-3.4.4-bin/bin
rmdir: failed to remove '/nix/store/1ic3j8dfyjz2r6l3r87l175dfyxqjc4s-ffmpeg-3.4.4': Directory not empty
Moving /nix/store/1ic3j8dfyjz2r6l3r87l175dfyxqjc4s-ffmpeg-3.4.4/share/ffmpeg/examples to /nix/store/pfn0n6jjcf4f5wpa3rpvflsffdczpjb1-ffmpeg-3.4.4-doc/share/ffmpeg/examples
rmdir: failed to remove '/nix/store/1ic3j8dfyjz2r6l3r87l175dfyxqjc4s-ffmpeg-3.4.4/share/ffmpeg': Directory not empty
/nix/store/3ih551cmhi8pbbfxydaxb91cn9jd9pm0-ffmpeg-3.4.4-bin


Split API and implementation from browser API

Follow the article https://pragdave.me/blog/2017/07/13/decoupling-interface-and-implementation-in-elixir.html

Closed by https://github.com/gushonorato/mechanizex/commit/6f3fb6130794c3f0ce87547aa02942738ece764f

Closed by https://github.com/gushonorato/mechanizex/commit/493f4367ac4205a45f1b9e74450303cc2f32809c


Packaging Other Data With Package

I am trying to create a python interface to a rust package that contains additional data. I store this data in a resources folder, so my project file structure looks like this:
src
rust files
target
resources
other files
I have written tests in rust to test the library, and they all pass, so the rust code can reach the files. The issue arises when I attempt to use the library from python, at which point loading the files fail, because they now don't exist. Is there a way of packaging data into the python module, or allowing it to be accessed from the python module?
I was expecting the other files to be accessible from rust called by python, the same way they are available to rust called by rust.
I am using PyO3 0.13.2

Which distribution method were you using? setuptools-rust or maturin?

I am using the default distribution method, I believe it is maturin.


Small improvements in Listener constructor

I'll need to check this, but I suspect that 'cppcheck' will be unhappy with this change.  It will want to see the constructors call all of the member variable constructors.

@dennisjenkins75 Looks like cppcheck is wrong in this case. it's considered as a good practice to initialize a non-static data member with a default value where they are declared to remove code duplication in constructors (https://www.stroustrup.com/C++11FAQ.html#member-init). For integral types I have set default values, for other types default constructors will be called.

@dennisjenkins75 I have written a sample:
#include <iostream>

struct A
{
    A() = default;

    void dump()
    {
        std::cout << "[A]\n";
    }
};

struct B
{
    B() = default;

    void dump()
    {
        std::cout << "[B]\n";
    }
};

struct C
{
    C() = default;

    void dump()
    {
        a.dump();
        b.dump();
        std::cout << "[C]\n";
    }

private:
    A a;
    B b;
};

int main()
{
    C c;
    c.dump();
}

and checked it by the last version of cppcheck:
$ ./cppcheck --enable=all --inconclusive /home/igor/playground/ex1
Checking /home/igor/playground/ex1/ex1.cpp ...
/home/ws11/Devel/playground/z1/ex1.cpp:7:10: performance:inconclusive: Technically the member function 'A::dump' can be static (but you may consider moving to unnamed namespace). [functionStatic]
    void dump()
         ^
/home/igor/playground/ex1/ex1.cpp:17:10: performance:inconclusive: Technically the member function 'B::dump' can be static (but you may consider moving to unnamed namespace). [functionStatic]
    void dump()
         ^

Everything is ok with constructors.


[desktop] performing a hot reload should focus on the app

Observed result

Launch a macos flutter app from the terminal
Change the code
go to the terminal and perform a hot reload
Notice now that you have to find the app and bring it to focus to see the results with something like alt+tab.

Expected result
I'd expect that performing a hot reload would bring the app into focus when performing a hot reload.
Proposal
Focusing on the app should be the default behavior for the flutter tool when developing desktop apps.  We can add a flag --no-auto-focus to override that behavior in case someone ever doesn't like it.

I am not a professional Flutter app developer, but I imagine this is something I would not want unless I only ever work off of a single monitor/display.
If I am rapidly experimenting with UI changes, then I 1) probably have moved the app window to a second display anyway and 2) want my IDE to remain focused so that I can make changes and hot reload again as quickly as possible. If the tool were to bring the app window into focus, then I would have to alt-tab back to my IDE to resume experimenting with code changes. The "I have to alt-tab to continue" problem isn't solved—it just gets moved to a different part of the workflow.
I would be interested to hear from folks about what their workflow is like when using hot reload on desktop.

I want my IDE to remain focused

In the scenario I laid out above, hot reload is being invoked from the terminal, not an IDE.  In that case there is nothing more meaningful that can happen from the terminal.
You make a good point about an IDE though.

I'd expect that performing a hot reload would bring the app into focus when performing a hot reload.

Is there a reason you expect this for desktop targets but not for a mobile app running in a simulator/emulator?

Is there a reason you expect this for desktop targets but not for a mobile app running in a simulator/emulator?

This could be a problem for the simulator/emulator too.  It didn't occur to me since it wasn't what I was currently running into.

I don't think we want per-platform behaviour for this; we probably want to decide on a policy and use that across all platforms -- or, if justified, one for desktop platforms and another for simulator/emulators? I'm going to re-triage as a tool issue for further discussion.
fwiw, if I'm working in a terminal window, I generally wouldn't expect it to refocus other windows. The only cases I can think of are running dbus commands specifically to focus windows in e.g. a tiling window manager etc. on Linux.

Looks like Apple waffled on this themselves with the open command.  There is now a vestigial --background flag.
I think this is another example of something that would be nice to have flutter tool plugins for since there are people that want this but it would be better as a module instead of bloating the tool with a feature where less than half of the people will use it.


using bundled js

When I try to run lite-server with dist/bundle.js I get this error.
zone.js:101 GET http://localhost:3000/app/customer/customer.module 404 (Not Found)
My index.html looks like this:
`
...

<script src="node_modules/zone.js/dist/zone.js"></script>
<script src="node_modules/reflect-metadata/Reflect.js"></script>
<script src="node_modules/systemjs/dist/system.src.js"></script>

 ....
index.html.zip
<!-- add for bundle usage -->
<script src="dist/bundle.js"></script>
<!-- add for bundle usage -->

`
How do I proceed?

I found that I needed to add a defaultExtention to my systemjs config in order to load .js versions of the paths. But I am not sure how to do this. I tried
   <script>         System.config({             "defaultJSExtensions": true,             "paths": "/app/*"         });     </script>

Ok, I may have found the issue by some brute forcing :(
The npm run bundle command seems to omit the customer/* components when it bundles. Is that possible? How does this inference actually work?

I don't think I'm going to put any additional work into the bundling at this point given the release of AOT. Want to eventually move to that with tree shaking: https://angular.io/docs/ts/latest/cookbook/aot-compiler.html


Suppresses static JavaScript completions

With the TypeScript extension active, Nova stops offering completion suggestions in JavaScript files. Note by this I mean the static completions that come with Nova out of the box, not clips (I am aware of #86, but that was strictly clips and has been closed, which suggests this is a different bug).
To reproduce
Steps to reproduce the behavior:

Deactivate all extensions.
Open a new JS document.
Type “A”.
Nova suggests “Array” (et al.) as completion.
Activate the TypeScript extension.
Type “r” after the ”A” from step 4.

Expected behavior
Nova suggests “Array” (et al.) as completion.
Actual behavior
Nova does not suggest completions.
Environment

Nova version: 7.4 (310378)
Extension version: 2.4.0
TypeScript version: not in project
Sidebar information: Status Running, TypeScript Version 4.3.5
macOS version: 11.5.2
NodeJS information:

node version: v16.8.0
npm version: 7.21.0
installation method: homebrew

Extension console output
“TypeScript” console shows “activated”. The “TypeScript Language Server” console complains about /user/local/Cellar/node/16.8.0/bin/npm not being found (homebrew’s npm is a symlink to /usr/local/lib/node_modules/npm/bin/npm-cli.js).

Same with for in both .ts and .js
nova-typescript disabled ↓

nova-typescript enabled ↓

What is the status? Can this be fixed?

It seems to work for me, when I manually restart the tsserver (kill it by the terminal and restart it with the extension). Maybe that's related and can help you fix this ?

That is great.  Seems like they can't coexist with the TypeScript extension completion.

⚠ Archived: Although it was fun to build my nova extensions, I haven't ended up using Nova regularly and can't devote the time to maintenance. Feel free to reach out if you want to fork and start maintaining an alternative.


ModuleNotFoundError: No module named 'agots.generators'

i have used "pip install -r requirements.txt" but it still have some problems. why?

I can't tell you how we set this up back then but maybe you get it working by installing agots separately - see this line in the requirements: https://github.com/KDD-OpenSource/DeepADoTS/blob/master/requirements.txt#L2
We were using pip eggs, so maybe you need to find out on your own how to create and use those eggs. Probably, you create them by checking out agots and building it via the setup.py.

I can't tell you how we set this up back then but maybe you get it working by installing agots separately - see this line in the requirements: https://github.com/KDD-OpenSource/DeepADoTS/blob/master/requirements.txt#L2 We were using pip eggs, so maybe you need to find out on your own how to create and use those eggs. Probably, you create them by checking out agots and building it via the setup.py.

Thanks, i haved solved this question.


Line - visual mismatch in the size of the thickness in pixels

I am using "mIRC v7.66" + "DCX dll v3.1-git394" in system "Windows 8.1 x64".
For a convenient demonstration, I created 10 lines that intersect each other horizontally and vertically and look like 5 crosses. At each subsequent intersection in the form of a cross, the size of the thickness of the lines increases by 1 pixel, and an obvious discrepancy in the thickness between the horizontal and vertical lines becomes visible. In addition, can see that the very first horizontal line with the specified size of 1 pixel in height (thickness) is not displayed at all. And only when the thickness of both lines reaches 4 pixels, then the fourth cross looks evenly created from lines of the same thickness, while the 5th cross is no different from the 4th, because further increase in the size of the lines by 1 pixel - does not bring any result.
I don't know if it was intended that way or if it was a simple calculation error or maybe it's a systemic problem, but I noticed it and decided to report it here. It would be nice to be able to create the same lines of any size without restrictions.
📷 Screenshot
Here is a test piece of script to reproduce this the problem. To run the script click on "F5" or enter the command "/line_test":
alias F5 { line_test }
alias line_test {
  if ($dialog(line_test)) .dialog -x line_test
  else { .dialog -m line_test line_test }
}
dialog line_test {
  title "Line test"
  icon $mircexe,0
  option pixels
  size -1 -1 370 90
}
on *:DIALOG:line_test:init:*:{
  .dcx Mark $dname line_test_work
  .xdialog -b $dname +ty
  .xdialog -g $dname +b $rgb(20,20,27)
  .xdialog -c $dname 1 line 20 44 50 1
  .xdialog -c $dname 2 line 43 20 1 50 vertical
  .xdialog -c $dname 3 line 90 44 50 2
  .xdialog -c $dname 4 line 113 20 2 50 vertical
  .xdialog -c $dname 5 line 160 44 50 3
  .xdialog -c $dname 6 line 183 20 3 50 vertical
  .xdialog -c $dname 7 line 230 44 50 4
  .xdialog -c $dname 8 line 252 20 4 50 vertical
  .xdialog -c $dname 9 line 300 44 50 5
  .xdialog -c $dname 10 line 322 20 5 50 vertical
}
alias line_test_work {}

A rounding issue was causing 1px horiz lines to have the size set to zero, fixed.


Naming: Packages

Since we are using the tarball as some kind of generic bundle that can then be transformed into a deb, rpm, or exe, I think it would be better to update the naming a bit:

bundle creates the tarball
package --format=rpm would create a RPM file
package --format=deb would create a DEB file
package --format=msi would create an MSI installer

Right now, we have a lot of subcommands that do pretty much the same thing except when it comes to the output format.
WDYT?

Right now the --destination argument is a directory, and the file name is decided by the subcommand but generally uses the same file name as the input tar.gz, but with a different extension.

Ah, good point


oracledb's Oracle_Transaction.acquireConnection ignores external connection passed in config

Hey there! I'm writing an API using knex that queries an OracleDB instance in a way that requires me to manually interact with a node-oracledb connection object before kicking off a transaction. I was happy to discover that I could manually pass in a connection object that I had modified using const trx = knex.transaction(undefined, { connection }), which solves my problem perfectly.
However, I found that the connection object I was passing in did not seem to be the one making the db calls. For example, node-oracledb exposes a magic setter on connection objects called connection.clientId that sets SYS_CONTEXT('userenv', 'client_identifier') in the db. So I tried this test code:
const knex = require('knex')({
  client: 'oracledb',
  connection: { /* ... connection info ... */ }
})

(async () => {
  const connection = await knex.client.acquireConnection()
  connection.clientId = 'testuser'
  console.log(await knex.transaction(async trx => {
    return trx.raw(`SELECT SYS_CONTEXT('userenv', 'client_identifier') FROM DUAL`)
  }, { connection })
})()

My expected output, what I get when I use the node-oracledb library directly, is:
[ { "SYS_CONTEXT('userenv', 'client_identifier')": "testuser" } ]

My actual output was:
[ { "SYS_CONTEXT('userenv', 'client_identifier')": null } ]

which indicates that the connection object used to make the query has no clientId set.
I did some digging through Knex and found the problem. There's a small bug in lib/dialects/oracledb/transaction.js in the acquireConnection() function:
 async acquireConnection(config, cb) {
    const configConnection = config && config.connection;

    const connection = await this.client.acquireConnection();
    try {
      connection.__knexTxId = this.txid;
      connection.isTransaction = true;
      return await cb(connection);
    } finally {
      debugTx('%s: releasing connection', this.txid);
      connection.isTransaction = false;
      try {
        await connection.commitAsync();
      } catch (err) {
        this._rejecter(err);
      } finally {
        if (!configConnection) {
          await this.client.releaseConnection(connection);
        } else {
          debugTx('%s: not releasing external connection', this.txid);
        }
      }
    }
  }

Note the first few lines:
const configConnection = config && config.connection;
const connection = await this.client.acquireConnection();

The configConnection var is set to the external connection passed in, if there is one, but that connection is then not used and a new connection is acquired.
This is the source of my problem, since my connection is indeed not being used. However, there's actually a deeper problem. The call to this.client.acquireConnection() pulls a connection out of knex's internally maintained connection pool, but later we get these lines:
finally {
  if (!configConnection) {
    await this.client.releaseConnection(connection);
  } else {
    debugTx('%s: not releasing external connection', this.txid);
  }
}

This code assumes that if a config.connection was provided, it was used, so we should not release it back to the pool. But in fact it is not being used. So the side effect here is that when config.connection is passed in, not only is that connection not used, but a connection is pulled from the pool and never released back.
The fix is fairly straightforward; we just need to update these lines to match the equivalent lines from the base knex Transaction class:
async acquireConnection(config, cb) {
    const configConnection = config && config.connection;
    const connection =
      configConnection || (await this.client.acquireConnection());

I actually did this locally within my node_modules/knex directory and my demo began working correctly, so I'm confident in the fix. I would be happy to put in a PR, but it may take me a few days before I'll have time to put together a local oracle testing environment and write tests for it.

Howdy!  Coincidentally, I'm actually in the middle of redesigning / refactoring a lot of this logic right now.  I'll actually have a PR for you to experiment with in a few minutes.  It might end up fixing your issue.

@kenbellows : Here's a PR for you to take a look at:
https://github.com/knex/knex/pull/3722
And, the associated branch:
https://github.com/briandamaged/knex/tree/feature/connection-leasing
Can you give this a try when you have a moment, plz?  Thx!

@kenbellows : I forgot to mention an important detail: this PR actually changes the Transaction API.  So, you will need to do the following instead:
const {ReuseConnection} = require('knex/lib/util/connection-leasing');

const knex = require('knex')({
  client: 'oracledb',
  connection: { /* ... connection info ... */ }
})

(async () => {
  const connection = await knex.client.acquireConnection()
  try {
    // Note: this will be passed into the call to knex.transaction(..) below
    const trxConfig = { withConnection: ReuseConnection(connection) };

    connection.clientId = 'testuser'
    console.log(await knex.transaction(async trx => {
      return trx.raw(`SELECT SYS_CONTEXT('userenv', 'client_identifier') FROM DUAL`)
    }, trxConfig)

  } finally {
    await knex.client.releaseConnection(connection);
  }

})()

Makes sense to me! I'm having some environment issues and I don't think I'll be able to test it myself in the short term, but I've read the changes and it looks like it should solve the issue nicely!
Any idea when the next release will be?

I see you all are preparing for the 1.0.0 release! Congrats, that's a big milestone! Is there any ETA yet for when that release will likely happen? Since it's a release that introduces breaking changes, such as the API changes you're suggesting here, would it make sense to also make a change in the 0.x code to fix this bug for those who cannot immediately upgrade?

Howdy again!  I'm not sure about the official release timeline (I'm rather new to the team).  As for the refactoring that I've been working on: at the moment, I think we're still trying to decide which approach we want to take.  Ex: the current code fixes certain things, but also breaks backwards-compatibility in various ways.  So, we're still drafting a few proposals.
As for fixing that specific bug: that might be worthwhile.  Do you already have a PR for the change?  If not, then I can probably create one in a little bit.

The code change is trivial, it's like 3 lines, but I'm not confident about writing the tests and such; I started setting up a local environment last night but ran into some issues on my machine, and I don't know that I have time to dig in and figure out what's wrong. So if I can submit a PR with just the code changes, I'll have that done today, but if I need to write tests and everything to get the PR submitted, then I'd happily accept the help :)

@kenbellows : Sry -- I had to take care of a few other things, so it took me a bit to get back to this.  In either case, I've created a PR here:
#3731

I'm thinking about cutting new 0.20 release tomorrow. @briandamaged @maximelkin @lorefnon Anything you would like merged prior to that?

@kibertoad : Nothing needs merging on my side.  I'm still just hammering out details for some experimental refactorings.  Thx for checking!

With #3731 merged in, this issue is resolved! Thanks @briandamaged for jumping on it so quickly! Any more movement on that 0.20 release?

@kenbellows I'll release a version shortly, sorry for delay.

@kenbellows ReleaseD in 0.20.12


Ignore a specific application.

Feature details
Hi there,
ignore-in-alfred-workflow is such a wonderful and pretty useful one which helped me a lot. I just wonder if there a method to ignore a specific application. Such as ChatGPT.app, Google Chrome.app to be ignored.

Thank you for the kind words.
Alfred keeps a separate cache for applications, for speed. After ignoring (or unignoring) an app with the workflow, you have to Alfred Preferences → Advanced → Clear Application Cache.
Note ignoring will not work on apps (or other files) which require elevated permissions, such as Mac App Store apps.


Flutter desktop moving next input from other one with tab keyboard

I'm using RawKeyboardListener for key actions. Other keys working fine but with tab, i cannot  move next input field.
the error i get:
`═╡ EXCEPTION CAUGHT BY SERVICES LIBRARY ╞══════════════════════════════════════════════════════════
The following assertion was thrown while processing the key message handler:
Tried to get the bounds of a focus node that didn't have its context set yet.
The context needs to be set before trying to evaluate traversal policies. Setting the context is
typically done with the attach method.
'package:flutter/src/widgets/focus_manager.dart':
Failed assertion: line 789 pos 7: 'context != null'
Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
When the exception was thrown, this was the stack:
#2      FocusNode.rect (package:flutter/src/widgets/focus_manager.dart:789:7)
#3      new _ReadingOrderSortData (package:flutter/src/widgets/focus_traversal.dart:856:21)
#4      ReadingOrderTraversalPolicy.sortDescendants (package:flutter/src/widgets/focus_traversal.dart:1099:49)
#5      FocusTraversalPolicy._sortAllDescendants (package:flutter/src/widgets/focus_traversal.dart:317:65)
#6      FocusTraversalPolicy._moveFocus (package:flutter/src/widgets/focus_traversal.dart:390:41)
#7      FocusTraversalPolicy.next (package:flutter/src/widgets/focus_traversal.dart:222:39)
#8      FocusNode.nextFocus (package:flutter/src/widgets/focus_manager.dart:1135:56)
#9      NextFocusAction.invoke (package:flutter/src/widgets/focus_traversal.dart:1673:19)
#10     ActionDispatcher.invokeAction (package:flutter/src/widgets/actions.dart:573:21)
#11     ShortcutManager.handleKeypress (package:flutter/src/widgets/shortcuts.dart:755:38)
#12     _ShortcutsState._handleOnKey (package:flutter/src/widgets/shortcuts.dart:956:20)
#13     FocusManager._handleKeyMessage (package:flutter/src/widgets/focus_manager.dart:1687:32)
#14     KeyEventManager._dispatchKeyMessage (package:flutter/src/services/hardware_keyboard.dart:828:34)
#15     KeyEventManager.handleRawKeyMessage (package:flutter/src/services/hardware_keyboard.dart:875:15)
#16     BasicMessageChannel.setMessageHandler. (package:flutter/src/services/platform_channel.dart:77:49)
#17     BasicMessageChannel.setMessageHandler. (package:flutter/src/services/platform_channel.dart:76:47)
#18     _DefaultBinaryMessenger.setMessageHandler. (package:flutter/src/services/binding.dart:380:35)
#19     _DefaultBinaryMessenger.setMessageHandler. (package:flutter/src/services/binding.dart:377:46)
#20     _invoke2. (dart:ui/hooks.dart:190:15)
#24     _invoke2 (dart:ui/hooks.dart:189:10)
#25     _ChannelCallbackRecord.invoke (dart:ui/channel_buffers.dart:42:5)
#26     _Channel.push (dart:ui/channel_buffers.dart:132:31)
#27     ChannelBuffers.push (dart:ui/channel_buffers.dart:329:17)
#28     PlatformDispatcher._dispatchPlatformMessage (dart:ui/platform_dispatcher.dart:589:22)
#29     _dispatchPlatformMessage (dart:ui/hooks.dart:89:31)
(elided 5 frames from class _AssertionError and dart:async)
KeyMessage: KeyMessage([KeyDownEvent#548a8(physicalKey: PhysicalKeyboardKey#7002b(usbHidUsage:
"0x0007002b", debugName: "Tab"), logicalKey: LogicalKeyboardKey#00009(keyId: "0x100000009",
keyLabel: "Tab", debugName: "Tab"), character: null, timeStamp: 23:32:38.040751)])
════`

Hi @Lazizbek97
I can not reproduce the issue on the latest stable and master channels with below simple code.
I can use Tab key to move between TextFields without exception.

Demo
https://user-images.githubusercontent.com/104349824/177129999-5dae21e7-56eb-4031-a773-06f936a3d653.mov

Sample code
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
        // This makes the visual density adapt to the platform that you run
        // the app on. For desktop platforms, the controls will be smaller and
        // closer together (more dense) than on mobile platforms.
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  // This widget is the home page of your application. It is stateful, meaning
  // that it has a State object (defined below) that contains fields that affect
  // how it looks.

  // This class is the configuration for the state. It holds the values (in this
  // case the title) provided by the parent (in this case the App widget) and
  // used by the build method of the State. Fields in a Widget subclass are
  // always marked "final".

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    setState(() {
      // This call to setState tells the Flutter framework that something has
      // changed in this State, which causes it to rerun the build method below
      // so that the display can reflect the updated values. If we changed
      // _counter without calling setState(), then the build method would not be
      // called again, and so nothing would appear to happen.
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    // This method is rerun every time setState is called, for instance as done
    // by the _incrementCounter method above.
    //
    // The Flutter framework has been optimized to make rerunning build methods
    // fast, so that you can just rebuild anything that needs updating rather
    // than having to individually change instances of widgets.
    return Scaffold(
      appBar: AppBar(
        // Here we take the value from the MyHomePage object that was created by
        // the App.build method, and use it to set our appbar title.
        title: Text(widget.title),
      ),
      body: Center(
        // Center is a layout widget. It takes a single child and positions it
        // in the middle of the parent.
        child: Container(
          decoration: BoxDecoration(border: Border.all()),
          child: Column(
            // Column is also a layout widget. It takes a list of children and
            // arranges them vertically. By default, it sizes itself to fit its
            // children horizontally, and tries to be as tall as its parent.
            //
            // Invoke "debug painting" (press "p" in the console, choose the
            // "Toggle Debug Paint" action from the Flutter Inspector in Android
            // Studio, or the "Toggle Debug Paint" command in Visual Studio Code)
            // to see the wireframe for each widget.
            //
            // Column has various properties to control how it sizes itself and
            // how it positions its children. Here we use mainAxisAlignment to
            // center the children vertically; the main axis here is the vertical
            // axis because Columns are vertical (the cross axis would be
            // horizontal).
            mainAxisAlignment: MainAxisAlignment.center,
            mainAxisSize: MainAxisSize.min,
            children: <Widget>[
              _buildTextComposer(),
              _buildTextComposer(),
              _buildTextComposer(),
            ],
          ),
        ),
      ),
    );
  }

  _buildTextComposer() {
    return RawKeyboardListener(
      focusNode: FocusNode(),
      child: const Center(
        child: TextField(
          decoration: InputDecoration(hintText: "Enter something"),
        ),
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel stable, 3.0.4, on macOS 12.2.1 21D62 darwin-x64, locale en-VN)
    • Flutter version 3.0.4 at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 85684f9300 (3 days ago), 2022-06-30 13:22:47 -0700
    • Engine revision 6ba2af10bb
    • Dart version 2.17.5
    • DevTools version 2.12.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio
    • Android Studio at /Applications/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2020.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.68.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.42.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 12.2.1 21D62 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 103.0.5060.53

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 3.1.0-0.0.pre.1491, on macOS 12.2.1 21D62 darwin-x64, locale en-VN)
    • Flutter version 3.1.0-0.0.pre.1491 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c6ccf0df05 (2 hours ago), 2022-07-03 20:59:05 -0400
    • Engine revision d441d7964b
    • Dart version 2.18.0 (build 2.18.0-250.0.dev)
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-33, build-tools 31.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 13E113
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio
    • Android Studio at /Applications/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2020.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] IntelliJ IDEA Community Edition (version 2022.1.1)
    • IntelliJ at /Users/huynq/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/221.5591.52/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.68.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.42.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 12.2.1 21D62 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 103.0.5060.53

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Please provide a completed and minimal reproducible code sample so that we may verify this. Also, please provide the output of flutter doctor -v as well.
Thank you!

Hi @Lazizbek97 I can not reproduce the issue on the latest stable and master channels with below simple code. I can use Tab key to move between TextFields without exception.
Demo
Sample code
flutter doctor -v
Please provide a completed and minimal reproducible code sample so that we may verify this. Also, please provide the output of flutter doctor -v as well. Thank you!

Thank you for your response! I've used the above code, but I have to click the tab twice to get the next input field. What I want is moving next input field with one tab

PS C:\Users\Lazizbek> flutter doctor -v
[√] Flutter (Channel stable, 3.0.4, on Microsoft Windows [Version 10.0.19044.1766], locale en-US)
• Flutter version 3.0.4 at C:\Users\Lazizbek\Documents\flutter-3.10
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 85684f9300 (4 days ago), 2022-06-30 13:22:47 -0700
• Engine revision 6ba2af10bb
• Dart version 2.17.5
• DevTools version 2.12.2
[√] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
• Android SDK at C:\Users\Lazizbek\AppData\Local\Android\sdk
• Platform android-32, build-tools 32.1.0-rc1
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.2.2)
• Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
• Visual Studio Community 2022 version 17.2.32519.379
• Windows 10 SDK version 10.0.19041.0
[√] Android Studio (version 2021.2)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
[√] VS Code (version 1.68.1)
• VS Code at C:\Users\Lazizbek\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.44.0
[√] Connected device (3 available)
• Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.19044.1766]
• Chrome (web)      • chrome  • web-javascript • Google Chrome 103.0.5060.66
• Edge (web)        • edge    • web-javascript • Microsoft Edge 103.0.1264.44
[√] HTTP Host Availability
• All required HTTP hosts are available
• No issues found!

I have solved the problem thank you!


Repeator Header Row Is Disappearing

For example, when you select an Account Schedule from Account Schedules list and then go to Process –> Overview, if you scroll down or (use Ctrl+End) the Header row disappears and the only way to bring it back is to close the page and reopen.
Is there any workaround for this?

This is a known issue that will be addressed by an upcoming feature. Since it's not related to AL or developer tools we will not track it in this repo but it should be fixed by the Spring release.


Revert "fix(AccordionButton): bump specificity of accordion button styles"

Reverts Codecademy/client-modules#1383

📬Published Alpha Packages:@codecademy/gamut-illustrations@0.4.33-alpha.4ad61b.0@codecademy/gamut-labs@9.2.12-alpha.4ad61b.0@codecademy/gamut@21.3.6-alpha.4ad61b.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60244ab399a1353f561af597--gamut-preview.netlify.appDeploy Logs


Upstream Support for Aggregation Pushdown in DataFusion

Is your feature request related to a problem or challenge?
DataWebEngine could achieve much greater performance on aggregations/joins by pushing these down to each execution engine in the web. DataFusion does not yet support this type of expression pushdown.
Describe the solution you'd like
Implement aggregation pushdown in DataFusion. See: https://github.com/apache/arrow-datafusion/issues/8699
Describe alternatives you've considered
No response
Additional context
No response

This work is now proceeding in https://github.com/datafusion-contrib/datafusion-federation


Add correlationId to AuthenticationResult

Adds correlationId to the AuthenticationResult response type returned by all acquireTokenXXX APIs

Codecov Report

Merging #3947 (cd7f1da) into dev (314d4c0) will not change coverage.
The diff coverage is n/a.

Flag
Coverage Δ

*Carryforward flag

msal-angular
95.85% <ø> (ø)

Carriedforward from 314d4c0

msal-browser
87.94% <ø> (ø)

Carriedforward from 314d4c0

msal-common
84.99% <ø> (ø)

Carriedforward from 314d4c0

msal-core
76.66% <ø> (ø)

Carriedforward from 314d4c0

msal-node
83.35% <ø> (ø)

msal-react
94.11% <ø> (ø)

Carriedforward from 314d4c0

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files
Coverage Δ

lib/msal-common/src/response/ResponseHandler.ts
69.92% <ø> (ø)


internal compiler error: panic: cmd/compile/internal/types2/check.go:595: assertion failed

Go version
go dev branch (for playground)
Output of go env in your module/workspace:
go playground (sorry, not sure how to get the env from there)

What did you do?
This program crashes the compiler at the current dev branch in the playground: https://go.dev/play/p/3JI9h22Igk8?v=gotip
(sidenote: I was only trying to get this part of the spec to compile :])
What did you see happen?
Compiler crash
What did you expect to see?
Compiler success or standard error message

I'd also request to clarify whether this is indeed an intended syntax [or some sort of typo]

@griesemer
import "fmt"

func recv[T ~bool](ch <-chan T) {
	var x, ok T = <-ch
	fmt.Println(x, ok)
}

func main() {
	ch := make(chan bool, 1)
	ch <- true
	recv(ch)
}

# command-line-arguments
<unknown line number>: internal compiler error: panic: ../../../sandbox/tmp/src/cmd/compile/internal/types2/check.go:596: assertion failed

goroutine 1 [running]:
runtime/debug.Stack()
	../../../sandbox/tmp/src/runtime/debug/stack.go:26 +0x64
cmd/compile/internal/base.FatalfAt({0x300e8?, 0x140?}, {0x10182d7e2, 0x9}, {0x14000030118, 0x1, 0x1})
	../../../sandbox/tmp/src/cmd/compile/internal/base/print.go:225 +0x1fc
cmd/compile/internal/base.Fatalf(...)
	../../../sandbox/tmp/src/cmd/compile/internal/base/print.go:194
cmd/compile/internal/gc.handlePanic()
	../../../sandbox/tmp/src/cmd/compile/internal/gc/main.go:52 +0x90
panic({0x1019d2fa0?, 0x1400002cfa0?})
	../../../sandbox/tmp/src/runtime/panic.go:759 +0x124
cmd/compile/internal/types2.(*Checker).handleBailout(0x1400043c000, 0x14000031020)
	../../../sandbox/tmp/src/cmd/compile/internal/types2/check.go:364 +0x9c
panic({0x1019d2fa0?, 0x1400002cfa0?})
	../../../sandbox/tmp/src/runtime/panic.go:759 +0x124
cmd/compile/internal/types2.assert(0x10?)
	../../../sandbox/tmp/src/cmd/compile/internal/types2/errors.go:25 +0x60
cmd/compile/internal/types2.(*Checker).recordCommaOkTypes(0x1400043c000, {0x101a7d3c0, 0x14000438060}, {0x1400002cf70, 0x2, 0x0?})
	../../../sandbox/tmp/src/cmd/compile/internal/types2/check.go:596 +0x15c
cmd/compile/internal/types2.(*Checker).initVars(0x1400043c000, {0x1400002cf60, 0x2, 0x2}, {0x140000305f0, 0x1, 0x1}, {0x0, 0x0})
	../../../sandbox/tmp/src/cmd/compile/internal/types2/assignments.go:431 +0x430
cmd/compile/internal/types2.(*Checker).varDecl(0x1400043c000, 0x1400043f9d0, {0x1400002cf60, 0x2, 0x2}, {0x101a7d258, 0x14000432a50}, {0x101a7d3c0, 0x14000438060})
	../../../sandbox/tmp/src/cmd/compile/internal/types2/decl.go:466 +0x1f4

It is probably confused by the fact that the ok part of the assignment is ~bool.
I believe the syntax your are using is correct, although weird. Probably better (and solves the crash) to do x, ok := <-ch.
Converting the ok to the type parameter can always be done later.

Similar:
package main

import "fmt"

func foo[T ~bool](m map[int]T) {
	var x, ok T = m[0]
	fmt.Println(x, ok)
}

func main() {
	m := map[int]bool{}
	foo(m)
}

Thanks for taking a look, @randall77 . To be clear I don't actually need a workaround here - I filed an issue because the crash message told me to do so :)
(I'm not really writing this code, I was just trying to get this code example from the spec to compile and found this unrelated problem.)

Minimal reproducer:
func _[T bool](ch chan T) {
	var _, _ T = <-ch
}


Comparing with https://github.com/DataBiosphere/tanagra/pull/940/files, changes needed in (?)

ui/src/criteria/attribute.tsx
ui/src/plugins/vumc/biovu.tsx

I left that as the default now it's not being used for anything else.


Clarification of exercise 2.10

I created the matrix and the vector, but the solution says my resultant vector is not populated correctly. Not sure how to correct that. Did the solution want the array as a column shape?

Hi @acse-92d36642, multuply function must be implemented using for loops, instead of simply calling np.matmul. I hope this answers your questions, please do not hesitate to reopen this issue or comment if you need further assisstance.


Blake Lobato -- Assignment 1: A First Look At Data

This is an updated version of my First Assignment. I submitted a copy last night, but added some more today messing around with pandas!

Uploaded Assignment 2 from Module 2 Loading Data Assignment labeled 'f86f513' in the pull request.


Add the README file for strophe.muc.js

Please add the readme file for strophe.muc.js plugin of what exactly it does and also add how can we use this plugin with some example. Helpful if added ASAP

You could check my implementation for some inspiration. Otherwise review the code and write a readme by yourself and create a pull request.


Support dynamic SID allocation

This is how the library would change to support dynamic allocation.

Dynamic allocation is gone again; overcome by events


(GH-1759) Handle non-UTF-8 task output

Previously, we treated non-UTF-8 task output as simply non-JSON output,
putting it in a hash under the _output key. This violated a key
constraint of the task specification (task output must always be UTF-8)
and caused problems when we tried to print the result as JSON (either as
output or for logging).
We now explicitly check for non-UTF-8 characters when interpreting the
result and we throw away stdout entirely and replace it with an error if
it is invalid.
!bug

Task output that contains invalid UTF-8 is now rejected
(#1759)
Tasks are defined as returning UTF-8, but Bolt didn't handle the
non-UTF-8 case explicitly, leading to messy error messages and stack
traces. The error should now be clear and meaningful.

I also took the liberty of rewording a couple of error messages for the case where a task exits non-zero with no stdout.

CLA signed by all contributors.


Python 3.11 Support

What is the goal that you want to achieve by the request?
The Python3.11 ecosystem is pretty mature right now, unfortunately, harvesters or to be more specific the genicam package does not allow us to use it in our components, which rely on genicam.
Additional context
Is there any way I can help to automate the build process for the GenICam python libraries ( I did not find any public repo for that package, but I assume this place is as close as it gets), so that we can have more frequent releases of that package and therefore faster upwards compatibility of harvesters?

See #386

also #319
The underlying cause is the same, that we only get updated genicam binaries when the genicam specification is updated, and not when Python is updated.
I understand that such a specification process takes lots of consideration and therefore takes time to be done well, however, it is annoying that we can't get builds of the older specification against newer Python versions.

It looks like version 1.3.0 of the genicam python library is now out and addresses python 3.11 compatibility:
https://pypi.org/project/genicam/#history
https://pypi.org/project/genicam/#files

Could a new version of harvesters be released with the upgraded genicam dependency?

Thanks presumably @kazunarikudo for updating the Genicam package.


Adds /top command

Adds a /top command for channels.

Codecov Report
Base: 94.77% // Head: 94.81% // Increases project coverage by +0.03% :tada:

Coverage data is based on head (4e2c51a) compared to base (f7eda88).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1049      +/-   ##
==========================================
+ Coverage   94.77%   94.81%   +0.03%
==========================================
  Files         141      141
  Lines        7099     7153      +54
  Branches      527      533       +6
==========================================
+ Hits         6728     6782      +54
  Misses        313      313
  Partials       58       58

Impacted Files
Coverage Δ

src/spellbot/actions/score_action.py
100.00% <100.00%> (ø)

src/spellbot/cogs/score_cog.py
100.00% <100.00%> (ø)

src/spellbot/services/plays.py
100.00% <100.00%> (ø)

tests/cogs/test_score_cog.py
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.


[FEA-1057] Nfts

What's new in this PR?
Add PlumeGoon and PlumePassport
do -
 forge install dmfxyz/murky --no-commit to run tests

Will resolves issues with submodule


ADO project not in parent directory

You can't subscribe to ADO project if it is in another directory, even if you have full admin rights.
We have a setup when we have 2 AAD directories and ADO project is in directory where my account is guest. When you try to subscribe it shows error:
Configuration failed. Please make sure that the organization 'your_repo_name' exists and that you have sufficient permissions.

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

ID: 99a6f5aa-7e92-a028-d13e-e1e4b7fede86
Version Independent ID: be7e5d7c-0033-6b72-4bd1-809f7d1894aa
Content: Azure Pipelines with Slack - Azure Pipelines
Content Source: docs/pipelines/integrations/slack.md
Product: devops
Technology: devops-collab
GitHub Login: @atinb
Microsoft Alias: atinb

Seems that posted workaround doesn't work in Safari, but in Chrome.

@msebolt We worked with @mkushakov to resolve the problem. Please close the issue. I do not have access to do so. Thanks

@atinb thanks for helping to debug this issue. If you don't want to keep it until Safari compatibility will be fixed I can close it.

@mkushakov We have opened an internal bug to track this issue. Thanks for reporting!


Istio Ingressgateway pods are running on not-edge nodes.

Hi team!
We are using the Istio managed provided as Addon in the IBM Cloud. The ingressgateway pods are running on not-edge nodes. We checked each ingressgateway pod and we found that there are not ingressgateways on our edge nodes.
From the istio-ingressdeployment we can see the affinity:
spec:
      affinity:
        nodeAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - preference:
              matchExpressions:
              - key: dedicated
                operator: In
                values:
                - edge
            weight: 100
        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - podAffinityTerm:
              labelSelector:
                matchExpressions:
                - key: app
                  operator: In
                  values:
                  - istio-ingressgateway
              topologyKey: kubernetes.io/hostname
            weight: 100

But the affinity doesn't seem to work.
A solution could be to create a custom gateway as in https://github.com/rvennam/istio-on-iks/blob/master/custom-istio-ingress.md:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  name: managed-istio-custom-gw
  namespace: mynamespace
spec:
  profile: empty
  components:
    ingressGateways:
      - name: istio-ingressgateway
        label:
          istio: istio-ingressgateway
        namespace: mynamespace
        enabled: true
        k8s:
          hpaSpec:
            minReplicas: 2
          tolerations:
          - key: dedicated
            value: edge
          overlays:
          - kind: Deployment
            name: istio-ingressgateway
            patches:
            - path: spec.template.spec.affinity
              value:
                nodeAffinity:
                  requiredDuringSchedulingIgnoredDuringExecution:
                    nodeSelectorTerms:
                      - matchExpressions:
                        - key: dedicated
                          operator: NotIn
                          values:
                          - internal
                        - key: dedicated
                          operator: In
                          values:
                          - edge
                podAntiAffinity:
                  requiredDuringSchedulingIgnoredDuringExecution:
                  - labelSelector:
                      matchExpressions:
                      - key: app
                        operator: In
                        values:
                        - istio-ingressgateway
                    topologyKey: kubernetes.io/hostname

But this requires an extra effort to manage custom components.
Is there any chance to have this addressed in managed istio? It'll be highly appreciated.

Any taint in edge node? Looks like you also need to set tolerations to gateway deployment.

Yes, the edge node has the taint dedicated=edge:NoExecute.
How can we add the tolerations to the gw deployment without create a custom component in the managed istio?

I made some tests. The custom gateway works in my initial test! (https://github.com/rvennam/istio-on-iks/blob/master/custom-istio-ingress-1.7.md#other-recommended-customizations)
Just for information, in our case it works but it is not necessary (or not enough) to change the affinity on the node from preferred to required . In our case, we have the edge node with taints, so we added:
tolerations:
   - key: dedicated
     value: edge

If we change only the affinity to required, we get the error:
0/6 nodes are available: 3 node(s) didn't match node selector, 3 node(s) had taints that the pod didn't tolerate.
So, to fix we add only the tolerations on the custom iop. If someone want to use the same configuration for a test, that it is:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: ibm-operators
  name: mycustom-ingressgateway-iop
spec:
  profile: empty
  hub: icr.io/ext/istio
  tag: 1.7.2
  revision: mycustom-ingressgateway
  components:
    ingressGateways:
      - name: mycustom-ingressgateway
        label:
          istio: mycustom-ingressgateway
        namespace: ghost
        enabled: true
        k8s:
          hpaSpec:
            minReplicas: 2
          tolerations:
          - key: dedicated
            value: edge
          serviceAnnotations:
            service.kubernetes.io/ibm-load-balancer-cloud-provider-ip-type: public

@luiof Correct, you can also specify tolerations via k8s settings, similar to affinity.

Thank you!

Closing issue as adding tolerations to gateway configuration fixed the issue. Change request to Managed Istio will be handled via IBM channels.


How export glb file with embedded textures files?

HI, I have a problem about glb files.How can I export a glb file with embedded teturess rather than exporting a textures folder?
Thx!

You can use option --image-path-mode=embedded and output as .glb file, for example:
> ./FBX-glTF-conv <path-to-fbx-file> --out=<path-to-glb-file.glb> --image-path-mode=embedded

Wwwwwwwwww~~~~Thx!!Succes with your help~


[BUG] [AzureOpenAI] TokenUsage set to null

If we define a AI Assistant with
import dev.langchain4j.service.Result;

public interface Assistant {
    Result<String> answer(String query);
}

When an error occurs during the generate phase, then the Response built got a null TokenUsage.
See here for example line 268: https://github.com/langchain4j/langchain4j/blob/25e4d6de4932fc23bdd92a2c9c9fc2613169f125/langchain4j-azure-open-ai/src/main/java/dev/langchain4j/model/azure/AzureOpenAiChatModel.java#L256-L270
But, the AiService will try to map the response into a Result (following the interface)
https://github.com/langchain4j/langchain4j/blob/25e4d6de4932fc23bdd92a2c9c9fc2613169f125/langchain4j/src/main/java/dev/langchain4j/service/DefaultAiServices.java#L202-L210
and there is a rule in Result constructor to avoid null for TokenUsage
https://github.com/langchain4j/langchain4j/blob/25e4d6de4932fc23bdd92a2c9c9fc2613169f125/langchain4j/src/main/java/dev/langchain4j/service/Result.java#L27-L31
To fix that, can we create an empty instance of TokenUsage in the catch block ?
            return Response.from(
                    aiMessage(httpResponseException.getMessage()),
                    new TokenUsage(),
                    exceptionFinishReason
            );

ping @jdubois @agoncal
I made the small PR with the proposal

I wasn't aware of this API.
Looking at https://github.com/langchain4j/langchain4j/blob/main/langchain4j-open-ai/src/main/java/dev/langchain4j/model/openai/OpenAiChatModel.java#L181 I can see that OpenAI uses the InternalOpenAiHelper.tokenUsageFrom() method.
Azure OpenAI also has this method in InternalAzureOpenAiHelper. I wonder if we should use it?  https://github.com/langchain4j/langchain4j/blob/main/langchain4j-azure-open-ai/src/main/java/dev/langchain4j/model/azure/InternalAzureOpenAiHelper.java#L299

I guess we should relax the ensureNotNull(tokenUsage, "tokenUsage") requirement, not all models return it

Azure OpenAI also has this method in InternalAzureOpenAiHelper. I wonder if we should use it? https://github.com/langchain4j/langchain4j/blob/main/langchain4j-azure-open-ai/src/main/java/dev/langchain4j/model/azure/InternalAzureOpenAiHelper.java#L299

Yes, I missed this. It should be the good place to create an empty TokenUsage. Or may be the ensureNotNull(tokenUsage, "tokenUsage") could be remove and there is no thing to do on AzureOpenAI part.
On my side, I don't know the impact of removing this constraint.
If we keep the constraint, @agoncal I'll update the PR to modify and use the helper.
If we remove the constraint, we can close the PR :-)


Early steps toward supporting lgpl-docs

This PR covers the early steps of supporting the lgpl-docs repository in glib.
Unfortunately there is a lot of files currently put in the ignore list, though this does mean we import at least some docs into the autogenerated-from-gir code.  Further work will be needed to work out what can be transformed from existing docs into lgpl-docs content, versus what needs to remain ignored.

The failure here appears to be related to regen-check which I had assumed would only affect .rs files in the various src/ trees but perhaps affects build.rs too?  I shall try and get to it later today.

https://github.com/gtk-rs/gio/pull/297 is also relevant here

Please rebase and create a new PR for https://github.com/gtk-rs/gtk-rs . Thanks!


Add new SentryTransport to winston

Signed-off-by: Sebastian Malton<EMAIL_ADDRESS>closes #3364

Not a typo, because there is no Severity.Verbose


Translation Samples needs to translate Hero Cards and multiple input choice action

Hi,
Below sample is working for normal text messages
https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/17.multilingual-bot
But translation, where cards (hero and multiple input choice action) are not being translated.
Consider updating this sample to include an hero and multiple input choice action translation.
Also there was some solution provided for adaptive cards translation in the below link.
https://github.com/microsoft/BotBuilder-Samples/issues/1723
We tried to use above function in our code and it is working for adaptive card. But it is not working properly for hero cards and  multiple input choice action(with  list style as hero card). Would you please help us how to translate  Hero Cards and multiple input choice action.
Sample screenshots of the bot in English.

Sample screenshots of the bot in Japanese.

Closing due to no activity. Please see microsoft/botbuilder-dotnet#2387 for ongoing SDK discussion


Suggestion show an example of a table without the first cell as header

We frequently use GOVUK Tables where the first column is not a header and should not be bold.
I struggle to find how to do this from the docs - I eventually worked out that you don't want firstCellIsHeader: true,
It feels like it would be good for there to be an example like this - I imagine other teams might start with the examples then add custom classes to override the bold.

This was recently discussed in the backlog, too: https://github.com/alphagov/govuk-design-system-backlog/issues/61#issuecomment-1340818751


[FLINK-9585] Logger in ZooKeeperStateHandleStore is public and non-final

What is the purpose of the change
This pull request mark Logger in ZooKeeperStateHandleStore as private and final
Brief change log

Changed Logger in ZooKeeperStateHandleStore from public to private final

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

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

Documentation

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

cc @zentol

Looks good from my side.


Side condition not used in ensures clause evaluation

Tested with commit 07c0fc8e07f3fce05ffdd771cbb2a4765e1ac074
The final configuration on one of the two proof branches contains this (the other branch fails in a similar way):
  #Not ( {
    empty
  #Equals
    copy ( empty , I )
  } )
...
#And
  {
    true
  #Equals
    I >Int 0
  }

The semantics has a rule for evaluating copy that should make this branch succeed:
  rule  copy(empty, I:Int) => empty
    requires I >Int 0

and the side condition contains true #Equals I >Int 0 since the start configuration, however, that rule is not applied. After staring at the function evaluation logs for a while, I think it's because the side condition is not used when attempting to apply the rule above.
To reproduce:
tmp.k
module TMP
  imports INT
  imports K-EQUAL

  syntax IntList  ::= "empty" | concat(Int, IntList)

  syntax IntList ::= copy(IntList, Int)  [function, functional]

  rule  copy(empty, I:Int) => empty
    requires I >Int 0
  rule  copy(concat(E:Int, Es:IntList), I:Int) => concat(E, copy(Es, I -Int 1))
    requires I >Int 0
  rule  copy(Es:IntList, _:Int) => Es
    [owise]

  syntax KItem ::= iterateList(IntList, Int)

  rule  iterateList(empty, _:Int) => .K  [label(i1)]
  rule  iterateList(concat(_:Int, L:IntList), A:Int) => iterateList(L, A)  [label(i2)]

endmodule

tmp-proof.k
module TMP-PROOF
  imports TMP

  claim iterateList(Es, I) => .K
    requires I >Int 0
    ensures copy(Es:IntList, I:Int) ==K Es

endmodule

We should quickly take a look at simplifyRightHandSide, after the step where Es #Equals empty there should be an attempt here to simplify the ensures clause.

I'm able to reproduce this behavior with the following more straightforward proof:
tmp.k:
module TMP
  imports INT

  syntax KItem ::= run ( Either, Int ) | done ( Either )
  rule run(Left(),  _I) => done(Left())
  rule run(Right(), _I) => done(Right())

  syntax Either ::= Left() | Right()
  syntax Bool ::= P( Either , Int ) [function]

  rule P(Left(),I) => true
    requires I >Int 0
  rule P(Right(),I) => true
    requires I >Int 0
  rule P(E,I) => false
    requires I <=Int 0
endmodule

tmp-proof.k:
module TMP-PROOF
  imports TMP

  claim <k> run(E,I) => done(E) ... </k>
    requires I >Int 0
    ensures P(E,I)
endmodule

I think the run => done rule has to be written this way to cause branching, otherwise the backend cannot simplify the ensures clause regardless. If we write the proof without anything to branch on, it passes. I tried a few variations of smaller examples without branching but they did not exhibit this behavior. This probably reinforces the idea that the problem has to do with substitutions.

I can also confirm that our proposed change makes my proof pass.
@virgil-serbanuta would you mind trying your proof on the issue-2740 branch? I'm not sure if the proof is actually incorrect, or if there's a further issue with Kore. When I try it, I see this output:
kore-exec: [477578] Warning (WarnStuckClaimState):
    (InfoReachability) while checking the implication:
    The proof has reached the final configuration, but the claimed implication is not valid. Location: /home/max/scratch/kore/2740/tmp-proof.k:5:9-7:31
  #Not ( {
    L
  #Equals
    copy ( L , I +Int -1 )
  } )
#And
  <k>
    _DotVar1
  </k>
#And
  {
    L
  #Equals
    copy ( L , I )
  }
#And
  {
    true
  #Equals
    I >Int 0
  }

and I'm not actually sure if we expect this to get further, because I don't think we can reason about I +Int -1 with the information we have.

I will try it, but when I submit issues for the Haskell backend I usually (though not always) try to minimize the proof such that it still shows the issue I'm trying to report, without trying too much to make a valid minimized claim (that's hard to do anyway because I can't really test it).
IIRC the non-minimized claim worked on an older Haskell backend, but did not work at the commit mentioned above. Would you have preferred to debug the original claim (the semantics would be much larger, perhaps the claim would also be more complex)? Or, would it be better to post both the minimized version and the original one?

If you don't know if it's correct, then that's fine. I'd guess that it needs further lemmas and that we have a fix for the problem demonstrated. Thanks!

I think it worked on 1724c5c23afea515f4c58328d1f42abc5de6e15c

FWIW, I didn't find the issue-2740 branch on the main repository, and I didn't find any fork of the kore repository that belongs to you.

I thought I must've pushed it because at some point I switched from working locally to in a container, but perhaps not. It's all good, thanks for looking :)


Eedeleon/add duration

Add duration tracking to evaluation suite

I reran the build https://dev.azure.com/responsibleai/whitenoise/_build/results?buildId=8631&view=results and it passed.
We have an issue with a flaky test but otherwise the PR is good


Support optional chaining.

https://github.com/tc39/proposal-optional-chaining

What would it take to make Buble work with optional chaining?
I'm interesting in not transforming it, but just allowing the syntax in code passed through Buble.
I see that support landed in Acorn for optional chaining https://github.com/acornjs/acorn/blob/master/acorn/CHANGELOG.md#730-2020-06-11

I added a failing test for optional chaining here https://github.com/bublejs/buble/pull/274

Added the same test here, where I did manage to upgrade acorn and acorn-jsx to the latest.
https://github.com/datavis-tech/buble-jsx-only/pull/4
    "acorn": "^8.4.1",
    "acorn-jsx": "^5.3.2",

The test still fails. I have no idea why.
I also added a test to acorn-jsx (just locally) and it passed, so it appears acorn-jsx and acorn really do support optional chaining.

Still interested in this in 2022!

is this live or have not implemented yet? and can anyone tell me what can I use to compile my jsx to javascript? i used bable and it is not working


Add user-selection in filters

At the moment only "Me" and "All" is supported. Manual entry (with completion when supported) should be possible; just like it is done in IntelliJ VCS log.
See also: com.google.gerrit.extensions.api.accounts.Accounts#suggestAccounts.

Duplicate of #206; already implemented.