The different ctags used in ctags-companion

Sorry to bother you... again :)
I noticed that the new version 2023.8.1 , it had updated the readtags command to Universal Ctags .
These command is not compatible with Exuberant Ctags's readtags .
I know the Universal Ctags is newer and better than the old Exuberant Ctags.
But Exuberant Ctags may be the default one in Ubuntu, although we can apt install universal-ctags, it's version is 0.0.0, that is too old (I find the readtags is still Exuberant Ctags, and no idea of why).
So, I re-install 2023.3.0 for the readtags can work normal in my system.
Is there any method to make readtags command to be both compatible with Exuberant Ctags and Universal Ctags ?

Apologies for the inconvenience.
So is installing Universal Ctags not even an option for you?

I had installed universal-ctags :
$ apt search ctags
Sorting... Done
Full Text Search... Done
exuberant-ctags/focal,now 1:5.9~svn20110310-12 amd64 [installed]
  build tag file indexes of source code definitions

geany-plugin-ctags/focal 1.36+dfsg-1 amd64
  ctags plugin for Geany

hasktags/focal 0.71.2-1build3 amd64
  Producer of ctags "tags" and etags "TAGS" files for Haskell programs

hothasktags/focal 0.3.8-3build3 amd64
  Haskell ctags generator

libparse-exuberantctags-perl/focal 1.02-1build6 amd64
  exuberant ctags parser for Perl

universal-ctags/focal,now 0+git20181215-2 amd64 [installed]
  build tag file indexes of source code definitions

But readtags cannot work with those options, such as:
$ readtags --extension-fields --line-number --prefix-match --icase-match
readtags: unknown option: -

It seems readtags still is exuberant-ctags.
Is any wrong here ?

So looks like apt install universal-ctags installs readtags with the following options:
    -d           Turn on debugging output.
    -e           Include extension fields in output.
    -h           Print this help message.
    -i           Perform case-insensitive matching.
    -l           List all tags.
    -n           Allow print line numbers if -e option is given.
    -p           Perform partial matching.
    -Q EXP       Filter the result with EXP.
    -s[0|1|2]    Override sort detection of tag file.
    -t file      Use specified tag file (default: "tags").
    -            Treat arguments after this as NAME even if they start with -.

While on my machine I have this available:
    -d | --debug
        Turn on debugging output.
    -E | --escape-output
        Escape characters like tabs in output as described in tags(5).
    -e | --extension-fields
        Include extension fields in output.
    -i | --icase-match
        Perform case-insensitive matching in the NAME action.
    -n | --line-number
        Also include the line number field when -e option is given.
    -p | --prefix-match
        Perform prefix matching in the NAME action.
    -t TAGFILE | --tag-file TAGFILE
        Use specified tag file (default: "tags").
        "-" indicates taking tag file data from standard input.
    -s[0|1|2] | --override-sort-detection METHOD
        Override sort detection of tag file.
        METHOD: unsorted|sorted|foldcase
    -C | --canonicalize-input
        Reduct '..' and '.' in input fields.
    -A | --absolute-input
        Do the same as -C but use absolute path form
    -F EXP | --formatter EXP
        Format the tags listed by ACTION with EXP when printing.
    -Q EXP | --filter EXP
        Filter the tags listed by ACTION with EXP before printing.
    -S EXP | --sorter EXP
        Sort the tags listed by ACTION with EXP before printing.

Can you add the following settings to your vscode config and see if it works?
    "ctags-companion.readtagsGoToDefinitionCommand": "readtags -en",
    "ctags-companion.readtagsGoToSymbolInWorkspaceCommand": "readtags -enip"

P.S. It may also be possible to install Universal Ctags using Ubuntu snap. Perhaps it would install the latest version. But I currently do not have an Ubuntu desktop to try it out.

Yes, after I install Universal Ctags with sudo apt install universal-ctags, the readtags results still is:
    -d           Turn on debugging output.
    -e           Include extension fields in output.
    -h           Print this help message.
    -i           Perform case-insensitive matching.
    -l           List all tags.
    -n           Allow print line numbers if -e option is given.
    -p           Perform partial matching.
    -Q EXP       Filter the result with EXP.
    -s[0|1|2]    Override sort detection of tag file.
    -t file      Use specified tag file (default: "tags").
    -            Treat arguments after this as NAME even if they start with -.

It looks like readtags is not be changed.
And, I try with:
    "ctags-companion.readtagsGoToDefinitionCommand": "readtags -en",
    "ctags-companion.readtagsGoToSymbolInWorkspaceCommand": "readtags -enip"

