Updating a Standard Logic App Definition via REST API

Describe the Bug with repro steps
Hello,
I am trying to patch an exisiting workflow trigger (recurrence) via the Workflow API :
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}?api-version=2016-06-01
I am generating the access token via the Entra ID App Regidration with the scope https://management.core.windows.net/.default or https://management.core.windows.net/.default and granted the read & contributor roles to the App.
I first use the GET method to retrieve the payload , then modify it and perform a subsequent PUT method that returns 200 Success however the trigger remains unchaged in the portal.
PUT_Request.txt
What type of Logic App Is this happening in?
Standard (Portal)
Are you using new designer or old designer
New Designer
Did you refer to the TSG before filing this issue? https://aka.ms/lauxtsg
Yes
Workflow JSON
{
  "definition": {
    "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
    "actions": {
      "Execute_a_Oracle_query": {
        "type": "ApiConnection",
        "inputs": {
          "host": {
            "connection": {
              "referenceName": "oracle-5"
            }
          },
          "method": "post",
          "body": {
            "query": "SELECT  * FROM v_ext_sap_stock_balance"
          },
          "path": "/datasets/default/query/oracle"
        },
        "runAfter": {}
      }
    },
    "contentVersion": "<IP_ADDRESS>",
    "outputs": {},
    "triggers": {
      "Recurrence": {
        "type": "Recurrence",
        "recurrence": {
          "interval": 1,
          "frequency": "Week",
          "schedule": {
            "weekDays": [
              "Monday",
              "Tuesday"
            ],
            "hours": [
              "10",
              "11"
            ]
          }
        }
      }
    }
  },
  "connectionReferences": {
    "oracle-5": {
      "connection": {
        "id": "/subscriptions/40d49b0b-87a9-46b7-a62c-8da936959f5a/resourceGroups/TexasIntegration/providers/Microsoft.Web/connections/oracle-5"
      },
      "connectionName": "oracle-5",
      "api": {
        "id": "/subscriptions/40d49b0b-87a9-46b7-a62c-8da936959f5a/providers/Microsoft.Web/locations/westeurope/managedApis/oracle"
      },
      "authentication": {
        "type": "ManagedServiceIdentity"
      }
    }
  },
  "parameters": {
    "null": {
      "type": "String",
      "value": "null"
    }
  }
}

Screenshots or Videos
No response
Browser
Chrome
Additional context
No response
AB#25717716

I'm trying to fully understand what the issue happening here is. You're changing teh recurrence trigger through API and expecting it to change in the designer? Are you refreshing the designer after making a change, and it will need a hard refresh of the portal most likely, the caching used in the portal does now assume people are making changes outside of portal?

Hi Sir
I must admit that this is the first time I’m performing changes to a logic App outside of the designer , I read the API Reference and for the impression that the workflow definition could be altered.
The guide mentions the PATCH method however it fails so the only choice is to use the PUT verb however that requires sending the entire workflow definition in the request body .
As for the refresh - I tried using the browser private mode , refreshed the page , cleared browser cache etc.
Didn’t help
The writes thing is that when I use the GET verb right after the PUT , I do see the changes however that doesn’t affect the workflow behaviour and doesn’t affect the trigger whatsoever
Hope you can suggest a solution
Thanks
Sent from my iPhone
On 5. Nov 2023, at 03:54, Travis Harris @.***> wrote:

I'm trying to fully understand what the issue happening here is. You're changing teh recurrence trigger through API and expecting it to change in the designer? Are you refreshing the designer after making a change, and it will need a hard refresh of the portal most likely, the caching used in the portal does now assume people are making changes outside of portal?
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/LogicAppsUX/issues/3605#issuecomment-1793616713, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A5CAO7JQABCU4UAYTXI4Q73YC35VPAVCNFSM6AAAAAA656UQYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJTGYYTMNZRGM.
You are receiving this because you authored the thread.Message ID: @.***>

Like I said, it's generally expected that if you update the workflow outside of the portal while portal is open, you'll need to do a hard refresh for the designer to reflect that change(and I mean effectively hitting the browser refresh button or the hotkey combo for your OS). But if that's not reflecting that's wierd. I'll look into it this week sometime. In the meantime I would really advise using the designer OR using the rest API. Using both can definitely lead to something not being formatted correctly or something such that it technically works(because the backend can figure it out) but the designer maybe isn't able to.

Hi Travis
With Logic App Consumption no form of refresh is needed, I simply get the AD token , perform a PUT request and Voilà- workflow is changed.
The issue is only with Standard Logic Apps when even after a refresh nothing happens
Thanks
With very best regards,
Moshe Nachman ,
CEO and Founder
Cumulus-Service  GmbH
Fürstenrieder Straße 8b
München, 80687
M: +972-54-6564046 / +49-152 24436050
E<EMAIL_ADDRESS>W: https://cumulus-service.com/
[cid:7eb51d92-3811-4af9-9d3e-98a136173e89]

