crash when attempting to open game menu

this only happens when I have Mod Menu installed
hitting escape to open the game menu results in a crash:
minecraft 1.21
Mod Menu 11.0.1
crash report:
https://mclo.gs/A3L2KPP

Hi, I had a similar crash but turns out it was actually a different mod causing the crash, once i removed that one mod menu didn't crash my game anymore. (the mod for me causing the crash was VersionChanger)
Try removing some of your mods to find out which one is causing it.

hmm, I don't have version changer, but i do have via version, I can't test it tonight, but I'll try it out tomorrow and see how that goes.
although, if it does have to do with viaversion, then while it's a different mod to yours, it still serves a similar purpose, and I would think it would still be a modmeanu issue: some sort of incompatibility with how those mods jigger around some of the back end stuff, and still worth a look

Same crash at ModMenu v11.0.1 and v.11.0.1 https://mclo.gs/W6tqhj1

Same crash at ModMenu v11.0.1 and v.11.0.0 https://mclo.gs/W6tqhj1

Had the same crash anyone got a fix?

The same bug, If unload ModMenu, the game will run normally

finally got a chance to test, and it wasn't ViaFabricPlus (I was mistaken on which mod I was using) I still crashed when trying to open the game menu with it removed. so def something going on with ModMenu itself

Can you post a new crash log without ViaFabric?  I just want to see the same error
callback mixins.modmenu.json:MixinGameMenu

here's one from tonight, no ViaFabricPlus
https://mclo.gs/9xpgE3S

Yeah so the relevant lines are:
org.spongepowered.asm.mixin.injection.throwables.InjectionError: LVT in net/minecraft/class_433::method_20543()V has incompatible changes at opcode 239 in callback mixins.modmenu.json:MixinGameMenu from mod modmenu->@Inject::onInitWidgets(Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;Lnet/minecraft/class_7845;Lnet/minecraft/class_7845$class_7939;Lnet/minecraft/class_2561;)V.
net.minecraft.client.gui.screen.GameMenuScreen.initWidgets(GameMenuScreen.java:120)

Which I have not seen this looking at thee code at all, and the mixin should work as expected, IMO.
Perhaps something else is messing with the GameMenu that isn't Mod Menu, such as a Launcher issue.

welp, now I'm confused as heck,
I started doing a binary search to figure out which of my other mods was causing the conflict.... and now it's working perfectly.
I have ALL of the mods running that I was running when previously experiencing the crash and I am no longer crashing.
I have no idea what is going on
(advancement Info reloaded did update last night, (and I also added Replay Mod,) so maybe it was advancement info reloaded and the update fixed whatever the problem was, idek, but it's working now and my head hurts )

GG

This is caused by https://github.com/TerraformersMC/ModMenu/blob/1.21/src/main/java/com/terraformersmc/modmenu/mixin/MixinGameMenu.java#L31 when another mod's mixin causes a change to the local variables.
You should still see the error in the log, even if it doesn't crash the game.
It can be fixed by rewriting the ModMenu mixin, or by changing the priority in the other mod's mixin to make it apply later.


Add stylelint-no-unsupported-browser-features

stylelint-no-unsupported-browser-features - A stylelint plugin that checks if the CSS you're using is supported by the browsers you're targeting.

Thanks @padamczewski 👍


Add map locations, update UI for downloads, make UI conditional by user upload

Tested app with Kristina and Eric at incubator hour, made changes to fix minor errors. Also updated the radio buttons on user upload tab to be dynamic.


Pasting code in the console (powershell) provokes a 'tab' keystroke

VSCode Version: 1.11.1
OS Version: Windows 10

Steps to Reproduce:

Navigate with the console (Powershell) to a directory with more than one file
Write something in the console (anything)
Copy any text to the clipboard
Right click on the console (should paste the text)

Actual Result:
You'll get the name of the first file in the directory + your copied contents pasted. This is likely because VS Code would be interpreting the right click as Tab + Right Click (just an assumption).

Cannot repro here. @daviwil any ideas?


fix: vuln in minimatch package update minimatch version to 3.0.5

Update minimatch version to 3.0.5

:tada: This PR is included in version 2.0.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Performance regression from dom to hooks

🐛 Bug description
I noticed that performance of updating the search query became quite a bit worse when I changed from -dom to -web-hooks.
Some functions that seem responsible for pretty much all of the wait time:

escapeHits
recursiveEscape
getWidgetRenderState

🔍 Bug reproduction
Steps to reproduce the behavior:

Set up a basic React-Instantsearch with Hits and SearchBox with react-instantsearch-dom
Start typing, note the quick rendering
Switch to react-instantsearch-dom
Start typing, note the slower rendering

Sorry for the lack of demo repo, my project is currently closed source. I'll try to dive in deeper, I'll update this issue
Some findings / thoughts:

The issue scales with the amount of HitsPerPage
Even if my custom Hit component returns null, the issue is bad, so it's not really the rendering part, I think.
It may have something to do with my relatively large documents, which contains many keys (about 100 KV combos)

Live reproduction:
https://codesandbox.io/s/github/algolia/react-instantsearch/tree/master/examples/hooks
Environment

React InstantSearch Hooks version: 6.38.0
React version: 18.2.0
Browser: Firefox 108
OS: MacOS

@joepio
@Haroenv
We clearly see a big performance dump when repeating the useHits hook a large amount of time.
In our use case, we were putting useHits in every Hit sub-component so it have easy access to the sendEvent method.
However, having like 50 or 100 useHits make the page terribly slow.
Easy workaround is to pass the sendEvent method from parent to children but as our JSX tree is very deep, it create a lot of "useless" boilerplate.

Seems like we could fix your issue specifically by passing sendEvent to hitComponent on the Hits widget, right @AntoineDuComptoirDesPharmacies?

@Haroenv that would help people using the Hits UI component, for sure !
On our side we have our own UI component but we could do the same as you propose, pass the sendEvent to children components.
The only concern is that we have a deep JSX tree before reaching the button that should trigger a Conversion event.
Maybe a good workaround in this case is to put this sendEvent method in a homemade context.
I am wondering if it could be interesting to provide this "Insights context" directly from react-instantsearch-hook-web package ?

I'd say it's probably best if you keep track of this in your own context, as for our use cases that wouldn't be needed, the component rendering has the same access as the place sendEvent is accessible from.
If you have some kind of indicator of scale and what makes the tree so complex that you can't use Hits, that would be interesting, as we'd like to encourage people to use the default components in most cases.

@AntoineDuComptoirDesPharmacies, Hits already exposes sendEvent to hitComponent 👍

In fact we do not use Hits because we have a custom UI for the listing of Hits, we do not want to use ol / li DOM nodes but instead we can use Table or Grid, depending the context.
As for passing the sendEvent across the tree, here is a shortlist of our tree component layers :

Grid component
Card
Modal
AddToCart
Button with onClick => sendEvent

@Haroenv: I've set escapeHTML to false in the useInfiniteHits hook (only one instance) and in the InfiniteHits component, but I can still see escapeHits being called (and causing about 80% of all cycles in the JS), also in the production bundle.
I think the escapeHits=false options are not working properly in either the useInfiniteHits hook or in the InfiniteHits components.


Exception handling

Looking at the (development branch) source, there is a method exposed via hug.API to register exception handlers. This looks like an idea method for integrating sentry to aggregate exceptions, as the middleware hooks don't seem to include exception references.
However, I see the following:
TypeError: can't set attributes of built-in/extension type 'Exception'
when trying this:
hug.API.add_exception_handler(Exception, sentry, (None,))

Am I missing something obvious? In any event, a couple of lines added to the readme would help others going down this route.

Hi @nicois,
I've never used sentry before and looking through the docs here: https://docs.getsentry.com/hosted/clients/python/ it's not entirely clear how it should work, but I'd imagine it would look something like:
from raven import Client

client =<EMAIL_ADDRESS>...

@hug.exception(Exception)
def handle_exception(exception):
    client.captureException()

And I agree, this and several other new features need to get documented when 2.0.0 is released.
Thanks!
~Timothy

@timothycrosley, the syntax seems to work, but the handler is not fired: the 500 exception is bubbling up without the function being invoked.
For now I will make a simple decorator which I can wrap each API function with, but obviously it would be nicer to use the provided exception handler.
In case it helps, here's the top of a stack trace resulting in a 500 without the exception handler being invoked. Not that it matters, but the actual exception was _mssql.MSSQLDatabaseException.
Traceback (most recent call last):
  File "/usr/lib/python3.5/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "falcon/api.py", line 213, in falcon.api.API.__call__ (falcon/api.c:2583)
  File "falcon/api.py", line 182, in falcon.api.API.__call__ (falcon/api.c:2162)
  File "hug/interface.py", line 538, in hug.interface.HTTP.__call__ (hug/interface.c:14468)
  File "hug/interface.py", line 482, in hug.interface.HTTP.call_function (hug/interface.c:12905)

.. I should add that I am not (yet) using versioning. Is it possible that I need to pass a version number in for the handler to register correctly?


EF Core Database Backend

Experiment with EF Core for access instead of SQlite directly: https://docs.microsoft.com/en-us/ef/core/

@gfs Hello, I was looking at this tool a bit. Looks like the issue has been open for a couple years. Would this be something I could contribute too? I will have to look into the tool a bit more.

Hi @mtmulch,
If you're interested we are open to contributions.
You can start by looking at the DatabaseManager abstract class:
https://github.com/microsoft/AttackSurfaceAnalyzer/blob/main/Lib/Utils/DatabaseManager.cs
And the SqliteDatabaseManager class which inherits from it:
https://github.com/microsoft/AttackSurfaceAnalyzer/blob/main/Lib/Utils/SqliteDatabaseManager.cs
And then creating a new EntityFrameworkDatabaseManager that inherits from DatabaseManager.
I don't believe you need to modify  the SqliteDatabaseManager, the DatabaseManager class or much do the rest of the code.
The database manager itself gets instantiated here:
https://github.com/microsoft/AttackSurfaceAnalyzer/blob/6cc160f5d43165fdc298c51efa41239afd554a9a/Cli/AttackSurfaceAnalyzerClient.cs#L312
I'd go with adding an argument to specify which database backend to use.
You can test your implementation against the direct SQLite implementation with the Tests and Benchmarks in the repo.

Also to note, you should work from
The release/v2.3 branch and not main.

@gfs Thank for the guidance. I just wanted to confirm the entire project is targeting .NET 6.0 and standard EF with the latest stable version of 6.4.4 would be a good overall fit before proceeding further with the implementation.

Yes. Attack Surface Analyzer only targets the latest .NET, currently 6.0 so you should be able to use the latest EF.

Is their any plans to introduce another ORM such as NHibernate for Data Access? It may be thinking a little to far ahead and introducing more code than you for this issue but it almost seemed logical to use a factory.

I've experimented a bit with LiteDB but couldn't get the query speed competitive. I don't currently have any plans to develop an alternate backend right now.
Do you mean a factory to produce the correct database manager? I think that would be fine.
My understanding of EF is that it makes it easier to swap out where the data gets stored. Does it make sense to develop the EF manager in such a way that it itself is configurable with alternate storages?

Yes, I meant where the SqliteDatabaseManager is originally instantiated a factory can be instantiated and the method called to return the correct DatabaseManager basically following the same convention that you specified above. The CommandOptions default value can be tied to an enum which would by default point to SqliteDatabaseManager, allowing the user to just change the command argument to instantiate the EFDatabaseManager.
That's my understanding for ORM's such as EF to allow alternative data sources to be swapped in and out with ease without altering the SQLCommands associated with the specific database.
I have the project up and running. This is something I will work on in my free time and take my time with it, great project!

I've made some progress on this is in my own branch. Manual testing seems to have went well by just altering the default value of the type of DatabaseManager the user wants in the CommandOptions class. DbSettings I plan on keeping that the same as the EF Core ORM is being used as a replacement for the ADP.NET SqlCommands.
Sorry for the delay.

Thanks for the update. Look forward to reviewing.

@gfs sorry to leave you hanging on this I will get around to it, account problems. :)

