Reinvent4 + DockStream Reinforcement learning example from repository hangs

Hi.
I set up a system to generate a small molecule for a protein receptor. For some reason the execution just hangs without any logs. I waited for a couple of hours, GPU memory increased by 1.5 GB, but nothing happens
My toml:
version = 4
run_type = "staged_learning"
use_cuda = true
output_csv = "rl_direct_.csv"

[parameters]
use_checkpoint = false
summary_csv_prefix = "rl_direct"
agent_file = "/app/REINVENT4/priors/reinvent.prior"
prior_file = "/app/REINVENT4/priors/reinvent.prior"

batch_size = 128
uniquify_smiles = true
randomize_smiles = true

[learning_strategy]

type = "dap"
sigma = 128
rate = 0.0005

[diversity_filter]

type = "IdenticalMurckoScaffold"
bucket_size = 50
minscore = 0.0

[[stage]]
chkpt_file = 'rl_direct.chkpt'
termination = "simple"
max_steps = 50

[stage.scoring]
type = "geometric_mean"

[[stage.scoring.component]]
[[stage.scoring.component.DockStream.endpoint]]
name = "Docking into 2XCH grid"
weight = 1
params.configuration_path = "/app/case_study_files/dockstream_rl_direct_uncs_dockvina.json"
params.docker_script_path = "/app/DockStream/docker.py"
params.docker_python_path =  "/var/conda/envs/DockStream/bin/python"
transform.type = "reverse_sigmoid"
transform.high = -7
transform.low = -13.5
transform.k = 0.2

[[stage.scoring.component]]
[stage.scoring.component.QED]
[[stage.scoring.component.QED.endpoint]]
name = "QED"
weight = 1

My DockStream config
{
  "docking": {
    "header": {
      "logging": {
        "logfile": "dockstream_rl_direct.log"
      }
    },
    "ligand_preparation": {
      "embedding_pools": [
        {
          "pool_id": "RDkit",
          "type": "RDkit",
          "parameters": {
            "protonate": true,
            "coordinate_generation": {
              "method": "UFF",
              "maximum_iterations": 600
            }
          },
          "input": {
            "standardize_smiles": false,
            "type": "console"
          }
        }
      ]
    },
    "docking_runs": [
      {
        "backend": "AutoDockVina",
        "run_id": "AutoDockVina",
        "input_pools": ["RDkit"],
        "parameters": {
          "binary_location": "/app",
          "parallelization": {
            "number_cores": 4
          },
          "seed": 42,
          "receptor_pdbqt_path": ["/app/1smd_receptor.pdbqt"],
          "number_poses": 2,
          "search_space": {
            "--center_x": 3.3,
            "--center_y": 11.5,
            "--center_z": 24.8,
            "--size_x": 15,
            "--size_y": 10,
            "--size_z": 10
          }
        },
        "output": {
          "poses": {
            "poses_path": "poses/rl_direct_poses.sdf",
            "overwrite": true,
            "mode": "best_per_ligand"
          },
          "scores": {
            "scores_path": "scores/rl_direct_scores.csv",
            "overwrite": true,
            "mode": "best_per_ligand"
          }
        }
      }
    ]
  }
}

