feat+refactor+fix: per-channel backend support in SDK

Description
The config format for per-channel backend is revised such that it is well structured. Along with the format change, the logic to consume per-channel backend in the ChannelManager is refactored due to the config format changes.
In the testing with the hybrid example, a bug manifested in the mqtt broker. If a message arrives after _rx_task is cancelled, setting a message in the asyncio's future raises an exception. As a fix, if the future is cancelled, the function on_message simply returns.
Type of Change

[ ] Bug Fix
[x] New Feature
[ ] Breaking Change
[x] Refactor
[ ] Documentation
[ ] Other (please describe)

Checklist

[ ] I have read the contributing guidelines
[ ] Existing issues have been referenced (where applicable)
[ ] I have verified this change is not present in other open pull requests
[ ] Functionality is documented
[ ] All code style checks pass
[ ] New code contribution is covered by automated tests
[ ] All new and existing tests pass

Codecov Report

Merging #387 (95715e2) into main (198f5e4) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main     #387   +/-   ##
=======================================
  Coverage   15.15%   15.15%
=======================================
  Files          48       48
  Lines        2778     2778
=======================================
  Hits          421      421
  Misses       2328     2328
  Partials       29       29

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


Migrate neli serialization to buffering crate

Currently I'm developing a crate to handle buffer operations primarily targeting network packet serialization. I plan to migrate neli's serialize/deserialize functionality and offload those to the buffering crate.

Fixed in 0.3.1


1mb rds log limit

Hi,
Just wanted to ask how you got around the 1mb limit on the log file downloads?
Thanks

Hi,
I'm not sure to understand. Are you experiencing issues downloading big files with the script?

yes, log files max size is 1mb when I download using rds-pgbadger but they are much bigger on aws

Ok, I see what I overlooked. I'm going to fix that ASAP

thank you

@talatbaig just released a new version. It should solve the problem.
Please let me know if you have any other issue.


Implement conditional rendering of components and associated actions

Use JWT in Context to:

conditionally render post actions
conditionally render comment form and actions

[ ] Dashboard redirects users to login if token is no longer valid

[ ] Post Actions menu conditionally renders based on context using jwt

[x] Comment menu conditionally renders based on post ownership


mobile: topic boxes do not wrap to next line on landing page

In mobile viewport topic boxes require scrolling to right to view. Would prefer if they wrapped to next line

Possibly just missing small-12 class directive for grid.

Component: Topic with horizontal scroll (mobile)


docs(kong-mesh): initial mesh opa docs

Signed-off-by: slonka<EMAIL_ADDRESS>Not sure which branch to point to for Kong Mesh 2.1 release :(
Also how do I make sure it only appears in navbar since 2.1 KM release?
Description

What did you change and why?

I've added docs for new version of OPA policy.

Include any supporting resources, e.g. link to a Jira ticket, GH issue, FTI, Slack, Aha, etc.

closes https://github.com/Kong/kong-mesh/issues/2494
Testing instructions
Netlify link:
Checklist

[X] Review label added
[X] PR pointed to correct branch (main for immediate publishing, or a release branch: e.g. release/gateway-3.2, release/deck-1.17)

Need to branch off from a good branch :/


Adding a react portfolio to the projects.

Hey, I have built a personal portfolio project using React and tailwind can I add it to the project section? This is my first open-source contribution so am I allowed to do this?

Of course @theshrish46 . Assigned

Thankyou !!

Completed #315


Add page number pagination to ListMyEvents and EventSearch

This PR adds pageNumber pagination to ListMyEvents and EventSearch while maintaining the existing pageToken pagination.
Discussed with @bakeiro and decided to do it this way if the backend part won't take too long.
Backend checklist

[ x ] Formatted my code by running ruff check --select I --fix . && ruff check . && ruff format . in app/backend
[ x ] Added tests for any new code or added a regression test if fixing a bug
[ ] All tests pass
[ x ] Run the backend locally and it works
[ N/A ] Added migrations if there are any database changes, rebased onto develop if necessary for linear migration history

Also halp why is my deployment failing, I'm not able to see it since we don't have an account for me there.

Also halp why is my deployment failing, I'm not able to see it since we don't have an account for me there.

the result of the build it's in Gitlab... do you need an account to see it? anyway, by executing yarn build in the directory app/web is causing some issues... maybe that's the root of the bug

Also halp why is my deployment failing, I'm not able to see it since we don't have an account for me there.

the result of the build it's in Gitlab... do you need an account to see it? anyway, by executing yarn build in the directory app/web is causing some issues... maybe that's the root of the bug

No, when I click through it says I need an account and Aapeli said it costs to add seats. yarn build was a good idea though, that gave me a clue, thanks!


Handle time normalization for nonexistent and ambiguous times

[x] Closes #2132
[x] I am familiar with the contributing guidelines
[x] Tests added
[x] Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
[x] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

Started running the code from this branch on a real problem and realized the handling of ambiguous='infer' is not sufficient.  The issue can be reproduced in the following test case:
eot = np.array([-3.935172, -4.117227, -4.026295])
longitude = 82.3666
times = pd.DatetimeIndex([
    '2014-11-02 09:00:00',
    '2014-11-02 10:00:00',
    '2014-11-02 11:00:00',
]).tz_localize('America/Havana')
solarposition.hour_angle(times, longitude, eot)

We get:
pytz.exceptions.AmbiguousTimeError: There are 2 dst switches when there should only be 1.

I think the infer piece requires exactly 2 duplicate times but we may have more in our times array.  Not sure what the best solution is at this point.  Any ideas?

I suppose we could look at the UTC offsets to build an array of bools indicating which times are DST.  We'd then pass ambigious=dst_array (https://pandas.pydata.org/docs/reference/api/pandas.Series.tz_localize.html).

Hmm...I see that I didn't think enough about the tests :)  According to the pandas docs infer requires the timestamps to be monotonic, which they aren't after normalize.

This passes tests, but is likely slow due to the looping. I'm now thinking that perhaps ambiguous=NaT would be better. This problem arises only when a user wants to use DST-aware timestamps in a few places and is not careful when constructing the series of timestamps. It seems better to suggest the user localize using a non-DST timezone such as GMT-4. As far as importing data recorded with DST timestamps, if the timestamps are correct, the ambiguous times won't be in the data.

It seems better to suggest the user localize using a non-DST timezone such as GMT-4

That's a good point.  In my own use case I could handle the DST stuff before passing the times into hour_angle.

I'm now thinking that perhaps ambiguous=NaT would be better.

I think that would result in nans being returned from hour_angle which I think could be confusing.  I think even letting the AmbiguousTimeError be raised is fine if the documentation indicates that DST should be handled outside pvlib.  That way the user is forced to address what's happening instead of maybe being confused about receiving nans.

I think even letting the AmbiguousTimeError be raised is fine if the documentation indicates that DST should be handled outside pvlib. That way the user is forced to address what's happening instead of maybe being confused about receiving nans.

+1

Do you think I should just close this PR then?  For my own use case, if I'm handling the DST stuff outside pvlib anyway then I don't expect to see a NonExistentTimeError either.  If you'd like to keep the nonexistent='shift_forward' I can just remove the ambiguous=is_dst stuff.

@scttnlsn can you add yourself to the Contributors list in the whatsnew file? I can do that for you, if needed.

@pvlib/pvanalytics-maintainer if no objections are raised, I will merge this on 9/13

What about _local_times_from_hours_since_midnight and _times_to_hours_after_local_midnight? I think they too are subject to the same bug of tz_localize and tz_normalize and can be fixed together in the same way easily.


Link to charter

This links to our working charter. Once it is merged, I'll update this to point to the the permanent location.

Yea but just move to the end of the existing archive doc.
Sent from my iPhone

On Jul 17, 2018, at 9:02 AM, Morgan Bauer<EMAIL_ADDRESS>wrote:
@MHBauer approved this pull request.
/lgtm
/approve
/etc
In README.md:

@@ -60,8 +60,8 @@ Also see the developer's guide for information on how to
build and test the code.

We have weekly meetings - see
-Kubernetes SIGs
-(search for "Service Catalog") for the exact date and time. For meeting agendas
+our SIG Readme
+for details. For meeting agendas
and notes, see Kubernetes SIG Service Catalog Agenda.
comment while we're editing here. we have about a year of meetings in our current doc, should we consider rotating to a new doc?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub, or mute the thread.

/lgtm


Install from private repository not on Packagist

I want to create my Modules as private packages within Bitbucket and be able to install and update my packages using your package. Is this possible and if it is can you give some guidance as to how to go about implementing this solution?

@emperorjm did you find any solution for your query?

@nasirkhan @emperorjm You can use Composer's VCS Repositories for this; https://getcomposer.org/doc/05-repositories.md#loading-a-package-from-a-vcs-repository

thanks @joshbrw  for sharing the doc. By the time i added the comment i found an another related doc for private packages https://getcomposer.org/doc/articles/handling-private-packages-with-satis.md.
do you have any plan t easily integrate these features?

@nasirkhan There are no features to implement on my side - it's simply a case of putting your custom module into a git repository somewhere, referencing it in your require section of your composer.json and adding it as a vcs repository in your composer.json.


Removing "active" Key in Sessions File (Source Control Issues)

Dear Terminal Keeper Development Team,
First and foremost, thank you for creating such a fantastic extension. We rely on it daily, and it has greatly enhanced our workflow. Our teams work within an Nx MonoRepo, developing different apps and running various sessions.
However, there is a particular issue that has caused some frustration among team members. Every time a new session is started, the value of the "active" key (e.g., "active": "team-a-app-foo") is modified. Since the .vscode/sessions.json file is version-controlled, when another team submits a pull request, this value is replaced by the key of their own session (e.g., "active": "team-b-app-bar"). This results in frequent, unnecessary pull requests that only reflect this change, driving some of our colleagues to distraction. 🫣😇
As the Architect overseeing this process, I wanted to inquire whether the "active" key is truly necessary? Would it be possible to remove it entirely? Ideally, the sessions file should only be modified when new session configurations are added or existing ones are updated, rather than each time a session is started by a different team.
I hope my query is clear and makes sense. Your consideration of this request would be greatly appreciated.
Thank you very much in advance for your efforts.
Best regards,..

@webia1 First of all, thank you for your feedback. It feels like you sent me a gift! I truly appreciate it. Even though it's small, it motivates me to create more great tools for the community.
Now, regarding the issue you raised, let me briefly explain the "active" field. This field is used to store information about the last active session. We use it to determine which session will be activated when you start VSCode.
To address your concern, you just need to set the "activateOnStartup" option to "false." This way, the terminal session won’t start on startup, and we won’t update the "active" field anymore.
Please give it a try with the latest version, v1.1.21.
Thank you!

Dear @nguyenngoclongdev, thank you for your thoughtful feedback.
You mentioned: "Now, regarding the issue you raised, let me briefly explain the 'active' field. This field is used to store information about the last active session. We use it to determine which session will be activated when you start VSCode."
For our use case—multiple independent teams from different departments or countries working on several apps within an NxMonoRepo—we would prefer that the "menu" for selecting a session is displayed every time VSCode is launched or reloaded, as it was previously.
This allows users to choose their session (which may involve multiple interconnected apps, such as an Angular frontend, a NestJS middleware, and a Git terminal in the same session) without any updates being made to sessions.json, which needs to be versioned.
While automatically starting the last session may be convenient for a single app development, it becomes an obstacle when multiple teams need to start various interdependent apps (with all teams working within the same NxMonoRepo).
In such cases, the active session from another team may need to be manually terminated and the desired session started, which can be cumbersome, especially if a previous merge request has already overwritten the active field.
For this extension to be suitable for enterprise environments (with international, globally distributed teams, multiple apps, and several departments):

A previous or different session must not make changes to sessions.json, which needs to be versioned.
If a team wants to automatically start a session, it would be better to configure this in settings.json (e.g., "start automatically and select this session for my team, or just for me"). This way, each team or team member can use its own workspace settings without interfering with others.

In other words, sessions.json should only list the sessions, while additional settings should be located in the workspace settings (which ideally are not versioned and therefore placed in .gitignore).
This approach would ensure that sessions.json remains clean, with changes only made when a new session configuration is created or an existing one is modified. From an enterprise perspective, it would make sense to separate sessions from their configurations.
BTW: Even if the workspace settings (settings.json) are versioned (as they currently are), and a team member changes a setting that annoys everyone else, that person will face the wrath of their teammates. We've already established a workflow and contingency plan for such situations. Currently, as the architect who introduced this extension, I’m the one catching all the heat (a bit exaggerated, of course).
In summary: The session selection should be displayed at each start or reload of VSCode, and once a team or team member selects the desired session configuration, it should be started without making any changes to sessions.json, which is versioned with the entire workspace.
This way, everyone on our side would be happy, and maybe we can also make somehow sure that you’re a bit happier too :)
Best regards,..

