onAuthStateChange doesn't fire when pressing link from signup

Describe the bug
I follow the tutorial https://supabase.com/docs/guides/getting-started/tutorials/with-flutter for the setup.
I recieved the mail and press the link expect here I dont have any event fire from the listener.
When I'm back in the application the user is validated in the back-office, but still no current session in my app and no event trigger.
To Reproduce
I followed the steps descrided here
Here is my initState function:
void initState() {
_authStateSubscription = supabase.auth.onAuthStateChange.listen((data) {
      print('data: $data');
      final session = data.session;
});
    super.initState();

Expected behavior
From what I understand it should trigger a new event and my user should be connected with a non-null session.
Screenshots
I do recieve a intent with everything :
D/com.llfbandit.app_links(12213): handleIntent: (Action) android.intent.action.VIEW
D/com.llfbandit.app_links(12213): handleIntent: (Data) domain.com://login-callback/#access_token=abcdef&expires_in=3600&refresh_token=ghij&token_type=bearer&type=signup

Version (please complete the following information):
On macOS
├── supabase_flutter 1.10.6
│   ├── supabase 1.9.5
│   │   ├── functions_client 1.3.2
│   │   ├── gotrue 1.9.0
│   │   ├── postgrest 1.3.2
│   │   ├── realtime_client 1.1.1
│   │   ├── storage_client 1.5.1

(And thanks for the amazing job here !  🙏 )

Did you edit the Info.plist for macos as shown here?

Sure, on android too (I'm currently testing on my android phone) the redirection seems to have no issue

Yeah created today !
The intent url should have a code query ?

Please show your Supabase.initialize() method. If you are using pkce it should contain a code parameter instead of the access_token parameter.

I thought you were using signInWithOTP, because that's used in the tutorial. But you found a bug, because pkce should be implemented for signUp as well. Created the linked pr to fix this.


Fix shared resources

This PR allows to specify files in config[run][exclude] that are not shared when config[run][shared_resources]=base.
exclude accepts a list of strings, the string only needs to match the start of a filename since the function startswith() is used in the helpers function. E.g. "transport_data" would exclude both transport_data.csv and transport_data_{simpl}_{clusters}.csv from filesharing.
Please note that a corresponding PR in the pypsa-eur/ariadne2 branch is needed in order for this PR to work.
https://github.com/PyPSA/pypsa-eur/pull/1050

Having some trouble with the filesharing of the costs_{year}.csv. Workflow wants them to be in the individual resources/scenario/ directory but can't execute rule retrieve_cost_data.

As mentioned before, this PR only works with this PR https://github.com/PyPSA/pypsa-ariadne/pull/78. I merged that one into this branch. Not sure about best practice ...


Added front end checks for variant curation rules

Closes #47
Rules implemented (in order, ie whichever one is hit first is triggered) (invalid options are greyed out)
If no flags => lof only
if flowchart overridden => anything
if no-read-data => uncertain only
if reference-error => not lof only
if mapping or genotype or inconsequential or resuce => uncertain, likelynot or not lof only
if any other flag (not from the above list) and not custom flag => lof or likely lof or uncertain
Easy to add more rules later
Selected verdicts which are then invalid by further flagging (eg lof was ticked as verdict and then no-read-data flag was selected) are cleared
Added clear button to remove verdicts
Mapping/genotype/inconsequential/rescue can only selected if at least one child is selected AND will be deselected if all children are later deselected
Added tick or cross beside variants on assigned variants page depending on if the current curation follows the rules or not. This makes it easy to spot and recurate non-compliant curations. Should be effective for existing curations and all future curation will not be able to be saved as non-compliant.

This is awesome, thanks @danielreti!

@danielreti
Nice work! I like the approach of splitting the verdict validation logic out into a separate function to handle future cases with ease. Unfortunately there's a bug and the first rule doesn't work for me when custom flags exist. I'd also like to pair program with you to clean up this solution a bit - there are some really good ideas in here that need a bit of refactoring to highlight the semantics behind the new moving parts and make it bit more human readable.

@SamBryen If a child of Mapping/genotype/inconsequential/rescue etc is selected, should these parent flags be automatically selected?

@daniaki nope, it is up to the curator to decide if the child flags are enough to justify marking the parent flag as well. The parent flag should only be selectable if at least one child flag is selected though, as this provides more specific information about why the parent flag was selected.
eg. a variant has low read depth, so the read depth flag is selected, but the curator thinks the variant is probably real anyway, so would not selected the genotype parent flag. If the read depth was so low that they thought it was a genotyping error, then they must click read depth first, before selecting the parent flag, so that everyone knows why it was considered a genotyping error.
Thanks!

@SamBryen Another question! Which verdicts are allowed if only custom flags are selected?

@daniaki just LoF. I don't want custom flags to impact these rules at all. We can always select "flow chart overridden" if exceptions come up. Cheers!


[enhancement]: make github actions run correctly when draft is marked ready for review

Is there an existing issue for this?

[X] I have searched the existing issues

Contact Details
No response
What should this feature add?
There is a conditional check in our github actions that determines whether to run the real action, or a "skip" version of the action which auto-passes.
We are not running GH actions on draft PRs. Sometimes when you mark a PR as ready for review, this conditional does not appear to work as expected, and it runs the "skip" actions when it should run the real ones.
I've noticed this several times, but I'm not sure how to reliably reproduce the issue.
Alternatives
No response
Aditional Content
No response

See #4032 for an example of a chonky PR that is having its tests skipped

Resolved in #4122


add fitPlant by @KrisKodira

[x] Project URL:
[x] Update contents.json instead of README
[x] One project per pull request
[x] Screenshot included
[x] Avoid iOS or open-source in description as it is assumed
[x] Use this commit title format if applicable: Add app-name by @github-username
[x] Use approved format for your entry

3 Warnings
⚠ 	Found 2 link issues
⚠ 	Found 1 link issue
⚠ 	Found 8 link issues
Link issues by awesome_bot
Line 	Status 	Link
84 	404 https://itunes.apple.com/app/g.o.-tracker-4-compassion/id1100240821
174 	404 https://itunes.apple.com/app/compass-a-minimal-compass-app/id1231545538
Link issue by awesome_bot
Line 	Status 	Link
1247 	404 http://www.linphone.org/technical-corner/linphone/downloads
Link issues by awesome_bot
Line 	Status 	Link
79 	301 https://github.com/fnzeta/WhatsUp redirects to
https://github.com/satishbabariya/WhatsUp
1265 	404 https://github.com/JRock007/Tob
1724 	301 https://github.com/jVirus/ios-spritekit-tic-tac-toe redirects to
https://github.com/jVirus/tic-tac-toe
1930 	404 https://raw.githubusercontent.com/nightscout/nightguard/master/images/screen1.jpg
1931 	404 https://raw.githubusercontent.com/nightscout/nightguard/master/images/screen2.jpg
1932 	404 https://raw.githubusercontent.com/nightscout/nightguard/master/images/screen3.jpg
1947 	404 https://github.com/matiasvillaverde/mobile-ios-vipergame
1948 	404 https://raw.githubusercontent.com/matiasvillaverde/mobile-ios-vipergame/master/header.png
Generated by 🚫 Danger

Is this relevant for me?

Is this relevant for me?

Hi @KrisKodira, don't pay attention to that. It isn't relevant to you :-)

@KrisKodira thank you!


kofam_scan error.

After installation of kofam_scan, I got following error:
./exec_annotation -h
./exec_annotation: /data/public/kofamscan/kofam_scan-1.3.0/lib/kofam_scan/executor.rb:175: multiple assignment in conditional (SyntaxError)

It seems there's ruby syntax error.

Hi,
I am actually not sure about this error. MicrobeAnnotator uses kofamscan for the first step but this error appears to be related to kofamscan itself. Maybe you can track this error or a similar one in their GitHub site? https://github.com/takaram/kofam_scan


{lang} variable not working inside custom collection link

Expected behaviour
The following code should generate category archive pages for every language:
localhost:4567/en/category
localhost:4567/hu/category
Actual behaviour
The {lang} variable is not parsed at blog.custom_collections.category.link, so i get category archives without the proper locale
Steps to reproduce the problem
activate :blog do |blog|
  blog.sources = "articles/{lang}/{year}-{month}-{day}-{title}.html"
  blog.permalink = "{lang}/articles/{category}/{title}.html"
  blog.layout = "article"
  blog.custom_collections = {
    category: {
      link: '{lang}/{category}.html',
      template: 'category.html'
    }
  }
end

With two files located in:
source/articles/en/2017-01-01-title-en.html.markdown
source/articles/hu/2017-01-01-title-hu.html.markdown
And both files include category:Something in frontmatter
Additional information

Ruby version: ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
Middleman version: ~> 4.2
Middleman Blog version: 4.0.2
OS version: macOS 10.12.4

ℹ This issue is stale because it has been open for more than 90 days with no activity. It will be closed in 30 days if no further activity occurs. Thank you for your contributions.


Tail entity and relation swapped?

It seems that the tail entity and the relation are swapped here. If I try to pretrain the model with data generated with this script I get an error because the relation indices are larger than the relation embedding matrix.
https://github.com/THU-KEG/KEPLER/blob/14f82c2d0e53e44f3d5eb1be43c7aa8d2722b523/examples/KEPLER/Pretrain/KGpreprocess.py#L23

Thanks a lot for pointing this out! This coordinates with our previous data format and I forgot to change it.


Installation fails with error

Description
Installation fails with error
Failed to install extension: installation could not be completed due to: executing 'docker --context desktop-linux pull docker/volumes-backup-extension:1.1.2' : exit status 1: Error response from daemon: Head "https://registry-1.docker.io/v2/docker/volumes-backup-extension/manifests/1.1.2": EOF

Steps to reproduce
Steps to reproduce the behavior:

Open Docker desktop dashboard
Go to "Add Extensions"
Find "Volumes Backup & Share"
Click "Install"
Observe error message as above

Expected behavior
Installation succeeds
Output of docker extension version:
Client Version: v0.2.17
Server API Version: 0.3.3

Output of docker version:
Client:
 Cloud integration: v1.0.29
 Version:           20.10.22
 API version:       1.41
 Go version:        go1.18.9
 Git commit:        3a2c30b
 Built:             Thu Dec 15 22:28:41 2022
 OS/Arch:           darwin/amd64
 Context:           default
 Experimental:      true

Server: Docker Desktop 4.16.2 (95914)
 Engine:
  Version:          20.10.22
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.9
  Git commit:       42c8b31
  Built:            Thu Dec 15 22:26:14 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.14
  GitCommit:        9ba4b250366a5ddde94bb7c9d1def331423aa323
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Hi @atshakil, it seems the error happens when pulling the image from the DockerHub registry. Is your laptop behind a corporate proxy? Does it happen the same when installing other extensions?

Apparently, the issue was network related. I could install the extension today without any error.
Closing as not relevant.


Regroup NEI IMC and add catalyst for complex fusion

plz check gtpp is loaded when send mk4 fusion imc


Pass click event to toggle and onToggled

Hey there, I have a use case to handle the event fired when clicking the underlying dom node that triggers the toggle and onToggled handler. I've created a PR with how this might be implemented.
Let me know what you think! https://github.com/luukdv/hamburger-react/pull/40

Thanks for the suggestion. I've replied here: https://github.com/luukdv/hamburger-react/pull/40#issuecomment-878076635


Merge upstream

This PR merges monorepo commit 718b9b018dd821.

I’m a bit curious about how we picked the upstream commit https://github.com/ethstorage/optimism/commit/718b9b018dd821b0bd205df5c6d02ac7dbbba77d, Was it related to a specific release version of the OP Stack here

I’m a bit curious about how we picked the upstream commit 718b9b0, Was it related to a specific release version of the OP Stack here

It was the tip of the upstream's develop branch at the beginning of merge.

Should we pick a specific release version to merge? I noticed that op-geth follows this method in practice here

Should we pick a specific release version to merge? I noticed that op-geth follows this method in practice here

We'll merge with Holocene version when it's released. Before that, we'll just merge the latest code.

Should we pick a specific release version to merge? I noticed that op-geth follows this method in practice here

We'll merge with Holocene version when it's released. Before that, we'll just merge the latest code.

The OP team releases minor versions quite frequently, as shown in the link, where both OP Stack v1.9.3 and v1.9.2 were released in September. I would suggest merging a specific release version for better code stability.

The OP team releases minor versions quite frequently, as shown in the link, where both OP Stack v1.9.3 and v1.9.2 were released in September. I would suggest merging a specific release version for better code stability.

We can merge a release version in a separate PR, which will be small. But based on previous experience, the code quality of develop branch is also quite good.

The OP team releases minor versions quite frequently, as shown in the link, where both OP Stack v1.9.3 and v1.9.2 were released in September. I would suggest merging a specific release version for better code stability.

We can merge a release version in a separate PR, which will be small. But based on previous experience, the code quality of develop branch is also quite good.

The tests (e.g., CI) sometimes fail at develop branch (as I experienced these days) so I think the recent release may be good merge point.

The OP team releases minor versions quite frequently, as shown in the link, where both OP Stack v1.9.3 and v1.9.2 were released in September. I would suggest merging a specific release version for better code stability.

We can merge a release version in a separate PR, which will be small. But based on previous experience, the code quality of develop branch is also quite good.

The tests (e.g., CI) sometimes fail at develop branch (as I experienced these days) so I think the recent release may be good merge point.

When we're ready to deploy the next testnet, I'll ensure to merge with latest release version.
As this PR is already very big, the most important thing for this PR is to ensure our own logic remains in the correct places.


Add missing lastIpAddress logic into undoblock

Nodes were stuck on the network:

Added it into the undoblock database, and made sure that if a block is undone, that the old ipAddress is restored

What I think happened:

A flux node was confirmed on the network with Ip Address: A
5 blocks later it sent a new confirmation tx to the network in which an ip address change was made to Ip Address: B
The tx was mined into a block, and broadcasted out as block: 1
Another block was also mined that orphaned block 1, and replaced it: calling it block 2
Because this lastIpAddress logic wasn't in place, when block 1 was orphaned its ip address stayed as B, instead of reverting back to A.

Nice findings, adding some supporting transactions of confirm node ip change and log data
2021-04-27 16:18:39 TRACKFAIL: confirmed too soon
2021-04-27 16:18:39 outpoint: COutPoint(30a5178db0, 3)
2021-04-27 16:18:39 ncurrentheight: 847231
2021-04-27 16:18:39 lastconfirmedblock: 847226
2021-04-27 16:18:39 ERROR: zelnode-tx-invalid-update-confirm-outpoint-not-confirmed-or-too-soon
2021-04-27 16:18:39 ERROR: ContextualCheckBlock: Failed Check tx : ab0311922f55440aef70eb16c91f49c42705ad119202cf2681f16fb823340465, on block :<PHONE_NUMBER>1ed3d063434746d14c1ee0f55a1e7922a6266346c759d8fab2d8a7

height 847226: https://explorer.runonflux.io/tx/ad98c88dc59b601884cdb4fde1b7fcc0e79b502fa60f3dc3d8400439a1a5f654
height 847232: https://explorer.runonflux.io/tx/ab0311922f55440aef70eb16c91f49c42705ad119202cf2681f16fb823340465
utack


Feature Request: Fix New Gmail

I am not sure if this extension can help with the new annoyance in new Gmail but here is the issue that I face on it (and friends have confirmed that they can replicate it at their end). This is not related to pasting. But copying text. But since I am trying to paste the text into another browser tab, I thought you might be able to look into it and see if it can be fixed.
Basically what is happening is that Gmail is messing up with selection of text that you are trying to copy. Most of the times the selection just disappears (text gets unselected). Sometimes, Gmail would expand the selection to include images and text content around the text while you are trying to select the text. The only option is to reselect the text.
This seems to happen only on freshly opened unread mails. To replicate:
Open (new) Gmail.
Locate an unread mail.
Open it.
Select some text in the mail.
Wait for a second.
Gmail unselects the text. This does not happen every single time. But it does happen more than 7-8 times out of ten. If you reselect, Gmail does not interfere again. If the mail was opened previously, it does not happen from my experience. This issue has become such a major annoyance that I tend to do a Control+A, wait for a second and two and then proceed with copying the text that needs to be pasted elsewhere.
I have managed to replicate this issue in Chrome and Firefox. In incognito modes with no extensions interfering with browser elements.
If other users of this app are reading this post, I request them to try to replicate this issue and post their experience. Thanks.

I keep forgetting to try to reproduce this problem while I have an unread email. If you activate the extension for any particular site, it will hook into copy, cut & paste events, so that the browser's default will be used. You probably don't want to activate this extension for Gmail though, as they probably do helpful things on paste events that you want to preserve. This extension doesn't currently let you declare which specific events you want it to hook into for any particular site, as the configuration for that seems like it would be overly cumbersome for rare benefit.

yeah. i guess it's time to switch to a desktop client for email because this issue is driving me crazy and trying to fix it is likely to break a lot more things. thanks though.

I would suggest looking to see if there are any Tampermonkey/Greasemonkey scripts that can remedy the situation.


Prepared statement support in MySQL and PostgreSQL

In order to support prepared statement, we need to implement a parse-bind-execute process in frontend caches parsed statement at connection-session scope.

some references:
https://www.postgresql.org/docs/current/sql-prepare.html
https://en.wikipedia.org/wiki/Prepared_statement
https://dev.mysql.com/doc/refman/8.0/en/sql-prepared-statements.html

@SSebo I think "prepared" stmt should be handled here:
https://github.com/GreptimeTeam/greptimedb/blob/57979c9d3dba13beef5d63b4dc73fa1b3281e7e6/src/servers/src/mysql/handler.rs#L111
ane then "execute" here:
https://github.com/GreptimeTeam/greptimedb/blob/57979c9d3dba13beef5d63b4dc73fa1b3281e7e6/src/servers/src/mysql/handler.rs#L123

@MichaelScofield Does this issue dependent on https://github.com/GreptimeTeam/greptimedb/issues/600 ?

@SSebo yes, part of it. The session crate was introduced in this PR already, I think prepared stmt can be stored in the QueryContext now.

@SSebo yes, part of it. The session crate was introduced in this PR already, I think prepared stmt can be stored in the QueryContext now.

Good job! you can assign this to me.

@MichaelScofield I found prepare statement is not work for msql-srv crate. fn on_prepare(&mut self, _query: &str, info: StatementMetaWriter<W>) -> io::Result<()> is not called back when execute PREPARE stmt1 FROM 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse';

@SSebo It seems you have to use [COM_STMT_PREPARE](https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_com_stmt_prepare.html) to trigger the callback of on_prepare. It is not text protocol.

@SSebo It seems you have to use COM_STMT_PREPARE to trigger the callback of on_prepare. It is not text protocol.

I debug the msql-srv, found the type is not  [COM_STMT_PREPARE](https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_com_stmt_prepare.html) https://github.com/jonhoo/msql-srv/blob/26a5c35ed648f31cd2bb3943806e11b61b9dfd90/src/commands.rs#L106-L126
when execute that statement through mysql client to msql-srv
but It is ok when I execute real mysql server.

@SSebo prepare stmt in mysql could be executed in mysql-cli like this, and this feature request is tracked in #769 . I think in this issue, we can focus on the "COM_STMT_PREPARE" type of prepare stmt. At last, it's the most often used type of prepare stmt. (Applications use some mysql drivers tend to use binary protocol to submit prepare stmt.)
As for pg, there're "simple" and "extended" query protocols, and prepare stmt uses the latter one. pgwire has the corresponding "simple" and "extended" handler for us to implement prepare stmt.

@SSebo prepare stmt in mysql could be executed in mysql-cli like this

the prepare statement I used to execute is from this to mysql-cli, it can not trigger on_prepare.

@SSebo Yes, it's not COM_STMT_PREPARE. It's not using binary protocol, in the mysql command cli. It's the other form of prepare stmt.

ping @SSebo , any updates?

Since MySQL and PG support prepared statement in different ways,
I would like to split the work into multiple small parts:
MySQL
mysql> PREPARE stmt1 FROM 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse';
mysql> SET @a = 3;
mysql> SET @b = 4;
mysql> EXECUTE stmt1 USING @a, @b;
+------------+
| hypotenuse |
+------------+
|          5 |
+------------+
mysql> DEALLOCATE PREPARE stmt1;

[ ] support subset of SET statement (not include GLOBAL\SYSTEM system_var).
[ ] support PREPARE statment
[ ] support EXECUTE statement
[ ] support DEALLOCATE statement

Postgres
PREPARE fooplan (int, text, bool, numeric) AS
    INSERT INTO foo VALUES($1, $2, $3, $4);
EXECUTE fooplan(1, 'Hunter Valley', 't', 200.00);
DEALLOCATE PREPARE fooplan;

[ ] support PREPARE statment
[ ] support EXECUTE statement
[ ] support DEALLOCATE statement

hi @SSebo , at least in modern postgresql clients, prepare keyword is no longer used. I have implemented prepared statement for postgresql in #925. Now it should work for most clients except rust-postgres, which uses parameter type inference that requires an upgrade of datafusion to support.
I suggest you to check mysql clients if prepare keyword are actually used. Mysql has a binary protocol for prepared statement: https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_command_phase_ps.html

@sunng87 Got it. I'll do the MySQL binary protocol prepared statements

[ ] COM_STMT_PREPARE  MysqlShim::on_prepare
[ ] COM_STMT_EXECUTE MysqlShim::on_execute
[ ] COM_STMT_CLOSE MysqlShim::on_close

It takes me lots of times to figure out how to infer the placeholder types in prepared sql which used in ' COM_STMT_PREPARE_OK'.
Infer prepared statement parameter types supported by datafusion by this PR https://github.com/apache/arrow-datafusion/pull/4701
I patched the latest datafusion to greptime used revision for prepared statement logic to infer type https://github.com/apache/arrow-datafusion/compare/main...SSebo:arrow-datafusion:prepare.
When I checked the  rust, golang, and c mysql connector source code, I found the type information just ignored.
Only the number of params is used.  so in my PR, just generate some dummy column in prepare phase.

@sunng87 @MichaelScofield I'm working on the type infer version of prepare. Should statement be saved or  plain query string? Since do_statement_query is removed. there is not way to execute statement.
Could you give me some advice?

@SSebo do_statement_query is removed because we are planning to not support executing SQLs directly in datanode instance, all protocol related tasks are handled in frontend. As tracked in #1010. That said, in the mean time, there's a StatementHandler implemented for datanode instance that can be used to execute stmt.

I would suggest to cache LogicalPlan as prepared statement eventually because it's the most structured form of a query. Datafusion's LogicalPlan is capable with parameter type inference and replacement.
At the moment we only use LogicalPlan for selects but @MichaelScofield is going to change this in #1010.
I think after the refactoring, protocol servers(mysql/pg) are responsible for 1. parsing sql query string to statement in protocol server's dialect; 2. transforming statement into neutral LogicalPlan. SqlHandlers will execute LogicalPlans directly.
If we have a plan for this, I think @SSebo can hold on the work on prepared statement and join the refactoring above. @MichaelScofield WDTY

@SSebo you are welcome to join #1010 , I think we can start from implementing LogicalPlan::Prepare in query engine.

@sunng87 https://docs.pingcap.com/tidb/v5.4/sql-prepared-plan-cache this feature is very similar to your idea.

The final PR was merged https://github.com/GreptimeTeam/greptimedb/pull/1813
We can close this issue right now, thanks to all of you.


[stack] section drag re-ordering broken

sometimes dragging a node from the tree into a stack drops it in an unexpected place
sometimes it freezes the ui on drop right at the moment before it can render the final positions of things, for 100s to 1000s of ms
sometimes reordering inside a stack will arrive at unexpected positions, esp if dropping an item in the first or last position

sometimes dragging a node from the tree into a stack drops it in an unexpected place

I tried this a number of times in a few different situations and wasn’t able to reproduce. If you can still repro this, maybe we should pair.

sometimes it freezes the ui on drop right at the moment before it can render the final positions of things, for 100s to 1000s of ms

Drop is when ECHO “writes” the change, I think this issue likely calls for some form of thread scheduling (not something I could do alone).

sometimes reordering inside a stack will arrive at unexpected positions, esp if dropping an item in the first or last position

Dropping an item in first or last is working for me, no repro there. Again, may need to pair to see what you’re seeing. I did notice that for expanded sections, the negative space introduced by the invisible toolbar makes positioning a little confusing, especially when edge scrolling kicks in.
We have some options for mitigating/ameliorating this, but they have significant caveats:

map y-position of the cursor within a droppable container to the full height of its contents rather than scroll at the edges (expensive, risky ux)
fully collapse all stack sections while dragging

(I’d advise this actually, since  the experience of completing the task of dragging to rearrange or copy is substantially better, and this solution is inexpensive, it just might be unexpected.)

show the toolbar (or some other separating visual style) while dragging

sometimes it freezes the ui on drop right at the moment before it can render the final positions of things, for 100s to 1000s of ms

dragging a sketch into Stack is horrifically slow and actually crashes the tab, both on prod and on main


[lc_ctrl] D3 Signoff

Moving to M5 as we are not expecting any further RTL changes as part of M4.

@rswarbrick: Assigning to you since you're the current coordinator for lc_ctrl

I have just worked through the D3 signoff checklist and my notes are
below.
This discussion is looking at the head of the main branch on 27th
July 2024, commit 4877b48.
Detailed notes below, but my conclusion is that lc_ctrl can almost
be signed off with D3 status. Annoyingly there's an added waiver from
2022 that technically needs TC agreement.
Analysis, by checklist item
NEW_FEATURES_D3
lc_ctrl was certified as D2S on February 22nd with commit 1f8dbff.
The 14 changes since then that have touched lc_ctrl can be found
with git log 1f8dbff..4877b48 hw/ip/lc_ctrl:
6bf1c1f05f0939c2438fb18f5c795395a3e702d4 [lc_ctrl/dv] Testplan update
41d7a0b5e0b35dc8d7dac4529fffe4b5cee9decb [lc_ctrl] Re-certify V2S
a49f888385c92429974367b3aa0dd8a765d76056 Update pulp_riscv_dbg to pulp-platform/riscv-dbg@358f901
f4c2bb903096d18bd45f0ad6b5e5aeb8f32545e5 Remove trailing whitespaces
30d7e787c753caaa03fe68a4a70da1bbcbc1d96f Add the project name to the copyright header
8295903d7e8d6d52fac8ad434c70a773f760a771 [bazel,autogen_hjson] Split C and rust header generation
e56643f6b01b90e8e246d7ff1ede00491727e1f2 [lc_ctrl,dv] Fix constraint in lc_ctrl_errors_vseq
ebbf9a80dec4e0a0daa7aca03f300a4e6faf228b [ipgen,clkmgr] Fix md files
13fc2995037709953c9bb7d3829dbe1ac9d02b93 [lc_ctrl,dv] Fix width of coverage binding
945ea95d364ad02c36a430508b2df1f3e9be992e [rom_ctrl,lc_ctrl,dv] Specialise scratch_path/rel_path for variants
21a6bfdf24a5c72a5e1175deb113d69eb1922117 [prim/rtl] Allow for tech-specific impls of `prim_flop_2sync`
98760c496870f7e65ba0fd1c86f4c558587b3b39 [lc_ctrl,dv] Allow staggering between channels in set_flash_rma_ack
583eaf101931b384a3432e18c4092f11c997b0b2 [lc_ctrl,dv] Add nonzero stagger lengths between rma signals
d7bb9a3f1a216b2517bd4fdee538d2ef323888c4 [lc_ctrl/dv] Lower max delay for flash_rma_ack in lc_ctrl_sec_mubi test

Narrowing to the commits that look like they might plausibly change
features/behaviour gives:

a49f888385: The change in lc_ctrl is just to pass a new parameter to
dmi_jtag (and passing it as the value that the previous version of
the debug module was already defaulting to).
21a6bfdf24: This is just fixing up a couple of paths in exclusion
lists: definitely no functional change within lc_ctrl.

Therefore, the only changes in lc_ctrl since D2S have been minor
tweaks. No functional change to document or review.
TODO_COMPLETE
This is satisfied. There are no TODOs in the RTL code.
LINT_COMPLETE
The lint checking flow is clean, as required. The latest numbered
version is
here.
There is a lint waiver file, so this might need TC discussion. Looking
at the logs, a previous version of lc_ctrl was signed off as D3 in
May 2022 (commit 5777e62). To see waiver changes since then, you can
run git log 5777e62..4877b48 hw/ip/lc_ctrl/lint.
The only nontrivial change is commit 2141631 from November 2022. I
don't believe it has been formally signed off. (On the technical side:
this is clearly a reasonable waiver, so I wouldn't expect there to be
any difficulty when a meeting happens discussing it).
CDC_COMPLETE
The CDC checking flow is in flux across the project at the moment, so
this item can't really be signed off right now. This was waived for
the last tapeout because there was no block-level CDC flow. The best
approach might be to waive it again.
RDC_COMPLETE
I do not believe that OpenTitan currently has a block-level RDC flow.
As with the last tapeout, this requirement will need to be waived.
REVIEW_RTL
This was complete for the previous D3 signoff and (as noted in the
NEW_FEATURES_D3 item above), there haven't been any meaningful
changes in the RTL since then. Therefore I believe this is satisfied.
REVIEW_DELETED_FF
N/A: No synthesis flow at block-level.
REVIEW_SW_CHANGE
No software-visible design changes since this was last at D3.
REVIEW_SW_ERRATA
Vacuously true.