When I press CTRL + C it shows me this (check after 20:54:57  Current GPU memory usage: 2038 MiB used, 10249 MiB free line)
20:54:54 <INFO> Started REINVENT 4.0.35 (C) AstraZeneca 2017, 2023 on 2024-03-12
20:54:54 <INFO> Command line: /var/conda/envs/reinvent4/bin/reinvent case_study_files/RL_direct_for_upload.toml
20:54:54 <INFO> User root on host WINDOWS-N294FUM
20:54:54 <INFO> Python version 3.10.13
20:54:54 <INFO> PyTorch version 1.12.1+cu113, git 664058fa83f1d8eede5d66418abff6e20bd76ca8
20:54:54 <INFO> PyTorch compiled with CUDA version 11.3
20:54:54 <INFO> RDKit version 2022.09.5
20:54:54 <INFO> Platform Linux-<IP_ADDRESS>-microsoft-standard-WSL2-x86_64-with-glibc2.31
20:54:54 <INFO> Number of PyTorch CUDA devices 1
20:54:54 <INFO> Using CUDA device:0 NVIDIA GeForce RTX 3060
20:54:54 <INFO> GPU memory: 11261 MiB free, 12287 MiB total
20:54:54 <INFO> Writing TensorBoard summary to /app/tb_rl_direct
20:54:54 <INFO> Starting 1 stage of Reinforcement Learning
20:54:57 <INFO> Using generator Reinvent
20:54:57 <INFO> Prior read from /app/REINVENT4/priors/reinvent.prior
20:54:57 <INFO> Agent read from /app/REINVENT4/priors/reinvent.prior
20:54:57 <INFO> Using reward strategy dap
20:54:57 <INFO> Using diversity filter IdenticalMurckoScaffold
20:54:57 <INFO> Diversity filter memories are retained between stages
20:54:57 <WARN> Inception disabled but may speed up convergence
20:54:57 <INFO> Registered scoring component ROCSSimilarity
20:54:57 <INFO> Registered scoring component GroupCount
20:54:57 <INFO> Registered scoring component FragmentQed
20:54:57 <INFO> Registered scoring component FragmentSlogP
20:54:57 <INFO> Registered scoring component FragmentMolecularWeight
20:54:57 <INFO> Registered scoring component FragmentTPSA
20:54:57 <INFO> Registered scoring component FragmentDistanceMatrix
20:54:57 <INFO> Registered scoring component FragmentNumAtomStereoCenters
20:54:57 <INFO> Registered scoring component FragmentHBondAcceptors
20:54:57 <INFO> Registered scoring component FragmentHBondDonors
20:54:57 <INFO> Registered scoring component FragmentNumRotBond
20:54:57 <INFO> Registered scoring component FragmentCsp3
20:54:57 <INFO> Registered scoring component Fragmentnumsp
20:54:57 <INFO> Registered scoring component Fragmentnumsp2
20:54:57 <INFO> Registered scoring component Fragmentnumsp3
20:54:57 <INFO> Registered scoring component FragmentEffectiveLength
20:54:57 <INFO> Registered scoring component FragmentGraphLength
20:54:57 <INFO> Registered scoring component FragmentLengthRatio
20:54:57 <INFO> Registered scoring component FragmentNumHeavyAtoms
20:54:57 <INFO> Registered scoring component FragmentNumHeteroAtoms
20:54:57 <INFO> Registered scoring component FragmentNumRings
20:54:57 <INFO> Registered scoring component FragmentNumAromaticRings
20:54:57 <INFO> Registered scoring component FragmentNumAliphaticRings
20:54:57 <INFO> Registered scoring component FragmentSlogP
20:54:57 <INFO> Registered scoring component MatchingSubstructure
20:54:57 <INFO> Registered scoring component MolVolume
20:54:57 <INFO> Registered scoring component Qed
20:54:57 <INFO> Registered scoring component SlogP
20:54:57 <INFO> Registered scoring component MolecularWeight
20:54:57 <INFO> Registered scoring component GraphLength
20:54:57 <INFO> Registered scoring component NumAtomStereoCenters
20:54:57 <INFO> Registered scoring component HBondAcceptors
20:54:57 <INFO> Registered scoring component HBondDonors
20:54:57 <INFO> Registered scoring component NumRotBond
20:54:57 <INFO> Registered scoring component Csp3
20:54:57 <INFO> Registered scoring component numsp
20:54:57 <INFO> Registered scoring component numsp2
20:54:57 <INFO> Registered scoring component numsp3
20:54:57 <INFO> Registered scoring component NumHeavyAtoms
20:54:57 <INFO> Registered scoring component NumHeteroAtoms
20:54:57 <INFO> Registered scoring component NumRings
20:54:57 <INFO> Registered scoring component NumAromaticRings
20:54:57 <INFO> Registered scoring component NumAliphaticRings
20:54:57 <INFO> Registered scoring component SlogP
20:54:57 <INFO> Registered scoring component PMI
20:54:57 <INFO> Registered scoring component RDKitDescriptors
20:54:57 <INFO> Registered scoring component TanimotoDistance
20:54:57 <INFO> Registered scoring component TPSA
20:54:57 <INFO> Registered scoring component SAScore
20:54:57 <INFO> Registered scoring component ChemProp
20:54:57 <INFO> Registered scoring component CustomAlerts
20:54:57 <INFO> Registered scoring component DockStream
20:54:57 <INFO> Registered scoring component ExternalProcess
20:54:57 <INFO> Registered scoring component REST
20:54:57 <INFO> Registered scoring component Icolos
20:54:57 <INFO> Registered scoring component Maize
20:54:57 <INFO> Registered scoring component MMP
20:54:57 <INFO> Registered scoring component Qptuna
20:54:57 <INFO> Registered scoring component ReactionFilter
20:54:57 <INFO> Creating scoring component DockStream
20:54:57 <INFO> Creating scoring component QED
20:54:57 <INFO> Writing tabular data for stage to rl_direct_1.csv
20:54:57 <INFO> Starting stage 1 <<<
20:54:57 <INFO> Current GPU memory usage: 2038 MiB used, 10249 MiB free
^CTraceback (most recent call last):
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/runmodes/RL/run_staged_learning.py", line 377, in run_staged_learning
    terminate = optimize(package.terminator)
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/runmodes/RL/learning.py", line 131, in optimize
    results = self.score()
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/runmodes/RL/learning.py", line 204, in score
    results = self.scoring_function(
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/scoring/scorer.py", line 105, in compute_results
    transform_result = compute_transform(
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/scoring/compute_scores.py", line 111, in compute_transform
    component_results = compute_component_scores(
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/scoring/compute_scores.py", line 60, in compute_component_scores
    component_results = scoring_function(smilies_non_cached)
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent_plugins/components/comp_dockstream.py", line 75, in __call__
    result = run_command(command)
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent_plugins/components/run_program.py", line 26, in run_command
    result = sp.run(command, **args)
  File "/var/conda/envs/reinvent4/lib/python3.10/subprocess.py", line 505, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
  File "/var/conda/envs/reinvent4/lib/python3.10/subprocess.py", line 1154, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
  File "/var/conda/envs/reinvent4/lib/python3.10/subprocess.py", line 2021, in _communicate
    ready = selector.select(timeout)
  File "/var/conda/envs/reinvent4/lib/python3.10/selectors.py", line 416, in select
    fd_event_list = self._selector.poll(timeout)
  File "/var/conda/envs/reinvent4/lib/python3.10/site-packages/reinvent/runmodes/handler.py", line 126, in _signal_handler
    raise StageInterrupted
reinvent.runmodes.handler.StageInterrupted

Any thoughts? I run it on docker nvcr.io/nvidia/cuda:11.3.0-cudnn8-runtime-ubuntu20.04

Your traceback suggests that the issue is with the external process that is your docking program.  You would need to look if that software produces any output and so can give you a clue.


Make NetworkObserver cross platform

At the moment, NetworkObserver is iOS only because of:
extension UIApplication: NetworkActivityIndicatorProtocol { }

and use of UIApplication.shared.
However, the rest of the class is actually already cross platform, so it can be moved into ProcedureKitNetwork, and the explicit conformance either marked out with #if os(iOS) or similar.
While other Apple platforms may not have explicit network activity indicators, it would make it easier for consumers to write cross-platform code themselves.

Done in #613


Fix message-related exceptions in threads

Summary
Fixes exceptions thrown when trying to run message-related functions when the channel is a thread..
Changes proposed
Added the thread channel check to the previous checks so thread channels are allowed to send messages.

Sorry @superkid200 , just saw this now as my email gets spammed by Github. Do you mind rebasing your changes and removing the extra t in the DiscordChannel.cs?

Thank you @superkid200 o7


[ALLUXIO-1974] Fix flaky lineageRecoveryTest

https://alluxio.atlassian.net/browse/ALLUXIO-1974
There was a race condition where we would run
// Wait for the output to be written (this should be very fast)
CommonUtils.sleepMs(10);

and then check that the log file contained the text "hello world". Sometimes 10ms wouldn't be long enough and we would read before the file was flushed, giving us null instead of "hello world". This PR changes the test to wait until "hello world" is written.

Merged build finished. Test FAILed.

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

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/10305/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.master.lineage.LineageMasterIntegrationTest.lineageRecoveryTest
Test FAILed.

Merged build finished. Test FAILed.

Merged build finished. Test PASSed.

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

@aaudiber Thanks for this fix! I left a question about it.

LGTM

Merged build finished. Test PASSed.

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


[Bug]: The colour of selected, highlighted text is unreadable in dark mode

Bug Description
If you highlight some ==text==, then select it in the editor, the background colour has bad contrast and makes the text unreadable.
The same is not true in light mode, where the colouring is just fine.
Relevant Screenshot

To Reproduce

Type out some text
Highlight it with ==
Select a range of that highlighted text

Obsidian Version
0.14.7
Installer Version
0.12.5
Font Size
19
Which editor are you using?

[X] New Editor
[ ] Legacy Editor

In which mode(s) does the problem occur? (if applicable)

[X] Source (Edit)
[ ] Reading (Preview)
[X] Live Preview

Which operating system?

[ ] macOS
[ ] Linux
[X] Windows
[ ] iOS
[ ] Android

Plugin-Specific Problems

[ ] I took note of the specific instructions regarding those plugins.

Checklist

[X] I updated to the latest version of the theme (Settings → Appearance → Themes - Manage → Update).
[X] I made sure that the issue is related to this theme by checking that the problem does not occur with the default theme.
[X] In case I am missing an UI element, I have checked that it cannot be re-enabled with the Style Settings plugin.
[X] If the bug occured after updating the theme, I read the last couple of entries in the changelog to make sure the bug is not an intentional change. (In that case, there will most likely be a style setting to turn it off again.)

since when are you a SF user? 👀 👀 👀

I like to switch it up sometimes 😋
Thanks for resolving this so quickly!

no big deal, the fix was only changing one line and deleting another one :P


update kubecon ad to Dan tribute

Deploy preview for landscape ready!
Built with commit a1ee37b8c10948f1beab8eb7f3b345c8f59974ee
https://deploy-preview-1887--landscape.netlify.app


Help panes cut off at the bottom of the screen

The help panes are cut off at the bottom of the screen and it is not possible to scroll them.
Example:

This seems to be the case for all help panes which are long enough to extend to the bottom of the screen.

Are you sure that they are cut off? You can scroll but the scrollbar is invisible until you hover over the popup.

@zagortenay333 Yes, it is impossible to scroll. Also, no matter where I move the mouse, a scroll bar is not showing up.

Ahh shoot. I can't reproduce this on my machine...
Screencast from 2023-06-06 12-17-30.webm

Not sure how to tackle this...

Here is a screen recording of the issue:
Screencast from 2023-06-06 12-21-21.webm
Unfortunately you can't see my mouse, but I am moving it all over the pane and trying to scroll, but nothing happens.

Could you try typing this in the gnome shell console (one line at a time):
Main.layoutManager.findIndexForActor(global.stage)
Main.layoutManager.getWorkAreaForMonitor(r(0))

You get the console by pressing alt-f2 then lg.
Does it report roughly the height of your monitor?

The first return value is 0, and the second one is 2096.
This is on a 3840x2160 screen with 200% scaling.

Hmmm. Can you see if the problem happens when you are at 100% scaling?

Yep, halving the resolution and setting scaling to 100% does indeed result in sucessful scrolling.
The output from Main.layoutManager.getWorkAreaForMonitor(r(0)).height is halved as well.

Everything is huge (and therefore, not alot of the panel fits on the screen), but scrolling works.

Yeah I need to make the docs translatable as well. Forgot about that...

Could you guys see if it works now? You'll have to download the extension from github.

I tested it, it works fine now.

Works for me also. Thanks!


chore: Move submitted doucmentation changes frox jx-docs to jx-gitops source code

This documentation has already been contributed here but it was noted that it was misplaced. Here I have moved the documentation back into the source code.

Hi @thecooldrop. Thanks for your PR.
I'm waiting for a jenkins-x-plugins or todo member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign rawlingsj
You can assign the PR to them by writing /assign @rawlingsj in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: hervelemeur
To complete the pull request process, please assign rawlingsj
You can assign the PR to them by writing /assign @rawlingsj in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

/ok-to-test
/lgtm


doesn't respond to 'sgpt' in terminal

Installation went clean, it does not recognize 'sgpt' command. On different Distros (Ubuntu and Fedora) it works perfectly, on Pop_OS it does not.

Apparently it needed more than one restart, everything is OK now.


feat: smart error page

Description
This PR does the following:

Conditionally renders error page content based on the type of error and whether user is logged in or not
Replaces tailwindcss and styled components with design system
Responsive across varying device sizes
Adds xs breakpoint for better management of illustrations on small screen sizes
Adds new header component that displays content based on whether a user is logged in or not
(500 page) Refresh button reloads page

TODO

Add test to assert that an Sentry ID renders when there is a server error

Current Issues

I'm currently struggling to obtain the Sentry ID from the GetInitialProps (tested it by storing Sentry.captureException(err) in a variable and passing it to error page via props, using useEffect to print value and it always returns undefined)

Any feedback or help with the issues will be appreciated!

@QuentinSaubadu
Here is the link to the live preview: https://sigle-7h7akhy33-leopradel.vercel.app/404

@QuentinSaubadu
Here is the link to the live preview: https://sigle-7h7akhy33-leopradel.vercel.app/404

Title Line height (font-size-9) : 72px

H3 is 24px (instead of 21)

H3 Line Height : 30px (instead of default)

"Action" font size (all header fonts) should be 14px (like you have on the CTA) instead of 16, but I’ll move it to 15px. 14 is finally too small.

- Logo is not aligned vertically

- The CTA  is not visible on mobile (you need to scroll to view it) is a bit annoying me.. It is my bad 100% I didn’t do the mobile version of it, I’m sorry for that.
 Can you reduce the margin between header and image, reduce the image just a bit also so we can see the CTA?

-Add 40px margin under CTA on mobile version
Thank you Greg


Import project without file attachment

Describe the bug
Try to import the project without a file attachment and the error will be shown.
To Reproduce
Steps to reproduce the behavior:

Go to 'Import project'
Click on the 'import project button' without a file attachment.
See error

If you attach a wrong file/file format and try to proceed you will see the same error.
Current Results

Expected behavior

There should be an alert and I should not be allowed to proceed without a file attachment
Similar to this :

Desktop (please complete the following information):

OS: [Linux, Ubuntu 18.04]
Browser Version: [Chrome Version 80.0.3987.132 (Official Build) (64-bit)]
JRE or JDK Version:[openjdk version "11.0.6" ]

OpenRefine (please complete the following information):

Version [OpenRefine Version 3.4-SNAPSHOT ]

@AghaSaad04 Looking forward to your fix on this! :-)  You can do it!

Sure @thadguidry, I will look into this

I want to do that

@chetan-v Great Chetan!  Let us know if you need help.

@chetan-v Great Chetan! Let us know if you need help.

Yeah sure,if I need

Please give me some guidance @thadguidry @tfmorris

Please give some hint I read alot about this.
I tried but I failed to redirect

What is the specific problem you need help about? How are you planning to solve this problem and where exactly are you stuck?

Actually I just want to give a alert message when we do not choose any file and click import project button

Great! These are the steps you will need to follow to solve this issue:
https://github.com/OpenRefine/OpenRefine/wiki/Your-first-pull-request
At which of these stages are you stuck?

I am unable to find the root file in which I should change.
In (create project menu) has their JS file that check the condition and give alert
but in JS file of (import project menu)  not have that condition to check and give alert.
I am confused about the type of Changes in Java or in JavaScript

This will be solved in the frontend, so Javascript. You are on the right track: imitating in the import project menu the check that is done in the create project menu sounds like a great approach! Can you give me a link to these two Javascript files?

In this file they check and give message
https://github.com/OpenRefine/OpenRefine/blob/306b541c699e7e87d5e08be1310575b85b15dbf0/main/webapp/modules/core/scripts/index/default-importing-sources/sources.js#L60
(main/webapp/modules/core/scripts/index/import-project-ui.js) I think they do their work perfectly
they only give data on screen they both are different to each other which is not a problem in (import project menu) all work is done by its backend. (ImportProjectCommand.java)
they contains
(doPost):-
https://github.com/OpenRefine/OpenRefine/blob/306b541c699e7e87d5e08be1310575b85b15dbf0/main/src/com/google/refine/commands/project/ImportProjectCommand.java#L64
function that give information or whatever to  (respondWithErrorPage)  and they dont contain the certain condition. I think the condition should be their.
(respondWithErrorPage):-
https://github.com/OpenRefine/OpenRefine/blob/306b541c699e7e87d5e08be1310575b85b15dbf0/main/src/com/google/refine/commands/HttpUtilities.java#L146

Checking for the presence of a file and alerting the user must be done before sending anything to the backend, so you should ignore all Java files for this issue. You are right that the check you should imitate is at
https://github.com/OpenRefine/OpenRefine/blob/306b541c699e7e87d5e08be1310575b85b15dbf0/main/webapp/modules/core/scripts/index/default-importing-sources/sources.js#L60-L62
How about just doing something similar in the JS file for the "import project" pane?

Closed by #2369.


Temporarily disable the mockito builder for better build perf

What/Why
This batch temporarily disables the mockito builder because it is only
needed for NNBD code and the default behavior is for it to run on every
.dart file and fully resolve each of those files, which is slow.
Disabling this builder should improve local and CI build times.
Testing
These changes should only disable a builder that is already not generating
anything for packages that have not yet migrated to null-safety. For that
reason, code review of the modification to the build.yaml and passing CI
should be sufficient testing.
More Info
This batch change is a part of a larger Client Platform effort to update our
Dart dependencies and unblock us from upgrading to the latest Dart SDK.
More info can be found here: https://wiki.atl.workiva.net/display/CP/Dependency+Upgrades
If you have any questions or comments, please comment on this PR or reach
out to #support-client-plat on Slack.
Created by Sourcegraph batch change Workiva/disable_mockito_builder.

Security Insights

(2) Vulnerable direct dependencies were detected
1 vulns in ansi-regex < 5.0.1 via yarn.lock
1 vulns in glob-parent < 5.1.2 via yarn.lock

Action Items

Review dependencies for available updates
See this Splunk dashboard for more CVE details
Review PR for security impact; comment "security review required" if needed or unsure
Verify aviary.yaml coverage of security relevant code

Questions or Comments? Reach out on Slack: #support-infosec.

QA+1 CI Passes

@Workiva/release-management-p


Release notes for 0.4.0?

I understand that I can look through the actual commit history to see specifically what has changed, but is v0.4.0 a breaking change from 0.3.2?
Any chance of getting some summary of changes?

See #598.

In any case, I would like to request the addition of release notes for each release. It is a chore for the maintainers, but it is very welcome for all users, as the presence of these issues indicates.

For me after upgrading to 0.4.0 I get a bug:
error: Sending 500 ("Server Error") response:   TypeError: next is not a function     at attempt (/Users/sg/web/dev/crypto/bitcoin/project/node_modules/passport/lib/middleware/authenticate.js:186:32)     at authenticate (/Users/sg/web/dev/crypto/bitcoin/project/node_modules/passport/lib/middleware/authenticate.js:362:7)
Maybe it's better to check this!

@semy - Could you provide any details about how you are using passport that results in that error?  This may be an application-level bug, but it is impossible to pinpoint without further information.

I am updating from 0.2.2 -> 0.4. What a minefield. Is it that hard to maintain a changelog? Thanks.

I am getting the same error as semy:
TypeError: next is not a function
at attempt (/eng/software/nodeapi/node_modules/passport/lib/middleware/authenticate.js:186:32)
at authenticate (/eng/software/nodeapi/node_modules/passport/lib/middleware/authenticate.js:362:7)

https://github.com/ga-wdi-exercises/project3/issues/52 is the resolution for this. Need to pass in "next" as the third parameter.

I'm in the same boat here.  Trying to upgrade from 0.4.2 to 0.7.0 and there's no documentation anywhere about breaking changes short of directly reviewing commits.


ci: Allow skipping specific tests - e.g. TestModule - or only running specific ones

[!NOTE]
While this PR started by splitting our Engine & CLI tests in TestModule and everything else, it has since been changed. We are keeping the existing test suite as is, while adding two new test suites:

test-module
test-everything-else

This is meant to inform the next steps for:

https://github.com/dagger/dagger/issues/8184

This PR replaces the test custom subcommand with test specific, e.g.:
dagger call --source=.:default test specific --skip=TestModule

In the example above, we run all tests except the TestModule ones. To only run TestModule tests, the command is:
dagger call --source=.:default test specific --run=TestModule

Also, test important is now:
dagger call --source=.:default test specific --run='TestModule|TestContainer'

Here are a few more examples:
# Only run TestContainer, TestDirectory and TestFile tests
dagger call --source=.:default test specific --run="TestContainer|TestDirectory|TestFile"

# Skip all tests starting with TestLoad
dagger call --source=.:default test specific --skip="TestLoad"

# Skip all tests starting with TestC, TestD, TestE, ..., TestZ
dagger call --source=.:default test specific --skip="Test[C-Z]"

All tests are now running in verbose -v mode so that we can see the go test output in addition to the Dagger Cloud Traces. We can't fully trust those yet in this context. FTR.
The other useful feature about the --skip flag is that now we can add additional metadata to these runs. In the following example, I am running all tests and capturing the specific instance properties in the --skip flag (somewhat hacky, but essential for distinguishing runs in Dagger Cloud):
dagger call --source=.:default test specific --skip="32C-6548N|64GB-DDR5|VIRTIO-NVME"

This also adds a new test subcommand which lists all top-level tests in alphabetical order:
dagger call --source=.:default test list

TestBaseVersion
TestBasic
TestBuiltins
TestCache
TestCacheMapConcurrent
TestCacheMapErrors
TestCacheMapRecursiveCall
TestCheckResponse
TestClient
TestContainer
TestCoreModTypeDefs
TestDefToDAG
TestDefaults
TestDirectory
TestEmptyID
TestEngine
TestEngineNameLabel
TestEnums
TestFile
TestFromDir
TestGPU
TestGit
TestHTTP
TestHost
TestIDFormat
TestIDsDoNotContainSensitiveValues
TestIDsReflectQuery
TestImpureIDsReEvaluate
TestInputObjects
TestIntrospection
TestIsSemver
TestLegacy
TestLexicalRelativePath
TestListResults
TestLoadCircleCILabels
TestLoadClientLabels
TestLoadGitHubLabels
TestLoadGitLabLabels
TestLoadGitLabels
TestLoadGitRefEnvLabels
TestLoadJenkinsLabels
TestLoadSecretsToScrubFromEnv
TestLoadSecretsToScrubFromFiles
TestLoadServerLabels
TestLoadingFromID
TestMatchGoImport
TestMatchVersion
TestModule
TestNamespaceObjects
TestNormalizeVersion
TestNullableResults
TestObject
TestObjects
TestOriginToPath
TestParallelism
TestParallelismFlag
TestParseAuthAddress
TestParseDaggerToken
TestParseGit
TestParseMetaGoImports
TestParsePragmaComment
TestParsePublicRefString
TestPassingObjectsAround
TestPlatform
TestPureIDsDoNotReEvaluate
TestRegistryAuthProvider
TestRemoteCache
TestRepoRootForImportPath
TestScrubSecretLogLatency
TestScrubSecretWrite
TestSecret
TestSecretScrubWriterWrite
TestSecretStore
TestSecretStoreNotFound
TestService
TestServicesStartConcurrentHappy
TestServicesStartConcurrentSad
TestServicesStartConcurrentSadThenHappy
TestServicesStartHappy
TestServicesStartHappyDifferentServers
TestServicesStartSad
TestSortInputFields
TestSpanName
TestSplitRequiredOptionalArgs
TestTelemetry
TestTrie
TestTrieExtend
TestTrieReinsert
TestType
TestTypeDefConversions
TestValidateRepoRoot
TestVersionCompatibility
TestViews
TestViewsCaching
TestViewsIntrospection

[!NOTE]
While this is how this PR started, I am only keeping it here so that the first several comments make sense. Only the content above this line is relevant for the merged changes.

This PR splits our Engine & CLI tests into:
We now run them as separate CI jobs which splits the test data and makes it easier to understand where the slowness is coming from. It should also make it easier to focus our test refactoring efforts on module tests since the rest of our test suite doesn't seem to be a problem.
Furthermore, before this change, running all these tests in CI was putting pressure on a bunch of components as they generate a lot (>200MB) of output. Even though https://dagger.cloud processes all this data, we then keep stalling the browser tab since it cannot handle a DOM that large. Yup, hundreds of megabytes.
When I run module tests locally, they take over 1h which makes them impractical. All other tests complete within 10 minutes (regardless whether we use -race or not). This is what I've learned:
TestModule

3642s (timed out) @ Wed 10 Jul 08:42:25 BST 2024
3632s (timed out) @ Wed 10 Jul 10:12:09 BST 2024

TestContainer

442s @ Wed 10 Jul 08:49:47 BST 2024
280s @ Wed 10 Jul 12:06:55 BST 2024

TestEngine

141s @ Wed 10 Jul 08:52:08 BST 2024
120s @ Wed 10 Jul 12:12:53 BST 2024
115s @ Wed 10 Jul 12:15:21 BST 2024

All other test suites combined

166s @ Wed 10 Jul 07:38:34 BST 2024
146s @ Wed 10 Jul 07:41:43 BST 2024
145s @ Wed 10 Jul 10:43:38 BST 2024
136s @ Wed 10 Jul 11:55:14 BST 2024

This PR also changes:

adds dagger call ... test list
dagger call ... test custom is now dagger call ... test specific
removes dagger call ... test important
important tests now means everything else apart from modules, which we know are the heavy part of our test suite

Another interesting observation when running TestModule only locally: the NVMe disk gets fully saturated (22k writes @ 26MB/s gives us an average of 1KB / write operation). All other resources (CPU / memory / network) are plenty:

I am keen to see how this behaves in our CI. I am also curious to hear what others think about this change, especially @sipsma & @jedevc that have been doing a lot of work in this area recently.

Hm, interested to hear @sipsma's thoughts as well, but I'm not entirely convinced on the value of splitting these out. That said, I don't really see any huge harm in it. I do think though that we should feel the pain of having big jobs be slow, etc - I know we're trying to get test runs under 10 minutes, but I think we should do that by fixing actual performance issues, instead of splitting up the runs. There's also a small risk that by reducing the amount of parallelism we have in our tests we are less likely to encounter some of the tricky parallel bugs we find like https://github.com/dagger/dagger/issues/7900 and https://github.com/dagger/dagger/issues/7662 (which while bad for regular users, is useful for us).
We know that the module tests are the heaviest - a huge number of our new tests are added as module tests, since we're very much module focused at the moment. In practice - we could probably even do to split our ModuleSuite into more specific suites, like ones that test call, querying, etc. cc @vito
There's definitely an issue with high disk usage (which needs some dedicated investigation time) - but does splitting them actually reduce disk usage? I guess the jobs are more split out, so we reduce contention for a single machine.

Shower thought tier analysis:
It seems like our module test suite spends a ton of time calling dagger init in each test, downloading the same dependencies and building the same empty initial module over and over again. I wonder if we could share that across tests so they all share a common starting point, one per SDK?
Either that or we need to somehow magically speed up dagger init - something has to give.
Maybe our tests could even share the same client/session?
There's always a risk of getting further from reality as we optimize the tests, but the other side of that coin is whether our tests are realistic as-is, and if we're bending over backwards to support unrealistic scenarios. Not making a call there one way or another, just raising the point, since our test suite growth strikes me as more ad hoc than planned/designed. In production for example it seems more common to have a single global client.
I do agree that I'd rather try optimizations like above than divvy up the suite.

First off, the metrics are super useful @gerhard, thank you! We've definitely had vague awareness that disk was something of a bottleneck previously, but I'm still surprised the extent to which it is based on this. Extremely useful to know.
That being said, I agree with the sentiment that we should understand the performance problems more deeply before refactoring the tests. If we drill down the metrics to a finer grain and use that to fix the performance problems then we are benefitting both users and ourselves rather than just updating our own tests.
Specifically, I think we need to at least know the answer to "what processes are consuming the disk bandwidth" based on actual measurements (though the finer grain the better, e.g. what a specific process is doing that is consuming bandwidth).
100% agree that the SDKs and reading/writing deps is a top suspect, but IME it's very much worth confirming with data since you will 99.9% of the time discover at least one surprising performance bottleneck once you measure it.

And if that is the case, we should see what we can do to cache these better. If there's nothing that can be done (whether fundamentally or just on a practical level), then yeah we can see if just refactoring the tests will avoid it for now.

@gerhard I know you've done trials with parca and such, do you think those or anything similar would be able to help get deeper metrics on the source of the disk bandwidth hogs?

I agree with the "keep investigating" part, and I think that we should release our main branch from the grip of these flakes. This is the current state:

The context is more nuanced, and while one new genuine issue is responsible for nearly half of all the failures mentioned above, the other half is the following tests in TestModule:

TestPythonProjectLayout
TestGoInit
TestGit

If we want to keep the test suite as is, I think that we should do the following:

Delete all tests that flake. Keep deleting until there are no more flakes left.
Keep all tests as they are in a separate branch, and block at least 1h sync time every day until we get to the bottom of this. I would go as far as pulling the Andon cord and not doing anything else until this is fixed. This can mean rewriting the tests, deleting them, or something else. We should give ourselves a timebox (1 week?) and force a conclusion at the end of that period.

In the spirit of moving this forward, I intend to:

[ ] Create a special tag in our repository
[ ] Submit the first PR which deletes the 3 flakes in TestModule
[ ] Book 1h sync time in our calendars as of next week to dig into this as small group

How does the above sound?

These are also potentially legitimate issues:

TestPythonProjectLayout - https://github.com/dagger/dagger/issues/7662
TestGoInit - https://github.com/dagger/dagger/issues/8031
TestGit - not seen this one, do you have a link?

The first two seem potentially related - files are getting cached incorrectly, it was expected that this was fixed as part of https://github.com/dagger/dagger/issues/7900, but it seems like it still continues to happen.
The problem with removing these test is - there's nothing in these tests that we can identify that specifically causes the flake. Potentially, if we remove these tests today, maybe some new tests we add tomorrow will trigger the same behavior? To clarify - the tests are correct - something in the engine is wrong. I don't think removing the tests is the right call. TestGoInit specifically, we've relied on to make quite a few recent changes, for example #8095. Without those tests, we could have caused huge breakage.
Potentially, we could have a retry loop for these known flaky tests? That way we can continue to run them, but we give them an amount of tolerance to pass? That's still hacky and annoying, but the tests do test for valuable behavior.

block at least 1h sync time every day

I don't think there's a time that works consistently for everyone - without asking folks to wake up early or stay late consistently, which I'm definitely not personally able to commit to. I'm okay with timeboxing time to try investigating, but I don't think having everyone in a call together is feasible (or even necessarily productive). Additionally, we currently have two of the core team currently on leave - I don't think we can do anything this extreme until they are back.

My suggestion is to loop any known flaking tests, with a delay in between attempts. This is a quick fix that should hopefully remove the flakes without removing any test coverage.

Also, on the topic of what to do to get all these flakes under control:

I 100% agree with @jedevc that those test failures may easily be legit bugs rather than test-only problems. Generally speaking, I think we should assume a flaky test indicates a genuine bug until proven otherwise; it quite often has turned out to be the case in the past and it would be sad to miss a bug because we just refactored a test to avoid it.
I also totally agree with @gerhard that we need to do something here. I think 2 weeks ago we were on a slow upward trend but we keep regressing every time we make progress. It's starting to feel like a rut, which is not good.

I don't have any specific suggestions yet other than just getting more hands on deck to

deep dive flakes to root cause them
work on the general tooling around debugging + performance analysis

@sipsma fixing that job failure was the first thing on my list today.
What makes the test flakes interesting is that I did not hit a single one in the 30-50 runs over the last few days. I am however able to get the test all test suite to fail consistently in this scenario: https://github.com/dagger/dagger/issues/8184#issuecomment-2299484907
I am still trying to narrow down the specific combination of factors which makes tests more likely to fail. While I have some clues, I will be continuing with capturing context in https://github.com/dagger/dagger/issues/8184 so that anyone is able to reproduce the same state, and then have it "frozen" so that we can continue digging deeper.

This now looks good to me, including the final log artefacts that we generate:

Worth noting:

test-modules succeeded in 13m 10s (`12m
test-everything-else succeeded in 6m 47s
test succeeded in 16m 22s (it includes both test-modules & test-everything-else)
testdev succeeded in 15m 5s

This is what the CI runner resources looked like while the above were running:
test

test-modules

test-everything-else

testdev

I am curious to see how the various test suites behave after a few runs.

FWIW @vito @crjm, after 5m, I gave up on waiting for https://dagger.cloud/dagger/traces/9befdc22e1c85d1ebbbb9003f2ba8abd to load. I am using a public WiFi which maxes out at ~500KB/s. This is what that looked like:
https://github.com/user-attachments/assets/b3e01997-b124-4935-ba5d-604844077b8c
As a suggestion on how to make this experience better, it would have helped to have the "outer layer" load within a minute or two the most. If I clicked around and needed more data, grabbing that in follow-up requests would have been ideal. The thing which I missed the most was a loading progress indicator which would have told me how much data was downloaded, and how much is left to download. OK, it finished loading by the time I typed all of this up.


entities

fixed issue:(entities that are part of stories are lost when uploading training files with stories having entities)

merging the changes


IOUIssuerWeakTSH [DO NOT MERGE]

#262
#297

Affected to

CheckCash
EscrowCancel
EscrowCreate
EscrowFinish
OfferCreate
Payment
PaymentChannelClaim
PaymentChannelCreate
PaymentChannelFund
URITokenBuy
Remit

High Level Overview of Change

Context of Change

Type of Change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (non-breaking change that only restructures code)
[ ] Tests (you added tests for code that already exists, or your new feature included in this PR)
[ ] Documentation update
[ ] Chore (no impact to binary, e.g. .gitignore, formatting, dropping support for older tooling)
[ ] Release

API Impact

[ ] Public API: New feature (new methods and/or new fields)
[ ] Public API: Breaking change (in general, breaking changes should only impact the next api_version)
[ ] libxrpl change (any change that may affect libxrpl or dependents of libxrpl)
[ ] Peer protocol change (must be backward compatible or bump the peer protocol version)

Need to resolve WeakTSH handling issue when transaction results in deletion of ledger object
https://github.com/Xahau/xahaud/issues/137


[v12] Oracle - remove redundent AcceptList

Note to myself for Thrus:

rename to Whitelist?

From my review - AcceptList seems redundant, and PriceTrackingList does exactly the same thing.
Question:
Why do AcceptList and PriceTrackingList keys both point to DefaultAcceptList for genesis.
Is there a reason this is redundant?
Would these 2 ever diverge?
Why would we accept a denom which we don't want to track?
in which case would accepted denoms not be tracked?

@Reecepbcups accept list is the list of tokens that have oracle in Juno. price_tracking_list is the list of tokens with price data history and TWAP. It's different.

@vuong177 when would we accept a token in the oracle which is not tracked by TWAP?

TWAP requires saving the price history in the chain state; we need to create a list of tracked tokens.

The list of tracked tokens IS what we want to have in the TWAP though yes? In which case AcceptList is redunant.
What this PR does is merges the 2, so any we accept ALSO are the TWAP. So JUNO, ATOM, and OSMO are all accepted & TWAP. If we remove OSMO, then it no longer does TWAP either

I am honestly unsure.
I think that what @vuong177 is saying is that when we add a token to twap, it will be saved in state, not HistoricalData.
Could be wrong, so I will wait to approve.

why we need to combine 2 seperate things to one ? @Reecepbcups

More clearly if we use 2 seperate params. And because the price data save in state, we should limit the number of tracking history token. Also when have stable coin like USDT or USDC, save history price of those token is unnecessary.

We can change multiple parameters in one prop, right? If those parameters for different use cases we should separate it.

Alright sounds good, will keep it how it is then thx

seemsAccpectList and PriceTrackingList  name make confuse, we should have better variable names.


Gift Entry: Centralize State Management

Critical Changes
Changes
Issues Closed
Community Ideas Delivered
New Metadata
Deleted Metadata

@kenlewis-sfdo I think it will be important to be clear regarding the purpose for each of the state management functions in geFormRenderer. Can we add that standard comment blocks for those functions that interact in any way with the form state? Doesn't have to be done immediately if the purpose of those functions will continue to significantly change, but I think it would be helpful to have some detailed descriptions moving forward.


TODO: Update employee role

When I choose to update an employee role, I am prompted to select an employee to update their new role, which is updated in the database.

Close #29


TODO: add external services we use in dandi-archive gui

@magland could you give target urls for yours as well?

@magland could you give target urls for yours as well?

@yarikoptic How would I do that? This is the url that one could verify is working: https://neurosift.app/?p=/dandi

easy -- add anything you see good fit to https://github.com/dandi/uptime/blob/master/.upptimerc.yml#L5


conditions changed to load public paths initially Fixes #756

Path screen does not load after this commit.

Only the message loading your paths is displayed.


command 'python.setInterpreter' not found

Cannot change python interpreter. Has error: command 'python.setInterpreter' not found

@binfeng seems to be the same issue as this one https://github.com/cdr/code-server/issues/1897

Closing as a duplicate of #1897. I've also seen this on the latest version of the extension but I haven't had a chance to debug it yet.


build(matrix): use fluid-tsc

@anthony-murphy, @Abe27342 - A proper ESM package requires includes file extensions when importing files.  These were added automatically via 'ts2esm'.

matrix source file changes look good to me. If you want to add more context on intent of this change (I assume some infra normalization as part of our esm effort, but I'm not sure right now what our end goal is) I can review the rest as well.


Create schedule spine incorporating timezones and daylight time

Are you a current Fivetran customer?

fivetran made PR
What change(s) does this PR introduce?

adjusts circleci testing to be a bit more thorough
creates schedule spine model that incorporates timezones and daylight time stuff. down the line, when calculcating ticket metrics, we will determine which schedule to use based on the schedule_id it is associated with and what schedule (ie PT vs PST) is active when the ticket is active (wondering how to define this though, like do we pin the ticket on its creation date? what if a ticket is created a day before Daylight Savings starts or ends?)
incorporates the schedule spine into the business hours models
regenerate docs

Does this PR introduce a breaking change?

[x] Yes (please provide breaking change details below.)
[ ] No  (please provide explanation how the change is non breaking below.)

Is this PR in response to a previously created Issue

[x] Yes, Issue https://github.com/fivetran/dbt_zendesk/issues/62
[ ] No

How did you test the PR changes?

[ ] CircleCi
[ ] Other (please provide additional testing details below)
testing locally

Select which warehouse(s) were used to test the PR

[x] BigQuery
[ ] Redshift
[ ] Snowflake
[ ] Postgres
[ ] Databricks
[ ] Other (provide details below)

Provide an emoji that best describes your current mood

🤌
Feedback
We are so excited you decided to contribute to the Fivetran community dbt package! We continue to work to improve the packages and would greatly appreciate your feedback on our existing dbt packages or what you'd like to see next.

flagging that i didn't add changelog stuff since that appears to the be in the release branch already? or i will add stuff after this PR is merged there...

reminder to change packages.yml


can't perform image preprocessing in 3d convolutional neural network

Input to .fit() should have rank 4

I can't understand your question.

I can't understand your question.

@Gaurav7888 In order to expedite the trouble-shooting process, please provide a code snippet to reproduce the issue reported here. Thanks!

Closing this issue due to lack of recent activity & assuming this issue as resolved .Please feel free to reopen if you still have concern.Thanks!


Subtitles

How can I work with subtitles？
It will not automatically associate

try
mpv.command("sub-add", "/path/to/sub.srt");
mpv.property("sid", 1);


Four small CI fixes:

'podman system info' (in logcollector): has been silently
failing in special_testing_rootless, with:
logcollector.sh: line 16: podman: command not found
Use ./bin/podman instead of just podman; this is probably
the right thing to do in the general case anyway

logformatter: highlight 'panic:', seen in bindings test:
https://storage.googleapis.com/cirrus-ci-5385732420009984-fcae48/artifacts/containers/libpod/6693715108429824/html/integration_test.log.html

logformatter: handle Unicode bullet in front of 'Running',
seen in bindings test.

logformatter: turn down contrast on BATS 'ok' results,
for legibility

Signed-off-by: Ed Santiago<EMAIL_ADDRESS>

Will need to rebase once #5514 merges

LGTM once CI is once again ready to merge things

@edsantiago Needs a rebase.

Confirmed:

podman_system_info: working in rootless (local and remote); also in all other CI results that I checked.
bullet-in-front-of-Running filter: working.
BATS test contrast: working
lower-case 'panic': cannot test, because bindings test didn't flake this time.

@rhatdan I rebased an hour ago against master with the #5514 systemd CI fix. I see no commits since then. Current failures are the usual conmon flake; I've restarted both.

/approve
/lgtm


[Feature Request] Slot sidebar in date-picker with type daterange

Existing Component
Yes
Component Name
date-picker
Description
How can I customize the sidebar of the date-picker component.
I see a slot name sidebar but it doesn't seem to be working.
I need to active the selected sidebar and be able to add a custom icon

I have same issue. Why this not working?

I have same issue. Why this not working?

@webpig
I found it in the mountPicker function. $slots is not added to this.picker so it cannot run when using slots.
To solve it you can use the patch-package library to fix it or fork the personal repo to fix it.
The picture above is me fixing it with patch-package

patch-package library

yeah, thanks, I will try


Improve vector-dce compile time.

The compile time for vector dce can be pretty long.  The first problem
is that we are passing a large map by value to a lambda.  That was
intended to be by reference.
The second change is to implement the map using a vector of BitVectors
instead of an std::unordered_map.  The std::unordered_map implementation
can be slow, and as we saw with ADCE, the vector is not so sparse that
the vector becomes slow.
Contributes to https://github.com/KhronosGroup/SPIRV-Tools/issues/1328.

With all the map<uint32_t, T> performance issues lately wouldn't it be time to create a proper data structure for it?
A vector sized to maxid for when it's small and dense and a hybrid vector<T> + map<uint32_t, T> or sorted vector<pair<uint32_t, T>>  for when it's large&sparse.

A vector sized to maxid for when it's small and dense and a hybrid vector + map<uint32_t, T> or sorted vector<pair<uint32_t, T>> for when it's large&sparse.

You'd have to have a way to indicate an empty slot, which is at least one bit for each entry.
We have a hybrid data structure for enum sets optimized for the case where the Ids are less than 63; it was really made for capability sets.  See source/enum_set.h

You'd have to have a way to indicate an empty slot, which is at least one bit for each entry.

We have a hybrid data structure for enum sets optimized for the case where the Ids are less than 63; it was really made for capability sets. See source/enum_set.h

Depends on whether T is nullable or not and if you want nulls as values.
I can think of several ways to implement this, however the optimal one depends on access patterns and such, so without examining those I shouldn't say too much. However it is starting to become clear that std::map is not the solution and std::vector directly indexed by the ID is vulnerable to pathological and malicious cases.

I was getting some odd results.  As I look at this more, the gain I thought I had is not there.  I'll close this without merging.  I don't think it will make a difference.


Minor English Language Fix

Grammatically it would be "Error caught" but in this context "Error" is more appropriate :)

Hi thanks for noticing! will create an upgrade for this package :)


Alert component

I'll get this one.

@vini23hot That's awesome, just remember to see the new version of alert. If you want, you could develop both versions.


Generate smooth sky from an original image with unsmooth sky

I have an original image shown as follows. Due to the moon, the lower half of the sky is brighter than the upper half. The part of the sky around the moon is particularly bright.

When I use the "Times" filter in the Vinci app, the output shows an uneven sky as follows, which reflects the unsmooth sky in the original image.

However, when I use a different filter, i.e., "Harvest" filter, the output shows an amazing smooth sky as follows.

I also tried to use texture_nets to stylize the original image using different style images, the output always had the uneven sky like the one with the "Times" filter. I have tried to use different combinations of layers for styles and contents, changed the style sizes and image sizes, no luck so far.
Any one has idea how to generate a smooth sky like the one produced by the "Harvest" filter? Thanks.

Hi, did you try eval  for instance norm?

@DmitryUlyanov
Thanks for the response! Could you provide more details? When you say "try eval for instance norm", what do you exactly mean?
Many thanks.

One possibility is to modify eval function https://github.com/DmitryUlyanov/texture_nets/blob/master/InstanceNormalization.lua#L94 such that batchnorm is set to eval mode.
For a dirty try just add self.bn.evaluate()
in https://github.com/DmitryUlyanov/texture_nets/blob/master/InstanceNormalization.lua#L48
Using this eval mode you can get more flat images, as far as I know Vinci use it for some of their filters.

@DmitryUlyanov
Thanks a lot for the quick response. I will give it a try.

@DmitryUlyanov
I added self.bn:evaluate() to Line 48 in the InstanceNormalization.lua file. Then I used the following image as the style image.

Followings are the parameters for training:
-style_size 600 -image_size 512  -style_weights 10 -content_weights 1 -num_iterations 10000 -batch_size 4 -save_every 1000 -model johnson -style_layers relu1_2,relu2_2,relu3_2,relu4_2 -content_layers relu4_2 -learning_rate 1e-3
The stylized output is as follows.

Do you have suggestions for (1) getting rid of the white strips on the sky, (2) making it colorful? Thanks.

Hi, being a hack it does not work for every style image, but helps sometimes.


Fix various issues caused by invalid parameter assumptions

Reverts #2354
Fixes #2326
Fixes #2816
Fixes #1413
Fixes #1429
Closes #2000
@F43nd1r Probably takes a few iterations to get everything to compile / tests to pass, but this is my first sketch of the patch.

looks good, if everything runs through. But why are tests running four times on this now?

I think because I also push to the querydsl remote so I get both the push and pr builds, for both Java 8 and 11.
Its unrelated to the change.

@F43nd1r it has proven surprisingly difficult to implement this properly.
HQL historically had two types of parameters: legacy positional parameters (?) and named parameters (:test). JPA currently describes to types of parameters implementors need to support as well: indexed parameters (?1, ?2) and named parameters (:test). Hibernate recently dropped support for legacy positional parameters in favour of indexed parameters. Indexed parameters and named parameters cannot be mixed within the same query.
QueryDSL has two types of parameters: named parameters and anonymous parameters. While constants are usually serialized as parameters as well (unless literal rendering is enabled, which is currently only supported for querydsl-sql).
All constants for which a parameter is generated are stored with a unique key value in constantToLabel. While you would expect this label to be used for name of a named parameter, this is not the case. In JPA we always use indexed parameters. And the same applies to querydsl-sql, where  constantToLabel is unused and a list constants is maintained instead. In both cases, even when named parameters are explicitly provided in the query (through new Param(Object.class, "name")), this name is lost in the final query. While it would be nice to copy these explicitly provided parameter names to the final query, this would require us to put generated parameter names for the indexed parameter names in the query as indexed and named parameters usually cannot be mixed.
The entire setup in constantToLabel is solely used for two purposes:

"attribute" names for the CollQuerySerializer. CollQuerySerializer executes queries in-memory and therefore compiles some Java code and thus needs "variables" to store the constants in.
parameter names for JDOQLSerializer, as JDO does only seem to support named parameters and not indexed parameter, and thus a name needs to be generated if one is missing.

IMO it does not make sense to deal with constantToLabel in SerializerBase if its only applicable to two very specific dialects and only causes trouble for the other dialects.
I am currently trying to set up a new structure for SerializerBase that is both more easily extendable but also doesn't break any of the current dialects.

#2326 is tested simply by testing the examples / tests against Hibernate 5.3.
#2816 is caused by #1429
#1413 is caused by #1429
#1429 is  tested by the changes in the asserted queries in the JPA integration

So no new tests are required beyond the altered tests in this PR.


Add server connections metric to http and otel sources

Description
The PR adds a metric to gauge number of server connections in http and otel source plugins. This is basically the same armeria.server.connections system metric we have today but renamed and tied to the sources.
Detailed changes are:

Adds pluginMetrics.gauge(SERVER_CONNECTIONS, server, Server::numConnections); to http and otel sources
Adds unit tests
Optimizes imports

Issues Resolved
N/A
Check List

[x] New functionality includes testing.
[ ] New functionality has a documentation issue. Please link to it in this PR.

[ ] New functionality has javadoc added

[x] Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Also armeria.server.connections is a single metric for all sources. So this change will allow us to correctly tell the difference between connections to OTel Trace versus OTel Logs for example.


Don't work when MIDI Device re-plug

This is a great project, I can run it and all the functions are normal
When the MIDI Device is reinserted, it cannot be automatically recognized and needs to be restarted to function properly again
I see that the new device is defined in the function in usbhelp.hpp as void _cliend_event_callback (const usbhost_cliend_event_msg_t * event_msg, void * arg)
I guess this function was not called during the second insertion But my ability is limited and I can't change this code well Who can help fix this issue of reinsertion and rediscovery?
Thank you very much

Looks like there needs to be some extra work done after the device is unplugged. According to here in the Clients & Class driver -> lifecycle section.
I managed to get the enumeration to happen on replugging, but in the case of the MIDI example you have to re-establish the endpoints as well.

I made a hackjob fix here
The original does not do any cleanup when the device is unplugged - either in the sketch or the ESP USB Host library. I added a callback so usbhelp.hpp can call a function in the main sketch when the device is "gone".
I'm sure it is pretty janky, would love to hear some improvements. I know next to nothing about USB. Cheers.

~~ I spent a whole day looking for this problem and finally found the reason.

use usb_host_interface_release,usb_host_device_close can fix it
example code usbhhelp.hpp
case USB_HOST_CLIENT_EVENT_DEV_GONE:
    ESP_LOGI("", "Device Gone handle: %x", event_msg->dev_gone.dev_hdl);
    err = usb_host_interface_release(Client_Handle, event_msg->dev_gone.dev_hdl, 0);
    if (err != ESP_OK)
      ESP_LOGI("", "usb_host_interface_release: %x", err);
    err = usb_host_device_close(Client_Handle, event_msg->dev_gone.dev_hdl);
    if (err != ESP_OK)
      ESP_LOGI("", "usb_host_device_close: %x", err);
    break;

case USB_HOST_CLIENT_EVENT_DEV_GONE:
ESP_LOGI("", "Device Gone handle: %x", event_msg->dev_gone.dev_hdl);
err = usb_host_interface_release(Client_Handle, event_msg->dev_gone.dev_hdl, 0);
if (err != ESP_OK)
ESP_LOGI("", "usb_host_interface_release: %x", err);
err = usb_host_device_close(Client_Handle, event_msg->dev_gone.dev_hdl);
if (err != ESP_OK)
ESP_LOGI("", "usb_host_device_close: %x", err);
break;

Can explain how? I tried it and I know of a skilled embedded engineer that also tried it.
When I flashed an ESP32-S3 dev kit clone with that in verbose mode, it simply flashes it and the transmit LED turns on, but no serial monitor messages sadly.
Recommended solutions? Thanks in advance!

@fastfourier666 You did a great job thank you for sharing !


Avatar out of bounds of circle

A avatar is outside the circle
Example:

Original from react-nice-avatar:

Should be fixed in 1.1.1

Works like a charm now


Render edition version for URN identifiers

Amendment without year has number "1" before version. Edition has a version (ed-2:v1).

Yes we should do this.
RFC 5141 also has version for edition:
   o  Docversion handling:

      urn:iso:std:iso:9999:-1:ed-1:v2:en
      refers to the corrected English version of the 1st edition of ISO
      9999-1

      urn:iso:std:iso:9999:-1:ed-1:v1-amd1:en
      refers to the version comprising the 1st edition of ISO 9999-1,
      incorporating the latest version of Amendment 1, in English

      urn:iso:std:iso:9999:-1:ed-1:v1:en,fr:amd:1:v2:en
      refers to the 2nd version of Amendment 1, in English, which amends
      the 1st version of edition 1 of ISO 9999-1, in English/French
      (bilingual document)

      urn:iso:std:iso:9999:-1:ed-1:v1-amd1.v1:en,fr:amd:2:v2:en
      (isoversion scheme)
      refers to the corrected version of Amendment 2, in English, which
      amends the document comprising the 1st version of edition 1 of ISO
      9999-1 incorporating the 1st version of Amendment 1, in English/
      French (bilingual document)

      urn:iso:std:iso:5817:ed-2:v2:en:cor:1:en
      refers to the 1st version of Technical Corrigendum 1, in English,
      which amends the corrected version of edition 2 of ISO 5817, in
      English

It describes docversion:
   docversion    = "v" (simpleversion / isoversion)

   simpleversion = DIGITS

      <docversion> designates the version number of a document's
      <edition>.  It is altered by correction (corrected version;
      Technical Corrigendum) or amendment (Amendment; Addendum) and is
      distinct from a revision, which changes the edition number.

      In the <simpleversion>, the first version published is 1, and each
      subsequent correction or amendment increases the version number by
      1.

      If no <docversion> is specified, the reference is to the highest
      version number available for the denoted <edition>.

      Current values of <simpleversion>:

         1 - first version published

         2 - corrected version published

   isoversion    = baseversion *includedsuppl

   baseversion   = DIGITS

Originally posted by @ronaldtse in https://github.com/metanorma/pubid-iso/issues/7#issuecomment-1061463317

@ronaldtse could you find any PubID examples with corrected edition?
Like "urn:iso:std:iso:9999:-1:ed-1:v2:en" from examples in RFC 5141
I didn't find any, so maybe they are not exist, only in URN form...

@ronaldtse is this issue about rendering edition as "ed-1"? If yes, we can consider this as closed.
You mentioned "docversion" here, as I understand the format "v{number}", but still doubts what we should consider as "docversion".
Moreover, there are "iteration" with the same format:

iteration     = "v" DIGITS

We don't use "v{number}" for base document URN (as docversion or iteration), only as part of amendment or corrigendum. And I feel we are missing something.
I believe we should apply it at least as an iteration.
What do you think?

@mico actually maybe we should just drop docversion because it is too complicated -- we cannot know this information except from ISO's internal database, e.g. what document has been "corrected" vs what has not been.
We should just deal with iteration. But that should be a separate ticket.


Add keybindings for next and previous cell are that are supported in notebooks "insert" mode

The default keybindings for going the to the next and previous  cell are not working for me (ctrl + alt + ]/[). I can still use j/k in command mode, but I would like to be able to use these keybinding when in a notebooks "insert mode". I tried rebinding them but that doesn't work either. Are these known to be broken or is there anything I can do to troubleshoot my install? I tried disabling other extensions I use related to keybinding (neovim) and the behavior was the same.
Environment data

VS Code version: 1.67
Jupyter Extension version (available under the Extensions sidebar): v2022.4.1011282140
Python Extension version (available under the Extensions sidebar): v2022.6.0
OS (Windows | Mac | Linux distro) and version: PopOS 21.10
Python and/or Anaconda version: 3.9
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): conda
Jupyter server running: Local | Remote | local

Expected behaviour
Keyboard shortcut works
Actual behaviour
It doesn't work, nothing happens.
Steps to reproduce:
Being in a jupyter notebook cell in insert mode and pressing the shortcut
Logs
The output pane is empty

Thanks for the issue. I see the confusion. Those commands are not enabled in a notebook. They're for the interactive window
We should probably name them something different so they don't look like they work in a notebook.
Notebooks require you to leave 'insert' mode (hit ESC key) to move to the next cell. Otherwise the commands enabled are related to a python file.

Ah thanks for the explanation. It would be great if it was possible define a keybinding for moving between cells without entering command mode in notebooks, e.g. ctrl + j/k from insert mode. Is there "when" context I could define manually for this, or is it something that would need to be added in an update?

It would have to be added in an update. The commands you referenced move within a text document and wouldn't apply to a notebook.

Thanks, I updated the title to indicate that this is a feature request for adding that behavior.

I know it's not the same thing, but if you're in insert mode and you arrow down through the code, it will go to the next cell. Hitting page down will jump to the end of a cell and arrow down moves to the next cell

Thanks! I did notice that, but would like a binding for moving between cells directly from insert mode (I currently use this in JupyterLab via the vim addon and find it effective for quick navigation).

Thank you for filing this issue, given the fact that we haven't had sufficient upvotes on this issue I'm closing this as not planned.


Parallelize Error Correction Code

Now that I learned concurrent execution to speed up a brute forcing BIP85 child fingerprints. I can apply it to my naive error correction as well.
Pool.map() will be the tool since the order doesn't matter.
There were some 5+ deletion or 1 deletion double substitution/insertion corrections that were possible to make but borderline too slow to.
It's likely these will be fast enough to include now.

This is about to be worked on as it is part of the Codex32 reference implementation and bails-wallet update for Bails.


Invert value of fullscreenchanged flag

Purpose
Fixes #1 - Flag attached to the fullscreenchanged event does not represent the state of the screen
Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type
What kind of change does this Pull Request introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test
Add the control and listen to the event. Verify that the boolean flag represents the state of the screen

@microsoftopensource @rbrundritt Did you have by any chance any time to look at this ?


Resolve TypeError when using EpicsSignalBase.set_defaults()

EpicsSignal with string=True kwarg should result in dtype='string' from .describe() method, to fix #944.

Marking this as Do not merge until bug fix implemented.

Good so far, Unit test code ran and py3.8 (at least) showed the two expected test failures:

FAILED ophyd/tests/test_issue944.py::test_with_all_defaults_as_string[pyepics]
FAILED ophyd/tests/test_issue944.py::test_with_all_defaults_auto_monitor[pyepics]

Encouraged that the Py3.8 tests now all pass:
ophyd/tests/test_issue944.py::test_local_without_defaults_no_string[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_without_defaults_no_string[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_without_defaults_as_string[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_no_string[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_as_string[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_auto_monitor[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_connection_timeout[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_timeout[pyepics] PASSED [ 86%]
ophyd/tests/test_issue944.py::test_with_all_defaults_write_timeout[pyepics] PASSED [ 86%]

Bump.  This is ready for review.  We tested this branch yesterday with success at the APS USAXS instrument.

Bump.  Again.

Sorry for slowness on our end, @prjemian. Thanks, @mrakitin.

This should have been flagged an as API change as the type going into callbacks has changed.  Anything that was subscribed to to such a PV is now likely broken.

This should have been flagged an as API change as the type going into callbacks has changed.  Anything that was subscribed to to such a PV is now likely broken.


Populating demo dataset in dev sets base URL to demo.inventree.org

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
Server setting "Base URL" is set to "https://demo.inventree.org" when populating DB with demo dataset.
While not surprising given it's after all the demo dataset, this is not obvious at a glance, and it produces some problematic unintentional behaviour on occasion. Any URL generated via construct_absolute_url will point to the demo site.
If you don't pay attention, then you'll wind up on the demo after clicking the link to a server error report. As the datasets are the same, and if you've logged into the demo recently, you might miss completely that you just moved to the online site from localhost.
Steps to Reproduce

Setup a docker dev server
Install demo dataset on dev server using docker compose run inventree-dev-server invoke setup-test
Base URL in settings will now be "https://demo.inventree.org"

Expected behaviour
Populating dev server with demo data should either

Not set base URL to demo.inventree.org
Warn users that base URL is now set to demo site
Other solution that has not occurred to me

Deployment Method

[X] Docker
[ ] Bare metal

Version Information
Version Information:
InvenTree-Version: 0.12.0 dev
Django Version: 3.2.18
Commit Hash: 9198b5239
Commit Date: 2023-04-20
Database: postgresql
Debug-Mode: True
Deployed using Docker: True
Active plugins: [{'name': 'InvenTreeBarcode', 'slug': 'inventreebarcode', 'version': '2.0.0'}, {'name': 'InvenTreeCoreNotificationsPlugin', 'slug': 'inventreecorenotificationsplugin', 'version': '1.0.0'}]
Relevant log output
No response

@LavissaWoW good point, and I still run into this from time to time when running a dev setup locally with the demo dataset.

@LavissaWoW  @matmair I'm wondering what the "cleanest" way to implement this is. Currently the demo dataset is populated with the "demo.inventree.org" base URL which is not great for anyone using the dataset for their own testing.
My thoughts at the moment:

Allow base_url to be overridden by an environment variabl (and in this case, cannot be edited)
Fallback to the configured setting
If no "base_url" configured as part of 1) or 2) use the request URL itself when forming absolute URLs

Any objections to such an approach?

@SchrodingersGat sounds good!

Thanks for the feedback, I'll submit a fix along those lines


Lambda Function Cleanups

Outputs function(ARGS): RET for tostring operations including printTable.

Add E2Lib.NoLambda and E2 binding nofunction() to track a nonexistent function.

(Don't merge yet will also put E2Descriptions for functions since they weren't included)

Actually, should functions be allowed in arrays?

Forgot error throws an uncatchable error so I hope this is okay (it's just a convenience function for E2Lib.Debug.Error.New, not an actual method).

Ok. I'm at my PC. Can we please not make completely different changes to a PR after already getting an accepting review (basically making it pointless?) Either leave it as draft or make another PR.

At this point I'm just leaning toward not allowing functions in @persist. It's pointless trying to accomodate old E2.

Right, my bad.


Question / discussion about the future of Boomerang

Hello,
I'm opening this issue here since this still seems to be the most popular Boomerang repository.
For the past months I have been refactoring/writing tests/fixing bugs in my fork of Boomerang here (Changelog). This is still a work in progress, however I would like to spark a discussion on how to best revive the project.
I would be happy to merge my changes back to this repository; I can make a PR if that is the outcome of this discussion.
What are your opinions on this matter?

Nice list of changes, it would be good to see this revived again

Agreed, it would be awesome if the boomerang was revived.
Question is, what would be the project's direction, since there are a few active decompiler projects now ?
https://github.com/avast-tl/retdec - restricted to a small set of 32 bit architectures.
https://github.com/uxmal/reko

The problem with RetDec is that it suffers from serious memory allocation issues; I was unable to decompile anything serious without it exhausing all of my RAM and swap (>200 GB).
For Reko, it did not even properly decompile most of the x86 samples Boomerang ships with when I tried it; same for SmartDec/Snowman.
My point is that currently no generally available decompiler (except maybe IDA, I don't have access to it, though) I tried, including Boomerang, is issue-free when it comes to automatic decompilation or even human-assisted decompilation (not that I expected no issues when tackling such a hard problem as machine code decompilation).
So Boomerang is not so much behind the times as one would think given there has not been a proper release in more than ten years.
What I am planning to do now (in chronological order):

Fix remaining issues with the SPARC decoder/frontend (I mentioned them in ceeac/boomerang#1)
Fix any remaining small issues that creep up
Release 0.4.0
Finish the Capstone x86 decoder (in the capstone branch) and replace the other decoders by Capstone-based decoders
Replace the old parsers. There is already an implementation for an SSL parser based on flexc++/bisonc++ in the parsers branch, but I'm likely going to abandon it, since it does not work neither with clang nor with MSVC. I'm not even sure whether it works with C++17, either.
Do another round of bug fixing/cleanup
Release 0.5.0

After that, I haven't really decided what to do yet. However, those items are high on my eternal to-do list:

hot-save/hot-reload (save/reload while the decompilation is running). This might even be in a format that other decompilers can understand; I haven't yet investigated how feasible this is, though.
Implement a better high level code generator based on the No More Gotos paper
Implement better function detection based on e.g. Nucleus, maybe combined with Function Interface Analysis
Refactor SSL IR into something that does not need any hard-coded decoder hacks e.g. for call or jump instructions.
Proper multicore support
C++ decompilation, including RTTI, vtables etc.

Hopefully this cleared up some of your questions. :)

This looks like a big bag of goodies for all of us,
As You've probably noticed, I have moved this repository to BoomerangDecompiler 'organization', I'll add You to it, feel free to merge your changes into it as well :)

Give me a holler when you want to discuss file formats for decompiler interoperability.

Finally! Boomerang definitely it's own organization.

@uxmal Sure.
@nemerle Thanks. I'll merge my changes now; afterwards I'll go through all the old issues and close them if they don't apply any more.

I have now pushed my changes and finished updating all the issues.
@nemerle Could you please update the default branch to develop so the changes are more widely visible?

@ceeac done :)


Update python version in setup.py

Updated template from @forsyth2: This is just an extension of #620 -- see that PR for description.

@forsyth2 Sorry about that, I am honestly not sure how I managed to miss that file! I did a search for any remaining python versions and didn't find anything else, so hopefully that's the last of them.

@altheaden no problem, I also missed until immediately after merging #620. Looks like the checks are passing for this, so I'll merge


Don't use AlignedCharArray

I'm about to remove it in https://reviews.llvm.org/D65249

Let's just take this on master. It doesn't depend on anything in upstream LLVM, and we can run tests properly there. (Unfortunately AFAIK the master-next tests are still busted.)

OK, doing so here: #26351
I tried to change the target branch in GitHub, but that makes a mess and git 🤷♂ easier to create a new PR.


sfdx force:org:create -a SO_ALIAS -f config\snapshot.json  returns error C-1033

Summary
sfdx force:org:create -a SO_ALIAS -f config\snapshot.json  returns error C-1033
Last week it was working without any problem. The snapshot we are using is up and running with status Active.
Steps To Reproduce:
run sfdx force:org:create -a SO_ALIAS -f config\snapshot.json to create a scratch from a snapshot.
Expected result
It should create the Scratch Org
Actual result
Error C-1033
Additional information
Error message

Snapshots list

snapshot.json file

SFDX CLI Version(to find the version of the CLI engine run sfdx --version):

OS and version:

@AllanOricil was the snapshot created from a Scratch Org in Summer '20? On Sunday new Salesforce major release went live, you should recreate your snapshot.

@AllanOricil was the snapshot created from a Scratch Org in Summer '20? On Sunday new Salesforce major release went live, you should recreate your snapshot.

Thanks @maaaaarco

Correct, org snapshots must be recreated after every SFDC major release.  Thanks @maaaaarco


⚠ Spryr has degraded performance

In 88b8039, Spryr (https://spryr.com) experienced degraded performance:

HTTP code: 200
Response time: 5137 ms

Resolved: Spryr performance has improved in 8092c0d after 10 minutes.


Skip calling sender.Recover() for some errors

For transient errors where we know the connection is good, don't
Recover() the connection as that doesn't really help.
Fix or Enhancement?

[ ] All tests passed
[ ] Add change to changelog.md

Environment

OS: Write here
Go version: Write here

Fixes https://github.com/Azure/azure-event-hubs-go/issues/217

@richardpark-msft these were the two obvious candidates where recovering the connection could potentially make things worse.  Any other errors we should add to the list?  Looking at https://github.com/Azure/azure-sdk-for-net/blob/4162f6fa2445b2127468b9cfd080f01c9da88eba/sdk/servicebus/Azure.Messaging.ServiceBus/src/Amqp/AmqpClientConstants.cs#L45-L65, I wonder if we should skip recovering on all of these errors?  Could that be as simple as looking for the vendor prefix com.microsoft:?

/azp run


Improve list-of-dicts implementation and add docs

Codecov Report
Attention: Patch coverage is 98.11321% with 1 line in your changes missing coverage. Please review.

Project coverage is 91.20%. Comparing base (d8922e0) to head (6ebaa32).

Files with missing lines
Patch %
Lines

tests/list_of_dicts/lod_fixtures.py
96.00%
1 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #511      +/-   ##
===========================================
+ Coverage    91.17%   91.20%   +0.02%
===========================================
  Files          147      147
  Lines        10606    10651      +45
  Branches       506      506
===========================================
+ Hits          9670     9714      +44
- Misses         773      774       +1
  Partials       163      163

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


Ecologics Compat

Hello!  Just incase it's not on your radar, I figured I should report that Ecologics has merged Better Azalea's two woods, and added a new one; Walnut.  Love the mod,

Got it, thank you! I will take that in mind. I will get around to updating the mod to improve support for Ecologics!

this can be closed, newest update sorted things out.


Improve performance of concatenation

Users observed a 10% diff.  I've pinged you on the issue.  Not a big deal, this shouldn't block a release, but it might not be hard to address either.

Interesting error to get here:
 =========================== short test summary info ===========================
FAILED dask_snowflake/tests/test_core.py::test_result_batching - pyarrow.lib.ArrowInvalid: Schema at index 1 was different:
NAME: string
ID: int64
X: double
Y: double
vs
NAME: string
ID: int16
X: double
Y: double

Yup.  I saw.    I haven't investigated nor do I plan to in the near future.
If anyone else wants to pick this up and carry it over the line that would
be grand. My guess is that this means looking more deeply at the dtypes
that everything is returning and how the different functions handle them,
determining what sensible behavior is, and then seeing if what we're doing
is sensible.
On Tue, Nov 8, 2022 at 12:53 PM Paul Hobson @.***>
wrote:

Interesting error to get here:
=========================== short test summary info ===========================
FAILED dask_snowflake/tests/test_core.py::test_result_batching - pyarrow.lib.ArrowInvalid: Schema at index 1 was different:
NAME: string
ID: int64
X: double
Y: double
vs
NAME: string
ID: int16
X: double
Y: double
—
Reply to this email directly, view it on GitHub
https://github.com/coiled/dask-snowflake/pull/35#issuecomment-1307682143,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACKZTGNATG7ZD3EU5XAJTLWHKOSVANCNFSM6AAAAAARZJIZIM
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
https://coiled.io
Matthew Rocklin CEO

Thanks for digging in @phobson. It's not clear to me why we would be getting different schemas for table batches. Possibly a snowflake bug (at least naively I would expect to get a consistent schema when breaking a single table up into batches). @phobson are you aware of anything we can do on the snowflake side to get (or cast to) a uniform schema? For example, could we get the overall table schema and then convert each result batch to that schema? Note would probably reduce the motivation for adding this optimization in the first place
Also, if you're up for it, would you mind opening up an issue in the snowflake connector issue tracker for this? (if there's not already one open)

My guess is that snowflake is handing us int16s, pyarrow is concatting
those to an int16, but that pandas is more conservative and concats to
int64.
On Tue, Nov 8, 2022 at 1:09 PM James Bourbeau @.***>
wrote:

Thanks for digging in @phobson https://github.com/phobson. It's not
clear to me why we would be getting different schemas for table batches.
Possibly a snowflake bug (at least naively I would expect to get a
consistent schema when breaking a single table up into batches). @phobson
https://github.com/phobson are you aware of anything we can do on the
snowflake side to get (or cast to) a uniform schema? For example, could we
get the overall table schema and then convert each result batch to that
schema? Note would probably reduce the motivation for adding this
optimization in the first place
Also, if you're up for it, would you mind opening up an issue in the
snowflake connector issue tracker for this? (if there's not already one
open)
—
Reply to this email directly, view it on GitHub
https://github.com/coiled/dask-snowflake/pull/35#issuecomment-1307703881,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACKZTESKQKUHEAVEEYDIGDWHKQP7ANCNFSM6AAAAAARZJIZIM
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
https://coiled.io
Matthew Rocklin CEO

I believe the error is coming from the pa.concat_tables(...) call where we attempt to concat pyarrow.Tables that have different schemas -- we error before pandas comes into play. I'm not sure if the schema mismatch already exists in the result batches snowflake gives us, or if it comes up when we convert to pyarrow.Tables. @phobson could you insert breakpoint() and see what the earliest point is that we have a mismatch?

@jrbourbeau it looks like the second through _N_th partitions are the offending ones.
Using test ddf from the test suite, I see:
all(p["ID"].dtype == "int64" for p in ddf.partitions)  # True

# but but but....

from dask_snowflake.core import _fetch_query_batches
batches = _fetch_query_batches(f"SELECT * FROM {table}", connection_kwargs, {}).compute()
for n, b in enumerate(batches, 1):
    print(n, b.to_pandas()["ID"].dtype)

# 1 int64
# 2 int16
# 3 int16
# 4 int16
# 5 int16
# 6 int16
# 7 int16
# 8 int16
# 9 int16
# 10 int16
# 11 int16
# 12 int16
# 13 int16
# 14 int16
# 15 int16
# 16 int16
# 17 int16
# 18 int16

We set meta with the first (non-empty) partition. But it's unclear to me why the rest are different:
https://github.com/coiled/dask-snowflake/blob/1a3cc8a191860bdea0a96f029366f7693f2e237c/dask_snowflake/core.py#L279-L281
What's confounding me further is that the raw schema for the ID column in each batch (type: ArrowChunk) is the same:
all(batches[0].schema[1] == b.schema[1] for b in batches) # True

This bafflingly working for me locally now. Kicked to the CI to see what happens


Social Network Component...

What step needed if I want to integrate facebook login or create facebook component for native base?
for simple header,content, footer. is easy. how about more complex layout. Is there any example of complex layout ?

To answer your first question, you can just use the Facebook login for React Native. It will just work fine. Though, it's on our roadmap to provide easier integration with different Social Networks.
If you want to contribute to NativeBase and add Social Network component, you can follow the guidelines from the docs, provide a write-up on how you intend to build that, develop the component using the same pattern as other components, provide documentation and send a pull request.
To answer your second question, for complex layouts, we are going to provide grid layout like Bootstrap, and as a last resort, you can always use React Native's Flex-box implementation.


add Person, Student and Teacher classes

In this project, I have started building my school library app. In this initial step, I implemented the classes to represent students and teachers.

Thanks @Ghiftee :+1:


User group admin / File page

According to documentation User group admin should have no permissions to Files page. Does it mean the User group admin does not see any infomration in the Files page or the User group admin sees all files across the tenant regardless to the ownership of the file (the file is owned by the member of the respective group)?

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

ID: 200a667a-64bf-422d-e110-4798f509fcd0
Version Independent ID: 3966732b-93fc-629b-b138-c096cb77a3cf
Content: Manage admin access to the Cloud App Security portal
Content Source: CloudAppSecurityDocs/manage-admins.md
Service: cloud-app-security
Product: ****
Technology: ****
GitHub Login: @shsagir
Microsoft Alias: shsagir

@martin-rublik Thanks for contacting Microsoft with your question. We are looking into your question and will get back to you soon.
To get assistance or support for your product issue, please open a support ticket.

@martin-rublik  Thanks again for contacting Microsoft about your issue. Having looked into your question, I can confirm that User group admins don't have permissions to see any information in the Files page and that the documentation is correct.
Please let us know if there’s anything more we can do for you. To follow up on this issue, leave us a comment with an @mention, or to get further assistance or support for your product issue, please open a support ticket.


Dark Theme UI: Textarea for editing values of configmaps and secrets unreadable

What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):

Go to "User Preferences", switch to "Dark Theme"

Go to "Resources -> Config Maps" and add a new configmap or edit an existing one.

If there are no configmap keys, click the button "Add Config Map Value"

Result:
The textarea for entering the value of configmap key has dark text on dark background, rendening it completely unreadable. The value is visible only after selecting it with a mouse cursor.
Other details that may be helpful:
The same issue exists when editing Secrets.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): 2.2.6
Installation option (single install/HA): single install

I tried it in a new Firefox profile and it works correctly (light font on dark background). Sorry about the fuss, closing :smile:.


allow insecure-skip-verify for tikv

What happened:
tikv://<ip>:2079/aigc-shared?ca=/home/ca.crt&cert=/home/client.crt&key=/home/client.pem&insecure-skip-verify=1 doesn't work and the errro message is
:TRANSIENT_FAILURE: error:rpc error: code = Unavailable desc = connection error: desc = \"transport: authentication handshake failed: x509: certificate is valid for <IP_ADDRESS>, <IP_ADDRESS>, not <target ip>
What you expected to happen:
allow insecure-skip-verify for tikv
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?
Environment:

JuiceFS version (use juicefs --version) or Hadoop Java SDK version: juicefs version 1.1.0+2023-09-04.08c4ae6
Cloud provider or hardware configuration running JuiceFS: Linux
OS (e.g cat /etc/os-release):
Kernel (e.g. uname -a):
Object storage (cloud provider and region, or self maintained):
Metadata engine info (version, cloud provider managed or self maintained):
Network connectivity (JuiceFS to metadata engine, JuiceFS to object storage):
Others:

Tikv does not support insecure-skip-verify


fix(preview): pass vscode.uri to live preview

Issue:

closes #381

Changes:

convert file path string to vscode.Uri to support changes in live preview
resolves the exception mentioned in https://github.com/microsoft/vscode-livepreview/issues/384

@kaltepeter Thanks for the contribution!
I will take a look at the PR this weekend helpfully.


Add ReturnTypeWillChange attribute to disable deprecation warnings on PHP 8.1

ping @konradoboza Can you take a look at this please?
Thanks!

Thank you @emodric. Released within 0.13.11.

Thanks @konradoboza !


debug transactions with local source code input

Component
Cast
Describe the feature you would like
In dapp tools you can debug transaction even in networks that don't support etherscan, once it's possible to use the deployed code during the debugging session, so it looks like:
seth run-tx --debug 0xc3b63ab002d4a16fe95566a9c0816fab6cf07ac9867bd5ad1319095cef8383a2 --source out/dapp.sol.json

or

seth debug 0x2b9e3363f21f8f9bffc742eba14cfd115e7d1c77ef71ae95deedf5e068fffb36

seth run-tx --help                                                                                09:59:28
Usage: seth run-tx <tx-hash> [<options>]
or:    seth run-tx <tx-info> [<options>]

Run a transaction with hevm in the environment of the given transaction.

Attempts to fetch contract source from etherscan if `ETHERSCAN_API_KEY` is set.

With `--state dir`, load and save state from `dir`
With `--trace`, print the call trace of the transaction.
With `--debug`, execute with hevm's interactive debugger
With `--no-src`, do not attempt to fetch contract source from etherscan
With `--source`, manually supply a solc compiler output json (implies --no-src)    ----------->>>>>>  HERE IS THE FEATURE

Would be amazing to have it in forge:
cast run 0x11310e29abc8ebb4317857d6b8f447280b22fcfff3722f5d6272b60c73613b0c --debug --source out/Contract.sol/Contract.json

Additional context
No response

Rolling this into https://github.com/foundry-rs/foundry/issues/1723

I'd love to have these features as well. Been looking through the documentation can't seem to find a solution to this. Any help guys?

@onbjerg @gakonst Looks like this feature was never implemented and should be reopened for seth feature parity


BugFix sim_cfg.hjson.tpl

Could you address the following two points in order to make CI pass?
Commit 2f61cf55b0786768645677f34c0326aeee8d87f3: The commit author name 'skfwe' contains no space. Use "git config user.name 'Johnny English'" to set your real name, and update the commit with "git rebase -i " and/or "git commit --amend --signoff --reset-author".  See CONTRIBUTING.md for more details.

Commit has no Signed-off-by line. The commit message must contain a Signed-off-by line that matches the commit author name and email, indicating agreement to the Contributor License Agreement. See CONTRIBUTING.md for more details. You can use "git commit --signoff" to ask git to add this line for you.

Thank you for your advice, I should have fixed it now