From: Travis Harris @.>
Sent: Monday, November 6, 2023 1:38 AM
To: Azure/LogicAppsUX @.>
Cc: Moshe Nachman @.>; Author @.>
Subject: Re: [Azure/LogicAppsUX] Updating a Standard Logic App Definition via REST API (Issue #3605)
Like I said, it's generally expected that if you update the workflow outside of the portal while portal is open, you'll need to do a hard refresh for the designer to reflect that change(and I mean effectively hitting the browser refresh button or the hotkey combo for your OS). But if that's not reflecting that's wierd. I'll look into it this week sometime. In the meantime I would really advise using the designer OR using the rest API. Using both can definitely lead to something not being formatted correctly or something such that it technically works(because the backend can figure it out) but the designer maybe isn't able to.
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/LogicAppsUX/issues/3605#issuecomment-1793907580, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A5CAO7KABWP3EFOAKPH46XDYDAPORAVCNFSM6AAAAAA656UQYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJTHEYDONJYGA.
You are receiving this because you authored the thread.Message ID: @.***>

I figured this- the PUT request is only applicable to Logic Apps of type "Consumption" and not "Standard"  ones.
No refresh / cache clearing is needed , just relaunching the Logic App and the changes are applicable
If you could investigate that thing to see why the Single-Tenant Apps won't work , it would be great as the  Consumption Logic Apps  are not natively integrated with a Virtual Network which is so needed.
Thanks !
With very best regards,
Moshe Nachman ,
CEO and Founder
Cumulus-Service  GmbH
Fürstenrieder Straße 8b
München, 80687
M: +972-54-6564046 / +49-152 24436050
E<EMAIL_ADDRESS>W: https://cumulus-service.com/
[cid:b3b3032d-7a78-43ea-b8a1-f55d5d8b1edd]

From: Moshe Nachman
Sent: Sunday, November 5, 2023 4:00 AM
To: Azure/LogicAppsUX @.>
Cc: Azure/LogicAppsUX @.>; Author @.***>
Subject: Re: [Azure/LogicAppsUX] Updating a Standard Logic App Definition via REST API (Issue #3605)
Hi Sir
I must admit that this is the first time I’m performing changes to a logic App outside of the designer , I read the API Reference and for the impression that the workflow definition could be altered.
The guide mentions the PATCH method however it fails so the only choice is to use the PUT verb however that requires sending the entire workflow definition in the request body .
As for the refresh - I tried using the browser private mode , refreshed the page , cleared browser cache etc.
Didn’t help
The writes thing is that when I use the GET verb right after the PUT , I do see the changes however that doesn’t affect the workflow behaviour and doesn’t affect the trigger whatsoever
Hope you can suggest a solution
Thanks
Sent from my iPhone
On 5. Nov 2023, at 03:54, Travis Harris @.***> wrote:

I'm trying to fully understand what the issue happening here is. You're changing teh recurrence trigger through API and expecting it to change in the designer? Are you refreshing the designer after making a change, and it will need a hard refresh of the portal most likely, the caching used in the portal does now assume people are making changes outside of portal?
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/LogicAppsUX/issues/3605#issuecomment-1793616713, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A5CAO7JQABCU4UAYTXI4Q73YC35VPAVCNFSM6AAAAAA656UQYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJTGYYTMNZRGM.
You are receiving this because you authored the thread.


Add dataframe method: skew()

Hey Dask team,
I stumbled upon the fact that the data dataframe class currently does not have a skew()-method, but pandas does. I also found that the array class has a nice implementation, so I figured I'd help implement the skew()-method for the dataframe class. Would that be ok?

That would be great!
On Mon, Nov 23, 2020 at 8:29 PM Jan Borchmann<EMAIL_ADDRESS>wrote:

Hey Dask team,
I stumbled upon the fact that the data dataframe class currently does not
have a skew()-method, but pandas does. I also found that the array class
has a nice implementation, so I figured I'd help implement the skew()-method
for the dataframe class. Would that be ok?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/6880, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACKZTF2FGS4T3BSRM6LTITSRMZC3ANCNFSM4UAKNM2A
.


Posibility of sending meta, not as separate field, but in the same object with message and log level

Hi!
Thank you for awesome plugin :+1:
Is it possible to allow users send meta not inside separate meta field, but in the same object with message and level here https://github.com/bithavoc/express-winston/blob/master/index.js#L360?
The thing is winston documentation says const { level, message, ...meta } = info; is ok, also I tried to connect this module with https://github.com/logdna/logdna-winston/blob/master/index.js#L29 assuming meta is all other message fields except message itself and level...
Consequently I have meta.meta.res.statusCode in my logs... Visually it's ok ok, but it's not so important.
But I haven't written this issue if I haven't bumped into Depth of parsed nested fields limitation of logging service https://docs.logdna.com/docs/ingestion#section-service-limits

This is actually a bug in how the "express-winston" library is sending log messages and has never been reported.
The "log" method on the winston Logger object is defined a "LogMethod" which has the signature:
        (level: string, msg: string, callback: LogCallback): LoggerInstance;
        (level: string, msg: string, meta: any, callback: LogCallback): LoggerInstance;
        (level: string, msg: string, ...meta: any[]): LoggerInstance;
    }```

However, the `express-winston` library calls winston using the syntax:
`logger.log({level, message: msg, meta})`
when it should be:
`logger.log(level, msg, meta)`

Doing this will correctly insert the information in the correct location in the logs. PR forthcoming.

This is now fixed with express-winston 4


Pregnancy perks initial

Current implementation as in the mod, not ready for review yet.

A person in discord gave an interesting idea for a perk
Bassically a perk that allows you to ovulate even if already pregnant. Would allow you to get even more pregnant x3
Not too hard to implement too, would just need a perk check in https://github.com/Alexofp/BDCC/blob/611a47575ef023ca1ca65d550ca88253a979181a/Game/Pregnancy/MenstrualCycle.gd#LL65C61-L65C61
so it would look like
if(!ovulatedThisCycle && cycleProgress >= willOvulateAt && (!isPregnant() || getCharacter().hasPerk(Perk.ASdasd))):
might as well let them experience heat too while pregnant, just needs a simillar change for the func isInHeat(): function

Current implementation as in the mod, not ready for review yet.

A person in discord gave an interesting idea for a perk
Bassically a perk that allows you to ovulate even if already pregnant. Would allow you to get even more pregnant x3
Not too hard to implement too, would just need a perk check in https://github.com/Alexofp/BDCC/blob/611a47575ef023ca1ca65d550ca88253a979181a/Game/Pregnancy/MenstrualCycle.gd#LL65C61-L65C61
so it would look like if(!ovulatedThisCycle && cycleProgress >= willOvulateAt && (!isPregnant() || getCharacter().hasPerk(Perk.ASdasd))):
might as well let them experience heat too while pregnant, just needs a simillar change for the func isInHeat(): function

I've seen that, but how feti is going to grow inside the belly if you just keep going? Sounds like you could just prolong pregnancy indefinitely with this feature.  For example say you got pregnant, feti from your first ovulation grew to 60% towards birth, then you ovulated and got pregnant again, when the 1st batch reaches 100% readiness for birth, your second batch is only at 40%. Now if we wait for the second batch to grow to 100% the first one would be at 160% and if we repeat that multiple times, the very first batch might reach 1000% or more and that's kinda silly.
Now we may add some conditions like if there is a cell that grew to certain percent towards birth, no new ovulation is possible. But that wouldn't change things much from how the system currently works.

that part isn't realistic already, feti stop growing after 100%, allowing you to give birth at any time you want. I dunno, I think it would be fun and doesn't require much coding ^^

that part isn't realistic already, feti stop growing after 100%, allowing you to give birth at any time you want. I dunno, I think it would be fun and doesn't require much coding ^^

Of course we aren't talking about realism here. Im interested to know what's going to happen if we have some feti that are not ready for birth, but we give birth to the ones who are ready?  I guess the giving birth scene could be modified a bit so it doesn't allow you to give birth until every fetus is ready

7/9 perks ready
FertilityBetterOvulationV3 (Anomalous pregnancy) and FertilitySubmissiveAndBreedable left

Full review is not necessary atm just check if Submissive And Breedable perk is okay before I start implementing it.

meow meow meow. My inner optimization gremlin cries from the amount of babies that people will have x3. It's like I should have made them just be a number

You can just set egg cell lifespan very high and and short cycle length in the base game and have 100 babies or even more per birth. Actually I was thinking about tweaking the code so any non impregnated cells get deleted when the cycle ends to prevent this madness.

Thank you <3


Not support services alias.

Thank for your tool, help a lot.
before is using Drupal 8, some service define in services.yml with autowire: true.
after upgrade to Drupal 9, will cause error Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a            [error] non-existent service
as a result, added a alias like
GuzzleHttp\Client: '@http_client'
Drupal\Core\Config\ConfigFactoryInterface<EMAIL_ADDRESS>Drupal\Core\Messenger\MessengerInterface: '@messenger'
Drupal\Core\Logger\LoggerChannelFactory<EMAIL_ADDRESS>Drupal\Core\Logger\LoggerChannelFactoryInterface<EMAIL_ADDRESS>
after added the class alias in services.yml solve the error. but cannot run the check.
i found that the error is below and cause by defining the  class alias
Error thrown in /var/www/drupal8/vendor/mglaman/phpstan-drupal/src/Drupal/DrupalAutoloader.php on line 191 while loading bootstrap file /var/www/drupal8/vendor/mglaman/phpstan-drupal/drupal-autoloader.php: Cannot unset string offsets

the $serviceDefinition in vendor/mglaman/phpstan-drupal/src/Drupal/DrupalAutoloader.php is string (ie. @http_client), and not an array
"class" => "Drupal\custom_eq\Services\NodequeueExportClient"
  "arguments" => array:2 [
    0 => "http_client"
    1 => "logger.factory"
  ]

This might be related to #222. This did not support autowired services, since Drupal did not.

It's simliar but not the same. We do not support shorthand aliasing.


[Task] shenyu-admin db operation optimize

Description
there are many database operations that can be optimized in loops.
Task List
1.AppAuthServiceImpl
1）method enabled： batch operation can improve efficiency; check the parameters to evaluate whether publish event is needed and reduce overhead.
2.DashboardUserServiceImpl
1）method delete： The data sets that need to be processed are queried in batches, and the conversion stream can efficiently process the data, collect the specified data, and then operate in batches.
2）method findById： Query role information, you can query in batches.
3.MetaDataServiceImpl
1）method delete： Batch query and delete can reduce the overhead; check the parameters to evaluate whether publish event is needed, and reduce overhead.
2）method enabled： check the parameters to evaluate whether publish event is needed, and reduce overhead; Traverse and process data, batch query and update can reduce overhead
4.PermissionServiceImpl
1)method getResourceListByUserName：The query resource list can be queried in batches, reducing overhead
5.PluginHandleServiceImpl

method deletePluginHandles： Batch deletion can reduce overhead
method listByPage：buildPluginHandleVO uses database query, you can consider batch query requires data, unified traversal assembly; compared with frequent database overhead, if memory allows, the traversal cost is almost negligible
method list： Same as above

6.PluginServiceImpl
1）method enabled： Batch query and update can reduce database overhead
7.ResourceServiceImpl
1）method getMenuInfo； Whether the implementation logic of recursive call can be optimized, and the cost of evaluating complexity
2）method getDeleteResourceIds： Can the recursive logic be optimized: if the return value can be used to reduce the stacking overhead
8.RoleServiceImpl
1）method getTreeModelList： Can the recursive logic be optimized: if the return value can be used to reduce the stacking overhead
9.RuleServiceImpl
1）method buildRuleData： The method body includes database operations, which are called by the upper method. Can the method definition be optimized?
10.SelectorServiceImpl
1）method delete： Evaluate and optimize database operations as batch operations, and optimize the call logic of publishment
2）method buildSelectorData： The method body includes database operations, which are traversed and called by the upper method. Is it possible to consider method definition optimization?
11.ShenyuDictServiceImpl
1）method 1）deleteShenyuDicts： Optimize batch deletion
12.SyncDataServiceImpl
1）method syncPluginData： Optimize batch query
13.UpstreamCheckService
1）method fetchUpstreamData： Optimize batch query

P assign to me

please assign to me

what's the progress @zhouyadong?

@qicz @yu199195 @zhouyadong can I try this?

Sorry, I have delayed the progress of the task, I will catch up as soon as possible

what's the progress @zhouyadong?

I refactored some database operations in the loop in AppAuthServiceImpl and PermissionServiceImpl

new task for ResourcePermissionDataSourceLoader loop optimize. @zhouyadong


ahoy.configure is ignored?

So I have code that is calling ahoy from a Wordpress front-end to post to a Rails backend (part of the site is dynamically served from rails APIs).
I have ahoy.configure set as such (my API's run from /flip).
    ahoy.configure({
      urlPrefix: "",
      visitsUrl: "/flip/ahoy/visits",
      eventsUrl: "/flip/ahoy/events",
      cookieDomain: null,
      page: null,
      platform: "Web",
      useBeacon: false,
      startOnReady: true
    });

Sometimes, I see it working and events are being added to the database, but for click events I'm getting 404 errors where it is trying to find the events at <domain>/ahoy/events.
Where and when should configure be called? Is it enough to call it on document.load?

You'll need to call it before document.load fires, or set startOnReady to false and call ahoy.start() manually.

From my reading of the code, the only way to do this is to set ahoy to the configuration, which is made possible by line 36:
ahoy = { ...config }
// load ahoy.js
ahoy.start()

If you configure after you load the script, you won't actually be able to control startOnReady and various cookie parameters.

You should be able to call configure after the JS is loaded but before jQuery's ready event fires.

If I'm not mistaken, unless y set startOnReady to false before you load ahoy.js, it will still call start() on ready.

Looks like a bug. Feel free to submit a PR, or I'll tackle it when I can.

That was fast ;).  Thanks!


Support batching of parties transactions in User_command_input

The inferred_nonce logic within User_command_input does not currently have proper support for parties transactions which increment the fee payer nonce more than once. This is not currently an issue, as we do not publicly expose any APIs which allow submitting parties transactions in batch, but we should still fix this logic sooner rather than later. The offending code can be found here https://github.com/MinaProtocol/mina/blob/develop/src/lib/user_command_input/user_command_input.ml#L155.

sending batch payments have been disabled and not sure if this more useful than simply using sendZkapp command multiple times (since the command would require a fully constructed zkapp transaction; nonces aren't inferred)


Make command names and options consistent

We have some deprecated names which we should clean up, but perhaps some command names can be shortened as well. In some cases we should also consider simpler names, eg. spo site groupify instead of spo site office365group set.
Additionally, we should align short options across commands for consistency, eg. -l, --listId vs. -i, --listId

[ ] create list of all command names and their options
[ ] propose new names and options
[ ] agree on changes
[ ] apply changes

This is a breaking change that should be included in v2

@waldekmastykarz , I assigned that to myself. I will start with the list of commands and provide it shortly.

Awesome! Thanks!

Hey @waldekmastykarz , I created list of commands and their option list here: https://github.com/VelinGeorgiev/office365-cli/commit/aaf49a3fafd18b34358f7296fcd94f506affa1eb
Anyone is welcome to propose new names and options. Since that is in the source control I guess we will be able to track how this changes over time and from the different suggestions.


How do I use Google OR-tools in my Android application?

I am trying to solve a scheduling problem using an OR-tools and integrate this into my project-management android application.
I have added the com.google.ortools.jar on my lib folder inside my android application project and faced the problem with "class file has wrong version 54.0, should be 52.0", which tells me that com.google.ortools.jar is compiled with Java 11, but my android app with Java8 only.
The problem is that android SDK supports only Java 8 and lower, but I somehow manually forced it to use Java 11 provided by Oracle, not Android.
This manipulation led to some other weird problems that I have never seen before and it seems like what I am doing is just wrong.
I wonder, if anyone had integrated OR-tools inside their Android application.
Is there any proper way of doing it? Can't find any manual in the web

duplicate of #537
TLDR: we still don't support cross-compilation nor ARM...

You cannot easily.  The library contains native code that is not compiled
for arm.
You would need to compile from source, maybe with a cross compiler... A
long endeavor.
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le ven. 15 mars 2019 à 12:29, samalpys<EMAIL_ADDRESS>a écrit :

I am trying to solve a scheduling problem using an OR-tools and integrate
this into my project-management android application.
I have added the com.google.ortools.jar on my lib folder inside my android
application project and faced the problem with "class file has wrong
version 54.0, should be 52.0", which tells me that com.google.ortools.jar
is compiled with Java 11, but my android app with Java8 only.
The problem is that android SDK supports only Java 8 and lower, but I
somehow manually forced it to use Java 11 provided by Oracle, not Android.
This manipulation led to some other weird problems that I have never seen
before and it seems like what I am doing is just wrong.
I wonder, if anyone had integrated OR-tools inside their Android
application.
Is there any proper way of doing it? Can't find any manual in the web
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1130, or mute the thread
https://github.com/notifications/unsubscribe-auth/AKj17VF3MS5GVAV-i_LV4eXlVh6rTTfsks5vW4QugaJpZM4b2Q35
.

Is it impossible to use the or tools in android ?

If possible, can you give me a guide?

You need to compile the c++ library yourself. It is possible.  We compile
ortools internally for android, but the toolchain is different.
You may need help on files in the ortools/port/.
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le mar. 9 juin 2020 à 15:44, Wang<EMAIL_ADDRESS>a écrit :

If possible, can you give me a guide?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1130#issuecomment-641306478,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3NGC7MX4V3LW3KASN3RVY4C5ANCNFSM4G6ZBX4Q
.

While or-tools don't use fancy x86 stuff so cose is portable to arm without any change, I won't say  it's 100% guarantee for all our dependencies e.g. CBC/CLP solver, also you have to adapt any build system (bazel, make, cmake) to be able to use a cross-toolchain instead of performing a native build.
note: I would go for cmake bazel build IMHO since android ndk already provide a toolchain IIRC...
note2: it is on our todo list with a very low priority -> no ETA.


check mark hidden in Internet explorer 11 while selecting in multiselect select picker

It seems to be working for me: https://developer.snapappointments.com/bootstrap-select/examples/#multiple-select-boxes. Bug reports must include a live demo of the problem. Per our contributing guidelines, please create a reduced test case via Plunker, jsFiddle, CodePen or JS Bin, and report back with your link, Bootstrap version, bootstrap-select version, and specific browser and OS details.

It was an issue with the checkbox icon I was using, I have found a workaround,
Thanks for the prompt reply.


"sql" messaging service is not working on Bungee

4.3.18 is showing Messaging service "sql" not recognised on start up and Messaging: None in /lpb info.
Downgrading to 4.3.11 fixed this issue.

Note: the messaging service was working for the user's spigot servers. Just Bungee was affected.

Working for me

I'm just going to close this then, maybe it was another issue they were having but they went silent on Discord so /shrug


Add support for extended baudrates on posix systems (57600-4000000)

Closes #4
Caveat: This requires https://github.com/nim-lang/Nim/pull/8322, and therefore should probably wait until the 0.19.0 release to merge and update version numbers.
If you'd prefer, I can hold off making this PR until the new release, otherwise it's fine by me if this just collects dust until then.  I'm motivated to keep track since this is for a work project.

We can also add a when check for NimMajor, NimMinor and NimPatch and feature gate it that way. I’m happy with either option

On 1 Aug 2018, at 14:27, Jeff Ciesielski<EMAIL_ADDRESS>wrote:
Closes #4
Caveat: This requires nim-lang/Nim#8322, and therefore should probably wait until the 0.19.0 release to merge and update version numbers.
If you'd prefer, I can hold off making this PR until the new release, otherwise it's fine by me if this just collects dust until then. I'm motivated to keep track since this is for a work project.
You can view, comment on, or merge this pull request online at:
https://github.com/euantorano/serial.nim/pull/10
Commit Summary
Add support for extended baudrates on posix systems (57600-4000000)
File Changes
M src/serial/private/serialport/serialport_posix.nim (60)
Patch Links:
https://github.com/euantorano/serial.nim/pull/10.patch
https://github.com/euantorano/serial.nim/pull/10.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

This looks good otherwise though.
I want to think up a better way than what's currently there to do this translation. I also want to change baudRate* to use a case rather than if/else.
I also want to add support for custom baud rates on the platforms that support them, just need to work out the best way to do that (it may require runtime checks).

Typically for stuff like this I like to use bidirectional tables and just trap the KeyError on a failed lookup.  I'd be happy to make that change.

I'm going to merge this for now, and look at improving it this weekend. Thanks!


Textual vit progressive

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


fix: dateValidator parse date error.

Some dates not parse for time zone ,when joda-time is used.
https://github.com/JodaOrg/joda-time/issues/356

SonarQube analysis reported 1 issue
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 DateValidator.java#L9: This block of commented-out lines of code should be removed.

Could you provide a unit test for an edge case, such as 1983-04-01 in the Asia/Novosibirsk timezone?

This issue was addressed by work done in issue https://kylo-io.atlassian.net/browse/KYLO-1358


Bind new field in HTML card in the Environnment tab

We have added a new experimental field: environment_infocardto give the carbon impact of a product.
https://fr.openfoodfacts.org/api/v0/produit/3560070573998/lasagnes-a-la-bolognaise-grand-jury?fields=environment_infocard
Whenever this field is not empty, the environment tab should be shown, and the basic HTML that it contains should be put in a card using this technique:
https://stackoverflow.com/questions/2116162/how-to-display-html-in-textview

I will work on this.

👍


Version:fatal

Just noticed this today.  I had recently done a "clean" install of sickchill running under Docker, and set up a new DB by "adding shows from existing".
All seems to work well.
But I see:
Branch: master
Commit: f7a113a737654a91076bb42221e119db6258a276
Version: fatal: No names found, cannot describe anything.
Database Version: 44.0
Before today's update, the Version line still had fatal, but also had something about no tag associated with some long alphanumeric code.

If it works well then dont worry about what it shows there. It is the output of a git command in the docker.


chore(portal): Replace Cowboy with Bandit

Other projects see noticeable performance improvements and Bandit is well-maintained and written in Elixir, which should allow us to contribute if needed.
This PR is blocked by release of new OpenTelemetry Phoenix package: https://github.com/open-telemetry/opentelemetry-erlang-contrib/tree/main/instrumentation/opentelemetry_phoenix

@jamilbk yes


Refactor docker images

Simplifies dockerfiles by using the standard upstream JupyterHub image now that it supports Python 3.8.
Pinned to jupyterhub/jupyterhub-k8s:0.9.1

LGTM

I have a few questions regarding jupyterhub-samlauthenticator and the purpose of config.yaml

Hi @Abhi94N as agreed we will create a new PR to deal with #27


Slack Invite Link is Broken

Hello, I was trying to jump on the slack channel to ask a question and cannot seem to join...
Will create a new issue here for my actual problem, but would much prefer to chat with someone!

Hi! thanks for reaching out, does the Slack signup show an error or show a response?
The link seems to work https://video-dev.fly.dev/

Upon clicking join, I am redirect to this:

Fixed! Thanks for the callout.


StaticFiles filter and simplecontroller

Is your feature request related to a problem? Please describe.
There are some static files may require privilege to see and is it alright to use a HttpSimpleController with Filter to perform the job? Secondly, Does HttpSimpleController handles incoming Cookies?
E.g.
namespace a
{
namespace b
{
class PFiles:public drogon::HttpSimpleController<PFiles>
{
  public:
    virtual void asyncHandleHttpRequest(const HttpRequestPtr& req, std::function<void (const HttpResponsePtr &)> &&callback) override;
    PATH_LIST_BEGIN
    //list path definitions here;
    PATH_ADD("/*","a::b::PFilter",Get); //Tried path "/" but missing incoming cookies
    PATH_LIST_END
};
}
}
void PFilter::doFilter(const HttpRequestPtr &req,
                         FilterCallback &&fcb,
                         FilterChainCallback &&fccb)
{
  //Check cookies
}

void PFiles::asyncHandleHttpRequest(const HttpRequestPtr& req, std::function<void (const HttpResponsePtr &)> &&callback)
{
    //write your application logic here
    LOG_DEBUG << "PFile Called : " << req->path();
    drogon::app().forward(req,std::move(callback));
}

Describe the solution you'd like
Would it be possible for the HttpApplicationFramwork to install multiple StaticFilesController's and some of them accept filters ?
Describe alternatives you've considered
There is a section location in the config.json, maybe add an option for some location's to apply filters?
Additional context
Nope

My comment is not directly related to your issue with password-protected assets, but more to the application of filters to locations. In one of my applications we currently use something we call LocaleFilter that handles l10n of pages and related resources. Furthermore our controllers have a filter called Layouter that handles basic tasks required for a backend-generated page to work.
Adding one or both to almost every route can get tedious fast. Sometimes you can even forget to add some (basically duplicated across controllers) code to the handling method of a controller.
Maybe these considerations could be taken into account when adding additional filter capabilities to the framework?

@rbugajewski Thx for the reply. There is a dynamic page generation mechanism in drogon similar to Layouter I guess. From my own perspective, I prefer to offload most of the tasks to edges, e.g. the i18n translation, even tho we have powerful application server like drogon. What the server(s) need is to make judgements on releasing the "off-streamable"'s.

For static files, I prefer to use AOP rather than filters. For example:
app().registerPreRoutingAdvice([](const HttpRequestPtr &req,
                                                           AdviceCallback &&cb,
                                                           AdviceChainCallback &&ccb)
{
        if(req->path().....)//hit some conditions
        {
                 //check cookies. or just get the filter for controllers to do this.
        }
});

And I think the drogon::app().forward(req,std::move(callback)); in your code is wrong, if you don't change the path of a request before forwarding it, the request will be handled in a infinite loop.
I think adding filters to locations is a good idea, I'll think about implementing it.

And I think the drogon::app().forward(req,std::move(callback)); in

Ohhh, you are right! I was trying to proxy the requests and that line-of-code should be changed!

I think adding filters to locations is a good idea, I'll think about implementing it.

Cool, looking forwards on it or please let me know if I can help.

@an-tao As far as I have seen, The static file handler is quite "static" within the framework. Dont you think it is appropriate to make StaticFileRouter::sendStaticFileResponse() to be static and expose it throught HttpAppFramework ?
I will make a PR for it if you think its ok.

@ihmc3jn09hk I made a PR for this, but I didn't test it too much, please check it.

@an-tao Thanks. Waiting for the PR to pass. At the same time, I am also trying to expose the sendStaticFileResponse() as mentioned in the previous comment. E.g.
It compiled and is working. Don't you think it is appropriate ?
void HttpAppFrameworkImpl::sendStaticFileResponse(
  const std::string &filePath,
  const HttpRequestPtr &req,
  const std::function<void(const HttpResponsePtr &)> &callback,
  const string_view &defaultContentType) const
{
  staticFileRouterPtr_->sendStaticFileResponse(
    filePath,
    static_cast<HttpRequestImpl>(*req),
    callback,
    defaultContentType);
}

You could send static files by:
    /// Create a response that returns a file to the client.
    /**
     * @param fullPath is the full path to the file.
     * @param attachmentFileName if the parameter is not empty, the browser
     * does not open the file, but saves it as an attachment.
     * @param type if the parameter is CT_NONE, the content type is set by
     * drogon based on the file extension.
     */
    static HttpResponsePtr newFileResponse(
        const std::string &fullPath,
        const std::string &attachmentFileName = "",
        ContentType type = CT_NONE);

Is it what you want?

@an-tao OMG, I totally forgot this function

SOrry for the late reply. The PR #422 is working nicely.
I was modifying settings between document_root and alias to make it works as expected. Thanks


Improve UI/UX

The client uses two types of buttons. Normal ones (grey) and important ones (white, e.g. "create game" or "search"). White is not really noticable. The white buttons should have a bright color to make them more visible. The button color needs to fit with the rest of the client coloring.
Also the "more" buttons in the vault are not where you expect them. They are on the far right and on the same height as the category headings, making it confusing what the right button is.

UI was changed closing this. Open more specific issues for other changes

UI was changed closing this. Open more specific issues for other changes


Users can access each-others data using the new webdav API

as einstein create a folder curl -X MKCOL http://localhost:9140/remote.php/dav/files/oc/einstein/special-relativity -u einstein:relativity
as richard list einsteins folders curl -X PROPFIND http://localhost:9140/remote.php/dav/files/oc/einstein -u richard:superfluidity | xmllint --format -
as einstein upload data
as einstein upload data curl -X PUT http://localhost:9140/remote.php/dav/files/oc/einstein/special-relativity/first-try.md -d"lets talk about space and time" -u einstein:relativity
as richard download einsteins data: curl  http://localhost:9140/remote.php/dav/files/oc/einstein/special-relativity/first-try.md -u richard:superfluidity

this needs to be updated to reflect the new default ocis storage:

request should be curl -X MKCOL http://localhost:9140/remote.php/dav/files/oc/einstein/special-relativity -u einstein:relativity

Also, it does not happen anymore with the current master:
~/code
❯ curl -k -X PROPFIND https://localhost:9200/remote.php/dav/files/einstein -u richard:superfluidity | xmllint --format - | xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
-:1: parser error : Document is empty

^
-:1: parser error : Document is empty

^

~/code
❯ curl -k -X PROPFIND https://localhost:9200/remote.php/dav/files/einstein -u richard:superfluidity -v
*   Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 9200 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server did not agree to a protocol
* Server certificate:
*  subject: O=Acme Corp; CN=OCIS
*  start date: Sep 18 13:42:46 2020 GMT
*  expire date: Sep 18 13:42:46 2021 GMT
*  issuer: O=Acme Corp; CN=OCIS
*  SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway.
* Server auth using Basic with user 'richard'
> PROPFIND /remote.php/dav/files/einstein HTTP/1.1
> Host: localhost:9200
> Authorization: Basic cmljaGFyZDpzdXBlcmZsdWlkaXR5
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Access-Control-Allow-Origin: *
< Content-Length: 0
< Content-Security-Policy: default-src 'none';
< Date: Tue, 19 Jan 2021 10:59:52 GMT
< Vary: Origin
< X-Access-Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJyZXZhIiwiZXhwIjoxNjExMTQwMzkyLCJpYXQiOjE2MTEwNTM5OTIsImlzcyI6Imh0dHBzOi8vbG9jYWxob3N0OjkyMDAiLCJ1c2VyIjp7ImlkIjp7ImlkcCI6Imh0dHBzOi8vbG9jYWxob3N0OjkyMDAiLCJvcGFxdWVfaWQiOiI5MzJiNDU0MC04ZDE2LTQ4MWUtOGVmNC01ODhlNGI2YjE1MWMifSwidXNlcm5hbWUiOiJyaWNoYXJkIiwibWFpbCI6InJpY2hhcmRAZXhhbXBsZS5vcmciLCJkaXNwbGF5X25hbWUiOiJSaWNoYXJkIEZleW5tYW4iLCJvcGFxdWUiOnsibWFwIjp7ImdpZCI6eyJkZWNvZGVyIjoicGxhaW4iLCJ2YWx1ZSI6Ik16QXdNREE9In0sInVpZCI6eyJkZWNvZGVyIjoicGxhaW4iLCJ2YWx1ZSI6Ik1qQXdNREk9In19fX19.5ilxIcacBziSZt109cTEjr5PBrTAGH3_XFHF4qYr_Nw
< X-Content-Type-Options: nosniff
< X-Download-Options: noopen
< X-Frame-Options: SAMEORIGIN
< X-Permitted-Cross-Domain-Policies: none
< X-Robots-Tag: none
< X-Xss-Protection: 1; mode=block
<
* Connection #0 to host localhost left intact
* Closing connection 0

~/code

I will close it as the owncloud storage is no longer "recommended".

this needs to be updated to reflect the new default ocis storage:

request should be curl -X MKCOL http://localhost:9140/remote.php/dav/files/oc/einstein/special-relativity -u einstein:relativity

Also, it does not happen anymore with the current master:
~/code
❯ curl -k -X PROPFIND https://localhost:9200/remote.php/dav/files/einstein -u richard:superfluidity | xmllint --format - | xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
-:1: parser error : Document is empty

^
-:1: parser error : Document is empty

^

~/code
❯ curl -k -X PROPFIND https://localhost:9200/remote.php/dav/files/einstein -u richard:superfluidity -v
*   Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 9200 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server did not agree to a protocol
* Server certificate:
*  subject: O=Acme Corp; CN=OCIS
*  start date: Sep 18 13:42:46 2020 GMT
*  expire date: Sep 18 13:42:46 2021 GMT
*  issuer: O=Acme Corp; CN=OCIS
*  SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway.
* Server auth using Basic with user 'richard'
> PROPFIND /remote.php/dav/files/einstein HTTP/1.1
> Host: localhost:9200
> Authorization: Basic cmljaGFyZDpzdXBlcmZsdWlkaXR5
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Access-Control-Allow-Origin: *
< Content-Length: 0
< Content-Security-Policy: default-src 'none';
< Date: Tue, 19 Jan 2021 10:59:52 GMT
< Vary: Origin
< X-Access-Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJyZXZhIiwiZXhwIjoxNjExMTQwMzkyLCJpYXQiOjE2MTEwNTM5OTIsImlzcyI6Imh0dHBzOi8vbG9jYWxob3N0OjkyMDAiLCJ1c2VyIjp7ImlkIjp7ImlkcCI6Imh0dHBzOi8vbG9jYWxob3N0OjkyMDAiLCJvcGFxdWVfaWQiOiI5MzJiNDU0MC04ZDE2LTQ4MWUtOGVmNC01ODhlNGI2YjE1MWMifSwidXNlcm5hbWUiOiJyaWNoYXJkIiwibWFpbCI6InJpY2hhcmRAZXhhbXBsZS5vcmciLCJkaXNwbGF5X25hbWUiOiJSaWNoYXJkIEZleW5tYW4iLCJvcGFxdWUiOnsibWFwIjp7ImdpZCI6eyJkZWNvZGVyIjoicGxhaW4iLCJ2YWx1ZSI6Ik16QXdNREE9In0sInVpZCI6eyJkZWNvZGVyIjoicGxhaW4iLCJ2YWx1ZSI6Ik1qQXdNREk9In19fX19.5ilxIcacBziSZt109cTEjr5PBrTAGH3_XFHF4qYr_Nw
< X-Content-Type-Options: nosniff
< X-Download-Options: noopen
< X-Frame-Options: SAMEORIGIN
< X-Permitted-Cross-Domain-Policies: none
< X-Robots-Tag: none
< X-Xss-Protection: 1; mode=block
<
* Connection #0 to host localhost left intact
* Closing connection 0

~/code

I will close it as the owncloud storage is no longer "recommended".


Adding latex template

Hi Phil, how's it going? You can merge this @drphilmarshall.

Thanks Alex! :-)


Does this implementation preserve comments when writing a table read from a file?

Question in the title. I'm looking for a comment-preserving parser and printer.

Sorry, it doesn't. All comments will be wiped out after parsing toml file.

Hi,
Sorry for the confusing reply. Actually, I found (and you may have already found?) that there is a way to extract comments that are described around a toml::value.
Although the parser skips comments in a file, as mentioned in the README, the contents of a file remains on memory unless all the toml::values are destructed. So essentially I can implement a function to find comments that are written before and after the value. I pushed a proof-of-concept function to a branch named experimental-preserve-comment.
However, because it searches file contents, it doesn't work with values that are constructed in a C++ code. It means that there is no way to modify the comments. In order to modify the comments, we need to add one std::string or something like that to toml::value, but I don't know if it is the right place.
In the future release, hopefully 2.3, the functionality to read comments related to a value would be introduced. But enabling to modify a comment is a bit different stuff, so I'd like to think about it more carefully.

Oh, that's actually a good start. The motivating use case for me is human- and machine-editable configuration: my program should be able to read a configuration written by a human, possibly with comments, and change values without disturbing comments on (i.e. immediately before) those values; add values without putting them in-between an existing value and its comment; or remove values without removing comments.

It took a long time, but I've added a toml::value::comment function to get comments related to a value.
But currently, once a value is modified, information about which part in a file corresponds to the value will be removed because the region is no longer corresponds to a value. It means that after modifying data, comments are not able to be obtained. Thus currently it is impossible to modify a data keeping a comment. To put a comment, comments need to be written manually while serialization.
As I said before, adding a member variable that represents comments to a value is a large change. So the change would possibly be made in version 3.

Hi, sorry for the late reply but this feature has been supported after v3.
You can specify preserve_comments via toml::parse function and then you can read/write a comment on a value.
auto data = toml::parse<toml::preserve_comments>("example.toml");
data.at("v1").comments().push_back(" this is a comment");
std::cout << data;

# this is a comment
v1 = "foo"

For more detail, please see here.


NUCLEO_H742ZI2 support

This board has 2 MB of flash, each flash erase sector is 128 kilobytes.

Bank 1

2 x 128kB for BOOTLOADER
6 x 128kB App header (1 kb) and Application

Bank 2

2 x 128kB for KVStore
6 x 128kB for FW download area

Added it also to Jenkinsfile and release script.
Removed fat_chan from requirements, as it's really not needed in
internal flash case (we use tdbstore).

@JanneKiiskila , @JammuKekkonen please combine this somehow with PR #52

I think #52 was now merged, so we can just get that one in.


docs: Doc build

Description

This is needed based on @st-pasha and my lengthy discussion in: https://github.com/flame-engine/flame/pull/1869
In order to build the docs locally, you need Python 3.8+ and the python script needs to be updated to find the right build file.
Checklist

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

Breaking Change?

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

Related Issues

Ok, can someone explain to me the conflicts here?  These are the changes that need to be done.


Every Element of MUIDataTable Treat as a Form

Is there any To make a MUI Element as Form as similar to the Jquery Datatable as i mentioned below

What do you mean? Something like this?


About the corresponding code of the paper

Hello stucki, Your work is fantastick, so I read your paper and code <> more than a week, but I very hard to follow your idea, especailly the connections between the paper and code, due to my ability is not enough. If providing more annotatation in code is better.
The following question makes me confused:

Union find. I can't find the detail to explain the logic of code in paper.

Find function. In the code, I see the function "find" exists in cubical complex, image comlex, and induce mathc. Could you mind explain the difference of significance among these three one.

Induce match. It is very confused me,  how to impelement the this function in picture. I find the code and  pseduecode，the critical problem is the difference between ImagePersistence and CubicalPersistency these two class.

That's all, look forward to your answer.

Hello Grople,
I will try to answer your questions:

The UnionFind data-structure (see https://en.wikipedia.org/wiki/Disjoint-set_data_structure) is used to compute persistent homology in dimension 0. It is not referring to the union of the refined barcodes in the paper.

Unfortunately I don't know which "find" function you are referring to.

The induced matchings are computed by the method "match" of the class "InducedMatching".

Best,
Nico

thanks for your answer, please wait for several days to consider.

hello nstucki, there is confused in the paper ,  How do you determin whether are matched between two persistence barcode

Hi Grople,
I am not sure if I understand your question correctly. But if you are asking how to determine which cycles are matched, then the answer is basically described in the paper.
To circumscribe it briefly, you determine the induced matchings with respect to the inclusions into the comparison image by computing the image barcodes and then determine their composition.
Best,
Nico


Datavault for Content classification

Closing this issue as there is no detailed description. @raphaelvp @razakpm @sinjup please update or create proper ticket.


Add command for displaying all of the options OR was compiled with.

Description
It would be nice to have a way to know whether or not we're running with an exclusive feature such as Charts, which is not supported in CentOS 7.
Suggested Solution
OpenROAD v2.0-11454-g34687e2a9
Features included (+) or not (-):
-charts -eqy +GPU +GUI +Python  ...

Additional Context
No response

Based on @rovinski 's suggestion.

FYI, eqy is an external dependency of ORFS not compiled into OR

I can take this. We can parse the CMakeCache.txt file assuming it is compiled locally.
BUILD_PYTHON:BOOL=ON
BUILD_GUI:BOOL=ON
GPU:BOOL=OFF

But for Charts the target seem to be private and unparseable from the file. Any ideas?

I don't think parsing CMakeCache.txt is the right approach.   For example charts is defined in ENABLE_CHARTS and you can just write conditional code on that define (#ifdef ENABLE_CHARTS).  Likewise with the other options.

Couldn't this be done like the git describe thing and add a string to the version header file?

How will that string be generated?

@maliberty you could do something like yosys: https://github.com/YosysHQ/yosys/blob/91fbd58980e87ad5dc0a5d37c049ffaf5ab243dd/Makefile#L770
Have cmake build the string and write that into a file like it does with the version.h header.

The variables are already defined in CMake as 1 or 0, right? Why not simply something like
logger->report("Features included (+) or not (-):\n"
                "{}Charts {}GUI {}GPU {}Python",
                ENABLE_CHARTS ? '+' : '-',
                BUILD_GPU ? '+' : '-',
                BUILD_GUI ? '+' : '-',
                BUILD_PYTHON ? '+' : '-');

I would prefer if we don't rely on cmake generated files. It's not easy to replicate with bazel

What do you suggest?

Just the defines and a map of bool based on the defines?

@QuantamHD does #4730 work for you?  It seems to rely on defines in the c++ code.


feat(app): Add basic UI for swapping a pipette

overview
This PR adds enough UI to actually swap a pipette out!

Ticks off the "warn that removing a pipette will clear related calibration data" checkbox in #860
Addresses all of #863

...GIF to be inserted here when I get on a robot...
changelog

feat(app): Add basic UI for swapping a pipette

Includes using new pipette definitions in @opentrons/labware-definitions

review requests
Robot testing and standard code review
TODO in followup PR(s)

App does not yet disable plunger motor (last remaining checkbox in #860)
Screens have been updated while this work was in progress, so they haven't been implemented yet:

Updated modal styles
Updated error messages for failure to detach and attaching the wrong pipette
Back button saying "Exit" if clicking it will exit
This will probably be easiest if we tack on one more ticket for these items

Tried to test on the QA bot b/c others were taken -- server 3.0.0-beta.6. I'm not sure what pipette is on there, but it didn't detect it so I couldn't get through. Also app hit a 404 when it called home/ in response to cancelling/exiting the change pipette modal. Will test later on another bot.

@Kadee80 there's designs for that in Zeplin. Would definitely be helpful to put this in - otherwise users will have no way of knowing if they have to switch pipettes.

@mcous apologies as I'm still unable to review this. hoping to connect with Andy today.

Walked through this with @umbhau on Sunset bot and got the 👍 for merging. Will follow up on items in the TODO above for the rest of the day. @pantslakz if you're set up by tomorrow you should be able to test the more complete experience


[Authority] Track size of compiled module cache

New Prometheus collector outputting a gauge metric to track the number of modules in Move's SyncModuleCache.
Test Plan
Will take advice here on the best way to test a new gauge, apart from the usual:
$ cargo simtest
$ cargo nextest run

I did notice the existing AuthoriryMetric integration, but the reason I opted for this approach was that there isn't an easy to access place where the cache gets updated and I could set the count (the cache is updated on reads and that code lives in the Move repo).  By defining a custom Collector API, rather than pushing metric updates as they happen, Prometheus can pull the module cache size directly as it is gathering metrics which avoids a class of bug where the metric lags behind because it has not been set between the last time it changed and the next time Prometheus gathers data.

(P.S. I'd like to take credit for the idea, but it was @gdanezis' ;) )

noob q: when is ModuleCacheGauge.collect  called ?

It's called by the PrometheusRegistry before it's about to send the metrics off.


Initial version of Sphinx docs including top-level code

Closes #160

I think this is a good starting point. Sphinx is throwing some warnings based on existing docstrings that should be fixed, but didn't want to mess with "live" code at the moment.

The GitHub "Build Sphinx Documentation" job outputs warnings like:
WARNING: autodoc: failed to import module 'flow' from module 'brt'; the following exception was raised: No module named 'prefect'
This is probably because only the docs/requirements.txt is run and not the higher level requirements.txt which includes Prefect. Not sure if this affects the Sphinx doc or not.


[IOS] TextInput with emojis capitalizes text and causes other issues

[x] Review the documentation: https://facebook.github.io/react-native
[x] Search for existing issues: https://github.com/facebook/react-native/issues
[x] Use the latest React Native release: https://github.com/facebook/react-native/releases

Environment
Environment:
OS: macOS High Sierra 10.13.2
Node: 8.9.1
Yarn: 1.9.4
npm: 5.8.0
Watchman: 4.7.0
Xcode: Xcode 9.2 Build version 9C40b
Android Studio: 3.1 AI-173.4907809
Packages: (wanted => installed)
react: 16.5.0 => 16.5.0
react-native: 0.57.0 => 0.57.0
Description
On IOS, adding emojis to TextInput causes the following:

Text goes capital.
Auto correct suggestions don't work.
When adding newlines and emoji moves out of view, cursor gets scrolled to top of TextInput
Removing emojis fixes it.

Works in RN0.53.
Started breaking in RN0.54 and still breaks in RN0.57.
RN0.57 has a bug that breaks the RN build. To test on RN0.57, apply this manual fix when the build fails the first time: https://github.com/facebook/react-native/issues/21071#issuecomment-420648890
Reproducible Demo
See snack here:
https://snack.expo.io/@superandrew213/textinput-emoji-bug
Test on device and not on appetize/browser.

Related Issues
https://github.com/facebook/react-native/issues/19389, https://github.com/facebook/react-native/issues/20908, https://github.com/wix/react-native-autogrow-textinput/issues/47

@shergin could you have a look at this? I can see that you did the reimplementation of TextInput in RN0.54.

All emoji characters are automatically given an AppleColorEmoji NSFont attribute and the original font is moved to NSOriginalFont attribute.
This causes an issue when we call isEqualToAttributedString when we set the attributedText, since it will always be false if an emoji is present.
See here: https://stackoverflow.com/a/39456258
I guess we might need to add an exception for emojis here too and compare strings only and leave out attributes:
https://github.com/facebook/react-native/blob/master/Libraries/Text/TextInput/RCTBaseTextInputView.m#L110-L113
Or remove the attributes that are automatically added before we do the comparison.

This is my patch. @dchersey feel free to create a PR if you are keen.
Patch is based on RN56. In RN57 method textOf was added. You just need to modify a small part of it to account for emojis.
patch-package
--- a/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.m
+++ b/node_modules/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.m
@@ -98,10 +98,40 @@ - (NSAttributedString *)attributedText
   return self.backedTextInputView.attributedText;
 }

+- (BOOL)textOf:(NSAttributedString*)newText equals:(NSAttributedString*)oldText{
+  // When the dictation is running we can't update the attibuted text on the backed up text view
+  // because setting the attributed string will kill the dictation. This means that we can't impose
+  // the settings on a dictation.
+  // Similarly, when the user is in the middle of inputting some text in Japanese/Chinese, there will be styling on the
+  // text that we should disregard. See https://developer.apple.com/documentation/uikit/uitextinput/1614489-markedtextrange?language=objc
+  // for more info.
+  // Also if user has added an emoji, the sytem adds a font attribute for the emoji and stores the original font in NSOriginalFont.
+  // Lastly, when entering a password, etc., there will be additional styling on the field as the native text view
+  // handles showing the last character for a split second.
+  __block BOOL fontHasBeenUpdatedBySystem = false;
+  [oldText enumerateAttribute:@"NSOriginalFont" inRange:NSMakeRange(0, oldText.length) options:0 usingBlock:^(id value, NSRange range, BOOL *stop) {
+    if (value){
+      fontHasBeenUpdatedBySystem = true;
+    }
+  }];
+
+  BOOL shouldFallbackToBareTextComparison =
+  [self.backedTextInputView.textInputMode.primaryLanguage isEqualToString:@"dictation"] ||
+  self.backedTextInputView.markedTextRange ||
+  self.backedTextInputView.isSecureTextEntry ||
+  fontHasBeenUpdatedBySystem;
+
+  if (shouldFallbackToBareTextComparison) {
+    return ([newText.string isEqualToString:oldText.string]);
+  } else {
+    return ([newText isEqualToAttributedString:oldText]);
+  }
+}
+
 - (void)setAttributedText:(NSAttributedString *)attributedText
 {
   NSInteger eventLag = _nativeEventCount - _mostRecentEventCount;
-
+  BOOL textNeedsUpdate = NO;
   // Remove tag attribute to ensure correct attributed string comparison.
   NSMutableAttributedString *const backedTextInputViewTextCopy = [self.backedTextInputView.attributedText mutableCopy];
   NSMutableAttributedString *const attributedTextCopy = [attributedText mutableCopy];
@@ -112,7 +142,9 @@ - (void)setAttributedText:(NSAttributedString *)attributedText
   [attributedTextCopy removeAttribute:RCTTextAttributesTagAttributeName
                                 range:NSMakeRange(0, attributedTextCopy.length)];

-  if (eventLag == 0 && ![attributedTextCopy isEqualToAttributedString:backedTextInputViewTextCopy]) {
+  textNeedsUpdate = ([self textOf:attributedTextCopy equals:backedTextInputViewTextCopy] == NO);
+
+  if (eventLag == 0 && textNeedsUpdate) {
     UITextRange *selection = self.backedTextInputView.selectedTextRange;
     NSInteger oldTextLength = self.backedTextInputView.attributedText.string.length;

Thanks, I will test it out tomorrow morning!

@dchersey both. The issue is the same.

That did the trick! PR will follow shortly.


Poor behavior when offline

What version?
0.20.1
Which command?
No response
What happened?
If there is not an internet connection, proto bin and proto log tend to hang for a long time even when given a fully qualified version number.
Note, e.g., in the below trace that the step "Resolving a semantic version or alias" hangs for 30 seconds.
This hang does not happen if the environment variable is set: PROTO_OFFLINE=1.
Any logs?
proto run node 20.8.1 --log debug
zsh: correct 'node' to '.node' [nyae]? n
[DEBUG 00:14:21] proto  Running proto v0.20.1  args=["proto", "run", "node", "20.8.1", "--log", "debug"]
[DEBUG 00:14:21] proto_core::tool_loader:run  Traversing upwards to find a configured plugin  tool="node"
[DEBUG 00:14:21] proto_core::tool_loader:run  Loading WASM plugin  source="/Users/dan/.proto/plugins/node-latest-1d5d3a369958584575d92ceedb3fd9bf9c78658d9da7b154612ab81a85f91ed4.wasm"
[DEBUG 00:14:21] proto_core::tool:run  Creating tool node and instantiating plugin
[DEBUG 00:14:21] proto_core::tool_manifest:run:load  Loading manifest.json  file="/Users/dan/.proto/tools/node/manifest.json"
[DEBUG 00:14:21] proto_core::tool:run  Created tool node and its WASM runtime
[DEBUG 00:14:21] proto_core::version_detector:run  Using explicit version passed on the command line  tool="node" version=Version(Version { major: 20, minor: 8, patch: 1 })
[DEBUG 00:14:21] proto_core::tool:run  Resolving a semantic version or alias  tool="node" initial_version="20.8.1"
[DEBUG 00:14:51] proto_core::tool:run  Resolved to 20.8.1  tool="node" version="20.8.1"
[DEBUG 00:14:51] proto_core::tool:run  Checking if tool is installed  tool="node" install_dir="/Users/dan/.proto/tools/node/20.8.1"
[DEBUG 00:14:51] proto_core::tool:run  Tool has already been installed, locating binaries and shims  tool="node" install_dir="/Users/dan/.proto/tools/node/20.8.1"
[DEBUG 00:14:51] proto_core::tool:run  Locating binaries for tool  tool="node"
[DEBUG 00:14:51] proto_core::tool:run  Found a binary  tool="node" bin_path="/Users/dan/.proto/tools/node/20.8.1/bin/node"
[DEBUG 00:14:51] proto::commands::run:run  Running Node.js  bin="/Users/dan/.proto/tools/node/20.8.1/bin/node" args=[]

Operating system?
MacOS
Architecture?
Arm64

Hrmm, I'd expect that step to actually fail if there's no internet.
Although a version is provided, we verify that it's an actual version against the upstream manifest. We can probably do some short-circuiting here.

Yeah - somewhat surprising behavior. Since there is a file in $PROTO_HOME/tools/<tool>/remote-versions.json, I was expecting it to not even use the network.

Yeah it should be reading the cache. Maybe it's another call.
I'll test in a bit.

I looked into this, and it should definitely short-circuit here: https://github.com/moonrepo/proto/blob/master/crates/core/src/tool.rs#L473
I'm still lost as to why it hung for 30 seconds.
My only guess is that the offline check itself is hanging, but it has a timeout of 1 second. https://github.com/moonrepo/proto/blob/master/crates/core/src/helpers.rs#L58

Super! This now takes a much more reasonable 3 seconds to time out. It still seems like there's a little hang resolving the node plugin.
[DEBUG 20:55:23] proto_core::tool_loader:run  Traversing upwards to find a configured plugin  tool="node"
[DEBUG 20:55:26] proto_core::tool_loader:run  Loading WASM plugin  source="/Users/dan/.proto/plugins/node-latest-ff94e8d900e7fb819a4097ebb376a065f1ed37f331de55f97ce82adb449b6c35.wasm"

If you do --log trace, does it better show which line is actually taking the longest?

Oops! Here's the good stuff:
proto run node 20.8.1 --log trace
[DEBUG 2023-10-22 21:21:12] proto  Running proto v0.20.2  args=["proto", "run", "node", "20.8.1", "--log", "trace"]
[TRACE 21:21:12] starbase::app  Running startup phase with 1 systems
[TRACE 21:21:12] starbase::app  Running analyze phase with 1 systems
[TRACE 21:21:12] starbase::app  Running execute phase with 2 systems
[DEBUG 21:21:12] proto_core::tool_loader:run  Traversing upwards to find a configured plugin  tool="node"
[TRACE 21:21:12] warpgate::loader:run  Creating plugin loader  cache_dir="/Users/dan/.proto/plugins"
[TRACE 21:21:12] proto_core::helpers:run:is_offline  Checking for an internet connection
[TRACE 21:21:12] proto_core::helpers:run:is_offline  Resolving <IP_ADDRESS>:53
[TRACE 21:21:12] proto_core::helpers:run:is_offline  Resolving <IP_ADDRESS>:53
[TRACE 21:21:12] proto_core::helpers:run:is_offline  Resolving <IP_ADDRESS>:53
[TRACE 21:21:12] proto_core::helpers:run:is_offline  Resolving <IP_ADDRESS>:53
[TRACE 21:21:15] proto_core::helpers:run:is_offline  Offline!!!

ok that explains the 3 second delay. let me parallelize these calls.

https://github.com/moonrepo/proto/pull/250

Awesome! Now things are nice and snappy!


Add error and warning messages to dropzone panel

Dropzone panel was replaced by a rather simple upload form.


Cannot support DDP backend

Thanks for your great codes.
Environment info

Python version: 3.8
PyTorch version (GPU?): 1.6.0 Tesla V100
Using GPU in script?: Yes
Version : 0.3.0

Information
I am using Conformer with transducer ...):
Hope for supporting the ddp backend, which is much efficient than do.

@hasangchun We'll take a look over the weekend.

Can you add the pytorch-lighting ddp function? It won't be hard. @hasangchun

Thanks!
The issue for me is that supporting ddp for various data samplers is not quite easy for me.
Directly changing hyperparameter for pytorch-lighting is direct but requires modifications on the data samplers.
How to support smartbatch/bucket sampler in a ddp mode?
I am not familiar with the distributed samplers thus seek for helps :) .

Any updates in this topic? I might try to take a look tomorrow otherwise

Sorry, I was busy 😭


ARROW-2238: [C++] Detect and use clcache in cmake configuration

Example AppVeyor build at https://ci.appveyor.com/project/pitrou/arrow/build/1.0.155

The failure at https://ci.appveyor.com/project/pitrou/arrow/build/1.0.155/job/q31movster4v84d9 shows this can lead to inconsistencies or errors: cmake first tries to detect the compller from user-supplied information (generator, environment variables), then the clcache setting overrides that detection.
Either we add logic to try and avoid such errors, or we simply let people override CC/CXX if they want to use clcache (statu quo).

Also I'm not sure whether we have a Windows developer on board; I'm merely launching a VM from time to time but otherwise work on Ubuntu :-)

@MaxRis can take a look. How does the error you linked to arise?

I think that's because CMAKE_CXX_COMPILER forcefully overrides the compiler command. When using the Visual Studio generators, you traditionally don't need to run vcvarsall.bat (presumably because cmake would hardcode the full compiler path), but then clcache fails finding the compiler.
So it's possible that calling vcvarsall.bat is all that's needed here. But that would also change the workflow may be accustomed to.

@pitrou I will check, thanks

@pitrou it seems that we already try to use ccache there if it's presented. I'm wondering if it will make more sense to refactor referenced lines and optionally use clcache for MSVC?
Also, probably, usage of RULE_LAUNCH_COMPILE and RULE_LAUNCH_LINK should solve issue with selected compiler overwrite.
And it seems that starting from Cmake 3.4.0 CXX_COMPILER_LAUNCHER variable is available, but we stick to CMake of min ver 3.2

Also, probably, usage of RULE_LAUNCH_COMPILE and RULE_LAUNCH_LINK should solve issue with selected compiler overwrite.

Last I tried it seemed it didn't work. I might give it a try again...

I will try on my end as well

@pitrou, do you have an idea how to verify that clcache.exe was really used during compilation? I've tried with it and without, but I can't find any difference in output/produced results.

@MaxRis running clcache -s gives you aggregate statistics for the cache, so you can see (by the number of hits and misses) if clcache was used at all.

@pitrou thanks!

update: it seems that current solution set(CMAKE_CXX_COMPILER ${CLCACHE_FOUND}) works only with NMake Makefiles generator, but clcache doesn't get called if Visual Studio 14 2015 Win64 or similar is used.

clcache works best with Ninja or NMake (*). My suggestion here would be to recommend Ninja + clcache for best build performance. The other concern, though, is to avoid breaking existing builds for those who prefer other generators (e.g. Visual Studio).
(*) See the following links:

https://github.com/frerich/clcache/issues/273#issuecomment-354623452
https://github.com/frerich/clcache/wiki/Integration#integration-for-visual-studio

@pitrou it should be fine to set set(CMAKE_CXX_COMPILER ${CLCACHE_FOUND}) only if Generator defined as Ninja or NMake Makefiles. This possibly also will resolve current Appveyor failure. What do you think?

@MaxRis that sounds ok to me.

@pitrou I will check if that resolves Appveyor build failure and let you know, thanks

@pitrou here it's changes to solve Jenkins failure as discussed
Passed Appveyor build

@MaxRis thanks! I'll integrate it in my PR.

Actually, it doesn't look right. Here you see that the cache wasn't looked up at all:
https://ci.appveyor.com/project/MaxRisuhin/arrow/build/1.0.253/job/puv48c73yknmel34#L3175

@pitrou sorry, haven't checked in such manner. I have checked only that clcache was applied as compiler replacement with additional output https://ci.appveyor.com/project/MaxRisuhin/arrow/build/1.0.253/job/e8v49o78ku8cltur#L418 ... and also have seen that with NMake Makefiles generator clcache is used in local builds. Will try to figure out why it doesn't work in Appveyor env.

Hey @pitrou , could you please check logs of last passed build ( https://ci.appveyor.com/project/ApacheSoftwareFoundation/arrow/build/1.0.5601 ). For some reasons clcache statistics shows that it was used, by my opinion, fine. Could you please verify? Thanks

@MaxRis, yes, it looks fine... And the build times are ok too (without cache, the total duration would probably be much more than 45 minutes).

Great! Should be fine to go with these changes, thanks!

@MaxRis @pitrou This also looks fine from my side but as you both are more qualified on that matter: Is this ready to be merged?

@xhochy, yes, it's ready for merging.


Added name to contributors

@lilleyse Added my name here!

Your local master is very behind, make sure to update it first and then add your name to the list to avoid the merge conflict. Also it is best to work off a branch. I'm going to close this because it will be easier to just open a new PR.


Using audio/wav is throwing an error

You already using the extendable-media-recorder library as a dependency, which adds the support of using "audio/wav" for audio recording.
but this line of code is throwing an error when I set the { mimeType: "audio/wav"}
if (!MediaRecorder.isTypeSupported(mediaRecorderOptions.mimeType)) {
  console.error(
    `The specified MIME type you supplied for MediaRecorder doesn't support this browser`,
  );
}

