Add mappings in generated Rust code to eliminate some boilerplates and improve safety

What was supposed to just be a check of the enums to bypass the undefined behaviour raised in #23 ended up in a large refactoring of the Rust codegen with more powerful mappings to eliminate as much manual labour as possible.
Because some mappings can happen in structs, the solution was to hide the C fields and provide public accessors/mutators to interact with them in a Rusty fashion. To help creating new structs from scratch, a MyStructFields (notice the extra "Fields") is generated for each MyStruct. This struct has all its Rusty members public and implements From<MyStructFields> for MyStruct meaning you can do something like:
let example: MyStruct = MyStructField {
   foo: MyEnum::bar,
   // ...
}.into();

The current mappings are:

Enums are mapped from c_int to MyEnum. The conversion makes sure that the enum value is valid and panics if it's not. This is better than the undefined behaviour of current Rust.
StructRefs are mapped from *const MyStruct to Option<&MyStruct>. None is mapped to std::ptr::null().
Durations are mapped from u64/f64 to std::time::Duration.
Strings are mapped from *const c_char to &std::ffi::CStr.

Also, I removed the empty safety comments in the generated code, so we'll need to add a #![allow(clippy::missing_safety_doc)] at the beginning of our ffi.rs files. For some reason, I cannot put this in the generated file.

Those kind of crate-level annotations may only be put at the top of lib.rs.

They can be put on top of any module. The problem seems to be that we use include!() to include the generated file, so it's not exactly at the beginning of a module file.

Can we add a function level annotation to just ignore it?

I added the allow line on every function now. I also added a #[allow(clippy::needless_lifetime)], because it gets just too complicated to handle the lifetime printing.


⚠ Processors has degraded performance

In e3982c6, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 74 ms

Resolved: Processors performance has improved in 8811b63.


Add support for customization in the case of a poor rating.

In an app I am working on, we don't want the "Thank You" alert to be shown in the case of a poor rating. This change allows clients to customize this behavior.

Thank you, @jacobrelkin. I've added some variable to support this case in the latest version. :)


New functions to libdraw

Now we can draw 3D borders
We can change default menu colors.

Signed-off-by: fuchicar<EMAIL_ADDRESS>

Any screenshots? :)

There are part of the upcoming PR...


New "update-on" attribute accepts an arbitrary Redactor callback string to trigger angular model update

Hi,
Could you explain how to use this attribute. I need something like this for showing the stand angualr error message when the text fields is having no content.


Not able to run Presidio PII detection on large character length column and Large dataset using spark

Hi Team,
We are trying to use presidio PII UDF in spark engine for a large dataset. We are trying to cover all the 24 listed Entities. Let says we have a column with more than 6 lakhs characters its taking too much time to complete. 6 lakhs length is just an example her
As actual use case we have column character length varying from 1 lakh to below 1 million.
How can we reduce the run time here is there any optimal way here to achieve this PII detection on large character length text or dataset.
Note: Job goes to hung state.
Kindly respond us with a solution to implement it in our Prod.
Below is our Code sample using spark what we try and packages we download.
we use : Apache Spark 3.2.1,Python version 3.8.10
downloaded packages
#!/bin/bash
pip install presidio-analyzer
pip install presidio-anonymizer
python -m spacy download en_core_web_lg

spark udf call:
analyzer = AnalyzerEngine()
anonymizer = AnonymizerEngine()
broadcasted_analyzer = sc.broadcast(analyzer)
broadcasted_anonymizer = sc.broadcast(anonymizer)

def anonymize_text(text: str) -> str:
    analyzer            = broadcasted_analyzer.value
    anonymizer          = broadcasted_anonymizer.value
    analyzer_results    = analyzer.analyze(text=text,entities=entities,language="en")
    anonymized_results  = anonymizer.anonymize(
        text=text,
        analyzer_results=analyzer_results,
        operators={"DEFAULT": OperatorConfig("replace",{"new_value": "********"})},
    )
    return anonymized_results.text

def anonymize_series(s: pd.Series) -> pd.Series:
    return s.apply(anonymize_text)

# define a the function as pandas UDF
anonymize = pandas_udf(anonymize_series, returnType=StringType())

spark dataframe call:
df=spark.read.load(f{s3path}).withColumn(f"{column_name}", anonymize(col(f"{column_name}")))

If I understand correctly, the issue is that every cell in the dataframe has long text (600K characters long). Correct?
In that case this is similar to #935 where sentence parsing is probably needed. Moreover, once the splitting of the text into smaller texts happens, a suggestion would be to put each small text in a row of its own, and have spark handle parallelism.

omri374
Thanks for the response.
To Rephrase the question more in detail
Use case is like we have a table which are reading it records spark dataframe the table has  column name called 'description'.
where in this column for each record we will have more number of characters so said it will range from 1 lakhs to 2 8 lakhs range. Since we are using the UDF call as mentioned in above sample each record will be processed inside the udf.
Our job goes into hanging stores state somethings we think its because of long text length.
we thought initially its due to en_core_web_lg
So we tried using en_core_web_trf model ran again as well but still it looks same hanging issue is repeated.
Looking forward for your support here.

Thanks for the clarification.
My suggestion would be to split the text, and create more rows. So if you have 1000 rows each with 100K long texts, turn it into a 100000 rows with 1k long texts. Once this is done, you can merge the text back to its original structure.

omri374
Thanks for the suggestion do you have any code sample to add this logic into below presidio UDF code.
It would be very much help helpful if u give us code added  as suggested.
Pyspark Presidio UDF :
analyzer = AnalyzerEngine()
anonymizer = AnonymizerEngine()
broadcasted_analyzer = sc.broadcast(analyzer)
broadcasted_anonymizer = sc.broadcast(anonymizer)
def anonymize_text(text: str) -> str:
analyzer            = broadcasted_analyzer.value
anonymizer          = broadcasted_anonymizer.value
analyzer_results    = analyzer.analyze(text=text,entities=entities,language="en")
anonymized_results  = anonymizer.anonymize(
text=text,
analyzer_results=analyzer_results,
operators={"DEFAULT": OperatorConfig("replace",{"new_value": "********"})},
)
return anonymized_results.text
def anonymize_series(s: pd.Series) -> pd.Series:
return s.apply(anonymize_text)
define a the function as pandas UDF
anonymize = pandas_udf(anonymize_series, returnType=StringType())

Also it looks like Job are going to Hung state for a long time while processing last few tasks in spark.
Is this expected behaviour of Presidio UDF

omri374
Please can u you update on the above request

Hi @prasanthgp93. This is more of a Spark issue than a Presidio issue. I assume (but not sure) that this hangs because of the length of the text. See this comment https://github.com/microsoft/presidio/issues/935#issuecomment-1284997900 with some ideas on how to split the text into chunks.

Hi omri374,
We are using en_core_web_lg spacy model.
Also, we trying to pass a language name in below python UDF call.
analyzer_results = analyzer.analyze(text=text,entities=entities,language="en")
Our records has multi language texts , Not sure why still multi language texts was getting hashed.
Though we are using english model and also we are passing language filter to Analyser engine.
Can you explain us this.
we tried below suggestion still other languages text are getting hashed.
https://microsoft.github.io/presidio/analyzer/languages/
Please let us how to process only one language text PII hashing through Analyser.

Hi, if you know the language for each request a priori, you could load multiple NER models into Presidio, e.g., one for each language.

omri374 Please update on above.
Just want to know do except english for other foreign languages. Do we want to write our own recogniser logics etc or its already available in presidio.
Current presidio model in git support only English language PII detection ? right?

omri374
i'm trying to generate a ".whl" file for presidio_analyzer using pycharm tool. when i tried importing it in my databricks note book i'm getting the below error.
from presidio_analyzer import AnalyzerEngine
Error:
cannot import name 'AnalyzerEngine' from partially initialized module 'presidio_analyzer' (most likely due to a circular import) (/local_disk0/.ephemeral_nfs/envs/pythonEnv-e8ccd353-c21d-489f-82f9-b2f4a6fcff09/lib/python3.9/site-packages/presidio_analyzer/init.py)

@praaanthgp93 how are you generating the wheel file? It seems that the wheel file itself isn't built correctly. Is it working locally (not in Databricks)?

Thanks for the reply here. https://github.com/omri374
I just downloaded your zip file extracted it into Pycharm. Ran analyzer_engine.py.
Please check attachment for the same it ran below message.
Zip file url : https://github.com/microsoft/presidio/archive/refs/heads/main.zip
/usr/bin/python3 /Users/pgunasekaran/Downloads/presidio-main/presidio-analyzer/presidio_analyzer/analyzer_engine.py
Process finished with exit code 0
Quick Question:
Do we have any Enterprise or Paid version for presidio/ spark technical team to collaborate into and implement this PII model in our organisation production environment.

Please reach out to<EMAIL_ADDRESS>and we can take it from there.


When a producer connection is severed by the server, the producer does not attempt to reconnect

Describe the bug
If a kafka server severs a connection to a producer, the producer does not attempt to reconnect and does not emit an event or anything like that to show that it no longer has a connection.
To Reproduce
https://github.com/evanlucas/kafkajs-producer-disconnect-issue
Expected behavior
I would expect to either have a disconnect or end or close event emitted or to automatically reconnect.
Observed behavior
The logs on debug show the following:
{"level":"DEBUG","timestamp":"2020-12-02T14:19:28.634Z","logger":"kafkajs","message":"[Connection] Kafka server has closed connection","broker":"localhost:9092","clientId":"kafkajs"}
{"level":"DEBUG","timestamp":"2020-12-02T14:19:28.634Z","logger":"kafkajs","message":"[Connection] disconnecting...","broker":"localhost:9092","clientId":"kafkajs"}
{"level":"DEBUG","timestamp":"2020-12-02T14:19:28.635Z","logger":"kafkajs","message":"[Connection] disconnected","broker":"localhost:9092","clientId":"kafkajs"}

Nothing else is done.
Environment:

OS: macOS 11.0.1
KafkaJS version: 1.15.0
Kafka version: 2.6.0
NodeJS version: 14.15.1

Additional context
Thanks so much for providing this package. I'm happy to help fix this in whatever way I can.

Can you try producing data to the kafka and see if connection will be recreated i believe if you try to send something to the producer it will recreate socket and retry publish and i would expect that publish should succeed...

Can you try producing data to the kafka and see if connection will be recreated i believe if you try to send something to the producer it will recreate socket and retry publish and i would expect that publish should succeed...

Facing the same issue when updating from 1.13 to 1.15
It worked fine in 1.13. We had a testcase for this scenario, based on the comment from @Nevon here:
https://github.com/tulios/kafkajs/issues/591#issuecomment-565063469
I tested with v1.14, it works fine. Producer reconnects when .sendBatch() is called.

Not sure, but it seems it because of this change:
https://github.com/tulios/kafkajs/commit/65baa29ebc7fec2317fca82701c897f8e77fd0a6#diff-4b448aae597005af012c27f62306bb98fa4dcf9500858c30fd96c526176e3f56
If I comment out call to validateConnectionStatus() it works fine and reconnects.

Following up on this, same issue on 1.15.0

Any progress on this? Still happens on 2.2.4


[New App Request] WinFSP

https://winfsp.dev/rel/