That can work well with 2023.8.1 !   Thank you very much!
I think, that is changed command to Exuberant Ctags for ctags-companion, isn't it?
On the other hand, could ctags-companion check the ctags is Universal Ctags or  Exuberant Ctags, and use different commands ?
In fact, in our work environment, administrator forbidden cpptool on computer. Because cpptool will consume a lot of resources.
So, I suggested colleagues to use ctags-companion. And recently, colleagues often ask me "Why suddenly TAG cannot work?"😂
I think, if possible, simple and smooth upgrades are more suitable for users. (I'm not familiar with VSCode plugins so this is just my opinion.☺)
Thanks again~

could ctags-companion check the ctags is Universal Ctags or Exuberant Ctags, and use different commands ?

I think I will change the default settings to readtags -en + readtags -enip which seems to be compatible with both versions. So I will keep this issue open for now.

In fact, in our work environment, administrator forbidden cpptool on computer. Because cpptool will consume a lot of resources.
So, I suggested colleagues to use ctags-companion. And recently, colleagues often ask me "Why suddenly TAG cannot work?"😂
I think, if possible, simple and smooth upgrades are more suitable for users. (I'm not familiar with VSCode plugins so this is just my opinion.☺)

Yes, sorry for the disruption. I did not realize there might be compatibility issues.
In terms of resources, the latest version of Ctags Companion is more efficient, because before it used pure javascript in-memory index and now it uses the readtags utility which should be much more lightweight.
Thank you for feedback! 🙇


Report DelayedJob errors to Airbrake

Pretty sure a bunch of errors have been hidden as delayed job isn't wrapped by an airbrake handler by default

Coverage remained the same at 80.63% when pulling f489d5d5c2b7ac89d1c1dec78cbaaf6a096ce40c on feature-report-job-errors-to-airbrake into 8c8b1e044d6b2f9d2aecf55499830252eb42a0d7 on master.


Subscriptions management: add subscriptions section to Collective page

Once the components are built and the GraphQL v2 queries/mutations are ready, we'll need to add the new section to the Collective page.

Some things to keep in mind:

for a user Collective page, only the user can edit the subs; for an org or a Collective, all the admins are able to edit the subscription
there will be a few filters as pictured above: all subscriptions, cancelled subscriptions, yearly subscriptions, monthly subscriptions

Added to Collective page for Orgs, Collectives, and Users.
Feature is merged and waiting release, currently behind a feature flag.
Once it looks fine we'll remove the feature flag.

Feature flag removed 🎉


The prose for Clients.matchAll() distinguishes an omitted dictionary type argument

According to the WebIDL spec, an optional argument with a dictionary type should always be considered to have a default value:

If the type of an argument is a dictionary type or a union type that has a dictionary type as one of its flattened member types, and that dictionary type and its ancestors have no required members, and the argument is either the final argument or is followed only by optional arguments, then the argument MUST be specified as optional. Such arguments are always considered to have a default value of an empty dictionary, unless otherwise specified.

Section 4.3.2 step 1.2 of Clients.matchAll() currently specifies a different behavior for when the argument is omitted, which probably needs to be changed accordingly:

If the optional argument options is omitted, then:

Implementor's feedback:  In Gecko, our binding machinery doesn't even expose whether the dictionary type argument was passed in or not.  I'm going to implement as if the step 1.2 of section 4.3.2 and everything under it was deleted.

Thanks!


Data update 3.3.1

No source in GIF currently, but I found this source with 2020 data: https://diseases.canada.ca/notifiable/charts?c=yl'

Related to #66
The only problem with that source is that i don't think it reports exactly what the indicator tracks, which is "Number of new HIV infections per 1,000 uninfected population"

Oh ok! I'll pay closer attention because some of the indicators are per 1,000 or per 100,000 population.

It's an easy conversion if we find a source that reports on infections per 100,000 uninfected! But it needs to be "new" infections, not just the incidence rate (which I think are different things)

done in https://github.com/sdg-data-canada-odd-donnees/sdg-data-donnees-odd/commit/5f59b81c0ca815d48c459c75b9503d32654ccb19


Many warning coming from gobgp

There are many warning in CI coming from gobgp, like the following:
time="2024-11-05T12:41:36.527316016Z" level=warning msg="No matching path for withdraw found, may be path was not installed into table" Key=<IP_ADDRESS>/32 Path="{ <IP_ADDRESS>/32 | src: { fc00:c111::3 | as: 65000, id: <IP_ADDRESS> }, nh: <IP_ADDRESS>, withdraw }" Topic=Table asn=65001 component=gobgp.BgpServerInstance subsys=bgp-control-plane (1 occurrences)

Example at https://github.com/cilium/cilium/actions/runs/11683985280/job/32534603637.
From @harsimran-pabla:

there are lot of place in BGP subsystem where idempotent changes are logged as warnings. Will have to go through them.

If you're fixing this, don't forget to remove the exception from the list: https://github.com/cilium/cilium/blob/21ad13700b0f295e4997ffe4d204a9dbcd4cf309/cilium-cli/connectivity/tests/errors.go#L55


Update dependencies

Description
A few dependencies need to be updated

:tada: This issue has been resolved in version 4.4.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Infinite loops for some selected vertices.

Potential corner cases are not being handled robustly. The infinite loop happens more frequently when mesh is denser (more triangles), for instance the bunny model.

After cleaning up the models (using the manifold models), I cannot reproduce the issue. So assuming it is fixed.


add readme.md in apk branch

working on it 👍

@iamareebjamal this is in our meeting notes
Should we use different readme for dev and apks branches and if yes shoud i raise a PR from my apk branch to upstream's apk branch? or should i make a readmeAPK.md inside dev and change the script and add cp reademeAPK.md  readme.md for apk branch

@iamareebjamal we have to finish it before today's meet please tell me how to proceed on this :)

APK readme should be different and remain in that branch only


Contributions Setup

Overview
Setup the repository for contributors friendly

Purpose of this Pull Request

[ ] Bug fix
[ ] New Feature
[x] Other

Screenshots / Videos (if applicable)

Checklist

[x] I have read and understood the Contributing Guidelines
[x] I have read and followed the Pull Request Guidelines and follow the Pull Request Title Convention
[x] I have verified that no duplicate pull requests have already been submitted that address the same issue
[x] I have provided a clear description of what is being solved in this pull request, or referenced the relevant issue
[x] I have included relevant tests related to the changes made, as recommended

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Custom mj-head component causes TypeError: this.context.processing is not a function

Describe the bug
I've tried creating custom head component but it crashes during mjml2html with TypeError: this.context.processing is not a function error
To Reproduce
Steps to reproduce the behavior:

Create following files
Main component

<mjml>
  <mj-head>
    <pp-head />
  </mj-head>
  <mj-body> </mj-body>
</mjml>

pp-head
import { HeadComponent } from 'mjml-core';

export class PpHead extends HeadComponent {
  static endingTag = false;
  static tagName = 'pp-head';

  render() {
    return this.renderMJML(`
      <mj-font<EMAIL_ADDRESS>name="Inter" />
      <mj-style inline="inline"> .link-nostyle { text-decoration: none } </mj-style>
      <mj-attributes>
        <mj-text color="#46586B" font-family="Inter, Arial" padding="12px 25px" />
        <mj-image align="left" />
        <mj-button align="left" font-family="Inter, Arial" />
        <mj-divider width="120px" border-width="1px" border-color="#E7E7E7" align="left" padding="0px 25px" />
      </mj-attributes>
    `);
  }
}

Register the pp-head component
Render using mjml2html

Expected behavior
<pp-head> component is created and included in <head> after rendering
MJML environment (please complete the following information):

OS: [fedora linux]
MJML Version [e.g. 4.15.2]
MJML tool used [e.g MJML npm package]

Additional context
I think the docs could use some improvement when it comes to custom components.

Yeah you're using BodyComponent as a HeadComponent. There's no equivalent of renderMJML for HeadComponent.
Head component can't use renderMJML because it define the context for the body components.
If you need to do so just use the low level API, but here you seem only to need a mj-include rather than over complexify your project with custom component

mj-include won't work in my case. mj-include is not bundled in my deployment file in AWS

mj-include are resolved by the parser, it's not a component 🤔

I know, and that's why i can't use it. Components have to be imported and registered, so they are included in the deployment file. mj-include is resolved by the parses, but since there's no reference to it, it's not bundled in.

I don't really follow you here if you render MJML files why you can't includes those "partial" too in your workflow ?

Even if I include this partial in the bundle, it does not get recognized by the mj-include. It seems like my setup prevents me from using it.

If you need to do so just use the low level API

What did you mean by that? It might be the solution I'm looking for

Are you using the cli or directly mjml2html if so you might need to pass the proper file path.
You can check the source code for MJML Head components to see how they push everything in the context https://github.com/mjmlio/mjml/blob/master/packages/mjml-head-style/src/index.js


Strange blank space problem for data-clipboard-text= parameters

var keyword = "Starboy%20The%20Weeknd";
var title_part = keyword+ '%20%5B%E5%B8%A6%2F%E6%97%A0%E5%92%8C%E5%A3%B0%5D%5B320Kbps%5D%E4%BC%B4%E5%A5%8F';

When I use the code
<button class="mybtn"  data-clipboard-text=' + decodeURIComponent(title_part) + '>Copy</button>
Error:

What can I do?

Sorry but I couldn't understand, please share a JSFiddle with a reproducible scenario.

Ok, I want dynamic writing strings with blank spaces into attribute "data-clipboard-text" but failed, as you see the content for "data-clipboard-text" is ripped off and only the first word is included in quotes.
But I check this tutorial and get the method from floor 3 answer.
http://stackoverflow.com/questions/34191780/javascript-copy-string-to-clipboard-as-text-html
His way http://jsfiddle.net/Loilo/ohy30s6c/2/
Now I only wonder if the "data-clipboard-text" is easier?

Here it is: https://jsfiddle.net/5kk0eysw/9/

Or https://jsfiddle.net/5kk0eysw/10/


azure-communication-chat: create the chat client, throw the exception "OverflowError: mktime argument out of range"

Package Name:  azure-communication-chat
Package Version: 1.0.0a20210222001
Operating System: win10
Python Version: 3.7.8
Time Zone: China

Describe the bug

Execute the code Create the Chat Client and throw the following exception:

 File "azure\communication\chat\_shared\utils.py", line 75, in _convert_expires_on_datetime_to_utc_int
    epoch = time.mktime(datetime(1970, 1, 1).timetuple())
OverflowError: mktime argument out of range

azure\communication\chat_shared\utils.py

When the operating system is linux, the value of epoch is -28800；no exception is thrown.

@Jongio for notification.

Thanks for raising this issue. Our team will try to repro this bug with the latest version of Python SDK and fix accordingly.

Thanks for catching this! Purposed a pr to address the issue here: https://github.com/Azure/azure-sdk-for-python/pull/18026

Close it, due to https://github.com/Azure/azure-sdk-for-python/pull/18026 merged.


Observation Duplication

For the surface ship winds, the duplicate factors for UFO and GSI are not equal, which is affecting the obserror.

If we were to get rid of the duplicate check filter and multiply the GSI duplicate factor to the final UFO obs error, the obs errors would be in perfect agreement.
Taking a closer look at the files, there are some locations where the GSI reports an extra duplicate that doesn't exist for the UFO, so we are reviewing the ioda converters and file combining strategies for any discrepancies.

@asewnath Thank you very much. Can you post the numbers of each conventional type in those separated IODA files and those combined IODA files? That shows one of the reasons that we cannot get same duplicate factors in UFO as in GSI for some observations: The IODA combine program merge some surface pressure and temperature observations if those data have same locations, altitude/pressure, time, station_ID/type

Taking a look at the kx counts for individual and combined files:
individual files: /gpfsm/dnb31/jjin3/jedi/For_others/x0044.jj_20230201.iodav3/conv/*
combined file: /gpfsm/dnb31/jjin3/jedi/For_others/x0044.jj_20230201.iodav3/gsidiag_2_ufo/ncdiag/ob/x0044/PT6H/2020-12-15/x0044.sfcship.2020-12-14T21:00:00Z.nc4
sfcship_q_obs_2020121500.nc4
[180 183]
Individual file:  180 :  3762
Combined file:  180 :  3762
Individual file:  183 :  2787
Combined file:  183 :  2787
sfcship_tv_obs_2020121500.nc4
[180 183]
Individual file:  180 :  3762
Combined file:  180 :  3762
Individual file:  183 :  2788
Combined file:  183 :  2788
sfcship_ps_obs_2020121500.nc4
[180 183]
Individual file:  180 :  14933
Combined file:  180 :  14815
Individual file:  183 :  3782
Combined file:  183 :  3782
sfcship_uv_obs_2020121500.nc4
[280 282 284]
Individual file:  280 :  7906
Combined file:  280 :  7906
Individual file:  282 :  210
Combined file:  282 :  210
Individual file:  284 :  3696
Combined file:  284 :  3696
sfcship_tsen_obs_2020121500.nc4
[180 183]
Individual file:  180 :  4017
Combined file:  180 :  3919
Individual file:  183 :  977
Combined file:  183 :  977

A summary of issues in handling duplicated observations in UFO.

There are independent observations spaces for conventional surface sation, sondes, marine ships, etc. in UFO and there is no communication between them in UFO operators and filters.  For example, there are co-loated surface pressure (named stationPressure in UFO) in both Sondes and Surface data files. However, those data are saved in different files and processed in different UFO observational spaces. As a result, those data cannot be counted as duplicated observations. https://github.com/GEOS-ESM/swell/issues/78#issuecomment-1373909089.

The IODA converter combining program sometimes fails to combine observations correctly.  Surface pressure, temperature, humidity, and winds are saved into separate NetCDF files by GSI since they have different operators.  IODA converter transform them into different files and them combine these different variables into different files such as files for all sondes data. The python program uses locations, altitude, time information to combine those data.  A machine round-off error can make those information different for observations at the same location.  For example, some temperature and air pressure data made at the same location are treated as as in different observational profiles by the IODA converter. https://github.com/GEOS-ESM/swell/issues/78#issuecomment-1335917623.  Another example, there are fewer surface ship surface pressure (Ps) observations in the combined program than in the individual files as reported above in this issue. https://github.com/GEOS-ESM/swell/issues/175#issuecomment-1535185533

There are duplicated reports, likely because of human errors, in original meteorological data files or bufr files.   As what Meta found that some data are made at the same location and time, but have different values at some heigh levels. https://github.com/GEOS-ESM/swell/issues/78#issuecomment-1415155632.  Those observations are processed with large weights  through duplication-factor check in GSI.  However, these data are combined into single profiles and are not processed with large errors in UFO.

In short, duplicated observation checking in UFO is not able to find exactly same co-located observations as GSI does even though it can find most of the co-located observations in UFO.  Some observational error are different from these values in GSI.


Support building security advisory fork on TeamCity

We want to build a private fork to fix some security issues. This PR supports using the private fork as TeamCity Kotlin DSL versioned settings root.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.


Generate documentation for rules from source code comment

Since we don't have documentation for the detekt rules at this point I suggest that we generate it from source. (not only because sounds cool)
This would mean that the source code comments have to updated. These comments then are parsed and a markdown/html page is generated with this kind of information. Furthermore, the level of documentation for detekt increases.
I also think the detekt documentation should provide noncompliant and compliant code examples. SonarJava does this for example.
https://www.sonarsource.com/products/codeanalyzers/sonarjava/rules.html
A solution could be to annotate our test cases with appropriate examples and then the documentation generator reads it via reflection.
This tool can also be integrated in the detekt build process. Thus detekt always has up-to-date documentation
Let me know what you think.

Goes a bit into the direction of #189

I like it though. Let's automate as much as possible.

That would be awesome to have a documentation hosted via github pages with Jekyll or something. Generation through source documentation sounds good to me. Don't know if we should annotate specific test cases or just put the examples to the kdoc for each rule. A Gradle task can be used to extract the doc.

I like the idea. Just having one standard way of documenting a Rule class (with a bunch of standard parameters) would allow us to both generate a default-detekt-config.yml without forgetting any configuration options and also generate better overall documentation. 👍  from me


Add a hpa and pdb for kourier-gateway

Changes

Adds a PodDistruptionBudget and HorizontalPodAutoscaler to 3scale-kourier-gateway

/kind enhancement
Fixes #989
Release Note
A PodDistruptionBudget and a HorizontalPodAutoscaler were added for the 3scale-kourier-gateway deployment

/cc @nak3

It seems Code Style / style / Lint (pull_request) complains about missing new line. Is it possible to fix it? Otherwise, LGTM!

/test integration-tests

/lgtm
/approve


Pin mlflow version to the minimum required by Merlin SDK

Description

Modifications

Tests

Checklist

[ ] Added PR label
[ ] Added unit test, integration, and/or e2e tests
[ ] Tested locally
[ ] Updated documentation
[ ] Update Swagger spec if the PR introduce API changes
[ ] Regenerated Golang and Python client if the PR introduces API changes

Release Notes

Close as this changes has been added in another PR.


Cloning doesn't respect changing entities

Description

If a player becomes a different humanoid entity than their original, dies, and is then cloned, they newly cloned entity will be that of their original form rather than their current one.  This seems to be an issue with how the DNA information is stored.
Steps to reproduce

Join local server
Spawn an urist lizard/dwarf/slime/skelly
control that new urist
die, scan, and clone
voila, the new entity will be your original character, not the Urist.

Screenshots

Additional context

This also affects skeleton reassembly due to the fact that they use a modified version of cloning for it.

this is fixed due to cloning rework


Using custom URI scheme without losing focus.

Hi, thanks a lot for this tool, it's very handy!
I was trying out the custom URI schemes from #16 for some simple scripting and I noticed that they steal focus from the current application. So, on my OS X Catalina (10.15.5), if I open a Terminal window and do:
$ open keepingyouawake:///activate

KeepingYouAwake activates as expected, and the Terminal window loses focus.
Would it be possible to activate it in the background without stealing focus like that?

bumping this as I just tracked down this super annoying behaviour. I called the URI periodically during the day and it always interrupted my work flow as the active window lost its focus.

Hi! The open application has an additional parameter -g that does not bring the app into the foreground
 -g  Do not bring the application to the foreground.

You can find out more by reading the manual page with the man open command. Hopefully this resolves the problem for you.


Update information about debuginfo configuration

Fixes https://github.com/rust-lang/rustc-guide/issues/327

Thanks :)


Where I can get the train_list.txt in Resnet50 experiment

I can't find train_list.txt in ImageNet dataset.

I generate by
def generate_train():
file = "n01930112/"
paths = os.walk(r'/root/data/train/'+ file )
for path, dir_lst, file_lst in paths:
    for file_name in file_lst:
        print("train/"+file+file_name+" 7")


Remove: Unity.Unity.6000.MacServer version 6000.0.3f1

Microsoft Reviewers: Open in CodeFlow

https://github.com/microsoft/winget-pkgs/pull/186121#issuecomment-2445759087

[Policy] Needs-Manual-Merge


[8.x] [RFC] PoC for making chained jobs batchable

This is a proof-of-concept to allow chained jobs in a batch. I didn't write any new tests for now, but made sure the old tests still ran.
What's the intention?
I want to be able to define complex processes that consist of multiple jobs. Some of them can happen in parallel but some of them have dependencies on each other. However, I still want to be able to treat the whole batch as one "process". This is similar to the Process Manager (or Saga) pattern.
Example
After adding a new employee to the system, we want to start an onboarding process that will set up all required accounts automatically. None of these steps really have anything to do with each other per se, but together they make up the onboarding process. The onboarding isn't completed unless all of these steps have finished (hence why I want to refer to them as one unit – the batch).
Some of these steps can run in parallel but some can't run unless other steps have finished. You would be able to model this process like this:
Bus::batch([
    new AddUserToGsuite($newEmployee),
    new InstallProfiles($newEmployee),
    Bus::chain([
        new CreateActiveDirectoryUser($newEmployee),
        new SyncLocalActiveDirectoryWithAzure($newEmployee),
        new AssignOffice365LicenseToEmployee($newEmployee),
    ])
]);

Changes
To allow for this, I added a new method dispatchInBatch to PendingChain that only returns the first job of the chain instead of directly dispatching it. This will essentially turn this
Bus::batch([
    new Job1(),
    Bus::chain([
        new Job2(),
        new Job3(),
    ])->dispatchInBatch(),
]);

into this
Bus::batch([
    new Job1(),
    // This job works like a regular chained job. Its $chained property is correctly
    // filled with the jobs to run after it succeeded.
    new Job2(),
]);

In order for the batch to correctly calculate the number of jobs it needs to run, we can no longer simply count how many entries the $jobs array of the batch has. Instead, for each job we have to determine if it has chained jobs and add them to the total. Otherwise the batch would end too soon (or rather, the then callback would fire too soon. The remaining jobs in the chain would still be executed afterwards).
I want to ensure that the jobs in the chain are also aware that they're being run inside a batch. For this reason we need to ensure that every job in the chain has the reference to the batch set correctly. The first job in the chain gets handled automatically by the batch itself. For each subsequent job we have to manually set the $batchId to the previous job's batch id (if it exists).

This code probably has a bunch of issues and edge cases I might have overlooked. I'm also not sure how nesting this even deeper would behave. Treat this as a proof-of-concept so we can discuss the idea.

Feel free to open this back up when you have more time to explore edge cases and nesting.


Create a deployment dashboard

Create a small Azure web app with backend that supports logging in via GitHub token. Then have it display:

Current PRs
Their deployments, if any
A button to deploy/redeploy a PR
Current commit/timestamp of each deployment, including beta
A button to delete/clean deployments
A button to trigger the cleanup pipeline from #1499
A button to toggle dev-flag on any deployment

Prob not worth the effort now that we solved the issue for fork PR deployment. #1499 should be enough to solve deployment woes


[Fix] Upgraded transitive deps from requests on requirements/run.txt

It turns out when requests was pinned on version 2.27.0 on this PR #115, I should've also pip-compile upgraded its transitive dependencies like certifi, idna and urllib3, otherwise they'd end up with prior pinned versions that would leave margin for conflicts, this is one of the trade off of having stricter transitive dependencies, but once they're all set it should be easier with documented guidelines how to keep this handled smoothly in the future as we need to roll out upgrades.
FYI, I've mapped an issue on this repo https://github.com/kytos-ng/kytos-ng.github.io/issues/14 to document some guidelines to have a deterministic and clear way on how to deal with upgrades and what to look for to make sure the docker build doesn't break, so later on I'll update there.

Looks good to me. Interestingly, one of the unit tests failed apparently due to an ignored leading zeros (mapped into issue #124). Thanks for the change, Vinicius!

Thanks for reviewing @italovalcy, and for mapping this, indeed it's a bug, I'll fix it as well.


Mask Secret Key display and entry by default

Providing an option to reveal the value if desired, to protect from onlookers / cameras in public places

Hi @markmhx
I'm interested in working on this issue. Kindly assign it to me and let me know of any additional details to be aware of.
Thank you.
Safvan

Screencast from 26-04-23 06:20:09 PM IST.webm

Is there are any suggestions on this? @markmhx

Looking good! @mica000 wdyt?

Want to add masking here as well while you're at it?

Screencast from 27-04-23 08:22:33 AM IST.webm

It appears that the input values are not being properly handled. Is the user expected to either type in the entire key or paste the entire key?

It looks as though you may have uncovered a validation bug in which if you paste a partial value into the textarea, the form doesn't recognize it until you unfocus the textarea?

@Safvan-tsy Fantastic job! Design wise it's all looking great Thank you for your contribution!
And indeed, I can reproduce this bug as well. Agreeing we should support both ways

Thank you for your feedback . I'm happy to contribute to the project.


Feat/lulc new datasets

By mistake I added generated app secrets to the commit. Those were just for the development and the secretes are already deleted. There is no need to delete those from GH.


Initialization has wrong syntax

Trying this does not work.
final togetherAI = TogetherAISdK(
  apiKey: 'YOUR_API_KEY',
);

The right way is
final togetherAI = TogetherAISdK(
'YOUR_API_KEY',
);

Thank you so much friend, we fixed it!


Add districts api

Timeout error for districts.

Timeout is limited to 10s for Vercel deployments on the free plan.


URA-872 - add excluding of run upload by maximum allowable age

add utils.check_run_age_within_limit() to check for the age of a run being less than max_age hours defined in config file

closes #32

remove log_dir from config validation (makes it actually optional as in docs)
add in validation of log_level to config validation
actually set log_level to logger if defined in config
add unit tests to cover changes
update GitHub actions to generate a new pretty % coverage badge for the readme
update example config file
running on server with max_age of 72h and --dry_run correctly identifies the following recent runs for upload:

2024-11-22 18:18:09,769 [s3_upload] INFO: Found 3 new sequencing runs to upload: 241120_A01295_0443_AHLJC2DRX5, 241121_A01295_0444_AHM3FCDRX5, 241121_A01303_0480_BHLYYCDRX5
2024-11-22 18:18:09,769 [s3_upload] INFO: /genetics/A01295a/241120_A01295_0443_AHLJC2DRX5 would be uploaded to jethro-s3-test-v2:/A01295/241120_A01295_0443_AHLJC2DRX5
2024-11-22 18:18:09,769 [s3_upload] INFO: /genetics/A01295a/241121_A01295_0444_AHM3FCDRX5 would be uploaded to jethro-s3-test-v2:/A01295/241121_A01295_0444_AHM3FCDRX5
2024-11-22 18:18:09,769 [s3_upload] INFO: /genetics/A01303b/241121_A01303_0480_BHLYYCDRX5 would be uploaded to jethro-s3-test-v2:/A01303/241121_A01303_0480_BHLYYCDRX5

This change is

Hello @jethror1! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file s3_upload/utils/utils.py:

Line 289:80: E501 line too long (80 > 79 characters)

⚠ Reminder to manually run end to end tests in https://github.com/eastgenomics/s3_upload/tree/main/tests/e2e

End to end tests passing locally:
jethro@jethro-T490:~/Projects/s3_upload$ python3 -m pytest -v  tests/e2e/
================================================================================================================================================== test session starts ===================================================================================================================================================
platform linux -- Python 3.8.10, pytest-7.0.1, pluggy-1.0.0 -- /usr/bin/python3
cachedir: .pytest_cache
metadata: {'Python': '3.8.10', 'Platform': 'Linux-5.15.0-125-generic-x86_64-with-glibc2.29', 'Packages': {'pytest': '7.0.1', 'pluggy': '1.0.0'}, 'Plugins': {'Faker': '14.0.0', 'repeat': '0.9.3', 'subtests': '0.11.0', 'html': '4.1.0', 'metadata': '3.0.0', 'mock': '3.11.1', 'cov': '4.0.0', 'random-order': '1.1.1'}}
Test order randomisation NOT enabled. Enable with --random-order or --random-order-bucket=<bucket_type>
rootdir: /home/jethro/Projects/s3_upload
plugins: Faker-14.0.0, repeat-0.9.3, subtests-0.11.0, html-4.1.0, metadata-3.0.0, mock-3.11.1, cov-4.0.0, random-order-1.1.1
collected 23 items

tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_no_errors_in_logs PASSED                                                                                [  4%]
tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_remote_files_upload_correctly PASSED                                                                                [  8%]
tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_slack_post_message_after_uploading_as_expected PASSED                                                                                [ 13%]
tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_upload_log_file_for_fully_uploaded_run_correct PASSED                                                                                [ 17%]
tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_uploaded_run_not_picked_up_to_upload_again PASSED                                                                                [ 21%]
tests/e2e/test_one_complete_run_upload_to_one_remote_path.py::TestSingleCompleteRun::test_when_nothing_to_upload_that_exit_code_is_zero PASSED                                                                                [ 26%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_no_errors_in_logs PASSED                                                                                [ 30%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_no_upload_log_generated_for_run_3 PASSED                                                                                [ 34%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_remote_files_uploaded_correctly PASSED                                                                                [ 39%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_slack_post_message_after_uploading_as_expected PASSED                                                                                [ 43%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_upload_log_files_for_fully_uploaded_run_1_correct PASSED                                                                                [ 47%]
tests/e2e/test_regex_filtering_against_sample_names.py::TestConfigRegexPatternsAgainstSampleNames::test_upload_log_files_for_fully_uploaded_run_2_correct PASSED                                                                                [ 52%]
tests/e2e/test_resuming_partially_uploaded_runs.py::TestInterruptAndResume::test_complete_upload_log_file_as_expected PASSED                                                                                [ 56%]
tests/e2e/test_resuming_partially_uploaded_runs.py::TestInterruptAndResume::test_error_message_for_failed_upload_in_partial_upload_log PASSED                                                                                [ 60%]
tests/e2e/test_resuming_partially_uploaded_runs.py::TestInterruptAndResume::test_partially_uploaded_log_file_as_expected PASSED                                                                                [ 65%]
tests/e2e/test_resuming_partially_uploaded_runs.py::TestInterruptAndResume::test_slack_post_messages_as_expected PASSED                                                                                [ 69%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_no_errors_in_logs PASSED                                                                                [ 73%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_remote_file_uploaded_correctly PASSED                                                                                [ 78%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_slack_post_message_after_uploading_as_expected PASSED                                                                                [ 82%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_upload_log_files_for_fully_uploaded_run_1_correct PASSED                                                                                [ 86%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_upload_log_files_for_fully_uploaded_run_2_correct PASSED                                                                                [ 91%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_uploaded_run_not_picked_up_to_upload_again PASSED                                                                                [ 95%]
tests/e2e/test_two_complete_runs_upload_to_two_remote_paths.py::TestTwoCompleteRunsInSeparateMonitorDirectories::test_when_nothing_to_upload_that_exit_code_is_zero PASSED                                                                                [100%]

=================================================================================================================================================== 23 passed in 9.45s ===================================================================================================================================================


When this library run on iOS platform using UIKit components?

Thank you work for this project ;)
I want use it!

It mostly rendrers everything on canvas like regular CMP does. Some native views are available with cupertino-native


Added support for enabling and disabling Draggabilly on the fly

added support for enabling and disabling Draggabilly on the fly, by passing a bool with the key disableDraggabilly in an object that is sent via the directive value field.
See example in readme.
Don't forget to transpile into build.js!

Hi,
Would love to see this PR merged ! :heart:
Just a minor issue with it. If you don't give any configuration object to v-dragabilly directive, you'll got an error cannot read property 'hasOwnProperty' of undefined
Maybe you could do something like this :
            const options = binding.value || {}
            el.draggie = new Draggabilly(el, options)

            if (options.hasOwnProperty('recalculateOnMove')) {
...

Thanks btw !

Good catch @tof06 , I implemented it now

i may just have to pull yours in, cause this is exactly what i need


runtime/python/server.py 运行后，调用api/inference/zero-shot，报错

ERROR:    Exception in ASGI application
Traceback (most recent call last):
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/uvicorn/protocols/http/httptools_impl.py", line 399, in run_asgi
result = await app(  # type: ignore[func-returns-value]
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in call
return await self.app(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/applications.py", line 123, in call
await self.middleware_stack(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/middleware/errors.py", line 186, in call
raise exc
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/middleware/errors.py", line 164, in call
await self.app(scope, receive, _send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/middleware/cors.py", line 85, in call
await self.app(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/middleware/exceptions.py", line 65, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/routing.py", line 776, in app
await route.handle(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/routing.py", line 297, in handle
await self.app(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/routing.py", line 77, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/starlette/routing.py", line 72, in app
response = await func(request)
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/fastapi/routing.py", line 278, in app
raw_response = await run_endpoint_function(
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
return await dependant.call(**values)
File "/usr/local/UD/CosyVoice/runtime/python/fastapi/server.py", line 75, in zeroShot
output = app.cosyvoice.inference_zero_shot(tts, prompt, prompt_speech_16k)
File "/usr/local/UD/CosyVoice/runtime/python/fastapi/../../../cosyvoice/cli/cosyvoice.py", line 59, in inference_zero_shot
model_input = self.frontend.frontend_zero_shot(i, prompt_text, prompt_speech_16k)
File "/usr/local/UD/CosyVoice/runtime/python/fastapi/../../../cosyvoice/cli/frontend.py", line 142, in frontend_zero_shot
speech_token, speech_token_len = self._extract_speech_token(prompt_speech_16k)
File "/usr/local/UD/CosyVoice/runtime/python/fastapi/../../../cosyvoice/cli/frontend.py", line 79, in _extract_speech_token
speech_token = self.speech_tokenizer_session.run(None, {self.speech_tokenizer_session.get_inputs()[0].name: feat.detach().cpu().numpy(),
File "/home/vipuser/anaconda3/envs/cosyvoice_test/lib/python3.8/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 220, in run
return self._sess.run(output_names, input_feed, run_options)
onnxruntime.capi.onnxruntime_pybind11_state.Fail: [ONNXRuntimeError] : 1 : FAIL : Non-zero status code returned while running Add node.


Update set-up-customer-loyalty-program.md

:x: Organization membership check failed
Members of the MicrosoftDocs organization should use the private repo. Please move your changes to https://github.com/MicrosoftDocs/Dynamics-365-Operations, and close this pull request.


Adding items to support powershell commands, handle I/O issues on win32 platforms

Added variable suffix to provide value for tempfile.NamedTemporaryFile argument suffix, specifically for handling powershell scripts when 'powershell' is provided to shell. Can be expanded upon in the future if need be.
Set tempfile.NamedTemporaryFile argument delete to False. The temp file was being deleted prematurely.
Replaced tmp.flush() with tmp.close(), as flush was not fully relinquishing control of the temp file.
Explicity deleting the temp file after the process has executed, first checking that the path exists.

#36
Example

from prefect import flow
from prefect_shell.commands import *

h = "echo 'Hello world!'"
c = "echo 'Is this thing on?'"

@flow
def do_thing():
    shell_run_command(command=c, helper_command=h, shell='powershell', return_all=True)

if __name__ = '__main__':
    do_thing()

Prior to the change:
RuntimeException: coroutine 'shell_run_command' was never awaited
After change:
Hello world!
Is this thing on?

See prior work and discussion in https://github.com/PrefectHQ/prefect/pull/6035

Thanks for contributing this PR; I'm sure this will be very impactful to many of our Windows users! I'll make a release very soon.


error handling

I submitted a job and was told to be patient. I finally lost patience and sniffed around in the logs. Finally looking at docker logs for lorax I see:
18:46:19 alignment: lorax.core.run_subprocess_with_status(PosixPath('/usr/local/var/data/L_GK8MJ0/D5F9P/alignment.stockholm'), PosixPath('/usr/local/var/data/L_GK8MJ0/D5F9P/run_log.txt'), ['time', 'nice', 'hmmalign', '--trim', '--informat', 'FASTA', '--amino', '...., PosixPath('/usr/local/var/data/L_GK8MJ0/D5F9P'), PosixPath('/usr/local/var/data/L_GK8MJ0/D5F9P/status.txt'), <function convert_stockholm_to_fasta at 0x7fa953c93820>, (PosixPath('/usr/local/var/data/L_GK8MJ0/D5F9P/alignment.faa'),)) (cd916249-fef1-4909-b2c5-fee4d4b62511)
18:46:21 Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 559, in connect
sock = self._connect()
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 615, in _connect
raise err
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 603, in _connect
sock.connect(socket_address)
OSError: [Errno 113] No route to host
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/rq/worker.py", line 1026, in perform_job
self.prepare_job_execution(job)
File "/usr/local/lib/python3.8/site-packages/rq/worker.py", line 908, in prepare_job_execution
pipeline.execute()
File "/usr/local/lib/python3.8/site-packages/redis/client.py", line 4012, in execute
conn = self.connection_pool.get_connection('MULTI',
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 1192, in get_connection
connection.connect()
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 563, in connect
raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 113 connecting to redis:6379. No route to host.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 559, in connect
sock = self._connect()
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 615, in _connect
raise err
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 603, in _connect
sock.connect(socket_address)
OSError: [Errno 113] No route to host
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/rq/worker.py", line 1026, in perform_job
self.prepare_job_execution(job)
File "/usr/local/lib/python3.8/site-packages/rq/worker.py", line 908, in prepare_job_execution
pipeline.execute()
File "/usr/local/lib/python3.8/site-packages/redis/client.py", line 4012, in execute
conn = self.connection_pool.get_connection('MULTI',
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 1192, in get_connection
connection.connect()
File "/usr/local/lib/python3.8/site-packages/redis/connection.py", line 563, in connect
raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 113 connecting to redis:6379. No route to host.
18:53:06 Cleaning registries for queue: alignment
which I will try fixing with a restart of the container. But, the user should be notified to contact someone when things are in a similarly bad way. Some proactive monitoring of the state services would probably not be amiss either, but that's a different issue.

FWIW, restarting the containers did bring things back to proper functionality, but the need for better error handling stands.

I had to restart the containers on the development version as well. I added some error handling and used the same sequences as you did - are they all identical? It is still asking me to be patient, but the Docker logs show no errors (yet).

I don't recall much about the sequences I used but I don't think they caused the issue. They may have been identical or near-identical as I think they would have been representatives of the same gene from different cowpea cultivars. But I think it likely that the lorax services had just gotten into an unhealthy state at some point and I happened to be the first one to encounter it (or at least the first to complain). You might try your error handling by simply taking the lorax services down, which will likely emulate the situation I was in.

It just posts a blank Funnotate page (the error message does not appear). But I have a couple other things to try.

I got it to post the error message caused by taking Lorax down, and suspect that this would also handle the error you saw. Note that "Computing phylogenetic tree, please be patient" is not the same kind of error, it indicates that Lorax is not able to build the tree for the given sequences.

it indicates that Lorax is not able to build the tree for the given sequences.

But refuses to admit it.

It posts different error messages depending on whether you concatenate any text (like a space) to the error. (I suspect this is an R quirk.)
Without concatenation, the message is pretty vague:

but with an added space (or other text) it gives a more specific hint:

I prefer the latter, though it is not red. (We could make it red with a style tag if desired.) We can also put a contact e-mail in the appended text.

yes, I don't know what most of our users would do if told to check their logs. probably a suggestion to contact us combined with a specific error message is best- red or otherwise should work, but I'd suggest "Mauve! The colour of depravity in the extreme denunciation of the anilines"

I have been waiting for an excuse to add the proustr package!

Just a reminder after this afternoon's errors: this will require nested error detection.

Should be fixed with commit 12e2d58.


Ability to remove first labels

I realize that I could just create all new label groups, but that's a pain.
There's no x! 🙅

Nvm, just realized you can edit the label in-line :(


Recording stops after 1 minute

After 1 minute of recording, it automatically stops

Hey @ansh, can you let me know more?

The OS and version you're running -- continuous functionality varies quite a lot based on platform
The options you're using with ExpoSpeechRecognitionModule.start({...})

Sorry, I saw that it is a limitation on iOS. Will close this issue. @jamsch

@ansh No problem! At one point I'm sure I'll be able to implement a workaround for the limitation of the underlying SFSpeechURLRecognitionRequest API.

@jamsch How would you go about doing that? I'd love to give it a shot.

@ansh Essentially we're using the append(buffer) function from an instance of SFSpeechAudioBufferRecognitionRequest for microphone input. We'd need to do something similar to load the audio file in to a PCM buffer and, at chunks, feed it in to to speech recognizer instance using that append function. Not sure how it'd work on how fast you can append it though.

@jamsch Is there any chance you have gotten around to adding a work around to the 1 minute limit yet? Currently working on an app that requires live transcription and would prefer to us the on device transcription instead of a cloud based provider if possible.

Hey @YourAverageTechBro, haven't visited this since then, but I think I should be able to get this implemented in the next day or two. Just a note though: I won't be able to implement anything for Android 12 and below, so you'll still likely need to use remote transcription APIs. There is a supportsRecording() API that you could use to distinguish whether to also use file-based transcription.

@jamsch amazing! looking forward to it :)

@YourAverageTechBro Just deployed v1.1.0 (for Expo SDK 52). I've tested it with 1/2 channel WAV and 1-channel MP3 audio which seem okay. Let me know if you have any issues! I've also exposed a audioSource.chunkDelayMillis option to control the speed at which the audio is streamed to the recognizer in the case you run in to any issues.
As for permissions, I don't actually think you need to ask the user for any permissions on iOS if you're going to use on-device recognition, however on Android you still will need to.

@jamsch is there any way you could add Expo SDK 51 support? I'm having some trouble upgrading my app to 52.

@YourAverageTechBro no problem! I've just cherry-picked the last few commits and published it under version 0.3.0 (under the npm tag sdk-51). I haven't thouroughly tested out these cherry picked commits as I needed to do some changes for SDK 51, but hopefully it should be okay!


fix(breadcrumbs): clean up imports of observable creation methods

Change to import creation methods from rxjs. Without this change, consumers
of covalent are obligated to install rxjs-compat.

Closes #1208
Description

What's included?
Minor fix to imports in an experimental module.
Test Steps
Does not apply.
General Tests for Every PR

[ ] npm run serve:prod still works.
[X] npm run tslint passes.
[X] npm run stylelint passes.
[ ] npm test passes and code coverage is not lower.
[ ] npm run build:lib still works.

Thank you for the PR 👍


Organize into submodules

Part of #99
The number of files was causing imports to become tedious.  This pull request creates two new submodules, model and infer, and moves related files into them.  New __init__ files have been added to these modules to simplify user imports: for example, instead of
from qhbmlib import circuit_infer
from qhbmlib import energy_infer
from qhbmlib import hamiltonian_infer

my_qnn= circuit_infer.QuantumInference(...)
my_ebm = energy_infer.BernoulliEnergyInference(...)
my_qhbm = hamiltonian_infer.QHBM(...)

we can now have
from qhbmlib import infer

my_qnn = infer.QuantumInference(...)
my_ebm = infer.BernoulliEnergyInference(...)
my_qhbm = infer.QHBM(...)

For a followup pull request, any opinions on where the remaining top-level files should go?

Made a few changes to address your comments:

Changed model to models, so we won't have to change the name when we add more in the future
Changed infer to inference
Moved qmhl_loss.py and vqt_loss.py to the inference subpackage
Moved quantum_data.py to the new data subpackage

Also, decided to remove architectures and hamiltonian.  Only one function is used within the library, get_hardware_efficient_model_unitary, so I moved this into the test_util file.  Otherwise, the functions in architectures and hamiltonian were used only occasionally in research code, so if we were to keep any of it I think they only make sense in the baselines directory.  To this end I opened #197.


Implement new views into report generator

To simplify the metrics required to generate the reports we have created new db views, this PR implements those changes across the report generator
💭 Motivation and context
A lot of the data manipulation in the metrics file is difficult to read and can be implemented into views inside our db. By querying directly from these views we speed up our report generation and simplify our code.
✅ Pre-approval checklist

[X ] This PR has an informative and human-readable title.
[X ] Changes are limited to a single goal - eschew scope creep!
[ X] These code changes follow cisagov code standards.
[ X] Tests have been added and/or modified to cover the changes in this PR.
[ X] All new and existing tests pass.

Coverage decreased (-0.5%) to 16.805% when pulling f78b70824cf1c8e6f430e86e8086fff8a7ea2ab8 on DJ_implement_views into c9261000a5408a0747592211460992e1d7edb1f2 on develop.

@DJensen94 @cduhn17 I got this one working finally. Is it worth reviewing and setting up to be merged next? Or should we shift to another?

@dav3r This PR is ready for review


Implement Python support (Atheris)

If there is interest, I could add py_fuzz_test backed by Atheris after the release for java_fuzz_test is done.
As far as I can tell, this would require the following special steps for local Python fuzzing, everything else would be mostly analogous to the integration of Jazzer:

Generalize the existing logic for locating ubsan_standalone_cxx to arbitrary sanitizer libraries and extract it into a separate repository rule.
Add a rule that prevents a given target from receiving fuzzing instrumentation, even if a fuzzing binary depends on it. This is needed since the native Atheris fuzzer library also contains helper functions for fuzz targets and thus will be depended on by fuzz tests, but should not be instrumented for fuzzing for optimal performance. This is a bit tricky, but can for example be achieved by a transition that undoes the fuzzing_binary_transition.
Produce Bazel BUILD files for Atheris. That is actually quite simple (using 1. and 2.), but requires a choice between
a) depending on clang >= 12 and
b) building libFuzzer from source.

OSS-Fuzz support for Python then requires a choice between
a) adding the CPython installation compiled in base-builder also to base-runner and
b) crafting a packaging rule for py_binary backed by pyinstaller or a similar tool that can bundle a Python target with a Python runtime (--build_python_zip may do the job).

I think that would be nice in principle, but I would like to first see adoption (a few users) of the java_fuzz_test rule and also a set of concrete users that would adopt py_fuzz_test if we get to add it here.

When you say adoption, do you mean of local fuzzing or of the OSS-Fuzz support? I don't know of many non-Google Java-based OSS projects using Bazel to begin with, so the OSS-Fuzz support built into java_fuzz_test is probably more of a mid- to long-term investment.
On the other hand, local fuzzing support for Java (and potentially Python) for any, also closed source Bazel project is already very useful and was my primary motivation for adding the Jazzer integration. It is however more difficult to measure adoption for this use case.

When you say adoption, do you mean of local fuzzing or of the OSS-Fuzz support?

Either - basically any Bazel project defining {java,py}_fuzz_tests in their codebase.

I don't know of many non-Google Java-based OSS projects using Bazel to begin with, so the OSS-Fuzz support built into java_fuzz_test is probably more of a mid- to long-term investment.

I believe it is important for the code to have real users, if only a handful. Otherwise, we essentially pay the engineering cost (added complexity, refactorings, etc.) while the code never runs in "real-life" to reap benefits.
This was the approach when developing the C++ rules, too: Envoy is a very large early customer that was on board when we started developing the project.

On the other hand, local fuzzing support for Java (and potentially Python) for any, also closed source Bazel project is already very useful and was my primary motivation for adding the Jazzer integration. It is however more difficult to measure adoption for this use case.

I agree with this - local fuzzing support has always been a key feature of the project. But ultimately the proof of usefulness stays in actual usage, so this is why I'd like to make sure the rules end up being used (by Google or non-Google projects, for local fuzzing or OSS-Fuzz - any kind of use).

As a first step, I will mention rules_fuzzing support prominently in the Jazzer docs once java_fuzz_test has been released. Users have been asking for Bazel rule support, but of course I don't know whether their projects are public.


Did the default animation duration change with v1.1.0?

I'm not sure if the default just changed, or if upgrading to v1.1.0 has meant my implementation is broke, but all my animations look like they're in hyperdrive.
I've downgraded for now back to v1.0.1
Any pointers would be appreciated 🙏

Here is one example but it is happening in multiple places:
import { Loader2 } from "lucide-react";

export const LoadingIcon = ({
  size,
}: {
  size?: string | number;
}) => (
  <Loader2
    size={size}
    className="animate-spin"
  />
);

I've just seen the update re animate-duration-* settings affecting all child elements, this might be the issue, I will investigate thanks!

Yes I think something like in this comment is happening:
https://github.com/new-data-services/tailwindcss-animated/issues/10#issuecomment-2134730911
The issue now is, sometimes I will animate the container at one speed, and I will animate child elements at another. Should I specify duration everywhere now?

Previously animate-spin would use default duration. Now it is using 300.

Ah yes, that will be it. Duration, delay, etc. are now values that are also used for child elements.
For many users, this is a plus, because you can for example define a default duration for all animations on the page. But for your scenario it is actually more of a disadvantage.
As a quick solution, I would suggest that you also set animate-duration-x for nested animations.

Hey @heidkaemper,
First of all, thank you for this lib.
I'm experiencing the same problem and after a little research, I've come to the same conclusion as @lukemorton (same usecase, we're using it for spinner and all of our spinners are one hyperdrive). I must admit that this change is rather surprising, on the one hand because such a change should certainly have provoked a major version change as it's a breaking change for existing applications. On the other hand, the animation-duration specification explicitly states that the property is not inherited (see https://developer.mozilla.org/en-US/docs/Web/CSS/animation-duration#formal_definition).
The behavior is not really intuitive and not documented, unfortunately. We'll certainly be sticking with the old version, as it involves far too many changes to specify the duration for each child, knowing that this is not the property's native behavior.
I think the subject is closed, but in my opinion this is quite unexpected behavior for most, so I prefer to point it out.
Thanks!

We’ve concluded the same as @Gregory-Gerard and have stuck with an older version. Plan is eventually to remove the dependency with a custom utility or just plain tailwind.

Thanks for your feedback guys! I reopen this topic. Maybe it's time for a v2.0 with some new approaches.


Up-ing the Jenkins version

Up-ing the Jenkins image version in anticipation of a new Jenkins image being cut from this Accenture/adop-jenkins#25
Don't merge this PR until Jenkins 0.3.0 exists on DockerHub.

Looks like this was done by someone else, all good! 👍


Keyboard mode for Typing of the Dead and Lupin THE TYPING

Would it be possible to add a keyboard mode for these games or would it be impossible?

If they use JVS to take keyboard inputs, it's possible. But my quick research says they use maple I/F?

Gotcha. I figured as much, but it was worth asking to see. Thanks!

I asked this at my Twitter too, but it seems the original cab also use DC's keyboards over the Maple interface. So I think the game doesn't support it over JVS.

fyi, https://twitter.com/toyoshim/status/1542188870997274624?s=21&t=ZLNHhiUPTfFeN0euZRHipQ

Thank you. It seems like the Wingman SD is my best avenue for this with a maple adapter.


Balancer 2.0.0 Schema Upgrade Account and Position Data QA

Item
Info

Subgraph Reviewed (Eth)
https://subgraphs.messari.io/subgraph?endpoint=https://api.thegraph.com/subgraphs/id/QmWgtTvAwn6rPLWYQuNy5F4s8Ct1LZV4p5X4PesNUigxkA&tab=protocol

Subgraph Reviewed (Arbitrum)
https://subgraphs.messari.io/subgraph?endpoint=https://api.thegraph.com/subgraphs/id/Qmc47H3j5KKCuN8Sfw9RpUK7sg9CKx9e2krJbrS8QboW8E&tab=protocol

Subgraph Reviewed (Matic)
https://subgraphs.messari.io/subgraph?endpoint=https://api.thegraph.com/subgraphs/id/QmXV5Bgs56BLHXXpGWoV8gAv8ev6tkwN7sT4BPoBosLb66&tab=protocol

Date Reviewed
08-Nov-22

Schema Version
2.0.0

Subgraph Version
1.2.0

Methodology Version
1.0.0

Metric to Review
All Financial Metrics on Arbitrum
All financial metrics on Arbitrum are displaying abnormally large values
Notes/Comments
Polygon data looks reasonable, and account/position data across all three chains looks accurate.

@nemani

Redeployment without any grafts seems to have fixed the issue for arbi.
waiting for it to sync to confirm, but you can see them here: Blue is new deployment and Red is old with large values.
https://subgraphs.messari.io/subgraph?endpoint=https://api.thegraph.com/subgraphs/id/QmZ1taQzXd3vPjmbRmexZqo9eqswWvJUJfBsTz1xpWWQo1&tab=protocol&overlay=https://api.thegraph.com/subgraphs/id/Qmc47H3j5KKCuN8Sfw9RpUK7sg9CKx9e2krJbrS8QboW8E

hell yea, this looks good to ship then.


[Feature] Add Language switching

Description
Allow users to switch to their native language within Litewallet
Why?
Critical for Android Litewallet users since most of them speak non-English languages.
Layout

Screenshot

good！！Which branch，I didn't find it on GitHub

cc: @RyanPetter


Encapsulating body within a higher level object

I'm playing with the Tank demo and I would like to encapsulate a collision body within different objects, such as: target and bullet. This way when the bullet collides with a target, I can check what hit target (if the bullet, the tank or other) and react accordingly.
Unfortunately I can't seem to find the correct approach. When I iterate the body.potentials(); I can't backtrack to which object contained it and I can't seem to find a unique id that is assigned to a given body that I could use as reference.
Can you please advise on the correct approach?

You can set additional properties to the collision object.
So for example:
let bullet = system.createCircle(x,y,r)
let bullet.objectType = 'bullet'

Then when you are testing if your tank collides you can do something like
const potentials = this.tankCollision.potentials();
        for (const object of potentials) {
            if (this.playerCollision.collides(object, result)) {
                switch (object.objectType) {
                    case 'bullet':
                            this.takeBulletDamage(object.spellID);
                        break;
                      default:
                            this.x = this.playerCollision.x -= result.overlap * result.overlap_x;
                             this.y = this.playerCollision.y -= result.overlap * result.overlap_y;
                        break;
                 }})
}

Hope that helps.

Apologies for the late reply, this is very helpful thank you very much

Apologies for the late reply, this is very helpful thank you very much


Test Amplify PR Preview

If everything has been setup correctly, then this PR request should trigger TWO checks. One for GitHub actions to test the build, the second for displaying Amplify Preview link.

Sad


load predictor issue

Hi Amaiya,
I saved the predictor with predictor.save in colab, then I ran ktrain.load_predictor in my computer to load the predictor and I get the following error:
Call to keras.models.load_model failed.  Try using the learner.model.save_weights and learner.model.load_weights instead.
Error was:
Traceback (most recent call last):
File "Bert_Classifier_WS.py", line 16, in
predictor = ktrain.load_predictor(root_path + 'pred_bert_26.h5')
File "C:\Users\a2c-admin\AppData\Roaming\Python\Python37\site-packages\ktrain\core.py", line 1199, in load_predictor
raise ValueError('model must be of instance Model')
ValueError: model must be of instance Model
I pasted  in my computer the 2 files that I obtained by predictor.save in colab.
Any ideas about why I get this error?
Thank you in advance.
Emanuele

@emanueledirosa Make sure you have TensorFlow 1.14. I had the same problem with different version of TensorFlow

@njofce thanks this solved the issue about the loading of the predictor. But it shows another issue now while making the prediction.
Any ideas? The same code works well on colab.
pred = predictor.predict([query])
File "/home/xxxxx/.local/lib/python3.6/site-packages/ktrain/text/predictor.py", line 48, in predict
preds = self.model.predict(texts)
File "/home/xxxxx/.local/lib/python3.6/site-packages/keras/engine/training.py", line 1164, in predict
self._make_predict_function()
File "/home/xxxxx/.local/lib/python3.6/site-packages/keras/engine/training.py", line 554, in _make_predict_function
**kwargs)
File "/home/xxxxx/.local/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py", line 2744, in function
return Function(inputs, outputs, updates=updates, **kwargs)
File "/home/xxxxx/.local/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py", line 2546, in init
with tf.control_dependencies(self.outputs):
File "/home/xxxxx/.local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 5426, in control_dependencies
return get_default_graph().control_dependencies(control_inputs)
File "/home/xxxxx/.local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 4867, in control_dependencies
c = self.as_graph_element(c)
File "/home/xxxxx/.local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 3796, in as_graph_element
return self._as_graph_element_locked(obj, allow_tensor, allow_operation)
File "/home/xxxxx/.local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 3875, in _as_graph_element_locked
raise ValueError("Tensor %s is not an element of this graph." % obj)
ValueError: Tensor Tensor("dense_1/Softmax:0", shape=(?, 698), dtype=float32) is not an element of this graph.

@emanueledirosa after loading the predictor, call predictor.model._make_predict_function()


Always use dedicated cluster controllers when hosted (except in some …

…tests)
@hmusum please review, but do NOT merge yet :)

The intention here is to always use dedicated cluster controllers when hosted, but to continue writing this to data stores used by other config servers, potentially on lower version during upgrade.


Add missing repository_file link

Not sure if these are autogenerated or what, but the new github_repository_file resource in the latest release doesn't have a link in the docs sidebar. The doc page does exist though: https://www.terraform.io/docs/providers/github/r/repository_file.html

#378 looks more comprehensive, closing!

@mwarkentin thanks - I looked at open PRs but must have started work just before you submitted yours.
In any case - good spot! :)


A window with  AcrylicWindow.Enabled="True" cannot be snapped (multitask) in windows 10 tablet mode

The result is that in tablet mode you can't put your app with AcrylicWindow.Enabled side by side with other apps. There is no problem when the feature is off.

Hi, @tzurp.
I couldn't reproduce it.
Could you tell me more information?

You must test it with touch screen device in Tablet mode

I'm glad to here that 😄
Thanks.


/crazyflie/gazebo/command/motor_speed topic don't seem

I run crazyflie_world.sdf but I dont see /crazyflie/gazebo/command/motor_speed topic so, when I write  ign topic -t /crazyflie/gazebo/command/motor_speed --msgtype ignition.msgs.Actuators -p 'velocity:[2500,2500,2500,2500]' , nothing happend.

I use gazebo ignition garden, I solved the problem. I had to start the gazebo with the -r parameter

Great, then I'll close the issue

I wanted to subscribe to a topic that came with the ros2 bridge to the plugin code you wrote. How can I do that? How can I subscribe to a topic from Ros Bridge in an ignition gazebo?

The solution of the last comment is in https://github.com/bitcraze/crazyflie-simulation/issues/33


GetSet that uses php://input?

You've added getBody() to the Request in 0.12.7. But I expected a GetSet class reading the body as well.
There is the abstract class BaseInput with the excellent extractAndSetData(). Its constructor reads the request body and use setAll().
Now, three classes extend from this: Patch, Put, and Delete. These three have a $resource as well, meaning the setAll() will not do anything with the values from the body (see the if block there).
This means there is no GetSet class actually having the body values. I think this is a bug?
I am using axios for my ajax calls and axios uses a HTTP POST with a body. (Not sure why, though, but I like axios enough to keep using it as it flows nicely with vue.)
So... I could request the GetSet\Post extending BaseInput but that would not solve my problem.
Therefore, I think it would be very nice to have something like GetSet\JsonBody that extends BaseInput and does not have a $resource.

Quick response: setAll() only sets values when a resource is set. You seem to be doing the opposite?

Oops, missed something there... Yes, setAll() doest set the php::/input contents. But now I need it for a POST. Guess I have to create an extend on the GetSet\Post or a new one based on BaseInput. Anyway, thanks for pointing out what I got wrong! :stuck_out_tongue:

This feels like a totally valid thing to want to do, but outside of php's default way of working with POST data. Given how there's now 3 BaseInput and a bigger handful of Base GetSetters, I might look into consolidating the two ways of getting the data in there and perhaps making it configurable.
This would make it possible to tell POST to use (and interpret, like BaseInput does) the input stream rather than the default global values.

Configurable as in I have to choose once? I prefer to have both options all the time so different methods can use POST or body. It's just another way of accepting data, so Input lives next to Post, Put, etc. so I can check myself: if Post is empty I will check for Input.
Or an option that says: if the resource (_POST, etc.) is empty I will check whether the Input is a json.
This is a suggestion, of course. You decide and I'll live with that and build framework-non-essentials around it.

After talking it through over other means, we've come to the conclusion that the split for PUT/PATCH/DELETE is just for style and actually limiting this exact use case.
So the plan is as follows: Remove Put/Patch/Delete GetSetters, and replace them with a straightforward \Parable\GetSet\InputStream that can be used for loading the input body and parsing it like BaseInput currently does.
This'll make it far more useful.

That'll work. To be honest looks nicer at a framework level! It does what it says and nothing more - I like that. Now you leave it up to the devs to create a Put/Patch/Delete GetSetter from the InputStream if they really want it. :)

Completely forgot to close this. Should be fixed in commit f6cdfd58a20d99f2d7397cc8c54cbcc49a77b61a, which was released as 0.12.9.
By now we're already at 0.12.10, which offers $getSet->get("one.two.three"); functionality as well.
This issue spurred some critical thinking about how the GetSet component works, and it's improved as a result :)


import.meta.url error in .mts files

Bug Report

🔎 Search Terms
import, imoprt.meta, nodenext

🕗 Version & Regression Information

This is a crash
This changed between versions 4.5 and 4.6
This is the behavior in every version I tried, and I reviewed the FAQ for entries about ECMA Script modules in Node.JS
I was unable to test this on prior versions because there is nothing about it

⏯ Playground Link

4.5.5 - playground
4.7.4 (both .ts and .mts filex) - playground
💻 Code

// .mts file
import.meta.url

🙁 Actual behavior
error TS1470: The 'import.meta' meta-property is not allowed in files which will build into CommonJS output.

🙂 Expected behavior
It compiles

You did not set module: NodeNext in your playground.
Playground

@Josh-Cena module=199 is in fact part of the playground URL; it looks like the same bug that causes it to select ES3 in the dropdown when it's actually targeting ESNext.  Manually selecting NodeNext doesn't fix the error.

Looks like a playground bug. You have to select NodeNext, then unselect it, then select it again.
https://user-images.githubusercontent.com/55398995/178129146-1d3f37a4-e4af-4d12-959c-6c7b1a932a77.mov

Confirmed this works fine from actual tsc; it does appear to just be the website

getting the same error with minimal typescript config:
{
  "compilerOptions": {
    "module": "NodeNext",
    "target": "es5",
    "noEmit": true,
    "types": ["cypress"]
  },
  "extends"<EMAIL_ADDRESS>  "include": ["vite.config.ts", "cypress.config.ts"]
}

I am seeing this issue with these settings:
{
    "compilerOptions": {
        "strict": true,
        "module": "NodeNext",
        "moduleResolution": "Node",
        "jsx": "react-jsx",
        "esModuleInterop": true,
        "types": ["vite/client"],
    },
  }

I'm on TypeScript 4.7.4

I'm facing the same issue in VSCode with following settings:
{
  "compilerOptions": {
    "target": "esnext",
    "lib": ["dom", "esnext"],
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "module": "NodeNext",
    "moduleResolution": "NodeNext"
  }
}

Following error messages are displayed by VSCode:
// Cannot find module 'pretty-ms' or its corresponding type declarations.
import ms from "pretty-ms";

// The 'import.meta' meta-property is not allowed in files which will build into CommonJS output.ts(1470)
console.log(import.meta.url);

TypeScript version: 4.7.4

Same for "module": "Node16", just in case. Looks like SourceFile.impliedNodeFormat is wrong, somehow?
https://github.com/microsoft/TypeScript/blob/38e91fb12099b526e9a2cb5ad6aacfc89d5060ca/src/compiler/checker.ts#L32468

Can confirm 👍

@navya9singh I'm using the just released typescript v4.8.4 and still face this issue. I also don't see how a fix inside the ts website's source should fix an actual typescript issue. I'd vote to reopen this ticket.

I'm also running into this issue with typescript 4.9.4. compiler options include:
  "compilerOptions": {
    "strict": true,
    "target": "ES2021",
    "module": "Node16",


Add support for create/update individual ruleset rules

Description
This PR extends the ruleset.go and adds two new methods CreateRulesetRule and UpdateRulesetRule. The code was only slightly modified from the corresponding ruleset methods. This when merged closes #1211.
Has your change been tested?
The changes have been tested both using automated tests run locally (everything passing) and against a live CF Zone WAF API (not account API). Further, the new methods are also covered by two new tests.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the code style of this project.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] This change is using publicly documented in cloudflare/api-schemas
and relies on stable APIs.

thanks for the PR! as v2 is just around the corner, instead of merging this, can you see if ruleset.Rules covers what you're after here?

thanks for the hint I will definitely check out v2 now. When you say "around the corner" what are we talking about in terms of time? I know estimates are a tricky but just to get a rough understanding.

you can use it today, see https://github.com/cloudflare/cloudflare-go/discussions/1538
it's just waiting for us to clean up a couple of UX improvements and slap a GA label on it.

Okay so I looked into v2 and while it looks great, I am afraid that the functionality this PR would introduce is either missing or then  I can't find it.
What is the functionality I am looking for?
We need to be able to CRUD individual rules in a WAF ruleset without updating the entire ruleset.
Otherwise, to my understanding we could be running into race conditions in which two individual clients are performing an ruleset update (please correct me if that is wrong).

the link i provided above is for managing individual ruleset rules - the same as the PR you've proposed. you can confirm this by looking at the HTTP method and the path called.
as for your issue or concurrency, it exists in a ruleset and rule and neither will mitigate it because the backing service doesn't offer concurrency flags or a locking mechanism. you can still have two HTTP calls to the same resource which will result in a race condition; that is something you'll need to mitigate within your own coordination.

Maybe you could point me to the methods that can be used to updating the zone WAF rules, since I only manage to find the methods that use the accounts endpoint, but not he zone endpoints (searching for zones/%s/rulesets does not return any results for me).
Thank you very much!

see ruleset.Rules - if you provide an account identifier, it uses that, otherwise if you provide a zone ID, it will use that instead.

closing as v2 has this functionality today and you can use them alongside one another if needed.


How to use azure.cn Cognitive Services Speech Services?

🚨 The issue tracker is not for implementation questions 🚨

[Question]
How to use azure.cn Cognitive Services Speech Services?

'How to' questions such as this one are better suited for Stack Overflow. Please feel free to post other questions you have about developing your own features over there so the community at large may help out. If you need help with a Web Chat implementation, you can post a question to the Web Chat tag. Thank you!

'How to' questions such as this one are better suited for Stack Overflow. Please feel free to post other questions you have about developing your own features over there so the community at large may help out. If you need help with a Web Chat implementation, you can post a question to the Web Chat tag. Thank you!

OK,Thanks


Help!

Describe your bug here.
Help
Command Prompt/Terminal logs (if existing)
Error: Could not find include file "4.2.1/build-tool/BuildCommon.xml"

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
I edited project.xml and funkin.lua to include .cpp files cause i got bored

Change the include folder to your Haxe version, perhaps.

Change the include folder to your Haxe version, perhaps.


Fix a potential null dereference when obtaining camera extrinsics in …

…MediaFrameReaderContext::FrameArrived.

@polszta,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Full Disk Access does not stay checked

I have an app created to run a bash shell script that starts my VPN connection. The shell script runs just fine by itself with no prompt for access to files/folders. However, when I created an app using Platypus it always prompts for access to my documents, desktop, and downloads folders. I have given the app full disk access in the privacy and security section but that setting does not stay checked. When I run the app I can see that the full disk access option is getting turned off automatically. Any thoughts as to what is going on?

 That would be my guess, but for the record, what macOS version are you using?

My MacOS is version 13.2.1.
A couple of notes though:

This was working fine until a recent change by our IT department to do some security posturing checks for IT compliance during the VPN connection.  It is  these checks that are causing the problems.
Running the underlying shell script by itself from the terminal also does the security checks but does not have any prompts for file/folder access.
The shell script in turn runs /opt/cisco/anyconnect/bin/vpn to start the VPN if that tells you anything.

One thing you could try is removing the settings from Privacy/Security, quitting and restarting System Prefs, then reading. Sometimes if the app name has not changed but the bundle id has System prefs can get a bit confused. Quitting and restarting it forces it to refresh its cache.

Sorry to resurrect an old thread, but I'm having this issue as well. I granted full disk access, yet every time the script runs via my Platypus app, it asks for permission to access the documents folder. Two differences from OP. I'm running 14.1.1 and my full disk permission toggle stays on, but it still asks me every time. If it makes a difference, I have the app set to run at login.
Thanks!