because "audio/wav" is not natively a supported format by the browser
Please consider fixing this
I would suggest something like:
if (!MediaRecorder.isTypeSupported(mediaRecorderOptions.mimeType) && mediaRecorderOptions.mimeType.toLowerCase() !== "audio/wav") {
  console.error(
    `The specified MIME type you supplied for MediaRecorder doesn't support this browser`,
  );
}

We get the same error

We get the same error

Facing this issue as well

Please consider the solution of this issue


Allow ThemeData to merge the result of ThemeData.from() with the previous ThemeData.

Description
It is currently a lot of trouble when you use ThemeData.from() in the middle of an app. It generates a theme with colors, but ignore the rest of the theme. For example, if you have a card with custom elevation and shape, ThemeData.from() will ignore it and only set-up the color. You then need to call copyWith to re-theme the theme. This becomes more and more boilerplate as your code grows bigger and the app gets deeper.
For additional info, read https://github.com/flutter/flutter/issues/43823.

If you then modify the Slider theme in main(), you need to come back and also add it there.
I am open to discussions. We could:

Add this to the inside of ThemeData.from(). More performant, since you don't need to create some themes and discard them in sequence. But will make ThemeData.from() bigger and less readable.
Add this as an extension, it could become baseTheme.fromColors() or something like that.
We could also change the name from mergeThemes to something else, like applyTheme or addColorsTo.

