[UE4] Crackling

Hello, was testing out the spatialization settings and it seems like only nearest-neighbor is working properly, bilinear is causing horrible crackling.

Hi @mastercoms - Thanks for reporting. I can't seem to repro this issue on our end. Can you provide a sample project where you are facing the issue.

Hi, thanks, will try to find a minimal reproduction.

Hi, I still haven't figured out a reproduction in a fresh project, but after upgrading to 4.3.0 from 4.1.1, the crackling is solely happening when any Steam Audio occlusion is active.

I'm feeling like it's something to do with CPU usage and buffer underrun, given that toggling certain settings may make audio processing faster or slower. I will keep investigating what could be the cause here.

Ah, when I revert back to the default AudioCallbackBufferFrameSize=1024 and AudioNumBuffersToEnqueue=1 platform settings, it seems to be fixed completely. I was using 256 and 7 before respectfully for improving some other minor issues we had with audio.

Ah, when I revert back to the default AudioCallbackBufferFrameSize=1024 and AudioNumBuffersToEnqueue=1 platform settings, it seems to be fixed completely. I was using 256 and 7 before respectfully for improving some other minor issues we had with audio.

Inspired by #140, I looked at our Steam Audio settings and tried resetting everything to default. It seems to be fixed for now, but given that the issue doesn't seem to happen consistently (I'm sorry for struggling to pin down this issue!), it may resurface after broader testing.
RealTimeCPUCoresPercentage=50 -> RealTimeCPUCoresPercentage=5

I found these in the logs when it happens:
[2023.08.06-14.15.06:277][ 35]LogAudioMixer: Display: Audio Buffer Underrun (starvation) detected.

[2023.08.06-14.15.06:924][ 60]LogStats: FPlatformStackWalk::StackWalkAndDump -  0.675 s
[2023.08.06-14.15.06:925][ 60]LogOutputDevice: Error: === Handled ensure: ===
[2023.08.06-14.15.06:926][ 60]LogOutputDevice: Error:
[2023.08.06-14.15.06:926][ 60]LogOutputDevice: Error: Ensure condition failed: this->Array.Num() == InitialNum [File:C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Containers/SparseArray.h] [Line: 940]
[2023.08.06-14.15.06:927][ 60]LogOutputDevice: Error: Container has changed during ranged-for iteration!
[2023.08.06-14.15.06:928][ 60]LogOutputDevice: Error: Stack:
[2023.08.06-14.15.06:929][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffddf0d93d9 UE4Editor-Engine.dll!`TSparseArray<TSetElement<UActorComponent *>,TSparseArrayAllocator<TSizedDefaultAllocator<32>,FDefaultBitArrayAllocator> >::TRangedForConstIterator::operator!='::`2'::<lambda_1>::operator()() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Containers\SparseArray.h:940]
[2023.08.06-14.15.06:930][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffddd9d07cc UE4Editor-Engine.dll!AActor::FindComponentByClass() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Engine\Private\Actor.cpp:2976]
[2023.08.06-14.15.06:931][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffdb6a0782b UE4Editor-SteamAudio.dll!SteamAudio::FSteamAudioOcclusionPlugin::ProcessAudio() [C:\ProjectBorealis\ue4\dev\Engine\Plugins\Runtime\Steam\SteamAudio\Source\SteamAudio\Private\SteamAudioOcclusion.cpp:214]
[2023.08.06-14.15.06:932][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe258a81af UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputePluginAudio() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\AudioMixer\Private\AudioMixerSourceManager.cpp:2028]
[2023.08.06-14.15.06:933][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe258a9286 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputePostSourceEffectBufferForIdRange() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\AudioMixer\Private\AudioMixerSourceManager.cpp:2345]
[2023.08.06-14.15.06:935][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe258af4b0 UE4Editor-AudioMixer.dll!FAsyncTask<Audio::FMixerSourceManager::FAudioMixerSourceWorker>::DoWork() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Async\AsyncWork.h:271]
[2023.08.06-14.15.06:936][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe258aeece UE4Editor-AudioMixer.dll!FAsyncTask<Audio::FMixerSourceManager::FAudioMixerSourceWorker>::DoThreadedWork() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Async\AsyncWork.h:296]
[2023.08.06-14.15.06:937][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffdf696ce08 UE4Editor-Core.dll!FQueuedThread::Run() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\HAL\ThreadingBase.cpp:1041]
[2023.08.06-14.15.06:937][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffdf6e1dc79 UE4Editor-Core.dll!FRunnableThreadWin::Run() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:86]
[2023.08.06-14.15.06:938][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffdf6e12c27 UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:35]
[2023.08.06-14.15.06:939][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe6fcf26ad KERNEL32.DLL!UnknownFunction []
[2023.08.06-14.15.06:940][ 60]LogOutputDevice: Error: [Callstack] 0x00007ffe709aaa68 ntdll.dll!UnknownFunction []
[2023.08.06-14.15.06:941][ 60]LogOutputDevice: Error:
[2023.08.06-14.15.06:941][ 60]LogStats:                SubmitErrorReport -  0.000 s
[2023.08.06-14.15.09:019][129]LogStats:                    SendNewReport -  2.105 s
[2023.08.06-14.15.09:019][129]LogStats:             FDebug::EnsureFailed -  2.780 s

[2023.08.06-14.15.14:945][441]LogThreadingWindows: Error: Runnable thread ThreadPool #11 crashed.
[2023.08.06-14.15.14:945][441]LogWindows: Error: === Critical error: ===
[2023.08.06-14.15.14:945][441]LogWindows: Error:
[2023.08.06-14.15.14:945][441]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000002b0000000f
[2023.08.06-14.15.14:945][441]LogWindows: Error:
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffddd9d07fe UE4Editor-Engine.dll!AActor::FindComponentByClass() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Engine\Private\Actor.cpp:2978]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffdb6a07ec5 UE4Editor-SteamAudio.dll!SteamAudio::FSteamAudioReverbPlugin::ProcessSourceAudio() [C:\ProjectBorealis\ue4\dev\Engine\Plugins\Runtime\Steam\SteamAudio\Source\SteamAudio\Private\SteamAudioReverb.cpp:382]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe258a805d UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputePluginAudio() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\AudioMixer\Private\AudioMixerSourceManager.cpp:1999]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe258a9286 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputePostSourceEffectBufferForIdRange() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\AudioMixer\Private\AudioMixerSourceManager.cpp:2345]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe258af4b0 UE4Editor-AudioMixer.dll!FAsyncTask<Audio::FMixerSourceManager::FAudioMixerSourceWorker>::DoWork() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Async\AsyncWork.h:271]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe258aeece UE4Editor-AudioMixer.dll!FAsyncTask<Audio::FMixerSourceManager::FAudioMixerSourceWorker>::DoThreadedWork() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Public\Async\AsyncWork.h:296]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffdf696ce08 UE4Editor-Core.dll!FQueuedThread::Run() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\HAL\ThreadingBase.cpp:1041]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffdf6e1dc79 UE4Editor-Core.dll!FRunnableThreadWin::Run() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:86]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffdf6e12c27 UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() [C:\ProjectBorealis\ue4\dev\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:35]
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe6fcf26ad KERNEL32.DLL!UnknownFunction []
[2023.08.06-14.15.14:945][441]LogWindows: Error: [Callstack] 0x00007ffe709aaa68 ntdll.dll!UnknownFunction []
[2023.08.06-14.15.14:945][441]LogWindows: Error:
[2023.08.06-14.15.14:945][441]LogWindows: Error: Crash in runnable thread ThreadPool #11
[2023.08.06-14.15.14:959][442]LogExit: Executing StaticShutdownAfterError
[2023.08.06-14.15.14:959][442]LogWindows: FPlatformMisc::RequestExit(1)
[2023.08.06-14.15.14:959][442]LogWindows: FPlatformMisc::RequestExitWithStatus(1, 3)
[2023.08.06-14.15.14:959][442]LogCore: Engine exit requested (reason: Win RequestExit)

Also sometimes this comes up too:
LogAudioMixer: Error: Command Queue has grown to 1178k bytes, containing 10963 cmds, last pump was 2600.663600ms ago.
LogAudioMixer: Error: Command Queue has grown to 2232k bytes, containing 20767 cmds, last pump was 5020.206900ms ago.


Github permissions are missing for user

Github user @tristan-google  has been added a collaborator to the MAINTAINERS file.  However, new reviews from Tristan are still showing up grey.
Example is shown on: https://github.com/zephyrproject-rtos/zephyr/pull/61044.

fixed


feat: improve typescript editor performance

Closes #277
Closes #924

Updates to latest TS
Disables project references in favor of outputting declaration files for heavy libs (trpc, drizzle, zod)

This does mean you don't get instant editor feedback when changing a procedures type signature, since the watcher does have to recompile and that requires you to first save the file, but the day-to-day usage of the API get's a significant bump since it doesn't have to infer anything

Hi @juliusmarminge
Why was disableSourceOfProjectReferenceRedirect added? What issue was this addressing?

Hi @juliusmarminge
Why was disableSourceOfProjectReferenceRedirect added? What issue was this addressing?

It improves performance for larger projects since it forces typescript to resolve types from the declaration files instead of inferring types from source


urllib.error.URLError: <urlopen error [WinError 10061] while running recorder_console.py

I think I have a similar problem in linux, I solved with this, perhaps it helps:
https://github.com/pablospe/HoloLensForCV/commit/4b2bcc7ee9a4375728782d305062b68aa5048f3d
try:
    from urllib.request import urlopen
except ImportError:
    from urllib2 import urlopen

@pablospe Thanks for the suggestion but when i make these changes
i get this error :
Traceback (most recent call last):
File "recorder_console.py", line 678, in
main()
File "recorder_console.py", line 602, in main
args.dev_portal_password)
File "recorder_console.py", line 79, in connect
password_manager = urllib.request.HTTPPasswordMgrWithDefaultRealm()
NameError: name 'urllib' is not defined

