Scanner overlay with relative sizes

I added the possibility to create a ScannerOverlay, without the cut out size, to make it adaptive.
I have created an abstract ScannerOverlay and two implementations: one with fixed sizes (I have maintained your original implementation) and one in which sizes depend on the camera around the overlay. You can use the cutOutSize parameter to indicate how big the cutout is as compared to the camera, using a value between 0 and 1, representing the percentage.
I hope that it can be helpful

Hi @giuliatesta
Thank you for your contribution! I really appreciate the time and effort you put into this pull request. Your changes have been merged and will be included in the next release.
Thanks again for your help and for making this project better.
Best regards,
Khoren


stone tool crarting config

I would like it if you added a config option for the stone tool crafting improvements such as being able to use mossy cobblestone in the recipe.
Module
Crafting, Content, Enchanting, Loot, World, Tweaks.
Crafting
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Because there is no way to disable the stone tool crafting using mossy cobblestone est and this causes 2 sets of stone tools to appear in the recipe book when quarks stone tools are enabled.
Describe the solution you'd like
I would like a config to disable it.
Describe alternatives you've considered
Another solution is having the stone tool crafting recipe disabled when quark is installed.
Additional context
Add any other context or screenshots about the feature request here.

Hey from 1.13+ forge uses tags for recipes. So if you disable stone tools in recipe module of VanillaTweaks it automatically supports mossy cobblestone and such.

I'm saying it is causing an issue with quark. which adds all that vanilla tweaks as well as having more. This is causing a visual bug in the recipe book where 2 recipes are appearing.

thank you


[typingIndicator] Issue: doesnt show on channels

Before you submit an issue please restart your discord. If the issue is still there feel free to write a bug report.
Describe the bug
the indicator doesnt show on channels anymore
To Reproduce
Steps to reproduce the behavior:
1: enable the plugin
2: go in a server (make sure someone is typing)
3: go in another channel then the one where the person is typing
Expected behavior
typing indicator shows up when in another channel
Information (please complete the following information):

OS: windows 10
Plugin Version: 0.5.2
Discord version: stable
Compact Mode enabled? no
bd 1.2.1

well, it randomly started working again


how to do the internal view determines the size of the external view

how to do the internal view determines the size of the external view

I don’t quite understand the question.

has a view [ A ] , container two sub view [ B, C ] ,  how to make A.height == B.height + C.height

That isn't supported. You can set frames manually yourself.


bug: Unable to parse svg gradient URLs

Bug Report
Ionic version:

[x] 3.x
[x] 4.x

Current behavior:
In ionic3 and ionic4, they work differently in svg gradient URLs.
Expected behavior:
Correctly parse svg gradient URLs and display RGB color selectors when plugins with iro.js are used.
Steps to reproduce:
Detailed description: https://github.com/jaames/iro.js/issues/45
Repository of related code:
https://github.com/13546777510/iro-ionic3
https://github.com/13546777510/iro-ionic4
Related code:

Ionic info:
Ionic:

   ionic (Ionic CLI)  : 4.12.0 (/usr/local/lib/node_modules/ionic)
   Ionic Framework    : ionic-angular 3.9.5
   @ionic/app-scripts : 3.2.2

Cordova:

   cordova (Cordova CLI) : 9.0.0<EMAIL_ADDRESS>   Cordova Platforms     : ios 5.0.1
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.2, (and 4 other plugins)

System:

   ios-sim : 8.0.2
   NodeJS  : v10.16.0 (/usr/local/bin/node)
   npm     : 6.9.0
   OS      : macOS
   Xcode   : Xcode 11.1 Build version 11A1027

Ionic:

   ionic (Ionic CLI)             : 4.12.0 (/usr/local/lib/node_modules/ionic)
   Ionic Framework               : @ionic/angular 4.11.1
   @angular-devkit/build-angular : 0.801.3
   @angular-devkit/schematics    : 8.1.3
   @angular/cli                  : 8.1.3
   @ionic/angular-toolkit        : 2.0.0

Cordova:

   cordova (Cordova CLI) : 9.0.0<EMAIL_ADDRESS>   Cordova Platforms     : ios 5.0.1
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.2, (and 4 other plugins)

System:

   ios-sim : 8.0.2
   NodeJS  : v10.16.0 (/usr/local/bin/node)
   npm     : 6.9.0
   OS      : macOS
   Xcode   : Xcode 11.1 Build version 11A1027

Thanks for the issue. I am going to close this issue as loading URLs in a webview is not something that Ionic Framework manages. For context, your application works fine when using Capacitor but does not load the SVG properly when using Cordova, so there is likely some configuration you will need to do when building your Cordova app.

@liamdebeasi Thank you for your reply. Is there any documentation for my reference?
I have nothing to do with this in google, I hope that your help, thank you very much.

Looks like your app is using the Cordova WebView plugin, so try here: https://github.com/ionic-team/cordova-plugin-ionic-webview


