NTP.now() and NTP.getNtpOffset() taking forever to return value.

Both functions take forever to execute.
Trying NTP.now().then() yields nothing meanwhile, using an await puts my app in a deadlock.
I'm currently using Flutter 1.20.2 and Dart 2.9.1 on a MacOX

you can try changing lookUpAddress
default is pool.ntp.org
alternatives are:

time.google.com
time.cloudflare.com

await NTP.getNtpOffset(lookUpAddress: 'time.cloudflare.com');

Thanks a ton.

@rajveermalviya Did what you recommended but still the NTP.now() methods takes forever.
Was there anything you did additionally to fix your code @fonkamloic ?

@dokenedgar NTP.now() doesn't support setting custom lookUpAddress.
you can create following helper to use custom lookUpAddress.
Future<DateTime> ntpNow({lookUpAddress = 'time.cloudflare.com'}) async {
  final localTime = DateTime.now();

  final offset = await NTP.getNtpOffset(
    lookUpAddress: 'time.cloudflare.com',
    localTime: localTime,
  );

  return localTime.add(Duration(milliseconds: offset));
}

To change the lookUpAddress
final networkTime = await ntpNow(lookUpAddress: 'time.google.com');

Thanks for your response @rajveermalviya . Tried it the way you wrote and it worked. However, out of curiosity I tried loading the time using the initial pool.ntp.org and it worked, this made me very curious: is it that the pool.ntp.org is experiencing outages of recent? And if you can, which one is more reliable as I have an app in production for a client and getting the network time is crucial to how the app works. Should I stick with the wrapper, implying it's more reliable or be taking a risk with the pool.ntp.org?

pool.ntp.org is a pool of NTP servers, on doing a DNS lookup it returns the nearest NTP server for your IP address zone.
For me, it sometimes returns IP of time.cloudflare.com by default, (location is India).
You can check what server it connects to and also server's response times, for your preference by running
ping pool.ntp.org

run it many times and check if time.cloudflare.com comes up.
time.google.com is used by all Android devices by default (at the time of device setup).
PS. I would recommend doing the test and finding the best server, rather than using pool.ntp.org because it adds unnecessary overhead (for finding the nearest server). If your client is not based in a single country then go for time.google.com or time.cloudflare.com because they are the most reliable.

@dokenedgar
Find more info about pool.ntp.org project here https://www.ntppool.org/en/

Thank you so much @rajveermalviya  I understand the whole concept better now. And the ping tests seem to be showing responses from time.cloudfare.com.
Thanks again.

I merged PR that adds timeout as well, so that sould help.
I will leave this issue open until I get time to add this to the documentation 😃 or add something to have more options to choose lookup address even for NTP.now()

Merged PR where time.google.com is default lookup, and you can cnage lookup address when using .now()
Available in 1.0.8
Closing this issue now

Merged PR where time.google.com is default lookup, and you can cnage lookup address when using .now()
Available in 1.0.8
Closing this issue now

One of my user has encountered a problem with my app loading forever and I believe this issue could have been the problem, as all my own APIs have timeouts.
They have mentioned that they were not able to load my app when using the WiFi of their workplace, but otherwise on cellular data and home WiFi everything is normal.
My question is, what seems to be causing this issue such that certain networks blocks this? What is the best solution to solve this too? Timeouts wouldn't seem to help if the default lookup address is being blocked.


Isosurface renderer renders nothing

To reproduce:

Open VAPOR, load data: ROMS/his
Create an Isosurface renderer, enable it.
Nothing is rendered. Changing variables doesn't seem to help.

@shaomeng please verfiy these are not zero-value fields


HMR does not work for react+redux template

Im generate app using react+redux csproj 2017 and run it from console. May be it some how relates on #651
e:\projects\temp\my>dotnet run
Hosting environment: Production
Content root path: e:\projects\temp\my
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
      Executing action method My.Controllers.HomeController.Index (My) with arguments ((null)) - ModelState is Valid
info: Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ViewResultExecutor[1]
      Executing ViewResult, running view at path /Views/Home/Index.cshtml.
info: Microsoft.Extensions.DependencyInjection.DataProtectionServices[0]
      User profile is available. Using 'C:\Users\maxit\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/dist/vendor.css?v=drqKRA43vYEMTACwNml9OGCrx4DLsqCObMKs9Nf__b0
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
      Executed action My.Controllers.HomeController.Index (My) in 3974.6254ms
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 4294.7885ms 200 text/html; charset=utf-8
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[2]
      Sending file. Request path: '/dist/vendor.css'. Physical path: 'e:\projects\temp\my\wwwroot\dist\vendor.css'
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/dist/site.css?v=Lb5HSsGvBcEgLMQZ61Nva-Lpee8TNSEJ0mFBnX5PmbQ
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[2]
      Sending file. Request path: '/dist/site.css'. Physical path: 'e:\projects\temp\my\wwwroot\dist\site.css'
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 20.5426ms 200 text/css
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/dist/vendor.js?v=7DRIUpOebpX4lLgoWSWLN5fOB879OFqZERiNaCAtGss
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[2]
      Sending file. Request path: '/dist/vendor.js'. Physical path: 'e:\projects\temp\my\wwwroot\dist\vendor.js'
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/dist/main-client.js?v=mwoFzq4R7sFburv46yIny6UNwzzzsKSMdVi5Ppz9AiY
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[2]
      Sending file. Request path: '/dist/main-client.js'. Physical path: 'e:\projects\temp\my\wwwroot\dist\main-client.js'
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 67.6388ms 200 text/css
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 9.1701ms 200 application/javascript
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 27.8167ms 200 application/javascript
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://localhost:5000/__webpack_hmr?lastEventId=&r=1303430452328411
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
      Executing action method My.Controllers.HomeController.Index (My) with arguments ((null)) - ModelState is Valid
info: Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ViewResultExecutor[1]
      Executing ViewResult, running view at path /Views/Home/Index.cshtml.
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
      Executed action My.Controllers.HomeController.Index (My) in 27.7949ms