Thanks for putting this together @rswarbrick ! The lint waiver added after the last D3 signoff is a bit unfortunate and I agree it should probably be discussed even though the waiver itself makes sense.

Marking as a 0.5 day's remaining effort (to triage TC meeting etc), but not expecting anything else.

I've created the sign-off PR here #24229. We can merge it in case TC approves the lint waiver changes on THU.

The TC reviewed the diff of lc_ctrl.waiver and lc_ctrl_pkg.waiver compared to the previous D3 signoff (5777e62c83030486061813edf9f2f477743e30f3) and approved them.


Checkbox's value is lost

Checkbox's value is lost. (Todo's isDone property is lost )

When adding todo on inputField
When convert note to editableNote and vice versa

I have to remember "isDone" property of todo item.

Fix it by saving data in firestore


Code updates

crispy form update : (update for bootstrap5)
user logout update ( https://stackoverflow.com/questions/77690729/django-built-in-logout-view-method-not-allowed-get-users-logout (built-in logout not working)
blog html and profile html update bootstrap classes add : username and email was not coming right next to the image
navbar toggler not working: navbar-toggler bootstrap update

Came to make this merge request, but saw you had posted it. This would've saved me 12 hours today. :(

Came to make a similar pull request. I highly recommend something along these lines — it would have saved me many hours today.


.toString doesn't work for all encodings of attributes (ReadConverter)

The root cause of the problem is that many clients that create SamRecords set byte array attributes (instead of just string attributes). .toString() is not defined for byte arrays, so garbage is produced instead. The correct way to handle this is to use String() instead.
This bug was sent my way from an engineer at the Broad.

LGTM


X-Forwarded-Host support

Checklist

[X] There are no similar issues or pull requests for this yet.

Is your feature related to a problem? Please describe.
If sqladmin is served behind a proxy, X-Forwarded-Host should be honored:
curl http://localhost:8001/sqladmin/login -H "X-Forwarded-Host: foo.bar"
But generated HTML is requesting to original Host instead:
"http://localhost:8001/sqladmin/statics/js/main.js"
Describe the solution you would like.
Support for x-forwarded-host (and proto) should be included so it will work properly behind a proxy.
Describe alternatives you considered
There are many alternatives:

a middleware,
generate static urls in a relative manner.
..

Additional context
No response

Hey,
Isn't it related to Uvicorn? How can SQLAdmin decide that?
https://aminalaee.dev/sqladmin/faq/
https://www.uvicorn.org/deployment/#running-behind-nginx

@jsmolina Any updates?


Unable to return the address

Hello! I'm very new to react and I am required to convert latitude to longitude which the latitude and longitude get from firebase. So the problem is that I am able to console log the address. However, I am not being able to display
This is the function that I wrote for the converting
getAddressFromLatLong(lat, long) {         Geocode.fromLatLng(lat, long).then(             response => {                 const address = response.results[0].formatted_address;                 console.log(address);                 return address;             },             error => {                 console.error(error);             }         )     }
This is where I render the address
return (
                         {atData.uid}	                         {atData.user}	                         <TimeStamp time={atData.dateTime} format='full' />	                         {this.getAddressFromLatLong(atData.latitude, atData.longtitude)}
                 )
Please advise >.<

state = {
  address: 'fetching',
}

componentDidMount() {
  this.getAddressFromLatLong(atData.latitude, atData.longtitude);
}

getAddressFromLatLong(lat, long) {
  Geocode.fromLatLng(lat, long).then(
    response => {
      const address = response.results[0].formatted_address;
      this.setState({
        address
      })
    },
    error => {
      this.setState({
        address: error.message
      })
    }
  );
}

render() {
  return (
    {this.state.address}
  )
}


How could I add a horizontal port in Hfss3Dlayout

Description of the feature
I want to add a horizontal port in Hfss3Dlayout,like this:
oEditor.CreateEdgePort(
[
"NAME:Contents",
"edge:="		, [			"et:="			, "pe",			"prim:="		, "demohorizontalportname",			"edge:="		, 1],
"external:="		, True,
"btype:="		, 0
])
oEditor.AddRefPort(["Port1"],
[
"NAME:Contents",
"edge:="		, [			"et:="			, "pe",			"prim:="		, "demohorizontalportname",			"edge:="		, 3]
])
but I can not find like "create_edge_port_from_two_edges()".
give me some suggestions .thanks!
Steps for implementing the feature
No response
Useful links and references
No response

Yes,I got .Thanks!


Click on big cookie if "Click Frenzy" buff is on

Idea / suggestion
It would be nice to have an option on AutoClick BigCookie to click only if "Click Frenzy" buff is on

Great! Thank you :smile:

実装予定のモード:
・常時
・何らかのバフ(1つ以上)
・何らかのバフ(2つ以上)
・クリックバフ(ClickFrenzy or DragonFlight)


Suggestion: add call of trim() to this line

Hi James,
awesome work on this repo,
I've recently played around specificly with this Query.cls class
https://github.com/jamessimone/apex-dml-mocking/blob/4ba09503b440aa2496dda0e43fce75db9acc7e50/force-app/repository/Query.cls#L97
And I used it to create a where clause with a Set of Ids to finally get a query like this:
SELECT
	Id,
	Name
FROM Account
WHERE Id IN ('0010O000028pTbxQAE','0011l00000jpAV3AAM','0013X00002fmFN1QAM')

But I discovered, that the method mentioned puts a leading space in front of the second and all following parts of the list (for whatever reason), so the query looks like this:
SELECT
	Id,
	Name
FROM Account
WHERE Id IN ('0010O000028pTbxQAE',' 0011l00000jpAV3AAM',' 0013X00002fmFN1QAM')

This obviously leads to an error: "System.QueryException: invalid ID field"
So what I've done in my modification of your code - I've added a call to trim().
 return '\'' + String.escapeSingleQuotes(input).trim() + '\'';

What's your opinion? Maybe trim() is just a quick fix?
Source: Apex Developer Guide String Class trim

@derroman ah, interesting find! My apologies for not catching this, the repo has a slightly different version of Query than I use in prod but that’s my fault for not checking the quote wrapping for Ids. Your fix is a good one - I will incorporate it shortly!

@derroman ah, interesting find! My apologies for not catching this, the repo has a slightly different version of Query than I use in prod but that’s my fault for not checking the quote wrapping for Ids. Your fix is a good one - I will incorporate it shortly!

But just for fun and because I did not find the time yet (a.k.a "too lazy to debug" ;-) ):
Why does this happen in the first place?

