clpm: 0.3.5 -> 0.3.6

Motivation for this change
Update CLPM.
Things done
Update CLPM to 0.3.6

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

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

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

Result of nixpkgs-review pr 112901 at 47335125 run on x86_64-linux 1

1 package built:

clpm

2 suggestions:

warning: missing-phase-hooks
buildPhase should probably contain runHook preBuild and runHook postBuild.
Near pkgs/development/tools/clpm/default.nix:25:3:
   |
25 |   buildPhase = ''
   |   ^

warning: missing-phase-hooks
installPhase should probably contain runHook preInstall and runHook postInstall.
Near pkgs/development/tools/clpm/default.nix:31:3:
   |
31 |   installPhase = ''
   |   ^

Result of nixpkgs-review pr 112901 at 47335125 run on aarch64-linux 1

1 package built:

clpm

2 suggestions:

warning: missing-phase-hooks
buildPhase should probably contain runHook preBuild and runHook postBuild.
Near pkgs/development/tools/clpm/default.nix:25:3:
   |
25 |   buildPhase = ''
   |   ^

warning: missing-phase-hooks
installPhase should probably contain runHook preInstall and runHook postInstall.
Near pkgs/development/tools/clpm/default.nix:31:3:
   |
31 |   installPhase = ''
   |   ^

@SuperSandro2000 I've added the missing hooks now. Everything seems to be building correctly.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 112901 run on x86_64-darwin 1

1 package failed to build and already failed to build on hydra master:

clpm: log https://termbin.com/6x5l

@SuperSandro2000 I've been looking into this without getting anywhere. Seems like there's something with the symbolic link to openssl that's failing. However I cannot reproduce on my computer running Ubuntu and Nix 2.3.7. Do you see any obvious errors in the derivation? I find it strange that is was working fine with version 0.3.5.

Not failing anymore. No idea what was the problem.


5838 dispute header fixes

https://app.clubhouse.io/augur/story/5838/dispute-view-header
fixed styling issues and removed unneeded divs and consolidated date ops to format-date.

Have more styling based on conversation in ch.
https://app.clubhouse.io/augur/story/5838/dispute-view-header


Documentation on import/export throttling (rate limiting) policies should be revamped to be consistant with the apictl docs

Description:
The documentation on throttle policies in [1] should be completely revamped to match with other apictl documentation. Changes that need to be done are listed as follows.

The main thing is, we should use the naming "Rate Limiting" instead of "throttling" in the topics of this documentation, because during the internal discussions we decided that (If you note the apictl commands you can see we have used "rate-limiting" not "throttling").
The documentation should be moved to [2] under the topic "Manage Environments Using the CLI" because this feature is done mainly for apictl purposes. Hence, the overall documentation should be restructured in a format similar to what have done in [3] by creating a seperate section as "Manage Rate Limiting Policies" under "Manage Environments Using the CLI".

We do not need to mention the Admin REST APIs in the document because we usually have the REST API docs separately here [4]. Mentioning the GET, POST methods and their responses are completely redundant and breaks the consistency of apictl documentation.

[1] https://apim.docs.wso2.com/en/4.2.0/design/rate-limiting/throttle-policy-import-export/
[2] https://apim.docs.wso2.com/en/4.2.0/install-and-setup/setup/api-controller/getting-started-with-wso2-api-controller/
[3] https://apim.docs.wso2.com/en/4.2.0/install-and-setup/setup/api-controller/managing-apis-api-products/managing-apis-and-api-products/
[4] https://apim.docs.wso2.com/en/4.2.0/reference/product-apis/admin-apis/admin-v2/admin-v2/

This is fixed now.


Supporting Stateful Signatures

Thank you for taking the time to share your thoughts with us.
There is ongoing work to integrate Stateful Hash-based Signatures in liboqs.
This note is to propose adding support for the same in oqsprovider.
Functionality:
Key generation
Signature generation
Signature verification
Various schemes for XMSS and LMS.
A summary of the proposed work includes expanding the union OQSX_QS_CTX to include OQS_SIG_STFL struct
typedef union {
OQS_SIG *sig;
OQS_KEM *kem;
OQS_SIG_STFL *stfl_sig;
} OQSX_QS_CTX;
And the enum oqsx_key_type_en.
struct oqsx_provider_ctx_st {
enum oqsx_key_type_en {
KEY_TYPE_KEM,
KEY_TYPE_ECP_HYB_KEM,
KEY_TYPE_ECX_HYB_KEM,
KEY_TYPE_HYB_SIG,
KEY_TYPE_STFL_SIG
};
New functions will be added to specifically manage the state of keys generated as well as when they are used to create signatures.
Please let me know your thoughts on the approach.

This approach sounds reasonable & promising. I would recommend you combine it with a consideration as to how to generate all (SHS algorithms') code stubs from within the generate.yml file.

Additional proposal in light of https://github.com/open-quantum-safe/liboqs/pull/1676#pullrequestreview-1838520356: Would it be possible to create a variant of stateful sigs (without keygen&signing capabilities) that would use just OQS_SIG struct (and thus would not require extension of OQSX_QS_CTX as per the above)?

After https://github.com/open-quantum-safe/liboqs/pull/1650 landed, the time seems to have come to give this integration a try - given https://github.com/open-quantum-safe/liboqs/pull/1650#issuecomment-1893957110 of course only without keygen and sign. Anyone interested?


Enabled Azure Arc data controller upgrade for direct and indirect mode

New behavior:

In the Azure Arc data controller dashboard, there is a new tab called Upgrade Management in which there is a table of available upgrades based on the current version of the data controller.
Only upgrades to the next version are enabled for the time being due to Azure CLI constraints
When Upgrade button is clicked, a side panel appears asking the user to confirm that they want to upgrade
After user confirms upgrade, an info bubble will appear showing that the instance is updating, and another will appear letting the user know how to check on the status of the update.
Only current and greater versions will be displayed (no versions older than the current will be shown)

Code changes:

Upon clicking on the new Upgrade Management tab, a table is generated with values from an Azure CLI API call to 'az arcdata dc list-upgrades'
The version numbers, current version, next version, and dates are processed using Regex and filled into the table
The upgrade button triggers a call to Azure CLI API command 'az arcdata dc upgrade {params}'
The refresh button triggers another call to 'az arcdata dc list-upgrades' to re-assign the current version, next version, etc.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
173 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.1%) to 42.105%

Files with Coverage Reduction
New Missed Lines
%

extensions/notebook/src/book/bookTreeView.ts
2
38.21%

extensions/arc/src/ui/dashboards/controller/controllerDashboard.ts
7
0%

extensions/azcli/src/api.ts
40
0%

extensions/azcli/src/az.ts
124
19.62%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
27647

Relevant Lines:
61411

💛  - Coveralls


Add flag to filter double counts during extraction

A request from Mike, we should add an option to the extract_bin_file function that allows the user to discard data from TOF cycles with double/multiple hits.

discard as in remove the extra hits, or fully black out the pixel? I assume the former.

Yeah, this is just in the context of computing median pulse heights. Wasn't clear from my description.


Edit option.

Any plan to add edit button. Both for owner(to edit while keeping link same) and others to generate different link.
\

Should i implement this feature?

yes

To add to this, user accounts would be a good idea


Custom SCSS import: Warning about missing stylesheets

While it's a cool feature to warn new users about missing stylesheets, it bites me a 2nd time (see #682). I import only the needed stylesheets in my main.scss file. Although everything works fine and is setup correctly I get the warning about missing stylesheets, because of these "magic lines":
.react-vis-magic-css-import-rule {
  display: inherit;
}

This code is buried in react-vis' main scss file, which I don't want to import.
So, I'm left to live with this incorrect warning (bad habit: devs soon start to ignore all kinds of warnings) or reproduce these lines in my code. However, this is internal code which shouldn't leak  into user land: You wouldn't be free to change this code then without breaking client code....

will try to tackle this in response to #725


Update doesn't work

Either the Update button in the editor isn't sending anything or the Update button in the scroller isn't loading it, but the scroller doesn't seem to change at all when updating. Also, the Update button in the editor should disappear once updates are sent, until changes are made again.

done.


Please add approved_learned_cidrs to the module parameters

Hi,
Could you please make the "approved_learned_cidrs" configurable from the module so we can add CIDRs to auto approve.
Thanks
https://registry.terraform.io/providers/AviatrixSystems/aviatrix/latest/docs/resources/aviatrix_transit_gateway#approved_learned_cidrs

@fkhademi just added this and was merged. Will be part of the next release.

Thanks Dennis !!


bump mros2 to v0.5.0

We have finally checked the operation with mros2 v0.5.0!! :tada:

fixed #37


CRD Schema Location

Having an issue when adding a cliArguments parameter that contains a --schema-location with something like {{ .ResourceKind }}_{{ .ResourceAPIVersion }}.json in the schema location path. Not sure if there is an error going on with variable substitution or what.

@bradkwadsworth-mw it may be an issue with action, datree CLI on just wrong setup.
To troubleshoot this quickly, can you please add a screenshot/copy of the error you're getting?
Also, to ensure you don't have an issue with the file name, can you write the full file path and name that you're targeting with the schema-location flag?

Hi @bradkwadsworth-mw , thanks for the info 👍🏽
I have managed to reproduce this, does indeed seem like the {{ . }} variables aren't expanded correctly. I'll update here when it's fixed:)

Awesome, thanks much!

@chr15murray I realized that the {{.}} variables do not need spaces in order to work. So you can just pass your cliArguments like this:
cliArguments: --schema-location "https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/argoproj.io/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json" --policy-config .datree/policies.yaml
This works for me, let me know if it works for you as well:)

