feat: support gasless delegation sponsored by space

We should allow dedicated account on Mana to sponsor gasfee for delegation. Here is the flow I imagine:

We detect on the UI that a space have enough ETH in his Mana dedicated account to activate gasless delegation
User then instead of doing a tx to delegate he can sign a message to delegate on ERC-20 Votes contract and send it to Mana
Mana sponsor gas fee to send a tx to delegateBySig

Ideally there should be a way on the UI to see which account to topup to send more credit to pay gas fee, also the space should have a way to enable or disable this feature. And there should be a way to avoid someone spam delegate actions and empty the wallet.
More TBD

Duplicate of https://github.com/snapshot-labs/workflow/issues/131


Fix Compatibility Issue with Non-Local Temp Disks

This pull request addresses a compatibility issue introduced by a recent fix for uploading large files. The previous implementation retrieved the path from the disk driver and attempted to instantiate a File object, which only references a path in the local filesystem and therefore caused problems with non-local temp disks (e.g., S3).
https://github.com/rahulhaque/laravel-filepond/blob/4a6f7a7b265b5631c567263d81644c416a5c1d04/src/Filepond.php#L188
Changes made:

Updated the putFile method to use read and write streams.

https://github.com/viicslen/laravel-filepond/blob/76467992739ef90bdeabef797853d3e97e789bc4/src/Filepond.php#L187-L191
This change ensures compatibility with both large file uploads and external temp disks, avoiding the need to reference local filesystem paths.

@viicslen to test it properly, I need to know 2 things. What is your temp and permanent disk in filepond config?

Both are S3 Object storage drivers

@viicslen thank you for this. I'm planning to include some test cases. I'll merge the changes asap.


Change "AddMiddleware" to upcoming "BuildFunc"

This PR changes the AddMiddleware delegate to the BuildFunc that'll (hopefully) end up in the OWIN v1.1.0 spec.
The difference between the two is that BuildFunc (and MidFactoryFunc, which replaces the CreateMiddlware delegate) takes in the startup properties in order to construct the actual MidFunc.
I'm not sure how you feel about pulling this before anything has landed in an official spec, but I thought it'd be nice to open this PR as early as possible. This will break middleware which already has a dependency on the AddMiddleware delegate, like Nancy, so it's better to pull it sooner rather than later IMO.
An alternative to breaking the middleware already working with the current AddMiddleware delegate could be to add this as an overload. That might be worth exploring.

I haven't seen much discussion on  the subject recently. Do you have a reference? We'd prefer not to update until it stabilizes, but forking to prototype is encouraged.

Not really. We talked about it on an OWIN call on wednesday. @serialseb is working on the 1.1.0 version of the spec, including MidFunc, at https://github.com/openrasta/owin.spec/ and I was hoping to get the conversation going (again) to include a BuildFunc into that as well. I raised an issue at https://github.com/owin/owin/issues/39. Let's see if anyone cares :stuck_out_tongue_closed_eyes:

@khellang any updates?

The PR including BuildFunc is here; https://github.com/owin/owin/pull/41.

I don't see much discussion on this in either PR.  If this needs to happen in ASP.NET 5, we need to reach a decision soon.

The spec and it's proposal have been stable for a year now, I think it's safe to say that there will not be signature changes. Feedback from implementers on the spec however are more than welcome, as they have been for a year.

That said if it helps things on your side for "stability", then we can trigger a vote and pass the spec as an RC next week, I'm not aware of any significant reason why this would not happen.

By all means @serialseb, it would be nice to see it finalized on your side.

I thought we did finalize the type signature, if not the exactness of the full wording. Draft is here: http://owin.org/html/spec/middleware-1.0.0-draft.1.html (source).

Doing some spring cleaning on my PR backlog. Don't see this going anywhere... Closing.


Error compiling batch-develop branch with amd/5.7.0 compilers

Following up on the previous issue #1425 , I am able to configure but amd 5.7.0 can't compile the batch-develop branch, due to a compiler crash. The develop branch configures and compiles with no problems. This is the error I get with batch-develop:
/opt/rocm-5.7.0/bin/hipcc -c /lustre/orion/world-shared/phy122/khuck/xgc-dependencies/src/ginkgo/hip/preconditioner/jacobi_kernels.hip.cpp -o /lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/hip/CMakeFiles/ginkgo_hip.dir/preconditioner/./ginkgo_hip_generated_jacobi_kernels.hip.cpp.o -std=c++14 -DGKO_COMPILING_HIP -D__HIP_PLATFORM_HCC__=1 -D__HIP_PLATFORM_AMD__=1 -munsafe-fp-atomics -fPIC -fPIC -O3 -DNDEBUG -I/opt/rocm-5.7.0/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/hip/.. -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/src/ginkgo/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/src/ginkgo -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/src/ginkgo/include -I/lustre/orion/world-shared/phy122/khuck/xgc-dependencies/src/ginkgo -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include/hiprand -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include/rocrand -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/include -I/opt/rocm-5.7.0/roctracer/include
fatal error: error in backend: Cannot select: 0x7cfb7f0: i1 = mul # D:1 0xcd81fd0, 0x7db1ce0
  0xcd81fd0: i1 = truncate 0xc539ea0
    0xc539ea0: i16,ch = CopyFromReg 0xaa0f0d0, Register:i16 %6
      0x7db2760: i16 = Register %6
  0x7db1ce0: i1 = truncate # D:1 0xc53a450
    0xc53a450: i32 = AssertZext # D:1 0xc53a220, ValueType:ch:i27
      0xc53a220: i32,ch = CopyFromReg # D:1 0xaa0f0d0, Register:i32 %8
        0xcd82190: i32 = Register %8