Related Issues
https://github.com/flutter/flutter/issues/43823
Tests
I added the following test:
"ThemeData.mergeThemes merges correctly"
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I signed the [CLA].
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require Flutter developers to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (Please read [Handling breaking changes]). Replace this with a link to the e-mail where you asked for input on this proposed change.
[x] No, this is not a breaking change.

This seems to discard the colors provided with themedata.from, which is wrong.
for example if your previous theme was light and your new colorscheme theme is dark, using the previous cardTheme for example might result in the wrong card color.
I think we need a copywith that receive a colorScheme and maybe a texttheme but only override the current color of the components theme (card, slider, ect) but not the custom shapes.

There are some good ideas here, and this PR highlights some unresolved problems. It hasn't been reviewed or really acted on because, as you pointed out, there are many open questions about what it merging a new theme with an existing one should mean, and about exactly what use cases a merge operation would serve. We're in the middle of a significant evolution of the theme system, see https://flutter.dev/go/material-theme-system-updates. I think that before developing a PR, it would be best to resolve the open questions. If there's general agreement about exactly what a merge operation should do, and the use cases that a merge operation would address, then it would make sense for a PR to follow.
So, I'm going this PR. If you're still interested, please open new issue or update #43823.


Add command for filtering task quick open entries

Currently when you run command workbench.action.tasks.runTask without providing a task name it displays the task quick open menu. Would it be possible to add a command that displays the task quick open with a filtered list of tasks eg only show tasks from one task provider.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_smiling_face: This feature request received a sufficient number of community upvotes and we moved it to our backlog. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