@webia1 Thank you very much for your comments!
In the latest version (v1.1.22), we’ve updated the tool to allow you to set the "active" fields from the user configuration.
In future updates, I may consider adding more fields like "activateOnStartup," "keepExistingTerminals," and "themes."
To avoid affecting previous users of Terminal Keeper, I’ve implemented a priority order for setting and updating. If you have a configuration in your user settings, we will prioritize reading and updating from there. If there's no configuration information in the user settings, we will read and update from the sessions file.
I hope this update will make your work easier!


Call to a member function bindTo() on null

Serializable Closure Version: 1.2.2
Laravel Version: 9.40.1
PHP Version: 8.1.12
Database Driver & Version: postgres 14

Description:
I was working on implementing batched jobs using Bus::batch when I noticed that chaining any completion callbacks will throw an error

Call to a member function bindTo() on null

Note
Extracting the closure from ->then to a protected function then calling it works 🤷♂
like ->then($this->notifyOwner())

I tried it with Tinker, and I got the same results, so I tried to simplify the work and tested the example stated in the readme file here using both Tinkerwell and tinker with the same results.
Psy Shell v0.11.9 (PHP 8.1.12 — cli) by Justin Hileman
> use Laravel\SerializableClosure\SerializableClosure;
> $closure = fn () => 'james';
= Closure() {#5091 …2}

> SerializableClosure::setSecretKey('secret');
= null

> $serialized = serialize(new SerializableClosure($closure));

   WARNING  file_get_contents(eval()'d code): Failed to open stream: No such file or directory in vendor/laravel/serializable-closure/src/Support/ReflectionClosure.php on line 829.

= "O:47:"Laravel\SerializableClosure\SerializableClosure":1:{s:12:"serializable";O:46:"Laravel\SerializableClosure\Serializers\Signed":2:{s:12:"serializable";s:174:"O:46:"Laravel\SerializableClosure\Serializers\Native":5:{s:3:"use";a:0:{}s:8:"function";s:0:"";s:5:"scope";N;s:4:"this";N;s:4:"self";s:32:"00000000000013e30000000000000000";}";s:4:"hash";s:44:"A3kjjoOaJHAtn4QzC61Wx//EuVlbAb8Q6PmTlStglb8=";}}"

> $closure = unserialize($serialized)->getClosure();

   ERROR  Call to a member function bindTo() on null in vendor/laravel/serializable-closure/src/Serializers/Native.php on line 194.

Steps To Reproduce:
Open tinker and try the usage example listed here

@nunomaduro even if I was calling Bus::batch which will be eventually run by laravel not REPL?
Cause trying to use the completion callback is what lead me to notice this issue


CAMEL-16605 camel-zipkin custom tags should be attached to exchange automatically

Added method ZipkinTracer#setClientCustomTags() to allow specifying custim tags which should be attached to all spans automatically by ZipkinClientRequestAdapter.

I don't k now how to write test(s) for this, but if someone could point me in the right direction I will add.


Getting Started with MRTK doc redundant

https://docs.microsoft.com/en-us/windows/mixed-reality/mrtk-getting-started
This doc page should be removed. It's redundant with both the README and Getting Started on MRTK
https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/GettingStartedWithTheMRTK.html
If the UX controls or anything updates, this page needs to be updated too

@grbury - Thoughts?

@ericob who also self identified issue

I don't think we should remove, but agree it could be more robust to eliminate discrepancies and gaps across them
The page is intended to advertise all of the greatness in MRTK for those that don't know to visit the Github directory and docs.
Perhaps we could remove temporal references, like unity version, etc. And have those mastered in only the MRTK page.
Regardless, one should be able to start in either portal and easily jump to the other to get added context.

@grbury , the main current problem is as MRTK evolves this pages would need to be updated as well.
The UI and Interaction Building block and Feature areas sections in particular fade out quickly. And have a lot of links that could die etc. Same with Minimum Requirement for MRTK v2
The high level principles and reference to the Getting Started at mrtk.io are great and unlikely to change


Saving files as MP4 Instead

Hi,
Really cool project by the way.
I was editing the code and trying to find a way to save the downloaded files as MP4 instead (the way that they are downloaded). I've managed to tweak the code in download_youtube.py. The only thing left to do is to add a simple check box to the GUI to allow the user to save as MP3 or MP4. How would I accomplish? The value of this boolean variable would passed into the thread_query_youtube function as an argument.
I'd appreciate any help or direction you can give me.
If I get this working, I can do a pull request if you are interested in this functionality.

Hey Ezequiel, this is a great idea!
Do you have QT Designer? This is a desktop application to quickly generate a UI (add buttons, labels, tables, etc) , which can compile down to python code with a simple command:
$ pyuic5 some_ui.ui -o some_ui.py
Anyways, what if we added a checkbox that says save MP4. Like you said, this can be a boolean. If you look at line 419 in main.py, you’ll see that I purposefully remove the mp4 files after conversion to mp3 is complete (shutil.rmtree(mp4_path)  # remove mp4 dir).
Now this may not be the best design idea, but if this is triggered on a boolean conditional, then we can either keep or remove this directory.
If you make a cool patch, feel free to submit a PR - always looking to collaborate!

Ira

On May 5, 2020, at 10:44 AM, Ezequiel Juarez Garcia<EMAIL_ADDRESS>wrote:
Hi,
Really cool project by the way.
I was editing the code and trying to find a way to save the downloaded files as MP4 instead (the way that they are downloaded). I've managed to tweak the code in download_youtube.py. The only thing left to do is to add a simple check box to the GUI to allow the user to save as MP3 or MP4. How would I accomplish? The value of this boolean variable would passed into the thread_query_youtube function as an argument.
I'd appreciate any help or direction you can give me.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/irahorecka/YouTube2Mp3/issues/8, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALT4J5Y3JIITROHQSYZAZUDRQBGBDANCNFSM4MZYYOAQ.

Awesome! I'll tinker with QT Designer and see what I can put together. Thanks!

merged PR


Add VulkanMemoryAllocator to Vulkan implementation.

Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Documentation has been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
This change introduces some build system fixes as well as adding VMA to our dependency list. This particular PR will not actually invoke anything, this is to just get the ball rolling.
Is there an open issue that this resolves? If so, please link it here.
No, but is part of a graphics API overhaul I am doing.
What is the current behavior? (You can also link to an open issue here)
VMA does not exist in the NovelRT project.
What is the new behavior (if this is a feature change)?
VMA exists in the NovelRT project.
Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
The build system no longer builds the dependencies as a separate CMake process.
Other information:
N/A

:shipit:


Make TreeMesh type general

Maybe good point in time to combine this with https://github.com/trixi-framework/Trixi.jl/issues/1194

Maybe good point in time to combine this with #1194

👍

Not sure why Aqua.jl fails, any ideas?

Also in parallel_tree and serial_tree there are some Float64 NaNs - for example see
https://github.com/trixi-framework/Trixi.jl/blob/8743712d824337afbf99601ad5531f7040d95852/src/meshes/parallel_tree.jl#L190-L204
Basically NaN of type Float64 will not cause type instability since they will make everything NaN in numerical operations but I'm worried about something like
t.coordinates[:, first:last] .= one(typeof(t.coordinates[1, 1])

So it would be better to make NaN also change with the input type how do you think about it @ranocha?

👍👍👍

Also in parallel_tree and serial_tree there are some Float64 NaNs - for example see
https://github.com/trixi-framework/Trixi.jl/blob/8743712d824337afbf99601ad5531f7040d95852/src/meshes/parallel_tree.jl#L190-L204
Basically NaN of type Float64 will not cause type instability since they will make everything NaN in numerical operations but I'm worried about something like
t.coordinates[:, first:last] .= one(typeof(t.coordinates[1, 1])

So it would be better to make NaN also change with the input type

That should happen right now?
julia> foo!(zeros(Float64, 10))
10-element Vector{Float64}:
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN

julia> foo!(zeros(Float32, 10))
10-element Vector{Float32}:
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN

julia> foo!(zeros(Float16, 10))
10-element Vector{Float16}:
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN
 NaN

@huiyuxie If you like, please review this PR first and request my review when you're done.

please review this PR first and request my review when you're done.
🆗👌

Or we could also keep one interface for each - SerialTree{NDIMS, RealT} and SerialTree{1, RealT} (and similarly, ParallelTree{NDIMS, RealT} and ParallelTree{1, RealT} ) and change original SerialTree{NDIMS} to SerialTree{NDIMS, RealT} and SerialTree{1} to SerialTree{1, RealT} (and also for parallel tree) in precompile.
Which way would you prefer  cc @DanielDoehring @ranocha ?

please review this PR first and request my review when you're done.

👌and what is your foo! function definition @ranocha ?

Sorry, fixed above


python311Packages.etils: 1.9.0 -> 1.9.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.etils is: Collection of eclectic utils
meta.homepage for python311Packages.etils is: https://github.com/google/etils
meta.changelog for python311Packages.etils is: https://github.com/google/etils/blob/v1.9.1/CHANGELOG.md
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.9.1 with grep in /nix/store/0zy9a82qg25vcnsh8hpsg5rghj9h3mmb-python3.11-etils-1.9.1
found 1.9.1 in filename of file in /nix/store/0zy9a82qg25vcnsh8hpsg5rghj9h3mmb-python3.11-etils-1.9.1

Rebuild report (if merged into master) (click to expand)

22 total rebuild path(s)

22 package rebuild(s)

First fifty rebuilds by attrpath

python311Packages.array-record
python311Packages.dalle-mini
python311Packages.distrax
python311Packages.dm-control
python311Packages.dm-haiku
python311Packages.dm-sonnet
python311Packages.elegy
python311Packages.etils
python311Packages.flax
python311Packages.mujoco
python311Packages.orbax-checkpoint
python311Packages.rlax
python311Packages.shimmy
python311Packages.tensorflow-datasets
python311Packages.torchrl
python311Packages.treex
python311Packages.vqgan-jax
python312Packages.etils
python312Packages.mujoco
python312Packages.orbax-checkpoint
python312Packages.torchrl

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0zy9a82qg25vcnsh8hpsg5rghj9h3mmb-python3.11-etils-1.9.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.etils https://github.com/r-ryantm/nixpkgs/archive/35668b16bdbbe2040d28ee7bb96456535b3f64a1.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/35668b16bdbbe2040d28ee7bb96456535b3f64a1#python311Packages.etils

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0zy9a82qg25vcnsh8hpsg5rghj9h3mmb-python3.11-etils-1.9.1
ls -la /nix/store/0zy9a82qg25vcnsh8hpsg5rghj9h3mmb-python3.11-etils-1.9.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

14 packages marked as broken and skipped:

python311Packages.distrax
python311Packages.distrax.dist
python311Packages.dm-sonnet
python311Packages.dm-sonnet.dist
python311Packages.elegy
python311Packages.elegy.dist
python311Packages.rlax
python311Packages.rlax.dist
python311Packages.tensorflow-datasets
python311Packages.tensorflow-datasets.dist
python311Packages.treex
python311Packages.treex.dist
python312Packages.torchrl
python312Packages.torchrl.dist

28 packages built:

python311Packages.array-record
python311Packages.array-record.dist
python311Packages.dalle-mini
python311Packages.dalle-mini.dist
python311Packages.dm-control
python311Packages.dm-control.dist
python311Packages.dm-haiku
python311Packages.dm-haiku.dist
python311Packages.etils
python311Packages.etils.dist
python311Packages.flax
python311Packages.flax.dist
python311Packages.mujoco
python311Packages.mujoco.dist
python311Packages.orbax-checkpoint
python311Packages.orbax-checkpoint.dist
python311Packages.shimmy
python311Packages.shimmy.dist
python311Packages.torchrl
python311Packages.torchrl.dist
python311Packages.vqgan-jax
python311Packages.vqgan-jax.dist
python312Packages.etils
python312Packages.etils.dist
python312Packages.mujoco
python312Packages.mujoco.dist
python312Packages.orbax-checkpoint
python312Packages.orbax-checkpoint.dist

Maintainer pings
cc @mcwitt for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python311Packages.etils is: Collection of eclectic utils
meta.homepage for python311Packages.etils is: https://github.com/google/etils
meta.changelog for python311Packages.etils is: https://github.com/google/etils/blob/v1.9.2/CHANGELOG.md
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.9.2 with grep in /nix/store/vsgbr7mnhmsqpwwz1sw8bzhafxlpcj0d-python3.11-etils-1.9.2
found 1.9.2 in filename of file in /nix/store/vsgbr7mnhmsqpwwz1sw8bzhafxlpcj0d-python3.11-etils-1.9.2

Rebuild report (if merged into master) (click to expand)

22 total rebuild path(s)

22 package rebuild(s)

First fifty rebuilds by attrpath

python311Packages.array-record
python311Packages.dalle-mini
python311Packages.distrax
python311Packages.dm-control
python311Packages.dm-haiku
python311Packages.dm-sonnet
python311Packages.elegy
python311Packages.etils
python311Packages.flax
python311Packages.mujoco
python311Packages.orbax-checkpoint
python311Packages.rlax
python311Packages.shimmy
python311Packages.tensorflow-datasets
python311Packages.torchrl
python311Packages.treex
python311Packages.vqgan-jax
python312Packages.etils
python312Packages.mujoco
python312Packages.orbax-checkpoint
python312Packages.torchrl

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/vsgbr7mnhmsqpwwz1sw8bzhafxlpcj0d-python3.11-etils-1.9.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python311Packages.etils https://github.com/r-ryantm/nixpkgs/archive/351cdbe4f94fbee8e40f8bbe78458b91985cd3e6.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/351cdbe4f94fbee8e40f8bbe78458b91985cd3e6#python311Packages.etils

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/vsgbr7mnhmsqpwwz1sw8bzhafxlpcj0d-python3.11-etils-1.9.2
ls -la /nix/store/vsgbr7mnhmsqpwwz1sw8bzhafxlpcj0d-python3.11-etils-1.9.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

14 packages marked as broken and skipped:

python311Packages.distrax
python311Packages.distrax.dist
python311Packages.dm-sonnet
python311Packages.dm-sonnet.dist
python311Packages.elegy
python311Packages.elegy.dist
python311Packages.rlax
python311Packages.rlax.dist
python311Packages.tensorflow-datasets
python311Packages.tensorflow-datasets.dist
python311Packages.treex
python311Packages.treex.dist
python312Packages.torchrl
python312Packages.torchrl.dist

28 packages built:

python311Packages.array-record
python311Packages.array-record.dist
python311Packages.dalle-mini
python311Packages.dalle-mini.dist
python311Packages.dm-control
python311Packages.dm-control.dist
python311Packages.dm-haiku
python311Packages.dm-haiku.dist
python311Packages.etils
python311Packages.etils.dist
python311Packages.flax
python311Packages.flax.dist
python311Packages.mujoco
python311Packages.mujoco.dist
python311Packages.orbax-checkpoint
python311Packages.orbax-checkpoint.dist
python311Packages.shimmy
python311Packages.shimmy.dist
python311Packages.torchrl
python311Packages.torchrl.dist
python311Packages.vqgan-jax
python311Packages.vqgan-jax.dist
python312Packages.etils
python312Packages.etils.dist
python312Packages.mujoco
python312Packages.mujoco.dist
python312Packages.orbax-checkpoint
python312Packages.orbax-checkpoint.dist

Maintainer pings
cc @mcwitt for testing.


octomap inside dynobench

Support for octomap obstacles are added in dynobench. Tested with double_integrator_3d and visualization.

Am i suppose to review and accept the merge? Or @whoenig?
I would rather only be in charge of merging into main.

It makes more sense if I review non-main merges. However, I generally only review if I am explicitly requested as a reviewer, since I don't know if the PR is actually complete otherwise.

@quimortiz you can do approve when it is going to be merged into main, before that no need to approve, just comments on any improvement/test ideas would be helpful for me for now.


Feature/geo component

add popup to map
change exclusion from each selected item
support searching for places
disable excluded validation
use suggested radius only for cities, custom locations and place


Orchestration

Create a mini orchestration to handle TSM requests, including both methods: combine_specz_catalogs and make_training_set.

TBD: split into smaller issues or tasklist

Infrastructure requirements: http://ticket.linea.org.br/ticket/14429


Patch Storage Bucket IAM Policy

I am trying to patch a storage bucket's IAM policy using the storage's GCP Type Provider. However the Cloud Storage JSON API answers back with an error 400: Bad Request.
I based my template on an example that updates IAM policies at the project level. The example can be found here: https://github.com/GoogleCloudPlatform/deploymentmanager-samples/blob/master/google/resource-snippets/cloudresourcemanager-v1/patch_iam_project.yaml
This is what my template looks like:
"""Patch IAM Policy for a Storage Bucket"""

def GenerateConfig(context):

  resources = [{
    'name': 'get-bucket-iam-policy',
    'action': 'gcp-types/storage-v1:storage.buckets.getIamPolicy',
    'metadata': {
      'runtimePolicy': ['UPDATE_ALWAYS']
    },
    'properties': {
      'bucket': 'MY_BUCKET'
    }
  }, {
    'name': 'patch-bucket-iam-policy'
    'action': 'gcp-types/storage-v1:storage.buckets.setIamPolicy',
    'properties': {
      'bucket': 'MY_BUCKET',
      'policy': '$(ref.get-bucket-iam-policy)',
      'gcpIamPolicyPatch': {
        'add': [{
          'role': 'roles/storage.admin',
          'members': [ 'serviceAccount:ROBOT_SERVICE_ACCOUNT' ]
        }]
      }
    }
  }]

  return {'resources': resources}

When executing the deployment, this is the answer I receive from DM:
ERROR: (gcloud.deployment-manager.deployments.update) Error in Operation [operation-1538660104879-5776738fb3b99-2d8cdc3d-a8609678]: errors:
- code: RESOURCE_ERROR
  location: /deployments/MY_DEPLOYMENT/resources/patch-bucket-iam-policy
  message: '{
  "ResourceType":"gcp-types/storage-v1:storage.buckets.setIamPolicy",
  "ResourceErrorCode":"400",
  "ResourceErrorMessage":{
    "code":400,
    "errors":[{
      "domain":"global",
      "message":"A policy to update must be provided.",
      "reason":"required"
    }],
    "message":"A policy to update must be provided.",
    "statusMessage":"Bad Request",
    "requestPath":"https://www.googleapis.com/storage/v1/b/MY_BUCKET/iam",
    "httpMethod":"PUT"
  }
}'

As you can see,  the policy object  present in the JSON does not seem to be picked up by DM. I tested the get-bucket-iam-policy operation by exposing its output and it seems fine to me:
OUTPUTS           VALUE
bucket-iam-policy[resourceId]  projects/_/buckets/MY_BUCKET
bucket-iam-policy[kind]        storage#policy
bucket-iam-policy[etag]        CAE=
bucket-iam-policy[bindings]    [
  {u'role': u'roles/storage.legacyBucketOwner', u'members': [u'projectEditor:MY_PROJECT', u'projectOwner:MY_PROJECT']},
  {u'role': u'roles/storage.legacyBucketReader', u'members': [u'projectViewer:MY_PROJECT']}
]

I couldn't find any example on how to make this work, and couldn't find documentation on this subject either. The Cloud Storage JSON API doesn't help much, it only suggests to pass a Policy entity in the request parameter  when calling the setIamPolicy method.
I suspect that DM actually expects the Policy entity to be passed in another parameter, but again I couldn't find documentation on this anywhere.
Is there any information out there that could help me achieve this ?
Thanks

As a quick response:
I suggest you to check this implementation:
https://github.com/GoogleCloudPlatform/deploymentmanager-samples/tree/master/community/cloud-foundation/templates/gcs_bucket
We will look into this template as well.

Thanks for answering so fast.
The template you linked was exactly what I was looking for, thanks for sharing it !

@quentin-sensome have you been able to implement the append to a binding from a getIamPolicy?  Wisdom of the Ancients
I'm trying to add pull permissions to a service account on a GCR bucket, but the only way I've been able to implement this binding is by updating the entire binding list.
{% set NAME = properties.gcr | default(env.project) %}

{% if properties.region %}
  {% set BUCKET = "{}.artifacts.{}.appspot.com".format(properties.region, NAME) %}
{% else %}
  {% set BUCKET = "artifacts.{}.appspot.com".format(NAME) %}
{% endif %}

{% if properties.role == 'pull' %}
  {% set ROLE = "roles/storage.objectViewer" %}
{% elif properties.role == 'push' %}
  {% set ROLE = "roles/storage.admin" %}
{% endif %}

resources:

  - name: {{ NAME }}-gcr-bucket-get-iam-policy
    action: gcp-types/storage-v1:storage.buckets.getIamPolicy
    properties:
      bucket: {{ BUCKET }}
    metadata:
      runtimePolicy:
        - UPDATE_ALWAYS

  {# https://cloud.google.com/container-registry/docs/access-control #}
  - name: {{ NAME }}-gcr-bucket-set-iam-policy
    action: gcp-types/storage-v1:storage.buckets.setIamPolicy
    properties:
      bucket: {{ BUCKET }}
      bindings:
        - role: {{ ROLE }},
          members: [ {{ properties.serviceAccount }} ]

I have no idea how to get the $(ref.{{ NAME }}-gcr-bucket-get-iam-policy.bindings) and append a second list of bindings with Jinja.

There is a getIamPolicy > setIamPolicy example here:
https://github.com/GoogleCloudPlatform/deploymentmanager-samples/blob/master/community/cloud-foundation/templates/project/project.py

The Deployment Manager team is working on an update which may solves your problem without using getIamPolicy at all. ETA before the end of the year.

I highly recommend you to switch from Jinja to Python. Your marcos will start to be way too complex while limiting you compare to python.

Thanks for the fast response!

Using the same method as with project IAM bindings doesn't seems to be working as stated in the initial issue report. Just in case, I tried but is failing with the A policy to update must be provided. error message:
Deploying:
  - name: {{ NAME }}-gcr-bucket-set-iam-policy
    action: gcp-types/storage-v1:storage.buckets.setIamPolicy
    properties:
      bucket: {{ BUCKET }}
      policy: $(ref.{{ NAME }}-gcr-bucket-get-iam-policy)
      gcpIamPolicyPatch:
        add:
          - role: {{ ROLE }}
            members:
              - {{ properties.serviceAccount }}

Returns:
ERROR: (gcloud.deployment-manager.deployments.update) Error in Operation [operation-1544132263835-57c614f127579-ecf78f32-c79c6a04]: errors:
- code: RESOURCE_ERROR
  location: /deployments/bigotes-pro-bonnie-cluster/resources/bigotes-pro-gcr-bucket-set-iam-policy
  message: '{"ResourceType":"gcp-types/storage-v1:storage.buckets.setIamPolicy","ResourceErrorCode":"400","ResourceErrorMessage":{"code":400,"errors":[{"domain":"global","message":"A
    policy to update must be provided.","reason":"required"}],"message":"A policy
    to update must be provided.","statusMessage":"Bad Request","requestPath":"https://www.googleapis.com/storage/v1/b/eu.artifacts.bigotes-pro.appspot.com/iam","httpMethod":"PUT"}}'

make: *** [dm-update-bigotes-pro-bonnie-cluster] Error 1

Just in case may be useful, the templates used are:
https://github.com/raelga/bigot.es/blob/master/gcp/templates/storage/bucket.jinja
https://github.com/raelga/bigot.es/blob/master/gcp/templates/storage/gcr-bucket-iam-policy.jinja
I wanted to add the GKE Nodes SA as viewer to be able to pull images, but as a resource of the cluster deployment. This way, if the cluster deployment is removed, the IAM binding is removed.
https://github.com/raelga/bigot.es/blob/master/gcp/deployments/bigotes-pro/bonnie-cluster.yaml#L38
I ended adding the binding manually in the bucket deployment, otherwise is removing any other binding:
https://github.com/raelga/bigot.es/blob/master/gcp/deployments/bigotes-pro/bonnie-cluster.yaml#L38
But I would like to add the binding in the cluster deployment, as I'm already doing with the nodes role in:
https://github.com/raelga/bigot.es/blob/master/gcp/templates/container/kubernetes-cluster.jinja#L43

Glad to hear that the DM team is working on the issue.

About using python, I know may be more powerful but so far I've been able to do everything with jinja. And to be honest, I find jinja templates prettier and cleaner than appending jsons with python.

hi, we are facing exactly the same problem, any update from google about that ?

Apologies for not updating this thread.
The product team released a new feature:
google/resource-snippets/cloudresourcemanager-v1/policies.jinja
I keep this issue open for myself to release a tutorial for your issue, while I'm working on it, feel free to try it out yourself.
The key is the    type: gcp-types/cloudresourcemanager-v1:virtual.projects.iamMemberBinding line.

Thanks for the update, looking forward to test it.

it's related to project iam bindings, not storage iam bindings ? Is there an equivalent for storage ?

We are working on adding further 'virtual' endpoints for other bindings during Q2.

Hello @ocsig,
I just hit the very same issue described by @raelga. Any update on the virtual endpoint for storage?
Thanks!

Helllo
I reached also that particular trouble with storage.buckets.setIamPolicy asking me for policy parameter, ignoring the one I'm passing to (exactly like in your example).
I tried to forge some templates with iamMemberBinding but sadly, there is nothing released yet for storage.
And I noticed a behavior difference between setting up by storage console/gsutil or setting up by IAM (via DM or project-wide)  :
My project contains a GKE with a dedicated service account. I want this particular GKE to be able to deploy custom private images from my private GCR. If I give inherited project-wide permission role/storage.objectViewer to this service account, I cannot achieve PullImage action on Kubernetes, and it failes with ImagePullBackOff.
But, if I manually set the bucket policy using gsutil or console, I can actually pull the image and run the pod.
When I export the policy with gsutil iam get gs://<my_bucket> I see the exact same policy in both cases. the only difference (not visible) is that in first case, the permission is inherited because it is project-wide.

@lukeFalsina with some delay we managed to push virtual.folders.iamMemberBinding and virtual.organizations.iamMemberBinding to production. Currently working on snipets and Cloud Foundation Toolkit integration
Our next target is the gcp-types/storage-v1:virtual.storage.buckets.* types.

Hi,
Any update on this. I am using thishttps://github.com/GoogleCloudPlatform/deploymentmanager-samples/blob/master/community/cloud-foundation/templates/gcs_bucket/gcs_bucket.py and the bucket created doesn't inherit default iam policies.

any update on this ?

Any success with the rollout to PROD?
I'm eager to test if it'll solve my issue (https://stackoverflow.com/questions/56759231/gcp-grant-a-service-account-permission-to-write-in-a-gcs-bucket-with-deployment).

+1, we'd be eager to test gcp-types/storage-v1:virtual.storage.buckets.iamMemberBinding as well!

The feature passed reviews, should be part of this weeks rollout, checking back on Friday.
gcp-types/storage-v1:virtual.buckets.iamMemberBinding is the correct syntax.

I am happy to announce the gcp-types/storage-v1:virtual.buckets.iamMemberBinding type.
We updated the CFT Bucket template as well.

@ocsig  Is there a usage example for the new types?
Thanks this is time saver.

CFT IAM member binding template supports storage from now on.
Example
Is that what you were looking for?

This is really helpful! We've used it in one of our templates.
However, when I changed the bucket for the binding, Deployment Manager failed with:
- code: NO_METHOD_TO_UPDATE_FIELD
  message: No method found to update field 'bucket' on resource 'gcr-permission'
    of type 'storage-v1'. The resource may need to be recreated with the new field.

So atm it seems that the only way to update the bucket name is to rename the resource (which works).

Changing type is not supported, also there are properties which can't be changed via DM or the API, only by deletion and recreation of the resource. By renaming the DM resource, it looks like you deletede the old one and created a new one and thats what DM will do. This can be inconvenient, I am pushing the DM team to support delete+recreate based updates where its possible.

Hi , i am trying to set iam policy on gcs bucket but with condition , although https://github.com/GoogleCloudPlatform/cloud-foundation-toolkit/tree/master/dm/templates/iam_member creating the permission but i want to add condition to allow only specific folder , can any tell how to do it

Hi, as far as i know, you must do it with  bucket acl, not from iam policies.

set your bucket as fine grained (if uniform)
use gsutil acl (you can have more informations from cloud console)

I've tried from bucket IAM permission and restricted the access but it seems i am condition not supoorted yet in deployment manager ,
now i want to give service account permission to user but still i am not able to find any way to do it via DM , it can be done easily via this command or via console
gcloud iam service-accounts add-iam-policy-binding <SERVICE_ACCOUNT>
--member="user:<USER_ACCOUNT>"
--role="roles/iam.serviceAccountTokenCreator"


Enter Password or Pin for "NSS Certificate DB"

Mby it's worth to give users who have a firefox master password a hint that they should enter this when they see "Enter Password or Pin for "NSS Certificate DB""

@negbie Do you have an example of what this looks like to a user? Do they get a password prompt from certutil?

On mac, it looks like this:
Using the local CA at "/Users/kelvin/Library/Application Support/mkcert" ✨
Enter Password or Pin for "NSS Certificate DB":

Sorry for this necropost. Just want to mention that, in my case, the default password was an empty string and
certutil -N -d ~/.pki/nssdb
allowed me to create a new password.


FIX: GridFieldPaginator now prevents viewing pages with no results (fixes #3192)

Short example: if you visit page 3 of a GridField, then (using GridFieldFilterHeader) filter results until there are less than 3 pages of results, you current just see “no results” - this change will instead send users to the first page and show the correct results.

This looks cool, however wouldn't it be better to reset the page number when the "search context" changes?
Considering the scenario where I'm browsing pages in the gridfield then get bored realising I can't find what I want so change the filter or re-order the list - it's incredibly unlikely I actually want to be on the same page I was, I want to see the first result.

Are there any blockers to merging this into the 3 branch? It sounds like everyone liked this idea, but had further ideas, which meant that the original fix never got included in a release! :-(

Please rebase and re-open on 3.

Rebased and re-opened in #5394


KAF-353 - Add Kafka Readiness-Check, Using server.log

added kafka readiness-check, ensuring that the starting and started log lines are in the kafka server.log log file.

the majority of ways to check for readiness are written from the kafka client perspective. the use of the server.log file is IMO much preferable since the check is executing on the server, so should just bubble up to DC/OS the state of kafka readiness that was written to the server.log file.

@paegun:  Could you please provide some example log snippets illustrating what this check should be detecting?

retest this please


Data Volume Monitoring in Web Receiver

As a user of a web receiver, I can see relevant trends around changes in volume per facility.
After this: Email notifications

Going to move this to product backlog


feat: add view password using endAdornment

Describe the changes you have made in this PR
Follow up to #739. Uses endAdornment prop to add icon to view and hide password.
Link this PR to an issue
#679
Type of change (Remove other not matching type)

feat: New feature (non-breaking change which adds functionality)

Screenshots of the changes (If any)

[...and other places where the password field is used]
How has this been tested?
Checked manually.
Checklist

[x] My code follows the style guidelines of this project and performed a self-review of my own code
[x] New and existing tests pass locally with my changes
[x] I checked if I need to make corresponding changes to the documentation (and made those changes if needed)

   AllowanceMenu
    ✕ set new budget (262 ms)

This test seems flaky in CI. Not your issue.

Wondering if we should extract a passwort-input component. Looks repetitive.

:sweat_smile:   https://github.com/getAlby/lightning-browser-extension/pull/739#issuecomment-1077636134

Wondering if we should extract a passwort-input component. Looks repetitive.

😅 #739 (comment)

Haha, damnnn.  Well, some things only become clear once you see them. Alright, let's go with this!


Demangler : problems with templates and others (VS17)

Dear RetDec  #enthusiasts,
The name mangling listed for the reconstructed classes (C++ class reconstruction, in the "classes" comment section of the C file output by detrec-decompiler.sh) does not correspond to any of the 3 name mangling schemes.
The demangler-tool provided with RetDec is not able to identified the name mangling to any of the available 3.
My experiment is on a DLL, with classes apparently correctly exported (if vftable creation is triggered ...), in debug (dllexp seems to be able to read correctly the method names).
It can be reproduced with the classes from the files MereFille.h and DllTest_for_retdec.cpp (yes, names do not match), see ZIP file attached.
The setup is Microsoft Visual Community 2017, with a project "Visual C++ / Windows Desktop / Dynamic Link Library (DLL)" with name "DllTest_for_retdec".
To compile, it has to be added the preprocessor setting, by right click on the project, going to "Properties", "C/C++" → "Preprocessor" :
"Prepocessor definitions" : add "COMPILINGDLL=1;" at the beginning
The so-produced DLL is then fed to RetDec for decompilation (no option, or aggressive option).
This results in a class identification with the following names :
// ------------------------- Classes --------------------------
// .?AV?$OutOfBlob@W4penum@@@@
// Blobinou
// Blobinounours (base classes: Blobinou, .?AV?$OutOfBlob@W4penum@@@@)
// Fille (base classes: Mere, Pere)
// Mere
// MonoFille (base classes: MonoMere)
// MonoMere
// Pere
// .?AVbad_alloc@std@@ (base classes: .?AVexception@std@@)
// .?AVbad_array_new_length@std@@ (base classes: .?AVexception@std@@, .?AVbad_alloc@std@@)
// .?AVexception@std@@
// type_info
It seems to me there is a problem with name demangling of template classes, and exceptions (or their namespace ?).
Best regards,
Thierry
DllTest_for_retdec.zip

Related to #95 and #96.
Thanks for the report, we will use your examples for testing in #95.


Jinja functions remain static in YAML files on RPC until modified

Describe the bug
We leverage various jinja functions heavily in our dbt project (e.g. run_started_at, invocation_id, etc.). In addition to using them inside of dbt models, we also use them inside of YAML files, such as schema.yaml. A real world example for us is as follows:
version: 2

sources:
  - name: dbt_meta
    database: analytics
    schema: dbt_meta

    tables:
      - name: dbt_audit_log
        identifier: dbt_audit_log at(timestamp => '{{ run_started_at }}'::timestamp_ntz)

Using {{ run_started_at }} in tandem with Snowflake's time travel in the identifier (shown above) is a workaround we have been using to circumvent the non-atomic nature of dbt snapshots (#1884). It effectively prevents the source data from changing out from under us during a snapshot being taken, which happens incredibly often, leading to snapshots duplication bugs.
We recently migrated much of our production dbt workload to RPC server and noticed that this {{ run_started_at }} jinja function was not changing between runs in our compiled source definitions. We dug deeper and noticed that restarting the server and even manually re-compiling the project on the server did not solve the issue. However, what did make the function update, was modifying the underlying schema.yaml file. What makes this even more curious is that when using jinja functions in dbt models, they do seem to update on every single invocation without needing to modify files, restart the server, or recompile. Also worth noting that this behavior is identical whether partial parsing is turned on or off.
I'm curious if this is inherent in the way RPC functions and is thus intended by design, or if this is a bug.
Steps To Reproduce
(see above)
Expected behavior
I would expect these functions to behave similarly as it would when using the CLI. Or at the very least, to be able to update these functions using a manual re-compile.
System information
Which database are you using dbt with?

[ ] postgres
[ ] redshift
[ ] bigquery
[x] snowflake
[ ] other (specify: ____________)

The output of dbt --version:
installed version: 0.16.0
   latest version: 0.16.1

The operating system you're using:
macOS Mojave 10.14.6
The output of python --version:
Python 3.8.2

In order for --partial-parse to always return the same result as a full parse, it seems we'd need to capture and categorize implicit dependencies of Jinja expressions that are passed as configs/properties in YAML files. Here are the categories I'm thinking about:

Re-render every time: the Jinja expression depends on a special dbt-Jinja variable, such as run_started_at or invocation_id
Re-render if another file has changed, e.g. a description that depends on a docs block defined elsewhere
Re-render if a variable has changed (--vars or env var), and the Jinja expression depends on that variable via {{var()}} or {{env_var()}}
None of the above: only re-render if the YAML file has itself changed

If a volatile Jinja variable is needed at parse time (input to ref/source/config or yaml property), and partial parsing is enabled, dbt will not re-parse affected nodes and is likely to yield incorrect results.
Reproduction case: gist
I believe our options here are:

Non-solution (better than nothing): Continue to document this in known partial parsing limitations; add to docs for run_started_at + invocation_id as well. Instruct users to disable partial parsing if they rely on using these variables in the parse-time context.
Complex solution: For each node in the graph, statically analyze calls to volatile context variables (run_started_at + invocation_id), and then store those env vars in depends_on for that node. Then, if we detect a change in env var values, we can trigger re-parse for only those nodes which depend on that volatile variables, plus (if the node is a macro) any nodes that depend on the macro.

I'm leaning toward the non-solution for this one, by documenting the limitation.

What we did for the 'doc' calls was to add code in the context 'doc' method to save the node referring to the doc in the doc source_file object. We could do something like that for these calls. It seems like we might need to save the current value of the variables somewhere, then check to see if the variable value has changed and mark all of the nodes for reparsing. So something like: { "var_name": { "value": something, "referenced_by": [ { file_id, yaml_key, name},  or {file_id, unique_id}...].   The variables could be both internal things like 'run_started_at',  cli variables, and env vars.  Statically parsing models would get more complicated, of course.

@gshank That feels like a fruitful way to approach this: rather than store the reference in the node itself, store the value and a child map of all nodes that will need updating when the value changes. I bet we could do something similar for env vars (#3885). Then, an additional step in partial parsing looks like: compare these values; if any value has changed, schedule dependent nodes for re-parse. Outside of exceptional circumstances (the RPC server! ugh!), run_started_at and invocation_id will always have changed.
The simple version could be: all nodes that call one of these variables anywhere should be considered dependent on that variable.
The cleverer, more precise version: all nodes that depend on one of these variables for a parse-time configuration, i.e. ref/source/config/yaml property. We don't need to re-parse nodes that include {{ run_started_at }} in their compiled SQL, because SQL gets re-compiled at execution time.
What do you think is the difficulty of an approach along those lines? Is it worth pursuing now, or punting to after v1.0 (and clearly documenting the limitations in the meantime)?


feat(query): add 'App Service Client Certificates Disabled' for Terraform

Proposed Changes

added a query to check if client certificates enabled is true for azure app service resource

I submit this contribution under the Apache-2.0 license.

Pending Severity and Category review

@tiagocruz20 please address the requested changes


Site very slow

Hello,
I created my site with timber plugin and timber-starter-theme. Everything is ok, but my site is very slow. I use twig cache, but site still slow.

php version https://nw.fantasticservices.com/
latest wp version
timber version is Version 0.21.0
site fantasticservices.com

Thank you :)

@icomarto can you install plugin performance profiler plugin and check if there's a plugin that's causing  lag?

WordPress Plugin Profile Report
Report date: 29th July 2015
Theme name: Fantastic Services Master
Pages browsed: 16
Avg. load time: 7.3759 sec
Number of plugins: 21
Plugin impact: 72.53% of load time
Avg. plugin time: 5.3497 sec
Avg. core time: 0.7839 sec
Avg. theme time: 0.2719 sec
Avg. mem usage: 139.17 MB
Avg. ticks: 166,829
Avg. db queries : 298.62
Margin of error : 0.9704 sec
Plugin list:
P3 (Plugin Performance Profiler) - 0.2813 sec - 5.26%
Gravity Forms - 0.2143 sec - 4.01%
Advanced Custom Fields: Flexible Content Field - 0.0052 sec - 0.10%
Advanced Custom Fields: Options Page - 0.0039 sec - 0.07%
Advanced Custom Fields: Repeater Field - 0.2571 sec - 4.81%
Advanced Custom Fields - 3.1530 sec - 58.94%
Breadcrumb Trail - 0.0105 sec - 0.20%
Better WordPress Minify - 0.0766 sec - 1.43%
Filter by parent in admin - 0.0002 sec - 0.00%
Gravity Forms Multiple Form Instances - 0.0001 sec - 0.00%
Gravity Forms No Captcha Recaptcha - 0.0106 sec - 0.20%
Gravity Forms + Stripe - 0.0268 sec - 0.50%
Mce Table Buttons - 0.0003 sec - 0.00%
Members - 0.0232 sec - 0.43%
Ultimate Nofollow - 0.0027 sec - 0.05%
Redirection - 0.0254 sec - 0.48%
Shareaholic | share buttons, analytics, related content - 0.0415 sec - 0.78%
Timber - 0.7938 sec - 14.84%
Wordpress Seo - 0.3431 sec - 6.41%
WP Migrate DB - 0.0174 sec - 0.33%
Yith Infinite Scrolling - 0.0624 sec - 1.17%

Advanced Custom Fields - 3.1530 sec - 58.94%
Timber - 0.7938 sec - 14.84%
May be problem in Advanced Custom Fields


Incorrect terminology in dhcp.py?

According to RFC 1533, option 53 carries the DHCP message type. On line 314, you check if the message the server receives has a value of "1" in this field, and if so, you print "Received DHCPOFFER." Isn't it actually a "DHCPDISCOVER" message that you have received?
Similarly, in lines 320 and 323 you call what the RFC says is a DHCPREQUEST a DHCPACK.
Is this just a typo, or am I reading something wrong?

It looks like you're correct and all three instances should read Sending rather than Received. I'll do a quick fix to the development branch.

Done in cafcc2dcdb97af2ea173bbd3b853c210caa807ab. Also opened #122 to get this in master, along with a handful of other items.

@psychomario, in the future, since this issue is technically not resolved since it's not in master, simply add something to the fixing commit's message such as "fixes " and then the issue will be automatically closed when that commit is pushed to master from whichever branch it originated


Trigger ripple on mousedown instead of click (mouseup)

Based on other reference implementations (and general feel), the ripple should be triggered on mousedown and not click (~mouseup).

Material Design Components

https://material.io/develop/web/components/ripples
https://material-components.github.io/material-components-web-catalog/#/component/ripple

Material-UI (React)

https://material-ui.com/components/buttons/#button

svelte-mui

https://svelte-mui.ibbf.ru/button
https://svelte-mui.ibbf.ru/ripple
https://github.com/vikignt/svelte-mui/blob/master/src/Ripple.svelte

Angular Material

https://material.angular.io/components/ripple/examples

svelte-mui also only triggers on left click, but it seemed to be unique compared to the other implementations.  We may still need to add a touchstart.  Since smelte cleanups up the ripple with the animationend event, I think this is cleaner than trying to do so with mouseup / touchend / dragend / etc.
Side note: It would be nice to show the Ripple component as well as use:ripple action.

Which after looking closer at the other implementations, maybe the ripple should move to using mouseup/etc for when you long press on a button/ripple target.


[Feature Requests] Monitoring attached disks

I haven't' see where this possible yet, but I feel like it should be. If you've done it, awesome (: If you haven't, it'd be a cool challenge!

@andrewhowdencom see https://github.com/prometheus/node_exporter/issues/332#issuecomment-265680303

<3 I'll have a look later today!

Can this be closed @andrewhowdencom ?

Please do. (:


diagnostics for RTC resiliency

Browser part  of https://docs.google.com/document/d/1je4b-6SycAFkLZcQ0ZOUc0W6gosW6gs529-fn978YlM/edit#heading=h.t2coj8ypvicd
Tasks:

https://highfidelity.atlassian.net/browse/HIFI-689
https://highfidelity.atlassian.net/browse/HIFI-690
https://highfidelity.atlassian.net/browse/HIFI-691

~Not complete yet (see below), but~ There's enough here to facilitate further conversation. Per the doc above, this is reporting TWO log lines per disconnect:

The lines with labels ravi... are fired when RAVI changes state after being connected.
The line with labels hifi... are fired when HiFiCommunicator changes state after being connected, OR if the page visibility changes (on the principle that in the initial version, we are interested in instrumenting session closes from the well-defined case of visible tabs.
The mixer log would be similar, but labeled mixer... so that we can easily search and distinguish between all three within a combined multi-source virtual log. I don't know whether we'll need the 'ravi...' version, but it is implemented anyway.

Here are example of three different disconnect cases. I've spread the logs over multiple lines for readability. The initial "columns", up to (but not including) APPSTATE, would also be present in mixer... logs.

Normal explicit disconnect. Note that RAVISTATE_closed, ONLINE_yes, XPLICITCLOSED_yes, and VISIBLITY_visible

2021-06-08T23:40:03.863Z sQf7K56ibe1ipNdepWggZabA5eDDsYpXqCHwfSkF6+Y=
raviRAVISTATE_closed
ravibrowserStatsIP_<IP_ADDRESS> ravibrowserStatsTYPE_srflx ravibrowserStatsPROTOCOL_udp
ravimixerStatsIP_<IP_ADDRESS> ravimixerStatsTYPE_srflx ravimixerStatsPROTOCOL_udp
raviWebSocket:3 raviRTC_closed raviSIGNALING_closed raviICE_closed raviGATHERING_complete
raviAPPSTATE_Connected raviONLINE_yes raviXPLICITCLOSED_yes raviVISIBLITY_visible
raviDEVICE_undefined raviRATING_4g raviDL:10 raviRTT:0
[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36]

2021-06-08T23:40:03.864Z sQf7K56ibe1ipNdepWggZabA5eDDsYpXqCHwfSkF6+Y=
hifiRAVISTATE_closed
hifibrowserStatsIP_<IP_ADDRESS> hifibrowserStatsTYPE_srflx hifibrowserStatsPROTOCOL_udp
hifimixerStatsIP_<IP_ADDRESS> hifimixerStatsTYPE_srflx hifimixerStatsPROTOCOL_udp
hifiWebSocket:3 hifiRTC_closed hifiSIGNALING_closed hifiICE_closed hifiGATHERING_complete
hifiAPPSTATE_Disconnected hifiONLINE_yes hifiXPLICITCLOSED_yes hifiVISIBLITY_visible
hifiDEVICE_undefined hifiRATING_4g hifiDL:10 hifiRTT:0
[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36]

After turning off wifi while connected. Of course, this doesn't get reported until you connect again from the same browser, in the same or another session.
Note that RAVISTATE_disconnected, ONLINE_no, XPLICITCLOSED_yes (seems like a bug!), and hifiVISIBLITY_visible.
Also note that there is a discrepancy in APPSTATE because of the difference in the HiFiCommunicator state as the communicator and RAVI states fire.

2021-06-08T23:47:20.758Z mnPpcV+vQ4cSdI5jk8BAgH4Jo80Xye4hRPDuZmmB6Eg=
raviRAVISTATE_disconnected
ravibrowserStatsIP_<IP_ADDRESS> ravibrowserStatsTYPE_srflx ravibrowserStatsPROTOCOL_udp
ravimixerStatsIP_<IP_ADDRESS> ravimixerStatsTYPE_srflx ravimixerStatsPROTOCOL_udp
raviWebSocket:1 raviRTC_connected raviSIGNALING_stable raviICE_disconnected raviGATHERING_complete
raviAPPSTATE_Connected raviONLINE_no raviXPLICITCLOSED_no raviVISIBLITY_visible
raviDEVICE_undefined raviRATING_4g raviDL:10 raviRTT:0
[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36]

2021-06-08T23:47:20.760Z mnPpcV+vQ4cSdI5jk8BAgH4Jo80Xye4hRPDuZmmB6Eg=
hifiRAVISTATE_disconnected
hifibrowserStatsIP_<IP_ADDRESS> hifibrowserStatsTYPE_srflx hifibrowserStatsPROTOCOL_udp
hifimixerStatsIP_<IP_ADDRESS> hifimixerStatsTYPE_srflx hifimixerStatsPROTOCOL_udp
hifiWebSocket:2 hifiRTC_connected hifiSIGNALING_stable hifiICE_disconnected hifiGATHERING_complete
hifiAPPSTATE_Disconnected hifiONLINE_no hifiXPLICITCLOSED_yes hifiVISIBLITY_visible
hifiDEVICE_undefined hifiRATING_4g hifiDL:10 hifiRTT:0
[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36]

After closing the tab while connected. This DOES report immediately for hifi (because the definition of the hifi diagnostic is to fire when session ends OR tab becomes invisible), and never fires for ravi diagnostic (not even next session) because the definition there is to fire on ravi state change and ravi never gets the chance.
Note that RAVISTATE_connected, ONLINE_yes, XPLICITCLOSED_no, VISIBLITY_hidden

2021-06-08T23:57:35.510Z UsN36mID8+q13kxCRLUa0Vo0McflsSaRmDri0cP4Yxg=
hifiRAVISTATE_connected
hifibrowserStatsIP_<IP_ADDRESS> hifibrowserStatsTYPE_srflx hifibrowserStatsPROTOCOL_udp
hifimixerStatsIP_<IP_ADDRESS> hifimixerStatsTYPE_srflx hifimixerStatsPROTOCOL_udp
hifiWebSocket:1 hifiRTC_connected hifiSIGNALING_stable hifiICE_connected hifiGATHERING_complete
hifiAPPSTATE_Connected hifiONLINE_yes hifiXPLICITCLOSED_no hifiVISIBLITY_hidden
hifiDEVICE_undefined hifiRATING_4g hifiDL:10 hifiRTT:50
[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36]

TODO:

look at what sentry and honeycomb (others?) offer with regard to phoning home.
meeting Thursday on "Follow up on HIFI-695: create endpoint for client reporting"
number of users present
rtc info on dropped packets, etc.

Is it worth pulling the "diagnostics.ts" bits out into their own repository, do you think? I'm imagining we may want/need to provide our users with the option of opting out of this, and it would be nice to be able to give them a build that explicitly doesn't even include the functionality. But I don't feel super strongly about it -- having it in its own directory like you've got it is probably plenty.

I'm imagining/hoping that we'll collect, say, two weeks of data and turn it off. Then based on what we know, we'll make changes and collect another two weeks, or something like that. I don't think it's worth getting too fancy for something like that. If we decide to do something like this permanently, then it would definitely need various options to be controlled by apps.

Here are the same three disconnects as above, in the "final"(?) format. Again newlines with a single entry just for clarity here, and would not be used in production.

But in node, it will not report (and not log anything) if node-fetch is not installed.
Here's an example of running testing bot (for which there is a new PR for a bug fix):
npm run bots -- --secret FIXME --app_id 11b69b11-1381-4160-af11-55906a55be6e --space_id 85f5144d-05cc-45e9-a69b-b68ecdd1c0a0 --numBots 1 --audio bensound-summer.mp3 --runtimeSeconds 5 --shutdownSeconds 1

Your're rasing some interesting questions !
Re 1. What is our plan for eventually not maintaining two versions of Ravi JS, and what is the point of the one in Ravi until then?  For example, let's say we eventually want to split it out Ravi JS to its own repo. At that time, we'll presumably want to diff the version in Ravi vs the one here, rather than relying on everyone maintaining everything the same all along. Given that necessary step, why bother backporting changes in the mean time? Doesn't that increase the chances of error (too backport "twice") rather than decreasing it?  What do use the Ravi version of the JS for?  Two counter-proposals:
a) (Straw-person) Split out the JS portion now, using the version from this repo, and also a Ravi swift client, and a Ravi Unity client, and modify both this repo, Ravi, Swift and Unity to use that new sub-repo(s).
b) Delete the JS client from the Ravi repo now, and just use the JS client in this repo. (Just as we are already doing with the Swift and Unity API repos, which have their own "ravi" client code included, and which do not duplicate their code within the Ravi repo.

Closed in favor of https://github.com/highfidelity/hifi-spatial-audio-js/pull/144


Generate typescript types on build.

Typescript types are generate on build and included in the package.

thanks @novagen
this will make writing clients with vue and typescript much easier ...

Added issue #54 to have an issue to link this PR to.


Not getting Figma events when running on deployed Vercel URL

Everything works locally, but when I'm using the live Vercel URL instead of localhost, but nothing happens after posting messages, and I don't see any errors being logged.
https://github.com/klyap/figma-semantic-font-search/blob/main/plugin/manifest.json
I'm not seeing console.logs printing from inside figmaAPI.run callback functions.

Same problem any fix?


feat: make it possible to control how much information is be visible in the embed

v2.2.0-next.7 added support for displaying the clan and the number of slain vbloods per player. However, at the moment it is not possible to control which information should be displayed in the embed.
Example (which requires the v-rising-discord-bot-companion):

Feature Request
Make it possible to define which data should be displayed in the embed. E.g. if i only want to display the gear level of a player but not the clan name, that should be possible.
Solution
Introduce properties similar to display-server-description to control if gear-level, clan and slain-vbloods should be visible.

Update: The clan and number of killed vbloods will not be included in the final release (for now).


Web - Both Staging and production are in response for chat-attachments link

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Issue found when executing PR https://github.com/Expensify/App/pull/16492
Action Performed:

From PROD new.expensify.com - upload a non-preview attachment (like an mp4 file)
Return to STAGING and try to access the attachment
Attachment should be resolved and downloaded from STAGING (request designated to staging.expensify.com/chat-attachments/...
From STAGING staging.new.expensify.com - upload a non-preview attachment (like an mp4 file)
Return to PROD and try to access the attachment

Expected Result:
Attachment should be resolved and downloaded from PROD (Go to the Network tab, then press the attachment download link, see a request designated to www.expensify.com/chat-attachments/...
Actual Result:
I found only response on production and it contains both staging and production chat-attachment links. Response attached to the issue
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/93399543/228406793-ea09ff85-b875-4152-b709-1fe88a0f66b5.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

Triggered auto assignment to @anmurali (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@anmurali Huh... This is 4 days overdue. Who can take care of this?

@anmurali Still overdue 6 days?! Let's take care of this!

@anmurali Now this issue is 8 days overdue. Are you sure this should be a Daily? Feel free to change it!

I will work on this tomorrow

@anmurali Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@kidroca would you be able to check whats happening here, seems like the document is loading from staging endpoint even for the production website. Thanks!

not overdue

@mountiny
This is a duplicate
I originally posted such report, informing you that environment urls are captured in the attachment path
I think the bug is fixed, since we introduced ApiUtils.resolveFromApiRoot
(environment urls are still captured in the comment but we've agreed it should be like that for the time being)

Just double checked - issue is fixed, it doesn't happen like in the example video anymore

upload mp4 from staging
view the same chat on prod
open dev tools (so you can monitor network)
download the attachment
see the attachment is requested from prod

Wohoo, thats great, thank you very much for looking into this @kidroca 🎉
Closing


Hot reloading from routes breaks the page.

Description
When the page is reloaded from a different route than the main route, it's broken.
Demo video
https://user-images.githubusercontent.com/22288040/124676488-4f95af00-dec7-11eb-8754-ac0b8bc2b018.mov

I will submit a PR on this today.

hey @okumujustine , thanks so much for this. apologies for the late response... been so busy


"nowriters" option needs more detailed description.

It's not clear from the description what is really means.
This isn't also clear from the context or from VSS API documentation.
-Does it ensure that all writers are informed to bring the data in consistent state?

Or does it mean that the writers are not informed, about bringing the data into consistent state?

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

ID: ba12ebe0-fc8d-6353-8f37-482507a51e4e
Version Independent ID: cc9deb71-e8e6-05bf-a10e-6a431e682fab
Content: Set context
Content Source: WindowsServerDocs/administration/windows-commands/set-context.md
Product: windows-server
Technology: manage-windows-commands
GitHub Login: @coreyp-at-msft
Microsoft Alias: coreyp

We hugely appreciate your contribution, feedback, and support to our technical documentation.
We’ve phased out GitHub Issues on this repository as the feedback mechanism for content and have replaced it with a new feedback system. For more information see, Content User Feedback. As part of this rollout, we are migrating your issue where our team will use your comments to improve the documentation experience. Unfortunately, this does mean you won't be able to access this issue after the migration is complete.
All issues will be migrated by Thursday 29th August 2024.
Once again, thank you for your valuable feedback, we hope you’ll continue to contribute using our new feedback system.


unique function is broken

df = ks.DataFrame({"Person": ['a', 'b', 'b', 'c']})
df
  Person
0      a
1      b
2      b
3      c

df.unique()
  Person
2      b
3      c
0      a
1      b

Seems like Pandas DataFrame doesn't have unique:
>>> import pandas as pd
>>> pd.DataFrame({"Person": ['a', 'b', 'b', 'c']})
  Person
0      a
1      b
2      b
3      c
>>> df = pd.DataFrame({"Person": ['a', 'b', 'b', 'c']})
>>> df.unique()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.7/site-packages/pandas/core/generic.py", line 4376, in __getattr__
    return object.__getattribute__(self, name)
AttributeError: 'DataFrame' object has no attribute 'unique'
>>> df.Person.unique()
array(['a', 'b', 'c'], dtype=object)

but series has it. Let me target to fix Series one.

Yea maybe we should remove DataFrame.unique then and only keep Series.unique.


Cannot receive images, imaging callback not called

Hey everyone!

First of all, thanks for providing this API to us, the Qt example works very well and I'm looking forward to integrating the API into our software.

Here is the issue i am facing:
I am able to receive images from the probe via the Qt example, but I am unable to receive images from the probe using the console example and with my own program.

Here is my understanding of what needs to be called in order:

(external via bluetooth) start the probe and connect the laptop to the probe wifi
cusOemInit -> should return 0
cusOemSetCert with a c-string containing the certificate -> should return 0 and the ClariusCertFn is called with the number of days > 0
cusOemConnect with ip address and port from bluetooth service -> should return 0 and the ClariusConnectFn is called with 0
cusOemLoadApplication with probe model (I use 'L7HD') and workflow (I use 'vascular') -> should return 0 and the ClariusImagingFn is called with IMAGING_READY and 0

My problem is that the ClariusImagingFn callback is never called.
The callback implementation prints something to stdout and also sets a static variable to check whether the callback was called, but neither was successful.
Switching the order of the calls (init, connect, set cert, load application or init, set cert, load application, connect) yields the same result.

If I try to enable the imaging anyways via cusOemRun(1), the newImage callbacks are never called. I assume that the probe is not imaging in that case.

I am puzzled, since I am able to receive images via the Qt Example using the same method. I checked the Qt Example and there the imaging callback is called.
My best guess is that this error is caused because I am not using Qt, and dont have a QApplication etc.

When calling cusOemDestroy this warning is printed:
QObject::killTimer: Timers cannot be stopped from another thread
QObject::~QObject: Timers cannot be stopped from another thread

Maybe that is related.

Any help would be greatly appreciated!

like the Cast API, the streaming of images is done over udp on a separate port. you may need to enable ports via your firewall to ensure the callback is called.
alternatively, check that the probe doesn't need a software update (i dont think it should if you're getting successes on the calls and you are using 8.0.1 Clarius App and API).
your initialization order is good, we typically suggest:

power up and fetch tcp information via ble
connect over wifi/tcp
load certificate
check for software update
load workflow
image, get status, adjust parameters, etc

I checked via wireshark, the app and probe are communicating with each other. I dont have any sort of firewall enabled.
If I use the Qt Example, I can also receive images from the probe, so the network is likely not the problem.
The probe's software is up to date.
I tried your suggested order of init, connect, load cert, check for update, load workflow, but the ImagingFn callback is still not called.
I tried calling cusOemRun(1) after cusOemLoadWorkflow('L7HD', 'vascular') returns 0 (maybe that works without the callback beeing called), but the scanner does not start to image (the LED stays blue).
I found another weird behavior: If I put the scanner in the charging station and then take it out again (while connected), the imaging callback is called! However it provides wrong data, it is called with ready=1 and imaging=1 even though it is not imaging.

I found a partial workaround:
In the oem.pro qmake config file of the console example, change the line
CONFIG += c++17 console

to
CONFIG += c++17 cmdline

Then the imaging state callback is called.
Some caveats: This only works when running the application in debug mode through qtcreator. It does not work without the debugger. Also using cmdline instead of console breaks the command line interface, as qtcreator does not create a terminal window.

There definitely is some weird interaction going on with the Qt Creator debugger. I got it down to this minimal example:
// main.cpp
#include <oem/oem.h>
#include <iostream>
#include <unistd.h>

#define PRINT std::cout << std::endl

constexpr int width = 512;
constexpr int height = 512;

const char *cert = R"EOF(
-----BEGIN CERTIFICATE-----
certificate here
-----END CERTIFICATE-----
)EOF";

int main(int argc, char *argv[])
{
    if (cusOemInit(argc, argv, "keydir",
        // connection callback
        [](int code, int port, const char* msg)
        {
            PRINT << "connected event: " << code << " " << port << " " << msg;
            if( code == CONNECT_SUCCESS) {
                PRINT << "set cert";
                cusOemSetCert(cert);
            }
        },
        // cert callback
        [](int daysValid)
        {
            PRINT << "cert " << daysValid;
            PRINT << "loading application";
            cusOemLoadApplication("L7HD", "vascular");
        },
        nullptr,
        nullptr,
        nullptr,
        nullptr,
        // imaging state change callback
        [](int ready, int imaging)
        {
            PRINT << "image state change" << std::flush;
        },
        nullptr,
        nullptr,
        width, height) != 0)
    {
        PRINT << "error initializing listner";
        return -1;
    }

    cusOemConnect("<IP_ADDRESS>", 38915);

    sleep(10);

    cusOemDestroy();

    return 0;
}

# project.pro
CONFIG += c++11

SOURCES += main.cpp

LIBPATH = $$PWD/../oem/src/lib
INCLUDEPATH += $$PWD/../oem/src/include
LIBS += -L$$LIBPATH/ -loem

When I run this using the Qt Creator debugger (press F5), I get
connected event: 0 46552 connected
set cert
cert 172
loading application
image state change

But when I run it without the debugger (CTRL-R), I get
connected event: 0 42090 connected
set cert
cert 172
loading application


collect file info like mtime, length while listing files for free

This PR extends the PinotFS interface a bit so that one can get file info like mtime and length for free while calling listFiles(), otherwise one has to call length(), lastModificationTime() to get the info with an extra round trip, which can be costly when the input folder is large.
Plan to get quick feedbacks with this PR, and extend the other implementations in following PRs.

... we should implement it for all PinotFS

Included S3 and Local in this PR, and plan to extend the others in next PR. Lemme know if you want to have all of them here. I just wanted to iterate in small steps faster.

Codecov Report

Merging #9466 (cfb0093) into master (e2d8aaa) will decrease coverage by 2.70%.
The diff coverage is 89.65%.

@@             Coverage Diff              @@
##             master    #9466      +/-   ##
============================================
- Coverage     69.83%   67.13%   -2.71%
+ Complexity     5127     4939     -188
============================================
  Files          1909     1414     -495
  Lines        101749    73862   -27887
  Branches      15440    11800    -3640
============================================
- Hits          71059    49588   -21471
+ Misses        25674    20683    -4991
+ Partials       5016     3591    -1425

Flag
Coverage Δ

integration1
?

integration2
?

unittests1
67.13% <89.65%> (+0.01%)
:arrow_up:

unittests2
?

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

Impacted Files
Coverage Δ

.../java/org/apache/pinot/spi/filesystem/PinotFS.java
50.00% <0.00%> (-10.00%)
:arrow_down:

...java/org/apache/pinot/spi/filesystem/FileInfo.java
90.47% <90.47%> (ø)

.../org/apache/pinot/spi/filesystem/LocalPinotFS.java
82.25% <100.00%> (+2.25%)
:arrow_up:

...va/org/apache/pinot/core/routing/RoutingTable.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...va/org/apache/pinot/common/config/NettyConfig.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...a/org/apache/pinot/common/metrics/MinionMeter.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...g/apache/pinot/common/metrics/ControllerMeter.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../apache/pinot/common/metrics/BrokerQueryPhase.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../apache/pinot/common/metrics/MinionQueryPhase.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...ache/pinot/server/access/AccessControlFactory.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 742 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


DRILL-8475: Update the binary distributions LICENSE

DRILL-8475: Update the binary distributions LICENSE
Description
The LICENSE file included in the binary distributions of Drill becomes an artifact that is generated automatically by the org.codehaus.mojo:license-maven-plugin (and so is no longer part of the Git source tree). The generated LICENSE is therefore profile dependent, e.g. the Hadoop 2 build of Drill will (as it must) carry a different LICENSE file. Dependencies that it cannot detect are kept in the LICENSE-base.txt file which is combined with the generated license notices by a new Freemarker template. Various other dependency related changes are included as part of this work. It is still possible that fat jars have introduced hidden depedencies but I propose that those are analysed in a subsequent Jira issue.
Documentation
Comments and updated dev docs.
Testing
Comparison of the jars/ directory of a Drill build against the generated LICENSE file to check that every bundled jar has a license notice in LICENSE.

TODO: determine whether too much has been pruned from the JDBC driver, specifically libraries related to Kerberos.

@jnturton Are we closed to merging this?


Update numpy_tutorial.rst

Typo

Looks correct to me as it is.

I think the proposed change is probably right. I think it has to match "take" (i.e. if it's "take"-"turn"; "takes"-"turns").
I can't really justify exactly what grammar rule this is though...

Consider these two snippets:

it doesn't "turn it into C"

vs.

it doesn't "turns it into C"

The first one is correct.

Ok. I'm not a native speaker, so I'll have to rely on your judgement here.
The way I was reading it is "it doesn't take your program and (then) turns it into C", which feels correct to me. If that's not how it works for you, then I'll be happy to merge this.

In any case, "turn" makes it clear that it still refers to "doesn't". Let's change it.
Thanks @loisaidasam and to the others for commenting.

Thanks @scoder , I appreciate you 🙏
Hopefully I didn't waste too many people on the internet's time with this, I was reading through the docs this morning and was honestly just trying to help

I was reading through the docs this morning and was honestly just trying to help

Most people just read over mistakes and leave them for others to fix. So, thanks for taking the time to send a PR, even if the decision took a bit longer.


Ignored field is not projected

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
This situation:
class Foo {
   public int ContractId { get; set; }
   public Something Else { get; set; }
}
class FooObjectType: ObjectType<Foo> {
  protected override void Configure(IObjectTypeDescriptor<Holding> descriptor)
    {
        descriptor.Authorize(ReadFooPolicy.Name);
        ReadFooPolicy.SetProjection(descriptor); // policy sets what field should get IsProjected as it will decide based on them
        descriptor.Field(_ => _.ContractId).Ignore(); // but we do not want to have this accesible in the schema
    }
}
class ReadFooPolicy: AuthorizationHandler<ReadFooRequirement, IResolverContext> {
        protected override async Task HandleRequirementAsync(AuthorizationHandlerContext context, Requirement requirement, IResolverContext resource)
        {
             Foo foo = resource.Parent<Foo>();
             Console.Write(foo.ContractId); // => 0
             if (await resource.Service<Service>().CheckIfCurrentUserCanAccessContractAsync(foo.ContractId))
                 context.Succeed(requirement);
             else
                 context.Fail();
        }

       public static void SetProjection(IObjectTypeDescriptor<Holding> descriptor)
       {
           descriptor.Field(_ => _.ContractId).IsProjected();
       }
}

As soon as I remove ignoring of ContractId projection starts working and ContractId is filled.
Steps to reproduce

Have an object type
Set IsProjected and Ignored on one field.

Relevant log output
No response
Additional Context?
No response
Product
Hot Chocolate
Version
12.9.0

The porblem with this is that when you ignore the field it is also no longer on the object type itself. This could become possible when we introduce 'internal' fields. But at the moment this is not at the top of the priority list.

Just wanted to show some interest for this feature. I like to keep my schema clean and I'm disappointed I have to expose fooId and foo together all of the time, specially since I already have foo { id } as well. I think this gets particularly jarring when combined with Global Object Identification, where fooId and foo { id } will actually have different values that are not interchangeable in queries.


Optional settings should not be added to function.json if their value…

… is not set. Fixes #737

:shipit:


No enable autoparallel optimizer doc in grappler

URL(s) with the issue:
https://www.tensorflow.org/api_docs/python/tf/config/optimizer/set_experimental_options#args
Description of issue (what needs changing):
The document of grappler  says it has an autoparallel optimizer, and it supposed to be enabled using tf.config.optimizer.set_experimental_options.  While in tf.config.optimizer.set_experimental_options, it does not have the corresponding option (auto_parallel).

@Stonepia
Thank you for the request, we are working on this and will update you at the earliest.


Fix a couple of edge case

Hello,
I found a couple of issue with your app while working with it, so here is a pull request.
I might also work on enhancement in the near future. Things like syncing plan between local database and stripe, support for specifying the quantity in a subscription and multi plan subscription.
I would be happy to discuss how to implement all that. Else, you might see another pull request :)

Coverage increased (+0.02%) to 91.605% when pulling 7156431d38d44d0b123c96dd9dbb64e75978aa60 on gkrnours:master into 8f097ebc1d54b1ba98bf19180f92ec333a6a2b4f on ArabellaTech:master.

Hello @gkrnours
Thanks for pull requests.
Would you mind fixing tests? pylint is complaining about incorrectly sorted imports.
The command is sh run_isort.sh with py3.6 and isort==4.2.15.
Thanks

@gkrnours thanks for the PRs,
yes, we will be interested and grateful in any enhancements.
Glad you found it useful!

For syncing the plans between lib and stripe I suggest using webhooks, similar to what we have done for coupons. Please check:
https://github.com/ArabellaTech/aa-stripe/blob/master/aa_stripe/models.py#L503
For the quantity and multiple plans subscriptions, I don't have any suggestions yet. Our use case was simpler. However, it would be good to have it implemented as long as it will be backward compatible.

No problem about fixing the test but I might not do it before monday.
Thanks for the pointer on the webhooks

Coverage increased (+0.02%) to 91.605% when pulling 3dfb25b4ca2effb786ad5dca2fe681f68354d7c1 on gkrnours:master into 8f097ebc1d54b1ba98bf19180f92ec333a6a2b4f on ArabellaTech:master.


Pickle Machine failed on opcode:0x81

err: Pickle Machine failed on opcode:0x81. Stack size:1. Memo size:0. Cause:Input encountered opcode that is not implemented

i need unpickle an instance of a Python object with golang now, can you help me fix it out?

If you can provide example python code that generates a pickled object containing this byte code I may be able to help.

Pickle Machine failed on opcode:0x80. Stack size:0. Memo size:0. Cause:Unsupported version #3 detected
python (3.6.5):
with open("pickletest.pkl","wb") as f:
    f.write(pickle.dumps([1,1,1]))

golang (1.11.2):
package main

import (
	"fmt"
	"github.com/hydrogen18/stalecucumber"
	"os"
)

func main(){
	//var somePickleData io.Reader
	file,err:=os.Open("./static/pickletest.pkl")
	if err !=nil{
		_ =file.Close()
		panic(err)
	}
	numbers:=make([]interface{},0)
	err =stalecucumber.UnpackInto(&numbers).From(stalecucumber.Unpickle(file))
	if err !=nil{
		fmt.Println(err)
	}
	fmt.Println(numbers)
}

error:
Pickle Machine failed on opcode:0x80. Stack size:0. Memo size:0. Cause:Unsupported version #3 detected
[]

Pickle Machine failed on opcode:0x80. Stack size:0. Memo size:0. Cause:Unsupported version #3 detected
python (3.6.5):
with open("pickletest.pkl","wb") as f:
    f.write(pickle.dumps([1,1,1]))

golang (1.11.2):
package main

import (
	"fmt"
	"github.com/hydrogen18/stalecucumber"
	"os"
)

func main(){
	//var somePickleData io.Reader
	file,err:=os.Open("./static/pickletest.pkl")
	if err !=nil{
		_ =file.Close()
		panic(err)
	}
	numbers:=make([]interface{},0)
	err =stalecucumber.UnpackInto(&numbers).From(stalecucumber.Unpickle(file))
	if err !=nil{
		fmt.Println(err)
	}
	fmt.Println(numbers)
}

error:
Pickle Machine failed on opcode:0x80. Stack size:0. Memo size:0. Cause:Unsupported version #3 detected
[]

pickle.dumps(xxxx,2),sloved.