In function: _ZN3gko7kernels3hip6jacobi12_GLOBAL__N_125adaptive_transpose_jacobiILb0ELi2ELi2ELi4EfiEEvPKT3_NS_14preconditioner32block_interleaved_storage_schemeIT4_EEPKNS_19precision_reductionEPKSA_mPS5_
clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
AMD clang version 17.0.0 (https://github.com/RadeonOpenCompute/llvm-project roc-5.7.0 23352 d1e13c532a947d0cbfc94759c00dcf152294aa13)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/rocm-5.7.0/llvm/bin
clang++: note: diagnostic msg: Error generating preprocessed source(s).
-- Removing /lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/hip/CMakeFiles/ginkgo_hip.dir/preconditioner/./ginkgo_hip_generated_jacobi_kernels.hip.cpp.o
/autofs/nccs-svm1_sw/frontier/spack-envs/base/opt/linux-sles15-x86_64/gcc-7.5.0/cmake-3.23.2-4r4mpiba7cwdw2hlakh5i7tchi64s3qd/bin/cmake -E remove /lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/hip/CMakeFiles/ginkgo_hip.dir/preconditioner/./ginkgo_hip_generated_jacobi_kernels.hip.cpp.o
CMake Error at ginkgo_hip_generated_jacobi_kernels.hip.cpp.o.cmake:200 (message):
  Error generating file
  /lustre/orion/world-shared/phy122/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo/hip/CMakeFiles/ginkgo_hip.dir/preconditioner/./ginkgo_hip_generated_jacobi_kernels.hip.cpp.o

gmake[2]: *** [hip/CMakeFiles/ginkgo_hip.dir/build.make:26891: hip/CMakeFiles/ginkgo_hip.dir/preconditioner/ginkgo_hip_generated_jacobi_kernels.hip.cpp.o] Error 1
gmake[2]: Leaving directory '/lustre/orion/phy122/world-shared/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo'
gmake[1]: *** [CMakeFiles/Makefile2:595: hip/CMakeFiles/ginkgo_hip.dir/all] Error 2
gmake[1]: Leaving directory '/lustre/orion/phy122/world-shared/khuck/xgc-dependencies/amd_rocm_5.7.0_mpich_8.1.27/build/ginkgo'
gmake: *** [Makefile:156: all] Error 2

It's fixed in https://github.com/ginkgo-project/ginkgo/pull/1411

@khuck, Thanks for the report.
I have updated the batch-develop branch with some bug-fixes from develop branch. I think it should compile with amd/5.7.0 and pass all tests on Frontier now.
Please feel free to reopen this issue in case you face any other issue with the batch-develop branch on Frontier.

Thanks! looks like things are working for me now. I'll be running some larger tests this week.


HOTT-1414: Adds support for polymorphic certificate search results

Jira link
https://transformuk.atlassian.net/browse/HOTT-1414
What?
I have added/removed/altered:

[x] Refactor how goods nomenclature are extracted for certificates
[x] Added missing test coverage

Why?
I am doing this because:

This is required to render search result goods nomenclature correctly

They're independent


Collapsed regions expand by themselves

Issue Type: Bug
Collapsed functions may expand by themselves at an arbitrary moment in time. I don't exactly know when or why this happens, but it always happens when I'm not looking at those functions, and find that I suddenly have to scroll much farther than I expected.
So far, this is happening in TSX files, but I wouldn't be surprized if it wasn't isolated to TSX.
VS Code version: Code 1.41.1 (26076a4de974ead31f97692a0d32f90d735645c0, 2019-12-18T14:58:56.166Z)
OS version: Windows_NT x64 10.0.18363

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz (12 x 2904)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: enabledrasterization: enabledskia_renderer: disabled_offsurface_control: disabled_offsurface_synchronization: enabled_onvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.74GB (14.44GB free)

Process Argv

Screen Reader
no

VM
67%

Extensions (22)

Extension
Author (truncated)
Version

better-comments
aar
2.0.5

overtype
ada
0.2.0

Bookmarks
ale
10.6.0

color-info
bie
0.5.1

mustache
daw
1.1.1

vscode-eslint
dba
2.0.14

EditorConfig
Edi
0.14.4

vscode-great-icons
emm
2.1.47

file-icons
fil
1.0.21

duplicate
gee
1.0.1

docthis
joe
0.7.1

rainbow-csv
mec
1.4.0

vscode-duplicate
mrm
1.2.1

vscode-docker
ms-
0.9.0

remote-wsl
ms-
0.41.7

vscode-versionlens
pfl
0.24.0

vscode-template-literal-editor
pli
0.9.0

vscode-sort-json
ric
1.18.0

code-settings-sync
Sha
3.4.3

stylelint
shi
0.51.0

mdx
sil
0.1.0

vscode-svg-previewer
vit
0.5.1

(1 theme extensions excluded)

When opening a block comment (/*) or a backtick string without the closing token, this will turn a large section of the code into a comment or a string. The parser no longer recognized the structure of the file and doesn't return the folding ranges as before. What was folded in now reopened.
Dup of https://github.com/microsoft/vscode/issues/83353


Firefox 61.0b3: No overflow menu, greyed buttons in tab bar.

I have more extensions installed, which I usually keeo in the overflow menu.
Also the new-tab and multi-container tab buttons are greyed out, barely visible in the tab bar.

I couldn't reproduce this.
What "modules" of the theme you have enabled?
Do you have latest master theme version?

Yes, I am using the latest master version.
I didn't have this problem with Firefox 59. Now that I updated to the stable version Firefox 60.0, I get the same problem.
I have activated the following in userChrome.css.
@import "ui/gnome-3.26-light.css"; /**/
...
@import "ui/experimental-ff-60-csd.css"; /**/

Update2: The tab bar buttons were greyed out because I was using the Default theme. Using Light theme in Firefox fixes this.
May I suggest a bit more explicit instructions, esp. in step 6 of your README?

The instructions are correct (maybe I should rewrite step 6 tho if it's confusing). You shouldn't need to enable the light theme in Firefox (I'm assuming you mean the themes available in the burger menu → Customize), in fact we don't support any of those themes but "Default", so you can notice the tab bar's background turns whiter when you enable the light theme and completely black when you enable the dark theme, which is wrong. So this is clearly a bug, but I also can't reproduce it.
You might be one of those people who get a rare icon filter bug, in the theme variant files (ui/gnome-[version]-[light/dark].css), we've got a variable to invert icon colors (--gnome-icons-hack-filter and a few others for the tab close button), but it seems to work wrong on totally random computers, I haven't figured that out yet since it always works fine for me. If you know CSS, you can try playing with that variable, it's normally set to invert(30%), you may try setting it to none instead and see if it works (when using the Default Firefox theme, not the Light one). But if it really is that bug, then other icons also should be affected while they aren't... May I know what Linux distro and version are you using, so I can try running Firefox in the same environment?
About the overflow menu - it also works fine for me, but I noticed your screenshot looks pretty HiDPI. Are you using GNOME's window scaling? What's the number you are scaling the windows by? Does resizing the window / maximizing and restoring help?
I tested it on stock FF 60.0, 61.0a1-20180403220040, 61.0b3 @ GNOME 3.18, I don't have GNOME 3.28.2 lying around, @rafaelmardojai what GNOME version do you use?

Oh, another thing. I see you posted this:
@import "ui/gnome-3.26-light.css"; /**/
...
@import "ui/experimental-ff-60-csd.css"; /**/

I don't know what's in the ... part, but if there are any CSS selectors or @namespace, it won't work. All @import`s must be at the top of the file, before any other CSS code starts. SO in case you have something else there, this line probably doesn't load:
@import "ui/experimental-ff-60-csd.css"; /**/

Also you are missing the part where you pick how many window buttons so you have. Unfortunately we can't detect it, so you have to also @import one of these if you are using client-side decorations (and you are):
/* Window controls: just 1 button */
/*@import "ui/csd-1-button.css"; /**/
/* Window controls: 2 buttons */
/*@import "ui/csd-2-buttons.css"; /**/
/* Window controls: 3 buttons */
/*@import "ui/csd-3-buttons.css"; /**/

You have 3 window buttons, so that would be the last line. Add it to your config file and make sure there is no other CSS code before all the @imports end. I should probably make that more clear in README.

@kurogetsusai, currently i'm running GNOME 3.28.1 on Fedora 28. (FF 62 and no issues).
@ashwinvis for this theme work properly, Firefox should have default theme and normal density.

@ashwinvis for this theme work properly, Firefox should have default theme and normal density.

@rafaelmardojai Yes, but sadly the default theme doesn't work out of the box for me. I will try to check if inverting would help. This is how it looks now with the light theme:

OK, turns out it was because I used Adapta as the GNOME application theme, and not Adwaita. I don't know whether this theme intends to be universal (to be unaffected by OS) or just limited to Adwaita and similar themes. Feel free to close the issue at your discretion and thank you for your time. :100: Great work by the way.

This theme is primarily focused to Adwaita & Adwaita-dark. But i don't discard that we can add support to other GTK themes in a future.
But in general third party GTK themes are a bad idea.

This FF theme actually loads some system icons and Firefox might use some too, so if Adapta overrides them with different ones, it might mess up the colors I guess. We don't really support themes other than Adwaita, but they should actually work nicely and I think it's possible to add support for other popular themes. All the important stuff is extracted to CSS variables, so we use the same code while also supporting 4 different theme variants. Would be nice to add more, including non-Adwaita themes, but someone would have to write them so contributors are always welcome. ;p
Maybe we can at least load our own icons so they look good even on other themes, but I'm not sure about that and I don't know if we can even use Adwaita's icons here (license).
Anyway, I assume you've found a good enough workaround since the theme looks okay for you with the Light theme enabled in Firefox' customization, I'll think about those icons and I'll update README to make it easier to understand (probably tomorrow). Thanks for reporting this issue and your help with finding out why it didn't work! :D


FAILURE: Build failed with an exception.

I am trying to use this library but this is what I keep getting:
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':phone_number'.
> Could not resolve all artifacts for configuration ':phone_number:classpath'.
   > Could not download builder-3.6.1.jar (com.android.tools.build:builder:3.6.1)
      > Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.6.1/builder-3.6.1.jar'.
         > Premature end of Content-Length delimited message body (expected: 8,573,693; received: 2,359,280)
   > Could not download bundletool-0.10.3.jar (com.android.tools.build:bundletool:0.10.3)
      > Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/0.10.3/bundletool-0.10.3.jar'.
         > Premature end of Content-Length delimited message body (expected: 6,851,122; received: 4,456,416)
> Could not get unknown property 'android' for project ':phone_number' of type org.gradle.api.Project.

Here is the content of my own build.gradle file
 dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }

Please, how do I resolve this?
Thank you for this amazing library

@hashweather Sorry I don't really see what you're trying to achieve.
Are you trying to build the example app ?


update JS_EXTENSIONS list, add forgotten ".jsx" extension to README

Hi!
Please consider adding .es and .es6 extensions to JS_EXTENSIONS list.
Thanks!

Thanks!


Add link to Fortran under programming languages

Can you add a category for Fortran under programming languages, with a link to https://fortran-lang.org/ ? That site has many resources.

I avoid adding resources from the languages' official sites because they are a too obvious starting point for anyone wanting to get started.


Adding more that 1 filter doesn't work

Hello
when adding a second filter, is added but the filter is not applied.
thanks

Do you have an example or screenshot of what you are doing and what you expect the results should be?

Hello
I'm able to repro always, and colleagues also
For example in this case I selected to see live event log system
I've added the 2 filters
When I added the 1st one everything gone well
when I add the second filter, is added but nothing is filtered out
[A computer screen with many small blue and white text  Description automatically generated with medium confidence]
Thanks
Best Regards,
João Correia
Support Escalation Engineer
Azure Stack HCI
Customer Services and Support
Office: +351210602281
<EMAIL_ADDRESS>Working hours: 9-18 UTC
[Microsoft Logo]
Team Manager | Olga Beatty<EMAIL_ADDRESS>+351 (21) 0491396
From: Joseph Schick @.>
Sent: Wednesday, April 24, 2024 2:46 PM
To: microsoft/EventLogExpert @.>
Cc: Joao Correia @.>; Author @.>
Subject: Re: [microsoft/EventLogExpert] Adding more that 1 filter doesn't work (Issue #340)
Do you have an example or screenshot of what you are doing and what you expect the results should be?

Reply to this email directly, view it on GitHubhttps://github.com/microsoft/EventLogExpert/issues/340#issuecomment-2074989578, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYZOW3GKWF4PPQ7I3E57WE3Y66ZQBAVCNFSM6AAAAABGWO3NG6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZUHE4DSNJXHA.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

Github does not show images if you reply via email, can you provide the filters you are using or attach via Github so I can try and reproduce this?

I've uploaded the image

It is because your filters are set to "Not Equals".
This is a tricky one because basically you are saying you want everything that doesn't equal "SChannel" OR everything that doesn't equal "Microsoft-Windows-HttpService". So when those 2 are combined you are not actually filtering anything out.
If you are just trying to exclude those 2 types of events then you should use sub filters with AND so it is all in one query (Source != "Schannel" && Source != "Microsoft-Windows-HttpService").

Hello
This was working correctly on previous versions.
So if we want to add multiple filters need to be done manually ?
Because Is normal that when you're trying to check multiple logs to add the exclusions by only pressing the filter button
thanks
Best Regards,
João Correia
Support Escalation Engineer
Azure Stack HCI
Customer Services and Support
Office: +351210602281
<EMAIL_ADDRESS>Working hours: 9-18 UTC
[Microsoft Logo]
Team Manager | Olga Beatty<EMAIL_ADDRESS>+351 (21) 0491396
From: Joseph Schick @.>
Sent: Wednesday, April 24, 2024 5:01 PM
To: microsoft/EventLogExpert @.>
Cc: Joao Correia @.>; Author @.>
Subject: Re: [microsoft/EventLogExpert] Adding more that 1 filter doesn't work (Issue #340)
It is because your filters are set to "Not Equals".
This is a tricky one because basically you are saying you want everything that doesn't equal "SChannel" OR everything that doesn't equal "Microsoft-Windows-HttpService". So when those 2 are combined you are not actually filtering anything out.
If you are just trying to exclude those 2 types of events then you should use sub filters with AND so it is all in one query (Source != "Schannel" && Source != "Microsoft-Windows-HttpService").

Reply to this email directly, view it on GitHubhttps://github.com/microsoft/EventLogExpert/issues/340#issuecomment-2075295438, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYZOW3HHMM5HPEXVQMSF7U3Y67JKBAVCNFSM6AAAAABGWO3NG6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZVGI4TKNBTHA.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

The multi filter logic was changed in a January release build (v<IP_ADDRESS>1) to support highlighting, filter groups and toggling all events.

So if we want to add multiple filters need to be done manually ?

If you are trying to exclude individual events one by one then yes, this will need to be done manually in a single filter with sub filters.

Because Is normal that when you're trying to check multiple logs to add the exclusions by only pressing the filter button

This is debatable as the intended usage is to look for specific things through "Equals" or "Contains", and with highlighting you will want to see multiple of these at a time. For example, if I am trying to visually explain why a system crashed or unexpectedly rebooted then I would have multiple filters saved (probably with highlighting) in a filter group to view specific events. If I wasn't completely sure exactly what event I am looking for then I would be using "Contains" to try and narrow down my search based on the issue I am troubleshooting.
Unfortunately, there isn't an easy way to make every scenario work. Right now, the Exclude context menu action when trying to exclude individual events one by one to try and find something useful when you aren't quite sure what you are looking for yet is one area that I am working on coming up with a better solution for.

I can see this as well. I filter out KDC, and include eventid 14554. I get eventID from other sources that are different:

When I add them both as "equal" term, it appears as if they are ORed, where previously they had implicit AND.
To get that you need an advanced filter, back to original:
Id == "14554" && Source != "Microsoft-Windows-Kerberos-Key-Distribution-Center"
But this is more clicks and you can't build it with right-clicking on an example event you want to see or exclude.
I would say that when you populate the filter using mouse-clicks we expect the implicit AND. As this often used to filter out noise.
in the perfect world, you could:

change the implicit logical operator between standard filters
convert the list of standard filter to an advanced filter and change the logical operator as needed.

Yes, previously they were AND and now they are OR to support the addition of highlighting, changes to sub filters and filter groups (see my previous comment). Having it set to AND made multiple filters with "Equal" or "Contains" only filter on what was already filtered and setting it to OR made multiple filters with "Not Equals" or "Not Contains" cancel each other out. There wasn't an easy way to have both options work.

change the implicit logical operator between standard filters

This is what my initial thoughts were to solve this issue, but it is easier said than done due to how the actual LINQ is done when filtering with multiple filters. Right now, this can be done via sub filters or the multi select option but unfortunately this also isn't easily solved when done via the right click context menu. For now, I think I may just set the exclude context menu to append to a single filter.

convert the list of standard filter to an advanced filter and change the logical operator as needed.

This may not be a bad idea or an option to convert all filters into a single basic filter with sub filters where AND/OR can be changed.

I've come with an idea on how I would like to resolve this, should hopefully have a PR ready for this sometime this week.


[SMALLFIX] Add port coordination to gitignore

@aaudiber

Merged build finished. Test PASSed.

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


request: 2FA for admin

RainLoop version, browser, OS:
RainLoop 1.12.1, Windows 10, IE11,
Expected behavior and actual behavior:
expected:
After enabeling and andforcing 2FA, I expected the admin account to also be protected by 2FA
Actual behaviour is admin login is still username/pw only
Request:
Option to enable 2FA for the admin account

+1, I don't see why you can only secure your users account but not the admin itself.

+1


Is audio input stream blocking if we use multiple instances at the same time?

I'm using a stream in a high throughput system but it seems to be blocking sometimes for 10 seconds. Is this expected?

Hi @abi-jey , can you provide more details around the SDK that you are using, python version, OS and some sample code to reproduce the issue. This way you can be routed to the proper team for help.


Allow copy and paste nodes / edges

Its possible allow copy and paste on dashboard the elements selected by shift? would be nice

To copy a node with it's edges:

Get the selected node's data
Find the edge(s) that has the the node's ID as target or source
Add the node again (with a new ID) and the edges again (with the new ID)

To select nodes:
https://reactflow.dev/examples/provider/
To add nodes / edges:
https://reactflow.dev/examples/save-and-restore/

As @DovahBrownies pointed out you need to implement this by yourself. I am not sure if this is a feature we should add to the core. Maybe we can use the Discussions section to find out which features are needed most.

I close this in favour of #1020

Can anyone share how to handle the copy paste nodes/edges (May be with sample POC)

@sasimarudhuri see comment in this below video
https://m.youtube.com/watch?v=juRkDY8lEyE


Redirect not work correctly with params (when have same base url)

Version
react-router-dom version 4.3.1
Test Case
https://codesandbox.io/s/738zk3y3x0
I want redirect "/procurement/:id" to "/procurement/:id/items", but it doesn't work.
Steps to reproduce
Expected Behavior
Redirect works.
Actual Behavior
Error: You tried to redirect to the same route you're currently on: "/procurement/123/items" and no render component.
Workaround
If i change redirect "/procurement/:id" to "/notEqualProcurement/:id/items", all works fine.

Have you tried to add an exact prop to your <Route path="/procurement/:id" />?
I believe the <Switch /> is always choosing the route because it will match even for /procurement/123/items.

You're using a plain <a> for your link. If you're making a route change, you need to use <Link>.

@henryqdineen , you r right. Even for /procurement/123/items matches to pattern /procurement/:id.
Exact works fine, thank you. Also, if placed line with Route to /procurement/:id/items above Redirect, it works fine too. <Switch/> will work from  particular to general (and break when find route). Thank all! It works!


cookie warnings

this one seems hard to reproduce.
gathering user reports in this thread.
https://discord.com/channels/343440455738064897/467961162558865408/1167190009401585814
Any ideas what would cause this to be spammed in console for headless dedicated server build?

    Mirror v81.3.1
    Using dedicated server linux build with il2cpp
    Unity version 2022.2.10

This occasionally happens when I start the server, other times it works just fine (does not print this message).
I haven't spent much time looking into it, but wondering if anyone has seen this?

Thu Oct 26 19:32:45 UTC 2023: Mirror.NetworkLoop:NetworkEarlyUpdate()
Thu Oct 26 19:32:45 UTC 2023:
Thu Oct 26 19:32:45 UTC 2023: KcpPeer: dropped message with invalid cookie: 0 expected:<PHONE_NUMBER>.

this left like 3mb log in like a few hours of running with how often it was printing, restarted the server without changing anything else and it's gone

The current version of the code is still subject to this issue

The latest code version, still by this issue

The client is unity and the server is a C# console program. The above problem will still occur with a low probability.

I found the problem. The reason is that segment retransmission occurred before the Client received the Hello packet.

I was able to reproduce this and hack a workaround.
The Problem:
Server has multiple IP's and the server is listening on all of them, but client is calling by FQDN that points to an IP that is not first in the list of IP's configured on the NIC.  When client tries to connect, the cookie response goes out on the first IP, not the one the client called on, so client never gets the cookie message, doesn't respond, and gets kicked for timeout (the log spam is a byproduct of client trying to coax the cookie msg out of the server).
Solution A
Change your DNS to point the FQDN to the first IP on the NIC, or move the IP that it's pointed to up to be first on the NIC.
Solution B

Disable Dual Mode on the Kcp Transport
Change Line 144 in KcpServer.cs from this
socket.Bind(new IPEndPoint(IPAddress.Any, port));
to this
socket.Bind(new IPEndPoint(IPAddress.Parse("<IP_ADDRESS>"), port));
(replace <IP_ADDRESS> with your actual IP you want to bind to)

Solution C
A future PR that provides for entering IP or FQDN in Unity and use that for the binding above.

Further reading:
https://stackoverflow.com/q/3062205 via https://stackoverflow.com/a/1309534
https://blog.powerdns.com/2012/10/08/on-binding-datagram-udp-sockets-to-the-any-addresses

quick update.
'invalid cookie=0' warnings.
this is reproducable with 30 bots in a local project.
client sends Hello as reliable.
kcp spits out the message one or multiple times until acked.
server gets the first hello, sets as authenticated
server gets another hello that was in transit for ack, shows the warning that we got cookie=0 while authenticated.
solutions: researching. maybe send hello as unreliable to avoid the ack stuff and check easily if msg=hello then ignore cookie=0 because in transit


Update wkhtmltopdf

Fixed issue with uninstallation. /usr/local/lib/libwkhtmltox.* doesn't work so the files have to be explicitly set.

Thank you for the contribution. It was merged directly as 70e355a8126c8c1bcdabfc81565300ae71616be4 to keep commit history cleaner. Your contribution is still credited to you.


path level parameters

The storage APIs use path level parameters. When building the operations, they should be added after the context and before other operation level parameters.

Duplicate of #221.


Update ribbon image

https://github.com/opengeospatial/ogc-features-website/commit/bed86f3ee756f5b1d934bb562e5af85b31c6ff7e


Parallel drain

The PR moves the draining from the daemon to the main controller it's based on the work from @e0ne and https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/552.
Also, the PR introduced a new feature to allow multiple nodes to be drained in parallel
base on https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/479

please first review https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/553

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

701 of 3332 (21.04%)  changed or added relevant lines in 38 files are covered.
75 unchanged lines in 7 files lost coverage.
Overall coverage increased (+0.8%) to 26.472%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

controllers/sriovnetworkpoolconfig_controller.go
6
7
85.71%

pkg/plugins/intel/intel_plugin.go
0
1
0.0%

pkg/daemon/event_recorder.go
1
3
33.33%

pkg/platforms/platforms.go
9
11
81.82%

pkg/utils/shutdown.go
0
2
0.0%

controllers/sriovoperatorconfig_controller.go
12
15
80.0%

pkg/systemd/systemd.go
0
3
0.0%

pkg/global/vars/vars.go
22
26
84.62%

pkg/utils/cluster.go
32
39
82.05%

pkg/global/consts/constants.go
0
8
0.0%

Files with Coverage Reduction
New Missed Lines
%

pkg/plugins/generic/generic_plugin.go
1
43.96%

pkg/plugins/k8s/k8s_plugin.go
1
0.0%

pkg/plugins/mellanox/mellanox_plugin.go
1
0.0%

controllers/sriovnetworkpoolconfig_controller.go
3
53.33%

pkg/daemon/daemon.go
11
48.14%

pkg/utils/utils.go
16
0.0%

pkg/host/host.go
42
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.8%

Covered Lines:
2720

Relevant Lines:
10275

💛  - Coveralls

This PR is doing all kinds of things: refactoring/cleaning up/adding tests for missing things/ making interfaces so we can mock things.
I recommend splitting it up into smaller PRs to ease review, and also to get the refactoring PRs in first. The Parallel drain PR should focus on adding the drain_controller. I'd like to make each PR as small as possible. Then I will review in more detail.
A few notes to start:

We are creating drain annotation if it doesn't exist. I think we should simplify the code to always have a drain annotation so that we don't need to check if it exists or not.
We are again adding huge functions that are more than 150 lines. I prefer to now take the opportunity and refactor more first (as part of a PR that goes in before we start working on the Parallel drain). The same goes for the drain controller. I prefer that we use more functions with good names. For example, you write this cover the case the node is on idle. The blob that you put under that comment can all go into a function with name reconcileIdleNode or some other clear name.
We need to take care of the situation where a node gets deleted while we are draining. I want the drain code to be fool-proof.
I'm pretty sure there are still races inside this code but I want to first break up the PR such that reviewing it becomes palatable.

Hi @bn222 this was already split please review first https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/553

Hi @bn222 @zeeke @adrianchiris @e0ne now that we are done with the interface redesign PR this one is ready for review.
so when you have time please take a look please :)

@SchSeba I'm keeping an eye on this, because I want to do a final review when things have been cleaned up.

Hi @bn222 the PR is in a ready state so if you can give this one another round please do :)
I think I answered all the comments from your side

I think I answered all the comments. please take another look when you have time

Done @ykulazhenkov with the comments thanks!
be aware that in the daemon I use the background context as we don't have context there.
that will change on my next PR where we change the daemon to use controller-runtime manager

Done @ykulazhenkov with the comments thanks!
be aware that in the daemon I use the background context as we don't have context there. that will change on my next PR where we change the daemon to use controller-runtime manager

Thanks @SchSeba  for addressing my comments.
Please, check the last one https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/555#discussion_r1514058090

Hi @ykulazhenkov done thanks!

Hi @zeeke @e0ne @ykulazhenkov when you can please take another look on the PR I will like to try and get this one merge soon.
Thanks!

Thanks, @SchSeba.
I think it is important to have agreement about this comment https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/555#discussion_r1519320816 before we merge.
Can you comment?

Hi @ykulazhenkov I did the requested change for the empty node selector let me know if that works for you :)

