Bump Spotless to 6.0, remove its tasks from the cc unsupportedTasksPredicate

Fixes #16500 Non-reproducible behavior around dependency verification with Spotless plugin.
Context

Spotless 6.0 now supports configuration-cache, and it also resolves dependencies without creating detached configurations and without sharing configurations across projects.
Contributor Checklist

[x] Review Contribution Guidelines
[x] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[x] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[x] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[ N/A ] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[ N/A ] Provide unit tests (under <subproject>/src/test) to verify logic
[ N/A ] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[x] Ensure that tests pass sanity check: ./gradlew sanityCheck
[x] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

@bot-gradle test sanityCheck

OK, I've already triggered SanityCheck build for you.

Thanks @nedtwigg for this! Much appreciated. Also, awesome customer service contributing the PR upstream back to us! 😄

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

OK, I've already triggered a build for you.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

OK, I've already triggered a build for you.


fix #1938, add DataSource Java API

DataSource.read returns Iterator[Message] instead of List[Message]
add DataSource.java and KafkaSource.java

Need more check for compatibility and performance regression.

Current coverage is 62.81%

Merging #1970 into master will decrease coverage by -0.29% as of 814c600

@@            master   #1970   diff @@
======================================
  Files          174     174
  Stmts         5423    5430     +7
  Branches       607     607
  Methods
======================================
- Hit           3422    3411    -11
  Partial          0       0
- Missed        2001    2019    +18

Review entire Coverage Diff as of 814c600

Uncovered Suggestions

+0.28% via ...cutor/Executor.scala#283...297
+0.26% via ...MetricsService.scala#118...131
+0.24% via .../master/Master.scala#124...136
See 7 more...

Powered by Codecov. Updated on successful CI builds.

Why cannot keep an interface that works for both scala and java?


Improper child relationships with WebClient

Describe the bug
When WebClient requests are made and blocked to retrieve a result, subsequent calls are each parents of the previous request.
Now RestTemplate is being deprecated (https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html) it is becoming very common to include both web and webflux dependencies in the classpath and use WebClient as suggested by Spring to make blocking calls like this instead. Web takes priority for Servlet based applications.
In this case it becomes impossible to follow traces as every one is nested, especially between services.
Sample
Demo at https://github.com/MarkRobbo/cloud-schema-bug
I would expect to see these spans created by hitting /call happen one after another (each being s child of the first), but they are nested inside each other:

Can you show an example where you don't shoot a request to the same application? This types of tests do not work fine with Brave. Can you create 2 applications and show that the problem is still there?

Here is the same application as above but ran twice: one on 8080 (service1) and the other on 8081 (service2) by changing server.port and spring.application.name, then pointing one to the other for the calls to /1, /2 and /3 by changing the port on the WebClient
The same behaviour can be observed

Ok, thanks, I'll check it out

Fixing this issue may also resolve #1423 which I believe is a symptom of this


add wavelength dependence to the index of refraction

I think it is implicitly assumed that the specified index of refraction n_0 is valid for the central wavelength of the laser pulse.
In the presence of chirp, it is necessary to vary the index of refraction correctly.
This can be a perturbative calculation, as the chirp is small relative to the central wavelength.
The same needs to be done with the n2 (aka dn/dT) component of the index of refraction.

This is an important feature, but development will have to wait until new resources have been identified.


add standard documents

Adding standard documents

CHANGELOG.md
AUTHORS.md
README.md
RELEASE.md
package.json

@F-Shahali
Also, fulfil the description of the PR.

@F-Shahali
Let me know when you are done with this PR, so I take care of the rest.

@F-Shahali Also, fulfill the description of the PR.

I just mentioned the files added in this PR.
Other documents have been added before.

@F-Shahali Let me know when you are done with this PR, so I take care of the rest.

It's done. You can go ahead.

@sepandhaghighi
Dear Sepand, Since we are about to release v0.1 of the MyButton project, and this PR addresses README.md and other standard documents to have in an open-source project, I would appreciate it if you too could kindly review this PR.

@F-Shahali
Are you done? if you do, please re-request for review.


Error unmarshalling CurrentWeatherData

Getting the following error:
json: cannot unmarshal string into Go value of type int
when CurrentByName is called.

It looks like you'll receive this error if you give CurentByName a name which the API cannot find since the endpoiint will send back an error object instead of the expected response:
http://api.openweathermap.org/data/2.5/weather?q=idontexist
{"message":"Error: Not found city","cod":"404"}
It might be a good idea to get some better error handling for these cases instead of returning the error from the JSON decoder.

Seems like the openweathermap API is having some issues at the moment too, so if you're sure the place should exist, it may just be that. :)

The city seems to exist. For city Kungälv, I am getting error
Fetch error for city Kungälv: json: cannot unmarshal string into Go value of type int
I also get different errors for other cities. I will post them next message.

These are all the errors I am getting.
Fetch error for city Malmö: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Uppsala: EOF
Fetch error for city Västerås: EOF
Fetch error for city Örebro: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Helsingborg: EOF
Fetch error for city Täby: json: cannot unmarshal number into Go value of type openweathermap.CurrentWeatherData
Fetch error for city Växjö: json: cannot unmarshal number into Go value of type openweathermap.CurrentWeatherData
Fetch error for city Halmstad: json: cannot unmarshal number into Go value of type openweathermap.CurrentWeatherData
Fetch error for city Sundsvall: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Luleå: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Trollhättan: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Östersund: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Borlänge: EOF
Fetch error for city Tumba: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Upplands Väsby: EOF
Fetch error for city Skellefteå: EOF
Fetch error for city Lidingö: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Uddevalla: EOF
Fetch error for city Landskrona: invalid character 'i' in literal false (expecting 'l')
Fetch error for city Karlskoga: EOF
Fetch error for city Märsta: EOF
Fetch error for city Kungälv: json: cannot unmarshal string into Go value of type int
Fetch error for city Visby: EOF
Fetch error for city Vänersborg: json: cannot unmarshal number into Go value of type openweathermap.CurrentWeatherData

This demo program was able to get results but only after re-trying a few times (with various errors).
I'm getting intermittent errors when querying the API directly in the browser too:
failed to connect
500 /proxy/data/2.5/weather?q=portsmouth&
Or just no response. I guess we have to wait for it to settle down.
package main

import (
	"fmt"
	"log"

	owm "github.com/briandowns/openweathermap"
)

func main() {
	w, err := owm.NewCurrent("F", "en") // fahrenheit (imperial) with Russian output
	if err != nil {
		log.Fatalln(err)
	}
	if err = w.CurrentByName("Kungälv"); err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%#v\n", w)
}

[benjamin@inara weather]$ go run main.go
2015/03/13 17:02:36 invalid character 'i' in literal false (expecting 'l')
exit status 1
[benjamin@inara weather]$ go run main.go
&openweathermap.CurrentWeatherData{GeoPos:openweathermap.Coordinates{Longitude:11.98, Latitude:57.87}, Sys:openweathermap.Sys{Type:1, ID:5387, Message:0.0351, Country:"Sweden", Sunrise:1426224759, Sunset:1426266620}, Base:"cmc stations", Weather:[]openweathermap.Weather{openweathermap.Weather{ID:800, Main:"Clear", Description:"Sky is Clear", Icon:"01d"}}, Main:openweathermap.Main{Temp:44.56, TempMin:42.8, TempMax:47.3, Pressure:1035, Sea_level:0, Grnd_level:0, Humidity:33}, Wind:openweathermap.Wind{Speed:9.94, Deg:70}, Clouds:openweathermap.Clouds{All:0}, Dt:1426264275, ID:2698739, Name:"Kungälv", Cod:200, Unit:"F", Lang:"EN"}

Thanks. Let me know if you have any updates. I will do too.

Well, looks like the OWM API is fine again but I love to hear some ideas on how to update the package to handle stuff like this better.  We can adjust to check return codes, return errors depending on which ones they might be, use error struct to unmarshal to if warranted, etc.  Thoughts?


New app layout

[x] Create a single tool grid (like an app launcher / home screen)
[x] Section at the top for pinned tools (default to navigation, astronomy, weather)
[x] Section at the top for quick actions
[x] Allow customization of pinned tools
[x] Allow customization of quick actions
[x] Sort options: Alphabetical, Categorized
[x] Long press for description and actions (pin/unpin, guide)
[x] Let returning users know that Settings was moved to the Tools menu
[x] Mark experimental tools

Future:

Should pinned tools be the same thing as the tabs? Ex. the first four pinned tools appear as bottom tabs (allow reorder)
Long press a tool for quick actions
Widgets
#346

Proof of concept:

The first version of this will be available in tonight's nightly build

This is great, btw. 🎉

This is great, btw. 🎉

Thanks! This change opens up a lot more possibilities, especially with #2046 and #2074


New PHP/DB versions

Since PHP 8.1, the data for a SELECT is no longer returned as PHP strings by default, but now has correct data types such as integer or float.
https://stackoverflow.com/questions/73169064/swag-migration-run-exception-in-logs-while-migrating-from-shopware5-to-shopware6
@mitelg Thanks!

Duplicates https://github.com/shopware/SwagMigrationMagento/pull/22


Docs: dockerTools

https://github.com/NixOS/nixpkgs/blob/5622b6b6feb669edc227aaf000413d5b593d4051/doc/builders/images/dockertools.xml#L169

many

Which exactly?

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/dockertools-imprecisions/8770/1

My prioritization algorithm is a simple graph-based popularity contest. The idea is to weight each node more heavily the deeper and more references they have.

out of: https://grahamc.com/blog/nix-and-layered-docker-images


Scroll to top of file header after collapse in PR review

With the floating file header that helpfully hovers over a file, it's easy to close a file after you're done reviewing it.
However if you do that (esp with really long files), you can often end up several files out of place.
It would be great if collapsing a file via the floating header would auto-scroll to top of the file, so that you can start reviewing the next file without searching for it it.