[#25] [Chore] Set Up Network Layer

close #25
What happened 👀
Set up network layer.
Insight 📝
Use layer straight from the iOS-template. (Good sign that our network layer is modular enough).
Proof Of Work 📹
n/a

LGTM, let's fix Su.T's comment then I will merge this PR


check sync status of eth backend on startup

Task
We should check the sync status of the bee node before proceeding with startup. Running bee against a still syncing node leads to  unclear errors such as invalid factory (probably what was observed in #1077. Even if the node is already past the factory deployment block, the bee node might see some valid chequebooks as invalid or illiquid (therefore refusing valid cheques). Backend may still go out of sync while bee is running, but we should check at least on startup.
Acceptance criterea

Node waits for synced backend to boot. Doesn't fail with not a valid factory.

QA task: connect Swarm to non-sync'ed backend and report what the behavior of the node is


[WIP] Add Dual Monitor Support and Add WiFi Icon Changes

Description
WIP - Description will be added once complete and ready for review.
Closes #292
Type of change

[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] This change requires a documentation update

Why has there been like 5 of these PRs?

One wouldn’t deploy, one is outdated, and this one is the current. Not sure about the other two.

i don't understand the need for line 20 , 60-100 in taskbar/index.js

i don't understand the need for line 20 , 60-90 in taskbar/index.js

I did not add most of that...

i don't understand the need for line 20 , 60-90 in taskbar/index.js
also line 90-120 should be in components/wifi.js instead of taskbar/index.js so that it can be used in other places like lockscreen, action centre, etc

Will do.

u missed this part ig

I did not add most of that... dunno why it shows it?

i think the reason could be that earlier we used to have that battery logic in taskbar/index.js later i refactored it to battery.js so it could be reused in other places like lockscreen too.

I did not add most of that... dunno why it shows it?

i think the reason could be that earlier we used to have that battery logic in taskbar/index.js later i refactored it to battery.js so it could be reused in other places like lockscreen too. and you started work on wifi before i had refactored it.

Got it, btw you should check your email lol

Got it, ~btw you should check your email lol~

weird i didn't receive any email wen did u send it can you resend?

also the new battery level just gets updated in one of the 3places it is used (lockscreen, actionCenter, taskbar)

i think we can fix this by storing the battery percent in redux-store

also the new battery level just gets updated in one of the 3places it is used (lockscreen, actionCenter, taskbar)

i think we can fix this by storing the battery percent in src/reducers/settings.js maybe

we can add a battery option here

Will do.

how u doin

One wouldn’t deploy, one is outdated, and this one is the current. Not sure
about the other two.
On Tue, May 31, 2022 at 12:31, notAperson535 @.***>
wrote:

Why has there been like 5 of these PRs?
—
Reply to this email directly, view it on GitHub
https://github.com/blueedgetechno/win11React/pull/488#issuecomment-1142360266,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANI5RBIRXBY6WSGXKCZODFDVMY5GFANCNFSM5XLFU3OA
.
You are receiving this because you were assigned.Message ID:
@.***>

--
Best Wishes,
Lukas Batema (Java, JavaScript, and Front End Web Developer; Moderator on
PedestriaMC Network)


Change in database config file has caused in memory sqlite testing problem

Laravel Version: 5.5.3
PHP Version: 7.1
Database Driver & Version: sqlite in memory

Description:
New install of Lavarel 5.5.3 has changed the config/database.php sqlite setting to use
database_path(env('DB_DATABASE', 'database.sqlite'))
from
env('DB_DATABASE', database_path('database.sqlite'))
This actually returns a full path such as:
array:3 [   "driver" => "sqlite"   "database" => "/Users/username/code/laraplay/database/:memory:"   "prefix" => "" ]
rather than:
array:3 [   "driver" => "sqlite"   "database" => ":memory:"   "prefix" => "" ]
which then means in-memory sqlite settings for testing try to unlink a physical file. E.g.

Tests\Feature\LandingPageTest::shows_a_landing_page_for_adding_data
ErrorException: unlink(/Users/username/code/laraplay/database/:memory:): No such file or directory

because the in memory database checks all fail.
Steps To Reproduce:
Install, set phpunit.xml file to use in-memory sqlite :
<env name="DB_CONNECTION" value="sqlite"/> <env name="DB_DATABASE" value=":memory:"/>
Apologies if this is not a bug or issue, but nothing in the docs about this change and a Lavavel install from last Thursday (7th sept) worked fine but same setting used on an install today throws errors as above.

This change was reverted, please make sure you have the latest code.


GMT_DOS-CLIENTS_CRSEO ASMS INFLUENCE FUNCTION EXAMPLE

Here is the pattern of the influence functions in the exit pupil as rendered by the example:


Text input dynamic change the text color

TextInput in React Native 0.62 still cannot dynamic change the text color when value have emoji and multiline.
This is issue just happen on ios, android works fine
Here is my example: https://snack.expo.io/@jonlefcun/rn20131---textinput-dynamic-color
Please help me with this. Thank you

Same behavior encountered 😌

* react-native: 0.63.2

Same behavior encountered

+1

I have the same problem.

@haThaiHoang Have you tried using key prop somehow ?

@haThaiHoang
try changing text with setNativeProps, it works for me
preudo-code:
if(platformSpecificTextColor && props.inputRef){
// not to trigger render, need only for dynamic color changing
props.inputRef?.current?.setNativeProps?.({'text': ''})
setTimeout(() => {
props.inputRef?.current?.setNativeProps?.({'text': props.text})
})
}


Support for Sphinx > 4.0.0

Sphinx older than 4.5 have a problem with newest jinja: https://github.com/sphinx-doc/sphinx/issues/10306
When will autoyaml support Sphinx > 4.0.0?

Support for newer Sphinx versions have been added in release 0.6.2. Thank you for pointing this out.


Can't enter Dashboard from a new account

It rejects every time I try to accept the terms & conditions

logs:

can't reproduce the issue, i tried the mentioned scenario multiple times and it works fine

I tried to reproduce this issue with 10+ new accounts but unfortunately i wasn't able to, however the same console error that appeared always appears along with other errors so i created a separate issue for it. #806
So i'll close this one for now but please reopen it if it was reproducible.


decide on input/output for the filters

What will the filters of #1 pass to each other, how will they do it?

If we're interesting in collecting metrics, we may need something like an array of objects, like:
[{
   "url": "https://github.com/theorg/therepo",
   "has_cff": true,
   "accepts_prs": true,
   "cffversion": "1.0.3",
   "uses_workflows": true
}, {
   "url": "https://github.com/theorg/therepo2",
   "has_cff": false,
   "accepts_prs": true,
   "cffversion": "1.2.0",
   "uses_workflows": false
}]

We decided to use the array of objects or a table, with each filtering function adding one or more keys or columns to each object in the array.
We decided against pure filters that make the initiali set of repository names smaller

Octokit repo: https://github.com/octokit/octokit.js


PoC: Investigate support for database

What does this PR do?

This PR explores SQModel integration within the Lightning App framework to simplify database manipulation.
# Why SQModel
From Sebastián Ramírez, SQLModel removes boilerplate to interact with database from Python. Its SQLModel is a SQLAlchemy model and a Pydantic model ✨ Which makes it very easy to use with FastAPI.
My personal opinion is that it removes most of the boilerplate to manipulate the specs from control-plane to data plane and reconciliation.

https://user-images.githubusercontent.com/12861981/183063574-63e517ed-009b-4adc-b920-9dc3d815ac35.mov
https://user-images.githubusercontent.com/12861981/183063620-8bc5cc6b-7483-4ba1-a0e4-819e48613c84.mov
Another benefit is the ease to access reading and writing from / to the database for the users.
Reading
class FlowDB(LightningFlow):

    def run(self):
        if self.schedule("...."):
                 self.read_from_db()

   def read_from_db(self):
        with Session(self.engine) as session:
              ....
              return ...

Writing to the DB through the Rest API
Associated with the configure_api PR https://github.com/Lightning-AI/lightning/pull/13945, you get full pydantic validation + database entries.
class FlowDB(LightningFlow):

    def run(self):
        if self.schedule("...."):
                 self.read_from_db()

   def something_handler(self, config: SomethingConfig):
        with Session(self.engine) as session:
              ....
              return ...

   def configure_api(self):
         return [Post("/create_something", self.something_handler)

Fixes #<issue_number>
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

@tchaton is this still relevant or can this be closed? Research Studio does have databases, right?


PULL-REQUEST-TEMPLATE-#28

fixes#28

Adding a template for pull requests to make it easier for everyone to share changes. This template helps by making sure everyone explains their changes clearly, making it easier for others to review and understand what's happening.

Creating a pull request template to simplify the process of sharing updates. This template helps contributors explain their changes clearly, making it easier for reviewers to understand and provide feedback effectively.

This template guides contributors to describe their changes thoroughly, aiding reviewers in understanding and providing feedback efficiently, ultimately improving the overall quality of contributions.

Let us make ResQFood SHINE with our collective efforts !!

please, ASSIGN @anglerfishlyy and label GSSOC'24 and its LEVEL in this PR as it would not count towards leaderboard of GSSOC'24, if it doesn't .


show collection chart for floor price and top sold nft

Thank you for your contribution to the KodaDot NFT gallery.
Let's do a quick check before the merge.
Your contribution will be an eternal part of the community codebase.
PR type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Before submitting this PR, please make sure:

[x] Code builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've didn't break any original functionality
[x] I've posted screenshot of demonstrated change in this PR

Optional

[x] I've tested it on mobile and everything works
[ ] I found edge cases

What's new? (may be part of changelog)

This PR resolves  https://github.com/kodadot/nft-gallery/issues/909 - Bring history chart to collection

If issue had bounty label ($,$$,$$$)

Fill up your KSM address: https://kodadot.xyz/transfer/?target=HPQZ5yS3oKSwQwpiReGuo2Ug7qm9RR64bZXMfNbh8rD8Mwa

Community participation

[x] Are you at KodaDot Discord? If not yet, let's join us - https://discord.gg/35hzy2dXXh

Screenshot

[x] Whenever my fix has changed something on UI, a screenshot for others, is more than welcome

I know you are a first-time contributor, but can you please edit your PR description and link existing PR which is this for?

https://deploy-preview-1052--nftkodadot.netlify.app/rmrk/collection/2644199cf3652aaa78-KK01
Probably you should add some legend, how ppl would know what is for that lines?

https://deploy-preview-1052--nftkodadot.netlify.app/rmrk/collection/66241b171becfd500e-KU

Will do proper review in the morning:

missing lints
inconsistent code (lot of let, snake_case)
lot of the code is already in the utils
minor side effects

@yangwao  I added legends as Floor Price and  Sold NFT Price.

I know you are a first-time contributor, but can you please edit your PR description and link existing PR which is this for?

@devVenus1202 check this

I think we should be using tabs to display activity chart instead of having to scroll to bottom.

:

@yangwao I updated PR description again.

I will update the points

I think we should be using tabs to display activity chart instead of having to scroll to bottom.
 :

Yes, was thinking about this with #1037 to bit sort stuff.
@devVenus1202 can you please add tabs there?
I'll raise bounty on this issue, but please keep your code quality high! :)

Hi @vikiival
I fixed the issues and wrote a test for a floor price - floorPrice.spec.ts.
Please check it for me.

@yangwao I will make tabs for activity chart.
Can you point where I can make tabs in collection page or give me the url for reference?

@yangwao I will make tabs for activity chart. Can you point where I can make tabs in collection page or give me the url for reference?

We're using Buefy, you can use Tabs component

Hi @vikiival
Please check updated PR again.
Additionally, I added tabs for collection activity.

Let's wait on merging https://github.com/kodadot/nft-gallery/pull/1079
meanwhile please resolve conflicts @devVenus1202

Okay, I will resolve.

@yangwao I resolved the conflicts.

Hey, @devVenus1202 plus @KurtWarsonMillenium I have serious doubts you are far from the senior full-stack developer. Using two handles in committing and the other for PR communication is super confusing.
I see this at https://deploy-preview-1052--nftkodadot.netlify.app/rmrk/collection/4a5668af20c28c074f-KSMDUCKZ

Hey, @yangwao. @KurtWarsonMillenium is my client's account.
I switched git account from this but commits are handled by @KurtWarsonMillenium
It is really weird and sorry for confusing to you.
If you give me more opportunity, I will commit with only @devVenus1202 - my account in other PRs.
And I removed duplicated collectionActivity component.

Hey, there were still some issues in code quality and I want to also close on it. So fast-tracking it for now.
It's working but the quality is not best, please mind that in next time making PR, please.
Payout sent
https://kusama.subscan.io/extrinsic/0xeec2555792387107de91e11df2e8dc6f2237da0828e4e8c356137841c7455fec


Sort hitlets in nVETOHitlets

Before you submit this PR: make sure to put all operations-related information in a wiki-note, a PR should be about code and is publicly accessible
What does the code in this PR do / what does it improve?
In some very rare cases, the hitlets is not sorted. But then in nVETOEvents plugin, strax.touching_windows will raise error.
Can you briefly describe how it works?
Return the sorted hitlets.
Can you give a minimal working example (or illustrate with a figure)?
Please include the following if applicable:

[ ] Update the docstring(s)
[ ] Update the documentation
[ ] Tests to check the (new) code is working as desired.
[ ] Does it solve one of the open issues on github?

Notes on testing

Until the automated tests pass, please mark the PR as a draft.
On the XENONnT fork we test with database access, on private forks there is no database access for security considerations.

All italic comments can be removed from this template.

coverage: 93.564% (+0.02%) from 93.542% when pulling 49bff4348f48cd94e64184f1abdbc7b6b83c417e on sort_hitlets into be1b81b6ce7a57116c350b916bfca1b2302ecac3 on master.

I think they should already come sorted, but either way does not hurt to ensure.


Remove extra comma at the end of auth server URL definition

Hi @ybizeul, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;


Lighten AppCore dependency, remove double-define

Fixes ResearchKit/AppCore#15 and fixes ResearchKit/AppCore#16

@p2 It would be easier to deal with this if you kept different changes separate. Naming changes, for instance are very easy to accept. Changes to APCAppDelegate behavior are harder to accept because we need to check for overrides in the app projects. Could you split this PR please?

It seems the PR gets updated whenever I push something, that was not my intention, sorry for that. How can I fix this?

Put your changes in separate branches. We could close this PR, and you should create a separate branch for each change and PR them separately. If you need to use them all together in the meantime, then merge them all into your working branch in your fork.

Alright, let me do that. Thanks.


Permissions feature

These lines in permissions.acl ensure any company can read any other company's data which is not ideal. I wanted to fork this repo and make it such that the read access to other utility companies data is revoked, so competing utility companies cannot read each other's data.
It is my understanding I will need to use composer-passport to achieve this, as I will be required to juggle multiple certificates for different users. Can I have some guidance for it please sir? I would want to work on this and contribute back to the project.
//Utility Companies to have access to their own account
rule UtilityCompanyAccessOwnRecord {
    description: "Allow utilty company to access only their profile"
    participant(p): "org.decentralized.energy.network.UtilityCompany"
    operation: READ, UPDATE, DELETE
    resource(r): "org.decentralized.energy.network.UtilityCompany"
    condition: (r.getIdentifier() === p.getIdentifier())
    action: ALLOW
}

//Utility Companies to have read only access to other Utility Companies
rule UtilityCompanyReadAccessUtilityCompanies {
    description: "Allow utility companies read access to other Utility Companies"
    participant: "org.decentralized.energy.network.UtilityCompany"
    operation: READ
    resource: "org.decentralized.energy.network.UtilityCompany"
    action: ALLOW
}

@varunagarwal315 sounds good.  The permissions.acl would be where you define the access.  You can look at queries.qry where some basic queries are defined, and used in test.js for each participant identity.
For authentication through rest server, I found this https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html

Yes, I am currently trying to run that link on a local deployment.  The Roadmap talks about specific permissions. What kind of permissions are you thinking of? I actually needed some guidance on how to go about coding it and then adding it to this repo as a PR.
BTW are you from the IBM team?

@varunagarwal315 We would like to access rest-server through each identity. I am part of the IBM team and would be interested to see specific permissions applied for each participant through the UI.

OK thanks, I will try to fork and do this. Any tips on how you would want me to proceed?

@raheelzubairy
const resident_to_resident = factory.newTransaction(NS, 'EnergyToCoins');
resident_to_resident.energyRate = 4;
resident_to_resident.energyValue = 10;
resident_to_resident.coinsInc = factory.newRelationship(NS, 'Coins', 'CO_R1');
resident_to_resident.coinsDec = factory.newRelationship(NS, 'Coins', 'CO_R2');
resident_to_resident.energyInc = factory.newRelationship(NS, 'Energy', 'EN_R2');
resident_to_resident.energyDec = factory.newRelationship(NS, 'Energy', 'EN_R1');

These lines (703 - 709) call the EnergyToCoins function that updates values for R1 and R2. However the identity used is R2, so the transaction cannot be completed.
I am a bit confused on how to solve this problem. Even if I were to split the transaction into two parts where R1 were to propose the transaction and R2 were to accept it, a similar problem would be faced.


GKE Private cluster tests

What does this PR do?

Adds GKE Private cluster tests and Qase ID 5
Changes network to run GKE tests

Which issue(s) this PR fixes (optional, in fixes #(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #173
Checklist:

[x] GitHub Actions:
p0_provisioning/p0_import/p1_provisioning[focused run] - https://github.com/rancher/hosted-providers-e2e/actions/runs/11158426674

https://github.com/rancher/hosted-providers-e2e/actions/runs/11161256344


fix code smells

Signed-off-by: Valentina Birsan<EMAIL_ADDRESS>changes :

split function which is too long
reduce nb of parameters for function

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

/test sonar


translation of postcard text german --> english

Could anyone translate this short german text into english?
https://gist.github.com/zaziemo/1d5bb7b99473d85a220a3d23f6077f4f
Some of the expressions are already translated on our website. <3

German is my second language but this may help at least! :)
More women on the stage!
There is no excuse to have any panels without women.
This list of speakers wants to increase the visibility of women at conferences, talkshows, panels and anywhere else where there is public speaking. Lecturers and speakers from many varied disciplines are registered here.
On speakerinnen.org you can:
Create a meaningful profile as an Expert with your topics and references.
Event organizers can find the right speaker for their next event.
Create a profile now!
speakerinnen.org/sign-up
Find your next speaker!
speakerinnen.org
Follow us on Twitter!
@speakerinnen
Follow us on Facebook!
facebook.com/speakerinnen/


Second X and Y axes - feature request

Is it possible to plot secondary X and Y axes, using the recent version? If not, can we get such feature in one of the next releases?
thanks! :)

This is surprisingly difficult to implement in ScottPlot. I'll take a closer look and see what options are available...
Dual-axes are present in QuickPlot https://github.com/swharden/QuickPlot/issues/12#issuecomment-546740606 but that project isn't mature yet.

Unfortunately, this would take a lot of work because ScottPlot was not designed to support multiple axes (or nonlinear axes) and adding this would require modifying a lot of modules. This request is not impossible to achieve, but I don't think it's a good use of my time at this point. Instead, I would like to invest my development time into further developing QuickPlot (which already supports multi-Y axis plots).
... what would you think about having non-interactive multi-axis plots? It's a bit of a hack, but this could be done by creating two ScottPlots, matching their layouts (but having different axes), rendering them as Bitmaps with transparent backgrounds, then "adding" them on top of each other and saving the output. I could add a function to the ScottPlot.Tools module which does this 🤔

Thanks for looking into this option! And I totally understand that efforts need into QuickPlot now. Actually I just convinced myself that a second Y-axis plot is not really needed. I just make a selector on the GUI where the user can select between two plots, this is fast and simple.
Another option could be just to create two plots top of each other, and match their time axis. This would help to see trends and correlations...

Unfortunately, this would take a lot of work because ScottPlot was not designed to support multiple axes (or nonlinear axes) and adding this would require modifying a lot of modules. This request is not impossible to achieve, but I don't think it's a good use of my time at this point. Instead, I would like to invest my development time into further developing QuickPlot (which already supports multi-Y axis plots).
... what would you think about having non-interactive multi-axis plots? It's a bit of a hack, but this could be done by creating two ScottPlots, matching their layouts (but having different axes), rendering them as Bitmaps with transparent backgrounds, then "adding" them on top of each other and saving the output. I could add a function to the ScottPlot.Tools module which does this 🤔

Did you get to implement it? :)

@swharden ah no, I was aware that the full (proper) implementation for the double axes is still on the road map, I was meaning the hack around for static (using transparent pictures) for the ScotPlott.Tools?

This sample code demonstrates how to merge two plots to simulate multiple Y axes. It is pretty bad.
// create one plot with small numbers
var plt1 = new ScottPlot.Plot(400, 300);
plt1.PlotSignal(new double[] { 1, 3, 2, 4 }, color: Color.Blue);

// greate another plot big numbers
var plt2 = new ScottPlot.Plot(400, 300);
plt2.PlotSignal(new double[] { 200, 400, 100, 200 }, color: Color.Red);

// make it clear with no ticks
plt2.Style(figBg: Color.Transparent, dataBg: Color.Transparent);
plt2.YTicks(new double[0], new string[0]);

// draw the second plot on top of the first one
var bmp1 = plt1.GetBitmap();
var bmp2 = plt2.GetBitmap();
Bitmap bmp = new Bitmap(bmp1);
using var gfx = Graphics.FromImage(bmp);
gfx.DrawImage(bmp2, 0, 0);
bmp.Save("combined.bmp");

Problems:

You can only show one of the Y axis ticks
There is not support for showing ticks on the right side yet
Grid lines overlap the lower plot
This is not mouse interactive

I hope this helps!

This sample code demonstrates how to merge two plots to simulate multiple Y axes. It is pretty bad.
// create one plot with small numbers
var plt1 = new ScottPlot.Plot(400, 300);
plt1.PlotSignal(new double[] { 1, 3, 2, 4 }, color: Color.Blue);

// greate another plot big numbers
var plt2 = new ScottPlot.Plot(400, 300);
plt2.PlotSignal(new double[] { 200, 400, 100, 200 }, color: Color.Red);

// make it clear with no ticks
plt2.Style(figBg: Color.Transparent, dataBg: Color.Transparent);
plt2.YTicks(new double[0], new string[0]);
plt2.XTicks(new double[0], new string[0]);
plt2.Grid(false);

// draw the second plot on top of the first one
var bmp1 = plt1.GetBitmap();
var bmp2 = plt2.GetBitmap();
Bitmap bmp = new Bitmap(bmp1);
using var gfx = Graphics.FromImage(bmp);
gfx.DrawImage(bmp2, 0, 0);
bmp.Save("combined.bmp");

The biggest limitation is that you can only show ticks for one Y axis (since there is not support for showing ticks on the right side yet)...
I hope this helps!

I am not sure that you picked the correct image, if so maybe I don't understand exactly what you did in there :)) (visual wise), in any case, let me take this into a new issue, and I will explain in more detailed exactly where I think an issue occurs.


CLEAN: cleanup up platform / python version checks

we have in various locations
os.name, platform.system(), sys.platform
for detecting platform.  Recently add are these functions
in pandas/compat/__init__.py as is_platform_* which are reasonable to standardize on
however, need to find & fix all the other references to make this nice and clean
this includes code and tests
Ideally also add: skip_if_windows functions in pandas/util/testing.py (and replace the use of the direct comparisons) would be gr8.
futhermore any references to to python 3 checks should use PY3 (in pandas/compat):
./pandas/tseries/tests/test_timeseries.py:
   50 :     if sys.version_info > (3,) and sys.platform == 'win32':
   54 :     if sys.version_info < (3,) or sys.platform != 'win32':

I think we could use an update on the wiki on the same

closed by #10542


lakectl - HTTP Client Supporting Retries

Related to #7705
Change Description
Background
See the associated issue for context
New Feature
This PR is only part of the implementation of #7705, but I've decided this part is reviewable and mergeable as a standalone unit. Hopefully, this will make this and other PRs of this implementation easier to reason about and review.
This PR creates a new HTTP client for use in lakectl, based on go-retryablehttp. It supports retries with a custom retry policy tailored for lakeFS and an exponential backoff retry strategy. Its constructor func includes several parameters to tune the retry max count and intervals and the option to provide a custom http.Transport. For seamless integration later on the constructor returns a standard *http.Client.
Testing Details
This PR includes a suite of tests for the custom retry policy and a single test of the client itself with an httptest.Server. I'm not sure if client tests add any value, or maybe we're just retesting things that are already covered by tests in the source repository. Would like your feedback on this.
If we decide they add some additional value, I can create a few more for better coverage.

@eladlachmi could this be closed?


Add possibility to create expectations from dumped request log

add trigger and encoder to dump filtered request/response in single files
extend MockServerClient for using these dumps

@jamesdbloom This pull request is mainly a starting point for a discussion. I would be glad to get your feedback. The aim is to speed up the process of creating prepared mockservers. My attempt:

Set Proxy for test with real endpoint and dump request/response
Remove proxy and initialize MockServer with dumped requests

It is deliberate that expectations are not returned by the proxy or that the MockServer does not support setting expectations from a Proxy request/response dump. This is because of the anti-pattern of record and replay for recording proxies such as betamax.
The key issue is that if test mocks are created like that the mock data becomes over complex and brittle. These types of mock are typically hard to manage and often shared across multiple tests. For example if one or more tests are created using record and replay mocks if the data mocks need to be re-recorded (i.e. due to a new field being added to a response) then the test typically has to be complete re-written.
The proxy aims to avoid the record - replay anti-pattern by providing information about what request where made so expectations can be handle crafted easily.
For this reason I am going to close this PR but I'm happy to discuss this further.  If you have a different point of view please add extra comments.

Hmm, I see your point. I try to explain my intention.
The goal is not to use the recording as is like tapes in betamax. The recording should only facilitate the creation of the expectations. I described the desired workflow above too simplified. In detail:

Set Proxy for test with real endpoint and dump request/response. Then you have a json file your log folder for every request/response pair. TriggerAlwaysPolicy creates a separate file for each file. Otherwise you would have to search in one big log file.
Select the json files you need for your test.
Remove the unnecessary parts of the expectations. Here helps the FilterExpectationEncoder which can remove headers and cookies.
If necessary modify some parts of the expectations.
Copy these prepared json files in your test resources folder.
Create the expectations with one or more of the json files (MockServerClient.createExpectationFromJson())

In this detail it seems easier to just write the expectation manually, but this is more error prone and takes more time.
So there are 2 differences to the existing approach:

Expectations are stored in JSON. This is good if there are complex expectations or long elements which can exceed line limit.
In my opinion its a good thing to reuse the expectations if they are not a complete tape of severeal requests/response pairs, but only a single pair.


Fix IN on complex type inputs with NULL elements

Summary:
A function call a IN (b, c) in Presto returns NULL when any of a, b, or c is complex-type
data that contains nested NULL elements. E.g., select c0 in (c0, c0) from (values (array[array[1, null]])) t(c0).
However, Velox currently returns true for this query. This diff fixes IN to follow the Presto behavior.
Differential Revision: D60397542

I don't think this is quite right, e.g.
select c0 in (array[array[2, null]]) from (values (array[array[1, null]])) t(c0);
this returns false, not null, in Presto even though there's nulls in the complex types in the value and the in predicate
It's probably the case that Presto returns NULL if it has to compare the NULLs inside a complex type, e.g. in the example you provided the value and the in predicate contain the same value so everything, including the NULLs, needs to be compared to verify they're equal.
Is this something that the kNullAsIndeterminate setting can provide as you suggested in the Issue?

I don't think this is quite right, e.g.
select c0 in (array[array[2, null]]) from (values (array[array[1, null]])) t(c0);
this returns false, not null, in Presto even though there's nulls in the complex types in the value and the in predicate
It's probably the case that Presto returns NULL if it has to compare the NULLs inside a complex type, e.g. in the example you provided the value and the in predicate contain the same value so everything, including the NULLs, needs to be compared to verify they're equal.
Is this something that the kNullAsIndeterminate setting can provide as you suggested in the Issue?

@kevinwilfong Thank you for catching this!
I followed the commented semantic here:
https://github.com/facebookincubator/velox/blob/2fb811aa1a0761a1827702489f24032ba0583701/velox/functions/prestosql/InPredicate.cpp#L23-L27
Looks like our comment is inaccurate. Then the other versions of the InPredicate implementation needs to be fixed too...

Looks like the failed test is a DateTimeTest, so likely unrelated to your change.


Convert only french audio track if not in codec list

Hi,
Is there a way to only convert if a french audio track is not in codec list form the autoprocess.ini ? I don't want a conversion for the others language audio tracks.
IE :

I've try custom function and canBypassConvert without success.
Thank you for helping.

Not an option using the base configuration, would need to be a custom function
Feel free to post your custom function that's not working and I'll take a look. canBypassConvert is probably the one you want

If I had DTS in autoprocess.ini I've trying this custom "blockaudiocopy" :
def blockAudioCopy(mp, stream, path, info):
    # Custom function that skips HDR files that are missing proper HDR metadata / framedata
    mp.log.info("Initiating custom audio copy check method.")
    fra_audio_streams = [a for a in info.audio if a.metadata.get('language', '') == 'fra' and (a.metadata.get('codec', '') != 'ac3' or a.metadata.get('codec', '') != 'aac' or a.metadata.get('codec', '') != 'eac3')]
    if stream in fra_audio_streams:
        mp.log.info("found a fra language with not ac3 or aac or eac3 codec, conversion needed")
        return True
    return False

Sorry, I misremembered the name of the custom function, you would want to intervene on the validation function, not canBypassConvert as this is an internal function you shouldn't be modifying unless you're looking to fork the code
def validation(mp, info, path, tagdata):
    # Custom function that skips files that don't have french audio
    mp.log.info("Initiating custom validation method.")
    fra_audio_streams = [a for a in info.audio if a.metadata.get('language', '') == 'fra']
    return len(fra_audio_streams) > 0

Sorry, I misremembered the name of the custom function, you would want to intervene on the validation function, not canBypassConvert as this is an internal function you shouldn't be modifying unless you're looking to fork the code
def validation(mp, info, path, tagdata):
    # Custom function that skips files that don't have french audio
    mp.log.info("Initiating custom validation method.")
    fra_audio_streams = [a for a in info.audio if a.metadata.get('language', '') == 'fra']
    return len(fra_audio_streams) > 0

Thank you but it's not what I want. I would like to don't convert the others audio tracks if not fra, but the file may be converted ...

Got it, that wasn't clear at all
Might be able to do this by getting creative about manipulating the codec settings on the fly for each stream
If you want to always remux nonfrench streams you could force the codec pool to be 'copy' in those instances and then apply a more standard codec pool for the french streams
def blockAudioCopy(mp, stream, path):
    # Custom function that modifies codec pool depending on language
    mp.log.info("Initiating custom audio copy check method.")
    if stream.metadata.get('language') == 'fra':
        mp.settings.acodec = ['ac3', 'eac3', 'aac']  # maintain default behavior
    else:
        mp.settings.acodec = ['copy']  # force copy
    return False

Otherwise if that's still not the desired effect you need to be much more explicit about what you're trying to do

Got it, that wasn't clear at all
Might be able to do this by getting creative about manipulating the codec settings on the fly for each stream
If you want to always remux nonfrench streams you could force the codec pool to be 'copy' in those instances and then apply a more standard codec pool for the french streams
def blockAudioCopy(mp, stream, path):
    # Custom function that modifies codec pool depending on language
    mp.log.info("Initiating custom audio copy check method.")
    if stream.metadata.get('language') == 'fra':
        mp.settings.acodec = ['ac3', 'eac3', 'aac']  # maintain default behavior
    else:
        mp.settings.acodec = ['copy']  # force copy
    return False

Otherwise if that's still not the desired effect you need to be much more explicit about what you're trying to do
Of note, you're essentially bypassing your audio codec settings here and manually setting them, so in the future if you decide you change what codecs you want you'll need to update this function too

Worked like a charm !
Thank you so much :)