But just for fun and because I did not find the time yet (a.k.a "too lazy to debug" ;-) ):
Why does this happen in the first place?

@derroman this is now resolved. This was an interesting opportunity to delve into toString()'s base implementation - apparently, calling toString() on a Set adds spaces between the different entries; it's possible that the List class does this as well, but there it is obfuscated by an oddity singular to Set - it is an Iterable (you can use it in a for loop, after all), but it does not publicly show that. Most objects you can call instanceof to detect what they are, which is how the string parsing in the Query class works. However, from my previous work on this (as part of the Nebula Framework), I knew that Sets do not test true for being an Iterable, which is why they are handled separately to begin with.
Long story short - I shot myself in the foot by having a test involving Sets with multiple Ids ... but the Ids that I was using had the same value. I was able to easily reproduce your issue in the existing test that I have purely by updating the test to include a second unique Id. That was a tragic oversight on my part; it was fine to use the same Id for testing that Lists worked with this newer implementation, but of course the same value being added to a Set just reduces it to a single value.
Thanks for bringing this to my attention, and for using this framework!

@derroman this is now resolved. This was an interesting opportunity to delve into toString()'s base implementation - apparently, calling toString() on a Set adds spaces between the different entries; it's possible that the List class does this as well, but there it is obfuscated by an oddity singular to Set - it is an Iterable (you can use it in a for loop, after all), but it does not publicly show that. Most objects you can call instanceof to detect what they are, which is how the string parsing in the Query class works. However, from my previous work on this (as part of the Nebula Framework), I knew that Sets do not test true for being an Iterable, which is why they are handled separately to begin with.
Long story short - I shot myself in the foot by having a test involving Sets with multiple Ids ... but the Ids that I was using had the same value. I was able to easily reproduce your issue in the existing test that I have purely by updating the test to include a second unique Id. That was a tragic oversight on my part; it was fine to use the same Id for testing that Lists worked with this newer implementation, but of course the same value being added to a Set just reduces it to a single value.
Thanks for bringing this to my attention, and for using this framework!

