Notes and highlights

Describe your suggested feature
It would be great if the app had feature to add notes and highlight like this:

Thanks!
Other details
No response
Acknowledgements

[x] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[x] If this is an issue with a source, I should be opening an issue in the sources repository.
[X] I have updated the app to version 1.1.18.
[X] I will fill out all of the requested information in this form.

Seems a duplicate of #524 (I suggest to an admin to change the title of the issue 524)


[ON Hold for #31673] [$250] [Track Tax] Tax currency is editable for employee, and it reverts to default currency after creation

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.63-0
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team
Action Performed:
Precondition:

User is an employee of Collect workspace
Collect workspace has some tax rates

Go to staging.new.expensify.com
Go to workspace chat
Go to + > Submit expense > Distance
Proceed to confirmation page
Note that distance amount cannot be edited
Click Show more > Tax amount
Click on the currency

Expected Result:
Since workspace employee is unable to edit the distance amount, they should not be able to edit tax currency
Actual Result:
Workspace employee is able to edit tax currency for distance request. After the request is created, the tax currency reverts to the workspace default currency
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/afb22d62-8e51-4542-a520-16384aebdad7
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01bf4f1d5c88c460fe
Upwork Job ID:<PHONE_NUMBER>275028992
Last Price Increase: 2024-05-14

Posted in Wave Collect and will follow up when we have an urgency.
@mananjadhav we have some proposals above for you to review when you have a chance 👍 Thanks!

@MonilBhavsar discussion about this here for you to catch up on.

It will be fixed by https://github.com/Expensify/App/issues/31673

Should we close this one then?

Maybe, it will be good to point to which PR in that linked issue will fix this because there's a bunch of them, a lot of which are merged.

@MonilBhavsar to echo TRJ, there are quite a few PRs linked in the GH here — can you point out the PR I should be keeping an eye on as the on-hold for this GH? TIA!

It's this one https://github.com/Expensify/App/issues/31673

This issue is on-hold, so not overdue 👍

Draft PR is here

Still waiting on draft PR. Will be delayed due to merge freeze 👍

Merge freeze ends on Monday 🎉

This is actively being worked on via the on-hold GH, as there was an issue with the distance rates. Discussed here

Per the comment here, someone else is going to take this on 👍 They are not online now, but will keep an eye on this to get them assigned ASAP.

@CortneyOfstad Do you need a C+ assigned here?

@mananjadhav — one is automatically assigned via the External label, but I will unassign, as it is not needed at this stage. Thanks!

PR is here. We're on a merge freeze, so will be a bit before it will be released

https://github.com/Expensify/App/pull/42342 has been deployed to staging, taking this off hold.

@MonilBhavsar what are the next steps here?


[Readline-unix] Add CMake find module for unix

Fixes #39219

[X] Changes comply with the maintainer guide.
[X] SHA512s are updated for each updated download.
[ ] ~The "supports" clause reflects platforms that may be fixed by this new version.~
[ ] ~Any fixed CI baseline entries are removed from that file.~
[ ] ~Any patches that are no longer applied are deleted from the port's directory.~
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

IMO this shouldn't be merged.

pkg-config usage is official and already supported on all platforms.
(Known limitation: Not yet supporting multi-config CMake.)
Unofficial CMake usage is vcpkg-only.
unofficial-readline-win32 was left for the benefit of existing users, not as a template for a unix variant with different names.
New cmake packages should be implemented as CMake config (even if they use find_... internally), removing the need for the vcpkg cmake wrapper.

Ok,understood. I'll close then.
Thank you all!


Allows setting an endpoint as well as Flysystem meta options for S3 Adapter

Hey guys, super happy about the whole abstraction of the media handling. We needed to customise some more settings of the Flysystem S3 Adapter and thus added two configuration options to do so.
Cheers, Lars

@LarsFronius thanks for your contribution :+1:


Metric Exporter: NOT DONE

Note
This includes other commits, for a more accurate look at my edits, check here.
Current Work
This is unfinished, it's just a way to follow my work easier. I'm still actively changing many things.
A few things I'm thinking about/working on now

CollectorTraceExporter and CollectorMetricExporter are extremely similar. How can I reuse code better?
One issue is they inherit from different classes (SpanExporter and MetricExporter, respectively). I could just make helper functions though

Adding better metric testing (This is very unfinished right now)

Add an example code segment and better documentation

Bummer, not all of these commits are mine. I merged my code with the upstream repo. This shouldn't be an issue when I push my PR to the main repo.

@JorrieB Couldn't put you as a reviewer

@JorrieB Couldn't put you as a reviewer

Ain't no thang, I'll take a look now and we'll figure out permissions another day.

Also can you take these changes and place them onto a new branch rather than work on master directly? It will make it easier to keep our master clean and in sync with the upstream project and we will submit our work through branches.

I have my own repo, so I've just be coding on that. Also I just made a new PR


It sucks that it doesn’t work for you, if you need help then provide some information as to why it doesn’t work.
This package is maintained by someone in their spare time and provided to the community for free, so let’s be nice to them.

Yeah, you seriously need to read up on open source @mooresvilleinnovationlab...


AWS Education - The Landing Zone Code

Describe the issue
Educational session on The Landing Zone Code
Which Sprint Priority is this issue related to?
Additional context
Definition of done
Session completed.

The Landing Zone Code
We will walk through the code base and look at how to execute/deploy it.


removed unesscary coding testing that was testing hard data object in house.js, brought b…

…ack use of this statement, condensed comments at top  closes #93

Just to sum up a conversation we had elsewhere:

Unnecessary testing - the tests can later be replaced by type checking if we implement that, but for now this is what we're doing to make sure every calculation function puts out the kind of data that we need. It did look like the object was only being used in one place, but that's only because we currently have only one functioning calculation.

this - I think our policy regarding this needs to be discussed as a group before making those changes

I think the main concern here has been with clarity of the code. I completely agree that the code needs to be more clear, but I think there are other ways to achieve that clarity. We'll try out some different options and see if we can find something that fits.

Some alternatives: https://gist.github.com/knod/37452cbfef13d4b017300e837772fd6a

I'm in favor of the gist above.


Capability for scrolling to an element.

Sometimes an element is not clickable because it is not in the viewport. However,
tests like <query_object>.present or <query_object>.visible will return
True.This change provides the capability for scrolling to an element in the
viewport.

@jzoldak @clytwynec @raeeschachar

@clytwynec @jzoldak @raeeschachar
Updated based on comments.

One other suggestion for the tests. Up to you if you want to use it.
:+1:

:+1:


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/32033

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/46089

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/78612

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/105985

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/105993

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/110427

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/110944

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/111465

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/111889

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114433

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/116830


submitting MIR cert for unknown stake address leads to Rewards differ between ledger and db-sync

OS
Your OS: Fedora 34
Versions
The db-sync version: 12.0.0-pre3
PostgreSQL version: 11.11
Build/Install Method
The method you use to build or install cardano-db-sync: nix-build
Run method
The method you used to run cardano-db-sync (eg Nix/Docker/systemd/none): none
Additional context
Latest master node running on local cluster, Alonzo era, Protocol Version 6.
Problem Report
I have a test that tries to send funds from reserves or treasury pot to a stake address that was never registered on the blockchain.
The issue cannot be reproduced when the address was previously registered.
First variant of the test tries to transfer 1500000 ADA from the treasury pot. At the epoch boundary, following is reported by db-sync:
[db-sync-node:Warning:58] [2021-10-29 10:47:05.62 UTC] validateEpochRewards: rewards spendable in epoch 24 expected total of 1094.074712 ADA but got 1501094.074712 ADA
[db-sync-node:Error:58] [2021-10-29 10:47:05.62 UTC] Rewards differ between ledger and db-sync.
Please report at https://github.com/input-output-hk/cardano-db-sync/issues.

Second variant of the test tries to transfer 50000000 ADA from reserves pot. At the epoch boundary, following is reported by db-sync:
[db-sync-node:Warning:58] [2021-10-29 10:47:06.20 UTC] validateEpochRewards: rewards spendable in epoch 29 expected total of 1117.391357 ADA but got 50001117.391357 ADA
[db-sync-node:Error:58] [2021-10-29 10:47:06.20 UTC] Rewards differ between ledger and db-sync.
Please report at https://github.com/input-output-hk/cardano-db-sync/issues.

From outputs above it seems db-sync thinks the amounts were actually transferred. In reality the MIR cert didn't have any effect, the stake addresses never existed on the blockchain.

This almost certainly has the same root cause as https://github.com/input-output-hk/cardano-db-sync/issues/921

Fixed in PR #944 .


Fetch presence data when user card is open

The web app does not necessarily fetch presence data for users who've been idle for a long time. When a user's card is open, we should fetch and display precise availability data, even if the user has been away for a long time.
We should check to make sure that we are happy with the strings used for longer time periods.
Related issues:

#31039

CZO thread

@zulipbot claim

@zulipbot claim

Hi @alya,
I came across the CZO thread you tagged for this issue, and it seems like the problem may have been resolved there. Could you kindly confirm if this issue is still open for work? I would appreciate your guidance.
Thank you!

@sig5 ,are you working on this issue?

I am taking up this issue since my PR for the related issue #31039 has gone under integration review, and I will file a new PR for this issue as well as soon as that gets merged.


go-containerregistry: 0.11.0 -> 0.14.0

Description of changes
Note, this PR was generated using an unreleased nixpkgs-update version containing a bug fix for go drvs setting vendorSha256 (or vendorHash) to null.
See https://github.com/ryantm/nixpkgs-update/pull/344
Usual nixpkgs-update output is down below :)
diff: https://github.com/google/go-containerregistry/compare/v0.11.0...v0.14.0
https://github.com/google/go-containerregistry/releases/tag/v0.14.0
https://github.com/google/go-containerregistry/releases/tag/v0.13.0
https://github.com/google/go-containerregistry/releases/tag/v0.12.1
https://github.com/google/go-containerregistry/releases/tag/v0.12.0
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Semi-automatic update generated by nixpkgs-update tools.
meta.description for go-containerregistry is: Tools for interacting with remote images and registries including crane and gcrane
meta.homepage for go-containerregistry is: https://github.com/google/go-containerregistry
Updates performed