Add button in settings to generate debug log

Need to think how to display that and how many lines etc.
Need endpoint from https://github.com/fusion44/blitz_api for it
Add a button in settings to generate a debug report which can be viewed & downloaded.

@fusion44 logs meaning the debug logs to be printed, not each service debug log, but this one:
https://github.com/rootzoll/raspiblitz/blob/dev/home.admin/config.scripts/blitz.debug.sh

The script seems to put out a limited number of lines anyway. I'll just return all lines for now.
If it makes sense, I will make it paged. But for that, I'd have to see the actual output.
I currently can't access my Blitz.

@fusion44  output example https://termbin.com/gcl0o

Endpoint is in, see my comment in https://github.com/fusion44/blitz_api/issues/18

Current blocker: #59

Blocked by https://github.com/fusion44/blitz_api/issues/160

done


Trailing Slash issue with the dashboard

Do you want to request a feature or report a bug?
Bug
What did you do?
Tried to access the dashboard without a trailing slash, as its configured in my IngressRoute
What did you expect to see?
The Dashboard
What did you see instead?
A 404
Output of traefik version: (What version of Traefik are you using?)
v2.2.0

What is your environment & configuration (arguments, toml, provider, platform, ...)?
      --global.checknewversion
      --global.sendanonymoususage
      --entryPoints.traefik.address=:9000
      --entryPoints.web.address=:8000
      --entryPoints.websecure.address=:8443
      --api.dashboard=true
      --ping=true
      --providers.kubernetescrd