@jamessimone great and thanks for the interesting explanation!

@jamessimone great and thanks for the interesting explanation!


Bump crossplane-runtime version to consume the fix of MR metrics

Description of your changes
This PR bumps crossplane-runtime version to consume the fix of MR metrics. Please see the reference PR: https://github.com/crossplane/crossplane-runtime/pull/688
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable to ensure this PR is ready for review.
[ ] Added backport release-x.y labels to auto-backport this PR if necessary.

How has this code been tested
Via uptest: https://github.com/crossplane-contrib/provider-upjet-azuread/actions/runs/9094237569

/test-examples="examples/applications/application.yaml"

/test-examples="examples/applications/v1beta2/application.yaml"

https://github.com/crossplane-contrib/provider-upjet-azuread/actions/runs/9093648537 was failed because of the wrong comment. I re-trigger with a correct one and it passed. The successful job is in the PR description.


implemented fix to dada2 dropping blank samples.

Fixes issue #136

Thanks @thermokarst

As it stands dada2 will retain empty samples if they are not empty until the merging step of dada2, which to me seems like a bug, as you'd want all the empty samples or none.  I think a flag might be a good but separate idea as I agree there are probably some folks assuming there are no empty samples, as you say.
Some help navigating the unit tests would be useful!  I was having trouble finding where to put/get the input for a unit test.  I believe just adding another sample with no reads should demonstrate the behavior.

Thanks @dwthomas. So to make sure I'm following, would an alternative solution be to instead filter all empty samples from the final feature table? If so, why didn't you take that approach here?

I think the two behaviors that make sense are:

All samples input to dada2 are retained, even with zero frequency.
Samples with zero frequency after dada2 are removed.
The current behavior retains some but not all zero frequency samples, which I think is a potential source of confusion.
I implemented the first because that's the behavior I want.  But my argument for that behavior as the default is that you can go from that to retaining only non-zero samples with a qiime feature-table filter-samples command, but I do not know a way to add back removed samples without using the Artifact API.

Awesome, thanks for explaining, that makes sense to me! Okay yeah, I'm leaning towards going with the functionality proposed here. In the future I think it would be great to add in a new flag that lets us toggle the empty-sample retention, wholesale, but I agree, that is a separate issue. I'll think about tests and get back to you. Would you mind if I push the tests up to your feature branch?

That works great for me.

@thermokarst I'm doing some work on the unit tests, I figured out where the data files are.

Hey @thermokarst I added unit tests and a toggle as discussed.  All the functionality is in the _denoise_helper function used by all single, paired and pyro so I modified the paired tests to include an empty sample and test both modes of the retain-all-samples toggle.

Looks like there is just a new dada2 flavor that needed the toggle added to it as well.

Will this be ready to merge after the conflict is resolved?

@dwthomas are you still working on this PR?

Hey @cherman2,
I unfortunately don't have the bandwidth at least for the time being.

No problem!
All these issues look super superficial  (and I may have caused them when I fixed conflicts). I will get this passing and then pull down to test locally!


Simplify the colormaps list and add the single-color colormaps

Description
Fixes #97
Type of change

[ ] Bug-fix (non-breaking change which fixes an issue)
[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)
[ ] This change requires a documentation update

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[x] example: all tests pass with my change