No problem at all. Looks like good progress so far.

@gfs These five statements can be seeded with EF on application load. However I cannot fully remember or state for sure if the same tables will be used if the tables are seeded prior to loading with EF using the SQL statement due to the camel_case table naming convention. Will have to test.
Lib/Utils/Database/DatabaseContext.cs
private const string SQL_CREATE_COLLECT_RESULTS = "create table if not exists collect (run_id text, result_type text, identity text, row_key blob, timestamp text, serialized blob, UNIQUE(run_id, identity))"; private const string SQL_CREATE_FINDINGS_RESULTS = "create table if not exists findings (first_run_id text, second_run_id text, analyses_hash text, level int, result_type int, identity text, first_serialized text, second_serialized text, meta_serialized text)"; private const string SQL_CREATE_PERSISTED_SETTINGS = "create table if not exists persisted_settings (id text, serialized text, unique(id))"; private const string SQL_CREATE_RESULTS = "create table if not exists results (base_run_id text, compare_run_id text, analyses_hash text, status text);"; private const string SQL_CREATE_RUNS = "create table if not exists runs (run_id text, type string, serialized blob, unique(run_id))";

I took a quick look at the EF DB Manager. Looks like it's coming along well! Code seems pretty clear with the Linq style queries and models.

I took a quick look at the EF DB Manager. Looks like it's coming along well! Code seems pretty clear with the linq style queries.

Great I actually have sometime this week to get more done. Looking forward to PRing that!
Get Outlook for iOShttps://aka.ms/o0ukef