Golang update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.14.0 in filename of file in /nix/store/0i696xfaxcn4wkh1av93llaf9z7md2km-go-containerregistry-0.14.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
go-containerregistry

Instructions to test this update (click to expand)

Build yourself:
nix-build -A go-containerregistry https://github.com/r-ryantm/nixpkgs/archive/d950894c3a8a29636da160d5a2bbd6fd44a64680.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0i696xfaxcn4wkh1av93llaf9z7md2km-go-containerregistry-0.14.0
ls -la /nix/store/0i696xfaxcn4wkh1av93llaf9z7md2km-go-containerregistry-0.14.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

crane
gcrane
go-containerregistry

Maintainer pings
cc @yurrriq for testing.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2010


WIP: Investigate IKC

OpenKh.Research.Kh2Anim changes
OpenKh.Research.Kh2Anim.exe -h
1.0.0

Usage: OpenKh.Research.Kh2Anim [command] [options]

Options:
  --version      Show version information
  -?|-h|--help   Show help information

Commands:
  bake           Bake motion as Matrix4x4, and then write them into xml file
  bakery         Launch bakery web server (powered by ASP.NET Core) to bake motion as Matrix4x4
  burn           Burn
  fry            Fry fake motion
  simple-mdlx    Create mdlx having 2 bones
  summary-mdlxs  Summary bones count of them

Run 'OpenKh.Research.Kh2Anim [command] -?|-h|--help' for more information about a command.

OpenKh.Research.Kh2Anim bakery
Export OpenKh.Kh2AnimEmu feature thru ASP.NET Core MVC.

API: POST /Kh2Anim/BuildMatrices
Request:
{
 "KeyFrames": [0, 1, 2, 3],
 "Mdlx": "(mdlx base64)",
 "Motion": "(anb base64)"
}

Model:
namespace OpenKh.Research.Kh2Anim.Models
{
    public class BuildMatricesRequest
    {
        public byte[] Mdlx { get; set; }
        public byte[] Motion { get; set; }
        public float[] KeyFrames { get; set; }
    }
}

Response:
{
 "Matrices": [[[]]],
 "MatrixCount": 0
}

Model:
namespace OpenKh.Research.Kh2Anim.Models
{
    public class BuildMatricesResponse
    {
        public float[][][] Matrices { get; set; }
        public int MatrixCount { get; set; }
    }
}

Usable from external program. Useful for more research of motion:

OpenKh.Research.Kh2Anim summary-mdlxs
Sample output BoneCount.xlsx
OpenKh.Research.Kh2AnimIKC
.anb file low tester GUI editor (having no load/save).

Some 📝 about pre/post, and interpolation modes from Blender documents.
pre/post

Constant
Extrapolation
Cyclic
Cyclic Extrapolation

https://download.blender.org/documentation/htmlI/ch14s03.html

http://atomic.jpn.ph/blender/manual/animation/ipo-curve.html

interpolation modes

Constant
Linear
Bezier

https://wiki.blender.jp/Doc:2.6/Manual/Animation/Editors/Graph/FCurves

#!/bin/bash
set -eux

function plotWith() {
  ./OpenKh.Research.Kh2Anim.exe fry \
    --prefix "$1" \
    --output-mset "$1.mset" \
    --matrix-value 20 \
    --initial-value 50 \
    --pre $2 \
    --post $3 \
    --gnuplot-insert "set yrange [0:100]" \
    --timeline "hermite,30,70,0,0" \
    --timeline "hermite,50,100,0,0" \
    --timeline "hermite,70,80,0,0"
  gnuplot "$1.txt"
}

plotWith "pre 0 post 0" 0 0
plotWith "pre 1 post 1" 1 1
plotWith "pre 2 post 2" 2 2
plotWith "pre 3 post 3" 3 3

plotWith "pre 0 post 1" 0 1
plotWith "pre 0 post 2" 0 2
plotWith "pre 0 post 3" 0 3

plotWith "pre 1 post 0" 1 0
plotWith "pre 1 post 2" 1 2
plotWith "pre 1 post 3" 1 3

plotWith "pre 2 post 0" 2 0
plotWith "pre 2 post 1" 2 1
plotWith "pre 2 post 3" 2 3

plotWith "pre 3 post 0" 3 0
plotWith "pre 3 post 1" 3 1
plotWith "pre 3 post 2" 3 2


Testing components that contain stateless components

Hello. I'm leveraging React's Container components as well as Stateless components.
What I would think is a fairly common pattern is to have one of these Container components have one or several Stateless components as children:
class AppContainer extends Component {
   render() { return <App {...this.state} />; }
}

export default Container.create(AppContainer);