Final checklist:

[x] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works

Do you want to fix the examples/set_colormaps.py so that it now uses the built in colormaps - or is it nice to have an example of setting custom colormaps? I could go either way, but if we want the latter we should probably have an example that no longer just uses the built-ins

I still want that example. I agree that different cmaps from defaults might be useful but then the example should be totally reworked — I don't think it should hold that PR. It still illustrates the use case.

I'm also still not completely sure we need all the remaining ones like twilight and twilight-shifted - did you intentionally leave those ones in there as we know they are useful?

These are cyclical colormaps that have been designed to be perceptually uniform. I think that's a very useful alternative to hsv (the usual cyclical colormap). Think of a "phase" or "orientation" image where black is down, white is up, blue is right, and red is left. Much more intuitive than hsv.

I also find the order of the list confusing now, can you maybe make it alphabetical?

Yes, good point.

Finally, how would you feel about adding some two color diverging ones, like RdBl (or RdWBl) that start at a color, pass through black / white, then go to a color. Do we have a theory on how we want to handle these?

Yeah Ok, I'll add back RdBl, I think that's the best there is currently, though it's not a "modern" one like viridis and twilight.

@sofroniewn please have a look at the diverging colormaps here. I think the best one is PiYG, which is what I've left on there. Let me know if you have a different preference. None of them go through black, interestingly.

This should be ready for merging — leaving the example for future work

PiYG is fine for now, we can always add more in the future after #268 is implemented. I'll merge


chore: updated env

:tada: This PR is included in version 0.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


organizationId returned from conn.authorize is inconsistent with the organizationId from Salesforce Settings page.

organizationId from a value returned from conn.authorize for me is 3 characters longer than the value that is shown in Salesforce "Company Information" page as described here.
Example: 00F9d000003ZjQrEAK(jsForce) vs 00F9d000003ZjQr (salesforce UI)
The jsForce value doesn't work for interacting with Salesforce LiveAgent Chat API, so I am wondering why the IDs are inconsistent.

Company information shows the 15 digit id version, but any api call will ALWAYS return the 18 digit id.
This has absolutely nothing to do with `jsforce, but is how the Salesforce API works.
Supporting docs that you may find useful:
https://help.salesforce.com/s/articleView?id=000324087&type=1
https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/field_types.htm#i1435616

Makes sense, thanks for the docs!


sdk/state: reject new updates once a coordinated close is in progress or complete

Once a coordinated close is in progress or complete it isn't safe to perform payments, because the coordinated close is an immediate close with no delay. We should make the Channel so that once the coordinated close is begun that no other operations as possible other than closing.

is this the same as: https://github.com/stellar/experimental-payment-channels/issues/107 ?

It is! Thanks.
Duplicate of #107.


Refactor sync.ts to support multiple storages

#256 and #413 would be easier to achieve if sync.ts used and abstract storage class that can be implemented to store and restore from GIST, GIT REPOS, LOCAL FILES, GOOGLE DRIVE etc.
Can you also please increasing coverage with the tests otherwise the risk of regressions is very high.

Duplicate of #935


Installation instructions incorrect?

Is this correct in your install instructions?
    'providers' => array(
        ...
            'HTML'      => 'Illuminate\Support\Facades\HTML', // if not exists add for html too
            'Form'      => 'Bllim\Laravalid\Facade',
    ),

Should it be aliases and what if you already have a Form alias?

Yes you are right :) sorry for mistake.

Yeah that looks better. The other thing was a question about what if you already have a form alias, will adding your alias cause an issue?

You should update current Form alias with "Bllim\Laravalid\Facade". You can continue to use it like old one. It is already extending Illuminate's Form (\Illuminate\Html\FormBuilder).


verifyControllers

Hello,
When installing CentOS 7 I am able to run the verifyController.py,
CentOS 8 is not working as it is using Python version 3
Is there a workaround with CentOS 8
Ron Kerkhof

These were fixed last month but have not yet been included in a release. You can get the three files with the commands
https://raw.githubusercontent.com/OpenVnmrJ/OpenVnmrJ/master/src/ddr/adm/acq/verifyCntlrsFlash
https://raw.githubusercontent.com/OpenVnmrJ/OpenVnmrJ/master/src/ddr/adm/acq/verifyCntlrsFlash.py
https://raw.githubusercontent.com/OpenVnmrJ/OpenVnmrJ/master/src/ddr/adm/acq/verifyCntlrsFlash3.py
Copy them to /vnmr/adm/acq and then run
/vnmr/adm/acq/verifyCntlrsFlash


Feature Request: Update default prompt to use OSC 9;9

Summary of the new feature/enhancement
wrt https://github.com/microsoft/terminal/issues/8166
Windows Terminal recently added support for OSC 9;9 which is required for creating a new tab with the same working directory. How this works is that the prompt contains the path to the working directory wrapped in osc 9;9 which is used by the Windows Terminal to read the path and create new tab in same path.
Currently, people have to manually modify the powershell prompt to include OSC 9;9 like this https://gist.github.com/skyline75489/480d036db8ae9069b7009377e6eebb79
It would make it easier for people to make use of this feature if the default prompt for pwsh was updated to use OSC 9;9, then people won't require any manual changes, and things would "just work"
How to test the feature -
Open Windows Terminal with pwsh profile in a directory and use the above linked prompt

Press Ctrl-Shift-D
The new tab that opens will be in the same working directory.
(If the prompt is not updated to use OSC 9;9, then it opens in the default directory of C:\Users<user>

@axcadsd  Please add more info, repro steps and screenshots.

What this sequence has to do?
$ "`e]9;9;$pwd`e\"
<Empty line>
$

@iSazonov i updated the issue, please check and let me know if any more information is required.

This works without Convert-Path

@axcadsd Thanks for updates! I can confirm this feature works great!

Not working if open new tab in Windows Terminal with command line.
wt -w 0 nt -p "PowerShell"  # profile name or
wt -w 0 nt pwsh -Nologo     # command

Neat feature but keep in mind that such a change in PowerShell would not be seen by folks who use a module like oh-my-posh or posh-git that provide their own custom prompt functions.

Neat feature but keep in mind that such a change in PowerShell would not be seen by folks who use a module like oh-my-posh or posh-git that provide their own custom prompt functions.

FYI oh-my-posh v3.89.1 released in February 2021 introduced OSC 9;9 support with the "osc99": true json config key (and works just fine in WSL, too!)


Web PubSub Bindings

The tables are missing information/links for the Web PubSub bindings but the Web PubSub documentation talks about these bindings. https://docs.microsoft.com/en-us/azure/azure-web-pubsub/tutorial-serverless-notification
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 7d575e82-637b-32de-e64d-75adf4b6d976
Version Independent ID: e346a973-fcb9-0c10-c1ed-17acd806ced9
Content: Triggers and bindings in Azure Functions
Content Source: articles/azure-functions/functions-triggers-bindings.md
Service: azure-functions
GitHub Login: @craigshoemaker
Microsoft Alias: cshoe

@joelwaymack, thank you for bringing it to our attention. Web Pubsub binding was added to v3.4.0 of extension bundle for Azure Function, which is not yet released.  The latest 3.X released version for extension bundle is 3.3.0 as of now. To use web pubsub as binding in Azure function, the current way is to "remove" extension bundle section from host.json and add extensions explicitly, as mentioned here.
You may also refer to this Q&A thread for more details.
I will check with the team for more details regarding it.

There currently isn't documentation for this new extension. I've opened an internal work item to track the requirement (#1930480).
#please-close


CI Branching

Whenever any code is pushed into python/java/ruby/nodejs folder's main branch this GitHub workflow will merge the changes into python/java/ruby/nodejs sqlcommenter branch respectively

I can see this working :)

To give some context: This is a monorepo with multiple languages.
So a normal release would:

put java, nodejs, python and ruby code in the same artifact tarball.
we can't independently release a particular language library.

What we were thinking with this PR is

to have separate branches for different languages.
When changes are done to a particular language path, on merge, we will copy the changes to particular branch e.g. changes to sqlcommenter-python/** on merging would trigger a workflow to copy the content into python-sqlcommenter branch.
Then we can release different language libraries from their respective branches, which will trigger workflows to publish libraries to respective repositories.

@aabmass @lonewolf3739 Do you guys see any concerns with this approach ?

I don't see any immediate concerns with this approach. Since there is one workflow for each lang would it be possible to do this in main branch itself?

I don't see any immediate concerns with this approach. Since there is one workflow for each lang would it be possible to do this in main branch itself?

yes, we can do it from main branch but it has its pros and cons.

We can have multiple workflows depending on different paths. Now, if we release from main branch, then the workflows would be triggered at the same time. So on a single release, we will have 4 deployments to pypi, npm, sonatype(java) and marginalia(ruby). Also the assets generated would contain all language libraries.
As the previous ways do not allow us to release a single language library. So, we can use tags during release and have conditions set to release particular language library using tags.
For Ex: if tag like 'java-sqlcommenter-%' use java-workflow.yml.
With this, we can release particular language library, but still our release assets will contains the whole code as we don't have control on what to add to assets.

Now, this approach of creating release from branches would mitigate the assets part, where python release would only contain python sources and so for other languages.
But there is one problem with this approach, that is the release branch by default allow git push directly. Anyone can push changes to that. If we lock it, github actions can't force push the changes automatically and would require robot account to make those branches secure. Exploring if there are other ways like using a DEPLOY_TOKEN


FIX:Better error messages in TriplyDB-JS

…essage

@huxiaoTriply I left you a comment on the Ratt merge request. I think the tests you wrote would be more suited to be included here in TDBJS tests rather than the Ratt tests.


Question on a few methods

Hi,
@weppos do you happen to know whats up with the :referral_whois and :referral_url methods? Also, the status method doesn't return a list of the domain statuses such as clientDeleteProhibited, perhaps another method for getting those could work? Also, is there any way to show the raw whois using the parser?

do you happen to know whats up with the :referral_whois and :referral_url methods?

What do you mean?

Also, the status method doesn't return a list of the domain statuses such as clientDeleteProhibited, perhaps another method for getting those could work?

Sadly, this is a very old issue https://github.com/weppos/whois/issues/5
Status should likely be replaced to return a struct object, containing both the list of statuses and the interpretation.

Also, is there any way to show the raw whois using the parser?

That is in the record. You instantiate the parser from a whois record. Hence you have access to that record before you create the parser.

record = Whois.whois('google.com')
record.class
#=> Whois::Record
# To get the raw string, you can call to_s on the record
puts record.to_s
#=> Domain Name: GOOGLE.COM
#=> ...
#=> ...
#=> ...

The parser.rb file has the following commented out, but it appears to be implemented for some whois servers.
# :referral_whois, :referral_url,

Those methods make sense only for thin whois. Essentially, only .NET and .COM. I originally considered adding them as methods, but I then did not do it on purpose.
I can probably remove the commends.


Error when trying to disable the Resident Key Manager

Description
It does not allow to disable the Resident Key Manager from the APIM Admin Portal. When trying to disable it, an error is being displayed on the portal that says "Missing required configuration" and on the server logs an error is being logged that says "Error while Retrieving Key Manager configuration".
Steps to Reproduce

Set up WSO2 IS as the Resident Key Manager
Login to the Admin Portal and disable the Resident Key Manager

Affected Component
APIM
Version
4.0.0 and 4.1.0
Environment Details (with versions)
No response
Relevant Log Output
[2022-06-29 13:24:33,991] ERROR - GlobalThrowableMapper Error while Retrieving Key Manager configuration for 68c333af-281d-46b8-8514-0491aad4474c in organization carbon.super

Related Issues
No response
Suggested Labels
No response

Closing the issue as it was resolved by the update. Thanks @dulithsenanayake for the support.


Less RAM usage by optimizing spritesheets

All this PR does is trim the big transparent parts of spritesheets Animate CC likes to add. They might seem useless, but when loading the game, they also get loaded taking up extra memory.
In theory it should also improve loading speeds, but I haven't tested that.
RAM usage before and after:

State
Usage Before
Usage After

Title Screen
118.5MB
82.1MB

Main Menu
200MB
109.3MB

Story Mode
200MB
102.7MB

Week 1
513MB
458.9MB

Week 2
850.9MB
594.3MB

Week 3
540.2MB
464.4MB

Week 4
550MB
390MB

Week 5
964MB
707.5MB

Week 6
192MB
189.6MB

Week 7
568MB
438.8MB

Keep in mind, these values may not be 100% correct on all computers, this is just how it was on my PC.

finally

Eh, RAM is not the usual thing to focus for performance in some cases, but sure.

Might still improve performance on weaker PCs with less available RAM

?

I couldn't get the game to build without that, hxCodec renamed MP4Handler to VideoHandler on it's Git/Haxelib repo

?

I couldn't get the game to build without that, hxCodec renamed MP4Handler to VideoHandler on it's Git/Haxelib repo

trust me the Haxelib version was not updated

?

I couldn't get the game to build without that, hxCodec renamed MP4Handler to VideoHandler on it's Git/Haxelib repo

 trust me the Haxelib version was not updated

Oh my bad, turns out I was running the git version instead of haxelib 😅, I'll push a commit rn to fix this

You know, now that I see this PR, I had this whole tangent once in the subreddit on an app called PNGGauntlet, which shrinks PNGs and compresses them with minimal to no losses.
Might be a 50-70% decrease in space usage, but it's probably not part of the main PR.
considering that Starbound, and Terraria have done and used that to save what is effectively gigabytes of texture spaces with said tool, haha.

You know, now that I see this PR, I had this whole tangent once in the subreddit on an app called PNGGauntlet, which shrinks PNGs and compresses them with minimal to no losses.

For the lazy:
https://pnggauntlet.com/
Also, It's actually a LOSSLESS method, meaning no quality is lost. All it does is strip unnecessary data like unused colors and other information that usually gets printed on the images by image editors or exporters.
I actually intended to make a PR about it doing both methods (trimming and cleaning the PNGs) but I guess at least one part of it is done. lol
Also if this was added to this PR, which personally, it should be, all the author would need to do is just rename the title afterward.

In theory it should also improve loading speeds, but I haven't tested that.

It does improve loading times, as mind you, the game has to load, read and interpret the image before being able to show it, so the less big your files are, the faster it will load them.
A good example is how 3 MB images after being trimmed and processed through PNGauntlet instead of having a little freeze cause no freeze at all.
By making the images smaller you not only improve performance (on PCs that don't have a lot of RAM) but you also reduce the loading times or random stutters while loading assets (as long as they are small enough, big ones will still cause some degree of freezes but it will be reduced regardless).

Fix?

Should be good to go now! Also tried using PNGGauntlet as @xChillax suggested, although it hasn't made a big difference in RAM usage as far as I can tell.
Also, I can't change Tankman's spritesheet due to merge conflicts, but if you want to use the compressed and trimmed version you can get it from here

xml of the spritesheets???

xml of the spritesheets???

?

bro when i put the spritesheets the sprite starts doing frauuhhubtbbtbbrb, you need to post the xml files

No? I have the latest build of Psych and it works fine. Please give more info and if possible provide a screenshot or video

man im using soul engine 💀💀

man im using soul engine 💀💀

I cant help you then. This PR was made with Psych and works on Psych, for other engines, figure it out yourself

man im using soul engine 💀💀

I cant help you then. This PR was made with Psych and works on Psych, for other engines, figure it out yourself

alr, i'll try to find a solution, thanks for the help btw

Was this done manually or did you use a program to automate the trimming?

Was this done manually or did you use a program to automate the trimming?

It was done manually, at the time I was unaware of a few programs that can do it automatically


version in package.json has fallen behind tagged releases

I'm planning to tackle this by removing the version string from the package.json in the repo and then using the CircleCI release process to place the tagged version in when it's published. Does that work for you @sairez? It does mean moving to NPMjs installation instead of GH though.

GH installation will no longer function?

Not sure, I may leave a 0.0.0 version in there to allow sed to leave it still installable, or replace with some VERSION_GOES_HERE string.

that would be ideal, until we can phase out github installs across customers

The package.json now has 0.0.0 as the version and it is replaced in the build process and uploaded. I'm going to make the packaged version the preferred way to install.

Closing as I believe this to be resolved. If it is not, please reopen!


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 679ee0c:
:clock10: Pending: waiting for processors (20 builds ahead of you)
:warning: Docs Build is busy, currently there are 20 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 679ee0c:
:clock10: Full build: the average full build time is 7 min(s) 47 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 679ee0c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


chore(main): release iptables 0.1.0

:robot: I have created a release beep boop
0.1.0 (2024-10-20)
Features

iptables: add a collection that configures iptables (#46) (cc13f37)

This PR was generated with Release Please. See documentation.

🤖 Created releases:

iptables-v0.1.0

:sunflower:


mpv: add lcms2 support

Motivation for this change
The mpv package is missing icc/color profile support which I (and hopefully others) would like to use.
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build mpv

Failure on x86_64-darwin (full log)
Attempted: mpv
Partial log (click to expand)
[  9/418] Compiling etc/builtin.conf
[ 10/418] Compiling sub/osd_font.otf
[ 11/418] Compiling player/lua/defaults.lua
/bin/sh: []: command not found

Waf: Leaving directory `/private/tmp/nix-build-mpv-0.29.0.drv-0/source/build'
Build failed
 -> task in 'osdep/macOS_swift.o osdep/macOS_swift.h osdep/macOS_swift.swiftmodule' failed with exit status 127 (run with -v to display more information)