i have now these error if u have an idea


ADDED: German version of bash loops

What type of PR is this? (check all applicable)

[ ] ♻ Refactor
[x] ✨ Feature
[ ] 🐛 Bug Fix
[ ] 👷 Optimization
[ ] 📝 Documentation Update
[ ] 🚩 Other

Description
Added a german version of the bash loops explanation.
Related Tickets & Documents
None, as far as I know. 😄
Added to documentation?

[ ] 📜 readme
[x] 🙅 no documentation needed

[optional] What gif best describes this PR or how it makes you feel?

@aemtox wär gut, wenn ein kleines link zu " if [  –eq " erklärung drin wär, daß man immer schnell zu solchen sachen wie "if [ -r ", "if [ -f ", "if [ -d " erklärt wird, damit man auch gleich sieht, mit was man dann auch noch arbeiten kann und so sich dann was einfallen lassen kann.. aber sonst, cool, danke :)
(for bobby, i have ask em' for a link to explation of -eq,-f -d and so on for have a sidekick info for have more suggestions for a varity of possibility)
best


GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Java PreCommit

Wordcount direct runner failure is BEAM-10886

Run Java PreCommit

(Flake Beam-10252)


⚠ Adacta-fintech.com has degraded performance

In fcb57c1, Adacta-fintech.com (https://www.adacta-fintech.com) experienced degraded performance:

HTTP code: 200
Response time: 1510 ms

Resolved: Adacta-fintech.com performance has improved in 3653527.


Feature Request: Contextual Shortcuts

It would be cool to have certain shortcuts only show up in certain contexts. For instance, only show certain git shortcuts when I'm inside a git project, only show certain npm and node shortcuts when I'm in a project with a package.json, ruby if there's a Gemfile or .ruby-version, cargo if there's a Cargo.toml, etc.
Showing only shortcuts that are relevant to what I'm working on could make the list of shortcuts easier to scan. I'm not sure how this would look in the configuration file. I'd always want npm init --yes to show up, for instance, but then I would want to hide a bunch of npm shortcuts by default. Maybe the .cheat files can be split into contexts?

As a workaround, you can add something like the following to your bashrc file:
function calculate_cheats() {
   local -r cheats="always/present/file.cheat"
   # if pwd/package.json exists then
   #  cheats="${cheats}:/path/to/nodejs.cheat
   # fi
   echo "$cheats"
}

function navi() {
  NAVI_PATH="$(calculate_cheats)" command navi "$@"
}

That's a clever trick, and very similar to my setup for direnv and project-local shortcuts. I'll probably give this a go and utilize something like https://github.com/datagrok/findup-shhttps://github.com/datagrok/findup-sh.

Closing as the workaround is IMO clean enough to justify no native support for this in the near future


fix change boost thirdparty url to offical archives.boost.io

Proposed changes
Issue Number: close #xxx
The old url https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.gz is no longer available.
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[python] avoid data copy where possible

Closed #2380.

@guolinke
I'd like to use precise type names to avoid possible problems. Is it int32 or int64?
https://github.com/microsoft/LightGBM/blob/29525ffefba94ea994e28d0db1d8029a6041e3ae/python-package/lightgbm/basic.py#L2510-L2511

@StrikerRUS I think it is int32, refer to:
https://github.com/microsoft/LightGBM/blob/317b1bfbbfdd8f8a4f5af16b970526bb9486f588/src/c_api.cpp#L1539

@StrikerRUS
seems related to this PR:
https://github.com/microsoft/LightGBM/pull/2384
maybe a better solution is to save the numpy type inside lgb.Dataset?

@guolinke

@StrikerRUS I think it is int32, refer to:

Thanks!

maybe a better solution is to save the numpy type inside lgb.Dataset?

Sorry, didn't get it.


multiple autocomplete elements on one page

I need to place multiple autocomplete elements on one page. Autocompletes are created inside ngFor cycle.
Do you have an example of how I can make it correctly?

Please dont use the issue tracker for support related questions. Please use the angular-material gitter room or stack overflow.


Loading a tensor from device data pointer.

Hi there!
I'm trying to create a tch::Tensor from existing inference output data on a CUDA device.
I was trying to see if there is the API described in https://discuss.pytorch.org/t/create-tensor-from-data-pointer/19708 exists, but tch doesn't seem to have the notion of context objects, not the fromBlob api.
If I have a data pointer on the host, this indeed seems to work:
        Tensor::of_data_size(
            std::slice::from_raw_parts(
                self.data_ptr,
                (self.number_of_elements * 2) as usize, // *2 because of fp16
            ),
            &self.dims,
            tch::Kind::Half,
        )

But I haven't found any API that also accepts this on a CUDA device.
Is this something that makes sense considering the architecture of tch?
Thanks alot for this wonderful crate :)

I did end up implementing the wrapper around torch::from_blob, and this works, however as per the docs, tch will raise an exception if we try to manipulate the memory afterwards, but it did solve my case of a read only view into an existing CUDA mapped data.
https://github.com/LaurentMazare/tch-rs/compare/master...omerbenamram:feature/tensor_of_blob

closed by #273.


[bn] Localized content/bn/ _index.html

Signed-off-by: Umme Abira Azmary<EMAIL_ADDRESS>Localizes content/bn/_index.html> to Bengali
This is an initial PR as may need some improvements!
Tracking issue: https://github.com/kubernetes/website/issues/31677

@Mouly22 Kindly remove release file from this branch as this also exists in #32488 PR

/label tide/merge-method-squash

/hold


koord-descheduler: add validator and tests for descheduler profile

Ⅰ. Describe what this PR does
Add test cases for descheduler profile.
Ⅱ. Does this pull request fix one issue?
NONE
Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in make test

Hello @LeoLiuYan, Nice Work!

Hi @LeoLiuYan , the PR  LGTM. It is recommended to squash all commits into one and re-push after rebase based on main branch.

OK.  @eahydra


Not great Spans

The substitution macro invocation preserves spans for any tokens that are not substituted, but substituted tokens have the span of the entire macro invocation.
This is good:
#[macro_use]
extern crate mashup;

mashup! {
    m["method"] = a b c;
}

m! {
    impl Struct {
        fn "method"() {}
    }
}

error[E0412]: cannot find type `Struct` in this scope
 --> src/main.rs:9:10
  |
9 |     impl Struct {
  |          ^^^^^^ not found in this scope

This is bad:
#[macro_use]
extern crate mashup;

mashup! {
    m["struct"] = S t r u c t;
}

m! {
    impl "struct" {
    }
}

error[E0412]: cannot find type `Struct` in this scope
  --> src/main.rs:8:1
   |
8  | / m! {
9  | |     impl "struct" {
10 | |     }
11 | | }
   | |_^ not found in this scope

Ideally we would see the span of the key tokens instead.
error[E0412]: cannot find type `Struct` in this scope
  --> src/main.rs:9:10
  |
9 |     impl "struct" {
  |          ^^^^^^^^ not found in this scope

Closing because people should use https://github.com/dtolnay/paste which doesn't have this problem.


Progdrasil/base64 parsing

Adds serde to the types and decodes the base64url and base32 at that time automatically

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


Add a recipe to turn milk into string

Casein is neat.
The video that inspired me to make this, for those who haven't read the entirely of the mod suggestion thread.
Checklist:

[ ] Bumped pack.toml version number (if merging to master)
[ ] Ran installer with -s both to ensure server-only mods work
[ ] Ran packwiz refresh just before final commit

thanks lmao


youtui: Implement seeking

Rodio crate now implements ability to seek. We can add this feature to youtui, and increase reliability of our progress tracker.

Implemented in #151

Implemented in #151


Update Azure.Batch to MIT license.

Also updated readme.md and changelog.md in preparation for this to be released.
Includes update to the nuget package license as well.

Description

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] I have read the contribution guidelines.
[x] The pull request does not introduce breaking changes.

General Guidelines

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[ ] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[ ] The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as a link to the swagger spec, used to generate the code.
[ ] The project.json and AssemblyInfo.cs files have been updated with the new version of the SDK.

@hovsepm - Here you go
@darylmsft @itowlson @xingwu1 - please review
Before merging
Please wait until some folks from my team review this and sign off


test/k8sT: move creation / deletion of resources outside of It

Do this for the "External Services" test. Also use ExpectWithOffset in helper functions, and add failure messages.
Signed-off by: Ian Vernon<EMAIL_ADDRESS>Related-to: #3821

test-me-please


fix: update for ipfs-http-client >= 27.0.0

Fix test error where lookupPretty would return an different error for local IP lookups to lookup
Deal with old dag node links that have a .multihash property and new ones that have  a .cid property.
Update ipfsd-ctl and refactor test
Update aegir
Fix lint errors

Fixes #65

This fix is needed to renabled plotting peers on the peer page in the webui https://github.com/ipfs-shipyard/ipfs-webui/issues/918


addresses the concern about range of applicability

Replaces final paragraph with :

Importantly, this neural network is only appropriate for \gls{PWR} depletion
calculations covered by the parametric space of the training set. So, the user
will need to remain inside the realm of applicability when using neural
networks trained in this way.

Thanks for leading this paper! Exciting!


"Wormhole" clipboard

Copying text from an OS and then having that copied text show up in the clipboard history of another one


disable refresh button when loading

disable the refresh button when data is being fetched from the server/ when the components are being rendered

This is currently not being worked on


[cute] Question about cute diagram

Hello @arnaudroques,
Here is a minor question:

What is cute diagram?
Is it public or private?
Because if it is private, or not exposed: may be unnecessary to overload the tests with KO or not working tests...

See list here:

list of @startcute on pdiff

Regards,
Th.

What is cute diagram

A cute diagram was an older feature that allowed users to create basic drawings. This feature was removed a long time ago, so we have just removed any remaining references to it.
Thank you for pointing this out!

Hi,
[Just for the record]
That corresponding of this commit:

ca2ed0f1

Thanks @arnaudroques,
Regards,
Th.


Not GNU compatible

libtrue's single function is hard coded to return true only.  GNU gets this right, with coreutils, where it uses a #define to determine truthiness.  This way the same file can be used to handle both true and false, or any other truthiness values.

I'm not sure we want to embiggen the library to handle non-POSIX compliant usages.

GNU compatibility is a perfectly cromulent goal.


Apply unavailability period to all review teams

Description
It would be nice if when adding an unavailability period for one review team, there was a checkbox to apply that period to all review teams one is a member of.
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

+1 - this was brutal for me recently.


Revert "*: release v0.11.0"

Reverts operator-framework/operator-sdk#2034
There is a bug in add crd #1660  which causes it to fail outside $GOPATH/src for ansible projects:
$ operator-sdk add crd --kind=Foo --api-version=ansible.example.com/v1alpha1
FATA[0000] Project not in $GOPATH

This will currently cause the release tag to fail CI.
https://travis-ci.org/operator-framework/operator-sdk/jobs/596366754#L3017-L3020

Merging this since the CI failures are known flakes and this is just reverting back to the previous state.


Bring design doc up-to-date

Updates the design doc to adjust to moving towards productisation and to recent decisions on the shape of deliverables (only RPMs, pruning of APIs, etc.).
Closes USHIFT-72

/lgtm


TypeError: Cannot read properties of undefined (reading 'id')

Steps to reproduce:
I installed version v4 with
npx degit rpgjs/starter#v4 my-rpg-game
cd my-rpg-game
npm install
npm run dev # and go to localhost:3000

I moved main to src/modules/main
I changed rpg.toml modules
I created new module with
npx rpgjs generate module src/modules/items
I added new file inside new items module in database/armor.ts copied from v4 documentation:
import { RpgPlayer } from '@rpgjs/server'
import { Armor } from '@rpgjs/database'

@Armor({
    name: 'Shield',
    description: 'Gives a little defense',
    price: 4000,
    pdef: 2000,
    sdef: 1000,
    addStates: [],
    removeStates: [],
    elements: [],
    effects: [],
    params: {},
    paramsModifier: {},
    statesDefense: [],
    elementsDefense: []
})
export class Shield {
    onAdd(player: RpgPlayer) {

    }

    onEquip(player: RpgPlayer, equip: boolean) {

    }

    onRemove(player: RpgPlayer) {

    }
}

And then I am getting this in console

so I added an id argument to the armor item, but it did not help.
Thanks in advance!

Nevermind, name of the file must be the same as the name of item, in my case filename was 'armor.ts' and it should be Shield.ts


chore(main): release base 0.0.21

:robot: I have created a release beep boop
0.0.21 (2024-10-19)
Bug Fixes

🐛 release to special branch (#139) (375fff5)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

base-v0.0.21
:sunflower:


bootcfg: Template network boot configurations (iPXE, GRUB)

Allow a grub config or iPXE script file with template elements to be provided directly. Substitute template values from selector and/or metadata. Currently, a NetBoot struct and internal templates determine the iPXE scripts and GRUB configs which are rendered which isn't as customizable.

This is needed for the Kubernetes profiles to be practical via Grub netboot for UEFI. The work-around for now is to write different profiles for each machine which embeds a MAC or UUID in the coreos.config.url kernel argument.

Prioritizing iPXE usage right now and improving GRUB use cases next.

Cool. I was about to open an issue asking if this exists currently! Two questions if I may...:
1.) To make sure I'm not mistaken on the goal here... would this allow for setting metadata to env vars?
{
  "id": "coreos-install",
  "name": "CoreOS Install",
  "profile": "install-reboot",
  "metadata": {
    "my_custom_var": "${custom_env_var}"
    "coreos_channel": "alpha",
    "coreos_version": "1109.1.0",
    "ignition_endpoint": "http://bootcfg.foo:8080/ignition",
    "baseurl": "http://bootcfg.foo:8080/assets/coreos"
  }
}

2.) Would the env var be evaluated every time the group is matched or just templated in memory to static text a single time when bootcfg starts?

Hm, you mean populating metadata from environment variables from the bootcfg process environment? No, this is more for being able to write an iPXE config or GRUB config yourself and have it be templated with metadata variables, much like the Ignition, Cloud-config, and generic configs today.
The iPXE and GRUB configs are created from a hardcoded template https://github.com/coreos/coreos-baremetal/blob/master/bootcfg/http/ipxe.go#L17. This has been ok in most cases, but it might be useful to customize that. The "boot" section in a profile is a bit of a special beast, when we might have an advanced mode where a profile can refer to a named iPXE config resource. https://github.com/coreos/coreos-baremetal/blob/master/Documentation/bootcfg.md#profiles

it would be nice to see this we could need a hook in this to do additional ipxe scripting before boot.

Is there any progress in here? If i try to boot via iPXE i'm getting the following error on the iPXE-Client:
Error 0x040ee119

In the dnsmasq-docker-image i get the following:
dnsmasq-dhcp:<PHONE_NUMBER> available DHCP range: <IP_ADDRESS> -- <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> vendor class: PXEClient:Arch:00000:UNDI:002001
dnsmasq-dhcp:<PHONE_NUMBER> user class: iPXE
dnsmasq-dhcp:<PHONE_NUMBER> DHCPDISCOVER(eth0) c2:39:19:6d:ba:67
dnsmasq-dhcp:<PHONE_NUMBER> tags: ipxe, eth0
dnsmasq-dhcp:<PHONE_NUMBER> DHCPOFFER(eth0) <IP_ADDRESS> c2:39:19:6d:ba:67
dnsmasq-dhcp:<PHONE_NUMBER> requested options: 1:netmask, 3:router, 6:dns-server, 7:log-server,
dnsmasq-dhcp:<PHONE_NUMBER> requested options: 12:hostname, 15:domain-name, 17:root-path,
dnsmasq-dhcp:<PHONE_NUMBER> requested options: 43:vendor-encap, 60:vendor-class, 66:tftp-server,
dnsmasq-dhcp:<PHONE_NUMBER> requested options: 67:bootfile-name, 119:domain-search, 128,
dnsmasq-dhcp:<PHONE_NUMBER> requested options: 129, 130, 131, 132, 133, 134, 135, 175, 203
dnsmasq-dhcp:<PHONE_NUMBER> next server: <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  1 option: 53 message-type  2
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option: 54 server-identifier  <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option: 51 lease-time  1h
dnsmasq-dhcp:<PHONE_NUMBER> sent size: 57 option: 67 bootfile-name  http://matchbox01.intern:8080/boot.ipxe
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option: 58 T1  30m
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option: 59 T2  52m30s
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option:  1 netmask  <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option: 28 broadcast  <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option:  3 router  <IP_ADDRESS>
dnsmasq-dhcp:<PHONE_NUMBER> sent size:  4 option:  6 dns-server  <IP_ADDRESS>

I think this should be related to
https://github.com/coreos/matchbox/issues/369
and this one
https://github.com/coreos/matchbox/issues/92

We may pick this up soon to allow menus to be used as well. cc @robszumski


Palette Storage

One of the things was getting some negative feedback from my users about was the ability to modify the palette.  I mentioned to them that they could store selected colors into the palette, only to find out that not everybody has local storage enabled or even necessarily knows what it is.
Because of this, I started digging into the local storage stuff in spectrum.   I created a variation of spectrum that my users are running that does the following:

It sets a haveLocalStorage variable during initialization.  One of the things I was discovering was that, while the try / catch for the local storage would certainly handle the case of local storage not being available/enabled, the exception handling was adding overhead for the 15 instances of spectrum I am creating that was noticeably slowing things down.  Therefore, what I did was to implement a single check (with the exception handling) for whether local storage is available, and just reference that status variable later.   Yeah, it is not as rigorous as doing the exception handling on every local storage access, but I tend to think the risk is very low and reasonable.  It does improve performance a bit.

I decided I still want to enable my users to save the selection palette even if they do not have local storage available/enabled.  Because of that, I decided to add 3 lines of code to implement cookie storage as a fall back if local storage is not available/enabled.  This way, my users are more likely to be able to actually make use of the selection palette storage feature regardless of whether they have or know how to enable local storage.

Please let me know if you would be interested in me doing a pull request for either of the above.  As noted above, my variation is running as intended.  (For 10,000+ Toastmasters public speaking club websites around the world.)

As for 1, I think it'd be fine to use a single variable for checking if it's available.  When actually setting a value into storage we should still keep a try/catch because there can be other exceptions (like if the localStorage space is filled up).
For 2, if it's just a couple of lines I think it'd be fine to fall back to cookie storage.  We should probably put that behind an option in case users don't want to have cookies set.

Good point on 1.  In my case, the performance hit I was noticing was during the initialization which would be for the initial read from storage, not the storing of a value.  I think that typically storing the palette would happen one at a time even if there are a lot of instances.
On 2, I was thinking of an option like "allowCookies" or similar, with a default value of true.  It would just work as a fall back in the catch of the try/catch, for instance.


Fix private channel branch/folder lookup

Refix for public channel

https://github.com/stolostron/backlog/issues/27071

/cc @jeswanke

/cherry-pick release-2.6


Changes the disks' display order

Hi,
I changed the function that sorts the disks' display order in the disks card component.
the change solving issue #1146
now the disks sorted only by their name.

Hello contributor, thanks for submitting a PR for this project!
I am the bot who triggers "standard-CI" builds for this project.
As a security measure, I will not run automated tests on PRs that are not from white-listed contributors.
In order to allow automated tests to run, please ask one of the project maintainers to review the code and then do one of the following:

Type ci test please on this PR to trigger automated tests for it.
Type ci add to whitelist on this PR to trigger automated tests for it and also add you to the contributor white-list so that your future PRs will be tested automatically. ( keep in mind this list might be overwritten if the job XML is refreshed, for permanent whitelisting, please follow #3 option )
If you are planning to contribute to more than one project, maybe it's better to ask them to add you to the project organization, so you'll be able to run tests for all the organization's projects.

ci test please

@benams1 - Please squash your commits.  Change is small enough to only need a single commit.
git rebase -i and then set "s" for all but the first commit.

Please consider displaying the same disks sorting order for create VM based on a template as well.

I'll take care of the disk sorting on the Create VM Wizard disk step.  This change looks good to me.


feat(building-rollup): add workbox

Adds workbox to the rollup config.
This should be unobstrusive to people who are just using build-rollup, it'll output a service worker, wether they use it (and register it in index.html) is up to them. For the generators we could scaffold the sw registration by default. It's also fully configurable if the user provides their own workbox-config.js
Some considerations/todos:

Document a way to add sw registration to index-html-plugin?
by default does not skipwaiting and clients claim, this becomes very painful very quickly when people start lazyloading/using dynamic imports. We can point people to patterns on how to activate a new service worker (eg: pwa-helpers)

Workbox only applies to SPA's, so we should probably split up the rollup config between a SPA and a 'classic' (JS in, JS out) config.

So then we'd export:
module.exports = {
    createDefaultSPAConfig, // what is currently 'create default config', but with workbox
    createCompatibilitySPAConfig, // what is currently 'create compatability config', but with workbox
    createDefaultConfig // new config, without index.html plugin and without workbox?
};

?

Yeah something like that :) maybe we can think of more inspiring names

Looks good to me, just need 1 small doc update

@thepassle @LarsDenBakker How it works with the createCompatibilityConfig?
One sw.js to both configs?  One for each one?

I just create a few issues about this: #873 #874


Error UndefVarError: mpiexec_path not defined

When trying to run MPI code, an error shows up: mpiexec_path not defined. Therefore, it is not possible to run MPI code from the terminal as described in the section "Running MPI code".

Hi @lduits
Thanks for reporting this!
I can reproduce the issue. The tutorial was written (last year) for a previous version of MPI.jl. Newer versions of MPI.jl have removed the MPI.mpiexec_path variable. I will update the tutorial to the new version. (by removing this part that is not longer valid).


commitizen: 2.37.0 -> 2.38.0, tomlkit: 0.11.4 -> 0.11.6

Description of changes

Upgrade commitizen to 2.38

See https://github.com/commitizen-tools/commitizen/blob/master/CHANGELOG.md

Also upgrade tomlkit to 0.11.6 to fix some failing tests in commitizen:

See https://github.com/commitizen-tools/commitizen/issues/628

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

I will close the PR, it should go to staging branch because of tomlkit upgrade which rebuilds a large number of Nix packages.
The tomlkit upgrade is required to upgrade commitizen too :/

Closed in favor of https://github.com/NixOS/nixpkgs/pull/206464 (upgrade tomlkit first)

You could have just retargeted the entire branch.


CMAKE_PREFIX_PATH and CMAKE_INSTALL_PREFIX issues

Currently they are both set to $D/usr.
But at do_configure, $D/usr is expanded to /usr.
For CMAKE_PREFIX_PATH, this is incorrect.
For CMAKE_INSTALL_PREFIX, this is unneeded, because cmake.bbclass has already set it to /usr.

This issue was discovered when I was working on https://github.com/aws4embeddedlinux/meta-aws/issues/5032


Update the docs.

Move things from datamodel to standard library. Update some of the
descriptive text.

I've moved the func/ops tables up to be a sort of TOC for all the pages in the standard library.
I've also added BaseObject and Object to stdlib docs.


Reviews takes very long time.

I am trying to retrieve reviews for several apps. It seems each app is taking a very long time (about 2 hours or over).  Is anyone else having the same issues? Can you suggest a faster method, please?
Here's my code
itc_app = Spaceship::Tunes::Application.find("bundleid")
all_reviews = itc_app.ratings.reviews()

I have also tried to limit the reviews per storefront (e.g.: itc_app.ratings.reviews("US") OR itc_app.ratings.reviews("GB"), etc.), but that doesn't seem faster either.
Also tried limiting the reviews by version.
tunes_client.get_reviews(itc_app.apple_id, itc_app.platform, "US", version.version_id.to_s)

Here's an example,
2018-08-03 11:14:33 PM -04 EDT - INFO - [apple_reviews] | Finding all available reviews for "bundleid1" ...
2018-08-04 02:18:39 AM -04 EDT - INFO - [apple_reviews] | Found 90,000 reviews.

[Notice the time difference between two log lines above.]
Any help is greatly appreciated :)