From: Gabe Stocco @.>
Sent: Monday, November 7, 2022 3:01:31 PM
To: microsoft/AttackSurfaceAnalyzer @.>
Cc: Mike Mulchrone @.>; Comment @.>
Subject: Re: [microsoft/AttackSurfaceAnalyzer] EF Core Database Backend (#519)
I took a quick look at the EF DB Manager. Looks like it's coming along well! Code seems pretty clear with the linq style queries.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/AttackSurfaceAnalyzer/issues/519#issuecomment-1306118310, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3LCXVQARN6EEFDRX5SQC33WHFNZXANCNFSM4OWZX4MQ.
You are receiving this because you commented.Message ID: @.***>

Hi @WingZer0o are you still working on this?
I'm working right now on some changes to the SQLite manager to add sharding to the storage of compareresults to improve performance of comparison saving and use in the GUI.

Hi @gfs, honestly I totally forgot about this I got wrapped up in my other projects and work.

@WingZer0o no worries. If you'd like to contribute the work in progress, if you feel it would be helpful, I think it would be nice to eventually have this. I could make a EF Core dev branch for you to PR to and I may be able to continue the work from there - though I'm not sure of the timeline when I would get to it.

If I remember correctly I was pretty close to being done but I hadn't really tested it all that much. Let me know the branch and I can submit the PR to it.

Sounds great.
I branched off the head of release/v2.3 here: https://github.com/microsoft/AttackSurfaceAnalyzer/tree/proposal/EfCoreDbManager

It seems that I deleted my fork. I sincerely apologize.

Alas. Thanks for checking!

@mtmulch Yeah, definitely still open to collaboration on this. Let me know if you have any questions, and just a reminder to fork off the release/2.3 branch rather than main.

At first blush, I think a shared consts class makes sense - or alternately an inheritance structure with an intermediate abstract sqldatabasemanager that's shared. 🤔

I think the inheritance structure for DatabaseManager for the consts is a good location. I'll keep along that path this week. I have plenty of time these days.
Apologize about the deleted accounts and what not, show shy and embarrassing mistakes in an organization experiment, guess it don't even matter. 🤷

@WingZer0o sounds good!
No problem on the second aspect. It can certainly be intimidating to work publicly, my view is there is no shame in mistakes, we all make them and its a great way to learn! In any case, happy to have you revisiting this and thanks again for your collaboration and contributions here.
I have taken a quick look over some of the commits so far and its looking pretty clean so far, appreciating the small commits - easy to figure out what's done in each - exciting stuff! If you want me to take a closer look at anything in particular or have any other clarifying questions do feel free to reach out. If there's anything requiring a more detailed discussion we can switch to email or a teams call as well.

Thanks for the feedback. I will certainly reach out with any clarifying questions should they arise. I pushed a few more things this evening. Converting these queries over is my first priority, I've been running the test suite as I go and at this current point in time only have 5 failing, so that's quite sound.

Awesome! Sounds like great progress!

Ah shoot I forgot to ask an important EF question, when you are executing parallel queries are you expecting EF to operate in the same parallel fashion? Or, at least expecting operating to be asynchronous?
EF doesn't really support parallel operations on the same DbContext, its something that can be accounted before by generating additional context and maybe could turn into something like you have for SqlConnectionHolder but I imagine the point of introducing EF as an option was to escape the handling of such things

Background on how the current db manager works:
Indeed because sqlite doesn't support multi thread we instead create multiple databases, each with it own thread, and then the write method distributes work to the threads (the "shards" setting from the cli perspective). Each collected object's id is hashed and the modulus of the hash determines which shard the record is placed in. Then querying has to also take place across all shards. You can check the benchmarks section of the repo if interested but in my testing this was a significant collection speed speedup until about 7 databases.
I think it's safe for you to ignore the shards mechanic for now. The purpose is to improve collection and analysis speed, and it should be possible to retrofit later if necessary as it was to the initial implementatiom. Definitely simpler to not have to worry about the sharding at all, I think a large factor is just the number of bytes being written which I'm hoping efcore can reduce.

The sharding should only be an issue for sqlite as well - as if you're contacting a full sql database it'll handle threading on its own.

Ah, excellent, I will proceed as is then. Seems I was able to get the remaining 5 test cases to run with Administrator mode.

I'll make some time to finish this up. I still have some code on my local machine.


[Feature Request] (Datepicker) should update selected date on input change

Bug, feature request, or proposal:
feature request
What is the expected behavior?
update the highlight date every input change while the calendar open
(or we can create some method like: selectedDate method to update it, or updateDate method to trigger change detection)
What is the current behavior?

If I press next day button (update the input value) while the calendar open but still not update the highlight date. only I close and reopen datepicker, it will update value.
What are the steps to reproduce?
I think it simple and clear to understand. tell me if you need example repository.
What is the use-case or motivation for changing an existing behavior?
I have next day, and previous day button, with today button. I want to change date manually but the selected date not update
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
angular 6
material 6
typescript 3
chrome 60
Is there anything else we should know?
no

Your screenshot isn't showing an Angular Material datepicker, so I don't think you have the right library.

@jelbourn are you kidding me? why you close my issues and concluded hurriedly?

I already try everything, event use changeDetectionRef.detectchanges() to update after have value but nothing happen, If only I close and reopen that calendar, the highlight position will be update

thank you sir, thank you very much @jelbourn

The MatDatepicker has a method select(date), but it looks like it does not trigger change detection in the calendar

It really would be awesome to have a dateChange event which emits the selected date. I'm hoping for the same functionality in order to reduce clicks for someone using the datepicker to jump between dates.
Demo of the required behaviour:
https://www.loom.com/share/be92484311c24c439f23c1ac73de1064


Can we distinguish between 64 bit chrome and 32 bit chrome?

There's an entry in the changelog - "Fixed detection of 64-bit Chrome running on Windows" - which suggests this may be possible, but i can't see how looking at what i get back in platform.  thanks

It depends. Platform looks for hints from the UA string and the environment.

If it's just the userAgent string i don't think that's going to work - very annoyingly, userAgent doesn't include the "(64 bit)" which appears after the version when you view it on the About page.  I'd seen that you were analysing the userAgent string but hoped that there was some other magic going on which i'd missed!  Thanks a lot for answering my issue.


Armeria grpc authentication SSL/TLS

Is there a way to make enable authentication SSL/TLS for Armeria grpc service or server like:
http://www.grpc.io/docs/guides/auth.html#with-server-authentication-ssltls-4
Or, authentication SSL/TLS could work between Armeria server and upstream gprc clients?

TLS is a part of armeria and its HTTP-handling itself and not really related to gRPC - the normal documentation for armeria and TLS applies to gRPC too.
http://line.github.io/armeria/server-basics.html#ssl-tls
As TLS happens at HTTP level, upstream gRPC clients should work fine too. It's actually been verified before in the interop test, which enables TLS with a custom CA.
https://github.com/line/armeria/blob/master/it/src/test/java/com/linecorp/armeria/server/grpc/interop/ArmeriaGrpcServerInteropTest.java#L107


Coder action icons are low-res

Coder action icons look low-res:

while playground actions look fine:

Is this a rendering issue, or the way the icons are added to the buttons?

These are bitmaps at the moment. The large buttons are not stretched, while the small ones are. In any case, they appear like that only in Morphic.

I thought it was only in Morphic, but I took these screenshots when spawning a playground from Glutin world.

What operating system?

MacOS Mojave 10.14.6, Pharo 8 image and headless VM from today, GT loaded today.

I'm having the same issue on Linux, Pharo 8, GT loaded today. I also downloaded the stand-alone version, looks exactly the same.

In the meantime we moved (mostly) to vector icons (https://github.com/feenkcom/gtoolkit/issues/962)


Add jupyter and toml file types

Fixes #43

Summary
Add jupyter to the file types that ruff pre-commit hook runs on
Test Plan
This is what pre-commit uses to identify ".ipynb" files. See https://github.com/pre-commit/identify/blob/dc75a76b7fd7093a7a1d4159d6741884343af694/identify/extensions.py#L100
Also black does this https://github.com/psf/black/blob/main/.pre-commit-hooks.yaml

Thanks! Do you mind adding toml too?

Thanks!

Hi @charliermarsh, does ruff lint toml files? Or did you ask for toml to be added so that ruff has access to the configuration in pyproject.toml?
I tried this with one of my projects
- repo: https://github.com/astral-sh/ruff-pre-commit
  # Ruff version.
  rev: v0.0.277
  hooks:
    - id: ruff
      types_or: [python, pyi, jupyter, toml]
      args: [--fix, --exit-non-zero-on-fix]

And ruff started failing on the poetry.lock file (which is recognized by pre-commit as a toml file). It thinks this file is a python file and fails with a syntax error.
I am not sure toml should be added here.
Thank you for ruff by the way, it is an amazing tool.

Yeah, Ruff lints pyproject.toml files (but no other TOML files). Hmm, we may need to revert that for now since we won't have a reliable way to detect TOML files if they're not using the .toml suffix.

I'll send a PR to revert it and see how can we add pyproject.toml only.

Can you refresh my memory -- if we revert both of these, what happens if someone adds this to their configuration? Will Ruff still end up linting Jupyter notebooks?
- repo: https://github.com/astral-sh/ruff-pre-commit
  # Ruff version.
  rev: v0.0.277
  hooks:
    - id: ruff
      types_or: [python, pyi, jupyter]
      args: [--fix, --exit-non-zero-on-fix]

We may actually want to revert Jupyter too for now -- it should be considered opt-in, not on-by-default.

Can you refresh my memory -- if we revert both of these, what happens if someone adds this to their configuration? Will Ruff still end up linting Jupyter notebooks?
- repo: https://github.com/astral-sh/ruff-pre-commit
  # Ruff version.
  rev: v0.0.277
  hooks:
    - id: ruff
      types_or: [python, pyi, jupyter]
      args: [--fix, --exit-non-zero-on-fix]

Yes, you can override types_or locally

We may actually want to revert Jupyter too for now -- it should be considered opt-in, not on-by-default.

What about another hook like what black does. This way it stays opt-in but also users don't have to learn about low level pre-commit configuration.

I think my preference for now would be to revert, and add an example to the docs that users can copy-paste to add Jupyter support.

I think my preference for now would be to revert, and add an example to the docs that users can copy-paste to add Jupyter support.

Done in #45

Thank you, sorry for the churn!


Feature request - add a cop to detect missing :environment dependencies in rake tasks

I'm always frustrated when I commit a rake task to my rails project and I forget the :environment dependency. For example:
task :fix_something do # should be `task fix_something: :environment do`
   User.where(...).find_each { |u| # fix the user }
end

This runs just fine in my dev environment, probably because spring is running and just forks off a process where the whole rails env is loaded. So I push to production. Later on production
rake fix_something
rake aborted!
NameError: uninitialized constant User

:rage4:
Describe the solution you'd like
I would like a rails cop that warns if you write a rake task without an environment dependency. It is rarely what you want. It is also easy to miss in code reviews.

Rails-related functionality has been moved to a standalone library (gem) named rubocop-rails. Please, migrate this issue to its issue tracker https://github.com/rubocop-hq/rubocop-rails/issues/


Added Share speaker info intent

Preview:

Why would you want to share speaker name & email I don't get it.

@creativepsyco this [task] (https://codein.withgoogle.com/dashboard/task-instances/6044499427983360/?sp-page=1) required adding a feature to share speaker's name & email.
Let me know if this is not what was expected and I shall improvise. Thanks!

I will have concerns if someone shared my email publicly. I think a better way would be to share the speaker's image and the content of the caption can be something like Mr. X is speaking in event Y on topic etc. etc. For more info checkout app on GOOGLE-PLAY-APP-STORE-LINK
Maybe something like this:
Instead of share a photo have your own composed text.

Sure! I will try and implement this! :+1:

@creativepsyco  @mananwason
I am working on implementing the suggested feature.
There is one problem I am facing, that is as the images are downloaded as links sending them to Facebook will work as the github avatar link is rendered and the image is displayed. However this does not work for other apps. What to do?
Implementation for Facebook:

Also not sure if this is a bug in the app or a database problem.
But, the images and speaker's name do not correspond.

That's a server problem, that's no issue.

I mean if you know the URL you can still in theory download the image and provide it via text/stream intent which can then be read by facebook to do the upload.

Thanks for the clarification @shivenmian :+1:
@creativepsyco I did try that, but am unable to convert the URL to bitmap and then share it via an intent. For now I will submit the rudimentary section for sharing speaker's information as you suggested. Senior developers can then further help integrate image sharing via text/stream


[boyscout] fixes missing mdc values in smtp audit logs

Both the HA proxy path and the non behaviour overrides do build the mdc. unfortunately unless behind an HA proxy, SMTP server will go the behaviour overrides path and lose its MDC in the process.
I discovered this while attempting to configure crowdsec on my SMTP server instance and noticed we lacked the remote IP in the logs.
I could not find a sane way to write tests for this patch.

We could imagine starting a SMTP server with for instance an extra HELO hook that just perform a LOG
Then we could do assertions in an integration tests using https://projects.lidalia.org.uk/slf4j-test/ we likely can catch the MDC in the logging events.
That's how I would do if I am contractualy required to write such a test. But TBH I am very likely to just do like you did...

thank you :D


HBASE-28807 Remove some useless code and add some logs for CanaryTool

Remove some useless code in CanaryTool.sniff.
Add some logs when get null location for table region.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 28s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
hbaseanti
0m  0s

Patch does not have any anti-patterns.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 16s

master passed

+1 :green_heart:
compile
3m  6s

master passed

+1 :green_heart:
checkstyle
0m 36s

master passed

+1 :green_heart:
spotbugs
1m 34s

master passed

+1 :green_heart:
spotless
0m 46s

branch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  4s

the patch passed

+1 :green_heart:
compile
3m  9s

the patch passed

+1 :green_heart:
javac
3m  9s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 36s

the patch passed

+1 :green_heart:
spotbugs
1m 39s

the patch passed

+1 :green_heart:
hadoopcheck
11m 31s

Patch does not cause any errors with Hadoop 3.3.6 3.4.0.

+1 :green_heart:
spotless
0m 43s

patch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  2s

the patch passed

+1 :green_heart:
compile
0m 57s

the patch passed

+1 :green_heart:
javac
0m 57s

the patch passed

+1 :green_heart:
javadoc
0m 26s

the patch passed

+1 :green_heart:
shadedjars
5m 44s

patch has no errors when building our shaded downstream artifacts.

_ Other Tests _

+1 :green_heart:
unit
210m 48s

hbase-server in the patch passed.

236m  8s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/1/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/6187

Optional Tests
javac javadoc unit compile shadedjars

uname
Linux 9571d9f67bc5 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 217f0c4f106d65c92c32c9022cb31ad05e073768

Default Java
Eclipse Adoptium-17.0.11+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/1/testReport/

Max. process+thread count
4707 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/1/console

versions
git=2.34.1 maven=3.9.8

Powered by
Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 27s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
hbaseanti
0m  0s

Patch does not have any anti-patterns.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 10s

master passed

+1 :green_heart:
compile
3m 12s

master passed

+1 :green_heart:
checkstyle
0m 36s

master passed

+1 :green_heart:
spotbugs
1m 31s

master passed

+1 :green_heart:
spotless
0m 43s

branch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  5s

the patch passed

+1 :green_heart:
compile
3m  9s

the patch passed

+1 :green_heart:
javac
3m  9s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 35s

the patch passed

+1 :green_heart:
spotbugs
1m 37s

the patch passed

+1 :green_heart:
hadoopcheck
11m 29s

Patch does not cause any errors with Hadoop 3.3.6 3.4.0.

+1 :green_heart:
spotless
0m 46s

patch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  2s

the patch passed

+1 :green_heart:
compile
0m 57s

the patch passed

+1 :green_heart:
javac
0m 57s

the patch passed

+1 :green_heart:
javadoc
0m 26s

the patch passed

+1 :green_heart:
shadedjars
5m 42s

patch has no errors when building our shaded downstream artifacts.

_ Other Tests _

+1 :green_heart:
unit
212m 40s

hbase-server in the patch passed.

237m 53s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/2/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/6187

Optional Tests
javac javadoc unit compile shadedjars

uname
Linux 0aa7228154b2 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 6c0d53361ab8a2323cb00fcc61afe88c6ee9b63f

Default Java
Eclipse Adoptium-17.0.11+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/2/testReport/

Max. process+thread count
5080 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/2/console

versions
git=2.34.1 maven=3.9.8

Powered by
Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 26s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
hbaseanti
0m  0s

Patch does not have any anti-patterns.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m  3s

master passed

+1 :green_heart:
compile
3m  2s

master passed

+1 :green_heart:
checkstyle
0m 36s

master passed

+1 :green_heart:
spotbugs
1m 31s

master passed

+1 :green_heart:
spotless
0m 44s

branch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m  4s

the patch passed

+1 :green_heart:
compile
3m 13s

the patch passed

+1 :green_heart:
javac
3m 13s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 37s

the patch passed

+1 :green_heart:
spotbugs
1m 40s

the patch passed

+1 :green_heart:
hadoopcheck
11m 24s

Patch does not cause any errors with Hadoop 3.3.6 3.4.0.

+1 :green_heart:
spotless
0m 44s

patch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 51s

the patch passed

+1 :green_heart:
compile
0m 53s

the patch passed

+1 :green_heart:
javac
0m 53s

the patch passed

+1 :green_heart:
javadoc
0m 25s

the patch passed

+1 :green_heart:
shadedjars
5m 32s

patch has no errors when building our shaded downstream artifacts.

_ Other Tests _

-1 :x:
unit
212m 45s
/patch-unit-hbase-server.txt
hbase-server in the patch failed.

236m 57s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/3/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/6187

Optional Tests
javac javadoc unit compile shadedjars

uname
Linux 10d3f3a55952 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 6c0d53361ab8a2323cb00fcc61afe88c6ee9b63f

Default Java
Eclipse Adoptium-17.0.11+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/3/testReport/

Max. process+thread count
5572 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6187/3/console

versions
git=2.34.1 maven=3.9.8

Powered by
Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

Hi @1458451310 could you please see if failures are relevant?

Hi @1458451310 could you please see if failures are relevant?

That's not relevant
[ERROR] Errors:
[ERROR] org.apache.hadoop.hbase.master.assignment.TestRollbackSCP.testFailAndRollback
[ERROR]   Run 1: TestRollbackSCP.testFailAndRollback:180 Â» IllegalArgument scheduler queue not empty: MasterProcedureScheduler[running=true,tableMap=TableQueue[key=test,lockStatus=LockAndQueue[exclusiveLock=false,sharedLockCount=0],size=1,namespaceLockStatus=LockAndQueue[exclusiveLock=false,sharedLockCount=0]],tableWaitingMap={},peerMap=,metaMap=,globalMap=]
[ERROR]   Run 2: TestRollbackSCP.testFailAndRollback:177 Waiting timed out after [30,000] msec
[ERROR]   Run 3: TestRollbackSCP.testFailAndRollback:177 Waiting timed out after [30,000] msec
[INFO]
[INFO]
[ERROR] Tests run: 7004, Failures: 0, Errors: 1, Skipped: 35

Hi @1458451310 Thanks for the contribution I have merged the PR to codebase.


"IndexError: column index (94) out of bounds" about generate_matrix_A4meld.py

When I try to run the code
bash python generate_matrix_A4meld.py train
it will report an error as shown in follow:
bash Traceback (most recent call last):   File "generate_matrix_A4meld.py", line 181, in <module>     readFileRows(filepath)   File "generate_matrix_A4meld.py", line 120, in readFileRows     adj_matrix_speaker_text[j, 70+word2embed[speaker[j]]] = 1   File "D:\mysoftware\anaconda\envs\py36mmmtd\lib\site-packages\scipy\sparse\lil.py", line 325, in __setitem__     self.rows, self.data, i, j, x)   File "_csparsetools.pyx", line 63, in scipy.sparse._csparsetools.lil_insert   File "_csparsetools.pyx", line 89, in scipy.sparse._csparsetools.lil_insert IndexError: column index (94) out of bounds
the scipy version is 1.2.0 and 1.5.4
Therefore, I strongly recommend that authors can specify the version of some key dependency packages(e.g. scipy), through the file requirements.txt.
Thanks!

By default, the speakers.txt generated by the python generate_speakers4meld.py has 30 speakers. Therefore, the 70+word2embed[speaker[j]] would cause the IndexError: column index (94) out of bounds, because 70+30>90!
Thus, all the 70+word2embed[speaker[j]] need to be adjusted to 60+word2embed[speaker[j]], 'i+35' need to be adjusted to 'i+30' and 'j+35' need to be adjusted to 'j+30'.
In other words, the 70/35 here is not fixed, it needs to be adjusted according to the number of speakers. Unfortunately, the author did not point out this detail in the README.md file.

When I try to run the code
bash python generate_matrix_A4meld.py train
it will report an error as shown in follow:
bash Traceback (most recent call last): File "generate_matrix_A4meld.py", line 181, in <module> readFileRows(filepath) File "generate_matrix_A4meld.py", line 120, in readFileRows adj_matrix_speaker_text[j, 70+word2embed[speaker[j]]] = 1 File "D:\mysoftware\anaconda\envs\py36mmmtd\lib\site-packages\scipy\sparse\lil.py", line 325, in __setitem__ self.rows, self.data, i, j, x) File "_csparsetools.pyx", line 63, in scipy.sparse._csparsetools.lil_insert File "_csparsetools.pyx", line 89, in scipy.sparse._csparsetools.lil_insert IndexError: column index (94) out of bounds
the scipy version is 1.2.0 and 1.5.4
Therefore, I strongly recommend that authors can specify the version of some key dependency packages(e.g. scipy), through the file requirements.txt.
Thanks!
Thanks for pointing this, and I will update them later.

By default, the speakers.txt generated by the python generate_speakers4meld.py has 30 speakers. Therefore, the 70+word2embed[speaker[j]] would cause the IndexError: column index (94) out of bounds, because 70+30>90!
Thus, all the 70+word2embed[speaker[j]] need to be adjusted to 60+word2embed[speaker[j]], 'i+35' need to be adjusted to 'i+30' and 'j+35' need to be adjusted to 'j+30'.
In other words, the 70/35 here is not fixed, it needs to be adjusted according to the number of speakers. Unfortunately, the author did not point out this detail in the README.md file.

Thanks for pointing out this and I will update this soon.

When I try to run the code:   python generate_matrix_A4meld.py train
it will report an error as shown in follow:
Traceback (most recent call last):
File "generate_matrix_A4meld.py", line 181, in
readFileRows(filepath)
File "generate_matrix_A4meld.py", line 57, in readFileRows
with open('speakers1.txt', 'r') as fopen:
FileNotFoundError: [Errno 2] No such file or directory: 'speakers1.txt'
i can't find 'speakers1.txt',maybe it need be generated by some other process?

By default, the speakers.txt generated by the python generate_speakers4meld.py has 30 speakers. Therefore, the 70+word2embed[speaker[j]] would cause the IndexError: column index (94) out of bounds, because 70+30>90!
Thus, all the 70+word2embed[speaker[j]] need to be adjusted to 60+word2embed[speaker[j]], 'i+35' need to be adjusted to 'i+30' and 'j+35' need to be adjusted to 'j+30'.
In other words, the 70/35 here is not fixed, it needs to be adjusted according to the number of speakers. Unfortunately, the author did not point out this detail in the README.md file.
Could you please tell me if you have passed this project

但是 我试了你这个方法 这样生成的维度会对不上


Adds tests for #717 and cleans up changelog

Related to #668.

Current coverage is 86.09% (diff: 97.77%)

Merging #719 into master will increase coverage by 0.32%

@@             master       #719   diff @@
==========================================
  Files            29         29
  Lines          2565       2610    +45
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           2200       2247    +47
+ Misses          365        363     -2
  Partials          0          0

Powered by Codecov. Last update cdafa50...9399ae3


fix(server): items' versions in requests

Overview
This PR fixes items' versions in requests

do not forget to add/fix e2e test for request logic


0-length finish messages not ending stream

Specification
While working on #14 we discovered that during tests with a large amount of streams and data being sent concurrently. Readable streams would fail to end. So far as we could tell, random streams would fail to process a message from streamRecv that had fin = true. In these cases other streams would send a fin frame, end and clean up on both sides, all after the problematic stream should've done the same.
Since then we found a stop-gap solution where we send a single null byte with the finish message. Given that, we're reasonably certain that the problem is related to 0-length messages not being sent or processed event though fin was set to true.
Normally a 0-length message is not sent but in the case of a finish message they should be. This functionality was added in this commit https://github.com/cloudflare/quiche/commit/cc98af06cb1240fb1b1be3557166ca443b1d8653.
Under normal conditions with low load. Sending fin frames with 0-length messages works fine. The problem only happens under higher loads during testing and even then, somewhat randomly. It's been hard to narrow down the specific conditions that cause the problem
To address this problem multiple things need to be done.

Create a pure rust example that can reproduce the problem. This will be useful for the upstream issue
Investigate the quiche source code for the problem. based on what I understand is happening. The problem is likely located on the receiving side with marking the stream as readable after it has received the 0-length finish frame. But only during message loads.
Post an upstream issue with the rust example and a possible solution. Sooner the better so they can address the problem and fix it ASAP.

For now we're using a work-around where we add data to the fin frame message. In this case a single null byte. This should mark the stream as readable regardless of an potential issues with 0-length fin frames.
Additional context

Related #14
https://github.com/cloudflare/quiche/commit/cc98af06cb1240fb1b1be3557166ca443b1d8653

Tasks

[ ]  1. Create a pure rust example that can reproduce the problem. This will be useful for the upstream issue
[ ]  2. Investigate the quiche source code for the problem. based on what I understand is happening. The problem is likely located on the receiving side with marking the stream as readable after it has received the 0-length finish frame. But only during message loads.
[ ]  3. Post an upstream issue with the rust example and a possible solution. Sooner the better so they can address the problem and fix it ASAP.

Cool, progress. I have modified the server and client example and simplified them somewhat.
The server does 3 things.

Closes the sending side immediately, we only want to test a single direction.
Reads data from the streams and drops it, we don't care about contents.
Keeps a set tracking active streams. When a ID is read it is added to the set, when a fin frame is received it is removed. Every time we remove a stream from the set we print the number remaining.

The client does 2 things.

Reads data from the streams and drops them.
Creates X amount of streams and sends Y amount of messages per stream before ending with a fin message. X and Y are configurable to fine tune load.

What I'm trying to observe with this test is.

Do all of the streams finish on the server side? This is indicated by the output showing 0 streams left after streams have finished.
Can I affect the amount of streams that fail to close by adjusting the amount of streams and messages?

What I finding is,

The threshold for triggering the problem seems to be about 10000 streams and 200 messages ea. This causes 20-50% of the streams to not finish.  More often then not it's just under 50%.
Increasing the load doesn't seem to affect the amount of failures. Hitting a threshold of load seems to be the main factor here.

I think at this stage I have enough evidence to post an upstream issue now. But first I'll confirm no other errors or factors are involved.

I changed the client code slightly and I can't trigger the problem anymore. The original failures may have been a problem with my example code?
So far there are no failures with 15000 streams at 1000 messages each. Back to the drawing board.

What did you change?

It was a slight change to the logic for tracking the number of messages sent and when to send the fin frame.

Forcing congestion control by setting set_initial_max_stream_data_bidi_local and set_initial_max_stream_data_bidi_remote to a low value doesn't cause it.

Can you roll back your change and replicate it?

Do you have a branch for this?

I thought you were replicating it in rust. How did this result in a change to the client code? Are you talking about JS or Rustlang? And if you want to replicate the problem why not just go back to what your original client code is.

Yes I do have a branch for this, it's rust_example.
I am replicating it in rust. The change was in the client code of the rust example.

Does this problem still occur with the JavaScript tests?

Can you explain in detail what you changed and how this impacted the test of stream lifecycles on the JavaScript side. Be comprehensive.

I haven't touched the javascript since I applied the temp-fix of including data with the end frame.

I've replicated the client example in ts. it's clientTest.ts in the project root.

I have a working(ish) server example now. Using them together causes the client to fail though. It might be related to initial negotiation.
I tried to have them mimic how the rust examples worked in structure. The main difference is that receiving data handled as an event seperately from it's main processing loop. For the client that's minor but for the server it's a pretty major difference.  They're pretty close to the same logic otherwise.

I still need to fix something with the serverTest.ts example.

Re-based on staging.

Is this still a problem or fixed by #26? @tegefaulkes

It's hard to say, it only triggers under certain circumstances. I'm considering it a non-issue for now unless it comes up again.

Are you still doing the stop gap of sending a single null byte?

No, it was removed to simplify the code a little bit. If the problem happens again it will be simple enough to re-apply it. For now we want to see if all the other changes may have fixed it.

This is probably fixed by #53. I'm adding it there. This problem was probably we just didn't understand how streams were meant to be closed and checked. And you've added the necessary functionality to QUICStream to check such things now. But do you still have the scalability tests?

It was probably fixed before. Just we couldn't confirm it since I never found the exact condition that caused it.
It happened in the concurrency tests when we stressed it a little. AFAIK things should be working and we can resolve this if we never run into the problem after merging #53 and testing within Polykey.


Validation Layers

Incorrectly signaled semaphore validation error in debug build when a resize or move command is processed when a frame presentation is requested by Vulkan.

Fixed in uncommitted version.


WIP

For #

[ ] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR)
[ ] Title summarizes what is changing
[ ] Has a news entry file (remember to thank yourself!)
[ ] Appropriate comments and documentation strings in the code
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated
[ ] Test plan is updated as appropriate
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed)
[ ] The wiki is updated with any design decisions/details.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@c9b52e6). Click here to learn what that means.
The diff coverage is 10.81%.