builder for '/nix/store/digyc8aq1ky9swf1p5drk0v3xwj24izh-mpv-0.29.0.drv' failed with exit code 1
error: build of '/nix/store/digyc8aq1ky9swf1p5drk0v3xwj24izh-mpv-0.29.0.drv' failed

Success on x86_64-linux (full log)
Attempted: mpv
Partial log (click to expand)
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0
shrinking /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0/lib/libmpv.so.1.101.0
shrinking /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0/bin/.mpv-wrapped
gzipping man pages under /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0/share/man/
strip is /nix/store/1hi76hr87bd1y1q1qjk0lv8nmcjip1c8-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0/lib  /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0/bin
patching script interpreter paths in /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0
checking for references to /build in /nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0...
/nix/store/q2rqskd8kgms7h1i1k0790ngybvc3yc5-mpv-0.29.0

Success on aarch64-linux (full log)
Attempted: mpv
Partial log (click to expand)
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0
shrinking /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0/lib/libmpv.so.1.101.0
shrinking /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0/bin/.mpv-wrapped
gzipping man pages under /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0/share/man/
strip is /nix/store/zrs21zqcchgyabjf4xfimncdq16njizc-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0/lib  /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0/bin
patching script interpreter paths in /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0
checking for references to /build in /nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0...
/nix/store/8p08pd9piw8s3w9g7vklw5imq6952nnw-mpv-0.29.0

The error here on macOS was introduced by an earlier change.


Use Result instead of GetAwaiter().GetResult()

Addresses #13611

@Kahbazi as discussed in https://github.com/aspnet/AspNetCore/issues/13611, the GetAwaiter().GetResult() is intentionally used to produce a better async exception stack trace. We use this fairly commonly through our code base.
Closing this PR since the change isn't desirable.

But in this case there will be never any exception since IsCompletedSuccessfully has been checked. So I think calling Result has better performance then GetAwaiter().GetResult.
Also Result has been used in similar cases in this repository.

Yup,  you're right.

Thanks for the PR!


add null possibility to patch types

I need this if not I get error when I put this:
patch(node, document.getElementById(this.root));
because typescript consider that maybe I can get null from document.getElementById(this.root)
then throw compatibility types error

Codecov Report

Merging #100 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #100   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines         115    115
  Branches       36     36
=====================================
  Hits          115    115

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 652bdf8...49ae546. Read the comment docs.

Perfect, thanks! 🎉


[Bug]: Support for Connecting Puppeteer to an Already-Running Firefox Instance via WebSocket and goto() Issue

Minimal, reproducible example
const puppeteer = require('puppeteer');

(async () => {
    try {
        const browserURL = "ws://<IP_ADDRESS>:9222/devtools/browser/6808d98e-175d-463c-8033-6a0851452d02";

        // Connect to the remote instance
        const browser = await puppeteer.connect({
            browserWSEndpoint: browserURL,
            browser: 'firefox'
        });

	const [page] = await browser.pages();

	await page.goto('https://google.com');

        console.log('Never reach here');
    } catch (error) {
        console.error('Error connecting to the remote browser:', error);
    }
})();