Where <App /> is a stateless component:
const App = ({ registration, initiative, lessonsData, ui }) => ( 	//<some more markup here /> );
Currently when attempting to write tests on AppContainer, I get the following warning:

Warning: App(...): No render method found on the returned component instance: you may have forgotten to define render, returned null/false from a stateless component, or tried to render an element whose type is a function that isn't a React component.

and also error:

TypeError: inst.render is not a function

when executing
return TestUtils.renderIntoDocument(    <AppContainer /> );
Am I missing something obvious here? I know there are some issues with Jest and Stateless components, but I would think that there must be a solution or at least a workaround for this scenario.
Thanks for any help!

Hey! I think the problem is that you are probably not unmocking all the modules you should be unmocking. In your example, Container and App need to be unmocked. Automocking is not actually a great default for many people or projects (I'll probably write a blog post about this soon).
Here are your options, based on Jest 0.10.0 which was just released:

jest.unmock('path/to/App'); jest.unmock('path/to/Container'); etc.
jest.disableAutomock() to disable mocking by default
"automock": false in the configuration.

I recommend basing your work off the react example in this repo :) If this turns out to be a problem with Jest, I'm happy to reopen this issue.

Hi @cpojer . Thank you very much for the reply.
Definitely the problem is the mocking. What I needed clarification is on what the best practice in this scenario, and unmocking the child components was the piece I was missing.
Thanks!


The popup of Rancher UI doesn't show in the screen top

Rancher versions:
rancher/server: all
The popup/modal shows in the top of UI but not the top of screen.
If we have a lots of stacks, we need to scroll up to click the confirm button.
it will be very great if it shows on the top of browser.

@Maxwell1987 please use English to submit issue next time. thanks

Version - v1.6.11-rc7
Verified Fixed


Nm connection refactoring

Coverage increased (+1.3%) to 67.361% when pulling 0eda21ebbf7c5f1cac216c41d9abe21af7dc993f on EdDev:nm-connection-refactoring into a2f08a9db213e91618a20067d71b93ca0b2295d4 on nmstate:master.

This block #287

I'm summarizing the discussion on the PR regarding the ConnectionProfile and ConnectionSetting classes instantiation and initialization to organize it a bit.
The PR proposed to separate the initialization of the object from it instantiation, due to the many forms and sources of the initialization stage. It should be noted that these objects are a kind of proxy to the libnm objects.
It looks like this:
o = O()  # Instantiated only object
o = O(other_o.libnm_object)  # Instantiated and initialized based on an existing libnm object.
o.create(new_settings) # Init it based on new settings
o.import_by_id(id) # Init it based on an ID, loading the libnm object from the system based on the id.
o.import_by_dev(dev) # Init it based on a device, loading the libnm object from the system based on the device.

If I understand the main concern from @tyll about this approach, it is the intermediate state of the object between instantiation and initialization.
I do not think it is a problem, it is just a definition of how this object needs to be used.
The problem with putting everything in the constructor is: the duplication and mess required in the constructor, and its required adjustment whenever something new needs to be added (affecting the constructor signature and the logic in it, which in turn affects all users of it, instead of only the new parts).
There are other reasons of why to use later initialization, but they are less relevant now.
Unifying it all under the constructor will look something like this:
(This is actually fixable in a language that supports overloading the constructor, but unfortunately it cannot be done in python).
class O():
  def __init__(libnm_obj=None, new_settings=None, id=None, device=None):
    if libnm_obj is not None:
      ...
    elif new_settings is not None:
      ...
    elif id is not None:
      ...
    elif device is not None:
      ...
    else:
      raise Exception()

If two parameters are used by mistake requires more validation in the constructor.
Now, although I think it is perfectly fine to use the original approach, especially in our case here, I can suggest an option to use a builder to do this, not exposing the non initialized object but still preserve the cleanless:
class O():
  def __init__(libnm_obj=None):
    ...
  @staticmethod
  def create(new_settings):
    o = O()
    o._create(new_settings)
    return o
  ...

I'm summarizing the discussion on the PR regarding the ConnectionProfile and ConnectionSetting classes instantiation and initialization to organize it a bit.
The PR proposed to separate the initialization of the object from it instantiation, due to the many forms and sources of the initialization stage. It should be noted that these objects are a kind of proxy to the libnm objects.
It looks like this:
o = O()  # Instantiated only object
o = O(other_o.libnm_object)  # Instantiated and initialized based on an existing libnm object.
o.create(new_settings) # Init it based on new settings
o.import_by_id(id) # Init it based on an ID, loading the libnm object from the system based on the id.
o.import_by_dev(dev) # Init it based on a device, loading the libnm object from the system based on the device.

If I understand the main concern from @tyll about this approach, it is the intermediate state of the object between instantiation and initialization.

IMHO this use case is unnatural, therefore I would prefer something like this:
class ConnectionProfile(object):
    def __init__(self, profile=None):
        if not profile:
            profile = nmclient.NM.SimpleConnection.new()

        self._con_profile = profile  #  IMHO it could also make sense to allow profile to be a UUID instead of the SimpleConnection object and then fetch the corresponding SimpleConnection from NM

    def add_settings(self, settings):
        for setting in settings:
            self._con_profile.add_setting(setting)

class NMClient(object):
...
    def get_profile(con_id):
        connection_profile = None
        nm_profile = nmclient.get_connection_by_id(con_id)
        if nm_profile:
            connection_profile = ConnectionProfile(nm_profile)

class NMDevice(object):
....
    def get_active_profile(self):
        connection_profile = None
        ac = get_device_active_connection(nmdev)
        if ac:
            profile = ac.props.connection
            connection_profile = ConnectionProfile(profile=profile)

        return connection_profile

IMHO this use case is unnatural, therefore I would prefer something like this:

I have no idea to what unnatural case you refer to but I have provided in my examples the use cases for the usage itself. You can look for ConnectionProfile and see that all initialization options are used.
Please provide actual usage alternatives from the code that uses the new class.
The proposal for use an NMClient class is not something I think is a good thing at the moment, but you are welcome to propose it as a following refactor step and we can examine its usefulness.

IMHO it could also make sense to allow profile to be a UUID instead of the SimpleConnection object and then fetch the corresponding SimpleConnection from NM

That will require checking the type of the input argument and will make even worse the conditions I previously explained that should not exist in the constractor.
It will be more useful to answer the specific usage cases presented in the summary given, which relate directly to how the existing code uses the connection profiles. And to propose a solution to the points I presented as problematic when doing it all in the constructor.

IMHO this use case is unnatural, therefore I would prefer something like this:

I have no idea to what unnatural case you refer to but I have provided in my examples the use cases for the usage itself. You can look for ConnectionProfile and see that all initialization options are used.

For someone not used to Nmstate, the object is special compared to other objects in Python IMHO.

Please provide actual usage alternatives from the code that uses the new class.

Code from this PR:
    con = connection.ConnectionProfile()
    con.import_by_device(nm_device)
    if con.profile:
        bond_settings = con.profile.get_setting_bond()

Code with my class:
connection_profile = nm_device.get_active_profile()
if connection_profile:
    bond_settings = connection_profile.get_bond_settings()

Actually I realized that get_active_profile() should raise an exception, so the code would be:
try:
    connection_profile = nm_device.get_active_profile()
    bond_settings = connection_profile.get_bond_settings()
except KeyError:  # or some better matching exception:
    # do what needs to be done if there are no bond_settings

This will not initialize the object a little bit, then maybe intialize it more and does not need to check again if it is really initialized.

The proposal for use an NMClient class is not something I think is a good thing at the moment, but you are welcome to propose it as a following refactor step and we can examine its usefulness.

IMHO it could also make sense to allow profile to be a UUID instead of the SimpleConnection object and then fetch the corresponding SimpleConnection from NM

That will require checking the type of the input argument and will make even worse the conditions I previously explained that should not exist in the constractor.

The arguments did not really convince me and I forgot them since this is AFAIK how to achieve overloading of methods in Python. However, it would also fine by me to make it a uuid parameter and have a second constructor as a classmethod that accepts a raw profile (IMHO this is a more internal way to create a wrapper object).

ci test please


When executing the command, the following error occurs and no split video is generated.

Description:
When executing the command, the following error occurs and no split video is generated.
Unrecognised option ‘preset’.
Error splitting the argument list: Option not found
Command:
scenedetect -i video.mp4 split-video
Output:
BUG_REPORT.txt
Environment:
[PySceneDetect] PySceneDetect 0.6.4
Usage: scenedetect version [OPTIONS]
Media/Files:

I also met this problem. How did you solve this?

Try updating to a newer version of ffmpeg or modifying the arguments passed to it if you cannot upgrade.
What version of ffmpeg are you using?  Could you provide output with the -v debug flag added to the beginning of your PySceneDetect command?


Player demo error

Showing pydantic.errors.PydanticImportError for the demo view on Streamlit

File "/home/adminuser/venv/lib/python3.8/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 600, in _run_script
exec(code, module.dict)
File "/mount/src/streamlit-gallery/streamlit_app.py", line 3, in
from streamlit_gallery import apps, components
File "/mount/src/streamlit-gallery/streamlit_gallery/components/init.py", line 5, in
from .pandas_profiling.streamlit_app import main as pandas_profiling
File "/mount/src/streamlit-gallery/streamlit_gallery/components/pandas_profiling/streamlit_app.py", line 2, in
import pandas_profiling
File "/home/adminuser/venv/lib/python3.8/site-packages/pandas_profiling/init.py", line 8, in
from pandas_profiling.compare_reports import compare
File "/home/adminuser/venv/lib/python3.8/site-packages/pandas_profiling/compare_reports.py", line 6, in
from pandas_profiling.config import Correlation, Settings
File "/home/adminuser/venv/lib/python3.8/site-packages/pandas_profiling/config.py", line 7, in
from pydantic import BaseModel, BaseSettings, Field, PrivateAttr
File "/home/adminuser/venv/lib/python3.8/site-packages/pydantic/init.py", line 386, in getattr
return _getattr_migration(attr_name)
File "/home/adminuser/venv/lib/python3.8/site-packages/pydantic/_migration.py", line 296, in wrapper
raise PydanticImportError(


Data size homework

create section for handbook from datasize homwork.
remember 1024

look at the googl drive include the link here and extract some useful information for a section in class.

I don't understand the context please explain.

we have a google docs in the first week that students added to about data sizes
we need a summary of the discussuion or move part of it into a latex/md into the handbook


Initial extension architecture v0

Overview
What if we could have extensions?
That would be neat.
This slightly-sprawling pull request:

Defines an extension API, and adds some support for it, allowing a hypothetical extension to add a new PQL query.
Supports precomputing expressions on the coordinating node, and replacing the calls that generated them with references to the precomputed value. (This is necessary to make cross-index queries work.)
Supports cross-index queries.
Adds a more efficient Roaring format for transmitting rows to and from nodes, both in requests and responses.
Adds a sample extension, Some(), which can return a pseudo-random selection of bits from a provided bitmap.
Messes with, possibly improving, argument validation logic for PQL.
Also, as a separate commit but it's in here anyway, adds some profiling logic to our existing opentracing stuff, so a query made with ?profile=true will respond with a nested tree of span durations for operations performed while executing the query.

(The profiling thing could probably be split out easily enough, it just became a lot more interesting when I started having cross-shard experiments to run and performance questions about them.)

I'm gonna look at this, but based on our discussion this morning, I think we should cut a 1.4 with current master before merging this and a few other things for a soon-to-follow-but-probably-less-stable 1.5.

Agreed. I might also have a notion for cleaning this up further, which needs more investigation, but might allow dropping most of the "many different op types" stuff.


[Windows] Fix restoring fullscreen window.

Fixes "initial full-screen" → "window" not restoring size.
Fixes "initial full-screen" → "minimize" → "restore" not visible.

Thanks!


optional callback at each opt step

Context:
Optimizer is opaque
Description of the Change:
in the minimize function now we can pass a callback that will be executed at the end of each step (with trainable_parameters as argument) and the return is stored in self.callback_history.
Benefits:
Can do lots of things, e.g.

Possible Drawbacks:
None
Related GitHub Issues:
None

Thanks for the PR! This is the number 1 item on my wish list 😃
I think this already satisfies my need right now. But here's a few nice to haves:

instead of a single callback, it could be more convenient to pass a dict/list of callbacks.
callback function taking as argument the current step number of the optimizer, and the cost of the current step.
callback function taking as argument the current state (e.g. lr) of the optimizer, or even better, the ability to update optimizer state (think LR scheduling).

Oh nice suggestions! We can do all of them in principle. For the dict/list of callbacks: no problem. For the other two, we need to make a choice no?

Yes I think the first one is easy to add. The second one should be simple too, I would say at least step number can be added. I'm taking inspirations from keras' callbacks mostly, but I don't think, at this point, we need dedicated "kinds" of callbacks like their callback class api.

Would you do it? 😇

Sure, I will

I am merging now and adding a ticket to add test to this PR.


Would like Python's Jinja2 templating lanquage to be supported.

Would like to be edit Python's Templating lanquage Jinja2.   It uses {{}}, {% %}, {# #} {% endif %} etc.

Is there anyone working on this?

can we please add support for JInja2?

Unfortunately, we currently don't have the resources to add support for Jinja2.
However, we are open for pull requests by the community!

@hediet if you help setting me on the right path, I'd me more than happy to contribute.

See here for the existing languages: https://github.com/microsoft/monaco-languages/tree/main/src
Here is a playground you can use: https://microsoft.github.io/monaco-editor/monarch.html

Twig is pretty similar to Jinja, I suppose: https://github.com/microsoft/monaco-languages/tree/main/src/twig
It would be great to a language server on top of a highlighter, in that case, we need a Jinja compiler in JS. I found this one which might be a good start.

Working on this.. will update as I progress through this awesomeness.
To give us a bit of background, I have been in need of a decent Jinja2 template editor myself at work. VSCode is the obvious favourite if it supports it.
I have done plenty with Jinja, so hopefully that experience will be helpful here.🤷🏻♂
This will be my first open source contribution, ever. ❤😅

@goudarzi Awesome, thank you!
However, please note that a monarch language syntax definition will only be available in the standalone monaco editor, not in VS Code.
You need a textmate grammar to support VS Code (if there is not already an extension that provides one)!

@hediet I should thank you. 🙏🏻
I understand. Good call out. I've worked with monaco-editor before to integrate it into systems (usually for custom rules engines with a custom DSL... I know... reinvention of the wheel... say that to the product owners..)
So.. I realise that this new addition will only be available in monaco-editor, and not in VSCode (as that integration requires a new extension if I understand it correctly. Hopefully for future contributions! 😅)
At this point, I've setup both monaco-editor and monaco-languages reps locally, and I'm trying to point the generated pages (under tests in monaco-editor rep) at the monaco languages repo, to load my jinja2 entry..
I understand this can be done by customising the initialisation of monaco-editor within the HTML page to point it at a different source (for language extensions), but I can't find a good reference in the docs to verify what I'm doing is correct.. my gut feeling is, there has to be a more automated/test oriented way? This is for interacting with the editor only though. I understand the new lang comes with its own tests too.
Am I on the right path so far?

See this search: https://github.com/microsoft/monaco-languages/search?q=apex
You need

src/monaco.contribution.ts to mention your language
src/{your-language}/apex.contribution.ts to register your language
src/apex/apex.test.ts to test your language. *.test.ts files should run automatically.

Already done that.
Now, I'm trying to load the new language entry (jinja2) in monarch, and connect its languages source to my languages repo (that has the new lang).
Not sure if the following is the right approach to "test" and interact with my new language though...
I'm looking at the metadata.js file in monaco-editor rep, and I'm thinking the following paths.src value should be pointing at my custom monaco-languages repo, and when recompiled, monarch will include my new language in its generated tests pages...
,
			{
				name: 'monaco-languages',
				contrib: 'vs/basic-languages/monaco.contribution',
				modulePrefix: 'vs/basic-languages',
				thirdPartyNotices: 'node_modules/monaco-languages/ThirdPartyNotices.txt',
				paths: {
					**src: '/monaco-languages/release/dev',**
					'npm/dev': 'node_modules/monaco-languages/release/dev',
					'npm/min': 'node_modules/monaco-languages/release/min',
					esm: 'node_modules/monaco-languages/release/esm',
				}
			}

Am I making sense?

To clarify further, I'm trying to load my new jinja2 lang in here pointed at my local monaco-languages repo (with its own sample code):

Afaik that should work. Make sure that you build monaco-languages.

I understand [why you're suggesting a linked playground..].
No worries. Let me see how I go. If any screws pop out of the engine, I will give us a shout here.
Thanks for your help!

So.. I realise that this new addition will only be available in monaco-editor, and not in VSCode (as that integration requires a new extension if I understand it correctly. Hopefully for future contributions! 😅)

The language server protocol was created specifically to solve this "N language support to M editor client implementations" problem. Of course, implementing semantic tokens through code is going to be completely different from creating a Monarch and/or TextMate grammar.

@hediet local setup with monarch is now working loading jinja2 (new language) with a sample file. Had to do a linked playground for now, mainly because of the two different ecosystems (requirejs and webpack compilation between monaco-editor, and monaco-languages repos)
@buremba I'm reviewing https://github.com/sstur/jinja-js/blob/master/lib/jinja.js, and agreed it's a good place to start. Thank you for sharing that.
I am also reviewing twig's syntax definition, and it seems to have limitations with the surrounding tags (it assumes the template is HTML, since twig is written for PHP..). Jinja's syntax can be applied to any text format - so I will need to extend the definition to not assume the template is HTML for example.. food for thought for now, but if you have another example from the existing langs where the surrounding template syntax can be anything, that could point me towards the right syntax definition.
If not, that's okay too. I will be updating twig's syntax to be more relaxed with the non-jinja parts of the template file.

Guys, probably a dumb question - what's the branching policy here? I don't see any feature branches in the origin.
Should I just keep my changes local, and according to the contribution guide, just kick up the packages version and publish them when ready?

So far I have this.. there are few issues, and some extensions needed in the syntax definition - but it should be fine.

Will get back to it before the end of this week.. thanks again.

Hey @rikkigouda, did you have any success with Jinja2 for Monaco? Any update available?

Hey @rikkigouda, did you have any success with Jinja2 for Monaco? Any update available?

It's been a while. 😄
I remember setting it up, getting a very basic syntax working, but had trouble configuring the language server and autocompletion working.
I need some motivation to get back to it. Life's been busy.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!

sad story


Don't assign tasks to the instigator of the task

We round robin reviewing PRs. If I create a PR and it's my turn to go next, then I get assigned the task in Slack. I get around this by reassigning now, but it would be nice if it just knew I was that person.
Thinking the best way to do this would be to take the usernames/IDs of users who should be excluded from assignment as a parameter to the webhook endpoint.
That way we could make our Zap look at the incoming payload from GitHub, map the GitHub username to the Slack username, and then pass the parameter.

Moved to Basecamp todo, https://3.basecamp.com/3653596/buckets/6781286/todos/961257329.


view-model.ref broken with latest release

relevant code example: http://plnkr.co/edit/fJA5gkQ0kz6pyVx6Tuwo

Just pushed a fix. Release coming in just a minute.

Released aurelia-binding 0.9.1. You can run jspm update to get the fix. Sorry about that!


Bug with Wifi Digital Meter PJ-1103 Power Meter

Hi mate, I found that every time that I restart HA, I have this error in the LOGs.
But in the other hand the device also works. That has me confused
Describe the bug:
Este error se originó a partir de una integración personalizada.
Logger: custom_components.tuya_local.device
Source: custom_components/tuya_local/device.py:184
Integration: Tuya Local (documentation, issues)
First occurred: 20:23:16 (1 occurrences)
Last logged: 20:23:16
Failed to refresh device state for Clamp power meter
To Reproduce:
If you have integrated the clamp power meter, restart HA, go to the LOGs and you will see the error failed to refresh state
Expected behavior:
No have a failed to refresh device every time that I restart HA.
Additional context:
I don't know what means this error. Maybe you know what is it and can help me to solve it :)
Thank you

It means Home Assistant was not able to get the device status the first time it connected.  As long as it is recovering, this is not a problem and should be expected occasionally.  This may be more likely if your protocol version is set to "auto", so if you know what version it is using (you can find out by downloading the device diagnostics and looking there) it might help to set it to that version.


use python api for checking ipykernel version and cache kernels

For #6391

cache valid kernels so the button enables faster
use python api for checking ipykernel version

[ ] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR).
[x] Title summarizes what is changing.
[ ] Has a news entry file (remember to thank yourself!).
[ ] Appropriate comments and documentation strings in the code.
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated.
[ ] Test plan is updated as appropriate.
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed).

Codecov Report

Merging #6607 (164471a) into main (df566d7) will decrease coverage by 8%.
The diff coverage is 79%.

@@           Coverage Diff           @@
##            main   #6607     +/-   ##
=======================================
- Coverage     69%     61%     -9%
=======================================
  Files        410     410
  Lines      28240   28262     +22
  Branches    4196    4199      +3
=======================================
- Hits       19574   17317   -2257
- Misses      7001    9437   +2436
+ Partials    1665    1508    -157

Impacted Files
Coverage Δ

src/client/api/types.ts
100% <ø> (ø)

src/client/common/installer/productInstaller.ts
47% <ø> (-4%)
:arrow_down:

...science/jupyter/kernels/kernelDependencyService.ts
86% <50%> (ø)

...client/datascience/commands/activeEditorContext.ts
91% <77%> (-1%)
:arrow_down:

src/client/api/pythonApi.ts
59% <100%> (+<1%)
:arrow_up:

src/client/common/types.ts
100% <100%> (ø)

...t/datascience/interactive-ipynb/autoSaveService.ts
8% <0%> (-83%)
:arrow_down:

...cience/interactive-ipynb/nativeEditorOldWebView.ts
15% <0%> (-70%)
:arrow_down:

...ctive-common/intellisense/languageServerWrapper.ts
9% <0%> (-66%)
:arrow_down:

...ience/interactive-ipynb/nativeEditorProviderOld.ts
14% <0%> (-62%)
:arrow_down:

... and 117 more


feat(select,spinner,separator,toggle): more input signals

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our
guidelines: https://github.com/goetzrobin/spartan/blob/main/CONTRIBUTING.md#-commit-message-guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Which package are you modifying?

[ ] accordion
[ ] alert
[ ] alert-dialog
[ ] aspect-ratio
[ ] avatar
[ ] badge
[ ] button
[ ] calendar
[ ] card
[ ] checkbox
[ ] collapsible
[ ] combobox
[ ] command
[ ] context-menu
[ ] data-table
[ ] date-picker
[ ] dialog
[ ] dropdown-menu
[ ] hover-card
[ ] icon
[ ] input
[ ] label
[ ] menubar
[ ] navigation-menu
[ ] pagination
[ ] popover
[ ] progress
[ ] radio-group
[ ] scroll-area
[x] select
[x] separator
[ ] sheet
[ ] skeleton
[ ] slider
[ ] sonner
[x] spinner
[ ] switch
[ ] table
[ ] tabs
[ ] textarea
[ ] toast
[x] toggle
[ ] tooltip
[ ] typography

What is the current behavior?

Closes #
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

Hi, are you converting these manually? There is a reasonably stable CLI migration command for this.
Please take a look: https://twitter.com/Enea_Jahollari/status/1773335882780557471
npm i ngxtension
ng g ngxtension:convert-outputs

Hi, are you converting these manually? There is a reasonably stable CLI migration command for this.
Please take a look: https://twitter.com/Enea_Jahollari/status/1773335882780557471
npm i ngxtension
ng g ngxtension:convert-outputs

But there is a problem. Compatibility with Storybook. You can's convert everything right now...

Ah, that makes sense! Thanks for the info, I hadn't tried it myself yet.

LGTM!
Its just so much cleaner this way!


package dependencies are broken

I had the same issue just today. I'm downgrading to<EMAIL_ADDRESS>for now in the hopes that this fixes it.

I was able to get react-easy-charts to run with yarn add d3-scale and react-faux-dom, as these appear to be the two dependencies missing from the latest release

It is.
When installing, npm warn me to install these dependencies by myself:

d3
d3-array
d3-scale
d3-shape
d3-time-format
react-faux-dom

Yet, I don't know if I have to install it all or maybe just some of it to just running simple doughnut chart.

I see the list of missing peer dependencies, with terminal WARNs, but when I try to manually install each the peer dependencies they do not seem to meet the requirements of the module. I have tried an older version of d3, but still no resolution. In the client console, I am getting the category 20 error as well. I will try yarn. I wonder if npm 3 no longer auto-installing peer dependencies is the issue...

I have this issue with Yarn now too, my d3-scale and react-faux-dom fix from last month no longer works.
It seems this package only works with a very specific set of D3, NPM, and React versions...


Version 2.5 miss libsasl2.so.3 in ubuntu 22.04 cause error!

librdkafka.so:
linux-vdso.so.1 (0x00007ffd72c94000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f8ab1f63000)
libsasl2.so.3 => not found
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f8ab1f5e000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f8ab1f59000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f8ab1f54000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8ab1d29000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8ab2802000)

