Migrate to docker-java-3 with netty

This change is

@kyhavlov could you try this version? Better experiment not in production or you can simply run with mvn hpi:run from yet-another-docker-plugin maven module (but firstly run mvn package on the root of sources).

[Current coverage][cc-pull] is 40.14%

Merging [#30][cc-pull] into [master][cc-base-branch] will increase coverage by 10.62%

5 files (not in diff) in .../kostyasha/yad/utils were modified. more

Misses -16
Partials -3
Hits +19

3 files (not in diff) in ...ostyasha/yad/commons were modified. more

Misses -3
Partials -9
Hits +12

7 files (not in diff) in ...github/kostyasha/yad were modified. more

Misses -22
Partials -13
Hits +35

3 files in ...styasha/yad/launcher were modified. more

Misses -14
Partials -2
Hits +16

2 files in ...ostyasha/yad/commons were modified. more

Misses -34
Hits +34

2 files in ...kostyasha/yad/client were modified. more
4 files in ...github/kostyasha/yad were modified. more

Misses -25
Partials -7
Hits +32

@@             master        #30   diff @@
==========================================
  Files            38         37     -1
  Lines          1392       1405    +13
  Methods           0          0
  Messages          0          0
  Branches        164        169     +5
==========================================
+ Hits            411        564   +153
+ Misses          944        841   -103
+ Partials         37          0    -37

Powered by Codecov. Last updated by [56797a3...da6a8f3][cc-compare]
[cc-base-branch]: https://codecov.io/gh/KostyaSha/yet-another-docker-plugin/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/KostyaSha/yet-another-docker-plugin/compare/56797a3113d21a3576d5c57af5cadba2f446711c...da6a8f30d0f48dc21ff42933b5986f83e232b5c7
[cc-pull]: https://codecov.io/gh/KostyaSha/yet-another-docker-plugin/pull/30?src=pr


⚠ Bofrost.es has degraded performance

In 4539640, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1956 ms

Resolved: Bofrost.es performance has improved in f5f1335 after 9 minutes.


by allowing soft placement into keras, we can run whole keras model u…

…sing tensorflow's "with("/:gpu42")" syntax

Ok, sounds good! Thanks.


[FLINK-13450][table api] Use StrictMath instead of Math for exp

What is the purpose of the change
Some math calculation result is different between x86 and aarch64 because of hardware optimizations.
For exmaple, the Math.exp(1)
on X86 is      2.718281828459045
on aarch64 is  2.7182818284590455

Use StrictMath can keep the result the same.
Brief change log
Add a new exp functino to use StrictMath instead.
Verifying this change
This change is already covered by existing tests, such as testArithmeticFunctions.
Does this pull request potentially affect one of the following parts:

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

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@StephanEwen, Hi, this is another place that impact flink-table-planner unit test. Please help review. Thank you very much.

Looks good to me, +1
Will merge once the CI builds are green.

@StephanEwen Thank you :)


Consider supporting conditionals

It's not support of ECMA 376, but Excel, Google Sheets and ssf all support them and it seems to be a relatively easy feat. It's very useful for the typical k-m-b formatting:
E.g.: [>=950000000]0.#,,"B";[>=950000]0.#,,"M";[>=950]0.#,"k";0.##

Can you give more info on this?
The README doesn't mention the conditionals, the linked Microsoft website barely say anything about the conditionals, giving 1 pretty simple example

Specify conditions
To specify number formats that will be applied only if a number meets a condition that you specify, enclose the condition in square brackets. The condition consists of a comparison operator and a value. For example, the following format displays numbers that are less than or equal to 100 in a red font and numbers that are greater than 100 in a blue font.> [Red][<=100];[Blue][>100]

My example is valid in google sheets and ssf, but not in Excel, which, again, doesn't give any hint what's wrong with the format.

I don't know how you get Google Sheets to accept this but they are refusing it for me:

So if SSF accepts this then I'd call that a bug. 🤷
I've added some minimal text about conditionals to the README, including the rules that govern the pattern sections.
Basically your pattern is violating two rules:

There is a maximum of 2 conditions.
There text section must not contain numerical or date operators.

Conditions effectively makes the pattern work like this:

Condition 1
Condition 2
Else number (used when input is number)
Else text (used when input is non-number such as text or bool)

So you can really only add conditions for section 1 and 2. The third must be a "else case" for numbers, and the fourth is an else case for when input is not a number.


Searching decks with different versions of characters

If you are trying to search for decks with the new version of Catelyn Stark (wotn) for example, the search proposes you 2 Catelyn Starks, which both lead to decks with only core set Catelyn. I believe it's the same with all same named characters with different versions.
So maybe adding (core), (wotn) etc. for different versions.

Just care here to report this same bug.
The newly released Riverrun made me wonder if people had any success with Tully/Sacrifice decks.

Closed with https://github.com/Alsciende/thronesdb/commit/0c15f2171ee7e70ee0b99d860a4eaee0391852cc


feat: allow datafusion-cli to accept multiple statements

Which issue does this PR close?

Closes #6793.
Rationale for this change

What changes are included in this PR?
This PR allows datafusion-cli to accept multiple statements.
Are these changes tested?

Are there any user-facing changes?

🤔  something happened to make CI fail. Perhaps that is what @r4ntix 's comments are about

Right now I guess that the integration tests pass, and I added a new integration test to them.

Thanks again everyone -- this is a great contributon @NiwakaDev 🦾


Updates for Swift 3 Compatibility

ready for review
Addresses issue: #1
Risk
This pull request makes minor API changes.
Summary
Updates to the pod and sample project to support projects built with Swift 3.
Changelog
Breaking Changes

Functions renamed: logEvent() -> log(event:), filterEvent() -> filter(event:), processEvent() -> process(event:), registerAnalyticsProvider() -> register(analyticsProvider:), etc.

Enchancements
None
Bug Fixes
None
Tasks Remaining:

[x] Testing
[x] Cocoapods updates

Updated Podspec & Tested. New version 0.3.0 for swift 3 support.
Also updated some xCode settings and the included providers to be 0.3.0 compliant.


Feat/add apify integration

Description
Implement functionality to retrieve Apify datasets and call Apify actors/tasks.
See slack thread for details
This integration is heavily inspired by the LangChain integration, specifically apify_dataset.py and apify_wrapper.py
Key differences:

In LangChain, the ApifyWrapper class has a method to call actors with parameters like actor_id, run_input, and dataset_mapping_function cf. call actor.
In Haystack, these parameters are moved to the class constructor. This change is made for the following reasons:

Passing arguments to a function in the Haystack pipeline is cumbersome (basically, one needs to pass dict to a function). It is more convenient to create a class instance with predefined parameters, add it as a pipeline component, and then call the run function.
Haystack users might prefer to run actors similarly to how it is done in the UI: select an actor, define input, and run.

CI/CD was copied from crawlee
Plan:

Add unit tests
Add a key-value store loader

Testing
Manual
Checklist

[x] Changes are described in the CHANGELOG.md
[x] CI passed

Kubo, I apologize for the extra commits and the noise I have created in your inbox 🙄


Tag icon after updating to FontAwesome 5.8

It looks that the new update to FontAwesome 5.8 has broken the tag icon.

Fixed in #971, could you double check it works for you in that branch?

It does work fine, thanks @bocharsky-bw

Thank you for the feedback!


#1081 Issue: Refactor build.sh

 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.

Don't make such "typo fix" PRs.


[Task]: Transaction ID

Task description
I have transferred 368.5 IOTA from Firefly to an exchange and need the Transaction ID to complete the transfer. Where do I find the Transaction ID on Firefly?
Thankyou

You can get the ID by clikcing "view on explorer" when you open the tx details in firefly, the explorer has the ID


Doc fix: Change "download_model" to "download_models"

Checklist

[x] I've given this PR a concise, self-descriptive, and meaningful title
[ ] I've linked relevant issues in the PR body
[ ] I've applied the relevant labels to this PR
[ ] I've added relevant tests for my contribution
[ ] I've updated the documentation and/or added correct docstrings
[ ] I've assigned a reviewer
[ ] I've consulted ADS's internal developer documentation to ensure my contribution is in line with any relevant design decisions

Description

The documentation currently says to the users to call download_model, however our actual CLI command is download_models. As a simple fix, we can simply update the doc; however, it is a bit inconsistent that in actuality, our python module name is download_model (and makes more sense, since we can only download one model at a time I believe). So maybe changing the CLI command would be a better solution considering we're releasing 5.0 soon (this would require more changes though in the tests, installation, and CI files). Open to opinions/discussion
Linked issues

#829

coverage: 94.575%. remained the same
when pulling e0cbef211da97376946c1f7246595c82a0c34277 on mb/doc_fix
into 35d783c8edbb75f19f6c2ae33b2a30043252b4fa on master.

Yeah I agree it should be the other way around.

So maybe changing the CLI command would be a better solution considering we're releasing 5.0 soon (this would require more changes though in the tests, installation, and CI files). Open to opinions/discussion.

Should we do this right now or merge this as a temporary fix and then open a new PR?

Should we do this right now or merge this as a temporary fix and then open a new PR?

I think we should do this now - let me see if I can catch all instances quickly

@hermancollin I went that route and updated all the files (did a replace all in VS code), the tests pass so I think it would be safe to merge.


Please Grade Hw5 thank you

@ryarza and @tangyao1123
Trapezoid and Simpson's evaluations were around 100+
For Romberg, it took around 20-22 iterations.

Graded!


use static_url_prefix for mathjax_url

Works when server is run on a prefix, rather than assuming base_url == /, e.g. JupyterHub which doesn't currently load mathjax right now.

Thanks!

Released as 0.2.3


(Some) tests are not run in VS 2022

(Some) tests are discovered but not run in Visual Studio 2022 (17.6.5) w/ dotnet 7.0.306

Might be related to https://github.com/xunit/xunit/issues/2540#issuecomment-1193481298

While trying to figure out what is wrong I've published a hotfix.
Please bear with me while I learn 😅


Update tests for Swift 2

This cannot be built with Carthage using Xcode 7.x because the tests are written against Swift 1.x.

PRs welcome :)

This was done at some point. I can build just fine via Carthage and Xcode 7.2