Background
I’m working with Puppeteer to automate Firefox 132.0.1 and appreciate the WebDriver BiDi protocol support for improved compatibility!
I’ve encountered a specific issue when trying to connect Puppeteer to an already-running Firefox instance:

Connecting via CDP: I can launch Firefox manually with the --remote-debugging-port=9222 flag and then connect to it using Puppeteer’s connect() function over CDP. This setup works for establishing the connection, but I run into issues with page navigation.

Problem with goto() Function: When using page.goto(), the promise never resolves, even though the browser navigates to the specified URL successfully. This behavior only occurs when I connect to an externally launched Firefox instance over CDP.

It seems that goto() hangs indefinitely without throwing any errors. I’ve tried different waitUntil options and varied the timeout from very short to very long values, but the issue persists.
Expectation
The code must reach the console log
Reality
The goto never resolve, it return TimeoutError if I set it to different than 0
Puppeteer configuration file (if used)
No response
Puppeteer version
23.4.1
Node version
20.16.0
Package manager
npm
Package manager version
10.9.0
Operating system
Windows

CDP support in Firefox and Puppeteer is not actively maintained anymore. Generally automation in Firefox might require special settings (like the ones set by Puppeteer during launch) to make it work. Note that you would need to specify the protocol when connecting if you want to connect using CDP. Could you please confirm that you still experience the problem if you start with correct preferences for the protocol of your choice: https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/src/node/FirefoxLauncher.ts#L33 + https://github.com/puppeteer/puppeteer/blob/main/packages/browsers/src/browser-data/firefox.ts#L190
cc @whimboo

Thanks for the responses! Here’s what I’ve tried with both protocols:
I used puppeteer/browsers to download Firefox:
npx @puppeteer/browsers@latest install firefox@stable
1. CDP:
I'm still encountering the same Timeout Error. Here’s a summary of my setup:
launch.js:
const puppeteer = require('puppeteer');

(async () => {
    const browser = await puppeteer.launch({
        protocol: 'cdp',
        browser: 'firefox',
        headless: false,
        executablePath: 'D:\\test\\firefox\\win64-stable_132.0.1\\core\\firefox.exe',
        extraPrefsFirefox: {
            'browser.tabs.closeWindowWithLastTab': false,
            'network.cookie.cookieBehavior': 0,
            'fission.bfcacheInParent': false,
            'remote.active-protocols': 2,
        },
        debuggingPort: 9223,
    });

    console.log('WebSocket URL: ', browser.wsEndpoint());
})();

connect.js:
const puppeteer = require('puppeteer');

(async () => {
    try {
        const ConnectOptions = {
            browserWSEndpoint: "ws://<IP_ADDRESS>:9223/devtools/browser/303e82db-b5bc-4335-b220-ce6ebe072244",
            protocol: "cdp",
        };

        const browser = await puppeteer.connect(ConnectOptions);
        console.log("Connected!");

        const [page] = await browser.pages();
        await page.goto('https://google.com/');

        console.log("Never reach here");
    } catch (e) {
        console.log("FAILURE!\n", e);
    }
})();

Output: I receive "Connected!" and see the page redirected to Google, but goto() doesn’t resolve, and it never reaches the next console log.
2. WebDriver BiDi:
I encountered the same issue as described in issue #13057 – specifically, the "session not created Maximum number of active sessions .*" error.
launch.js:
const puppeteer = require('puppeteer');

(async () => {
    const browser = await puppeteer.launch({
        protocol: 'webDriverBiDi',
        browser: 'firefox',
        headless: false,
        executablePath: 'D:\\test\\firefox\\win64-stable_132.0.1\\core\\firefox.exe',
        extraPrefsFirefox: {
            "remote.log.level": "Trace",
            'remote.active-protocols': 1
        },
        debuggingPort: 9223,
    });

    console.log('WebSocket URL: ', browser.wsEndpoint());
})();

connect.js:
const puppeteer = require('puppeteer');

(async () => {
    try {
        const cOps = {
            browserWSEndpoint: "ws://<IP_ADDRESS>:9223/session",
            protocol: "webDriverBiDi",
        };

        const browser = await puppeteer.connect(cOps);
        console.log("Connected!");
        await browser.disconnect();
        console.log("Disconnected!");
    } catch (e) {
        console.log("FAILURE!\n", e);
    }
})();

Output: I received this error :

ProtocolError: Protocol error (session.new): session not created Maximum number of active sessions .*

Firefox support a single session with WebDriver BiDi so you cannot launch it using Puppeteer that automatically creates a session. You need to launch it manually (or with @puppeteer/browsers API providing those extra preferences). Note that Puppeteer launch in both cases set the preferences correctly so extra prefs are not needed.

Thank you! The WebDriver BiDi test works perfectly when launched separately; it connects and navigates smoothly.

That's good to hear. In case you are interested in multiple session support we track that work via https://bugzilla.mozilla.org/show_bug.cgi?id=1862018.

I will mark the issue as not planned on our end but there is also an issue on the Firefox side to allow starting the browser for automation without needed to specify preferences ahead of time. I could not find a link but perhaps @whimboo has it.

Yes, that would be https://bugzilla.mozilla.org/show_bug.cgi?id=1868965.


Please amend your commit with --singoff flag, then force push your branch so we can merge


Provide custom name when asking for permissions

Right now, it says "Terminal.app wants to access your contacts."