@bradzacher Would you be interested in doing a pull request?

i can certainly have a look into

I think it's happening right now. I am not sure if that's what you are looking for but currently once a file gets collapsed, it goes to next one directly for me. I have sample PR here with long file(s) to check

This was actioned via https://github.com/sindresorhus/refined-github/pull/748

Thanks @bradzacher!


Index Error

RuntimeError: IndexError: list index out of range
Hello.
Not sure if that a pymemuc related, but I get that error very often, sometimes it works fine (usually) but sometimes it fails without any reason, it happens at different times of the app's runtime.
I am using pyuac with pymemuc.
raise RuntimeError(last_line)
RuntimeError: IndexError: list index out of range

I am unable to determine the cause of this issue with the information you've provided. If you can create a minimal reproduction of the issue then I can look for a root cause.

@main_requires_admin
def main():
   from pymemuc import PyMemuc

    memuc = PyMemuc(
        memuc_path="./android/memu/MEmu-setup-abroad-sdk-mv.exe", debug=True
    )
   index = memuc.create_vm()
   memuc.start_vm(index)
   installed_apps = memuc.get_app_info_list_vm(index)
   if not ANDROID_APP_NAME in installed_apps:
        memuc.install_apk_vm(
            os.path.join(os.getcwd(), "android/apk/app.apk"),
            index,
            create_shortcut=True,
        )

    memuc.start_app_vm(APP_NAME_SHORT, index)

this is how I use it


[SIP-111] Proposal for improved database, schema, and table selection UI in SQL Lab sidebar

Proposal for Improved Database and Schema Selection, Table Selection UI, Table Metadata and Schema View, and Search Functionality
Motivation
Currently, when users extend the SQL editor by collapsing the left sidebar, the database and schema selectors become inaccessible.

Fig. 1. SQL editor with the sidebar
Fig. 2. SQL Editor with folding the sidebar

This not only makes it difficult for users to utilize the expanded editor layout UI, but it also limits the use of the left sidebar area, which is dedicated to the database and schema selector options. (We aim to customize the left sidebar in a manner similar to the Visual Studio Code sidebar, enabling a more interactive layout that includes features like a ChatGPT prompt and more.) Additionally, the dropdown UI for the table selector lacks usability and does not allow for easy navigation to the corresponding datasource without the need for the database and schema selectors. Moreover, the table metadata, including column schema and record preview, is displayed separately from the table schema dropdown, making it challenging for users to manage and explore their table schema view effectively. Furthermore, there is no search functionality available to find matches in the datasource catalog and table metadata and schema, which hampers users' ability to locate specific information quickly.
Proposed Change

Original Plan
Alternative Plan

The proposed change is to:

Move the database and schema selectors to the main content layout, ensuring their accessibility at all times.

(The investigation is still ongoing for the tree view UI due to concerns about performance.)
2. Change the dropdown UI for the table selector to a tree view for improved navigation.
3. Merge the table metadata, including column schema and record preview, under a new "My table schema" root in the tree view for better management and exploration.
4. Add a search box to allow users to find matches in both the datasource catalog and table metadata and schema for enhanced information retrieval.
New or Changed Public Interfaces
There will be changes to the existing visualizations, dashboards, and React components to incorporate the improved database and schema selection, table selection UI, table metadata and schema view, and search functionality.
New Dependencies
There are no new dependencies required for this proposed change.
Migration Plan and Compatibility
I do not for-see any migration required.
Rejected Alternatives
None.
to: @michael-s-molina @john-bodley @kasiazjc
cc: @betodealmeida @eschutho @rusackas

@justinpark it seems like the left-hand panel will likely define (for searching purposes) an exhaustive list of all database and namespaces (schemas)  which i) our current API doesn't handle, and ii) could be rather costly to fetch.
Would you mind expanding how these perceived interactions (including the table schema) will likely materialize?

Nice!
I have a few questions and comments:

Should we have the DB/schema selectors above both the sidebar and the SQL editor, to reinforce the fact that the selection applies to both panels? Something like (apologies for the poor ASCII art):

 _______________________________________
|                                       |
| [database selector] [schema selector] |
|_______________________________________|
|                   |                   |
| sidebar           | SQL editor        |
|___________________|___________________|

My impression with your proposed design is that it's not clear that the selection in the SQL editor panel applies to the sidebar, since the panels are siblings hierarchically.

What happens when databases have thousands of tables? Are we going to paginate the sidebar?
Currently we have some affordances to show extra table metadata (in Presto, Hive, Trino, BigQuery, and GSheets). How are these going to be displayed in the new design?
We've been discussing adding support for catalogs (projects, in BigQuery terms) to Superset. It would be nice to keep that in mind during this redesign, to make that work easier.

@betodealmeida regarding your first point, I originally had the same thought, however it seems like the left-hand panel is not database/schema specific, i.e., it represents the entire corpuses of databases and nested schemas and tables.

@betodealmeida As @john-bodley mentioned, the left-side panel is no longer linked to the database/schema selectors as it now has its own hierarchical structure through the tree format.
However, I've noticed a performance issue when handling large record sets in the tree view layout. (as you both mentioned)

While the tree list view has the capability to manage large lists through virtual rendering, it doesn't currently  have a plan to provide an option for pagination, as the backend API does not support this feature yet.

As @john-bodley pointed out, we lack an API to search for a specific table name across the entire database, hence it's slated to be executed by the frontend. Thus, it will only highlight a record from the already fetched recordset, leading to some limitations in discovery.

Consequently, I'm leaning towards maintaining the dropdown UI (as opposed to a treeview UI) for the table schema selector (and designing the layout as per @betodealmeida 's first point) for the initial proposal until the API is fully equipped to handle pagination and search functions.

Thank you for the SIP @justinpark.
Some thoughts to help with the discussion:

@justinpark it seems like the left-hand panel will likely define (for searching purposes) an exhaustive list of all database and namespaces (schemas) which i) our current API doesn't handle, and ii) could be rather costly to fetch if the corpus of databases, schemas, and table is large.

What happens when databases have thousands of tables? Are we going to paginate the sidebar?

While the tree list view has the capability to manage large lists through virtual rendering, it doesn't currently have a plan to provide an option for pagination, as the backend API does not support this feature yet.

I think the answer here is lazy loading and if necessary pagination. Even if the Ant Design tree does not natively support pagination, we can still implement it by adding a link to load more items of a specific node. We should also keep in mind that we already load all the tables once a particular database and schema are selected, and that's why lazy loading the items will probably be sufficient. There's an example of this type of tree here.

As @john-bodley pointed out, we lack an API to search for a specific table name across the entire database, hence it's slated to be executed by the frontend. Thus, it will only highlight a record from the already fetched recordset, leading to some limitations in discovery.

Consequently, I'm leaning towards maintaining the dropdown UI (as opposed to a treeview UI) for the table schema selector (and designing the layout as per @betodealmeida 's first point) for the initial proposal until the API is fully equipped to handle pagination and search functions.

My vote would be to enhance our current API to support the changes proposed here instead of trying to adapt the interface to our current API limitations. The tree view for displaying database/schema/tables is widely used in most database/sql editors and I think the UI and API changes are what justifies the SIP in the first place.

Currently we have some affordances to show extra table metadata (in Presto, Hive, Trino, BigQuery, and GSheets). How are these going to be displayed in the new design?

We've been discussing https://github.com/apache/superset/issues/22862 (projects, in BigQuery terms) to Superset. It would be nice to keep that in mind during this redesign, to make that work easier.

Great callout from @betodealmeida. Let's think about these concepts now while we're still in the design/prototype phase as it's way more costly to think about the after. If we could enhance the mockups with these concepts it would be great.

I believe the current setup uses the schema dropdown to determine the content of the tables dropdown. Placing the schema dropdown directly above the SQL Editor might imply a strict binding between the SQL Editor and the selected schema. However, it's important to note that the SQL Editor allows for cross-schema queries, so the association between the dropdown and the editor isn't necessarily exclusive.

@justinpark @john-bodley @rusackas About the searching feature and performance concerns, we can implement the same pattern used by DBeaver and other tools where the search is applicable only to loaded databases. When a user loads a database by expanding its node, we could display a connected icon which would indicate that the database is available for searching.
https://github.com/apache/superset/assets/70410625/78c0380e-3616-4980-ae1e-4d4296ed46fa

Thanks for all feedback. Here is my answer for all opinions.

john-bodley: ... the left-hand panel will likely define (for searching purposes) an exhaustive list of all database and namespaces (schemas) which i) our current API doesn't handle, and ii) could be rather costly to fetch if the corpus of databases, schemas, and table is large.
Would you mind expanding how these perceived interactions (including the table schema) will likely materialize?

michael-s-molina: ... the search is applicable only to loaded databases. When a user loads a database by expanding its node, we could display a connected icon which would indicate that the database is available for searching.

Considering @john-bodley's concerns, the recommendation put forth by @michael-s-molina might be a suitable interim solution until the Superset API is fully equipped for a full-text search of the entire database list.
As suggested in Figure 1, we could use varying colors to denote the assets that are available for search. This way, users can easily distinguish which parts are excluded from the search list.

Figure 1

betodealmeida: 2. What happens when databases have thousands of tables? Are we going to paginate the sidebar?