Exclude / tree-shake Blueprint icon package dependency

This PR implements the solution discussed in this issue:
https://github.com/xh/hoist-react/issues/1963
This change requires the code change made to hoist-dev-utils in this branch:
https://github.com/xh/hoist-dev-utils/tree/noBluePrintIcons
for which there is also a PR: https://github.com/xh/hoist-dev-utils/pull/25
Hoist P/R Checklist
Pull request authors: Review and check off the below. Items that do not apply can also be
checked off to indicate they have been considered. If unclear if a step is relevant, please leave
unchecked and note in comments.

[x] Caught up with develop branch as of last change.
[ ] Added CHANGELOG entry, or determined not required. -- A CHANGELOG entry has been added to Hoist-Dev-Utils.
Once that is released with a new version number, and this project is updated to use that new version, maybe a
changelog entry should be added here.
[ ] Reviewed for breaking changes, added breaking-change label + CHANGELOG if so.  -- This should not be breaking change.
[ ] Updated doc comments / prop-types, or determined not required.
[ ] Reviewed and tested on Mobile, or determined not required.
[ ] Created Toolbox branch / PR, or determined not required.

If your change is still a WIP, please use the "Create draft pull request" option in the split
button below to indicate it is not ready yet for a final review.

Pull request reviewers: when merging this P/R, please consider using a squash commit to
collapse multiple intermediate commits into a single commit representing the overall feature
change. This helps keep the commit log clean and easy to scan across releases. PRs containing a
single commit should be rebased when possible.

Here is a screenshot of the icon search I did to determine which icons to put into static/blueprintIconSvgPaths.js


Skip pagination when run cfy dep group extend --into-environments

Command cfy deployment group extend --into-enviroment env-group test-group only extend 1000 deployments when the env-group have more than 1000 deployments
$ cfy dep group create -b blueprint_id -i auth_url="http://myserver/v3" env-group
Group env-group created
$ cfy dep group extend --count 1050 env-group
Group env-group updated. It now contains 1050 deployments
# Wait until all executions are completed
$ cfy exec summary status
$ cfy exec group start install -g env-group
# Wait until all executions are completed
$ cfy exec summary status
$ cfy dep group create -b tester-blueprint test-group
Group test-group created
$ cfy dep group extend --into-environments env-group test-group
Group test-group updated. It now contains 1000 deployments

After some investigation I realize the endpoint has a default pagination that limit the query, so i added a parameter in the request to ignore the pagination in this case.

https://cloudifysource.atlassian.net/browse/WDR-156


Install dependencies by using a requirements.txt

Consider adding in the root directory a requirements.txt file that contains all required dependencies, instead of installing each package individually. Then run: pip install -r requirements.txt.

Hi Abhinav,
Thanks for the recommendation. I will try adding that with specific version
requirements as well.
Regards,
Rohan
On Tue, Nov 24, 2020 at 12:46 PM Abhinav Bandari<EMAIL_ADDRESS>wrote:

Consider adding in the root directory a requirements.txt file that
contains all required dependencies, instead of installing each package
individually. Then run: pip install -r requirements.txt.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rohanrao619/Social_Distancing_with_AI/issues/3, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ALF7LJ5H5HGSMC2UPAVWOQDSRNMVHANCNFSM4UAPQGKQ
.


BUG: Curve lending  - missing ability to add tokens to lending bot that will be added as collateral later

When a bot is started and additional collateral tokens are selected (see screenshot), the collateral should be deposited into the users lending bot contract and only be used later when health is lower than the health threshold. Currently, the tokens are swapped immediately and added to the bot. The point for adding more collateral in the beginning is to have a reserve that is only used when needed to keep the loan healthy.

Done when

[ ] we have a deposit collateral function that allows users to deposit additional collateral tokens into their contract, but is not added to the curve loan
[ ] the add collateral function can use these tokens when this condition is met and the backend script triggers add collateral https://github.com/VolumeFi/curve-lending-bot/blob/main/curve-lending.js#L436
[ ] when users repay their loan all collateral is returned (the one that is in the curve loan and the unused reserve)
[ ] This bot is using the new job format, see background here https://www.notion.so/volumefi/EPIC-11-14-Upgrade-all-bots-7679e5ad44224218bd422a908ecc4292?pvs=4

You can add more collateral later.
https://github.com/VolumeFi/curve-lending-bot-vyper/blob/c0c65886715ca645a085e8606fe95def487d7e65/contracts/factory.vy#L190
When you put 0 in lend amount, the collateral token remains in the bot contract.
@verabehr

@wc117 if I understand you correctly, with the current contract, a user is able to create a loan and add additional collateral tokens that are NOT immediately swapped?
So then this is a frontend issue that @jamie088 needs to address?

@jamie088 will you please confirm that the FE currently does this when I put 1 ETH in the "collateral token" and 1 ETH in the "add more collateral token" field
-->
create a loan with 2 ETH in swap amount, 1 ETH  as a lend amount, 1000crvUSD as a debt, 1000crvUSD as a withdraw amount. Isn't it enough
further discussion here https://discord.com/channels/987730379182051408/1065140873811218532/1175179322550653118

As discussed on Discord and in SS, the additional collateral tokens shoud NOT be added to the loan right away. Instead, they should be kept in the smart contract as reserve and only be swapped and added to the loan if the "add_collateral" function is called from the backend script.

@wc117 status?

Closed as done.

https://github.com/VolumeFi/curve-lending-bot-vyper/pull/8


[Request] Animation Improvements

The current animation system is;
Melee Items: One animation hit.
Ranged Items: Random number of animation hits.
While I love the default 'random number of animation hits' for ranged items, it'd be beneficial if we had more control over the behavior.
This could be accomplished by letting us choose if the animation triggers "once" or a "random amount of times". Perhaps even a numerical entry field like "2" or "4" times?
Having this control would open up options for ranged items to be locked down to "once" when it makes narrative sense, as well as allowing melee items to be shown off in a flurry of blows. (However, ranged animation effects usually look better when looped multiple times- melee animations may not look as well given the same option.) In any case this would still be a win for ranged effects.

Done, will be released in 0.2.8. Thanks for the suggestion!


Set Up Branch Protections

I accidentally pushed to the master branch but usually have it set to be protected.

I tried setting up some branch protections on master but I was still able to commit and push to master. The UI and options has changed vs. what I used before.

I guess the devs taking this over can do what they want in the mean time. I removed all restrictions to merging in code.


Journal of Open Source Education publication?

Hey, I have recently been made aware of a new journal, the Journal of Open Source Education (JOSE). It is similar to the Journal of Open Source Software (JOSS) in that the code, itself, is the publication. We simply need to provide a one-page intro to the project (which I should have no trouble writing on my own). I am considering publishing the Algorithm Archive in JOSE because it provides a citable reference so people can use the Algorithm Archive in their own projects.
To be clear: publishing the Algorithm Archive in JOSE does not restrict us from printing a version and publishing in that way later on.
I am curious to hear what you guys think:

Is publishing in JOSE a good idea? Why or why not?
If we do publish in JOSE, how do we determine who is on the author list?
Are there better places to publish the AAA? Should we just wait for a physical copy?

The way I see it, the most up-to-date version of the AAA will always be online, so it makes sense to have a citable online reference. If we do decide to submit to JOSE, there is a lot I would like to do before-hand... so there is time to discuss.

I like the idea to get the AAA out there in a more official way.
Regarding the authors: You are obviously the main author, but in my opinion all contributors are authors as well, so I would include them.
The question is however, how this can be done, since the author list would be dynamic.

Maybe stating you as the author and providing a link to the CONTRIBUTORS.md would be an option?
If the document can be updated, putting the authors in the .pdf could also be done. I imagine that to maybe get quite messy / long tho, but it would give a more direct attribution / appreciation.

Thanks for the tags.
We can probably publish with Schloss et. al. and explain the et. al. can be found int he CONTRIBUTORS.md file. I feel like the development team should also be considered primary authors, though, especially @julianschacher , @Butt4cak3 , @Gathros , etc.

Since this was put on hold indefinitely, I'm closing it for now, feel free to reopen it later.


Support phetioDocumentation for input listeners

In molecule-polarity, TriatomicMoleculeNode has 5 DragListeners, each of which manipulates some aspect of a complicated molecule.  Because DragListener is not a PhetioObject, it's currently not possible to add phetioDocumentation to describe these listeners.   So there can be no description of these listeners displayed in Studio.
Here's what the TriatomicMoleculeNode looks like. All of the atoms and bonds are individually draggable.

And here's the documentation that I added, before discovering this issue:
    const atomBDragListener = new MoleculeAngleDragListener( molecule, this, {
      phetioDocumentation: 'dragging atom B rotates the molecule',
      tandem: options.tandem.createTandem( 'atomBDragListener' )
    } );
    atomBNode.addInputListener( atomBDragListener );

    const bondABDragListener = new MoleculeAngleDragListener( molecule, this, {
      phetioDocumentation: 'dragging the bond that connects atoms A and C rotates the molecule',
      tandem: options.tandem.createTandem( 'bondABDragListener' )
    } );
    bondABNode.addInputListener( bondABDragListener );

    const bondBCDragListener = new MoleculeAngleDragListener( molecule, this, {
      phetioDocumentation: 'dragging the bond that connects atoms B and C rotates the molecule',
      tandem: options.tandem.createTandem( 'bondBCDragListener' )
    } );
    bondBCNode.addInputListener( bondBCDragListener );

    const atomADragListener = new BondAngleDragListener( molecule, molecule.bondAngleAProperty, atomANode, {
      phetioDocumentation: 'dragging atom A changes the angle of the bond that connects atoms A and B',
      tandem: options.tandem.createTandem( 'atomADragListener' )
    } );
    atomANode.addInputListener( atomADragListener );

    const atomCDragListener = new BondAngleDragListener( molecule, molecule.bondAngleCProperty, atomCNode, {
      phetioDocumentation: 'dragging atom C changes the angle of the bond that connects atoms B and C',
      tandem: options.tandem.createTandem( 'atomCDragListener' )
    } );
    atomCNode.addInputListener( atomCDragListener );