IngressRoute definition
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: dashboard
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`traefik.localhost`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))
      kind: Rule
      services:
        - name: api@internal
          kind: TraefikService

Figured we already have that documented, as it's a technical requirement.
https://docs.traefik.io/operations/dashboard/#secure-mode
Closing:


Comparator operator bug?

While running clippy on the receptor, it pointed out this:

https://github.com/George3d6/Inquisitor/blob/master/receptor/receptor_plugins/comparator/src/lib.rs#L147
https://github.com/George3d6/Inquisitor/blob/master/receptor/receptor_plugins/comparator/src/lib.rs#L155

Both of these blocks are the same. Is the second one supposed to be an 'in' or like comparison?

Pressumably the merge has fixed this.

Nah, but the line numbers changed on we. Those entire blocks are the same. Your "contains" block does an equality check.

Lot easier to see in the latest commit:
https://github.com/George3d6/Inquisitor/blob/master/receptor/receptor_plugins/comparator/src/lib.rs#L136
Lines 136-138 and 140-142 are identical despite being under different conditions.

Ups, that was indeed a bug, contains was meant to translate to .contains not ==, for some reason I had thought your pull request fixed that (my bad, I didn't look at it properly). Fixed it now


Update number of badges served each month

We've not updated this number for a year. According to the latest Cloudfare statistics:

We've effectively grown by ~13% since #6278. Hopefully we'll reach a billion by this time next year. 🚀

Messages

:book:

Thanks for contributing to our documentation. We :heart: our documentarians!

:book:
:sparkles: Thanks for your contribution to Shields, @PyvesB!

  Generated by :no_entry_sign: dangerJS against 718f39f27eda15f4e103570d8df88f0bdbd31a23


Figure out why the AppRTC chrome app cannot setup calls when it's the caller

Browsers and versions affected
M50
Description
If the AppRTC App creates the room it fails to setup whilst if it joins an existing room it works fine, seems to be some signalling issue.

Closing due to age.


Image operations do not work within Markdown Extra Tags

Hi,
I have created the following page:

![Sample Image 1](bg.jpg?lightbox=1024&crop=100,100,600,600)

![Sample Image 2](bg.jpg?lightbox=1024&crop=100,100,600,600)

The first image is correclty beeing resized, the second is not.
regards

I believe this is already fixed in the develop branch.  The issue is if you use multiple operations on the same image.
Can you test with the current develop branch?  Will require a composer update for sure.

Is there any way to tell grav to just update my site? I could copy my folder containing the complete grav installation and then run some command to update it. ;) I have ssh access to the box. Do I have to do a clean instal, or is there some trick? Is there some public grav installation from nightly builds with write access?

Best to not actually update your live site. If you are familar with Git, I would:

clone the Grav repo
run bin/grav install to get the vendor dependencies
copy your user folder from your live site into this new test site.

If not familiar with Git/Cloning, I would download this zip: https://github.com/getgrav/grav/archive/develop.zip, extract it in to your webroot, then perform steps 2 and 3.

I recreated on my local and it's not fixed.

It seems to be related to markdown extra, and specifically when a markdown image with enhanced operations is inside an HTML block with markdown=1

BTW, lightbox needs both width and height.  eg:
![Ironcat](ironcat.jpg?lightbox=600,600&cropZoom=100,100)


Test : Add tests for all TodoList related code

This PR fixes #588

Codecov Report