@taquitos ^^ :)

@scorpion35 Heyyy 👋 So, this is totes because you are 90,000 reviews  😊 The reviews method you are calling will actually pull down every single review (100 per page) until there are no more reviews - https://github.com/fastlane/fastlane/blob/master/spaceship/lib/spaceship/tunes/tunes_client.rb#L361-L381
This is done to make thing easier on whoever is calling this function but this looks like it may actually be hurting you due to the number of reviews your app has. We can could find a way to change up this API call so you can page manually if that is what you are looking to do? How are you using these reviews? Are you expecting to get all of them or just a subset?

@joshdholtz Thank you very much for the reply. I am trying to run sentiment analysis on our reviews (for all apps within my account). My script runs daily and tries to fetch reviews from yesterday, and run sentiment analysis.
I have figured a way to limit the reviews, by adding an optional parameter upto_date. Please take a look at my pull request here - https://github.com/fastlane/fastlane/pull/13040. It brings down the time to seconds from several hours!
Kindly let me know if you need any more information! :)

https://github.com/fastlane/fastlane/commit/413fb07f25a8e6355a4f0b76eaab6933269800cd


Typos on page 761 (in section 19.8.5)

In the line 46, the $\mathbb{P}$ should be $\mathbb{E}$.

It is not a typo. I'm so sorry that I had some misunderstanding.


