update title in  GetMaterialApp  with translation (.tr)

hi dear developers
i want to use 'label'.tr in GetMaterialApp but just label is returning.
return GetMaterialApp(
title: 'label'.tr,
// defaultTransition: Transition.native,
translations: MyTranslations(),
locale: const Locale('fa', 'IR'),
fallbackLocale: const Locale('fa', 'IR'),)
class MyTranslations extends Translations {
@override
Map<String, Map<String, String>> get keys => {
'fa_IR': {
'label': 'دبل اسپورت',
    },
  };

}

Are you sure you tell title ? Beacause on Android title appear only above the task manager's app snapshots which are displayed when the user presses the "recent apps" button. And no appear on IOS.
Right below is the official doc :

A one-line description used by the device to identify the app for the user.
On Android the titles appear above the task manager's app snapshots which are
displayed when the user presses the "recent apps" button. On iOS this
value cannot be used. CFBundleDisplayName from the app's Info.plist is
referred to instead whenever present, CFBundleName otherwise.
On the web it is used as the page title, which shows up in the browser's list of open tabs.
To provide a localized title instead, use [onGenerateTitle].

If you realy talk about title, for me it's work.
This code :
import 'package:flutter/material.dart';
import 'package:get/get.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return GetMaterialApp(
      title: 'label'.tr,
      translations: Messages(),
      locale: const Locale('fa', 'IR'),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Translation test App'),
        ),
        body: const Center(
          child: Text("Hello mojanimator"),
        ),
      ),
    );
  }
}

class Messages extends Translations {
  @override
  Map<String, Map<String, String>> get keys => {
        'en_US': {
          'label': 'Hello World',
        },
        'fa_IR': {
          'label': 'دبل اسپورت',
        }
      };
}

If you talk about something else, tell me.

'label'.tr not work for me and just show me  label On Apr 4, 2022 23:14, Raphael @.***> wrote:
Are you sure you tell title ? Beacause on Android title appear only above the task manager's app snapshots which are displayed when the user presses the "recent apps" button. And no appear on IOS.
Right below is the official doc :
A one-line description used by the device to identify the app for the user.
On Android the titles appear above the task manager's app snapshots which are
displayed when the user presses the "recent apps" button. On iOS this
value cannot be used. CFBundleDisplayName from the app's Info.plist is
referred to instead whenever present, CFBundleName otherwise.
On the web it is used as the page title, which shows up in the browser's list of open tabs.
To provide a localized title instead, use [onGenerateTitle].
If you realy talk about title, for me it's work.
This code :
import 'package:flutter/material.dart';
import 'package:get/get.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return GetMaterialApp(

  title: 'label'.tr,

  translations: Messages(),

  locale: const Locale('fa', 'IR'),

  home: Scaffold(

    appBar: AppBar(

      title: const Text('Translation test App'),

    ),

    body: const Center(

      child: Text("Hello mojanimator"),

    ),

  ),

);

}
}
class Messages extends Translations {
@override
Map<String, Map<String, String>> get keys => {
    'en_US': {

      'label': 'Hello World',

    },

    'fa_IR': {

      'label': 'دبل اسپورت',

    }

  };

}
If you talk about something else, tell me.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Can I see a screenshot of your application? Where it write 'label', please.

AttachedOn Apr 4, 2022 23:44, Raphael @.***> wrote:
Can I see a screenshot of your application? Where it write 'label', please.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

You must uploade on Github.


Add Wi-Fi module/component

[x] implement module
[ ] implement component

For mapping Wi-Fi power along with the building geometry

Partially implemented in bmegli/ev3dev-mapping-ui#16
No mapping yet, but working communication, and UI showing wifi network state

Futher implemented in #18 (proof of concept plot, single point per reading above the robot, height reflects signal strength)

This is already working at a basic level.
Optimization/drawing surface of wifi power can be done as separate issues at a later time.


chore: bump version to 1.13.0

Issue #, if available:
N/A
Description of changes:
Bump version to 1.13.0 in preparation for our next release
Checklist:

[x] make pr passes

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #977 into develop will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff            @@
##           develop     #977   +/-   ##
========================================
  Coverage    94.69%   94.69%
========================================
  Files           69       69
  Lines         3149     3149
  Branches       604      604
========================================
  Hits          2982     2982
  Misses          85       85
  Partials        82       82

Impacted Files
Coverage Δ

samtranslator/__init__.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Erasing NodeMCU Lua Lolin V3 Module ESP8266 ESP-12E

Hello,
I`m using such a board:
NodeMCU Lua Lolin V3 Module ESP8266 ESP-12E WIFI Wifi Development Board
https://www.amazon.de/gp/product/B06Y1ZPNMS/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1
I followed your instruction, but I think I did a mistake inside the WiFi configuration.
In the Serial Monitor I`ve got this answer:
ESP8266 IR Controller
Config pin GPIO10 set to: 1
mounted file system
reading config file
opened config file
{"hostname":"","passcode":"","port_str":"80","user_id":"","ip":"<IP_ADDRESS>","gw":"<IP_ADDRESS>","sn":"<IP_ADDRESS>"}
parsed json
*WM: Adding parameter
*WM: hostname
*WM: Adding parameter
*WM: passcode
*WM: Adding parameter
*WM: port_str
*WM: Adding parameter
*WM: user_id
Using Static IP
*WM:
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Custom STA IP/GW/Subnet
*WM: <IP_ADDRESS>
*WM: Using last saved values, should be faster
*WM: Connection result:
*WM: 3
*WM: IP Address:
*WM: <IP_ADDRESS>
WiFi connected! User chose hostname '' passcode '' and port '80'
WiFi configuration complete
Local IP: <IP_ADDRESS>
URL to send commands: http://ESP_ACA246.local:80
ArduinoOTA started
MDNS http service added. Hostname is set to ESP_ACA246.local:80
HTTP Server started on port 80
Turning off the LED to save power.
Error retrieving external IP
HTTP Code: -1
connection refused
External IP address request took 5002 ms
Ready to send and receive IR signals
Every attempt to re-program the modul, give me the same result. I`ve got still the same Output as above
in the Serial Monitor.
Is there a possibility to erase (master reset) the modul, in order I can re-start from the beginnig?
Many thanks in advance for any Support.
Greetings from Germany
Thomas

You just need to set the configpin to ground
Config pin GPIO10 set to: 1 (needs to be 0, will boot into config mode)
GPIO10 is the default configuration pin

I have the same problem but i edited ircontroller.ino file and writed ip serttings:
char static_ip[16] = "<IP_ADDRESS>";
char static_gw[16] = "<IP_ADDRESS>";
char static_sn[16] = "<IP_ADDRESS>";
Change “<IP_ADDRESS>” static ip to valid ip LAN like 192.168.xxx.xxx
Change “static gw” to your router gw ip
Save and upload again to board. For webroot access target to static ip LAN.

I would advise against hard coding as you're just band-aiding what is probably an actual issue as @eukiseioh recommends here
Make sure when you compile your project that SPIFFS is enabled and allocated (not 0) and that when you're selecting your board you are using the correct one
If you find its still giving you a hard time saving things to system memory you can try changing around your GPIO pins (probably the configuration pin) and see if maybe there's a conflict with your particular board that's preventing writing to the file system while one of those pins is allocated

It seems that my problem has to do with the revision number of my NodeMCU.
I`ve got version V3 and that seems to be little different. After I flashed it for the very first time, I could see
the AP (<IP_ADDRESS>), connect to it with a Android Tab, and make my setup. After I did so, I had no access anymore.
Ecery attempt to flash again, gave me the same result inside the serial Monitor of Arduino IDE as shown above.
I do not understnd this behavior.
After I`ve edited the ircontoller.ino in the following way:
char static_ip[16] = "<IP_ADDRESS>";
char static_gw[16] = "<IP_ADDRESS>";
char static_sn[16] = "<IP_ADDRESS>";
it seems to be completely functionable for me.
That mean, it is running now.
Many thanks for your support.
and Greetings from Germany.
Thomas

👏👏👏👍

Thomas, i have the same NodeMCU board but i can’t send codes. I can learn perfectly.
Could you show me a pic of your config board pins conections and used components?

I`ve just gave an answer and possible solution.
Just take a look to your request her on Github.

Thanks, i will try

I set the configpin to ground but i have the same problem. Then i change the ip adresses to
char static_ip[16] = "<IP_ADDRESS>";
char static_gw[16] = "<IP_ADDRESS>";
char static_sn[16] = "<IP_ADDRESS>";
but it still does not work. Does anyone have an idea what else could go wrong?

Make sure you're using lwIP 1.4 not the new default of 2.0
Don't change the IP in the blueprint that's a hack that probably won't work long term
If your config pin isn't causing the device to boot into AP mode then change your config pin to something else and set it to ground

@Fabian234 if you want help you need to define what 'not working' means

the ESP8266 will display the same thing in the serial screen as above and will not start a WLAN access point

If its saying Config pin GPIO10 set to: 1 then the config pin isn't set to ground.
Its possible that on the V3 the default configpin can't be set to ground at boot so I would try a different pin and set that to ground

Sounds good

I'm using this board which I believe is a V3: https://www.pcboard.ca/nodemcu-v3?search=nodemcu
adjusting the Pins as per below works for me:
const uint16_t pinr1 = 14; // Receiving pin
const uint16_t pins1 = 4; // Transmitting preset 1
const uint16_t configpin = 12; // Reset Pin
const uint16_t pins2 = 5; // Transmitting preset 2
const uint16_t pins3 = 16; // Transmitting preset 3
const uint16_t pins4 = 13;


kubelet/dockertools: Remove dockerContainerCommandRunner.

Replace with docker manager.
Will remove kubelet.runner after this.
@dchen1107 @vmarmol

LGTM. Will merge once travis or shippable is green

Just out of curiosity, logistically, is there a reason why we want to keep a separate ContainerCommandRunner interface?

@yujuhong I don't think so. Should be removed later

SGTM.