@@            Coverage Diff            @@
##             master    #8099   +/-   ##
=========================================
  Coverage          ?   27.28%
=========================================
  Files             ?      332
  Lines             ?    14334
  Branches          ?     2280
=========================================
  Hits              ?     3911
  Misses            ?    10384
  Partials          ?       39

Impacted Files
Coverage Δ

src/client/datascience/types.ts
100% <ø> (ø)

...ractive-window/interactiveWindowCommandListener.ts
11.73% <0%> (ø)

...ient/datascience/jupyter/export/jupyterExporter.ts
12.12% <12.12%> (ø)

Continue to review full report at Codecov.

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


European road network

Referring to this conversation:
https://osmus.slack.com/archives/C01V02K52UX/p1640606101380400

https://www.openstreetmap.org/relation/2093784 an example European E-road (E75 in Hungary)
https://en.wikipedia.org/wiki/International_E-road_network
You can use the markers seen in Wikipedia because that is the most standard one

Also national highway shields. I can help drawing or locating pictures.
e.g. Germany https://upload.wikimedia.org/wikipedia/commons/6/6e/Bundesautobahn_38_number.svg
Slovakia https://upload.wikimedia.org/wikipedia/commons/6/6b/D1-SVK-2020.svg
Czechia https://upload.wikimedia.org/wikipedia/commons/9/9b/CZ_traffic_sign_IS16a_-_D0.svg