Thanks for all the help reviewing this complicated feature!
merging after 3 approvals


Global Filter Not Working : Column Null in function globalSearch with postgreSQL

hello bro, I'm adjis from Indonesia. I use yajra datatables for a long time, but I have several projects using postgreSQL databases. I found a problem when searching data globally. after I search, I found the problem that the globalSearch function can't capture the table column. finally I tried to modify the line code to run properly.
the following code I have made:
if($query->first()){
        $getColumns = array_keys($query->first()->getOriginal());
	foreach($getColumns as $col){
		if ($this->hasFilterColumn($col)) {
			$this->applyFilterColumn($query, $col, $keyword, 'or');
		} else {
			$this->compileQuerySearch($query, $col, $keyword);
		}
		$this->isFilterApplied = true;
	}
}

//OLD QUERY
if ($this->hasFilterColumn($column)) {
	$this->applyFilterColumn($query, $column, $keyword, 'or');
} else {
	$this->compileQuerySearch($query, $column, $keyword);
}
$this->isFilterApplied = true;

I made the code above to make the search run, but I don't know in the future there will be other problems after I make the code.
I hope there is an update that can solve the problem above.
thank you bro

Files : QueryDataTable.php, Line : 740
Version : ^9.19
My Laravel : ^9.0

@adjisafandi can you send a pull request on the patch you did?
Also, can you provide a snippet on how to reproduce the issue? Thanks!