bump. (:

bump. (:

bump.

bump.


Sync to latest knative dependencies

Sync to latest knative dependencies so that code reuse can be done.

This should also make #17 obsolete


Update requirements for local development.

Coverage increased (+0.01%) to 91.94% when pulling 1b4945babe4bcd1cc6fe27e9ef67b13b50ad02a0 on akatsoulas:update-dependencies into 2c7bf3419d79e180695c017a5d4dfd2d2ded335a on mozilla:master.

r+


chore(bridge-ui): reduce logic and remove some store variables

Store is s powerful tool in Svelte for state management. But if we want to store small values that are already available initially and won't ever change, then we are introducing unnecessary complexity here, and also could affect the performance. This might be the case of our providers map. It's used across different components, but its value, which is available when hitting the app, will always be the same.
Found a similar situation with our wagmiClient variable, which is only used in Connect.svelte, but initialized in App.svelte. It could simply be a local variable

Closing the PR in favour of splitting it up in smaller chunks


ConsulProperties is not populated correctly

Using the latest code from master (revision dc3a367a4897d689a92250d4a5a3d039a6c27a66), I tried to run the sample application following the instructions and with various settings for where Consul was installed
The problem I noticed is that Spring Cloud Consul only worked when Consul was accessible via http://localhost:8500.
What I noticed while debugging, was that ConsulProperties was being instantiated too early and there for totally ignored the properties set in application.yml (resulting in the use of default values).
You can verify this behaviour by running the sample application with the following modifications:
Add the following to application.yml
spring:
  cloud:
    consul:
      host: someTest
      port: 9999

Change the main method in SampleApplication.java to:
public static void main(String[] args) {
        SpringApplication app = new SpringApplication(SampleApplication.class);
        app.addListeners(new ApplicationListener<ContextRefreshedEvent>() {
            @Override
            public void onApplicationEvent(ContextRefreshedEvent event) {
                final ConsulProperties consulProperties = event.getApplicationContext().getBean(ConsulProperties.class);
                log.info("ConsulProperties is {}", consulProperties);
                Assert.isTrue(consulProperties.getHost().equals("localhost"));
                Assert.isTrue(consulProperties.getPort() == 8500);
            }
        });
        app.run(args);
}

If you are using spring-cloud-consul-config, those values need to be in bootstrap.yml.  See the caution in the docs.  Also see #49 for another reason it didn't work.

Thank you very much for pointing me in the right direction!


Expose Google::Cloud::BigQuery::InsertResponse::InsertError.index

I'm sending database record to BigQuery and I want to map insert errors back to my database. I cannot access the InsertError.index variable because it's hidden from InsertResponse::InsertError.
I had to hack InsertResponse to get @gapi instance variable and manually iterate over insert_errors to find the row index :
class DocumentUploaderWorker
  include Sidekiq::Worker

  def perform(dataset, table)
    @dataset = dataset
    @table = table

    # select * from DOCUMENTS d
    # where incorrect=false and not exists (
    #   select * from UPLOAD_BATCHES ub
    #   where ub.id=d.upload_batch_id and ub."dataset"=? and ub."table"=?
    # )

    query = Document.where(incorrect: false).where(
      UploadBatch.where('"upload_batches".id="documents".upload_batch_id')
                 .where('"dataset"=?', dataset)
                 .where('"table"=?', table)
                 .exists
                 .not
    ).order(:id)

    query.in_batches(of: 500) do |documents|
      # Load raw JSON data
      data = documents.map { |doc| JSON.parse(doc.raw_json) }

      # Convert and upload data to BigQuery
      response = uploader.process(data)

     # Behind the hood it converts each line to match BigQuery table structure and then
     # uses table.insert(data, skip_invalid: true)

      batch = UploadBatch.create(
        dataset: dataset,
        table: table,
        result: response.success?,
        done: response.insert_count,
        failed: response.error_count
      )

      # Mark all documents as processed
      documents.update_all(upload_batch_id: batch.id)

      # During testing phase, we track all errors to improve convert process
      # we need to map InsertRequest rows to documents
      Array(response.instance_variable_get('@gapi').insert_errors).each do |insert_error|
        doc = documents[insert_error.index]
        doc.update(incorrect: true, upload_batch_id: nil)
        UploadBatchError.create(
          upload_batch: batch,
          document: doc,
          error_data: insert_error.errors.map { |e| JSON.parse e.to_json }
        )
      end
    end
  end

  def uploader
    @uploader ||= BigData::TicketsUploader.new(@dataset, @table)
  end
end

Can you please expose the index property in InsertResponse::InsertError ?

@zedalaye Thank you for reporting this issue (and providing the detailed example). I will look into it today.

@zedalaye We are definitely in favor of this change (and apologize for the omission.) Would you like to submit a pull request exposing index on InsertError? If not, I will do a PR early next week, but we are always happy to get contributions.

Sure !


Adding Loader✨

Between screens where the loading time is more. It would be convenient to add a loader.
Loaders https://pub.dev/packages/flutter_easyloading you can use these or suggest some new package related to this.
Screen transition would feel better and UX will be improved by adding loader in the project.
YOu can refer to the old_code branch for the loader if you want references.

I would like to work on this issue.

I would like to work on this issue.

Assigned for 2 days

@anushbhatia Can you specify the screens ?

moving from every screen starting from the opening camera till the croping screen


Patch version resolve

Hi,
I want to migrate from a setup.py to pyproject.toml + uv setup. In my current configuration I use patch version pinning, e.g. package==1.8.*. Pip installs version 1.8.10, which is the latest version. uv installs 1.8.0, which I find odd. The same happens for package~=1.8. I think this is a bug.
I use uv 0.4.11 on Linux.

I can't reproduce this
❯ uv venv
Using CPython 3.12.1
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate
❯ uv pip install 'sniffio==1.3.*' --no-cache
Resolved 1 package in 176ms
Prepared 1 package in 27ms
Installed 1 package in 4ms
 + sniffio==1.3.1
❯ uv venv
Using CPython 3.12.1
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate
❯ uv pip install 'sniffio~=1.3' --no-cache
Resolved 1 package in 94ms
Prepared 1 package in 18ms
Installed 1 package in 1ms
 + sniffio==1.3.1

Hmm, I was running this today in an CI pipeline and tested it extensively. Now I also cannot reproduce this. Ok sorry for the hassle. I will close this issue.


Audit usages of assert outside of tests

There are a handful of usages of assert outside of tests. An example in the mock account provider:
https://github.com/interledger/rafiki/blob/main/packages/mock-account-provider/app/lib/accounts.server.ts#L49-L50
We should convert these to throw applicable Errors instead, and reserve assert usages for tests only.

Hey there! I'm interested in working on this issue.

It's yours! :vulcan_salute:


Fix 'import module' code-action not suggested in function params

Purpose

Fix 'import module' code-action not suggested in function params

Fixes #21744
Remarks

Related PR https://github.com/ballerina-platform/ballerina-lang/pull/22345

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #22342 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #22342   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

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 72d3b12...da9f7ef. Read the comment docs.


Forms > Sliders

Form > Slider
Requirement
As a developer
I want to insert a carousel
So That I will get this ready to use component compatible with Orange design specifications and a11y requirements
DSM reference
General description

Sliders allow users to select a single value or a range of values by moving a handle along a horizontal track.
UI specifications
Anatomy

Slider label (Mandatory): the name of the unit manipulating in the slider is on the left
Handle (Hamdatory):
Value (Optional): on the right on top of the slider
Active fill (Mandatory)
Track (Mandatory)
??? Segments (Optional): tickmarks to show a graduation on the bar
??? Tooltip (Optional): show temporary values on the bar when you hover on the bar

Variants
Basic slider
Basic sliders allow users to make selections that don’t require a specific value, for example, the volume slider used for music where it is not necessary to choose a specific value.
Single value slider
Single value sliders allow users to select a single value from a range.
Dual range slider
Dual range sliders are used for setting a minimum and maximum value from a range.
??? Slider with tooltips
A tooltip to show the value when you move the handle.
A tooltip to show the hover of the user on the bar to see the corresponding value
??? Slider with persistent tickmarks
On the slider tickmarks show a graduation on the slide bar
States

CSliders can have four possible states:

Default
Hover
Pressed / dragged
Visible focus
Disabled

Internationalisation
For right-to-left languages, like Arabic, the value position should be reversed, placing the largest value on the left, and the smallest on the right.
Appearance

Placement

UX specifications
Interaction

All:

The value is the number selected within the slider
The value ranges from the minimum value to the maximum value set by the dev
The dev will set a step value to allow the range in between possible values

Mouse:

Dragging the handle across the track changes the value on the slider.
It is also possible to click anywhere on the bar and the handle will slide automatically to that value.
In a Dual range slider if the user clicks on the bar the handle closest to the click will be moved

Keyboard:

The left and right arrows and top down arrows will allow to move the slider
In the Dual range the tab key is used to change from one handle to the other
The user will not be able to type in direct values to set

Touch (mobile): same as the mouse interaction

Animations
No animation for this component
Accessibility
Visual Accessibility
xxx
Usage Accessibility

The label of the slider is used to describe the "alt" text
The keybaord interaction needs to be available
the focus element need to allow the use of the handle/s
when there is 2 handles, the label should mention the disctinction between "mininmum" & "maximum" values

Technical specifications

The slider is always used horizontally
A slider could show negative values
A slide step should be able to be defined as a integer or float
A slider should allow the dev to set the unit of the data displayed - the unit would show next to the value - the unit could be placed before or after the value (ie: $50 - 30€) on range slider the value should show "20€ to 60€"
slider customizable options are the label - range - unit - steps
Dual Sliders

Multiple-range slider has max 2 handles - Dual Range
the handle on the left always remain on the left - a slider handle should slide past the other one (at least as a target)
the handles should not be able to go on top of each other (part of the issue is linked to a design setup in the steps to use in the corresponding slider)

Updates from the prototype investigations:

Options possible variants  for single slider

one with no graduation at all and the value on the top right corner
one with graduation only min and max will show the value of the handle in a tooltip
one with all graduations will show the value of the handle in a tooltip

Options possible variants for the double slider

one with no graduation exept min and max
one with all the graduation under the slider (does not exist with graduation over the slider)

when a double slider is displayed with graduation, the graduations will always show with the intermediate smaller graduations (they cannot be taken away)
in a double slider all values of a handles are using a tooltip to show the handle value
when a double slider is not showing the graduation, the max and min values should always show
all sliders should always have a label (heading, aria-label, aria-labelledby) even if it is hidden for user but available for accessibility purposes
all sliders should provide the min and max values for accessibility even if not displayed

Some resources

WAI example
OOA example
Directly on Boostrap? https://github.com/twbs/bootstrap/issues/32215
Good example with a11y: https://dequeuniversity.com/library/aria/slider-multirange

HTML Structure
xxx
JavaScript
xxx
Documentation in Boosted
xxx
Implementation tasks

[x] #1138
[ ] Slider multi-range (don't forget to implement it on e-shop page if merged before)

Related tasks

[x] #1329 (white tooltips and popovers)
[x] #1714

Here are some resources given in #104 by @liyokuna:

WAI example
OAA example

Maybe try something on Bootstrap? See Bootstrap #32215.

Good example with a11y: https://dequeuniversity.com/library/aria/slider-multirange

Specification work in progress is applied here: https://codimd-codimd.kermit-noprod-b.itn.intraorange/CHcXSo9bQEWtlNzhUNED4w?both

Please note that the slider described at  https://dequeuniversity.com/library/aria/slider-multirange need a min.js file: https://dequeuniversity.com/assets/js/patterns/deque-patterns.min.js that could lead to licence problems.

Seems to be ok to use the slider from a legal point of view: https://dequeuniversity.com/terms

Hello,
i have evaluted the a11y of the slider https://codepen.io/MewenLeHo/pen/RwjOoqB
what's nice:

Deque is a well-known and skillful a11y corp. so we can rely on their implementation
aria and HTML are ok
keyboard nav is ok
this example seem to and" MUST respect the official design pattern ARIA https://w3c.github.io/aria-practices/#slidertwothumb
what's not nice:
I don't know why an aria-label is generated when we use one of the handlers (to change its value) via JS, don't seem to be useful, but I need more time to check

After investigation, this prototype seems to do almost what we want. It's easy to customize in CSS and it has a pretty good accessibility level.
The only problem is that the JS is really large and difficult to understand. I tried to remove unnecessary parts (i.e. parts needed for other components) but I am still working on it.

We also have a licence problem with the component, according to @Lausselloic the slider by Deque is published under private licence so we don't ahave the right to use it.

Here is a link that could maybe help us ?
Here is the result : https://codepen.io/vsync/pen/mdEJMLv
And its License : https://github.com/yairEO/color-picker/blob/master/LICENSE. It says allowing modification and distribution are OK, but maybe to track a bit more ?

Before building a new prototype, I think that we need to clarify some points.
Basically the future form component wil be a range (https://boosted.orange.com/docs/5.1/forms/range/ with multiple thumbs.
Unordered questions (do not hesitate to add your own questions):

How many handles will be allowed? Just two or 'simply' more than one?
Horizontal and/or vertical?
What about RTL?
Negative values allowed?
Percentage allowed?
Non numeric 'values' allowed?
Need to add a step attribute?
What will be the customizable options?
Options passed via custom data-* attributes?

A possible start: https://css-tricks.com/multi-thumb-sliders-particular-two-thumb-case/

Here is a link that could maybe help us ?
Here is the result : https://codepen.io/vsync/pen/mdEJMLv
And its License : https://github.com/yairEO/color-picker/blob/master/LICENSE. It says allowing modification and distribution are OK, but maybe to track a bit more ?

This example is using Knobs so I don't think that we can use it althought some ideas are really interesting.

Prototypes created by @MewenLeHo for the slider dual range:

https://codepen.io/MewenLeHo/pen/gOvEWEK?editors=1010
https://codepen.io/MewenLeHo/pen/LYQweBe?editors=0010

Bugs: Cursors position after Boosted was added
TODO: outputs position (waiting for designer review)
TODO: active values background (waiting for a11y review)

A resource that might be worth looking at: https://codepen.io/simeydotme/pen/WNLxxvx + https://github.com/simeydotme/svelte-range-slider-pips


Usability in React-Native

It would be really good to be able to use this in react native with an in memory document (removing the need for fs)

This is an interesting request that I have not thought of much. Give me a few days to think about what it would take to do this.


All the emoji (short names). :tada:

@keybase/react-hackers, this is ready for review.

@keybase/react-hackers, this is actually ready for a review now. 🙂

@akalin-keybase, mind taking another look?


Alert is still firing in Robusta UI

Greetings!
I might be facing something very trivial here, but I've not figured this out yet.
The situation is that I'm still seeing an alert "pod_container_terminated" (reporting on a previously terminated "robusta-runner" pod) that's still firing in Robusta UI but which was resolved in Alertmanager immediately after rolling out a new deployment/pod.
So at this point I'm not sure how to make Robusta sync the actual state of alerts or at least "forget" this one.
Please let know what am I missing here and/or are there any additional details I need to provide?
Thanks in advance

hi @slitsevych
Thanks for reporting this
If an alert isn't retransmitted for more than 6 hours, it will be considered resolved.
This is in order to handle cases, where the resolve event is missing.
Is it still firing in your UI account?

@arikalon1 oh, ok, got it!
and nope, it's no longer firing, however I need to mention that I decided to rename the alert thus "forcing" it to be thrown away.