If anyone is motivated to start working on adding these shields, #72 has instructions on how to do that prior to OMT 3.13 being available.  PRs can be posted to the branch https://github.com/ZeLonewolf/openstreetmap-americana/tree/openmaptilers-new-features-test.
SVG artwork should be generated with a max size of 40px along the shortest dimension, with a recommended stroke size of 2.5px.

Some of the U.S. shields in #72 are derived from public domain images on Commons, so the images linked in https://github.com/ZeLonewolf/openstreetmap-americana/issues/69#issuecomment-1005019777 could be a good starting point.

Looks nice!

Here is Hungary

Awesome! I guess then the regional route shields will be similarly to this :D take a screenshot of route 3 - route 24 intersection in Gyöngyös please if the primary route shields are done

With @Mashin6's code updates to #72, this issue will close once the highway shields branch can be merged.  Other shield networks that need to be rendered should open new issues with artwork samples.

Alright, I checked the code, so i saw the HU:national there but since the network is kindof weird, since those which start with M are motorways, which doesn't have the M are green colored and not blue, like here: https://en.wikipedia.org/wiki/Main_road_3_(Hungary)#/media/File:3_(Hu)_Otszogletu_zold_tabla.svg

Yeah, those minor once should have a separate network like HU:primary or something like that.

I don't know, I think Hungarians will stick to HU:national for those which are signed and HU:regional which are unsigned, so a filter like regex couldn't work for checking if the ref has the M or not?

@ZeLonewolf Maybe by hardcoding color replacement in shieldLighten() or some new function?

Switzerland

Italy

Czech Republic

@ZeLonewolf Maybe by hardcoding color replacement in shieldLighten() or some new function?

That's the right idea.  If the shields are the same design but just different colors, we can use the shieldLighten() approach, otherwise we would need to implement new functionality for returning a shields as a function of ref for special cases.

Austria

Croatia:


how to reinstall cortana and fix search

i made remove cortana tweak with no restore point , my search is broken now how to reisntall cortana and fix my search

You'll need to do a DISM /RestoreHealth with sources from a Windows Install Disc.
Here is a link on how to repair this: https://christitus.com/fix-corrupt-windows-install/
I'm going to move these options into an ADVANCED USER ONLY section as they permanently modify windows. You could also upgrade your Windows verison if its not already on the latest version and it will fix the issue as well.


Problem with Distube#play()

Please describe your problem in as much detail as possible:
If the client is already connected in a voice channel and I use Ditube#play() with another voice channel, it won't connect to the new one and will play music in the current one.
Further information:

DisTube version: 3.3.2
discord.js version: 13.6.0
Node.js version: 16.13.2
Operating system: Windows 11

I forgot to mention it in the docs, voiceChannel will be joined if the queue is not created. To change the voice channel, use <Queue>.voice.join(aVoiceChannel) or <DisTube>.voices.join(aVoiceChannel)

I forgot to specify that this also happens when the queue is not created.
Follow these steps:

Set leaveOnFinish and leaveOnStop to false
Play music in a voice channel and then use Distube#stop()
Try to play music in another voice channel

I forgot this case too.
It only joins a voice channel if DisTube hasn't joined any voice channel. When your bot is in a voice channel, distube (@discordjs/voice) still manages the connection even if it doesn't play anything. To end the connection, you have to use #leave method. And to change the channel, you have to set the new voice channel to DisTubeVoice#channel or using #join method,. (Or you can use @discordjs/voice method).
I know the behavior is not documented clearly. Will improve it when I have time.

#play should not change the voice channel since not everyone wants to change that.


Add a note into March 2023 recap about exhaustive analysis trick

This capability is too nice not to share in a recap.

This doesn't seem to work on latest luau-analyze?

LuauTinyControlFlowAnalysis is on experimental list right now.

It feels weird to highlight this in the recap then? We only mention features that are fully live.

Yeah, you're right. I'll put it in a future recap when it's enabled in luau-analyze.


[Feature] Support configure tableIdentifier for schema

Purpose of this pull request
Right now, the CatalogTable generated by config.schema will miss TableIdentifier.
The catalogName can be parsed by connectorName, but the tableIdentifier cannot be configured, this pr will add table/database/comment option in schema, this will used to generate CatalogTable.
Does this PR introduce any user-facing change?
Yes, but this options is not must.
How was this patch tested?
Test by e2e case.
Check list