Similar to the current setup, the entire list will be displayed (as the paginated API isn't supported yet). However, it will be virtually rendered (as-is) within the viewport for better efficiency.

betodealmeida: 3. Currently we have some affordances to show extra table metadata (in Presto, Hive, Trino, BigQuery, and GSheets). How are these going to be displayed in the new design?

Indeed, much like the existing UI, the display will be situated beneath the table hierarchy as shown in Figure 2.

Figure 2

betodealmeida: 4. We've been discussing https://github.com/apache/superset/issues/22862 (projects, in BigQuery terms) to Superset. It would be nice to keep that in mind during this redesign, to make that work easier.

I've contemplated introducing a new hierarchy to support the catalogue. Kindly refer to the newly added "catalogue" section in Figure 2.

geido: I believe the current setup uses the schema dropdown to determine the content of the tables dropdown. Placing the schema dropdown directly above the SQL Editor might imply a strict binding between the SQL Editor and the selected schema. However, it's important to note that the SQL Editor allows for cross-schema queries, so the association between the dropdown and the editor isn't necessarily exclusive.

You're right that our current setup uses the schema dropdown to influence the content of the tables dropdown. However, within the tree hierarchy structure, the schema dropdown might be seen as redundant since it's already incorporated into the tree structure. Yet, removing the schema selector could potentially be a step back, given how it's implicitly used when a table name is provided without a specified schema name. (+ We're planning to make the schema dropdown optional, allowing users to run queries even without making a schema selection.)
cc: @betodealmeida @geido

@justinpark Thank you for the modified mockups. One last suggestion would be to display the blue buttons (View Key, Copy S, Show CR) as tooltip icons that are displayed when hovering the table name (as we do now) given that those seem like secondary actions. Another option, would be to support right-clicking on a table and offer a menu of options. This one is better if we have many options when interacting with a table.
https://github.com/apache/superset/assets/70410625/aad66450-1c63-45a8-9779-aa6a21510b7f

would be to display the blue buttons (View Key, Copy S, Show CR) as tooltip icons that are displayed when hovering the table name (as we do now) given that those seem like secondary actions.

The button arrangement mentioned above is one of the prototype ideas I've been considering. I favor the suggestion of using tooltips instead of a right-click popup menu, and I'm inclined to proceed with this approach.

@geido @betodealmeida As we're nearing the voting process, I'd like to address any requests or concerns. I'm planning to advance to the voting stage next week. Please share any concerns or questions you may have before we move forward.

@justinpark I am still not fully convinced of the schema dropdown on top of the editor as I am concerned that it creates the impression that the SQL is strictly tied to the schema selected, even though that isn't the case. @yousoph @kasiazjc any thoughts?

@justinpark I am still not fully convinced of the schema dropdown on top of the editor as I am concerned that it creates the impression that the SQL is strictly tied to the schema selected, even though that isn't the case. @yousoph @kasiazjc any thoughts?

Agreed with @geido here. Is the schema field mandatory or could that be left blank?
It's also not clear to me what the proposed interactions between the left panel and the top db/schema selectors are. Do they impact each other at all or are they operating independently of each other?
What about between the left panel and the SQL editor portion - does the left panel still open previews like the current left panel does?

@yousoph Sorry for the late response. Here is my answer.

Agreed with geido here. Is the schema field mandatory or could that be left blank?

The schema field is optional, and it can also be left blank. If it appears confusing, I can remove the schema selector to simplify the process.

It's also not clear to me what the proposed interactions between the left panel and the top db/schema selectors are. Do they impact each other at all or are they operating independently of each other?

The DB selector (located above the SQL editor) does not affect the left panel. The left panel has its own hierarchy that allows exploration of databases, schemas, and tables independently. Please take a look at the screenshot below. (Please note that it's a prototype version, but it gives an idea of how the tree will be displayed.)

What about between the left panel and the SQL editor portion - does the left panel still open previews like the current left panel does?

Yes. It still open (metadata) previews under the table name.

Hey, loving the designs here! I wanted to bring up the topic of caching and autocomplete and make sure they're somewhat in-scope for this SIP.
Around caching, the sqlalchemy get_table_names dialect method can be really slow at times on some database engine, and creates strains on some systems, and I think we currently have some caching in place around that method/endpoint. Maybe we simply need a force-refresh that's more explicit than say collapsing+re-extending the table name list. As with charts, it's great if we can surface cache metadata (is this served from cache? when was the snapshot taken) and expose a clear way to force-refresh. Both speed and freshness matter here.
About autocomplete, currently the scope for autocomplete in the editor is related to what's in the left panel, meaning by we only auto-complete table names within the active schemas, and column names for the tables added in that accumulator section. Here we probably want to follow the same pattern where autocomplete would be limited to what's been retrieved by the frontend, as opposed to say trying to include everything.

Another topic related to this left panel - and maybe out of scope for this SIP - is the idea of allowing users to search/find tables by names, especially when not knowing the schema it might be in. Currently if you don't know the name of the schema and/or the full name of the table, you're at a loss.  While this is probably out of scope for the SIP, it's good to think how we might allow users to search for tables across schemas in the future, maybe with a search box at the top of the left panel, and maybe leveraging some sort of cache (?)

@justinpark (or anyone else): Do you think there's more discussion to be had here, or is it time to put this up for a [VOTE]?

This would be good to move forward!

+1 on moving forward. Few other thoughts while the discussion is still open:

about WHEN to fetch the metadata client-side: I think realistically, most of the fetching of metadata should 1. be done at "user clicks expand" time, though upon expanding a database connection we could fetch 2 layers (catalog + schema) right off the bat. That has clear implication for searching as we'd probably limit to what's in context client-side - for that I think the  text-muted for unloaded items makes it clear enough that we won't search within those objects
about caching: we should cache every "expand" call here (when expanding a database, a schema, or a table), but we should also expose a way to force-refresh as often in a SQL IDE people are creating tables, adding columns to table, ...
about action buttons: I also would prefer a more subtle, icon-shown-on-hover approach like we haven now instead of large primary buttons like shown in the designs
about metadata: I don't think we currently do a good job at fetching/surfacing table-level or column-level comments/description, I'd love to have better support for not only showing it, but maybe even making it easy to add/commit descriptions from SQL Lab - this probably out-of-scope for this SIP

One last note is that we have a "metadata well" currently that's used to show some metadata in some database engine, things like "latest partition" and "table description". I think that belongs somewhere under individual tables and close to the action buttons

Based on all the feedback everyone provided, I would like to move forward to the vote staging with the following updates:

Data Fetching and Searching: As @mistercrunch suggested, we will fetch metadata at the moment of the click and display the proposed search results on the client side. (Instead, it will clearly indicate on the UI that a client-side search has been performed, such as through a text-muted display.) However, I'm considering future improvements through a new SIP, where it will fetch the entire metadata using service worker efficiently.

Caching and Action Buttons: As proposed, it will include a force-refresh feature and modify the existing functionalities from the previous table/schema to be displayed upon mouse hover.

Database/Schema Dropdown Selector: This SIP will not be proceeding with the initially proposed database and schema dropdown selector displayed at the topbar. Instead, it will place the database selector next to the Run button to clearly indicate which DB the SQL is being executed on.

@betodealmeida @geido @michael-s-molina @rusackas Please review the updated SIP-111 proposal and participate in the vote.

Closing since it's approved. Thanks all, and happy building!!! :D


More reliable reconnect

I'm interested to hear your thoughts on this.
Currently there's no reconnect logic except to connect again when the network becomes reachable.
That's fine if the websocket only closes due to network unreachability, but there are other cases that also might happen.
The remote end could close the connection probably, but the one I saw was that the app goes to sleep in the background, and 20 minutes later comes back to the foreground.
In this case everything is still like it was, but the websocket is closed.
Reachability doesn't fire, though, because reachability hasn't changed.
So, this sets up a reconnect when the websocket dies, but cancels it if we hear from reachability for any reason.
Thoughts?

Just to clarify the scenario you encountered:

Websocket is connected with an app that is foregrounded
App gets backgrounded
Eventually websocket gets closed but reachability not triggered
App is foregrounded again but websocket connection is closed and reachability has no reason to cause a reconnect

Is that correct?
If that's correct, is this PR designed as a fix to make sure that a reconnect occurs?
I can't quite figure out what's going on with the code. For example, why when reachability receives a notification that the network is reachable does the reconnectOperation get sent a cancel()?
I'm not massively familiar with NSOperation so I may just not know the API well enough to know what's going on.
Thanks! I'm definitely keen to get this merged if it fixes things, just once I've got my head around it 👍

Yeah, that's the scenario.
I'm specifically on tvOS, and the steps I took to reproduce the bug was to run my app, then leave my app and wait 15 minutes for the tvOS to go to sleep (when it was set to go to sleep after15 minutes).
Then, wake the system up and go back into my app.
But, more generally, I believe it could come up if the underlying socket closed for any reason.
Like, if pusher hiccuped, or maybe redeployed, and closed the socket on their side.
Or, I think, if the wifi you're connected to dropped packets for a bit.
Reachability wouldn't trigger, because you're still connected, but the websocket would still timeout, I think.
I didn't test that one though.
So, in terms of implementation I'm not super proud of this one myself.
Here's what I was going for:
If the websocket goes down for reachability reasons, then the code is already solid as-is.
But, in my testing it seemed that the websocket closed before reachability had changed.
So, I used NSOperation because it's cancelable, which means that if I've called cancel() on it, then the block I've constructed it with will not be executed once it's enqueued.
So, when the websocket disconnects it makes a block to reconnect, and waits 1 second to do it.
If, in that 1 second, reachability changes for any reason, then I cancel the operation to allow the logic that was already there and working to do its thing.
If reachability goes down, then I don't want to connect, because it won't work.
If reachability goes up, then I don't want my delayed connect, because I'm going to call connect right now.
But, if after 1 second nothing has canceled the operation, then that means that the websocket disconnected for a reason unrelated to reachability changes, so we want to reconnect.
As a fun side effect, if Pusher's server runs into trouble and dies temporarily, it also means that there's a 1 second delay between retries, which is often nice. No reason to spam them with as many retry attempts as the CPU will allow.
There are other ways to write the kind of logic I've just described, but I chose NSOperation because of cancel() keeps its own state, which makes things cleaner in the case where reachabiity goes up and down more than once in that second. I won't accidentally spin up 10 overlapping delay_after blocks that all do who knows what by the time the first runs.
But, this is your codebase, and if you'd prefer it to be structured another way, then I'd be willing to hear it.

Also, just looked through the closed issues. Do you think this might have something to do wth #43?

Ah I see! Yeah, that makes a lot of sense.
Have you tested it with your tvOS app to see if it works in a real-world setting?
For example, if the Apple TV goes to sleep will the code where the reconnect operation is added to the operation queue actually get run? Or if the device goes to sleep will the websocket close and the code in the websocket delegate just not get run?
I can see how this definitely helps the case where the connection is closed by the server as opposed to the client though, so it's an improvement nonetheless 👍

Yes, the testing loop is kinda long because I have to set it up then wait 20 minutes, but I spent most of yesterday testing it, and I don't know that it catches every case but it at least catches all of the ones I've seen so far.
Even before I added my fix, I always saw the connection delegate properly update the status to disconnected, so that gives me faith.
I'm going to keep playing with it today to see if I can get it to break any other ways.

Awesome - thanks a lot for doing all that testing and reporting back. The pull request is a huge bonus as well!
Let me know if you hit anything else today. I'll merge this very soon and get a new release out.

Not a problem. It's not like I don't also benefit from the library being more resilient on my behalf!
Just woke the app up from an overnight sleep, and it connected basically instantly.
Still more testing to do, but I continue to be happy.

Ok, small bug. I've tested a bunch of cases and most seem like what I would expect, but if I start the app with no reachability then it attempts to reconnect once per second (which fills my log)
So, I might have to do a small tweak to handle the "started with no network case".
The app still works, and connects when network shows up, and functions fine after that in both the disconnect and reconnect phases, but it's not ideal at the start.
Planning my approach now.

Ok, so, I think I've fixed that issue as well. The first time (or theoretically any time) that I know the network is unreachable when the socket disconnects, don't even both going through the new retry logic.
The assumption being that if the reachability stuff thinks the network is unreachable, then when it becomes reachable, it will tell me.
This shouldn't effect the code-path I'd previously written (and in my tests it appears to work in the same cases), but on initial connection in a state of disconnection it doesn't retry uselessly over and over, which was a minor regression I'd caused.
I did some more testing today and haven't found any regressions, and it appears to be more reliable in the cases I've previously identified.

Looking great! I'm going to bundle this up with the changes in #60 and do a 2.0.0 release.


iOS Feature: delete chats

As a user,
I want to be able to delete (or hide) old chats,
so they do not clutter my view.

oh, lmao, this was meant to be in this release, it just seems to be very broken
it seems to be somewhat linked to not being able to update group chat names, so I'll have to see what's causing that when I get time

fixed with https://github.com/Free-Republic-of-Verdis/verdis-communications/commit/8bb82841b59838d3c3968def9f04c01dbd317de9


Even 16GB isn't enough???

Hi,
Tried training the model with a P5000 and V100 with 16gb of Mem and still I got this error.
after 100 step, it goes out of memory with the current config.
[2020-07-26T09:46:17] Logging to logdir/bert_run/bs=6,lr=7.4e-04,bert_lr=3.0e-06,end_lr=0e0,att=1
Loading model from logdir/bert_run/bs=6,lr=7.4e-04,bert_lr=3.0e-06,end_lr=0e0,att=1/model_checkpoint
[2020-07-26T09:46:46] Step 100 stats, train: loss =<PHONE_NUMBER>9101562
[2020-07-26T09:46:54] Step 100 stats, val: loss =<PHONE_NUMBER>8759766
[2020-07-26T09:47:08] Step 100: loss=180.5266
Traceback (most recent call last):
File "run.py", line 109, in
main()
File "run.py", line 77, in main
train.main(train_config)
File "/notebooks/rat-sql/ratsql/commands/train.py", line 274, in main
trainer.train(config, modeldir=args.logdir)
File "/notebooks/rat-sql/ratsql/commands/train.py", line 192, in train
norm_loss.backward()
File "/usr/local/lib/python3.6/dist-packages/torch/tensor.py", line 118, in backward
torch.autograd.backward(self, gradient, retain_graph, create_graph)
File "/usr/local/lib/python3.6/dist-packages/torch/autograd/init.py", line 93, in backward
allow_unreachable=True)  # allow_unreachable flag
RuntimeError: CUDA out of memory. Tried to allocate 20.00 MiB (GPU 0; 15.90 GiB total capacity; 14.80 GiB already allocated; 3.50 MiB free; 533.26 MiB cached)