Preparation code output displays JS source

The “preparation code output” section should show the initHTML with any script tags and their contents stripped out.
Currently, it removes <script> and </script>, but leaves the contents intact.
https://github.com/jsperf/jsperf.com/blob/04233d64da81db617586d28b2c2e5c5758411a81/server/web/test/index.hbs#L61-L69
Example test case where this makes the output look confusing: https://jsperf.com/tooooooooooofixed

I think this can be closed with #231. The current regex does appear to strip the contents of <script>s.

@demoneaux Correct! The same bad test striketh again :(


Application doesn't start

Hi there,
I tried to start the application (downloaded here) but an empty window is showing very shortly and then it disappears.
Then I tried to use the source code to check / debug why this goes wrong.
I am not very experienced with Visual Studio but even with google I can't get the references correct to get it to build :(

Get same issue

Error in Draconyx.csproj: hint path are relatives.
....\Program Files (x86) [....]
should be
C:\Program Files (x86)\ [...]
Or you must use your solution from a folder nested in a subfolder (ie: c:\test\Draconyx-master for example).


Reduce API unit tests duration

Motivation

Closes #2398

Changes

Reduce duration of all API unit tests to ~2 seconds

Test Plan

API unit tests

DevOps Notes

[x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources)
[x] This PR does not affect public APIs
[x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.)
[x] This PR does not make changes to log messages (which monitoring infrastructure may rely on)

one note regarding the change in general. i had issues in the past with services being not immediately available when the listener socket is opened. usually, the error-proof practice was to poke some endpoint (like /ping) until it returns a successful response. but the test passed so I guess it is fine

@dshulyak I was going to implement it the way you suggested, but way more changes were needed for that. Tests seemed to always pass even with the current implementation, so I left it. If tests fail in the future, I'll improve the checks.

bors merge

bors merge

bors merge


Fixed undefined variable

Fixed PHP notice Notice: Undefined variable: active in ... lib/Raven/CurlHandler.php on line 96.
Depending on your setup, notices are converted to exceptions so you don't forget about them ;-) This notice currently causes my test environment to fail.

Failing tests unrelated.

Unfortunately the failure is somewhat related... You're consuming more memory, hence changing the result of the (flaky) PHPT regression test. Can you try to change the memory limit to 16M here?https://github.com/getsentry/sentry-php/blob/61c862beca7ff8f44ab1636a15e54df5c44de51d/test/Raven/phpt/fatal_reported_with_async.phpt#L44

No idea how that can use more memory but well, done :)

It does seem wierd to consume more memory by just adding a variable (that will be defined by php anyway)... still failing with the memory change though...

Damn, now an other regression test is failing, this time under 5.3... I have to investigate this further.

Yeah, I actually just wanted to get rid of the notice and I think what I did is pretty straightforward, isn't it? 😄

It should, but those tests are really flaky and testing some arcane edge cases so who knows... maybe this is even a cause somehow... 😜

I'm currently unable to reproduce the failure locally :cry:


Respect configured AWS profile when calling boto3

Use a shared boto3.session.Session between pyathena and manual
boto3 calls. This fixes #120

How similar is this PR to #56 ?

Aah, I obviously don't know how to search. This PR is very similar, where it differs is that it shares one session with pyathena and that the bug is fixed for newly introduced usages of boto3. I can close this in favor of the old one if that is preferable and it is updated to cover the new places that boto3 is used.

#125 leverages this approach and introduces a global variable that holds the boto3_session that can be retrieve at any point in time via get_boto3_session(). Happy to decline that PR in favour of this one. As I mention #125, #56 has been lying around for quite some time (outdated version of the code) and #124 addresses the issue in only one instance of the adapter i.e. clean_up_table.


EE Security Checklist

Lets use this issue to add all ideas to secure a server running EE.

[ ] block unwanted port. EE needs I guess only 22. 80, 443, 3306 and 22222. Rest all can be blocked.
[ ] Some guide suggsts running SSH on other port. I am against this because port scanning doesn't take much time. Please correct me if I am wrong here.
[ ] inotify watches for  ~/.ssh/authorized_keys and other files
[ ] fail2ban to prevent bruteforce (what about DDoS attach where IP-based filtering fails)?
[ ] 2-factor authentication for shell users (could be made optional)

[ ] Disable nginx, php, mysql, hhvm, pagespeed, ssh version, So attacker need some extra work to find right exploit

[ ] Test nginx-naxsi as this help ee users to prevent  Xss & Sql Injection.

Nice. I guess we should hide EE version too then

[ ] Hide EE version

[ ] Disable Root Login ? For normal usage it's not really needed. Account creator helper with restricted access would be helpful too (To create accounts, So we can use for day to day standard tasks with no root privileges as well as maybe even give access to a sys admin for a particular site instead of full server access).
[ ] SSH Port Changing - I don't know about scanning but i always do this and it has been very good as it killed the whole automated attacks/attempts of logins. At least most of the standard automated bot attacks would be killed (Maybe they lack scanning or something, Never had problems after change).
[ ] Limit Remote Access to MySQL Server - I'm able to easily access the MySQL server remotely from any IP (Although this is good for me, Since i use Sequel Pro but in terms of security it would be better to limit it). Maybe it would be a good idea to whitelist specific IP range and or single IP (Wildcard Supported would be good for Dynamic IPs).
[ ] Helper to change the default 22222 port to something else of our choice. So if they find out we have EE installed, don't try accessing PMA and or other areas.

Whatever is possible, would be good to see them in next versions!

@irazasyed

SSH Port Changing - I don't know about scanning but i always do this and it has been very good as it killed the whole automated attacks/attempts of logins. At least most of the standard automated bot attacks would be killed (Maybe they lack scanning or something, Never had problems after change).

