Added Zero Conf functionality (LAN mode)

Added crypto functions, used for using Sonoff in "LAN" mode (directly by IP, without Internet conection)
Requires Crypto-JS library

Hello @luisllamasbinaburo
Thanks for this amazing PR.
Can you post a script on how to use this?
Something like:
const ewelink = require('ewelink-api');

/* instantiate class */
const conn = new ewelink({
  email: '<your ewelink email>',
  password: '<your ewelink password>',
});

/* get all devices */
const devices = await conn.getDevices();
console.log(devices);

Thank you.-

Yes, of coures
First, we have to use a full login connecion to save the 'deviceCache' (you only have to do this one time)
async function devicesToJson(connection) {
  const devices = await connection.getDevices();

  var jsonContent = JSON.stringify(devices); 5
  fs.writeFile("devices.json", jsonContent, 'utf8', function (err) {
    if (err) {
      console.log("An error occured while writing JSON Object to File.");
      return console.log(err);
    }
  });
}

When you have your 'devices.json' file, you need a 'arpTable', that have IP-MAC association in you LAN network (I have an object that generates this arpTable, we could talk about this step later)
async function loadCachedDevices() {
  let jsonContent = fs.readFileSync('devices.json');
  return JSON.parse(jsonContent)
}

async function loadArpTable() {
  let jsonContent = fs.readFileSync('arpTable.json');
  return JSON.parse(jsonContent)
}

(async () => {
  let devicesCache = await loadCachedDevices();
  let arpTable = await loadArpTable();

  var connection = new eWeLink({ devicesCache, arpTable });
  await connection.setDevicePowerState(DEVICE_XXX_ID, 'on', 1)
})();

If the user have both elements (deviceCache and arpTable) the use of 'ZeroConf' is the same that 'Online', but much faster, doesn't requires internet connection, and have no risk to be banned by Sonoff.
But I still have to improve the 'online' / 'ZeroConf' mode switch. For example, it should try to use ZeroConf, and if we have error as result, try to use Online method
But I dont want to put all this code in the first commits, before knowing your opinion

Ok, so, here is what i did:

created devices.json with your code, no problems here
find one of my sonoff ip address
hardcoded the ip on getLocalIp, to always return the same ip address

called this script:
(async () => {
  const devicesCache = await loadCachedDevices();

  // here i've ignored the arpTable because i'm returning a hardcoded ip
  const connection = new ewelink({ devicesCache });
  await connection.setDevicePowerState('my sonoff id', 'toggle');
})();

the POST to the ip address returns { seq: 31, sequence: '1561818131123', error: 0 } which looks good because can connect, but no power state is updated ...
any ideas?

for the moment, try
await connection.setDevicePowerState('my sonoff id', 'on'); // or 'off'