Try with bs=3 and num_batch_accumulated =7 or bs = 2 and num_batch_accumulated =8. With 2 and 8 training is faster but maximum accuracy im getting after 52k steps is only 59.6 %.
So i would suggest you to go with 3 & 7. Pls let me know the results after u try it.

Hi @karthikj11,
thanks for the response I will surely try with the new values.
ps- I was able to train the model with the default values by starting the checkpoint again and again on a P100. but after a 1000 steps, I abandoned it as the difference between my loss and the loss log file provided by @alexpolozov was tremendous.


Update source for 3.0.1

Can we finally get an update on this repo? There's a new release yet seems like the changes aren't even pushed here

oh yeah I should probably do that sometime, I can assure you very little has changed in terms of content, I haven't had enough patience to actually add hats recently

Could you also please make this repository upstream for all changes for the mod? Would not make sense to have source code link posted on Modrinth if it was never updated.

At some point the source for this did break so once I work out how to connect it back up again ill upload the code

the code is uploaded now, since it currently only targets 1.20.1 as supported thats the main branch but I can always add branches later for older versions, hopefully I have my intellij set up now so that it actually knows this is the remote


Unable to execute EV macro

Hello there! I am a new DM that have recently started getting into using Foundry vtt and various modules.
I have a Thaumaturge that we are trying to make the EV macro work for from your module, however I can't seem to get it to work. When I try to run the macro, nothing happens, no error messages or anything. We tried with the Recall Knowledge (Esoteric Lore) on its own and that macro can be executed, where I as the DM get the window pop up and get the roll in. I read through the steps multiple times and made sure to have the values set, the right boxes checked and so on and so forth.
I am unsure of what I am doing wrong and figured I'd ask for help from the master himself! I am not sure if the screencaps are of aid, and the current pf2e version is 5.16.1
Of course I understand that you are busy and there is no rush with this what so ever.
Thanks in advance!

Hey! Sorry you're having issues. Looks like you're still on v11. Can you confirm that you're on 0.15.3 for Exploit Vulnerability?

Hello again!
Sorry for the wait on the reply on my end!
I looked both in the foundry game, and on The Forge where I have the games files stored and such. I have the 5.16.1 version running. I saw that in the foundry that I am supposed to have an update (again) for the games version but I can't quite find/figure that one out. Is that perhaps the issue?
Sending a few more screenies incase it helps at all. Thanks again for helping out!

You're on the correct version of Exploit Vulnerability and the system. You can't update the system version because you're on v11, which is fine.
Try running the macro again, press f12 to view the developer console, and see if there are any messages in red in there.

I get this when I look in the F12 console

Did you have the thaumaturge manage their implements? https://github.com/mysurvive/pf2e-thaum-vuln/wiki/Managing-Implements

What a blunder we did D:
Thank you, the macro now works! Just tried it!
Thank you so much for the help!

Now'll just try and figure out the rest, but everything seems to be working macro-wise, so thanks again, I will mark as solved/closed!


VS Code will remember open workspace files even with all remember options disabled

Does this issue occur when all extensions are disabled?: Yes

Version: 1.56.2 (OSS build)
Commit: 054a9295330880ed74ceaedda236253b4f39a335
Date: 2021-05-16T15:21:33.370Z
Electron: 12.0.9
Chrome: 89.0.4389.128
Node.js: 14.16.0
V8: <IP_ADDRESS>-electron.0
OS: Linux x64 5.12.9-1-MANJARO
Steps to Reproduce:

Set following config options:
files.hotExit = off
workbench.editor.restoreViewState = off
window.restoreWindows = none
workbench.startupEditor = newUntitledFile

Open a folder (as a workspace)

Open couple of files inside that folder

Close VS Code

Reopen VS code and reopen that folder

BUG: Even with all above options, VS Code will still remember and re-open previously open files in that workspace

/duplicate https://github.com/microsoft/vscode/issues/22613


The third network connection (synapse to storage account) is not clear

"Alternatively, if you use ADLS Gen2 + OAuth 2.0 authentication or your Azure Synapse instance is configured to have a Managed Service Identity (typically in conjunction with a VNet + Service Endpoints setup), you must set useAzureMSI to true. In this case the connector will specify IDENTITY = 'Managed Service Identity' for the databased scoped credential and no SECRET."

Above is not clear what to do if "if you use ADLS Gen2 + OAuth 2.0 authentication" and if the synapse is not configured to have MSI
It is also not clear whether the storage account in the picture is the primary storage account for the synapse instance or not. Can any storage account serve the purpose?
Also the documentation says only exactly one of the "enableServicePrincipalAuth" and "useAzureMSI" in current version of the connector can be set to true, then what happens if the first type of network connection ("Spark driver to Azure Synapse") already set the "enableServicePrincipalAuth" to true? See below quote from the first type of network connection

Spark driver to Azure Synapse
.....

OAuth 2.0 with a service principal
You can authenticate to Azure Synapse Analytics using a service principal with access to the underlying storage account. For more information on using service principal credentials to access an Azure storage account, see Access Azure Data Lake Storage Gen2 using OAuth 2.0 with an Azure service principal. You must set the enableServicePrincipalAuth option to true in the connection configuration Parameters to enable the connector to authenticate with a service principal.

@minnieshi Please help with the link to the document on which the above document feedback request is created.
In case your query is not related to document content, open a new forum thread in Microsoft Q&A or Stack Overflow as it could be better place to get help on your scenario. These forum community members could provide their expert guidance on your scenario based on their experience. Thanks.