Build(deps-dev): Bump @babel/core from 7.20.5 to 7.20.12 (#4653)

Pull request opened by the merge tool on behalf of #4653

Merged in 7586b084fbbbaeaed17716191fe22d4a5c642230


Execute the user_settings object transition

In #19404, we just added the feature level 89 migration to change how we encode user settings in the Zulip API to use a user_settings object.
The API documentation should explain the transition clearly.  Here's the recommended strategy:

Clients can immediately switch from processing the update_display_settings and update_global_notifications event types and process the user_settings event type instead.
Clients may then want to refactor how they store user settings to have a common module/object.
The web app did this migration in https://github.com/zulip/zulip/pull/19404/commits/998d7102753e1e2f6dc1096c927bacfe798df4b0.
Clients can then pass the user_settings_object client capability to all Zulip server versions (older servers will ignore it). If the server returns a user_settings object in the register response, the client should use that to initialize its user_settings object using the user_settings portion of the response; otherwise it should use the user personal settings flags that appear in the top-level response.

I've tentatively tagged this as a priority, because there is a decent amount of messy complexity involved in maintaining the legacy API here, and we'd prefer to be able to remove that complexity.

@gnprice it would be great to get your thoughts on https://github.com/zulip/zulip-mobile/issues/4659#issuecomment-890081662 before we proceed with this.

Just sent #5299 as a first step for this.


A378464232237315 compound asset type

Depends on:

https://github.com/openprocurement/openregistry.api/pull/17

https://github.com/openprocurement/openregistry.assets.core/pull/10

Coverage remained the same at 100.0% when pulling 7ad862141c4f30a28355c1582e57d1beb460842e on Scandie:a378464232237315_compound_asset_type into d181ea56f526905452de6f23a2cd3ef14ba4aee3 on openprocurement:master.

Coverage remained the same at 100.0% when pulling 73a72302961db45a8a37049b909220d76c393de9 on Scandie:a378464232237315_compound_asset_type into d181ea56f526905452de6f23a2cd3ef14ba4aee3 on openprocurement:master.

https://github.com/openprocurement/openregistry.assets.core/pull/11


os-bind BIND+view

opnsense 23.1.11
os-bind 1.26_5
Good afternoon. Help set up BIND for split-DNS using VIEW. There are no VIEW settings in the OPNSENSE interface, and when writing directly to named.conf - OPNSENSE resets the settings

AFAIK bind views are not implemented in Opnsense interface. Instead of editing named.conf directly, you can edit the template file of named.conf. Template files are usually not overwritten, unless there is an upgrade in package.
Path to template files are here: /usr/local/opnsense/service/templates/
More information about using templates is documented here:  https://docs.opnsense.org/development/backend/templates.html

As this is unfortunately a low effort issue report I'd generally prefer to open a new one but according to the CONTRIBUTING.md I think this is close enough to join in.
I would like to go towards turning this into a feature request, although not for adding view but instead for adding an "advanced mode" which would disable the user-friendly GUI for the administration of Bind and replaces it with a file-manager and text editor.
I assume that the Bind package is a standard bind server which works with configuration files that are generated through the UI and it therefore generally supports the full feature set.
While you can use SSH to work with your named.conf, it is unreliable as it will be overwritten by the UI.
I also don't think that changing the template is the best way to go as it can be overwritten by an upgrade as sifybug mentioned.
If there was a simple option that disabled the templating and friendly-UI and warned you about potentially overwriting your configuration if you try to disable it again, the full featureset of bind would be unleashed in a stable way and with relatively low effort on the plugin maintainers side.
While the text-editor from the web-UI I mentioned would be nice, it would be entirely sufficient to have the option to disable the templating and autocreation of the configuration in favor of managing it by hand.

You can install the bind pkg without the plugin and use the cli, nothing gets overwritten then

Thanks for the suggestion. It never occurred to me that this was an option.
I still think it would be nice to have a way to interact with the necessary files from the WebUI and use the standard way of installation but I guess this is a good solution until that becomes a possibility.

@mimugmail did such plugins and demand was not as you expect. I think GUI with managed set of features and no GUI with full manual feature set are two very good options. For everything in between adding support for a new feature in the plugin is the most robust way in the long term.


report nydus image usage

Let nydus-snasphotter report more accurate disk usage.
When performing ctr snapshot --snapshotter nydus usage, the total usage of all layers is not accurate.

addressed by https://github.com/containerd/nydus-snapshotter/pull/223


Race condition in dispose

We're facing a (rare) race condition in Rnwood.SmtpServer.SmtpServer.KillConnections:
System.InvalidOperationException : Collection was modified; enumeration operation may not execute.
   at System.Collections.Generic.List`1.Enumerator.MoveNextRare()
at System.Linq.Enumerable.CastIterator[TResult](IEnumerable source)+MoveNext()
at System.Collections.Generic.LargeArrayBuilder`1.AddRange(IEnumerable`1 items)
at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source)
at Rnwood.SmtpServer.SmtpServer.KillConnections()
at Rnwood.SmtpServer.SmtpServer.Stop(Boolean killConnections)
at Rnwood.SmtpServer.SmtpServer.Stop()
at Rnwood.SmtpServer.SmtpServer.Dispose(Boolean disposing)
at Rnwood.SmtpServer.SmtpServer.Dispose()
at Octopus.IntegrationTests.Core.EmailSending.SmtpClientWrapperFixture.WhenSendingAnEmailToAServerWithNoTls_TheEmailShouldBeAccepted() in /opt/buildagent/work/abb2fbfce959a439/source/Octopus.IntegrationTests/Core/EmailSending/SmtpClientWrapperFixture.cs:line 44
at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.BlockUntilCompleted()
at NUnit.Framework.Internal.MessagePumpStrategy.NoMessagePumpStrategy.WaitForCompletion(AwaitAdapter awaitable)
at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()
------- Stdout: -------
11/30/2020 9:33:24 PM 34 Trace Connected to SMTP server smtp://localhost:37175/?starttls=when-available
11/30/2020 9:33:24 PM 34 Trace SMTP received: 220 ip-10-10-11-232 smtp4dev ready
11/30/2020 9:33:24 PM 34 Trace SMTP sent: EHLO [<IP_ADDRESS>]
11/30/2020 9:33:24 PM 34 Trace SMTP received: 250-Nice to meet you.
250-8BITMIME
250-SIZE
250 SMTPUTF8
11/30/2020 9:33:24 PM 28 Trace SMTP sent: MAIL<EMAIL_ADDRESS>11/30/2020 9:33:24 PM 28 Trace SMTP received: 250 New message started
11/30/2020 9:33:24 PM 32 Trace SMTP sent: RCPT<EMAIL_ADDRESS>11/30/2020 9:33:24 PM 31 Trace SMTP received: 250 Recipient accepted
11/30/2020 9:33:24 PM 32 Trace SMTP sent: DATA
11/30/2020 9:33:24 PM 32 Trace SMTP received: 354 End message with period
11/30/2020 9:33:24 PM 32 Trace SMTP sent: From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>Subject: Test subject
Date: Mon, 30 Nov 2020 21:33:24 +1000
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
11/30/2020 9:33:24 PM 32 Trace SMTP sent:
Test body
11/30/2020 9:33:24 PM 28 Trace SMTP sent:
.
11/30/2020 9:33:24 PM 12 Trace SMTP received: 250 Mail accepted
11/30/2020 9:33:24 PM 34 Trace SMTP sent: QUIT
11/30/2020 9:33:24 PM 12 Trace SMTP received: 221 Goodbye

This is pretty rare:

(first one is testing async, second is testing sync)
Let me know if you want to see the tests/code in question - I dont think it's too important here.
Looking into the code, i think this line is causing the error. Even though activeConnections is a synchronized list, it's not threadsafe for enumeration. Looking at the docs, it seems the code needs to lock on the SyncRoot property before enumeration:
lock(myCollection.SyncRoot)
{
    foreach (object item in myCollection)
    {
        // Insert your code here.
    }
}

Would you be willing to accept a PR that changes this?

Hi Matt.
Thanks for the great and detailed bug report (and excited to see this component being used in your work!).
I agree that the line you've found is incorrect WRT thread safety and will throw if the collection is modified by one of the connections being closed in another thread whilst the .ToArray() is being executed.
Yes please for the PR to fix this.
Thanks
Rob


Wrapped Lines Break Custom Problem Matcher

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

VS Code Version: 1.84.2
OS Version: Windows 10

I saw this issue crop up on your GitHub for other problem matchers, but tbh it was super unclear if this was supposed to be fixed or not. #32042 makes it sound fixed, but then we have #152634 which sounds very similar.
Steps to Reproduce:

Create a dummy script the outputs long lines (like replicating the output from running tests with dotnet test)
Associate that script to a task.
Create a problem matcher that attempts to get the error message, fully qualified test name, and line number.
Problem matcher consistently fails when the terminal is not scaled large enough for the fully qualified class test (method) name to fit on one line, but seems to work "most" of the time when the terminal large enough and does not wrap the lines.

Sample Task
{
    "windows": {
        "options": {
            "shell": {
                "executable": "pwsh.exe",
                "args": [
                    "-NoProfile",
                    "-ExecutionPolicy",
                    "Bypass",
                    "-Command"
                ]
            }
        }
    },
    "label": "Test MultiLine",
    "type": "shell",
    "command": "${workspaceFolder}/TestMultiLine.ps1",
    "group": {
        "kind": "test",
        "isDefault": true
    },
    "problemMatcher": {
        "fileLocation": ["absolute"],
        "severity": "error",
        "pattern": [
            {
                "regexp": "^\\s+(Assert.*)$",
                "message": 1
            },
            {
                "regexp": "^\\s+Stack Trace:$"
            },
            {
                "regexp": "^\\s+at\\s+(.*)\\s+in\\s+(.*):line\\s+(\\d+)\\s*$",
                "file": 2,
                "line": 3
            }
        ]
    }
}

TestMultiLine.ps1
Write-Output '  Failed MethodNameThatSeemsToGoOnForever [6 ms]'
Write-Output '  Error Message:'
Write-Output '   Assert.ThrowsException failed. No exception thrown. ThisExceptionHappensSometimes() exception was expected.'
Write-Output '  Stack Trace:'
Write-Output '     at Hello.World.This.IsAVeryLongClassNameWithAnEquallyLong.MethodNameThatSeemsToGoOnForever() in C:\Also\The Path To The File Is Also\Very Large\Which\Means.This\Will\LikelyWrapForMostPeople.cs:line 110'

Footnote
I spent like 6 hours trying to understand what the heck was going on, so some clarity on this would be wonderful.
As a side note the documentation on multi-line problem matcher patterns is super vague, from I've been able to discern mostly by trial, error, and searching VS Code GitHub. Is that when you have a multi-line pattern, you seemingly need to match every line in between, even if you do not care about those lines.
As far as I can tell nothing mentions that explicitly and the example in the docs Defining a multiline problem matcher "works" because the multi-lines they are matching are immediately after the first line they are matching. The docs do say This way you define a pattern per each line you want to match, but that's also not super obvious because I DON'T want to match them, I don't care about those lines. If someone could also confirm this that would be nice or I can log a documentation issue to give some better clarity on this so other people don't spend their entire night playing with regexes that work and consistently don't work in VS Code problem matchers....

Thanks for the information. I'm going to close this because as you said, seems like a duplicate of https://github.com/microsoft/vscode/issues/152634

@meganrogge Should I log an issue around the documentation not being very clear on the multi-line errors or what is the best way to have that updated with a better example and/or explanation?


Open-to-the-side opens unwanted file on the side

There seems to be a bug of this feature. Two ways to reproduce:

Set a breakpoint, let it hit. Then press the keyboard shortcut to step in (my shortcut is Alt+1). If the file is an unopened document (regardless if it is the same project), the file is opened on the side as full tab. After disabling the extension and repeat the step, the new tab is a Preview tab (in the same document group).
Run a C++ program. If it crashes at a location with unopened file, the new tab is on the side as full tab. Vanilla VS opens it as full tab in the same document group.

I don't find a way to disable this feature, and I don't know how to revert to a previous version of the extension. So I have to disable/uninstall this?
Extension version: Tweaks 2022 v1.1.132.

Seems https://github.com/madskristensen/Tweakster/commit/d5ffb2b3db0e8fe49b8cacad8687e5889556214a fixed this.


"Edge vector" error during signal extraction

Hey Biafra,
After running cnmf-e or PCA/ICA, I get the same error:

Here is an example of how I get there, perhaps there is a mistake along the way?

(Here I'm still using 'crop' because I chose not to manually modify the movie.)

Then the following Finder window opens up. I'm not sure which file to open here. I tried opening a few different ones, but all led to the same error.

Omid

Hey Omid,
A couple things (esp. if you have neuropil in your movies), should likely include a note about this in the readme.
Movie cell ROI trace during cell sorting

If you press r while in the interface, it will show you a ROI calculated trace (which will contain more cross-talk, but will give you a direct measure of ΔF/F from your movie compared to CNMF-E trace.

spatial filtering during preprocess

The other is that in the preprocessing module, when you are on the 1st page of the options, in the filterBeforeRegister setting select matlab divide by lowpass before registering or matlab bandpass before registering.
See also the spatial filtering wiki page: https://github.com/bahanonu/calciumImagingAnalysis/wiki/Preprocessing:-Spatial-filtering#dark-halos-around-cells.

viewMovieRegistrationTest

To get a feel for how the different filtering affects SNR/movie data, run viewMovieRegistrationTest module and select either matlab divide by lowpass before registering or matlab bandpass before registering then change filterBeforeRegFreqLow and filterBeforeRegFreqHigh settings, see below.

You'll get an output like the below (top left is without any filtering, other 3 are with different bandpass filtering options).

Cell ΔF/F intensity profile from the raw movie

Same cell ΔF/F intensity profile from the bottom/left movie (not the y-axis is the same as above):

Hey Biafra,
Just wanted to update you. I played around with the image registration parameters and found that low freq of 2 and hi of 60 works best for my videos. Also, I am using imtransform instead of turboreg because of the dropped frames issue.
Check out the difference!

I have a question about the final output. In the readme, you say the PCA/ICA output is an [n f] matrix with f representing the number of frames. Is this the same structure for the cnmfe output? My original movie had about 95K frames and the cnmfe analysis matrix has 11.2K columns. Also check out the x-axis below. I assume this is because of downsampling, but just want to confirm the x-axis is correct and still representing frames, not time. (PS my video was recorded at 30 fps.)
Omid

@omidm7
Awesome, great to hear!
Yep, cnmfe has a similar structure for the extractedSignals, extractedSignalsEst, and extractedPeaks. I'll add that note to the README.
Could you send over the output of below? Replace FOLDERPATH with the full folder path. Want to first check the input or raw has 95k frames before further debugging.
loadMovieList(getFileList('FOLDERPATH', 'crop|concat'),'getMovieDims',1,'displayDiagnosticInfo',1)

(p.s. as a heads up, the frames aren't dropped with transfturboreg, just the baseline will shift, on the backend it is using turboreg to get the registration coordinates then using imtransform to do the actual shifting of each frame).

Ok, here is the output for that line. (BTW the # of frames is actually 45,060, not 95k.)

`>> loadMovieList(getFileList('/Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01', 'crop|concat'),'getMovieDims',1,'displayDiagnosticInfo',1)

removing unsupported file from list: /Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/2018_12_23_p001_m01_baseline01_stripeRemoval_turboreg_crop_dfof_downsampleTime_1_source_extraction
Getting movie info for 1\4: /Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/2018_12_23_p001_m01_baseline01_stripeRemoval_turboreg_crop_dfof_downsampleTime_1.h5
hReadInfo =
struct with fields:
  Filename: '/Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/2018_12_23_p001_m01_baseline01_stripeRemoval_turboreg_crop_dfof_downsampleTime_1.h5'
      Name: '/1'
      Rank: 3
  Datatype: [1×1 struct]
      Dims: [150 200 11265]
   MaxDims: [150 200 11265]
    Layout: 'chunked'
Attributes: []
     Links: []
 Chunksize: [150 200 1]
 FillValue: 0

ans =
'/1'

loading chunk | offset: 0  0  1 | block: 150  200    1
movie size: 0.11444Mb | 150  200 | single
Getting movie info for 2\4: /Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/concat_phil_25_min_1.tif
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50838 (0xc696) encountered.'

In Tiff (line 651)
In loadMovieList (line 152)
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50839 (0xc697) encountered.'
In Tiff (line 651)
In loadMovieList (line 152)
Getting movie info for 3\4: /Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/concat_phil_25_min_2.tif
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50838 (0xc696) encountered.'
In Tiff (line 651)
In loadMovieList (line 152)
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50839 (0xc697) encountered.'
In Tiff (line 651)
In loadMovieList (line 152)
Getting movie info for 4\4: /Users/Bing/calciumImagingAnalysis/data/2018_12_23_p001_m01_baseline01_trial01/concat_phil_25_min_3.tif
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50838 (0xc696) encountered.'
In Tiff (line 651)
In loadMovieList (line 152)
Warning: TIFF library warning - 'TIFFReadDirectory:  Unknown field with tag 50839 (0xc697) encountered.'
In Tiff (line 651)
In loadMovieList (line 152)
checking movies: 100.00%
Elapsed time is 9.624162 seconds.

ans =
struct with fields:
    x: [150 150 150 150]
    y: [200 200 200 200]
    z: [11265 18000 18000 9060]
  one: [150 150 150 150]
  two: [200 200 200 200]
three: [11265 18000 18000 9060]

`

The 11,265 frames makes sense in this case since the raw movie is 45,060 and the default downsampleTime is 4x. If you want, you can either de-select downsampleTime as a pre-processing step or output both the dfof and downsampleTime step then change the movie regexp to dfof_1 in modelExtractSignalsFromMovie so CNMF-E runs on the non-downsampled movie.

What's up, Biafra. Do you have an easy way to extract the # of peaks for a given cell? I thought I could get it from the number of non-zero elements given by cnmfeAnalysisOutput.extractedPeaks, but didn't realize extractedPeaks was giving out values to reconstruct a peak. For example, below is an output of cnmfeAnalysisOutput.extractedPeaks for a single cell.

@omidm7
Yep, you can use the computeSignalPeaks function to extract calcium transients. The main Name-Value pairs to consider are numStdsForThresh, detectMethod, medianFilterLength, and minTimeBtEvents (see https://github.com/bahanonu/calciumImagingAnalysis/blob/master/signal_processing/computeSignalPeaks.m#L47). Let me know if that works for you.
computeSignalPeaks(cnmfeAnalysisOutput.extractedSignals,'makePlots',0,'numStdsForThresh',2.3,'detectMethod','raw','medianFilterLength',1000,'minTimeBtEvents',4);

For testing, you can run with makePlots = 0 as below and a GUI will appear that can let you see the detected peaks are your chosen parameters (and you can zoom in on the bottom graph to get a closer look at the peak estimation and timing).
computeSignalPeaks(cnmfeAnalysisOutput.extractedSignals,'makePlots',1,'numStdsForThresh',2.3,'detectMethod','raw','medianFilterLength',1000,'minTimeBtEvents',4);

Awesome, thanks, I got that GUI to work and tested it. Now that I found the right settings for computesignalpeaks, do I have to run cnmfe again to apply those changes to my data set?

Great, good to hear. Nope, you can just run cnmfeAnalysisOutput.extractedSignals through
[signalPeaks, signalPeaksArray,~] = computeSignalPeaks(cnmfeAnalysisOutput.extractedSignals,'makePlots',0,'numStdsForThresh',2.3,'detectMethod','raw','medianFilterLength',1000,'minTimeBtEvents',4);

Where signalPeaks and signalPeaksArray are your calcium transients.
% signalPeaks: [nSignals frame] matrix. Binary matrix with 1 = peaks.
% signalPeaksArray: {1 nSignals} cell array. Each cell contains [1 nPeaks] vector that stores the frame locations of each peak.

I normally do this after cell extraction in whatever analysis scripts I am using to make sure all animals run through the same event detection.

Thanks so much!


@dict constructors with additional properties

Currently the closure code below produces (AFAICT) only {[k: string]: any}. We should include all other defined constructor properties in the generated type, and only include the property accessor on top of that.
E.g.:
/** @dict @constructor */
X = function() {};
X.prototype.foo = function() {};

Should be:
class X {
  [k: string]: any;
  foo();
}

cc @alexeagle, this relates to isse #65.


Support fetching Features|Templates by SHA digest

Just as docker image can be pulled by digest instead of tags, Features and Templates should be able to be pinned to a SHA256 digest in the user devcontainer.json.
This change requires no changes to published Features|Templates, only a change to the CLI to respect a provided SHA.

Digests can be found on the GHCR package page for a published Feature: https://github.com/devcontainers/features/pkgs/container/features%2Fgit-lfs/82847789?tag=1

It's also available as the JSON response to the devcontainer feature publish command
{
   // ...
   "git-lfs": {
      "publishedVersions" :["1","1.1","1.1.0","latest"],
      "digest":"9e0b6df853ec932203945b76b9cfa7470ebd1f8bd765484027608581f9cf8a77",
      "version":"1.1.0"
    }
}

@joshspicer with this change, what would be the syntax in devcontainer.json? Would it be the following?
{
  "features": {
    "ghcr.io/devcontainers/features/git-lfs@sha256:9e0b6df853ec932203945b76b9cfa7470ebd1f8bd765484027608581f9cf8a77": {}
  }
}

Yes, I don't see any reason to not align with the pattern used elsewhere in the OCI/docker specs for container images.
The one caveat is that we currently detect the "v1" Features (that we hosted via GitHub Release) with the @ symbol, but I believe we can get around that while also maintaining the back compat.

Version 0.39.0 of the dev container CLI now supports pinning Features by digest.


addition to TG? independent vowel sign R̥ entering into ligature as CV aksara

Dear @danbalogh —
Do you agree that the following examples require use as = as per TG 3.3.8?

qət r̥ṅyəkən tikiṁ maṁmaṁ sapatha samaya

maR̥k= R̥mpva

I think in both cases there is a word boundary after the consonant to which R̥ is joined in ligature as opposed to the use of vowel marker r̥. But I guess the phenomenon might also occur with word boundary falling within the aksara.
I feel that one such example at least ought to be included in a next version of our TG and presumably 3.3.8 is the right place.
The first example can also be used in 3.3.4 to illustrate attachment of the ə marker to independent vowel A, a constellation which must be represented as qə in our system, even though we haven't mentioned this specific case yet. I think we should also add it to our table with the corresponding representation in Balinese script.

By Agastya's beard, this is weird! I'm not sure I've understood the situation correctly. In particular, I'm uncertain about your first example. Is it that the beginning is qət= R̥ṅyəkən? My other point of uncertainty is the word boundaries you mention. Are you implying that the presence of a word boundary could or should affect the transliteration? Or are you just saying that your hypothesis about why this phenomenon happens (instead of using a vowel marker) is that it is governed by the word boundary? (I think the latter.)
At any rate, assuming that I'm more or less correct about these, then yes, I do agree that = would be a good way to transliterate these, and 3.3.8 is the right spot for it. It seems like a generalisation of the case of adding a superscript repha to an independent vowel sign, already covered there. I would describe the generalisation as "independent vowel signs behaving like consonant signs". Actually, now that we have a number of very different scenarios under 3.3.8, it would probably best to create a new section 3.4 for all cases involving the = sign, with separate subsections from the former 3.3.5 and each point of 3.3.8.
As each time that such a new and (to me at least) bizarre phenomenon needs to be integrated into our system, I worry a little about how it might affect other aspects of our transliteration system. Here, I see only one potential difficulty (and hope there aren't many others...), which is whether you want this to be mandatory (as implied by your "the following examples require"). As of now, any use of = is optional. I think we can keep it that way, since as far as the abstract text is concerned, this way of composing the glyphs does not make any difference, and maR̥k= R̥mpva is functionally equivalent to maR̥k R̥mpva (as well as to mar̥k r̥mpva). Right?
About the thing with qə, it seems to me that we already have this in the work-in-progress version, see the file
https://github.com/erc-dharma/project-documentation/blob/a5db06844cd4404d26f2881de0f4ecfa8f8aa65c/docs/transliteration/DHARMA Transliteration Guide post-v3 WORK.docx and look at the penultimate row of the table in 3.3.4, still shown as a tracked addition.
Let me know if I'm getting this correctly, and if you agree with creating new sections in the TG.

Yes, in the first example the beginning is qət= R̥ṅyəkən.
I correct a typo, I meant "But I guess the phenomenon might also occur without word boundary falling within the aksara." The remark was only relevant to my insertion of space after = inside the rendering of the relevant akṣaras. No, I did not mean anything about why the phenomenon occurs, which is clear enough: it becomes understanble if you realize that r̥ was pronounced rə, i.e. as CV combination, then users of the script could treat R̥ as functionally equivalent to any 'proper' CV combination.
I think I can agree with the generalisation "independent vowel signs behaving like consonant signs".
I agree that the use of = may remain optional. You are right that this way of composing the glyphs does not make any difference. I'd state the functional equivalences as follows (slightly differently from what you did):

maR̥k= R̥mpva (with or without space) is equivalent to maR̥kr̥mpva (or maR̥k r̥mpva)
both express what would be marək rəmpva (or marəkrəmpva) in the loosest possible of DHARMA transcriptions

Ah yes, I'd forgotten that the update on qə has already been made in the WORK version and that this version is noi identical to the latest version on HAL.
The new example qət= R̥ṅyəkən could be introduced under the rule	"then mandatorily transliterate the “vowel support” with the letter q followed by the applicable (lowercase) Latin vowel". Under 3.3.6, we will then get the further ramification with lengh mark (:).
I agree with your proposals. Thanks a lot for dealing with this. Shall we make the updated TG public soon?


Wrong provider logic in some places

E.g. https://github.com/feathersjs/feathers-hooks-common/blob/master/src/services/is-provider.js#L15
When accessed externally, params.provider will be set to the transport that was used. The current logic is:

External: params.provider !== undefined
HTTP: params.provider === 'rest'
Socket.io: params.provider === 'socketio'
Primus: params.provider === 'primus'

Sorry @eddyystop I was being dumb. This is all fine.


Bluetooth: Host: ATT: Zephyr host is deadlocked due to the use of the low-priority system work queue to block the high-priority BT RX thread.

precondition:

No use of EATT on the device Peripheral_P1
CONFIG_BT_ATT_TX_COUNT=8 on Peripheral_P1 (req_slab available slot = 8)

steps of reproduction:

Peripheral_P1 sends out a "READ request" to Phone_A, Phone_A does not reply the request right away. Therefore there is an ongoing transaction on the attribute channel, Peripheral_P1 can not send out any gatt indication before receiving "READ response" from the Phone_A.
(req_slab available slot = 7)

Phone_A writes to a characteristics on the Peripheral_P1, which cause Peripheral_P1 trys to send 8 gatt indications to Phone_A.

The first 7 outgoing gatt indications go well and are put into a system list since Phone_A does not reply the "READ request" yet. (req_slab available slot = 0)

The 8th outgoing gatt indication will block the system workqueue by the function call gatt_req_alloc() for 30 seconds (BT_ATT_TIMEOUT) due to no more free slots in req_slab.

The next incoming ATT read/write request is received by BT RX thread. then BT RX thread will notify any pending TX before processing any new data for this connection. Notifying any pending TX will commit a work to system workqueue.

However, system workqueue is already blocked in step 4 for 30 seconds. Therefore zephyr host will be deadlocked here. The deadlock will be resolved after the ATT_TIMEOUT of 30 seconds, but then the link would anyway be unusable because the BT spec allows no further ATT communication on it. This would cause one or more disconnects after 30 seconds of unresponsiveness each time on the device Peripheral_P1.

Please use our bug template when reporting bugs. You need to edit this issue to include the information requested in https://github.com/zephyrproject-rtos/zephyr/blob/main/.github/ISSUE_TEMPLATE/001_bug_report.md

Notifying any pending TX will commit a work to system workqueue

So this is the bug. It's tricky due to how the host's synchronous nature.
What would be nice is getting an "out of resources" error for the last (and any future) indications. @alwa-nordic and @jhedberg feel free to chime in on how we could do that.
Notifying tx from the RX thread may seem weird, but it's done to free resources if possible for the current RX (and its associated app callback). We have changed the arch a bit, so maybe that bit can be removed as well (ping @alwa-nordic).
I'll look into the blocking on the syswq, we are already on a crusade to stop bluetooth from blocking it.

Peripheral_P1 sends out a "READ request" to Phone_A, Phone_A does not reply the request right away. Therefore there is an ongoing transaction on the attribute channel, Peripheral_P1 can not send out any gatt indication before receiving "READ response" from the Phone_A.

Note to implementers: According to spec, the GATT server and client have independent flow control. It is not mandated that P1 server waits with the indication until the P1 client has obtained a response.

Phone_A writes to a characteristics on the Peripheral_P1, which cause Peripheral_P1 trys to send 8 gatt indications to Phone_A.

The first 7 outgoing gatt indications go well and are put into a system list since Phone_A does not reply the "READ request" yet. (req_slab available slot = 0)

The 8th outgoing gatt indication will block the system workqueue by the function call gatt_req_alloc() for 30 seconds (BT_ATT_TIMEOUT) due to no more free slots in req_slab.

This is an API misuse unfortunately. The Zephyr GATT API is blocking. That makes it unsuitable for use on the system work queue. The application has to invoke the GATT API on a different thread. This cannot be fixed without changing API.
We would like to introduce new non-blocking GATT APIs. This is a to-do.

Notifying any pending TX will commit a work to system workqueue

So this is the bug. It's tricky to do a quick-fix due to how the host's synchronous nature.

Not a bug. The bug is in the the system work queue is blocked. But it is possible for OP to work around by adding a second "blocking definitely not allowed here" system work queue and modify the Host to post the TX work there.

Notifying any pending TX will commit a work to system workqueue

So this is the bug. It's tricky to do a quick-fix due to how the host's synchronous nature.

Not a bug. The bug is that the system work queue is blocked. But it is possible for OP to work around by adding a second "blocking definitely not allowed here" system work queue and modify the Host to post the TX work there.

Not a bug

Doesn't seem to be reproducible on latest main: the only configuration that passes without errors is sending from main-thread
https://github.com/jori-nordic/zephyr/blob/4b3fb9c4c5132f32d01c185ff9fdc16393f9c706/tests/bsim/bluetooth/host/att/sequential/dut/src/main.c#L34-L37
When indicating from RX thread or syswq (whether from a cb using the BT_RECV_WORKQ_SYS option or a dedicated work item), an -ENOMEM is immediately raised by bt_att_req_alloc()
https://github.com/zephyrproject-rtos/zephyr/blob/ac1cc17ae90a9ede2a2b2c5d8311bddf93ea3eca/subsys/bluetooth/host/att.c#L3902-L3909

This will be fixed in https://github.com/zephyrproject-rtos/zephyr/pull/79258. The resolution is that this bug is accepted, we cannot enforce no blocking on the system work queue, so we will add a no-blocking-allowed work queue which will handle the TX work and potentially other work that does not block.

@pin-zephyr could you post the zephyr hash and the exact build/zephyr/.config used for the bug?

zephyr hash: 0fb63c05d1b9ed17cca3d8138a6844d2c125d08b
config.txt

I might have been mistaken in my previous comment. I though the PR https://github.com/zephyrproject-rtos/zephyr/pull/79258 was moving tx_work off the system work queue, but that's not true.
But can you check whether the option introduced in that PR fixes the symptoms you describe?


Version Control System

I am looking for a version control system and I would like to develop a simple plugin to create and manage branches on top of the project section.
It could consist of selecting a project/version dirctory in the project section but hide the version folder in the file manager.
Who can it be implemented?

there are already plugins available for GIT and SVN. Do you need more?

The GIT plugin interface rocks but I need less :) something not requiring shell or access to a remote API or SQL database.
The objectif is to make easier the maintenance and synchronization of projects between development and production environment but not necessarily between users.
The most important right now is to be able to create branches locally
For now I separate manually the versions/branches of a project by subfolders inside the project
project:
project/master/
project/v0.1/
project/v0.2/

the duplication plugin is used to fork the projects and create the branches but I also want every user to follow the same schema forcing every new project to point to project/master by default and hiding the branches from the filetree.
Pull/merge requests can wait for the moment...
Can such plugin fit with the core shema?

with plugins you can do whatever you want. There is no need for an alignment with the core.

Hello,
I´m first here on Codiad looking for some time an online IDE. It looks really great and I´ve done some steps, also including my SVN Repos into Projects.
But I really need  a little more options.
First, changed Files I have to view on update SVN and commit.
Second I have to upload on every SAVE the file to a FTP Webspace.
Also a Codetransfer Plugin exists but I need the "upload" on save.
Think for both the existing Plugins could be extended but at the moment I don´t know where to start?


ATO-218 Always set slot values

This fixes a bug where slot values vanish when using the augmented
memoization policy. If in the past, the slot is set to a specific value,
and then later the slot being set to the same value, no new SlotSet
event is emitted. However, this leads to the augmented memoiziation
policy wrongly assuming this slot to be unset, as the older, original
SlotSet event was pruned already.
Status (please check what you already did):

[x] added some tests for the functionality
[ ] updated the documentation
[x] updated the changelog (please check changelog for instructions)
[x] reformat files using black (please check Readme for instructions)

done @sanchariGr , see current changes - CI should hopefully run green now.

@ancalita The purpose of the .gitkeep file is so that the models directory always exists, since git only knows files and not directories. So it's there on purpose. Good idea with reducing the epochs, will do that still.

@ancalita reducing the epochs to 10 is actually breaking the test 😬 So I won't do that after all.


ByteOffset should be a multiple of 4 in Javascript

Hi,
I am trying to load the exported glb in other engines such as Three.js.
In Javascript, there is an issue when the byteOffset is not a multiply of 4: https://stackoverflow.com/questions/15417310/why-typed-array-constructors-require-offset-to-be-multiple-of-underlying-type-si
GLTFSDK exports everything in a single buffer, e.g. indices (2 bytes per indice, i.e. Int16) and vertices (12 bytes per vertice = 3 floats32).
This is an issue because if you have odd number of triangles
1 triangle = 6 bytes offset
3 triangles = 18 bytesOffset
5 triangles = 30 bytesOffset,
they can not be loaded. For example if you have a single triangle, you should have a byteOffset of 6 bytes (3 indices * 2 bytes), and then have the vertices next. However a byteOffset can not be 6 because it is not a multiply of 4.
I think you shouldn't mix indices and vertices in the same buffer.
Best,
Dimitrios

Can you provide an example?

Let us assume that we have only one triangle  :)
Indices = [0, 1, 2] = [2 bytes, 2 bytes, 2 bytes]
vertices = [[0.0, 1.0, 0.0], [1.0, 1.0, 1.0], [1.0, 0.0, 0.0] = [[4 bytes, 4 bytes, 4 bytes], [4 bytes, 4 bytes, 4 bytes], [4 bytes, 4 bytes, 4 bytes]]
Then your SDK generates the following buffer to store the above information
buffer = [ 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4]  bytes
where the first 3 positions are used to store the indices and the rest the vertices. Javascript doesn't like that because the offset for vertices is 6 which is not a multiply of 4.
It would like to have another 2 bytes of dummy data to intervene before vertices, i.e.
[ 2, 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4]
or for me is better to use separate buffers within the GLB
buffer1 = [2, 2, 2]
buffer2 = [4, 4, 4, 4, 4, 4, 4, 4, 4]
Best,
Dimitrios

Also, in the above example I have assumed that you store indices as Uint16, which is not the case as I see you store them in Uint32, namely four bytes.
Unfortunately Three.js stores them as Uint16 and this is an issue. Khronos should be more strict in this topic. See also the issue I have opened in Three.js : https://discourse.threejs.org/t/gltf-maximum-buffer-size-for-vertices-65536-is-too-low/44720

Actually, do you store indices with 4 bytes ? When I parse the glb, I see that you use only 2 bytes for indices which is incosistent as you have big buffers for the vertices.


messages order

Hi,
There is a bug with messages orders.
When we post a message, the message is pushed to postMessageListeners.
But when they are executed, next message is popped, which means LIFO !
It definitely has to be FIFO, or execution order is not correct (I actually had the case)
To fix, just replace "pop" by "shift" on line 151 and it's all good !
(oh and thanks for the library, it saved me and my code some hours and problems :) )

Per the web worker spec, messages are supposed to be FIFO. Which browser are you seeing this on?

Oh I see what you mean. You mean I should change this line? I think you may be write. I need to find a test case though and compare it against the browser implementation.

Yes definitely !
By using push... then pop, it's a LIFO case.
By by using push... then shifts, it's FIFO :)
For a test case, you could push multiple messages then execute them.
Now, they are in reverse order, but with the fix they will be in FIFO order.

fixed in v1.1.1


Blocked by firewall with faketcp mode

English Only (except for bug reporting).
When connection stopped I restarted the program.
I observed the server is ready very fast. But client is not ready.
It always connection. It changes from phrase 2 to 1 then 2 to 1 and always not successful.
(Sometimes it will succesful but if you restart app then it won't success anymore)
I find that there don't exist respond from server when client is fail to connect. It always send out packet but no packet will return.
And this happens after server ready!
And if I'm not mis-remember when server is ready. It's log is stopped but client's log is flooding.

Having similar issue. No SYN ACK is actually sending back.

Using udp2raw_arm server with udp2raw_mp client.

same problem here. firewall did't think it is a tcp connect.
maybe this is the reason for the traffic interruption?

Please provide details (e.g. config and environment) for reproducing the problem.
What you really observed is "udp2raw not able to connect". As far as I can see "blocked by firewall" is only your own guess. Please stop using misleading claims before the reason is addressed.
Many reasons might cause udp2raw not able to connect, for example: mistakes in the conf, VPS doesn't support raw socket well, NAT device not compatible with the way fakeTCP works, some local iptables rule conflict with udp2raw's.

Not my guess. I see there don't have respond from server how can it's guess?

I observed the server is ready very fast. But client is not ready.
Server ready first then client never ready.

Sometimes it will succesful but if you restart app then it won't success anymore
There are successful connections and it's not nat problem because I don't use nat.

conf is fine because it's tested on local environment without problem
It usually useable when it's 1st time you started the  connection in a day but after some time it stopped working

VPS doesn't support raw socket well
How can I know whether server support it well or not?

Maybe I transmitted the data without encrypt and there is someting caused block?
I'm not very sure.
Hi @ttimasdf can you reproduce it today?

According to my observation, my connection-tracking firewall see a TCP Syn connect but not (never) estabished. It'll try to cut the connection after timeout.
After that I changed --seq-mode from 3 to 4. And the firewall CAN identify it as a TCP Established connect. That's better.
But still I have traffic interruption problem each 2 or 3 hour with about 20 seconds interruption. I don't know if it is related with firewall.

@k79e try --seq-mode 4 and the firewall will think it is a established TCP connection.


Exception thrown during sign in

Hi,
I'm using this library to communicate with my Denon AVR (which supports HEOS) but when using the system/sign_in method it throws an exception, specifically the Unexpected response received from useOneCallback (in eventHandler.js, line 40).
Running Wireshark reveals that the receiver sends two replies to the sign_in command, being:
{
   "heos":{
      "command":"system/sign_in",
      "result":"success",
      "message":"command under process&un=<redacted>&pw=<redacted>"
   }
}

and
{
   "heos":{
      "command":"system/sign_in",
      "result":"success",
      "message":"signed_in&un=<redacted>"
   }
}

Because this command sends two responses (one being that it is being processed, and the second as success) it breaks the handling of messages into the callback.
As this exception is thrown from inside the message parsing of the library which is kicked of from the data event on the socket there is also no way to handle this exception, and it will thus stop the application (or at least it does in the case of Node-RED).

Firstly, thank you very much with the great feedback!
That is very much a problem. That is generally a problem with the library not being able to handle multiple answers, which has to be fixed.
Moreover, the "command under process... message is not at all specified in the heos docs.
To be honest I do not know the best way to solve this. The biggest problem is that the program should not panic just because it receives an unexpected message. The other problem is specifically to this sign_in message. Should the first message be ignored as that does not indicate anything relevant. It would be wierd if it would trigger the promise to resolve.

It seems like the system/sign_in command isn't the only command which shows this behavior. When doing a browse/search call it will also first reply with a comand under process. So I guess that replies which have this element set on the message could/should just be ignored.

That would be a great temporary fix. command under process should really not resolve promises. It is really weird behaviour that it would trigger a success.
I agree that we should ignore command under process at least if it is not an event. I am working on a commit

Commit 11a6ade276cfe60944f931434a0c2a2c46424292 should fix this

If you download version 2.1.1 you can try it out


Improvements for relationship view processing in app inspector

Signed-off-by: Mykola Mandra<EMAIL_ADDRESS>

looks good


T-shirt sizing for Text Area

Migration guide from DNA.
Part of DNA v6.0.0-beta.21.
synced to jira: https://jira.corp.adobe.com/browse/SDS-7574

Will be done as part of core tokens migration & design catch-up


dump command problems

--fast option breaks database connection (without --fast, dump works normally)

2024/12/30 05:24:45.086469 juicefs[31691] <INFO>: Meta address: mysql://xxx:***@xxx:3306)/juicefs
Snapshot keys: 0/9920492 [-----------] 0.0/s ETA: 0s
2024/12/30 05:24:50.492201 juicefs[31691] <FATAL>: Fetoch all metadata from DB: invalid connection [main.go:31]

this error is accompanied by MySQL errors as well:
2024-12-30T05:06:02.293563-08:00 760724 [Note] [MY-010914] [Server] Aborted connection 760724 to db: 'xxx' user: 'xxx' host: '[xxx](http://xxx/)' (Got an error reading communication packets).

ETA is mostly meaningless information as it's always "0s", in reality it's going to run for hours, consider using file system used inodes as denominator to get a more useful estimation

This is due to incorrect of database connection, a coding bug I think.
If a connection is read the result from mysql server, this connection cannot be used to run another query, else the packet sequence is broken and the connection is broken.


Able to hit with longer weapons through walls

If you use a glaive for example i can hit mobs behind walls.  Doesnt seem very intendet.

Can you describe more how you are hitting the mobs behind walls? Is it through a non-standard block that has openings in it, like a fence block?

our current implementation of attack reach should be working just fine now, feel free to reopen this issue if it persists.


Navigation link causes line break when navigated to

Source: https://the-guild.dev/graphql/codegen/docs/getting-started/development-workflow
Seems like a common workaround for line-shifting through applying font-weight is to use text-shadow instead: https://stackoverflow.com/q/556153/4202031

Not sure what's the best solution to this TBH. Text shadow won't look good, and using a pseudo element can potentially cause overflowed content if it's very long.

Was fixed in v3


Add Batch and FinalizedBatch

Add Batch support. A Batch is a series of netlink messages that are processed atomically. Thus allowing us to replace an entire ruleset with a new one without any inconsistent state in between.
Batches are natively supported by libnftnl, so this is basically just a safe Rust wrapper on top of it.
We force the addition of the begin batch message upon Batch creation and we force the addition of the end batch message before converting to a FinalizedBatch. Since FinalizedBatch is the only type allowing you to get the actual netlink messages out it becomes possible to send a batch without proper begin and end messages.

This change is

Looks awesome! :ok_hand:

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

nftnl/src/batch.rs, line 31 at r1 (raw file):

    pub fn with_page_size(batch_page_size: u32) -> Result<Self> {
        let batch = unsafe { sys::nftnl_batch_alloc(batch_page_size, ::nft_nlmsg_maxsize()) };
        if batch.is_null() {

Refactor suggestion (not sure if it's an improvement): ensure!(!batch.is_null(), ErrorKind::AllocationError);

nftnl/src/batch.rs, line 45 at r1 (raw file):

    }

    pub fn add_iter<T, I>(&mut self, msg_iter: I, msg_type: MsgType) -> Result<()>

Would it make sense to implement FromIterator<T: NlMsg> for Batch? Or maybe for FinalizedBatch? Or maybe even both?
That would allow using .collect() on an iterator and get the desired type. Not sure what the general usage case is, so I'm not sure if this suggestion is useful.

nftnl/src/batch.rs, line 66 at r1 (raw file):

    fn next(&mut self) -> Result<()> {
        if unsafe { sys::nftnl_batch_update(self.batch) } < 0 {

Same suggestion to use ensure! as before, but in both cases it's a purely subjective aesthetic issue.

Comments from Reviewable

Thanks :)
I realized a typo in my first comment. It should be "impossible to send a batch without proper ..."

Review status: 1 of 9 files reviewed at latest revision, 3 unresolved discussions.

nftnl/src/batch.rs, line 31 at r1 (raw file):
Previously, jvff (Janito Vaqueiro Ferreira Filho) wrote…
Refactor suggestion (not sure if it's an improvement): ensure!(!batch.is_null(), ErrorKind::AllocationError);

That's a good idea. Changed it in all instances (It's used in many places, not just in the batch)

nftnl/src/batch.rs, line 45 at r1 (raw file):
Previously, jvff (Janito Vaqueiro Ferreira Filho) wrote…
Would it make sense to implement FromIterator<T: NlMsg> for Batch? Or maybe for FinalizedBatch? Or maybe even both?
That would allow using .collect() on an iterator and get the desired type. Not sure what the general usage case is, so I'm not sure if this suggestion is useful.

One problem is that FromIterator is infallible. Adding one, or many, messages to a batch can fail. One could implement it in such a way that overflowing the batch panics and it would be safe to use for reasonably short lists of messages. But on the other hand we could just ignore that and make people use this which is safer.

nftnl/src/batch.rs, line 66 at r1 (raw file):
Previously, jvff (Janito Vaqueiro Ferreira Filho) wrote…
Same suggestion to use ensure! as before, but in both cases it's a purely subjective aesthetic issue.

I like it in the is_null case, because it becomes compact and short. But here I think it's better to keep it as is. The ensure would be long and clunky with such a long condition IMO. If I change this to ensure! it actually becomes four lines of code after formatting. One line more than this design :P

Comments from Reviewable

Reviewed 8 of 8 files at r2.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

nftnl/src/batch.rs, line 45 at r1 (raw file):
Previously, faern (Linus Färnstrand) wrote…
One problem is that FromIterator is infallible. Adding one, or many, messages to a batch can fail. One could implement it in such a way that overflowing the batch panics and it would be safe to use for reasonably short lists of messages. But on the other hand we could just ignore that and make people use this which is safer.

Good point, understood.

nftnl/src/batch.rs, line 66 at r1 (raw file):
Previously, faern (Linus Färnstrand) wrote…
I like it in the is_null case, because it becomes compact and short. But here I think it's better to keep it as is. The ensure would be long and clunky with such a long condition IMO. If I change this to ensure! it actually becomes four lines of code after formatting. One line more than this design :P

I see. Yeah, in this case it wouldn't be much of a benefit.

Comments from Reviewable

Reviewed 1 of 2 files at r1, 8 of 8 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Review status: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


User story 1: create form and render input to diary entries

Also, please remember to remove all files you currently don't use and are coming with the template ❗ 🙂

Thanks for the review Lene, I have added the changes accordingly :)


Generate html from doc strings and notebooks

Want to make sure that readthedocs gets updated automatically.

Another, perhaps more easily automated option is to use GitHub pages.

Would be good to automatically (pre-commit) generate the HTML to ensure that it can be generated.


[FLINK-15816][k8s] Limit the value of kubernetes.cluster-id to have no more than 45 characters

What is the purpose of the change
Among all kinds of k8s components that we already introduced in Flink, the Deployment and the Service have length limitation on its name and they must be no more than 63 characters; therefore, this PR adds precheck on the config option of kubernetes.cluster-id to ensure that its value is no more than 45 characters.
Brief change log

Add length check for the config option of kubernetes.cluster-id.
Remove - from the auto-generated UUID string and get prefix string(45 characters) of the final generaged cluster-id in KubernetesClusterClientFactory#generateClusterId.

Verifying this change
This change added unit tests.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)

@flinkbot run azure

@TisonKun @tillrohrmann @wangyang0918 Could you help review this PR? Thanks a lot in advance.

@wangyang0918 Thanks for your comments. I have addressed them, appreciate it if you review it again.

Thanks for your comments @tillrohrmann! I have addressed your comments and look forward to your double-check.


Status check is not overwritten

Runner's bug https://github.com/actions/runner/issues/908

After fixed, publish to Marketplace.

Fixed?
Works fine.


Got small output value error between .h5 model and .pb model

I tried both on tf-gpu1.4+keras2.1.3 and on tf-gpu1.12+keras2.2.4 and the problem always happens.
The problem is:  After I converted the keras.application.ResNet50() model into freeze graph model in .pb format, I feed in the same picture into the converted .pb model but the output value changes just a little.
Below is the codes, which prints the first 10 element of the ResNet output vector , and also freeze the graph to output pb model file:
from tensorflow.python.framework.graph_util_impl import convert_variables_to_constants
from keras.preprocessing import image
from keras.applications.resnet50 import preprocess_input, ResNet50
import keras.backend as K
K.set_learning_phase(0)

img = image.load_img('images/34rews.jpg', target_size=(224, 224))
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x_input = preprocess_input(x)

net_model = ResNet50(weights='imagenet', include_top=False, pooling='avg')
sess = K.get_session()
preds = sess.run(net_model.get_output_at(0), feed_dict={net_model.get_input_at(0): x_input})
print('before convert to pb :', np.array(preds).squeeze()[:10])

output_name0 = net_model.get_output_at(0).op.name  # 'global_average_pooling2d_1/Mean'
constant_graph = convert_variables_to_constants(sess, sess.graph_def, [output_name0])

with tf.gfile.GFile('saved_model_constant.pb', 'wb') as f:
    f.write(constant_graph.SerializeToString())

and the print log is :
before convert to pb : [**0.99536467** 0.31807986 2.0998483  0.9077819  0.10606026 0.93215793
 0.04187933 0.10000334 1.1727284  1.0535308 ]

Then we predict the same image through the pb file generated by above codes:
def test_constant(pb_dir, img_path='images/34rews.jpg'):
    img = image.load_img(img_path, target_size=(224, 224))
    x = image.img_to_array(img)
    x = np.expand_dims(x, axis=0)
    x = preprocess_input(x)

    from tensorflow.python.platform import gfile
    with tf.Session() as sess:
        with gfile.FastGFile(pb_dir, 'rb') as f:
            graph_def = tf.GraphDef()
            graph_def.ParseFromString(f.read())

        result = tf.import_graph_def(graph_def, return_elements=["global_average_pooling2d_1/Mean:0"], name='')
        preds = sess.run(result, feed_dict={sess.graph.get_tensor_by_name('input_1:0'):x})
        print('using pb file:', np.array(preds).squeeze()[:10])

The output printing log is:
using pb file: [**0.99536514** 0.3180797  2.0998483  0.90778273 0.10606024 0.9321572
 0.04187941 0.10000295 1.1727289  1.0535315 ]

I can clearly find the extreme small value error of the predict vector, between the original keras model and the pb model after using the freeze graph method.
e.g. The first element value of the resnet output vector using original keras model is 0.99536467, but the output one is 0.99536514 using the converted pb file.
 It may not cause big accuracy error but it is really strange!

I removed the K.set_learning_phase(0) and the problem is solved. Maybe it could be better to let Keras to handle with the K.learning_phase() by iteself.
For my experiment, use the value of Keras.model.predict() as the correct outcome:
with K.set_learning_phase(0) and without convert_variables_to_constants:  value is the same.
without K.set_learning_phase(0) and without convert_variables_to_constants:  value is the same.
without K.set_learning_phase(0) and with convert_variables_to_constants:  value is the same.
with K.set_learning_phase(0) and with convert_variables_to_constants:  value is changed!

@youyuge34 Is this still an issue for you? Can you please try recent TF versions (2.6 and tf-nightly) and let us know whether the issue is still persisting. Please share a simple standalone code to reproduce the issue. Thanks!


maybe something wrong

after i debugged some bugs, the porgramme likes run normal. but not to continue, can u tell me why? What's wrong? Did not see auto join channels and filter.

Just curious, what bugs did you find?
It should auto join channels, do you have the list of channels setup in the database? Can you share with me what the state of the database looks like?

All is normal.

i tried ur channel list, and i run the bot.py also just connection complete, there's no other reaction.


Fixing Java Configurations

14:53:57.058 ERROR exceptions.FileException (FileException.java:158) - C:\SOURCE\sentinel-helicoid\Helicoid\conf\sentinel.yml Could not load the timeout property because of the exception: Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io" to unnamed module @3a4afd8d.
Please fix the file or pass the property in on the commandline using the -Dtimeout= option.
14:53:59.077 WARN  configurations.Configuration (Configuration.java:256) - localhost env being used by default. No env property set. This can be set in the sentinel.yml config file with a 'env=' property or on the command line with the switch '-Denv='.
We are unable to load config files because of this issue

"JDK newer than 15 fails due to this"

Root cause seems to be the ConfigurationData class extending File. This seems to be no longer possible. The error appears to have been the File class throwing when it was trying to make portions of itself exposed to ConfigurationData.
I have a fix coming which will refactor the class to utilize File instead of extending it.


Add a splash screen to the app

Take the picture present in pics folder and set it as the splash screen for the Paint-Me app.

Hi @anshul-kr1 can you assign me this issue.

@RohitLakra299 Sure! youre assigned for this issue. Good luck.


chore: Rename the repo to ss-python.

:books: Documentation preview :books:: https://serious-scaffold-python--238.org.readthedocs.build/en/238/

I just have used ss-specific to replace all locations in Ss-cpp, and no full name as serious-scaffold-specific substitution. l may git it full name in the docs layer😅

I just have used ss-specific to replace all locations in Ss-cpp, and no full name as serious-scaffold-specific substitution. l may give it full name in the docs later😅

No hurry~


Dock Popup

Hi Allan,
I am using popups and the Measurement widget in Calcite Maps 3.20.
This combination seems not to be working because every time you click to create a measurement the popup appears and covers your region of interest.

I guess the solution is to dock the popups but that is only available in Calcite Maps 4.x.
The Popup widget with  dockEnabled:true  is not available in JavaScript 3.x.
Still, your panels in Calcite Maps 3.20 are docked and also beautiful responsive.

Is there a way to make the popups behave like the panels in Calcite Maps 3.20 ?
My map is available on JS Bin.
Thank you,
Tim

@TimPeters at 3.x I might try putting the popup in a panel in mobile view. See
https://developers.arcgis.com/javascript/3/jssamples/popup_sidepanel.html

Thank you Allan


chore: bump flake

This PR is not linked to a task in ClickUp.  Please add the task ID starting with "CU-" (e.g. CU-1umz2q2) as the first word in the title.
To create a new task in the list click here.
Review task created in list 49208581

What are these changes? Flake lock has to be updated every time we update the repo?

This influences the version of buf and the generation tools (which come from the nixpkgs that we lock to). We'll setup CI to keep it updated :)


(enhancement)resources: add argo rollouts as a supported parent resource for chaos

Signed-off-by: ksatchit<EMAIL_ADDRESS>
What this PR does / why we need it:

Supports chaos on argo rollouts resource to support chaos as a step in blue-green/canary deployments

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Checklist:

[ ] Fixes #
[ ] Labelled this PR & related issue with documentation tag
[ ] PR messages has document related information
[ ] Labelled this PR & related issue with breaking-changes tag
[ ] PR messages has breaking changes related information
[ ] Labelled this PR & related issue with requires-upgrade tag
[ ] PR messages has upgrade related information
[ ] Commit has unit tests
[ ] Commit has integration tests

Test Rollout
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: rollouts-demo
  annotations:
    litmuschaos.io/chaos: true
  labels:
    app: rollouts-demo
spec:
  replicas: 5
  strategy:
    canary:
      steps:
      - setWeight: 20
      - pause: {}
      - setWeight: 40
      - pause: {duration: 10}
      - setWeight: 60
      - pause: {duration: 10}
      - setWeight: 80
      - pause: {duration: 10}
  revisionHistoryLimit: 2
  selector:
    matchLabels:
      app: rollouts-demo
  template:
    metadata:
      labels:
        app: rollouts-demo
    spec:
      containers:
      - name: rollouts-demo
        image: argoproj/rollouts-demo:blue
        ports:
        - name: http
          containerPort: 8080
          protocol: TCP
        resources:
          requests:
            memory: 32Mi
            cpu: 5m

Test Rollout (Negative)
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: rollouts-demo
  annotations:
    litmuschaos.io/chaos: false
  labels:
    app: rollouts-demo
spec:
  replicas: 5
  strategy:
    canary:
      steps:
      - setWeight: 20
      - pause: {}
      - setWeight: 40
      - pause: {duration: 10}
      - setWeight: 60
      - pause: {duration: 10}
      - setWeight: 80
      - pause: {duration: 10}
  revisionHistoryLimit: 2
  selector:
    matchLabels:
      app: rollouts-demo
  template:
    metadata:
      labels:
        app: rollouts-demo
    spec:
      containers:
      - name: rollouts-demo
        image: argoproj/rollouts-demo:blue
        ports:
        - name: http
          containerPort: 8080
          protocol: TCP
        resources:
          requests:
            memory: 32Mi
            cpu: 5m

ChaosEngine Events
Name:         rollouts-chaos
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"litmuschaos.io/v1alpha1","kind":"ChaosEngine","metadata":{"annotations":{},"name":"rollouts-chaos","namespace":"default"},"...
API Version:  litmuschaos.io/v1alpha1
Kind:         ChaosEngine
Metadata:
  Creation Timestamp:  2020-11-14T19:10:41Z
  Generation:          4
  Resource Version:    5917488
  Self Link:           /apis/litmuschaos.io/v1alpha1/namespaces/default/chaosengines/rollouts-chaos
  UID:                 2ec4771b-c9cf-400d-b482-5061bfb1133d
Spec:
  Annotation Check:  true
  Appinfo:
    Appkind:              rollout
    Applabel:             app=rollouts-demo
    Appns:                default
  Chaos Service Account:  pod-delete-sa
  Components:
    Runner:
  Engine State:  stop
  Experiments:
    Name:  pod-delete
    Spec:
      Components:
        Env:
          Name:   TOTAL_CHAOS_DURATION
          Value:  30
          Name:   CHAOS_INTERVAL
          Value:  10
          Name:   FORCE
          Value:  false
        Resources:
        Status Check Timeouts:
      Rank:             0
  Job Clean Up Policy:  retain
Status:
  Engine Status:  stopped
  Experiments:    <nil>
Events:
  Type     Reason                         Age   From            Message
  ----     ------                         ----  ----            -------
  Normal   ChaosEngineInitialized         101s  chaos-operator  rollouts-chaos-runner created successfully
  Warning  ChaosResourcesOperationFailed  101s  chaos-operator  Unable to filter app by specified info
  Warning  ChaosEngineStopped             100s  chaos-operator  Chaos stopped due to failed app identification

Chaos Operator Logs
{"level":"info","ts":1605381041.0537698,"logger":"controller_chaosengine","msg":"Reconciling ChaosEngine","Request.Namespace":"default","Request.Name":"rollouts-chaos"}
{"level":"info","ts":1605381041.0629547,"logger":"controller_chaosengine","msg":"App key derived from chaosengine is ","appLabelKey":"app"}
{"level":"info","ts":1605381041.062991,"logger":"controller_chaosengine","msg":"App Label derived from Chaosengine is ","appLabelValue":"rollouts-demo"}
{"level":"info","ts":1605381041.0629978,"logger":"controller_chaosengine","msg":"App NS derived from Chaosengine is ","appNamespace":"default"}
{"level":"info","ts":1605381041.0630028,"logger":"controller_chaosengine","msg":"Exp list derived from chaosengine is ","appExpirements":["pod-delete"]}
{"level":"info","ts":1605381041.06301,"logger":"controller_chaosengine","msg":"Monitoring Status derived from chaosengine is","monitoringStatus":false}
{"level":"info","ts":1605381041.0630162,"logger":"controller_chaosengine","msg":"Runner image derived from chaosengine is","runnerImage":"litmuschaos/chaos-runner:1.9.1"}
{"level":"info","ts":1605381041.0630217,"logger":"controller_chaosengine","msg":"Annotation check is ","annotationCheck":"true"}
{"level":"info","ts":1605381041.0670328,"logger":"controller_chaosengine","msg":"Annotation check failed with","error:":"resource type 'rollout', err: no argo rollout chaos-candidate found"}


Structure redux-persist code toward doing writes in batches with AsyncStorage.multiSet.

I ended up doing this more incrementally than I think we'd said I needed to, on the call today. But it's a tricky and important area, and it doesn't have any tests, so this'll hopefully make it easier to track bugs in review than if I'd done it in just a commit or two. I also found that this incremental approach wasn't unusually hard, after all—at least, not when making the changes to get to this point. (It might get harder later on.)
After this series of commits, I believe we give AsyncStorage instructions to write out the right updates, in the right order. One flaw that remains after this series is that we don't wait for one write to complete before starting the next. We'll want to fix that, probably after changes like these have landed (but could do it before if we found a good way).
Related: #4587, #4588

Thanks for the review, @WesleyAC! Revision pushed.

Revision pushed again. This time, I'd like to block on #4700 so we can get coverage of Android-only codepaths for some tests for ZulipAsyncStorage.multiSet. This branch is on top of my current revision for #4700.

Revision pushed; this is now based on #4709, which comes after #4700.

(This needs rebasing and some tweaks following comments in #4709; I'll aim to finish those this week.)

OK, revision pushed!

Looks like you sent a revised version of the first part of this branch as #4892. Just merged that!

Thanks for the review! Revision pushed, following the conversation here to here, where you suggested a better algorithm.
I'm not sure I found quite the right sequence of minimal, coherent steps to get there. There might be a better one or we might end up with some commits that squash a few changes together; let me know and I'm happy to take a different approach. 🙂

OK, and in the end I think my requested changes are all either in commit messages or comments, apart from one tiny refactor:
https://github.com/zulip/zulip-mobile/pull/4694#discussion_r691728052
and one bugfix in an error case:
https://github.com/zulip/zulip-mobile/pull/4694#discussion_r691719814
which could just consist of leaving out some of the debug data at that point, because that issue is fixed later in the series anyway.
Some comments ask for a couple of more-substantive changes, but then I realized one of those wouldn't help at all, and the other was something that was in my own draft :stuck_out_tongue: and will have a small gap either way that's best fixed in followup.

Thanks for the review! Revision pushed. Please let me know if I've missed something, or if you have ideas for followup you'd like me to do instead of you. 🙂

Thanks for the revision! The changes to the branch all look good.
There are a few more comment / commit-message changes I mentioned above that would still be good to do:
https://github.com/zulip/zulip-mobile/pull/4694#discussion_r691739007
https://github.com/zulip/zulip-mobile/pull/4694#discussion_r691687531
https://github.com/zulip/zulip-mobile/pull/4694#discussion_r691689199

Thanks for pointing those out! Revision pushed. I have a question on one of them, https://github.com/zulip/zulip-mobile/pull/4694#discussion_r707831513.

OK, and merged!
Your question caused me to realize that another of my comments was mistaken. I corrected the text you'd quoted from that comment, producing the commit message in b54737f5956bac214b49cb7386de65e73dc919ef.


unzip for Windows, internal procedure referencing wrong script

@svc-automator can we do a web meeting?  I need to look at your data.  I am not seeing what is causing this issue.
Thanks, Steve

I’m free tomorrow morning from 9am-1pm.  I also started to try and follow your instructions and do not see a “DeployHub Web Admin Service” in windows services.  Is this maybe buried under IIS somewhere?  I also checked your documentation and stop/start/restart could all use more information, right now install is documented but none of the other tasks.
Let me know,
Maria
Maria Olivero
Release Manager
Capital Insurance Group
9400 Double R Blvd
Reno, NV 89521
800-682-9255 | Ext. 5357 | Direct:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>| WebSite: www.ciginsurance.com
Confidentiality Notice: This message is intended to be viewed only by the listed recipient(s). It may contain information that is privileged, confidential and/or exempt from disclosure under applicable law. Any dissemination, distribution or copying of this message is strictly prohibited without written permission. If you are not the intended recipient, or you have received this communication in error, please notify us immediately by return e-mail and permanently remove the original message and any copies from your computer and back-up systems.
From: Steve Taylor<EMAIL_ADDRESS>Sent: Tuesday, March 06, 2018 1:43 PM
To: OpenMake-Software/DeployHub<EMAIL_ADDRESS>Cc: Maria Olivero<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [OpenMake-Software/DeployHub] unzip for Windows, internal procedure referencing wrong script (#23)
@svc-automatorhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsvc-automator&data=02|01|molivero%40ciginsurance.com|0e4053bc5ecc4c35d27608d583ab3213|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636559693661035570&sdata=m1BKBbBFZ0OiGXl5r56g53ARoPGcJbBUO4wYwqzt2mw%3D&reserved=0 can we do a web meeting? I need to look at your data. I am not seeing what is causing this issue.
Thanks, Steve
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FOpenMake-Software%2FDeployHub%2Fissues%2F23%23issuecomment-370938883&data=02|01|molivero%40ciginsurance.com|0e4053bc5ecc4c35d27608d583ab3213|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636559693661035570&sdata=TPyBnrtGHp%2FWPBIJd5njwcsfaPyMuc%2FB6D8Lfv3gsgQ%3D&reserved=0, or mute the threadhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAWUjNgVjbiss75MhefbqH119lfN0yldgks5tbwLQgaJpZM4SYr5E&data=02|01|molivero%40ciginsurance.com|0e4053bc5ecc4c35d27608d583ab3213|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636559693661035570&sdata=TdLMGTsuGl1xkEPN7XL2s5vjuNqwFEJMoaCHn%2Fc8ZGQ%3D&reserved=0.

That does seem to work..
     : No
DNS Suffix Search List. . . . . . : CIGDEVIN.DEV
Ethernet adapter Local Area Connection 2:
Connection-specific DNS Suffix  .  : No
Autoconfiguration Enabled . . . .   : Media disconnected
Connection-specific DNS Suffix  .   : No
Autoconfiguration Enabled . . . .  : Media disconnected
Connection-specific DNS Suffix  .   : No
Autoconfiguration Enabled . . . . : Yes
ipconfig exited on mrydevwcf1 with error code 0.
E:\DeployHub\Engine>
In fact, unzip does as well:
E:\DeployHub\Engine>psexec \mrydevwcf1 -u XXXXXX  -p XXXXXX
unzip D:\CIGApplications\meo\PLBusinessServicesWinSvcHost_PV.zip
. . .
inflating: PLBusinessServicesWinSvcHost_PV/Templates/ReportTemplates/CurrentCa
rrier.xslt
inflating: PLBusinessServicesWinSvcHost_PV/Templates/ReportTemplates/MVRReport
.xslt
inflating: PLBusinessServicesWinSvcHost_PV/WebControlLibrary.dll
unzip exited on mrydevwcf1 with error code 0.

Hi Maria,
Here is the updated library that will use psexec.exe if its present.  https://www.openmakesoftware.com/qa/win.zip
Please put the new winlib.dll and psexec.exe into the /engine/lib directory.  Then try running the deployment that has the unzip as the Post Action.  Let me know how it works.  We may need to get on a web meeting since I was not able to test out all of the scenarios on my side.
Thanks, Steve

Cool beans and thanks, I’ll give it a shot.
Maria Olivero
Release Manager
Capital Insurance Group
9400 Double R Blvd
Reno, NV 89521
800-682-9255 | Ext. 5357 | Direct:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>| WebSite: www.ciginsurance.com
Confidentiality Notice: This message is intended to be viewed only by the listed recipient(s). It may contain information that is privileged, confidential and/or exempt from disclosure under applicable law. Any dissemination, distribution or copying of this message is strictly prohibited without written permission. If you are not the intended recipient, or you have received this communication in error, please notify us immediately by return e-mail and permanently remove the original message and any copies from your computer and back-up systems.
From: Steve Taylor<EMAIL_ADDRESS>Sent: Friday, April 13, 2018 11:39 AM
To: OpenMake-Software/DeployHub<EMAIL_ADDRESS>Cc: Maria Olivero<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [OpenMake-Software/DeployHub] unzip for Windows, internal procedure referencing wrong script (#23)
Hi Maria,
Here is the updated library that will use psexec.exe if its present. https://www.openmakesoftware.com/qa/win.ziphttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.openmakesoftware.com%2Fqa%2Fwin.zip&data=02|01|molivero%40ciginsurance.com|ce295dcc2f27403bc2ac08d5a16dd21c|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636592415411234475&sdata=WItETfF6ngRBCTe5u1xlAU4y0Y63LyWQiIIx2Vn0MIE%3D&reserved=0
Please put the new winlib.dll and psexec.exe into the /engine/lib directory. Then try running the deployment that has the unzip as the Post Action. Let me know how it works. We may need to get on a web meeting since I was not able to test out all of the scenarios on my side.
Thanks, Steve
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FOpenMake-Software%2FDeployHub%2Fissues%2F23%23issuecomment-381225591&data=02|01|molivero%40ciginsurance.com|ce295dcc2f27403bc2ac08d5a16dd21c|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636592415411234475&sdata=aox8F9gUVwM1KODn6JxHrIHebfwYoveb3Yju70ebuBY%3D&reserved=0, or mute the threadhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAWUjNtmERHX8zHoraX1ma5G1D7s-nAq1ks5toPDBgaJpZM4SYr5E&data=02|01|molivero%40ciginsurance.com|ce295dcc2f27403bc2ac08d5a16dd21c|57b0d3d9caa6459ab76ce774b8393e6c|0|0|636592415411234475&sdata=KRBmMnTSu8l%2BgNHocTrBGQ%2F%2F%2FYhf%2FaG0%2FgYhZcHhRHU%3D&reserved=0.


API Products: Documentation

Description
What did you change and why?

Changed naming of certain features/things to match new API Products naming (see linked DOCU ticket for detailed name substitutions)
Created a new section and docs for API Products
Revised the Getting Started pages to match the new workflow (and per Christians request)
Revised the Service Hub section to remove all pages but the Overview, which is now just a placeholder pointing people to the right places to go now and alerting them to the fact that Service Hub is getting updated.

What still needs to be done?

[x] The pages that were moved/renamed in Getting Started (/getting-started/implement-service/ and /getting-started/configure-service/), do we want to rename the file since the page title changed?
[x] Service Hub Overview page: The table there is just a rough idea I had, it needs to be revised. I think ideally like a Q + A thing, "I did this in Service Hub where do I go now to do that thing?" with a link to the new location/instructions.
[x] Screenshots on all pages in the API Product section pages will need to be added
[x] I moved the "Manage Plugins" subsection to Runtime Manager. I had to remove it from the Service Hub section. Does this make sense here? I didn't touch any of the pages in that subsection, so they might need a touch up to revise any "Service Hub" type wording (see DOCU-3017 for naming changes)
[x] "Productize a Service" page in Getting Started along with pages in API Products section will need to be updated with any UI changes once customer 0 happens.
- [x] Merge in sections that now belong to the API product and not Dev Portal.
[x] "Proxy and Test a Service" in Getting Started: Pretty sure we can add the missing Runtime Manager steps before customer 0, I just ran out of time to figure it out.
[x] Docs Homepage updates: See Christians' suggestions in the Miro board for things that need to be updated.
[x] Need API Products icons to use in the sidebar and inline. I reached out to Josh on Jira but haven't heard back yet.
[x] Replace all mentions of service hub
[x] rewrite any steps that reference the service hub.

Include any supporting resources, e.g. link to a Jira ticket, GH issue, FTI, Slack, Aha, etc.
DOCU-3017 and DOCU-3267 (combined because they were so intertwined)
Testing instructions
Netlify link: https://deploy-preview-5721--kongdocs.netlify.app/
Checklist

[x] Review label added
[x] PR pointed to correct branch (main for immediate publishing, or a release branch: e.g. release/gateway-3.2, release/deck-1.17)

** Any images that required marketing or design input, were not added. **

Thanks @adorack I resolved all comments around the services-and-routes.md since this page will not exist anymore.

We closed the discussion about unique version names. Please apply suggestion.

These updates are included.


this class is not key value coding-compliant for the key otherButtons

I'm getting the above error if I use your Example project, remove the .framework and add purely just the 2 source files. I'm using objc, so I removed the swift portions as well. Otherwise just refer to attached zip.
 Everything is working now.


[Feature] Would the training process be released in the feature?

Is your feature request related to a problem? Please describe.
您好，ChatGLM-6B的效果相当令人惊艳，但是本项目并没有提供训练的代码和相关细节，仅提供了部署的版本，未来会考虑训练方面代码的开源么？
Solutions
训练相关的内容的放出和讨论？
Additional context
No response

Duplicate of #3


[Fix][Doc] fix doc tip style and add document format specification

Added a new note section in the document format specification, including tips, notes, and cautions.
Update the use of comments in Clickhouse, Hive, and LocalFile connector documentation.
Added a note section in the Chinese version of the document format specification.

Purpose of this pull request

This pull request fix doc tip style.
Does this PR introduce any user-facing change?

no
How was this patch tested?

exists tests
Check list

[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist
Add ci label in label-scope-conf
Add e2e testcase in seatunnel-e2e
Update connector plugin_config

[ ] Update the release-note.

Thanks @bwcxyk ! Could you add a test case to check all docs in
https://github.com/apache/seatunnel/blob/bd89d84fe655cd1b262e0cb1b83cbddc0d1a2f8d/seatunnel-ci-tools/src/test/java/org/apache/seatunnel/api/file/MarkdownTest.java#L36
?

I can't finish.

Use admonitions to highlight important information.

Use admonitions to highlight important information.

Please update https://github.com/apache/seatunnel/blob/bd89d84fe655cd1b262e0cb1b83cbddc0d1a2f8d/docs/sidebars.js#L229


Removing private SSH key

I noticed you had commited a private ssh key to your repo.
"I know. It was intentional."
Sorry to bother you then. Feel free to ignore this PR.
You know you can also secure private data while keeping it under source control.
"I didn't notice. What is this file? Is it a problem?"
This can be a very bad thing
"I keep accidentally typing git add ., any way I can prevent that from being an issue?"
There are a couple of steps you should take immediately:

Avoid commands like git add . and git add *. It's better to be more explicit when you can.
Assume your key is compromised. Unassociate it from any accounts you are using it for and generate a new key.
Store your keys in a location outside of your project.
Use a .gitignore file to prevent accidental commits of certain files.

Github also has a page about how to remove sensitive data from a repo.
Hope this PR finds you well

Hey @oudeismetis,
thanks for keeping an eye out for our safety. However, in this case, the public use of private ssh keys was indeed intentional. The key is only used during the tutorial, which is completely public anyway (inclusing username and password for various docker containers). There is no sensitive data that can be accessed with this key.


Add a separate stack for integration tests

[ 추가/수정된 구성 요소의 이름 ] / [ Name of Component Added/Modified ] / [ Nombre del Componente Agregado/Modificado ]
In order to isolate interactions with SQS and eliminate a race condition during integration tests, we're introducing the 2nd stack for Auth Service. This will be using the same DB, but it own queues.
변경 유형 / Types of Changes / Tipos de Cambios

[ ] 핵심 / Core / Centro
[ ] 버그 수정 / Bugfix / Corrección de Error
[ ] 새 구성 요소 / New component / Nuevo componente
[X] 개선/최적화 / Enhancement/optimization / Mejora/optimización
[ ] 문서 / Documentation / Documentación
[ ] 테스트 / Test / Prueba

Does the sha need to be updated to use the newest deployment in auth-services: https://github.com/htaic/auth-services/pkgs/container/auth-service ?