ES replicas defaults to 1 even when specifying --es.num-replicas=0 when starting collector and query

With a local single node ES cluster if I start Jaeger collector and query to use Elasticsearch as backend with following options:
-span-storage.type=elasticsearch --es.num-shards=1 --es.num-replicas=0 --es.server-urls=http://jaeger-es:9200 --dependency-storage.type=elasticsearch

Upon checking output of localhost:9200/_cluster/health?pretty
{
  "cluster_name" : "jaeger-cluster",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 4,
  "active_shards" : 4,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 4,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 50.0
}

ES cluster health check shows status 'yellow' and you will notice active_primary_shards=4 and unassigned_shards=4, which means some indexes are configured with value replicas=1, this can be confirmed by checking output of :
http://localhost:9200/jaeger-span-2017-09-02/_settings?pretty
{
  "jaeger-span-2017-09-02" : {
    "settings" : {
      "index" : {
        "mapping" : {
          "nested_fields" : {
            "limit" : "50"
          }
        },
        "number_of_shards" : "1",
        "provided_name" : "jaeger-span-2017-09-02",
        "mapper" : {
          "dynamic" : "false"
        },
        "creation_date" : "1504368267533",
        "requests" : {
          "cache" : {
            "enable" : "true"
          }
        },
        "number_of_replicas" : "1",
        "uuid" : "AkWNKfQSRlCa9pIoxilj5g",
        "version" : {
          "created" : "5050299"
        }
      }
    }
  }
}

This confirms that when creating indexes number_of_repliacas is getting set to 1, when it should have been set to 0.
This is a problem when running a single node ES cluster where we want replicas to be set to 0 intentionally.

I believe following patch should take care of this:
diff --git a/pkg/es/config/config.go b/pkg/es/config/config.go
index 024018d..8579666 100644
--- a/pkg/es/config/config.go
+++ b/pkg/es/config/config.go
@@ -77,9 +77,6 @@ func (c *Configuration) ApplyDefaults(source *Configuration) {
        if c.NumShards == 0 {
                c.NumShards = source.NumShards
        }
-       if c.NumReplicas == 0 {
-               c.NumReplicas = source.NumReplicas
-       }
 }

 // GetNumShards returns number of shards from Configuration