Problem with the export of nested elements since last update

Hello !
I'm using ExportSheetData with nested elements since a year or two, and since the last update, the export is not right :/
Before the update, we had this
And now this
I don't understand why it doesn't work now :c
I'll put a simplified version here of my google sheet here
Thank you !

I copied your linked sheet and adjusted settings to get this output:
{
  "MetaData": {
    "Joueur": "Politique2"
  },
  "UI_IntroLetter": [
    {
      "CharacterID": "Commissaire",
      "TextID": "UI_IntroLetter_Commissaire_1",
      "audioID": "UI_IntroLetter_Commissaire_1"
    }
  ]
}

Which seems to line up with your previous data. My guess is that you were exporting the sheets as arrays but that setting was disabled at some point? The {#SHEET}{#ROW} key values only really work when exporting a sheet as an array since they are assigning the key to the element at index {#ROW} in the {#SHEET} array.
In any case, the above data was generated by renaming UI_IntroLetter to JA_UI_IntroLetter and enabling the array prefix option. Nested elements and Ignore empty cells were also enabled.

Also, you can simplify your sheet keys by enabling the Nested array prefix option and adding the NA_ prefix to your tab name. This will let you remove the {#SHEET}{#ROW} prefixes from all of your keys.
Sorry it took a few days to get back to you! Hopefully this helps sort things out!

Closing this issue as I believe I have answered the question and the thread has been quiet for about a week.

Closing this issue as I believe I have answered the question and the thread has been quiet for about a week.


Refs #26601 - Enforced get_response arg to middleware classes.

This is the new contract since middleware refactoring in Django 1.10.

@claudep Thanks for this great work! IMO we should deprecate using MiddlewareMixin.__init__() with optional get_response argument. Can you add a deprecation warning?

Makes sense, will do.

Do you think it's still time to commit the deprecation part in 3.0 or do we target 3.1?

Or... should we deprecate MiddlewareMixin alltogether?

We should deprecate MiddlewareMixin.__init__() with optional get_response argument in Django 3.1 (it doesn't really change anything because features deprecated in Django 3.0 and 3.1 will be removed together in Django 4.0). I would leave MiddlewareMixin for now.

Sorry, I'm not fully motivated right now to dive again into this :-( Feel free to make the changes you find appropriate.

Hey @claudep. No issues. I'll finish this off this week. 👍

Thanks for the review @felixxm. I'll bring in the smaller points then we can discuss the rest. 😀

Hey @felixxm. I've pushed a few fixups for the smaller changes and resolved those conversations. (I think I got them all, please do check.)
I think the test changes here are a good chunk on work. They do some much needed modernization. I know in an ideal world we would split them from the (mere) deprecation but it's another chunk of work to go through and separate the two changes. I think we should just take them as one in this case. (Something about pragmatism vs purity...) I think sometimes we've just got to accept good work and move forwards.
Maybe I have more energy for this after the weekend, but there's a ROI question. (We already spent lots of time. It's good enough. IMO)

Many thanks for polishing this!

Thank you Claude for your super effort updating all those tests! 🙂


Make raiding squads and attackers attack other buildings as well

Besides, raiding troops do not prioritise religion buildings or healers, so it is (relatively) save to put them outside the walls, possibly even surrounded by some nice gardens for looks, if it is at the back or to the sides of the castle.

This was commented by @heroesflorian in issue #192 .
I noticed that attackers just completely ignore buildings outside the castle, for no reason.  You can even build a wall out of gallows and be safe.
Idk about raiding squads, but they ignore stuff as well, iirc.

Speaking of that... I actually thought that release 2.06 (https://github.com/Sh0wdown/UnofficialCrusaderPatch/releases/tag/v2.06) would have improved that - from the release notes:

The AI attack wave problem is (hopefully) improved. The AI units will also attack towers, gatets and other buildings in a siege assault. Multiple units can also attack the same wall part. All of this should cause the waves of units in an assault to become much bigger and more frequent now.

You didn't miss it in my test matches for my custom sheriff he has a lot of buildings outside that just get ignored (almost entire industry)  he only lost them when tearing them down when he needed gold

I see the AI sometimes go for farms when they assault. Otherwise I think towers & gates simply have a higher priority than civil buildings. I used an already existing function when improving the attack waves, so I do not exactly know in what way buildings are attacked, just that they are attacked. If you completely enclose your walls with civil buildings, they will now be attacked. Before the patch you were basically safe from the enemies' infantry by enclosing your castle like that.

@Sh0wdown I am talking about weapon production for example. Buildings that are normally placed inside, because they cost a lot of stuff. Attacking units mostly ignore these.

I see the AI sometimes go for farms when they assault. Otherwise I think towers & gates simply have a higher priority than civil buildings. I used an already existing function when improving the attack waves, so I do not exactly know in what way buildings are attacked, just that they are attacked. If you completely enclose your walls with civil buildings, they will now be attacked. Before the patch you were basically safe from the enemies' infantry by enclosing your castle like that.

Did you check whether they attacked the enemy farms with siege attack troops or raiding troops?
Also, good to know there is no longer a "full immunity", but in practice does that mean funnelling the entire army to attack in particular locations by enclosing the whole rest of the castle in civil buildings is still possible?

As far as I can tell from testing atm they ignore farms and focus walls and towers with the attack armies (at least AI vs AI)

Nah, they do attack farms.

seems like I jumped the gun by saying ignoring but it certainly is not a steamrolling of the economy buildings in my tests it's not a whole lot of building
here is a before-after comparison after a pretty big attack pitch platforms did get destroyed mostly but farms been mostly left alone (only 2 have been destroyed) after breaking through the wall the only building that got destroyed have been torn down by the sheriff himself (houses since he didn't need the for workers in that moment)
https://i.imgur.com/udsMcUX.jpg https://i.imgur.com/6KIfHRU.jpg

Raiding squads should attack closer targets first I think before moving on to targets further away. They seem to prioritize attacking quarries first, which is sometimes very effective but isn't so good a tactic if the quarries are at the back of enemy castles. Emir's Arabian swordsmen raids often try and go round an enemy castle to destroy a quarry at the back of the castle, when there can be much closer economic buildings at the front and sides of the enemy castle that they can attack first.
The raiders bug also still exists where rather than moving to the next target to destroy, they will sometimes stand still or stand on aggressive stance and wait for reinforcements to come, which might take a long time.

Unknown124 is supposedly the parameter that controls that bug. If the value is high they will stand around for a while before moving on to the next objective.


expose this as a npm package

Dear @skorunka , I had export this to a npm package.
And fixed two bugs in the tree algorithm.
Fixed:

x may less than zero
https://jsfiddle.net/PaulHan/xhLatwg1/1/
the sibling's has an error order
https://jsfiddle.net/PaulHan/qovht6y7/

Feature:

support toggle
support tooltip and format
support padding and border
support chart auto-size

Todo:
Let user select destroy the element or not. if not, we will calculate the diff and use animate to update the node.

Hi @hanzhangyu I'm no longer working on this. I have added you as a collaborator, so you can freely integrate the bug-fixes and new features. Thank you. F


feat: add windows build

Ⅰ. Describe what this PR did
Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #691 (3c63486) into main (817925e) will decrease coverage by 0.10%.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #691      +/-   ##
==========================================
- Coverage   35.14%   35.04%   -0.10%
==========================================
  Files          74       74
  Lines       10571    10571
==========================================
- Hits         3715     3705      -10
- Misses       6569     6578       +9
- Partials      287      288       +1

see 1 file with indirect coverage changes


Compressed Nav Not Working

Hi, I noticed that when the page is compressed the nav stops working. I.E. the button is not dropping the nav down. I reloaded the page to make sure it wasn't something directly related to bootstrap.

This has been patched in #157.


The request was aborted: Could not create SSL/TLS secure channel.

We recently moved to a server 2016 machine and we had the following error:
"The request was aborted: Could not create SSL/TLS secure channel."
After some playing around and everything I found out that if I put in the following line of code before all cert calls it works fine:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

When we were on Server 2008 this wasn't an issue. I've seen this as an error on other libraries as well and they ended up forcing Tls in the library. What was odd was I had no problem locally when testing, only when deployed to the server.

Possibly related: http://stackoverflow.com/questions/2859790
As it's a global setting, I'm not sure whether it's really appropriate for us to have that line in the client library code - on the other hand, I can see it being a common problem. One to ponder - so I'm assigning it to Chris...

I'm not exactly clear what's going on here.
.NET4.6 changes the default set of enabled SSL/TLS protocols from .NET4.5
Windows Server 2016 appears to now explicitly not support SSL, only support TLS.
So this might be a combination of code built for .NET4.5, which is trying to use SSL by default (rather than TLS) on Windows 2016 (which doesn't support SSL), although I'm not clear if this is really the case.
I agree that the client library code shouldn't force ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;, although we could possibly OR in Tls12 support. I.e. have ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12; somewhere in the library code; although it is possible this may break some code.
Unfortunately I can't see a way to just enable TLS support for the HttpClient that we use. It appears to only be a global setting.

@chrisdunelm - Thanks and I'm not quite sure what exactly is going on or why it was even trying to do SSL3 by default. All I know is that I had to add the code about using ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; before it would work. And when I used ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3; I would get the Could not create SSL/TLS secure channel error. So it seems like by default it's still doing Ssl3.
I know we recently started upgrading our systems as BrainTree told us they would only start accepting Server 2012 and above. I know our BrainTree code hasn't broke from this upgrade, so I was assuming they put the line of code in their code.
I appreciate you looking into this and I assumed maybe it was going to be a bug going forward as Server 2016 is so new, I figured maybe people haven't had time to test the code against 2016 yet. Also, by opening up this ticket maybe it will help people find a solution.
Thanks!

Closing as stale. Please re-open if this is a still an issue.

@Eckee: It's hard to be more specific without knowing your context. gowthamb4's example is pretty specific if you're using ASP.NET. To be honest though, if you're running into this it suggest you're probably on a very old platform, and you should really look into updating to a more recent version of .NET.

@jskeet I'm so sorry, I found the solution in another thread, I had to manually upgrade to 1.24, that was the case.

@Eckee can you share the solution please.

@jskeet I'm so sorry, I found the solution in another thread, I had to manually update to 1.24, that was the case.

How did you manually update?


shim.GetRow() fails in chaincode query chaincode context, but succeeds in normal query context

Description
shim.GetRow() returns the row successfully when querying a chaincode directly. But, when the same chaincode is queried from another chaincode, shim throws an error.
Describe How to Reproduce
Running in dev mode, single node, vagrant setup, security on, privacy off (but I dont think its related to security).
Implement a query function that does a GetRow for a table. Call the query directly -- this succeeds. Call the query from another chaincode using shim.QueryChaincode, this throws an error.
GetRow_Fail.txt
GetRow_Success.txt

@prjayach :  from the logs, it appears as if you are trying to do access control within the chaincode you are trying to invoke from the other chaincode.  Currently, this won't actually work as I don't believe that the caller's context is passed when chaincode invokes chaincode.
4:36:10.101 [shim] DEBU : [932b2d41]Handling ChaincodeMessage of type: QUERY(state:ready)
04:36:10.101 [access_control_helper] DEBU : Inside isCallerParticipant
04:36:10.102 [access_control_helper] DEBU : Inside isCallerParticipant
04:36:10.102 [shim] DEBU : [932b2d41]Sending GET_STATE
04:36:10.103 [shim] DEBU : [932b2d41]Received message ERROR from shim

@mastersingh24 Gari, you are partly right. We are trying to do access control, but we are passing the necessary context (sigma, payload and binding) needed for verifying the callers signature. The call where its failing is a routine access of a GetRow. Are you saying that chaincode calling chaincode and GetState wont work when security is turned on?

I just confirmed that the same chaincode with security turned off, passes this GetRow() call and is able to retrieve the row from the table. So, the issue is with security turned on. Why should GetRow() fail and cause both the chaincode to crash for a GetRow() call? The context should only be needed for other calls such as VerifySignature? What am I missing?

chaincode_example05 calling chaincode_example02 with security on (privacy off) causes chaincode_example02 to crash with the GetState() call. Hasn't chaincode invoking chaincode been handled with security turned on? We can't build any reasonable applications without this capability. I hope I am doing something wrong and not a limitation of the fabric.

@binhn @adecaro @tuand27613 @mastersingh24 Help needed please

@muralisrini  as well

@prjayach : looking at it... Will post comment soon.

@prjayach . @mastersingh24 is right. Security context is not handled in chaincode-chaincode scenario's. Will work with @adecaro to see what can be done (at least tactically).

As I mentioned earlier, I dont need metadata passed through for things like access control. But, I need basic GetState, PutState working in query and invoke context. Thanks for taking this up on priority!

@ghaskins Should we leave this issue open as the PRIVACY=true case isn't handled yte by #1549 ?

@prjayach sounds reasonable to me.  I think github automated the closing anyway.


feat: emf multiple metric values

Issue #, if available: #165
Description of changes:
Update metrics utility to support multiple values for the same metric name.
Checklist

[X] Meet tenets criteria
[X] Update tests
[ ] Update docs
[X] PR title follows conventional commit semantics

Breaking change checklist

RFC issue #:

[ ] Migration process documented
[ ] Implement warnings (if it can live side by side)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #167 into develop will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##           develop      #167   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           33        33
  Lines          918       906   -12
  Branches        77        77
=========================================
- Hits           918       906   -12

Impacted Files
Coverage Δ

aws_lambda_powertools/metrics/base.py
100.00% <100.00%> (ø)

aws_lambda_powertools/logging/logger.py
100.00% <0.00%> (ø)

aws_lambda_powertools/tracing/tracer.py
100.00% <0.00%> (ø)

aws_lambda_powertools/metrics/metrics.py
100.00% <0.00%> (ø)

aws_lambda_powertools/logging/formatter.py
100.00% <0.00%> (ø)

aws_lambda_powertools/utilities/batch/base.py
100.00% <0.00%> (ø)

...ws_lambda_powertools/middleware_factory/factory.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 063d8cd...ec28c20. Read the comment docs.

NOTE: Don't forget to label this PR, and update Changelog


Add arm support

Add Sedna's support for below platforms:

Raspberry Pi
Arm64 Server

A non-code solution:

If the user has the target os already and can tolerate to build from source, then just follow the install doc.
Else using docker buildx to build sedna images.

A code solution:
TBD Add the cross-build support to Makefile.

fixed by #196
/close


style: add ESLint to the project

add eslint to the project to enforce good coding style and catch
errors early. Following airbnb style guide.
Fixes: #155

If you need me to add specific rules in eslint config please let me know.

@rohitgeddam just add one line in the CONTRIBUTING.md in the section 'Submitting a Pull Request' about running npm run lint. Before committing the changes and tell the contributor to fix all the errors before commiting.

Move the content of eslintrc.json to package.json(Do not add an extra file).

Why? This is a great separation of concerns and keeps the package.json from growing out of control, because you're going to have unit test settings, as well.

This is a great separation of concerns and keeps the package.json from growing out of control

Fair enough.

Where is this at?

add one line in the CONTRIBUTING.md in the section 'Submitting a Pull Request' about running npm run lint.

I thought about this and reached to conclusion that we should do this after applying linting in all files.

Merging this, will open another issue for applying linting changes in all files.


Not authorized to access 'nextToken' or 'items' fields on a @connection field type when running the Create() mutation

Describe the bug
Using a schema where one (parent) model's field has a @connection to another model (child model), the Create mutation returns errors, specifically: it can create the parent model, but it complains about not being able to access either the
nextToken field or the items field of the connection type of its child @connection model field.
Amplify CLI Version
4.41.2
To Reproduce

Create a schema with a "has many" ("one-to-many") connection like this one:

type Track
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner, operations: [create, update, delete] },
      { allow: public, provider: iam, operations: [read] }
    ]
  )
  @key(
    name: "byFolderIdCreatedAt",
    fields: ["folderId", "createdAt"],
    queryField: "tracksByFolderId"
  ) {
  id: ID!
  name: String!
  folderId: ID
}

type Folder
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner, operations: [create, update, delete] },
      { allow: public, provider: iam, operations: [read] }
    ]
  ) {
  id: ID!
  name: String!
  tracks: [Track] @connection(keyName: "byFolderIdCreatedAt", fields: ["id"])
}

