snap: could not build the snap for ARM

failed to build qemu:  ERROR: static and pie are mutually incompatible
https://launchpad.net/~kata-containers-dev/+snap/master/+build/876078
https://launchpadlibrarian.net/469884066/buildlog_snap_ubuntu_bionic_arm64_master_BUILDING.txt.gz
Cloning into 'ui/keycodemapdb'...
Cloning into 'capstone'...
[20/Mar/2020:20:17:16 +0000] "CONNECT github.com:443 HTTP/1.1" 200 110607 "-" "git/2.17.1"
[20/Mar/2020:20:17:25 +0000] "CONNECT github.com:443 HTTP/1.1"<PHONE_NUMBER>0 "-" "git/2.17.1"
Applying 0001-qemu-gather-and-modification-of-the-whole-Eric-Auger.patch ...
patching file accel/kvm/kvm-all.c
patching file default-configs/aarch64-softmmu.mak
patching file default-configs/arm-softmmu.mak
patching file hw/acpi/aml-build.c
patching file hw/acpi/nvdimm.c
patching file hw/arm/boot.c
patching file hw/arm/virt-acpi-build.c
patching file hw/arm/virt.c
patching file hw/i386/pc_piix.c
patching file hw/i386/pc_q35.c
patching file hw/ppc/mac_newworld.c
patching file hw/ppc/mac_oldworld.c
patching file hw/ppc/spapr.c
patching file include/hw/acpi/aml-build.h
patching file include/hw/arm/virt.h
patching file include/hw/boards.h
patching file include/hw/mem/nvdimm.h
patching file linux-headers/linux/kvm.h
patching file target/arm/kvm.c
patching file target/arm/kvm_arm.h
patching file vl.c

ERROR: static and pie are mutually incompatible