diff --git a/plugin/storage/es/spanstore/writer.go b/plugin/storage/es/spanstore/writer.go
index f282333..448d033 100644
--- a/plugin/storage/es/spanstore/writer.go
+++ b/plugin/storage/es/spanstore/writer.go
@@ -83,9 +83,6 @@ func NewSpanWriter(
        if numShards == 0 {
                numShards = defaultNumShards
        }
-       if numReplicas == 0 {
-               numReplicas = defaultNumReplicas
-       }
        // TODO: Configurable TTL
        serviceOperationStorage := NewServiceOperationStorage(ctx, client, metricsFactory, logger, time.Hour*12)
        return &SpanWriter{

I have tested and verified this locally, after above patch, number_of_replicas is set to 0 when specifying 0 as value of --es.num-replicas argument.
After patch output of http://localhost:9200/_cluster/health?pretty
{
  "cluster_name" : "jaeger-cluster",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 10,
  "active_shards" : 10,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100.0
}

After patch output of http://localhost:9200/jaeger-span-2017-09-02/_settings?pretty
{
  "jaeger-span-2017-09-02" : {
    "settings" : {
      "index" : {
        "mapping" : {
          "nested_fields" : {
            "limit" : "50"
          }
        },
        "number_of_shards" : "5",
        "provided_name" : "jaeger-span-2017-09-02",
        "mapper" : {
          "dynamic" : "false"
        },
        "creation_date" : "1504369115915",
        "requests" : {
          "cache" : {
            "enable" : "true"
          }
        },
        "number_of_replicas" : "0",
        "uuid" : "Ou2TIOavSCyIDDqlj_4Gxg",
        "version" : {
          "created" : "5050299"
        }
      }
    }
  }
}


Microsoft.CostManagement swagger incorrect

https://github.com/Azure/azure-rest-api-specs/blob/master/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json
QueryDatasetConfiguration shows a "columns" option. The Microsoft.CostManagement team says that no such option exists. Indeed, attempting to use it fails.
https://github.com/Azure/azure-rest-api-specs/tree/master/specification/cost-management/resource-manager/Microsoft.CostManagement/stable shows API versions 2020-06-01 and 2021-01-01. Those versions are not recognized by the RP, and the team confirmed that they are not valid. I believe this is the root cause of https://github.com/Azure/azure-sdk-for-python/issues/16102 - some autorest-like thing sees those versions and attempts to use them as defaults because they are newer and published in -stable.

Hi there, we are looking into it right now, thanks for the heads up @jazelenk


worker: monitor shuts down worker prematurely

Monitor shuts down the worker after running 4-5 tasks when queue still contains additional tasks
See: https://gist.github.com/dacbd/be7648bc29f9c019410032365302e872

@karajan1001 I'm able to reproduce this. Are you able to look into it?

@karajan1001 I'm able to reproduce this. Are you able to look into it?

@karajan1001 I'm able to reproduce this. Are you able to look into it?

I also experienced this several times before. But hard to tell what happened, because the log info didn't provide enough info.

Hm, it consistently fails for me after ~5 experiments, which makes dvc queue unusable for more than a few experiments. Can we prioritize looking into this please?

Hm, it consistently fails for me after ~5 experiments, which makes dvc queue unusable for more than a few experiments. Can we prioritize looking into this please?

Of course, In previous the biggest problem is that I can not reproduce it, but if we already know it definitely happens 5 experiments, investigation could be started from this point.

I guess a good starting point would be seeing if you can also reproduce it consistently.


error 429 after few testing

I am getting this error after doing a few tests
{ name : HTTPError , statusCode :429, statusMessage : Too Many Requests }

429 is for ratelimits, so I'd assume that whatever you're doing, you're doing it too fast, and google is telling you to slow down

This is to prevent abuse of free services. The only thing you can do here is make requests using proxies, and change to a different proxy if you get 429 or wait a few seconds. But if this solution is worth the effort depends on the application.


Confirm Navigation Message

When I close agent tab, an alert pops up.
Where do I enable/disable that alert and how can I change the content of that alert?

I'm closing this since LCSK is changing to a more robust customer communication app.
Thank you for your interests in LCSK and I hope Parle will be ready soon so you can have a look at it.


How use the py lib to preprocess sentinel 1a or 1b sar data?

Is your feature request related to a problem? Please describe.
I want to use python to preprocess sentinel 1a or 1b, for example trajectory correction\thermal noise removal\calibration...so on, and I to search the function in the eoreader api document, but don't find the corresponding function.
Describe the solution you'd like
when i search sentinel 1a or 1b function or py lib in the web, I find the snappy lib can solve the problem,
So the snappy lib with the eoreader lib is same in the process sentinel 1a\b sar data?

Hello,
EOReader processing of Sentinel-1 data is done through SNAP via a GPT graph.
You can find them here : https://github.com/sertit/eoreader/tree/main/eoreader/data
You can customize these YAML files following the documentation: https://eoreader.readthedocs.io/en/latest/sar.html#gpt-graphs
However, pay attention that EOReader will only be able to deal with GRD data and will automatically orthorectify SLC data.

Did you manage to solve your problem ?
I will close this issue in case of no answer 😅


Changed create to insert & get by returned row fields by default

Can we add a test for the problem it is solving?

I'll check

@daffl Added test. I verified it fails in master branch.


Update openvpn extension

Description
Openvpn extension is very practical to automatize connectivity with vpn, however it wasn't supporting multiple profiles.
This PR brings support for multiple profiles, along with a couple of improvements and bug fix:
✨ New

The extension can now handle multiple profiles!
A couple of new command make it easy to conenct/disconnect from one of you profile, or connect/disconnect from the last used profile

💎 Improvements

The apple scripts have been revamped, to avoir explicit clicking and navigation slowing down the process, and instead target directly the correct entry and click it (which then happen in the background without visible action)

🐞 Fixes

isRunning function has been updated to rely on the existance of the menu bar (which we leverage later to connect/disconnect anyway) instead of command line checks which are less reliable

Screencast

New commands
Profiles list
Connected profile

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hey @benekuehn! Thanks for the work you initiated with this plugin 🙂
It's been a while I wanted to automate connecting my vpn through OpenVPN client, but the limited API provided by their CLI put me off.. Until I saw your extension leveraging AppleScript 🙌
Since I use multiple profile at work, I immediately jumped on it and add support for it. Of course along the way I did some changes here and there (although I tried to keep it simple and closed to your implementation). That's what pushed me to add the "connect to last profile", to keep the instant toggle available especially if you only have on profile.
Let me know what you think!

That's a really awesome update! I just tested it with my current setup and it works as expected 🔥

@pernielsentikaer Thanks for having a look 🙏 Glad it worked as expected!
Regarding the menu bar, I also though about it, but then this extension already pilots the OpenVPN Connect menu bar 😁 So it might be a bit redundant to introduce another menu bar just next to it, with the same functionality..

What do you think? Did you have a specific usage in mind for the menu bar?

@julienR2 do you now also get extension bug reports for OpenVPN? In case you dont, there seems to be an issue, see screenshot below

@benekuehn ah I don't! (I'll ping the team to see if I can subscribe to those bug too, to better jump on them)
Thanks for the heads up, I'll investigate and push a fix soon 👍

@pernielsentikaer anyway to be subscribed to extensions errors report even though we are not the author?
Would be practical to be able to monitor them, as the new error will most probably be introduced by me.


Add 'pip install -e .' in Makefile

Hello, I just discovered this repo and it looks great!
I read the blog post: https://drivendata.github.io/cookiecutter-data-science/
And I am wondering if some of the mentioned commands should be in the Makefile, like:
pip install -e .
pip freeze > requirements.txt

Local package is already installed with make requirements:
https://github.com/drivendata/cookiecutter-data-science/blob/0113a4ab1e926613abc7b48291a365819602c6a3/{{ cookiecutter.repo_name }}/requirements.txt#L1-L2
We don't recommend using pip freeze to generate requirements.txt by default. Since it pins all installed packages, you'll never pick up updates/security fixes for those packages. We recommend just specifying the minimal set of packages + versions that you explicitly need in your project and letting the dependency resolver handle the rest.

Local package is already installed with make requirements:
https://github.com/drivendata/cookiecutter-data-science/blob/0113a4ab1e926613abc7b48291a365819602c6a3/{{ cookiecutter.repo_name }}/requirements.txt#L1-L2
We don't recommend using pip freeze to generate requirements.txt by default. Since it pins all installed packages, you'll never pick up updates/security fixes for those packages. We recommend just specifying the minimal set of packages + versions that you explicitly need in your project and letting the dependency resolver handle the rest.


Consider adding async support

Right now, the Application structure exposes a run() method that blocks indefinitely until the application finishes. It would be nice if there were a way to run a Future inside of this blocking loop, so that it would be possible to multiplex an asynchronous task with the GUI on one thread.
This would require changing the backend such that it can be woken up via a Waker. While you could just create a Waker to send an event to the loop, there is a more elegant way of doing this that can circumvent the normal event loops, based on the platform.

Windows lets you interrupt the message loop using MsgWaitForMultipleObjects.
With GTK, you can just register the future in the GLib event loop.
X11/Wayland can just be registered into epoll.
macOS requires some system hacks to get the Mach port belonging to GCD, but once you have it it can just be used in kqueue.
I'm not sure about web.

I'm willing to implement this behavior into the current system.

This is a deep topic. I've considered it but so far have not been convinced we should do this. You might be able to change my mind.
First, in general you don't want to run anything on the UI thread other than things that are required to process requests from the platform to the app (which are generally synchronous) or submit work to the platform. I believe everything else (including things like network and CPU-heavy async tasks) should be run in a reactor such as that provided by Tokio's runtime. Again, I am open to arguments otherwise.
Second, on Windows MsgWaitForMultipleObjects and friends have a fatal flaw, they don't run when resizing the window or in a modal dialog. This is why the run loop is very vanilla and integration with the Rust async world is by injecting user messages.
Third, one of the things that might change my mind is the way wgpu implements async. I'm not sure it's in it final form, it seems like there are a number of points where you explicitly poll (for example, to make async map of buffers actually happen). It would be nice to have this become plain Rust async, and expect the runtime to make progress as needed, whether that's on the UI thread or in another runtime. I don't understand all the issues around this (especially the plan for wgpu's end state) but would love to see a detailed design.
So I consider this a conversation.

First, in general you don't want to run anything on the UI thread other than things that are required to process requests from the platform to the app (which are generally synchronous)

Depending on the platform, these synchronous requests may also include some or all accessibility API calls from the platform into the app. On macOS, all such calls run on the UI thread. On Windows, the WM_GETOBJECT message to request the root of the accessibility tree has to be handled on the UI thread. So far, I've avoided the need to restrict other UIA method calls (after that initial request) to the UI thread. I need to check on this, but I think the JAWS screen reader for Windows may do these other UIA method calls on the main thread anyway. And remember, accessibility APIs tend to be very chatty, requiring lots of method calls for a screen reader to collect information about whatever it's going to read next. So a busy UI thread can make the application feel especially unresponsive to a screen reader user.

Thank you for the response!

First, in general you don't want to run anything on the UI thread other than things that are required to process requests from the platform to the app (which are generally synchronous) or submit work to the platform. I believe everything else (including things like network and CPU-heavy async tasks) should be run in a reactor such as that provided by Tokio's runtime. Again, I am open to arguments otherwise.

The first thing that comes to mind is what if there isn't any thread other than the UI thread?. The web usecase comes to mind here, since the concurrency story for the web (web workers) is poor at the time of writing. There are also cases where there is an upper limit to the number of threads you can run at once; we've had to adapt to this in the past. Sometimes there isn't much of an option aside from running on the main thread.

Second, on Windows MsgWaitForMultipleObjects and friends have a fatal flaw, they don't run when resizing the window or in a modal dialog. This is why the run loop is very vanilla and integration with the Rust async world is by injecting user messages.

Wait, really? I mean, it's possible to just post messages to the thread queue to wake it up anyhow, so this shouldn't be much of an issue.

Third, one of the things that might change my mind is the way wgpu implements async. I'm not sure it's in it final form, it seems like there are a number of points where you explicitly poll (for example, to make async map of buffers actually happen). It would be nice to have this become plain Rust async, and expect the runtime to make progress as needed, whether that's on the UI thread or in another runtime. I don't understand all the issues around this (especially the plan for wgpu's end state) but would love to see a detailed design.

I'm not entirely familiar with wgpu, so someone else can correct me here.  But it looks like most of the async blocks in wgpu either:

Immediately resolve using the ready() function, therefore bypassing the need for an async runtime at all.
Uses JS Promises as futures.

Another idea is that sometimes you have something you want to run on the UI thread. I'm designing a GUI framework where a thread local executor would run on the UI thread and manage widgets.

So a busy UI thread can make the application feel especially unresponsive to a screen reader user.

This scenario can be avoided by using yield points in the async block, which would prevent the UI thread from being blocked even under high contention.

The web is likely a special case, and deserves careful consideration, especially in conjunction with using wgpu. I know Dioxus has done some stuff with local executor, but haven't tracked down the detail.
On web, wgpu ultimately drills down to JS Promise, but running natively it's a Rust future. But (unless there is recent progress), those don't "just work," you also have to explicitly poll the device (see xilem app_main).
I am unexcited about yield points and consider the need for them a likely sign of an architectural flaw. Again I could have my opinion changed, but it would take persuasive evidence.
So, bottom line, I would love to see a design document that analyzed the requirements in different scenarios including better integration with wgpu and the web but would not be inclined to merge a PR without some kind of justification along those lines.

I am unexcited about yield points and consider the need for them a likely sign of an architectural flaw. Again I could have my opinion changed, but it would take persuasive evidence.

I mean, yes, it's a flaw in Rust's async ecosystem as a whole. tokio is actually better about this, since it uses cooperative task scheduling to ensure that tasks never run for too long without yielding. In other runtimes, it means that loops that can be called tightly (e.g. a loop in a web server) can starve other tasks. In this case, it would mean starving the event loop.
In my opinion, the potential benefits (e.g. being able to run async tasks using the UI thread as a root thread) outweigh those costs.

So, bottom line, I would love to see a design document that analyzed the requirements in different scenarios including better integration with wgpu and the web but would not be inclined to merge a PR without some kind of justification along those lines.
Also, this might be a good topic to discuss at office hours. Next one is 2023-01-03.

Sounds good, I'll see if I can prepare something before then.

Since the last update, I've created the async-winit crate, which fulfills all of my needs when it comes to asynchronous GUI.
Still, I think it should be considered whether or not async is a good fit for glazier.


Adding ProtoArch

Try to design and implement arches using CSGCombiner.
Supposed features:

Length
Curve (corner’s curvature)
Fill (fill upper corners or follow the arch’s curve)

Hi @HLCaptain, how is the ProtoArch effort going? I'm probably going to need this soon, so if you've got a working example and no time to work on it I could try to bring it forward. Let me know!

Hi @farfalk I started implementing it in the linked 10-adding-protoarch branch, but does not have the time right now to work on it. I plan to pick up where I left off during summer.

I would like some kind of functionality to:

change the arch radius with red gizmo
change external pillar width with green gizmo
change internal pillar width with blue gizmo
change internal roof width with purple gizmo
change external roof width with yellow gizmo
widen-make taller the arch overall with burgundy gizmo

Features I did not draw in paint:

gizmo for changing depth of the arch (can be like in ProtoStairs)
gizmo for changing external corner arch

On the picture on the right, notice how the blue and green gizmos are displaced, because I would like to place them in the middle of their respective faces (blue's face is shorter due to the arch, thus it being lower in the middle).
This is a rough sketch of my ideas, so feel free to use it as a base to iterate on.


Add rustfix::apply_suggestions_separately

What does this PR try to resolve?
In Clippy we have a good few lints that produce mutually exclusive suggestions e.g.
error: octal-looking escape in a literal
  --> tests/ui/octal_escapes.rs:6:19
   |
LL |     let _bad2 = b"\033[0m";
   |                   ^^^^
   |
help: if an octal escape is intended, use a hex escape instead
   |
LL |     let _bad2 = b"\x1b[0m";
   |                   ~~~~
help: if a null escape is intended, disambiguate using
   |
LL |     let _bad2 = b"\x0033[0m";
   |                   ~~~~~~

For these we have to disable rustfix tests since the suggestions are overlapping, this PR adds a method to rustfix that ui_test could use in order to produce multiple .fixed files, one for each alternative suggestion
Additional information
It does not work for for multiple suggestions coming from a single subdiagnostic (Diag::span_suggestions) e.g.
help: consider importing one of these items
  |
1 + use std::collections::HashMap;
  |
1 + use ahash::HashMap;

Solving this would be blocked on https://github.com/rust-lang/rust/issues/53934, on the Clippy side we only have one use of span_suggestions however so it's still very useful without this
The test cases use Clippy lints that I generated by setting the parse_and_replace test to use clippy-driver because of familiarity, if there's a rustc case that does multiple suggestions it would be good to go with that

Ah I misread how the test suite worked, thought it only ran rustc on bless so I'll need to find some rustc examples that produce multiple suggestions

I don't think we have an issue open for it but here's a few test examples with disabled rustfix due to having multiple suggestions

https://github.com/rust-lang/rust-clippy/blob/29cc5c691c574b54b2fcfed51c22f8bb51110919/tests/ui/assign_ops2.rs#L1
https://github.com/rust-lang/rust-clippy/blob/29cc5c691c574b54b2fcfed51c22f8bb51110919/tests/ui/borrow_deref_ref_unfixable.rs#L1
https://github.com/rust-lang/rust-clippy/blob/29cc5c691c574b54b2fcfed51c22f8bb51110919/tests/ui/join_absolute_paths.rs#L1

https://github.com/rust-lang/cargo/blob/50fa303d5c3e61c95e1a87b5b12ef3de19d415db/crates/rustfix/tests/separate/separate.json is a good Clippy diagnostic example
The plan would be to add support to ui_test that Clippy uses for its tests, similar to the added tests here there would be multiple fixed files when suggestions contain multiple solutions
I just noticed though that since the fields of Suggestion are pub this could be done without an API change to rustfix. Do you think this should live in rustfix or be implemented outside? The Clone/apply_solution additions for CodeFix would still be useful if it's implemented outside

Thanks for the information! Now I can clearly see where it came from :)

I just noticed though that since the fields of Suggestion are pub this could be done without an API change to rustfix. Do you think this should live in rustfix or be implemented outside?

Sounds that it's better being done on Clippy/ui_test side if it is the only consumer. It also reduces cross repo works if something needs to change in the futre.

The Clone/apply_solution additions for CodeFix would still be useful if it's implemented outside

Yeah I am good with these additions.

A much smaller PR now 😄

Thanks!
@bors+
BTW, do you know what rust-cloud-vms is? I saw it force-pushed code you commited. Or, are you a bot?

🤖
It's because I pushed from one of the dev desktops, they have a funky credential helper setup going on that I guess appears as though it's coming from the bot

@bors r+

:pushpin: Commit 5a15397611461bc98ad9a6476ec1b8ad45c08f2a has been approved by weihanglo
It is now in the queue for this repository.

:hourglass: Testing commit 5a15397611461bc98ad9a6476ec1b8ad45c08f2a with merge 99361c46e041bbc662278b9d0273c9f5a7b46e0a...

:sunny: Test successful - checks-actions
Approved by: weihanglo
Pushing 99361c46e041bbc662278b9d0273c9f5a7b46e0a to master...


Should appsettings values be changed?

Not sure if it is my misunderstanding or something is missing in the application. appsettings.json has placeholders, such as "CognitoDomain": "[Retrieved from AWS Systems Manager Parameter Store]"
When I am running in Integrated mode, these are the values that are assigned:
_cognitoDomain = builder.Configuration["Authentication:Cognito:CognitoDomain"];
And the application can't retrieve values from System Manager's Parameter Store, nor authenticate against Cognito. I don't see any code where it actually goes to SSM and retrieves the values... Am I missing something?
Thanks,

Hi @virshu , did you set up the AWS services required for integrated debugging by running cdk deploy BobsBookstoreCore ?

Yes of course! I can see that all parameters are created:

but AuthenticationSetup:ConfigureAuthentication doesn't retrieve them:

I'll create a minimal example. Maybe something is wrong with AWS profile in appsettings. I don't see that code retrieves any values from SSM:

I figured out the problem (once I removed optional=true I started getting exceptions, instead of silently failing). My profile was configured as SSO from some other work that I was doing. Once I removed references to SSO, it worked. Thank you

Thanks for the update @virshu , great to hear you were able to identify the issue.


Allow None to be passed for geoms and bboxes on features

This PR addresses #55 by setting the default value of bbox and geometry on features to None

Codecov Report

Merging #56 (3f6d11f) into master (79a7fb9) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master       #56   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            4         4
  Lines          106       106
=========================================
  Hits           106       106

Flag
Coverage Δ

unittests
100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

geojson_pydantic/features.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

I think this is likely good to go. Are there any other outstanding changes we really want to see prior to another release? (Getting things lined up to push a release for stac-fastapi)

@moradology @geospatial-jeff I'm getting a pre-commit error over #62 related to change made here
geojson_pydantic/features.py:19: error: Incompatible types in assignment (expression has type "None", variable has type "Geom")
[68](https://github.com/developmentseed/geojson-pydantic/runs/6689482310?check_suite_focus=true#step:5:69)
Found 1 error in 1 file (checked 6 source files)

This looks a bit like a bug, but perhaps there's some wrinkle to the behavior here I'm missing. As you can see, the type variable is declared to be an Optional, which ought to include None:
https://github.com/developmentseed/geojson-pydantic/blob/ad3aabe87b4b9aef545ce2f8f1b8f259ea8d4bcf/geojson_pydantic/features.py#L12
I'm happy to cut a PR or somesuch to make modifications that will avoid this issue. Do we have a sense about what the right approach is?

@moradology To be honest I not sure where this comes from so I'll be more than happy if you can have a look 🙏

@moradology you can ignore ☝ a other PR (https://github.com/developmentseed/geojson-pydantic/pull/64) seems to work 👌 so I guess it's just a mypy configuration issue in #62


Timeout not honored sometimes

We have configured a timeout of 1 hour for jobs:

Sometimes it happens that one step is running longer than the specified timeout and thus causing a never finishing job (especially bad with the autoscaler we are currently testing, because then pending-jobs are counted in as still running processes that never get into the worker scale downs):

Any further idea what this could have caused and what data is needed here?
Currently I clean them up by a hacky SQL update, but this should not really be needed to accomplish this and also requires that you know the maximum timeout of all the repos:
UPDATE stages SET stage_status = 'killed' WHERE stage_status IN ('pending', 'running') AND UNIX_TIMESTAMP() - stage_updated > 3600;

I also checked all workers and there are no dangling containers or something suspicious.

This is not related to the timeout. The timeout is enforced on the agent when the build is running. The server does not enforce the timeout, meaning if we lose an agent or it becomes unresponsive, the build may not complete. We refer to these as "zombie builds". Drone does not automatically try to resolve zombie builds, leaving this to the system admin to handle manually.
If the root cause of the zombie build is the autoscaler, I recommend sending a pull request to the autoscaler that tries to cleanup any builds that were running on a lost instance.


Privacy not guaranteed against mempool observer

The DLC paper is ambiguous about key generation and the most straightforward interpretation of it is   vulnerable to rouge key attacks. The original DCI spec was not vulnerable to rouge key attacks but breaks a key privacy guarantee (see https://github.com/mit-dci/dlcspec/issues/5). To their credit, the authors of this spec seem to have understood that and has mitigated the issue to some extent, but not completely.
Each party has its own contract execution transaction that it can broadcast upon the completion of any event. If both parties broadcast such a transaction (which presumably is what is meant to happen?) then any observer of both transactions can identify the Oracle Signature Point.
This is what the CET looks like in the spec atm:
OP_IF
  <Oracle Signature Point + Local Funding Public Key + SHA256(Local Sweep Public Key)*G>
OP_ELSE
  <Timeout> OP_CHECKSEQUENCEVERIFY OP_DROP
  <Remote Sweep Public Key>
OP_ENDIF
OP_CHECKSIG

Any observer who sees both contract execution transactions will be able to determine what the Oracle Signature Point  is seeing as they can figure out Local Sweep Public Key from the other transaction and they know  Local Funding Public Key from the funding output.
My recommendation is to use a completely unrelated key to add to the Oracle Signature Point in the CET and provide a proof of knowledge on it (a Schnorr signature under it suffices).

Thanks for raising this concern. First maybe in case you hadn't followed this, @nkohen came up with the current spec after the discussion in #10.

If both parties broadcast such a transaction (which presumably is what is meant to happen?) then any observer of both transactions can identify the Oracle Signature Point.

In my personal understanding, this is not meant to happen. In a normal execution case where both parties are online and able to communicate, they would create and sign a mutual closing transaction. I think only if both parties think the other is not online would they end up both broadcasting their CET.
The solution you propose came up in the discussions, but as it increases the protocol complexity we went with the current approach. I personally don't mind revisiting this issue if there is a concern.
I also proposed back in #10 to just use a value known by both parties to use as a tweak instead of the sweep key, do you see any issue with that (especially I wonder if there could be an issue if the value is chosen by one of the party)? It would reduce verification complexity.

To their credit, the authors of this spec seem to have understood that and has mitigated the issue to some extent, but not completely.

IIRC you're the one who pointed the issue to us in the first place so I'd say the credit goes to you :)

Thanks for the link to the background discussion. I understand the CET broadcast now. Despite this it's usually better to guarantee properties like privacy to in the simplest way possible without such assumptions. Though, engineering complexity is certainly a concern so I happily leave the outcome of this ticket to the developers :)

I also proposed back in #10 to just use a value known by both parties to use as a tweak instead of the sweep key, do you see any issue with that (especially I wonder if there could be an issue if the value is chosen by one of the party)? It would reduce verification complexity.

Yes. I think each party choosing their own tweak would also work. But I guess they would need a different one for each CET so they could send a seed and derive it.
I have no strong feelings about keeping this issue open -- I just wanted to point this out as I didn't know it had been discussed.

Yes. I think each party choosing their own tweak would also work. But I guess they would need a different one for each CET so they could send a seed and derive it.

Ah what I meant was have one party choose a single tweak (e.g. just a random value). I'm not sure I see a point in having a different one for each CET though?

Ah what I meant was have one party choose a single tweak (e.g. just a random value). I'm not sure I see a point in having a different one for each CET though?

I'm not sure either but it just seemed easier to prove secure that way. If each CET randomness is related then someone who sees two CETs can probably subtract away the randomness and get the sum of two oracle points and then learn the outcome that way. This would need to be two different CETs on two different oracle points. That obviously seems unlikely but as I said. it's usually better to prove privacy without resorting to reasoning about certain edge cases.

Mmmm I'm getting a bit confused then in what was your proposal. My understanding was that you wanted to replace:
<Oracle Signature Point + Local Funding Public Key + SHA256(Local Sweep Public Key)*G>

by
<Oracle Signature Point + Local Unrelated Public Key>

Is that correct? Or do you then want to have a single key for each CET? Like:
<Oracle Signature Point + Local Unrelated Public Key_i>

If that's the case, it doesn't sound realistic to me, as this would mean potentially having to generate and verify thousands of signatures (it's not unfeasible, but certainly impractical).
If you meant the single key case, I don't see a difference between "someone who sees two CETs" and "someone who sees the unrelated public key".
It is also possible to exchange a seed to use for generating a random value per CET, but again, if the seed is leaked, it's pretty similar to me as leaking two CETs.
Sorry if maybe I am just misunderstanding something?

@Tibo-lg You're right. So the model is either:

The adversary gets all CETs from both parties and all oracle points and has to guess which set of oracle points is being used.
The adversary gets two CETs on the same oracle point (one from each party).
The adversary gets only one CET.

The current impl is secure in scenario (3). But not in (2) or (1). It seems like a protocol secure in (2) should exist (adding fixed randomness as you suggested should do it). I think deriving different randomness for every CET from a seed should be secure in (1). Having said that (1) is not very realistic.

It is also possible to exchange a seed to use for generating a random value per CET, but again, if the seed is leaked, it's pretty similar to me as leaking two CETs.

If a party is leaking private info to the adversary then there's no chance of privacy in any case I think.

It is also possible to exchange a seed to use for generating a random value per CET, but again, if the seed is leaked, it's pretty similar to me as leaking two CETs.

If a party is leaking private info to the adversary then there's no chance of privacy in any case I think.

The point I was trying to make is that in my view leaking two CETs (from a single party) means leaking private information. One might maybe argue that it's easier to secure a seed than a set of transactions, not sure how valid an argument that would be.
But let's assume we go for sharing a seed used to generate different tweaks for each CET, would that solve (1) (2) and (3)? (I can't see a way to recover the oracle point without knowing the seed personally but maybe one needs to spend a bit more time considering potential issues).
I think we can summarize the possible solutions as:

Don't change anything, and consider that having both party broadcast their CET is too much of a corner case to be worth caring for,
Exchange new public keys between the party together with a signature proving knowledge of the private key,
Use a single random value to tweak the oracle point that is shared e.g. in the offer message (we could discuss later how this get generated),
Use a seed to generate distinct tweak values for each CET.

I personally think that 3 is a good and simple solution that solves the problem in the realistic cases, but I've ranted enough and will let others give their opinions.

Thanks for raising this concern @LLFourn .
As you point out, if a malicious enemy is able to steal two CETs (or both party broadcast their CET), the Oracle Signature Point will be calculated and the contract will be known.
IMHO, we don’t need to change spec because
・Having multiple CETs known is equal to leaking privacy, and having both party broadcast their CET is not usual case (same idea as @Tibo-lg )
・If we create thousands of CETs (ex financial trading), creating tweaks for each CET seems to be complicated for managing it (The complexity is mitigated by using seed although)
If I've missed any points, please let me know.

and having both party broadcast their CET is not usual case (same idea as @Tibo-lg )

Isn't it something that a malicious party could induce by interrupting the connection between the two parties? How hard would it be to trigger two CETs being released if you're a man in the middle?

I personally think that 3 is a good and simple solution that solves the problem in the realistic cases, but I've ranted enough and will let others give their opinions.

FWIW I agree :+1:

I also think 3 is probably most feasible, and to the earlier discussion I do think that although there is an inherent privacy leak when two parties broadcast CETs, it is not nearly as bad a leak if oracle points aren't revealed, so we should protect against this.
What are people's thoughts on using something like the ECDH of funding keys? Secure against rogue key attacks?

What are people's thoughts on using something like the ECDH of funding keys? Secure against rogue key attacks?

If there is no downside to this I'd say this is the most elegant solution, but just to make sure we are on the same page, would we then have something like:
<Oracle Signature Point + ECDH(Local/Remote Fund key) Pubkey >

I think @nkohen  means:
<Oracle Signature Point + Local Funding Public Key +  Sha256(ECDH(Local/Remote Fund key))*G >
This will work. I'm not sure it provides any improvement over one party just sending a random 32 bytes so I guess it could be preferable from an engineering standpoint (less stuff in message).

I believe this discussion is now void due to our move to adaptor signature based DLCs which have none of these problems. This issue may once again become relevant however when we get around to specifying how to combine oracles.


Moved siren to Wink from Switch

Description:
Siren's aren't switches so moving this to a generic wink.siren device from a switch.siren
This makes the Siren no longer a toggleable device from the frontend which I think is a plus as I have accidentally enabled it before. This also hide's Dome siren/chime services if the user doesn't have a Dome siren, but does have a GoControl siren. All siren/chime related services are hidden if the user doesn't have either.
Because the device isn't toggleable anymore, another service was added "wink_enable_siren"
@rbflurry if you could test this out again that would be awesome. Your switch.dome_siren should now show up as a wink.dome_siren.
@balloob I believe this addresses what you requested over here https://github.com/home-assistant/home-assistant/pull/9667
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#<home-assistant.github.io PR number goes here>
Checklist:
If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.github.io

If the code communicates with devices, web services, or third-party tools:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass

I don't think it's a breaking change as the old code has never been released?

This is a breaking change because sirens have existed for awhile under switches, the new stuff is for the dome siren/chime. So, old siren switches will now be a wink.something entity not a switch.something entity.

I’m out of town till Wednesday. I will be able to test after that.

I can share my dome siren again if you want.

@rbflurry that should work, I just want to make sure it shows up and has the correct attributes and everything.

Shared With you.

@rbflurry Thanks, looks good. It showed up and so did the service associated with it. I didn't issue any command but I didn't change any of that logic just moved it to a new file so everything should be fine.

Ok to merge when comments addressed.

@balloob can this get added to 0.56 since https://github.com/home-assistant/home-assistant/pull/9667 is already included this PR will we a breaking change if 9667 is added it would prevent users from having to change their configs in 0.57


Issue about ClusterLoader

❓ Questions & Help
Dear @rusty1s, I‘m using ClusterLoader to run my experiment, and I have a question about the batch_size parameter in ClusterLoader. For example, if I set num_parts to 100 in ClusterData, then the original graph will be partitioned into 100 subgraphs. In the original cluster-gcn paper, some subgraphs will be merged to a bigger batch before training, is this specificed by batch_size in ClusterLoader, i.e., if num_parts = 100 and batch_size = 4, there will be 25 elements in ClusterLoader ?
Best regrads

Yes :)

@rusty1s Thanks a lot!


BOM part sorting sorts on part ID instead of part name

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
When sorting a BOM using the small up/down arrow buttons next to the Part label, the list is sorted by part ID instead of the name.
Steps to Reproduce

On the demo site, go to part Blue Square Table
Add part widget.green
Sort the table by part
Part widget.green is on top, which is incorrect

Expected behaviour
Table sorted by part name
Deployment Method

[ ] Docker
[ ] Bare metal

Version Information
(demo site)
Version Information:
InvenTree-Version: 0.13.0 dev
Django Version: 3.2.20
Commit Hash: ee54167
Commit Date: 2023-08-01
Database: postgresql
Debug-Mode: False
Deployed using Docker: True
Platform: Linux-5.15.0-75-generic-x86_64-with
Installer: DOC
Active plugins: False
Please verify if you can reproduce this bug on the demo site.

[X] I can reproduce this bug on the demo site.

Relevant log output
No response

@JustusRijke thanks for reporting


Fix the inclusion of e_os2.h

crypto/o_dir_test.c was not using the correct path to e_os2.h.

+1 if anyone else on the team wants to review (for me to merge) or merge it themselves.

And this is RT 4252.

Why do we need this file? Shouldn't we just delete it (or perhaps move it to "demos"?) It isn't even built.

I'm not entirely sure why it's needed; it probably isn't.
Should we delete the following files as well? They aren't built either.

crypto/pqueue/pq_test.c
crypto/lhash/lh_test.c

IMO it would be better to try to add them to the test suite first, before removing them completely.

all three tests are really kinda silly and would need much work to make them generate repeatable output, for example.  best to remove them.

Those are obvious unit tests. Maybe we should start doing unit tests ;-)

they're not even unit tests.  you can't script them. :)

Picky, picky...

tests removed.


[improve][client] Add a way to configure which DNS use

Main issue #21226
Motivation
Currently is not possibile to configure one or more dns servers that will be used by the client to resolve hostnames.
Modifications
Added an optional configuration ClientConfigurationData.dnsServerAddresses to allow to configure custom DNSs. It not provided or empty will default to the existing behaviour.
Handled the new conf in ConnectionPool.
Verifying this change

[ ] Make sure that the change passes the CI checks.

This change added tests and can be verified as follows:

Added unit test on ClientBuilderImplTest with configuration of both good or wrong dns servers
Added integration test on PulsarClientImplTest with a custom configured dns servers list
Added unit test on ConfigurationDataUtilsTest about the new configuration loading

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[x] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[x] doc
[ ] doc-required
[ ] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository:

Rebased on synced fork

Last review issue has been addressed

Fails org.apache.pulsar.common.nar.NarUnpackerTest.shouldExtractFilesOnceInDifferentProcess
Could it be flaky?

@diegosalvi Could you please provide more context of the use case? The reason why I'm asking is that I don't currently see why the Pulsar client should have a different DNS server configured apart from the rest of the application and the OS where the app is running.

Fails org.apache.pulsar.common.nar.NarUnpackerTest.shouldExtractFilesOnceInDifferentProcess Could it be flaky?

Yes, it's flaky. reported as #21291

@lhotari currently we are using Pulsar in a production environment. In such environment we have need to use different dns for the server machine (configured by standard resolvconf et simillia) and java processes. For many java cases we directly do lookups on dns with different libraries (so we don't use java discovered dnses) but we can't do the same for Pulsar.
To be able to configure which dns use can be useful depending on environments to specialize them

@nodece Rebased

@lhotari currently we are using Pulsar in a production environment. In such environment we have need to use different dns for the server machine (configured by standard resolvconf et simillia) and java processes. For many java cases we directly do lookups on dns with different libraries (so we don't use java discovered dnses) but we can't do the same for Pulsar.
To be able to configure which dns use can be useful depending on environments to specialize them

@diegosalvi for future documentation purposes, would you be able to share more details and a common reference? Is it a split DNS setup where you have an internal DNS separate from an external DNS ? Would you configure the Pulsar client to use the internal DNS server?

@lhotari Yes, something along the line. DNS for Pulsar are "internal" "applicative" ones leaving the host machine with a different set of dns (via resolv.conf etc etc) and other "external" DNS queried directly by java processes when in need to resolve "public" names.

Still fails for NarUnpackerTest

Still fails for NarUnpackerTest

@diegosalvi This flaky NarUnpackerTest has been fixed. You can get the fix to this PR by rebasing on or merging origin/master.

Rebased again

Codecov Report

Merging #21227 (53f5241) into master (8438e43) will increase coverage by 36.37%.
Report is 6 commits behind head on master.
The diff coverage is 80.64%.

@@              Coverage Diff              @@
##             master   #21227       +/-   ##
=============================================
+ Coverage     36.84%   73.22%   +36.37%
- Complexity    12229    32529    +20300
=============================================
  Files          1699     1888      +189
  Lines        130559   140257     +9698
  Branches      14264    15445     +1181
=============================================
+ Hits          48106   102703    +54597
+ Misses        76121    29457    -46664
- Partials       6332     8097     +1765

Flag
Coverage Δ

inttests
24.19% <45.16%> (-0.14%)
:arrow_down:

systests
24.73% <41.93%> (+<0.01%)
:arrow_up:

unittests
72.53% <80.64%> (+40.58%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files
Coverage Δ

...va/org/apache/pulsar/broker/service/ServerCnx.java
71.76% <100.00%> (+30.24%)
:arrow_up:

...n/java/org/apache/pulsar/broker/service/Topic.java
36.36% <ø> (+28.03%)
:arrow_up:

...lsar/client/impl/conf/ClientConfigurationData.java
96.69% <100.00%> (+8.45%)
:arrow_up:

...g/apache/pulsar/client/impl/ClientBuilderImpl.java
85.98% <83.33%> (+39.62%)
:arrow_up:

.../org/apache/pulsar/client/impl/ConnectionPool.java
75.96% <66.66%> (+14.01%)
:arrow_up:

...ava/org/apache/pulsar/broker/service/Producer.java
82.64% <75.00%> (+20.21%)
:arrow_up:

... and 1444 files with indirect coverage changes

Pending for merging as PIP-305 #21352 merged.


posix: device_io: implement fdopen(), fileno(), pread(), pselect(), pwrite()

Implement the remaining functions in the POSIX_DEVICE_IO Option Group.
This Option Group is requried for the PSE51, PSE52, PSE53, and PSE54 subprofiles and likely others.

[!NOTE]
there is a false positive in coding guidelines: FILE *stdin; violating spacing rules around *?? I could use uintptr_t I guess 🤷♂

Doc Preview
Fixes #24966
Fixes #66932
Fixes #66938
Fixes #66946
Fixes #66947
Fixes #66948
Fixes #74364

This one has a false positive regarding the reserved word "remove" due to the remove() function existing in a file that was touched.
No changes made there, although it is an ISO C function, and not a POSIX one. That would be a good bugfix at some point.

Fixes for a few bugs prepended.

Bulk changing the milestone from everything which did not make it to the v3.7.0 freeze deadline
and which is not labeled as a bug or documentation (or does not appear clearly as only containing
a bug fix or a documentation change).
If you disagree about this change please add the milestone again.
Please note that until rc2 only PRs containing bug fixes, docs and tests can be merged.
After that and until release only bug fixes and docs changes.
Exceptions require approval by the release team and a vote by the TSC.
https://docs.zephyrproject.org/latest/project/release_process.html#stabilization-phase

temporary DNM until merge conflicts and all comments have been addressed.

rebased
fixed merge conflicts
updated language for non-user-selectable Kconfig options (i.e. do not use "Select 'y'" if the user cannot select y)

Other than the false positive in coding guidelines, this should probably be all green. Please revisit when you have a moment @ycsin, @jukkar, @SeppoTakalo


Milesight IoT - HIP19 third party manufactory application

Rendered view: https://github.com/helium/HIP/blob/bd53cbb57621b63b832163960ea2dd8fb78b1c72/0019-third-party-manufacturers/Milesight IoT.md

Thanks for your submission. The manufacturing review committee will be in touch.
Can you share a contact email address?

Yes, my email address can be used<EMAIL_ADDRESS>


#WIP Global2

Created a new PR to clean out old one

          1 Warning

:warning:
PR is classed as Work in Progress

  Generated by :no_entry_sign: Danger

Codecov Report

Merging #718 into master will increase coverage by 0.01%.
The diff coverage is 61.03%.

@@            Coverage Diff             @@
##           master     #718      +/-   ##
==========================================
+ Coverage   55.26%   55.27%   +0.01%
==========================================
  Files         251      251
  Lines       14703    14727      +24
==========================================
+ Hits         8125     8141      +16
- Misses       5902     5913      +11
+ Partials      676      673       -3

Impacted Files
Coverage Δ

lib/resolve_errors.go
42.16% <ø> (-0.69%)
:arrow_down:

server/server.go
43.39% <ø> (-2.06%)
:arrow_down:

util/logging/logging.go
38.15% <ø> (-0.36%)
:arrow_down:

lib/deployments_generated.go
67.66% <0%> (-1.04%)
:arrow_down:

cli/sous_query_gdm.go
36.36% <0%> (-8.09%)
:arrow_down:

lib/resolvestatus.go
93.85% <0%> (ø)
:arrow_up:

lib/registry_dumper.go
0% <0%> (ø)
:arrow_up:

cli/cli.go
77.94% <0%> (-0.94%)
:arrow_down:

lib/http_state_manager.go
23.23% <0%> (-0.48%)
:arrow_down:

lib/source_context.go
71.42% <100%> (+1.05%)
:arrow_up:

... and 22 more

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 07249cd...33a88b9. Read the comment docs.

@nyarly @samsalisbury @lachlanh Looks like things are stable again on this branch, all 10 checks passing.


Tour step doesn't show but instead shows the other popover attached to the element

I have an element for which I set up (using Javascript) a popover that is shown when the element is clicked. I also use this element as a step in the tour. When I click the 'next' button to jump to this step in the tour, the tour popover doesn't show and instead the other popover appears.

yeah, unfortunately I am having same issue. Any suggestions in the meanwhile?


Amplify seems to add a large amount of delay to reverse proxy requests

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

Describe the bug
When not using Amplify (using separate nginx hosted react front end, my backend responds in 18.2 seconds for a large set of data.  When using Amplify for the exact same data, to the exact same backend, the response exceeds 30 seconds and of course Amplify kills the request and returns a 502.  What is amplify doing to extend this 18 second response past the 30 second mark.
Expected behavior
i expect an 18 second response, not a 12+ second delay.  This started out as #1171 to control the reverse proxy timeout, but if Amplify is going to add 12 seconds to everything then amplify will not be usable as a product.
Reproduction steps
Open our NOT amplify version and load the page. 18 seconds from nothing to done
Open our amplify version of the same page (same JS, same backend as above) more than 30s (and then the connection is 502'd)
Exact same backend URL used in both cases.  One is handled via nginx reverse proxy, one is handled by amplify.
Build Settings
[
    {
        "source": "/api/v3/<*>",
        "target": "elements-api.humanyze.com/api/v3/<*>",
        "status": "200",
        "condition": null
    },
    {
        "source": "/<*>",
        "target": "/index.html",
        "status": "404-200",
        "condition": null
    },
    {
        "source": "</^[^.]+$|\\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^.]+$)/>",
        "target": "/index.html",
        "status": "200",
        "condition": null
    }
]

This is the Amplify version of the API access
https://user-images.githubusercontent.com/18578897/113328420-e0198d80-92e1-11eb-854f-b9cd657744a8.mp4
This is the NON-Amplify version of the same API Access
https://user-images.githubusercontent.com/18578897/113334013-c596e280-92e8-11eb-807d-8eb64383be88.mp4

4 days and not even an acknowledgement of this show stopper :-(. I guess I should just give up on being able to use Amplify.

Hi @boatcoder, apologies for the delay. Sorry that this has been a blocker.
Are you able to share any additional details of the API, as well as whether or not the NGINX based instance happens to be geographically isolated/separated from where you're making requests to the Amplify app. Wondering if a combination of the reverse proxy lookup roundtrip + the ~18-25 seconds of API processing is causing the timeout.
If you're not comfortable sharing it here you can send it to<EMAIL_ADDRESS>- please include the this GitHub issue (https://github.com/aws-amplify/amplify-console/issues/1719) so we know it's you!
Also, linking your other feature-request(https://github.com/aws-amplify/amplify-console/issues/1697) here for future tracking.

My API is running in us-east-1c.  I'll send the rest of the details via email.

Hi boatcoder@  I looked into what is going on.  We actually set the origin read timeout to 15 seconds on reverse proxy requests and have a 30 second timeout on the distribution.  So what is happening is the first request times out, it starts a second request and then hits the 30 second distribution timeout.  If you look in your api logs, you should see 2 requests.  We can take increasing the timeout on origin requests as a feature request.


Cannot cancel 'Connecting to server...' for shared project

Describe the bug
If a shared project has been moved and the DNS entry has been changed, connecting to it cannot be canceled in a timely manner.
To Reproduce
Steps to reproduce the behavior:

Connect to a previously available shared project
It will show 'Connecting to ...'
Hit the red X to cancel and hit yes
It still says connecting

Expected behavior
The operation should cancel immediately and fallback to an offline view (if it was synced before) or to a blank project if this is a first time connection
Environment (please complete the following information):

OS: macOS 10.14.6
Java Version: 11.0.2
Ghidra Version: 9.2 PUBLIC

Related to issue #2660

This also applies when you have a server that is only accessible from a VPN, you forgot to activate the VPN beforehand and some firewall prevents you from even getting the response that the port is closed.

I have added as an enhancement task, although no target release has been established

Just to chip in, I can confirm that this issue still exists in 10.0.

4


Update README.md

adding my name to README
Related issue

What changes does this PR do?
Screenshots (If any)
Questions

Hi I am new to opensource thank you for having this repo open for beginners.


Request: new 3.x branch

Hi,
Would you mind creating a new branch named 3.x?
From the commit https://github.com/thephpleague/omnipay-sagepay/commit/af116fddde38113fa82aff53c67a7d5ca739cf7b
I've copied the new Opayo URLs from the branch jamieburchell-opayo-urls onto the last 3.x commit here: https://github.com/Ferrisbane/omnipay-sagepay/tree/3.x
I'd like to create a merge request onto that new branch, so anyone that still needs to use protocol 3 of Opayo (for whatever reason) can with the new URLs that will be forced on the 31st of March.

I can create a local 3.x branch, but cannot push it to the main repo for some reason. I'm getting this error and have no idea why:

Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/oilstone/omnipay-sagepay.git
! [remote rejected] 3.x -> 3.x (permission denied)
error: failed to push some refs to 'https://github.com/oilstone/omnipay-sagepay.git'

I don't know how the oilstone repo fits into this. This on a clean clone from the phpleague repo. There may be some weird cacheing going on at may end.

Yeah, I blame github for desktop caching some old PR branch. CLI worked as expected.
I need to head off and not back until tomorrow evening. Yout should be able to do a PR on the 3.x branch and I'll merge it then.


Replace original tag classes with classes in the tags package.

I removed all of the original tag classes and tests.  There are still a few
things that need to be done after this commit:

The tags package doesn't have a class to represent a tag value yet, so I used
Object instead of TagValue in the ViewData API.

There are no methods for manipulating the current TagContext yet, since #498
hasn't been merged.  I couldn't update StatsRunner, so I temporarily commented
most of it out.

We need to add a StatsRecorder.record method that uses the current context.

Codecov Report

Merging #515 into master will decrease coverage by 1.37%.
The diff coverage is 63.88%.

@@             Coverage Diff              @@
##             master     #515      +/-   ##
============================================
- Coverage     91.22%   89.85%   -1.38%
+ Complexity      587      538      -49
============================================
  Files           112      103       -9
  Lines          2348     2267      -81
  Branches        207      201       -6
============================================
- Hits           2142     2037     -105
- Misses          152      180      +28
+ Partials         54       50       -4

Impacted Files
Coverage Δ
Complexity Δ

.../main/java/io/opencensus/stats/StatsComponent.java
100% <ø> (ø)
3 <0> (ø)
:arrow_down:

...n/java/io/opencensus/impl/tags/TagContextImpl.java
100% <ø> (ø)
4 <0> (ø)
:arrow_down:

...c/main/java/io/opencensus/stats/StatsRecorder.java
100% <ø> (ø)
3 <0> (ø)
:arrow_down:

...va/io/opencensus/stats/StatsComponentImplBase.java
100% <ø> (ø)
3 <0> (-1)
:arrow_down:

core/src/main/java/io/opencensus/stats/Stats.java
80% <ø> (+5%)
4 <0> (-1)
:arrow_down:

core/src/main/java/io/opencensus/stats/View.java
100% <ø> (ø)
4 <0> (ø)
:arrow_down:

.../java/io/opencensus/impl/tags/TagContextsImpl.java
100% <100%> (ø)
6 <1> (ø)
:arrow_down:

...in/java/io/opencensus/stats/StatsRecorderImpl.java
100% <100%> (ø)
2 <1> (ø)
:arrow_down:

...rc/main/java/io/opencensus/stats/StatsManager.java
100% <100%> (ø)
6 <0> (ø)
:arrow_down:

.../java/io/opencensus/stats/RpcMeasureConstants.java
100% <100%> (ø)
2 <1> (ø)
:arrow_down:

... and 5 more

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 4598da6...6a60437. Read the comment docs.

 View view, Map<List<TagValue>, List<AggregationData>> map, final WindowData windowData) {

 View view,

 Map<? extends List<? extends Object>, List<AggregationData>> map,

I don't understand it very well, but I think that List is treated
as a subtype of List<? extends Object> (https://stackoverflow.com/a/
22806587), so we also need to allow subtypes of the list. Without the
first ? extends, the second ? extends seemed to have no effect, and the
method wouldn't accept a List.
Another reason to add the first ? extends is to allow list subclasses,
such as ArrayList.

aint generics fun? :)

Thanks!


Implement the routing algorithm based on the design doc

TODOs:

[ ]

Part of #1722

Closed in favor of route-and-execute


Pop with default on structured config with enum keys raises KeyValidationError

Describe the bug
Using get(key, default) or pop(key, default) on a config object whose key type is an enum raises an KeyValidationError if key is not a valid enum type.
I think a python user would probably expect a more lenient behavior (without the key validation if a default is explicitely provided).
However, I can also see how this is a valid behavior from OmegaConf perspective.
To Reproduce
from omegaconf import OmegaConf
from dataclasses import dataclass
from enum import Enum
from typing import Dict

class Color(Enum):
    RED = "red"
    GREEN = "green"
    BLUE = "blue"

@dataclass
class ColorConf:
    colors: Dict[Color, float] = None

config = OmegaConf.structured(ColorConf({Color.RED: 0.1}))
config.colors.pop(Color.RED, None)  # 0.1
config.colors.pop(Color.BLUE, None)  # None
config.colors.pop("blue", None)  # Errors with any key that is not Enum

which raises
omegaconf.errors.KeyValidationError: Key 'some_other_key' is incompatible with the enum type 'Color', valid: [RED, GREEN, BLUE]
    full_key: colors.some_other_key
    reference_type=Dict[Color, float]
    object_type=dict

Expected behavior
Key "blue" is not in config.colors, but I said "give me None if not there".
None

Additional context

[x] OmegaConf version: 2.1.0.dev14
[x] Python version: 3.6
[x] Operating system : MacOS
[x] Please provide a minimal repro

Having looked at it, I am leaning toward keeping things as is.
If you are passing a key with a type that is incompatible with the DictConfig key type, you have a code error.
This is true even if you do provide a default value.
It seems like allowing for an invalid key if a default value is provided is jumping through hoops for no good reason. might as well just let you know you have an error up front and not shy from it.
Let me know what you think.


Put a screenshot of the page on the GitHub README

To capture the essence of the project

Something that captures a bit more than this
If I include this screenshot, then I can remove "Twitter" from Twitter Ticker


Fix rare segfault in greedyRepair

We take the first route as an initial default, and then check if there are better routes in the set. If no such routes exist, the first route remains the "best route". If that route is empty, however, we do index it when determining the insertion offset. That leads to a fairly rare segfault.

I'll release v0.4.2 as a hotfix directly after merging this, and then yank 0.4.1 from PyPI.


Feature Request: Improve Development with Vite and Add SASS for Styles

Current Behavior
Currently, the development setup relies on Create React App (CRA) and does not utilize Vite for faster development and better performance. Additionally, the project does not have support for SASS as a styling option.
Desired Behavior
The desired behavior is to improve the development experience by replacing Create React App with Vite. Vite is known for its fast build times and hot module replacement, which can significantly speed up the development workflow. Additionally, the feature request includes adding support for SASS, allowing developers to use SASS as a styling option for the project.
Implementation
To fulfill this feature request, the following steps can be taken:
Replace Create React App (CRA) with Vite: Update the project configuration to use Vite as the development server and build tool. This may involve modifying the project structure, updating dependencies, and configuring Vite to work with the existing codebase.
Add SASS support: Integrate SASS into the project's build process, allowing developers to write stylesheets using SASS syntax. This involves adding the necessary dependencies and configuring the build pipeline to compile SASS files into CSS during the build process.
Update the documentation: Update the project's documentation to reflect the changes made. Provide clear instructions on how to set up the development environment with Vite and how to use SASS for styling.
Acceptance Tests
To ensure the feature implementation meets the requirements, the following acceptance tests can be performed:
Verify Vite integration: Run the development server using Vite and confirm that the project builds and runs without any errors. Test the hot module replacement feature to ensure changes are reflected instantly without a full page reload.
Test SASS integration: Create SASS files and import them into components. Verify that the SASS files are correctly compiled into CSS during the build process and that the styles are applied correctly in the rendered application.
Update the documentation: Review the updated documentation to ensure it provides clear instructions on setting up the development environment with Vite and using SASS for styling. Verify that all relevant changes are documented accurately.

@leecalcote

Thanks, @itsarraj. Given that this is a single page site, time invested on performance, and just doesn’t have the return on investment necessary. If you would like to carry forward with this type of work, I encourage you to review the set up of the gatsby instance that drives layer5.io.


log(dfget): log result message

Codecov Report

Merging #133 into master will increase coverage by <.01%.
The diff coverage is 83.33%.

@@            Coverage Diff             @@
##           master     #133      +/-   ##
==========================================
+ Coverage    82.8%   82.81%   +<.01%
==========================================
  Files          25       25
  Lines        1018     1030      +12
==========================================
+ Hits          843      853      +10
- Misses        153      155       +2
  Partials       22       22

Impacted Files
Coverage Δ

dfget/config/config.go
93.2% <ø> (ø)
:arrow_up:

dfget/core/core.go
76.42% <100%> (+0.51%)
:arrow_up:

dfget/cli/cli.go
36.66% <77.77%> (+7.25%)
:arrow_up:

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 6d341ec...484388f. Read the comment docs.


git checkout hangs

The branch exists and is not corrupted, but the isomorphic-git gets stuck.

It seems that checkout thinks that this is a file and it throws an unhandled promise rejection about the missing file.

Sorry, I'm not able to make the project work locally. I can't even clone a repo.
I think that I will need to update the isomorphic-git library and use lightning-fs which is more reliable.


fix: change directions of breadcrumb arrows in rtl

This rotates the arrow depending on if rtl mode is set in the html or not

fix: https://github.com/facebook/docusaurus/issues/7565

diff --git a/packages/core/dist/css/default/default.css b/packages/core/dist-branch/css/default/default.css
index f9511[7](https://github.com/facebookincubator/infima/runs/6816723951?check_suite_focus=true#step:4:7)b..73[8](https://github.com/facebookincubator/infima/runs/6816723951?check_suite_focus=true#step:4:8)5[9](https://github.com/facebookincubator/infima/runs/6816723951?check_suite_focus=true#step:4:9)60 100644
--- a/packages/core/dist/css/default/default.css
+++ b/packages/core/dist-branch/css/default/default.css
@@ -1673,6 +1673,[10](https://github.com/facebookincubator/infima/runs/6816723951?check_suite_focus=true#step:4:10) @@ hr {
  * LICENSE file in the root directory of this source tree.
  */

+html[dir="rtl"] .breadcrumbs__item:not(:last-child):after {
+      transform: rotate(180deg);
+    }
+
 .breadcrumbs {
   margin-bottom: 0;
   padding-left: 0;

Made the requested changes, looks like the raw control directive is the only way to make a style rtl-only, unless I missed something on the rtlcss repo!

Thanks
Of course the comment stays in the ltr file 😅 but not a big deal as it can be optimized. Afaik our CSSNano preset remove those (discardComments: {removeAll: true},)


chore(ci): skip uploading centos packages to cloudsmith

Summary
Skip uploading centos packages to cloudsmith as cloudsmith doesn't support centos. Users should use rhel packages instead.

Checklist

[ ] The Pull Request has tests
[ ] A changelog file has been created under changelog/unreleased/kong or skip-changelog label added on PR if changelog is unnecessary. README.md
[ ] There is a user-facing docs PR against https://github.com/Kong/docs.konghq.com - PUT DOCS PR HERE

Issue reference
KAG-4786

Fix #[issue number]

beta run: https://github.com/Kong/kong/actions/runs/9632892015

@fffonion yes, andy and I talked about doing some cleaning of the ci after release. For now this works, if slightly inefficient on the ci


come up with a way to export funded grant pdfs with metadata

for placement and FAST and whatever

adding the id column to the CSV output is a great way to do this

I'm not sure what I meant by that last comment, but maybe the idea is giving them voter-like access to the submissions, and then making a spreadsheet with links to the submissions?  I think that's what we did.

is voter access sufficient? They may need to be admin-light or voter-plus or something, so they can change tags.  This means adding a new role, which gets Complicated because of how roles have been done

(see #116 )

eh this is just a dupe, closing


Sound gap when loop = true

Hey there!
I noticed that when loop={true} then a small silent gap is noticeable when the track is about to play again.
Is this intended or am I doing something wrong?
Thank you for your help again!

This isn't intentional, per say, but it's probably also not an issue with react-howler itself. It certainly could be but my guess is that this is probably an upstream question with how howler itself works (or is configured). I'd maybe start by reading through some of their issues (open and or closed) to see if it helps?
https://github.com/goldfire/howler.js/search?q=loop+delay&type=issues
https://github.com/goldfire/howler.js/search?q=seamless+loop&type=issues

I just encountered this issue https://github.com/goldfire/howler.js/issues/39. I will try with files other than mp3s.

For anyone encountering this issue, you need to convert the file to .ogg with the audacity app (not with a web-app converter like I was doing).


rancher-compose restart should use batching

Much like the rancher-compose upgrade command will upgrade service instances in batches, the restart command should restart containers in batches. When a service is scaled up to large numbers of instances (e.g. 20), and each one takes ~1 minute to restart, the one-by-one method currently used will take a long time to completely restart the service.

This sounds like a good improvement.


Is it really correctly implemented?

Hi,
I am trying to use this repo, but the following gives:
ColorUtils::rgbColor color(0.0f, 0.0f, 0.0f);
ColorUtils::rgbColor color_ref(1.0f, 0.0f, 0.0f);
float deltaE = ColorUtils::getColorDeltaE(color, color_ref);
std::cout<<"deltaE="<<deltaE<<std::endl;
deltaE=117.345
However the following python script gives:
import skimage.color as skco
rlab=skco.rgb2lab(np.array([[[0.0,0.0,0.0]]]))
dlab=skco.rgb2lab(np.array([[[1.0,0.0,0.0]]]))
skco.deltaE_ciede2000(rlab,dlab)
50.41122852
and also http://colormine.org/delta-e-calculator/cie2000
gives: 50.4067
Am I using the code in the wrong way, or is it incorrectly implemented (it gives a different result consistently).

Hi Franz!
The calculator is correctly implemented. The scikit snippet and the link you provided simply use a different algorithm that corrects for lightness (CIE2000) while the algorithm used for this library (CIE76/94) doesn't.
You may validate your results using this or this calculator instead.
This colorwiki link might also be helpful!
I'll add the algorithm used in the README so it's clearer for everyone and will try to add an option for dE2000 in the future.
Good luck!

My pleasure! :-)


Consider updating is-glob, glob-parent to 3.x series

When running tests with latest versions of glob-parent and is-glob,
git diff
diff --git a/package.json b/package.json
index 8cb2dbf..fe4d7cc 100644
--- a/package.json
+++ b/package.json
@@ -29,8 +29,8 @@
     "test": "mocha"
   },
   "dependencies": {
-    "glob-parent": "^2.0.0",
-    "is-glob": "^2.0.0"
+    "glob-parent": "^3.0.0",
+    "is-glob": "^3.0.0"
   },
   "devDependencies": {
     "mocha": "*",

5/10 tests fail, see error below. In debian, we like to keep the latest versions of any library and we already have glob-parent and is-glob at version 3.0.
$ npm test

><EMAIL_ADDRESS>test /home/pravi/forge/debian/git/pkg-javascript/node-glob-base
> mocha

  glob-base:
    1) typical globs:
    ✓ file extensions:
    2) negation pattern:
    ✓ extglobs:
    3) braces: no base:
    4) braces in filename:
    5) braces in dirname:
    ✓ regex character classes:
    ✓ qmarks:
    ✓ non-glob pattern:

  5 passing (46ms)
  5 failing

  1) glob-base: typical globs::

      AssertionError: expected { base: './{a/b/{c,', glob: 'foo.js}/e.f.g}', isGlob: true } to equal { base: '.', glob: '{a/b/{c,/foo.js}/e.f.g}', isGlob: true } (at base, A has './{a/b/{c,' and B has '.')
      + expected - actual

       {
      -  "base": "./{a/b/{c,"
      -  "glob": "foo.js}/e.f.g}"
      +  "base": "."
      +  "glob": "{a/b/{c,/foo.js}/e.f.g}"
         "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:38:50)

  2) glob-base: negation pattern::

      AssertionError: expected { base: 'a/b/c', glob: '!foo', isGlob: false } to equal { base: 'a/b/c', glob: '!foo', isGlob: true } (at isGlob, A has false and B has true)
      + expected - actual

       {
         "base": "a/b/c"
         "glob": "!foo"
      -  "isGlob": false
      +  "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:76:35)

  3) glob-base: braces: no base::

      AssertionError: expected { base: '/a/b/{c,', glob: 'foo.js}/e.f.g/', isGlob: true } to equal { base: '/a/b', glob: '{c,/foo.js}/e.f.g/', isGlob: true } (at base, A has '/a/b/{c,' and B has '/a/b')
      + expected - actual

       {
      -  "base": "/a/b/{c,"
      -  "glob": "foo.js}/e.f.g/"
      +  "base": "/a/b"
      +  "glob": "{c,/foo.js}/e.f.g/"
         "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:87:48)

  4) glob-base: braces in filename::

      AssertionError: expected { base: 'a/b/.{c,', glob: '.gitignore}', isGlob: true } to equal { base: 'a/b', glob: '.{c,/.gitignore}', isGlob: true } (at base, A has 'a/b/.{c,' and B has 'a/b')
      + expected - actual

       {
      -  "base": "a/b/.{c,"
      -  "glob": ".gitignore}"
      +  "base": "a/b"
      +  "glob": ".{c,/.gitignore}"
         "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:97:45)

  5) glob-base: braces in dirname::

      AssertionError: expected { base: 'a/b/{c,.', glob: 'd}/e/f.g', isGlob: true } to equal { base: 'a/b', glob: '{c,./d}/e/f.g', isGlob: true } (at base, A has 'a/b/{c,.' and B has 'a/b')
      + expected - actual

       {
      -  "base": "a/b/{c,."
      -  "glob": "d}/e/f.g"
      +  "base": "a/b"
      +  "glob": "{c,./d}/e/f.g"
         "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:105:42)

npm ERR! Test failed.  See above for more details.
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! not ok code 0

ok, I'll make this change next as soon as I get a chance. A pr would also be great if someone beats me to it. thanks

I'll try to make a pr.

The failures have to do with the same circumstances discussed in https://github.com/es128/glob-parent/issues/10 and https://github.com/es128/glob-parent/pull/11.
For the record, if https://github.com/es128/glob-parent/pull/11 were merged and published, the tests here pass.

I initially thought only tests need fixing, but I'll wait for a fix in glob-parent.

@es128 after applying es128/glob-parent#11, I test still fails,
 $ npm test
><EMAIL_ADDRESS>test /home/pravi/forge/debian/git/pkg-javascript/node-glob-base
> mocha

  glob-base:
    ✓ typical globs:
    ✓ file extensions:
    1) negation pattern:
    ✓ extglobs:
    ✓ braces: no base:
    ✓ braces in filename:
    ✓ braces in dirname:
    ✓ regex character classes:
    ✓ qmarks:
    ✓ non-glob pattern:

  9 passing (49ms)
  1 failing

  1) glob-base: negation pattern::

      AssertionError: expected { base: 'a/b/c', glob: '!foo', isGlob: false } to equal { base: 'a/b/c', glob: '!foo', isGlob: true } (at isGlob, A has false and B has true)
      + expected - actual

       {
         "base": "a/b/c"
         "glob": "!foo"
      -  "isGlob": false
      +  "isGlob": true
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:76:35)

npm ERR! Test failed.  See above for more details.
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! not ok code 0

Hmm, they all pass locally for me. Anyway, will let @jonschlinkert weigh in

Let's revisit as soon as we get the glob-parent issue resolved. I think that will determine what we do here, and I think we're pretty close

I think, this is a bug in is-glob (3.0 as well as 3.1),
var isGlob = require('is-glob');
console.log(isGlob('a/b/c/!foo'));

gives false.

that's not a glob pattern. ! is a valid path character. To use negation inside of a path, you need to use a valid extglob, which would be a/b/c/!(foo)

then its a fix in glob-base/test.js, right?
Current test,
globBase('a/b/c/!foo').should.eql({ base: 'a/b/c', isGlob: true, glob: '!foo' });

can I change this to,
globBase('a/b/c/!foo').should.eql({ base: 'a/b/c', isGlob: false});

then its a fix in glob-base/test.js, right?

Exactly

can I change this to,

I think that's correct, except it looks like you would also need to add glob: '' (empty string). thanks

But that seems not enough,
 {
         "base": "a/b/c"
      -  "glob": "!foo"
      +  "glob": ""
         "isGlob": false
       }

can you clarify? Did that fail?

Yes, it gave "glob": "!foo" instead of "glob": ""

Hmm, even with the changes from glob-parent mentioned above? I thought you were saying that the following was passing:
globBase('a/b/c/!foo').should.eql({ base: 'a/b/c', isGlob: false});

Is that correct?

I was asking if
globBase('a/b/c/!foo').should.eql({ base: 'a/b/c', isGlob: false}); would be enough. I tried your suggestion and that failed.
$ npm test

><EMAIL_ADDRESS>test /home/pravi/forge/debian/git/pkg-javascript/glob-base
> mocha

  glob-base:
    ✓ typical globs:
    ✓ file extensions:
    1) negation pattern:
    ✓ extglobs:
    ✓ braces: no base:
    ✓ braces in filename:
    ✓ braces in dirname:
    ✓ regex character classes:
    ✓ qmarks:
    ✓ non-glob pattern:

  9 passing (49ms)
  1 failing

  1) glob-base: negation pattern::

      AssertionError: expected { base: 'a/b/c', glob: '!foo', isGlob: false } to equal { base: 'a/b/c', glob: '', isGlob: false } (at glob, A has '!foo' and B has '')
      + expected - actual

       {
         "base": "a/b/c"
      -  "glob": "!foo"
      +  "glob": ""
         "isGlob": false
       }

      at Assertion.fail (node_modules/should/lib/assertion.js:196:17)
      at Assertion.prop.(anonymous function) [as eql] (node_modules/should/lib/assertion.js:81:17)
      at Context.<anonymous> (test.js:76:35)

npm ERR! Test failed.  See above for more details.
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! not ok code 0

Hi in the meantime is-glob is at 4.0.0 hence PR #5 is also relevant.
What could be an estimated timeframe for fixing this ?


support if logic

example:
- for comment in comments
  - if comment.approved
    p {comment.text}

https://github.com/opensourceame/skimpy/pull/14


Fix bug

Fix closeOverflowingTabs closing all the tabs.
This bug probably is produced by the new atom versions. When tabs reach the limit, zentabs will close all the tabs.

Does it resolve #48?

Sorry guys it took my so long. I'm buried under other matters. Thanks @yubaoquan for your contribution! Shipped as 0.8.9

Thank you, @yubaoquan!


Carousels work a little bit slow when "Low Power Mode" is on the iPhone

https://github.com/davidjerleke/embla-carousel/assets/52923458/9fbc7f74-ea84-43ed-813a-1b707bc92d14
Bug is related to

[x] embla-carousel (core package)
[ ] embla-carousel-react
[ ] embla-carousel-vue
[ ] embla-carousel-svelte
[ ] embla-carousel-autoplay
[ ] embla-carousel-auto-height
[ ] embla-carousel-class-names
[ ] embla-carousel-docs (documentation)
[ ] embla-carousel-docs (generator)

Describe the bug

Carousels work a little bit slow when "Low Power Mode" on iPhone. When comparing Embla to other carousels, they work smoother on lower mode than Embla. Is there an option to make performance quicker or is it a bug?
Maybe the problem is not obvious in this video, if you try it yourself it will be

@Sergey98Am thanks for your issue. Please move this to a new discussion to start with. You may move the content in this issue to the discussion.
Thanks!


Please clarify "Permissions to register an app" for Portal Creation

[Enter feedback here]
regarding
[Permissions to register an app]
(https://learn.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal#permissions-required-for-registering-an-app)
in Azure AD are required.
a) please document that only global admin of the three azure roles listed below
Global administrator, Dynamics 365 administrator, or Power Platform administrator
has this permission out of the box
b) the link above does not have any steps how to add them,
so explicit steps how to add should be found behind the link
and/or
c) maybe a suggestion to add another role from
https://learn.microsoft.com/en-us/azure/active-directory/roles/permissions-reference#all-roles
that OOB has "Can create application registrations", e.g. Application Developer
if giving global admin role is no option

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: ff0331e6-6c2b-4728-4c3b-3e141c285dc7
Version Independent ID: 936bdd2f-3b1e-45d9-ed1a-c2c13e45ba46
Content: Roles required for portal administration - Power Apps
Content Source: powerapps-docs/maker/portals/admin/portal-admin-roles.md
Service: powerapps
Sub-service: portals
GitHub Login: @neerajnandwana-msft
Microsoft Alias: nenandw