'togle' depends on the current device state, and you get that using an 'online' request.
I have to implement some funcionalty to get the current state in 'ZeroConf'
I believe that we can do that using a request to `http://[ip]:[port]/zeroconf/info
with body
{
	"deviceid": "my sonoff id",
	"data": { }
 }

ok, it worked!
the problem was i'm using single channel device, so i pointed the url to http://[ip]:[port]/zeroconf/switch and turned on/off successfully
so, my thoughts on the lan mode is we can't make the default method because:

not every device has lan mode
people can be using the package on a remote server

i think the best will be to pass device ip on the connection method, like:
/* instantiate class */
const conn = new ewelink({
  ip: '<IP_ADDRESS>',
});

and if there is an ip use lan mode (and return an error if there is no response)
what do you think?

What I have in mind is somethink like:

User provide login information only (at, or email + pass) => ok, I go online mode only
User provide cache information (devicesCache + ip-somehow) => ok, i go ZeroConf mode only
User provide both login and cache => ok, i go try ZeroConf, and if not posible try online mode

On the other hand, the reason for use arpTable, instead of pass the Ip, is that your object 'Connection' abstract a connection to multiple devices, and you access individual devices by its deviceId
'devices.json' doesn´t contains IP information, but i does contains Mac address.
And, in and small network, it's easy to obtain the arptable that joins local ip with Mac address
(I can provide the code for that in another branch if you want. It's not long, but a little tricky, and have some dependences. That is why I didn't include in this branch, and the arpTable as a constructor parameter)

Ok @luisllamasbinaburo, sounds good to me, my main concern is about adding more dependencies for to build the arpTable, but let's see how it progress.
I say to start by doing User provide cache information (devicesCache + ip-somehow) => ok, we go ZeroConf mode only and make the third point later, to not have a huge PR.
Also, maybe we can add on a new PR the required code to prepare the lan stuff, like loadArpTable and devicesToJson then once merged, we can continue by linking to this PR.
Thoughts ?

Ok perfect, I agree. That is exactly why I don't add the arpTable, because I didn't want to add more references. In fact, is not a 'Sonoff API'.
If user is able to provide this ip-mac relationship table from any other method (another library, from his router config, manually entered... whatever) it's independient from 'Sonoff API'
I will put the code in another PR, and we will see how to put both parts together in a "clean" way

If you add a group to the server and add all LAN capable devices to this group when you download the device info you will see this group against the devices which are lan capable!
I created a group LANCAPABLE and added my two devices into it now when I get device info I see the device is part of the group. Although it doesn't report the group name in text but gives a reference, eg:
    groups: [ '5dc8227d5c833e64197ddfb2' ],

Hey @luisllamasbinaburo
There was too many conflicts to rebase this branch with master so i opened a new one: https://github.com/skydiver/ewelink-api/pull/46 (i'm gonna close this PR).
The zeroconf feature will not be possible without your help.
Thanks a lot.


LiquibaseServletListener.contextInitialized() should not shut Embedded Derby down

name: Pull Request
about: Create a report to help us improve
title: 'LiquibaseServletListener.contextInitialized() should not shut Embedded Derby down'
labels: Status:Discovery
assignees: ''

Environment
Liquibase Version: 3.8.x
Liquibase Integration & Version: servlet
Liquibase Extension(s) & Version:
Database Vendor & Version: Apache Derby 10.14
Operating System Type & Version:
Pull Request Type

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

Description
In certain configurations using LiquibaseServletListener with Embedded Derby application may fail with java.sql.SQLNonTransientConnectionException: No current connection..
Full details of Steps To Reproduce, Actual Behavior, Expected/Desired Behavior and Additional Context have been given to CORE-3540.  This is my suggestion of how it could be addressed.
Fast Track PR Acceptance Checklist:

[x] Build is successful and all new and existing tests pass
[x] Added Unit Test(s)
[ ] Added Integration Test(s)
[ ] Documentation Updated

┆Issue is synchronized with this Jira Story by Unito

I have added relevant unit tests but I had to add derby as test dependency – not sure if that's o.k.

@stanio thanks again for another PR.
Sizing as RiskLow:

good discription
includes tests

Added sample LiquibaseServletListenerTest, although I had to add derby as a test dependency again.  I'll rework the tests (possibly drop the last one) if given suggestions from the Liquibase maintainers.

@stanio , I will defer to Erzsebet on the inclusion of derby.  Thanks for the test add!

We decided we will not do any additional manual testing beyond what will be covered with the automated tests.


System Out of Memory Exception on SetupEnviornment (LZ4 Decompression)

Attempted to get this going on a project I was working on but was unable to. I was able to run the tests against the actual Elasticsearch-Inside project without issue, which is surprising.
I did a quick test and switched from the LZ4 file to a ZIP and I was able to run the tests. Startup time increased about 3 seconds, but I might just roll with that for now.
So it might not really have anything to do with the library and instead with LZ4 decompression, but it might be a good idea to look into an alternative.
Result StackTrace:
at System.IO.MemoryStream.set_Capacity(Int32 value)
   at System.IO.MemoryStream.EnsureCapacity(Int32 value)
   at System.IO.MemoryStream.Write(Byte[] buffer, Int32 offset, Int32 count)
   at System.IO.Stream.InternalCopyTo(Stream destination, Int32 bufferSize)
   at System.IO.Stream.CopyTo(Stream destination)
   at System.IO.Compression.ZipArchive.Init(Stream stream, ZipArchiveMode mode, Boolean leaveOpen)
   at System.IO.Compression.ZipArchive..ctor(Stream stream, ZipArchiveMode mode, Boolean leaveOpen, Encoding entryNameEncoding)
   at System.IO.Compression.ZipArchive..ctor(Stream stream, ZipArchiveMode mode)
   at ElasticsearchInside.Elasticsearch.ExtractEmbeddedLz4Stream(String name, DirectoryInfo destination)
   at ElasticsearchInside.Elasticsearch.<SetupEnvironment>b__3()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()

Result Message:
Test method w exception:
System.AggregateException: One or more errors occurred. ---> System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.

Looks like ZipArchive allocates a new MemoryStream and copies everything to it if it cannot seek on the the source stream (the LZ4 output). Your case probably worked because no new allocations was necessary.
I'll look for a better solution.

Ok, I've rolled my own archive-format instead of ziparchive, it does not require seek on the source stream so it can read the lz4 stream directly.
Since I have not been able to recreate your error it would be awesome if you could try it out from the branch avoid-ziparchive-memorystream and let me know how it goes.

Just gave it a try and it looks like the solution worked, thank you!


Saving Notes Should Return You To Previous View

I like to view my notes from the Notebook View. For example, I click CircleCI, then view all my CircleCI notes. If I decide to edit a note, when I save it, I want to return back to that Notebook view.
Right now, it returns me to the main note view that shows all notes.

Now that we are able to edit notes in place, there is no more redirection and no more concept of "previous view"


usb: device: next: increased RAM and flash footprint with "device_next" USB stack

Is your enhancement proposal related to a problem? Please describe.
The device_next USB stack comes with a significant increase in both RAM and flash footprint compared to the "legacy" stack. The impact is especially hard on smaller USB MCUs with e.g. 16k RAM and 64k flash (smaller STM32 parts) where the increase can prevent existing firmware applications from switching to the new stack.
Describe the solution you'd like
While the design and implementation of the device_next is much superior to the "legacy" stack, it would be nice if the RAM and flash footprint could be reduced to be more friendly towards more resource constrained MCUs.
Describe alternatives you've considered
None.
Additional context
As an example, the samples/subsys/usb/hid-mouse/ sample compiled for the frdm_k64f board increases significantly in RAM and flash footprint when built for the device_next stack, but the problem is not limited to this sample/board.
$ west build -b frdm_k64f/mk64f12 samples/subsys/usb/hid-mouse
...
Memory region         Used Size  Region Size  %age Used
           FLASH:       41016 B         1 MB      3.91%
             RAM:       12760 B       192 KB      6.49%
           SRAML:          0 GB        64 KB      0.00%
        IDT_LIST:          0 GB        32 KB      0.00%

$ west build -b frdm_k64f/mk64f12 samples/subsys/usb/hid-mouse/ -- -DCONF_FILE=usbd_next_prj.conf -DEXTRA_DTC_OVERLAY_FILE=usbd_next.overlay
...
Memory region         Used Size  Region Size  %age Used
           FLASH:       54792 B         1 MB      5.23%
             RAM:       15480 B       192 KB      7.87%
           SRAML:          0 GB        64 KB      0.00%
        IDT_LIST:          0 GB        32 KB      0.00%

These are the numbers when building the same sample with logging disabled:
$ west build -b frdm_k64f/mk64f12 samples/subsys/usb/hid-mouse -- -DCONFIG_LOG=n
Memory region         Used Size  Region Size  %age Used
           FLASH:       27288 B         1 MB      2.60%
             RAM:       10648 B       192 KB      5.42%
           SRAML:          0 GB        64 KB      0.00%
        IDT_LIST:          0 GB        32 KB      0.00%
Generating files from /home/brix/Projects/zephyrproject/zephyr/build/zephyr/zephyr.elf for board: frdm_k64f

$ west build -b frdm_k64f/mk64f12 samples/subsys/usb/hid-mouse/ -- -DCONF_FILE=usbd_next_prj.conf -DEXTRA_DTC_OVERLAY_FILE=usbd_next.overlay -DCONFIG_LOG=n
...
Memory region         Used Size  Region Size  %age Used
           FLASH:       37016 B         1 MB      3.53%
             RAM:       13368 B       192 KB      6.80%
           SRAML:          0 GB        64 KB      0.00%
        IDT_LIST:          0 GB        32 KB      0.00%

Numbers for the nrf54h20dk/nrf54h20/cpuapp:
west build -b nrf54h20dk/nrf54h20/cpuapp samples/subsys/usb/hid-mouse/ -- -DCONFIG_LOG=n
...
Memory region         Used Size  Region Size  %age Used
           FLASH:       44052 B       248 KB     17.35%
             RAM:       11232 B       256 KB      4.28%
   DMA_RAM3x_APP:           2 B         4 KB      0.05%
        IDT_LIST:          0 GB        32 KB      0.00%

west build -b nrf54h20dk/nrf54h20/cpuapp samples/subsys/usb/hid-mouse/ -- -DCONF_FILE=usbd_next_prj.conf -DEXTRA_DTC_OVERLAY_FILE=usbd_next.overlay -DCONFIG_LOG=
...
Memory region         Used Size  Region Size  %age Used
           FLASH:       60564 B       248 KB     23.85%
             RAM:       17992 B       256 KB      6.86%
   DMA_RAM3x_APP:           2 B         4 KB      0.05%
        IDT_LIST:          0 GB        32 KB      0.00%


glfwCreateWindow() should support wchar_t as input window title

The current glfwCreateWindow() current takes const char* as parameter for window title. This works fine most of the time. However when I try to input non-ASCII (e.g Japanese character symbol), the output window title display them as ? for each byte of those non-ASCII symbol. Note that I use
wchar_t* text = L"あ";
to hard-code the unicode string for testing.
I've read the FAQ and see that GLFW supports Unicode. I have browse the source code and found this function:
WCHAR* _glfwCreateWideStringFromUTF8Win32(const char* source);
in which it calls MultiByteToWideChar() to convert multi-byte string from the title parameter said above to wchar_t*.
So I have reversed the process by call WideCharToMultiByte() to convert my wchar_t* unicode string to const char* and then pass the result in CreateWindow function or SetWindowTitle function. And I find that pretty annoying even I can warp the process in one function, plus convert an unicode string to multi-byte char string then convert it back to unicode string is a waste of time and resource.
So I think there should be a version of glfwCreateWindow() that takes in wchar_t* as window title parameter. Do this may require the change of _GLFWwndconfig structure, or just simple warp the conversion of wchar_t* to const char* then call the former function. The change is not much, but it lift the weight for user.
GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title,
                                     GLFWmonitor* monitor, GLFWwindow* share)
{
    char* newtitle;
    int count;
    GLFWwindow* retWindow;

    // first get the size of the buffer, if you know exactly the size then this is not necessary;
    count = WideCharToMultiByte(CP_UTF8, 0, cl, -1, nullptr, 0, NULL, NULL);
    if (!count)
    {
        _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, "Win32: Failed to convert string from UTF-8");
        return NULL;
    }

    newtitle = (char*)calloc(count, sizeof(char));
    WideCharToMultiByte(CP_UTF8, 0, cl, -1, newtitlet, count, NULL, NULL);

    // call the exactly former function;
    retWindow = glfwCreateWindow(width, height, newtitle, monitor, share);

    // need to free the calloc()-ed pointer;
    free(newtitle);

    return retWindow;
}

@3x3y3z3t Is this still an issue for you?

Sorry for late reply, everyone.
@elmindreda My source file is encoded in ANSI, and my locale is set to Japan (VS save the file as JIS - codepage 50220, I think this is what cause the problem on my end. When I save the file as UTF-8 w/o signature - codpage 65001, the title string passed in display correctly for almost all character (include Japanese symbol), except some Vietnamese symbol like ầ ở ẵ.
Workaround using wchar* to store the string, convert using WideCharToMultiByte() then passed in create window function result in all character (symbol) displayed correctly.

Thanks for coming back.
If you're satisfied with the solution, please close the ticket.

@3x3y3z3t No worries and thank you for the follow-up!


Calendar ID's as Main Account Email

I'm having an issue with appointments not pulling from calendars that my primary account has access to, but they are the primary calendar for the other account. That's confusing, so let me break it down.
Primary Account = Where the script is running and the one with all the access.
Account 1 = The primary calendar is being shared for the account.
Account 2 = The primary calendar is being shared for the account.
For Accounts 1 and 2, the Calendar ID is the account's email, not a generated calendar id email. I have full read/write access to all of them, but I can't pull anything from them.
Any ideas?
Thanks, and awesome script!

When you run it, what does the output say?

When you run it, what does the output say?

No errors. Here's a new run log.
Execution log
7:47:33 PM	Notice	Execution started
7:47:40 PM	Info	7 deleted events between Tue Feb 01 2000 00:00:00 GMT-0600 (Central Standard Time) and Wed Mar 15 2023 00:00:00 GMT-0500 (Central Daylight Time).
7:47:42 PM	Info	7 events created between Sun Feb 05 2023 00:00:00 GMT-0600 (Central Standard Time) and Wed Mar 15 2023 00:00:00 GMT-0500 (Central Daylight Time).
7:47:43 PM	Notice	Execution completed

I don't know what happened, but it started working. It would have to be something on Google's end because I haven't changed any permissions or the code set to run.
Needless to say, this can be closed. :)
Thanks for the help.


[DO NOT MERGE] Add checks for added/removed ATE test files

Pull Request Functional Test Report for #1981 / d77dbd8edff2c9872afcfdbcd69221fd8f0ac5eb
No tests identified for validation.
Help


Could you provide the pre-training model of HG104？Thanks

Could you provide the pre-training model of HG104？Thanks

@Stridecdg  We train the model for scratch, so there is no pre-training model

@Stridecdg We train the model for scratch, so there is no pre-training model

Do you have a trained model? dla34 backbone

@WangGangUCAS Please goto the first line of  the 'README.md'


Confusing asterisk next to Temporal Start Date and End Date

The asterisk next to the Start and End Date fields seem to indicate they are required fields, although they are not required. Users have assumed those are the only required fields.

@mraocuahsi You can get clarification from Liza what page this is on and if it's intended to be "required" or not, meaning you can leave the asterisk or take it away. Backend changes may be required. We can chat after we ask Liza the intent here.

Note resource landing page doesn't have asterisks so wondering if this is still a thing

looks fixed!


Content Security Policy of your site blocks some resources

I re-installed my packages when upgrading from 4.0.0 to 4.0.7 (thanks for your help!).
I am now getting an error on the media library page: "Content Security Policy of your site blocks some resources" referencing the azure blob storage URL.
Is this permission something I can add by altering middleware.js or should I re-install the plugin?

I was able to resolve this error by adding my Azure blob storage account to middlewares.js as per this article: https://github.com/strapi/strapi/issues/11637.


Updating the SketchUp Discourse plugin to use the new login service. …

… A custom OmniAuth strategy was necessary too since the new login service does not implement OpenID.
Discussed previously in a thread on Discourse Meta.

This looks good to me, merging in


Is it suitable for refinning bins

I read the paper. In discussion you mentioned that "COBRA can also be applied to microbial genomes and whole metagenonmes" and "using COBRA only to extend the subset of longer contigs". How about to use COBRA as a binning refiner? Although some refiner has been reported, such as https://github.com/dparks1134/RefineM and https://apcamargo.github.io/magpurify2, purifing bins is difficult in extremely complex microbial community. Maybe COBRA have more performance as a binning refiner.

Hi, I replied in the thread. Please check.
Thank you.
Best,
LinXing
LinXing Chen, Ph.D.
Associated Project Scientist,
The Banfield Lab,
University of California, Berkeley, USA 94706
Phone: (1)510-701-7864
Email: @.***
在 2023年6月4日 -0700 PM8:23，Jocker @.***>，写道：

I read the paper. In discussion you mentioned that "COBRA can also be applied to microbial genomes and whole metagenonmes" and "using COBRA only to extend the subset of longer contigs". How about to use COBRA as a binning refiner? Although some refiner has been reported, such as https://github.com/dparks1134/RefineM and https://apcamargo.github.io/magpurify2, purifing bins is difficult in extremely complex microbial community. Maybe COBRA have more performance as a binning refiner.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Hi @linxingchen. In my opinion, whether a contig belongs to genome A or genome B needs not only overlaps but also other evidences, such as TNF(tetranucleotide frequency) , coverage , phylogenetic assignment and single marker genes. I will use classical refinement tools, like metawrap refinement module at first, then result bins which have low completeness are polished by COBRA (because the reassemble step usually decrease completness, can COBRA be the replacer?).

I have no idea how metawrap works but sounds like there is a reassemble step, could you explain more? When you said "reassemble step usually decrease completeness", I thought it was a step of assembling the mapped reads.
For a given bin, COBRA will join the contigs by their validate end overlap (maxK or maxK-1), sometimes using very small contigs that may not be in the bin, to get longer sequences. So COBRA does not use mapped reads for reassembly.

Yes, the reassemble step is to used PE reads mapped to one bin. We used this after refinement module, but usually got a poor result acoording to checkm. So I'd like to replace the reassemble step by COBRA for bins quanlity improvement, although they have distinct different algorithms.

Yes, the reassemble step is to used PE reads mapped to one bin. We used this after refinement module, but usually got a poor result acoording to checkm. So I'd like to replace the reassemble step by COBRA for bins quanlity improvement, although they have distinct different algorithms.

Right, "reassembly of mapped reads won't get better genomes", that's a lesson we learned years ago. It should be great to use COBRA for that step if the refinement step is good enough.


HTML of a loaded partial is not removed when partial is removed

HTML:
<starcounter-include partial="{{model.FocusedProject}}"></starcounter-include>

The server side:
this.FocusedProject = null;

Patch to the client:
[{"op":"replace","path":"/FocusedProject","value":{}}]

Browser console:
partial.Html for <starcounter-include>…</starcounter-include> is missing.

But the actuall HTML is not removed.
Test bench is available: https://github.com/miyconst/Playground/

https://github.com/Starcounter/starcounter-include/blob/gh-pages/starcounter-include.html#L80
if (this.isAttached && html) {
    this.template.setAttribute("content", html);
    this.template.model = this.partial;
}

Removing && html fixes the issue.
Any possible consequences?

Did it work with Polymer 1.1?

Does the current code (including if (this.isAttached && html) {) work with Polymer 1.1?

No. I just tested. It worked when we replace the partial or load it from empty, but not when removing.

Removing && html fixes the issue.

Looks like it does not. <imported-template> treats undefined and null as content and creates such piece of html.
<imported-template> also not observing removeAttribute("content").

@miyconst did you manage to find a solution?

No, I was not looking for it. I would like to hear something from @tomalec before implementing any solution.

I suspect if (this.isAttached && html) { may be there to avoid stamping Polymer 0.x "{{}}". I'd say we should definitely forward empty html  property or removal to imported-template
Regarding removal/setting to null, I think we should add check for val===null at https://github.com/Juicy/juicy-html/blob/master/juicy-html.html#L38
and remove the stamped nodes.

@tomalec can you do the fix?

We need to find a workaround for https://github.com/webcomponents/webcomponentsjs/issues/498 to make tests pass, probably we will need to apply in completely different custom element: juicy-tile-*


False Positive on [library]

False positive on library cassandra-driver-core-3.11.0.jar- reported as cpe:/a:apache:cassandra:3.11.0
<dependency>
   <groupId>com.datastax.cassandra</groupId>
   <artifactId>cassandra-driver-core</artifactId>
   <version>3.11.0</version>
</dependency>

Should not be related to the driver?

I see this also, cassandra-driver-core-3.8.0.jar is reporting CVE-2018-8016 which applies to Cassandra database (https://security.snyk.io/vuln/SNYK-JAVA-ORGAPACHECASSANDRA-32397)
But cassandra-driver-core is part of the DataStax drivers and has no known vulnerabilities https://snyk.io/vuln/maven:com.datastax.cassandra:cassandra-driver-core
Let me know if I can provide more information to help resolve this :)

Reported with the new form here: https://github.com/jeremylong/DependencyCheck/issues/4490


Not getting data from android native side to flutter

I am using flutter_twilio package in my app for twilio calling.
In calls screen I added one toggle button in native side, based on the button click I need to pass true/false to flutter side.
After hitting the button I am calling the method channel but not getting the data to flutter side, and also I am not getting any errors.
Below I added the code and flutter logs. Please help me to solve this.
I added new button to BackgroundCallJavaActivity.java file.
this.btnRecord = findViewById(R.id.btnRecord);         this.btnRecord.setOnClickListener((v) -> this.toggleRecord(this.isRecord));
private void toggleRecord(boolean isRecordPass) {         try {             this.isRecord = !isRecordPass;             applyColorToButton(this.btnRecord, isRecord);             FlutterTwilioVoicePlugin.getInstance(this).onRecordChange(isRecord);             Log.i(TAG, "toggle record executed");         } catch (Exception exception) {             exception.printStackTrace();         }     }
I added below code to FlutterTwilioVoicePlugin.java
public void onRecordChange(boolean isRecord) {     if (isRecord) {       Log.i(TAG, "recordStart :::");       responseChannel.invokeMethod("recordStart", true);     } else {       Log.i(TAG, "recordStop :::");       responseChannel.invokeMethod("recordStop", false);     }   }
I am listning the event in flutter_twilio_voice_android.dart
else if (event == "recordStart") {       debugPrint("Record Start called 1");       return FlutterTwilioVoiceStatus.recordStart;     } else if (event == "recordStop") {       debugPrint("Record Stop called 1");       return FlutterTwilioVoiceStatus.recordStop;     }
Flutter Logs:
I/FlutterTwilioVoicePlugin( 8899): recordStart :::
I/BackgroundCallActivity( 8899): toggle record executed
I/FlutterTwilioVoicePlugin( 8899): recordStop :::
I/BackgroundCallActivity( 8899): toggle record executed

Hello @fedeamura
Do I need add anything else other than a method channel to get data from native side(Call screen) to my app.


Feature Enhancement: Image Resizer setting to always convert format

Image resizer would be much more useful if it also had the option to always save to a specific format, such as jpeg. This could be a single dropdown under encoding, or (preferably) settable as part of am Image sizes preset.

Duplicate of #2686


Sticky the debug toolbar

fixes https://github.com/microsoft/pxt-arcade/issues/1972
Here's what it looks like!

Thanks for the fix @livcheerful 👍


Problem with WPF

in a class inherited from INotifyPropertyChanged，
public void SubScribe()
{
var brokerList = Ip + ":" + Port;
var config = new Dictionary<string, object>
{
{"group.id", _groupId },
{"bootstrap.servers", brokerList }
};
var consumer = new Consumer<string, string>(
	config, new StringDeserializer(Encoding.UTF8), new StringDeserializer(Encoding.UTF8)
	);
consumer.Subscribe(Topic);
consumer.OnMessage += OnMessage;
Task.Run(() =>
{
	while (true)
	{
		consumer.Poll();
	}
});
NotSubscribe = false;

}
after calling SubScribe()，CPU ratio will raise up to 13%（4C8T I7） without receiving any messages.

@zxfishhack What version are you using?
If v0.9.4 you are probably seeing #87 in which case you should upgrade to v0.9.5

upgraded to v0.9.5, problem solved.


Getting started

@martino-vic, do you prefer me to add the first code, or would you rather like to follow the workflow and make this Python script, as indicated by me in issue #1 ?

I'm still trying to follow the blogpost, I think it would be a cool skill to be able to creat these on my own, but I have just started so I have to see how it is going and will write an update here how it is going as soon as I can (probably today still), thanks for the great support!

Ok this is where I finally got stuck:
Running in my Windows 10 command line:
cd C:\Users\Viktor\OneDrive\PhD\concepticon\streitberggothic
C:\Users\Viktor\OneDrive\PhD\concepticon\streitberggothic\raw>concepticon --repos=C:\Users\Viktor\OneDrive\PhD\concepticon\streitberggothic map_concepts C:\Users\Viktor\OneDrive\PhD\concepticon\streitberggothic\raw\Van_Loon-2004-3659.tsv.tsv > test1.tsv
This is the output that is written to test1.tsv:
On Windows you must specify an output file since printing to the terminal may not work
--
usage: concepticon map_concepts [-h] [--reference-list REFLIST]
[--full-search] [--language LANGUAGE]
[--skip_multimatch] [--output OUTPUT]
CONCEPTLIST

Attempt an automatic mapping for a new concept list.

Notes
-----
In order for the automatic mapping to work, the new list has to be
well-formed, i.e. in line with the requirments of Concepticon
(GLOSS/ENGLISH column, see also CONTRIBUTING.md).

positional arguments:
CONCEPTLIST           Path to (or ID of) concept list in TSV format

options:
-h, --help            show this help message and exit
--reference-list REFLIST
Another concept list to be used as reference for the
gloss mapping (default: None)
--full-search         select between approximate search (default) and full
search (default: False)
--language LANGUAGE   specify your desired language for mapping (default:
en)
--skip_multimatch
--output OUTPUT       specify output file (default: None)

if I run it without the --repos flag I get INFO    concepticon/concepticon-data at . printed to the console and can't find the file anywhere

So would you not just have to specify an output file via --output ?

Yes, now it worked :) I had tried the --output flag earlier but had put it in the wrong place ´conceptivon --repos --output map_conceptlist´ instead of ´concepticon --repos map_conceptlist --output´

still experimenting, current update:
C:\Users\Viktor\OneDrive\Git\streitberggothic>cldfbench lexibank.makecldf lexibank_streitgerggothic.py --concepticon=C:\Users\Viktor\OneDrive\PhD\lexibank\concepticon\concepticon\concepticon-data --glottolog=C:\Users\Viktor\OneDrive\PhD\lexibank\glottolog --clts=C:\Users\Viktor\OneDrive\PhD\lexibank\clts --concepticon-version=v2.5.0 --glottolog-version=v4.5 --clts-version=v2.2.0

Traceback (most recent call last):
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\Scripts\cldfbench.exe\__main__.py", line 7, in <module>
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\cldfbench\__main__.py", line 68, in main
    stack.enter_context(
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 492, in enter_context
    result = _cm_type.__enter__(cm)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\cldfcatalog\catalog.py", line 69, in __enter__
    self.checkout(self.tag)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\cldfcatalog\repository.py", line 105, in checkout
    return self.repo.git.checkout(spec)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\git\cmd.py", line 638, in <lambda>
    return lambda *args, **kwargs: self._call_process(name, *args, **kwargs)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\git\cmd.py", line 1183, in _call_process
    return self.execute(call, **exec_kwargs)
  File "C:\Users\Viktor\AppData\Local\Programs\Python\Python310\lib\site-packages\git\cmd.py", line 983, in execute
    raise GitCommandError(redacted_command, status, stderr_value, stdout_value)
git.exc.GitCommandError: Cmd('git') failed due to: exit code(1)
  cmdline: git checkout v4.5
  stderr: 'error: Your local changes to the following files would be overwritten by checkout:
        languoids/tree/atla1278/volt1241/kwav1236/nato1234/lele1262/likp1239/sekp1241/md.ini
        languoids/tree/atla1278/volt1241/nort3149/buak1234/adam1257/goul1243/goul1244/zank1234/kula1285/fani1244/md.ini
        languoids/tree/aust1307/mala1545/cele1242/grea1299/east2488/sout2928/bung1268/east2489/east2490/baho1237/md.ini
        languoids/tree/aust1307/mala1545/cele1242/grea1299/east2488/sout2928/muna1246/nucl1573/muni1256/buso1238/md.ini
        languoids/tree/aust1307/mala1545/cele1242/grea1299/tomi1242/sout2925/damp1237/md.ini
        languoids/tree/aust1307/mala1545/cele1242/kail1255/nort2898/kail1254/comm1248/bara1371/md.ini
        languoids/tree/aust1307/mala1545/cent2237/cent2245/cent2254/east2466/east2741/seti1249/beng1287/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/ocea1241/admi1239/east2459/manu1262/east2460/koro1314/bowa1234/papi1254/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/ocea1241/admi1239/east2459/sout2879/loup1244/balu1257/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/ocea1241/sout3173/newc1243/main1286/sout3313/extr1245/nume1242/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/ocea1241/west2818/nort3206/sarm1241/sarm1242/anus1238/anus1237/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/sout2850/sout3229/bomb1263/bedo1237/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/sout2850/sout3229/morm1235/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/sout2850/sout3229/raja1255/ambe1249/biga1238/md.ini
        languoids/tree/aust1307/mala1545/cent2237/east2712/sout2850/sout3229/raja1255/asss1237/md.ini
        languoids/tree/aust1307/mala1545/cham1312/md.ini
        languoids/tree/aust1307/mala1545/nort3238/meso1254/sout2905/md.ini
        languoids/tree/aust1307/mala1545/nort3253/sara1342/puna1279/puna1280/aput1239/sian1255/md.ini
        languoids/tree/aust1307/mala1545/sout2923/nort2894/pitu1237/dakk1238/md.ini
        languoids/tree/aust1307/mala1545/sout2923/ramp1244/bada1260/beso1237/md.ini
        languoids/tree/aust1307/mala1545/sout2923/ramp1244/seko1241/pana1302/budo1241/md.ini
        languoids/tree/coch1271/yuma1250/gene1244/paii1252/paip1241/md.ini
        languoids/tree/geel1240/bura1294/bura1276/md.ini
        languoids/tree/geel1240/demi1242/md.ini
        languoids/tree/inan1242/duri1243/md.ini
        languoids/tree/indo1319/clas1257/indo1320/indo1321/indo1324/chit1278/kala1372/md.ini
        languoids/tree/iroq1247/nort2947/moha1257/moha1258/md.ini
        languoids/tree/japo1237/ryuk1243/ryuk1244/miya1259/md.ini
        languoids/tree/kawe1237/nort1506/qawa1238/md.ini
        languoids/tree/lake1255/east2500/tawo1244/md.ini
        languoids/tree/lake1255/tari1255/east2502/dout1239/dout1240/md.ini
        languoids/tree/nakh1245/dagh1238/avar1255/andi1254/botl1243/botl1242/md.ini
        languoids/tree/pama1250/dese1234/ngum1251/ngum1256/jaru1256/jaru1254/md.ini
        languoids/tree/sali1297/sali1298/md.ini
        languoids/tree/sape1238/md.ini
        languoids/tree/sino1245/kuki1245/kuki1246/oldk1252/chir1298/chir1283/md.ini
        languoids/tree/sino1245/mish1241/idum1241/md.ini
        languoids/tree/taik1256/kamt1241/daic1238/daic1237/cent2251/wenm1239/sapa1255/sout3184/sout2743/blac1269/thai1259/md.ini
        languoids/tree/taik1256/kamt1241/daic1238/daic1237/cent2251/wenm1239/sapa1255/sout3184/sout2743/shan1276/assa1264/aito1238/md.ini
        languoids/tree/taik1256/kamt1241/daic1238/daic1237/cent2251/wenm1239/sapa1255/sout3184/sout2743/shan1276/assa1264/kham1290/md.ini
        languoids/tree/toro1256/tora1268/coas1312/bone1255/md.ini
        languoids/tree/tupi1275/mawe1252/awet1245/tupi1276/tupi1281/waya1271/zoee1241/zoee1240/md.ini
        languoids/tree/tuuu1241/kwii1241/nuuu1241/md.ini
        languoids/tree/ural1272/saam1281/west2390/cent2240/nort2671/md.ini
        languoids/tree/west2604/kara1499/md.ini
Please commit your changes or stash them before you switch branches.
Aborting'

Your glottolog repository probably needs to be freshly installed /
downloaded, sonce you have a glottolog version with local changes. No
idea why, but you best git clone glottolog again and point to this
glottolog version. Or, to jus tavoid this step, run with the --dev flag,
which will lead to NOT using glottolog, so this step won't throw an error.

Deleted glottolog and reinstalled again, and got the same error as the first time:
C:\Users\Viktor\OneDrive\PhD\lexibank>git clone https://github.com/glottolog/glottolog.git
Cloning into 'glottolog'...
warning: templates not found in C:/Users/Viktor/.git-template
remote: Enumerating objects: 751616, done.
remote: Counting objects: 100% (22676/22676), done.
remote: Compressing objects: 100% (14761/14761), done.
remote: Total 751616 (delta 4106), reused 21985 (delta 3968), pack-reused 728940
Receiving objects: 100% (751616/751616), 840.14 MiB | 2.54 MiB/s, done.
Resolving deltas: 100% (270111/270111), done.
fatal: cannot create directory at 'languoids/tree/atla1278/volt1241/benu1247/bant1294/sout3152/narr1281/cent2260/west2968/nzad1235/lwer1234/ding1244/loan1238/klce1234/kiko1235/nucl1804/kiko1234/kamb1321/kila1239/nort3267/laar1238/ghaa1238': Filename too long
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

but now intead of tinkering around, I just left it like that and ran C:\Users\Viktor\OneDrive\PhD\lexibank>C:\Users\Viktor\OneDrive\Git\streitberggothic>cldfbench lexibank.makecldf lexibank_streitgerggothic.py --concepticon=C:\Users\Viktor\OneDrive\PhD\lexibank\concepticon\concepticon\concepticon-data --glottolog=C:\Users\Viktor\OneDrive\PhD\lexibank\glottolog --clts=C:\Users\Viktor\OneDrive\PhD\lexibank\clts --concepticon-version=v2.5.0 --glottolog-version=v4.5 --clts-version=v2.2.0, which printed this message to the console:
warning: templates not found in C:/Users/Viktor/.git-template
warning: LF will be replaced by CRLF in lexibank_streitberggothic.egg-info/SOURCES.txt.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in lexibank_streitberggothic.egg-info/dependency_links.txt.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in lexibank_streitberggothic.egg-info/entry_points.txt.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in lexibank_streitberggothic.egg-info/requires.txt.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in lexibank_streitberggothic.egg-info/top_level.txt.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in raw/Van_Loon-2004-3659.tsv.
The file will have its original line endings in your working directory
Enumerating objects: 26, done.
Counting objects: 100% (26/26), done.
Delta compression using up to 4 threads
Compressing objects: 100% (22/22), done.
Writing objects: 100% (26/26), 181.86 KiB | 2.22 MiB/s, done.
Total 26 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), done.
To https://github.com/martino-vic/streitberggothic.git
 + 7243ba4...8866b76 master -> master (forced update)

it pushed to the repo, but I don't see that it would have converted anything. I guess I'll skip this step then and use the --dev flag as recommended in the previous comment, but thought I'll leave this here since it might be valuable for future development or other people bumping into the same issue

Managed to convert the raw data to a wordlist. Currently struggling with pushing the repository:
 ! [remote rejected] master -> master (refusing to allow an OAuth App to create or update workflow `.github/workflows/python-package.yml` without `workflow` scope)
error: failed to push some refs to 'https://github.com/martino-vic/streitberggothic.git'

Tried running cmd as admin, which didn't help. Guess with a little googling this should be solvable though. Just thought I'll still leave this update here.

Nice. For the orthoprofile, you may not need to create IPA first, but can use the orthoprofile to convert to IPA.

If you check this website, providing a JS implementation of orthoprofiles: https://digling.org/calc/profile/ you can find that we have already one Gothic profile there. You could compare with your data. The profiles are here: https://github.com/orthograpy/orthograpy

I got stuck again while creating parameters.csv. My first assumption was to simply modify the current Script by adding args.writer.objects['ParameterTable'].append({...}) to the loop but that gave me the error pycldf.dataset.SchemaError: 'Dataset has no table "ParameterTable"'. So I decided to abandon the cldfbench tutorial and try it with the pylexibank one from the blogpost again. But add_languages() doesn't work, it just gets stuck and throws no error. This is the corresponding Script:
import pathlib

from pylexibank import Dataset as BaseDataset
from pylexibank import Language

class CustomLanguage(Language):
    pass

class Dataset(BaseDataset):
    dir = pathlib.Path(__file__).parent
    id = "streitberggothic"

    language_class = CustomLanguage

    def cmd_makecldf(self, args):

        # add bib
        args.writer.add_sources()
        args.log.info("added sources")

        # add language
        print(self.languages)
        args.writer.add_languages()
        print("hi")

It does write sources.bib correctly to the folder cldf, prints INFO    running _cmd_makecldf on streitberggothic ... INFO    added sources to the console. Then it prints [OrderedDict([('ID', 'goth1244'), ('Name', 'Gothic'), ('Macroarea', 'Eurasia'), ('Latitude', '46.9304'), ('Longitude', '29.9786'), ('Glottocode', 'goth1244'), ('ISO639P3code', 'got'), ('Countries', 'UA'), ('Family_ID', 'indo1319'), ('Language_ID', '0')])] and then it gets stuck, i.e. "hi" never gets printed.
I tried looking into the source code to understand what exactly is happening but it's difficult for me to understand and I guess that's also not the supposed way to fix this, so that's why I thought I'd write yet another comment here. From what I see the function add_languages() is a loop where add_language() is applied to multiple languages. Since I have only one language in my data I thought add_language() might work instead and then got following error: ValueError: invalid CLDF identifier LanguageTable-ID:. I found the line in the source-code that is triggering this but can't figure out what is happening. I also tried to keep the wrapper from the tutorial around class CustomLanguage, and also tried to delete class CustomLanguage over all, but it all leads to the same results. Sorry for writing so many comments and thanks for bearing with me.

from clldutils.misc import slug

concepts = {}
for i, concept in enumerate(self.raw_dir.read_csv("concepts.tsv", delimiter="\t", dicts=True)):
    idx = str(i+1)+"_"+slug(concept["gloss"])
    args.writer.add_concept(ID=idx, Name=concept["gloss"])
    concepts[concept["gloss"]] = idx

The dictionary concepts gives you the reference to the concept ID (Parameter_ID) in args.writer.add_form or args.writer.add_forms_with_segments to get the respective ID.

Adding the concepts = parameters should be done with the lexibank commands, that is add_concept (as also done in the example file for Vietic languages).

I pushed the current state of affairs to this repository. The good news is that "added concept" does get printed to my console now, which is an improvement, but then again only empty files with headers get written to the folder cldf if I run the following:
import pathlib

from clldutils.misc import slug
from pylexibank import Dataset as BaseDataset
from pylexibank import Language
from pylexibank import FormSpec
import attr

class CustomLanguage(Language):
    pass

class Dataset(BaseDataset):
    dir = pathlib.Path(__file__).parent
    id = "streitberggothic"

    language_class = CustomLanguage

    form_spec = FormSpec(separators=",", first_form_only=True)

    def cmd_makecldf(self, args):
        # add bib
        args.writer.add_sources()
        args.log.info("added sources")

        # add concept
        concepts = {}
        for i, concept in enumerate(self.concepts):
            idx = f"{i}_{slug(concept['sense'])}"
            concepts[concept["sense"]] = idx
            args.writer.add_concept(
                    ID=idx,
                    Name=concept["sense"]
                    )
        args.log.info("added concepts")

I wish I could run the entire script, as indicated in the tutorial, but adding just one line, namely args.writer.add_languages() already causes it to get stuck without throwing an error, which makes debugging hard for me. I tried to describe the details as good as I could in the previous comment. I followed the instructions of the blogpost as closely as possible - only making changes where the nature of my own data compared to the one from the tutorial required so, like for example omitting the column "source" in languages.tsv. I still have the feeling it must be something trivial that I'm overlooking, but I've been playing around with this today the whole day and just can't find out what it is.

You are missing decorators in your language class:
@attr.s
class CustomLanguage

But maybe uncomment it and also uncomment the assignment in the Dataset?

I also tried to keep the wrapper from the tutorial around class CustomLanguage

Sorry, I meant to say decorator. Adding the decorator doesn't fix the problem. And I left it out on purpose because my data has no extra column "Sources" to add like the Vietic one.

But maybe uncomment it and also uncomment the assignment in the Dataset?

Ah I think you're looking at the cldfbench_streitberggothic.py script, I'm sorry, that's my bad, I had left it in the folder and it's from the cldfbench-tutorial where it's still commented out, but currently I am running the other script, lexibank_streitberggothic.py
Looks like the problem has to do something with line 279 in cldf.py:
        if (not getattr(self.args, 'dev', False)) and 'Glottocode' in kw \
                and hasattr(self.args, 'glottolog') \
                and kw['Glottocode'] in self.args.glottolog.api.cached_languoids:

This if clause never gets entered, and the parser doesn't reach the return statement that comes after it. I'm just in the process of figuring out

I think you should follow our script on Vietic, as the cldfbench
tutorial is more generic, and lexibank handles many complex aspects
directly, so you don't have to bother. In any case: not using the
decorator is wrong. But you can avoid this by uncommenting the
"language_class = CustomLanguage".

Yes yes, I'm doing all of those: "language_class = CustomLanguage" is uncommented, the decorator is added, I'm following the script for Vietic as closely as possible. But the if-clause in line 279 in cldf.py takes 6-7 minutes to run on my computer - even if I truncate my data - which I guess shouldn't be the case. Anyways, I'm still in the process of playing around and figuring out why exactly this happens

It is because you load all of glottolog, and this takes time. Run with
the --dev flag, and this line won't run. For testing, this is what you
need. Later, you may have to run it one time with glottolog. This
depends on the hardware you have: SSDs favor fast access, as it reads
many files. It crucially depends on your computer power, but you do not
have to run it all the time, but should flag it out during development ;)

Ahh okay this explains a lot, thanks :)

Okay, now I finished the Vietic tutorial from A-Z and I think the repository is ready. I assume there's still room for improvement, as always, e.g. the CLTS-validation-badge looks a bit sad, so ideas and suggestions for improvement are very welcome; but in general I think that's it, right? Because if yes then I could slowly start writing the blog entry and I'll also keep an eye on pysem, so that I can add the more eclectic links to concepticon once that part is ready :) Thank you again for the great tutorial and all the help and patience with my questions.

Did you push your changes? Then I'd review these days.

Yes, I pushed them. Thank you.

Ah, sorry realised only now that the pysem-tutorial came out already. So I'll tackle that next!

Alright, I added the links to concepticon - 31% is the max that I could squeeze out without manual curation, which is quite good I think. Also improved the orthography by the procedure suggested in #3. Only thing to do is to pep8 stylecheck all scripts and that's it I think.

Closing this, because the code is running without error now.


CASSANDRA-16969-copyright-check-4.7.x

All copyrights detected in code base noted in NOTICE.txt

Please close in favor of #1862 (which retains original contributor credit)


FATA[0000] unable to run root command: accepts at most 0 arg(s), received 1

kubectl krew install df-pv
Updated the local copy of plugin index.
Installing plugin: df-pv
Installed plugin: df-pv
\
 | Use this plugin:
 |      kubectl df-pv
 | Documentation:
 |      https://github.com/yashbhutwala/kubectl-df-pv
/
WARNING: You installed plugin "df-pv" from the krew-index plugin repository.
   These plugins are not audited for security by the Krew maintainers.
   Run them at your own risk.

kubectl df-pv
INFO[2021-07-19T16:32:50Z] Either no volumes found in namespace/s: 'all' or the storage provisioner used for the volumes does not publish metrics to kubelet

kubectl df-pv all
Error: accepts at most 0 arg(s), received 1
Usage:
  df-pv [flags]

Flags:
      --as string                      Username to impersonate for the operation
      --as-group stringArray           Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
      --cache-dir string               Default HTTP cache directory (default "/home/apatsev/.kube/http-cache")
      --certificate-authority string   Path to a cert file for the certificate authority
      --client-certificate string      Path to a client certificate file for TLS
      --client-key string              Path to a client key file for TLS
      --cluster string                 The name of the kubeconfig cluster to use
      --context string                 The name of the kubeconfig context to use
  -d, --disable-color                  boolean flag for disabling colored output
  -h, --help                           help for df-pv
      --insecure-skip-tls-verify       If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
      --kubeconfig string              Path to the kubeconfig file to use for CLI requests.
  -n, --namespace string               If present, the namespace scope for this CLI request
      --request-timeout string         The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests. (default "0")
  -s, --server string                  The address and port of the Kubernetes API server
      --tls-server-name string         Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used
      --token string                   Bearer token for authentication to the API server
      --user string                    The name of the kubeconfig user to use
  -v, --verbosity string               log level; one of [info, debug, trace, warn, error, fatal, panic] (default "info")

FATA[0000] unable to run root command: accepts at most 0 arg(s), received 1
run df-pv root command
github.com/yashbhutwala/kubectl-df-pv/pkg/df-pv.InitAndExecute
        /home/runner/work/kubectl-df-pv/kubectl-df-pv/pkg/df-pv/root.go:30
main.main
        /home/runner/work/kubectl-df-pv/kubectl-df-pv/cmd/df-pv/main.go:10
runtime.main
        /opt/hostedtoolcache/go/1.14.7/x64/src/runtime/proc.go:203
runtime.goexit
        /opt/hostedtoolcache/go/1.14.7/x64/src/runtime/asm_amd64.s:1373

Same here, I'm using precompiled binary 0.3.0 linux-amd64 on alpine 3.15.0


Problem with spiders and endemans

Hi,
Your modpack is really amazing I love it!
But I have a problem..  when I put your mod in a modpack the spiders and the endermans at low light level (mostly at night) appear totally white.
It is like if a white texture overlapped the texture of the original mob..
I’ve try to disable the 2D shaders in the config file but nothing changes. If I put all shaders on fail the problem is solved but miss all the effects of the mod.
There anything I can do? You know how to solve my problem? It appears only at low light levels.
Just like this: http://imgur.com/9AEqnLE

P.s do you know how to solve GL ERROR 1282 set to default set to depth?

http://i.imgur.com/M6XOfwR.png
When you get on fire this happens, if you look in a certain direction btw you see the fire normally
but mostly it appear white as you see in the screen


Add a Better Bibtex CSL to the Zotero Style Repository

There is a standard Bibtex style in the CSL repository, but it would be great to have one that conforms to the BetterBibtex style instead. This would be especially useful on mobile where one cannot access plugins. I see someone tried a workaround by creating an ios shortcut that would do this, but it doesn't work for me. In any case, a CSL would be much simpler and more robust (less prone to breaking).

Not asking you to do this, but it seems that someone could write an iOS shortcut to search and read the citekeys from the JSON export?

OK. I think I can possibly work with this. I would basically have a text document synced from iCloud that I could search for the keys on mobile?

That is an alternate solution. You could build this with BBTs auto-export. What I meant earlier would use the CSL workflow you described, but with the CSL note field to hold the citekey.

Not asking you to do this, but it seems that someone could write an iOS shortcut to search and read the citekeys from the JSON export?

No idea (I don't have iOS devices), but it depends on what you mean by "the JSON export". CSL-JSON? Maybe? BBT-JSON? No, because that's only available in the desktop client.


aiohttp should be added to the requirements.txt

I had to pip install aiohttp to be able to run ATK, a minor detail but thought that I'd make an issue.

It should be, you're right.
Added it. Thanks for the issue! :)


add i/o for ctf

In PR https://github.com/mne-tools/mne-python/pull/2358, I was trying to read in CTF data only to realize we don't have readers for CTF. I'm just raising this issue so that it's not forgotten. For now I'll just convert them to fiff using our C utilities.

Where are we on this?

not started but planned by @jasmainak
I am sure he would appreciate help :)

I might have time to take a look

started working on it, hopefully it won't take too long

@Eric89GXL : unless you already finished it, I can take over from where you feel like leaving it off :)


warning on "possible error" is red

this line is marked red for me - it should not be red:
....\src\COMMON\fileHelpers.cpp(81): warning C4554: '&' : check operator precedence for possible error; use parentheses to clarify precedence

Given the variety of warnings and errors, false positives are inevitable. Add a custom rule to suppress this.

the default action list of VSColorOutput pattern is looking for keywords like error/warning/information plus sometimes some context. this would trigger error-level highlighting even for lines with phrases like "no error".
for improving in my case i ended up creating higher priority entries for the typical MSVC error reporting styles that are rather unique compared to a pure word search. example snippet:
): warning C
this ended me up in a (seemingly to work) pattern like this:
\)\: warning C


[New game]: earth invader

🎮 Game Request
Years ago, a terrible invasion by unknown entities was staved off by a lone Earth ship. Now, in the year 2048, humankind has discovered the planets of the coalition that nearly wiped them out, and has elected to send their most skilled pilot to destroy them: You.
Wonder why there's no sound? In space, you won't hear your enemies dying.

Hey @S-ishita !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @S-ishita ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Deduped three identical implementations of hoist_consts_to_refs

Huh, I wonder if I missed something and they weren't actually identical...

Aha, it seems https://github.com/google/jax/blob/33e56d4261b6d232c0ec74af9a54250511038b5f/jax/_src/lax/control_flow/for_loop.py#L73 is indeed slightly different -- the loop index is always first.


Fixed #35141 -- CACHE_MIDDLEWARE_SECONDS can be set to a float but has to be an int

This address ticket https://code.djangoproject.com/ticket/35141
The changes are as proposed in the ticket.
This is my fifth PR for Django so please advise as you see fit.

Sorry my bad.
Sent from Outlook for Androidhttps://aka.ms/AAb9ysg

From: Mariusz Felisiak @.>
Sent: Thursday, January 25, 2024 10:09:24 AM
To: django/django @.>
Cc: Mirza Ismail Baig @.>; Mention @.>
Subject: Re: [django/django] Fixed #35141 -- CACHE_MIDDLEWARE_SECONDS can be set to a float but has to be an int (PR #17776)
@felixxm commented on this pull request.

In django/utils/cache.pyhttps://github.com/django/django/pull/17776#discussion_r1465832460:

@@ -411,7 +411,7 @@ def learn_cache_key(request, response, cache_timeout=None, key_prefix=None, cach
if key_prefix is None:
key_prefix = settings.CACHE_MIDDLEWARE_KEY_PREFIX
if cache_timeout is None:

   cache_timeout = settings.CACHE_MIDDLEWARE_SECONDS

   cache_timeout = int(settings.CACHE_MIDDLEWARE_SECONDS)

@MiirzaBaighttps://github.com/MiirzaBaig Is there a reason why you leave useless comments?
—
Reply to this email directly, view it on GitHubhttps://github.com/django/django/pull/17776#discussion_r1465832460, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3OCRGV3KDNHE3C3LPTSZ5DYQHOXZAVCNFSM6AAAAABCJ2Z4YGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTQNBSHAZDKNJUGM.
You are receiving this because you were mentioned.Message ID: @.***>

I changed the PR as described in the ticket to just fix the docs for CACHE_MIDDLEWARE_SECONDS and the setting for that one test.
PS: I don't know how I managed to close the PR and had to reopen it. Sorry.


Update to 1.19

updated to fabric-command-api-v2 and to eu.pb4:placeholder-api:2.0.0-beta.5+1.19 along with the required changes to mappings and code.
also added .vscode/ to the gitignore since that's the editor i use.

I appreciate this but I'm not a fan of the styling changes 😅 I usually keep stuff visually organized like that for a reason, haha

@SilverAndro i'm not exactly sure what you mean; placeholder-api and fabric-command-api were both updated to change their syntax slightly, and 1.19 removed LiteralText as far as i know, this PR is the minimal set of required changes.

just understood what you meant by style changes; i had no idea vscode had reformatted that file. should have reverted the formatting changes in the most recent commit.

Awesome, thanks much!
Sorry I didn't properly point out the style changes, was in a bit of a rush yesterday 😅
I'll merge this now and get a release out later


how to add my custom properties to OrganizationUnit

just like abpuser and abpusermanager

We have the same issue as @wendell620. OrganizationUnit entity looks not to be extensible.

You can check this tutorial as an example of extending entities: http://aspnetzero.com/Documents/Extending-Existing-Entities#extending-non-abstract-entities
While it extends Edition, OrganizationUnit is also similar.

It works! thank you!

You're welcome.


[Bug]: "Empty Response" by running official documents.

Bug Description
I'm trying to run your  official document code but I get "Empty Response".
I have only one .txt file containing "I have a cat named Max. It is in the park." and here is the version of my code:
import torch
from langchain.llms.base import LLM
from llama_index import SimpleDirectoryReader, LangchainEmbedding, ListIndex
from llama_index import LLMPredictor, ServiceContext
from transformers import pipeline
from typing import Optional, List, Mapping, Any

# set context window size
context_window = 2048
# set number of output tokens
num_output = 256

# store the pipeline/model outisde of the LLM class to avoid memory issues
model_name = "facebook/opt-iml-1.3b"
pipeline = pipeline("text-generation", model=model_name, device="cuda:0", model_kwargs={"torch_dtype": torch.bfloat16})

class CustomLLM(LLM):

    def _call(self, prompt: str, stop: Optional[List[str]] = None, **kwargs) -> str:
        prompt_length = len(prompt)
        response = pipeline(prompt, max_new_tokens=num_output)[0]["generated_text"]

        # only return newly generated tokens
        return response[prompt_length:]

    @property
    def _identifying_params(self) -> Mapping[str, Any]:
        return {"name_of_model": model_name}

    @property
    def _llm_type(self) -> str:
        return "custom"

# define our LLM
llm_predictor = LLMPredictor(llm=CustomLLM())

service_context = ServiceContext.from_defaults(
    llm_predictor=llm_predictor,
    context_window=context_window,
    num_output=num_output
)

# Load the your data
documents = SimpleDirectoryReader('./data2').load_data()
index = ListIndex.from_documents(documents, service_context=service_context)

# Query and print response
query_engine = index.as_query_engine()
response = query_engine.query("What is the name of my cat?")
print(response)

It will return "Empty Response".
P.S. I'm sure that it is able to read the .txt file because this is the output to print(documents)
[Document(id_='b280219b-fcee-4ccd-a1e0-64d6c696133e', embedding=None, metadata={'file_path': 'data2/1.txt', 'creation_date': '2023-11-09', 'last_modified_date': '2023-11-09', 'last_accessed_date': '2023-11-09'}, excluded_embed_metadata_keys=['creation_date', 'last_modified_date', 'last_accessed_date'], excluded_llm_metadata_keys=['creation_date', 'last_modified_date', 'last_accessed_date'], relationships={}, hash='e6f967d037f7e35b52c98ab114171f7be1b34515a5354b05204c3338b2808e97', text='I have a cat named Max. It is in the park.', start_char_idx=None, end_char_idx=None, text_template='{metadata_str}\n\n{content}', metadata_template='{key}: {value}', metadata_seperator='\n')]

Version
085.65
Steps to Reproduce
Just run the code.
Relevant Logs/Tracbacks
No response

@kiasar try lowering the context window a bit. "Empty Response" with open-source LLMs is usually because the token counting broke.
Tbh that is a terrible example code, I should really replace that to be more simple.
If you want to use a model from huggingface, we have a few demo notebooks here
https://docs.llamaindex.ai/en/stable/module_guides/models/llms.html#open-source-llms

Thanks, finally it worked with context_window = 350. making it less than 300 and bigger than 400 will both result in errors.
I'll try the link you've provided. Thanks.

I hit this using llamaindex against SageMaker providing llama2 model. context_window = 350 really helped, but that is unusable. Querying become slow and output is small.


Add confidential transfer queries to seid

Describe your changes and provide context
This PR adds seid queries for the confidential transfers module.
Testing performed to validate your change

lgtm. Similarly (to another cli pr), let's add tests where possible


Msal browser getActiveAccount and getAllAccounts are empty

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
3.7.0
Wrapper Library
Not Applicable
Wrapper Library Version
None
Public or Confidential Client?
Public
Description
I am working on developing a new outlook addin (taskpane) with vue 3 that will ask the user to choose and log in with one of their accounts.
For the login , the user clicks "Get started" button, a dialog opens (Office dialog api) where the user chooses an account. When they log in i use messageParent from the Office.context.ui to communicate with the main component. The main component receives the message from the dialog and store it in vuex state manager.
msal browser works just fine while the taskpane is open. I get the authenticated user and the access token, but when i close the taskpane, and open again, and try to check if there is an active account, the gerAcctiveAccount and getAllAccounts return empty/null.
I noticed when checking the local storage that there are only two enteries:
msal.[tenant_id].active-account-filters
msal.[tenant_id].active-account
Error Message
no errors
MSAL Logs
No response
Network Trace (Preferrably Fiddler)

[ ] Sent
[ ] Pending

MSAL Configuration
const msalConfig = {
    auth: {
        clientId: import.meta.env.VITE_APP_MSAL_CLIENT_ID!,
        redirectUri: "https://localhost:3000/dialog.html",
        authority: "https://login.microsoftonline.com/common",

    },

    cache: {
        cacheLocation: 'localStorage',
        storeAuthStateInCookie: true,
    },

    system: {
        loggerOptions: {
            loggerCallback: (level: LogLevel, message: string, containsPii: boolean) => {
                if (containsPii) {
                    return;
                }
                switch (level) {
                    case LogLevel.Error:
                        console.error(message);
                        return;
                    case LogLevel.Info:
                        console.info(message);
                        return;
                    case LogLevel.Verbose:
                        console.debug(message);
                        return;
                    case LogLevel.Warning:
                        console.warn(message);
                        return;
                    default:
                        return;
                }
            },
            logLevel: LogLevel.Verbose
        }
    }
};

Relevant Code Snippets
//loginRequest

const loginRequest = {
    scopes: ['User.Read'],
    prompt: 'select_account',

};

//dialog.ts

window.Office.onReady(async () => {

    const app = createApp(App as any);
    await msalInstance.initialize()

    app.directive("click-outside", ClickOutside)
    app.use(msalPlugin, msalInstance);

    app.mount('#app');
});

//dialog trigger code
await instance.handleRedirectPromise()
      .then((response:any) => {
        // If response is non-null, it means page is returning from AAD with a successful response
        if (response) {
          instance.setActiveAccount(response.account)

          Office.context.ui.messageParent( JSON.stringify({ status: 'success', payload : response }) );
        } else {
          console.log({catch: response})

          instance.loginRedirect(loginRequest);
        }
      })
      .catch((error) => {
        Office.context.ui.messageParent( JSON.stringify({ status: 'error', payload: error }));
      });

Reproduction Steps

Create new vite project with vue 3 typescript
dependencies

@azure/msal-browser (3.7.0)
vuex (latest)

create two apps, one for rendering the addin content, and one for the dialog

Expected Behavior
array og all the accounts and get active account should return the logged in user account
Identity Provider
Entra ID (formerly Azure AD) / MSA
Browsers Affected (Select all that apply)
Other
Regression
No response
Source
Internal (Microsoft)

Sounds like each instance of the dialog has its own storage - if you manually put something in localstorage is it still there in the 2nd dialog?
If that's the case I'd recommend calling the MSAL APIs in your main frame so cache is stored there instead. You can use the onRedirectNavigate request parameter on loginRedirect to open the dialog and perform the interaction there, then message the url hash back to your main frame and have your main frame invoke handleRedirectPromise with that hash.

@tnorling  could you please give example code on how this would be implemented?

Rough pseudo code, you'll need to fill in the blanks with the specific APIs you need to use

// Main Window
onMessageFromDialog((responseHash) => {
  // Message received from dialog
  pca.handleRedirectPromise(responseHash);
});

pca.loginRedirect({
  scopes: [User.Read],
  onRedirectNavigate: (url) => {
    // Open dialog and send it the url
    return false; // Prevent main window from attempting to redirect
  }
});

// Dialog box
if (window.location.hash) {
  // Returning from auth flow
  sendMessageBacktoParent(window.location.hash);
  closeDialog();
} else {
  // Beginning of auth flow, redirect
  window.location.href = url; // url from parent
}

That's the point of the onRedirectNavigate parameter. This enables the dialog to handle user prompts while still allowing the parent to do the rest of the heavy lifting and hold the token cache

async dialog({commit, dispatch, state}, refresh = false) {
            const dialogLoginUrl = import.meta.env.VITE_APP_MSAL_DIALOG_URI;
            let loginDialog: Office.Dialog;
            await commit("setLoading", true);
            pca.loginRedirect({...loginRequest, onRedirectNavigate: (url) => {

            Office.context.ui.displayDialogAsync(
                url,
                {height: 45, width: 25},
                async (result) => {
                    pca.handleRedirectPromise(result.value);
                    loginDialog.close()
                }
            );
            return false;
            }});

          await commit("setLoading", false);

        },

The dialog:

```typescript
<template>
  <div class="flex items-center justify-center h-full w-full p-3" >
    <Loader size="lg" ></Loader>
  </div>