Should it be possible to add phetioDocumentation to input listeners?  If not, how is the instructional designer supposed to understand what they do?
This is probably a good topic to discuss with designers, so assigning @arouinfar.

Some options:
(a) Make PressListener extend PhetioObject so it and its subclasses can be instrumented.  This would mean instrumenting something only for the sake of phetioDocumentation, and may be confusing why it is documented.
(b) Pass through phetioDocumentation and possibly other options to the children.  Or add a phetioDocumentationPattern that is used to fill in child documentation.
(c) Add pressActionOptions, releaseActionOptions etc using the nested options pattern.  This would end up duplicating data between the different actions.
(a) seems preferable, but I'd like to hear @zepumph's recommendation and whether we have other options.

We also have run into this in https://github.com/phetsims/axon/issues/412. @pixelzoom do we still wish there was phetioDocumentation for PressListeners?

If we need to, then EnabledComponent will need to extend PhetioObject since it is unfortunately no longer a mixin, which will have great consequences for ButtonModel. Likely we will need to pick up the patch in  https://github.com/phetsims/axon/issues/412#issuecomment-1271884484, and I'm unsure how much effort that is worth. Unless this is a huge bummer to not have phetioDocumentation, I recommend closing this issue.
That said, I'm on the side of PhET-iO work where instrumenting an object just for phetioDocumentation will probably never feel very fruitful (developer bias). Let me know what you need

As I said in https://github.com/phetsims/scenery/issues/1166#issue-820574667:

This is probably a good topic to discuss with designers, so assigning @arouinfar.

I don't see any evidence that this has been discussed with a designer.  And @arouinfar said in https://github.com/phetsims/axon/issues/412#issuecomment-1244604623:

I don't think listeners always need documentation, but there are definitely cases where it is useful, such as molecule-polarity. It seems like optional documentation would be helpful here.

... where "such as molecule-polarity" is what resulted in this issue and https://github.com/phetsims/axon/issues/412. So again... please discuss with a designer.
That said... The phetioDocumentation for listeners shown in https://github.com/phetsims/scenery/issues/1166#issue-820574667 has been in place for 2+ years.  It's not hypothetical, it was requested.   But I guess I should rip it out, since it's not passed to anything, and it's not displaying in Studio.  @arouinfar FYI, I'm going to remove it.


Notification has empty text

Related to #663
When one alert trigger multiple alarms, the description is blank.
Alert

Notification

Hipchat config on alert manager
global:
  resolve_timeout: 5m
route:
  group_by: ['job']
  group_wait: 30s
  group_interval: 1m
  repeat_interval: 1m
  receiver: 'webhook
  routes:
  - match:
      severity: 'critical'
    receiver: 'hipchat'
receivers:
- name: 'webhook'
  webhook_configs:
  - url: 'http://alertmanagerwh:30500/'
- name: 'hipchat'
  hipchat_configs:
  - room_id: '111'
    message: 'Description: {{ range .Alerts }}{{ .Annotations.description }}\n{{ end }}'
    notify: true
    send_resolved: true
    auth_token: '11111'

If i change the message to  message: 'Description: {{ range .Alerts }}{{ .Annotations.description }}\n{{ end }} ,  I  receive the correct message

Yeah, that is behaving as intended.
If you group multiple alerts into a single notification that have different values for the same annotations, then those will annotations will not be "common" anymore (as they differ). So if you include e.g. the device and instance labels in your description, the description annotation will not be in CommonAnnotations anymore, only in the Annotations of the individual alerts. So you can choose whether to formulate your annotations in such a way that they will not change within a notification and use CommonAnnotations, or you can put per-alert details in the annotations, but then you have to range over the alerts to get their individual annotation values.


IPv6 support (multicast and MAC address filtering)

Depends on upstream issue georgerobotics/cyw43-driver#18
See my downstream work so far in earlephilhower/arduino-pico#732

Marking as complete - reopen if you disagree.


[SUP1-191] Document field mappings/values between Supaglue common model and CRMs schemas (copy)

E.g. closedwon stage in HubSpot should be an enum not string cc @albertyfwu
Otherwise will run into validation error on HubSpot side.
Is the closedwon comment a separate task? It sounds like we want to:

Document field mappings/values.

Change our Opportunity common model's status field (which maps to hubspot stage) to be an enum not string.

If that's the case:

For documenting, why can't we just link to the mapping file for now? Any person who really cares while using this product is an engineer. Not all mappings are straightforward where field foo maps to field bar. Some of them are collected into lists, deduped, etc. The code is not that hard to read. For example: https://github.com/supaglue-labs/supaglue/blob/main/packages/core/remotes/crm/hubspot/mappers.ts#L150

We can't make it an enum because people can have their own custom stages (like in Salesforce). We should either keep it a string or do what merge.dev does and have a separate common model to keep track of the stages (which can be custom).

From SyncLinear.com | SUP1-191

Migrated to internal project management tool.


lower object percentage using -quantized

Hi, AlexeyAB,
Thank you for the work on quantized version.
I'm trying INT8 with -quantized option with yolov3-tiny cfg/weights on dog.jpg
and get much lower percentage on -quantized option
yolov3-tiny without -quantized get dog/bike/truck = 81%/38%/62% (72% on car)
while yolov3-tiny with -quantized dog/bike/truck = 51%/13%/61% (I set threshold to 0.1 to find bike...)
Is this correct?
What makes this difference in the quantized version?
Any suggestion about fixing this difference?
Thanks

@trustin77 Hi,

Is this correct?

Yes.

What makes this difference in the quantized version?

Range of float32bit-values is more than range of int8bit-values, so some of values that are more than 127 are changed to the 127 (i.e. these values are reduced - so final values will be reduced too), it is called - saturation: http://on-demand.gputechconf.com/gtc/2017/presentation/s7310-8-bit-inference-with-tensorrt.pdf

Any suggestion about fixing this difference?

I recommend to use lower threshold for INT8 -thresh 0.15 than for Float32 -thresh 0.25

@AlexeyAB thanks for your response,
for the saturation problem, I have read the discussion you had with others around here:
https://github.com/AlexeyAB/darknet/issues/726#issuecomment-429304218
It shows the saturation issue comes mainly from the input calibration scale size? (data saturates when scale too much that causes lower percentage)
Can I say that  yolov3 has close detection percentage w/wo quantization results from a good input_calibration number, while yolov3-tiny.cfg uses not good enough input_cali nums that creates bad results in quantized version?
If so, how can I get better input_calibration nums for yolov3-tiny.cfg?

Hi, @AlexeyAB
Thanks for explanation,
How can I get these files: data/obj.data, yolo-obj.cfg, yolo-obj_10000.weights ?
They're not included in yolov2_light files
And what does "100" after -input_calibration mean?

How can I get these files: data/obj.data, yolo-obj.cfg, yolo-obj_10000.weights ?

You should create data/obj.data, yolo-obj.cfg and train yolo-obj_10000.weights by yourself if you want to use custom model: https://github.com/AlexeyAB/darknet#how-to-train-to-detect-your-custom-objects
Or for default yolov3-tiny.cfg use:

https://raw.githubusercontent.com/AlexeyAB/darknet/master/cfg/coco.data
https://raw.githubusercontent.com/AlexeyAB/darknet/master/cfg/yolov3-tiny.cfg
https://pjreddie.com/media/files/yolov3-tiny.weights
And download MS COCO dataset as described here: https://pjreddie.com/darknet/yolo/

And what does "100" after -input_calibration mean?

It means that will be loaded 100 images from train.txt that is specified in obj.data file, and optimal input_calibration will be calculated for this 100 images, then you will see average input_calibration parameters for each [convolutional] layer.

Hi, @AlexeyAB
ok, I will try to recalculate input_calibration
When I was testing yolov2-tiny -quantized, it cannot find any objects in photo.
has the input_calibration value in yolov2-tiny.cfg been calibrated?
Or there're other possible causes?
Thanks

Hi, @AlexeyAB
I reduced train.txt and 2007_test.txt into 700 cases separately and tried ./darknet detector map data/obj.data yolov3-tiny.cfg yolov3-tiny.weights to check the mAP value.
it ran over all the cases and and it got segmentation fault on displaying the percentage of different classes.
Could you check this out for me? Thank you.


Reading Document IDs (GIFs)?

So, I can get image IDs like this:
var file = await Bot.GetFile(User.Message.Photo.LastOrDefault().FileId);
But I don't know how I do this with documents, any ideas here?