Failed to run 'override-build': Exit code was 123.
Build failed
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 266, in run
    self.build()
  File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 255, in build
    env=env)
  File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 102, in run_build_command
    return self.backend.run(args, env=full_env, **kwargs)
  File "/usr/lib/python2.7/dist-packages/lpbuildd/target/lxd.py", line 536, in run
    subprocess.check_call(cmd, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 541, in check_call
    raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['lxc', 'exec', 'lp-bionic-arm64', '--env', 'LANG=C.UTF-8', '--env', 'SHELL=/bin/sh', '--env', 'SNAPCRAFT_BUILD_INFO=1', '--env', 'SNAPCRAFT_IMAGE_INFO={"build_url": "https://launchpad.net/~kata-containers-dev/+snap/master/+build/876078"}', '--env', 'SNAPCRAFT_BUILD_ENVIRONMENT=host', '--env', 'http_proxy=http://<IP_ADDRESS>:8222/', '--env', 'https_proxy=http://<IP_ADDRESS>:8222/', '--env', 'GIT_PROXY_COMMAND=/usr/local/bin/snap-git-proxy', '--', '/bin/sh', '-c', 'cd /build/kata-containers && linux64 snapcraft']' returned non-zero exit status 2
Revoking proxy token...
RUN: /usr/share/launchpad-buildd/bin/in-target scan-for-processes --backend=lxd --series=bionic --arch=arm64 SNAPBUILD-876078
Scanning for processes to kill in build SNAPBUILD-876078

cc @Pennyzct @jongwu

This looks like a case where -fno-pie should be added to the CFLAGS at the same point as static? (Debian based gcc's are built using --enable-default-pie IIUC).

Hi, --enable-pie should be removed when statically build qemu.

I tested viwth "../../kata-containers/packaging/scripts/configure-hypervisor.sh -s qemu | xargs ./configure ". After this patch, no such configure error


missing @rules_shell dependency in WORKSPACE mode

https://github.com/bazel-contrib/rules_bazel_integration_test/pull/368 added a dependency on rules_shell to rules_bazel_integration_test, but did not add the dependency to the bazel_integration_test_rules_dependencies macro. Downstream users (in WORKSPACE mode) now must add rules_shell as a dependency themselves, see e.g. this CI failure.
Would it be possible to add rules_shell to bazel_integration_test_rules_dependencies?

Good catch! I'll try to get this updated over the weekend.


Check if Series consists of strings only, instead of casting to unicode

Currently, some functions do not check if the Series they get as input really consists of strings only, and they give unexpected results, e.g. if there are missing values.
Example:
import texthero as hero
import pandas as pd
import numpy as np

s = pd.Series(["Test", np.nan])
hero.noun_chunks(s)
>>0                   []
>>1    [(nan, NP, 0, 3)]

This could be fixed by stopping to use s.astype('unicode') which e.g. converts np.nan -> "nan". Instead, a function should check whether the Series consists of strings only. Something along the lines of
def _check_series_strings(s):
    if not df.map(type).eq(str).all():
        raise TypeError("Non-string values in series. Use hero.drop_no_content(s) to drop those values.")

Amazing!
We might want to have a different name for this function. If we agree on the name of the kinds of pandas series defined in #60, we could call it _check_is_text_series or something like that.
Can you work on this?

Yes, I'll think about / make some comments at #60 and work on this one.

See #60  and related PRs


Add arm64 OSX build for M1 macs

Background
Running E2E tests on an M1 Mac were failing, as it was trying to run the osx-x64 version.
Results
This adds a new publish target for osx-arm64
How to review this PR

Quality :heavy_check_mark:

Pre-requisites

[ ] I have read How we use GitHub Issues for help deciding when and where it's appropriate to make an issue.
[ ] I have considered informing or consulting the right people, according to the ownership map.
[ ] I have considered appropriate testing for my change.

[sc-51672]


Corrected example

https://github.com/MicrosoftDocs/office-docs-powershell/issues/3849

Docs Build status updates of commit 5aabb4e:
:clock10: Full build: the average full build time is 11 min(s) 53 sec(s), this is based on the last 867 build(s) for this repository.

Docs Build status updates of commit 5aabb4e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

teams/teams-ps/teams/Get-TeamHelp.md
:white_check_mark:Succeeded
View (teams-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit fdb10ff:
:clock10: Full build: the average full build time is 11 min(s) 53 sec(s), this is based on the last 868 build(s) for this repository.

Docs Build status updates of commit fdb10ff:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

teams/teams-ps/teams/Get-TeamHelp.md
:white_check_mark:Succeeded
View (teams-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Waypoint: Iterate over Arrays with map - "array.map(...) is not a function"

Challenge http://www.freecodecamp.com/challenges/waypoint-iterate-over-arrays-with-map has an issue. Reporting "array.map(...) is not a function". Code in the console at the time is as follows:
//Use map to add three to each value in the array
var array = [1,2,3,4,5];
// Only change code below this line.
array = array.map(function(val){
return val + 3;
})
// Only change code above this line.
(function() {return(array);})();
The following example shows this code working on an alternative environment (logging values):
http://repl.it/BEC4

I have been able to replicate this issue on my machine too.

So the issue here is that the map needs a semi colon at the end! Weird right? No idea why it gets so upset about the semi-colon in this instance but that is the cause of the problem. Sorry about the confusion this has caused and I'm not sure this can be fixed really as the editor is reporting an inaccurate response. My guess is that it's because the editor is in "Use Strict" mode but for some reason it gives the wrong error.

Indeed, although I'll happily accept the explanation. Thanks for the feedback! I'll be mindful of this in future exercises if trouble arises again.

I'm going to see if I can either fix this error reporting or else have at least a notice for the issue

We require the semi-colon because of the use of eval to actually test your code. Closing as stale. If anyone finds a work around please chime in.
Happy Coding!


Image selection with overlay for filename

For folder selection you already have a small half transparent overlay with folder name and picture count.
My suggestion is to have such an overlay even for the images with the filename shown. I would make this optional.

@Rainer-Lang how about a completely custom layout for grid item (folder & image) ?
I want to create it along https://github.com/esafirm/android-image-picker/issues/67
Still not sure how to implement it though

This would be really superb! :heart_eyes:

I would first collect all information what you could get from the filesystem (folder: name, image/file count, size,... / file: name, size, dates,...). And this I would give the user the possibility to show them while browsing.
I would use to lines in such an overlay: top line bold, bottom normal.
I hope this helps a bit - but we could discuss the ideas here, if you want.

@Rainer-Lang i'm not sure i follow your last post. Care to elaborate on this?
What i'm not sure is the dependencies setup. I think creating a Singleton for all dependencies (DI Pattern) is more scalable and clean rather than passing Serializeable every time the Image Picker start
This will breaking the API for sure, but i think it will be more make sense.

@esafirm I don't know if this issue is really the best place to discuss.... But it's up to you.
And yes I'm open for helping.


$this->creator()->user not working for me.

Well, I had my user's table created already with another index name (id instead user_id)
I don't know if that's the problem (I don't think os) but $this->creator() method of Thread is not working calling the "user" method after the query.
I "fixed" it doing like this:
return $this->messages()->with('user')->oldest()->first();
Instead of
return $this->messages()->oldest()->first()->user;
Just saying :>

hmm, what version of Laravel are you using? Seems to be working ok for me

5.1

hmm, I'm in a fresh install of 5.1 (v5.1.28) I'm getting the expected result from: return $this->messages()->oldest()->first()->user;. Do you have your code available somewhere online that I could check out?

Hey,
found this issue while having the same problem here #229 . The problem might be, that the thread is empty (i.e., it has no message).
BTW i am also running on L5.1.46 (latest)


live match controller not working

when I try to start the live match controller, I just get

Oops. 404 - Not found
The page you were looking for could not be found.
Url: /matches/live/3
Method: GET

I have put the respective match to playing instead of sheduled

Where should this be implemented so I can take a look at it?

Hi Johann, start at: https://github.com/ivanseidel/Tournamenter/blob/master/views/match/live.ejs


Gluster FS Volume Source short

The glusterfs volume source short hand equivalent looks like
pod:
  annotations:
    meta: _test
  cluster: test_cluster
  labels:
    app: meta_test
  name: meta_test
  namespace: test
  version: v1
  volumes:
    test_volume:
      endpoints: endpointsName
      ro: true
      vol_id: /path/to/gluster/vol
      vol_type: glusterfs

It is un-intuitive to set the Path field using the key vol_id. This key should be called path
Also, I'm not sure if endpoints can be renamed to endpoint. Since it seems to me like its just one string (which is it's kubernetes type), and using the plural form is confusing, and makes it seem like a list. I don't know why they designed it this way.
Can you look into why endpoints is plural and comment here.

endpoints is plural because a kubernetes Endpoints object contains a list of actual endpoints.


Setup script

Resolved #5

Added a setup script for arch based distro.
It would be advantageous for newcomers to Linux who lack extensive knowledge of Linux commands for package installation.
It will also lessen the need for manually installing frequently used packages.

Script is not so relevant and doesn't serves a general purpose for broad area of usage.
If you got any good generic script feel free to send another PR :smiley:


update google-cloud-java to 0.53.0

fix #683 @etanshaul @loosebazooka
Adds text-to-speech API

That doesn't happen all the time in all repos. I wish I could figure out why it happens some times.


Use source.smalltalk to hightlight STON file

While not perfect, it turns out that source.smalltalk is a better fit for highlighting STON files than source.json. When STON departs from pure JSON (often) the hightlighting is pretty bad.

Ping ... is there something else that needs to be done for this PR or is it just in the merge queue?

:+1: this looks good @dalehenrich. It will be another week or so before this change is live on GitHub.


Rewrite Safety Datasheets to incorporate new file indexing scheme

A file indexing scheme was developed to facility more extensibility, and the SDS page needs to utilize it.

This is complete and functioning


Dagger with modules

Hi Vaisakh,
I improved the Dagger by adding some functions. I verified it on the ant and the hopper tasks by changing the model and it was working fine. There might be some problems with path since you are using windows and I'm using ubuntu. Verify it and merge the pull request if useful.

Thanks, Vamshi... Code is modular and clean... I will rename it as Dagger_v2.py
Great Job!!!!


Different Video Formats?

Hello. I understand that currently you can only use BGR24 format. It would be great if you could expand to ABGR32 (or a different layout) and or any YUV format. Other than that, it's a great wrapper

if possible, please add support to JPEG format also, great project btw ;)


feat!: add CancellationTokens, ValueTasks hooks

This PR is a combination of https://github.com/open-feature/dotnet-sdk/pull/184 and https://github.com/open-feature/dotnet-sdk/pull/185. Changes include:

adding cancellation tokens

in all cases where async operations include side-effects (setProviderAsync, InitializeAsync, I've specified in the in-line doc that the cancellation token's purpose is to cancel such side-effects - so setting a provider and canceling that operation still results in that provider's being set, but async side-effect should be cancelled. I'm interested in feedback here, I think we need to consider the semantics around this... I suppose the alternative would be to always ensure any state changes only occur after async side-effects, if they weren't cancelled beforehand.

adding "Async" suffix to all async methods
remove deprecated sync SetProvider methods
Using ValueTask for hook methods

I've decided against converting all Tasks to ValueTasks, from the official .NET docs:

the default choice for any asynchronous method that does not return a result should be to return a Task. Only if performance analysis proves it worthwhile should a ValueTask be used instead of a Task.

I think for hooks, ValueTask especially makes sense since often hooks are synchronous, in fact async hooks are probably the less likely variant.
I've kept the resolver methods as Task, but there could be an argument for making them ValueTask, since some providers resolve asynchronously.
I'm still a bit dubious on the entire idea of ValueTask, so I'm really interested in feedback here

associated test updates

UPDATE:
After chewing on this for a night, I'm starting to feel:

We should simply remove cancellation tokens from Init/Shutdown. We can always add them later, which would be non-breaking. I think the value is low and the complexity is potentially high.
ValueTask is only a good idea for hooks, because:

Hooks will very often be synchronous under the hood
We (SDK authors) await the hooks, not consumer code, so we can be careful of the potential pitfalls of ValueTask. I think everywhere else we should stick to Task.

After chewing on this for a night, I'm starting to feel:
We should simply remove cancellation tokens from Init/Shutdown. We can always add them later, which would be non-breaking. I think the value is low and the complexity is potentially high.
ValueTask is only a good idea for hooks, because:
Hooks will very often be synchronous under the hood
-We (SDK authors) await the hooks, not consumer code, so we can be careful of the potential pitfalls of ValueTask.
I think everywhere else we should stick to Task.

I think that we should probably have tests which have a dummy async provider that blocks evaluations until cancelled, then we should start an evaluation and cancel it to make sure all the steps happen. Maybe something similar with a hook implementation.

That's a good idea. Will add.

I think that we should probably have tests which have a dummy async provider that blocks evaluations until cancelled, then we should start an evaluation and cancel it to make sure all the steps happen. Maybe something similar with a hook implementation.

That's a good idea. Will add.

I've added tests for cancellation (evaluation/resolution and hooks): https://github.com/open-feature/dotnet-sdk/pull/268/commits/036d7a45c5627c4fb17ce7ab7208cd52ca19b7ca


[Bug] Sometimes toasts appear blurry

Please provide the environment you discovered this bug in.
ngx-sonner: 0.3.4
Description

Please provide the exception or error you saw
No response
Other information
No response
I would be willing to submit a PR to fix this issue

[X] Yes
[ ] No

:tada: This issue has been resolved in version 0.4.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Feature Request]: storage_proof_size_version_1 host api

Component
Host functions
Feature Description
New host function for parachains, storage_proof_size. It shall provide the size of the currently recorded storage proof to the runtime. Runtime authors can use the proof size to improve block utilization by retroactively reclaiming unused storage weight.
References and additional Information
https://polkadot-fellows.github.io/RFCs/approved/0043-storage-proof-size-hostfunction.html

This api is only used inside cumulus parachains,
but cumulus replaces "storage host api" with PoV manipulations,
so relay kagome host doesn't see storage operations.
cumulus host api
storage host api hook


METRON-1068: Use Elastic end point in alerts ui

Contributor Comments
Added support for fetching alerts data using metron-rest instead of fetching from ES.

Added option to proxy rest api calls to metron-rest api in alerts-server-e2e.js and alerts-server.js
Added login page since we we are using rest api time to get ourself authenticated
Added e2e tests for login page
Moved alert-source to a separate model as we get only alert-source for findone api
Changed all the field names from ES names to rest-api names
All dev and e2e test environment would be using http://node1:8082 for fetching data from rest-api

NOTE:The metadata is still fetched directly from ES and the data is still saved in browser cache. I will adress these in subsequent PR's
Tests
If you run the metron-alerts UI using any one of the ways mentioned below you would notice that UI fetches the data from matron-rest api not from ES.
Dev: From 'metron/metron-interface/metron-alerts' you can run  ./scripts/start-dev.sh and open the GUI at localhost:4200
E2E:  From 'metron/metron-interface/metron-alerts' you can run ./scripts/start-server-for-e2e.sh in one terminal and run npm run e2e in a seperate terminal
Deployment: Follow the steps mentioned in Readme and you should see a login page and data being fetched from rest-api's
Pull Request Checklist
Thank you for submitting a contribution to Apache Metron.
Please refer to our Development Guidelines for the complete guide to follow for contributions.
Please refer also to our Build Verification Guidelines for complete smoke testing guides.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && build_utils/verify_licenses.sh

[x] Have you written or updated unit tests and or integration tests to verify your changes?

[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

[x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

@nickwallen Is the rest-api available @ http://node1:8082 I tried running the tests on my setup they seemed fine. When the tests run a chrome browser window opens (in minimised mode) can you check if you are able to see alerts data there?
Also when you run ./scripts/start-server-for-e2e.sh you can open UI @ http://<IP_ADDRESS>:4200 and chek if things are fine.
I really doubt if this is a timeout issue.

I have tested this in full dev and it works as advertised.  I haven't noticed any obvious bugs and it was fairly easy to install and start.  I would suggest we add a note in the "Development Setup" section of the metron-alerts README that tells users how to access the UI.  I know it's "localhost:4200" and to login as "user/password" because I'm familiar with the management UI but others probably won't know that.
I do not think the DataSource/ElasticSearchLocalstorageImpl/RestApiImpl abstraction is correct.  We only have a single Metron REST implementation so I don't see why we would need to abstract this.  I know things are in a weird state switching from directly calling ES to going through the REST layer, but I don't think this moves us in the right direction.  I would rather see a standalone SearchService class that matches the SearchController in the REST layer.  As we create more REST controllers and endpoints, the services on the client-side would also be created/updated to match.  Eventually the DataSource/ElasticSearchLocalstorageImpl classes would be empty and at that point we would know we're done moving the calls to REST.  With this approach, all the functions will end up in RestApiImpl and that's not the end state we want.  Sure we could reorganize them after all the DataSource methods are implemented in RestApiImpl but why not do it incrementally?
@nickwallen has already put in time testing and this is more of a style/organization issue so I would be ok with deferring this to a future PR.  However any +1 from me in the future would require we work this out.

+1 Agree with @merrimanr .  There are some minor issues that can be addressed as follow-ons.  The core functionality is solid.  Good work, @iraghumitra

@merrimanr Updated readme with login instructions. Thanks for taking time for review.

Does this have a +1 from @merrimanr ?

Yes +1 from me

Thanks @merrimanr I will get this merged in.


Attributes support in serialize/deserialize functions [wsdl2js]

Added attributes support in serialize and deserialize functions:
Serialize:
function OBJECT_serialize(cxfjsutils, elementName, extraNamespaces) {
    /* some code .... */
    if (this._value !== null) {
        xml = xml + 'value="' + this._value + '" ';
    }
    // It support also default values:
    if (this._timeout !== null) {
        xml = xml + 'timeout="' + this._timeout + '" ';
    } else {
        xml = xml + 'timeout="0" ';
    }
}

Deserialize:
function OBJECT_deserialize(cxfjsutils, element) {
    /* some code .... */
    var attributes = element.attributes;
    for (var i = 0; i < attributes.length; i++) {
        if (attributes[i].nodeName === 'timeout') {
            newobject.setTimeout(attributes[i].nodeValue)
        }
        /* etc. */
    }
}

Better array support:
this._item = []; // array

// Old situation (it's always override the previous value)
function OBJECT_setItem(value) { this._item = value; }

// New situation (add separate items or arrays)
function OBJECT_addItem(Item) {
    (Item instanceof Array ? this._item = this._item.concat(Item) : this._item.push(Item));
}

Jenkins says: "Build timed out (after 90 minutes). Marking the build as aborted."
What to do now?

Don't worry about the build timing out. Any chance of modifying/adding some tests for these new features?

@coheigea As you can see I have modified the unit tests in my last commit, so they runs well again.

The unit tests have been modified, but I'd prefer to see a unit test added that (for example) failed with the old code but passes with the new code. Does changing from "add" to "set" for arrays break the API by the way?

Definitely concerned about the set->add change.  That will certainly break peoples code.   Can the original method be retained with the add method being added?


Error: failed to get CA certs at https://<IP_ADDRESS>:36829/cacerts

Environmental Info:
K3s Version:

v1.18.8+k3s1
Node(s) CPU architecture, OS, and Version:

Linux PX-Red-BBB-AC-05-BE 4.19.50-rt22-pxred #1 SMP Tue Sep 15 03:52:55 UTC 2020 armv7l GNU/Linux
Custom Linux built with Yocto
Cluster Configuration:

One master running on Ubuntu VM. See below the output of "uname -a" on the VM
Linux test-VirtualBox 5.4.0-47-generic #51~18.04.1-Ubuntu SMP Sat Sep 5 14:35:50 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Additional Info: The master node is behind a NAT with an ip address of <IP_ADDRESS> (VM with bridged adaptor to get the ip address in the local LAN behind NAT with my home router)
One worker node running on BeagleBone Black ARM device 32-bit (See below)
Linux PX-Red-BBB-AC-05-BE 4.19.50-rt22-pxred #1 SMP Tue Sep 15 03:52:55 UTC 2020 armv7l GNU/Linux
This worker node is also behind the NAT, having an ip address of <IP_ADDRESS>
Describe the bug:

Master node is running smoothely (see below)
test@test-VirtualBox:~$ sudo kubectl get node
NAME                    STATUS     ROLES    AGE   VERSION
test-virtualbox         Ready      master   20d   v1.18.8+k3s1
However, my worker node never joins the master node. I run the following command on my worker node
/var/volatile/tmp # ./k3s-armhf --debug agent --server https://<IP_ADDRESS>:6443
--token K106551b864ddc9e388cbfba3cded437ac65182ebdf0ee75719436603e29a7c3be4::ser
ver:2e175fa39a8b70bc878fa2772a78d82b
DEBU[0000] Asset dir /var/lib/rancher/k3s/data/aa9b520cec21dfd41d6548e2474b93ad17760f68adec96f97bb60126194d8a11
DEBU[0000] Running /var/lib/rancher/k3s/data/aa9b520cec21dfd41d6548e2474b93ad17760f68adec96f97bb60126194d8a11/bin/k3s-agent [./k3s-armhf --debug agent --server https://<IP_ADDRESS>:6443 --token K106551b864ddc9e388cbfba3cded437ac65182ebdf0ee75719436603e29a7c3be4::server:2e175fa39a8b70bc878fa2772a78d82b]
INFO[2020-09-16T11:12:28.673398327-04:00] Starting k3s agent v1.18.8+k3s1 (6b595318)
WARN[2020-09-16T11:12:28.675194574-04:00] Failed to find cpuset cgroup, you may need to add "cgroup_enable=cpuset" to your linux cmdline (/boot/cmdline.txt on a Raspberry Pi)
INFO[2020-09-16T11:12:28.675452853-04:00] module overlay was already loaded
INFO[2020-09-16T11:12:28.675715840-04:00] module nf_conntrack was already loaded
WARN[2020-09-16T11:12:28.691405002-04:00] failed to start br_netfilter module
INFO[2020-09-16T11:12:28.695914618-04:00] Running load balancer <IP_ADDRESS>:36829 -> [<IP_ADDRESS>:6443]
DEBU[2020-09-16T11:12:38.700189615-04:00] Dial error from load balancer: dial tcp <IP_ADDRESS>:6443: i/o timeout
DEBU[2020-09-16T11:12:38.700698674-04:00] Incoming conn <IP_ADDRESS>:49662, error dialing load balancer servers: context deadline exceeded
DEBU[2020-09-16T11:12:48.705832335-04:00] Dial error from load balancer: dial tcp <IP_ADDRESS>:6443: i/o timeout
DEBU[2020-09-16T11:12:48.706334519-04:00] Incoming conn <IP_ADDRESS>:49666, error dialing load balancer servers: context deadline exceeded
ERRO[2020-09-16T11:12:48.708357630-04:00] failed to get CA certs at https://<IP_ADDRESS>:36829/cacerts: Get https://<IP_ADDRESS>:36829/cacerts: read tcp <IP_ADDRESS>:49666-><IP_ADDRESS>:36829: read: connection reset by peer
Steps To Reproduce:

Installed K3s: on the master, I installed it through the script (using curl command) provided on the k3s website. No changes. Default settings. It is running on a Ubuntu VM running on x86 architecture.

k3s on worker node: downloaded the k3s-armhf binary and transferred it to my embedded device, i.e., beaglebone black. Ran this binary with the above command.

Expected behavior:

The worker node should have joined the master node.
Actual behavior:

Instead we get the above errors.
Additional context / logs:

While running curl command on my worker node, I get the following error
/var/volatile/tmp # curl -vvv https://www.google.com

Trying <IP_ADDRESS>:443...
TCP_NODELAY set
Connected to www.google.com (<IP_ADDRESS>) port 443 (#0)
error reading ca cert file /etc/ssl/certs/ca-certificates.crt (Error while reading file.)
Closing connection 0
curl: (77) Problem with the SSL CA cert (path? access rights?)

It appears that the kernel on your device is missing several options. You will need to ensure that the required cgroups and modules are enabled in your custom kernel build.
WARN[2020-09-16T11:12:28.675194574-04:00] Failed to find cpuset cgroup, you may need to add "cgroup_enable=cpuset" to your linux cmdline (/boot/cmdline.txt on a Raspberry Pi)
INFO[2020-09-16T11:12:28.675452853-04:00] module overlay was already loaded
INFO[2020-09-16T11:12:28.675715840-04:00] module nf_conntrack was already loaded
WARN[2020-09-16T11:12:28.691405002-04:00] failed to start br_netfilter module

I compile the kernel with cpuset and all nat flags. however, they are not enabled.
Anyways, the above issue is not due to these kernel flags as, if my master and worker nodes are on a public network, my worker node is successfully listed at the master node with the state "Ready". however, when the two nodes are behind NAT and outside my enterprise network, they are not able to join each other and the worker node shows the errors above. see a bit further below the kernel flag warnings.

If you're putting the master behind NAT, you need to tell it what the NAT address is with the --node-external-ip=<EXTERNAL-IP> option. Otherwise the agents try to connect directly to its private IP address.

@brandond are you talking for the case when the master/server is behind the NAT and worker/agent nodes are not behind the same NAT? In my case, both master and worker nodes are behind the same NAT. Do I still need --node-external-ip= flag?

@brandond my master/server is started on a ubuntu VM with the k3s script using the command "curl -sfL https://get.k3s.io | sh -". When I see the service details with "systemctl sattus k3s", I see the following
k3s.service - Lightweight Kubernetes
Loaded: loaded (/etc/systemd/system/k3s.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-09-16 11:53:12 CEST; 20h ago
Docs: https://k3s.io
Main PID: 586 (k3s-server)
Tasks: 93
CGroup: /system.slice/k3s.service
├─ 586 /usr/local/bin/k3s server --tls-san=<IP_ADDRESS> --advertise-address=<IP_ADDRESS>
├─1594 containerd -c /var/lib/rancher/k3s/agent/etc/containerd/config.toml -a /run/k3s/containerd/containerd.soc
├─2511 /var/lib/rancher/k3s/data/19bb6a9b46ad0013de084cf1e0feb7927ff9e4e06624685ff87f003c208fded1/bin/containerd
├─2512 /var/lib/rancher/k3s/data/19bb6a9b46ad0013de084cf1e0feb7927ff9e4e06624685ff87f003c208fded1/bin/containerd
├─2604 /pause
├─2626 /pause
├─2875 /metrics-server
├─2907 /var/lib/rancher/k3s/data/19bb6a9b46ad0013de084cf1e0feb7927ff9e4e06624685ff87f003c208fded1/bin/containerd
├─2977 local-path-provisioner start --config /etc/config/config.json
├─2996 /pause
├─3117 /var/lib/rancher/k3s/data/19bb6a9b46ad0013de084cf1e0feb7927ff9e4e06624685ff87f003c208fded1/bin/containerd
├─3165 /pause
├─3167 /bin/sh /usr/bin/entry
├─3326 /traefik --configfile=/config/traefik.toml
├─3373 /var/lib/rancher/k3s/data/19bb6a9b46ad0013de084cf1e0feb7927ff9e4e06624685ff87f003c208fded1/bin/containerd
├─3399 /bin/sh /usr/bin/entry
├─3442 /pause
└─3510 /coredns -conf /etc/coredns/Corefile
Above, if you see, the k3s is started with --tls-san and --advertise-address options
" /usr/local/bin/k3s server --tls-san=<IP_ADDRESS> --advertise-address=<IP_ADDRESS>"
Should I change the ip address to external/public ip address in the above two flags as well?  Should I specify all three flags with external ip address?

Try just using node-external-ip.

On the server, I stop the service with "systemctl stop k3s" and then, try to run the server manually with the command "sudo k3s server --node-external-ip=<ACTUAL_IP>"
The server prints a lot of errors (like the ones below) and continues doing so.
ateful set
I0917 08:12:21.440733    4394 node_ipam_controller.go:94] Sending events to api server.
INFO[2020-09-17T08:12:21.844104420+02:00] Connecting to proxy                           url="wss://<IP_ADDRESS>:6443/v1-k3s/connect"
INFO[2020-09-17T08:12:21.844150826+02:00] Connecting to proxy                           url="wss://<IP_ADDRESS>:6443/v1-k3s/connect"
INFO[2020-09-17T08:12:21.846235644+02:00] Handling backend connection request [test-virtualbox]
ERRO[2020-09-17T08:12:21.847385967+02:00] Failed to connect to proxy                    error="dial tcp <IP_ADDRESS>:6443: connect: connection refused"
ERRO[2020-09-17T08:12:21.847437085+02:00] Remotedialer proxy error                      error="dial tcp <IP_ADDRESS>:6443: connect: connection refused"
I0917 08:12:22.455267    4394 request.go:621] Throttling request took 1.015043874s, request: GET:https://<IP_ADDRESS>:6444/apis/events.k8s.io/v1beta1?timeout=32s
INFO[2020-09-17T08:12:26.847530002+02:00] Connecting to proxy                           url="wss://<IP_ADDRESS>:6443/v1-k3s/connect"
ERRO[2020-09-17T08:12:26.849409588+02:00] Failed to connect to proxy                    error="dial tcp <IP_ADDRESS>:6443: connect: connection refused"
ERRO[2020-09-17T08:12:26.849425905+02:00] Remotedialer proxy error                      error="dial tcp <IP_ADDRESS>:6443: connect: connection refused"
To test the curl command "curl -ks http://<IP_ADDRESS>:6443/static/charts/" I stop the above and restart the k3s service with systemctl.
Below are the test results
/var/volatile/tmp # curl -vvv -ks http://<IP_ADDRESS>:6443/static/charts/

Trying <IP_ADDRESS>:6443...
TCP_NODELAY set
^C
/var/volatile/tmp # ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>): 56 data bytes
64 bytes from <IP_ADDRESS>: seq=0 ttl=64 time=0.906 ms
64 bytes from <IP_ADDRESS>: seq=1 ttl=64 time=0.919 ms
^C
--- <IP_ADDRESS> ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.906/0.912/0.919 ms
/var/volatile/tmp # ip route show
default via <IP_ADDRESS> dev eth0
default dev eth0 scope link  metric 99
<IP_ADDRESS>/16 dev eth0 scope link  metric 99
<IP_ADDRESS>/24 dev eth0 scope link  src <IP_ADDRESS>
<IP_ADDRESS>/4 dev eth0 scope link

We see above that routing table is properly set at the agent/worker node. I can ping the master/server node but the curl command doesn't succeed.

I also tried to run "telnet <IP_ADDRESS> 6443" from my agent/worker node with ip address <IP_ADDRESS>. telnet doesn't succeed. does it mean the port 6443 on the server/master is not open or my home router is blocking the traffic between these two machines (which are in the same local area network behind the NAT)?

If you can't curl or telnet to port 6443 then k3s isn't going to work either. Once you get that straightened out the agent should be able to connect to the server.


Init Dependency Injection

Reference Framework

Typhoon

Resolve pull request: https://github.com/EstefaniaGuardado/weightApp/pull/39


[INTERNAL] bundleBuilder: log verbose for json parse failure

When JSON content is parsed for minification, errors are logged using verbose level.
TheJSON content is not relevant, only for minification.

Coverage increased (+0.02%) to 91.634% when pulling 732036a759f055cf75ffa002894573d52267651d on builder-verbose-log-invalid-json into 4ca59a7a5d4b2b48535e184272d1daed6988044a on master.


API for mobile?

Hello, would you consider making this API accessible for mobile with API endpoints etc..? I could create an simple iOS app based on that (if you are agreeing to it) and use the JSON responses to display the waiting times.
Would need the docs to properly create the models. Can add more things as we go but would love to collaborate on something to help during these though times.
Cheers!

Hi,
it would be great to collaborate and to make also an iOS map.
Actually I provide a PWA, because is just data presentation from the backend to frontend side.
Before adding some public API I need to understand how to optimize the whole thing with the low budget servers that I have, but yep, it would be interesting.

Thanks for even considering! Hoping we can collaborate and help people. Will await your updates and thank you 🌟

Android dev here 🙋♂ I can help once the API is available.


Errors in dev console when selecting OCI region while adding Node Template for RKE1 cluster

Environment:
Docker-installed Rancher, 10588ab
Setup
Ensure that the OCI driver is activated, cloud credentials for OCI have been set
Steps to Reproduce:

Login, Cluster Management -> Create
Attempt to create an OCI cluster, RKE1
Try to add a node template (confirm the cloud credentials for OCI are already selected in the drop-down)
In the Region drop-down, choose us-sanjose-1

Actual Results:
In the dev console there will be errors, screenshot included.
Expected Results:
The user should be able to provide the relevant OCI information to complete the node template without encountering errors.
Screenshot

Oracle maintains this driver


fix: remove new line characters from authfile

Hi, thanks for the nice project.
I noticed when I set up the nixos module, I prepared the authfile with commands, echo tskey-auth-xxx > authkey and it fails to start with the following error.
2023/09/20 18:46:39 could not connect to tailnet: tsnet.Up: backend: invalid key: unable to validate API key

After some debugging, I found that it seems to be caused by an inserted newline character at the end of the authkey.
This is a small PR to remove the newline character.
Please let me know if the authfile is misformatted.

Aaah, thank you for the correction. Yep, this sounds exactly right - the code passes the auth file contents directly through and if there's a stray newline, it'll get messed up. Your fix looks great! (:

Thank you! :)


DO NOT MERGE Update actionable messages docs for mobile support

Docs Build status updates of commit c0a27c1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/actionable-messages/adaptive-card.md
:white_check_mark:Succeeded

docs/actionable-messages/images/expense-report-approval.png
:white_check_mark:Succeeded

docs/actionable-messages/images/expense-report-progress.png
:white_check_mark:Succeeded

docs/actionable-messages/images/expense-report-refresh.png
:white_check_mark:Succeeded

docs/actionable-messages/images/group-add-members-request-ios-1.png
:white_check_mark:Succeeded

docs/actionable-messages/images/group-add-members-request-ios-2.png
:white_check_mark:Succeeded

docs/actionable-messages/images/group-join-request-ios.png
:white_check_mark:Succeeded

docs/actionable-messages/images/yammer_card.jpg
:white_check_mark:Succeeded

docs/actionable-messages/images/yammer_connected_group.jpg
:white_check_mark:Succeeded

docs/actionable-messages/index.md
:white_check_mark:Succeeded

docs/actionable-messages/message-card-reference.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Backend login redirects to front end login

When I try to login into the backend while not being logged in i the front end. I, after having entered the backend login information, gets redirected to the front end login form. Anyone else experienced this?
Expected behavior
If I'm not logged in via the Rainlab.User plugin and tries to login to the backend I expect to get redirected to the dashboard upon login.
Actual behavior
I get redirected to /favicon.ico instead. But if I first login into the frontend, this all works.
Reproduce steps
Install Rainlab.User, do not log in, visit the backend login, login.

I could have sworn somebody reported this exact issue before and then closed it. Let me check.

Ah, I see: https://github.com/octobercms/october/issues/2754 it was you but on the main repository.

Exactly it was me :) But on the wrong place ;) I guess it fits better here. I mainly wonder if it's my fault or a general bug

I'm not sure, I don't have the time to try to replicate it myself right now.

It's true.

@webmaxx so you can replicate this issue?

Yes.
My layouts:
main.htm

description = "Шаблон главной страницы"
[session]
security = "user"
redirect = "auth/login"
==
html code

auth.htm

description = "Шаблон страницы для авторизации и т.д."
[session]
security = "guest"
redirect = "index"
==
html code

My pages:
index.htm

title = "Главная страница"
url = "/"
layout = "main"
is_hidden = 0
==
html code

auth/login.htm

title = "Войти"
url = "/auth/login"
layout = "auth"
description = "Страница авторизации"
is_hidden = 0
[account formLogin]
paramCode = "code"
==
{% component 'formLogin' %}

Steps:

Go to "http://site.com". Result - redirect to "http://site.com/auth/login"
Go to "http://site.com/backend". Result - redirect to "http://site.com/backend/backend/auth/signin"
Submit auth form. Result - redirect to "http://site.com/favicon.ico" + redirect to "http://site.com/auth/login"
Go to "http://site.com/backend". Result - profit. I'm authorized

Exactly like that 👍

I'm having the same issue. I just made a plugin component that extends the RainLab\User\Components\Account component.
Example of using onCustomSignin()
// login.htm
[customaccount]
redirect = "account"
==
<form data-request="onCustomSignin" >
...

// component: 'customaccount'
use RainLab\User\Components\Account;
class CustomAccount extends Account
{
  public function onCustomSignin()
  {
    try {
      parent::onSignin();

      $redirectUrl = null;

      // user defined component property
      if ($redirect_value = $this->property('redirect')) {
        $redirectUrl = $this->pageUrl($redirect_value);
      }

      // give preference to request input, otherwise use user defined component property
      $redirectUrl = input('redirect', $redirectUrl);

      // prefer not to use Redirect::intended if we have a user defined url
      if ($redirectUrl) {
        return \Redirect::to($redirectUrl);
      }

      // current method as fallback
      return \Redirect::intended($redirectUrl);

    } catch (\Exception $ex) {
      if (\Request::ajax()) throw $ex;
      else \Flash::error($ex->getMessage());
    }
  }
}

#274

This happens the other way around to.
If I log into the backend and then log out.
And then login through the frontend... I am logged in on the front end, but am redirected to the backend login form.
It seems to be line 160 in the Account.php component, using...
return Redirect::intended($redirectUrl);
If this is replaced with..
return Redirect::to($redirectUrl);
Then you are redirected to your specified redirect url. I'm not sure if there's any specific reason why intended() method is used instead of to();
Is the only current way around this to overwrite on the onSignin method of the component?

We can merge that change if necessary, but the reason that intended() is used is because it is supposed to redirect the user to the page they were trying to access before they got booted to the login page. This is mostly used by the Session component. If we could figure out why the intended() method is picking up the wrong URL to send people to, that would be the ideal solution.

In my case at least, it will only redirect to the property set in your component if there isn't a url.intended session variable set, otherwise it will do that. Which I'm guessing is getting set at some point during the logging out process on the backend.
So to circumvent this, I've overwritten the onSignin() method in the code section on my page and cleared the url.intended session variable before actually signing in.
function onSignin() {     try {     	\Session::forget('url.intended');         return $this->account->onSignin();     }     catch (Exception $ex) {         Log::error($ex);     } }

To fix this and a couple of other related reported issues, I think it would be best if we could solve the root cause of the url.intended session variable being set on backend logout, or perhaps looked at using a different session variable for url.intended between frontend sessions and backend sessions.

Closing as it has been over a month since any activity on this occurred.

@LukeTowers I'd like to find a clean solution for this one. The only function that actually SETS this session key (url.intended) is in vendor/laravel/framework/src/Illuminate/Routing/Redirector.php:
    public function guest($path, $status = 302, $headers = [], $secure = null)
    {
        $this->session->put('url.intended', $this->generator->full());

        return $this->to($path, $status, $headers, $secure);
    }

but I cannot find where this gets called in the backend authentication code when loging out.
Any pointer?

@mjauvin perhaps you can throw some debugging statements in there to find out when it gets called?

In the mean time, here is an alternative patch that can be added to a Plugin to fix the issue:
    public function boot()
    {
        \Event::listen('rainlab.user.beforeAuthenticate', function($account, $credentials) {
            \Session::forget('url.intended');
        });
    }

Note: this does not fix the problem in the other direction (Logout of a front-end session then login to backend... backend redirected to front-end login form)

After tinkering in the code, there is no way to do this cleanly but to create a seperate session variable for the front-end (as @LukeTowers suggested)... we'll need to bypass the framework Redirector class (vendor/laravel/framework/src/Illuminate/Routing/Redirector.php) in order to do this, in particular the "guest()" and "intended()" methods since this is where the session variable url.intended gets set and retreieved, respectively.

@mjauvin the code that should be preventing this issue from occurring was implemented 4 years ago, however the issue seems to be caused by the fact the url.intended session variable is not properly being removed by Redirect::intended. Are you able to look into that instead?

If you mean this, it is not working:
--- Redirector.php.dist 2018-03-30 19:56:40.079992990 -0400
+++ Redirector.php      2018-03-30 19:59:28.106992970 -0400
@@ -99,6 +99,7 @@
     public function intended($default = '/', $status = 302, $headers = [], $secure = null)
     {
         $path = $this->session->pull('url.intended', $default);
+        $this->session->forget('url.intended');

         return $this->to($path, $status, $headers, $secure);
     }

I do have a working patch to rainlab.user that fixes the problem with a seperate session variable, though.

@mjauvin what session driver are you using?

@LukeTowers session driver = file

I really would prefer fixing the original issue (url.intended not being removed properly from the session) rather than add a workaround here, but if we can't find out why that's happening then I'll consider the proposed workaround.

Ok, let's summarize what's really happening

There are two seperate "environments": the frontend and the backend.
Both environments share a common session, in which the "url.intended" variable can be defined.
When requesting a page on the frontend or backend which can only be accessed while being logged in, if the user is NOT currently logged in, October will set the "url.intended" session variable to the requested URL and redirect the user to the respective Login form (backend or frontend).
Once the user is being logged in succesfully, the "url.intended" session variable is retrieved from the session using the "pull" Session Store method, the session variable is forgotten and the user is redirected to the URL retrieved from this session variable (this works fine).

Problems happen when the url.intended session variable gets set within an environment, THEN, before the user is logged into this environment, a login request is made within the OTHER environment which triggers the url.intended variable to get used to redirect the user after successful login...
Let's give concrete examples:
Scenario #1

User opens a browser window to http://example.com/backend/cms
This URL is not accessible without being properly logged in, so the url.intended session variable gets set to "http://example.com/backend/cms" and user gets redirected to "http://example.com/backend/backend/auth/signin"
User opens another browser window to "http://example.com/login"
User enters proper login information and gets redirected to the URL currently defined into the url.intended session variable ("http://example.com/backend/cms") <--- PROBLEM!

Scenario #2

User is currently logged into the backend
User opens another browser window to "http://example.com/private" (not accessible unless logged into the frontend)
url.intended is set to "http://example.com/private" and user gets redirected to "http://example.com/login".
User logs out of the backend session, gets redirected to "http://example.com/backend/backend" (ref. modules/backend/controllers/Auth.php::signout) but that URL redirects to the backend login form and sets the url.intended to  "http://example.com/backend/backend".
If User goes back to previous browser window and logs into the frontend, he gets redirected to the current url.intended (http://example.com/backend/backend) which is not accessible without being logged into the backend, thus, user gets redirected to the backend login form. <--- PROBLEM!

So the only way to avoid those problems is to use a different session variable for the FRONTEND, as implemented by PR #324
Thanks.

Fixed by @mjauvin in https://github.com/rainlab/user-plugin/commit/2ef30299e22810da42b0cae824a5a63474c39b99, thanks for your effort on finding a fix @mjauvin!


"Copy Location" is gone.

What feature or improvement do you think would benefit Files?
I cannot find "Copy Location" in the menu.
In single selection and right click, there is 'Copy location", but in multiple selection and right click, there is no "Copy Location".
I need "Copy Location" in multiple selection menu.
thanks.
Requirements

This proposal will accomplish X
This proposal will accomplish Y
This proposal will accomplish Z

Files Version
<IP_ADDRESS>
Windows Version
10.0.22621.1555
Comments

@testama this is by design, copy location isn't for copying the item, it's for copying the location of the item. I think you're looking for the copy button.

yes, that icon is copy button. I know.
I want copy "location".

This is by design, do you have a use case for copying multiple paths into the clipboard?

yes I have. but, that was an amateur, detour, inefficient way.
I realized I was wrong. thank you.
I try to do without copying multiple path copy.

@testama we'd like to learn more about your use case.

for Excel(VBA).
I'm low skilled clerical worker, not IT engineer.

copying multi paths
matching copied paths and image files
pasting images into the cells

you can ignore me anymore.

may I close this issue?
thank you yaira2 san.


Add WASM standalone builds

Thanks for your work on this project!
Would you consider adding building a new wasm-wasi artifact that's compiled with emscripten's standalone mode?
I'm trying to use pdfium in a wasm engine like wasmtime or wasmer which can't use the JS shims that the current wasm build requires.

Hi,
What is the steps to i understand how to build it.

I was able to get it to build with this:
diff --git a/modules/wasm.py b/modules/wasm.py
--- a/modules/wasm.py
+++ b/modules/wasm.py
@@ -657,6 +657,11 @@ def run_task_generate():
                 "ASSERTIONS=1",
                 "-s",
                 "ALLOW_MEMORY_GROWTH=1",
+                "-sSTANDALONE_WASM=1",
+                "-sWASM_ASYNC_COMPILATION=0",
+                "-sWARN_ON_UNDEFINED_SYMBOLS=1",
+                "-sERROR_ON_UNDEFINED_SYMBOLS=0",
                 "-sMODULARIZE",
                 "-sEXPORT_NAME=PDFiumModule",
                 "-std=c++11",

But I'm not sure if it's better to patch the undefined symbols instead of ignoring them like that.

We have:

What name you suggest for it?

And more two questions:

Why we need care about undefined symbols in this case?
How i can test the stand alone wasm?

I'm not sure if the undefined symbols are used for anything, which is why I ignored them.
If you want to call some functions in the library to test, here's an example that uses wasmtime with rust:
use wasmtime::*;
use wasmtime_wasi::*;

let engine = Engine::default();
let module = Module::from_file(&engine, "pdfium.wasm")?;
let mut linker = Linker::new(&engine);
wasmtime_wasi::preview1::add_to_linker_sync(&mut linker, |s| s)?;
linker.define_unknown_imports_as_default_values(&module)?;
let pre = linker.instantiate_pre(&module)?;
let wasi_ctx = WasiCtxBuilder::new().build_p1();
let mut store = Store::new(&engine, wasi_ctx);
let instance = pre.instantiate(&mut store)?;
let init_library = instance.get_typed_func::<(), ()>(&mut store, "FPDF_InitLibrary")?;
init_library.call(&mut store, ())?;
let get_last_error = instance.get_typed_func::<(), i32>(&mut store, "FPDF_GetLastError")?;
println!("result={}", get_last_error.call(&mut store, ())?);

wasmtime also has python bindings that should work the same way

Hi,
I have added but get error:
https://github.com/paulocoutinhox/pdfium-lib/pull/140/files
Error:
python3 make.py test-wasmtime
Testing with wasmtime...
Traceback (most recent call last):
  File "/Users/paulo/Developer/workspaces/cpp/pdfium-lib/make.py", line 250, in <module>
    main(args)
  File "/Users/paulo/Developer/workspaces/cpp/pdfium-lib/make.py", line 217, in main
    wasm.run_task_test_wasmtime()
  File "/Users/paulo/Developer/workspaces/cpp/pdfium-lib/modules/wasm.py", line 567, in run_task_test_wasmtime
    instance = linker.instantiate(store, module)
  File "/opt/homebrew/lib/python3.10/site-packages/wasmtime/_linker.py", line 171, in instantiate
    raise WasmtimeError._from_ptr(error)
wasmtime._error.WasmtimeError: unknown import: `env::invoke_viii` has not been defined

Do you know what can be wrong?
Thanks.

Thank you for looking into this!
Emscripten adds some functions like that to the compiled WASM file. I'm not sure if it's possible to
stop it from doing that, but it doesn't seem like actually used by pdfium, so it defining them as empty stubs
should work.
In the rust example I posted, that's what linker.define_unknown_imports_as_default_values does.
The python bindings don't look like they have a similar function, but we can do it manually with
something like this:
def define_unknown_imports_as_default_values(linker: Linker, module: Module) -> None:
    for imp in module.imports:
        if imp.module != "env":
            continue
        if isinstance(imp.type, wasmtime.FuncType):
            func_ty = imp.type
            result_tys = func_ty.results

            def default_func(*args):
                # XXX: For some reason _emscripten_throw_longjmp is called with different numbers of
                # arguments, and sometimes expects a return value and sometimes not. This feels like
                # a bug, but I don't know if it's in emscripten or wasmtime.
                if imp.name == "_emscripten_throw_longjmp":
                    if len(args) in (3, 5):
                        return 0
                    return None
                results = []
                for ty in result_tys:
                    match ty:
                        case ValType.i32():
                            results.append(0)
                        case ValType.i64():
                            results.append(0)
                        case ValType.f32():
                            results.append(0.0)
                        case ValType.f64():
                            results.append(0.0)
                return results

            linker.define_func(imp.module, imp.name, func_ty, default_func)

engine = Engine()
module = Module.from_file(engine, "pdfium.wasi.wasm")
store = Store(engine)
linker = Linker(engine)
linker.define_wasi()
wasi_config = WasiConfig()
wasi_config.inherit_stdout()
store.set_wasi(wasi_config)
_define_unknown_imports_as_default_values(linker, module)
instance = linker.instantiate(store, module)
instance.exports(store)["FPDF_InitLibrary"](store)

That's kind of hacky, but it seems to work.

Nice.
Do you have the commands to test the rust code?
Thanks.

To run that rust code, you'd need a Cargo.toml something like this:
[package]
name = "rust_wasm_test"
version = "0.1.0"
edition = "2021"

[dependencies]
wasmtime = "=24.0.0"
wasmtime-wasi = "=24.0.0"

Put the pdfium.wasm file in the same directory as the Cargo.toml file and add the above rust code to src/main.rs.
Then you'd run cargo build --release to build the binary, and you'd run it with
./target/release/rust_wasm_test.

to fix your trouble check this solution click
maybe this will solve your problem.


beamPackages.hex: 1.0.1 -> 2.0.6

Description of changes
Update beam module hex.
From looking: https://github.com/hexpm/hex/tags the 2.0.0 line has been out since Oct 2022. 1.x is old enough that warnings are starting to show.
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
[ ] 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

[ ] Fits CONTRIBUTING.md.

Testing with nixpkgs-review tested the example elixir applications in nixpkgs. pelorma-otp and plausible are currently broken. Everything else built well.
I also tested this change locally by copying the hex/default.nix into my project and use that in order to package a couple of different mix release projects.

Result of nixpkgs-review pr 218569 run on x86_64-linux 1

1 package failed to build:

plausible

4 packages built:

akkoma
elixir_ls
pleroma
sonic-pi

I'll give the @NixOS/beam team another 2 days.

Thanks !
(For others let me know if this was too fast to merge, this looks like an overdue change so i just went ahead)


Update renovate.json for 2.16

@MohammadiIram apart from all the other konflux related PRs that were merged into rhoai-2.16 branch, this one went into master branch, is this expected?


Centos 7 installation

I want to use this extension in my server with OS centos 7. How do I install that . Thanks

See How to Install an Extension.


Fix UI thread main loop cancellation from another thread on macOS

What does the pull request do?
Ensure that the UI thread main loop is stopped.
What is the current behavior?
Cancelling the UI thread main loop from a different thread does not really stop the loop on macOS.
What is the updated/expected behavior with this PR?
Cancelling the UI thread main loop from a different thread stops the loop on macOS.
How was the solution implemented (if it's not obvious)?
When canceling the UI thread main loop from another thread on macOS, dispatch_async() is used to post the actually work, [NSApp stop:nil], into the loop. However this will not stop the loop as it doesn't result in the posting of an NSEvent object (see https://developer.apple.com/documentation/appkit/nsapplication/1428473-stop for details). This PR posts the object to ensure the loop is stopped.
This PR also fixes an issue that the Running flag is set too early.
Checklist

[ ] Added unit tests (if possible)?
[ ] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Documentation with user documentation

Breaking changes

Obsoletions / Deprecations

Fixed issues

@dotnet-policy-service agree

You can test this PR using the following package version. 11.0.999-cibuild0038540-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

You can test this PR using the following package version. 11.0.999-cibuild0038542-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]


Coding guideline: Fixing code violations 21.2 Rule

A reserved identifier or reserved macro name shall
not be declared.
Changes are related to removing all the identifiers
or macro names begining with underscores.
Signed-off-by: Spoorthy Priya Yerabolu<EMAIL_ADDRESS>

The changes are fine IMHO, but it would be nice to have an overall plan for this guideline. Just remove underscores is not the best thing to do (not specifically in this PR though) because you may easily end up with clash of identifiers. For instance, log_level can easily be defined in other place. So, for this guideline we should have namespaces, that can be the filename, subsystem, ...
Another thing, is this pr fixing all 21.2 violations ?

The changes are fine IMHO, but it would be nice to have an overall plan for this guideline. Just remove underscores is not the best thing to do (not specifically in this PR though) because you may easily end up with clash of identifiers. For instance, log_level can easily be defined in other place. So, for this guideline we should have namespaces, that can be the filename, subsystem, ...

Yes, just for these changes proceeded with removing underscores as it was not clashing with other identifiers. Will add it to the commit message.

Another thing, is this pr fixing all 21.2 violations ?
No .. this changes are addressing around 600 issues and rest of the issues I am still triaging

Closing this PR as reserved identifiers starting with underscores is acceptable as Zephyr is a OS. Discussed this in RFC #32590.


KeypressOSD

Hi, this script written in AHK v1
https://github.com/tmplinshi/KeypressOSD
I want to convert to AHK v2
I can't convert using "AHK-v2-script-converter"
Please help me.

The convertor doesn't fix all changes made, so some things will cause the script to error. You'll need to manually change the things that aren't fixed.
I did attempt to fix it, but it's a much bigger project than I thought, maybe just keep using v1 until more improvements are made


Create CHANGELOG.md

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@e7fb87d). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #12   +/-   ##
=========================================
  Coverage          ?   38.34%
=========================================
  Files             ?        8
  Lines             ?      206
  Branches          ?       19
=========================================
  Hits              ?       79
  Misses            ?      125
  Partials          ?        2

Continue to review full report at Codecov.

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


Bug in computemanagement.py when creating vm's from storage vhd.

Problem: When trying to create a vm instance from a storage image an error is thrown because the storage image uri can not be derived. The problem is a reference to the wrong attribute (uri) on the source_image object.  It should use the referenced_uri attribute.
Dev Environment: -  azure sdk (1.0.2) azure compute 0.20.2 - error is also in master
OS -RHEL 6.7  - python 2.75
Solution:
On line 6309 in computemanagement.py
if parameters.storage_profile.os_disk.source_image.uri is not None:
image_value['uri'] = parameters.storage_profile.os_disk.source_image.uri
This should be:
image_value['uri'] = parameters.storage_profile.os_disk.source_image.reference_uri
Example using SDK to create the storage profile:
storage_profile=azure.mgmt.compute.StorageProfile(
os_disk=azure.mgmt.compute.OSDisk(
caching=azure.mgmt.compute.CachingTypes.none,
create_option=azure.mgmt.compute.DiskCreateOptionTypes.from_image,
name=self.OS_DISK_NAME,
operating_system_type="Windows",
virtual_hard_disk=azure.mgmt.compute.VirtualHardDisk(
uri="https://some.blob.core.windows.net/vhds/bbxxxx.vhd"
),
source_image=azure.mgmt.compute.SourceImageReference(
reference_uri="https://some.blob.core.windows.net/system/Microsoft.Compute/Images/somevm4/somevm-osDisk.eaeec132-ebfe-4835-xxxxx.vhd",
),
),

Hi,
Unfortunately, the "reference_uri" is not officially supported by the ARM API currently, as you can see here (no mention of this parameter):
https://msdn.microsoft.com/en-us/library/azure/mt163591.aspx#bk_storage
The parameter will disapear in the 2.0.0 version of the Python SDK. You have to use the others parameters to point to your image. Sorry about that....

Hi Laurent,
Thank you for your reply. In the link above I do not see any mention of a SourceImageReference. If you do not have the SourceImageReference how can you create vms from generalized (custom) images in a storage account?  Note this is different from the ImageReference which would only be used to create VMS from a market place platform image.
In the Azure SDK for Python Documentation, Release 1.0.3 this is described as the source image:
class azure.mgmt.compute.computemanagement.StorageProfile(**kwargs)
Bases: object
Describes a storage profile.
data_disks
Gets or sets the data disks.
image_reference
Gets or sets the image reference.
os_disk
Gets or sets the OS disk.
source_image
Gets or sets the source image reference.
This support is currently in the 1.0.2/3/master python SDK and working with the attribute change. Is this not going to be supported in the future releases?
Thanks again for your help,
Brad Blancett

Hi @sametimesolutions
I will close this issue, I was unable to fix it in the correct time and 1.0.x is now deprecated (2.0 is released last week). Sorry if it caused problems on your side :(
If you have the opportunity to try your scenario with the latest azure package, it would be great and I will be glad to help you.
Thank you,


Add husky for lint-staged

To run lint-staged before each commit.
Ref #40

Coverage remained the same at 99.333% when pulling 5523ee229e124ec84161acff9fa77fa2c247f7ff on add-husky into 976f8d5221f35f31dc35ced324b855eb70ec9657 on master.


Document Load Balancer Requirements for Chef Server

ZenDesk 2614
Chef 12 + Manage 1.6.2
As a customer, I would like these requirements, like sticky sessions and NATing for frontend connections through the LB to be documented at docs.chef.io
Our customer in ZenDesk 2614 had this to say about their findings with Chef 12 + Manage 1.6.2
Hitting the chef FQDN in the chef-server.rb, static content would load fine, but when trying to do anything that would talk to the API - it would fail with a generic "Smell Something burning" error message - see ZenDesk 1943: [Chef] [1943] Re: Smell something burning?
the FE's, instead of just accessing localhost for their api - would try to talk to the FQDN, , when the traffic passed through the lb, to the FEs, the shortest return path then is direct communication - resulting in a async connection...with the originating FE thinking the traffic was lost to the void.
EG: NODEX -> LB -> FE1 -> LB -> NODEX == work
FE1 -> LB -> FE2 - > FE1 == no workie
The fix was to nat connections from the FE network, so they appear as a normal node and traffic returns via the LB

I believe most of the requirements mentioned here are imposed by Chef Manage.  Could someone on @chef/chef-visual-interaction comment on what the requirements are?

The related issue is https://github.com/chef/chef-manage-issues/issues/22

Sticky sessions are not needed if the instances share the same secret key, which can be shared by copying the /etc/opscode-manage/secrets.rb file that gets generated on the first reconfigure around to all of the nodes. Pretty sure this isn't documented anywhere, we could work with @jamescott on that.
The next release of Manage should use localhost instead of the api_fqdn, which should solve this problem.

@smith with the merging of the above referenced PR, does this still need to be open or can this be closed?

@mmzyk are the load balancer requirements for chef server documented? That's what the ticket was asking for. This fixes the NAT problem referenced, but it's up to @sean-horn whether or not that is sufficient for the customer.

Documentation around this has been added and will be available once this doc snippet is done building. https://github.com/chef/chef-docs/commit/885fcefff0a34f1f9a23475e7cf3f38b4e2ee1a1
I'm going to close this out as fulfilled.


Add imagor to benchmark

Subj, can you please add imagor to benchmark?
Here is author's word about it:

A bit of our background: we have been a long time user of Thumbor, with millions of images serving under it and applications built around the Thumbor syntax. However Thumbor is not quite in active development anymore. Support is getting stale, and its stable version is still using Python 2.
So we started to look to alternatives. We wanted to keep the Thumbor syntax as it is a pretty good one, and we want no disruption to our existing image urls being created, and applications that built around it. So we wanted a drop-in replacement. We studied closely with Imaginary and Imgproxy which both are made with Go and libvips. Imgproxy is a pretty solid one, but we are not happy it is charging for premium, even for common features like Chained pipelines (a.k.a filters). Imaginary is very popular, but the feature parity gap is pretty large between Imaginary and Thumbor, with ongoing memory issues and the author seems not interested in maintaining it recently. And most importantly, neither of both sides are interested in adopting Thumbor's URL syntax. And building a proxy around them would be a half baked solution, as their high level APIs are unlikely meet the Thumbor's feature parity. And so we decided to do the hard work and here it is.
We have already implemented all features we need and it is working great for us in production. The S3 Loader/Storage is battle tested, but the file store is not though. We do acknowledge it has a long way to go to meet the Thumbor's feature parity. But this is just our first step and of course we wanna keep pushing it.

When we'll find time for a new benchmark – sure

We posted the new benchmark results to our blog some time ago: https://imgproxy.net/blog/image-processing-servers-benchmark/


Fix length

#191
This PR re-implements length/2 as described in http://www.complang.tuwien.ac.at/ulrich/iso-prolog/prologue#length
Also, improved cycle detection with Brent's cycle detection algorithm.

Codecov Report

Merging #217 (4268382) into main (59c5001) will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #217      +/-   ##
==========================================
+ Coverage   96.86%   96.89%   +0.03%
==========================================
  Files          21       21
  Lines        6320     6383      +63
==========================================
+ Hits         6122     6185      +63
  Misses        163      163
  Partials       35       35

Impacted Files
Coverage Δ

engine/builtin.go
96.40% <100.00%> (+0.09%)
:arrow_up:

engine/compound.go
100.00% <100.00%> (ø)

engine/iterator.go
100.00% <100.00%> (ø)

engine/number.go
100.00% <100.00%> (ø)

engine/parser.go
94.54% <100.00%> (ø)

engine/promise.go
100.00% <100.00%> (ø)

interpreter.go
94.90% <100.00%> (+0.02%)
:arrow_up:

Continue to review full report at Codecov.

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


sx.aspectRatio can't accept number

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
Passing a number to sx.aspectRatio causes type errors.
No overload matches this call.
  Overload 2 of 2, '(props: DefaultComponentProps<BoxTypeMap<{}, "div">>): Element', gave the following error.
    Type 'number' is not assignable to type 'SystemStyleObject<Theme>'.
  Overload 2 of 2, '(props: DefaultComponentProps<BoxTypeMap<{}, "div">>): Element', gave the following error.
    Type 'string' is not assignable to type 'SystemStyleObject<Theme>'.
  Overload 2 of 2, '(props: DefaultComponentProps<BoxTypeMap<{}, "div">>): Element', gave the following error.
    Type 'number' is not assignable to type 'SystemStyleObject<Theme>'.ts(2769)

Looking at the DevTools, it seems that an unnecessary suffix, px, is being added.
aspect-ratio: 1.3333333333333333px;

Expected behavior 🤔
AspectRatio should also accept number, plus it doesn't add unnecessary px suffix.
Steps to reproduce 🕹
Steps:

Pass number to sx.aspectRatio

https://codesandbox.io/s/boxsx-material-demo-forked-wv77k?file=/demo.tsx
Context 🔦
I’d like to make a custom Box component with the aspectRatio prop.
Your environment 🌎

`npx @mui/envinfo`

  System:
    OS: macOS 12.0.1
  Binaries:
    Node: 14.18.0 - ~/.nvm/versions/node/v14.18.0/bin/node
    Yarn: 1.22.5 - ~/.yarn/bin/yarn
    npm: 6.14.15 - ~/.nvm/versions/node/v14.18.0/bin/npm
  Browsers:
    Chrome: 96.0.4664.93
    Edge: 96.0.1054.43
    Firefox: 93.0
    Safari: 15.1
  npmPackages:
    @emotion/styled:  10.0.27
    @mui/base:  5.0.0-alpha.58
    @mui/core:  5.0.0-alpha.51
    @mui/icons-material: ^5.0.4 => 5.0.4
    @mui/lab: ^5.0.0-alpha.51 => 5.0.0-alpha.51
    @mui/material: ^5.0.4 => 5.2.2
    @mui/private-theming:  5.2.2
    @mui/styled-engine-sc:  5.0.3
    @mui/styles: ^5.1.1 => 5.2.2
    @mui/system: ^5.1.1 => 5.2.2
    @mui/types:  7.1.0
    @mui/utils:  5.2.2
    @types/react: 17.0.37 => 17.0.37
    react: ^17.0.2 => 17.0.2
    react-dom: ^17.0.2 => 17.0.2
    styled-components: ^5.0.0 => 5.1.1
    typescript: 4.5.2 => 4.5.2

It's coming from emotion, it is specified as a string there too. I am not sure that I would change it specifically in the sx prop too. If you feel like this is a bug please file it on the emotion repo and link this issue. See https://codesandbox.io/s/boxsx-material-demo-forked-vsrx9?file=/demo.tsx

Encountered this issue too, at the moment I turned to "paddingTop" after experimenting on it a bit and ending up getting no luck😂, not sure if this is a bug or something, but thanks for your workaround anyways, appreciate it👍

Encountered this issue too, at the moment I turned to "paddingTop" after experimenting on it a bit and ending up getting no luck😂, not sure if this is a bug or something, but thanks for your workaround anyways, appreciate it👍

I'm also seeing this issue, however I found a workaround - if you turn the aspect ratio into a string, it works.
Ie:
const aspectRatio = `${(640/480)}`

Passing that in to the sx parameter makes it work.


docker login success but can not pull, strange behavior

I execute docker login and typed my name, pass, email as prompt. It said that I login successfully:
WARNING: login credentials saved in /root/.docker/config.json
Login Succeeded

and a new config.json is generated:
{
        "auths": {
                "docker.io": {
                        "auth": "my_auth",
                        "email": "my_email"
                }
        }
}

but I can not pull any repo from my account:
Trying to pull repository docker.io/myrepo ... not found
Error: image myrepo:develop-778 not found

The most strange thing is below:
I copied another config from another machine which can do the pull. I attached it in the former config.
{
        "auths": {
                "docker.io": {
                        "auth": "my_auth",
                        "email": "my_email"
                },
                "https://index.docker.io/v1/": {
                        "auth": "my_auth",
                        "email": "my_email"
                }
        }
}

then I can pull now. (the auth and email are totally same, only the domain differs)
I summarize my expectation:
1.The two machine use the same command to login, why they generate two different domains
2.The first domain can not pull, but why it prompted that I logined success.
 I'm almost positive that newer versions don't have this problem.

I am having the same issue. I have 1.11 version for both docker server and client. With https://index.docker.io/v1, it is working but for https://registry-1.docker.io/v2 it is failing.

It looks like you need to add your namespace (i.e. docker pull myusername/myrepo).  Note that it appears you are also using an unsupported version of docker that prepends registry names.  Please re-open if you continue to have issues.  Thanks!


Allow developers to opt-out of telemetry

Please consider allowing developers to opt-out of telemetry:
https://github.com/Pythagora-io/pythagora/blob/2d42b535a0a947d9f2b6c9165be9e1e4e8af5db2/src/bin/postinstall.js#L45

Hey @gardner , i request you to please look at #65 for the solution of this issue .

Hi @adarsh-jha-dev nice work on the Pull Request. I a few comments on the PR. I am not a maintainer on this repository so I can't approve the PR.

Hi @adarsh-jha-dev nice work on the Pull Request. I a few comments on the PR. I am not a maintainer on this repository so I can't approve the PR.

Ok Ok , no issues, can any of the maintainers please review my PR #65 for the solution of this issue?

Opt out ? Please do it by opt-in. C'mon thats really no good behaviour, making post install scripts with axios requests and makes me angry a bit after having finally found the time to examine your lib. Please respect the users's privacy - always and we dev have to be a good example.
I will send you my other feedback soon, have a good one  !


Bug: SELECTION_CHANGE_COMMAND event is not fired on node selection

Listeners of the SELECTION_CHANGE_COMMAND command do not receive events if the selection changes to a node.
Lexical version: 0.5.0
Steps To Reproduce

Use the modified codesandbox example that listens for the event
Add some text and horizontal rules (HR button in the toolbar)
Do any text selection - in the console, you will see SELECTION_CHANGE_COMMAND, RangeSelection(...) output
Select horizontal rule - click on it (which is hard 🙈 ) or select using keyboard (set cursor to the start of a paragraph next to it and press ArrowLeft). When the node is selected it is reflected in the history plugin, however, the console log does not output anything.

Link to code example: https://codesandbox.io/s/busy-wing-1eop87
https://user-images.githubusercontent.com/1575198/195141496-f174784b-802a-4f07-80d8-2d0f6aecd5e0.mov
The current behavior
Decorator node selection is not captured and does not trigger SELECTION_CHANGE_COMMAND event.
The expected behavior
Whether it is a range -> node selection change or node -> node it should trigger the SELECTION_CHANGE_COMMAND event.

I encountered the same problem, any solution?

I ended up using registerUpdateListener https://lexical.dev/docs/concepts/listeners#registerupdatelistener instead of listening for the command. This fixed some issues on my end, although I am not sure if there are any downsides for using it (I did not notice so far).

@Piliuta I tried that too, but it doesn't work while using nested editors. I need to listen to SELECTION_CHANGE_COMMAND event to get the current active editor and it isn't triggered.

@Piliuta  I tried triggered the SELECTION_CHANGE_COMMAND by myself and solved my problem by a hack. Lexical has some strange code to handle the selection and editor._selection, it's messy and need to be re-designed and optimized.

Does any plan on this issue? My hack code doesn't work after updating lexical to the latest version.

We should probably invoke a SELECTION_CHANGE_COMMAND in the update phase where we trigger update listeners if going from RangeSelection -> NodeSelection by comparing prevSelection to nextSelection. I wonder if we should also invoke if NodeSelection's selected nodes change too?

@trueadm It may still not work. You can try the following steps:

add an image in playground and paste another image into the nested editor of the image's caption.
Click the image in caption nested editor for selecting it.
Click the first image.

The image in caption doesn't be deselected while clicking into another editor (nested editor or parent editor).
I think the reason of this issue is because the registerUpdateListen event can't be triggered while click into another editor, and the code below can't been executed.
https://github.com/facebook/lexical/blob/ec18fcf2c22b30a22ef161d3b579a635c9095bcc/packages/lexical-react/src/useLexicalNodeSelection.ts#L44


Feature: Support for Accessing the Origin Private File System

We do not support Accessing the Origin Private File System.
This should be a very similar implementation to that of ShowDirectoryPickerAsync, but the name should probably be something close to the original JS call which is navigator.storage.getDirectory.
Potential names for the Method could be:

GetOriginDirectory
GetPrivateOriginDirectory
GetStorageDirectory
GetNavigatorStorageDirectory

I'm open to other suggestions as well.
We of cause also need a new demo page that utilizes this feature.

Excellent work my friend, and thank you.  I tried to pull the package from NuGet and I don't get those updates yet.  Is there another step before NuGet reflects those code changes?


The language setting don't respect system language

Describe the bug
Set the app's language to system, the language will switch to English instead of the default language of system.
Flatpak and android versions both affected by this bug.
To reproduce

make sure your system language is not English
change app's language to "system"

Expected behavior
The app's language will be same with system's language.
Screenshots
No response
Desktop (please complete the following information)

OS: Fedora Silverblue 38
DE: Gnome Shell 44.1
App: 1.9.1 (1.9.0 has this bug as well)

Smartphone (please complete the following information)

Honor 30S
Android 10

Additional context
No response

@lumingzh can you please try to reproduce the issue in the latest version?

@lumingzh can you please try to reproduce the issue in the latest version?

This bug has been solved in the latest version.

This surprises me as there is no related change made

This surprises me as there is no related change made

Then I don't know why.😂


fixed dependency issue

Added missing dependency files and made file alphabetically sorted.

Thanks! I think this needs some adjustments. I'll look into it as soon as I have some time.

I think virtualenv should be removed from this list too.

I just did pip freeze to file. Should I add only required packages?

@jainaman224 I was under the impression that the file is a list of a setup that is proven to be stable. I would personally only have a list of the packages that are 100% required rather than a list of someones current setup. @jrief will define how this file should be managed.

We should not add this line: https://github.com/awesto/django-shop/pull/714/files#diff-b80ca39e5ba09203c741fcc8e103bd16R31
We should also not add anything that is included by other files in the requirements directory, for example here: https://github.com/awesto/django-shop/blob/master/requirements/django110.txt

To clarify my earlier comment: Yes, please add only packages that are required.


Support of file types

@yarax - any pointers to start this enhancement ?

I'm still not sure how to handle this.
Passing multipart data to GraphQL is quite tricky.
So ideas and PRs are appreciated

Maybe swagger-to-graphql should skip it (try-catch) it for now?

Ignoring file types is already implemented. Actually supporting file types will be tracked in this issue.

if a schema contains application/pdf i get this error:
{"errors":[{"message":"Cannot read property 'schema' of undefined"}]}

Ignoring file types is already implemented. Actually supporting file types will be tracked in this issue.

How can we ignore file types exactly? I have these errors and I'd like to bypass these errors.


Configuration for production?

I've been using the package for the last couple on months on local and everything worked, but now is the time to deploy to production, and everything stopped working.
When I open the website on production I get errors in the console that state:
Message: Failed to connect to Pusher
"/var/www//vendor/laravel/framework/src/Illuminate/Broadcasting/Broadcasters/PusherBroadcaster.php"*
This is my configuration
broadcasting
'pusher' => [
            'driver' => 'pusher',
            'key' => env('PUSHER_APP_KEY'),
            'secret' => env('PUSHER_APP_SECRET'),
            'app_id' => env('PUSHER_APP_ID'),
            'options' => [
                'cluster' => env('PUSHER_APP_CLUSTER'),
                'host' => '<IP_ADDRESS>',
                'port' => 6001,
                'scheme' => 'https',
                'curl_options' => [
                    CURLOPT_SSL_VERIFYHOST => 0,
                    CURLOPT_SSL_VERIFYPEER => 0,
                ]
            ],
        ],

websockets
[
            'id' => env('PUSHER_APP_ID'),
            'name' => env('APP_NAME'),
            'key' => env('PUSHER_APP_KEY'),
            'secret' => env('PUSHER_APP_SECRET'),
            'path' => env('PUSHER_APP_PATH'),
            'capacity' => null,
            'enable_client_messages' => true,
            'enable_statistics' => true,
            'encrypted' => true,
            'scheme' => 'https',
        ]
        'ssl' => [
        /*
         * Path to local certificate file on filesystem. It must be a PEM encoded file which
         * contains your certificate and private key. It can optionally contain the
         * certificate chain of issuers. The private key also may be contained
         * in a separate file specified by local_pk.
         */
        'local_cert' => env('LARAVEL_WEBSOCKETS_SSL_LOCAL_CERT', null),

        /*
         * Path to local private key file on filesystem in case of separate files for
         * certificate (local_cert) and private key.
         */
        'local_pk' => env('LARAVEL_WEBSOCKETS_SSL_LOCAL_PK', null),

        /*
         * Passphrase for your local_cert file.
         */
        'passphrase' => env('LARAVEL_WEBSOCKETS_SSL_PASSPHRASE', null),

        'verify_peer' => false,
    ]

bootstrap.js
window.Pusher = require('pusher-js');

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: '*****************',
    cluster: 'eu',
    wsHost: window.location.hostname,
    wsPort: 6001,
    wssPort: 6001,
    forceTLS: true,
    disableStats: false,
    enabledTransports: ['ws', 'wss'],
    auth:{
        headers:{
            Authorization: `Bearer ${token}`
        }
    }
});

env
LARAVEL_WEBSOCKETS_SSL_LOCAL_CERT=/etc/letsencrypt/live/*****/fullchain.pem
LARAVEL_WEBSOCKETS_SSL_LOCAL_PK=/etc/letsencrypt/live/******/privkey.pem

nginx conf
server {
  listen        443 ssl;
  listen        [::]:443 ssl;
  server_name   socket.*****;

  # Start the SSL configurations
  ssl                  on;
  ssl_certificate      /etc/letsencrypt/live/******/fullchain.pem;
  ssl_certificate_key  /etc/letsencrypt/live/******/privkey.pem;

  location / {
    proxy_pass             http://<IP_ADDRESS>:6001;
    proxy_read_timeout     60;
    proxy_connect_timeout  60;
    proxy_redirect         off;

    # Allow the use of websockets
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
  }
}

6001 port is opened.
I do have a websockets task with supervisord, when I check the status it always returns "STARTING", when I try to start the websockets server on my own, it's stuck on Starting the WebSocket server on port 6001...

enable debug mode and show some dev console network results of echo trying to connect

it says it can't connect. the command doesn't run the server at all, of course it can't connect. I see many people have this issue... will wait till the authors fix the package or provide better debugging options.

if you have debugoff there will be no more messages after  Starting the WebSocket server on port 6001... so thats not a criteria that it hangs. try to connect from localhost to the socketserver and see if it connects

There is good detailed guide you can follow.
https://alex.bouma.dev/posts/installing-laravel-websockets-on-forge/


Add go to theme check page link on plugin page

This seems like a good idea.

New PR.

@rinkuyadav999 You don't need to create a new PR. You can just commit in the same branch that you have.

Is it good to go?

@ernilambar seems ready to fly.


adding kube2iam experimental support

If you plan to use kube2iam in existing kubeaws cluster you face two things:

Default WorkerRole does not have the sts:assumeRole grant blocking kube2iam to assume the role for the container.
target roles needs to change the trust policy to allow kube-aws worker IAM Role to assume the role. Because normally cloudformation generates the role with the role name and a random ID at the end makes the IAM Role less predictable and therefore more complicated to work with if you want to automate this trust.

This pr introduces kube2iam experimental flag, when kube2iam flag is enabled it will add sts:assumeRole to the worker IAM role to allow kube2iam to work, additionally you can specified a named role to generate a worker IAM Role more human and automation friendly as explained here http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename
If you find the named role useful maybe could be merged in the general configuration not only for the worker

i think this also helps issue #253

Thanks for the PR with very informative description, @Fsero!
This is almost merged but could you add an example configuration to the test data for the case named WithExperimentalFeatures in test/integration/maincluster_test.go so that we can ensure that this feature won't break in the future?

@mumoshu thanks! added the tests in maincluster_test.go and nodepool_test.go and changed the case of every IAM mention. I hope this is enough, in other case let me know what can i do to get this merged :)

After this is merged we should also:

add some docs that show how to use kube2iam
remove all default controller/worker IAM permissions that are not strictly required (create them as roles and attach them to the kube pods that actually need them)

Great work!

@pieterlange if we are going to use it for other purposes then perhaps when it's not experimental any more we should consider renaming it from Kube2IamSupport to something like roleName under the worker config?
Maybe we could also consider whether to allow a list of roles that are allowed to be assumed from a k8s cluster or just always allow *.

Note to self: I'd rather like to move experimental.kube2IamSupportworkerNamedIAMRole to worker.managedIamRoleName so that we can let users generally use it to trust the role managed for worker nodes by kube-aws from a target role.

@mumoshu is there something else I can do to get this merged? :-)

@Fsero Sorry for the silence!
I'm still busy working on my own PR #315 but in the meantime would you confirm/apply what I've suggested in https://github.com/coreos/kube-aws/pull/297#issuecomment-278492922 on your side? (Btw, does the suggested name worker.managedIamRoleName over the former kube2IamSupportWorkerNamedIAMRole make sense to you too?)
Anyways, this PR is going to be merged before my own PR not to delegate the hard work of resolving huge conflicts 👍

sure @mumoshu i can do that :)

Thanks @Fsero!
Could you also rebase your branch? FYI/AFAICS ClusterAutoscalerSupport ClusterAutoscalerSupport yaml:"clusterAutoscalerSupport"` from an another PR is the only line conflicting with yours.

Codecov Report

Merging #297 into master will increase coverage by 0.09%.
The diff coverage is 60%.

@@            Coverage Diff             @@
##           master     #297      +/-   ##
==========================================
+ Coverage   55.21%   55.31%   +0.09%
==========================================
  Files           6        6
  Lines        1389     1392       +3
==========================================
+ Hits          767      770       +3
  Misses        506      506
  Partials      116      116

Impacted Files
Coverage Δ

cfnstack/provisioner.go
19.31% <ø> (ø)
:white_check_mark:

config/config.go
65.08% <100%> (+0.17%)
:white_check_mark:

Continue to review full report at Codecov.

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

@mumoshu i rewrited my PR with the proposed changes, i kept the experimental feature for kube2iam because you maybe want to have the managedIamRole without using kube2iam, in doesnt make sense we can always drop this feature flag and add this grant in the base IAM Role

LGTM 👍 Thanks for your contribution @Fsero!


Does it work with ViewController or only with TableViewController?

Yes! It works perfectly both in ViewController and TableViewController

@srbalan how to integrate with TableViewController? I tried to create simple app with tapbar and folding-cell, but not work...it means: the folding-cells hide tapbar and navigation bar


DatePicker: On clicking outside the Datepicker window should be closed.

Hi Team,
It will be nice if during selecting Date and time from the datepicker window when a user clicks outside, the window should be closed.
Thanks.

DatePicker does not handle any popover behavior (there is no "open"/"closed" state). You are expected to connect the DatePicker with your own popover (e.g. floating-ui) which will give you a way to handle outside clicks.
Alternatively, you can temporarily use our internal Popover. See this sandbox for an example of how to handle outside clicks (from https://github.com/iTwin/iTwinUI-react/discussions/674): codesandbox.io/s/itwinui-react-datepickerinput-vq3rmi
Note that Popover is marked internal and currently uses @tippyjs/react which we plan to migrate away from (#914), so the API will likely change in our next major release.


Website must inform the correct information about London distance

Background
Website clarity about London distance
Acceptance criteria

London doesn't have the same rule of 90 minutes distance, but is 60 min within greater London (working must be validated with Sally)

How about this updated copy?
I updated it on the website already but very happy to change it based on wording elsewhere:
Eligibility

Are you over 18?
Do you live within 60 minutes of Greater London? Or,
Do you live within 90 minutes of:

Sheffield, UK
Glasgow, UK
Manchester, UK
Birmingham, UK
Cape Town, ZA

Are you on a low income?
And, do you want to change your life with a career in tech?

@SallyMcGrath , are you happy with the above wording?

Edited directly

@alecmccrindle , see your edited text above. Let us know if you have any further questions.

Website updated based on edit.
Closing ticket.


Declare should support offsets

Per the Quil spec, one can optionally add an OFFSET {int} {ScalarType} to declare a memory region that coincides with an intermediate segment of a shared memory region.

Closed by #172