Prebuilt binaries in librdkafka.redist are linked with RHEL compatible distributions. We have upgraded to RHEL 8 and compatible version and they have this bumped soname that is different from Debian/Ubuntu one.
A solution that works is to remove usage of librdkafka.redist, this way, and install librdkafka Debian packages from Confluent Debian clients repository
<PackageReference Include="Confluent.Kafka" Version="2.5.0" />
<PackageReference Include="librdkafka.redist" Version="2.5.0" ExcludeAssets="All" />


Update jar-hell resolution like SmartBear using in their maven plugin

Fix null plugin description.
Use resolution stratage like SmartBear using for their maven plugin.

Coverage remained the same at 33.871% when pulling 2cb25662bcd46f6a3f625785478902587bbca856 on daggerok:master into c75a2caade5b4ae71970180942a3c3338bfc42c6 on byte-shifter-ltd:master.


⚠ AlphaRatio has degraded performance

In 17abd52, AlphaRatio ($AR) experienced degraded performance:

HTTP code: 200
Response time: 1357 ms

Resolved: AlphaRatio performance has improved in dfa8e20.


ClientCertificateCredential: add support for .pfx files

This should work: https://stackoverflow.com/questions/6371775/how-to-load-a-pkcs12-file-in-openssl-programmatically
This is apart from using windows crypto stack on Windows (#4084) - even on Linux you should be able to use .pfx certificate.

See https://github.com/Azure/azure-sdk-for-cpp/issues/4907#issuecomment-1688894456

The security first approach encourages the use of ManagedIdentity, WorkloadIdentity, and other TokenCredential auth patterns. We will not be adding this support.
Should you come across this issue and desire this support, please open a new issue describing your workflow.
//cc: @scottaddie


Updated ACCESS_TOKEN_URL to api.instagram

https://instagram.com will result in a 405 error after last update of instagram api (nov 17)

I was just coming here to open up this issue -- it was driving me crazy. Thanks @matthowland. @omab can you please merge this and cut a new version?

Both url changed and it works.

It affects us too, Instagram authentication has been broken for the past 4 days until we found this pull request. It works and fixes the problem.
BTW: we've changed both urls (AUTHORIZATION_URL, ACCESS_TOKEN_URL)

@matthowland could you update AUTHORIZATION_URL too?

There seems to be a duplicate of this PR, but with both URLs changed: https://github.com/omab/python-social-auth/pull/797.

Fixed by #797


There should be feedback on the search

We should have a light text below the search box that reads Found ${X} results for "${term}".

This does not enhance the UX and makes the clutters the UI.


Weibenfalks first blog post

This is the text that I moved over to a md file in for the Tina Site blog.

Thanks! I will look into your comments and update the blog post.
Never thought of to not use the word ”just” … Guess it can also be a cultural thing on how using different words are interpreted. =)
You ”just” used it yourself also .. So it’s easy to use it without knowing … ”Just read those if you haven’t already” ;)
And … you shouldn’t ever feel terrible because you don’t know anything yet. I teach React stuff and hooks are quite new still.
Many don’t know or use them. I love them and use them all the time. If you try them out and get used to it my belief is that you will find them more convenient to use than classes.
I’m actually not that comfortable with classes anymore. That’s because I haven’t used them for a while.
To being a dev is devoting to life long learner. That’s why I always will consider myself as a junior dev (even if I created my first web page 1995) and constantly learn new stuff. =)
Again, thanks for the feedback!