[API Management] Missing "202 Accepted" for Delete operation

In the current stable version of the API Management Service, when doing a DELETE on an existing API Management Service, an HTTP 202 Accepted is returned. However, 202 is not defined as a valid HTTP return code for this service.
Spec in question: https://github.com/Azure/azure-rest-api-specs/blob/7cfc460c5b4f17a896510314e12432f9fdc2eecd/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json#L361-L395 (missing 202)

Delete on 2018-01-01 was sync operation, hence 202 is not valid response. Starting 2019-01-01 api version, Delete on service is async and had been added to the spec


i18n(zh-cn): Update typescript.mdx

Description (required)
Update typescript.mdx
Related issues & labels (optional)

#9011
Suggested label: i18n

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

zh-cn
guides/typescript.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Auto-complete feature not working (CSS)

Whenever I hit tab to autocomplete in CSS, it completes to something that is completely wrong and sometimes not even shown in the drop-down menu.

Hi!
I have the same problem and it really bothers me, as I get completely out of any flow because of this.
Yes, I can confirm, that the autocompleted word is not showing up in the drop-down...
If I disable keybindings, tab works fine in css, but then it does not work properly in html.... (especially with abbreviations like "div.something")
Would be great if there is a solution to this or gets fixed, if it is a bug?


Unresolveable build extension: maven-protoc-plugin:0.4.0