Thanks for your comment, @CarstenMS. This issue has been assigned to the doc author for review.


WebGL support - Newtonsoft.json

Trying to build for WebGL and encountering this error. Is only Unity iOS/Android supported and not WebGL?
Incidentally, the more recent versions of Unity has added more web/json support - are the external json libraries still necessary?
Assets/PolyToolkit/Internal/api_clients/poly_client/PolyClient.cs(15,8): error CS0246: The type or namespace name `Newtonsoft' could not be found. Are you missing an assembly reference?

Tried checkboxing WebGL support for AOT. Building empty project with just the HelloPoly.unity scene example on 2018.1.2f1. Runs in editor, but browser console errors galore:
HTML1300: Navigation occurred.
localhost:4070 (1,1)
Warning: Unsupported graphics API WebGL 2.0
You can reduce your startup time if you configure your web server to host .unityweb files using gzip compression.
Loading player data from data.unity3d
Initialize engine version: 2018.1.2f1 (a46d718d282d)
Creating WebGL 1.0 context.
Renderer: Microsoft Edge
Vendor:   Microsoft
Version:  OpenGL ES 2.0 (WebGL 1.0)
GLES:     2
WEBGL_compressed_texture_s3tc GL_WEBGL_compressed_texture_s3tc OES_texture_float GL_OES_texture_float OES_texture_float_linear GL_OES_texture_float_linear EXT_texture_filter_anisotropic GL_EXT_texture_filter_anisotropic OES_standard_derivatives GL_OES_standard_derivatives ANGLE_instanced_arrays GL_ANGLE_instanced_arrays OES_element_index_uint GL_OES_element_index_uint WEBGL_debug_renderer_info GL_WEBGL_debug_renderer_info WEBGL_depth_texture GL_WEBGL_depth_texture EXT_frag_depth GL_EXT_frag_depth OES_texture_half_float GL_OES_texture_half_float OES_texture_half_float_linear GL_OES_texture_half_float_linear WEBGL_lose_context GL_WEBGL_lose_context OES_vertex_array_object GL_OES_vertex_array_object WEBGL_draw_buffers GL_WEBGL_draw_buffers EXT_blend_minmax GL_EXT_blend_minmax EXT_shader_texture_lod GL_EXT_shader_texture_lod EXT_color_buffer_half_float GL_EXT_color_buffer_half_float WEBGL_color_buffer_float GL_WEBGL_color_buffer_float
OPENGL LOG: Creating OpenGL ES 2.0 graphics device ; Context level  OpenGL ES 2.0> ; Context handle 1
UnloadTime: 0.200000 ms
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:118: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:148: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Particle/Embers' failed.
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:101: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:94: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Particle/Stars' failed.
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:101: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:97: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Visualizer/Dots' failed.
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:118: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:117: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Particle/Smoke' failed.
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:101: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:112: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Particle/Bubbles' failed.
ERROR: 0:70: 'GL_EXT_gpu_shader4' : extension is not supported
ERROR: 0:118: '&' : bit-wise operator supported in GLSL ES 3.00 and above only
ERROR: 0:107: 'gl_VertexID' : undeclared identifier
Note: Creation of internal variant of shader 'Brush/Particle/Snow' failed.
SystemException: Thread creation failed.
at System.Threading.Thread.Start () [0x00000] in filename unknown>:0
(Filename: currently not available on il2cpp Line: -1)
warning: 2 FS.syncfs operations in flight at once, probably just doing extra work
Requesting asset...
(Filename: ./Runtime/Export/Debug.bindings.h Line: 43)
Exception: Poly Toolkit runtime API not initialized. You must have a PolyToolkitManager in your scene and wait until after its Awake() method runs, or explicitly call PolyApi.Init() before using Poly API methods.
at PolyToolkit.PolyApi.CheckInitialized () [0x00000] in filename unknown>:0
(Filename: currently not available on il2cpp Line: -1)

one more here !!!

Hi,
The Poly Toolkit does not currently have support for WebGL builds. It is supported for mobile platforms (Android/iOS), as well as desktop platforms (Windows/OSX/Linux).
That said, we are investigating to enable WebGL support in the future. In the meantime, you may refer to Poly JavaScript API to target web applications.
Cheers

Hi, I added google poly using this repo
https://github.com/gpvigano/AsImpL
but still, support only obj format
string url = ""https://poly.googleapis.com/downloads/7BMfIK4AqZK/2Sr9i9mOwg7/model.obj";  // add obj file url
objImporter.ImportModelAsync("MyObject", url, importOptions);

I customize something for my project
Here is a demo video link
https://vimeo.com/295358208
0:50 - 1:15
I hope this is helpful.
Thanks

We would super appreciate WebGL being supported!


Labels shifted and overlapping with update 9.5.7

Describe the bug
Update micro charts for Xamarin Forms from 9.5.5 to 9.5.7
Update micro charts forms for Xamarin Forms from 9.5.5 to 9.5.7
All labels on in bar graph shifted to far left.  All labels in charts are overlapping and not aligned
Prior
Which platform and version is this for?
Xamarin Forms <IP_ADDRESS>9  Android/IOS cross platform
Happens on both devices

I am having the same issue on the same new version.
Old:

New:

(I know the old is win10 and the new is android, I just dont have an old android photo)

Yes, I'm seeing this too.  I actually had to roll back to v0.9.5 to get the labels to look right again.

Yes, I'm seeing this too.  I actually had to roll back to v0.9.5 to get the labels to look right again.

I rolled back to v9.5 instead of v9.5.5 because that was what I was using previously and it worked fine.

Yes, we have everyone using the older version that works fine.  This new version is only in my UAT testing environment and didn't pass testing because of this issue.  Hopefully this will be corrected soon.

I'm assuming it has to do with the new way the labels are being made, it got rushed through too quickly due to a user's insistence of it being in the release. I'll have to figure out how to fix this bug.

Appreciate it, this is an awesome package.  It happens.

Just wanted to give you guys an update, I'm starting to free up a little bit so I'm looking to get back into looking at this, I'll see if I can keep the new label setup but worst case I might have to undo it until things are calmer and the library is in a better spot :)

I had to roll back to last version.  Once its corrected, I retest it.  Thanks for the update

seeing that this is a duplicate of #212 I'm going to keep things posted there but this post has things that will be helpful.


POST is not working

This was working fine before the update. Since the update, can't get to make a POST request on my server.
Haven't tried the others, but GET seems to be working fine.

Hi,
Thank you for issue report.
Can you please provide any details? There are log viewer in left nav. If no error log is showed in the log viewer for some reason there is also an article about chrome apps debug: https://github.com/jarrodek/ChromeRestClient/wiki/debugging
Thanks


Updating datashader notebooks to remove InteractiveImage

This PR transfers the works from https://github.com/pyviz/datashader/pull/751 as those topic notebooks have been removed from datashader.

@jlstevens are you going to make these changes or do you want me to take over?

Thanks for merging! I was done with the code updates.
There are also Jim's comments that need addressing but I suspect these notebooks will need another pass anyway in a different PR.

Yep yep!


Change Latte config over to Light theme in-app.

Why
Currently, the latte theme expects the dark theme to be enabled in the Joplin app. Since Latte is a light theme, having to enable dark theme seems counter-intuitive. I feel that refactoring should be done to the latte css file so that we can use latte by enabling the light theme from within the app.
How it renders when light theme enabled in-app

The biggest inconsistency is the difference of colour between the panel and the editor window.

How it should render

Obviously, there are other issues as well and it'd be better to fix them as a QoL fixes.

Acceptance criteria

The PR should follow Catppuccin style guide.

Feel free to fork and PR the changes.

I'm going to work on this one. :)

Thanks Rio! Feel free to make a PR once you finish this.

Got around to this quite late. I've been trying to port latte to Joplin's light mode, but apparently, it just breaks a lot of things and introduces way too many inconsistencies in the UI compared to latte in the dark mode.
Rectifying this seems to involve a lot of monkeypatching and just makes it more difficult to maintain the latte variant compared to the other three dark variants.
I'm going to close this issue since I think a better way to tackle this would be to provide this usercss as a Joplin plugin instead of simple usercss which seems to break quite often. Thanks to those who tried helping out with this issue!


test on python 3.9

Codecov Report

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

@@           Coverage Diff           @@
##           master     #866   +/-   ##
=======================================
  Coverage   82.91%   82.91%
=======================================
  Files          76       76
  Lines        6287     6287
=======================================
  Hits         5213     5213
  Misses       1074     1074

Impacted Files
Coverage Δ

meshio/gmsh/common.py
94.28% <0.00%> (ø)

Continue to review full report at Codecov.

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

Closing in favor of #947.