Auto-generate Javascript code for queries and mutations via an Amplify cli push.
Try to use the auto-generated function (which just calls the GraphQL mutation) CreateFolder() as in this example that created the error from my code (the first call to Amplify.configure() ensures you are using COGNITO for authentication). Before this code runs, make sure the user running it is signed in to Cognito:Amplify.configure({
  aws_appsync_authenticationType: 'AMAZON_COGNITO_USER_POOLS'
});

this.awsAPI.CreateFolder({
    name: 'test'
}).catch((err: Error) => {
    console.log('errrrrrr', err);
})

Expected behavior
Expected the above to work with no errors, as it is a fairly straightforward use case! Instead, here is the printed out value of err in the  catch() block above, seen in the browser's dev console:
[ NOTE: the above call to CreateFolder() is here only to demonstrate the problem and has been simplified; originally there was a then clause there but since we get an error in this call the then clause never got executed so it is not shown. If this issue reported here did not exist, you'd be relying on the then block instead of the catch block to get your created folder data. The catch block above is actually also the current workaround (!), because when this error is thrown, the folder still gets created and its data is returned to you in err.data. ]
{data: {…}, errors: Array(2)}
data:
  createFolder: {__typename: "Folder", id: "095ab0a2-4968-4a39-ae52-41391af8a5fa", …}
  __proto__: Object
errors: Array(2)
  0:
    data: null
    errorInfo: null
    errorType: "Unauthorized"
    locations: [{…}]
    message: "Not Authorized to access items on type ModelTrackConnection"
    path: (3) ["createFolder", "tracks", "items"]
    __proto__: Object
  1:
    data: null
    errorInfo: null
    errorType: "Unauthorized"
    locations: [{…}]
    message: "Not Authorized to access nextToken on type ModelTrackConnection"
    path: (3) ["createFolder", "tracks", "nextToken"]
    __proto__: Object
    length: 2
  __proto__: Array(0)
__proto__: Object

NOTE: the you can see that err.data
Desktop (please complete the following information):

OS: Linux 4.19
Node Version. 12.0.0

Note: I forgot to mention that in the code, I had to add the following line before the call to the CreateFolder() mutation that generated an error, otherwise I had another (unauthenticated) error because it was assuming IAM configuration. Once I changed to COGNITO configuration, by adding the following code before the call to CreateFolder()
  Amplify.configure({
    aws_appsync_authenticationType: 'AMAZON_COGNITO_USER_POOLS'
});

I then got the error that is reported in this issue.

Note: I forgot to mention that in the code, I had to add the following line before the call to the CreateFolder() mutation that generated an error, otherwise I had another (unauthenticated) error because it was assuming IAM configuration. Once I changed to COGNITO configuration, by adding the following code before the call to CreateFolder()
  Amplify.configure({
    aws_appsync_authenticationType: 'AMAZON_COGNITO_USER_POOLS'
});

I then got the error that is reported in this issue.

@dorontal Are those queries working on the console?

@dorontal Are those queries working on the console?

@ammarkarachi please note: the query CreateFolder actually worked in the code above.
The folder was created at the end of that code (query) execution.
But it complained along the way.  Plus to make it work, you had to catch the error, then grab the data - it worked, but not the way it was intended to work.
I have never used the console and don't know how so for now I will not take the time to learn how to use it because I believe the answer thus far may suffice. If you still would like me to try some console to do the same query, then I will learn how to do the console and try it, but it may take me a couple of days as we are super busy here. We only use the Javascript wrappers, not even GraphQL directly -- these are wonderful. Thanks very much for this super powerful library!

@ammarkarachi please note: the query CreateFolder actually worked in the code above.
The folder was created at the end of that code (query) execution.
But it complained along the way.  Plus to make it work, you had to catch the error, then grab the data - it worked, but not the way it was intended to work.
I have never used the console and don't know how so for now I will not take the time to learn how to use it because I believe the answer thus far may suffice. If you still would like me to try some console to do the same query, then I will learn how to do the console and try it, but it may take me a couple of days as we are super busy here. We only use the Javascript wrappers, not even GraphQL directly -- these are wonderful. Thanks very much for this super powerful library!

You don't need I got a project working on my end I am just trying it on my end. From what I see the problem is reading back the output.
type Track
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner },
      { allow: public, provider: iam, operations: [read] }
    ]
  )
  @key(
    name: "byFolderIdCreatedAt",
    fields: ["folderId", "createdAt"],
    queryField: "tracksByFolderId"
  ) {
  id: ID!
  name: String!
  folderId: ID
  createdAt: String
}