[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update change log that in connector document. For more details you can refer to connector-v2
Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist

[ ] Update the release-note.

good job.


Errors while trying to add Flask-User ext

When I try to add Flask User. Something to do with SQLAlchemyAdapter. db gets problematic and not able to be imported in the database.py

I think this is an issue of Flask-User. Normally, if you use this template to create an application and want to add an extension of the flask to your project, you have to create an object in extensions.py and call init_app in app.py. However, after reading two examples from the document of Flask-User, I think I can not follow the convention as I said above.

Closing, as this issue is stale. Feel free to reopen or comment if there's still an issue.


Remove interface ctnrs, show all ctnr fields

Supersedes https://github.com/OSU-Net/cyder/pull/973, resolves https://github.com/OSU-Net/cyder/issues/924, https://github.com/OSU-Net/cyder/issues/877
Requires a schema migration.

This allows users to change the containers on Systems, but it doesn't look like there's any sort of validation in place to ensure that the system's container is the same as the interface's domain's container.

And possibly, we might want to match containers of systems to dynamic interface's range's container. I guess I'll continue working on this tomorrow.

Alright, that should do it.

This seems ok except for the fact that we have #982 to deal with.  Don't merge this until that is fixed.

hmm. tests unhappy

:(


onRowsDelete

onRowsDelete: (data) => { console.log( data )  },
i have done this.
i want to customize that and don't allow to delete rows of that table
How can i do that??
or
if i select any rows i want to disable the delete button ??
i tried with customize toolbar still its not working

It's too late to make any changes in onRowsDelete method. You can solve that using custom ToolbarSelect like this:
options = {
   customToolbarSelect: (selectedRows, displayData, setSelectedRows) => (
      <React.Fragment/>
   ),
}

React.Fragment will not add unnecessary elements to your DOM.

why it is too late ?

@RutulDarji  because your rows already disappeared from the table didn't they? onRowsDelete is callback after delete actually. Isn't solution with customToolbarSelect suitable for your case?

I am working on local machine so delete rows not affect that much

customToolbarSelect works for me but what happen after i completed my task i have clear all my states but the previously selected times like .. i have selected 2 rows and it shows on header that 2 rows selected after the completion of the task i have cleared all my states so in react it will re render but the 2 rows selected still stay at table header

customToolbarSelect works for me but what happen after i completed my task i have clear all my states but the previously selected times like .. i have selected 2 rows and it shows on header that 2 rows selected after the completion of the task i have cleared all my states so in react it will re render but the 2 rows selected still stay at table header..

There is another option rowsSelected - you can map it to your state and according to your words clear that as well

Sorry, I don't understand.
Example:
columns[id,value]
data are from external API and it will be something like this:
{id:123, value:value1}{id:678, value:value2} ecc...
Imagine you have many rows ...
With onRowsDelete I have back only the index of the table and the array of selection....
onRowsDelete:(rows)=>{console.log(rows)}
I have in console
data: Array[1]
0: Object
index: 1
dataIndex: 1
but i need to have my id not the index of the row of the table....
suppose I selected my first row
I'd expect something:
data: Array[1]
0: Object
index: 1
dataIndex: 1
id:123
value:value1
so that I can remotely delete the record with the selected id
or alternatively
Can I recover with index that I have  in return from onRowsDelete the value of my id column in the table?

I've got a PR up that might help. The idea is that returning false from onRowsDelete will prevent a delete action from taking place. There will be an example in the code to demonstrate this as well.

Thank You @gabrielliwerant

I've got a PR up that might help. The idea is that returning false from onRowsDelete will prevent a delete action from taking place. There will be an example in the code to demonstrate this as well.

Thank You @gabrielliwerant


Sms receive observer doesn't work on Android 5.0.1

Hello,
I just tried to use SmsRadar on a project. It works very well on Android 4.4.2 and below.
With device of my wife recently updated with Android 5.0.1, I tried SmsRadar on this Android version. Observe sent SMS works always well.
But, there is an issue to observe received SMS. It doesn't work in Android 5.0.1 .
Do you have experimented the same problem ?
Sylvain

Sorry for the delay, I forgot to answer you. I'll take a look to this issue ASAP. Thanks!

Don't hesitate to tell me if you need more help to fix the problem.

Some progress ?

Sorry but other tasks keep me busy and I do not think I will be able to devote time to maintaining this lib. Feel free to fork or submit patches, anyway.

Hello, thanks for this awesome library. I moved it to Android studio, I had to create a new project and copy paste everything in the end because the maven2gradle wasn't working. I made a few upgrades and tested it for android 5 and 6. It seems to be working now.
Let me know if you want to merge my changes and on what terms (the packages have been renamed because of creating a new project)
https://github.com/vaslabs/SmsRadar
Thanks again.

@jplana @oscarsj what's going on with this repository? Don't you have Android developers watching it and reviewing issues and PRs?

Hi @vaslabs !
Thanks a lot for the work done on this. Let us review your changes and we will get back to you shortly.
Thanks a lot again!

Hey no problem. Let me know if you need anything on that. I was playing around mostly trying to set it up in Android studio. I haven't touched the source code really, I just updated some dependencies and it needed changes for only the test code. Helped me a lot on that project https://github.com/vaslabs/trackpa_receiver

Hello @vaslabs, thanks for the work, your repository seems nice. If you're interested into update this library, please feel free to send us a pull request. But please, keep in mind that we can't merge changes like renaming the library or things like that.
Best regards

Thanks. Yeah, I understand. I'll create a branch to accommodate the rename change and send you a pull request :)

Any update on this? Perhaps a warning should be added to the README since this is pretty important.


[ERROR]: create[Memory/Browser]History is not function

Hi and thanks for great library, this library worked great all apps, but now getting error.

history.js
import { createBrowserHistory, createMemoryHistory } from "history";

// First check SSR
export default (typeof window === "undefined"
  ? createMemoryHistory()
  : createBrowserHistory());

Made some debugging and update code small
history
import history, { createBrowserHistory, createMemoryHistory } from "history";

console.log({ history, createBrowserHistory, createMemoryHistory });

export default (typeof window === "undefined"
  ? createMemoryHistory()
  : createBrowserHistory());

[Log] {history: undefined, createBrowserHistory: undefined, createMemoryHistory: undefined}
TypeError: (0, _history.createBrowserHistory) is not a function. (In '(0, _history.createBrowserHistory)()', '(0, _history.createBrowserHistory)' is undefined)

Chaing import to below code fixed issue
import { createBrowserHistory, createMemoryHistory } from "history/esm/history";


Don't use absolute paths in imported resources

Tested on Godot 2.1, Windows 10 64 bits
I broke again my project because I moved it to another folder, but mesh resources are pointing to an absolute path. I can see that when hovering the red cross in the File Explorer.
It also seems to be the case for sounds. I remember seeing an issue about this, but wasn't able to find it.

I made more tests on master, and apparently Godot imports files just fine when they are modified, even if I rename a part of the path. But I'd like to know why there is an absolute path in the imported resource, because it's a bit disturbing:

BTW, is this valid in master, or just on 2.1 (since the new import system and stuff)?

Tested in master, resource path seems to be relative now.

Should be fixed since 3.0 indeed.


feat(DataTable): adjust expandable row striping

Overview
This fix is related to carbon-design-system/carbon-components-react#66 and is required to allow that fix to work properly.
Expandable rows will now always match the stripe state of the row that toggles them.
Changed
Adjusted sibling element selector for table rows and expanded table rows so that an expanded table row will always match the background color of the preceding table row.
Testing / Reviewing
Create a data table with expandable rows and verify that the expandable row inherits the background color of the preceding table row without any added classes.

👍 ✅


build fails with ghc-8.6: No instance for (Control.Monad.Fail.MonadFail SE)

Building library for csound-catalog-0.7.2..
[ 8 of 26] Compiling Csound.Catalog.Wave.Ac ( src/Csound/Catalog/Wave/Ac.hs, dist/build/Csound/Catalog/Wave/Ac.o )

src/Csound/Catalog/Wave/Ac.hs:52:5: error:
    • No instance for (Control.Monad.Fail.MonadFail SE)
        arising from a do statement
        with the failable pattern ‘[tap1, tap2, d1, d2]’

This is cause by https://wiki.haskell.org/MonadFail_Proposal.
To fix this, we could

rewrite this pattern to be unfailable
OR add instance MonadFail SE in csound-expression-typed

Is there a sensible implemention of fail?

same thing for
[22 of 26] Compiling Csound.Catalog.Wave.WoodwindAlg ( src/Csound/Catalog/Wave/WoodwindAlg.hs, dist/build/Csound/Catalog/Wave/WoodwindAlg.o )

src/Csound/Catalog/Wave/WoodwindAlg.hs:140:13: error:
    • No instance for (Control.Monad.Fail.MonadFail Rnd)
        arising from a do statement
        with the failable pattern ‘[fdev1, fdev2, fdev3, fdev4]’


Adding   with any Favicon icon and its automatically creating   tags.

Hello,
Here, I am using Trumbowyg editor in my project. I am using Boiler Plate Code of Mixcore CMS. Could you please help me with this.
Actually when I am trying to add code this in source code:

hello

it's Automatically converting this code later with SVG tags like below:

hello

     <svg class="svg-inline--fa fa-angle-down fa-w-10" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="angle-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"></path></svg>

I don't want to use SVGs in my code. so any ways I can stop this ?

That's not a Trumbowyg-related issue since Trumbowyg does not update the HTML of your icons or so :/

@Alex-D So, is it issue from MixCore Repo ?

@Alex-D, I got the solution with the help of MixCore Team
// Ref: https://stackoverflow.com/questions/49983637/prevent-svg-translation-of-fontawesome

// Notice how this gets configured before we load Font Awesome


Waiting for database

Environment: Spigot 1.11.2 latest, SS 1.10.1 latest.
On server shutdown:

[10:32:09] [Server thread/INFO]: [ScoreboardStats] Now saving the stats to the database. This could take a while.
[10:47:09] [Server thread/INFO]: [HeadsPlugin] Disabling HeadsPlugin v1.4.2
[10:47:09] [Server thread/INFO]: [^[[0;32;22mMyPet^[[m] ^[[mDisabling MyPet v2.2.9^[[m
[10:47:09] [ScoreboardStats-Database/ERROR]: [ScoreboardStats] null
java.util.concurrent.CancellationException
at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftFuture.get(CraftFuture.java:68) ~[spigot-1.11.2.jar-2017-01-11-1706:git-Spigot-7d78b81-775f1e1]
at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftFuture.get(CraftFuture.java:42) ~[spigot-1.11.2.jar-2017-01-11-1706:git-Spigot-7d78b81-775f1e1]
at com.github.games647.scoreboardstats.pvpstats.Database.lambda$setupDatabase$3(Database.java:354) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_111]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_111]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]

It tried to update the leaderboard in the same second. You can ignore it for now. It shouldn't have any effects.

OK, thanks.

The effect is that the server never cleanly shuts down. I am experiencing this more frequently on Spigot 1.12. Please fix.


Button Export not Shown

this is happen on production server, on local server seems normally.
I tried to inspect every error but found nothing.

You don't have a translation for your selected language and you removed en as fallback_langauge


Update docs to have search engine and analytics

Adds custom search id and analytics back into the docs configuration for engine.anchore.io to make the docs easier to use.

I think I need to use a different GA token here. So will hold off on merge of this until that change is in.

Can this be tested locally? The comments seem to indicate that this will enable a site-search capability and not just tracking stat collection.

Can this be tested locally? The comments seem to indicate that this will enable a site-search capability and not just tracking stat collection.

No, unfortunately these are only enabled in production builds since they would actually send analytics data. They are standard features of the docsy theme, however, so they are not custom functionality we're implementing.


New scan flags mismatch

who can help fixing the following error:  "New scan flags mismatch"
the logs are
request:
b'\xa5P'
descriptor:
b'\xa5Z\x14\x00\x00\x00\x04'
response:
b'\x06\x05\x01\x01\x02\x00\x01\x08\x01\x00\x02\x00\x00\x00\x00\x00\x04\x00\x01\t'
{'model': 6, 'firmware': (1, 5), 'hardware': 1, 'serialnumber': '02000108010002000000000004000109'}
request:
b'\xa5R'
descriptor:
b'\xa5Z\x03\x00\x00\x00\x06'
response:
b'\x00\x00\x00'
('Good', 0)
request:
b'\xa5R'
descriptor:
b'\xa5Z\x03\x00\x00\x00\x06'
response:
b'\x00\x00\x00'
request:
b'\xa5 '
descriptor:
b'\xa5Z\x05\x00\x00@\x81'
response:
b'\xaaU\x01\x01\x03'
response:
b'B\x03B\xabT'
response:
b'\x00\x00\xaaU\x00'
Traceback (most recent call last):
File "C:\Python\test_radar.py", line 17, in
for i, scan in enumerate(lidar.iter_scans(max_buf_meas=500, min_len=5)):
File "C:\Python\lib\site-packages\rplidar.py", line 365, in iter_scans
for new_scan, quality, angle, distance in iterator:
File "C:\Python\lib\site-packages\rplidar.py", line 341, in iter_measurments
yield _process_scan(raw)
File "C:\Python\lib\site-packages\rplidar.py", line 77, in _process_scan
raise RPLidarException('New scan flags mismatch')
rplidar.RPLidarException: New scan flags mismatch

I'm having the same issue. I'm currently trying to rotate the rplidar with a servo to create a 3D point cloud and want to grab data from a scan for every angle of the servo's rotation. After I call next(scans) more than 106-108 times, I receive either this error or the "Check bit not equal to 1" error.

I experience the same issue. @hhelmric did you discover any viable solution?

Not sure... this was a while ago and I honestly can't remember. We stopped experimenting with the RPLiDAR over a year ago

Did anyone find a solution?

I found out that the error occurs when there is a time.sleep() inside the loop using the scanner function. After I deleted time.sleep() everything worked fine.


ReferenceError: PDFJS is not defined

In summary I get two errors in two different versions of pdfjs in pdf-annotate.js project:
Version 1.10.100: Cannot use the same canvas during multiple render() operations. Use different canvas or ensure previous operations were cancelled or completed.
Version 2.0.550
ReferenceError: PDFJS is not defined
Configuration:

Web browser and its version: Firefox Quantum 62.0b14  & Chrome 67
Operating system and its version: Win SP1
PDF.js version: two versions mentioned above

Steps to reproduce the problem:

clone https://github.com/instructure/pdf-annotate.js/
change pdfjs-dist version to 2.0.550 or 1.10.100 in package.json
npm install
npm start

What went wrong?
It does not render the pdf correctly.
Do you think the problem is from pdfjs or the render function in pdf-annotate.js project?

The pdf-annotate.js project is at fault here. First of all, it's not possible to just swap version 1.x and 2.x since the latter contains backwards incompatible changes, most notably the removal of the global PDFJS object, which is what the error indicates. The code must be adapted to work for PDF.js 2.0 when it's released as a stable version (currently it's a pre-release). For version 1.x, you should do every rendering operation on a new canvas if possible because reusing the old one can lead to race conditions if drawing is not yet completed.

Thank you for the quick reply.
Regarding the 1.x, could you elaborate more on rendering on a new canvas? I am relatively new to pdfjs. Do you know  any similar code sample?

If you're building your own viewer, or developing a library, you can make use of our viewer components to render a PDF file. The pdfViewer component does all the heavy lifting for you; look at https://github.com/mozilla/pdf.js/blob/master/examples/components/simpleviewer.js#L70 for example. Otherwise, if you do it yourself, you have to render every page on its own canvas and not reuse existing canvases. For example, see https://github.com/mozilla/pdf.js/blob/master/examples/learning/helloworld.html#L50-L54 to see how the page is rendered onto its own canvas (context). Refer to #5636 for more information.

As a follow up question:
Using latest pdfjs version (2.0.550) I get the following error:
Cannot use the same canvas during multiple render() operations. Use different canvas or ensure previous operations were cancelled or completed.
The code I am using for rendering is as follow:
I don't know how to fix it!
function renderPage(pageNumber, renderOptions) {
                var documentId = renderOptions.documentId;
                var pdfDocument = renderOptions.pdfDocument;
                var scale = renderOptions.scale;
                var rotate = renderOptions.rotate;
                // Load the page and annotations
                return Promise.all([pdfDocument.getPage(pageNumber), _PDFJSAnnotate2.default.getAnnotations(documentId, pageNumber)]).then(function (_ref) {
                    var _ref2 = _slicedToArray(_ref, 2);
                    var pdfPage = _ref2[0];
                    var annotations = _ref2[1];
                    var page = document.getElementById('pageContainer' + pageNumber);
                    var svg = page.querySelector('.annotationLayer');
                    var canvas = page.querySelector('.canvasWrapper canvas');
                    var canvasContext = canvas.getContext('2d', {alpha: false});
                    var viewport = pdfPage.getViewport(scale, rotate);
                    var transform = scalePage(pageNumber, viewport, canvasContext);// Render the page
                    return Promise.all([pdfPage.render({canvasContext: canvasContext, viewport: viewport, transform: transform}), _PDFJSAnnotate2.default.render(svg, viewport, annotations)]).then(function () {
                        // Text content is needed for a11y, but is also necessary for creating
                        // highlight and strikeout annotations which require selecting text.
                        return pdfPage.getTextContent({normalizeWhitespace: true}).then(function (textContent) {
                            return new Promise(function (resolve, reject) {// Render text layer for a11y of text content
                                var textLayer = page.querySelector('.textLayer');
                                var textLayerFactory = new pdfjsViewer.DefaultTextLayerFactory();
                                var textLayerBuilder = textLayerFactory.createTextLayerBuilder(textLayer, pageNumber - 1, viewport);
                                textLayerBuilder.setTextContent(textContent);
                                textLayerBuilder.render();// Enable a11y for annotations
                                // Timeout is needed to wait for `textLayerBuilder.render`
                                setTimeout(function () {
                                    try {
                                        (0, _renderScreenReaderHints2.default)(annotations.annotations);
                                        resolve();
                                    } catch (e) {
                                        reject(e);
                                    }
                                });
                            });
                        });
                    }).then(function () {// Indicate that the page was loaded
                        page.setAttribute('data-loaded', 'true');
                        return[pdfPage, annotations];
                    });
                });
            }


Solution 6 - minimal web api as a client.

Extend solution 5 by replacing the console client with a minimal web api client (basically the weather api but simplified to one "hello world" controller, no authentication or HTTPS.
What I would like to demonstrate with solution 6 is:

obviously how to call the cluster from a web api
cancellation tokens - web api controllers have built-in cancellation tokens in their actions (see here: https://eateam.visualstudio.com/Emailage Code/_git/greetings-planet?path=%2Fapi%2FControllers%2FHelloWorld.cs&version=GBmain) + grain cancellation tokens (https://dotnet.github.io/orleans/docs/grains/cancellation_tokens.html)
ideally a pool of ClusterClientHostedService in every api so that api throughput is not bottle-necked by having only one ClusterClientHostedService per api host.

Closed with #20

Closed with #20


Action should ignore cache-entry that cannot be unpacked

Currently, the action will fail if a corrupted cache entry cannot be unpacked (see #115).
Instead, the action should be able to ignore this entry and continue as though the entry was missing.

Thank you, @bigdaz


0.15.0:  "TaskRun mounts more than one PersistentVolumeClaim" despite single PVC w/ workspace subDirs

I have a task theTask with 2 named workspaces:
...
  workspaces:

    - name: app-source
      description: The workspace where the app source code resides
      mountPath: /workspace/app-source
      readOnly: false

    - name: secondary-source
      description: The workspace where the secondary source code resides
      mountPath: /workspace/secondary-source
      readOnly: false
...

I have a pipeline with 1 workspace that is mapped to the 2 task workspaces via the diffentiating subPath flag:
    - name: theTask
      taskRef:
        name: theTask

      runAfter:
        - init

      workspaces:
        - name: secondary-source
          workspace: build-ops
          subPath: secondary-source
        - name: app-source
          workspace: build-ops
          subPath: app-source

This worked totally fine up to 0.14.3 but now fails with this error in 0.15.0 and broke several functioning pipelines
 TaskRun mounts more than one PersistentVolumeClaim - that is forbidden
      when the Affinity Assistant is enabled

Related I assume: https://github.com/tektoncd/pipeline/pull/2885
Seems one should still be above to mount a single PVC, which is what this is, its just logically divided by the different subPaths, vs truly separate PVCs which I am not attempting to do.

/cc @jlpettersson


Allowing to pass multiple sd-jwt credentials

I'm submitting a ...
[ ] bug report
[x] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project

Summary
In the code it's mentioned that only one credential can be passed until the referenced issue is solved: https://github.com/Sphereon-Opensource/PEX/blob/fb8eb81ab041943753fdfa536e3810c7be94d504/lib/PEX.ts#L278

It seems to be solved https://github.com/decentralized-identity/presentation-exchange/issues/462 @TimoGlastra can we just remove the check or is there something else that needs to be implemented?

It won't work I think by just removing that check. PEX would need to support returning an array in the constructPresentation method (or it needs to be called multiple times). And there's several other checks within the library that will break. You can't for example create a single presentation definition with multilpe presentations.
If @nklomp is ok with it, I'd be really interested to get this supported in PEX and SIOP-OID4VP. We currently apply quite some hacks in Credo. As you can see in the below code, what we do is we modify the input PD to only have the input_desriptors for the current presnetaiton, and later on we combine all submissions into one submission.
https://github.com/openwallet-foundation/credo-ts/blob/8154df45f45bd9da0c60abe3792ff0f081e81818/packages/core/src/modules/dif-presentation-exchange/DifPresentationExchangeService.ts#L184-L190
It works on the PEX layer, but it still break in OID4VP layer due to the following check: https://github.com/Sphereon-Opensource/SIOP-OID4VP/blob/d1aca9617e7408eab3db2a0307aa2605d8c8962f/src/authorization-response/AuthorizationResponse.ts#L116-L125, which doesn't support multiple VPs for one definition yet.
Especially with SD-JWT this is becoming really important as you can currently only share one VC at a time

Yeah we also take out the descriptors in our solution.  It certainly has to be regactored in PEX, but we will not be able to do that really soon, as we have some other priorities and wanted to do that as part of a larger refactoring.  If someone would like to add support for multiple VPs and treat the descriptors as first class citizens , then we are happy to support that of course.

I've been working on this, and the approach I'm taking right now is as follows, please me know if that makes sense:

evaluatePresentation can take single presentation or array of presentations. The submission will be adjusted based on the input  to take into account vp arrays
construct presentation will support either array of vcs, or an array of arrays of vcs, where each array will be a presentation that will be constructed. The same is true for verifiablePresentationFrom

the check above will stay in place, as you can only include one SD-JWT per VP (As you don't have a wrapper concept in SD-JWT). So you would have to provide multiple VCs array containing one SD-JWT. The reason is that determining which VCs should be in a VPs is partially decided based on format restrictions (an SD-JWT VP only contains a single cred), but it is also dependant on business logic. In credo we currently create a VP for every subject + format.  So if we have two vcs with the same subject (did) and format (e.g. jwt_vc) we will add one presentation. However I see cases where someone might want to combine all JSON-LD + and JWTVC creds into one JSON-LD VP and then add multiple signatures to it. So it's quite hard to decide on this within PEX, while it's easier to do it top-level

Does this approach make sense to you @nklomp?
Will it work for you @cre8 to already provide which presentations you want to create?

@TimoGlastra it should work for my case, thank you!


Updated validations.py python script.

Fixed the behavior of validate_user function in validations.py.
closes #1
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

Signed CLA


ocamlPackages.ocp-index: 1.1.8 -> 1.1.9

Motivation for this change
Compatibility with dune ≥ 1.7
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-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)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build ocaml-top


Window internal line counter not tracked independently of LY

As described here: https://gbdev.io/pandocs/Tile_Maps.html?highlight=window#window
This results in significant graphical glitches in games which disable the Window mid-frame and re-enable it afterward (https://tbsp.itch.io/shock-lobster), depending on the line advancement to cease while the Window is disabled.

Correction: It was being tracked independently, it was just incorrectly incrementing even if the Window was disabled.

As you can probably tell, this project is a bit dead. But, I appreciate the fix so I'll merge it. First though, could you give me an example of a game that this fixes?

Yeah, I figured it was a long shot but figured it wouldn't hurt to submit a PR anyways. I see you found my mention of Shock Lobster. It wouldn't be too had to adjust the WX value every time I disable the Window to work around the bug as well, but there may be other games that benefit from the fix.


Doesn't work with Angular 11 and universal (SSR)

ERROR TypeError: this.element.getBoundingClientRect is not a function
ERROR ReferenceError: MutationObserver is not defined
TypeError: Cannot read property 'destroy' of undefined

@mbagiella have you seen this : https://github.com/ivylaboratory/angular-carousel/issues/26

wow, the same error. Too bad :(

any update for this?

any update for this?

becoming mad with this. I'm trying to import the module conditionally. In app.module:
if(isPlatformBrowser(PLATFORM_ID)) {
  isBrowser = true;
}

...
@NgModule({
  imports: [
    ...,
    isBrowser ? IvyCarouselModule: [],
  ]
});

Someone solved this?

@FrancescoPaiola on the issue #26 they tried the fellowing, you could try and see if this works. This is to check if its runnin on browser or not:
import { Injectable, Inject, PLATFORM_ID } from '@angular/core';
import { isPlatformBrowser, isPlatformServer } from '@angular/common';

@Injectable({ providedIn: 'root' })
export class PlatformService {
constructor(@Inject(PLATFORM_ID) private platform: Object) { }

isServer() {
    return isPlatformServer(this.platform);
}

  isBrowser() {
      return isPlatformBrowser(this.platform);
  }
}

even if you get it to conditionally load (see below), it still doesnt seem to actually do the carousel thing, it just loads the images on to the page with no javascript.
import { isPlatformBrowser } from '@angular/common';

let browserImports = [];

if (isPlatformBrowser) {
  browserImports.push(IvyCarouselModule);
}
const IMPORTS = [
  ...browserImports
]


Show tick within round as well as tick overall in Kills sheet

The Kills sheet in the Excel export shows overall tick within a match. It would be useful to also show the tick within the round.

A new major version has been released, closing the issue 🧹


nogroup fixes after #133166

Motivation for this change
cc #133166 #138027
cc @ajs124 @zhaofengli @dschrempf
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages 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/)
21.11 Release Notes (or backporting 21.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

Ah, by "dynamically allocated user id" in #138027 I thought you were going to use systemd's DynamicUser. This is fine for me as well, as long as there's an easy way for me to fix the UID/GID to deterministic values.

Beyond this PR I'm curious about your use case of fixed UIDs, since rfc52 deprecates them: https://github.com/NixOS/rfcs/blob/master/rfcs/0052-dynamic-ids.md

My root filesystem (including /etc/passwd) is wiped on each boot, and NixOS's dynamic UID/GID assignment isn't deterministic. The DynamicUser option in systemd is better in this regard because it automatically sets the ownership of the service's StateDirectory (/var/lib/name), CacheDirectory (/var/cache/name), and a few other related paths before the it's started. The problem is that it's not easy to point those directories outside of the mandated paths (you can only change the name part of /var/lib/name) - Symlinks do not work, and bind mounts require more setup and do not interact well with mounts made later in the boot process.

I just tried this with openntp in a virtual machine, and it worked. I can't say anything about the other services! Thanks!


CA certificates bundle needed?

The RubyInside artcile mentions the CA certificates bundle:
To get going, you need a local CA certificates bundle, the official
curl site maintains an up to date cacert.pem / ca-bundle.crt file containing
all of the major certificates if you need one.

The README does not. This confuses me, do I need the CA certificates bundle or will the gem does it job without it? Thanks!

Some OSs include the certificate bundle as part of the system. If this is the case, you're all good to go. If not, you do need it. Without it, this gem will raise on any https connection

@Shelvetco I no longer remember posting this question but thank you for the clarification. ;)


(v2) Color range of 0-950 doesn't match the tailwind convention. Please switch to 50-950 for clarity and convention

Description
Tailwind uses the convention that 50 is the lightest and 950 is the darkest (50-950 range).
See: Tailwind Customizing Color Docs
However, the current gluestack color scheme is set up with 0 as the lightest color and 950 is the darkest color (0-950 range). I.e.:
export const config = {
  light: vars({
    '--color-primary-0': '179 179 179',
    '--color-primary-50': '153 153 153',
    '--color-primary-100': '128 128 128',
    '--color-primary-200': '115 115 115',
    '--color-primary-300': '102 102 102',
    '--color-primary-400': '82 82 82',
    '--color-primary-500': '51 51 51',
    '--color-primary-600': '41 41 41',
    '--color-primary-700': '31 31 31',
    '--color-primary-800': '13 13 13',
    '--color-primary-900': '10 10 10',
    '--color-primary-950': '8 8 8',
    },
   ... (other colors)
};

Problem Statement
There are several reasons why I think gluestack should conform to the conventional 50-950 range:

We don't include 1000, so it doesn't make sense for 0 to be included. 1000 (from what I understand) would be 100% black (which would have no color tint), which means that 0 should be 0% black (which would also have zero color tint). The current gluestack color scheme doesn't treat 0 this way, though. Currently gluestack uses 0 to represent "the lightest variation of this color", which is what 50 is designed to be (again, from my understanding). It's confusing that 0 has any color tint
Tools built to create color shades are designed with 50-950 in mind. Just search for tailwind shade generator in Google, but here are some top results: Example 1, Example 2, Example 3, Example 4. Note: This reason is what prompted me to make this feature request. It's been frustrating to try and manipulate the colors to fit the 0-950 range.
It's an unnecessary mental shift for devs coming from the standard 50-950 range.
11 shades is sufficient for the default color scheme. The standard 50-950 range is 11 shades of color. Do we really need another shade to manage? 0-950 is 12 shades, which means yet another color devs have to manage.
Gluestack is closely associated with tailwind (see mentions of "tailwind" on the homepage and in the docs), so it should follow Tailwind conventions as closely as possible to reduce friction for developers.

Proposed Solution or API

Leave the 500 color the same and regenerate the colors with 50 as the lightest in the default color scheme.
Update gluestack components to match

Alternatives
No response
Additional Information
No response

Found a palette generator (for posterity) that supports extra colors. Goes above 950, but not below 50, so the numbers need to be changed a bit.
Also, it makes me think that my logic that 1000 = full black may be a bit mistaken. 0 would still be colorless, but I suppose 1000 isn't necessarily full black 😀

hey @resticker , Thanks for reporting the issue. We will have a look.

We appreciate you taking the time to share your thoughts on the gluestack color scheme.
We know that Tailwind follows the 50-950 convention, with 50 being the lightest and 950 the darkest shade. That said, our choice to adopt the 0-950 range is rooted in a few key reasons:

Broader Spectrum: By starting with 0 as the lightest shade, we can offer more nuanced control over color variations, which is vital for achieving specific design goals.

Dark Mode Optimization: The 0-950 range is especially advantageous for dark mode design. It provides finer control over lighter shades, ensuring elements remain visually distinct and accessible in low-light settings, which is crucial for creating a seamless and user-friendly dark mode experience.

That being said, we’re always listening to our community. If we receive a significant number of requests around this, we’ll definitely circle back to reassess and consider adjustments.