https://docs.microsoft.com/en-us/azure/databricks/data/data-sources/azure/synapse-analytics
I was in the page, and scrolled to the bottom of the page, clicked feedback on the page option, and it allowed me to fill in the above info, so I thought the system was smart enough to track the page url

Duplicate of #90064

Can you please open the ticket again? It is not the same or duplicate of the other ticket. The contents or the questions are different.


[Remote Segment Store] Combine metadata and snapshot files

Description

Currently, we upload 2 files in addition to segment files per refresh (we upload these files even if there are no segments to upload - that will be fixed by https://github.com/opensearch-project/OpenSearch/issues/7443)
These 2 files are metadata file and SegmentInfosSnapshot file. In order to avoid explosion of number of files in the remote store, we use the same name of metadata and snapshot file per commit.
But the assumed invariant is: there is 1:1 mapping between metadata and SegmentInfosSnapshot file.
This does not work if while reading we read metadata file and by the time we read snapshot file, remote store has new snapshot file with the same name.
To avoid this race condition, this change combines these 2 files. metadata file will have one more field: segmentInfosBytes and in the restore flow, instance of SegmentInfos will be created by this field in the metadata.

Related Issues

https://github.com/opensearch-project/OpenSearch/issues/7772

Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

org.opensearch.remotestore.ReplicaToPrimaryPromotionIT.testPromoteReplicaToPrimary is failing intermittently. Looking into it.

Precommit is failing on windows. Re-triggering the build.


Fix docs api.go in LPP server

Think a copy paste error from the LPC implementation

Thanks @anjrew , yeah, why do I even do copy & paste ;)


Adafruit metro m4 express airlift board support

I got my hands on a metro m4 express airlift with an embedded esp8266 that talks over sercom0 using wifi nina which there seems to be a crate for.
Would there be interest in a PR to add this board with the wifi pins defined? Besides the wifi co-processor it seems to be exactly the same as the metro_m4 already in this repo.
Given there appears to be a wifi nina crate someone has already written, it would be cool to have an example using this or even a feature flag to directly integrate this into the board's crate.

I think it would be best implemented as an optional feature, similar to how the radios are implemented for feather m0.

@robo-corg, is that solution acceptable? Is there anything left to discuss? Or can we close this issue?

Yup go for it. I can open a PR if and when I have the time (it has remapped
pins similar to other boards in this repo so it probably does warrant its
own board support).
On Mon, Jun 14, 2021 at 4:26 PM Bradley Harden @.***>
wrote:

@robo-corg https://github.com/robo-corg, is that solution acceptable?
Is there anything left to discuss? Or can we close this issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/atsamd-rs/atsamd/issues/361#issuecomment-861057551,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABRKECJW3MGMZRH7UJ7N4DTS2F37ANCNFSM4VB3RAUA
.


Add issue templates

This PR adds issue templates to the repo - no code changes.  It has been tested on another fork that once merged - the repo will gain the templates defined in the files.

Codecov Report

Merging #3246 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #3246   +/-   ##
========================================
  Coverage    70.33%   70.33%
========================================
  Files          675      675
  Lines        53178    53178
========================================
  Hits         37402    37402
  Misses       15776    15776

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 cc4cefa...a517c86. Read the comment docs.


View resource occasionally errors

Bug Report
What did you do?
click view resources when during an operation, or even after it has finished.
What did you expect to see?
should work or fail gracefully.
What did you see instead? Under which circumstances?

The argument most likely comes in as undefined and the switch case thinks its an invalid resource type.
Possible Solution

Additional context

Resolved. Closing


[Regression] Connections without credentials

Sometime after V2.3.2 the behavior of the Authenticate callback changed.
While previously (including in V2.3.2) it wasn't called for connections that don't require username/domain/password (2003 Server with RDP security for instance) it is now called always, even for non-NLA connections.
I haven't looked into when this was introduced but it definitely causes issues with users who have hosts where no authentication is required to reach the login screen.
To work around the issue, those users now have to specify an empty set of credentials during the connection phase. While this works, it's irritating and the previous behavior is obviously more intuitive.
Can this be reverted to the previous behavior?

The reason why the authenticate callback is now called is that a client might wants to allow the user to enter/store his credentials even for non-NLA connections. I.e. mstsc also asks the user for his credentials when you are connecting with TLS.
In order to restore the old behavior you can simply add the following code in your client's auth callback (unfortunately the #defines for SelectedProtocol are not yet exposed by the FreeRDP API - 2 means PROTOCOL_HYBRID):
// Return if a non-NLA connection is established
if (freerdp_settings_get_uint32(settings, FreeRDP_SelectedProtocol) < 2)
    return TRUE;

Hope that helps!

@mfleisz Thx for getting back to me and explaining the change.
Your proposed solution would definitely work but I'm not sure if this is the best way to handle it.
Wouldn't it make more sense to somehow tell the consumer of the Authenticate callback why it's called? Previously it was clear that it was called because the provided set of credentials didn't work. Now, it might also be called if no authentication was attempted just because username/pw are empty. I'm thinking something along the lines of an AuthenticationReason enum.
Alternatively, I would even prefer a separate setting to signal to FreeRDP that I want the library to not prompt if empty credentials are provided. There already is a PromptForCredentials flag which doesn't appear to be used apart from writing to .rdp files. I haven't heard about that .rdp file setting before, maybe you can educate me as to what it does in Microsoft's clients?
Anyway, while looking through the settings struct I was expecting this to somehow trigger the new behavior but it's off by default.
Could this be used to control the behavior of the Authenticate callback. So by default PromptForCredentials would be on and prompt the user for credentials if none have been provided and when it's off, Authenticate wouldn't be called for cases where no credentials have been provided but obviously it would still be called when NLA is on and auth failed.

I don't think PromptForCredentials is the right setting/flag to use for this purpose. According to https://www.donkz.nl/overview-rdp-file-settings/ it is used as an override to ask for a password even if there is a previously stored password available.
We can add a new setting that simply disables the Authenticate callback for non-NLA connections if set?

@mfleisz Sure, a new setting would also do the trick. Something like AllowEmptyCredentials?

@lemonmojo Sounds good 👍

Is there any updates on this ?
I want to use the xrdp login window to connect to a server because I have multiple users that want to connect.
I don't know their passwords, so I can't just leave them in a file to read.
I also create a desktop file for them to connect. So they have no prompt to enter a password. Giving an empty password (hardcoded /p: ) then fails login and they have to press back to get to the login window. That works ofcourse, but seems rather tedious.
I can make it work by modifying the function utils_authenticate() in libfreerdp/core/utils.c.
If I return a AUTH_SKIP for case AUTH_RDP and case AUTH_TLS I don't get asked for a password. It still works when I supply a password though.
I really want to use prebuilds, but since the TLS and RDP connection always wants a password I have to compile FreeRDP each time.

if you know that you will not use NLA just append /sec:tls (or -sec-nla) and you no longer need a password and get to the login screen.
Tested on debian 11 with xfreerdp /v:<server> /u:someusername -sec-nla and you get prefilled username on the login screen without any password prompt

Sadly this does not work when connecting to a xrdp server. When connecting to a windows server this works fine though.
I think the fault is probably on the server side because of this. Thank you for your answer!


Basic Actions Use

Hello! I see Basic Action are not usable from HUD. Is it possible?
Thanx for great Module!

Hi @Nublaglasiem
It's a know issue. There is a FR to the system. Since I don't want to replicate code, I requested to make the actions with public access, as soon as the system export the access to the function that rolls those actions I will include support to it.


Ensure salt-minion never starts

By setting invoke-rc.d policy using the /usr/sbin/policy-rc.d script and returning 101, per
https://people.debian.org/~hmh/invokerc.d-policyrc.d-specification.txt,
but only for the window while we're installing Salt.
This is a much more fool-proof method than what I was attempting
before. I hunted for how to do this before and clearly failed at my
Google-fu.
Fixes #5621

cc @cjcullen

LGTM

Merging before the freeze.


Low code performance

Hello there,
Introduction
Analyzing possible performance problems in critical code sections, I found the following low-performance code: https://github.com/WagnerPMC/reverseguard/blob/d6b4fb3cb0f78aa627e3d1ac03b5d1111c71bf9e/middleware.go#L189
What does the problematic piece of code do:
The point of this code is to get an IP address without a port, since Traefik provides it together with a port.
Code performance measurements
cpu: AMD Ryzen 9 3950X 16-Core Processor
BenchmarkSplitAddress-32                18092370                63.82 ns/op           32 B/op          1 allocs/op
BenchmarkSplitNAddress-32               19987008                58.39 ns/op           32 B/op          1 allocs/op
BenchmarkSubstringAddress-32            169773304                7.062 ns/op           0 B/op          0 allocs/op
PASS

package bench

import (
	"strings"
	"testing"
)

var address string = "<IP_ADDRESS>/32"
var final = "<IP_ADDRESS>"

func BenchmarkSplitAddress(b *testing.B) {
	for i := 0; i < b.N; i++ {
		ipParts := strings.Split(address, "/")
		if ipParts[0] != final {
			b.Fatalf("something went wrong")
		}
	}
}

func BenchmarkSplitNAddress(b *testing.B) {
	for i := 0; i < b.N; i++ {
		ipParts := strings.SplitN(address, "/", 2)
		if ipParts[0] != final {
			b.Fatalf("something went wrong")
		}
	}
}

func BenchmarkSubstringAddress(b *testing.B) {
	for i := 0; i < b.N; i++ {
		i := strings.Index(address, "/")
		if address[:i] != final {
			b.Fatalf("something went wrong")
		}
	}
}

Solution
Rewrite the IP address resolution to the strings.Index option.

Resolved in the commit b9cc182