type Folder
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner },
      { allow: public, provider: iam, operations: [read] }
    ]
  ) {
  id: ID!
  name: String!
  tracks: [Track] @connection(keyName: "byFolderIdCreatedAt", fields: ["id"])
}

If update your owner to have access over the both Folder and Track to read it should read the output

You don't need I got a project working on my end I am just trying it on my end. From what I see the problem is reading back the output.
type Track
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner },
      { allow: public, provider: iam, operations: [read] }
    ]
  )
  @key(
    name: "byFolderIdCreatedAt",
    fields: ["folderId", "createdAt"],
    queryField: "tracksByFolderId"
  ) {
  id: ID!
  name: String!
  folderId: ID
  createdAt: String
}

type Folder
  @model(subscriptions: null)
  @auth(
    rules: [
      { allow: owner },
      { allow: public, provider: iam, operations: [read] }
    ]
  ) {
  id: ID!
  name: String!
  tracks: [Track] @connection(keyName: "byFolderIdCreatedAt", fields: ["id"])
}

If update your owner to have access over the both Folder and Track to read it should read the output

Just tried this schema change and it solved this issue! @ammarkarachi, thanks so much!

Just tried this schema change and it solved this issue! @ammarkarachi, thanks so much!


hifile: init at <IP_ADDRESS>

Description of changes

HiFile is a cross platform graphical file manager for Windows, macOS and Linux.

Init hifile at <IP_ADDRESS>
Added myself as maintainer

Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2785

I'm afraid, I don't quite understand. Could you please clarify what you've meant?


Toggle the rendering of the tabs

could you add a toggle in the config or even a hotkey to hide the tabs entirely

This is a good solution, make it so that savvy players can press a hotkey to delete a tab they don't need; Imagine if you could hover over a tab and press 'del' to blacklist that specific block type. Possibly better would be to change to a whitelist option; vanilla containers are whitelisted, then anything else can be added by pressing a new '+' button.


Add in section for monitor Teams lifecycle management best practice

I would also add in a section for monitor Teams lifecycle management best practice so they you can identify potential issues and implement recommendations

Number of Teams
Number of inactive teams
Number of teams with guest users
Ownerless groups
Teams with duplicate names

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

ID: 21628f34-dd1b-12ae-7d65-2fe20013b2e1
Version Independent ID: 324ec037-70d9-a568-68fb-316a610e0b50
Content: Schedule service health reviews for your Microsoft Teams adoption - Microsoft Teams
Content Source: Teams/teams-adoption-schedule-service-health-reviews.md
Service: msteams
GitHub Login: @cichur
Microsoft Alias: v-cichur

Thanks for your feedback @nikki-c


Plant-disease-detection-system