Most of bot come with option to specify different port other then default, so changing port doesn't help.
Instead of changing port make passwordless ssh login so only authorized people can access the server (Who's key already on server). also we can block port 22 and only be accessible from specified ip address that helps us  a lot.

Helper to change the default 22222 port to something else of our choice. So if they find out we have EE installed, don't try accessing PMA and or other areas.

Refer: http://docs.rtcamp.com/easyengine/commands/secure/

@MiteshShah

Most of bot come with option to specify different port other then default, so changing port doesn't help.
Instead of changing port make passwordless ssh login so only authorized people can access the server (Who's key already on server). also we can block port 22 and only be accessible from specified ip address that helps us a lot.

I see. Isn't that already being done with EE? I thought it disables password login and works using just with the SSH keys that are already authorised. As for the access from specified IP address is concerned, that better be a range or wildcard supported, because for people with Dynamic IP it'll be a problem then.

Refer: http://docs.rtcamp.com/easyengine/commands/secure/

Thanks for the link.

SSH via public key only, keep it at port 22 but fail2ban in place.
port 80 and 443 should have some connect limit per IP to avoid DoS.
hide all versions and if possible relocation folders. i.e. /var/www not to be used as webroot.
WP Specific
wp-content not as content container, wp-content/plugin not as plugin's location.

/var/www not to be used as webroot

I do not think security in obscurity is good idea! Once an attackers gets into server, he can easily figure out webroot location anyway.

security by obscurity on its own is a very bad idea but added in the mix where we have good standard practices in place makes it a layer and hence enhance the overall posture. However it really depends on if you want it or not.

Please let's not bother with changing of the webroot and WP directories, lets leave that to WP securities plugin. EE should focus on configure the server environment, not the application.
This is how feature-creep starts.

fair point by @w33zy i agree lets leave this to wp sec plugin's


Fix 'Connection aborted, RemoteDisconnected' issue.

Support multi process fork mode.
When multiprocessing start mode is "fork", subprocess will copy the _thread_context from main process, so subprocess will use main process _thread_context.session. if main process query open_ai again, it will have below error:
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')). so we need create a new _thread_context.session to prevent this issue.

@jhallard

Thanks for this!
We've since rewritten the library entirely, so this change is no longer relevant. I'm sorry we didn't get to it sooner.


Is there any way to import a Supertable with inner Matrix fields?

I have a complex matrix field set I want to be able to include in a super table.  Is there any way do to this?

Nevermind, I had a version conflict in the exported fields.

@pixeljitsu Yeah, this was added in one of the latest versions, but there were some bugs in 1.3.3. Glad you got it working!


RPM package does not react correctly to optional dependencies being added or removed post install

looks like its only fedora related


Add authorization token to be allowed to access the backend

Change endPoint to Access to platform backend to get dynamic projects list
Proposed Changes

Add endPiont to evirioment
Add header to include valid token to access
Get project list from server

Pull request checklist
Please check if your PR fulfills the following requirements:

[ ] Tests
[x] Build locally
[ ] Code format / lint
[ ] Docs have been reviewed and added

Pull request type
Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
The sistem access to backend to get the list of project available using a valid token

Fixes #81
What is the new behavior?

Does this introduce a breaking change?

[ ] Yes
[x] No

Other information

Be careful with the blank spaces in the checkbox of the PR.  Try to put labels, use the issue in the Kanban project and assign the PR to someone


Create repo automation failure : Fix the create_repo.py

Issue Description:
create_repo.py (python script) is not automated as mentioned in the readme.

Normally to connect a local repository to GitHub one has to go to the GitHub website, create a new respository and then add the new GitHub repo as a remote for your local repository. The create_repo script automates this process.

create_repo.py does ask for a prompt when linking the local repository with the remote repository. In this case, it defeats the purpose of automation.
Steps to Reproduce:
There might be various ways to reproduce the bug. I'm enlisting one of them.
Scenario (A):

Step 1:

Remove the stored credentials from the Windows credential manager if present.

Run the create_repo script with valid git configuration,  valid arguments and with valid token in the github_secrets.py

Note: Due to the VScode extension it invokes GUI prompts else as shown below.

Thus, it is not automated as mentioned in the README.

The create_repo script automates this process.

Expected Behavior:
On create_repo execution, it should create a remote repository, create a local repository and link the local repository with the newly created remote repository without asking for a prompt.  In linking the local repo with the remote repo it should use the credentials from github_secrets.py but not from the Windows credentials manager.
Current Behavior:
Current scripts work in the following scenarios.

The user has to explicitly provide the credentials in the prompt or,
It fetches the valid credentials from the Windows credentials manager.

Environment:

Device: Windows Laptop
Operating System: Windows 11
Software Version: git version 2.40.1.windows.1

Additional Information:

It is working fine for me, why?

In case it is working as expected then the following actions might be happening.

Users are using the same token which is cached (stored in the Win credentials manager). Thus by default, it uses the cached credentials instead of github_secreats.py 's token for linking the repos.

It need not be the scenario in the real use case.
Labels:
Bug

Please @sahil-sagwekar2652 verify and review it from your end. In case it is a valid bug, I would like to work on this task. Thank you.

Hi I a contributor at GSSOC and want to fix this issue please assign it to me

Great work pointing out his bug @shubham-deshmukh . I will try to reproduce it locally and then get back to you. @tanish111 If you are up for it you can also try to reproduce the above mentioned bug on your system.

@c0sm0void can you please take a loot at this issue?

@sahil-sagwekar2652 @c0sm0void any updates on this?


Update to latest CI/CD scripts from docs-template repo

This adds the file pre-commit.yml which is in the docs-template repo, but not in this repo.

@apazos, @kito-cheng, or @wmat, please review.

LGTM

@wmat, do you have permission to "approve" the PR? I want to avoid bypassing the branch protections, and I cannot approve my own PR.

Approved.  I can merge it as well if you like?


Attempt to fix download issue.

@beyang can you try to reproduce sourcegraph/srclib-python#28 with this fix?

works for me


PPORecurrent mini batch size inconsistent

I am using PPORecurrent with the RecurrentDictRolloutBuffer. In https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/issues/103 it's mentioned that batch size is intended to be constant size. However this seems not to be the case.
I did some experiments where I print the action batch sizes coming from the  _get_samples() function.
Exp 1: batch_size < sequence length
Initialize PPORecurrent with batch_size = 10. I am sampling only 2000 steps for debugging purposes.
The mean sequence length is 32.3

It looks like whenever n_seq = 2 and it appends 2 different sequences the batch size is higher than the specified 10.
Exp 2: batch_size > sequence length
Initialize PPORecurrent with batch_size = 100
The mean sequence length this time is 31.7

The batch size is now always higher than the specified 100, and different every time.
Is this the intended behavior? It seems wrong to me since it is stated explicitly in the aforementioned issue that batch size is intended to be constant:

Actually no, the main reason is that you want to keep a mini batch size constant (otherwise you will need to adjust the learning rate for instance).

Also, now that we are at it, what is the reason for implementing mini batching, instead of feeding batches of whole sequences to the model?
System Info
Describe the characteristic of your environment:

installed with pip
Stable-Baselines3 1.6.0
sb3-contrib 1.6.0
GPU models and configuration
Python 3.8.0
PyTorch 1.12.1+cu116
Gym 0.21.0

Hello,

The batch size is now always higher than the specified 100, and different every time.

my guess is that it is because of padding/masking.
https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/a9735b9f317be4283e56d221e19087b926ca9ec0/sb3_contrib/ppo_recurrent/ppo_recurrent.py#L369
rollout_data.observations[mask].shape should be constant and equal to the desired value.

what is the reason for implementing mini batching, instead of feeding batches of whole sequences to the model?

if you feed all sequences, then the mini batch size is not constant, which makes it harder to tune hyperparameters.
Or, as done in openai baselines, it imposes some restrictions on the number of steps, minibatches and environments.
If you feed sequences, you also don't know in advance how much memory you need for the storage, which makes it less efficient (related to https://github.com/DLR-RM/stable-baselines3/issues/1059)

Thanks for the answers! I checked and you are right, the masking always yields the correct sized obs/act.
I am still a bit confused on the purpose of padding in this case, as the data is fed sequentially into the model (seq_length * obs_size), instead of in 3D batches like (batch_size * seq_length * obs_size). Is there any resource I can read through to learn more about this?

the purpose of padding in this case, as the data is fed sequentially into the model (seq_length * obs_size)

What you want to feed is (batch_size, obs_shape) sequentially:
https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/a9735b9f317be4283e56d221e19087b926ca9ec0/sb3_contrib/common/recurrent/buffers.py#L231
So, if array could be of any sizes, then you would feed (n_seq, seq_length, obs_shape) where seq_length vary from one sequence to another.
However, it is not possible (and not efficient if you replace numpy/torch array with list) to have an axis with variable size, so we padded each sequence in order to have a fixed size (max_seq_length).
This shape is needed here:
https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/a9735b9f317be4283e56d221e19087b926ca9ec0/sb3_contrib/common/recurrent/policies.py#L177-L179

Is there any resource I can read through to learn more about this?

not really... but you can compare that implementation to SB2 implementation: https://github.com/hill-a/stable-baselines/blob/14630fbac70aaa633f8a331c8efac253d3ed6115/stable_baselines/ppo2/ppo2.py#L368-L380
In SB2, there is no padding but there is a constraint on the number of steps and number of minibatches, so that the sequence length is always the same.

Thanks for your elaborate reply. It makes much more sense now.
Although my models are training very well with SB3, I was still running into problems where it was taking way too long to train. PPORecurrent with an LSTM was running at only 104 fps on a 24 core machine, against normal PPO with an MLP at around 1000 fps on the same machine. Some profiling showed that the majority of comp time was spent on the backward pass. I was only able to speed it up to 181 fps by moving to a GPU machine (12 core + v100), which is still too slow for my project.
So in an effort to try and speed up training I forked sb3-contrib and implemented a version that trains on batches of whole sequences, by feeding a (n_seq, seq_length, obs_shape) batch directly to the Torch api, instead of using the Python for loop in  _process_sequence.
This made the backward pass 4 times faster. I tested this on my laptop GPU, the backward pass went from 20s to 5s. I then ran this in a few configurations on our cluster to find out what the real speedup is in terms of fps, and to confirm that the models actually are able to train well. It achieved an fps of around 500, on the same 12 core + v100 machine. About 2.8 times faster than the 181 fps before. Also the models achieved the same rewards with similar trajectory. Results of two 24h runs are shown below, green is standard sb3-contrib with 512 batch size, blue is my fork of sb3-contrib with batches of 8 whole sequences.

However, it is not possible (and not efficient if you replace numpy/torch array with list) to have an axis with variable size, so we padded each sequence in order to have a fixed size (max_seq_length).

I was able to do this without resorting to lists, keeping the same setup for the rolloutbuffer as sb3. It is just a matter of indexing. The issue regarding variable sequence lengths in a batch is solved by padding sequences so the tensor becomes a cube a again. Below is the code I used to generate the batches:
# yields batches of whole sequences, shape: (batch_size, sequence_length, data_length)
for indices in batch_sampler:
    obs_batch = {}
    for key in self.observations:
        obs_batch[key] = pad_sequence([th.tensor(self.observations[key][self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)

    actions_batch = pad_sequence([th.tensor(self.actions[self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)
    old_values_batch = pad_sequence([th.tensor(self.values[self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)
    old_log_probs_batch = pad_sequence([th.tensor(self.log_probs[self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)
    advantages_batch = pad_sequence([th.tensor(self.advantages[self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)
    returns_batch = pad_sequence([th.tensor(self.returns[self.episode_start_indices[i]:self.episode_start_indices[i+1]], device=self.device) for i in indices], batch_first=True)
    masks_batch = pad_sequence([th.ones_like(r) for r in returns_batch], batch_first=True)

    yield RecurrentDictRolloutBufferSequenceSamples(
        observations={key:th.swapaxes(obs_batch[key], 0, 1) for key in obs_batch},
        actions=th.swapaxes(actions_batch, 0, 1),
        old_values=th.swapaxes(old_values_batch, 0, 1),
        old_log_prob=th.swapaxes(old_log_probs_batch, 0, 1),
        advantages=th.swapaxes(advantages_
        returns=th.swapaxes(returns_batch, 0, 1),
        masks=th.swapaxes(masks_batch, 0, 1)
    )

If you are interested to see more about this, here is my fork.  The main changes to look at are in buffers.py for the RecurrentSequenceDictRolloutBuffer, and any function with "whole_sequence" in the name. Also, I can run more benchmarks if you want.
Its a crude implementation just to try and test how well it works so I only implemented functionality I need for my project. If you're interested in this method I could do a proper implementation and submit a pull request for it. From what I am seeing it is not only a lot faster, but the code is also much simpler.

with an LSTM was running at only 104 fps on a 24 core machine, against normal PPO with an MLP at around 1000 fps on the same machine.

This is expected.
That's why you should try PPO with framestack first as we recommend in the doc.
See also the small study PPO LSTM vs PPO framestack: https://wandb.ai/sb3/no-vel-envs/reports/PPO-vs-RecurrentPPO-aka-PPO-LSTM-on-environments-with-masked-velocity--VmlldzoxOTI4NjE4

batch directly to the Torch api, instead of using the Python for loop in _process_sequence.

you mean using:
https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/c75ad7dd58b7634e48c9e345fca8ebb06af3495e/sb3_contrib/common/recurrent/policies.py#L182-L187
I guess.
If you do not take the done signal into account, you are not treating sequences properly (you are treating n_steps from one env as a big sequence, not matter how many episodes where in there).

onfirm that the models actually are able to train well.

good to hear, did you try on envs from https://wandb.ai/sb3/no-vel-envs/reports/PPO-vs-RecurrentPPO-aka-PPO-LSTM-on-environments-with-masked-velocity--VmlldzoxOTI4NjE4 ?
It sounds like you might not need PPO LSTM.

That's why you should try PPO with framestack first as we recommend in the doc.

I have indeed read that, however I am expanding on prior research so I am limited to LSTMs.

you mean using:
stable-baselines3-contrib/sb3_contrib/common/recurrent/policies.py
Lines 182 to 187 in c75ad7d
I guess.

Yes you are right, that would probably also work very well in terms of speed, however that code will never be called when seq_length < batch_size.

If you do not take the done signal into account, you are not treating sequences properly (you are treating n_steps from one env as a big sequence, not matter how many episodes where in there).

I am using the done signal to cut the rollout buffer data into the original sequences, which are then batched.

did you try on envs from

Yes, I tried on gym BipedalWalker v3, which went from 752 fps to 1992 fps, a 2.6 times speedup:

Orange is standard PPORecurrent and red is the 3d batching version. Results look quite similar but I didnt spend time on tuning hyperparams for the 3d batching version. Code for running this test can be found here
It looks like 3d batching is between 2.5 - 3 times faster than what is currently implemented in sb3_contrib, while keeping same learning behaviour. If you're interested I can run more tests with different params/different envs.

Yes, I tried on gym BipedalWalker v3, which went from 752 fps to 1992 fps, a 2.6 times speedup:
If you're interested I can run more tests with different params/different envs.

I meant on the envs from the benchmark (https://wandb.ai/sb3/no-vel-envs/reports/PPO-vs-RecurrentPPO-aka-PPO-LSTM-on-environments-with-masked-velocity--VmlldzoxOTI4NjE4) that actually require recurrence to work (because speed was removed from the observation).
They are defined in the RL Zoo: https://github.com/DLR-RM/rl-baselines3-zoo/blob/master/rl_zoo3/import_envs.py#L47-L62

BipedalWalker v3,

mmh,  BipedalWalker v3 doesn't require recurrence to be solve normally, and -90 is far from the optimal performance (around 300).

I am using the done signal to cut the rollout buffer data into the original sequences, which are then batched.

I need to take a look at that in more details.
The speedup is definitely interesting but I'm afraid of the correctness of the implementation.

Fair points. I reran the test on BipedalWalker-v3 with the proper hyperparams (from sb3 zoo), and also ran a test on PendulumNoVel-v1. Here are the results:
BipedalWalker-v3:

Orange is sb3_contrib and blue is my fork. Final fps values are 1098 vs 6001 respectively, so about 5.5 times faster with similar performance.
PendulumNoVel-v1:

Red is sb3_contrib, green, pink and blue are my fork with 2, 4 and 8 sequences per batch respectively. Final fps values are 339, 2397, 2790 and 3086. So anywhere from 7-9 times faster with similar performance. The results also match with the link you sent.
I can run the other envs in the link too if you want to see those, but these results are pretty convincing to me and match what I am observing in the Mujoco env I am working on. Also you could run them yourself by adding them to this script.
You can find my fork here if you want to take a closer look. So far I implemented it for both Box and Dict observation space and Box action space, other spaces probably don't work yet.

thanks for the additional results, could you open a draft PR? (that would make it easier for me to review the code)

Of course! Here it is: #118
Let me know if you want to see any changes.

Thanks for the PR, I think I finally understand why it works.
This is indeed a nice way to accelerate PPO LSTM.
I have some remarks though:

you are probably never sampling the first sequence nor the last once (likely to create issues), see
https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/a9735b9f317be4283e56d221e19087b926ca9ec0/sb3_contrib/common/recurrent/buffers.py#L82-L88
for a simple change (you should use episode_start and episode_end to make it simple to sample)
the batch size doesn't have the same meaning anymore, here it corresponds to the number of sequences sampled and it has a varied length (which is not great for the learning rate, but experiments seems to be still working)

This is indeed a nice way to accelerate PPO LSTM.

Cool! Glad to hear that.

you are probably never sampling the first sequence nor the last once (likely to create issues), see

Good catch. I fixed it so that it also samples the last sequence in the rollout buffer:
https://github.com/b-vm/stable-baselines3-contrib/blob/18ace01f01957c8b61c07fe5a195200ac3b7c12b/sb3_contrib/common/recurrent/buffers.py#L441-L443
It should now sample all sequences in the rollout buffer. However, it will drop the final batch in an epoch if  n_batches mod batch_size != 0 to prevent very small batches from causing updates. However the next epoch the batch indexes are randomized again, so it is unlikely the same sequences will be in that final batch again.

the batch size doesn't have the same meaning anymore, here it corresponds to the number of sequences sampled and it has a varied length (which is not great for the learning rate, but experiments seems to be still working)

Agreed. It would be more correct to adjust the learning rate to whatever the current batch size is. In a sense it is kind of like a crude form of learning rate decay now, because the effect single timesteps have on weight updates decreases as a function of episode length(roughly).
Would love to help out integrating if you decide on making this part of the package.

However, it will drop the final batch in an epoch if n_batches mod batch_size != 0 to prevent very small batches from causing updates.

I'm not sure to understand why the last batch would be much smaller than the rest (because you sample whole sequences every time).

Would love to help out integrating if you decide on making this part of the package.

I think I'm interested in integrating it (but not replacing current sampling).
However, some work is still needed to make the implementation cleaner and more integrated with the current code (i.e. remove duplicated code).
Once the code is ready, I will need to run additional benchmark to check the performance vs the current default.

I'm not sure to understand why the last batch would be much smaller than the rest (because you sample whole sequences every time).

For example if it tries to sample batches of 8 sequences out of a total of 81 sequences, it will result in 10 full batches of 8 sequences, and 1 small batch with only 1 sequence. This is especially a problem when that particular sequence is very short, like only 1 or a few timesteps. Nice example here in the PyTorch docs
Also, although it is true that the batching algorithm never cuts up sequences and keeps them whole, some sequences are cut up anyway because they started during a previous rollout so the first part is just not present in the rolloutbuffer.

I think I'm interested in integrating it (but not replacing current sampling).

Cool!  In that case, would you want to make it optional to enable this batching method? Or make it a separate algorithm?
I agree that it needs work, the current implementation was just to test it out without breaking any other code.
When we decide on a general architecture I can start working on it.

For example if it tries to sample batches of 8 sequences out of a total of 81 sequences, it will result in 10 full batches of 8 sequences, and 1 small batch with only 1 sequence.

yes but sequences are of variable length (so you could sample 1 long sequence vs 3 short sequences).

would you want to make it optional to enable this batching method?

make it optional (at least try, we will make separate algorithms if it becomes too complex).
I also need to check the issue with the flatten layer, I'm surprised it worked before.

I integrated the code better with the existing code and removed the duplicates. Now about 120 lines smaller. Enabling it is still optional through the whole_sequence flag.
Curious what you think regarding the flatten layer.
It also seems to me that we could simplify the _process_sequence function if we make whole sequences the default. I believe  _process_sequence will only have to deal with single step sequences now that the forward passes are dealt with in `evaluate_actions_whole_sequence'.

No further work was done here?  I'm curious to see here progress on the main sb3 contrib integration.

No further work was done here? I'm curious to see here progress on the main sb3 contrib integration.

Please have a look at https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/pull/118
Help and further testing is needed.


Store original db spec in DDB's spec

spec:
  origin:
    metadata:
     ff
    spec:
      postgres:
        postgres_spec
      elastic:

This might become problematic when the DB specific spec change version. At that point, DDB also needs to change version, I guess


Did not understand  how to load the PIA into Visual Studio

So.
I have not succeded in my efforts to get this app going.
[Enter feedback here]

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

ID: e97e75d6-dc3e-800e-7cff-d097023df034
Version Independent ID: 89401b4f-16db-66ab-512c-cce9f949ac10
Content: How to: Install Office primary interop assemblies - Visual Studio (Windows)
Content Source: docs/vsto/how-to-install-office-primary-interop-assemblies.md
Product: visual-studio-windows
Technology: office-development
GitHub Login: @John-Hart
Microsoft Alias: johnhart

@SweLars -- thank you for your feedback.  Please provide details.  Meanwhile, consider these resources:

Visual Studio on Microsoft Q&A
Visual Studio MSDN Forum
Stack Overflow
Reddit

Hi,
Thank you. Found the answer outside the Microsoft realm. As one often do. 😊
Best Regards,
Lars
Från: William Anton Rohm @.>
Skickat: den 16 november 2021 21:39
Till: MicrosoftDocs/visualstudio-docs @.>
Kopia: Lars-Olov Sjöström @.>; Mention @.>
Ämne: Re: [MicrosoftDocs/visualstudio-docs] Did not understand how to load the PIA into Visual Studio (Issue #7295)
@SweLarshttps://github.com/SweLars -- thank you for your feedback. Please provide details. Meanwhile, consider these resources:

Visual Studio on Microsoft Q&Ahttps://docs.microsoft.com/answers/products/vs
Visual Studio MSDN Forumhttps://social.msdn.microsoft.com/Forums/vstudio
Stack Overflowhttps://stackoverflow.com/search?q="visual+studio"
Reddithttps://www.reddit.com/r/VisualStudio

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/visualstudio-docs/issues/7295#issuecomment-970659655, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWQP5ADFTE7MVQOJWPPQ3CLUMK6N7ANCNFSM5IEFKPVQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

@SweLars -- glad you found a solution!
I am closing this issue now.  You are welcome to @ mention me for any followup.  We hope to hear from you again.


Valkyrien Warfare + Replay mod = crash at game loading

crash-2018-05-19_17.29.44-client.txt

I posted this on both VW and R-mod GitHub

Hi, thanks for reporting this mod incompatibility issue! I appreciate every single report we get, so don't stop sending them. That said, we have a lot of work set out for us in release v1 of Valkyrien Warfare and therefore fixing game-breaking bugs and making the mod's experience more stable, fun, and consistent is our number one priority.
What this means for you: we might not be fixing this bug that soon. However, keep reporting these issues to us, it's really helpful and allows us to fix them when we get a chance.
This issue will be updated when work on it is started or it is obsoleted by a successive update. If you have any questions, feel free to ask them.
With <3,
Valkyrien Warfare Team


New rule: Limit Arrows Per Line

Multiple arrows a line usually reduce readability.
What do you think guys? Would you approve PR implementing this?

Can you provide some code that would cause this rule to show errors?

Basically, any line that has more than X arrows
const foo = () => () => () => undefined;
export type Thunk = (payload: {}) => (dispatch: (a: {}) => void, getState?: () => {}) => void;
const renderDefs = (id: (str: string) => string, href: (str: string) => string): JSX.Element => (
export default (store: Store<State>) => (next: Dispatch<State>) => (action: Action<ActionType, ActionPayload>) => {

Just to make sure I understand it correctly:
This includes nested arrow functions as well as chained arrow functions?
[].map(a => a + 1).forEach(a => log(a))

And in addition it also checks function types?
This is only about the number of fat arrows (=>) per line and does not consider anything else like nesting, complicity,...?

Exactly, that's just dummy check for X arrows per line.
Initially, I checked Typescript's repo and my company's for three arrows on a line and found only complicated and unreadable cases. So I implemented the simplest check.
Now I think your example above and it still readable. However, as I have not found anything like this in my repo, I keep the rule turned on.
Do you think the check is too trivial to be a part or tslint?

I think I would use this rule, but for me the above code example is difficult to read because of the number of definitions per line.

I would also like this rule

Per #4534, closing this formatting rule request. If you really need the rule, custom rules are always an option and can be maintained outside this repo!


Blog post: Pulumi Console Improvements, February 2020

New blogpost showing off all the awesome stuff we've been up to on the Pulumi Console.
QQ: A lot of the images are big. Should we resize them before submitting them? Or do the resizing via CSS?

@chrsmith I'll run these images through Photoshop to see if I can shrink them down a bit. Ok if I push a commit onto this branch with the adjusted versions?

@cnunciato knock yourself out, thanks! I'm not so much worried about the size, just that they don't take up the whole page. And if I end up resizing them, it'd look even worse if they were all different widths.
So I was thinking about maybe adding some CSS like .image-width-200px > image { width: 200px; }, and and having that apply to the whole page.
The animated gif you made for the JSON/pretty print thing is super cool to have as the cover-image, so if you have the original before you put it on GitHub it would be nice to have a higher-quality version for this post.

I'm not so much worried about the size

I see what you mean now, yeah. But we really should try to keep these file sizes down, since they turn up in reports as dings against our page performance.

So I was thinking about maybe adding some CSS like .image-width-200px > image { width: 200px; }, and and having that apply to the whole page.

I'd probably suggest using Tailwind max-width classes, actually, like md:max-w-2xl and the like, and make sure things fill out properly on mobile.
Here's an updated GIF that looks a little better:

Also, for Twitter card previews, while GIFs will work on our own page, I'm pretty sure they won't work for OpenGraph (e.g., Twitter) cards. Correct, @spara?

Hey everyone, PTAL. We should probably publish this before the month of February is over 😀
http://content-bucket-08b8320.s3-website-us-east-1.amazonaws.com/blog/pulumi-service-improvements_02-2020/

... although, I do think that GIF is not going to work with Twitter previews. Suggest a static image for that.

We should probably publish this before the month of February is over

Can we publish on Monday? Good way to start the month and week!!!!!!!!!!!! 🚀


🔍 UI Improvement: Sticky Navigation Bar Behavior [Style]

What's the style idea?
We need to improve
Currently, the navigation bar on the website behaves in a way that may disrupt the user experience. When scrolling to the uppermost part of the page, the navigation bar comes down abruptly, which can feel jarring and disrupt the flow of navigation
Solution

Enhance the behavior of the navigation bar to provide a smoother user experience.
Implement a sticky navigation bar that remains fixed at the top of the page as the user scrolls, without any sudden movements.
Ensure that the transition between scrolling and the fixed position of the navigation bar is seamless and does not interfere with the content.

Program
GSSOC 24
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

Kindly assign this issue to me...

I'll enhance the behavior of the navigation bar to provide a smoother user experience and fix all the other issues too. I like the project a lot, Please assign this issue to me.

Hi,
I hope this message finds you well. I'm reaching out to express my interest in contributing to the project and to request assignment of this issue titled "UI Improvement: Sticky Navigation Bar Behavior".
I've reviewed the issue description and I believe I can make a meaningful contribution to address it. Please let me know if this issue is available for assignment.
Looking forward to contributing to the project!

Nav bar is already fixed and sticky, what changes you want to make @nidhaahmed


Add header module with first and last log dates

It's a important information at first glance without need to expand detailed logs.
Thanks :)

Not sure I follow, are you looking to display the first and last date within the visitors panel?

Something easy like this

Got it. I can certainly add that. Thanks for the suggestion!

This has been added.
It will be pushed out in the upcoming version! Otherwise, feel free to build from development. Thanks!


fix a few typos

Great read, thanks!

Hi @benmarwick thank you so much for the revision.  :)


Publish Microsoft Authored templates to azure samples browser

Update metadata, and publish APICenter-Analyzer template to azure samples browser.
@hemarina and @justinyoo  for notification.

@pierceboggan @juliajuju93 Please review and merge.

@pierceboggan Here's the update. Please take a look and merge

@pierceboggan  Could you help review this PR and merge it if it looks good? Thanks a lot.


users don't receive notifications

Affected module
UI, backend
Describe the bug
Once a user is tagged in a conversation, there is no notification of such tag
To Reproduce
Screenshots or steps to reproduce
Expected behavior
A clear and concise description of what you expected to happen.
Version:

Ubuntu
Python 3.9:
OpenMetadata version 2.4.1
OpenMetadata Ingestion package version 2.4.1: Docker installation

Additional context
Add any other context about the problem here.

Fixed in 1.3.1


Add 'Cuatrovientos centro integrado' to educational institutions

Cuatrovientos centro integrado is part of Navarra state educational system and their email address are<EMAIL_ADDRESS>

pradeaulasede.txt

@Julen-Junguitu Please provide us with:

the school official website URL
the school street address, including city and country
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course
a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.

@Nekzerd Please ensure you are familiar with this repository rules located at the bottom of this page and submit a new separate request with correct information. Thank you for the understanding!

@Julen-Junguitu I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for your understanding!


Mac M1 Users - Link to solution

This resource contains information on how to install TF locally for Mac M1 users: https://github.com/apple/tensorflow_macos/issues/153

It would be good to mention Mac M1 support for tensorflow in the resources section.
Here's a post from a student looking for this information:
https://community.deeplearning.ai/t/how-to-serve-the-model-using-tensorflow-serving-docker-image-on-m1-arm64-architecture/102169

There is an additional file explaining how to get this working since Sept 2022 (this one). @cfav-dev do you think this is enough or should we also put an additional note in the resources section?

@andres-zartab . If the additional file is on the repo and the README mentions it, I think putting a copy in the Resources is a nice-to-have but not critical. When a learner asks about the steps, we can point to the link in the README. If it's not mentioned, however, then we should add a note about it, or place it in the Resources section so mentors can refer to it. I think it's better to link to it in the notebook though. Thanks.

In this case there is no notebook, or rather they need to go to the mkdown in order to run the notebook locally but I agree with what you said. I think it is highlighted enough so that we don't need to add this to the resources right away. Will close for now, thanks!


Image links throws

# Throws:  Error: The filename, directory name, or volume label syntax is incorrect. : <some-path>
md-cli "![foo](https://ichef.bbci.co.uk/live-experience/cps/624/cpsprodpb/vivo/live/images/2022/8/17/7c0c9a05-8195-4f9f-8d8d-b1b891da3a60.jpg)"

I suspect we only support images read from the file system.  However as that isn't covered by tests it may be entirely broken.

Confirmed.  We support the file system.

Fixed in #34


How to upgrade from beta 3.2 to beta 4

I had 1.0.0-beta.3-2 now upgraded to 1.0.0-beta.4, none of the things are working
I am facing  Unhandled Promise rejection: Template parse errors:
`<table td-data-table #dataTable>
<th td-data-table-column [ERROR ->]*ngFor="let column of columns" width="{{column.width}}" [numeric]="column.numeric" [sortable]="true"

"): ng:///SharedModule/DatatableComponent.html@12:29
Property binding ngForOf not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the<EMAIL_ADDRESS>("
`

Problem with "CovalentCoreModule" it is not found n beta 4
Thanks

If you can give me the quick start of beta-4 that will be great. original quick starts also not working, I have changed everything according to [https://github.com/Teradata/covalent/blob/develop/docs/CHANGELOG.md#100-beta4-johnny-b-goode-2017-05-16](https://github.com/Teradata/covalent/blob/develop/docs/CHANGELOG.md#100-beta4-johnny-b-goode-2017-05-16

if you checkout the current quickstart on develop, it is built with beta-4 of covalent core

The CovalentCoreModule was deprecated in beta.4, developers now have to import the modules that they need individually. The only detail in the quickstart repo is that uses material beta.6, but the current version of covalent is not compatible with it (beta.5 will). So you need material beta.5 to use covalent beta.4

@jotatoledo would you mind doing a quick PR fixing that ?
Really appreciate all your help

He already did and its already merged~ 😄

I got it
Thanks
Ali Abbas
Senior Software Engineer ( Php , Python , Ror)
skype : ali.abbas2012
On Tue, Jun 6, 2017 at 10:52 PM, Ed Morales<EMAIL_ADDRESS>wrote:

He already did and its already merged~ 😄
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Teradata/covalent/issues/661#issuecomment-306565776,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACIXZ4FMwanBd6bBj2Y0qFNKq862o_q5ks5sBZH3gaJpZM4NxN0M
.

Closing this since quickstart is running in beta.4 and people can reference for it.


Slow Internet connections are not handled well

I have a spotty Internet connection in Australia (pretty much the standard fare down here), and I have been trying all day to checkout a Github repo branch for work with no luck due to it using LFS to store several hundred MBs of files.
Everytime I try to issue the git checkout command it fails partway during downloading of the LFS files:
Downloading some.file (88.69 KB)
Error downloading object: some.file (6cbd834b35ef4135bafe62adff053c1eb6ee8597bf92710e89d8a0d4c86c1aea)

Errors logged to /home/some/place/.git/lfs/objects/logs/20160510T154513.556092808.log
Use `git lfs logs last` to view the log.
error: external filter git-lfs smudge -- %f failed 2
error: external filter git-lfs smudge -- %f failed
fatal: some.file: smudge filter lfs failed

Trying to issue another git checkout command fails with:
error: The following untracked working tree files would be overwritten by checkout:

The only solution I have found so far is to issue git clean -ffxd and reissue git checkout and wait for it to attempt (and fail) at downloading the files again.
Git LFS needs to be made more forgiving of slow connections, and provide some smarts to allow it to continue after a failed download.

You don't show an example of the files git says would be overwritten by the checkout. Empty, or redacted?
Git/Git LFS versions?

@javabrett Redacted (commercially sensitive), but it was all the files lfs had downloaded before it failed.
git version 2.5.0
git-lfs/1.2.0 (GitHub; linux amd64; go 1.5.3)
On Ubuntu 15.10

@ljbade Thanks for the feedback. There's some discussion in https://github.com/github/git-lfs/issues/1195 about how it works, and some ideas in improving it. The short answer is that it's relying on how git's smudge filter works. https://github.com/github/git-lfs/pull/1213 adds an option to ignore errors.
Another option is to turn off the smudge feature in LFS.  The benefit is that since we control the process, we ensure the downloads happen concurrently, and that files in the working directory are not replaced until all the objects have been downloaded.

I've found that pre-fetching LFS files help a lot. I'm essentially running this:

git fetch with optional --all
git lfs fetch --recent to fetch all binaries from the last 7 days. This is more than I usually need, but if I'm actively working on the project, it's normally not that much more than I would get from a pull.
git merge or git rebase or whatever will get me to HEAD without contacting the remote again.

Now I only need to teach TeamCity to do this...
I also just looked at the lfs fetch help, and there seem to be a few things I could tweak there to improve my experience.

@judgeaxl's comment about pre-fetching is great advice, it hasn't occurred to me before that this is a good technique to avoid smudge issues as well as for example pre-fetching before you travel or something. If you get smudge problems a lot, and I'd expand the advice as follows:

Use git fetch && git lfs fetch --recent - this means it'll fetch the recent remote branches too and fetch content for those so it's already ready (the default lfs.fetchrecentremoterefs=true controls this)
If you want to control what --recent does, check out the other settings via git lfs help config and look for settings starting with lfs.fetchrecent...


Fix codestyle issue and changelog

style: move private method to correct position
docs: moved new feature to 1.4.0 header in changelog
With this, it should be safe to publish and release a new '1.4.0' tag to trigger Packagist.
Thanks!

Could you help out and in ci.yml change
on:
    push:

to
on:
    push:
    pull_request:

so codestyle checks are run in pull requests again. 🙏

Done.
Fixing that also revealed that there was insufficient test coverage on the constructor of Electrician, so I added two extra tests for that, and changed it over to a custom Exception instead of Webmozart\Assert.

Sweet!

Tagged 1.4.0


Combine context.plans and context.plan_functions into a single dictionary

Making context.plans hold a dataclass e.g.
@dataclass
class PlanWithMetadata:
    plan_function: PlanGenerator
    params:
    metadata:

prevents having to maintain two dictionaries but also means we can easily extract the serialisable parts of the plan to send.

I think what's needed is something like
@dataclass
class Plan:
    model: PlanModel
    func: PlanGenerator

note: Plan is in core/bluesky_types.py with fields: name, description, model (Pydantic model)
PlanModel is in service/model.py under with fields: name, description, parameter_schema (optional dictionary).
The latter also has a classmethod 'from_plan', which serves as alternative constructor.
Both classes extend BlueepiBaseModel

suggested plan of work:

change the PlanModel fields to conform to @DiamondJoseph 's formulation above
change all instances of Plan into the PlanGenerator (?)
Do something about the two other classes in bluesky_types.py: DataEvent and WatchableStatus. Those could be moved into the Model class

Need to ensure that there is still a serialisable artefact (i.e. does not hold a function) that can be used as part of the API

explore avenue to add a field exempt from serialization to the pydantic model. also a pydantic model not a dataclass.

that's tightly connected with #407 , ideally it's 1 PR for both

discussion output - serialize less, do not except fields, just do composition

May be able to make use of TypeAdapter instances to get the JSON schema from.
class Plan(BlueapiBaseModel):
    """
    A plan that can be run
    """

    name: str = Field(description="Referenceable name of the plan")
    description: str | None = Field(
        description="Description/docstring of the plan", default=None
    )
    model: type[BaseModel] = Field(
        description="Validation model of the parameters for the plan"
    )

becomes
class Plan(BlueapiBaseModel):
    """
    A plan that can be run
    """

    name: str = Field(description="Referenceable name of the plan")
    description: str | None = Field(
        description="Description/docstring of the plan", default=None
    )
    type_adapter
    generator: PlanGenerator

    @property
    def schema(self) -> str:
        return self.type_adapter.json_schema()

@DiamondJoseph what if we just convert the plangenerator function to string?

@DiamondJoseph what if we just convert the plangenerator function to string?

@stan-dot the plan generator was the actual code that was being executed by the RunEngine, but now that it's the opposite side of the _rpc call it's not completely unreasonable. Then
class Plan(BlueapiBaseModel):
    ref: tuple[str, str]  # module and func name? Require module name if func name not unique?
    description: str  # from the docstring
    adapter or schema?

So the two dictionaries were originally made so separate the API object, that is passed in and out from external callers, and an internal object with non-serializable data in it to be passed around internally. As @DiamondJoseph says, now we have internal RPC between two processes that makes less sense.
Another option is to try and keep the non-serializable data only in the worker process and never need to pass it around, if that's achievable. We are currently having this discussion because we're thinking about how to get plan information from BlueskyContext to TaskWorker, but I raised #616 to tidy up BlueskyContext anyway, so maybe there's a cleaner way to do all of this?

BlueskyContext is a god-object because it's too generic a name. TaskWorker will likely have its own context
BlueapiServer will have its own context.
shared state can be held in something like https://github.com/etcd-io/etcd


[DOC] Reconcile K8S documentation

After #1932 there's now two sets of docs on setting up Kubernetes, and we should reconcile those versions.  We should probably remove the setup guide for K8S in the getting started main doc and just point to the new, standalone K8S doc.

https://github.com/NVIDIA/spark-rapids/pull/2114 is submitted.


Enable sassc for stylesheet compilation

This is a resurrection of #2176, which was reverted because scss partials weren't being recompiled when changed in development mode. This is fixed by just disabling the cache for assets. The performance win of sassc outweighs the need for the cache. This shaves about 4 minutes off the CI and deploy times for Whitehall, and does seem to speed up development mode a bit.

:+1:

Presumably this means we can't use Rails string interpolation in our Sass files now?
For reference: https://github.com/alphagov/govuk_admin_template/pull/71


Work Item: Add retract predicate.

Add retract built-in predicate.

There is currently no timeline for this addition to Guan. Please check the status of this issue once we have a timeline determined.

refactor has been added (currently in develop branch). Thanks @xunlu !!


Publish Your Database in Google Earth Enterprise Server

Access the Google Earth Enterprise Server Admin console in a browser window by going to myserver.mydomainname.com/admin, replacing myserver and mydomainname with your server and domain.how to get myserver and mydomainname with my server and domain?

At the least you can start with http://localhost:8080/admin
If you have registered domain for your server (DNS) ,you can use that.

http://localhost/admin/

that would do

Can this question be closed?

Looks like the question was answered. @wangjunqin if you still need help on this question just comment and I'll reopen it.


Added Mars Helicopter link

I have added the link to the official GitHub Mars Helicopter page, as it already existed for the Arctic Code Vault.

@Fabi-02 thank you very much for thinking about the power of links, appreciate it!
however, as it is a quote from the blog post at https://github.blog/2021-04-19-open-source-goes-to-mars/, I'd rather not modify the contents of the quote, apologies!


Update compatibility list

Related issues (optional)
Resolves https://github.com/docker/dev-tooling-team/issues/287

Actually just realised this PR was about the same as #12751, just this one is a bit outdated now...
It this one should be closed in favour of #12751

closing in favour of https://github.com/docker/docker.github.io/pull/12751


Invoice field on Project Creation Step

Email for invoice should ALSO be part of Client creation step. And at the project creation, I should have the ability to edit that.
Also, I should be able to add more than one email, and name for this.

I think since we're capturing the client email, we can use that in case invoice email for that client's project is missing. There should be a way to notify if any communication that is supposed to be done with project invoice email is being done instead with the client email.

I agree. A client can have multiple emails. There should be an ability to add multiple name/email pairs. Just thinking if a project's invoice email can be multiple or does sending invoices to multiple emails make sense?

Emails for invoices in a project are being tracked in #173
Closing this one.


How can I increase animation speed?

Takes 2 seconds for that thing to popup

There is no way to customise the animation speed.
The popup picker animation speed is 100ms
And the dialog picker animation speed is 500ms.
You could disable the angular animation by importing NoopAnimationsModule

Well i like the animation, don't like the speed. Could there be any way in the future to configure this?
importing NoopAnimationsModule might ruin other animations doesn't it?

I think the default speed is quite reasonable. I don't know why you need 2 seconds to to finish the popup animation

Well just to make it faster, it felt like 2 seconds.
I appreciate your time and if it isn't possible I can understand it totally


DeleteElementEvent

Refactor existing delete element event.

[x] Add type definition.
[x] Add unit test.
[x] Add feature test.
[ ] Add documentation.

References upstream API issue HTTP DELETE /<uuid> - DeleteElementController #64.

Additional documentation will be postponed until the new documentation system is up and running - likely end of 2024.