Merging #632 (4d1b89c) into master (0d1649a) will increase coverage by 1.65%.
The diff coverage is 50.00%.

@@             Coverage Diff              @@
##             master     #632      +/-   ##
============================================
+ Coverage     41.98%   43.63%   +1.65%
- Complexity      939      984      +45
============================================
  Files           245      245
  Lines          5033     5042       +9
  Branches        629      632       +3
============================================
+ Hits           2113     2200      +87
+ Misses         2705     2618      -87
- Partials        215      224       +9

Impacted Files
Coverage Δ
Complexity Δ

src/main/java/seedu/address/model/task/Task.java
34.37% <50.00%> (+34.37%)
25.00 <3.00> (+25.00)

...c/parser/contactlistparsers/SortContactParser.java
0.00% <0.00%> (ø)
0.00% <0.00%> (ø%)

src/main/java/seedu/address/model/task/Date.java
35.29% <0.00%> (+35.29%)
3.00% <0.00%> (+3.00%)

...c/main/java/seedu/address/model/task/TaskName.java
41.66% <0.00%> (+41.66%)
2.00% <0.00%> (+2.00%)

.../java/seedu/address/model/task/UniqueTodoList.java
85.36% <0.00%> (+63.41%)
17.00% <0.00%> (+12.00%)

src/main/java/seedu/address/model/task/Status.java
100.00% <0.00%> (+100.00%)
1.00% <0.00%> (+1.00%)

...s/model/task/exceptions/TaskNotFoundException.java
100.00% <0.00%> (+100.00%)
1.00% <0.00%> (+1.00%)

.../model/task/exceptions/DuplicateTaskException.java
100.00% <0.00%> (+100.00%)
1.00% <0.00%> (+1.00%)

Continue to review full report at Codecov.

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


[🐞] Link component not working in the layouts

Which component is affected?
Qwik Runtime
Describe the bug
I'm trying to put link to navigate back to home by passing link component to the layout as it will be the same for whole app but I'm getting this error.
Code(27): Missing Object ID for captured object     at createError (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:68:17)     at logError (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:62:54)     at logErrorAndStop (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:72:17)     at qError (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:135:12)     at mustGetObjId (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:4112:19)     at Array.map (<anonymous>)     at serializeQRL (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:516:40)     at Object.serialize (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:6118:16)     at serializeValue (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:6279:28)     at file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:4195:23     at Array.map (<anonymous>)     at _pauseFromContexts (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:4178:32)     at beforeClose (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/server.mjs:658:30)     at file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:7968:28     at file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:8405:25     at async renderRoot (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:7966:5)     at async _renderSSR (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/core.mjs:7962:5)     at async Proxy.renderToStream (file:///D:/Coding/Frameworks/qwik/newTube/node_modules/@builder.io/qwik/server.mjs:647:3)     at async D:\Coding\Frameworks\qwik\newTube\node_modules\@builder.io\qwik\optimizer.cjs:1840:28
My layout looks like this
import { component$, Slot } from<EMAIL_ADDRESS>import { Link } from<EMAIL_ADDRESS>import Header from "../components/header/header";
import { useApp } from "../contexts/AppProvider";

export default component$(() => {
  const { isDark } = useApp();

  return (
    <>

        <Link href="/">
          Home
        </Link>

        <section class={`flex flex-col w-full h-full px-2 overflow-y-auto`}>
          <Slot />

    </>
  );
});

Reproduction
https://github.com/NdungutseCharles103/newTube
Steps to reproduce
Clone the repo, run yarn install and then run yarn run start
System Info
 System:
    OS: Windows 10 10.0.22623
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
    Memory: 6.36 GB / 15.73 GB
  Binaries:
    Node: 18.13.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 8.19.3 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.1325.0), Chromium (110.0.1587.50)
    Internet Explorer: 11.0.22621.1

Additional Information
No response