3 jan. 2020 kl. 00:38 skrev Frank Taillandier<EMAIL_ADDRESS>@DirtyF commented on this pull request.
Thank you so much. As an eternal young apprentice, especially in React, I appreciate the fact you detailed some important concepts to know, like the difference between a HOC, a render prop, etc.
A few remarks on the form now. 😄
Like React, Markdown is written with a capital M when used as a noun.
We don't have any styleguide yet, but I feel function names should be inline code.
We also should try to be as inclusive as possible, some stuff is described as easy here, or you can just use a React Hook, but it's all news to me and makes me feel terrible when I read it.
Just read those if you haven't already:
https://bradfrost.com/blog/post/just/ https://bradfrost.com/blog/post/just/
https://css-tricks.com/words-avoid-educational-writing/ https://css-tricks.com/words-avoid-educational-writing/
Thanks 🙏
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362663188:

@@ -0,0 +1,227 @@
+---
+title: Three ways to edit Markdown with Tina + Gatsby
+date: '2020-01-02T07:00:00.000Z'
+author: Thomas Weibenfalk
+draft: false
+---

+###Introduction
+Supercharge your static site with real time content editing!
+In this post I will explore the three different methods Tina offers to edit markdown on your Gatsby site. You’ll learn how to setup Tina with both Page Queries and Static Queries.
⬇ Suggested change
-In this post I will explore the three different methods Tina offers to edit markdown on your Gatsby site. You’ll learn how to setup Tina with both Page Queries and Static Queries.
+In this post I will explore the three different methods Tina offers to edit Markdown on your Gatsby site. You’ll learn how to setup Tina with both Page Queries and Static Queries.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362663676:

@@ -0,0 +1,227 @@
+---
+title: Three ways to edit Markdown with Tina + Gatsby
+date: '2020-01-02T07:00:00.000Z'
+author: Thomas Weibenfalk
+draft: false
+---

+###Introduction
+Supercharge your static site with real time content editing!
+In this post I will explore the three different methods Tina offers to edit markdown on your Gatsby site. You’ll learn how to setup Tina with both Page Queries and Static Queries.
+
+This post will not cover the basic, initially, setup of Tina that is needed. For a full documentation on how to initially setup Tina with Gatsby and Markdown files visit the official docs.
+
+###What’s the deal with page queries and static queries?
+Before we dive down into editing markdown with Tina we have to understand how Gatsby handles querying data with GraphQL. You can source data from almost anywhere in Gatsby. In our case we’re using markdown. When you build your site, Gatsby creates a GraphQL schema for all the data. Then you use GraphQL in your React components to query your sourced data. If you don’t know about GraphQL you can read more here.
⬇ Suggested change
-Before we dive down into editing markdown with Tina we have to understand how Gatsby handles querying data with GraphQL. You can source data from almost anywhere in Gatsby. In our case we’re using markdown. When you build your site, Gatsby creates a GraphQL schema for all the data. Then you use GraphQL in your React components to query your sourced data. If you don’t know about GraphQL you can read more here.
+Before we dive down into editing Markdown with Tina we have to understand how Gatsby handles querying data with GraphQL. You can source data from almost anywhere in Gatsby. In our case we’re using Markdown. When you build your site, Gatsby creates a GraphQL schema for all the data. Then you use GraphQL in your React components to query your sourced data.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362664195:

+This post will not cover the basic, initially, setup of Tina that is needed. For a full documentation on how to initially setup Tina with Gatsby and Markdown files visit the official docs.
+
+###What’s the deal with page queries and static queries?
+Before we dive down into editing markdown with Tina we have to understand how Gatsby handles querying data with GraphQL. You can source data from almost anywhere in Gatsby. In our case we’re using markdown. When you build your site, Gatsby creates a GraphQL schema for all the data. Then you use GraphQL in your React components to query your sourced data. If you don’t know about GraphQL you can read more here.
+
+Gatsby allows you to query your data in two ways; Page Queries and Static Queries.
+Since the release of the React Hooks API and the useStaticQuery hook in Gatsby it is very easy to query your data. There are cases when you can’t use a Static Query though. First let’s explore the differences. As usual you can find more information in the excellent Gatsby documentation.
+
+The two main differences are:
+
+- Page queries can accept GraphQL variables. Static queries can’t.
+
+- Page queries can only be added on page components. Static queries can be used in all components.
+
+So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
⬇ Suggested change
-So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
+So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362664941:

+- Page queries can accept GraphQL variables. Static queries can’t.

+- Page queries can only be added on page components. Static queries can be used in all components.
+
+So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
+
+I use static queries as much as possible because I love the hooks API and the ease of use and composition possibilities it brings. For example you can create custom hooks and reuse them in multiple components. Let’s say that you have a graphQL query that grabs metadata that you want on multiple pages. Just create a custom React hook with the useStaticQuery Gatsby hook inside of it. Then you can use your own custom hook wherever you want and always easily get that data into your component. When you need to have variables in your component, you have to use a Page Query. Page Queries cannot be used with the hooks api and have to be unique and attached to the specific page component.
+
+Another great thing with static queries is that you can grab the data in the component that needs the data. That prevents prop drilling and your data is more tightly coupled to the component where it is used. The infamous prop drilling in React is when you have to pass down data via props to components deep down in the component tree. Read more on prop drilling in this excellent blog post from Kent C Dodds.
+
+###React overview
+As we’ve learned Gatsby has two types of queries; Page queries and Static queries. So we have to choose which one is suitable for our needs.
+
+In addition to this, React also offers a couple of options for us to choose from. You can either create your component as a class or a functional component. Prior to the React Hooks API, you had to use class components to have state in your components. Now, with hooks, you can do this with functional components.
+
+###Three ways to edit markdown with Tina
⬇ Suggested change
-###Three ways to edit markdown with Tina
+###Three ways to edit Markdown with Tina
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362665035:

+- Page queries can only be added on page components. Static queries can be used in all components.
+
+So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
+
+I use static queries as much as possible because I love the hooks API and the ease of use and composition possibilities it brings. For example you can create custom hooks and reuse them in multiple components. Let’s say that you have a graphQL query that grabs metadata that you want on multiple pages. Just create a custom React hook with the useStaticQuery Gatsby hook inside of it. Then you can use your own custom hook wherever you want and always easily get that data into your component. When you need to have variables in your component, you have to use a Page Query. Page Queries cannot be used with the hooks api and have to be unique and attached to the specific page component.
+
+Another great thing with static queries is that you can grab the data in the component that needs the data. That prevents prop drilling and your data is more tightly coupled to the component where it is used. The infamous prop drilling in React is when you have to pass down data via props to components deep down in the component tree. Read more on prop drilling in this excellent blog post from Kent C Dodds.
+
+###React overview
+As we’ve learned Gatsby has two types of queries; Page queries and Static queries. So we have to choose which one is suitable for our needs.
+
+In addition to this, React also offers a couple of options for us to choose from. You can either create your component as a class or a functional component. Prior to the React Hooks API, you had to use class components to have state in your components. Now, with hooks, you can do this with functional components.
+
+###Three ways to edit markdown with Tina
+Tina provides methods for editing markdown with both class and functional components in React. We also know that we can have both page queries and static queries in our Gatsby components. So we have to choose the most suitable approach for us. Tina gives us three different approaches as described below.
⬇ Suggested change
-Tina provides methods for editing markdown with both class and functional components in React. We also know that we can have both page queries and static queries in our Gatsby components. So we have to choose the most suitable approach for us. Tina gives us three different approaches as described below.
+Tina provides methods for editing Markdown with both class and functional components in React. We also know that we can have both page queries and static queries in our Gatsby components. So we have to choose the most suitable approach for us. Tina gives us three different approaches as described below.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362665121:

+So, why can’t we use GraphQL variables in a Static query? The reason for that is a static query doesn’t have access to the page context like a page query does. The result is that a static query won’t be able to access variables that are defined in the page context. You can define the page context in your gatsby-node.js file in your createPage function. Here you can supply your page with different variables that will get injected to your page on build time.
+
+I use static queries as much as possible because I love the hooks API and the ease of use and composition possibilities it brings. For example you can create custom hooks and reuse them in multiple components. Let’s say that you have a graphQL query that grabs metadata that you want on multiple pages. Just create a custom React hook with the useStaticQuery Gatsby hook inside of it. Then you can use your own custom hook wherever you want and always easily get that data into your component. When you need to have variables in your component, you have to use a Page Query. Page Queries cannot be used with the hooks api and have to be unique and attached to the specific page component.
+
+Another great thing with static queries is that you can grab the data in the component that needs the data. That prevents prop drilling and your data is more tightly coupled to the component where it is used. The infamous prop drilling in React is when you have to pass down data via props to components deep down in the component tree. Read more on prop drilling in this excellent blog post from Kent C Dodds.
+
+###React overview
+As we’ve learned Gatsby has two types of queries; Page queries and Static queries. So we have to choose which one is suitable for our needs.
+
+In addition to this, React also offers a couple of options for us to choose from. You can either create your component as a class or a functional component. Prior to the React Hooks API, you had to use class components to have state in your components. Now, with hooks, you can do this with functional components.
+
+###Three ways to edit markdown with Tina
+Tina provides methods for editing markdown with both class and functional components in React. We also know that we can have both page queries and static queries in our Gatsby components. So we have to choose the most suitable approach for us. Tina gives us three different approaches as described below.
+
+- useLocalRemarkForm - A React Hook that is intended for functional components that source data from a static query using Gatsby’s useStaticQuery.
⬇ Suggested change
-- useLocalRemarkForm - A React Hook that is intended for functional components that source data from a static query using Gatsby’s useStaticQuery.
+- useLocalRemarkForm - A React Hook that is intended for functional components that source data from a static query using Gatsby’s useStaticQuery.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362665985:

+In addition to this, React also offers a couple of options for us to choose from. You can either create your component as a class or a functional component. Prior to the React Hooks API, you had to use class components to have state in your components. Now, with hooks, you can do this with functional components.

+###Three ways to edit markdown with Tina
+Tina provides methods for editing markdown with both class and functional components in React. We also know that we can have both page queries and static queries in our Gatsby components. So we have to choose the most suitable approach for us. Tina gives us three different approaches as described below.
+
+- useLocalRemarkForm - A React Hook that is intended for functional components that source data from a static query using Gatsby’s useStaticQuery.
+
+- RemarkForm - A Render Props Component that you can use in class components that source data from a static query using Gatsby’s StaticQuery render props component.
+
+- remarkForm - A Higher Order Component. Please note the subtle difference here! The only difference in naming from the render props component is the lowercase “r”. This one is used when you source data from a Page Query in Gatsby.
+
+If you want to read more about the three different approaches you can visit the TinaCMS docs here.
+
+###remarkForm - How to use it and why it won’t work with static queries.
+First … Let’s dive into how to hook up TinaCMS with a page query.
+The remarkForm Component in TinaCMS is a Higher Order Component, a HOC in short. This means that it is a function that takes in another component and will return a new component that has added functionality to it. If you’re not familiar with HOC:s I suggest you do some googling around and read more about it. They are concidered “advanced usage” in the React world.
⬇ Suggested change
-The remarkForm Component in TinaCMS is a Higher Order Component, a HOC in short. This means that it is a function that takes in another component and will return a new component that has added functionality to it. If you’re not familiar with HOC:s I suggest you do some googling around and read more about it. They are concidered “advanced usage” in the React world.
+The remarkForm Component in TinaCMS is a Higher Order Component, a HOC in short. This means that it is a function that takes in another component and will return a new component that has added functionality to it. If you’re not familiar with HOC:s I suggest you do some googling around and read more about it. They are considered “advanced usage” in the React world.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362666351:

query StarWarsMovieById($id: String!) {

markdownRemark(fields: { id: { eq: $id } }) {

 id

 html

 frontmatter {

   title

   releaseDate

   crawl

 }

 ...TinaRemark

}
}
+`
+```

+The above code is a component that displays information about Star Wars movies. For now, it just displays a header though. But it could also display the release date and the crawl text in the intro to the film as we’re specifying those fields in the GraphQL query. But that’s another story in a galaxy far far away from here ...
😄
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362667099:

+The above code is a component that displays information about Star Wars movies. For now, it just displays a header though. But it could also display the release date and the crawl text in the intro to the film as we’re specifying those fields in the GraphQL query. But that’s another story in a galaxy far far away from here ...