fail: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0]
      An unhandled exception has occurred: Call to Node module failed with error: Error: The location '/__webpack_hmr?lastEventId=&r=1303430452328411' doesn't match any route configured in react-router.
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1062:23
    at e:\projects\temp\my\ClientApp\dist\vendor.js:56568:5
    at e:\projects\temp\my\ClientApp\dist\vendor.js:20804:11
    at next (e:\projects\temp\my\ClientApp\dist\vendor.js:20581:7)
    at loopAsync (e:\projects\temp\my\ClientApp\dist\vendor.js:20585:3)
    at matchRoutes (e:\projects\temp\my\ClientApp\dist\vendor.js:56831:29)
    at Object.match (e:\projects\temp\my\ClientApp\dist\vendor.js:20798:33)
    at match (e:\projects\temp\my\ClientApp\dist\vendor.js:56567:21)
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1051:32
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1049:12
System.Exception: Call to Node module failed with error: Error: The location '/__webpack_hmr?lastEventId=&r=1303430452328411' doesn't match any route configured in react-router.
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1062:23
    at e:\projects\temp\my\ClientApp\dist\vendor.js:56568:5
    at e:\projects\temp\my\ClientApp\dist\vendor.js:20804:11
    at next (e:\projects\temp\my\ClientApp\dist\vendor.js:20581:7)
    at loopAsync (e:\projects\temp\my\ClientApp\dist\vendor.js:20585:3)
    at matchRoutes (e:\projects\temp\my\ClientApp\dist\vendor.js:56831:29)
    at Object.match (e:\projects\temp\my\ClientApp\dist\vendor.js:20798:33)
    at match (e:\projects\temp\my\ClientApp\dist\vendor.js:56567:21)
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1051:32
    at e:\projects\temp\my\ClientApp\dist\main-server.js:1049:12
   at Microsoft.AspNetCore.NodeServices.HostingModels.HttpNodeInstance.<InvokeExportAsync>d__7`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.NodeServices.HostingModels.OutOfProcessNodeInstance.<InvokeExportAsync>d__14`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.NodeServices.NodeServicesImpl.<InvokeExportWithPossibleRetryAsync>d__10`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.SpaServices.Prerendering.PrerenderTagHelper.<ProcessAsync>d__33.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Razor.Runtime.TagHelpers.TagHelperRunner.<RunAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at AspNetCore._Views_Home_Index_cshtml.<ExecuteAsync>d__31.MoveNext() in /Views/Home/Index.cshtml:line 2
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.<RenderPageAsync>d__14.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.<RenderAsync>d__13.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.<ExecuteAsync>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.ViewResult.<ExecuteResultAsync>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeResultAsync>d__30.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextResultFilterAsync>d__28.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ResultExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextResourceFilter>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ResourceExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeAsync>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Builder.RouterMiddleware.<Invoke>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.<Invoke>d__6.MoveNext()

This line from your log:
Hosting environment: Production

... shows that you're running in production mode. However, the fact that your client-side code is trying to make a request to /__webpack_hmr shows that your client-side code was built in development mode. This mismatch is what's causing the problem.
To avoid this, always build your client-side bundles in production mode before running the server in production mode. This happens automatically if you use dotnet publish, but if you've got some other manual way of deploying to a production-mode server, you'll need to run Webpack as follows first:
webpack --config webpack.config.vendor.js --env.prod
webpack --end.prod


Added code to generate a classification report

Hi @jacobgil,
This pull request aims to allow users to generate a classification report similar to those created by scikit-learn, but with additional functionality to include confidence intervals for each metric. Leveraging the existing implementations within your library, it computes precision, recall, and F1-score for each class, both individually and as micro and macro averages.
Please review for any potential errors, and don't hesitate to suggest any improvements.
Much appreciated, and thank you for your outstanding package!

You ROCK, this is a great contribution.
Does it make sense to add a section with this to the Readme? Maybe with an example dataframe output?

Hi @jacobgil, thanks for the feedback :)
I made some small fixes to the code and added a section in the Readme file.


Update OWNERS

What type of PR is this?
Cleanup
What this PR does / why we need it?
Update OWNERS

remove anjoshi24

Which Jira/Github issue(s) this PR fixes?
OHSS-12270

Codecov Report

Merging #42 (a6742a1) into master (5725a01) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #42   +/-   ##
=======================================
  Coverage   38.88%   38.88%
=======================================
  Files          13       13
  Lines         684      684
=======================================
  Hits          266      266
  Misses        405      405
  Partials       13       13

/lgtm


stream_send(...) should return Err(Error::Done) if no bytes are send

Motivation:
The documention of stream_send(...) states that Err(Error::Done) is returned if no bytes were send. This is not always the case and Ok(0) might be returned.
Modifications:
Return Err(Error::Done) if tx_cap is 0.
Result:
Return value matches the documentation.

@LPardue i think you are right and we should only return Done if no fin was send ... correct ?

Yeah, in the first check of cap is 0, also check that  input fin is false before returning Done. We should probably also update the method description to state that 0-length FIN is supported even if capacity is zero.

@LPardue will fix formatting error and update docs

@LPardue docs updated... PTAL

@LPardue @ghedo test failure is not related to this change

@LPardue sounds good...

thanks @normanmaurer !


lean 3.1.0 fails to build on mac osx with gcc/g++ version 7

the error in the build is
                 from /Users/carter/Desktop/repoScratcher/lean-3.1.0/src/frontends/lean/scanner.h:16,
                 from /Users/carter/Desktop/repoScratcher/lean-3.1.0/src/frontends/lean/parser_state.h:12,
                 from /Users/carter/Desktop/repoScratcher/lean-3.1.0/src/frontends/lean/parser.h:24,
                 from /Users/carter/Desktop/repoScratcher/lean-3.1.0/src/library/module_mgr.h:18,
                 from /Users/carter/Desktop/repoScratcher/lean-3.1.0/src/library/module.cpp:31:
/Users/carter/Desktop/repoScratcher/lean-3.1.0/src/util/trie.h: In lambda function:
/Users/carter/Desktop/repoScratcher/lean-3.1.0/src/util/trie.h:69:70: error: 'this' was not captured for this lambda function
                     new_t1->m_children.insert(k, merge(n1.steal(), c2));
                                                                      ^
/Users/carter/Desktop/repoScratcher/lean-3.1.0/src/util/trie.h: In lambda function:
/Users/carter/Desktop/repoScratcher/lean-3.1.0/src/util/trie.h:82:38: error: 'this' was not captured for this lambda function
                 for_each(f, c, prefix);

Could you please check whether the commit above fixes the problem?

it fixes that problem/build error, though  then get about 4 thousand duplicate linker symbol errors
along with some case coverage/fall through warnings (attached both)
should those be split into new tickets?
lean-build-linker-dup-errors.txt
lean-build-warnings.txt

@cartazio I installed gcc 7 on a Mac, and managed to reproduce the problems.
I just pushed a series of fixes. With these fixes, I managed to compile Lean using gcc 7 without warnings and/or errors.

just did a build myself on master commit 24048c42584f12c476377ddda752fe5178271b87 to check right now. Looks all green!
I'm glad my bug report was helpful and thankyou for being so responsive!
I suppose I can/should close the ticket now :)


Fix Css mirroring to handle multiple selectors in RuleSet

Thanks Monam, just a couple of nits, after which seems good to merge :-)

Thanks Monam!


syscall: add array of Errno errors?

Running os/exec's new BenchmarkExecEcho on my machine, 8% of allocations are from internal/poll/fd_poll_runtime.go:45: return syscall.Errno(errno). This allocates when we convert from syscall.Errno to an error. (For those who are curious, the errno is 22, EINVAL, indicating that the file is not pollable. We end up noting only that the error is non-nil, at internal/poll/fd_unix.go:64, and then dropping it, at os/file_unix.go:157.)
There aren't many errnos. We could avoid this allocation, and others, by adding an array of all expected Errnos as errors in package syscall, and adding an accessor function to return them. Something like:
var errnoErrors = [...]error{nil, Errno(1), Errno(2), ... }

func ErrnoError(e int) error {
  if e >= 0 && e < len(errnoErrors) {
    return errnoErrors[e]
  }
  return Errno(e)
}

Note that errnoErrors would be generated by a script, and would be treated as static data by the compiler and linker, so the impact would be only on binary size (not compilation time or process startup).
Package syscall is frozen and sensitive, so I wanted to ask before doing the work.
cc @bradfitz @ianlancetaylor

Sounds fine. We've done that elsewhere in std already.

For instance:

https://go-review.googlesource.com/c/go/+/6701/
https://go-review.googlesource.com/c/go/+/8192/
https://go-review.googlesource.com/c/go/+/28484/

@josharian I'm curious; is there a reason you're looking into the performance of os/exec recently?

In some circumstances it was showed up in go-fuzz pprof output. See also https://github.com/dvyukov/go-fuzz/pull/215.

I started on this and then started to wonder whether we should do this trick in the compiler for small ints in interfaces instead, like we do with single-byte values. We have talked about that in the past and worried about binary size and weird perf cliffs. But this change would add more to binary size, and almost everyone uses syscall, and doing it in the compiler would benefit other code.

(Note to self; on phone.)
A narrower fix would be to add a ByteErrno, applicable only for byte-sized errnos, that delegates to syscall.Errno for errors strings.

A narrower fix would be to add a ByteErrno

No adding exported stuff to syscall, though. And we can't change the type on people anyway.

Btw, we already have:
https://github.com/golang/go/blob/8f9902d/src/syscall/syscall_unix.go#L139
// errnoErr returns common boxed Errno values, to prevent
// allocations at runtime.
func errnoErr(e Errno) error {
	switch e {
	case 0:
		return nil
	case EAGAIN:
		return errEAGAIN
	case EINVAL:
		return errEINVAL
	case ENOENT:
		return errENOENT
	}
	return e
}

... feel free to add to that. Or change its implementation to the array thing.

No adding exported stuff to syscall, though. And we can't change the type on people anyway.

I was thinking of it just for this particular use, which never makes it to the outside world.
errnoErr is perfect but unexported and in the wrong package. I suppose I could export it and move it to some internal package.

errnoErr is perfect but unexported and in the wrong package. I suppose I could export it and move it to some internal package.

SGTM


Create scratch image builds

Coverage increased (+0.03%) to 88.049% when pulling a74f465d617c60b6c6eb0b6229ffa73e1f44760a on base-image-scratch into<PHONE_NUMBER>782e9b36b3893386ceb99343f4d5f9 on master.


flags.pending will not change on vue 2.5.2

Versions:

VueJs: 2.5.2
Vee-Validate: 2.0.0-rc.19

Description:
when call this.$validator.validateAll() method, $validator.flags[ form element's name ].pending will:
on vue 2.3.3, the value will change to true on validating;
on vue 2.5.2 the value still be false;
but when the form element blur, both version of vue, the pending value will change to true.
the pending is watched in a custom directive's update hook:
<input v-validate="'required'" v-custom-directive name='foo' />

update ( el, binding, vnode ) {
// here pending value will not change to true on vue 2.5.2 but 2.3.3
  vnode.context.$validator.flags['foo'].pending
}

Steps To Reproduce:

Seems to be working fine to me if you use a long running validation rule:
https://jsfiddle.net/logaretm/asmwfa7a/1/
required may just finish before your directive gets the hook, so its unreliable

here are the cases, attention to the console board when click the button:
vue 2.3.3: https://jsfiddle.net/timehello/7gcq53eh/
vue 2.5.2: https://jsfiddle.net/timehello/7gcq53eh/1/


LegacyImporter does not handle shared dependencies

It's rather a mess to fix, too.

Wdym by this? It used to support shared dependencies, right? (Or better, that was almost the only thing it would support before)

The whole logic does not visit transitive shared imports to mark classes as used.

Ah for transitive dependencies you mean. Ok I see.

SHould we move this to 1.3 @FroMage ?

Well, I should finish it, let's keep it.


Example CSS differs from dev CSS

Pages appear with different formatting depending on Bootstrap 4 CSS URL used.
ie. The page at https://v4-alpha.getbootstrap.com/examples/jumbotron/ (which uses https://v4-alpha.getbootstrap.com/dist/css/bootstrap.min.css) appears as it should).
But, when I use the same markup with CSS https://cdn.rawgit.com/twbs/bootstrap/v4-dev/dist/css/bootstrap.css, the jumbotron has far more padding and font tracking is too spacious, for example.
Which should I use? The one on v4-alpha looks right(er).

Yes, that's to be expected. https://v4-alpha.getbootstrap.com uses the latest tagged release (v4.0.0-alpha.2), whereas the v4-dev branch in git is the bleeding-edge code which will eventually result in v4.0.0-alpha.3.
v4-dev is the absolute latest version of the code, but if you use it, you'll need to refer to the local docs instead of the hosted docs (https://v4-alpha.getbootstrap.com), since the hosted docs are for a slightly older version of the code.


Don't link runtime compatibility library in pure Clang targets.

apple/swift#25030 introduces a compatibility library that can be statically linked into binaries
in order to back-deploy runtime fixes and new features to OSes that shipped with older Swift
runtimes. This library depends on the Swift runtime being linked into the executable, so it will
cause link errors for pure Clang products (and even if it didn't, it would be a waste of code
size). When building a product without any Swift in it, ask Swift to drive the linker without
introducing any runtime compatibility libraries (and shake out a few other unnecessary linker
flags while we're here).
rdar://problem/50057445

Please test with following pull request:
https://github.com/apple/swift/pull/25030
@swift-ci Please test

@swift-ci Please smoke test

Please test with following pull request:
apple/swift#25030
@swift-ci Please smoke test

@aciidb0mb3r This look OK for now?

Yep, this looks good!


Add fedora package manager support

Hi @mierak first of all thanks for creating this awesome package! Truly the spiritual successor to ncmpcpp with album artwork we were all waiting for :1st_place_medal:
I run fedora, and prefer installing system packages through the package manager rather than rust crates. I tried adding the following PR to a popular COPR repository that has lots of useful wayland-related utilities but the code is not functional and the maintainer is not interested in helping out. So I thought I would ask the creator of the package directly.
Would you be willing to package your rmpc for fedora? Ideally through the package manager or alternatively through a COPR that can track the future changes?
All best,
Tom

Hi, thank you for your kind words!
I would be more than happy to have rmpc available for Fedora(and other systems for that matter), but I do not think I am the right person to maintain such package since I personally use Arch and never touched Fedora itself.
I can help with getting rmpc to build if that is an issue though.


store: Select specific attributes for query_window_one_entity

The 'select by specific attributes' code had overlooked one place where we do a select *

I ran a query comparison test of this, and it showed no differences except for the ones caused by issue #5359


Generate source map

Coverage remained the same at 90.556% when pulling 8647a64d634602b2c6756af5cc0cbf8384c40fcb on RubenVerborgh:feature/source-map into b4c81187d91a7650d705d575fe72f2032baa1146 on solid:master.

Ah, I hadn't seen this. Thanks!


Saving error

I'm running it as Administrator.
Save As works fine, but simple Save returns following error:

Error: Missing a required parameter.

Specifically: saveAs

	---- C:\Users\acer\Documents\GitHub\AutoHotkey\GeekDude\CodeQuickTester\lib\CQT.ahk
	090: }
	090: {
▶	090: Return  this.Save()
	090: }
	090: {

What version of the code are you running?

Hey, sorry for the inconvenience.
I don't know what went wrong last time, today it is working.


Fix grid widget warning msg being off-screen

Fix for http://manage.dimagi.com/default.asp?223603.
This definitely fixes the problem, but I'm a little concerned by what it might break, since I can't figure out what the reason for having that code in there was in the first place. I don't think this was actually written by any of us, so I'm inclined to make the change unless anyone knows its purpose.
Before:

After:

I agree with your concern about the view.
It is likely laid out as a fixed size due to odd implementations of how it grows. I think we should add the grid view to our regression test plan and come up with a representative usage (IE: a 3x3 grid of images or something) that fits our expectation of how it is used so we can have a gold standard to compare changes against.
Maybe Jeremy has an example that could work for that? I think he uses it quite a bit.

@ctsims Added a question to the QA app and discovered that this does cause an issue if you want your icons to go onto a 2nd row. Really struggling with what's causing it though, would be good to show you when you have a few minutes.


Suggestion: % chance of bonk sound playing

to make it slightly less obnoxious but funny, how about an option to change the likelyhood of the sound effect playing when bonking?
And maybe an option to scale it based on the speed when crashing, high speed = high likelyhood?

Yeah that can be done, I'll put it in the next update :)


Change lists to use git-style shell paging

This change would allow the list commands to have paged results (like git log, or git log | more), and eliminate the need for a default --limit argument.
Still need to decide whether this should be used for other types of output (graphs, for instance).

This would be amazing! At the moment I hacked it using the following:
function fla {
  command friends list activities --limit=10000 $@ | less -R
}

Yeah agreed that it's much better default behavior. At the moment I'm just waiting for my tty-pager PR to be merged and then I'll add this feature here.

@andypearson I've got a proof-of-concept branch out (less-is-more). It's a little messy (in particular I don't love how some Introvert methods return data and others print) but it works. All of the graph and list commands now have their output paged.
I'd love to hear what you think. In particular:

Are there paged commands that should not be paged?
Are there non-paged commands that should be paged?
Is it annoying to no longer have --limit options for list activities?
Is it annoying to no longer have --limit options for list favorite friends and list favorite locations?
Do you notice a performance impact to the paged commands?

Sheesh, 22 days. Sorry it's taken me so long to reply.
Running bundle exec friends --filename ~/Dropbox/Friends/friends.md list activities from the less-is-more branch I'm seeing a lot of iffy looking colour codes:
*snip*
ESC[1m2017-02-22ESC[0m: Dinner at ESC[1;33mRed Squirrel EmporiumESC[0m with ESC[1;35mRachel ClarkeESC[0m
*snip*

I use bash in iTerm2, if that makes any difference?

@andypearson interesting, thanks for the info. Would you mind pasting the output of this command?
echo "GIT_PAGER: $GIT_PAGER\nPAGER: $PAGER\ncore.pager: `git config --get-all core.pager`\nless: `which less`\nmore: `which more`\ncat: `which cat`\npager: `which pager`"

The newlines didn't work, so output looks like:
23:21 $ echo "GIT_PAGER: $GIT_PAGER\nPAGER: $PAGER\ncore.pager: `git config --get-all core.pager`\nless: `which less`\nmore: `which more`\ncat: `which cat`\npager: `which pager`"
GIT_PAGER: \nPAGER: \ncore.pager: \nless: /usr/bin/less\nmore: /usr/bin/more\ncat: /bin/cat\npager:

Interesting, thanks. I think I understand the problem. Can you see if this produces correct-looking output?
PAGER='less -R' bundle exec bin/friends --filename ~/Dropbox/Friends/friends.md list activities

@JacobEvelyn yup, that does the trick!

@andypearson it's been a long time coming, but I finally shipped this feature in version 0.40. Let me know how it works for you! Also, note that you can customize which pager is used: https://github.com/JacobEvelyn/friends#a-note-on-output

Oh cool! I'll give it a shot as soon as I can :)
(And, once again, thanks for this awesome bit of kit, my friends.md is currently sitting at a cool ~1200 lines).
12:56 ~/Dropbox/Friends ⌔ 2.4.2p198 $ fst
Total activities: 684
Total friends: 238
Total locations: 256
Total notes: 0
Total tags: 36
Total time elapsed: 948 days


Creating/updating sub-tasks dynamically

Hi,
I have a task that's made up of 1000 smaller jobs, each taking between 10ms and 1s, which are run in parallel with async.parallelLimit(cpuCount). I'd like to show the user what's happening.
For now I'm using an Observable with a multi-line renderer. The Observable outputs the names of all the jobs currently running:
⠧ My task
    Processing job A       \
    Processing job C        \     this is the full
    Processing job E        /     output of the observable
    Processing job F       /

This works great for TTY terminals, however in text-only it's very confusing as it renders the whole status every time. For example when job C finishes, it outputs the whole 4 lines to stdout again and it's hard to tell what job just finished/started.
Instead I'd like to use sub-tasks, for example:
> My task
   ⠧ Processing job A       \
   ⠧ Processing job C        \     each a proper Listr task
   ⠧ Processing job E        /     over a Promise that will resolve when finished
   ⠧ Processing job F       /

Then in text mode it would show this, which is great for troubleshooting:
09:12:45 Processing job B [completed]
09:12:47 Processing job E [started]

The only challenge is that I can't seem to add or delete sub tasks dynamically. The reason it must be dynamically added/removed is because there could be 1000 jobs, and I don't even know which order they will be executed in since that's controlled by async.parallelLimit.
What's your recommendation?

This really depends on the use case. If inside My task function, all the jobs are known, I believe this might be possible in combination with the enabled task property. You could then show/hide the tasks based on the status. If the task is still queued for instance, or if the job is finished, you could hide it, if it's unqueued and pending, you could show it.

Thanks that's interesting, I'll have a look at toggling the enabled property dynamically. In my case I do know all the jobs in advance, just not the order in which they will be picked up.

Fully understand! Thanks already for creating this great package. I've started updating https://github.com/thumbsup/thumbsup to use listr for its CLI.

I've started looking at the "enabled" suggestion, but I couldn't get it to work since dynamically setting enabled isn't compatible with concurrent. In fact, I think I need something similar to https://github.com/SamVerschueren/listr/issues/53 (only rendering running tasks).
I've implemented this locally with a really small change: a new optional visible() method at the task level that defaults to visible = () => this.isEnabled().
const task = {
  title: 'photo-1466972618291-13e16a49f5aa2.jpg',
  visible = () => this.isPending(),
  task: () => /* ... */
}

I then updated my renderer to use that:
✔ Updating database
✔ Creating model
❯ Processing media
   ⠸ photo-1466972618291-13e16a49f5aa2.jpg
   ⠹ photo-1467307983825-619715426c702.jpg
   ⠹ photo-1467663906983-81383d4802ef2.jpg
  Cleaning up
  Creating website

which the corresponding non-TTY output which is perfect:
[19:32:59] photo-1429216967620-ece20ff3a5f92.jpg [completed]
[19:32:59] photo-1431578409060-9aad91ba5f792.jpg [started]
[19:32:59] photo-1428940253195-53483a1de2e6.jpg [completed]
[19:32:59] photo-1431578409060-9aad91ba5f792.jpg [started]
[19:32:59] photo-1429216967620-ece20ff3a5f92.jpg [completed]
[19:32:59] photo-1431794062232-2a99a5431c6c2.jpg [started]
[19:32:59] photo-1431578409060-9aad91ba5f792.jpg [completed]

What do you think? I think it's quite powerful to allow the user to define at the task level if it should be rendered or not, and is only a couple lines change.
Note: simply using isPending() in the renderer is not enough, since it would apply to all tasks, not just these particular jobs.

Thinking about it, what I'm really after is the same as #53.
In the meantime, I've setup a small package that fits my needs: https://github.com/thumbsup/listr-task-queue. The main downside is that it has to take over the orchestration from Listr, so I'm keen to stop using it as soon as another option is available 😄


Remove Jonathan

Removing Jonathan as he takes on a new role within core engineering (yay for him!)

  This is the expected behavior of the build system.

OPS Build status updates of commit 9a24017:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/jonathan-giles.yml
:white_check_mark:Succeeded

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/jonathan-giles.png
:white_check_mark:Succeeded

advocates/toc.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Version 0.8

升级到 v0.8.0 详情见 #36 ；Close #36

Coverage decreased (-4.5%) to 94.132% when pulling f435cb4a395190fa6110840de319684386294c80 on dev into 21ccb36c7595e0d2ceddc03f3a1eb425b8c3fca2 on master.

Coverage decreased (-4.5%) to 94.132% when pulling f435cb4a395190fa6110840de319684386294c80 on dev into 21ccb36c7595e0d2ceddc03f3a1eb425b8c3fca2 on master.


Typescript Instantiation Expressions are failing

Type: Bug

Attempt to use the Instantiation Expressions in VSCode typescript language

function makeBox<T>(value: T){
  return {value};
}

const makeStringBox = makeBox<string>;
const stringBox = makeStringBox('abc');

Observe Red squiggly lines that shouldn't be there.

VS Code version: Code - Insiders 1.70.0-insider (e9bda7aa4ff76648cfccc1a7bde465443803da71, 2022-08-02T16:56:25.649Z)
OS version: Windows_NT x64 10.0.19044
Modes:

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (16 x 3600)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.92GB (17.88GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none
A/B Experiments
vsliv695:30137379
vsins829:30139715
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30422396
pythontb:30258533
pythonptprofiler:30281269
vsdfh931:30280409
vshan820:30294714
pythondataviewer:30285072
vscod805:30301674
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
pythonvs932:30404738
wslgetstarted:30449409
vscscmwlcmt:30465136
cppdebug:30492333
vscaac:30438845
pylanb8912:30522163
vsclangdf:30492506
c4g48928:30535728

I've had this issue with both no npm packages installed. With typescript installed only. And with typescript and a tsconfig.json file.
Note: It is incredibly inconsistent. Sometimes it doesn't happen. Other times changing from the built-in version of typescript to the local version fixes it, sometimes just waiting fixes it. Until you change the code at all (adding/removing whitespace for example) and then it comes back. Installing a different version of typescript removes the error until you change the code as well.
I believe that this is a VSCode centric issue and not a Typescript issue for 2 reasons.

Running npx tsc builds the package just fine without any issues from type errors.
As seen in this comment, the typescript playground doesn't show any errors with this. https://github.com/microsoft/TypeScript/pull/47607#issuecomment-1191409426 TS Playground

What TS version is reported if you hover over TS language details in status bar?
Built-in TS version in VS Code insiders is 4.7.3 which doesn't report error in this case.

I've tested it with the built in 4.7.3, local 4.7.4, 4.7.3, 4.7.2, and 4.8-beta

To show what I mean by the inconsistency with this bug. Randomly, it won't complain about the error until you modify the code, in which case it'll realize that it forgot to complain.
https://user-images.githubusercontent.com/19843782/182628692-1d72352c-ceba-4c94-ba62-30e196e2be8c.mp4
The really weird thing about it is that the typescript language server both knows its fine and reports that error. For example, you can see that the type of makeStringBox is correct:

In addition to that, it appears that running the "Typescript: Reload Project" command fixes it until you change the code.


Previously working RAG pipeline stopped working - cannot import name 'can_be_positional' from 'pydantic._internal._utils'

I've been successfully running a lanchain RAG pipeline since August 2024, but it stopped working a couple weeks ago, also there was no code changes. I did not notice immediately as it's not used a lot, and therefore cannot relate it to a specific open-webui, langchain, or pydantic update.
What is weird is that it runs from an interactive python shell in the same environment, but does not work when loaded from open-webui.
My repo is public and the full code for the pipeline is available here: https://github.com/marvinpac-it/ask-hr-policies-open-webui/blob/master/ask_hr_policies_pipeline.py
When I check the logs of the pipeline pod, I'm getting the following:
olivier@SINGLE-HOST-DOCKER:~/k8s/open-webui$ k logs open-webui-pipelines-769d89bc96-crwrt | tail
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

[notice] A new release of pip is available: 24.0 -> 24.3.1
[notice] To update, run: pip install --upgrade pip
Error loading module: ask_hr_policies_pipeline
cannot import name 'can_be_positional' from 'pydantic._internal._utils' (/usr/local/lib/python3.11/site-packages/pydantic/_internal/_utils.py)
WARNING:root:No Pipeline class found in ask_hr_policies_pipeline
INFO:     <IP_ADDRESS>:37564 - "POST /pipelines/upload HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:46070 - "GET /pipelines HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:46074 - "GET /models HTTP/1.1" 200 OK

I tried to exec the code directly inside the pipelines pod, hoping it would help me get better debug messages, but when I do that it runs perfectly well, as can be seen in the following session:
olivier@SINGLE-HOST-DOCKER:~/k8s/open-webui$ k exec -it open-webui-pipelines-769d89bc96-crwrt -- bash
root@open-webui-pipelines-769d89bc96-crwrt:/app# cd pipelines/
root@open-webui-pipelines-769d89bc96-crwrt:/app/pipelines# python
Python 3.11.10 (main, Nov 12 2024, 02:25:24) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from failed.ask_hr_policies_pipeline import Pipeline
>>> p = Pipeline()
>>> import asyncio
>>> asyncio.run(p.on_startup())
on_startup:failed.ask_hr_policies_pipeline
⚠ It looks like you upgraded from a version below 0.6 and could benefit from vacuuming your database. Run chromadb utils vacuum --help for more information.
>>> result = p.pipe("What is the vacation policy?", "", [], {})
>>> for r in result:
...   r
...
pipe:failed.ask_hr_policies_pipeline
''
'The'
' vacation'
' policy'
' states'
' that'
' employees'
' are'
' entitled'
' to'
' '
'20'
' working'
' days'
' of'
' vacation'
' per'
' calendar'
' year'
--- stripped for sake of space ---

I deployed open-webui and pipelines using the open-webui helm chart from the helm.openwebui.com repo. I'm currently running the latest version.
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: open-webui

helmCharts:
- name: open-webui
  repo: https://helm.openwebui.com/
  version: "4.1.0"
  releaseName: open-webui
  namespace: open-webui
  valuesFile: open-webui-values.yaml

resources:
- open-webui-namespace.yaml
- apis-sealed-secret.yaml
- chromadb-pvc.yaml
- langfuse-sealed-secret.yaml

The pipeline is defined in the values file of the helm chart:
pipelines:
  extraEnvVars:
    - name: OPENAI_API_KEY
      valueFrom:
        secretKeyRef:
          name: openai-config
          key: openai-key
    - name: PIPELINES_URLS
      value: "https://github.com/marvinpac-it/ask-hr-policies-open-webui/blob/master/ask_hr_policies_pipeline.py"
    - name: LANGFUSE_URL
      valueFrom:
        secretKeyRef:

Any help troubleshooting this further would be really appreciated.

What is your Pydantic version? I set mine to 2.8.2 and the error went away.
# pip list | grep pydantic
pydantic                                 2.8.2
pydantic_core                            2.20.1


don't generate trailing whitespaces

The generated python code contains empty lines consisting of spaces followed by \n, which upsets pylint (trailing whitespaces) - see attached image.
The modification replaces these with a single \n.

Thanks. I need to look into this and check whether it would create issues with "keep user code" or something else. Should happen in the next days.

Perfect, btw. i have keep user code turned on and it seems to work well.

Thanks. Merged into master and test cases updated.


pulseaudio: 13.0 -> 14.0

Motivation for this change
https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/14.0/
Things done

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

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

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)

enlightenment
mpd
plasma5
xfce

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Reading through the changelog, this might warrant a release notes entry, linking to the changelog.
Also, they have a meson build system now, which we'll want/need to switch to in 15.0

Yeah, I've avoided making this PR also switch to meson because of the issue mentioned in the release notes (it'll forget user preferences: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1062)

Had problems running the tests against the staging branch, but ran them against master with the commit cherry-picked:
[lukegb@whitby:~/nixpkgs-pa14]$ nix-build nixos/tests/{enlightenment,plasma5,xfce,mpd}.nix
trace: warning: The option `services.xserver.displayManager.lightdm.autoLogin.user' defined in `<unknown-file>' has been renamed to `services.xserver.displayManager.autoLogin.user'.
trace: warning: The option `services.xserver.displayManager.lightdm.autoLogin.enable' defined in `<unknown-file>' has been renamed to `services.xserver.displayManager.autoLogin.enable'.
/nix/store/wqm8irhbf2l2k7xkp5i6isg60dmibh9k-vm-test-run-enlightenment
/nix/store/inv4d1ldgivlrk76lbk62gcbgs4gpr7j-vm-test-run-plasma5
/nix/store/qwpbdl0xyk3bxq1y0nl0zybaiv3yx601-vm-test-run-xfce
/nix/store/z68c3y656w7l1c9fwwccih0yag5m8ngx-vm-test-run-mpd

Rebased onto staging again to pull in 31dfbca2d728e6dccd7c6293e36964e62c0ca8de.

[lukegb@whitby:~/nixpkgs-pa14]$ git describe
18.09-beta-104084-gd29428523ee

[lukegb@whitby:~/nixpkgs-pa14]$ nix-build nixos/tests/{enlightenment,plasma5,xfce,mpd}.nix
trace: warning: The option `services.xserver.displayManager.lightdm.autoLogin.user' defined in `<unknown-file>' has been renamed to `services.xserver.displayManager.autoLogin.user'.
trace: warning: The option `services.xserver.displayManager.lightdm.autoLogin.enable' defined in `<unknown-file>' has been renamed to `services.xserver.displayManager.autoLogin.enable'.
/nix/store/z6g8jq4s1ia7pxl5mpmr6d90vbyh19c9-vm-test-run-enlightenment
/nix/store/k1ssn9yys91xs1x168zj380wjva2c195-vm-test-run-plasma5
/nix/store/gg0raf7w1zj36d504ga8aj97vy2jhyda-vm-test-run-xfce
/nix/store/j9vvjiw8sfl477pdndn8y1dca03d0267-vm-test-run-mpd

Running this on my system:
[lukegb@porcorosso:~]$ pulseaudio --version
pulseaudio 14.0-rebootstrapped

Audio still seems to work, so that's a +

closes #105774


[Suggestion] Mob white/blacklist

Heya,
really liking this mod, having a low-tech way of capturing animals is great. I'm using it in combination with terrafirmacraft that adds larger animals such as black bears, that i would rather not be able to pick up with the bags.
Would it be possible to get a whitelist or blacklist of which animals are allowed to be captured?
Cheers,
SC

Sure thing!

Thanks a lot! :D


ran go mod tidy && go mod vendor, re-ran protoc for latest version

Part of #141, I want to make this a separate PR because it can be merged independently of the rest of Aditya's changes. This way when the GetLightdInfo RPC is added (which requires re-running protoc) the diff won't be so large. There should be no functional changes.
In the top-level directory, I ran:
$ go mod tidy && go mod vendor

which modified go.sum and go.mod, and updated to the vendor directory.
Then I followed the instructions here: https://github.com/golang/protobuf (to install protoc) and ran the following:
$ cd walletrpc/
$ protoc *.proto --go_out=plugins=grpc:.

This updated compact_formats.pb.go and service.pb.go. I did some basic testing.

Looks good to me!


Performance question

Full disclosure, I wrote my own Nats client a while back. But was wondering how AlterNats would perform vs my own implementation.
So I tried a simple example when looking at the performance of AlterNats and was wondering what I'm doing wrong here:
using AlterNats;
using System.Diagnostics;

namespace SimpleTest;

class Program
{
    static async Task Main(string[] args)
    {

        var cancellation = new CancellationTokenSource();

        var reader = Task.Run(() => ReaderText(cancellation.Token), CancellationToken.None);
        var writer = Task.Run(() => WriterText(cancellation.Token), CancellationToken.None);

        Console.ReadKey();

        cancellation.Cancel();

        try
        {
            await reader;
        }
        catch
        {
            // Don't care
        }

        try
        {
            await writer;
        }
        catch
        {
            // Don't care
        }
    }

    static async Task WriterText(CancellationToken cancellationToken)
    {
        await using var conn = new NatsConnection();
        var key = new NatsKey("HELLO");
        while (!cancellationToken.IsCancellationRequested)
        {
            await conn.PublishAsync(key, "HELLO WORLD");
        }
    }

    static async Task ReaderText(CancellationToken cancellationToken)
    {
        await using var conn = new NatsConnection();
        var history = new Queue<(int count, long time)>();
        var counter = 0;
        var prev = 0;
        var watch = Stopwatch.StartNew();

        using var subscription = await conn.SubscribeAsync<string>("HELLO", text =>
        {
            counter++;
            if (counter % 100_000 != 0) return;
            watch.Stop();
            history.Enqueue((counter - prev, watch.ElapsedMilliseconds));
            prev = counter;
            if (history.Count > 10) history.Dequeue();

            var count = history.Sum(h => h.count);
            var time = history.Sum(h => h.time);

            Console.WriteLine($"{text} - {count / (double)time * 1000}");
            watch = Stopwatch.StartNew();
        });

        await Task.Delay(TimeSpan.FromHours(1), cancellationToken);
    }
}

On my computer this gets around 28k messages per second [release build]. This makes me wonder what I'm doing wrong. It helped when I made the reader use a different connection from the writer, but not a significant performance bump.
I'm guessing publishing a batch would be faster, but that does require the sender to be more complex (as it will need to add support for batching).
Note the above example gets around 665k messages per second using my AsyncNats [ https://github.com/80dB/AsyncNats ] , which makes me wonder if I'm doing something wrong. As some of the idea's in your implementation are much nicer.

Maybe try using PostPublish instead of PublishAsync
I guess that would align better with the behavior you had in mind.
PublishAsync will await on network.

After changing from PublishAsync to PostPublish, the performance was nearly identical. Except PostPublish doesn't seem to have any buffer limiting?

I've ran your example @80dB.
With this loop I get around 30k/s as you mentioned
while (!cancellationToken.IsCancellationRequested)
     await conn.PublishAsync(key, "HELLO WORLD");

With this one I get >1M/s
while (!cancellationToken.IsCancellationRequested)
     conn.PostPublish(key, "HELLO WORLD");

So I wonder what might be happening on your end.
I used a console app on dotnet 6, Release build.

Ssingle request, PublishAsync each time, would greatly affect the benchmark because no automatic pipelining would be used at all.
For practical purposes, I believe that pipelining will work depending on the number of simultaneous accesses at the time, etc., since the web server handles multiple requests at the same time.
All messages are retained by UnboundedChannel.
https://github.com/Cysharp/AlterNats/blob/a575eae/src/AlterNats/NatsConnection.cs#L32
However, the network buffer itself is limited by NatsOptions.WriterBufferSize.
https://github.com/Cysharp/AlterNats/blob/master/src/AlterNats/NatsPipeliningWriteProtocolProcessor.cs#L113
I am not considering whether to set a limit on the number of messages.

@israellot as I mentioned, PostPublish does get me equal performance (1M/s is impressive, I was getting around 720k-750k/s running on Windows with a 12900k CPU), but have you checked memory usage while running with PostPublish?  It rapidly increases to a point where it just OOM's .

It seems easy to change the behavior to make them wait if overflow by using BoundedChannel and add PostPublishAsync method, I'll think about that.

@israellot as I mentioned, PostPublish does get me equal performance (1M/s is impressive, I was getting around 720k-750k/s running on Windows with a 12900k CPU), but have you checked memory usage while running with PostPublish? It rapidly increases to a point where it just OOM's .

Sorry, I misread your reply. You are correct, memory does skyrocket.

blogged about cancellation and performance
https://neuecc.medium.com/patterns-practices-for-efficiently-handling-c-async-await-cancel-processing-and-timeouts-b419ce5f69a4


Use dropdown in table with overflow-x-auto

I would like to use a dropdown on each row in a table. However, a horizontal scroll bar appears and some space is added at the end of the table.
I've tried https://github.com/saadeghi/daisyui/issues/430 but I would like to keep the horizontal overflowing of the table. When removing overflow-x-auto, the scroll is scoped to the entire page, which is not what I want.
I also tried https://github.com/saadeghi/daisyui/issues/444, https://github.com/saadeghi/daisyui/issues/402 without success
Tailwind playground: https://play.tailwindcss.com/qM6WcyrH1e?size=540x720
Here is an example of what I want to achieve: https://preview.keenthemes.com/seven-html-pro/?page=apps/ecommerce/catalog/products

Unfortunately I don't have a solution for this.
On one hand table needs a wrapper with overflow so the content fit in mobile. On the other hand when it has an overflow everything inside (including the dropdown) gets cropped.

Thanks for your reply!
I'll change my design to avoid using dropdown in a table then. Let me know if you find a solution 😊


UnexpectedQuit when upload/download/copy/delete file/directory

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.32.1
Regression From
No response
Architecture
i86
Storage Explorer Build Number
No response
Platform
All
OS Version
No response
Bug Description
UnexpectedQuit when upload/download/copy/delete file/directory
and there is no log file in ~/.azcopy

Steps to Reproduce

upload/download/copy/delete file/directory

Actual Experience
UnexpectedQuit
Expected Experience
No response
Additional Context
No response

@LangYuanzh can you try running the same command using the AzCopy CLI directly? You can get a copy of the command by clicking on the "Copy AzCopy Command to Clipboard" action, and you download AzCopy CLI from here: https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10#download-azcopy

@LangYuanzh can you try running the same command using the AzCopy CLI directly? You can get a copy of the command by clicking on the "Copy AzCopy Command to Clipboard" action, and you download AzCopy CLI from here: https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10#download-azcopy

It seems to be an directory permission issue. The explorer did't has the write permission of /Users/$User/.azcopy because owner of the directory is root.
I changed the owner of /Users/$User/.azcopy and it successed.

@LangYuanzh can you try running the same command using the AzCopy CLI directly? You can get a copy of the command by clicking on the "Copy AzCopy Command to Clipboard" action, and you download AzCopy CLI from here: https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azcopy-v10#download-azcopy

It seems to be an directory permission issue. The explorer did't has the write permission of /Users/$User/.azcopy because owner of the directory is root. I changed the owner of /Users/$User/.azcopy and it successed.

If the explorer throw more detail of the specific error will be better.

If the explorer throw more detail of the specific error will be better.

In this case, it is unfortunately AzCopy that is doing the (lack of) error throwing. We'll make them aware of this though.


Improve :greedy strategy in function compute_rp_partition

What and Why
The :greedy strategy is constructed in a way that it takes the largest breakpoint from 1. This results in a number of partitions.
There may be other starting points, e.g., the end or somewhere in the middle, which may result in different number of partitions. Since the number of partitions directly influences the number of constraints, it may be useful to improve this strategy. For example, we can use the end as the starting point, and select the one with the lowest number of partitions.
Also good to know that for "normal" user cases we expect, i.e., with evenly distributed partitions, there is no difference for starting from 1 or the end.
Possible Drawbacks
No response
Related Issues
#344

This only applies to exotic resolution cases, maybe a Masters student can research this, but application may be limited.


bytesize transcript smRNAseq

I think this is good, I need a little bit more time to read it completely, but I will do in the next three days. thanks!

Thank you Lorena!


experiment super pairs background is only 81px and not 100 like the rest

The experiments super pairs background is only 81px and not 100px like the rest of the cards in the experiments

I don't understand which background you are referring to, can you send a screenshot?

@lochyj sorry but I keep on not understanding where the issue is... can you highlight it or explain better what the issue is?

Closing since author didn't reply


Simpler way ?

Could we have another method that calculates this internally ?
const diff = xValueExperimental.map((experimental) => {
  return xValuePredicted.map((predicted) => {
    return Math.abs(predicted - experimental);
  });
});

I don't know about a correct name but it would be something like:
abcd(experimental, predicted, {})
And one of the options could be a callback like
distance: (a,b) => Math.abs(a-b)

There is a PR on ml-spectra-processing adding the function xCostMatrix with it is possible to generate a cost matrix, it accepts a function as an option to generate the cost matrix as you want.
So with this we will have
import { xcostMatrix } from 'ml-spectra-processing';

const diff = xCostMatrix(experimental, predicted, {
   fct: (a, b) => Math.abs(a - b)
});

by default the function used by xCostMatrix is the absolute value of the difference


Unable to make the library work in Android using Expo managed workflow/Expo Go app

Hi!
I saw the release announcement today on Twitter about this library. I think what you folks are doing with this is awesome! Thank you!
I recently tried testing it on a new project with Expo managed workflow using Expo Go client app. It works fine on iOS but ran into an issue that requires react-native-ama to be linked on Android (also running my project in Expo Go app on an Android physical device).
Here is the error trace:
Error: The package 'react-native-ama' doesn't seem to be linked. Make sure:

- You rebuilt the app after installing the package
- You are not using Expo managed workflow

This error is located at:
    in AMAProvider (created by App)
    in App (created by ExpoRoot)
    in ExpoRoot
    in RCTView (created by View)
    in View (created by AppContainer)
    in RCTView (created by View)
    in View (created by AppContainer)
    in AppContainer
    in main(RootComponent)
at node_modules/react-native/Libraries/Core/ExceptionsManager.js:95:4 in reportException
at node_modules/react-native/Libraries/Core/ExceptionsManager.js:141:19 in handleException
at node_modules/react-native/Libraries/Core/ReactFiberErrorDialog.js:52:4 in showErrorDialog
at node_modules/react-native/Libraries/ReactNative/renderApplication.js:76:4 in renderApplication
at node_modules/react-native/Libraries/ReactNative/AppRegistry.js:119:25 in runnables.appKey.run
at node_modules/react-native/Libraries/ReactNative/AppRegistry.js:213:4 in runApplication

Since there was no extra configuration required to make it work for iOS or Android, as not mentioned the docs), I assumed it might work out of the box. I was wondering if you folks have a clue or can confirm that native linking is required to make it work on Android?
Please, feel free to disregard this issue if it's out of scope and apologies for opening the first issue 😅

Sure, I'll try to add support for Expo ASAP

Thank you so much @ceceppa 🙏

Hi @amandeepmittal,
Sorry for the delay, but unfortunately is not possible to use this library with Expo Go.
This is because Expo Go does not allow you to add custom native code, as they specify in their documentation: https://docs.expo.dev/workflow/customizing/.
The only way you can use this library with Expo is by using the bare workflow: https://docs.expo.dev/introduction/managed-vs-bare/

Thanks a lot for looking into @ceceppa 🙌 Appreciate your effort!
I guess it could also be used with Development builds (since they allow configuring custom native code) but not sure (will have to test it myself). Anyways, will share my findings.
Thank you so much and once again 💜


Sync from apache/kafka (8 August 2019) and upgrade avro to 1.9.0

The avro upgrade was needed to fix the following error during
':support-metrics-client:generateAvro':

Caused by: org.apache.velocity.exception.MethodInvocationException: Variable $velocityCount has not been set at ...

Conflicts:

gradle.properties -> trivial fix, scalaVersion is next to version, which
is different in ccs kafka
gradle/dependencies.gradle -> removed unused httpclient and httpmime in
the versions array since they were unused and were the reason for the
divergence with upstream.

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Flaky tests that failed:

kafka.admin.ReassignPartitionsClusterTest.testHwAfterPartitionReassignment
kafka.api.AdminClientIntegrationTest.testIncrementalAlterConfigsForLog4jLogLevels
kafka.api.AdminClientIntegrationTest.testIncrementalAlterConfigsForLog4jLogLevelsCanResetLoggerToCurrentRoot
kafka.api.PlaintextConsumerTest.testFetchInvalidOffset
kafka.api.SaslGssapiSslEndToEndAuthorizationTest.testNoDescribeProduceOrConsumeWithoutTopicDescribeAcl
kafka.api.SaslPlainSslEndToEndAuthorizationTest.testNoDescribeProduceOrConsumeWithoutTopicDescribeAcl

Restarted the build.

More flaky failures (subset of the previous ones):

kafka.api.AdminClientIntegrationTest.testIncrementalAlterConfigsForLog4jLogLevels
kafka.api.AdminClientIntegrationTest.testIncrementalAlterConfigsForLog4jLogLevelsCanResetLoggerToCurrentRoot
kafka.api.DelegationTokenEndToEndAuthorizationTest.testNoDescribeProduceOrConsumeWithoutTopicDescribeAcl

@stanislavkozlovski has a PR for the log4j log levels issue. There are JIRAs in Apache Kafka for the other flaky tests.

Merging to master.


Help Needed : Deploying flex with multiple Conversations Service

Hi,
Is it possible to use single flex deployment with multiple conversation services in one single workspace ?
Thanks

Hi @mster429, Flex will use the service that is configured as the default conversations service. You may create other services, but Flex will use only the default.


Typo in the readme.md fixed

It was Contributing before

It is Contributors now

Give a star to the repo. Thank u


CORE-5954: Early exit from poll when topic partitions haven't been allocated yet

This way we avoid the empty iterator.  And hopefully we'll be allocation a topic partition on the next poll

I've copied this fixed to https://github.com/corda/corda-runtime-os/pull/1635 and error is gone, but there is still problem with the status:
"virtual.node.creation.request-RPC_SENDER-virtual.node.management-RPC_SENDER-virtual.node.management-virtual.node.creation.request-11": {
    "name": {
      "componentName": "virtual.node.creation.request-RPC_SENDER-virtual.node.management",
      "instanceId": "RPC_SENDER-virtual.node.management-virtual.node.creation.request-11"
    },
    "status": "DOWN",
    "reason": "Component has been started"
  },

Is this related? If yes, is it due to wrong configuration or is there still something to be fixed here?

I've copied this fix to #1635 (locally) and error is gone, but there is still problem with the status:
"virtual.node.creation.request-RPC_SENDER-virtual.node.management-RPC_SENDER-virtual.node.management-virtual.node.creation.request-11": {
    "name": {
      "componentName": "virtual.node.creation.request-RPC_SENDER-virtual.node.management",
      "instanceId": "RPC_SENDER-virtual.node.management-virtual.node.creation.request-11"
    },
    "status": "DOWN",
    "reason": "Component has been started"
  },

Is this related? If yes, is it due to wrong configuration or is there still something to be fixed here?

That looks a bit different - it's saying that the component has been started but hasn't got to the point where it has gone UP yet. For the RPC sender, that happens when a partition is assigned to it to listen to responses. What's your deployment configuration? And how soon are you checking the status?

That looks a bit different - it's saying that the component has been started but hasn't got to the point where it has gone UP yet. For the RPC sender, that happens when a partition is assigned to it to listen to responses. What's your deployment configuration? And how soon are you checking the status?

Status is DOWN after Combined Worker is started, but I'm not familiar with that code. I just noticed that file being modified handles partitions and since status depends on partitions being assigned it might be related.

I've copied this fix to #1635 (locally) and error is gone, but there is still problem with the status:
"virtual.node.creation.request-RPC_SENDER-virtual.node.management-RPC_SENDER-virtual.node.management-virtual.node.creation.request-11": {
    "name": {
      "componentName": "virtual.node.creation.request-RPC_SENDER-virtual.node.management",
      "instanceId": "RPC_SENDER-virtual.node.management-virtual.node.creation.request-11"
    },
    "status": "DOWN",
    "reason": "Component has been started"
  },

Is this related? If yes, is it due to wrong configuration or is there still something to be fixed here?

That looks a bit different - it's saying that the component has been started but hasn't got to the point where it has gone UP yet. For the RPC sender, that happens when a partition is assigned to it to listen to responses. What's your deployment configuration? And how soon are you checking the status?

If this is combined worker then I suspect it will be down to that.


Adding Receiver - Initialization of YNCA receiver RX-477 failed

Hi,
@mvdwetering
I've succesfully added RX-473, RX-475
The RX-477 is added but fails to initialize and keeps restarting in initializing.

home-assistant_yamaha_ynca_2023-01-02T20-52-21.151Z.log

Adding the log from the post in the other thread for reference as it also contains interesting info.
home-assistant_yamaha_ynca_2023-01-02T19-55-41.700Z.log
Hmm, the response from your receiver on the INITVOLLVL command  is a bit different from from mine. While I have improved parsing to at least continue on those cases it looks I missed a spot.
I will get that fixed for upcoming release. Hopefully somewhere around the upcoming weekend.

Great, Thanks, no hurries, let met know if i need to test. thanks....
Not a bug, and as a novice, i don't seem to find anywhere how to sent a on/off/standby request to the receiver ("sent: @MAIN:PWR=Standby") trying to make a flow in node-red

Hi, @mvdwetering, Any news yet? And i still have the question how to sent command to receiver to turn it on and off (standby mode)

Great timing as I just finished the release :)
It is still marked as a prerelease as I like to run it for a day or so myself before fully releaseing it. Even though I have a lot of tests sometimes things get missed. Will make it available as a normal release probably tomorrow or the day after.

And i still have the question how to sent command to receiver to turn it on and off (standby mode)

Ow sorry, I missed that. The integration adds a service to Home Assistant for that.
You can play with the service through the Home Assistant developer tools, just search for YNCA in the sevices list.
For your example you call it like this:
service: yamaha_ynca.send_raw_ynca
data:
  raw_data: "@MAIN:PWR=Standby"
target:
  entity_id: media_player.main

I don't know if you can call that from node-red.

I made the release available it should show up in HACS on next update.

Great work! Tested 6.0, it worked right away……now to figure out how to sent commands to the receivers. Again good effort!


feature: In memory cached Ability and Authenticated Action wrapper.

Summary | Résumé
Authenticated Action
A new wrapper function that takes an async function as an argument but first ensures a session is present.  It replaces the common pattern of using authCheckAndThrow.  Similar to all the new functions introduced in the Privilege Refactor this change will be brought in incrementally.
export const AuthenticatedAction = <Input, Output>(action: (args: Input) => Promise<Output>) => {
  return async (...args: unknown[]) => {
    const session = await auth();
    if (session === null) {
      const language = await getCurrentLanguage();
      redirect(`/${language}/auth/login`);
    }
    return action(...(args as Parameters<typeof action>));
  };
};

InMemoryCache
A new Last Recently Used (LRU) cache implementation that can be used in the application.  The global ability cache is an instance of the InMemoryCache.  A regular cache like Redis could not be used to cache the ability as the ability contains properties that cannot be serialized.
export class InMemoryCache {
  private cache: Map<string, { value: unknown; expireAt: number }>;
  private defaultTTL: number;
  private maxSize: number;
  constructor(maxSize = 200, defaultTTL = 60) {
    // default TTL is 60 seconds
    this.cache = new Map();
    this.defaultTTL = defaultTTL;
    this.maxSize = maxSize;
  }

  private staticSize() {
    while (this.cache.size >= this.maxSize) {
      const iterator = this.cache.entries();
      this.cache.delete(iterator.next().value[0]);
    }
  }

  public set(key: string, value: unknown, ttl = this.defaultTTL) {
    const now = Date.now();
    // convert ttl to milliseconds
    const expireAt = now + ttl * 1000;

    this.staticSize();

    this.cache.set(key, { value, expireAt });

    setTimeout(() => {
      const val = this.cache.get(key);
      if (val && val.expireAt <= Date.now()) {
        this.cache.delete(key);
      }
    }, ttl);
  }

  public get(key: string) {
    const now = Date.now();
    const cachedItem = this.cache.get(key);

    if (cachedItem && cachedItem.expireAt > now) {
      return cachedItem.value;
    } else {
      this.cache.delete(key);
      return null;
    }
  }

  public clear() {
    this.cache.clear();
  }

  public cleanup() {
    const now = Date.now();
    for (const key in this.cache) {
      const cachedItem = this.cache.get(key);
      if (cachedItem && cachedItem.expireAt <= now) {
        this.cache.delete(key);
      }
    }
  }
}

Cached ability
The ability object can now be retrieved globally server side with the getAbility function.  The function is responsible to create and cache the ability object for a user session.  This increases performance by not computing the expensive createMongoAbility on every invocation  where ability is required.
// Maximum number of items to store in the cache: 100
// TTL for items in the cache: 1 minutes
const abilityCache = new InMemoryCache(100, 60);

export const getAbility = async (): Promise<UserAbility> => {
  const session = await auth();
  if (!session) throw new Error("No session found");
  // If the privileges are cached, we can use them as a check that no changes have been made
  // and it is safe to use the cached ability
  const cachedPrivilegesRules = await privilegeCheck(session.user.id);
  const cachedAbility = abilityCache.get(session.user.id);
  if (cachedAbility && cachedPrivilegesRules !== null) {
    logMessage.debug(`Using cached ability for user ${session.user.id}`);
    return cachedAbility as UserAbility;
  } else {
    logMessage.debug(`Creating new ability for user ${session.user.id}`);
    const ability = createAbility(session);
    abilityCache.set(session.user.id, ability);
    return ability;
  }
};

Remove requirement to pass ability to CRUD layer functions.
One of the major achievements of using a cached ability is that it removes the requirement of creating the ability at the entry point (server action) and passing it through all sub function invocations to the CRUD layer.  Fetching the ability for privileges checks is now handled directly within the privilege library when authorization helpers are called.
Previously
export const deleteForm = async (id: string) => {
  const { ability } = await authCheckAndThrow();
  await deleteTemplate(ability, id);
// ...
};

export async function deleteTemplate(
  ability: UserAbility,
  formID: string
): Promise<FormRecord | null> {
    await authorization.canDeleteForm(ability, formID);
// ...
};

Now
export const deleteForm = AuthenticatedAction( async (id: string) => {
  await deleteTemplate(id);
// ...
});

export async function deleteTemplate(
  formID: string
): Promise<FormRecord | null> {
    await authorization.canDeleteForm(formID);
// ...
};

Get current language utility helper
New utility function in i18n server lib that can provide the current user language.  Useful for creating redirects from server side.
export async function getCurrentLanguage() {
  const path = headers().get("x-path") ?? "";
  const pathLang = pathLanguageDetection(path, languages);
  const cookieLang = cookies().get("i18next")?.value;
  return pathLang || cookieLang || languages[0];
}

Updates AccessControlError to add properties to fetch user ID
Adds a method on the AccessControlError class to fetch the user ID from the current ability.  It is useful when creating Access Denied audit log events.  The logEvent function has also been updated to accept either a string or Promise<string> as the userId argument.
export class AccessControlError extends Error {
  public user: {
    id: Promise<string>;
  } = {
    id: getAbility()
      .then((ability) => ability.userID)
      .catch(() => "unauthenticated"),
  };

  constructor(message: string = "AccessControlError") {
    super(message);
    Object.setPrototypeOf(this, AccessControlError.prototype);
  }
}

Example Usage
  // Can a user view any Template
    const { user } = await authorization.canViewAllForms().catch((e) => {
      logEvent(e.user.id, { type: "Form" }, "AccessDenied", "Attempted to access All System Forms");
      throw e;
    });

Updates template lib functions and invocations
This PR implements the above functionality for the templates lib and it's subsequent invocations throughout the codebase.  Future PRs will cover the remaining libraries.
Test instructions | Instructions pour tester la modification
Ensure all template functionalities behave properly.
A user can create, update, and delete a template.
Unresolved questions / Out of scope | Questions non résolues ou hors sujet
All other libraries were out of scope for this initial implementation
Pull Request Checklist
Please complete the following items in the checklist before you request a review:

[ ] Have you completely tested the functionality of change introduced in this PR? Is the PR solving the problem it's meant to solve within the scope of the related issue?
[ ] The PR does not introduce any new issues such as failed tests, console warnings or new bugs.
[ ] If this PR adds a package have you ensured its licensed correctly and does not add additional security issues?
[ ] Is the code clean, readable and maintainable? Is it easy to understand and comprehend.
[ ] Does your code have adequate comprehensible comments? Do new functions have docstrings?
[ ] Have you modified the change log and updated any relevant documentation?
[ ] Is there adequate test coverage? Both unit tests and end-to-end tests where applicable?
[ ] If your PR is touching any UI is it accessible? Have you tested it with a screen reader? Have you tested it with automated testing tools such as axe?

Looks like you'll need a small adjustment for Next 15 to use async headers
https://nextjs.org/docs/app/api-reference/functions/headers


running concurrent scans

I have seen people posting that they are running the program more than once alongside each other and the results are appearing on the same window.
I have created multiple ptc accounts and google api keys, the results appear in the same window, but when i move the scanning location on one it stops the other from scanning (ie only one scan runs at a time no matter how many windows)
How are people solving this?
Sorry if this has been asked/solved many times,and thanks

I would also like to know about this.

agreed, i would like to add multiple accounts to make this faster

this just started for me too. i dont know why. anybody know a fix?

I use different PTC accounts but I use the same API key.  I also use a radius of 4 and scans take ~5min.

where are you changing your scanning radius?
All i have is the windows exe file.
I also run the pokemon go app that i pulled using github and running python and you set the radius in the command line.


Re-enable Windows builds

Windows builds are dropped in #6 due to https://github.com/conda-forge/staged-recipes/issues/25319. If that is resolved, then Windows builds should be added back.

This is moot - the recipe has been converted to noarch.


Wrong body generation

Hello, thank you for providing the open-source code. Recently, when I attempted to replicate it, I encountered an issue where the SMPL human body was generated correctly, but the clothed human body appeared as a square erroneously.

My running code is as follows

Has anyone encountered similar issues? Is it due to the files I downloaded or some other reason? Could someone assist me? Thank you very much.

It seems that the sifu.ckpt is not loaded. Please check if the ckpt path is correct (if the path was wrong, the model still runs).

It seems that the sifu.ckpt is not loaded. Please check if the ckpt path is correct (if the path was wrong, the model still runs).

Thank you very much for your response. The issue has been resolved, and now I can generate a complete dressed human figure.
I have another question I'd like to ask. The human figure generated by the sifu model does not include texture information. Previously, I replicated your GTA model, and the final result included textures directly. Is it the case that the sifu model only provides a mesh model of the dressed human figure, and that additional methods are required to restore texture and color information?
Looking forward to your reply.

Oh, I see how to do it now. Thank you!

It seems that the sifu.ckpt is not loaded. Please check if the ckpt path is correct (if the path was wrong, the model still runs).

Thank you very much for your response. The issue has been resolved, and now I can generate a complete dressed human figure. I have another question I'd like to ask. The human figure generated by the sifu model does not include texture information. Previously, I replicated your GTA model, and the final result included textures directly. Is it the case that the sifu model only provides a mesh model of the dressed human figure, and that additional methods are required to restore texture and color information? Looking forward to your reply.


Color of vertical divider is lighter than the horizontal divider in dark mode

This is an optical illusion.


CSS style not working

Is your feature request related to a problem? Please describe.
I am busy writing a cv project and I have done my HTML file and the Style.css but my style is not implementing on the outcome
Describe the solution you'd like:
What am I doing wrong?
Describe alternatives you've considered:
I have changed the styles and redone it. Checked google for some possible mistakes I could've made
Additional context:

*{
font-style: normal;
margin: 0;
padding: 0;
box-sizing: border-box;
list-style: none;
font-family: 'Montserrat', sans-serif;
}
body{
background: #585c68;
font-size: 14px;
line-height: 22px;
color: #555555;
}

Hi @FiefieBez
If I understand correctly you are doing some changes to the CSS but those changes are not being reflected in the screencast panel or the Microsoft Edge instance associated with the session?
If this is the case can you try this?
On the "network panel", please check the "Disable cache" checkbox, then reload the screencast view.

If this does not resolve the issue, could you please provide more details like some repro steps, operating system and version?
Thanks for the reporting the issue and for using the extension.

Thanks very much for your response
On Thu, 16 Sep 2021, 01:12 Vidal Ortega, @.***> wrote:

Hi @FiefieBez https://github.com/FiefieBez
If I understand correctly you are doing some changes to the CSS but those
changes are not being reflected in the screencast panel or the Microsoft
Edge instance associated with the session?
If this is the case can you try this?
On the "network panel", please check the "Disable cache" checkbox, then
reload the screencast view.
[image: image]
https://user-images.githubusercontent.com/43078681/133524673-3747de11-3498-4cf6-81bf-d566dd2e107e.png
If this does not resolve the issue, could you please provide more details
like some repro steps, operating system and version?
Thanks for the reporting the issue and for using the extension.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vscode-edge-devtools/issues/490#issuecomment-920453022,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVSYUVWTKSZ77OXUSDRXBOLUCER6JANCNFSM5D3U2WRQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Closing as it seems like the problem was addressed.


Fixed handling of special characters in child process paths

This PR addresses an issue where paths containing special characters, such as spaces, caused failures during the blob generation and injection processes. The fix ensures that these paths are correctly handled, preventing errors.
Details

Modified the exec call for blob generation to properly handle paths with special characters:await exec(`node --experimental-sea-config "${sea_config_path}"`);

Updated the exec call for blob injection to correctly process paths with special characters:await exec(`npx postject "${executable_path}" NODE_SEA_BLOB "${preparation_blob_path}" --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2`);

Testing

Verified that paths containing spaces and other special characters (e.g. /my projects/path/to/my/script) are now processed correctly. ✅
Ran existing tests to ensure there were no errors.

Notes
Please review the changes and run the tests to confirm the fix. Your feedback is appreciated.

@zaacksb Thanks for the pr. 😄


row helper not working with fixed width

I'm not sure if I'm doing something wrong but using the row helper with a fixed width layout doesn't seem to be working.
Setting the number of columns lower seems to increase the width of the row, not decrease it. This is the output from sass:
@include row(12);

display: block;
width: 980.0px;
margin: 0 -10px;

@include row(8);

display: block;
width: 990px;
margin: 0 -15px;

@include row(4);

display: block;
width: 1020px;
margin: 0 -30px;

Does this seem weird to anyone else?

I can confirm having similar issue with .row() mixin


Unexpected token = , while running application

Hi Team,
Found the below issue while running the application " node server.js",
***/node_modules/image-downloader/index.js:14
const downloader = (options = {}) => {
SyntaxError: Unexpected token =
Any idea ?
Greetings,
Karthee

Seems that your NodeJS is old.
You need NodeJS >=6.10.1 to use this package.


When searching description cannot filter by any values

How to reproduce

select the "Description" option under advanced search
click any filter button

notice all the spell cards disappear

closed with https://github.com/nickolusroy/spell-book/pull/11


test: coverage for mersennes31 complex extension

Currently, adds coverage for add, sub, mul and mul_2exp_u64, for complex Mersenne extensions.

Ah does sub just need to do a reduction? Yes if you'd like to work on it that'd be great!

I think certain tests could be moved to a generic suite of basic tests that work with any Field, but that can happen later, looks good for now!


Added dbDelById command

Added the dbDelById to delete any register using Id, since I had troubles deleting using keys, using Id would be a safe way to do it

Please split them up into 2 seperate pr's

@jonas747 fine!

@jonas747 done


Uncaught ReferenceError: Buffer is not defined [mocha.js:5833]

Getting this error with the latest version of the mocha.js file. I'm using the browser interface. Looks like the line that causes this error was added in eab389f3f106290e8386520a2f3b8206c18c486e. I set up a dummy app demonstrate the error. Just open up spec-runner.html and open up the developer tools. Any thoughts on how to fix this?

Thanks.  If we don't start building with browserify soon I'm gonna jump off a cliff

Seeing the same thing. Needs to be if (typeof Buffer !== 'undefined' && ...) instead of if (Buffer && ...), though I'm still trying to track down another error (failed to require "supports-color") that's downstream from that fix.

Needs to be if (typeof Buffer !== 'undefined' && ...) instead of if (Buffer && ...)

why it's matter @callmevlad ?

@a8m Browsers handle this differently than V8 in Node.js - for example, try the following in your Chrome console:
Breaks:
if (Bob) { console.info("Bob exists."); } ->  Uncaught ReferenceError: Bob is not defined
Works:
if (typeof Bob !== "undefined") { console.info("Bob exists."); }

Confirmed that this is still an issue. Updated dummy app with new mocha.js file and it's the same error, but on a different line. And @callmevlad is right, this is a browser issue. I've tested it in Chrome and Firefox and gotten the same error each time.

@callmevlad makes sense, thx.

Just added a PR for this: https://github.com/mochajs/mocha/pull/1560


WIP - GitHub Actions

This PR is in response to #63 .  This is a WIP, changes to the README are needed.
Changes to the README still need to happen for badges
Additions

python-app.yml:  Building and testing code.

Also, is it currently failing?


add ability to color text in inventory setups

as the title says, i would love to be able to color the text in my inventory setups

You're in the wrong place, the inventory setups plugin is here: https://github.com/dillydill123/inventory-setups/issues

You're in the wrong place, the inventory setups plugin is here: https://github.com/dillydill123/inventory-setups/issues

oop, ty

oop, ty


[WIP] Builder role

[x] Add builder role
[x] Registered role for new users
[x] Give the builder role to registered users when an admin accepts a new challenge
[x] Tweak setUserRole front-end logic
[x] Show builder badge
[x] Create firabase migration

[x] isAdmin: true => role: "admin".
[x] role: "registered" if NOT ACCEPTED Challenges
[x] role: "builder" if user has ACCEPTED challenges

[ ] Enhance: util, something like: isRegistered, hasBuilderPermission, hasAdminPermission
[ ] Enhance: user / role context.

@dgrcode

What do you think about 1?

They don't get a notification but they get a "bulider" badge next to their address:

Yes, I noticed the badge, but I'm not sure everybody would notice. And I also doubt they know what that means, like having access to the builder list, build list, and being able to submit new builds.

When they get the builder role, they also start seeing the "builders" and "builds" links on the navbar, which I think it makes it more obvious.


Limit the size of automaton keys in the peepmatic_fst_diff fuzz target

This should avoid timeouts caused by large keys.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=22251

:+1:


[Enhance] Add benchmark regression tools

Motivation
Add three scripts to help us to do benchmark regression.
Modification
As the title.
Add three scripts:

1-benchmark_valid.py: Check if all configs in model-index.yml are available. Using the--inference-time flag can also test the inference time of each model.
2-benchmark_test.py: Check if all accuracy numbers in configs in model-index.yml are correct. It will generate a series of folders and job scripts, use the --run flag to run all these scripts. And use the --summary flag to summarize all results.
3-benchmark_train.py: Check if all accuracy numbers in configs in model-index.yml are reproducible. It will generate a series of folders and job scripts, use the --run flag to run all these scripts. And use the --summary flag to summarize all results.

Because it uses model-index.yml, it requires https://github.com/open-mmlab/mmclassification/pull/435
Use cases (Optional)

1-benchmark_valid.py:

python .dev_scripts/benchmark_regression/1-benchmark_valid.py --inference-time

2-benchmark_test.py

python .dev_scripts/benchmark_regression/2-benchmark_test.py mm_model ~/ckpt \
    --models resnet18_b16x8_cifar10 resnet34_b16x8_cifar10 --local

Before running scripts, run the tool without the --run flag, it will provide a scripts preview to help you to check.
If you want to run it without slurm, use the --local flag.

3-benchmark_train.py

python .dev_scripts/benchmark_regression/3-benchmark_train.py mm_model --summary --save

Use the --save flag to save the summary table into a markdown file and archive all training logs to a zip file.

Checklist
Before PR:

[x] Pre-commit or other linting tools are used to fix the potential lint issues.
[x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests.
[x] The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
[x] The documentation has been modified accordingly, like docstring or example tutorials.

After PR:

[x] If the modification has potential influence on downstream or other related projects, this PR should be tested with those projects, like MMDet or MMSeg.
[x] CLA has been signed and all committers have signed the CLA in this PR.

It's more compatible for different platform. 发自 网易邮箱大师 ---- 回复的原邮件 ---- 发件人 Ma @.> 日期 2021年09月20日 18:33 收件人 @.> 抄送至<EMAIL_ADDRESS>主题 Re: [open-mmlab/mmclassification] [Enhance] Add benchmark regression tools (#447) @mzr1996 commented on this pull request. In .dev_scripts/benchmark_regression/1-benchmark_valid.py: > +        color = 'green' if valid == 'PASS' else 'red'

   row.append(f'[{color}]{valid}[/{color}]')

   if valid == 'PASS':

       row.append(str(summary['resolution']))

       if 'time_mean' in summary:

           time_mean = f"{summary['time_mean']:.2f}"

           time_std = f"{summary['time_std']:.2f}"

           row.append(f'{time_mean}\t({time_std})'.expandtabs(8))

   table.add_row(*row)

console.print(table)

+# Sample test whether the inference code is correct
+def main(args):

model_index_file = MMCLS_ROOT / 'model-index.yml'
Why do you think it's better? — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

It's more compatible for different platform. 发自 网易邮箱大师 ---- 回复的原邮件 ---- 发件人 Ma @.> 日期 2021年09月20日 18:33 收件人 @.> 抄送至<EMAIL_ADDRESS>主题 Re: [open-mmlab/mmclassification] [Enhance] Add benchmark regression tools (#447) @mzr1996 commented on this pull request. In .dev_scripts/benchmark_regression/1-benchmark_valid.py: > + color = 'green' if valid == 'PASS' else 'red' + row.append(f'[{color}]{valid}[/{color}]') + if valid == 'PASS': + row.append(str(summary['resolution'])) + if 'time_mean' in summary: + time_mean = f"{summary['time_mean']:.2f}" + time_std = f"{summary['time_std']:.2f}" + row.append(f'{time_mean}\t({time_std})'.expandtabs(8)) + table.add_row(*row) + + console.print(table) + + +# Sample test whether the inference code is correct +def main(args): + model_index_file = MMCLS_ROOT / 'model-index.yml' Why do you think it's better? — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

But I think pathlib is more platform-compatible.

It's more compatible for different platform. 发自 网易邮箱大师 ---- 回复的原邮件 ---- 发件人 Ma @.> 日期 2021年09月20日 18:33 收件人<EMAIL_ADDRESS>抄送至 _<EMAIL_ADDRESS>主题 Re: [open-mmlab/mmclassification] [Enhance] Add benchmark regression tools (#447) @mzr1996 commented on this pull request. In .dev_scripts/benchmark_regression/1-benchmark_valid.py: > + color = 'green' if valid == 'PASS' else 'red' + row.append(f'[{color}]{valid}[/{color}]') + if valid == 'PASS': + row.append(str(summary['resolution'])) + if 'time_mean' in summary: + time_mean = f"{summary['time_mean']:.2f}" + time_std = f"{summary['time_std']:.2f}" + row.append(f'{time_mean}\t({time_std})'.expandtabs(8)) + table.add_row(*row) + + console.print(table) + + +# Sample test whether the inference code is correct +def main(args): + model_index_file = MMCLS_ROOT / 'model-index.yml' Why do you think it's better? — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

But I think pathlib is more platform-compatible.

\ is used in Windows.

Yes, that's exact why pathlib is more platform-compatible. You can try it on Windows

Got it. 发自 网易邮箱大师 ---- 回复的原邮件 ---- 发件人 Ma @.> 日期 2021年09月21日 07:57 收件人 @.> 抄送至<EMAIL_ADDRESS>主题 Re: [open-mmlab/mmclassification] [Enhance] Add benchmark regression tools (#447) It's more compatible for different platform. 发自 网易邮箱大师 ---- 回复的原邮件 ---- 发件人 Ma @.> 日期 2021年09月20日 18:33 收件人 @**.> 抄送至<EMAIL_ADDRESS>主题 Re: [open-mmlab/mmclassification] [Enhance] Add benchmark regression tools (#447) @mzr1996 commented on this pull request. In .dev_scripts/benchmark_regression/1-benchmark_valid.py: > + color = 'green' if valid == 'PASS' else 'red' + row.append(f'[{color}]{valid}[/{color}]') + if valid == 'PASS': + row.append(str(summary['resolution'])) + if 'time_mean' in summary: + time_mean = f"{summary['time_mean']:.2f}" + time_std = f"{summary['time_std']:.2f}" + row.append(f'{time_mean}\t({time_std})'.expandtabs(8)) + table.add_row(*row) + + console.print(table) + + +# Sample test whether the inference code is correct +def main(args): + model_index_file = MMCLS_ROOT / 'model-index.yml' Why do you think it's better? — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. But I think pathlib is more platform-compatible. \ is used in Windows. Yes, that's exact why pathlib is more platform-compatible. You can try it on Windows — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.


Bug fix memleak in stream agg

Proposed changes
mem leak In sql：
SELECT RegionID, SUM(AdvEngineID), COUNT(*) AS c, AVG(ResolutionWidth), COUNT(DISTINCT UserID) FROM hits GROUP BY RegionID ORDER BY c DESC LIMIT 10;

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