</template>

<script lang="ts" setup>

Office.context.ui.messageParent( JSON.stringify({ status: 'success', payload : window.location.hash }) );
</script>

I am getting an error indicating that the dialog couldn't open with that url:
Error:
"The domain of the URL is not included in the AppDomains element in the manifest, and is not subdomain of source location."


Add support for OpenCL/SYCL atomic operations inside a dppl.kernel

We only support atomic addition operations for integer data types inside dppy.kernel. The functionality needs to be enhanced for floating point dtypes and other type of operations.
Partially addressed by IntelPython/numba#2

Support for both integer and floating point data types are currently supported for global and local addrespace.


careful not to confound conifers and broadleaf trees in discussion

@camerondow35 , some of the recently added citations are for conifers, so while perhaps worth citing, are really a pretty different story.  I'm reviewing this but wanted to bookmark the issue because I need to stop for now.

delpierre_chilling_2019, huang_photoperiod_2020, rossi_critical_2008, and savage_coordination_2021 are all for conifers. If we cite these, we should do so in the context of them being conifers. It would be good to put in a bit of discussion of conifers, including these citations + some other lines of evidence (e.g., tree-rings).

Citations for these need to be removed/ changed in the abstract and intro. I'll come back to this.

delpierre_temperate_2016 is relevant here.