When I removed the spaces I get  k8s schema validation error: could not find schema errors even though the schemas exists at that schema-location.

NVM, I think I got it working!

@bradkwadsworth-mw glad to hear 🤘 did you need to use some syntax hack or did it work by simply removing the spaces?
@chr15murray let me know if this works for you too:)


Navigation bug fix

Coverage increased (+0.01%) to 43.292% when pulling e6384e8a17ae395fb01ceba0f50de15794c38f29 on gabrielburnworth:master into b5cd0b4189008afc825b65d6a37a59c5bd466255 on FarmBot:master.


[dashboard] app flutter is failing some analyze checks.

https://github.com/flutter/cocoon/pull/553/checks?check_run_id=324120569
cd app_flutter && flutter analyze
Analyzing app_flutter...
warning • The parameter 'create' is required.  • lib/build_dashboard.dart:43:12 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • lib/build_dashboard.dart:44:7 • deprecated_member_use
warning • The parameter 'create' is required.  • test/build_dashboard_test.dart:21:15 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • test/build_dashboard_test.dart:22:7 • deprecated_member_use
warning • The parameter 'create' is required.  • test/build_dashboard_test.dart:36:15 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • test/build_dashboard_test.dart:37:11 • deprecated_member_use
warning • The parameter 'create' is required.  • test/build_dashboard_test.dart:54:15 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • test/build_dashboard_test.dart:55:11 • deprecated_member_use
warning • The parameter 'create' is required.  • test/build_dashboard_test.dart:72:15 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • test/build_dashboard_test.dart:73:11 • deprecated_member_use
warning • The parameter 'create' is required.  • test/status_grid_test.dart:40:15 • missing_required_param
info • 'builder' is deprecated and shouldn't be used. will be removed in 4.0.0, use create instead • test/status_grid_test.dart:41:17 • deprecated_member_use
12 issues found. (ran in 18.3s)

Fixed https://github.com/flutter/cocoon/commit/fbbf343646c544f861bcd794f592a57d8ff2f627!


Maven artifacts missing