var file = await Bot.GetFile(User.Message.Document.FileId);
Seems to be everything, just no ``.LastOrDefault()`
Can someone tell me what that's good for tho?

Message.Photo is an array, so LastOrDefault() gets the last element in the array.
Document is only a single Document


done and publish enhancement

This will make done and publish accept an optional branch name instead of hard-coding master.

Neato, thanks


Text Alignment

Solved and added to the Repo : https://github.com/jarvismayur/Hackerrank-Problem-Solutions/blob/main/Python/Text Alignment/Text_Alignment.py


Fix for the issue when there are some spaces (paddings) between blocks (pixels)

After generating an SVG QR code I noticed one issue when resizing the code in the browser:

As you can see, there are some spaces. I spend some time trying to understand why this happened, but no luck. This bug (?) was there don't matter what I was doing.
So, my solution is quite interesting: I counted the blocks count on the code. There were 37 blocks. Then I multiplied it by 10 and had 370px. I am not sure how it worked. I am not even sure if there was really 37 blocks. But it works perfectly now. It does not matter how small / big my SVG is, there are no spaces now.
Just decided to post it here in case.

@mrself Thank you, hope this helps anyone having the same issue.


Add Graphweaver Stack

For all PRs

[x] I read the Contribution Guide

For new stacks

[x] I followed the do's and don'ts
[x] This stack does not already exist

@steve-keep Thanks!


[SPARK-39516][INFRA] Set a scheduled build for branch-3.3

What changes were proposed in this pull request?
This PR creates a scheduled job for branch-3.3.
Why are the changes needed?
To make sure branch-3.3 build fine.
Does this PR introduce any user-facing change?
No, dev-only.
How was this patch tested?
This is a copy of branch-3.2. Should work. Also, scheduled jobs are already broken now. I will fix them in parallel to recover.

BTW, I will work on making each scheduled build as each workflow so we can easily navigate in https://github.com/apache/spark/actions (https://issues.apache.org/jira/browse/SPARK-39521). Will have to touch these build files more there.

Merged to master.


Provide a way to query the database by git hooks

Originated in #495
It might be interesting to provide some form or REST to query the database from a git hook.
IMHO this should check if the request is coming from the same host. This way we might not need to have authorization on it.
What do you guys think?

It would certainly be trivial to provide a GetUser call which returned a json version of a UserModel - as you say, if it was local-only then it doesn't seem much of a hazard.  We could also make it require a web.config setting and default it off, so people who wanted it would need to enable it.
I'm not convinced that it adds much value to #495 over what you've already done with the environment variables.   If a commit is always associated with a specific user, then we can provide what little we know about the user in the environment and that's trivial for people writing hooks to check.   Are people really going to write code to query a REST API from a hook?

I think we can leave this open and see the amount of :+1:  it collects over time. I also don't think there is any urgency or great advantage in it now.


Learn Django 8 : Deploy & AWS

Learn the Django Framework enough to be able to accomplish the below tasks :
Deploying to Server ( Manual)
Deploying to Server with Docker
This AWS tutorial can help.
But this link is more helpful
If you wanna use ( you should ) docker and docker compose so you need to have a look at docker,Dkango+Postgre link

Manual Deploy To AWS is learnt.


Remove xvfb from web-angular-test.sh

I don't think xvfb is required to run chrome tests anymore, but here goes...

I think this is good to merge. Chrome now runs in a headless environment but we can always add xvfb to the travis configuration again if we need to.


feat: add XDAI to lifiTokenToAssetId

Description

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #4616   👈

This comment was auto-generated by Graphite.


Standards

In terms of deciding what is/is not correct for the C++ syntax, this issue will be a continually updated listing of what definitions take priority.
Highest Priority:

The current C++ ISO standard (N4659)
The current draft standard

For convenience, this site https://en.cppreference.com/w/ will be used as a standard for implementing the next-highest priority:

The C++17
The C++20 (draft)
The C++14
The C++11
The C++03
The C++98

Medium priority:

GNU Pre-defined macros
Microsofts Visual Studio C++

Low priority:

Doxygen
GTK Documentation

@jeff-hykin C++20 is not draft, so I think this issue must be update


Add a justfile for common recipes

Add a justfile (https://github.com/casey/just) to "shortcut" common recipes.
Ideally I want to be able to do
just valgrind <params>

And have it be equivalent
valgrind target/debug/nabu <params>

https://github.com/casey/just#recipe-parameters


fix(utils): requests with signature missing api_key

Brief Summary of Changes
Looks like _requireSigning only covers the cases when the signature is not provided, but when this signature parameter is provided in UploadParams - the request fails with 400 code because of missing API Key (although it already exists in CloudConfig (for example via Cloudinary.fromCloudName(cloudName: 'cloud_name, apiKey: 'API_KEY_PROVIDED')):
"{"error":{"message":"Missing required parameter - api_key"}}"

What does this PR address?

[ ] GitHub issue (Add reference - #XX)
[ ] Refactoring
[ ] New feature
[x] Bug fix
[ ] Adds more tests

Are tests included?

[ ] Yes
[ ] No

Reviewer, please note:

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I ran the full test suite before pushing the changes and all the tests pass.

Hi @tsinis
We'll check the PR as soon as possible


Btc and canister icp motion proposals

This pull request has two proposals:

BTC integration
Enable Canisters to hold ICP

Thank you @yvonneanne and @JensGroth !


Schema: expose literals and fields

What is the problem this feature would solve?
Exposing literals means you can define a literal schema and then use the (fully typed and ordered) members conveniently from anywhere else as values.
export const SupportedCountries = literal("DE", "CH", "AT")

console.log(`You may provide any of the following countries: ${SupportedCountries.literals.join(", ")}`)

Exposing fields means you can easily merge, pick and omit from them to create new schemas. Especially useful if you simply want the fields, and not extend existing classes, or creating A & B & C chains.
The benefit over pick, omit, extend is that you can use standard object merging (spread/destructure) to build new structs/classes.
const struct1 = struct({ a: number, b: optional(string), c: string })
const struct2 = struct({ d: boolean, e: optional(number), f: literal("g", "h") })
const struct3 = struct({ ...struct1.fields, ...pipe(struct2.fields, omit("e")) })
const struct4 = struct({ ...struct1.fields, ...pipe(struct2.fields, pick("d", "f")) })

What is the feature you are proposing to solve the problem?
See for an example https://github.com/Effect-TS/effect/pull/2013: https://github.com/Effect-TS/effect/pull/2013/files#diff-7da43f2b7b3dea1554f2627482ba41e4f885c908848b72704d9887ffcc065153
I know there's the limitation we don't carry the fields and literals onward when we use combinators.
so far this limitation hasn't impeded it's use for me.
However perhaps there are alternatives to this, which reach into the AST and retrieve the values for us instead?
Let me know what you think, and we can update the expected types tests etc accordingly.
What alternatives have you considered?
No response

There is the risk that the .d.ts files explode, I had some issues in the early versions of io-ts
import * as S from "@effect/schema/Schema"
import type { Simplify } from "effect/Types"

declare const struct: <Fields extends S.StructFields>(
  fields: Fields
) =>
  & S.Schema<S.Schema.Context<Fields[keyof Fields]>, Simplify<S.FromStruct<Fields>>, Simplify<S.ToStruct<Fields>>>
  & { readonly fields: Fields }

const schema1 = struct({ a: S.string, b: S.number })
const schema2 = struct({ c: schema1 })
const schema3 = struct({ d: schema2, e: schema1 })
/*
const schema3: S.Schema<never, {
    readonly d: {
        readonly c: {
            readonly a: string;
            readonly b: number;
        };
    };
    readonly e: {
        readonly a: string;
        readonly b: number;
    };
}, {
    readonly d: {
        readonly c: {
            readonly a: string;
            readonly b: number;
        };
    };
    readonly e: {
        readonly a: string;
        readonly b: number;
    };
}> & {
    readonly fields: {
        d: S.Schema<never, {
            readonly c: {
                readonly a: string;
                readonly b: number;
            };
        }, {
            readonly c: {
                readonly a: string;
                readonly b: number;
            };
        }> & {
            readonly fields: {
                c: S.Schema<never, {
                    readonly a: string;
                    readonly b: number;
                }, {
                    readonly a: string;
                    readonly b: number;
                }> & {
                    readonly fields: {
                        a: S.Schema<never, string, string>;
                        b: S.Schema<never, number, number>;
                    };
                };
            };
        };
        e: S.Schema<never, {
            readonly a: string;
            readonly b: number;
        }, {
            readonly a: string;
            readonly b: number;
        }> & {
            readonly fields: {
                a: S.Schema<never, string, string>;
                b: S.Schema<never, number, number>;
            };
        };
    };
}
*/

There is the risk that the .d.ts files explode, I had some issues in the early versions of io-ts

that's however a risk with any kind of non-opaque schema already, and the reason why it's important for people to embrace opaque types.
that said, I would also be fine with exposing combinators who extract fields instead.

Well, the amount of information that a schema carries around definitely matters. The issue here is that with this modification, the size of the .d.ts file grows quadratically as the nesting levels increase
import * as S from "@effect/schema/Schema"
import type { Simplify } from "effect/Types"

declare const struct: <Fields extends S.StructFields>(
  fields: Fields
) => S.Schema<S.Schema.Context<Fields[keyof Fields]>, Simplify<S.FromStruct<Fields>>, Simplify<S.ToStruct<Fields>>> & {
  readonly fields: Fields
}

const schema1 = struct({ a: S.string })
const schema2 = struct({ b: schema1 })
const schema3 = struct({ c: schema2 })
const schema4 = struct({ d: schema3 })
const schema5 = struct({ e: schema4 })
export const schema6 = struct({ e: schema5 }) // 6 levels

.d.ts
import * as S from "@effect/schema/Schema";
export declare const schema6: S.Schema<never, {
    readonly e: {
        readonly e: {
            readonly d: {
                readonly c: {
                    readonly b: {
                        readonly a: string;
                    };
                };
            };
        };
    };
}, {
    readonly e: {
        readonly e: {
            readonly d: {
                readonly c: {
                    readonly b: {
                        readonly a: string;
                    };
                };
            };
        };
    };
}> & {
    readonly fields: {
        e: S.Schema<never, {
            readonly e: {
                readonly d: {
                    readonly c: {
                        readonly b: {
                            readonly a: string;
                        };
                    };
                };
            };
        }, {
            readonly e: {
                readonly d: {
                    readonly c: {
                        readonly b: {
                            readonly a: string;
                        };
                    };
                };
            };
        }> & {
            readonly fields: {
                e: S.Schema<never, {
                    readonly d: {
                        readonly c: {
                            readonly b: {
                                readonly a: string;
                            };
                        };
                    };
                }, {
                    readonly d: {
                        readonly c: {
                            readonly b: {
                                readonly a: string;
                            };
                        };
                    };
                }> & {
                    readonly fields: {
                        d: S.Schema<never, {
                            readonly c: {
                                readonly b: {
                                    readonly a: string;
                                };
                            };
                        }, {
                            readonly c: {
                                readonly b: {
                                    readonly a: string;
                                };
                            };
                        }> & {
                            readonly fields: {
                                c: S.Schema<never, {
                                    readonly b: {
                                        readonly a: string;
                                    };
                                }, {
                                    readonly b: {
                                        readonly a: string;
                                    };
                                }> & {
                                    readonly fields: {
                                        b: S.Schema<never, {
                                            readonly a: string;
                                        }, {
                                            readonly a: string;
                                        }> & {
                                            readonly fields: {
                                                a: S.Schema<never, string, string>;
                                            };
                                        };
                                    };
                                };
                            };
                        };
                    };
                };
            };
        };
    };
};

current .d.ts (growth is linear)
import * as S from "@effect/schema/Schema";
export declare const schema6: S.Schema<never, {
    readonly e: {
        readonly e: {
            readonly d: {
                readonly c: {
                    readonly b: {
                        readonly a: string;
                    };
                };
            };
        };
    };
}, {
    readonly e: {
        readonly e: {
            readonly d: {
                readonly c: {
                    readonly b: {
                        readonly a: string;
                    };
                };
            };
        };
    };
}>;

it's important for people to embrace opaque types

I'm not sure what you mean by "opaque types" (whether you're referring to this trick: link or using S.Class?), but the amount of information that goes into the .d.ts file remains the same.

I would also be fine with exposing a combinator who extract fields instead

Mmh, I'm not sure I'm following, how can we extract the typed fields if we don't have their types stored somewhere at the type level (as you did with & { fields: Fields })?

I'm not sure what you mean by "opaque types" (whether you're referring to this trick: link or using S.Class?), but the amount of information that goes into the .d.ts file remains the same.

yes class https://github.com/effect-ts-app/boilerplate/blob/main/_project/models/_src/User.ts#L71, or struct retyped with interfaces.
regarding the data that goes into the .d.ts; no it will stick to one Level. all these nested From and To, just turn into: TheOpaqueFrom and TheOpaqueTo

I would also be fine with exposing a combinator who extract fields instead

Mmh, I'm not sure I'm following, how can we extract the typed fields if we don't have their types stored somewhere at the type level (as you did with & { fields: Fields })?
yea this is what I mentioned, we can get the Schema<ROfParent, E, A> out, but not Schema<ROfField, E, A>, nor PropertyDescriptor<....>

@patroza A technique I've successfully used in io-ts to avoid excessive nesting is to define an interface for each main API to save the type of the arguments:
import type * as AST from "@effect/schema/AST"
import * as S from "@effect/schema/Schema"
import type { Simplify } from "effect/Types"

interface struct<Fields extends S.StructFields>
  extends S.Schema<Simplify<S.ToStruct<Fields>>, Simplify<S.FromStruct<Fields>>, S.Schema.Context<Fields[keyof Fields]>>
{
  readonly fields: Fields
}

declare const struct: <Fields extends S.StructFields>(fields: Fields) => struct<Fields>

interface array<Item extends S.AnySchema>
  extends S.Schema<ReadonlyArray<S.Schema.To<Item>>, ReadonlyArray<S.Schema.From<Item>>, S.Schema.Context<Item>>
{
  readonly item: Item
}

declare const array: <Item extends S.AnySchema>(item: Item) => array<Item>

interface union<Members extends ReadonlyArray<S.AnySchema>>
  extends S.Schema<S.Schema.To<Members[number]>, S.Schema.From<Members[number]>, S.Schema.Context<Members[number]>>
{
  readonly members: Members
}

declare const union: <Members extends ReadonlyArray<S.AnySchema>>(...members: Members) => union<Members>

interface literal<Literals extends ReadonlyArray<AST.LiteralValue>>
  extends union<{ readonly [I in keyof Literals]: S.Schema<Literals[I]> }>
{
  readonly literals: Literals
}

declare const literal: <Literals extends ReadonlyArray<AST.LiteralValue>>(...literals: Literals) => literal<Literals>

/*
const s1: struct<{
    a: S.Schema<string, string, never>;
    b: array<S.Schema<number, string, never>>;
    c: literal<["a", "b"]>;
}>
*/
export const s1 = struct({
  a: S.string,
  b: array(S.NumberFromString),
  c: literal("a", "b")
})

// const numberFromString: S.Schema<number, string, never>
export const numberFromString = s1.fields.b.item

// const myliterals: ["a", "b"]
export const myliterals = s1.fields.c.literals

IMO it's also more readable because there are no repetitions:
declare const asSchema: <S extends S.AnySchema>(
  schema: S
) => S.Schema<S.Schema.To<S>, S.Schema.From<S>, S.Schema.Context<S>>

/*
const s1AsSchema: S.Schema<{
    readonly a: string;
    readonly b: readonly number[];
    readonly c: "a" | "b";
}, {
    readonly a: string;
    readonly b: readonly string[];
    readonly c: "a" | "b";
}, never>
*/
export const s1AsSchema = asSchema(s1)

i.e.
const s1: struct<{
    a: S.Schema<string, string, never>;
    b: array<S.Schema<number, string, never>>;
    c: literal<["a", "b"]>;
}>

versus
const s1AsSchema: S.Schema<{
    readonly a: string;
    readonly b: readonly number[];
    readonly c: "a" | "b";
}, {
    readonly a: string;
    readonly b: readonly string[];
    readonly c: "a" | "b";
}, never>

If desired, and solely for the purpose of readability, we could go even further and define helper interfaces to hide unnecessary type parameters (i.e., when R = never and/or I = A)
interface S<A> extends S.Schema<A> {}
interface SI<A, I> extends S.Schema<A, I> {}

type SymplifySchema<Schema extends S.AnySchema> = S.Schema.Context<Schema> extends never
  ? Equals<S.Schema.From<Schema>, S.Schema.To<Schema>> extends true ? S<S.Schema.To<Schema>>
  : SI<S.Schema.To<Schema>, S.Schema.From<Schema>>
  : Schema

declare const string: SymplifySchema<typeof S.string>
declare const NumberFromString: SymplifySchema<typeof S.NumberFromString>

/*
const s1Simplified: struct<{
    a: S<string>;
    b: array<SI<number, string>>;
    c: literal<["a", "b"]>;
}>
*/
export const s1Simplified = struct({
  a: string,
  b: array(NumberFromString),
  c: literal("a", "b")
})

i.e.
const s1Simplified: struct<{
    a: S<string>;
    b: array<SI<number, string>>;
    c: literal<["a", "b"]>;
}>

versus
const s1: struct<{
    a: S.Schema<string, string, never>;
    b: array<S.Schema<number, string, never>>;
    c: literal<["a", "b"]>;
}>

example with nested fields
const schema1 = struct({ a: string })
const schema2 = struct({ b: schema1 })
const schema3 = struct({ c: schema2 })
const schema4 = struct({ d: schema3 })
const schema5 = struct({ e: schema4 })

/*
const schema6: struct<{
  e: struct<{
      e: struct<{
          d: struct<{
              c: struct<{
                  b: struct<{
                      a: S<string>;
                  }>;
              }>;
          }>;
      }>;
  }>;
*/
export const schema6 = struct({ f: schema5 }) // 6 levels

// const leaf: S<string>
export const leaf = schema6.fields.f.fields.e.fields.d.fields.c.fields.b.fields.a

For the sake of readability, we could define a lot of interfaces (as I did in io-ts), essentially one for each built-in schema / combinator (even for S.string for example):
interface $string extends S.Schema<string> {}
declare const string: $string

interface NumberFromString extends S.Schema<number, string> {}
declare const NumberFromString: NumberFromString

interface option<V extends S.AnySchema>
  extends S.Schema<O.Option<S.Schema.To<V>>, O.Option<S.Schema.From<V>>, O.Option<S.Schema.Context<V>>>
{
  readonly value: V
}
declare const option: <V extends S.AnySchema>(v: V) => option<V>

/*
const schema: struct<{
    a: $string;
    b: array<NumberFromString>;
    c: literal<["a", "b"]>;
    d: option<$string>;
}>
*/
export const schema = struct({
  a: string,
  b: array(NumberFromString),
  c: literal("a", "b"),
  d: option(string)
})

// const optionValue: $string
const optionValue = schema.fields.d.value

@gcanti yes I like it, or in @mikearnaldi speak “what a great idea!” ;)
It’s simply the wholesale continuation of Opaqueness, including the Schema.
An example with property descriptors would be nice. I wonder if going all in or still eg exposing R would be useful somehow to make them jump out

if im not mistaken, the benefit also is that picking these out of fields compared to current S.pick gets you the mapping transformation out too

@patroza yes, this is an example using my working branch (https://github.com/Effect-TS/effect/pull/2172)
import * as S from "@effect/schema/Schema"

/*
const schema: S.struct<{
    a: S.Schema<string, string, never>;
    b: S.PropertySignature<"c", ":", number, ":", string, never>;
}>

i.e.

S.Schema<{
    readonly a: string;
    readonly c: number;
}, {
    readonly a: string;
    readonly b: string;
}, never>

*/
const schema = S.struct({
  a: S.string,
  b: S.propertySignatureDeclaration(S.NumberFromString).pipe(S.propertySignatureKey("c"))
})

console.log(S.decodeSync(schema)({ a: "a", b: "1" })) // => { a: 'a', c: 1 }

/*
const schema2: S.struct<{
    d: S.Schema<boolean, boolean, never>;
    a: S.Schema<string, string, never>;
    b: S.PropertySignature<"c", ":", number, ":", string, never>;
}>

i.e.

S.Schema<{
    readonly a: string;
    readonly c: number;
    readonly d: boolean;
}, {
    readonly a: string;
    readonly b: string;
    readonly d: boolean;
}, never>

*/
const schema2 = S.struct({
  ...schema.fields,
  d: S.boolean
})

console.log(S.decodeSync(schema2)({ a: "a", b: "1", d: true })) // => { d: true, a: 'a', c: 1 }

For the sake of readability...

Update from the working branch
import * as S from "@effect/schema/Schema"

/*
const current: S.struct<{
    a: S.literal<["A"]>;
    b: S.literal<["B", "C"]>;
    c: S.NumberFromString;
    d: S.PropertySignature<never, "?:", number | undefined, "?:", number | undefined, never>;
    e: S.tuple<[S.$string, S.$number]>;
    f: S.array<S.$string>;
    g: S.union<[S.$string, S.$number]>;
    h: S.nonEmptyArray<S.$string>;
    i: S.struct<{
        a: S.$string;
    }>;
}>
*/
export const current = S.struct({
  a: S.literal("A"),
  b: S.literal("B", "C"),
  c: S.NumberFromString,
  d: S.optional(S.number),
  e: S.tuple(S.string, S.number),
  f: S.array(S.string),
  g: S.union(S.string, S.number),
  h: S.nonEmptyArray(S.string),
  i: S.struct({
    a: S.string
  })
})

/*
const old: S.Schema<{
    readonly a: "A";
    readonly b: "B" | "C";
    readonly c: number;
    readonly e: readonly [string, number];
    readonly f: readonly string[];
    readonly g: string | number;
    readonly h: readonly [string, ...string[]];
    readonly i: {
        readonly a: string;
    };
    readonly d?: number | undefined;
}, {
    readonly a: "A";
    readonly b: "B" | "C";
    readonly c: string;
    readonly e: readonly [string, number];
    readonly f: readonly string[];
    readonly g: string | number;
    readonly h: readonly [string, ...string[]];
    readonly i: {
        readonly a: string;
    };
    readonly d?: number | undefined;
}, never>
*/
export const old = S.asSchema(current)

@gcanti wow, that looks great!
one thing I would ponder on is, I personally like to think of my To schema as the center of the universe, not my From.
I mean this seems a little counter intuitive when one thinks logically about From->To, but still. In my current experimentation, I use a MapFrom, not MapTo.
so I would define C, maps from B, not B maps to A.

The name aligns with the type: NumberFromString: Schema<number, string> (number from string), but for the transformations, for now, I've done it this way because it seems to me that people prefer to think of transformations as From -> To, all the other transformation APIs are designed this way (e.g. transform(from, to, ...), transformOrFail(from, to, ...), transformLiteral(from, to))

The name aligns with the type: NumberFromString: Schema<number, string> (number from string), but for the transformations, for now, I've done it this way because it seems to me that people prefer to think of transformations as From -> To, all the other transformation APIs are designed this way (e.g. transform(from, to, ...), transformOrFail(from, to, ...), transformLiteral(from, to))

I think for the apis it might make sense, but I strongly believe when you define a struct or a class, the properties define the To (aka the type/schema you're actually defining)

@patroza yeah, you are right, moving the key to 'from' makes it much clearer
b: S.PropertySignature<":", number, "c", ":", string, never>;
it's like
b: number <- c: string

Updated example
import * as S from "@effect/schema/Schema"

/*
const schema: S.struct<{
    a: S.Schema<string, string, never>;
    b: S.PropertySignature<":", number, "c", ":", string, never>;
}>

i.e.

S.Schema<{
    readonly a: string;
    readonly b: number;
}, {
    readonly a: string;
    readonly c: string;
}, never>

*/
const schema = S.struct({
  a: S.string,
  b: S.propertySignatureDeclaration(S.NumberFromString).pipe(S.propertySignatureKey("c"))
})

console.log(S.decodeSync(schema)({ a: "a", c: "1" })) // => { a: 'a', b: 1 }

/*
const schema2: S.struct<{
    d: S.Schema<boolean, boolean, never>;
    a: S.Schema<string, string, never>;
    b: S.PropertySignature<":", number, "c", ":", string, never>;
}>

i.e.

S.Schema<{
    readonly a: string;
    readonly b: number;
    readonly d: boolean;
}, {
    readonly a: string;
    readonly c: string;
    readonly d: boolean;
}, never>

*/
const schema2 = S.struct({
  ...schema.fields,
  d: S.boolean
})

console.log(S.decodeSync(schema2)({ a: "a", c: "1", d: true })) // => { d: true, a: 'a', b: 1 }

Resolved in @effect/schema 0.64.x


Keep alive fixes

Replaces the $timeSincePingResp variable with $timeSinceKeepAliveResponse and changed the way this works according to the latest MQTT standard: http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.html
This commit will fix many errors regarding infinite running & listening to the socket itself.
Depends on the rest of the PR's I've created so far.

Actually decided to create my own implementation, so closing this one :)


brew install homebrew/binary/subgit doesn't work out of the box

Installing subgit doesn't seem to work out the box:
> brew install homebrew/binary/subgit
...
==> Caveats
    To use SubGit, you must agree to the SubGit licensing agreement:
      http://subgit.com/license.html
==> Summary
🍺  /usr/local/Cellar/subgit/3.0.0: 37 files, 12.8M, built in 1 second
>rehash
>subgit
Error: JAVA_HOME is not defined correctly.
  We cannot execute /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java
>/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java
zsh: no such file or directory: /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java

(I'm guessing a dependency on a JVM is missing somewhere.)

I could get things started with
> brew install java
> JAVACMD=/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java subgit

Some readme's mention that doing a reboot or re-login might fix the latter part, but I haven't given it a shot yet.

Does this also happen if you download and install subgit outside of Homebrew?

Nope.

We'll accept PRs for this but we're not actively working on it at this time.


Ignore self-sign ssl certificate from engine-sdk

Originally from community on our Discord server.

I already install thirdweb engine to my cloud server with a public ip address
first, i would like to use the thirdweb dashboard to manage my engine. so i enable ssl flag and work so well.
but, another thing, when i tried to use engine sdk (especially the template "Smart Account Engine Sessions Demo")  from localhost.
i can not connect or retrieve data from engine, because it's self signed certificate.
so, i would like to know that, are there any solutions that i can ignore ssl from engine-sdk, so i can use both thirdweb-dashboard and develop from my localhost
thanks for replying me. Looking forward to hearing you soon

Can you check this @farhanW3? Thanks!

hi @warengonzaga
Few things & questions:

if the user is hosting on a cloud, they shouldn't need to turn on the HTTPS flag. Just run as is. The ENABLE_HTTPS env variable is to be used when running the docker image locally.
Can I get a link to the example mentioned?

@warengonzaga
any updates here. else will close this issue?


Include an assert function name into assertion messages

Is your feature request related to a problem? Please describe.

If more than one assert functions are defined, it is not clear which one triggered the assertion failure. If both of the functions fail, the output contains two identical messages.
Describe the solution you'd like

Including an assert function name  into the output (like patern, casing or a custom name) would be handy to identify the cause of the failure.
Describe alternatives you've considered

Collapsing all the assertion messages into one. But it would require more efforts and also would be less clear to a user.
Additional context

Internal discussion

@RomanHotsiy and I discussed the required placeholders for assertion messages last night. @RomanHotsiy did you want to add it to this ticket?

Details here: https://github.com/Redocly/redocly-cli/pull/857/files#diff-278dfad5d57e4b60a03f414c74a1d4c5d5273dd755ffae1b201c8338e36fd824R37

I copied it here in case that linked PR changes:

Problem message displayed if the assertion is false. If omitted, the default message is: "{{assertionName}} failed because the {{subject}} {{property}} didn't meet the assertions: {{problems}}" is displayed. The available placeholders are displayed in that message. In the case there are multiple properties, the {{property}} placeholder produces a comma and space separate list of properties. In case there are multiple problems, the {{problems}} placeholder produces a bullet-list with a new line between each problem.


corrected grammatical errors

Coverage remained the same at 91.618% when pulling 9342e9f804712c7090eccdc11af93d7f3c9f98f3 on umangraval:master into 723157858f23f3f8d1676fc81de86168910642c2 on code-cracker:master.


Rocko aktualizr pkgconfig

Thanks for taking the trouble of opening the PRs to stable branches.
In general, there is no need to do it as we usually bundle this kind of changes in larger backport PRs. We open PRs for all branches to fast-track a more urgent fix (like bumping aktualizr's version recently) but in this case it could wait as it is mostly a refactor.
But no big deal, we can look into merging them after the inclusion in master.

Ok I see, thanks for the explanation. Then it makes good sense.

Changes in patch set V2:
1 Dropped some unused pkgconfig options.


updated about to work properly

corrected about section to work properly

Updated accordian closing error, and weather edit button to be more clear


Element#right_click now accepts modifiers.

This fulfills a requirement that I have to test certain "special fields" that display debug info when a right click with :control is performed.
@titusfortner and I had a discussion on this a while ago, and we had agreed that since #click accepts modifiers, #right_click could as well.

Pull Request Test Coverage Report for Build 1997

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 97.242%

Totals

Change from base Build 1985:
-0.2%

Covered Lines:
2327

Relevant Lines:
2393

💛  - Coveralls

Pull Request Test Coverage Report for Build 1997

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 97.242%

Totals

Change from base Build 1985:
-0.2%

Covered Lines:
2327

Relevant Lines:
2393

💛  - Coveralls

Pull Request Test Coverage Report for Build 1997

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 97.242%

Totals

Change from base Build 1985:
-0.2%

Covered Lines:
2327

Relevant Lines:
2393

💛  - Coveralls

Thanks @kapoorlakshya


ci: add edge release process

🔗 Linked issue
fix #456
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

L'idée est de créer un process de release plus clair pour chaque PR et chaque commit sur main en séparant la ci de ces releases. Dans le même temps, cela permet de s'aligner sur ce qui est fait sur ArmoniK.Api
📝 Checklist

[x] I have linked an issue or discussion.
[x] I have updated the documentation accordingly.

must be rework after #464

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: esoubiran-aneo:x: Faust1-2was-AneoYou have signed the CLA already but the status is still pending? Let us recheck it.

Since 0.9.x will pass in maintenance mode, this PR can be close.


refactor: redesign add module page

This error is visible immediately after visiting the page

Sorry for the late feedback, but it feels odd that this is copyable/visible until there is a valid package name:

Also, if you type a valid package name (e.g. oak_se) and then you type a taken valid name (e.g. oak_sessions) the confetti goes off and the UI updates for success:

@kitsonk fixed, PTAL

Maybe I misunderstood.  I am still getting "success" and confetti when going from a valid name to an invalid name:

huh, i cannot reproduce

https://user-images.githubusercontent.com/1282577/180760202-1ca3c74d-288b-4c6d-aca3-1611776e50d3.mp4

ah, after spamming delete and writing name fast, i could reproduce again...

In my video I wouldn't consider it fast typing. 😜

ok i really cannot reproduce the way you are doing it...

@crowlKats you can try this with the name twitter, too

ok, so it seems you need to be typing at a specific speed and then it happens; love it.

ok i really cannot reproduce the way you are doing it...

"works on my machine"... 🤣 Version 1.40.113 Chromium: 103.0.5060.114 (Official Build) (x86_64)

On Firefox 103, I have to type really fast, but it breaks in a different way, no "error" that module is taken and sort of infinite confetti that looks really yucky:

this is extremely annoying... how about now?

Same behaviour for me on: https://dotland-2m9t6qw1bv5g.deno.dev/add_module

@kitsonk check again

Ok, the confetti has gone and works as expected, thought my manual fuzzing has demonstrated another minor issue.  Long package names cause layout problems:

oh, thats fine, thats simple to fix, thank god the false-positive is fixed now


Writing is totally broken on iOS

OK, so maybe I'm missing something, but here goes.

No text controls. SO that means no autocorrect controls on cursor which totally breaks typing.
No copy/paste. See above.
On multi-line the cursor is one character behind, so when you newline, it shows the cursor on the old line.
If you type a ? or ! and then do a send (like from a button) there seems to be no way to switch the keyboard back to home.
New emojis break into their components instead of showing the actual emojis.

This is all in a MaterialApp btw on Beta channel, up to date.
I don't mean to be a Debbie downer, but I literally cannot find a way to make any text input not a horrible UX on iOS. Maybe it's different on Android. I feel like I have to be missing something, because this is a blocking situation for any app that uses text input, which in my experience is every app.

... autocorrect

covered by #12920

copy/paste

#20692 shows it's there, but room for improvement

cursor is one character behind

Is this still an issue? This was an issue in Android as well but I think that's fixed #15572

Could be https://github.com/dart-lang/sdk/issues/28404

Yes, but still not triages afaik even though the issue is 1 year old and it effects all iOS users who are typing in a Flutter app.

It is there but doesn't respond to double taps, only long holds.

seems to be resolved

Thanks for connecting the issues @zoechi
https://github.com/flutter/flutter/issues/9652 for the flutter-side issue on #5

It seems like everything covered by this issue is also covered by the other issues. I am closing this one to avoid duplication. Please post additional information to the individual bugs or open new individual bugs if none exist for the issue at hand.


"Please Connect the ToyPad to the Console" Error on real Wii U hardware

I'm back.
Attempting to see if I can solve this issue. Getting a "Please Connect the ToyPad to the Console" Error in the game on real Wii U hardware. I was successful in setting up the Pi Zero for this mod. No errors, and the Pi is running correctly. It just seems that this mod is not working on a real Wii U.
Any suggestions?

The Pi Zero W connects to the network just fine. The web page does load when I use my web browser to go into it. The "This message will disappear when I can see the game" red alert box on the web page doesn't disappear from the website when the Pi is plugged into my Wii U. I have also tried 3 USB cables (two I owned and one I just got this morning) and attempted with all ports on my Wii U. Same error. I also tried unplugging my external hard drive.
I also tried using Taramisu instead of Aroma and reached the same error.
Any suggestions?

The Pi Zero W connects to the network just fine. The web page does load when I use my web browser to go into it. The "This message will disappear when I can see the game" red alert box on the web page doesn't disappear from the website when the Pi is plugged into my Wii U. I have also tried 3 USB cables (two I owned and one I just got this morning) and attempted with all ports on my Wii U. Same error. I also tried unplugging my external hard drive.
I also tried using Taramisu instead of Aroma and reached the same error.
Any suggestions?
My next troubleshooting step is to simply attempt it Pi on a PS4/5.

Do you have any other devices that rely on micro usb data so you can test the cable? I had the same issue with mine when I first tried it, and my issue ended up being that none of my cables were actually data cables. Also make sure that the power cable is connected to the port closest to the edge, and the data cable that goes to the Wii U is plugged into the port further from the edge

Do you have any cable recommendations? I tested about 8 different cables and none of them worked. I have the power cable going into a wall outlet (right side, nearest to the corner) and the left is where I've been swapping the USB cables.
Once I try a new cable, do I have to restart the game, or do I just wait for the notice to go away?

Do you have any cable recommendations? I tested about 8 different cables and none of them worked. I have the power cable going into a wall outlet (right side, nearest to the corner) and the left is where I've been swapping the USB cables.
Once I try a new cable, do I have to restart the game, or do I just wait for the notice to go away?

https://www.amazon.com/gp/product/B0711PVX6Z/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
I use this exact cable for mine, so if this doesn't work it's something else. Once you try the new cable, the notice will go away as soon as it recognizes, restarting the game isn't necessary. The game will go from saying "Please connect the Toy Pad" to saying "No characters detected" to signify it sees the pad but nothing's on it

Thanks for the info.
That cable is the exact cable I ordered and it didn't work. I guess I'll go back from square one then.

Try out the PS4 if you have it, that works for me but I never actually tested the Wii U cause I never needed to. I'll do some Wii U tests in the meantime, see if it works for me

I just tried my Wii U copy with the emulator, just plugged into the front USB port, no issue at all. Can you send a picture of how you have your Pi plugged up, maybe there's an issue that we're not describing well?

Left wire is going to the front on the Wii U. Right is connected to Power and is going back to a wall outlet.

Got it working.
I installed Pi Legacy version, then ran the following commands before running step 3.
sudo apt update
sudo apt install git
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libudev-dev


Vim9: Support namespace b:/w:/t: in :def function

Problem
We cannot use buffer-local, window-local, and tab-local variables in :def function.
Solution
Implement ISN_LOADB, ISN_LOADW, ISN_LOADT, ISN_STOREB, ISN_STOREW, and ISN_STORET operators.

Codecov Report

Merging #5950 into master will decrease coverage by 0.00%.
The diff coverage is 79.78%.

@@            Coverage Diff             @@
##           master    #5950      +/-   ##
==========================================
- Coverage   86.27%   86.26%   -0.01%
==========================================
  Files         140      140
  Lines      155921   156004      +83
==========================================
+ Hits       134522   134584      +62
- Misses      21399    21420      +21

Impacted Files
Coverage Δ

src/vim9compile.c
94.44% <58.33%> (-0.46%)
:arrow_down:

src/vim9execute.c
93.55% <93.10%> (-0.05%)
:arrow_down:

src/if_xcmdsrv.c
88.38% <0.00%> (-0.36%)
:arrow_down:

src/term.c
81.67% <0.00%> (-0.12%)
:arrow_down:

src/getchar.c
84.80% <0.00%> (-0.08%)
:arrow_down:

src/os_unix.c
69.62% <0.00%> (-0.05%)
:arrow_down:

src/gui_gtk_x11.c
57.98% <0.00%> (+0.04%)
:arrow_up:

src/gui.c
63.90% <0.00%> (+0.05%)
:arrow_up:

src/window.c
88.96% <0.00%> (+0.06%)
:arrow_up:

Continue to review full report at Codecov.

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


Evoking the Essence of Chanakya's Era: Elegant  Olden Book Background  for Audio Episodes

##Description:
To evoke the essence of Chanakya's era, an olden book background with page flipping transitions for change in Audio episodes.
##Solution:

Install react-page-flip: This step installs the necessary library to handle page flipping.
Component Structure: The Presentation component manages the overall display, including the book background and audio player.
Page Flip Configuration: The FlippingBook component from react-page-flip is used to create realistic page flips, with each Page representing an episode.
Episode Management: State management in Presentation handles current episode transitions and triggers the corresponding audio playback.
Styling: CSS styles provide the olden book aesthetic and ensure the components are visually cohesive.

Advantages:

Nostalgic Aesthetic:

By using an olden book background and page-flip animations, the application can evoke a sense of nostalgia and historical charm, reminiscent of Chanakya's era. This can be particularly appealing for content that benefits from a classical or scholarly feel.
Enhanced User Interaction:

Page-flipping animations provide a tactile and interactive element, making the application more interactive and enjoyable to use. Users can visually see the transition between episodes, which can enhance their engagement with the content.
Improved Content Presentation:

Presenting each audio episode as a "page" in a book allows for a more organized and structured way to display content. Users can easily navigate through episodes, improving the overall user experience.

Please assign me for this feature update @Avdhesh-Varshney for SSoC'24

@Akash4701 go ahead.

Yes,but it may take some more time..
On Wed, Jun 19, 2024, 5:24 PM Avdhesh @.***> wrote:

@Akash4701 https://github.com/Akash4701 are you working on it?
—
Reply to this email directly, view it on GitHub
https://github.com/Avdhesh-Varshney/chanakya-niti/issues/40#issuecomment-2178509070,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BDULP4I2EROAU5PMLXLKXIDZIFWPRAVCNFSM6AAAAABIVCKJDSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZYGUYDSMBXGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Akash4701 join discord and mention me how much time is needed?


Hello, can you provide an example that can be debugged.

Hello, can you provide an example that can be debugged. I tested several projects and it didn’t work. I will provide a case https://github.com/brinkqiang/dmlua

Here's an example project for Visual Studio 2019:
lua_dbg_example.zip
Open 'test.lua' file in 'lua_application' project 'Source Files' filter, place some breakpoints and run.

Still unable to debug, can you use ShareX to record animated gif to describe the debugging setup process? My development environment is vs2019-16.8.3/WIN10.

After testing, I found that if you set a breakpoint in the lua_pcallk function in advance, you can debug it. Remove it and you can’t.

Thank you for additional information, I have found that there might be a race condition between script load and Visual Studio breakpoint state refresh.
I'll investigate how this can be fixed.

Breakpoints at the start of a script that was executed immediately after load didn't have enough time to refresh.
Fix for this was added in https://github.com/WheretIB/LuaDkmDebugger/releases/tag/v0.9.5 release.
Marketplace extension will soon be updated.


Application launched not in clean state

I thought snapshot would delete / re-install the app cleanly for each simulator, but my app is launching the iOS 8.2 iPhone 6 version in the same state as when I test via XCode.  anything I can do to force snapshot to launch each version cleanly?

It should clean install the app, can you post the log?

upon further investigation, it appears that this isn't an issue with snapshot.  Rather, it's an issue with iOS not clearing the keychain when an app is uninstalled.  My oauth credentials are being cached via the NXOauth2Client library and the user is automatically logged in afterwards.
I will have to manually detect and clear the cache.
Closing this issue out, and hopefully this info will be helpful to other developers that hit a similar issue.  thanks for the great tool support!


[utils] Fix handling of comments in js_to_json

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] Searched the bugtracker for similar pull requests
[x] Read adding new extractor tutorial
[x] Read youtube-dl coding conventions and adjusted the code to meet them
[x] Covered the code with tests (note that PRs without tests will be REJECTED)
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[ ] I am the original author of this code and I am willing to release it under Unlicense
[x] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
js_to_json() removes commas that appear right before a comment line, creating invalid JSON.
This pull request fixes this by making the conversion a two-step process. It first removes all comments and then the actual JS to JSON fix-up happens. This also somewhat simplifies the conversion as comment handling is no longer needed in the second step.
Doing it in one step makes it hard to deal properly with both commas right before comments and trailing commas at the end of a dictionary or array. A two-step approach is easy to follow and works.
The regular expression used for comment removal is not thrown off by comments within string literals. It is based on this Stack Overflow answer: https://stackoverflow.com/a/25735600
Additional tests in test/test_utils.py based on issue #23785 are also provided.
Closes #23785.
This Pull Request is a rebase of the PR provided (and approved) at #23877. As such:
Closes #23877 .

Fixes #28335
and many other related issues
am thinking, is good fix

CI is failing on flake8 issues:
diff --git i/youtube_dl/utils.py w/youtube_dl/utils.py
index d7162e401..30830af42 100644
--- i/youtube_dl/utils.py
+++ w/youtube_dl/utils.py
@@ -4110,6 +4110,7 @@ def js_to_json(code):
         [0-9]+(?=\s*:)
         ''', fix_kv, code)

+
 def qualities(quality_ids):
     """ Get a numeric quality value out of a list of possible values """
     def q(qid):

The other failures stem from the fact that the ! prefixes are no longer removed.

Input:
{
            a: !0,
            b: !1,
            c: !!0,
            d: !!42.42,
            e: !!![],
            f: !"abc",
            g: !"",
            !42: 42
        }

Output from the cleanup function:
{
            "a": !0,
            "b": !1,
            "c": !!0,
            "d": !!42.42,
            "e": !!![],
            "f": !"abc",
            "g": !"",
            !"42": 42
        }

This is not valid JSON.

@dstftw can you please review/remove the pending-fixes label?

The tests pass with d9d07a9:
In [1]: import json

In [2]: from youtube_dl.utils import js_to_json

In [3]: inp = '''{
   ...:             foo: "value",
   ...:             // bar: { nested:'x' },
   ...:             bar: { nested:'x' },
   ...:             chaff: "something"
   ...:         }'''

In [4]: json.loads(js_to_json(inp)) == json.loads('''{
   ...:             "foo": "value",
   ...:
   ...:             "bar": { "nested":"x" },
   ...:             "chaff": "something"
   ...:         }''')
Out[4]: True

In [5]:         inp = '''{
   ...:             id: "player_prog",
   ...:             googleCast: true,
   ...:             //extraSettings: { googleCastReceiverAppId:'1A6F2224', skin:'s3',  skinAccentCol
   ...: or: '0073FF'},
   ...:             extraSettings: { googleCastReceiverAppId:'1A6F2224'},
   ...:             mediaType: "video",
   ...:         }'''

In [6]: json.loads(js_to_json(inp)) == json.loads('''{
   ...:             "id": "player_prog",
   ...:             "googleCast": true,
   ...:             "extraSettings": { "googleCastReceiverAppId":"1A6F2224"},
   ...:             "mediaType": "video"
   ...:         }''')
Out[6]: True


Change use of std::atomic<time_point> with std::atomic

Using std::atomic<std::chrono::steady_clock::time_point> on older Clang versions (8 and below) with libstdc++ doesn't compile: https://godbolt.org/z/fbM6o4dEc.

Windows test PASSed.

Linux test PASSed.

Windows test PASSed.

Linux test PASSed.


⚠ Samsung has degraded performance

In 913ce09, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2801 ms

Resolved: Samsung performance has improved in f741c0e.


Align with Ember's HistoryLocation router

Now that https://github.com/emberjs/ember.js/pull/14011 has landed
it would be best to align this library with the new implementation in
anticipation of deprecating the RouterScrollRouter for Ember 2.13 and
eventually removing it in Ember 3.0.

@bcardarella Thanks, we'll take a look!

FWIW, I believe that https://github.com/dollarshaveclub/ember-router-scroll/blob/master/package.json#L12 is causing the test failures. It attempts to run npm test before all deps are installed

You might be right, I'll take a look at that.

Closing in favor of #40

Great! 👍


Faqs for Oct-12

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please don't merge the PR until approved.
cc: @AbhinandanParashar @deepanshuHarness

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Marking function as class?

Is there a way to force an export function to be treated as a class?
Example:
export function AudioExt(session){
vs.
export class Pluggy {
Classes have their own section while the functions are all grouped together.
Is it possible to change this?

@JerryFox1 Hi! Thanks for this issue!
Sorry, ESDoc does not support it :pensive:
And, for now, I do not plan to support it.


Feature request: multi column increment using object notation

Feature discussion / request

Explain what is your use case
this already was suggested in another issue here: https://github.com/tgriesser/knex/issues/269#issuecomment-280855866

Explain what kind of feature would support this
we just need for increment to be like where() or update()

Give some API proposal, how the feature should work
Since knex allows for object notation almost everywhere in it's API, it' inconsistent that you can't use the same with increment()

@kibertoad it has already implemented 2 months ago.
See https://github.com/tgriesser/knex/pull/2740 and have released in 0.16

@capaj forget to tag. :)

That is awesome. Someone should update the docs then. Will close this issue then.


Update k8sutil.go

fix typo

 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.

@windayski thanks for the PR, could you please sign the CLA so that we can merge the PR


Network: error check in rt_tables file close

Description
This PR adds error checks on errors when method Close() is called on open files

/merge


Wrong LapTime Y Axis

plotting.laptime_axis(ax)
this function misses the lapTime.

I also tried with the example of the README. Same problem

This should be fixed now


Release/v0.5.2

draft announcement

Hi @channel, it has been a bit quiet around here lately but it is now time for v0.5.2.  The headline change is that BladeBit support has been added.  If you can't make use of that due to having less than 416GB of RAM?  Well, join the club, neither can I.  :]  None the less, we try to keep your options open.  There are also a few other additions and fixes you can take a look at in the changelog at https://github.com/ericaltendorf/plotman/blob/v0.5.2/CHANGELOG.md.


support force push

Maybe I missed this, but if there's a way to rebase and and amend commits, force push should also be a valid option.

:+1:

Mabe it would be the case to add this also to the status page?

You can add these lines to a sublime-keymap file in sublime's user folder
    {
        "keys": ["P"],
        "command": "gs_push",
        "args": {"force": true}
        "context": [
            { "key": "setting.command_mode", "operator": "equal", "operand": false },
            { "key": "setting.git_savvy.status_view", "operator": "equal", "operand": true },
        ]
    },

I don't think we want to add it to the standard keybinding.


Train on other dateset

Your code is very useful, but I want to ask, does this code not support Kitti dataset training?

Hi, currently this code does not support the other dataset, but it should not be difficult for you to modify for trainning with other data.


Pressing the minus button in the UI can break the fan controls

If you press the minus button when there is only one row left you end up with no more rows and you get stuck with no plus buttons to set the fan controls...
E.g. here I kept pressing minus on the GPU section of the fan controls and now I cannot add any fan controls based on the GPU temp

The only workaround I have found is to get a new copy of the program so that the values are reset to default

Thanks for reporting this, fixed.


Expandable Objects

👋
I just push a very basic draft about how we could implement expandable objects.
It is a braking change so before going on I'd like to have a feedback.
You can find the diff here.
The result would be
let customer = try stripe.customers.retrieve(customer: "cus_123", expand: ["default_source"]).wait()

print(customer.defaultSource?.last4) // 4242
print(customer.$defaultSource.id) //card_1234

and
let customer = try stripe.customers.retrieve(customer: "cus_123").wait()

print(customer.defaultSource?.last4) // nil
print(customer.$defaultSource.id) //card_1234

Cheers 🍻

@Buratti I love the idea of using property wrappers. And you're in the same vein of how I was thinking of implementing it with a StripeExpandable protocol etc. We can dive a bit more into it when you get a chance.

@anthonycastelli @ksmandersen thoughts on this approach?

I’m all for it. Right now Stripe and Vapor still aren’t at a full official release so a breaking change isn’t a big deal right now. I like the idea of incorporating property wrappers this way too. My only question is what is the benefit of doing this?

I like this approach.
My main concern with expandable objects is the difference in types. E.g if you don’t expand the latestInvoice on Subscription it is String? if you do expand it becomes a Invoice?. The key in the json is the same.

@ksmandersen Yea so when you define a property or mark it with @Expandable you'd specify the type as the String? and from there if you wanted to use the projectedValue or the expandable type, you'd use the $ syntax like
customer.$defaultSource(as: StripeCard.self)?.last4
customer.$defaultSource(as: StripeBankAccount.self).?last4
And you'd still get the id as normal
customer.defaultSource // src_1234

@ksmandersen that's one of the reason beyond property wrappers. If you decide to not expand latestInvoice you are still able to access its id property as a string using the projected value ($latestInvoice.id).
There might be a smarter solution though. A couple of days ago Andrew and I were discussing on Discord about the "multi type" problem. The default source of a user can be a Card object but it might also be another type of payment method. The current approach would not be able to handle this situation.
A different solution might be to have
@Expandable
var defaultSource: String?

If we always keep String as the wrapped value we can project some other object. The projected object will be responsible to decode the expanded object as the user request.
For example:
customer.defaultSource // "card_1234" <- not source breaking, the wrapped value will always be the object id or nil if no defaultSource exists.
customer.$defaultSource.decoded(as: StripeCard.self)?.last4 // "4242" if the expanded object was a Card, nil if it was a different form of Payment Method.

This solution is a bit uglier from a syntax point of view but with Swift 5.2 we can improve from
customer.$defaultSource.decoded(as: StripeCard.self)?.last4

to
customer.$defaultSource(as: StripeCard.self)?.last4

which is not so bad.

Regarding the same key problem, you can find a custom implementation of init(from decoder: Decoder) throws here
If the object is not expanded, the key for latestInvoice will map to a single value container which will contain a string. If the object is expanded, the key will map to a keyed container keyed by StripeCard.CodingKeys.self.
Therefor, if the object is expanded String.init(from: decoder) will fail and if the object is not expanded StripeCard.init(from: decoder) will fail.

This was implemented in #72


⚠ Bofrost.de has degraded performance

In 41ed507, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1738 ms

Resolved: Bofrost.de performance has improved in 72abb1c.