+The first step in this example is to import the remarkForm hook from the Gatsby plugin ‘gatsby-tinacms-remark’. This is the plugin that makes TinaCMS work with Markdown files.
+
+There’s no need to do any additions to the code inside of the component itself. It could be any component, structured in the way you want it. The only thing you have to do with the component itself is to wrap your component with the remarkForm HOC when you export it.
+
+One more thing you have to do before you are good to go is to add the GraphQL fragment “...TinaRemark” in your query. This is needed for TinaCMS to recognize your data and create the required editor fields in the TinaCMS sidebar. After that you only have to start up your dev server to show the site and the Tina sidebar.
+
+Easy enough isn’t it? Just three small steps and you’ll have a beautiful sidebar to edit your content on your site. 🤟
+
+But what if you want to use a Static query and not a Page query?
+
+###useLocalRemarkForm to the rescue!
+We’ve learned that the remarkForm HOC won’t work on static queries. So we’ll have to find another solution to hook up our useStaticQuery data with TinaCMS.
+
+Great news! remarkForm uses a hook that is called useLocalRemarkForm internally. So RemarkForm is really just a “wrapper” for the useLocalRemarkForm hook. The remarkForm component takes in a component as an argument, calls useLocalRemarkForm with the page query data and returns a new component with the query data and TinaCMS connected to it. That’s all that it does! Therefore we can use the useLocalRemarkForm hook directly ourselves, without using the remarkForm HOC. Please note that you can of course use the useLocalRemarkForm hook on Page queries.
⬇ Suggested change
-Great news! remarkForm uses a hook that is called useLocalRemarkForm internally. So RemarkForm is really just a “wrapper” for the useLocalRemarkForm hook. The remarkForm component takes in a component as an argument, calls useLocalRemarkForm with the page query data and returns a new component with the query data and TinaCMS connected to it. That’s all that it does! Therefore we can use the useLocalRemarkForm hook directly ourselves, without using the remarkForm HOC. Please note that you can of course use the useLocalRemarkForm hook on Page queries.
+Great news! remarkForm uses a hook that is called useLocalRemarkForm internally. So RemarkForm is really just a “wrapper” for the useLocalRemarkForm hook. The remarkForm component takes in a component as an argument, calls useLocalRemarkForm with the page query data and returns a new component with the query data and TinaCMS connected to it. That’s all that it does! Therefore we can use the useLocalRemarkForm hook directly ourselves, without using the remarkForm HOC. Please note that you can also use the useLocalRemarkForm hook on Page queries.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r362667242:

+###useLocalRemarkForm to the rescue!
+We’ve learned that the remarkForm HOC won’t work on static queries. So we’ll have to find another solution to hook up our useStaticQuery data with TinaCMS.
+
+Great news! remarkForm uses a hook that is called useLocalRemarkForm internally. So RemarkForm is really just a “wrapper” for the useLocalRemarkForm hook. The remarkForm component takes in a component as an argument, calls useLocalRemarkForm with the page query data and returns a new component with the query data and TinaCMS connected to it. That’s all that it does! Therefore we can use the useLocalRemarkForm hook directly ourselves, without using the remarkForm HOC. Please note that you can of course use the useLocalRemarkForm hook on Page queries.
+
+As before … Take a look at the code example below first. For the sake of the simplicity in this post I’ve left out code that shows the image. So it just displays a header now.
+
+```javascript
+// 1. Import useLocalRemarkForm custom hook
+import React from ‘react’;
+import { useLocalRemarkForm } from ‘gatsby-tinacms-remark’;
+import { useStaticQuery } from ‘gatsby’;
+
+const StarWarsMovie = () => {

// 2. Add requried TinaCMS fragment to the GrahpQL query
⬇ Suggested change

// 2. Add requried TinaCMS fragment to the GrahpQL query

// 2. Add required TinaCMS fragment to the GrahpQL query
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/tinacms/tinacms-site/pull/201?email_source=notifications&email_token=ACVRL3SUNBEJFE4PUP2KTXLQ3Z3INA5CNFSM4KCHBCP2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCQR7BXQ#pullrequestreview-337899742, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACVRL3WT2TTLFXODVDQDIZTQ3Z3INANCNFSM4KCHBCPQ.

We actually do have a style guide now — https://tinacms.org/docs/contributing/style-guide

@weibenfalk - could you go through the blog again, and double check that all function references are  styled as inline code? And if you could try to add some additional formatting to break up the long blocks of paragraphs (italics, bold-statements, break two pars into three etc.), that'd be awesome. Incorporate the  component where you see fit. Have a read of the post on the blog preview itself and see where it could be a struggle to read or we could help the reader's eye along with clever formatting. Use older blogs as a reference on good use of formatting, paragraph length etc.
Also, if you could run the post through something like grammarly, just to double check any spelling / grammer tid-bits — that'd be awesome!

Is it possible to have links inside of the  tag in the markdown? I'm trying to move some stuff inside of  tags to make the post more dynamic and interesting to read. But now it shows the complete markdown with link and brackets.

Hey @kendallstrautman, I've gone through the text now and structured it better with tips and stuff. Also run it through Grammarly. It is quite long so hard to make it not look like it's long =)
Any suggestions if there are any images you want to include in the post?

Can I also publish this on FreeCodeCamp? I’m a contributor and author there also.

7 jan. 2020 kl. 23:22 skrev Kendall Strautman<EMAIL_ADDRESS>@kendallstrautman commented on this pull request.
In content/blog/three-ways-to-edit-md.md https://github.com/tinacms/tinacms-site/pull/201#discussion_r363980708:

+## More reading and learning

+Tina Official Documentation
+
+Tina Community
+
+Tina on Twitter: @tina_cms
+
Yeah I think they could be left out on the Tina site, but would be useful on the dev.to article.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/tinacms/tinacms-site/pull/201?email_source=notifications&email_token=ACVRL3W7AAKNUEJ6WTMIXYTQ4T6B5A5CNFSM4KCHBCP2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCQ6Q6IA#discussion_r363980708, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACVRL3RGQYCBMI5HC55VPOTQ4T6B5ANCNFSM4KCHBCPQ.

Yeah sure! We'll also want to publish on dev.to under the Tina Org. We'll need to give you an invite link

Let's also update the publish date to Thursday January, 9th. I think we're good to go 👍


TTS broken

I've been using TTS successfully for some time now, but a recent update seems to have broken it.  I was using hibiyasleep version and had "Options.SpokenAlertsEnabled = true;" in raidboss.js in the user folder.
Not knowing why it wasn't working after the update, I uninstalled everything and started from scratch but continued to use hibiyasleep version.  Everything appears to be working fine until I turn on tts, whereas I stop getting any sounds and no tts being played.
I then saw there is a push to go to ngld.  So I uninstalled everything for a clean install and used ngld version.  I see from issue #649 there was a tts problem but looking at the popup-text.js code it seems the fix has been incorporated now.
At this point I can't get tts working for either hibiyasleep or ngld.

Generic answer since you're saying this change only started happening after a recent update: Are you remembering to unblock the release before extracting the archive into your ACT folder?

Hello Panicstevenson, yes I am unblocking the zip before extraction.

Interesting; is there any log output that you're seeing within the raidboss plugin itself via ACT?

Does TTS within ACT itself work? To test this quickly, you can go to Options > Sound Settings, set one of the options to TTS, enter some text and click the play button.

Panicsteven, the output log looks clean.  No errors.
Ngld, I'm not hearing anything when I hit the play button after setting one of the sound options to TTS and entering in some text.  Guessing this means the problem is with ACT and not cactbot?  I'll try reinstalling ACT and testing TTS again before installing the plugins.

Depending on your timeline (real life, not cactbot), maybe you received a recent Windows update that changes how the sound options work with Windows 10? There are new advanced sound options that dictate where sound from various applications are played from.
Granted, this is not the most recent update, so it is probably safe to rule out, but it might be worth taking a peak into your Windows Sound settings.

Ok, I closed out of ff14 and tried the sound test again, and I can hear TTS in ACT.  Looks like it just doesn't like it when ff14 is running.

Ok, I got TTS working if I use the "Use Windows API Sound (No volume control, one sound at a time)" option.  When I switch to the other option, "Use WMP API Sound (Volume control, multiple sounds, slight latency)", TTS stops working.

I'm going to close the issue as it's clearly not a cactbot issue.  Best guess is I updated ACT at the same time I updated cactbot, and it was the ACT update that changed the setting.  Reinstalling ACT didn't help because apparently "Use WMP API" is the default.  Thanks Panicstevenson and Ngld for the help!


can vcpkg suport qt5webengine?

can vcpkg suport qt5webengine?

@Neumann-A Could you have a look? Thanks.

There is no reason to not have it. In the time there was only one qt port it was actually build. The only thing it requires is a lot of time to compile if I remember correctly. Just try to add it like the other qt5-subports but don't make it a dependency in the qt5 port. Maybe the qt5 port should be rewritten to use features for every qt5 subport.

I just tried to do it and it's not that easy, since the build for WebEngine requires Flex, Bison and GPerf and only GPerf has a package in vcpkg.

WebEngine requires Flex, Bison and GPerf

but you can use vcpkg_find_acquire_program for those...
I did it in #9860 but qt webengine still fails due to not finding an include file which strangely exists. (Don't understand whats going on here)

True, I adapted your changes, but my compile now breaks due to some new "compatibility breaking" mechanism introduced in the new VS2019 (error C3848 while compiling chromium/third_party/sfntly/src/cpp/src/sfntly/font.cc). Do you know where to disable specific VS compiler errors for qmake?

error C3848

it fails due to missing const specifiers. That needs to be patched in the source and probably can not be fixed by a compiler switch.

Here extract from my python script patching one of previous versions for vs2019 (linux change for lto support):
replace_in_file("qtwebengine/src/3rdparty/chromium/ui/gfx/image/image_generic.cc",
                "bool operator()(const ImageSkiaRep& rep1, const ImageSkiaRep& rep2) {",
                "bool operator()(const ImageSkiaRep& rep1, const ImageSkiaRep& rep2) const {")
replace_in_file("qtwebengine/src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/header.cc",
                "const HeaderPtr rhs) {",
                "const HeaderPtr rhs) const {")
replace_in_file("qtwebengine/src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/header.h",
                "const HeaderPtr h2) = 0;",
                "const HeaderPtr h2) const = 0;")
replace_in_file("qtwebengine/src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/header.h",
                "const HeaderPtr h2);",
                "const HeaderPtr h2) const;")
replace_in_file("qtwebengine/src/3rdparty/chromium/v8/src/compiler/register-allocator.h",
                "bool operator()(LiveRange* a, LiveRange* b) {",
                "bool operator()(LiveRange* a, LiveRange* b) const {")
if is_linux:
    replace_in_file("qtscript/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.h",
                    "EncodedJSValue JIT_STUB cti_vm_throw(STUB_ARGS_DECLARATION);",
                     "EncodedJSValue JIT_STUB cti_vm_throw(STUB_ARGS_DECLARATION) __attribute__((used));")

Got to the point you mentioned. It's probably related to this:
https://bugreports.qt.io/browse/QTBUG-65677


Zone(s) not synchronizing properly via TLS

We've been experiencing an issue where some zones are not
synchronizing properly from our primary server via TLS, mostly on
remote locations, where the connection tends to be unstable.
The scenario that we have able to reproduce is as follows:

The primary server is running a proprietary solution serving about 140 zones
NSD 4.6.1 is running as a secondary for all zones
All transfers are done via TLS
In order to simulate a poor connection, we manually added a 300ms
delay and 10% packet loss on the client connection.

In this scenario, we noticed that some zones can't complete a zone
transfer (IXFR), probably due to unstable connection, and don't try
again at any moment later, even when receiving new notifies.
From the logfile, the msg that seems to be mostly related to this issue is:
[2023-01-24 19:35:19.858] nsd[14100]: error: ssl_read returned error 5 with received 0
[2023-01-24 19:35:19.858] nsd[14100]: error: xfrd: failed reading tcp Success

When queried for zonestatus, an out-of-sync zone appears to be in state "refereshing":
zone:    ecn.br
    state: refreshing
    served-serial: "2023023434 since 2023-01-23T18:05:17"
    commit-serial: "2023023434 since 2023-01-23T18:05:17"
    notified-serial: "2023023442 since 2023-01-23T18:25:16"
    transfer: "TCP connected to <primary IP>"

By running "netstat" both on the primary and secondary servers, there seems to be no open connection between the two.
Once it reaches this point, in order to make the zone synchronize
again, we have to run "nsd-control force_transfer".

The issue persists even setting tcp-timeout to 2.

Reading up in the code. For ssl read failures. I noticed several issues, mostly the printout of the error that is wrong in your output, but that can be fixed a moment later. But then I saw an error where if the SSL connection reports that the channel is closed, it returns the wrong return value from the function. Causing the event to stay in existence for a connection that is not going to do anything any more. And this sounds suspiciously similar to what you are reporting. It is not identical to the log lines that you quoted, it would have printed nothing for this case, but with the fix it should print the 'xfrd: failed reading tcp' line. And also close the connection due to the failure.
The diff for it is this. Perhaps I should also commit it, would that be helpful?
diff --git a/xfrd-tcp.c b/xfrd-tcp.c
index b5910b33..f07cccb1 100644
--- a/xfrd-tcp.c
+++ b/xfrd-tcp.c
@@ -1268,7 +1268,7 @@ conn_read_ssl(struct xfrd_tcp* tcp, SSL* ssl)
                        }
                        if(err == SSL_ERROR_ZERO_RETURN) {
                                /* EOF */
-                               return 0;
+                               return -1;
                        }
                        log_msg(LOG_ERR, "ssl_read returned error %d with received %zd", err, received);
                }
@@ -1317,7 +1317,7 @@ conn_read_ssl(struct xfrd_tcp* tcp, SSL* ssl)
                int err = SSL_get_error(ssl, received);
                if(err == SSL_ERROR_ZERO_RETURN) {
                        /* EOF */
-                       return 0;
+                       return -1;
                }
                log_msg(LOG_ERR, "ssl_read returned error %d with received %zd", err, received);
        }

Does this patch make the problem less severe?

Hi, we tested this patch in our lab environment and it really seems to have improved a lot. Now, even if some zones fail to transfer in a publication, these seem to sync right in the next pub.
Thanks a lot!


Remove version: Hesan.He3 version 1.2.9

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

This appears to be an infrastructure issue, and we should wait to see if the publisher resolves it before merging this.

162573

URL: https://he3-1309519128.cos.accelerate.myqcloud.com/1.2.9/He3_windows_installer_ia32_1.2.9.exe
Response status code does not indicate success: 400 (Bad Request).
(Automated message - build 886)

Close with reason: PR submitted to change host;


Wasm compatibility

Motivation
Since axum is now supported on cloudflare workers and direct wasm deployment on Docker and Kubernetes also gets more popular, wasm compatibility would be a huge plus for this library.
Current Problems
It seems for some convenience features currently aide depends on the whole default axum crate? This introduces wasm compatibility problems since axum is only wasm compatible when excluding some features.
Proposal
Add a feature "wasm" which (when disabling default features) allows to compile for wasm.

It seems fairly easy actually

released in 0.13.4


refactor Web Crawler example - use constructor DI instead of Service.…

DI refactoring

The resolution of this request has been moved into the following pull request
https://github.com/Kentico/xperience-by-kentico-lucene/pull/20


ur decoder should receive single part

Hello, I'm using this lib to do some staff on BC-UR.
I found that the ur::Decoder can not receive single part ur so I fixed it.
Any feedback are welcome 😄

Hi @soralit, thanks for the PR!
Support for decoding single-part URs has been added in https://github.com/dspicher/ur-rs/pull/112 (based on https://github.com/dspicher/ur-rs/pull/111)  by exposing the decode function in the public API.
This change is not released yet. If you need it urgently, I am happy to release a new minor version. Alternatively, you can specify this dependency with
ur = { git = "https://github.com/dspicher/ur-rs", rev = "406d584298c65d1b36a85dd36afac5d365674f3a" }

Let me know what you think.

Thanks for your reply @dspicher. The most annoying thing is that I'm not knowing how many urs will be received when I call ur::Decoder.
For example, the payload size was not fixed when I want to send a crypto-psbt, the encoded result can be single-part when the btc input and output are small or multi-part when the psbt has multiple inputs or outputs. So it's hard to choose using decode or receive.

That should be easy enough to detect for the caller based on the number of / you find in the string:

1 => single-part
2 => multi-part

Or, if you want it more stringent, based on whether you will find the numeric indices in there. For example, using the regex crate: Regex::new(r"/[0-9]+-[0-9]+/").
Theoretically this information could also be easily returned by the existing decode function by differentiating the currently combined 1 | 2 cases, but as said, this is quite easy to figure out by the caller himself, it seems a bit overkill.

Thanks for the clarification. This approach should work. But I'd still suggest handle the single part in receive for user should not take concern of the implementation details.

Yes, that's a fair point. Let's leave the PR open, and I'll mull it over what sort of API would make sense here.

@soralit what do you think about the approach here: https://github.com/dspicher/ur-rs/pull/121
With this, you could do something like
let payload = match decode(my_ur)? {
    (Kind::SinglePart, payload) => payload,
    (Kind::MultiPart, _) => {
        let decoder = Decoder::default();
        decoder.receive(my_ur)?;
        while !decoder.complete() {
            ... // fetch more URs and pass them to `decoder`
        }
        decoder.message().unwrap()
    }
}

Hey @soralit
Yeah, this definitely sounds like something the user of this library should do, as it's making quite a few assumptions about the use-case.
I'm going to merge the other one and close this one. Feel free to reopen if you disagree.


Add all notebooks to test

Description
Currently, when a notebook run fails, CI doesn't complain.
Example / Current workflow
adding pytest --no-cov -v --nbmake ipython/*.ipynb into ci.yaml

Thanks for bringing this up. I like this idea and will try to incorporate it into CI.


Fix node update status bug

Summary
There is a bug when we update any non-source node, where if we make a minor change that doesn't involve the node's query, it will not assign a status to the new node revision, and just defaults to invalid. This fixes it so that it assigns it to the old node revision's status and then updates it if anything has changed that warrants updating.
Test Plan
Added some status checks to the test_create_update_transform_node unit test and verified locally with the example that @agorajek came across

[ ] PR has an associated issue: #
[x] make check passes
[x] make test shows 100% unit test coverage

Deployment Plan

Nice!
Do you think this will also solve the issue we found in https://github.com/DataJunction/dj/issues/617.

@agorajek It's possible! Let me also test that case.


The docs updates for 0.4.2

It also contains the updates for the forthcoming version 0.5.0 based on Kryo-0.4

This PR seems to contain the Unit and BoxedUnit changes, which were committed in a different PR already.


Mixtral model from LitGPT fails with torch.where error when using Thunder.

🐛 Bug
The Mixtral model errors out with
An error occurred: NotImplementedError – torch.where() does not support only specifying a condition

Interestingly, the error does not provide any traceback but I have tested a smaller version of the model does work with Eager and Torch.Compile without errors.
To Reproduce
Reproducible command -
torchrun --nproc-per-node=8 thunder/benchmarks/benchmark_litgpt.py --model_name Mixtral-8x7B-v0.1 --compile thunder_inductor_cat_cudnn --distributed_mode fsdp --shard_mode zero3

Expected behavior
Mixtral model should work with Thunder and the benchmarking script.
Additional context
This needs the PR #697 merged to test.

Thank you for creating the issue!
It's a known problem that Mixtral doesn't work.
There's a tracking issue for the network support https://github.com/Lightning-AI/lightning-thunder/issues/194 and a specific issue about torch.where(condition) overload https://github.com/Lightning-AI/lightning-thunder/issues/124. I will close this issue as a duplicate of those two.
This model works without errors with torch.compile because I think Dynamo creates a graph break around this operation and executes it eagerly.