Maven artifacts are missing for qds-sdk-java release 1.3.0 ( https://mvnrepository.com/artifact/com.qubole.qds-sdk-java/qds-sdk-java)

@VenkataKarthikP Its now available in maven central repo https://mvnrepository.com/artifact/com.qubole.qds-sdk-java/qds-sdk-java/1.3.0


Option copy

Option<i32>, Option<f32> etc are much more ergonomic as Copy type.

Blocked by #5 and #6.

LGTM, maybe you can just remove other two commits, then I can merge this PR first.

rebase on the top of the master


Update the sgx crates to version 0.11

Motivation

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#217  👈
#216
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @nick-mobilecoin and the rest of your teammates on  Graphite


[BUG]  gradient_accumulation_steps = 2 uses significantly more memory compared to gradient_accumulation_steps = 1 when using pipeline parallelism

Describe the bug
When using pipeline parallelism + stage 1, we ecounter CUDA OOM errors if gradient_accumulation_steps=2 but everything runs fine with gradient_accumulation_steps=1. My understanding is that gradient_accumulation_steps should not impact memory comsumption.
Expected behavior
gradient_accumulation_steps should not impact memory comsumption.

I have a similar issue with the zero stage 1  setting.


Add CEDR, SensitiveTopics for multilabel and RuBQ for reranking

Checklist for adding datasets

Adds new datasets in Russian that covers MultilabelClassification (for the first time) and Reranking tasks.

[x] I have run the following models on the task (adding the results to the pr). These can be run using the mteb -m {model_name} -t {task_name} command.

[x] sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
[x] intfloat/multilingual-e5-small

[x] I have checked that the performance is neither trivial (both models gain close to perfect scores) nor random (both models gain close to random scores).
[x] If the dataset is too big (e.g. >2048 examples), considering using self.stratified_subsampling() under dataset_transform()
[x] I have filled out the metadata object in the dataset file (find documentation on it here).
[x] Run tests locally to make sure nothing is broken using make test.
[x] Run the formatter to format the code using make lint.

Results table for quick access:

intfloat__multilingual-e5-large
intfloat__multilingual-e5-small
sentence-transformers__paraphrase-multilingual-MiniLM-L12-v2

CEDRClassification
45.41
40.39
37.76

RuBQReranking
74.38
69.98
52.8

SensitiveTopicsClassification
26.07
24.38
24.84

Could you confirm I count points right: 10 = 3 * 2 for new datasets + 4 extra for adding first multilabel task in Russian?

the error in points happens to due:
    new_dataset: Optional[conint(ge=2)] = Field(alias="New dataset", default=None)

which requires at least two points. It is totally fine that you have split it out so I have just merged it in.


[KYUUBI #4656] client open session with original engineRefId

Why are the changes needed?

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

@turboFei

Codecov Report

Merging #4665 (a2abbde) into master (061545b) will decrease coverage by 0.05%.
The diff coverage is 33.33%.

@@             Coverage Diff              @@
##             master    #4665      +/-   ##
============================================
- Coverage     57.58%   57.54%   -0.05%
  Complexity       13       13
============================================
  Files           579      579
  Lines         31964    31966       +2
  Branches       4269     4270       +1
============================================
- Hits          18408    18396      -12
- Misses        11789    11802      +13
- Partials       1767     1768       +1

Impacted Files
Coverage Δ

.../org/apache/kyuubi/config/KyuubiReservedKeys.scala
0.00% <ø> (ø)

.../org/apache/kyuubi/jdbc/hive/KyuubiConnection.java
47.25% <0.00%> (-0.44%)
:arrow_down:

.../org/apache/kyuubi/session/KyuubiSessionImpl.scala
79.72% <100.00%> (ø)

... and 8 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

this comment need to be addressed.
https://github.com/apache/kyuubi/pull/4545#issuecomment-1478931310


Feature - Setting ids in spark w/o using a Map

Hi all
I believe that the only way that one can set their own id is to use a Map Object.  This is a request for a feature to send in the id in the rdd with spark.  In Scala an idea would be to have:

val data: RDD[((String,Object))] = ...
data.saveToEs("foo/bar")

In essence have the capability to define my own id and use either an object or json. If this capability does exist, please improve the documentation so that I have examples of it.

@chrislovecnm @bobrik I've added support for this in master. The feature is also documented. In short, there are now a handful of methods named saveToEsWithMeta that work on pair RDDs, where the key is the metadata, the value the actual document:
val airportsRDD = sc.makeRDD(Seq((1, otp), (2, muc), (3, sfo)))
pairRDD.saveToEsWithMeta(airportsRDD, "airports/2015")

Of course, both the Scala and the Java API are covered.
Feedback is welcome!

This is awesome, I'm going to try this next week :+1:

:+1: @costin - like your comment 'is also documented'

Closing the issue. Beta4 is about to be released.


isoCluster: Ensure IPU netdevs on host are up

Currently, we need to cold boot the IPU host anytime the IMC reboots to ensure the netdevs are available.
Ensure the netdevs are available when isocluster deployment completes.

@vrindle this should fix the issue where the netdevs are not there when the IPU deployment finishes.


GAH: Update the engraving/cutting test pattern on layer 2

@Gitgeorgeah, please check out the "Test objects" layer in the SVG file, and the documentation for using the test layer in the https://github.com/CraneSoftwrights/board-baseball/tree/develop/build#readme page.
Re-open this issue with your suggestions for additions.


Remove our own icons from int-ui-standalone

As users now can access the IDE icons easily via the new API, we should not ship icons in the int-ui-standalone module. We should instead use the platform ones.

We did part of this work in https://github.com/JetBrains/jewel/pull/519

@rock3r since not all versions of the IDE have all the icons, would it be possible to create another package that is optional, and that includes ALL the latest icons?
It'd be better if each version (233, 242, etc) bundled the necessary icons to close the gap to the latest IDE version, but if that is too complex to maintain, at least a separate package with all of the latest ones would be helpful.

@francisconoriega it's up to you to put the IDE icons on the classpath — it doesn't matter how. You can either depend on the IJP's icons artefact (whichever version you need) or copy the icons you need in your resources and keep them up to date.
We were doing the latter in the standalone sample, but decided it was not worth the hassle. We never shipped a complete collection of icons in our artefacts — and we still only ship the ones that must be shipped (checkboxes and radio buttons).


bug: black screen and small delay when opening a python file

Description
Lately I have been having a problem in which when I opened a python file I had for a few milliseconds a black screen. This only happened when opening a python file and I could pinpoint the issue to this colorscheme. I tried with other colorschemes and the issue doesn't happen with them.
See the following asciinema for evidence (https://asciinema.org/a/HlbysnhqXlsJr0I0OJ2xNfJEg):

As you can see I only have catppuccin installed.
Neovim version
NVIM v0.10.0-dev-2451+g8b4e26915
Build type: RelWithDebInfo
LuaJIT 2.1.1707061634

Terminal and multiplexer
wezterm 20240203-110809-5046fc22 with tmux 3.4
Catppuccin version / branch / rev
catppuccin main
Steps to reproduce

Have a neovim configuration with catppuccin installed
Open a python file (e.g. file.py)

Expected behavior
There should not be a black screen for a few milliseconds.
Actual behavior
There is a black screen for a few milliseconds.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "catppuccin/nvim",
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("catppuccin")

It's may be you are not using priority = 1000, as in readme.

It's may be you are not using priority = 1000, as in readme.

Already tried that, whether I use priority or not it happens.

Just tested this once again and it seems to be fixed now. I will be closing the issue.


Merge from integration_2022-08-10_11.41 to main (Cray-HPE/docs-sat) 08-10

Duplicate PR - please disregard


ROX-17771: upgrader and psps

Description
After fixing the sensor.sh in #6463 the gke-upgrade-test was still failing due to the upgrader failing on clusters where pod security policies are disabled.
Question:   Is the filter I wrote the way to go or would it be better and simpler to exclude *pod-security.yaml in loadObjectsFromYAMLs
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

@dashrews78 I'm finally unlocked on the OSCI side and really need to cut the RC-1 to get a bunch of other things unblocked. Would it be okay to move this PR to RC-2 or will it be done very soon?


how to use debugging?

Hi, thanks for your work. Can you give more description on debugging with vscode? how to use "motionbuilder: attach". Thanks a lot.

Hi,
Ideally when running the command "MotionBuilder: Attach" VS Code should install any required modules and attach to MotionBuilder automatically.
If you can, please answer the following questions to help me track down the issue:

Which MotionBuilder version are you using?

Which Operating System are you using?

What happens when you run the command, do you receive any messages, popups, anything?

Some things you could check/try:

MotionBuilder's python server needs to be enabled, this should be on by default but you can check by navigating to: Edit > Preferences > Python and under Python server make sure Enabled Server is checked.

The Python - Microsoft VS Code extension (or an alternative extension which can handle python debugging) is also required.

DebugPy should be installed automatically if you do not already have that module, however you could try to manually install it, make sure it's importable from MotionBuilder then try to run the attach command.

Cheers,
Nils

Hi, I'm using win10+MoBu 2020. Shortcut "Ctrl + Enter" works well.

This code could generate  a cube in Mobu. However, I don't know how to enter debug mode and could not find where to use  "MotionBuilder: Attach" command.
Best

@nils-soderman The main problem is how to attach the vscode to motionbuilder? Is there any tutorial? Thanks.

Ah, the "MotionBuilder: Attach" command can be run from the "Show All Commands" (Ctrl + Shift + P by default).
Alternatively it can be mapped to a hotkey of your liking in the Keyboard Shortcuts window.
Btw, Just tried on a fresh install of MB 2020, and there seems to be a bug where you might have to run the command "MotionBuilder: Attach" twice the first time you run it, as it'll give a false error message "Failed to install debugpy", but just run the command again and it should hopefully work.
Let me know if that helped!
Cheers,
Nils

After press
 and install debugpy sucessfully. Then I press "F5" in vscode to start debugging and the error shows "ModuleNotFoundError: No module named 'pyfbsdk'". The auto-completion works well, should I change the python interpreter? @nils-soderman

Try running "MotionBuilder: Attach" a second time, F5is VS Code's native debug command and will most likely try to debug the file as a standalone .py file.
After MotionBuilder has been attached to VS Code, use Ctrl + Enter to execute code and you should see any breakpoints or exceptions trigger.

Cool, now it's working for me. I tried to close all the MoBu windows and open a new window and attach successfully.  If I open several projects, could I choose which one to attach?

Alright, sweet! Worth noting that the MotionBuilder window cannot be minimized when running the attach command.
As of right now choosing which MotionBuilder instance to attach to is not supported, might look into it in the future, but I doubt it's even doable.

Thanks again for you amazing work!


Is it possible to not install dlib when installing this package?

If you could only tell me how to go about it, it'd be great.

No, dlib is doing most of the hard work that makes this library function.

If you mean you already have dlib installed, you can use the no dependencies flag in pip to not force installing it.

Works like charm. Thank you, Sir.


Loading screen

Currently, the game freezes during resource loading. The task is to make it more comfortable for the user by adding a loading screen to show the loading progress.

[x] Eager load on main menu enter (mpq, txt, animdata, palettes)
[ ] Eager load on world enter (ds1, dt1, world building)
[ ] Generate world renderers on the fly for visible parts of the world only
[x] Consider using Unity job system to offload from the main thread and benefit from multiple cores
[ ] Loading screen to show the progress

Unity job system is designed to work within a single frame, so it's not appropriate.

Let me help you to enhance the game's textures / images ?

@KillahNeo Looks nice! How did you do it?

Regarding your question, it would be really nice. However, I can't include it into the project as is because it's basically Blizzard resource and it's not legal to distribute it.
It's possible to make a patch MPQ to override the original resources with higher-dimensional like this one.

Oh i'd love to do that, i tweaked the image with photoshop cs2019
Anyways, if you tell me how to do it i can start working on it

Image path: data\global\ui\Loading\loadingscreen.dc6


Inscryption not backed up, even though it should be

Not sure if a report for Ludusavi or the Playnite plugin or maybe Playnite itself, but reporting here just in case. Backup is not created for this game and there's notification that nothing to back up was found.
I got Inscryption installed from Epic. According to https://www.pcgamingwiki.com/wiki/Inscryption, the path should be <path-to-game>\SaveFile.gwsave. I do have a SaveFile.gwsave in D:\Games\Epic Games\InscryptionWkwPQ. Playnite also correctly opens D:\Games\Epic Games\InscryptionWkwPQ as the installation path.
I'm using latest Playnite, up-to-date plugin and Ludusavi 0.24.3 from choco.

Hi! It looks like the issue is that the manifest only had the Steam folder name (Inscryption), but not the Epic folder name (InscryptionWkwPQ). I've added it to the manifest: https://github.com/mtkennerly/ludusavi-manifest/commit/d8682f139e23b8e4f4211512b5964176e72b406b . You can try it out now by opening Ludusavi, going to the "other" screen, and clicking the refresh icon in the manifest section :)
Also, if you haven't already, make sure that there's an Epic root configured in Ludusavi pointing to D:\Games\Epic Games.

Thanks, that was quick! It worked fine.


[Help]: PSI and SBAS geocoding

Hello @AlexeyPechnikov,
I produced displacement maps in a region for PSI and SBAS in a notebook called GoldenValley. However, my output results do not have a coordinate system, they appear as row and column indexes, as in the image. How can I do that. I need georeferencing for my disp_ps.grd and disp_sbas.grd result files. Another question I have is that when I open the output results, the spatial resolution is 1 meter.

Also, the PSI result image appears differently, I cannot understand whether there is an error.

You open internal processing files which have a special format. Geocode and export the files as explained in the examples.

So, is my spatial resolution output correct?

This is the rasters pixel spacing, not meters.

Well Alexey I managed to get the GoldenValley notebook working. However, I have a question. I want to separate my sbas and psi results, that is, my LOS changes, as vertical and east-west. Which function will I do this with?

Please refer to 'CENTRAL Türkiye Mw 7.8 & 7.5 Earthquakes Co-Seismic Interferogram, 2023.' example.

However, I could not see a line of code related to detrend in the GoldenValley notebook.

@AlexeyPechnikov Also, after a while, I get this error in the middle of the code and I cannot proceed to the result. What is the reason for this? I use Colab Pro, but I encounter this error when processing big data. Problems with the session usually start after this code:
sbas.plot_displacements(disp_sbas[::3], caption='SBAS Cumulative LOS Displacement, [mm]', quantile=[0.01, 0.99])
ERROR:asyncio:Task exception was never retrieved
future: <Task finished name='Task-2069812' coro=<Client._gather..wait() done, defined at /usr/local/lib/python3.10/dist-packages/distributed/client.py:2208> exception=AllExit()>
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/distributed/client.py", line 2217, in wait
raise AllExit()
distributed.client.AllExit

'detrend' is your unwrapped and detrended phase. You can miss the detrending step if you don't need it for your case.
'asyncio' is just a web sockets communication library and you can ignore the message.

I have one last question, in this notebook I produced the LOS displacement map using my images in the ascending direction. How do I decide if this data is an up-down or east-west change? I tried parsing ud - ew using methods in other notebooks, but the results were too big and ridiculous.

To obtain the actual values, you need to sum the west-east or vertical displacements from two orbits, or employ an alternative method to determine the projections.
The 'detrend' variable contains the detrended, unwrapped phase. You can utilize the unwrapped phase directly or subtract the linear regression trend from the phase, among other techniques.

`---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in <cell line: 1>()
----> 1 unwrap_sbas = sbas.unwrap_snaphu(intf_sbas, corr_sbas).where(corr_sbas_stack>=CORRLIMIT)
2 unwrap_sbas
5 frames
/usr/local/lib/python3.10/dist-packages/xarray/core/variable.py in calculate_dimensions(variables)
2938         for dim, size in zip(var.dims, var.shape):
2939             if dim in scalar_vars:
-> 2940                 raise ValueError(
2941                     f"dimension {dim!r} already exists as a scalar variable"
2942                 )
ValueError: dimension 'pair' already exists as a scalar variable`
What is the reason for this error?

To obtain the actual values, you need to sum the west-east or vertical displacements from two orbits, or employ an alternative method to determine the projections.
The 'detrend' variable contains the detrended, unwrapped phase. You can utilize the unwrapped phase directly or subtract the linear regression trend from the phase, among other techniques.

I have developed a vertical and east-west decomposition based on an algorithm from published literature. It uses a search radius to combine points onto a lower resolution grid and decomposes the projections based on local incidence angle derived from a DEM which takes into account the slope. It does however depend on SNAP to create the local incidence angle, and using other tools such as GDAL did not give me the expected results. It would be interesting to see how you would approach this.

@SteffanDavies

I have developed a vertical and east-west decomposition based on an algorithm from published literature. It uses a search radius to combine points onto a lower resolution grid...

The task should be resolved by using proper geocoding on the same grid instead of later interpolations. PyGMTSAR produces geocoded results aligned with DEM pixels, meaning that when using the same DEM, we have identical output grids for two orbits. Simply sum the grids to produce the actual up-down and east-west components.

@oguzhannysr

What is the reason for this error?

The 'stack' dimension is incorrect. It appears that you are applying 3D processing code to a single interferogram, or vice versa.


Add default (and customizable) limits for a number of data items in the response

To prevent querying for excessive amounts of data with large or missing take parameter.

Having thought about this topic carefully, I think we shouldn't implement suggested functionality in the way the subject states.
Currently, the limit can be easily enforced on the application side:
if(loadOptions.Take < 1 || loadOptions.Take > 20)
    throw new ArgumentException();

However, there is a number of other ways to attack large databases. For example, sorting/filtering by a non-indexed column, grouping by a column with unique values. If we want to add capabilities to limit or white-list operations on certain columns, it should be done in a more generic way.
Also, limiting the number of items is technically a breaking change which we want to avoid in 1.x
/cc @San4es


Fix typo in "pastIncidentsResolved"

The text reads Resolved in ... minuted instead of Resolved in ... minutes. This pull request should fix it.

Thanks, @Hans5958!


Updated AntennaRangePatches for spacedock

I had a few requests for this, so if it can get accepted quickly, that would be great
Thanks

I tried to install this on my machine, but it said AntennaRange is incompatible. Indeed, it's listed on SpaceDock as for 1.1.2. However, the author and others say it works fine on 1.1.3. Why didn't this fail CI?

Looks good to me. Will work with the available versions of AntennaRange


IGNITE-8073 Cache read metric is calculated incorrectly in atomic cache.

The ticket is resolved, closing PR.
Please close PRs for your resolved tickets and other non-needed PRs.
Alternatively, ask a committer

to use GitHub UI (committer  can associate accounts here: https://gitbox.apache.org/setup/ )
or /scripts/apply_pull_request.sh from Apache Ignite source.
or mention in commit message 'Fixes #(a number of PR)'.

These methods will automatically close PR.
Feel free to reopen this PR if it is actual.


[6.x] Update changelog for v6.18.27 with upgrade info around cookies

Anyone upgrading to >= v6.18.27 will have all their cookies invalidated.
This seems like an important point to highlight that I didn't see mentioned anywhere. I only found it after basically doing a binary search through upgrades to find out which version borked our cookies.
For some apps this means that all their users will be logged out at once - which could have a bunch of implications (not to mention an annoyance for the users)
I may have just completely missed the memo on this - but there was no info on the PR (#33662) and the discussion is currently locked.
Supercedes https://github.com/laravel/framework/pull/36489 (changed to target 6.x instead of 8.x)

I may have just completely missed the memo on this - but there was no info on the PR (#33662) and the discussion is currently locked.

https://blog.laravel.com/laravel-cookie-security-releases covers it.

I may have just completely missed the memo on this - but there was no info on the PR (#33662) and the discussion is currently locked.

https://blog.laravel.com/laravel-cookie-security-releases covers it.

Awesome. I've added a link to that in the updated docs.
I still think this needs to be noted in the changelog - as people may not think to look through the blog post archive to find this info (I actually did scan back through many pages of the blog but clearly missed that one!)


How to control the size of band edges

How can we control the size of circles predicted using "band-edges" ?

This is currently hard-coded but does not need to be; I have opened a pull request which would allow the value to be overridden by a user style file with lines.markersize.

I could not understand it. Should I update sumo?

First the changes need to be reviewed by another developer; then they will be available in the next Sumo release.
It is possible to try them out before then but if you are not comfortable with Python development then it is probably better to wait.


Capture images from my local camera

Hello everyone, I was wondering if it's possible to capture images from my local camera while I'm live streaming. Does anyone have experience with this? If so, could you kindly share how it can be done? Thanks in advance!

Hi @ciaoamigoschat
Right now, the ability to capture images from the local camera while live streaming might be a bit tricky due to the way we manage the camera capturer within our project. Currently, it's not directly exposed for external access.
We're actively working on changing this


Fix formatting (adding newline)

The numbered listing was not wrapped into several lines.
Adding new line here would fix it.

Thanks!


python310Packages.pycares: 4.2.2 -> 4.3.0

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Looks like a staging retarget will be necessary

Built aiodns and tornado, py3.9 & 3.10, macos 10.15, nixos x86_64 & aarch64-linux.
Might be good to add those two to passthru.tests - only major direct users.


Export in new table of several selected columns generates all columns

System information:

Win10,
DBeaver CE 21.2.4

Connection specification:

Not specific

Describe the problem you're observing:
I want to export some columns to the new table, but all other columns of the source table are generated in the new table and filled with NULLs
Steps to reproduce, if exist:
Open table with several columns.
Select some of them.
Begin export.
Select Database export type.
Select target table as new table (Mapping = create)
Check "Selected columns only" and start export.
Expected: only selected columns were exported
Actual: all other columns of the source table are generated in the new table and filled with NULLs

Looks like a duplicate of https://github.com/dbeaver/dbeaver/issues/14278


WIP Fix publish to return 200/Success w/ 401 from NMA

For legacy reasons, the PublishStatusCode is actually the status code from Wireserver. In the situation where NMAgent returns a 401, it's expected that the PublishStatusCode is set to 200 and the code is a Success. The embedded status from NMAgent must be a 401.
This minimally makes the failing test pass, but the logic is convoluted and needs to be refactored.

Reason for Change:

Issue Fixed:

Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests

Notes:

Superceded by #1825


Config Dump endpoint

Outputs all forms of configuration
“Bootstrap” config
Command-line flags (probably translated into bootstrap config)
Config sent via xDS
Output is valid input configuration for easily reproducing issues locally.
To make this useful, we may need some “debug mode” that allows filtering or mapping IPs. Maybe we just make that a tool that operates on the config as yaml/text.

Output is valid input configuration for easily reproducing issues locally.

Envoy has config_dump.proto. Istioctl likes that format although we can't really conform to the same top level keys (clusters, listeners, bootstrap, etc)
At the very least we should have some easy transform that can convert our configdump into whatever static config we take as input.

@stevenctl should we keep the debug functionality in istioctl?  Perhaps add a new istioctl experimental subset for commands related to ztunnel?

I think it should mirror the way everything works for sidecars. The proxy exposes an endpoint. Istiod can call that endpoint on behalf of istioctl if needed. istioctl can parse it
I think istioctl proxy-config workloads
possibly under some experimental/ambient subcommand'
The idea of "output is valid input" would just be a convenience thing. I don't think it's that important, but if it could be valid to use as the local.yaml that would be cool.

synced with Steven, going forward with:
to display info from pilot
istioctl proxy-config workloads

to display info from ztunnel config_dump:

bootstrap yaml
command line args

proxy-config pulls from envoy today, seems odd to make it pull from pilot now?

Decision: make it a normal istioctl command, just in the Ambient experimental branch.

Ready to submit PR for istioctl proxy config. Will followup with Steven on bootstrap config.

istioctl portion merged.
working on bootstrap portion, submitting a PR shortly

sample of istioctl output:
go run istioctl/cmd/istioctl/main.go proxy-config workload ztunnel-g6xmf.istio-system
NAME                                      NAMESPACE          IP         NODE                  PROTOCOL
coredns-6d4b75cb6d-kt4sq                  kube-system        <IP_ADDRESS> ambient-control-plane Tcp
coredns-6d4b75cb6d-xmg7p                  kube-system        <IP_ADDRESS> ambient-control-plane Tcp
helloworld-v1-cross-node-55446d46d8-4hkl7 default            <IP_ADDRESS> ambient-worker        Hbone
helloworld-v2-same-node-65bd845857-4vzj6  default            <IP_ADDRESS> ambient-worker2       Hbone
istio-ingressgateway-8494dc7655-w7fgm     istio-system       <IP_ADDRESS> ambient-worker        Tcp
istiod-747687bbb6-bcmcm                   istio-system       <IP_ADDRESS> ambient-worker2       Tcp
local-path-provisioner-9cd9bd544-czbw5    local-path-storage <IP_ADDRESS> ambient-control-plane Tcp
sleep-66b946687b-6rntb                    default            <IP_ADDRESS> ambient-worker2       Hbone
sleep2-7886c67bf8-rrm6g                   default            <IP_ADDRESS> ambient-worker        Tcp
swiss-army-knife-58c658bdfb-df8wh         default            <IP_ADDRESS> ambient-worker        Hbone
ztunnel-g6xmf                             istio-system       <IP_ADDRESS> ambient-worker2       Tcp
ztunnel-glmkk                             istio-system       <IP_ADDRESS> ambient-control-plane Tcp
ztunnel-vd5kt                             istio-system       <IP_ADDRESS> ambient-worker        Tcp

new fields added to ztunnel config_dump API:
  "static_workloads": [],
  "version": {
    "version": "e3e79fbeeae06ba051db08febb95dab7d4408563-dirty",
    "git_revision": "e3e79fbeeae06ba051db08febb95dab7d4408563-dirty",
    "rust_version": "1.65.0",
    "build_status": "Modified",
    "git_tag": "e3e79fb"
  },
  "config": {
    "window_size": 4194304,
    "connection_window_size": 4194304,
    "frame_size": 1048576,
    "socks5_addr": "[::]:15080",
    "admin_addr": "[::]:15021",
    "inbound_addr": "[::]:15008",
    "inbound_plaintext_addr": "[::]:15006",
    "outbound_addr": "[::]:15001",
    "local_node": "ambient-worker",
    "ca_address": "https://istiod.istio-system:15012",
    "xds_address": "https://istiod.istio-system:15012",
    "local_xds_path": null,
    "xds_on_demand": false,
    "fake_ca": false,
    "termination_grace_period": {
      "secs": 5,
      "nanos": 0
    },
    "num_worker_threads": 2,
    "proxy_args": "proxy sidecar"
  }

Marking this one as resolved with the assumption that followup PRs will be needed to handle new fields as they're added


Added "advanced" bullet selector example

It might not be super advanced, but at least useful.

I was looking for this information when I first started with the plugin. Could we get this fixed up and merged?


Update Random Encounters gives out Manifest Error

Hello,
since the V10 Foundry Update, I get this error when I try to update the Random Encounters module:

How are you updating the module?
That message is from https://github.com/veevelder/random-encounters/blob/main/module.json which is not the correct module.json. The correct one is https://github.com/veevelder/random-encounters/releases/download/0.2.5/module.json
The app should have picked up on the correct module.json file but if it didnt you can either use that correct link above or use https://github.com/veevelder/random-encounters/releases/latest/download/module.json which will always get the latest release.

I just clicked on update in foundry.

im not sure whats going on there, in my testing I was able to update from v9 to v10 with the module updating as well. However, I do know that if you uninstall Random Encounters and then re-install, it will save your settings. So you shouldnt have to recreate your encounters. Just make sure to resave them, after you re-install.
I hope this helps.


Support sparse indexing for cargo repositories

Is your feature request related to a problem? Please describe.
Cargo now supports sparse indexes in nightly, and it will be made stable in March.
Describe the solution you'd like
The tf provider for artifactory should support setting the cargoInternalIndex flag: https://www.jfrog.com/confluence/display/JFROG/Cargo+Package+Registry#CargoPackageRegistry-SettingUpCargoIndexingUsingSparseIndexing
Currently, the provider only supports modifying the git url and anonymous setting: https://github.com/jfrog/terraform-provider-artifactory/blob/master/pkg/artifactory/resource/repository/remote/resource_artifactory_remote_cargo_repository.go#L13-L14
I'm happy to try and implement the FR, if this sounds reasonable.

Hi @asvoboda - would also appreciate this feature (for local-repos too).
@danielmkn just to gauge timelines; do you anticipate this feature being available before 1.68 drops on Mar 9th? If not, I will happily contribute myself to get this issue moving along.
Many thanks all.


Barnhark/coveralls

addresses Issue #21

Pull Request Test Coverage Report for Build 61

0 of 0 (NaN%) changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 0.0%

Totals

Change from base Build 52:
0.0%

Covered Lines:
0

Relevant Lines:
2610

💛  - Coveralls


Enhance okhttp-tls to allow using existing keystores and select from multiple keys

Some notes and usage questions
I assumed I could use this library to easily setup a client authenticated TLS request.  This turned out to not be possible, so not sure if I'm doing something wrong. The same code via the old path worked fine.
val keystore = KeyStore.getInstance("PKCS12").apply {
  load(File("me.p12").inputStream(), password.toCharArray())
}

val alias = keystore.aliases().toList().single()

val kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm())
kmf.init(keystore, password.toCharArray())

val tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm())
tmf.init(null as KeyStore?)

val context = SSLContext.getInstance("TLS")
context.init(kmf.keyManagers, tmf.trustManagers, SecureRandom())

val ssf = context.socketFactory
val tm = tmf.trustManagers[0] as X509TrustManager

val authClient = client.newBuilder().sslSocketFactory(ssf, tm).build()

I tried replacing this with
var keystore = KeyStore.getInstance("PKCS12").apply {
  load(File("me.p12").inputStream(), keyPass.toCharArray())
}
var key = keystore.getKey(keyName, keyPass.toCharArray()) as PrivateKey
val cert = keystore.getCertificate(keyName) as X509Certificate
val certChain = keystore.getCertificateChain(keyName)

val handshakeCertificates = HandshakeCertificates.Builder().apply {
  addPlatformTrustedCertificates()
  heldCertificate(HeldCertificate.Builder().keyPair(cert.publicKey, key).build(), *certChain)
}.build()

val client = OkHttpClient.Builder().sslSocketFactory(handshakeCertificates.sslSocketFactory(), handshakeCertificates.trustManager()).build()

It failed because it doesn't end up using a valid chain, I can separately send the ssl debug output that shows the difference.
Is it worth extending the API to allow introspecting a keystore for available keys, selecting one, and setting up a client to use one?  Or is this too niche, what falls in and out of scope for this library?

Yeah, the library is currently intended to help create new TLS credentials, not to load existing ones.

... which isn't to say it shouldn't do both! My first priority with this package is to try do it without bouncycastle.

Related: https://stackoverflow.com/questions/55749569/curl-command-with-p12-certificate-as-okttp-in-java

Now has a method to load existing certs.


Contributors guide

This PR partially (mostly) addresses #19. It provides a general, but detailed, guide to contributing to Project Pythia, and provides links to repo-specific contributors information (i.e. how to contribute to Foundations). The general guide covers the different ways to contribute (including how to submit an external link); setting up git, github, and conda; and how to use the "forking workflow"
N.B. changes to the foundations contributor's guide are forthcoming

@andersy005, any guidance on how to trouble shoot these lint errors? Can I run the linter locally...Thanks!

@andersy005, any guidance on how to trouble shoot these lint errors? Can I run the linter locally...Thanks!

@clyne, Try the following

Add pre-commit to the list of dependencies in ci/environment.yml and run conda env update -f ci/environment.yml
Install pre-commit with conda activate pythia && pre-commit install
Run pre-commit run --all-files to fix files from previous commits
The pre-commit hooks should run automatically for any subsequent commits.

Thanks @andersy005 ! That worked. Is there a reason we don't have this baked in to our build environment? We seem to for the foundations portal...

Thanks @andersy005 ! That worked. Is there a reason we don't have this baked in to our build environment? We seem to for the foundations portal...

 I think we just forgot to include it in our local build environment

How about we add it, and I'll update the contributor's guide while I'm working on it?

How about we add it, and I'll update the contributor's guide while I'm working on it?

👍🏽 Sounds good

My overall comment is that I really like this verbose, newbie-friendly guide. However I think that some of this material should migrate over to the Foundations book at some point, where we hope to have general tutorials on things like use of git, opening PRs, etc.
Once those tutorials are in place, this guide could be shortened and cross-linked to the relevant Foundations pages.
The only difference would be that the Foundations tutorials would be aimed at more general contributions, not just contributing to Pythia itself.

My overall comment is that I really like this verbose, newbie-friendly guide. However I think that some of this material should migrate over to the Foundations book at some point, where we hope to have general tutorials on things like use of git, opening PRs, etc.
Once those tutorials are in place, this guide could be shortened and cross-linked to the relevant Foundations pages.
The only difference would be that the Foundations tutorials would be aimed at more general contributions, not just contributing to Pythia itself.

I completely agree that some of this content should be moved to foundations and referenced here. I'll open a new issue.

Re "git add": I can certainly add info on what to do if you've explicitly created a new file. That makes sense. I just want to make sure I understand the need for 'git add' in the content of our hooks. Thanks

Just need some of you folks who gave thumbs up, looks good, etc. to actually approve :-). Tagging @andersy005 @kmpaul @jukent
Nag, nag, nag..

Looks like this needs approval specifically from @kmpaul and/or @ktyle as code owners.

Ok the merge button is still red even with 3 explicit approvals, because of our relic code-owners setup that will be fixed with #105.
Either @kmpaul can approve and merge this, or if he's busy elsewhere I'll just force-merge later today.

This PR seems stuck in the "Read the Docs" build. Anyone (@andersy005 , @kmpaul ) no how to unstick it?

Should we add joining the email list to the contributor's guide?
If you would like join the<EMAIL_ADDRESS>Google group to be informed of updates and events in the seminar series, please do so by following this link and clicking "Join Group" next to the group name.

This PR seems stuck in the "Read the Docs" build. Anyone (@andersy005 , @kmpaul ) no how to unstick it?

When I click "details" it says the build completed. Not sure why it is hanging.

Yep, same over at #105. I tried closing and reopening to trigger another build on readthedocs, but still hangs forever. Annoying but seems clear that it has nothing to do with the content of these PRs.

I think I got this working again by going over to Read the Docs and clicking on "Resync Webhooks" under the admin tab.

Now if we merge main in one more time (which now includes the changes to codeowners from #105), I guess that the review requirements will be met automatically.
Let me try that.

Should we add joining the email list to the contributor's guide?
If you would like join the<EMAIL_ADDRESS>Google group to be informed of updates and events in the seminar series, please do so by following this link and clicking "Join Group" next to the group name.

@jukent given the multiple rounds of review on this particular PR, I'd prefer to merge this as-is now. Can you please open a new issue / PR to add the email list info?

I got the green lights, and I squashed and merged before anything else could happen!!! Thanks for sorting this out, @brian-rose


Fix Chrome 49

See #94, this may or may not be the best approach. At least it works :)

Thanks for the PR, but https://github.com/feross/buffer/issues/94#issuecomment-172131066 says the bug is fixed in Chrome itself, and I can confirm that the tests all pass in Chrome 49.0.2623.0 canary (64-bit, Mac OS X). Closing unless you still think this is an issue, thanks! :)

Great!

It'd be great if we could fix this bug in this repo as well. The ES2016 draft spec mandates the behavior that Chrome 49 tries out. Turns out it's not web-compatible yet (due to this particular library and possibly nothing else), but I think it's the most sensible semantics long-term. It'd be great if we could do something in this library so that the web can get the better TypedArray subclassing semantics within a few years.

It probably have to be discussed in Node.js as well, but I think that it's sensible to allow new Buffer(buffer, start, end) to create a new slice of another buffer. I'm all for making buffer as similar to typed arrays as possible.


Show different publication layout in scholly

Description
Users can save their preference of showing publications in different layouts & sorting, the preferences are also shown in the deployed website (pre-selected the preference ).
Type of change

[ ] Bug fix
[x] New feature
[x] Refactoring
[ ] Documentation

Problem
Currently, the publication page on Researchify only allows users to preview publication in different layout/ sorting, but the preferences of layout/ sorting cannot be saved.
Solution description
A new update button is created on the publication page, which allows the user to save their layout & sorting preference.
The saved preference should retain when refreshing the publication page and reflect on the deployed website.
Tests
All unit tests pass? N/A
Builds successfully? Yes
Attach screenshot of the expected result (e.g. UI of the website/ postman api call result/ database changes)

Relevant document/ link (if any) N/A
Risk
Low, only the layout & sorting of publication would be affected if bugs exist.

Could you merge in the main changes? I suspect the SA may throw some linting checks


feat(rpc): introduce getblocktemplate-rpcs feature

Motivation
We want to support mining rpc calls but as an isolated rust feature. Can close https://github.com/ZcashFoundation/zebra/issues/5305 with some more work. It also implement partially get_block_count (https://github.com/ZcashFoundation/zebra/issues/5303) so we can have something to test with.
Solution
PR attempts to do the supertrait suggested implementation. It looks good and we can make tests but something is missing. When calling the rpc with curl:
$ curl --silent --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockcount", "params": [] }' -H 'Content-type: application/json' http://<IP_ADDRESS>:8232/ | jq
{
  "error": {
    "code": -32601,
    "message": "Method not found"
  },
  "id": "curltest"
}
$

Review
I will like @teor2345 to take a look
Reviewer Checklist

[ ] Will the PR name make sense to users?

[ ] Does it need extra CHANGELOG info? (new features, breaking changes, large changes)

[ ] Are the PR labels correct?
[ ] Does the code do what the ticket and PR says?
[ ] How do you know it works? Does it have tests?

Follow Up Work

New features are blocked until we tag the first release candidate.

Why the optional tag was added if as far as i know it was decided we want to have the mining calls in a feature ?
I think the optional tag discourage developers to keep working on a pull request when used unilaterally as it has been done here (and pretty much everywhere else).

Why the optional tag was added if as far as i know it was decided we want to have the mining calls in a feature ?

I added the optional tag because this work isn't scheduled for this sprint, and we have the release candidate and getblocktemplate analysis work as a higher priority.
I added the "do not merge" tag because we can't merge new features until we've tagged the release candidate.
Sorry I didn't explain that to start with, I've been busy trying to fix CI and get the release candidate working.

It looks good and we can make tests but something is missing.

When the getblocktemplate-rpcs feature is activated, we need to start the server using the getblocktemplate RPC methods:
https://github.com/ZcashFoundation/zebra/blob/ee0edef8571d3ed82848303b142c7ae72e7135fc/zebra-rpc/src/server.rs#L68
I'm guessing you did this already, but we also need to compile zebrad with --features getblocktemplate-rpcs.

I'm guessing you did this already, but we also need to compile zebrad with --features getblocktemplate-rpcs.

This might need a getblocktemplate-rpcs feature on zebrad as well, here's how you set it up:
https://github.com/ZcashFoundation/zebra/blob/ee0edef8571d3ed82848303b142c7ae72e7135fc/zebrad/Cargo.toml#L46

The do not merge is enough here for knowing we can't merge into main for the release candidate. I removed the optional because i think it is not.

We tagged the release candidate, so new features can merge now.
Can you add a priority label to this ticket?

This new RPC needs a snapshot test and a manual zcash-rpc-diff test.
Can you post the results of zcash-rpc-diff as a comment on this PR?

I highligthed the issue a bit more in https://github.com/ZcashFoundation/zebra/pull/5357/commits/b1a6918987ac09d44550350ef9be22511ba18a3e .

Diffs are different because zcashd and zebrad are at different heights locally.
$ ./zcash-rpc-diff 6666 getblockcount
Checking first node release info...
Checking second node release info...
Connected to zebrad (port 6666) and zcashd (zcash-cli zcash.conf port).

Checking zebrad network and tip height...
Checking zcashd network and tip height...

WARNING: comparing RPC responses from different heights:
zcashd is at: 15784
zebrad is at: 88152

Request:
getblockcount

Querying zebrad main chain at height >=88152...

real	0m0,002s
user	0m0,001s
sys	0m0,000s

Querying zcashd main chain at height >=15784...

real	0m0,002s
user	0m0,001s
sys	0m0,000s

Response diff between zcashd and zebrad:
--- /tmp/tmp.bWNHZfXNvz.rpc-diff/zebrad-main-88152-getblockcount.json	2022-10-17 17:12:54.993989666 -0300
+++ /tmp/tmp.bWNHZfXNvz.rpc-diff/zcashd-main-15784-getblockcount.json	2022-10-17 17:12:54.993989666 -0300
@@ -1 +1 @@
-88152
+15784
$

Output of zebra when quering the getblockcount method in a build with no getblocktemplate-rpcs feature:
$ curl --silent --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockcount", "params": [] }' -H 'Content-type: application/json' http://<IP_ADDRESS>:8232/ | jq
{
  "error": {
    "code": 0,
    "message": "RPC method is not implemented for zebra builds without `getblocktemplate-rpcs` feature"
  },
  "id": "curltest"
}

The same call but in a build with getblocktemplate-rpcs feature:
$ curl --silent --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockcount", "params": [] }' -H 'Content-type: application/json' http://<IP_ADDRESS>:8232/ | jq
{
  "result": 84896,
  "id": "curltest"
}

Thanks @arya2 , i added the suggested typo fix. Can you re approve ? Thanks.


MdTooltip: allow only one tooltip to be viewed at once

Bug, feature request, or proposal:
Bug
What is the expected behavior?
According to specs If the user takes another action before that time ends, the tooltip will disappear.. This should include showing a second tooltip as well, only one tooltip should be visible at once.
What is the current behavior?
Currently, I can view any amount of tooltips at once, which in my opinion can be confusing for users.
What are the steps to reproduce?
Providing a Plunker (or similar) is the best way to get the team to see your issue.
Plunker template: http://plnkr.co/edit/o077B6uEiiIgkC0S06dd
What is the use-case or motivation for changing an existing behavior?
Which versions of Angular, Material, OS, browsers are affected?
Is there anything else we should know?

Fixed in #1819


MAINT: tests for tall cost matrices in linear_sum_assignment

The linear_sum_assignment function supports wide and tall cost matrices. Tests for tall rectangular matrices are missing, so I have added them here.

This looks like a straightforward improvement. Can't merge it easily now; this crossed wires with moving these tests to scipy/_lib/tests/ in gh-12541 (FYI @fuglede). Let's move them back first as planned, and then add these additional ones.

I added the re-re-organization in #13236; let me know if you think it's easier to add the tall inputs there directly as well, rather than keep it as two PRs, and I'm happy to merge in the changes from here.

I added the re-re-organization in #13236; let me know if you think it's easier to add the tall inputs there directly as well, rather than keep it as two PRs, and I'm happy to merge in the changes from here.

Thanks. I had a slight preference for keeping them separate.
One thing I noticed in the previous diff of this PR is that one test case got removed/lost in the PR that moved the tests to _lib:
            # n == 2, m == 0 matrix
            ([[], []],
             []),

Just checking, was that on purpose @fuglede?

Hm, good catch; not on purpose, no: What likely happened was that I had added this test case which meant that I didn't need the other one back when the tests were duplicated, then it vanished entirely from scipy.optimize when the initial duplication was removed. Do you want to re-add it here or in another PR?

Thanks for catching that @fuglede. It indeed tests tall matrices already.
I will close this redundant PR.


Issue27 add reproduction for simulation studies

As briefly described in #27, simulations should be reproducable, even years after conducting them. This PR adds scripts to ensure that this is given when using ebcpy.

@tstorek : Could you review these features please? Maybe you have some more ideas for how to improve reproducability of software based research :)

@tstorek Could you approve? :) I added all required changes!


Add quotes around the VCPKG_ROOT and Z_POWERSHELL_EXE variable path assignments.

Add quotes around the VCPKG_ROOT and Z_POWERSHELL_EXE variable path assignments.
Without adding quotes around the set variable path assignments, paths that contain a close parenthesis character ) would cause the command/batch file to exit prematurely and vs batch call chains (e.g., vcvarsall.bat) to fail.

For testing with VS2022:

vcpkg-init.ps1 was renamed to vcpkg-init.cmd.
The internal paths were updated to those in the original VS2022 file.
The signature block from the original VS022 file was added.
The modified vcpkg-init.cmd file was copied into %VSINSTALLDIR%\vc\vcpkg.

All four assignments were tested locally with:

VS2022 installed into C:\Program Files (x86)
Powershell path of C:\Program Files (x86)\WindowsPowerShell\v1.0
USERPROFILE path of C:\Users (x86)\test
Running VS2022 vcvarsall.bat works as expected.


AAD Http client error using Mobile app

Category

[ ] Question
[ ] Typo
[X] Bug
[ ] Additional article idea

Expected or Desired Behavior
Aad client should work the same on mobile and in browser.
Observed Behavior
When connecting to aad secured api there is a parse error. "SyntaxError: Unexpected token u in JSON at position 0"
Steps to Reproduce

Create Webpart
Call AAD Secure API.
Observe Correct behavior in browser.
Open using mobile app and see error message "SyntaxError: Unexpected token u in JSON at position 0"

Here is a repo with observed issue
Repro

Duplicate with #3665 and things should work now properly.


Why keep working on the jdbc driver, since rive are deprecated ?

Hi,
I wonder about, why do you guys kept maintaining jdbc drivers since river are deprecated in the 1.5 version.
This might be a silly question but I really want to know about your motivations.

On the "noriver" branch, there is a standalone version of JDBC plugin, without river code.


Add autoformatting guidance to MAINTAINERS.md

Hi @eecavanna and @brynnz22
I would like our nmdc-schema code to follow a stable format. The idea solution would impose auto-formatting on saving files and should be implemented in PyCharm and VS Code.
I'm assigning the two of you because I know you have already done some exploration in this area. I don't have any rigid expectations bout when this will be solved, or who else should be involved.

For what it's worth, I have been using control/alt-L or command/option-L to manually reformat my code with PyCharm's default formatter but I would be glad to do something different.

Changed issue name to be more actionable.


Error with single quotes

Put any key like the following:
"my_key": "Today's",
on a json file and generate with:
get locales assets/locale
The generated file is wrong and bad formatting on that key due the single quotes.

Json use only double quotes

"my_key": "Today's",

I'm sorry, actually my json has double quotes, i've edited my issue.

fix on next version

When is the new version released? Thanks!

today

Thank you!

And where is the fix?

Idk, still waiting

It seems that the update is up, i just executed 'get update' and now my get_cli is on version 1.3.14 instead of 1.3.13


Don't caching dist

Hello!
I'm trying to use this docker image, but i can't seem to get it to store package dist cache
  velocita:
    container_name: velocita
    image: isaaceindhoven/velocita-proxy
    volumes:
      - ./.cyberplace/velocita:/var/cache/velocita
    restart: always
    environment:
      MIRROR_PACKAGIST_URL: https://repo.packagist.org
      MIRROR_PACKAGIST_TYPE: composer
      MIRROR_ASSET_PACKAGIST_URL: https://asset-packagist.org
      MIRROR_ASSET_PACKAGIST_TYPE: composer
      MIRROR_GITHUB_URL: https://api.github.com
      #MIRROR_GITHUB_TYPE: composer
      #MIRROR_GITHUB_TYPE: git
      MIRROR_GITHUB_TYPE: zip
      VIRTUAL_HOST: velocita.tech
      VIRTUAL_PORT: 8080
      VELOCITA_URL: http://localhost:8080
      VELOCITA_HTTP_PORT: 8080
      VELOCITA_HTTPS_PORT: 8443

Also I added target link in my composer.lock
            "dist": {
                "type": "zip",
                "url": "http://velocita:8080/mirror/github/repos/doctrine/cache/zipball/382e7f4db9a12dc6c19431743a2b096041bcdd62",
                "reference": "382e7f4db9a12dc6c19431743a2b096041bcdd62",
                "shasum": ""
            },

So I can download this zip by url, but don't cache it. Only http responses cached
How it's work ?

Hi @AlexPitTech!
There are a couple of things you need to do to get things working:

Restore your composer.lock to whatever it was before you modified the URL.
Remove the MIRROR_GITHUB_* entries.
Add a GitHub codeload cache. This is a oneliner that you can find here.
Set the correct VELOCITA_URL to (probably) http://velocita.tech:8080.
I'm not sure what VIRTUAL_HOST and VIRTUAL_PORT are doing in your configuration, but they are not picked up by Velocita - so you can probably remove them.
Enable the Composer Velocita plugin if you have not already done so, and don't change anything in the way you use composer. Just run composer install/update/require/etc.

Some more information on the above:

You must never update your composer.lock file - just install the composer-velocita plugin and install the package as usual by running composer install or composer update. Check out the plugin's installation and usage.
You are setting MIRROR_GITHUB_TYPE to zip. That is not a valid value. It could be simple, but you are trying to cache the GitHub API which is not a good idea - you should cache GitHub codeload instead!

Thank you for the ansther @GMTA
I use nginxproxy/nginx-proxy on my localhost docker, so velocita.tech is available for host machine. But not available form docker container, where is composer install run. From the container it is available by http://velocita:8080. It is available from velocita container too. I'm not sure which one is correct and I've tried both
So I added MIRROR_GITHUB_CODELOAD_URL=https://codeload.github.com and is is work for me. Thank you!

Great to hear it works!


api: Add path restrictions in object api

Add checks for object names that start with . or / and disallow if
found.
Add unit tests for these checks

Coverage remained the same at ?% when pulling 7733a8404eadae44aec9b9739974e8e2432cb46d on rrojo/sysobject-check-paths into ad7c4dc48797690ff5ea34148890f927976f9d24 on master.

@r-rojo @tswhison Do we need to check if a sysobject name may be a symbolic link? This is a required SDL check, but I'm not sure if we should do it here.

@zhangzhang10 Since we're dealing with sysfs hear, the likelihood of encountering a symlink is very high; however, I think we are ok in that the path is always relative to the root stored in the token.  I believe that it is impossible to create an arbitrary rogue symlink in sysfs (at least without a driver).

@tswhison I agree with what you said. Thanks for the explanation.


rule similar to one-line for promise methods

I really prefer to see promise methods structured similar to try/catch/finally blocks like
something()
   .then(() => {
   })
   .catch((e) => {
   })
   .finally(() => {
   });

I don't believe there is currently a rule that handles this.

This seems like a subset of newline-per-chained-call. async/await is also a bit cleaner. Closing as already fixed.


Incorrect Repository for connect redis chart?

The helm chart for the redis connector refers to image: streamreactor/redis-sink, but on docker hub the only redis image is streamreactor/redis
see: charts/kafka-connect-redis-sink/values.yaml#L6
image:
  repository: streamreactor/redis-sink

Am i correct in thinking this is a mistake? or should i be pointing to a different set of repositories?

Hi @Richard-Mathie you are correct, you can use your own values.yaml to override this. Meanwhile I will fix this issue.

Closing, as it will be fixed with the raised PR. Thanks for reporting the issue.


Bug in ASSERT_IN_RANGE with NaN?

I think I have encountered a bug in ASSERT_IN_RANGE. When the value to be tested is NaN, the test passes. For example, this test passes:
TEST nan_handling(void) {
    ASSERT_IN_RANGE(1, NAN, 1e-6);
    PASS();
}

(Tested with Apple clang version 12.0.0 on macOS 11.2.3).
Since NaN is not equal to any number, and thus not equal to numbers in the range, this test should fail. I am willing to create a pull-request if this is indeed a bug. It can probably be corrected by inverting some of the inequalities in https://github.com/silentbicycle/greatest/blob/master/greatest.h#L541-L544.

I have created a pull request with a potential fix.


Persistent Subscriptions and resolve_links=True

I've noticed that catchup subscriptions support resolve_links=True, so we can listen to event type projection streams, and read the events from them
Persistent subscriptions, however, do not have this capability, and in 1.0.2 will return a link instead of the resolved event
Please add the resolve_links option to the read_subscription_to_stream method
NOTE: .NET client supports this behaviour so the server should support it

Thanks @realtonyyoung! I will do this now. Also the same thing on the read_all() method. It's not implemented but could/should be. Just give me a few minutes....

All the methods which could have resolve_links do have now:

read_stream()
get_stream()
subscribe_to_stream()
create_subscription_to_stream()
update_subscription_to_stream()
read_all()
subscribe_to_all()
create_subscription_to_all()
update_subscription_to_all()

The docs have been updated accordingly.
Please update to v1.0.3 and let me know if that's what you were looking for?
https://pypi.org/project/esdbclient/1.0.3/
Thanks again for raising the issue. Hope that helps!

Thank you, @johnbywater. Could you please update the samples for read-all and update-persistent-subscription to include the resolve_links method, ensuring they appear correctly on the website?

I've done that William. I made quite a few changes to the samples files.

Actually, these two have resolve_links:
events = client.read_all(
    commit_position=0,
    limit=100,
    resolve_links=True,
)

subscription = client.subscribe_to_stream(
    stream_name="$et-MyEventType",
    stream_position=0,
    resolve_links=True,
)

I'm just pushing this one now:
client.update_subscription_to_stream(
    stream_name=stream_name,
    group_name=group_name,
    resolve_links=True,
)

I don't know what reference you are using when pulling these snippets into the website? Are you using the 1.0 branch? Or a tag? I mean, do I need to tag these changes?

@johnbywater  No need to tag it. It will pull the latest changes from the 1.0 branch.

[offtopic here, but...]
I've actually made quite a lot of changes to the samples. I hope you like what I've done. I was just trying to rationalise them after seeing how they appear within the surrounding text. Also, for example, reordering the snippets in the Python files so they have the same order as they appear on the website (for maintainability).
The things that took me the most time were the sections that read from a subscription. Making something that works in the same way in each example, is readable and instructive, and actually works as code. It's kind of hard to match the slightly deranged surrounding prose. But I tried to do my best. What do you think?
Catch-up subscription to stream:
last_stream_position = 0

while True:
    subscription = client.subscribe_to_stream(
        stream_name=stream_name,
        stream_position=last_stream_position,
    )
    try:
        for event in subscription:
            # remember stream position
            last_stream_position = event.stream_position

            # record stream position
            handle_event(event)

    except AbortedByServer:
        # resubscribe from last known position
        continue

Catch-up subscription to all with server-side filtering and checkpoints:
# get last recorded commit position
last_commit_position = 0

while True:
    subscription = client.subscribe_to_all(
        commit_position=last_commit_position,
        filter_by_stream_name=True,
        filter_include=["account.*", "savings.*"],
        include_checkpoints=True,
    )
    try:
        for received in subscription:
            last_commit_position = received.commit_position

            # checkpoints are like events but only have a commit position
            if isinstance(received, Checkpoint):
                print("We got a checkpoint!")
            else:
                print("We got an event!")

            # record commit position
            handle_event(received)

    except AbortedByServer:
        # resubscribe from last known position
        continue

Reading a persistent subscription (the final "manual acks" section):
while True:
    subscription = client.read_subscription_to_stream(
        group_name=group_name,
        stream_name=stream_name,
    )
    try:
        for event in subscription:
            try:
                handle_event(event)
            except Exception:
                if event.retry_count < 5:
                    subscription.nack(
                        event_id=event.id, action="retry"
                    )
                else:
                    subscription.nack(
                        event_id=event.id, action="park"
                    )
            else:
                subscription.ack(event_id=event.id)

    except AbortedByServer:
        # reconnect
        continue

The trick is that the handle_event() method calls subscription.stop() which terminates the iterator, and then there's a break immediately after the try/except block after the "end" tag so it's hidden from the website. So each snippet runs through once and then exits. But they look like they will run forever despite "dropped subscription" unless another type of exception is raised, which is kind of what you want.

@johnbywater
Please do not forget to also add the link_event_id attribute to RecordedEvent. It will be necessary when, for example, we want to do ack() the linked stream in a Persistent stream.

I just edited the samples and the comment above to have:
    except ConsumerTooSlow:
        # subscription was dropped
        continue

I will stop making changes now :) if you would be so kind as to pull these latest changes into the website so we can review it all again, that would be super great!

@johnbywater
I just want to clarify the my above comment and:
client = get_event_store_client()
 client.create_subscription_to_stream(
     group_name="cooking",
     stream_name=f"$ce-acquired_orders",
     resolve_links=True,
 )
 subscription = client.read_subscription_to_stream(
     group_name="cooking",
     stream_name=f"$ce-acquired_orders",
 )

 for event in subscription:
     subscription.ack(event_id=event.id)

This code doesn't work because we can't ack() the linked streams.

@ikasymov thanks for the suggestion. I will try to do this. I'm still learning about links. I don't understand this aspect very well. I was talking about it with Yves this morning. He said he will send me a document that explains everything. Then I will review all this and try to fix what's lacking.
In the meantime, if you would like to explain a bit more, that would be very helpful. For example, from where does the link ID come from when the link events have, and also haven't, been resolved? I was puzzling over this for several hours yesterday.

I just want to clarify the my above comment ....

Thanks @ikasymov! What should be the value of event.linked_event_id?
There's ReadResp.event.link which is a ReadResp.RecordedEvent. And ReadResp.RecordedEvent has an id which is a UUID. Do I used the ID from the link recorded event?

@johnbywater
I think we should use the ReadResp.event.link.id as the linked_event_id.
If resolve_links=False then linked_event_id value will be None.
I'm not very good at this, but to me, it looks like this.
I have a good idea:
What if we completely return the link attribute as a RecordedEvent.link: RecordedEvent if it is present, if not, then do not return it. In this situation, we will not be bound to the resolve_links field.

I think RecoredEvent dataclass should be like this:
@dataclass(frozen=True)
class RecordedEvent:
    ...
    link: 'RecordedEvent'

It will be good because my own project is blocked right now by this problem. Thanks very much!! @johnbywater

@ikasymov what did you mean by "we will not be bound to the resolve_links field"?

@johnbywater
I mean we don't need to check the resolve_links flag to create the link attribute. It is enough for us to understand that GRPC returns the link attribute, if it returns a link then create it.

@ikasymov I implemented your suggestion in 0b63dec5850d83ed96389294bd24106d03a70481

The link attribute is an optional RecordedEvent that carries information about "links". This allows link events to be acknowledged or negatively acknowledged when using persistence subscriptions with the resolve_links argument set to True.

https://pypi.org/project/esdbclient/#recorded-events
Please update to version 1.0.6 and let us know what you think?

I mean we don't need to check the resolve_links flag to create the link attribute. It is enough for us to understand that GRPC returns the link attribute, if it returns a link then create it.

Then create what? :-) I'm sorry I still don't understand! I don't understand what "link" contains. The only thing I understand is that if you call read_all() with resolve_links=True and filter_exclude=[] then you get several instances of all of your events, because of the system projections. That's actually all I understand right now. I need to understand this better.

@ikasymov I need to go out soon, so if v1.0.6 doesn't unblock your project, we will need to resume tomorrow. Thanks for your contributions today!

@johnbywater I mean about that https://github.com/pyeventsourcing/esdbclient/commit/0b63dec5850d83ed96389294bd24106d03a70481#diff-40f956c8956a4a333885159e00886da46aa099bd929aa9ced8a950be94f20a6bR163
And your implementation looks like how I expected. Thanks so much!

I mean about that

Oh right yes! I understand. I thought you were talking about your project. It's nice that we don't need somehow to pass the resolve_links value into the function that returns RecordedEvent. It's not available when reading a persistent subscription, unless the subscription info is retrieved from the server.

And your implementation looks like how I expected. Thanks so much!

Great to hear! Let us know if your project is unblocked now? :)

Great to hear! Let us know if your project is unblocked now? :)

Yep! Thanks!

Fabulous.


State refactoring #1

#staterefactor
part of work for https://github.com/polymorpher/one-wallet/issues/198

Let's deprecate unused variables such as  fetching, error, etc.