Plant-disease-detection
About the Project
An application that for farmers to detect the type of plant or crops, detect any kind of diseases in them. The app sends the image of the plant to the server where it is analysed using CNN classifier model. Once detected, the disease and its solutions are displayed to the user
Model
Trained to identify 5 classes for Disease Detection and 24 classes for Disease Classification.
Dataset can be downloaded form kaggle
       - Disease Classification Classes

                   - Apple___Apple_scab
                   - Apple___Black_rot
		   - Apple___Cedar_apple_rust
		   - Apple___healthy
		   - Blueberry___healthy
		   - Cherry___healthy
		   - Cherry___Powdery_mildew
		   - Grape___Black_rot
		   - Grape___Esca_Black_Measles
		   - Grape___healthy
		   - Grape___Leaf_blight_Isariopsis_Leaf_Spot
		   - Orange___Haunglongbing
		   - Peach___Bacterial_spot
		   - Peach___healthy
		   - Pepper,_bell___Bacterial_spot
		   - Pepper,_bell___healthy
		   - Potato___Early_blight
		   - Potato___healthy
		   - Raspberry___healthy
		   - Soybean___healthy
		   - Squash___Powdery_mildew
		   - Strawberry___healthy
		   - Strawberry___Leaf_scorch

        - Disease Detection Classes

		   - Cherry___healthy
		   - Cherry___Powdery_mildew
		   - Grape___Black_rot
		   - Grape___Esca_Black_Measles
		   - Grape___healthy
		   - Grape___Leaf_blight_Isariopsis_Leaf_Spot

sure by tonight sir.


Duplicate Notifications for Spam Messages

Description
When a spam message is caught by a rule in SpamBlocker, it should prevent Google Messages from triggering an SMS notification.
Current Behavior
Upon receiving a message, both Google Messages and SpamBlocker send notifications. The SpamBlocker notification is silent as per the settings, but Google Messages still sends a standard notification.
Expected Behavior
When SpamBlocker catches a spam message, Google Messages should not send a notification.
Setup Details
Device: MIUI Global 14.0.3
OS: Android 13
App Version: SpamBlocker 1.17, Google Messages messages.android_20240621_00_RC03.phone_dynamic

Additional Information
SpamBlocker is not set up as the caller ID & spam app (Google Phone app is used for that purpose, not enabled for calls).
All other necessary permissions for SpamBlocker are granted, including battery optimization and autostart.

Thank you for developing this much-needed app! Also open for replacing Google Messages if issue is not fixable without doing so.

You don't need to replace Google Messages, just disable all notifications of it in system settings, let this app take over the notification, as described in the balloon tip of "Message Rules", not very intuitive, I'll try to find some better way to inform user about this.

Yeah i just read that again ,oops. I probably took first part of info bubble wrong. "It blocks notifications" it says. Probably shold say mutes or replaces, and "disable default app notifictions" part should be first sentence for clarity.

Indeed, it's misleading, I'll improve it, thanks.

Fixed.

For Android 13+ there will also be a popup warning.


Processing CQADupstack does not work out-of-the-box

I'm using evaluate_anserini_docT5query.py. In that script it's using util.download_and_unzip then GenericDataLoader and fails with the following message when using dataset cqadupstack :
ValueError: File /home/josh/source/beir/examples/retrieval/evaluation/sparse/datasets/cqadupstack/corpus.jsonl not present! Please provide accurate file.

The CQADupstack dataset is divided up into sub-categories which is causing the above error since it contains an extra sub-directory per-category.
 ls -las ~/source/beir/examples/retrieval/evaluation/sparse/datasets/cqadupstack/
total 56
4 drwxr-xr-x 14 josh josh 4096 Jul  1 08:38 .
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:35 ..
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:38 android
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 english
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:35 gaming
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 gis
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 mathematica
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 physics
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 programmers
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 stats
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:36 tex
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 unix
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 webmasters
4 drwxr-xr-x  3 josh josh 4096 Jul  1 08:37 wordpress

How was CQADupstack used in the benchmarking for the paper and leaderboard? Was each category processed separately or was everything somehow combined into a single evaluation?

Hi @joshdevins,
Yes, CQADupstack contains 12 StackExchange forums and you should process each category separately.
The scores in the paper are the average of the individual forum scores.
Also see: https://github.com/UKPLab/beir/issues/9
Kind Regards,
Nandan


Use spot instances in stability tests

This PR updates our stability tests to automatically use spot instances by default. This will make sure we're resilient to workers randomly leaving the cluster.
Closes https://github.com/coiled/coiled-runtime/issues/122
EDIT: This also has a small cost-savings benefit, but my main motivation for this change is making sure our stability tests are robust when workers go offline

@ncclementi do you have a moment to look at this?


[Bug]: Double colon notation from multiline code blocks treated as existing column

Contact Details
<EMAIL_ADDRESS>What happened?
I have a lot of multiline Ruby code in my vault like this:
# uncomment this lines to get a proper backtrace from GraphQL::Backtrace
use GraphQL::Execution::Interpreter

When I'm adding a new column, the dropdown "Select an existing column to add" shows uncomment this lines to get a proper backtrace from GraphQL or use GraphQL as an existing column. Overall, this gets pretty noisy:

Is there a way to fix this?
What platform were you using?
Desktop
Version of the plugin
2.6.4
Relevant log output
No response
Are you using the latest version of the plugin in your Obsidian vault?

[X] I have verified that I am on the latest version

Are you check if there is a similar issue?

[X] I have verified that there are not similar issues

This problem should be discussed in the Dataview forum. I don't know if there is a way to prevent it from collecting information if it is inside code blocks.
This plugin is a dataview search engine frontend


⚠ TorrentLeech has degraded performance

In 1330e12, TorrentLeech ($TL) experienced degraded performance:

HTTP code: 200
Response time: 6611 ms

Resolved: TorrentLeech performance has improved in cf52e9f.


Change the JSON representation of options to avoid ambiguity.

Last one for the day: when fuzz testing the JSON encoder of Irmin.Type, I also discovered that we are using an ambiguous representation of 'a option, where None is represented as null and Some x is unboxed into x directly.
This causes–admittedly unlikely–issues when trying to encode nested option types, since e.g. None and Some None would both turn into null.
To avoid these issues, this pull request changes the representation of options to lists:

None is now encoded as [] in general;
Some x is now encoded as [x] in general.

However, to maintain backwards-compatibility with most use-cases (as suggested by @samoht):

Fields of records with the value None are still omitted altogether;
Fields of records with the value Some x are still unboxed into x.

One possible non-ambiguous representation is:

None ↔ "none"
Some x ↔ { "some": x }

which has a few advantages over the proposed encoding:

it's consistent with our encoding of other variants (such as result and those built with variant or enum);
it isn't parseable as a list, so is more type-safe.

Do you have a reason for picking the list encoding instead?

@CraigFe There was no particular rationale behind the list. I seemed to recall a JSON serialization library which used this encoding, but I can't remember which–and it's not a very convincing argument anyway.
I quite like your proposal, but if you're willing to use two different Javascript types for your encoding (a string and an object), why not replace "none" with null directly?

The encoding I mentioned is just what we're doing elsewhere, but None ↔ null is another good option :slightly_smiling_face: I'm not a fan of the current encoding for variants changing JavaScript type at different cases, but that's the current state of affairs...
One slight issue with using null is that we're already using () ↔ null in some contexts, so with that encoding it's possible to do e.g.:
let () =
  let open Irmin.Type in
  (1, ())
  |> to_string (pair int unit)
  |> of_string (pair int (string option))
  |> fun (1, None) -> assert false (* absurd *)

but a better solution might be to stop doing () ↔ null altogether, perhaps in favour of either {} or "unit" (to reflect that () is either a 0-ary record or a 1-ary variant respectively).
For even more options, we could provide alternative {to,from}_safe_json with stronger type-safety guarantees and no breaking of backwards compatibility.

let () =
  let open Irmin.Type in
  (1, ())
  |> to_string (pair int unit)
  |> of_string (pair int (string option))
  |> fun (1, None) -> assert false (* absurd *)