The pom.xml is referring to a URL that doesn't exist: http://sergei-ivanov.github.com/maven-protoc-plugin/repo/releases
I'll try to hunt around for it.
Full error here:

The project io.mesosphere.mesos.frameworks.cassandra:cassandra-mesos-model:0.2.1-SNAPSHOT (/home/vagrant/cassandra-on-mesos/cassandra-mesos/cassandra-mesos-model/pom.xml) has 1 error
[ERROR]     Unresolveable build extension: Plugin com.google.protobuf.tools:maven-protoc-plugin:0.4.0 or one of its dependencies could not be resolved: Failure to find com.google.protobuf.tools:maven-protoc-plugin:jar:0.4.0 in http://sergei-ivanov.github.com/maven-protoc-plugin/repo/releases/ was cached in the local repository, resolution will not be reattempted until the update interval of protoc-plugin has elapsed or updates are forced -> [Help 2]

+1

This repository is deprecated.  Please use the latest supported framework here:  https://github.com/mesosphere/dcos-cassandra-service.


(do not merge) - refactor: suggestion for typing DiceTerms

This solves the issue that the MODIFIERS are not typed tightly on the subclasses, but it also allows users to create subclasses with incorrectly typed MODIFIERS:
class CustomDiceTerm extends DiceTerm {
  foo = 0;
}