UnicodeDecodeError: 'utf-8' codec can't decode when using a dataset that cannot be fully decoded by "utf-8" (dutch language dataset)

Hi,
I am now using your ASR recipe to train my Dutch ASR models. But when training the language model, there is a bug that the dataset with some special Dutch token can be decoded by "UTF-8" properly. Do you have some solutions to solve this problem? Thanks!
Traceback (most recent call last):
File "train.py", line 252, in
train_data, valid_data, test_data = dataio_prepare(hparams)
File "train.py", line 185, in dataio_prepare
datasets = load_dataset(
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/datasets/load.py", line 1694, in load_dataset
builder_instance.download_and_prepare(
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/datasets/builder.py", line 595, in download_and_prepare
self._download_and_prepare(
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/datasets/builder.py", line 683, in _download_and_prepare
self._prepare_split(split_generator, **prepare_split_kwargs)
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/datasets/builder.py", line 1135, in _prepare_split
for key, table in utils.tqdm(
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/tqdm/std.py", line 1168, in iter
for obj in iterable:
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/site-packages/datasets/packaged_modules/text/text.py", line 60, in _generate_tables
batch = f.read(self.config.chunksize)
File "/home/nfs/yuanyuanzhang/.conda/envs/sb38/lib/python3.8/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 1483: invalid continuation byte

The first thing to check is: is your data encoded in UTF-8?

Thanks! I have converted my data to UTF-8 encoding format and it works.


Fix deprecation message for LimitChunkCountPlugin

Just a quick test whether the issue can easily be solved
by using the chunkGraph instead of the old methods.

https://github.com/webpack/webpack/issues/13099

What kind of change does this PR introduce?

bugfix
Did you add tests for your changes?
No

Does this PR introduce a breaking change?
No

What needs to be documented once your changes are merged?

@alexander-akait is this mergeable?

Thanks


[BUG] The flag of logical delete is ignored in all methods

For users' actions (via WebSocket),
① Only check the active status and whether users themselves have been deleted logically when they try to login in.
If users who have logged in are set to inactive, they should be forced to be offline.
② Check the targets' statuses of some actions according to what these actions do.
For admins' actions (via HTTP),
Even if records are inactive or deleted logcally, admins' actions can ignore these statuses and still work.


Decorators for time logging and freeing memory

Added decorator for logging time spent in function.

Reduce code complexity by removing the necessity to copy/paste the same time logging code in every function. Having @pg_deco.TimeLogger() on top of a function is now enough to log elapsed time. This should now make it easy to log all relevant functions.

Logger uses the more accurate time.perf_counter() instead of time.time()

All logging messages are mow standardized, making it easier to parse them using regexps

New logging looks like:
2019-10-17 00:43:37,952 - pegasus - INFO - Entering: read_input
2019-10-17 00:43:38,994 - pegasus - INFO - Time spent on 'read_input' = 1.04s.
2019-10-17 00:43:38,995 - pegasus - INFO - Entering: qc_metrics
2019-10-17 00:43:40,283 - pegasus - INFO - Time spent on 'qc_metrics' = 1.29s.
2019-10-17 00:43:40,889 - pegasus - INFO - 2000 highly variable features have been selected. Time spent = 0.61s.
2019-10-17 00:43:40,889 - pegasus - INFO - Entering: pca
2019-10-17 00:43:40,890 - pegasus - INFO - Entering: select_features
2019-10-17 00:43:41,666 - pegasus - INFO - Time spent on 'select_features' = 0.78s.
2019-10-17 00:43:45,810 - pegasus - INFO - Time spent on 'pca' = 4.92s.

Added decorator for forcing garbage collection.

AnnData creates a lot of copies and intermediary objects and the memory is not necessarily freed when a function exists. @pg_deco.GCollect() will now force collection upon exit and in some cases can free considerable amounts of memory.

GCollect has an argument collection_proba that defines the probability of collection according to a binomial distribution. This allows a fine tuning of the collection for fast and slow functions ex: @pg_deco.GCollect(collection_proba = 0.2)

Sorry for the delay. I will take a look and try to merge after DRAI 2019 retreat.


Retrieving Alarm Log

Unable to get alarm log using elarm:read_log/1 with filter 'all'.
Can anyone help me with an example for retrieving Alarm Log ?

elarm:read_log/1 does nothing yet: https://github.com/esl/elarm/blob/master/src/elarm_server.erl#L587


require function to retrieve scripts as modules not defined

geemap version: 0.8.0
Python version: 3.8.3
Operating System: Windows

Description
I'm trying to retrieve this Gena's modules without success.
Despite of working perfectly on the JS code editor.
Do you Have any clue, why the require function is not working?
I think It`s a python side problem though.
Best,
What I Did
import ee
import geemap

palettes = require('users/gena/packages:palettes')
style = require('users/gena/packages:style')
utils = require('users/gena/packages:utils')
###########################################
NameError                                 Traceback (most recent call last)
<ipython-input-39-effea82e83ef> in <module>
      2 import geemap
      3
----> 4 palettes = require('users/gena/packages:palettes')
      5 style = require('users/gena/packages:style')
      6 utils = require('users/gena/packages:utils')

NameError: name 'require' is not defined

require is a JavaScript function. Unfortunately, this is not supported in the Python API. You will have to convert those JS modules to Python manually.


[UX] Device Cloud documentation should be opened in a separate browser tab

This is Fixed and the documentation for device cloud is getting opened in a new tab as expected.


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/OPS-E2E-PPE/docs-archive-test-source

Docs Build status updates of commit 81afc9b:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Release_Archive_master_2020-04-13-12-56-17 has been deleted or has been force pushed: fatal: couldn't find remote ref refs/heads/Release_Archive_master_2020-04-13-12-56-17

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


[all] Adding platform support table for each individual plugin's README.md

Description
Adding platform support table for each individual plugin's README.md.
Related Issues
Closes #111
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]).
This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See [Contributor Guide]).
[x] All existing and new tests are passing.
[ ] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the [Flutter Style Guide].
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

Welcome! fixed them, the extra line was in the big README as well.


ci: fix: release please

What
Just a ' which broke github actions

Codecov Report

Merging #3421 (dc6ebc3) into develop (7f0b0d3) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #3421   +/-   ##
========================================
  Coverage    10.32%   10.32%
========================================
  Files          260      260
  Lines        12596    12596
========================================
  Hits          1301     1301
  Misses       11295    11295

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Typescript errors when using Stripe with 1.18.0

What version of Remix are you using?
1.18.0
Are all your remix dependencies & dev-dependencies using the same version?

[X] Yes

Steps to Reproduce
Here is a typescript playground reproduction

Create a variable with the type Stripe.InvoiceLineItem in a loader.
Return the variable from the loader.
Access the loader data or variable from useLoaderData.

Expected Behavior
Everything to work with no issues, like when using the type inside a loader before it's gone through remix's loader data serializing/prettifying process.
Actual Behavior
It produces the following typescript errors:
Type of property 'customer' circularly references itself in mapped type 'SerializeObject<UndefinedToOptional<Card>>'.ts(2615)
Type of property 'customer' circularly references itself in mapped type '{ [K in keyof SerializeObject<UndefinedToOptional<BankAccount>>]: SerializeObject<UndefinedToOptional<BankAccount>>[K]; }'.ts(2615)
Type of property 'customer' circularly references itself in mapped type '{ [K in keyof SerializeObject<UndefinedToOptional<Card>>]: SerializeObject<UndefinedToOptional<Card>>[K]; }'.ts(2615)
Type of property 'file' circularly references itself in mapped type 'SerializeObject<UndefinedToOptional<FileLink>>'.ts(2615)
Type of property 'links' circularly references itself in mapped type 'SerializeObject<UndefinedToOptional<File>>'.ts(2615)

Presumably due to the potentially cyclic nature of the stripe API if you expand these properties. I receive those errors when I try and directly access the object with the lineItems inside - not on the useLoaderData function call, like in the typescript playground reproduction.
EDIT: Similar to #6693 and #6558 (#6558 was resolved, so hoping this can also be resolved).

I'm seeing the same issues in v1.18.0.

Temporary workaround for me:
const loaderData = useLoaderData<typeof loader>()

const subscription = loaderData?.subscription as unknown as Stripe.Subscription
const invoices = loaderData?.invoices as unknown as Stripe.Invoice[] | null

You just gotta find out what the Stripe type is for the data you're using.

Temporary workaround for me:
const loaderData = useLoaderData<typeof loader>()

const subscription = loaderData?.subscription as unknown as Stripe.Subscription
const invoices = loaderData?.invoices as unknown as Stripe.Invoice[] | null

You just gotta find out what the Stripe type is for the data you're using.

Unfortunately this doesn't work for my use case, as I'm using the Stripe.InvoiceItem type directly. That seems to be where the issue is coming from, like in the typescript playground reproduction I shared. Can't find a way to make a temporary workaround like above within that reproduction.

Looking into this reveals that TS is actually inferring the correct types. So not sure if this is a false positive.
As a workaround, you can use @ts-expect-error and still have type inference flowing through your app:
  // @ts-expect-error
  const loaderData = useLoaderData<typeof loader>()

Keeping an eye on this to see if its a TS issue or a Remix issue.

I've managed to find a workaround it by doing something similar to @piotrkulpinski - just not a very elegant solution, but enough for typechecks to pass as a temporary solution.
The only thing I know is that I'm not having any of these issues until it's gone through the Remix loader. I've obviously no idea whether it'd be a TS or Remix issue, but it seems odd that if it were a TS issue there aren't any issues from the stripe API directly when used in the loader or regular typescript, only when consuming it from useLoaderData - that and the fact that it wasn't an issue in 1.17.X (although #6558 was a similar issue with Prisma types in that version and that's solved now).

Here's the smallest reproduction I've made so far.
Example:
type X = {
  x?: X
}

My mental model so far:

Left
Right
Commentary

X
Serialize<X>
No primitives to compare, let's unwrap Serialize<X> one level

X
{ x?: Serialize<X> }
So far, right-side could be X. x? key looks correct. Let's check the value

X
{ x?: { x?: Serialize<X> }}
Ok, next level looks good. x?.x? key looks correct. Let's check the value

X
{ x?: { x?: { x?: Serialize<X> }}}
...

...
...
...


Fix mis-use of config_template in docker tasks

As written, generating the config file for ceph-mon in Docker yielded:
ERROR: config_template is not a legal parameter in an Ansible task or
handler
This fixes that error condition.

Test this please


如何使用txt文本

Hi, An Tao. Thanks to you for providing the code. I want to use the .txt format，but i don't know how to make the shapenet‘s txt into the .h5. And also, do you have the code about the txt format. Thank you ~

For example, you now have a point cloud matrix data (N \times 3), a label vector label (N \times 1), and a segmentation mask vector seg (N \times 1). All these data are in NumPy format. You can use data = numpy.loadtxt('data.txt') to load your .txt file into NumPy data.
Then you can obtain your .h5 data with the following code:
import h5py

f = h5py.File('dataset.h5', 'w')
f['data'] = data
f['label'] = label
f['seg'] = seg
f.close()

For example, you now have a point cloud matrix data (N \times 3), a label vector label (N \times 1), and a segmentation mask vector seg (N \times 1). All these data are in NumPy format. You can use data = numpy.loadtxt('data.txt') to load your .txt file into NumPy data.
Then you can obtain your .h5 data with the following code:
import h5py

f = h5py.File('dataset.h5', 'w')
f['data'] = data
f['label'] = label
f['seg'] = seg
f.close()

For example, you now have a point cloud matrix data (N \times 3), a label vector label (N \times 1), and a segmentation mask vector seg (N \times 1). All these data are in NumPy format. You can use data = numpy.loadtxt('data.txt') to load your .txt file into NumPy data.
Then you can obtain your .h5 data with the following code:
import h5py

f = h5py.File('dataset.h5', 'w')
f['data'] = data
f['label'] = label
f['seg'] = seg
f.close()

Thank you very much


Fix for Appstate changes causing disconnect

Closes #57

Instead of implementing this in the library itself, creating a dependency on another package ('react-native'), adding yet another config option, and making it unnecessarily complicated to debug, I think it would be better to just add instructions to the readme how one can stop and restart the SSE connection when the app switches between background and foreground state.
I think something like this should do the trick:
import { useEffect } from 'react';
import { AppState } from 'react-native';

useEffect(() => {
    const appStateSubscription = AppState.addEventListener('change', (nextAppState) => {
        if (nextAppState === 'active') {
            // App became active, reconnect SSE
            es.open();
        } else if (nextAppState === 'background' || nextAppState === 'inactive') {
            // App went to background, close SSE connection
            es.close();
        }
    });

    return () => appStateSubscription.remove();
}, []);


Consistent parameters for Composite models for single structures versus multiple structures

Currently when a single structure model is passed to composite modelling, a "shortcut" is taken to simplify the resulting reported parameters. This complicates scripted analysis comparing the results between single structure and multistructure fitting results. Such comparisons are potentially common when fitting a tree structure such that the root results are different in naming convention when compared to the rest of the tree's models. This "shortcut" should likely be removed.

Currently when a single structure model is passed to composite modelling, a "shortcut" is taken to simplify the resulting reported parameters. This complicates scripted analysis comparing the results between single structure and multistructure fitting results. Such comparisons are potentially common when fitting a tree structure such that the root results are different in naming convention when compared to the rest of the tree's models. This "shortcut" should likely be removed.

Can  you point out in the code where this "shortcut" take place?

https://github.com/jmborr/idpflex/blob/be0c8af1c24212c166590f1fd9a0e164cc436ce9/idpflex/bayes.py#L236-L237


[Mainnet] Compound V3

Connector for compound iii.

Tests

Deployment

Name: COMPOUND-V3-A
Addr: 0x5c31E2d1c611d062beFdf3883AdE05a32c52b9Cb
tx:


Cannot allocate memory

Trying to load a cube, I've encountered the following error:
error: [Errno 12] Cannot allocate memory
Unfortunately, this defeats the purpose of spectral-cube entirely.  Any ideas for workarounds?  In principle, we might be able to write up an interface that can load only part of the cube, but I don't know how to do that with the FITS io system.

Example traceback:
In [19]: fits.open('full_W51_7m12m_spw0_hires_lines.fits')[0].data.shape
Traceback (most recent call last):
  File "<ipython-input-19-f94477ee2d18>", line 1, in <module>
    fits.open('full_W51_7m12m_spw0_hires_lines.fits')[0].data.shape
  File "/diskb/aginsbur/repos/astropy/astropy/utils/decorators.py", line 498, in __get__
    val = self.fget(obj)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 208, in data
    data = self._get_scaled_image_data(self._data_offset, self.shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 621, in _get_scaled_image_data
    raw_data = self._get_raw_data(shape, code, offset)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/base.py", line 568, in _get_raw_data
    return self._file.readarray(offset=offset, dtype=code, shape=shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/file.py", line 268, in readarray
    dtype=np.uint8)
  File "/home/aginsbur/anaconda/lib/python2.7/site-packages/numpy/core/memmap.py", line 260, in __new__
    mm = mmap.mmap(fid.fileno(), bytes, access=acc, offset=start)
error: [Errno 12] Cannot allocate memory

Solution is here: https://github.com/astropy/astropy/issues/1380#issuecomment-29644230

This has led to a new error:
In [7]: fits.open('full_W51_7m12m_spw1_hires_lines.fits')[0].data.shape
Traceback (most recent call last):
  File "<ipython-input-7-0459cfea92b3>", line 1, in <module>
    fits.open('full_W51_7m12m_spw1_hires_lines.fits')[0].data.shape
  File "/diskb/aginsbur/repos/astropy/astropy/utils/decorators.py", line 498, in __get__
    val = self.fget(obj)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 208, in data
    data = self._get_scaled_image_data(self._data_offset, self.shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 621, in _get_scaled_image_data
    raw_data = self._get_raw_data(shape, code, offset)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/base.py", line 568, in _get_raw_data
    return self._file.readarray(offset=offset, dtype=code, shape=shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/file.py", line 283, in readarray
    buffer=self._mmap)
TypeError: buffer is too small for requested array

In [8]: fits.open('full_W51_7m12m_spw1_hires_lines.fits', mode='denywrite')[0].data.shape
Traceback (most recent call last):
  File "<ipython-input-8-95c009e12b4b>", line 1, in <module>
    fits.open('full_W51_7m12m_spw1_hires_lines.fits', mode='denywrite')[0].data.shape
  File "/diskb/aginsbur/repos/astropy/astropy/utils/decorators.py", line 498, in __get__
    val = self.fget(obj)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 208, in data
    data = self._get_scaled_image_data(self._data_offset, self.shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/image.py", line 621, in _get_scaled_image_data
    raw_data = self._get_raw_data(shape, code, offset)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/hdu/base.py", line 568, in _get_raw_data
    return self._file.readarray(offset=offset, dtype=code, shape=shape)
  File "/diskb/aginsbur/repos/astropy/astropy/io/fits/file.py", line 283, in readarray
    buffer=self._mmap)
TypeError: buffer is too small for requested array

The change broke the tests because the tests are using direct file modification, which isn't supported.  Shouldn't be too hard to fix.

Coverage remained the same at 72.695% when pulling e82b66ae99169c048c02d04cea75c6dc55c30a67 on keflavich:huge-file-issue299 into c09ac14217b17f9620e8d017727ed83f5802c92f on radio-astro-tools:master.


Fix versioncode

In 765343b38c780149b010691b879f506c32139d0a you changed the versioncode format from 10303 to 133. Android's versioncodes are integer values that get compared to check if a release is actually an update. Since 133 or 134 is lower than 10303, the latest version is not considered an update.

Thanks to the hint. :-)
The version code change was introduced after updating the config.xml file. The version code was updated in 1cbfcab6a3d5cad97688761c4b5ab02bfda97a50.


Translated labels

Hi @isteven
First - thank you for your great angular-multi-select control. I use it in my current project.
In my current project I've the requirement that all labels are multilingual (inclusive the labels of the angular-multi-select control). So I've integrated the well-known component angular-translate as dependency - so we have the chance to translate all labels of angular-multi-select (i.e. 'Select all', 'Reset', 'Search', etc.) in any language.
In my pull request you'll see the english and german translations.
What do you think about it?
If you want, I will create a jsfiddle for you.
Thanks for your feedback.
Kind regards, patrick

+1 angular-translate can be very nice


[SPARK-17022][YARN]Handle potential deadlock in driver handling messages

What changes were proposed in this pull request?
We directly send RequestExecutors to AM instead of transfer it to yarnShedulerBackend first, to avoid potential deadlock.
How was this patch tested?
manual tests

Test build #63619 has started for PR 14605 at commit 80c2d11.

Test build #63619 has finished for PR 14605 at commit 80c2d11.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/63619/
Test PASSed.

Argh. I really dislike askWithRetry. This is just another reason why. LGTM, since this maintains the current behavior.
Merging to master / 2.0.


PDF2AUDIO

Program to convert PDF to audio
Before submitting

[x] Was this discussed/approved via a Github issue? (no need for typos, doc improvements)
[x] Did you read the contributor guideline?
[x] Did you make sure to update the docs?
[x] Did you write any new necessary tests?

What does this PR do?
Fixes # (issue).
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

@vaishnavi362 Can you explain the purpose of this pull request? I can't seem to find any corresponding issues and it doesn't seem to really do anything that fairseq would be responsible for handling.


fix: return InvalidArgument for OIDC invalid state and code

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

0 of 5 (0.0%)  changed or added relevant lines in 2 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.003%) to 30.828%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/api/v1beta1/authenticate.go
0
1
0.0%

core/authenticate/service.go
0
4
0.0%

Files with Coverage Reduction
New Missed Lines
%

core/authenticate/service.go
1
21.8%

Totals

Change from base Build<PHONE_NUMBER>5:
-0.003%

Covered Lines:
7624

Relevant Lines:
24731

💛  - Coveralls


Failed mouse movement on mac

This question is about version 4.2.0. I realize there have been several updates since then, but since there are breaking changes, I need to perform thorough tests before releasing an updated version of my app. In the meantime...
Are there or have there been any known issues where the mouse does not move on Mac?
My situation is like this: On a key press, the app should query and save the mouse position. On another key press, the app should restore the mouse to the recorded position. This works on a vast majority of the installations but fails on a few. On installations where it fails, the call to SimulateMouseMovement() with the correct target coordinates gives the Success return code. However, the mouse does not move, and when querying the mouse position, it is still in the exact location as before the call to SimulateMouseMovement().
Are there any peripherals, like trackpads or 3D mice or anything, that can cause such problems?  Or are there any security settings that may prevent the app from moving the mouse? I haven't found any common denominator between the systems that experience this problem. Or are there any changes in later versions (then 4.2.0) that address such problems, even though the version history doesn't mention this?

Hi! Thanks for posting this issue!
Unfortunately, I haven't seen a problem like this before so I can't say what may cause it. I've just looked through some other issues and I didn't find any issues like yours.
I don't think it's a security issue - otherwise the global hook wouldn't have worked on these installations as well. Regardless, could you please try running your application as root on the failing installations to see whether the issue is still there? As I've said, I don't think it's a security issue, so this will probably change nothing, but you can never be too sure.
Also, could you please share the libuiohook debug logs from those installations?
As for changes in the newer versions - there haven't been any functional changes in how libuiohook (or SharpHook) simulates mouse movement on macOS (there were cosmetic changes to the code, but those don't really matter).
Even if it may be non-trivial for you, I would still recommend updating to the newest version of SharpHook. If I fix this issue, the fix will be in the 5.x line as I don't support older versions.

Hi @GuruGurra! I'm just pinging for updates. As I've said before, could you please provide some more info or update to the latest version and try it out? Otherwise, I'll close this issue in a couple more weeks, though we can still continue the discussion after that.

Sorry, I forgot to report back.
I got a message from the user where he said it started to work when he gave the app the Accessibility right on the computer, so it was a security settings issue.

Great, thanks for letting me know! This is expected behavior, so I'm closing this issue.


Fix FlowSpec Updating Function

makes Config object with FlowSpec mutable
adds unit test to ensure flow compiles after updating FlowSpec
ensure DagManager resilient to exceptions on leadership change

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[X] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1954

Description

[X] Here are some details about my PR, including screenshots (if applicable):
When copying a flowSpec to add flowExecutionId into its config, all components need to be carefully duplicated to ensure compilation, serialization and deserialization are successful. Some pieces can easily be missed so instead, we add the property to the Properties object of the FlowSpec which is mutable. Note that we do not update the Config object to avoid large GC overhead from deleting and creating a new Config object. This test also ensures that the DagManager thread will not silently die during leadership changes by catching all types of Exceptions.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Updates FlowSpecTest

Adds unit test to FlowCompilationValidationHelper to ensure the flow compiles and produces a valid execution plan after being updated

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3823 (3001cd6) into master (9e30c6c) will decrease coverage by 1.54%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3823      +/-   ##
============================================
- Coverage     47.54%   46.01%   -1.54%
+ Complexity    11033     2181    -8852
============================================
  Files          2156      416    -1740
  Lines         85368    17984   -67384
  Branches       9491     2194    -7297
============================================
- Hits          40591     8275   -32316
+ Misses        41082     8825   -32257
+ Partials       3695      884    -2811

see 1741 files with indirect coverage changes
:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!


Bat file does not open

I installed all the dependencies but when I try to open the bat file it starts for a second and disappears

Traceback (most recent call last):
File "bubbleblaster.py", line 14, in
import easyocr
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\easyocr_init_.py", line 1, in
from .easyocr import Reader
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\easyocr\easyocr.py", line 3, in
from .recognition import get_recognizer, get_text
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\easyocr\recognition.py", line 6, in
import torchvision.transforms as transforms
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\torchvision_init_.py", line 5, in
from torchvision import datasets, io, models, ops, transforms, utils
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\torchvision\models_init_.py", line 16, in
from .maxvit import *
File "C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\site-packages\torchvision\models\maxvit.py", line 3, in
from typing import Any, Callable, List, Optional, OrderedDict, Sequence, Tuple
ImportError: cannot import name 'OrderedDict' from 'typing' (C:\Users\layme\AppData\Local\Programs\Python\Python37\lib\typing.py)

Try the latest release


chore(main): release 4.6.6

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

cicd: one more try (be30962)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v4.6.6
:sunflower:


Counterparty API communication error

Not sure how to resolve..

I would suggest joining the FreeWallet Telegram channel or twitter, as both places have already addressed this issue.
https://t.me/FreeWallet
https://x.com/FreeWallet

https://twitter.com/FreeWallet/status/1778229788605620371
Any FreeWallet users who are experiencing "API Communication" issues, it is because api.counterparty.io no longer supports HTTP requests.
If your getting the error, make sure your "Server Settings" match the  screenshot below
TLDR... Set "CP SSL" to "Yes"


Option-Click on code fold arrow (bug/enhancement)

When option-clicking an arrow in the gutter for code folding I expect it to do a recursive fold at that level, as of right now that functionality is not implemented. As an example if I am at the root of a class with methods and I option click on the class-level arrow I would expect it to act as the "Fold All" command. But if I were to only option-click on the private label (in say a ruby class) I would expect it to fold the entire private section AND all underlying methods.
Unsure if this would be a bug or enhancement, assuming the latter.

This is something that we think would be a useful feature. Unfortunately, we have other higher priority things to work on at this point. We would definitely be interested in a well-written pull request addressing this, so I'll mark it help-wanted so it is easy for people wanting to contribute to find.
Thanks for the suggestion!


Static vizapp script for 1D and 2D histograms

There's a lot of commit history here that we're not going to want. It looks like all your most recent updates are in the last commit? If that's the case, I think you can do the following:

checkout back to main
Pull the most recent version of the upstream main (git pull --recurse-submodules upstream main)
Create a new branch just for these changes (git checkout -b <new-branch-name>)
Apply this commit to that new branch (git cherry-pick 589b39f). That number after cherry-pick is the commit hash of your most recent commit. I've never actually used cherry-pick before; I think it'll work, but let me know if it doesn't.
Push that new branch to your remote repo (git push origin <new-branch-name>) and make a new PR
Close this PR

Let me know if you have questions about any of this.


Fix ToString() implementations

#32

Fix an ArgumentException if value is null
Fix generated ToStringFormat. It is not quoted, but this is an error...

good!


Fixed NetBSD for non-root

like https://github.com/Un1q32/pfetch/blob/4a1a548069ac2ef3700c8d2b0c122d2f502aab0a/pfetch#L456

I never understood why some systems don't put sbin in path for non-root users, even though so many things there are useful without root


Schema validation

Look into a way to be able to detect for wrong configuration fields that may be part of the NatsCluster manifest.

I think this would also fix what I was about to open an issue for: kubectl explain nats is empty.
CRD needs to gain spec.validation.openAPIV3Schema

Oops, that's the path in apiextensions.k8s.io/v1beta1, it moves in apiextensions.k8s.io/v1 to spec.versions[*].schema.openAPIV3Schema per https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ ; checking, the v1 promotion came with Kubernetes 1.16


Optimize GIFs

The GIFs we create are really big. Like easily 10s of MBs.
I think that's because every frame is stored in full. You can compress GIFs by storing each frame as a delta, so only parts of the image that have changed are re-drawn.
See https://stackoverflow.com/q/42698983/17100540 (no answers). The last answer to this question https://stackoverflow.com/q/24688802/17100540 references a gifmaker.makedelta function, which doesn't seem to exist anymore, but maybe I found a version of in https://github.com/wnyc/PIL/blob/90b8b064178c9c0bd37d348ff2a45fd380e7149e/Scripts/gifmaker.py?
Could possibly be interesting to look at what gifsicle does: https://github.com/kohler/gifsicle/blob/master/src/optimize.c. I imagine something simpler would be possible to do pretty easily with NumPy/PIL.

Just came across https://github.com/ImageOptim/gifski, which might be an easier option to integrate with. Could probably build it into a wheel relatively easily with maturin.


Add provider field to API CR

Codecov Report
Patch coverage has no change and project coverage change: +45.17 :tada:

Comparison is base (f4b042b) 34.05% compared to head (fa58993) 79.22%.

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #984       +/-   ##
===========================================
+ Coverage   34.05%   79.22%   +45.17%
===========================================
  Files         172       11      -161
  Lines       18787      592    -18195
  Branches     5685      257     -5428
===========================================
- Hits         6397      469     -5928
+ Misses      12274      123    -12151
+ Partials      116        0      -116

Flag
Coverage Δ

admin-domain-service
?

backoffice-domain-service
?

devportal-domain-service
∅ <ø> (?)

idp-domain-service
79.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
see 161 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


ERROR: Only strings are allowed in INPUT statement - Type's

disk.bas:16.0: ERROR: Only strings are allowed in INPUT statement, got diskio

exit status: 1

disk.zip

A note: In BASIC the THIS would be changed to ME.

Looks like a bug, I'll check this. Thanks.
PS: In Visual Basic classes, yes, it's called Me. In other dialects, e.g Freebasic, it's called THIS.

Fixed.