can you please run:
npx envinfo --system --npmPackages<EMAIL_ADDRESS>--binaries --browsers
``` and report the system info?

It looks like the link in the layout might not be only the problem but also in the my app provider while trying to fetch data to be used by whole application is causing this problem. I don't if it is because I'm using the same logic as I used to in react.
here is my app provider
import {
  component$,
  createContextId,
  Slot,
  useContext,
  useContextProvider,
  useStore,
  useTask$,
} from<EMAIL_ADDRESS>import { isServer } from<EMAIL_ADDRESS>import { fetcRelatedVideos } from "~/utils/fetch";
import type { IPlayerState, VideoResponse } from "~/utils/types";

interface AppStore {
  isDark: boolean;
  playerState: IPlayerState;
  videos: VideoResponse["contents"];
}

export const AppContext = createContextId<AppStore>("App");

export const useApp = () => useContext(AppContext);

export const AppProvider = component$(() => {
  const appState = useStore<AppStore>({
    isDark: false,
    playerState: {
      progress: 0,
      isFullScreen: false,
      isMuted: false,
      isPicInPic: false,
      isPlaying: false,
      volume: 1,
      loop: "false",
      speed: 1,
      shuffle: false,
    },
    videos: [],
  });

  useTask$(async () => {
    if (isServer) {
      const data: VideoResponse = (await fetcRelatedVideos(
        "kJQP7kiw5Fk"
      )) as VideoResponse;
      appState.videos = data?.contents;
    }
  });

  // useBrowserVisibleTask$(() => {
  //   const sysTheme =
  //     window.matchMedia &&
  //     window.matchMedia("(prefers-color-scheme: dark)").matches;
  //   if (sysTheme) {
  //     // console.log("dark mode", appState);
  //     // appState.isDark = true;
  //   }
  // });

  useContextProvider(AppContext, appState);
  return (

      <Slot />

  );
});

the link to repo
https://github.com/NdungutseCharles103/newTube/blob/main/src/contexts/AppProvider.tsx

Can you test with latest?
0.19.2 and 0.4.0?
can you run npx envinfo --system --npmPackages<EMAIL_ADDRESS>--binaries --browsers in the project directory? the info does not include anything about deps

I upgraded qiwk and qwik-city but still giving me that vite error
my system info and  dependences
System:     OS: Windows 10 10.0.22623     CPU: (8) x64 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz     Memory: 4.93 GB / 15.73 GB   Binaries:     Node: 18.13.0 - C:\Program Files\nodejs\node.EXE     Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD     npm: 8.19.3 - C:\Program Files\nodejs\npm.CMD   Browsers:     Edge: Spartan (44.22621.1325.0), Chromium (110.0.1587.56)     Internet Explorer: 11.0.22621.1   npmPackages:     @builder.io/qwik: 0.19.2 => 0.19.2     @builder.io/qwik-city: 0.4.0 => 0.4.0     @builder.io/qwik-react: 0.3.0 => 0.3.0     @emotion/react: 11.10.6 => 11.10.6     @emotion/styled: 11.10.6 => 11.10.6     @mui/material: 5.11.9 => 5.11.9     @mui/x-data-grid: 5.17.24 => 5.17.24     @types/eslint: 8.21.1 => 8.21.1     @types/node: ^18.14.0 => 18.14.1     @types/node-fetch: latest => 2.6.2     @types/react: 18.0.28 => 18.0.28     @types/react-dom: 18.0.11 => 18.0.11     @typescript-eslint/eslint-plugin: 5.52.0 => 5.52.0     @typescript-eslint/parser: 5.52.0 => 5.52.0     autoprefixer: ^10.4.13 => 10.4.13     axios: ^1.3.3 => 1.3.4     eslint: 8.34.0 => 8.34.0     eslint-plugin-qwik: 0.19.2 => 0.19.2     node-fetch: 3.3.0 => 3.3.0     postcss: ^8.4.16 => 8.4.21     prettier: 2.8.4 => 2.8.4     react: 18.2.0 => 18.2.0     react-dom: 18.2.0 => 18.2.0     react-icons: ^4.7.1 => 4.7.1     tailwindcss: ^3.1.8 => 3.2.7     typescript: 4.9.5 => 4.9.5     undici: 5.20.0 => 5.20.0     vercel: ^28.4.17 => 28.16.7     vite: 4.1.2 => 4.1.2     vite-tsconfig-paths: 3.5.0 => 3.5.0

Commenting useTask in AppProvider and removing Link in the layout>Header seems fix the problem but I want them to be there as I want to share state and component to the entire application

Hi @NdungutseCharles103, with the latest version of Qwik is it still a valid issue?

Hi @NdungutseCharles103, with the latest version of Qwik is it still a valid issue?

I haven't checked yet. I'll try the latest version and update you

Hey @ndungtse, thanks for opening this issue, I saw that this works with the latest version of Qwik 1.3.1, btw a lot of things happened during this months. 🚀
So I'm closing this issue for now, feel free to re-open it if it's still an issue for you.


VS Code App for Android.

Respected Visual Studio Code Team,
I trust this message finds you in good spirits and well.
As an avid developer and a long-time user of Visual Studio Code, I am reaching out to request the release of a dedicated VS Code application for Android devices. With the rapid advancements in mobile technology, Android smartphones now come equipped with powerful RAM, high-performance processors, and even dual-screen or foldable designs. This has effectively minimized the gap between laptops and mobile devices, making it more feasible to carry out professional development tasks on the go.
Currently, there are mobile code editors like Spck Code Editor on the Play Store, which provide a commendable coding experience. However, as a developer who is deeply familiar with and reliant on Visual Studio Code, having a native Android version would enhance productivity significantly, especially when developing apps, extensions, and web applications while mobile.
I kindly request you to consider releasing a VS Code app for Android. This would benefit many developers who, like me, are increasingly leveraging mobile devices for development work due to their enhanced capabilities.
Thank you for your time and consideration. I look forward to your positive response.
Warm regards,
B R Shriradhakrishnasharnam

/duplicate of #206267


etcdserver: use context for Renew

Renew would retry a few times before returning a not primary error that
the client should never see. Instead, use proper timeouts and
then return a request timeout error on failure.
Fixes #6922

lgtm. Defer to @xiang90

lgtm

I assume this is to be backported if 1.6 compatibility is important


When I build a release app and then install it on the actual device, when there is an error [Exception caught by image resource service], the app crashes and shuts down the app. But the remaining projects do not have this error. Can anyone help me? Thank you very much.

I don't think this is related to Flutterfire, please search for similar errors on support channels like StackOverflow.
Closing from here.


POL-649 Process Kafka messages on worker thread

Kafka messages can't be processed on the event loop thread when LightweightEngine is enabled because that thread does not support JTA transactions:
2022-05-03 20:28:09,297 ERROR [io.sma.rea.mes.provider] (vert.x-eventloop-thread-0) SRMSG00201: Error caught while processing a message: io.quarkus.runtime.BlockingOperationNotAllowedException: Cannot start a JTA transaction from the IO thread.
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorRequired.intercept(TransactionalInterceptorRequired.java:30)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorRequired_Bean.intercept(Unknown Source)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:50)
	at io.quarkus.arc.impl.ActivateRequestContextInterceptor.aroundInvoke(ActivateRequestContextInterceptor.java:20)
	at io.quarkus.arc.impl.ActivateRequestContextInterceptor_Bean.intercept(Unknown Source)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:41)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:32)
	at com.redhat.cloud.policies.engine.history.PoliciesHistory_Subclass.put(Unknown Source)
	at com.redhat.cloud.policies.engine.history.PoliciesHistory_ClientProxy.put(Unknown Source)
	at com.redhat.cloud.policies.engine.LightweightEngineImpl.fireTriggers(LightweightEngineImpl.java:237)
	at com.redhat.cloud.policies.engine.LightweightEngineImpl.process(LightweightEngineImpl.java:121)
	at com.redhat.cloud.policies.engine.LightweightEngineImpl_ClientProxy.process(Unknown Source)
	at com.redhat.cloud.policies.engine.process.Receiver.processAsync(Receiver.java:196)

The @Blocking annotation I used to fix that is already used in notifications-backend on prod so it's a well known fix.

I didn't run the tests locally. Something's wrong, checking...

I had to replace the Uni<Void> return type with CompletionStage<Void> to make the @Blocking annotation work. FYI CompletionStage<Void> is what we currently use in notifications.

I want to know how to create transactions without using uni. I look forward to your answer


UAE - explanation of Non-Retrieval vs Retrieval

Hello, could you please add a little explanation of the difference Non-Retrieval and Retrieval tasks for UAE? Why would one be used instead of another? I'm looking to create sentence embeddings to store in a database. Thank you!

Hi @legolego , thanks for following our work.
In UAE, we use different approaches for retrieval and non-retrieval tasks, each serving a different purpose. Retrieval tasks aim to find relevant documents, and as a result, the related documents may not have strict semantic similarities to each other.
For instance, when querying "How about chatgpt?", the related documents should contain information pertaining to "chatgpt," such as "chatgpt is amazing..." or "chatgpt is bad....".
Conversely, non-retrieval tasks, such as semantic textual similarity, require sentences that are semantically similar. For example, a sentence semantically similar to "How about chatgpt?" could be "What is your opinion about chatgpt?".
To distinguish between these two types of tasks, we use different prompts. For retrieval tasks, we use the prompt "Represent this sentence for searching relevant passages: {text}" (Prompts.C in angle_emb). For non-retrieval tasks, we set the prompt to empty, i.e., just input your text without specifying a prompt.
So, if your scenario is retrieval-related, it is highly recommended to set the prompt with angle.set_prompt(prompt=Prompts.C). If not, leave the prompt empty or use angle.set_prompt(prompt=None).

Thank you for replying, that makes it more clear.
I would like to experiment with addition and subtraction of sentence embeddings something like KING - MAN + WOMAN = QUEEN, but for combinations of ideas in sentences. The goal would be to find sentences similar in meaning to the result of the arithmetic.
Would this be a non-retrieval task because semantic similarity is important?

Thank you for replying, that makes it more clear. I would like to experiment with addition and subtraction of sentence embeddings something like KING - MAN + WOMAN = QUEEN, but for combinations of ideas in sentences. The goal would be to find sentences similar in meaning to the result of the arithmetic. Would this be a non-retrieval task because semantic similarity is important?

@legolego It is a good idea and very interesting! You can try the non-retrieval embedding. If the performance is less than expected, you can fine-tune the model on arithmetic datasets. Because our pretraining set does not include arithmetic datasets, we cannot ensure good performance on arithmetic similarity.

Thank you for confirming! Do you have an example of an semantic arithmetic dataset like that? I've never heard of one like that. Searching in Google gave me results about mathematics with numbers, but not arithmetic with the ideas in sentences.

Thank you for your answers!

Hi! I know this is close but related to non-retrieval vs retrieval, how was this handled during training? When providing positive and negative paris did you added the prompt.C at some point? Thank you beforehand.


Modify Export Page Name in Navigation Panel

Given a user is in the ECMPS application [official and workspace]
When the user looks at the navigation panel
Then they will see an option for Export&Report

[x] Export & Report option should be placed in the navigation panel as seen in the screenshot below

Private Zenhub Image

@Qb10 What about the Page title? Don't we need to change that?

@subrataroyCVP ticket doesnt say anything about it so im not quite sure

Private Zenhub Image

Updates to the UI have been completed.


is_outdated_saved recognize new dataset as outdated

When trying to load a dataset saved with new save method it is considered as outdated_dataset. The wrong behavior comes from this line:
https://github.com/braindecode/braindecode/blob/2dbd40cc7951934ad32892770536e360b6188920/braindecode/datautil/serialization.py#L220 which when True results in considering the dataset as outdated. This may not be the case when saved raw or epochs objects were too big and split into multiple files which results in a dataset with multiple .fif files in each folder:
path/
    0/
        0-raw.fif | 0-epo.fif
        0-raw-1.fif | 0-epo-1.fif and so on
        description.json
        raw_preproc_kwargs.json (if raws were preprocessed)
        window_kwargs.json (if this is a windowed dataset)
        window_preproc_kwargs.json  (if windows were preprocessed)
        target_name.json (if target_name is not None and dataset is raw)
    1/
        1-raw.fif | 1-epo.fif
        1-raw-1.fif | 1-epo-1.fif and so on
        description.json
        raw_preproc_kwargs.json (if raws were preprocessed)
        window_kwargs.json (if this is a windowed dataset)
        window_preproc_kwargs.json  (if windows were preprocessed)
        target_name.json (if target_name is not None and dataset is raw)

The idea to fix that would be to remove the condition on different number of description and fif_files. However I am not sure if it can be done because I don't know what was the previous way of saving (I tried to reproduce it but _outdated_save is not working for me anymore). Can anyone confirm that removing won't break the function or propose a new condition on multiple description files per fif file taking into account outdated dataset structure?

Oh I see, yes I did not consider splitting large files, since I never encountered this behavior. I cannot give you a solution right away to fix this. I would have to dig back into it. I don't think it is as easy as removing the line posted above.
One easy option would be to add a flag to is_outdated_saved (https://github.com/braindecode/braindecode/pull/321/files#diff-ffab4ab4433ba5e07e98af8ac01e96b531cca0eb9e7d1ffe2b24663551be030eR127) and just disable it for your dataset, since you know it is fine.
The check is quite costly time wise, so I thought about adding this anyways. The problem will be solved as soon as we will remove the deprecated code.

wouldn't it be simpler to ignore the splits files? Basically you only count the files that end with _raw.fif?

It would. :)  I checked, the patterns for saving files are different in mne and the old braindecode saving function. Finally it's a one line change to make it work. I've already updated the PR.


add create, save, updateOrCreate, destroy, destroyAll method

Coverage decreased (-2.6%) to 97.368% when pulling 3b636ede0942c665dcaa4624b926dac447bebe9f on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

how about this PR? @makara

On it.

I copied the CRUD tests from the couchbase connector. Let's get the passed. @CCharlieLi Can you add the delete hooks.

Just reminder we need to support sentinel from configuration.

Coverage decreased (-22.9%) to 77.128% when pulling 73581b3badaaa2c0430da82a96d149393ac4d02b on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

@makara Sorry for the late reply, please review.

Thanks.

Please don't use Async. You don't need async.parallel here; it's already parallel if you fire the destroys right away as they are async already.
The destroy hook is expected to return an "info". See https://github.com/Wiredcraft/loopback-connector-couchbase3/blob/master/lib/couchbase3.js#L202-L209

Alright, updating.

Coverage decreased (-22.9%) to 77.128% when pulling 685365abf215274efaf42d8599ec5503e59ab266 on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

Coverage decreased (-20.2%) to 79.803% when pulling 24b65d9589d66594ec79784a66c0d91103291f54 on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

@makara Please have a review.

Coverage decreased (-20.3%) to 79.703% when pulling a5ea5dffee5f5ca813a65fb2d6d063898148d60b on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

Coverage decreased (-19.8%) to 80.193% when pulling df4089908f7bb5b8fd43766c5c34e11122683301 on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.

Coverage decreased (-21.4%) to 78.571% when pulling 6401ce05b43f94090e92aa6757478caed6fb5b41 on createAndSave into 7e18810077457b57532d9e30c4a6fabb7d49aae2 on master.


添加JustList: {JustList name}

"symbol":"X",
"address":"TVWwjAYjSNrNBK7q62pgkNz6ahSyDXVTs8",
"chainId":1,
"decimals":18,
"name":"X",
"logoURI":"

"
},
{

Please submit the correct information, invalid information will cause the issue to close

Please submit the correct information, invalid information will cause the issue to close

OK, I resubmitted another one.


Ubuntu 14.10 missing include files errors in go get github.com/go-gl/gl/v3.2-core/gl

While doing go get github.com/go-gl/gl/v3.2-core/gl  on Ubuntu I got error of missing GL/glx.h header file. After fixing include error, I got following error:
/usr/bin/ld: cannot find -lGL
/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status

Fixed both errors by doing sudo apt-get install mesa-common-dev libgl1-mesa-dev.
Hope it helps someone else and documentation should be updated.

Thank you @haisum, I've added these dependencies to the README.


Add support for Matamo in Paella player

Many institutions want to configure Matomo inside the Tobira Paella player. Some were confused why changing the Paella config in Opencast didn't affect Tobira. There are quite a few open questions regarding that.
For starters, we need to use paella-user-tracking and enable es.upv.paella.matomo.userTrackingDataPlugin and es.upv.paella.userEventTracker in the configuration. The Matomo plugin configuration contains quite a bit of stuff that admins need to configure.
Allow Matomo in Paella at all?
The alternative to using the Paella plugin is to have Matomo support in Tobira itself. There are some reasons why this is a good idea or a requirement even:

Tobira could add additional "events" to the tracking data, like what page was visited when, how the search is used, ... and much more. I'm sure people are also interested in that, and not only the actual player interactions.
It was once requested that Tobira should show some basic statistical data (like views or watch time), at least for the owner of the video. To do that, Tobira has to collect that data internally. We don't want to load that data from Matomo as that would make the setup a lot more complex and brittle.
If we should ever switch the player, the data is not collected anymore by the Paella plugin.

There are only two reasons I can think of for adding support for the Matomo Paella plugin:

Collecting the exact same player data from multiple places (Opencast itself, LMS, Tobira) combined into one Matomo instance might be useful. Tobira would probably not offer the exact same data (?).
It's simpler than adding built-in support.

One might think we can add the Paella Matomo Plugin support now and add the built-in one later. But then we end up with two solutions to do the same thing? That's not great?
What do we make configurable?
(This question is only useful if we add support for the plugin)
On one end of the spectrum, Tobira completely mirrors Matomo configuration, i.e. having one Tobira configuration value for every configuration value of the plugin. That would mean more code in Tobira, it would require Tobira to be adjusted whenever a new config is added, and it would be specific to Matomo without Google Analytics support for example.
On the other end, we just let admins completely change the Paella config. But that has problems, too. The current Paella config is hardcoded in the Tobira frontend, so we would have to merge a configured config with that somehow. Also: most things Tobira configures in Paella have to stay like that. I don't think it's a good idea letting admins have full control over the config; it has to be Tobira controlled. Otherwise, we might easily run into a non-robust solution, that might break with any update. I did go through all Paella configuration values and almost all of them should only be set by Tobira, I think. This only leaves the plugins configuration as something admins might want to touch. We have a similar problem there: Tobira already needs to configure loads of plugins and that config should not be changed for consistency and stability.
One option might be: add one Tobira config value paella.plugins which is is a string containing a JSON object. (JSON in TOML, amazing, I know.) That JSON object is merged by Tobira with the built-in plugins object: the configured object will overwrite already existing keys and add new ones. That allows admins to configure Matomo and/or Google analytics. We would add a big warning that configuring this can break the player.
It's worth noting that plugins have to be enabled via JS code before they can be configured, so admins can't just configure arbitrary plugins there. Tobira must have loaded them beforehand. This limits its usefulness. But I also haven't heard any other use case for all of this except Matomo.

Just for reference, here is the protocol of our session on the last Opencast D/A/CH unconference:

In today's meeting we decided to go forward with adding support for the Paella Matomo plugin now, but plan to add proper full support in the future. So the solution we implement now doesn't have to be perfect and we might remove it again in the future once the full version landed.


spectrogram plugin: fix event listeners

fixes #1585

Coverage remained the same at 69.009% when pulling 1cd5da55bad9642f8291701dd94a44a5c712f16e on spectrogram-1585 into 3999f4893456de477566ff12b115216d07733cf3 on master.

In that case，this.wavesurfer.un('redraw', this.render);  in spectrogram.js 338 line,
this.render.bind(this)  and this.render not  the same function.
What about this one?

hm, what about adding a this._onRender = () => this.render(); and use this._onRender for add/remove listener?

ok

@zhang19940101 feel free to open a new PR, I guess the _wrapperClickHandler needs a similar treatment. Bah javascript.

ok


Better explanation of state.router.link and connect

Provide a better explanation of state.router.link and connect in  connect-the-root-component-to-the-state.md

Text rewritten with expanded explanation.

Text rewritten with expanded explanation.


Add Support for OpenTelemetry

Addresses #31
What I did
Added support for OpenTelemetry (https://opentelemetry.io/docs/instrumentation/go/getting-started/)
Please check the browser data on Jaeger
step
1, mage run
2, send a request e.g. curl http://localhost:8080/health
3, open the Jaeger UI (http://localhost:16686/)

Thank you @atsushii for your contribution. I sent a number of requests to the service while jager was running, but wasn't able to see the traces come through. I'm not familiar with OpenTelemetry so won't be of much use to you here.
Before merging, I think it's valuable to see traces for all requests that come into the service.
In this UI, I see only the jager service show up:

@decentralgabe
Did you reload the browser after sending the request? (I missed telling it..)
After reloading the browser, you can see the service like below!

@atsushii I've tried reloading the browser. I even tried using multiple browsers (Safari, Chrome) after sending requests. Still don't see the SSI service show up.

@decentralgabe
Thank you for trying!
I've deleted containers, images, and volumes before starting a new container then still it works.
I am not really sure why you can not see the SSI service but can you plz try to rebuild the container after deleting all related images, containers, and volumes if it is possible.😅

Codecov Report

Merging #60 (1e763d6) into main (c06bae1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #60   +/-   ##
=======================================
  Coverage   26.13%   26.13%
=======================================
  Files          13       13
  Lines         746      746
=======================================
  Hits          195      195
  Misses        521      521
  Partials       30       30

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 c06bae1...1e763d6. Read the comment docs.

Removed all containers and did a fresh checkout. Worked!


[docs] List supported processor architecture in Compatibility section

Why
We are frequently get caught that people ask about ARM support
What
I think that the lack of support for ARM should be noted in "Compatibility" section. I also decided to explicitly call out proc archs that we support.

CC @theletterf


Pass native database type attributes in the DMMF

Problem

Investigating adding Decimal support for https://github.com/RobertCraigie/prisma-client-py.
To implement this correctly, I need to know the precision of the field at the database level as the Python decimal module requires this information to work as expected (see the example below).
However, I could not find any native type information in the DMMF.
Suggested solution

Add a new field to the DMMF
{
  "dmmf": {
    "models": [
      {
        "fields": [
          {
            "nativeAttributes": [
              {
                "name": "Decimal",
                "args": [50, 30]
              }
            ]
          }
        ]
      }
    ]
  }
}

Alternatives

A workaround is to simply set the precision to a very high number, while I do not know what the implications of this would be, I would assume that this solution would massively decrease performance.
It is also not a complete solution, a Decimal could still be created using a higher precision than whatever number I would use.
Additional context

Consider the following situation:
from decimal import Decimal

value = Decimal('1.00000000000000000000000000000000000000000000000000000000000000000000000000009')
print(value + value)

outputs:
2.000000000000000000000000000

This can be fixed, if precision is known / increased:
from decimal import Decimal, getcontext

getcontext().prec = 100
value = Decimal('1.00000000000000000000000000000000000000000000000000000000000000000000000000009')
print(value + value)

outputs:
2.00000000000000000000000000000000000000000000000000000000000000000000000000018

I'm getting a few requests to support the Decimal type in the Python client, would it be possible to implement this soon?
I'm happy to work on this myself  if necessary but I would need a pointer on where to start as I am not familiar with DMMF serialization.

I'm also trying to implement a generator for Scala/Slick-based projects and would love access to the underlying types in order to create the correct static Scala types on the client side.

+1 we'd also love this

There is a PR at https://github.com/prisma/prisma-engines/pull/2660
Some background why we are not "just" merging this: DMMF is already large for bigger Prisma schemas. Adding native type information could have considerable additional impact on that, while not being used (yet) in our main product, Prisma Client. Modifying the PR to only render the native types for custom generators or on demand (via a manifest property by the generator) might be a way around it, but would add an API or data structure that we would probably not want to use in Prisma Client and hence would need to break at some time in the future (to not maintain 2 parallel implementations). We are not sure yet how to overcome that.
(Posting your concrete use cases would still be super helpful @gakonst)

@janpio My specific use case for adding this was to generate stricter Scala types in a custom generator based on the native types specified in the Prisma schema. Right now, we're only confined to the base Prisma types which cause friction when working with deserialized values. For example, Scala has types for UUID (Java), XML, etc.
It seems like DMMF growth is going to be a problem whether this PR is merged or not. What is the calculus on the Prisma team around scaling this generally?

My use-case is that I have Decimal types in my Prismafile which are supported by the JS bindings, but in order to support them in Prisma-Py we need extra information apparently, c.f.: https://github.com/RobertCraigie/prisma-client-py/issues/106#issuecomment-1064436790

Thanks for the use cases, those always help to understand better where you are coming from.
We have many ideas, but no decided upon solution for the DMMF growth. Issues and PRs like these make it clear that we need one. So if you have good and creative suggestions, we would be very open for an issue that suggest an alternative to the current DMMF that would work well for community generators (and thus also for Prisma Client - it's just a generator after all in the end.)

Hello, in case it's needed, here's another use case (that is similar to halfmatthalfcat's). I am currently creating a generator that creates JetBrains Exposed classes so that I can use Prisma's schemas and migration system in Kotlin. Since Exposed itself is a full ORM and has its own representation of the various flavors SQL data types, I need to know the exact type of fields in the Prisma schema. This is to ensure that Prisma's and Exposed's internal representation of the database match as close as possible.
This is especially needed for Prisma's DateTime, which can be an Exposed timestamp(), date(), time(), or datetime() column, which are all represented very differently with Exposed and with Kotlin/Java in general (Instant, LocalDateTime, LocalTime, LocalDate...). I could better determine the type I need to use if Prisma includes the native DB type in its DMMF.
I need this in order to do the Prisma-to-Exposed type conversion properly. Otherwise, I'll be resorting to clumsily parsing the schema file on my end to try and find the @db attributes, which seems to be a horrendous solution :/

Make two npm libraries, one with the dmmf with the native types and one without it. And that's all. We don't need it always, use features

I closed https://github.com/prisma/prisma/issues/6844 as a duplicate of this, it has 9 👍 .
I also closed https://github.com/prisma/prisma/issues/10252 as it also asks for the same change.

Hi @janpio have there been any updates on this?

No. This is being tracked in an epic at https://github.com/prisma/prisma/issues/18561, but we have not implemented any of this.

Thanks for the clarification @janpio. Would be great to see this happen!
For context, I made a generator that's complete with the exception of this crucial piece that's preventing me from releasing it. I had assumed the db native type annotations would've been there before I started developing so was a bit surprised to find that it wasn't there.
Anyways, hope we can prioritize this soon, I think the community would really benefit from it!

To anyone coming across this issue, and while we wait for official support from Prisma, I have had great success parsing the Schema manually in my generator via @mrleebo/prisma-ast!
Here's how I'm using it:
generatorHandler({
  onGenerate: async (options: GeneratorOptions) => {
    const builder = createPrismaSchemaBuilder(options.datamodel)
    const models = options.dmmf.datamodel.models

    models.forEach(model => {
      const schemaModel = builder.findByType('model', { name: model.name })

      if (!schemaModel) throw new Error(`Model ${model.name} not found in schema`)

      model.fields.forEach(field => {
        const schemaField = builder.findByType('field', {
          name: field.name,
          within: schemaModel.properties
        })

        if (!schemaField) throw new Error(`Model ${model.name} not found in schema`)

        // schemaField now contains all attributes, if any!
        const dbAttribute = schemaField.attributes?.find(attr => attr.group === 'db')
        if (dbAttribute?.name === "Uuid") {
          // Do something if the field is UUID
        }
      })
    })
  }
})

Big disclaimer, since this is essentially AST traversal, the performance would probably not be that great.
Perhaps traversing the whole AST and creating a lookup map for model fields would be faster, so as to not traverse potentially the whole tree for every single field.
Another option would be to ditch DMMF completely and only rely on the AST parser for your generator, but my strategy right now is to use DMMF as the source of truth, then AST fields are an optional enhancement to the output. If the AST for some reason cannot find the field, it will simply not enhance the output with the attribute information and instead log a warning.

This would be amazing to have for custom generators :( can't understand why it's not there yet. We cannot unleash the full power of prisma over all languages.

I have created the PRs to add the functionality:
https://github.com/prisma/prisma-engines/pull/5009
https://github.com/prisma/prisma/pull/25324
I would appreciate your support 🙂


Basic Elements: FAB positioning

Making FAB-Positioning possible.
(FAB: Floating Action Button)
Guidelines:
http://www.google.com/design/spec/components/buttons-floating-action-button.html#buttons-floating-action-button-floating-action-button
Positions:

bottom / top / left / right (Can be combined)
Inside cards alignments
React to toasts and snackbars

Dependencies:

Extended Elements: Cards (Done: https://github.com/godesign/nativeDroid2/commit/1618c70ed0ad491970252548a2ef370633743fce)
Extended Elements: Toasts & Snackbars (Done: https://github.com/godesign/nativeDroid2/commit/01bf4020f32d4c9d49721bb906a330314348eca5)

Update notice:
Bottom right version available in toast example:
http://nd2.godesign.ch/examples/extended/toasts.html


PopupMenuButton issues

Use case
I am using PopupMenuButton to display a list of suggestions to the user so that they can select from the suggestions. We should use PopupMenuItem to display each suggestion as required by PopupMenuButton. However, the width of the PopupMenuItem is not expanding to fit the entire screen regardless of my approach to wrap it with

SizedBox or Container with max width of the screen,

The width of the suggestion list is somewhat fixed by default which prevents it from taking the available space. I found more about it in this issue :
https://github.com/flutter/flutter/issues/92591#issuecomment-953417550
Also, The safeArea[ top-bottom ] of PopupMenuButton cannot be removed. This can be registered as a separate issue but I left it here in the same one for consideration.
I cannot find a solution for this issue yet.
Proposal
Flutter should provide a default way for PopupMenuItem to adjust to the full screen width by:

Using a boolean value that might be called setFullScreenWith

On setFullScreenWith value set to true , the PopupMenuItem takes the full width of the screen, else it will have the default property.

Hi @purutechno,
There is a similar issue describing this case https://github.com/flutter/flutter/issues/64918, Please follow up there for further updates, Closing this issue as a duplicate. If you disagree feel free to write in the comments and I will reopen it.
Thank you.


Receiving data multiple times

Listen to Multiple Events on a Pusher Channel
like
const createOrderChannel = async name => {
  await pusher.subscribe({
    channelName: name,
    onEvent: async event => {
      console.log(
        `################### Pusher ==> onEvent: ${
          JSON.parse(event.data).order
        }`,
      );
    },
  });
};

Hi Ahmed, could you share more detail here? Are you expecting to receive the event once but are instead receiving it multiple times, or is it the opposite? What does your console.log output show?

console.log(
################### Pusher ==> onEvent: ${           JSON.parse(event.data).order         },
);

console.log(
################### Pusher ==> onEvent: ${           JSON.parse(event.data).order         },
);
this appears 2 or 3 or more than once

Do you see the event show multiple times in the Pusher Debug console?

so I am facing the exact same problem before on 1.2.2 when I try to init() every time on start a new connection and subscribe a channel, my solution is put the pusher.init() function into the root level of the app start such as app.js or index.js. It will ensure your init() function run only once to prevent such problem. Hope it would be help on your problem too!
This solution is credit by this user: https://github.com/pusher/pusher-websocket-react-native/issues/57#issuecomment-1331976776.
my sample code on app.js:
const initPusher = async () => {
  const pusher = Pusher.getInstance();

  const API_KEY = YOUR_ API_KEY;
  const API_CLUSTER = YOUR_ API_CLUSTER;

  await pusher.init({
    apiKey: API_KEY,
    cluster: API_CLUSTER,
  });
};

const App = () => {

  useEffect(() => {
    initPusher();
  }, []);

  return (
    <>
      ...rest of your code
    </>
  );
};

Thanks for the suggested solution @maxcheung1996
I'll close this out as we haven't had any more info from the original reporter. If you need any further support please reach out at https://support.pusher.com/hc/en-us/requests/new

so I am facing the exact same problem before on 1.2.2 when I try to init() every time on start a new connection and subscribe a channel, my solution is put the pusher.init() function into the root level of the app start such as app.js or index.js. It will ensure your init() function run only once to prevent such problem. Hope it would be help on your problem too!
This solution is credit by this contributior: #57 (comment).
my sample code on app.js:
const initPusher = async () => {
  const pusher = Pusher.getInstance();

  const API_KEY = YOUR_ API_KEY;
  const API_CLUSTER = YOUR_ API_CLUSTER;

  await pusher.init({
    apiKey: API_KEY,
    cluster: API_CLUSTER,
  });
};

const App = () => {

  useEffect(() => {
    initPusher();
  }, []);

  return (
    <>
      ...rest of your code
    </>
  );
};

Many Thanks @maxcheung1996  this works perfect. <3


Build Error on clean clone

A clone and attempt at a build produces failures which may not be seen on previously built projects.
PS C:\repos\allReady\AllReadyApp\Web-App> dotnet restore
log  : Restoring packages for C:\repos\allReady\AllReadyApp\Web-App\AllReady.UnitTest\project.json...
log  : Restoring packages for C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Restoring packages for tool 'Microsoft.AspNetCore.Razor.Tools' in C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Restoring packages for tool 'Microsoft.AspNetCore.Server.IISIntegration.Tools' in C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Restoring packages for tool 'Microsoft.EntityFrameworkCore.Tools' in C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Lock file has not changed. Skipping lock file write. Path: C:\repos\allReady\AllReadyApp\Web-App\AllReady.UnitTest\project.lock.json
log  : C:\repos\allReady\AllReadyApp\Web-App\AllReady.UnitTest\project.json
log  : Restore completed in 10215ms.
log  : Restoring packages for tool 'Microsoft.Extensions.SecretManager.Tools' in C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Restoring packages for tool 'Microsoft.VisualStudio.Web.CodeGeneration.Tools' in C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json...
log  : Lock file has not changed. Skipping lock file write. Path: C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.lock.json
log  : C:\repos\allReady\AllReadyApp\Web-App\AllReady\project.json
log  : Restore completed in 13705ms.
PS C:\repos\allReady\AllReadyApp\Web-App> dotnet build .\AllReady
Project AllReady.Core (.NETStandard,Version=v1.3) was previously compiled. Skipping compilation.
Project AllReady (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing
Compiling AllReady for .NETCoreApp,Version=v1.0
dotnet : Object reference not set to an instance of an object.
At line:1 char:1

dotnet build .\AllReady

  + CategoryInfo          : NotSpecified: (Object referenc...e of an object.:String) [], RemoteException
  + FullyQualifiedErrorId : NativeCommandError

C:\Program Files\dotnet\dotnet.exe compile-csc @C:\repos\allReady\AllReadyApp\Web-App\AllReady\obj\Debug\netcoreapp1.0\dotnet-compile.rsp returned Exit Code 1
Compilation failed.
0 Warning(s)
0 Error(s)
Time elapsed 00:00:06.0844961

PR on it's way

Closing after merge


EmailAddress.normal can be extremely slow for certain mail addresses

I played around with our Rails app, which uses EmailAddress.normal('some_mail_address', host_encoding: :unicode) to show previously normalized mail addresses in a format which is more readable to our Users, to test something unrelated to this issue.
After creating a fake User with the mail address<EMAIL_ADDRESS>I noticed that the view which uses<EMAIL_ADDRESS>host_encoding: :unicode) took a few seconds to render.
After some debugging, I found that I could reproduce this issue (IRB output):
require 'benchmark'
=> true
require 'email_address'
=> true
puts Benchmark.measure {<EMAIL_ADDRESS>host_encoding: :unicode) }
  0.002057   0.001057   0.003114 (  4.149702)
=> nil

So calling EmailAddress.normal in this case takes more than 4 seconds (!) on my 2018 MacBook Pro with Ruby 2.6.5 and version 0.1.12 of this gem installed.

> puts Benchmark.measure {<EMAIL_ADDRESS>host_encoding: :unicode) }
  0.001084   0.000292   0.001376 (  0.003397)

Maybe there are some delays with network? EmailAddress can check MX records.
Or you can try to debug with something like rbspy.

Thanks for the quick reply. Seems to be big network delays, as the domain does not exist. Setting EmailAddress::Config.setting(:host_validation, :syntax) does the trick.

I guess, if you see small number in the first three columns (user, system and total) and a large one in the last (real) — this is I/O time (memory or network).

Yes, indeed …


Token endpoint, take client requested token expiry time

Description:
Client can requested token expiry time in the request. If it is not provided default expiry time will used.
Suggested Labels:

Suggested Assignees:

Affected Product Version:
OS, DB, other environment details and versions:
Steps to reproduce:
Related Issues:

fixed in https://github.com/wso2/carbon-auth/pull/126


Notebook: Installing software/getting around

See the spreadsheet for details

Content
Programming

SF
AO

Ideas/prereqs:
The terminal, understanding folders and paths, where files go when you download them, computational notebooks, code cells, markdown cells, cell output, blocks programming, generating/executing code from blocks, variables, and functions
Direct link
https://jupyter.olney.ai/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fmemphis-iis%2Fdatawhys-content-notebooks&subPath=Installing-software-getting-around.ipynb&app=lab

Closing for now with respect to the interns, but will reopen afterwards (addressing this as a free standing instructional program).
One thing I noticed in demonstrating today is that videos or a "wizard" model that self-demonstrates might be a good way to present this information.


Image out of date indicator stays green

For most thirdparty images I use the "out of date" indicator works fine. But I cannot get it to turn red for my own images, after I push a new version to Dockerhub. The repo is not private, I correctly use the latest tag, and when I manually "Recreate" the container it does pull the latest image. I also waited several days to rule out any caching.
So what could be wrong causing Portainer to not detect the updates? The hash of the local image is clearly different from the the hash of the "latest" image on Dockerhub, so I cannot think of any reason why it stays green.

Caching is purely local.