class AnotherCustomDiceTerm extends DiceTerm {
  static MODIFIERS = {
    mod: (this: CustomDiceTerm, modifier: string) => { const bar = foo; } // Runtime error because this will receive a AnotherCustomDiceTerm as this parameter at runtime, not a CustomDiceTerm!
  }
}

@am-a as explained, I don't think this is a workable solution. Can I just close this?

Going to close this for now. If there is still interest in this, feel free to reopen.


Xamarin Hot Restart doesn't appear in my options

Hello,
Recently I have decided to create a mobile application, but I have a problem, I can't use Xamarin Hot Restart because in my option that doesn't appear.

I check the version of my Visual Studio 2019 and it's the good one to get the Xamarin Hot Restart.

If you have some solution about my problem, thank you so much.
Best regards,
Wuzziie

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

ID: 8f3eb808-8e6d-4e07-fc75-8d79a7249265
Version Independent ID: dbb2b9a9-87a6-e473-50e6-f88435d49e88
Content: Xamarin Hot Restart - Xamarin
Content Source: docs/xamarin-forms/deploy-test/hot-restart.md
Product: xamarin
Technology: xamarin-forms
GitHub Login: @maddyleger1
Microsoft Alias: maleger

Microsoft support for Xamarin will end on May 1, 2024 for all Xamarin SDKs including Xamarin.Forms. In preparation for this, all issues and PRs in this repository are being closed.
.NET MAUI is the replacement for Xamarin.Forms, and it's documentation can be found here.


Uploads keep crashing

I'm using this to sync files from my local server to s3 compatible storage, however I keep getting crashes without any errors.
I'm running it on node 21 in a docker container, just super small node script which runs the sync every hour from a local folder to the cloud storage, below is the entire script.
I added some limits to my bucket size that was below the current storage, and when trying to upload I successfully got that error logged saying there was not enough storage. But most of the time its crashing every 15 mins or so. It was crashing every 5 mins before I added the partial size 100mb line, so that has helped, but still crashing very regurally.
Is there any way I can enable more logging so when it crashes I at least get error logs to see whats happening? I have transferred just over 100Gb to the bucket, but only 70Gb of files have been saved, so the regular crashing is leaving a lot of multi-part files half-done
import { S3Client } from '@aws-sdk/client-s3';
import { S3SyncClient, TransferMonitor } from 's3-sync-client';
import cron from 'node-cron';

const s3Client = new S3Client({
    endpoint: `xxx`,
    region: "xxx",
    credentials: {
      accessKeyId: "xxx",
      secretAccessKey: "xxx",
    },
});

const { sync } = new S3SyncClient({ client: s3Client });
const monitor = new TransferMonitor();

let running = false;
backup();

cron.schedule('0 * * * *', () => {
    backup();
});

async function backup(){
    if(running) return;
    running = true;
    const timeout = setInterval(() => console.log(monitor.getStatus()), 2000);
    await sync("/backup", "s3://xxx", {
        monitor,
        del: true,
        partSize: 100 * 1024 * 1024,
    });
    console.log(monitor.getStatus())
    clearInterval(timeout);
    running = false;
}