Do we really want decoding to be robust even in the case of a change in schema, though? If that's the case, I don't think mixing up () with None is going to be our biggest concern.
That being said, I quite like representing () as the 0-ary record (it makes much more sense than null anyway), and then None as null (which indicates an "absence of value"  in Javascript, so we're pretty close).

It’s best if we can avoid having two different JSON serializers: we should have one which is both safe and useful when pretty-printing large records (Eg. In practice removing the null fields makes a big difference in usability). Maybe we need something like ppx_yojson where we can tag fields to be non-nullable.

Do we really want decoding to be robust even in the case of a change in schema, though? If that's the case, I don't think mixing up () with None is going to be our biggest concern.

@liautaud: To me, "robust even in the case of a change of schema" is what it means for a serialisation format to be type-safe. The transformation I gave is tantamount to (Obj.magic : (int * unit) -> (int * string option)).
We're probably not going to get 100% type-safety and still capture JS idioms like (1, 2, 3) ↔ [1,2,3] , but it feels like a worthwhile goal regardless.

Maybe we need something like ppx_yojson where we can tag fields to be non-nullable.

@samoht: I like the idea of adding something like a default option to field to define the interpretation of an absent JSON key; that has the advantage of being a nice/consistent API for ppx_irmin too. It wouldn't let you explicitly box option fields on records, however. Perhaps we'd want something like:
val option : ?boxed_json_field:unit option -> 'a Type.t -> 'a option Type.e

for that.
Both are perhaps separate from this PR, since the boxed_json_field flag seems helpful even if we stuck with the current None ↔ null encoding.

I think we should focus on making the JSON (and binary) serializers safe:

they should never crash when we do a round-trip OCaml -> <data> -> OCaml
Parsers should crash with a catchable error (not a segfault) when provided with invalid input

I think it's a non-goal to be resilient to schema upgrades : it's very hard to do in the general case, and the semantics is not totally clear. I would much rather preserver the type schemas and have automatic version converters if possible (but later, as it means we have to serialise the type schema somewhere in the irmin trees).

In that case, I suggest the following solution:

() ↔ {}
Some x ↔ { "some": x }
None ↔ null

and we add a doc-comment explaining the two ways in which Irmin.Type.option differs from the derived encoding on the type:

when given as the field of a record, None ↔ absent key
otherwise, None ↔ null (rather than "none")

I updated the encoder, decoder and tests to match @CraigFe's proposal.
There was already a doc-comment explaining the previous rules, so I just adapted it.

Oops. My tests were not apparently not exhaustive enough (I didn't check the decoding of nested options inside records), but the fuzzer caught it on time. 4041e10e6efa23714c27a94b3c584a4641d7a21c fixes the edge case.


Add leaderf#Rg#getTypeByFileName()

Added a function to return -t of rg from a file name.
Refer #526
Usage:

For example, let's map the following
nnoremap <Space>fg :<C-u><C-r>=printf('Leaderf rg %s ', leaderf#Rg#getTypeByFileName(expand('%')))<CR>

Type <Space>fg.

If the current buffer name is sample.vim, it will be :Leaderf rg -t "vimscript"

Thank you!

Thank you so much for merging!


Restore Window.print() method, fixes #22917

Fixes #22917

Thanks for your PR. these files are not manually edited, they are auto-generated from a script in . You can find more information about contributing lib.d.ts fixes at https://github.com/Microsoft/TSJS-lib-generator.
Changes should be done in https://github.com/Microsoft/TSJS-lib-generator instead.
Please find more information at: https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md#contributing-libdts-fixes.

Created https://github.com/Microsoft/TSJS-lib-generator/pull/396 to fix it.


Add models with migration files WIP

Adding students, users and jobs models with migration files.
Create students, users and jobs apps from vagrant, and add them on setting.py.

I'm missing the tests and it seems to be too big. Consider splitting this PR. The tests should help you do that (as you can test individual parts, and that can be considered something that works).

I'm closing this PR since it was more simple to start it over with a new update one.


In Openstack, cloud prepare does not create gateway node with OVN Kubernetes CNI

What happened:
In Openstack, cloud prepare does not create gateway node with OVN Kubernetes CNI
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Run cloud prepare in a Openshift cluster with OVNKubernetes CNI
Anything else we need to know?:
The below error is shown is machineset controller
E0406 15:03:56.893497       1 controller.go:326]  "msg"="Reconciler error" "error"="error creating Openstack instance: error getting security groups: security group asuryanarhos-r7jdj-submariner-internal-sg not found" "controller"="machine-controller" "name"="asuryanarhos-r7jdj-submariner-gw-0-6vdcb" "namespace"="openshift-machine-api" "object"={"name":"asuryanarhos-r7jdj-submariner-gw-0-6vdcb","namespace":"openshift-machine-api"} "reconcileID"="26d333f5-695e-4213-807e-a24caf5a0b2e"
W0406 15:20:57.362743       1 controller.go:382] asuryanarhos-r7jdj-submariner-gw-0-6vdcb: failed to create machine: error creating Openstack instance: error getting security groups: security group asuryanarhos-r7jdj-submariner-internal-sg not found

Environment:

Diagnose information (use subctl diagnose all):
Gather information (use subctl gather):
Cloud provider or hardware configuration:
Install tools:
Others:

With OVN Kubernetes Internal security group is not created as no extra port needs to be opened. The machine expects this to be present and it fails.

One more PR to be merged.


How to enable "eager validation" after first failed form submission?

Thank you so much for this amazing library.
I'm using Zod in a Mantine form on a Next.js app, and it's working well.
One possible UX improvement on my form would be for field validation to be "eager" (i.e. instant on every keyUp event) after the first time the visitor tries to submit a form with invalid values.
For example, I have this rule:
z
    .string()
    .max(64, { message: 'Maximum 64 characters' })
    .refine((acc) => acc === '' || mainnetRegex.test(acc), {
      message:
        'If you are providing a named NEAR mainnet account address (which is optional), it must be valid and end with `.near`. See https://docs.near.org/docs/concepts/account#account-id-rules for details.',
    })
    .optional()

If a visitor tries to submit the form and then sees that error, it would be ideal if the visitor could see the error message go away immediately whenever the field's value is edited such that it is valid.
How could I achieve this UX while using zod? Thanks!

That'll have to be handled by Mantine - out of scope for Zod. I suggest looking through Mantine's docs for this answer.


[Question]: Where to add Cohere x LlamaIndex integration documentation?

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Hi,
We're working at Cohere on adding documentation support for Cohere's APIs. Specifically, we've tested out embed, rerank, and chat+RAG functionality with LlamaIndex. There's several doc improvements and setup guides we could add, maybe even Jupyter notebooks but we are wondering about where best to contribute.
For example, where do the docs here: https://docs.llamaindex.ai/en/stable/api_reference/query/chat_engines/simple_chat_engine.html live? We could potentially add a section here on Cohere quickstarts, or make a repo similar to mongodb-demo that exists already.
Any insights welcome

Hey at @tianjing-li !
I think as far as docs, ensuring there is a working demo in docs/examples/embeddings for embeddings and docs/examples/node_postprocessor for reranking is a good start
If you wanted to contribute a complete "Cohere <> LlamaIndex" guide, that could definitely go in docs/examples/query_engine or docs/examples/chat_engine,  -- just have to make sure it gets linked somewhere in the normal md documentation so that it shows up in search. Maybe inside docs/community/integrations ?
btw -- I know we have a slack channel with cohere, feel free to also reach out on there 👍🏻


Fix for timestamp and resource value in scheduler-resource-day slot

#155 Fix

@chemscobra Thanks for the PR! :heart:
Will be released shortly.

v2.3.1 has been released


Unexpected Occlusion Shader behavior on Mixed Reality headset

Overview
So, maybe this isn't a bug and I'm trying to do something for which the system isn't designed, but the MRTK_Occlusion shader exhibits odd / different behavior on a Mixed Reality Headset versus in Hololens (in Holographic Emulation).
Expected Behavior
Good question, but I guess on in a VR system I would expect it to occlude everything placed in the scene but to show the skybox behind.
Actual Behavior
Works as expected on HoloLens, on WMR headset shows odd distortion, as if it is partially reflecting (but with distortion) the object behind, and partially occluding. As you move around the scene the distortion pattern, reflection patterns move with you though in a trippy fashion.
In this image, a sphere with the occusion shader is in front of a red cube and another green cube and you can through them to the black background.
(https://drive.google.com/file/d/1b1v8T0bN-o4fELoabiTDva9H0yi9SEEd/view?usp=sharing)
In this image the sphere with the occlusion shader (positioned visually at the bottom of the cube, is partially transparent revealing the skybox, and partially distorted showing parts of the red cube behind.
https://drive.google.com/file/d/1_IXncwIP0TR-GNpCpA-IOW3wGab9wnNF/view?usp=sharing
Steps to reproduce
(Links to sample github project preferred)
Put an object with the MRTK_Occlusion shader on it, in front of another object and try running in both Holographic Emulation mode and on a WMR headset.
Unity Editor Version
2018.3.11f1
Mixed Reality Toolkit Release Version
mrtk_development latest as of this morning

@generiddick, MRTK v2 is using Unity's built-in occlusion shader for the MRTK_Occlusion material.  Can you try replacing it with the Occlusion shader from the HoloToolkit? (https://github.com/Microsoft/MixedRealityToolkit-Unity/blob/htk_release/Assets/HoloToolkit/SpatialMapping/Shaders/Occlusion.shader)
If this resolves what you are seeing, we will report this issue to Unity. If not, then @Cameron-Micka (assigned) may be able to help.
Thanks!

Hi @genereddick, I was able to reproduce this locally with Unity's occlusion shader and the HoloToolkit one. The odd distortion you are seeing is the "un-cleared" framebuffer from the previous frames. When using a Unity skybox (which is the default for immersive headsets) the back buffer doesn't get cleared, which is a common optimization you see in many 3D apps/games and results in a "smeared pixel" look. The smear is occurring because the Unity and HoloToolkit shaders don't write to the color buffer, just the depth buffer. To fix this you could go the camera (or the camera profile in the new MRTK) and set the "Clear Flags" to "Solid Color" and pick a color to clear to each frame. If that isn't the desired look you are going for there are a few other techniques we could try.

Hi @genereddick, I was able to reproduce this locally with Unity's occlusion shader and the HoloToolkit one. The odd distortion you are seeing is the "un-cleared" framebuffer from the previous frames. When using a Unity skybox (which is the default for immersive headsets) the back buffer doesn't get cleared, which is a common optimization you see in many 3D apps/games and results in a "smeared pixel" look. The smear is occurring because the Unity and HoloToolkit shaders don't write to the color buffer, just the depth buffer. To fix this you could go the camera (or the camera profile in the new MRTK) and set the "Clear Flags" to "Solid Color" and pick a color to clear to each frame. If that isn't the desired look you are going for there are a few other techniques we could try.

@davidkline-ms I can confirm that the HoloToolkit shader has the same issue.
@Cameron-Micka That technique sort of works but visually it seems odd / sub-par compared to the fairly seamless effect on HoloLens. The buffer clearing seems to happen slower than head movement so the edges are not smooth for a frame or more until you stop moving and it can catch up, and it appears much more obvious (not sure why exactly), that the occluder is in front of the occludee (whereas on HoloLens it just looks like a hole in the object).
You also lose the ability to have a skybox (as far as I can see you can either have clearflags and a color or a skybox but not both).
This is an edge usage case usage for me -- I can handle the desired effect it in code instead -- so if you have more important things to do I wouldn't want to pull you off of them, but I'm happy to try other techniques to see if there is a viable work-around as I'm curious.

@genereddick There are a few routes you could go down. If you are looking to simply occlude/clip geometry you could use the stencil buffer capabilities in the MRTK/Standard shader (you can see an example if this I the MaterialGallery scene (the portal). Also, if you just want to clip meshes with a shape (like the sphere in your example images) you can use the MRTK Clipping Primitives (Plane, Sphere, Box) which you can also find example usage of in the back row of the MaterialGallery. You might also be able to write a custom skybox shader that get's rendered over occlusion geometry, but I haven't tested this in Unity.

@Cameron-Micka OK, I think the stencil buffer or clipping primitives will work for what I want. Thanks for the help.

@genereddick Excellent! Please let me know if you have any questions.