I believe we can close this (but need to be careful with any further addition of references).


[CHALLENGE SUBMISSION] Challenge 18

Please provide the following information for your submission:
What is your name? (First, Last)
Deepak Dhami
Where is your GitHub Repo ?(With your challenge solution)
https://github.com/DexterPOSH/25dayofserverless/tree/master/day18giftPicture
What Challenge is this for? (Challenge number between 1 and 25)
18
(Optional) Anything else we should know? e.g., language used, location, blog post?
Azure functions & Python.
Uses the cognitive API to get the tags from the Blob set to anonymous access for images (simplifies access by the Cognitive API to the blob url).
It then notifies slack.

From all of us on the Cloud Advocacy team at Microsoft, thank you for creating this issue!
Have a Happy Holiday season!
Feel free to share your solution on Twitter with the tag #25DaysOfServerless


⚠ Heritage of Faith Christian Church - Gold Coast has degraded performance

In e89e5e5, Heritage of Faith Christian Church - Gold Coast (https://heritageoffaith.com.au) experienced degraded performance:

HTTP code: 200
Response time: 5443 ms

Resolved: Heritage of Faith Christian Church - Gold Coast performance has improved in 89f0e89.


podman: 1.5.1 -> 1.6.1

Motivation for this change
Updating podman to the latest version available.
Things done

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

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

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

Notify maintainers
cc @vdemeester

@GrahamcOfBorg build podman


exec/spawn cmd.js with 'node'

See https://github.com/feross/webtorrent/issues/429#issuecomment-139878312

This is because a windows system doesn't use the shebang so it might
not know how to execute a js file. Spawning using node and node will
understand how to read this.

(includes and resolves #449)

Thanks – great work!

Sure thing! Unfortunately, I'm not certain that #429 is completely fixed, as I don't have a Windows machine to test on. Perhaps @shavyg2 could verify?

Okay, let's leave #429 open until we receive confirmation that it works.
@joseph-onsip Also, I've added you as a collaborator to WebTorrent so you can contribute as you see fit. :)

Sounds good, cheers!


Script for Covid-19 detection using chest X-ray

@avinashkranjan I have solved the issue #326

@avinashkranjan ok I will change it .


Rename Repository

I've seen other issues about this.  Let me explain what I need to do.  We have a repository that was named too specific.  Now we have an updated docker image that name doesn't apply.  We want to push the update image, but maintain the stars/downloads metadata information.  This is the use case we have in "renaming" the current docker hub repository.  So we can maintain that information, and then push the updated docker image.

For Docker Hub issues, you should contact https://support.docker.com
This here is the open-source registry (and it's the deprecated version - the current version lives in docker/distribution).


Version 0.9.6

Adding #58 defaultlist (Thanks to Dogeek)
Adding LoggerIOWrapper (Thanks to Dogeek)
Adding log_it (Thanks to Dogeek)
Changing line length to 120 and using black standard formatter

Coverage decreased (-3.2%) to 90.449% when pulling<PHONE_NUMBER>688cfb200d8144924e13eafdde42a5 on development into 171ea3dc10a37ed46ff833c48926a995496d2fc6 on master.

Coverage decreased (-3.2%) to 90.449% when pulling<PHONE_NUMBER>688cfb200d8144924e13eafdde42a5 on development into 171ea3dc10a37ed46ff833c48926a995496d2fc6 on master.


MO building overview table shows MOs as having -0 (minus zero) upkeep

MO building overview table shows MOs as having -0 (minus zero) upkeep
Fully stocked MOs should show 0 instead

additionally, does it make sense to display rad cells that the MO can purchase, even if the MO is not at a grid level that uses rads?


Open contributions

Is this project open to contributions?

@YashishDua thanks for asking! I need about 2-3 more weeks to wrap-up a beta version and then it'll be officially published and opened :)

Yeah, for sure! I will definitely put up my thoughts.

We are actively looking for active Go community developers, that would like to help us get this thing done.
If anyone wants to join our community Slack channel, shoot me up and email and I'll send you an invite! :)

I would like to add my 2 cents, and help with code review / contributions, but my experience with contributing to the last sdk was rather sobering (cf. a pull request I submitted).
So if there's a change in how the maintainer(s) plan to respond to contributions compared to the past, I will gladly join in.

@valentin-krasontovitsch The PR which you submitted is in the Raven client (no longer maintained) which is now being converted to language-specific SDKs. So, this project is totally active and we are actively looking for OSS Go developers here. Shoot an email to @kamilogorek to join our Slack channel.

@valentin-krasontovitsch sorry about that, I wasn't involved in the previous SDK and didn't want to spend too much time on it, as we made a decision to create a full-fledged Go SDK that'll follow our unified SDK API and allow to use Sentry to it's fullest.
Any help is appreciated and definitely won't be left out in this repository, so feel free to send me your email and I'll happily send you a Slack request :)

@YashishDua @kamilogorek thanks for the responses, and that's quite alright - gonna send you an email right away. looking forward to hearing getting some more insight into the sdk / sdk api.

First stable release v0.1 is live! 🎉
Community note has been added to the readme, so I'll close this issue :)


Add more unit tests for code coverage

Codecov Report

Merging #215 (e7575ac) into master (1da4021) will increase coverage by 0.20%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #215      +/-   ##
==========================================
+ Coverage   87.73%   87.93%   +0.20%
==========================================
  Files         149      151       +2
  Lines        3522     3565      +43
==========================================
+ Hits         3090     3135      +45
+ Misses        432      430       -2

Impacted Files
Coverage Δ

...on/state_manager/state_manager_transition_impl.cpp
100.00% <ø> (ø)

...on/state_manager/state_manager_transition_impl.hpp
100.00% <0.00%> (ø)

...on/state_manager/state_manager_transition_none.cpp
100.00% <0.00%> (+40.00%)
: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 1da4021...e7575ac. Read the comment docs.


Template substitution in kernel options

Render kernel arguments through Go text/template to substitute reserved hardware attributes, specifically UUID and MAC as reported by the NBP.
Only iPXE supports ${uuid} style substitution when it interprets configs. To support Pixiecore and others without Spec's with hard-coded UUIDs/MACs, the config service should allow attributes reported by an NBP to be substituted back to the NBP in kernel options.

Handle this in #92


Publish Code Coverage Report

The exec file generated from the Testerina should be published to the Maven repo (GitHub), to use in analyzing the code coverage of the stdlib repos.

Completed publishing the exec file from each stdlib module.
Successfully published the testable.jar file from a stdlib module, as a separate artifact. (Only encoding and GraphQL modules are publishing this as per now, but when needed, all the other modules can follow the same procedure).


Rotation

Hi,Is it possible to do rotation?

@sharifme04 hi, thanks for writing!
What kind of rotation are you talking about?
Could you specify your use case a bit? That might help finding a solution

@giacomocerquone  Hi thank you for your quick answer. I mean after taking the image when the border diect done, then if we want we can rotate clock wise or anti clock wise based on our requirement . is it clear now ?

I hope that is not your credit card, don't post this kind of information publicly (luckily the cvv isn't shown here).
Anyway, rotation can easily be achieved once you get the scanned picture and redraw a canvas.
If you're asking if I'd like to provide a method directly inside the library as the other methods, no... this library should focus only on scanning.
If you don't want to reimplement the wheel, you can get the picture that my library gives you and then use something like: https://github.com/DominicTobias/react-image-crop#readme

HI thank you, its my old card which is invalid , don't worry

@sharifme04 yes I know they don't detect the border. For this reason, you can use copper ref.current.done({ preview: false }) which will return the cropped image and then you give the cropped image to the tool you chose to use to rotate the image


Mekanism logistical transporter crash

Mod Name
Modern Industrialization
Mod Homepage
https://modrinth.com/mod/modern-industrialization
Describe the bug
When use mode pull or push with logistical transporter to Modern Industrialization block will crash
Steps to reproduce
1.place macerator
2.put steam bucket in macerator and main sort put oak log
3.connet macerator to chest using logistical transporter and
4.use configuretor on logistical transporter at macerator side to use to pull mode
5.should crash
Logs
https://pastebin.com/NLQmSPGp
Additional context
No response

Fixed in 0.90.7+1.9.31+1.20.1


Jesse: Watch +917263843333

Jesse requests the watch of the watch_number +917263843333. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Spevacus in Charcoal HQ


ERROR ReferenceError: localStorage is not define, also window

I think the function is been created when cliendside - serverside root is been defined so, it does not know browser apis, how can i use this on cliend-side rendering since, i'm not using ssr.
This happens in nextjs also https://github.com/vercel/next.js/discussions/19911
and they say to used useEffect() to somehow know its already in the client, but I don't know how to do it with solid-start
https://stackoverflow.com/questions/59540321/in-react-and-next-js-constructor-i-am-getting-reference-error-localstorage-is
import { createEffect } from 'solid-js';
import { createStore, SetStoreFunction, Store } from 'solid-js/store';

export const createLocalStore: <T>(
  initState: T & object,
  storeName: string,
) => [Store<T>, SetStoreFunction<T>] = (initState, storeName) => {
  const [state, setState] = createStore(initState);
  // localStorage.getItem
  if (localStorage && localStorage.getItem(storeName)) {
    try {
      setState(JSON.parse(localStorage.getItem(storeName) as string));
    } catch (error) {
      setState(() => initState);
    }
  }
  createEffect(() => {
    localStorage.setItem(storeName, JSON.stringify(state));
  });
  return [state, setState];
};

Ideally you'd just initialize the store with the correct data instead of calling setStore immediately. The trickiest part is that the server and client must match for hydration. So generally you probably want to do all the state setting in a createEffect that runs after hydration. In this case maybe wrap that first block between the comment and createEffect in an onMount.

Updated my implementation, but I think It's ok what you said, need to match.
import { createEffect } from 'solid-js';
import { createStore, SetStoreFunction, Store } from 'solid-js/store';

export function createLocalStore<T extends object>(
  storeName: string,
  initStateWhenLocalStorageNull: T,
): [Store<T>, SetStoreFunction<T>] {
  // GET LOCALSTORATE STATE or FallBack
  let initState: T;
  try {
    initState = JSON.parse(localStorage.getItem(storeName));
  } catch (error) {
    initState = initStateWhenLocalStorageNull;
  }

  const [state, setState] = createStore(initState);
  createEffect(() => {

    // SAVE INCOMMING STATE
    const incommingState = { ...state } as T & object;

    // UPDATE STORE FROM LOCAL STORAGE

    localStorage.setItem(storeName, JSON.stringify(incommingState));

  });
  return [state, setState];
}


Common Annotations are not applied to pods

I added the value for commonAnnotations, but the value is not applied to my pods.
apiVersion: v1
data:
  values: |
    ---
    commonAnnotations:
      reloader.stakater.com/auto: "true"

$ k get pods nautobot-5478658bc6-m8l8l -o yaml
apiVersion: v1
kind: Pod
metadata:
  annotations:
    kubernetes.io/psp: eks.privileged
    seccomp.security.alpha.kubernetes.io/pod: runtime/default
  creationTimestamp: "2022-01-05T09:40:58Z"

Ignore this issue, it is applied to Deployment.


Add support bucket index [JIRA: CLIENTS-879]

Hi,
I would like to use $bucket secondary index using java riak client.
I have noticed that such possibility was added some time ago in:  #129.
It seems that in current version we can't use $bucket index in Java client (I am using client ver. 2.1.4).
In documentation there is a note that we can use it via REST API: http://docs.basho.com/riak/kv/2.1.4/developing/usage/secondary-indexes/#retrieve-all-bucket-keys-via-the-bucket-index
but there is no example how to do it in java.
The old code, which was added in #129 look like follows:
final Bucket b = riakClient.fetchBucket(bucketName).execute(); all = b.fetchIndex(BucketIndex.index).withValue("_").execute();

Hi @tomaszszlek,
You can do a $bucket index query with:
RawIndexQuery biq  =
            new RawIndexQuery.Builder(namespace, "$bucket", Type._BUCKET, bucketName)
                .withKeyAndIndex(true).build();

https://github.com/basho/riak-java-client/blob/32f898e756025cacdae2ff353a350b90118e970b/src/test/java/com/basho/riak/client/api/commands/indexes/itest/ITestRawIndexQuery.java#L144-L146
It is a little duplicative, so I'll see if we can make a streamlined command in the future.

Hi @tomaszszlek,
I had a few free hours so I made a set of specialized $bucket and $key index commands, and they should be much more straightforward to use.   Look for them in the next release!
Thanks,
Alex


Bot not working with Telegram

Hi,
My bot is not working using the Telegram channel but works fine with the other channels. It show the below message.
"Sorry, BBChatBot is having a problem responding right now"
Thanks

Could it be you have bad dialog state?
BBChatbot BBChatBot InternalServerError
{
"message": "An error has occurred.",
"exceptionMessage": "invalid need: expected Wait, have Done",
"exceptionType": "Microsoft.Bot.Builder.Internals.Fibers.InvalidNeedException",
"stackTrace": "   at Microsoft.Bot.Builder.Internals.Fibers.Wait2.ValidateNeed(Need need)    at Microsoft.Bot.Builder.Internals.Fibers.Wait2.Microsoft.Bot.Builder.Internals.Fibers.IWait.Post[D](D item)
at Microsoft.Bot.Builder.Internals.Fibers.Extensions.Post[C,T](IFiber1 fiber, T item)    at Microsoft.Bot.Builder.Dialogs.Internals.DialogTask.<Microsoft-Bot-Builder-Dialogs-Internals-IPostToBot-PostAsync>d__211.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Internals.DelegatingDialogTask.d__8`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Internals.LocalizedDialogTask.d__1`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Internals.DelegatingDialogTask.d__8`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Internals.ScoringDialogTask1.<PostAsync>d__41.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Internals.Extensions.d__6`2.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Conversation.d__4`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Bot.Builder.Dialogs.Conversation.d__2`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at BBChatBot.MessageHandler.BbBotMessageHandler.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at BBChatBot.Base.MessageHandler.BaseMessageHandler.d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at BBChatBot.Controllers.MessagesController.d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Threading.Tasks.TaskHelpersExtensions.d__3`1.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()"
}

This has been corrected. But the issue still persists even after the Bot restart (hosted in azure) and deleting the conversation in telegram.

@arunnanjundaswamy What is the failure you're seeing now?

I am able to access the Bot from other Channels. But still same issue in the Telegram. I restarted the bot hosted in azure and deleted the conversation history in the Telegram for this bot.
Error in Telegram (same error is show under for Telegram channel in "MyBots" page)
"Sorry, BBChatBot is having a problem responding right now."
Thanks

How do I rectify this? Please help.
Thanks

From the end-user side, you can issue a /deleteprofile command from Telegram to reset the dialog state for the session. Issue #340 describes a way to reset the dialog state programmatically from within the bot's message controller.

Closing this issue. If you're still having trouble just leave a comment here and I'll reopen.


You must add <IP_ADDRESS> to the list of allowed IPs from your Azure Cosmos DB firewall.

[Enter feedback here]
there is a statement that
You must add <IP_ADDRESS> to the list of allowed IPs from your Azure Cosmos DB firewall.
however, we noticed if we allow access from azure service without adding <IP_ADDRESS>, it can work
can you kindly confirm if we need to revise this statement
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 5ce36931-13ce-b2c2-1efe-50c9aa5015ea
Version Independent ID: fb75608b-4262-ada6-bdcc-a981348817df
Content: Azure Stream Analytics output to Azure Cosmos DB
Content Source: articles/stream-analytics/stream-analytics-documentdb-output.md
Service: stream-analytics
GitHub Login: @enkrumah
Microsoft Alias: ebnkruma

Thanks for the feedback! We have assigned the issue to the content author to further review this and provide an update as appropriate.
@enkrumah Could you please review above feedback from customer help confirm the same? Thank you


Typo in command

By default, the log and plan files are located in the %USERPROFILE$.azcopy directory on Windows or $HOME$.azcopy directory on Mac and Linux, but you can change that location if you want.
The path to windows should be %USERPROFILE%.azcopy

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

ID: 911b355c-91b0-cfba-6960-f33d9391c0d9
Version Independent ID: e1d4c6d0-f79a-8931-b5fc-279f6185c522
Content: Configure, optimize, and troubleshoot AzCopy with Azure Storage
Content Source: articles/storage/common/storage-use-azcopy-configure.md
Service: storage
Sub-service: common
GitHub Login: @normesta
Microsoft Alias: normesta

@briglx Thanks for your question. We are checking on this and will respond to you soon.


Update how-to-custom-domain-suffix.md

Added that the Azure KV needs to keep the FW open to allow access to all public networks to fetch certificate. At the moment, if it is not open to allow all networks, customers run into an error with KV later that says the KV reference is inaccessible.

@seligj95
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Add Getting Started section to README

README update
Please add a getting Started section to the README so folks knows how to start with this project.

Added Getting Section in README file.


Set default prometheus retention period to 12 hours

The metrics volume can be expensive on disk space. Since the default setup for prometheus is ephemeral storage, we should shorten the retention interval. In a 50 node cluster with all the end points being scraped, Prometheus can be writing GB of data per day.
I recommend a shorter retention window of 12 hours. The user can always change this if they want to.

Version: Master 2.2 (3/8/19) bda75638b43f
Confirmed issue. The default retention period is now 12 hours:

Confirmed upon form submission prometheus.retention: "12h"


Base64 slower than usual

I always work with the Base64 encoding, which seems to be slower in version 2.18 than usual, in version 2.17 it was faster, is that possible?
I always use the https://obfuscator.io/ website.

How did you tested it? 2.18 does not have any changes related to encodings

If I deactivate 'String Array Wrapper Chained Calls' the code is faster again, maybe it was deactivated before, I'm not sure anymore.

Can you describe the difference in terms of speed? Can you show me the example?

Any news?