I found in my router logs that the internet had kept dropping out. I suspect my ISP kept dropping the internet and re-connecting it straight away because I was maxing my upload or something? and when that happens the script dosen't cope and crashes. Not sure if theres much that can be done about that. But would still be nice to get an error message, like when the API returns one so its easier to see whats happening

Hello,
What happens it crashes? If you notice it crashes, I assume you get some kind of generic error at least. What is this error?


[Feature][Dashboard] Robot removal

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
Pull requests issued by automated robots do not indicate real development activity and distort the metrics. Therefore they should be removed. CNCF/devstats uses pattern-matching to detect bots. We can shamelessly snatch their pattern-list (see here) and use it in something like:
select *
from pull_requests
where select *
from pull_requests
where --  not the full list but covers 99+% of the cases
    author_name not rlike  '^robot-|-robot$|\\[bot\\]|-bot$|-ci$|-testing$'

If performance becomes an issue, then a table of robot IDs can be prepared beforehand and then joined with the target table.
Use case
How many PRs are attributable to bots? Apply the filter above to get some results.

For clickhouse, bot activity is rampant:

created_year
PRs
bots contribution

2020
7161
36.7%

2021
11015
53.3%

2022
4019
19.4%

Overall (oss.demo, 346 repos), not so much, but still significant, and rising:

created_year
PRs
bots contribution

2020
218558
4.0%

2021
215863
6.2%

2022
116016
7.7%

Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Cool. I think we can start by adding this info to the docs of the metrics affected by bot users, e.g. PR coding time, to teach users to filter out bot users by customizing SQL in the built-in dashboards.

Great!

I've added the logic to some PR metric docs. We can add it to the pre-built dashboards if more users want it in the future


Allow updating a manifest with a different number of installer URLs

Description of the new feature / enhancement
Hello. I'm trying to update a package (PolyMC.PolyMC) that has stopped distributing 64-bit exes and I can't update the manifest because of this error:

Updating a manifest is only supported with the same number of installer URLs.

This error should be a warning instead, prompting the user if they want to continue anyways.
Proposed technical implementation details
No response

@FayneAldan - Just an FYI; PolyMC actually has a bot that submits their releases automatically https://github.com/microsoft/winget-pkgs/pull/67332

Yes, I am aware. I tried to update the package manually after Winget Releaser picked the wrong installers, but Winget Create wouldn't let me do it.

Hey @FayneAldan,
We actually do support your scenario. The reason why it didn't work is because the manifest of the latest version of PolyMC (v1.4) only has one installer URL which has already been checked in. We always use the latest version for the update. If that manifest wasn't checked in, you could have done something like this:
wingetcreate update PolyMC.PolyMC --urls "https://github.com/PolyMC/PolyMC/releases/download/1.3.0/PolyMC-Windows-x86_64-Setup-1.3.0.exe" "https://github.com/PolyMC/PolyMC/releases/download/1.3.0/PolyMC-Windows-i686-Setup-1.3.0.exe"
Winget-Create already has logic to help match the installers with the correct architecture but if you find that it didn't match it correctly, you can also override the detected architecture:
wingetcreate update PolyMC.PolyMC --urls "https://github.com/PolyMC/PolyMC/releases/download/1.3.0/PolyMC-Windows-x86_64-Setup-1.3.0.exe|x64" "https://github.com/PolyMC/PolyMC/releases/download/1.3.0/PolyMC-Windows-i686-Setup-1.3.0.exe|x86"
Just fyi, in case you ever try this again in the future :)

Well, I'm also getting this error but with manifests that have two entries for the SAME installer/architecture, due to scope user and scope machine. Latest version of winget-create errors out when trying to update manifest with these entries (only the installer entries shown here):
Installers:
- Architecture: x86
  Scope: user
  InstallerUrl: https://github.com/kiwix/kiwix-js-windows/releases/download/v2.0.9/Kiwix-JS-Electron-Setup-2.0.9-E.exe
  InstallerSha256: AFE82A7B77ADFD259B336BB0DFE85D88098CDB43DCC6C307E35D1922233EA8E7
  InstallerSwitches:
    Custom: /CURRENTUSER
- Architecture: x86
  Scope: machine
  InstallerUrl: https://github.com/kiwix/kiwix-js-windows/releases/download/v2.0.9/Kiwix-JS-Electron-Setup-2.0.9-E.exe
  InstallerSha256: AFE82A7B77ADFD259B336BB0DFE85D88098CDB43DCC6C307E35D1922233EA8E7
  InstallerSwitches:
    Custom: /ALLUSERS

This used to work, so it's a recent issue.

NB, same error with two scopes and one installer is mentioned back in 2021 here: https://github.com/microsoft/winget-pkgs/issues/500#issuecomment-932892281. The version of winget-create I was using was even older, I think, and I only recently updated to the latest version, hitting this error each time I try to update that and similar manifests for my app. I've been having to calculate the SHAs using PowerShel and update manifests manually, though I'll give https://github.com/vedantmgoyal2009/winget-releaser a go.

@Jaifroid, thanks for bringing this to my attention. Looks like this is a bug that I will need to fix to address the scenario where the same installerURL is being used for multiple architectures. Will work on a fix for this...

@ryfu-mfst Thanks for picking this up. Just to note, that in my case it's not different architectures that are causing the winget-create issue, it is different installer scopes: Scope: user and Scope: machine. The architecture is the same in both cases (x86).
@Jaifroidhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FJaifroid&data=05|01|egk10%40universityofcambridgecloud.onmicrosoft.com|1e1b43557aea42dcd16808da75725491|49a50445bdfa4b79ade3547b4f3986e9|0|0|637951431141063730|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=ic4FNGWk5TRgUSykpu3tjR%2BuPn%2BWKzsnc35vYSD3dXw%3D&reserved=0, thanks for bringing this to my attention. Looks like this is a bug that I will need to fix to address the scenario where the same installerURL is being used for multiple architectures. Will work on a fix for this...

Well, I'm also getting this error but with manifests that have two entries for the SAME installer/architecture, due to scope user and scope machine. Latest version of winget-create errors out when trying to update manifest with these entries (only the installer entries from the manifest are shown here):
Installers:
- Architecture: x86
  Scope: user
  InstallerUrl: https://github.com/kiwix/kiwix-js-windows/releases/download/v2.0.9/Kiwix-JS-Electron-Setup-2.0.9-E.exe
  InstallerSha256: AFE82A7B77ADFD259B336BB0DFE85D88098CDB43DCC6C307E35D1922233EA8E7
  InstallerSwitches:
    Custom: /CURRENTUSER
- Architecture: x86
  Scope: machine
  InstallerUrl: https://github.com/kiwix/kiwix-js-windows/releases/download/v2.0.9/Kiwix-JS-Electron-Setup-2.0.9-E.exe
  InstallerSha256: AFE82A7B77ADFD259B336BB0DFE85D88098CDB43DCC6C307E35D1922233EA8E7
  InstallerSwitches:
    Custom: /ALLUSERS

This used to work, so it's a recent issue.

Same issue here. Workaround that maybe can work is to pass the --interactive flag to wingetcreate update <PackageName>.

Related to https://github.com/microsoft/winget-create/issues/166 IMO

The thing is, this used to work before September 2021, then an update broke it. Whichever dev is working on wingetcreate, I think this needs to be a priority. One of the main reasons to use wingetcreate is in automated build and publishing, but it's currently causing me to have to intervene manually (in a laborious way) each time I prepare a new release. I'm about to give up and just write an automated powershell script to grab the SHA and forcibly update the mainfest values, but this won't do any of the testing and validation that is a great benefit of wingetcreate.

Is there any update on allowing wingetcreate to update manifests that have the same package listed for different scopes (per user and per machine)? It's currently unusable, as it errors out, saying that a manifest shouldn't have the same package listed twice. This is clearly a bug, because we don't need different packages for different scopes. Usually it's just a quesiton of changing an installer flag on the commandline. This used to work in wingetcreate, before September 2021. It should be an easy fix.

I'm having the same problem trying to update the package "TheDocumentFoundation.LibreOffice.HelpPack" to a new version and adding installers for other locales.

Having the same problem reported above by @Jaifroid  updating the package Jsoftware.J.9.4 with 2 installer entries (both the same .exe) for machine & user scopes. Using the tool interactively works OK but isn't a solution for CI.
Any idea on the likely timeframe for this to be fixed?

cc @denelon Resolved in WinGet-Create <IP_ADDRESS>

@mdanish-kh @denelon Thanks for the update and the advice to use overrides. I've now tested this, and although the overrides work, I do not consider this issue to be fully fixed for my use case. Wingetcreate, with overrides for per user and per machine on the same bundle or executable, downloads the exact same archive twice.
Since I am frequently (at least twice a month) validating and submitting manifests for executables of 1GB and 1.6GB, this is very unfortunate, and definitely not necessary. Wingetcreate should check the URL, and not process identical URLs twice, as it has already worked out the hash.
The commandline I'm useing is:
wingetcreate.exe update <AppID> -v 2.5.0-E -u "<URL>|x86|machine" "<URL>|x86|user" -s -t *********
The <URL> here is identical. I am simply tying to get wingetcreate to update a manifest that has two scopes for one bundle. This used to work fantastically in an earlier version of wingetcreate.
If you think it's best to open a new issue, I'll be happy to do so.

@Jaifroid I can definitely see how that's annoying. The request is being tracked here

#312

I don't think the issue is really resolved. It's still impossible to add or remove an installer option using wingetcreate update.

@stevapple The original issue was more related to the fact that the PR creation failed even when matching the number of URLs in the previous manifest
Your request is being partially tracked in https://github.com/microsoft/winget-create/issues/351 (request for an option like --add to add additional installers). There isn't one for remove since that doesn't seem to be popular use case. You can create an issue for that explaining your use case for the command

@mdanish-kh Thanks for pointing out! Maybe this issue can have a new title to more accurately reflect the status quo?


The interpolation method for BYOL augmentation is wrong

Under Transformer-SSL/data/build.py, inside the "build_transform" function, under "byol" augmentation type, the interpolation method used in RandomResizedCrop is the default which is BILINEAR, however in the BYOL paper the author used BICUBIC

Yeah I saw this as well


update poros README.md

PR types(PR类型)
Doc
Description
update poros README.md

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.tianshaoqing seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Fix incorrect closing bracket on reputation basics page

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hello @brandonmwest,Thanks again for the PR! We want to show our appreciation by sending                                              you some swag. Could you please fill out                                              this form so we can send it to you? Thanks!                                             Team SendGrid DX