As this is hosted on Github, it would be better as an EverGreen request
From the Nevergreen Requests section (https://github.com/DanGough/Nevergreen#requests):

If the app has a queryable API feed to obtain the latest version, it is better suited for inclusion in Evergreen. It can be hard to find these API feeds, but if for example the app in question is hosted on Github, Evergreen has built-in functions for getting those apps easily.

I'd recommend raising this here: https://github.com/aaronparker/evergreen/issues

Thank you @AScott-WWF
Raised at Evergreen here.
https://github.com/aaronparker/evergreen/issues/740


verbose isn't repsonsive with jasmine

I am using protractor version:  4.0.0
and Karma-jasmine version: 1.0.2
even though it's set to true:

jasmineNodeOpts: {
isVerbose: true,
},

Similar issue due to the jasmine2 upgrade. Please see: https://github.com/angular/protractor/issues/1716


Spectral function simulation class

Opening this PR so we can discuss and see it in the v1.0 milestone.

Closing this, since we instead work on #293


Weighted band scales?

https://observablehq.com/d/29c9777318a8d5d5 shows how we could extend d3.scaleBand with a .weights() method allowing to set variable band widths (instead of uniform).

I might be missing something though.
Note that I fiddled with the code quite a bit so I'm not sure it's still valid for uniform band scales, but if we want to integrate this I would rewrite that part.
[EDITED] changed widths to weights, which is an accessor.

Related : weighted quantiles @ https://github.com/d3/d3-array/issues/47


Many exceptions since update to 0.18

this is only a grep for exception, if you need more of the thread-dump, please let me know.
speedtest-tracker  | [2024-03-01 13:07:59] production.ERROR: Job is incomplete class: {"__PHP_Incomplete_Class_Name":"App\\Jobs\\ExecSpeedtest","speedtest":{"ookla_server_id":"54504"},"scheduled":true} {"exception":"[object] (Exception(code: 0): Job is incomplete class: {\"__PHP_Incomplete_Class_Name\":\"App\\\\Jobs\\\\ExecSpeedtest\",\"speedtest\":{\"ookla_server_id\":\"54504\"},\"scheduled\":true} at /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php:117)
speedtest-tracker  | [2024-03-01 13:08:00] production.ERROR: Job is incomplete class: {"__PHP_Incomplete_Class_Name":"App\\Jobs\\ExecSpeedtest","speedtest":{"ookla_server_id":"54504"},"scheduled":true} {"exception":"[object] (Exception(code: 0): Job is incomplete class: {\"__PHP_Incomplete_Class_Name\":\"App\\\\Jobs\\\\ExecSpeedtest\",\"speedtest\":{\"ookla_server_id\":\"54504\"},\"scheduled\":true} at /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php:117)
speedtest-tracker  | [2024-03-01 13:09:37] production.ERROR: Undefined array key "name" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) {"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined array key \"name\" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)
speedtest-tracker  | [previous exception] [object] (ErrorException(code: 0): Undefined array key \"name\" at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)
speedtest-tracker  | [2024-03-01 13:09:38] production.ERROR: Undefined array key "name" (View: /var/www/html/resources/views/emails/speedtest-threshold.blade.php) {"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined array key \"name\" (View: /var/www/html/resources/views/emails/speedtest-threshold.blade.php) at /var/www/html/storage/framework/views/0cec695d4f8bfd557aa432655bf6a626.php:29)
speedtest-tracker  | [previous exception] [object] (ErrorException(code: 0): Undefined array key \"name\" at /var/www/html/storage/framework/views/0cec695d4f8bfd557aa432655bf6a626.php:29)
speedtest-tracker  | [2024-03-01 13:09:58] production.ERROR: Undefined array key "name" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) {"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined array key \"name\" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)
speedtest-tracker  | [previous exception] [object] (ErrorException(code: 0): Undefined array key \"name\" at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)

I think this is similar to the discussion comment in v0.18.0, can you upgrade to v0.18.1 which was just released and let me know if the issue persists?
I added additional logging which might help us narrow this down.

Also can you let me know what notification channels you have setup? I'm assuming just Telegram and Mail?

In 0.18.1 the same:
I use: Mail, Telegram and DB. But mail & dB only on Thresholds but telegram for every test.
ˋˋˋ
speedtest-tracker  | [2024-03-01 13:50:40] production.ERROR: Undefined array key "name" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) {"exception":"[object] (Illuminate\View\ViewException(code: 0): Undefined array key "name" (View: /var/www/html/resources/views/telegram/speedtest-threshold.blade.php) at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)
speedtest-tracker  | [stacktrace]
speedtest-tracker  | #0 /var/www/html/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php(58): Illuminate\View\Engines\CompilerEngine->handleViewException()
speedtest-tracker  | #1 /var/www/html/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(60): Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine->handleViewException()
speedtest-tracker  | #2 /var/www/html/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php(22): Illuminate\View\Engines\PhpEngine->evaluatePath()
speedtest-tracker  | #3 /var/www/html/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(72): Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine->evaluatePath()
speedtest-tracker  | #4 /var/www/html/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php(10): Illuminate\View\Engines\CompilerEngine->get()
speedtest-tracker  | #5 /var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php(207): Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine->get()
speedtest-tracker  | #6 /var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php(190): Illuminate\View\View->getContents()
speedtest-tracker  | #7 /var/www/html/vendor/laravel/framework/src/Illuminate/View/View.php(159): Illuminate\View\View->renderContents()
speedtest-tracker  | #8 /var/www/html/app/Listeners/Telegram/SendSpeedtestThresholdNotification.php(69): Illuminate\View\View->render()
speedtest-tracker  | #9 /var/www/html/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php(478): App\Listeners\Telegram\SendSpeedtestThresholdNotification->handle()
speedtest-tracker  | #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php(286): Illuminate\Events\Dispatcher->Illuminate\Events\{closure}()
speedtest-tracker  | #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php(266): Illuminate\Events\Dispatcher->invokeListeners()
speedtest-tracker  | #12 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(433): Illuminate\Events\Dispatcher->dispatch()
speedtest-tracker  | #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Events/Dispatchable.php(14): event()
speedtest-tracker  | #14 /var/www/html/app/Jobs/Speedtests/ExecuteOoklaSpeedtest.php(73): App\Events\SpeedtestCompleted::dispatch()
speedtest-tracker  | #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Jobs\Speedtests\ExecuteOoklaSpeedtest->handle()
speedtest-tracker  | #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
speedtest-tracker  | #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
speedtest-tracker  | #18 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
speedtest-tracker  | #19 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\Container\BoundMethod::call()
speedtest-tracker  | #20 /var/www/html/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(128): Illuminate\Container\Container->call()
speedtest-tracker  | #21 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}()
speedtest-tracker  | #22 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
speedtest-tracker  | #23 /var/www/html/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(132): Illuminate\Pipeline\Pipeline->then()
speedtest-tracker  | #24 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(123): Illuminate\Bus\Dispatcher->dispatchNow()
speedtest-tracker  | #25 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(144): Illuminate\Queue\CallQueuedHandler->Illuminate\Queue\{closure}()
speedtest-tracker  | #26 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(119): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
speedtest-tracker  | #27 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(122): Illuminate\Pipeline\Pipeline->then()
speedtest-tracker  | #28 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(70): Illuminate\Queue\CallQueuedHandler->dispatchThroughMiddleware()
speedtest-tracker  | #29 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php(102): Illuminate\Queue\CallQueuedHandler->call()
speedtest-tracker  | #30 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(439): Illuminate\Queue\Jobs\Job->fire()
speedtest-tracker  | #31 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(389): Illuminate\Queue\Worker->process()
speedtest-tracker  | #32 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(176): Illuminate\Queue\Worker->runJob()
speedtest-tracker  | #33 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(137): Illuminate\Queue\Worker->daemon()
speedtest-tracker  | #34 /var/www/html/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(120): Illuminate\Queue\Console\WorkCommand->runWorker()
speedtest-tracker  | #35 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Queue\Console\WorkCommand->handle()
speedtest-tracker  | #36 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
speedtest-tracker  | #37 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
speedtest-tracker  | #38 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
speedtest-tracker  | #39 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\Container\BoundMethod::call()
speedtest-tracker  | #40 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
speedtest-tracker  | #41 /var/www/html/vendor/symfony/console/Command/Command.php(326): Illuminate\Console\Command->execute()
speedtest-tracker  | #42 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
speedtest-tracker  | #43 /var/www/html/vendor/symfony/console/Application.php(1096): Illuminate\Console\Command->run()
speedtest-tracker  | #44 /var/www/html/vendor/symfony/console/Application.php(324): Symfony\Component\Console\Application->doRunCommand()
speedtest-tracker  | #45 /var/www/html/vendor/symfony/console/Application.php(175): Symfony\Component\Console\Application->doRun()
speedtest-tracker  | #46 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\Component\Console\Application->run()
speedtest-tracker  | #47 /var/www/html/artisan(35): Illuminate\Foundation\Console\Kernel->handle()
speedtest-tracker  | #48 {main}
speedtest-tracker  |
speedtest-tracker  | [previous exception] [object] (ErrorException(code: 0): Undefined array key "name" at /var/www/html/storage/framework/views/c80a1e79545e69b9bbf8d40ce8d6eeaf.php:6)
ˋˋˋ

Addon Info: the telegram message was send 3 times for the same test, I think that’s a follow up error because of the exception…

@AleksCee what are your thresholds set to? I've got the following and can't replicate the error:

DB: threshold only

Mail: threshold only

Telegram: every run only

Threshold's I have download, upload and ping all set to trigger.

Yes that’s my config to. The mail is one email, the telegram receiver is a group starts with a -

If I understand the code right in SendSpeedtestThresholdNotification.php You return an empty array if no threshold occurred  so in the $failed array is a list of empty arrays if there was no threshold?
so the count gets not false here? Because I don’t have a threshold break, so I should not render the view at all, or?
    57          if (! count($failed)) {
    58              Log::warning('Failed Telegram thresholds not found, won\'t send notification.');
    59
    60              return;
    61          }
    62
    63          $content = view('telegram.speedtest-threshold', [
    64              'id' => $event->result->id,
    65              'service' => Str::title($event->result->service),
    66              'serverName' => $event->result->server_name,
    67              'serverId' => $event->result->server_id,
    68              'metrics' => $failed,
    69          ])->render();

I have done a little test:
php -r ' $failed = []; array_push($failed,[]); var_dump(!count($failed));'
bool(false)
php -r ' $failed = []; /array_push($failed,[]);/ var_dump(!count($failed));'
bool(true)
so if an array in array was count the result is false in the if check and then the name key is missed.

So lines 57-61 should prevent an empty array from continuing the process. Basically a count of 0 = false which causes the process to end.
What's odd is I've replicated your settings locally and on my Synology NAS running v0.18.1 and haven't been able to produce the error.

Got it, the nested arrays while empty are being counted which shouldn't happen. Working on the fix now...

I think it’s not count 0 in this case if [] returned an push to the array see at mein Mini Test before. [[]] is not 0
php -r ' $failed = []; array_push($failed,[]); var_dump(count($failed));'
int(1)
80      protected function absoluteDownloadThreshold(SpeedtestCompleted $event, ThresholdSettings $thresholdSettings): array
    81      {
    82          if (! absoluteDownloadThresholdFailed($thresholdSettings->absolute_download, $event->result->download)) {
    83              return [];
    84          }
    85
    86          return [
    87              'name' => 'Download',
    88              'threshold' => $thresholdSettings->absolute_download.' Mbps',
    89              'value' => Number::toBitRate(bits: $event->result->download_bits, precision: 2),
    90          ];
    91      }
    92

Sorry i was to slow with my test showing… only tipping on iPad right now an use a ssh terminal on iPad to test on the nas… but I think you got it now while I’m writing the laste explanation ;-) sorry for my speed with iPad tipping.

Also have exceptions after updated to 0.18.1 :

I'm taking an evening off from code for beers. Should get this fixed this weekend though.

I'm taking an evening off from code for beers. Should get this fixed this weekend though.

Also found all threshold notification (mail, telegram, discord) not working from updated to 0.18.0 version ...

@alexjustesen
Hi, has 0.18.2 been released which solves these issues?
Thanks in advance

@alexjustesen
Hi, has 0.18.2 been released which solves these issues?
Thanks in advance

Not now, the exceptions comes in a special case. You can try to go around this, if you turn off threshold still the fix comes after the beer-timeout (sorry I getting funny) from @alexjustesen
Everything is working only no threshold, and in case of a notification many exceptions. Because of the exceptions the notification can send up to three times.
But on my observation the tests are not impaired.


Adding HTTP Status code 451 for Unavailable For Legal Reasons (RFC 7725) in apidefs.h.in as well

I had added this enum in HttpStatus.h, but Leif pointed out another place where duplicate is maintained. Adding it here as well.
See https://github.com/apache/trafficserver/commit/90496bffab80389d9c91e985e0ae28c6f9b3ddba for ref.

Looks like I ended up bringing additional commits in this PR. Will create a cleaner one


Option to redirect frontend to external host

With haproxy, I'm able to create redirects. For example, see the following snipplet:
redirect prefix http://www.redirectotthis.com code 301 if {hdr(host) -i requestedsite.com}
If someone is requesting requestedsite.com, he gets redirected to an externally hosted site: redirecttothis.com. It would be great if traefik also supports this. So instead of providing a backend in the frontend, there could be an option redirect = "http://redirecttothis.com". What do you think?

Hey @rogierlommers, thank for your proposal :) How would you configure it in the traefik.toml configuration file (as an example)?

Well, not exactly sure, because it would be great to be backwards compatible. Something like this?
  [frontends.redirect1]
  backend = redirect
    [frontends.frontend1.routes.test_1]
    rule = "redirect"
    value = "http://page-to-be-redirected-to.com"```

/bump A non-proxying redirect would be fantastic!  At this very moment I'm being forced to use HAProxy with consul-template to do this, but I am about to use Traefik everywhere else.

I find this feature very useful !
In my case I have some old sub-domains that I want to redirect to other ones.

Sounds like a nice feature to have ... does anyone plan to work on this?

It's on my todo list; but I'm kind of running out of time...
Op di 13 sep. 2016 om 16:11 schreef Ed Robinson<EMAIL_ADDRESS>
Sounds like a nice feature to have ... does anyone plan to work on this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/containous/traefik/issues/119#issuecomment-246694037,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADueO5-Z4OAGePrEI9QEWZ7jDtXrLyW-ks5qpq8fgaJpZM4GlBsC
.

Is this still on your todo list? This is a nice feature that I could definitely use.

Closed by #178 (redirect by entrypoint)


Forbidden attributes error

It was working before and now doesn't work. it shows this error. Why ?
ActiveModel::ForbiddenAttributesError in CamaleonCms::Admin::SessionsController#login_post
def sanitize_for_mass_assignment(attributes)         if attributes.respond_to?(:permitted?)           _**raise ActiveModel::ForbiddenAttributesError if !attributes.permitted?**_           attributes.to_h         else           attributes
activemodel (5.0.0) lib/active_model/forbidden_attributes_protection.rb:21:in sanitize_for_mass_assignment' activemodel (5.0.0) lib/active_model/attribute_assignment.rb:33:in assign_attributes'
activerecord (5.0.0) lib/active_record/core.rb:319:in initialize' activerecord (5.0.0) lib/active_record/inheritance.rb:65:in new'
activerecord (5.0.0) lib/active_record/inheritance.rb:65:in new' activerecord (5.0.0) lib/active_record/relation.rb:125:in block in new'
activerecord (5.0.0) lib/active_record/relation.rb:351:in scoping' activerecord (5.0.0) lib/active_record/relation.rb:125:in new'
camaleon_cms (2.3.0) app/controllers/camaleon_cms/admin/sessions_controller.rb:45:in `login_post'

When put email in login box this error appears. But using username works

Fixed!
Tet using git version:
gem "camaleon_cms", github: 'owen2345/camaleon-cms'


Question: Why am I getting the message "you need to assign an actor to your user before you can do this", when trying to loot a monster?

Question: Why am I getting the message "you need to assign an actor to your user before you can do this", when trying to loot a monster?
When I select a monster to loot (which has already been converted to lootable) I can see the items to be looted (see attached image), but I can not loot them because no character (actor) appears in the view to the right, to which the loot can be assigned.
I am confused why my character does not appear in the window and how to fix this.

To Reproduce
Steps to reproduce the behavior:

Convert a dead monster to lootable
Click on the monster
Go to the tab for “Loot”
Notice that no character shows up in the window under “biography”, where the character is to be selected, who would receive the loot.
Notice the error message, “you need to assign an actor to your user before you can do this",

Expected behavior
I would expect to see a character appear, because I created the actor that I am using to loot.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Microsoft Windows 10 Home
Browser Firefox
Version: 97.0 (64 bit)

Additional context
none

My User ID has the permission of "owner" to the actor called "Test PC" and the token has data linked to the actor. So I am not sure what I have to do to assign an actor to my User-ID other than what I have already done

I cannot get the LootSheet to recognize actors on the active map.
As you can see in the screen shot, only two actors are being recognized. It is the same issue regardless of whether I am dealing with a monster that is being looted or a merchant.
Is anyone else having the same issue?
It appears to be a bug.

In discord you mentioned there should 5 actors you expect to see.
Do all 5 actors have this user<--> actor assignment?
In other words, are there 5 users (players and GM) that have picked an actor they have owner permissions on
in the left bottom user configuration?

There are three players (users).
However, one of those three users is a user-ID created by me (the DM) for
testing purposes. (The token that I used for testing is called "Test PC",
which has no token image.)
In the Loot sheet screen shot there are only 2 actors showing as having access
to either loot or to trade with the merchant.
There should be 3 actors showing up. One test actor for the DM and one actor
for each of the two other users.
One user is missing entirely. Neither of his two actors show up in the screen
shot as having any access and in game testing has demonstrated that he does
not have any access.
The user that shows up in the screen shot does have access. (One of his two
actors shows up in the loot sheet screen shot.)
Bill Grasham
On Tuesday, February 22, 2022 2:07 AM, "Daniel Böttner"
@.***> wrote:

In discord you mentioned there should 5 actors you expect to see.
Do all 5 actors have this user<--> actor assignment?
In other words, are there 5 users (players and GM) that have picked an actor
they have owner permissions on
in the left bottom user configuration?
—
Reply to this email directly, [view it on
GitHub](https://github.com/jopeek/fvtt-loot-sheet-
npc-5e/issues/303#issuecomment-1047525243), or
[unsubscribe](https://github.com/notifications/unsubscribe-
auth/AX3V7NLBR6S7KWONB4GOKB3U4M74NANCNFSM5O5COJKQ).
Triage notifications on the go with GitHub Mobile for
[iOS](https://apps.apple.com/app/apple-store/id1477376905?ct=notification-
email&mt=8&pt=524675) or
[Android](https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-
email%26utm_medium%3Demail%26utm_source%3Dgithub).
You are receiving this because you authored the
thread.Message
ID: @.***>

So I was able to test out the changes that you recommended below and it
worked.
Now one of the two actors belonging to each user-id is able to loot a dead NPC
and is able to buy and sell with the merchant.
Thank you very much for your help with this issue.
Bill Grasham
On Wednesday, February 23, 2022 6:50 AM, "Daniel Böttner"
@.***> wrote:

Did you and/or your players check if you did what is described
in these links ?

https://foundryvtt.com/article/player-orientation

https://foundryvtt.com/article/users

Your last answer came via mail, so maybe these weren't really visible.

In the Loot sheet screen shot there are only 2 actors showing as having
access

to either loot or to trade with the merchant.

Likely one player and your GM character. If you hover the mouse over the
visible players you should see which actor controlled by which player.

There should be 3 actors showing up. One test actor for the DM and one
actor

for each of the two other users.

So only one is missing? Likely the missing player has not assigned a
character.

One user is missing entirely. Neither of his two actors show up in the
screen

Further fuels my suspicion. Ownership on an actor is not the same as playing
as this actor.

The user that shows up in the screen shot does have access. (One of his two

actors shows up in the loot sheet screen shot.)

The one actor that he currently assigned to his user.
—
Reply to this email directly, [view it on
GitHub](https://github.com/jopeek/fvtt-loot-sheet-
npc-5e/issues/303#issuecomment-1048749131), or
[unsubscribe](https://github.com/notifications/unsubscribe-
auth/AX3V7NIQNBZYSMB7SDJNBPLU4TJX7ANCNFSM5O5COJKQ).
Triage notifications on the go with GitHub Mobile for
[iOS](https://apps.apple.com/app/apple-store/id1477376905?ct=notification-
email&mt=8&pt=524675) or
[Android](https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-
email%26utm_medium%3Demail%26utm_source%3Dgithub).
You are receiving this because you authored the
thread.Message
ID: @.***>

I think it might be because the players did not have permission to change settings...
if you ever come to test that theory, feel free to let me know.


Modifying Existing Code Recipes to incorporate DOM versioning changes

Description
This PR updates the existing recipes based on the InDesign DOM versioning changes which were shipped in InDesign version 18.4.

The existing recipes do not take into account the DOM versioning changes. Modifying the existing recipes to work fine with InDesign 18.4 onwards.
How Has This Been Tested?
The updated recipes have been tested with InDesign version 18.4 and 18.5. All the script snippets are working as expected now. Have also built the repo locally to verify the changes.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Revise the code on this page as well https://developer-stage.adobe.com/indesign/uxp/resources/migration-guides/extendscript/


Rewrite problematic code

Fixes #60. Based on Davipb/utf8-utf16-converter@656b03a6c696b021cce045f1b22634b6b93b2bb2.

Thanks a lot @lemenkov !


Gold member form

Fixes #4711

@dojutsu-user hmm, looks like there are changes that aren't related to this PR but #4693.

@stsewd I am very sorry. I made some mistakes and mix both the PRs. I will try my best to not make these silly mistakes again.

@stsewd I am closing this pull request, will make a new PR with the fixes soon


workbox 7.3.0 cdn not working

https://storage.googleapis.com/workbox-cdn/releases/7.3.0/workbox-sw.js is not loading. Any idea?

Thanks, it is fixed now.


cap message queue to 100 items, add jitter and tune backoff strategy, set timestamp on client

Team:
This is the final proposed update before releasing beginning to roll out queueing to our broader customer base. It addresses the only issue encountered by our largest beta partner (who is monitoring its behavior in production across millions of browsers): when the device is offline for a very long time, the queue can grow large and use a lot of memory. There are valid usage patterns for that customer's users where this can become an issue.
The associated upstream PR is here: https://github.com/segmentio/localstorage-retry/pull/8
I followed the recommendations in our new analytics-foo doc, with the exception of setting max retries over the suggestion of 10. Given the nature of the platform, I'm more comfortable front loading a bunch of retries with ^2 exp backoff (+/- jitter) for the first hour and then moving to once an hour for the remainder of a day. The logic for how I arrived at the backoff settings that accomplish this is inline in the comment.
Reasoning for 100 max items: localstorage is a shared resource capped at 5 or 10mb depending on the browser. With per-event max @ 32kb, 100 max items is 3.2M. Most events aren't that large, but that's about as large as I'm comfortable growing. Anything higher than that also seems inappropriate for the case when we swap to in-memory due to a quota exceeded error. This means that in certain cases when the device is offline for a long time, we could drop events, but I'm comfortable with those parameters (and they match what we do in our mobile SDKs and server libraries where the max queue size is upheld irrespective of whether the flush has succeeded).
Finally, the biggest change to be attentive to in this case is that I have added client-side timestamp marking. Given the API is already adept at timestamp skew correction across all platforms with client-set timestamps (eg. mobile and server), I'm comfortable with this change. The reason I think this is an improvement is the event time (rather than reception/processing time) will be reflected in downstream tools that support it. We are overwriting sentAt on each attempted flush, which the API will use for skew detection.
Looking forward to your thoughts!

turns out the timestamp is set by facade and has been for a long time; no change there!

@calvinfo suggested we go with no jitter to start; that's admittedly overkill on a per-client basis given the expected message volume of each client :)

Can we make sure we have @tsholmes approve as well?


Matching version scheme

Is there a specific reason why the project uses a different versioning scheme for GitHub releases, while it uses SemVer for npm? In my opinion, these two should match.
I'm asking because I noticed that David DM reports an outdated version of highlight.js when sticking to the GitHub tags in package.json:
"highlight.js": "isagalaev/highlight.js#8.7"

Might not be a huge issue, more of an oddity.

We use X.Y for historic reasons and X.Y.Z for npm package because npm have strict rules for package.json fields.
@isagalaev IFAIR you have reasonable answer why we don't use SemVer for build?

There was a discussion some time ago about semver in general in #182, here's the relevant bit from me:

The [semver] spec does make perfect sense but not enough for me to care, sorry :-). Though our process is compatible with what semver is proposing, we never distinguished between "fixing bugs" and "adding compatible functionality", as it doesn't add much value. The only thing that downstream usually cares about is whether an update is supposed to break things or not (and they still have to test it in any case).

However by now I'm probably +0 for actually changing our versioning to x.y.z if only for the sole reason of decreasing confusion amongst the JS ecosystem. And it probably won't cost us anything.
@Sannis, @sourrust what's your opinion on that?

I'm also have neitral opinion about this in case of highlight.js, but looking on how many third-party bundles append .0 to original version (and also we do for package.json) I think we can do that.

Maybe we should not break current releases scheme and use patch version to fix critical bugs in major/minor releases. It looks compatible with SemVer.

Maybe we should not break current releases scheme and use patch version to fix critical bugs in major/minor releases.

This had already been done in 6.0.1 and 7.0.1. The only difference is that we always omitted the third part instead of using .0.
Anyway, I documented the three-part version for the release process now and I believe everything should go smooth, including both of our CDNs.


Tournament games

https://github.com/FAForever/server/issues/675

Thx for the review should have addressed most of it

Will look at this again soon


fix: Components in uninitialized state can now be safely removed

Description
Correctly handle removal of components that are still in uninitialized state (which can happen when a component is added to a detached parent). Added assertion checks to guard against component tree corruption when removing a component from the wrong parent.
Checklist

[x] The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
[x] I have read the Contributor Guide and followed the process outlined for submitting PRs.
[x] I have updated/added tests for ALL new/updated/fixed functionality.
[x] I have updated/added relevant documentation in docs and added dartdoc comments with ///.
[-] I have updated/added relevant examples in examples.

Breaking Change

[-] Yes, this is a breaking change.
[x] No, this is not a breaking change.

Related Issues
WIP for #1549

Is it also fixes #1532 ?
If it is, then it should as a part of the related issue.


Modified docs on source.jl

Added documentation to source.jl on source wavelet generation for time-domain finite differencing modelling.
The conventions I am following are here:
https://docs.google.com/presentation/d/1yjpujeVhIBEzORcHakquudD2mrVB9T1XCtJTYSvCZmA/edit#slide=id.gda20282cfd_1_91
We should add and modify the conventions to make them fit our likings. Nothing is fixed.

Thanks for the presentation Breno! It will help!

Nice! Can you add Prof Sacchi as one of the collaborators to this repo?

Done! I sent the invitation to him.
Joaquín Acedo
PhD Student in Geophysics
Signal Analysis and Imaging Group (SAIG)
University of Alberta
On Wed, Jan 26, 2022 at 3:36 PM Breno Bahia @.***>
wrote:

Nice! Can you add Prof Sacchi as one of the collaborators to this repo?
—
Reply to this email directly, view it on GitHub
https://github.com/joaquin-17/SeisAcoustic.jl/pull/2#issuecomment-1022666720,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APOYSGZHVHXJJFWZCA5T42LUYBZODANCNFSM5M4D3RNA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you modified the open/close state.Message
ID: @.***>


[BUG] Not able to select the black color in color palette in drawing

Describe the bug
Unable to select the black color in color palette.
To Reproduce

Go to drawing
Select color palette and change color
Now select black color
see that we cannot draw with black color

Expected behavior
Able to select black color and draw with it.
Devices and Versions
Your Rocket.Chat.Android version: (2.1.0)
Your Rocket.Chat Server version: (0.63.1-develop)

Mobile device model and OS version: (Redmi note 5- Android 8.0.1)

thanks for mentioning this issue, will be fixed in #1961

Closed by #1961


Automated cherry pick of #1298: baremetal: change ipmi user password

Cherry pick of #1298 on release/2.8.0.
#1298: baremetal: change ipmi user password

/lgtm
/approve


"Some" images are not rewritten

Hello there ...
First of all, thanks for your plugin. We are using it on our site for many months and are generally happy.
I have noticed a glitch of which I am not sure it is related to the cloudflare image resizing plugin or to something else.
This is the environment:
Related Plugins:

Plugin Version 1.5.4
WordPress 6.4.3 with Hello theme version 3.0.1 including Hello child theme version 1.0.1
Cloudflare Plugin Version 4.12.4
Elementor and Elementor Pro  3.19.2
Readmedia Library Plugin version 4.22.7
FooGallery (Premium) Version 2.4.7

Cloudflare:
Cloudflare Business plan including APO, also using the new "transform" feature, that Cloudflare introduced recently.
The effect I am seeing:
When adding a Wordpress gallery, using the standard WP gallery 'feature', all images ARE properly rewrtitten to the CDN. Example:
https://www.ikigaido.ch/angebot/bonsai-karate/
When adding a FooGallery, the images are NOT rewritten to the CDN. Example: https://www.ikigaido.ch/galerie/karate/schweizermeisterschaft-2023-in-sursee/
When adding single images using Elementor, the image is SOMETIMES rewritten to the CDN. Working example: Front page https://www.ikigaido.ch with the lady in the karate suit. Non-Working example: https://www.ikigaido.ch/angebot/leistungssport-ftem-karate/ the first info graphics "FTEM Karate". Same page, the four portraits images of our squad are also not rwritten.
I am pulling my hair out in finding a pattern here. It seems obvious, that FooGallery is not supported. But why individual images are sometimes rewritten and sometimes not, I have no clue. Could it be related to the Cloudflare change related to the new transform plan?
Maybe you could have a look - I am happy to answer questions and provide more data.
Cheers
Stephan

Ok, I just discovered your article about the Worker solution. I will look into it.

Hello,
I highly recommend using the working solution instead especially when using page builders: https://mecanik.dev/en/posts/cloudflare-image-resizing-for-wordpress/
Br,
Ganesh

Hello,
Thank you for the kind words. Indeed using the Plugin vs Worker has some ups and downs, which is specified in my original post.
The Worker can accommodate to any site/plugin, so that's the preferred option.
For future reference: Cloudflare renamed Image Resizing to Transform.


istioctl doesn't seem to respect disablePolicyChecks

Bug description
When using istioctl manifest, values.global.disablePolicyChecks doesn't seem to have an effect
Expected behavior
Setting disablePolicyChecks: false configures the mesh data properly in the istio ConfigMap
Steps to reproduce the bug

Create IstioControlPlane config config.yaml like

apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
spec:
  values:
    global:
      disablePolicyChecks: false
      policyCheckFailOpen: true  # this is still respected

istioctl manifest generate -f config.yaml | grep disablePolicyChecks:
disablePolicyChecks is true

Looking at https://github.com/istio/istio/blob/1.4.0/install/kubernetes/helm/istio/templates/configmap.yaml suggests that maybe values.mixer.policy.enabled needs to be set to true, but that didn't seem to help
Version
1.4.0
How was Istio installed?
istioctl

The issue is coming from installer, https://github.com/istio/installer/blob/master/istio-control/istio-discovery/templates/configmap.yaml#L90, the configmap value depends on values.pilot.policy.enabled instead of values.global.disablePolicyChecks although we have disablePolicyChecks defined in global. I may need to think what's the best way to reduce the confusion here.
For now you can use this config as a workaround:
apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
spec:
  values:
    pilot:
      policy:
        enabled: true
    global:
      policyCheckFailOpen: true

Ah ok, thank you for the workaround!

The issue is coming from installer, https://github.com/istio/installer/blob/master/istio-control/istio-discovery/templates/configmap.yaml#L90, the configmap value depends on values.pilot.policy.enabled instead of values.global.disablePolicyChecks although we have disablePolicyChecks defined in global. I may need to think what's the best way to reduce the confusion here.
For now you can use this config as a workaround:
apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
spec:
  values:
    pilot:
      policy:
        enabled: true
    global:
      policyCheckFailOpen: true

I tried your workaround, but I get an error when applying it :
$ k apply -n istio-system -f istio1-4_fix.yml
error: unable to recognize "istio1-4_fix.yml": no matches for kind "IstioControlPlane" in version "install.istio.io/v1alpha2"

Any ideas ? ( I tried on differents namespaces although)
$ ./istioctl version
client version: 1.4.0
control plane version: 1.4.0
data plane version: 1.4.0 (2 proxies)

The IstioControlPlane CRD would need to be added to the cluster for that to work. Need to either use istioctl manifest apply -f as in https://istio.io/docs/setup/install/istioctl/ or install the in-cluster operator if you want to use kubectl https://istio.io/docs/setup/install/standalone-operator/

I think you can use the following command to disable policy check when using the istioctl.
istioctl manifest apply --set values.pilot.policy.enabled=true --set values.global.policyCheckFailOpen=true

@richardwxn any progress on https://github.com/istio/installer/pull/567?

@howardjohn the test is still failing for the demo which blocks the merge and I spent some time on it but no luck. I may come back to it next week.

Fixed by https://github.com/istio/installer/pull/622 which will be in 1.4.3. Thanks everyone!


set_name doesn't work if used with a name of queue_freed scene

I can select a node in my scene and delete it, but instancing and adding a new scene and changing its name to be the same as the deleted one's doesn't work. In other words, the engine doesn't permit using the name of the old node even though the node doesn't exist anymore.
func loadscene(scene):
	var nn = get_node("NamedNode")
	nn.queue_free()
	var inst = scene.instance()
	add_child(inst)
	print("instance name before setting: ", inst.get_name())
	inst.set_name("NamedNode")
	print("instance name after setting: ", inst.get_name())

Produces:
instance name before setting: Node2D
instance name after setting: @Node2D5

I'm not sure I'd call this a bug, though the behavior can be a bit confusing.  queue_free doesn't actually remove the node from the scene yet.  It tells the engine to remove the node from the tree when it's safe to do so.  So it's still in the tree at this point, but flagged for removal.  You could try calling free() instead, but depending on your situation, it might not be safe to do this - for instance, if the node that's executing this function is within the scene being freed.  You could also rename the old scene to some temporary name, so that the name you want is available.

I confirm that renaming the node to be exchanged before calling queue_free() appears to work. This issue can be closed.


playground: Use Value instead of Ada

implements #763

This got merged in https://github.com/input-output-hk/plutus/pull/789


Configure to use named branch (update branch if exists)

If you use Dependabot to keep your Github Actions workflows updated, you probably get more than one pull request when doing maintenance.
This can in some cases produce more than one pull request on the source repositories, which we probably don't want?

fixed in #20


Transitions between visualizers

When changing nodes that change visualizers, we should support transitions to the next visualizer

No longer relevant due to eager loading the visualizers for faster load time


Document: Implement JSON serialization

Can we have the Document class implement the JsonSerializable interface?
I'd love to have that for easier JSON response creation in Flarum.
That would also require changing the version requirement to PHP 5.4.

Yep, can you send a PR?

Will do.


Banner blocks view of navbar

Hi,
Is there a way to put the banner above the navbar?
I tried changing the position of the navbar (top:100px). However, then if I were to close the smart banner, the navbar remains in the same position and blocks other elements on the page. Am I supposed to use an event listener so that when the smart banner is closed I move the navbar back to the top (top:0px) ?
Do you guys provide a better alternative?
Thanks!

Hi @pistachiosgreen!
Do you have a live example to take a look at?  The banner should push your navigation bar down in most cases, but we have seen instances where hosted CSS causes issues that prevents this.
Alternatively, as you suggested there are a set of events that can be listened to, so that site adjustments can be made: https://github.com/BranchMetrics/web-branch-deep-linking#addlistenerevent-listener
Hope this helps!

I do, but not sure if I'm allowed to post up the live site yet. Anyhow, yes the banner isn't pushing down the navigation bar so I guess the only solution is to use event listeners to manually change the position of the navigation bar.
Thanks for your help!


[WIP] Adds [Snyk] badges

Adds vulnerability badges from Snyk.io, closes #1642

[X] Vulnerability badge for GitHub repos
[ ] Vulnerability badge for npm package

Messages

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

  Generated by :no_entry_sign: dangerJS against 51a17823b6a228822ebae1f38e056cd614bb0377


Fix compile error due to the user-defined string literals feature

While compiling rviz from source on Arch with gcc 6.1.1, got errors like the following:
In file included from /opt/ros/kinetic/include/tf/transform_datatypes.h:44:0,
                 from /opt/ros/kinetic/include/tf/time_cache.h:38,
                 from /opt/ros/kinetic/include/tf/tf.h:43,
                 from /opt/ros/kinetic/include/tf/transform_listener.h:38,
                 from [..]/src/rviz/src/rviz/default_plugin/effort_display.cpp:4:
[..]/src/rviz/src/rviz/default_plugin/effort_display.h: In destructor ‘virtual tf::MessageFilterJointState::~MessageFilterJointState()’:
[..]/src/rviz/src/rviz/default_plugin/effort_display.h:39:37: error: unable to find string literal operator ‘operator""fmt’ with ‘const char [28]’, ‘long unsigned int’ arguments
   ROS_DEBUG_NAMED("message_filter", "MessageFilter [target=%s]: "fmt, getTargetFramesString().c_str(), __VA_ARGS__)
                                     ^

With the new C++11 user-defined string literals feature, there has to be a space between string concatenations like the ones used here. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51282.

One more time then:
Note that GCC 6 compiles with C++11 support enabled by default, so this is required to compile rviz from source on for example Arch Linux. Since this is also true for the inidigo version, I think it is a good idea to backport it to indigo-devel.

:+1: I added the patch to the PKGBUILD for now.


Developer: document how to get kernel boot messages

Add a section detailing the minimum debug you need to configure in
order to capture the kernel boot messages in the system journal.
Fixes: #593
Signed-off-by: Graham Whaley<EMAIL_ADDRESS>

@devimc @dagrh - thought you might review.
@devimc - this may only work in non-vsock mode or?? Can you elaborate and let me know if I can/should/need to improve it... thx.

thanks @grahamwhaley

Hi @grahamwhaley , I think this instruction is only worked with cli mode, and not the shimv2.  Do you think is it better to append the shimv2 case here or I make another PR to address it after this PR merged.

fixed a typo, spin again.

/test-ubuntu


Add database health check in /health endpoint

As a developer
I need a health endpoint
So that I can check if both service and the database are health in the cluster
Details and Assumptions
Acceptance Criteria
Given a rest API endpoint `/health`
When user GET `/health` endpoint on cluster
Then I should expect 200 OK if both services are up. Otherwise 503 Service Unavailable

Hey team! Please add your planning poker estimate with Zenhub @even1111112 @nicksome168 @PepperandSummer @un-poco @yjhsieh2022


[loading-overlay] Missing spinner size and container padding props

Bug Report
When creating Loading Overlay relative to its container it seems to not adapts correctly. The spinner icon always fixed in one size with fixed paddings.
Description
Default settings causing cropped display on small containers.
No available options for size and paddings.

Currently we have to override the terra styles and relies on the internal DOM structure of the loading overlay which isn't safe.

Steps to Reproduce
Add loading overlay to small container.
Additional Context / Screenshots

Expected Behavior
Needed options for proper sizing: spinner icon svg height, inner div first child paddings (see possible solution image below)

Possible Solution
Add Loading Overlay Props for spinner icon svg height and paddings, to avoid custom css like this:

Environment

Component Name and Version: terra-overlay/lib/LoadingOverlay v3.69.0
Browser Name and Version: All supported browsers
Node/npm Version: [e.g. Node 8/npm 5] -
Webpack Version: -
Operating System and version (desktop or mobile): Windows 10 desktop

@ Mentions

Thank your @git-nandor-epam, after reviewing your request, we do not consider this a bug, as the intent for the LoadingOverlay component in terra-overlay is not designed for or intended for use in 100% of every loading situation always. It was created for pages and containers (modals, fixed panels, etc) and opening up for sizing override would allow for potential inconsistency as spinners could be sizes uniquely per implementing content team.
UX also would not expect to see this same Terra loading-overlay component used as the discrete indication for specific UI elements like your reference image (buttons, forms elements like the dropdown select, etc.) and they would need their own internal way to show loading or progress, as the interaction details may need to be applied uniquely and accessibility details most certainly would not be the same. Instead, each targeted component will need to be requested to have an enhancement to add a loading state and appropriate visual indication.
My recommendation would be to work with your UX designer to bring this request to the Cerner UX Foundations team to review standardizing the approach on how to add loading indication to the form-select (or any component needing the pattern) since it has also been done in alternate ways in the past, and for it receive design and accessibility guidance needed to proceed for best consistency.
I will plan to close this issue unless you have any questions.

Closing. Can be re-opened in the future if UX determines setting a max-size with auto-shrinking for smaller containers is an appropriate use of the LoadingOverlay. Additional tests for if text was also provided how that should correctly render without causing overflow or truncation.


update install instructions, startup

add a requirements.txt and change the install to point that way
apt installs aren't needed, do it through pip
move logging setup to main. Lets it start properly with --print (meaning logging isn't being used)

Hopefully I'll have more headed your way.

Great stuff!

Glad you like it. I'll send more, just figured three PRs was enough to get started.


setup deployment via CI

deploy to conda forge (since we need clingo, which is a condo only package)

Could follow https://antonz.org/python-packaging/ (except I don't want to use tox since it doesn't work well with conda).


add support for array sortBy

Resolves #447

I made the changes, but I really doubt the word choice in readme.md, let me know your thoughts on this
cc @kellyselden


Allow security plugin's install_demo_configuration to write to opensearch.yml

Description
This PR comments out the demo configuration values for the security plugin in values.yaml of the opensearch chart. When a pod is spun up, it runs the install_demo_configuration script which will write these values into opensearch.yml so the helm chart does not need to explicitly include these. Leaving these values in as a comment so users of the chart know what to replace when configuring security.
Tested by modifying the values.yaml of the opensearch chart and ensuring a cluster boots up properly after running:
helm install -f ./charts/opensearch/values.yaml opensearch opensearch/opensearch

Issues Resolved
Resolves: https://github.com/opensearch-project/security/issues/4923
Check List

[ ] Commits are signed per the DCO using --signoff

For any changes to files within Helm chart directories:

[ ] Helm chart version bumped
[ ] Helm chart CHANGELOG.md updated to reflect change

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

Closing this as duplicate of https://github.com/opensearch-project/helm-charts/pull/618

Re-opened temporarily to verify CI checks.


OZ-L06: try-catch permit2Forwarder to avoid exposing DOS on multicall

Related Issue
OZ-L06: allow permit2Forwarder's permit/permitBatch to fail via try-catch.
Prevents DOS'ing multicalls containing permit/permitBatch where an external party front runs the permit2Forwarder call
Description of changes
try-catch'd permit2Forwarder's permit/permitBatch

hmm to me I feel like we should allow the caller to specify whether or not they want to continue the multicall if there is an error

the idea being we expose another generic multicall(bytes calldata calls, bool revert) where revert = true will cause a halt?


CupertinoTimerPicker minor fidelity issues.

When compared with the native count down timer,  CupertinoTimerPicker looks and behaves differently in a few places:

The user should not be allowed to pick 0 hour 0 min. Attempting to do so will cause the min picker to roll up, so it becomes 0 hour 1 min (even when you are changing the hour picker), and the numbers in the min picker becomes gray when the picker is close to 0 hour 0 min.
The abbreviations should not end with a ".". i.e. "min." should be "min". The second picker doesn't exist for the native component but in the same vein it should be "sec" instead of "sec.".
Magnification should be enabled for the selected row of each column.

I was able to reproduce this with the Flutter Gallery project.
Here is my flutter doctor -v :
flutterd doctor -v
[✓] Flutter (Channel dev, 1.20.0-7.1.pre, on Mac OS X 10.15.5
    19F101, locale en-AO)
    • Flutter version 1.20.0-7.1.pre at
      /Users/pedro/dev/SDKs/flutter_dev
    • Framework revision 7736f3bc90 (3 days ago), 2020-07-10
      16:33:05 -0700
    • Engine revision d48085141c
    • Dart version 2.9.0 (build 2.9.0-21.2.beta)

[✓] Android toolchain - develop for Android devices (Android
    SDK version 30.0.0)
    • Android SDK at /Users/pedro/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Users/pedro/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/193.651
      4223/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = /Applications/Google
      Chrome.app/Contents/MacOS/google-chrome-unsafe

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android
      Studio.app/Contents
    • Flutter plugin version 47.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] Android Studio (version 4.0)
    • Android Studio at /Users/pedro/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/193.651
      4223/Android Studio.app/Contents
    • Flutter plugin version 47.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.46.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.1

[✓] Connected device (4 available)
    • AOSP on IA Emulator (mobile) • emulator-5554 •
      android-x86    • Android 9 (API 28) (emulator)
    • macOS (desktop)              • macos         • darwin-x64
      • Mac OS X 10.15.5 19F101
    • Web Server (web)             • web-server    •
      web-javascript • Flutter Tools
    • Chrome (web)                 • chrome        •
      web-javascript • Google Chrome 83.0.4103.116

• No issues found!

The "min" section also rolls over itself, which isn't how it's implemented on the native timer picker. If I scroll from 0 and reach 59, the picker should stay at 59 and not go back to 0.

Reproduces on stable 3.3 and master 3.7

flutter doctor -v (mac)
[✓] Flutter (Channel master, 3.7.0-3.0.pre.33, on macOS 12.6 21G115 darwin-arm64, locale en-IN)
    • Flutter version 3.7.0-3.0.pre.33 on channel master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision<PHONE_NUMBER> (38 minutes ago), 2022-12-05 18:27:21 -0800
    • Engine revision a309d239c4
    • Dart version 2.19.0 (build 2.19.0-463.0.dev)
    • DevTools version 2.20.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly
      to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0-rc4
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14A400
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.70.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.55.20221129

[✓] Connected device (3 available)
    • iPhone 12 Pro (mobile) • 026D5789-9E78-4AD5-B1B2-3F8D4E7F65E4 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.6 21G115 darwin-arm64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 108.0.5359.94

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

[✓] Flutter (Channel stable, 3.3.9, on macOS 12.6 21G115 darwin-arm, locale en-IN)
    • Flutter version 3.3.9 on channel stable at /Users/mahesh/Development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b8f7f1f986 (24 hours ago), 2022-11-23 06:43:51 +0900
    • Engine revision 8f2221fbef
    • Dart version 2.18.5
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc4)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0-rc4
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14A400
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.70.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.53.20221101

[✓] Connected device (3 available)
    • iPhone 12 Pro (mobile) • 026D5789-9E78-4AD5-B1B2-3F8D4E7F65E4 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.6 21G115 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 107.0.5304.110

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!


fix compat issues

Codecov Report

Merging #46 (bb4aa80) into master (fcfdea2) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #46   +/-   ##
=======================================
  Coverage   56.06%   56.06%
=======================================
  Files           3        3
  Lines          66       66
=======================================
  Hits           37       37
  Misses         29       29

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 fcfdea2...bb4aa80. Read the comment docs.


ConvNet class update

@yamins81 could you please review this (namely, model.py) and see if you like these changes?
Another purpose of this: practice PR for dldata :)

I didn't realize you could comment so easily each line on PRs. Love this.

See my latest changes 99d2c3d. If that's all, please merge the PR.
I'll change the if and other styling separately in the future.


Added the too_many_request error information

I am adding this question so in future if anyone has the same situation he/she can directly find the root cause.

I will move this question to the REST section of the FAQ, which issues the error.

I can't see my commit and I am also not there in the contribution list @danintel

Please resubmit the PR with a DCO line in your commit message.
https://github.com/hyperledger/sawtooth-core/blob/master/CONTRIBUTING.md
For you it will be something like this:
Signed-off-by: yashvadhvani<EMAIL_ADDRESS>


Flutter empty folder cretaed

when i create project only this screen is open, no project is created.
empty folder created.
Please solve my issue

Hi @AmanErOnGit. You can create a new project from your command prompt by running flutter create <project_name> then go to Android Studio and open the project from the directory you created your flutter project in.
This issue doesn't seem to describe a bug or a feature request. Please see https://flutter.dev/community for resources and ask questions like this,
you may also get some help if you post it on Stack Overflow
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you

Ok will try, because issue I have installed flutter after not working.
Error is some dart path not available, but I have set also environment
variables with flutter/bin
Don't no why created issue
Regards
Amandeep
On Fri, Sep 15, 2023, 10:45 PM Damilola Alimi @.***>
wrote:

Hi @AmanErOnGit https://github.com/AmanErOnGit. You can create a new
project from your command prompt by running flutter create <project_name>
then go to Android Studio and open the project from the directory you
created your flutter project in.
This issue doesn't seem to describe a bug or a feature request. Please see
https://flutter.dev/community for resources and ask questions like this,
you may also get some help if you post it on Stack Overflow
Closing, as this isn't an issue with Flutter itself. If you disagree,
please write in the comments and I will reopen it.
Thank you
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/134829#issuecomment-1721602139,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXTTOBTD2AFUYKP7HGPUC3LX2SELFANCNFSM6AAAAAA42C32IA
.
You are receiving this because you were mentioned.Message ID:
@.***>


router hit 10k fd limit

Hey
I have tried flynn 3 times over the past few months. Each time has resulted in me going back to another service due to Flynn going down quite often.
This is hosted on 3x 16GB Digital Ocean servers. It was installed using the cloud installer.
The last time this happened, the dashboard went down along with my apps, and i assumed it was a DNS issue, so i migrated the DNS and it came back up. I assume this was due to something being restarted internally, as it did it again a few days later. This triggered me to move away as it was causing downtime.
This time, I received a pingdom notification a few moments ago that the site was down. I checked and the dashboard was not accessible, along with the apps.They came back up on their own, but i suspect they will go down again soon.
Logs: http://d.pr/f/FOks
Thanks

Update: It's just gone down again

The error from the router is:

dial tcp <IP_ADDRESS>:8080: socket: too many open files

Try running this command:
flynn -a router limit set app max_fd=100000

The default fd limit is 10,000 which should be enough, so we should figure out why the router is running out of file descriptors.
What languages, frameworks, and web servers are your apps built with?

Hey @titanous
Tried running that, and I got:
21:29:52.864227 main.go:172: no clusters configured
There are 2 Rails apps running, and a tiny python app. 1 of them is pretty high traffic, and the other has quite high Sidekiq throughput. There are also 2 redis servers running linked to each of the Rails apps, mainly used for Sidekiq.

Do you have the flynn CLI configured on your local machine? If so, run the command there.

Ah, locally. That worked

What webserver are you using for the Rails app? Can you quantify the amount of traffic it gets? (requests per minute, concurrent users, etc.)
I'm trying to figure out whether the high-water mark for the file descriptors is legitimately above 10k or if there's a leak somewhere.

Puma for both of the Rails apps.
Errm, i am not 100% sure on how much traffic they get. It's not going to be anywhere near enough to hit that limit though to be honest. It's not even 10+ concurrent connections.

Okay, start by gisting the output of this command on each of the hosts, which will provide a (redacted) list of TCP connections and states:
netstat -tuna | sed -r 's/(([0-9]{1,3}\.){3})[0-9]{1,3}/\1x/g'

Here are the outputs: https://gist.github.com/scottrobertson/d3ebd9e9d70c589ee57fd953961ea06b

Oh, changing the limit restarted the routers which cleaned everything up. Wait a few days and lets take another look.

Shall do 👍 thanks for the help

Happy to help, please let us know if you have any other questions or problems.

@scottrobertson Do you mind checking netstat again?
Also, while you're there can you run this command:
sudo ls /proc/$(ps xa | grep [f]lynn-router | cut -f1 -d" ")/fd | wc -l

Here are the updated details: https://gist.github.com/scottrobertson/98c1de4be4e35349212e19f3c9950850

Thanks. What are the values of these settings?
sysctl \
  net.ipv4.tcp_keepalive_time \
  net.ipv4.tcp_keepalive_intvl \
  net.ipv4.tcp_keepalive_probes \
  net.netfilter.nf_conntrack_tcp_timeout_established

They are all:
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.tcp_keepalive_intvl = 75
net.ipv4.tcp_keepalive_probes = 9
net.netfilter.nf_conntrack_tcp_timeout_established = 432000

We have TCP keep-alives on since v20160721.2, so these connections should be cleaned up eventually if the other side goes away. Can you run those commands again so that I can see whether any of the connections have been cleaned up?

It does not look like things are getting cleaned up: https://gist.github.com/scottrobertson/383dddc002533e1fb4a314a69f983014

here is my output to netstat -tuna | sed -r 's/(([0-9]{1,3}\.){3})[0-9]{1,3}/\1x/g'
https://gist.github.com/johnnagro/4c071372e1b187cd0e51ac2861584d64

This was fixed in #4537


[Introspection] Investigate all no-id-field-defined-without-unique-and-without-relations errors

Look at all Introspection errors with pattern no-id-field-defined-without-unique-and-without-relations and see what is causing them and if that makes sense or not.

The result of this will influence: https://github.com/prisma/prisma2/issues/1513

Note to myself: Start by just looking at mysql_public schemas to understand.

First work started here: https://docs.google.com/spreadsheets/d/1hPoiyKGepYrxow6TrA2gBW4a8N7GYYHJOBo9V3NLlxc/edit#gid=932695619

This led us to understand that some of our databases we use for testing are actually just broken - and they need to be fixed to get accurate results.

(Internal: Blocked by https://github.com/prisma/introspection-engine-output/issues/135)

This can now be picked up again.

We are now commenting these tables/models out for now. No need to investigate further.


SMART-288 Update Handlebars

JIRA
Note:
Since the handlebar is a dependency of jest, jest had to be updated to update handlebars in package-lock.json. The latest jest version specified here is 24.9.0, that's the reason jest was changed to this version.
Dev verification:
Pull down the branch, start the server and check if the app is working fine.

I'll let someone else confirm that we want to change the version of jest...
But just as a note, jest version 25 does exist: https://www.npmjs.com/package/jest/v/25.0.0
And the server does run fine on that version with updated handlebars. But the smart server version is also using 24.9.0, so maybe this is fine.

Also, I may be wrong but I don't think we need to link the JIRA on this public PR.

Removed the link to JIRA.

I'll let someone else confirm that we want to change the version of jest...
But just as a note, jest version 25 does exist: https://www.npmjs.com/package/jest/v/25.0.0
And the server does run fine on that version with updated handlebars. But the smart server version is also using 24.9.0, so maybe this is fine.

My bad, googling latest npm jest version landed me on 24.9.0 and also running npm outdated command showed the latest version for jest is 24.9.0. That is the reason why I switched the jest version to 24.9.0 instead of 25.0.0. And also, I am not sure if we can update the version of a module in package-lock.json, without modifying its parent dependency in package.json. I had a comment on my SMART PR to get jest updated in this repo.

My bad, googling latest npm jest version landed me on 24.9.0 and also running npm outdated command showed the latest version for jest is 24.9.0. That is the reason why I switched the jest version to 24.9.0 instead of 25.0.0. And also, I am not sure if we can update the version of a module in package-lock.json, without modifying its parent dependency in package.json. I had a comment on my SMART PR to get jest updated in this repo.

That's a fair point. I had just gotten handlebars to update by running npm audit fix and it did not affect the jest version.


[idea if possible]: Steam will be converted into a Gas instead of Fluid if mekanism is installed

Steam is a Gas form of Water basically not a fluid
but becuase most mods is mainly Items/energy/Fluid but no gasses
Steam in those mods is a Fluid but since mekanism has Gasses
but this idea can make Steam be converted into a Gas if mekanism is installed
but this also needs alot of mod compatibility: railcraft,big reactor,thermal expansion & etc.(stuff that uses the fluid: Steam)
so machines that uses "steam" needs to be connected to gas pipes instead of fluid pipes if mekanism is installed
as i said: if this idea is possible
but we Needing a Tesseract like item/block to send Gasses wireless
since the only mod that can do that is: 2x Compact machines with nether star upgrade and both quantum linked to each other so they got the same inside(like 2 linked enderchest)
but for each compact machine you use for send wireless Gasses you needing 1x chunk more to be loaded

This is not easy to do because every mod author would have to add compatibility by himself.

Steam is in the Ore Dictionary.
Messing with the Ore Dictionary in the way you are suggesting is a great way to get shunned by the modding community.
Making steam a gas makes sense.  However, Mekanism doesn't use steam (it uses Water Vapor), so the only thing this would accomplish would be to break other mods and force them to use Mekanism gas pipes.  That's like selling a window repair service by throwing a brick with your company's contact information through someone's window.

i was also thinking this would be near impossible to do sadly
so kinda hope mod dev. who is working with something about the steam
will think about mekanism soon since Steam is a Gas
mekanism has existed for some years now so kinda hoping we can do something about making steam offcial a Gas in minecraft now instead of a fluid
but as XfactHD said: every mod author would have to add compatibility by them self
but would be nice still

Fun Fact: Gases are fluids, just like liquids are. A fluid is any substance that deforms continuously under applied shear stress. I think it's more helpful in many cases to think of Mekanism's "gases" more as chemicals that require special methods of transport and storage, especially given some of them would actually be liquids under standard conditions. I might propose to Aidan that we rewrite things that refer to gases to refer to them as chemicals, actually.

I agree completely with @unpairedbracket on this one- right now we treat gases more as chemicals than as generic gaseous substances. Perhaps this change could be made in the 1.8.9/1.9 port to avoid API conflicts.


Try different automated code reviews

[ ] ChatGPT Code Reviewer: https://github.com/marketplace/actions/chatgpt-codereviewer
[ ] Code Review GPT: https://github.com/marketplace/actions/code-review-gpt
[ ] Amazon CodeGuru: https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/working-with-cicd.html

No longer needed


Python: Support float32 bounding boxes

Unclear how to model this. I think it's best to only have one RTree class, instead of one for each data type. So maybe the best way to model it is to have the Python API wrap an enum
enum RTreeInner {
    Float32(OwnedRTree<f32>),
    Float64(OwnedRTree<f64>),
}

#[pyclass]
pub struct RTree(RTreeInner);

and then the Python typing could be exposed as a generic class. Maybe having a method to downcast an f64 rtree to an f32 rtree would be useful, since we can also expand the bounding boxes efficiently.

note you can just use numpy for bounding box casting: https://numpy.org/doc/stable/reference/generated/numpy.nextafter.html. maybe just provide a helper to do this?


"isActive" returing an incorrect value.

Describe the bug
The value of the Readiness parameter isActive is sometimes incorrect.
The WeConnect API returns the isActive paramter in its data set when the vehicle is active, but does not return anything when the vehicle becomes inactive.
Thus, the update function, which updates the local data dictionary does not update the isActive parameter, as the parameter is absent.
Thus the data dictionary incorrectly reports the vehicle as active, when it is not.
The issue probably affects outher parameters as well - isActive is my test case!
To Reproduce
Run the API, with the EV off.
Run the update funtion
Turn EV on.
Run the update function
Turn EV off
Run the update function - the API will show the EV incorrectly as being active.
Expected behavior
When the EV is switched off, the update function should recognise the absence of the parameter indicate the EV is off, and update the data dictionary accordingly
Screenshots
N/A
Logs
N/A
Additional context
Issue reported in downstream Home Asssiant integration here: https://github.com/mitch-dc/volkswagen_we_connect_id/issues/96

Hmm, when the parameter is absent its enabled attribute should be false. Is that not the case for you?

No, that does not appear to be the case.

Maybe this info can help

I started to try and understand the code here.
It seems about the time @pplucky is reporting the error being introduced the .enabled parameter on an attribute was modified.
I can see that when the vehicle is updated, enabled should be set to false if the attribute is not present in the data returned from the EV.
I don’t fully understand the code yet, but I cannot see where the enabled parameter is checked when accessing the dict value.   So I think the old value form the dict is being accessed.
Should library users be checking the enabled status, before accessing the dict value?

Yes, it is necessary to check the enabled value. As we are speaking I think I might change in the library that an exception is thrown when accessing a disabled value.

Thanks.   Fixed downstream

I have reopened this, as I think there is a logic error.
The behaviour I am seeing is

‘isActive’ is ‘on’.  So the value is on and enabled is false.
IsActive is then omitted indicating off.  So enabled is set to false, but the value is still on.
When isActive changes next time to on, the logic is
https://github.com/tillsteinbach/WeConnect-python/blob/b629b0e50f7a73b1f782d3403b11606f0c606120/weconnect/addressable.py#L227
however, valueChanged will be false, so the enabled flag will not be reset to True.

Not sure of the best way to fix it.
Should the value be set to ‘off’ when disabled?
Should the valueChanged test be removed?

Oh wow, I think you are right. The check is wrong. I will doublecheck if that breaks something and otherwise push a fix tomorrow!
Great catch!

@ColinRobbins can you check 0.50.1?

Thanks - trying it now.  Need two car journeys to see if it has worked!
On Wed, Nov 30, 2022 at 6:52 AM Till Steinbach @.***>
wrote:

@ColinRobbins https://github.com/ColinRobbins can you check 0.50.1?
—
Reply to this email directly, view it on GitHub
https://github.com/tillsteinbach/WeConnect-python/issues/85#issuecomment-1331714477,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADGXZ6LESOF6JETMKOCKLB3WK32RHANCNFSM6AAAAAASMCIYGU
.
You are receiving this because you were mentioned.Message ID:
@.***>

@ColinRobbins can you check 0.50.1?

Looking good, for the last couple of weeks.

This seems fixed to me, closing


Install broken

go install github.com/x90skysn3k/brutespray@latest
go: downloading github.com/x90skysn3k/brutespray v0.0.0-20240610185117-4efb5f387cf4
go<EMAIL_ADDRESS>requires go >= 1.22.4; switching to go1.22.4
go: downloading go1.22.4 (linux/amd64)
go: github.com/x90skysn3k/brutespray@latest (in github.com/x90skysn3k/brutespray@v0.0.0-20240610185117-4efb5f387cf4):
        The go.mod file for the module providing named packages contains one or
        more replace directives. It must not contain directives that would cause
        it to be interpreted differently than if it were the main module.****

This is because the go.mod file requires a replace on the rdp library. Alternatively run these commands to install:
git clone https://github.com/x90skysn3k/brutespray.git
cd brutespray
go install
You can also just build it and move the binary wherever you'd like to install it. Another option is running it from the docker container as well.

I have fixed this by forking the grdp module and renaming it removing the replace in the go.mod file. Now you can use go install github.com/x90skysn3k/brutespray@dev until I merge this into the main branch.


Feature/interactive

@timgentry asked me to add the ability to interactively code review, prompting to flag code as safe, rather than forcing the reviewer to run a separate rake task for each file.
replace PR15, code changes in this PR extended rake audit:code with interactive switcher.
Usage: bundle exec rake audit:code [max_print=n] [ignore_new=false|true] [show_diffs=false|true] [reviewed_by=usr] [interactive=false|true]
e.g: bundle exec rake audit:code reviewed_by=<username> interactive=true
It will prompt for user's decision:
Yes - Flag file safe
No - Do nothing, skip this file
Abort - abort the rake task (equivalent to ctrl+c)
It will  also prompt for username if not provided, and optional comment when flagging the file changes safe.
Clear terminal screen  (equivalent to cmd+k) before review next file.
interactive code updated based on the diff file posted on Slack/github channel by @timgentry.

Looks good @suezhou, thanks. Let's merge this :)


Allow user to supply certificates to use HTTPS

Proposed changes:

added cmdline parameters to specify certificate as well as keyfile
load certificates on server startup -> switch to HTTPS if they are present

fixes #4322
Status (please check what you already did):

[x] made PR ready for code review
[ ] ~added some tests for the functionality~
[x] updated the documentation
[x] updated the changelog
[x] reformat files using black (please check Readme for instructions)

@tmbo this is only failing coverage now if you want to merge


Hello, Garden

As a Garden Publisher I want to access the API so I can share my models
Assumptions:

There will be a GardenClient class in the garden package
The constructor doesn't take any arguments
There is a CI job on branch pushes and on PRs that will:
a. Run Flake8
b. Run mypy
c. Check requirements.txt against known vulnerabilities using safety
d. Runs pytest with code coverage
e. Pushes code coverage report to codecov.io

Acceptance Criteria
Given I have garden-ai package installed, when I execute the following python code:
from garden import GardenClient
client = GardenClient()
print(client)

Then I don't have any errors.
Given I push a commit to a branch that has flake8 errors, when the CI job runs, Then it reports an error and fails

Here's to many more amazing stories and accomplishments from Garden in the future! :seedling:

@BenGalewsky so this is linked to the PRs #6 and #1, right? In the past I've operated under the 1 issue 1 branch 1 PR rule, which feels a little easier to track. What do you and @blaiszik think, ie what have you found to be best practice?
Similarly, this story feels like multiple GitHub Issues to me, but from what I've learned it seems that 1 issue == 1 user story is best practice -- are either of ya'll opposed to using that as a guideline for the future?

"Assumptions" are some clues on how to implement this story. Without them, the only judgement would be could you meet the success criteria. The Assumptions are some specifications of the "How".
There is no requirement that the issue is a single PR. In fact, most interesting stories might cross several repos. For example a Story could require a change to the SDK and to the server.

I think it's confusing that Assumptions could include both items that are already true, and items that are not and need to be addressed in the current story/issue -- I feel like that will lead to a lot of unnecessary cross-checking of other stories/issues to see what has been done and what hasn't when picking up an issue/story, which doesn't scale well. However, I do understand that writing the Assumptions from a purely user-perspective, without thinking about what has already been implemented, is useful.
Maybe we can add a Tasks section (that the person who picks up the story can then edit later) that outlines some of the basic tasks in mind at the time of story/issue creation? I think that could potentially help disambiguate

@BenGalewsky I asked @kjschmidt913 and @blaiszik for their thoughts, and we're thinking that a higher-level story (which as you mentioned, could span multiple repos) could have sub-issues that are linked, and that would help disambiguate while still being true to the user story and not getting lost in technical details. What are your thoughts?

To wrap the above thread: we discussed in Slack and in meetings keeping the issues as higher-level Stories, with detailed discussion split between the issue and the PR itself (we will evaluate how this goes).
The key is breaking out those stories into tasks that are linked to any associated PRs, so we don't lose track of what is done and what is not.

I believe https://github.com/Garden-AI/garden/pull/12 just resolved the remaining tasks for this issue? Closing unless someone suggests otherwise


Warning: not all DLLs were found! This build is not appropriate for a binary distribution

Hi
I'm trying to install angr on windows but i had the following error Warning: not all DLLs were found! This build is not appropriate for a binary distribution. Any idea why? I'm installing via python setup.py install
Thanks

That's an error that can come up when building Unicorn. It is known, our windows CI is broken with it right now, but it's not something I have the time to fix.

thanks @rhelmot , I'll wait for the fix.


backend/wayland: properly cleanup wlr_wl_pointer

We were missing destroy calls for gestures, and we were only
destroying the relative pointer on output destroy.

LGTM