Class name "merging" issue

When using Semantic-UI, more specifically their grids, you can setup your grid to have different column widths based on device used(mobile, tablet, computer etc).
You do that by using class names along the lines of "two wide mobile", "six wide computer" and so on.
The issue presents itself when Jade "merges" the duplicate classnames.
For example:
#content.sixteen.wide.mobile.twelve.wide.computer.column which compiles to

 and that means that Semantic-UIs grid definitions aren't working since they rely on class name "grouping".
I've tried using the "class" attribute: #content(class='<grid column definition>') but that does the same.
I've also tried importing a non-Jade(Spacebars) template but the classnames get merged anyways.

Does this bug also happen in spacebars? https://github.com/meteor/meteor/issues/3628

I believe when I tested, it was working with Spacebars


Parameter substitution not working in ClusterTask.spec.steps.imagePullPolicy

Expected Behavior
This should work:
apiVersion: tekton.dev/v1beta1
kind: ClusterTask
metadata:
  name: tssc-setup
spec:
  params:
  - name: ciWorkersImageRegesitryURI
    type: string
    default: quay.io
  - name: ciWorkersImageRepositoryName
    type: string
    default: tssc
  - name: ciWorkersImageTag
    type: string
    default: latest
  - name: ciWorkersImagePullPolicy
    type: string
    default: IfNotPresent
  steps:
  - name: create-python-venv
    image: $(params.ciWorkersImageRegesitryURI)/$(params.ciWorkersImageRepositoryName)/tssc-base:$(params.ciWorkersImageTag)
    imagePullPolicy: $(params.ciWorkersImageRegesitryURI)
    script: |
      #!/usr/bin/env bash
      echo hello world

Actual Behavior
Get the following error:
status:
  completionTime: '2020-10-21T15:58:44Z'
  conditions:
    - lastTransitionTime: '2020-10-21T15:58:44Z'
      message: TaskRun tssc-tekton-pipeline-maven-8xnhn-tssc-setup-225w4 has failed
      reason: Failed
      status: 'False'
      type: Succeeded
  startTime: '2020-10-21T15:58:44Z'
  taskRuns:
    tssc-tekton-pipeline-maven-8xnhn-tssc-setup-225w4:
      pipelineTaskName: tssc-setup
      status:
        conditions:
          - lastTransitionTime: '2020-10-21T15:58:44Z'
            message: >-
              Missing or invalid Task ian-tekton-test2/tssc-setup: Pod
              "tssc-tekton-pipeline-maven-8xnhn-tssc-setup-225w4-pod-sn8w2" is
              invalid: spec.containers[0].imagePullPolicy: Unsupported value:
              "$(params.ciWorkersImagePullPolicy)": supported values: "Always",
              "IfNotPresent", "Never"
            reason: CouldntGetTask
            status: 'False'
            type: Succeeded
        podName: ''
        startTime: '2020-10-21T15:58:44Z'

It would apear from the error that for some reason variable substitution is not happenin gin the ClusterTask.spec.steps.imagePullPolicy value. I would have assumed that could do variable substitution in anything under ClusterTask.spec.steps.
Steps to Reproduce the Problem

Create a cluster task with a step defining imagePullPolicy with a avlue from a parameter
try to run the step

Additional Info

Kubernetes version:
Output of kubectl version:

Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.8",   GitCommit:"9f2892aab98fe339f3bd70e3c470144299398ace", GitTreeState:"clean", BuildDate:"2020-08-13T16:12:48Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.3+012b3ec", GitCommit:"012b3ec", GitTreeState:"clean", BuildDate:"2020-07-24T07:23:10Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"linux/amd64"}

Tekton Pipeline version:
Output of tkn version or kubectl get pods -n tekton-pipelines -l app=tekton-pipelines-controller -o=jsonpath='{.items[0].metadata.labels.version}'

Installed via OpenShift Pipelines Operator, can't find a tekton-pipelines-controller
OpenShift Pipelines Operator: 1.1.1
OpenShift-Pipelines: v0.14.3
OpenShift-Pipelines-Triggers: v0.6.1
OpenShift-Pipelines-ClusterTasks: v0.14

it would seem the problem has to do with kube trying to validate the resulting container spec before the variable substituion happens....

@itewk I think we do not support variable interpolation in imagePullPolicy yet :sweat_smile: This needs to be fixed indeed :angel:

@vdemeester is there a list somewhere of which paramters do support variable interpolation?

https://github.com/tektoncd/pipeline/blob/master/docs/variables.md#fields-that-accept-variable-substitutions should list all the places you can put variables at the moment.

@sbwsg sweet. I guess this should be changed to an RFE then?

/kind feature
/remove-kind bug

Hey @rinckm and all,
I want to explore this a bit before we add it since it seems to me like ImagePullPolicy is a very k8s specific thing and while we do add k8s specific stuff into our API I want to make sure we really need to before we do (https://github.com/tektoncd/community/blob/master/design-principles.md#conformance)

@itewk I think we do not support variable interpolation in imagePullPolicy yet 😅 This needs to be fixed indeed 👼

@vdemeester it sounds like you think we SHOULD replace this - do we replace other container spec fields?

I want to explore this a bit before we add it since it seems to me like ImagePullPolicy is a very k8s specific thing and while we do add k8s specific stuff into our API I want to make sure we really need to before we do (https://github.com/tektoncd/community/blob/master/design-principles.md#conformance)

I would say, yes and no (on imagePullPolicy being "k8s specific stuff"). The field itself is k8s specific but the "feature" is more than k8s specific. It is tied to any container runtime (aka what should the runtime do in case of the image is present in its cache or not, …) and could probably be part of the conformance / api spec.

@itewk I think we do not support variable interpolation in imagePullPolicy yet sweat_smile This needs to be fixed indeed angel

@vdemeester it sounds like you think we SHOULD replace this - do we replace other container spec fields?

The variable interpolation is selective and I am pretty sure we don't go through the imagePullPolicy field. It's more or less a one-liner to fix this though (see #3488)

@bobcatfish See container_replacements.go for what we support in variable interpolation.

Is it possible to understand the use case a bit more where you need to use this value inside your Tasks @rinckm? (Want to make sure there isn't some other feature we could provide instead that would solve your problem even better)

@bobcatfish my use case is being able to control at runtime when calling a pipeline whether to used the cached images or pull the latest. This comes in most handy when doing intigration testing of the workflow itself and testing with updated task container images.
This is likley a crazy ask, that i am guessing has already been discussed somewhere, but why isn't there variable substitution in every field within spec.steps? that would mean you arn't doing any codeing specific to k8s api and would mean when other fields are added arn't having to maitain and remember a complicated list of which fields do and do not accept variable substitution

I want to allow that a user of the Task can specify the image and the corresponding imagePullPolicy.
If the user specifies a released image he may want to use the imagePullPolicy 'IfNotPresent' to speed up things.
If the user specifies a image with tag 'latest' he may want to use the imagePullPolicy 'Always' to really get the latest version.

Thanks for explaining your use cases @itewk and @rinckm , that makes perfect sense to me! I also looked at your examples more closely and I had this backwards 🤦♀  - I thought we were adding a variable that allows you to grab the ImagePullPolicy that was already set (e.g. something like "echo $(steps.imagePullPolicy)") but now i understand you want to SET the ImagePullPolicy at runtime which makes way more sense XD. (I can also see why you were confused by me saying this is "k8s specific" @vdemeester 🙏  😆 )

@bobcatfish my use case is being able to control at runtime when calling a pipeline whether to used the cached images or pull the latest.

This is maybe different than what you're asking for but it also kinda sounds like you might want to be able to specify a step template at runtime 🤔  I was hoping that podTemplate would let you set the ImagePullPolicy at runtime but it doesn't since that's at the level of the pod and not the individual containers/steps

@rinckm thank you


transformers

can you public this in the transformes huggingfaces. It's easy to use, easy to deploy

It will be done very soon, please looking forward to it


Missing blog posts

The old BioJulia blog had at least three blog posts:

The comparison between Seq and BioJulia
An introduciton to Automa
What scientists should know about hardware to write fast code

Post 1 should be included on the new website because I like it.
Post 2 is just a worse version of the v1 Automa documentation - so let's just not upload that.
Post 3 is an outdated version of https://viralinstruction.com/posts/hardware/ - I'm fine with linking to that page to restore the post, but I don't think it's really about BioJulia as such.
Anyway, post 1 should be restored.

Just for visibility in case anyone comes across this later - the source isn't lost, I tagged a release of this repo before I shifted to Xranklin, and the post is here

Just for visibility in case anyone comes across this later - the source isn't lost, I tagged a release of this repo before I shifted to Xranklin, and the post is here

That's where I've been pulling them from!
I thought @jakobnissen was referring to the original markdown files that were used to create the html.

Is there any reason not to merge this?

Nope, might need to be iterated on/move the hardware post to md, but those can be done in follow-up, might as well get these back out there!

[ ] Use fancy list_post function on posts page
[ ] Add author pages
[ ] Remove duplicate images
[ ] Try moving hardware post to markdown


[BUG] Opensearch 2.17.0 Fails to start on Ubuntu 22.04.5 LTS (Jammy Jellyfish)

Describe the bug
I have a "fresh" install of Ubuntu 22.04.5 LTS (Jammy Jellyfish), openjdk version "11.0.24",  and installed Opensearch 2.17.0 (amd64) via APT. It installed with no errors but when I try to start it via "sudo systemctl start opensearch" it results in this error:
× opensearch.service - OpenSearch
Loaded: loaded (/lib/systemd/system/opensearch.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2024-10-21 17:30:43 UTC; 9min ago
Docs: https://opensearch.org/
Process: 628 ExecStart=/usr/share/opensearch/bin/systemd-entrypoint -p ${PID_DIR}/opensearch.pid --quiet (code=exited, status=1/FAILURE)
Main PID: 628 (code=exited, status=1/FAILURE)
CPU: 19.110s
Oct 21 17:30:43 graylog systemd-entrypoint[889]: Error: A fatal exception has occurred. Program will exit.
Oct 21 17:30:43 graylog systemd-entrypoint[889]:         at org.opensearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:125)
Oct 21 17:30:43 graylog systemd-entrypoint[889]:         at org.opensearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:87)
Oct 21 17:30:43 graylog systemd-entrypoint[889]:         at org.opensearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:70)
Oct 21 17:30:43 graylog systemd-entrypoint[889]:         at org.opensearch.tools.launchers.JvmOptionsParser.jvmOptions(JvmOptionsParser.java:150)
Oct 21 17:30:43 graylog systemd-entrypoint[889]:         at org.opensearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:108)
Oct 21 17:30:43 graylog systemd[1]: opensearch.service: Main process exited, code=exited, status=1/FAILURE
Oct 21 17:30:43 graylog systemd[1]: opensearch.service: Failed with result 'exit-code'.
Oct 21 17:30:43 graylog systemd[1]: Failed to start OpenSearch.
Oct 21 17:30:43 graylog systemd[1]: opensearch.service: Consumed 19.110s CPU time.
Related component
Build
To Reproduce

sudo systemctl status opensearch

Output matched error listed above

Expected behavior
Opensearch should start and run w/o any errors.
Additional Details
Plugins
none
Screenshots

Host/Environment (please complete the following information):

OS: Ubuntu Jammy Jellyfish
Version 22.04.5 LTS

Additional context
none

I dont have an environment for 22.04.5 for now.
Tho I also want to mention you dont need to install JDK11.
As the deb pkg is already including a copy of jdk.

No issues:
$ cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.5 LTS"
PRETTY_NAME="Ubuntu 22.04.5 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.5 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

$ sudo env OPENSEARCH_INITIAL_ADMIN_PASSWORD=myStrongPassword123! apt-get install opensearch
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  opensearch
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 906 MB of archives.
After this operation, 1179 MB of additional disk space will be used.
Get:1 https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable/main amd64 opensearch amd64 2.17.1 [906 MB]
Fetched 906 MB in 24s (37.3 MB/s)
Selecting previously unselected package opensearch.
(Reading database ... 96382 files and directories currently installed.)
Preparing to unpack .../opensearch_2.17.1_amd64.deb ...
Running OpenSearch Pre-Installation Script
Unpacking opensearch (2.17.1) ...
Setting up opensearch (2.17.1) ...
Running OpenSearch Post-Installation Script
### NOT starting on installation, please execute the following statements to configure opensearch service to start automatically using systemd
 sudo systemctl daemon-reload
 sudo systemctl enable opensearch.service
### You can start opensearch service by executing
 sudo systemctl start opensearch.service
### Create opensearch demo certificates in /etc/opensearch/
 See demo certs creation log in /var/log/opensearch/install_demo_configuration.log
### Breaking change in packaging since 2.13.0
 In 2.13.0 and later releases of OpenSearch, we have changed the permissions associated with access to installed files
 If you are configuring tools that require read access to the OpenSearch configuration files, we recommend you add the user that runs these tools to the 'opensearch' group
 For more information, see https://github.com/opensearch-project/opensearch-build/pull/4043

$ sudo systemctl start opensearch
$ curl https://localhost:9200 -ku admin:myStrongPassword123!
{
  "name" : "ip-172-31-43-194",
  "cluster_name" : "opensearch",
  "cluster_uuid" : "DT1wTm-kQi-sgc00WU2Cjg",
  "version" : {
    "distribution" : "opensearch",
    "number" : "2.17.1",
    "build_type" : "deb",
    "build_hash" : "1893d20797e30110e5877170e44d42275ce5951e",
    "build_date" : "2024-09-26T21:59:47.005429436Z",
    "build_snapshot" : false,
    "lucene_version" : "9.11.1",
    "minimum_wire_compatibility_version" : "7.10.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "The OpenSearch Project: https://opensearch.org/"
}

Test 2.17.0, cleanup /etc/opensearch beforehand:
$ sudo env OPENSEARCH_INITIAL_ADMIN_PASSWORD=myStrongPassword123! apt-get install opensearch=2.17.0
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  opensearch
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 906 MB of archives.
After this operation, 1179 MB of additional disk space will be used.
Get:1 https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable/main amd64 opensearch amd64 2.17.0 [906 MB]
Fetched 906 MB in 17s (52.0 MB/s)
Selecting previously unselected package opensearch.
(Reading database ... 96382 files and directories currently installed.)
Preparing to unpack .../opensearch_2.17.0_amd64.deb ...
Running OpenSearch Pre-Installation Script
Unpacking opensearch (2.17.0) ...
Setting up opensearch (2.17.0) ...
Running OpenSearch Post-Installation Script
### NOT starting on installation, please execute the following statements to configure opensearch service to start automatically using systemd
 sudo systemctl daemon-reload
 sudo systemctl enable opensearch.service
### You can start opensearch service by executing
 sudo systemctl start opensearch.service
### Create opensearch demo certificates in /etc/opensearch/
 See demo certs creation log in /var/log/opensearch/install_demo_configuration.log
### Breaking change in packaging since 2.13.0
 In 2.13.0 and later releases of OpenSearch, we have changed the permissions associated with access to installed files
 If you are configuring tools that require read access to the OpenSearch configuration files, we recommend you add the user that runs these tools to the 'opensearch' group
 For more information, see https://github.com/opensearch-project/opensearch-build/pull/4043

$ sudo systemctl start opensearch
$ curl https://localhost:9200 -ku admin:myStrongPassword123!
{
  "name" : "ip-172-31-43-194",
  "cluster_name" : "opensearch",
  "cluster_uuid" : "iYQGjo7PQ9mMSmYa3uujmg",
  "version" : {
    "distribution" : "opensearch",
    "number" : "2.17.0",
    "build_type" : "deb",
    "build_hash" : "8586481dc99b1740ca3c7c966aee15ad0fc7b412",
    "build_date" : "2024-09-13T01:04:13.864000718Z",
    "build_snapshot" : false,
    "lucene_version" : "9.11.1",
    "minimum_wire_compatibility_version" : "7.10.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "The OpenSearch Project: https://opensearch.org/"
}

No issues with the default settings, able to install both 2.17.0 and 2.17.1 on Ubuntu 22.04.5 and start cluster without issues.
Thanks.

I dont have an environment for 22.04.5 for now. Tho I also want to mention you dont need to install JDK11. As the deb pkg is already including a copy of jdk.

I believe that is the cause due to the demo script is using JAVA_HOME as higher order than the bundled JDK.
https://github.com/opensearch-project/security/blob/2.x/tools/install_demo_configuration.sh#L34-L57
User has 11 as JAVA_HOME and bundled JDK is 21.
I vaguely remember there is mismatch before where user has to use JDK21 for the demo scripts to pass.

@dbwiddis you are correct about the error coming from  /var/log/opensearch/install_demo_configuration.log. I cleaned up a bunch of artifacts from previous install attempts and ran the install again with: sudo -E env OPENSEARCH_INITIAL_ADMIN_PASSWORD=StrongPassword apt install opensearch. This time, I got a different error: Running OpenSearch Post-Installation Script
ERROR: Something went wrong during demo configuration installation. Please see the logs in /var/log/opensearch/install_demo_configuration.log
dpkg: error processing package opensearch (--configure):
installed opensearch package post-installation script subprocess returned error exit status 1
Processing triggers for libc-bin (2.35-0ubuntu3.8) ...
Errors were encountered while processing:
opensearch
I think I am going to start from scratch and rebuild the virtual host.

I appreciate everyone's input! I tried again after a fresh install of Ububtu Server, and this time it installed w/o any issues... go figure.


WIP: Start implementing UNFCCC carbon intensity provider #8

This PR is for #8 where I'm blundering through picking up bits of Golang to implement a new provider that would provide a set of default annual carbon intensity values for the last year for common regions and countries.
This would mean you can use the grid intensity library as a CLI or in the grid-intensity-exporter, without immediately needing to speak to a third party API.

I've emailed again. There was a meeting on July 1st to make a decision about opening this data up, so when I hear back we'll know about proceeding.
@rossf7 this has been open for a couple of releases now. Should I close this? We already have issue #8 which explains the UNFCCC data, and it might be simpler to make a new PR from the updated code.

@mrchrisadams Thanks for checking with them. I think it makes sense to close this as it would need updating to use the new structure.
Once the new structure is in place I think we should document whichever provider we add next. This will make adding further providers easier.


TLS handshake timeout for API call to OKE service

I'm running into a strange issue, which I'm discussing with @hyder.  It appears to be an issue with the service or tenancy, not the TF code per se.  I'm posting here just in case any of the other contributors/users have seen this issue -- either when using this repo or any other.
I cloned this repo, set the variables, and tried applying the configuration....
The bastion & network resources were created alright.
But the k8s cluster resources weren't created. Here's the error:
Error: Post https://containerengine.us-phoenix-1.oraclecloud.com/20180222/clusters: net/http: TLS handshake timeout
  on modules/oke/cluster.tf line 4, in resource "oci_containerengine_cluster" "k8s_cluster":
   4: resource "oci_containerengine_cluster" "k8s_cluster" {

Ali and I suspected a proxy issue initially . But then why would the API request to the OKE service alone time out when the calls to the other services work fine?  I get the same error when I change the region to Ashburn.

We'll keep this open for a while in case others run into it.

I don't see this issue anymore and am able to apply the config. I'm not sure what caused the issue. But if no one else has experienced this error, then we can safely close the issue.


Time is delayed sometimes when power of the device is off

i am using rtc DS3231 module  and your library with esp32- WROOM in my project .... Sometimes, when the power gets cutoff,  the time gets delayed from few minutes to hours... Now the main issue is when i to test  myself and turn off the device , the time is not changed...Means this behaviour is random, sometimes it does delay sometimes not..... I changed the batteries of rtc module still the issue is there....Please give some solution to this ... THank you in advance

Is your problem reproducible with one of the examples?

I have been using your library for Ardiuno uno and mega microcontrollers... It works fine .... In esp32 only change i do is instead of using vcc as 3.3v esp32 pin i used direct 5 volt from the power supply... Do you think it can make this unusual behaviour...If so , can i directly use 3.3 volt  esp32 pin to power rtc?

can i directly use 3.3 volt esp32 pin to power rtc?

It depends on the used hardware, I2C SDA/SCL pull-ups and if a voltage regulator exists. There are many fake/cloned chips around which can cause random problems on lower voltages.
Suggestions:

Test on a AVR like UNO or Mega at 3.3V or test with a different DS3231.
Always check the return boolean of getTime() and read(), when it returns false`, the time is invalid. If the time is behind, it is a hardware issue and not related to this library as these functions directly reads the DS3231 registers and are not touching the wall clock.

Success.


Make codebase more modular

It's probably not a good idea to load constants every time a class gets initialized. Instead, I've added const.py that holds all constants and manager.py just loads them once.

Add __init__.py, so now one can just do this to create a BsManager object:

>>> from BsManager import BsManager
>>> man = BsManager(...)

Have __version__ in __init__.py so version only needs to be changed there once an update happens (instead of multiple places in setup.py). This also allows users to know what version they are on by simply:

>>> import BsManager
>>> BsManager.__version__
'0.1'

Thanks!


Don't use the old NYU GLUE dataset URLs

NYU is switching dataset hosting from Google to FB. Initial changes to datasets are in https://github.com/jeswan/nlp/commit/b7d4a071d432592ded971e30ef73330529de25ce. What tests do you suggest I run before opening a PR?
See: https://github.com/jiant-dev/jiant/issues/161 and https://github.com/nyu-mll/jiant/pull/1112

Feel free to open the PR ;)
Thanks for updating the dataset_info.json file !


30x30x30 grid box

IS there a reason you choose 30x30x30 for the limitation of the grid box? I have some protein that require 126x126x126.  What happen to the docking results if I change the xyz for these proteins to 30 to be able to use Vina_GPU?

The 30x30x30 boundry is due to some memory limitations. Typically, 30x30x30 is enough if a docking pocket is determined. In your case, you could split the 126x126x126 box into some small 30x30x30 boxes, each of which has different docking center (center_x/y/z).


How is RegexMatchAndSubstitute used within a RouteMatch?

Hi folks
Hopefully this is an easy one.
Say I have a RouteMatch as follows
match:
  safe_regex:
    pattern: '^/hello'
    substitution: '/'

Envoy reports the following

INVALID_ARGUMENT:(route_config.virtual_hosts[0].routes[0].match.safe_regex) substitution: Cannot find field.

What is the actual syntax for this? I can't find any examples

Found some examples in the tests:
  - match:
      prefix: "/newforreg1_endpoint"
    route:
      regex_rewrite:
        pattern:
          google_re2: {}
          regex: "^/new(.*?)_endpoint(.*)$"
        substitution: /\1_rewritten_endpoint\2
      cluster: www2
  - match:
      prefix: "/newforreg2_endpoint"
    route:
      regex_rewrite:
        pattern:
          google_re2: {}
          regex: "e"
        substitution: "X"
      cluster: www2


WFLY-9631 "Failed to reinstate timer" warning is shown when creating …

…large number of EJB timers
JIRA: https://issues.jboss.org/browse/WFLY-9631
During timer data store refresh, avoid removing those timers that were just being created in memory and haven't been persisted to db.

@tadamski please review.

@tadamski this fix resolved both symptoms: duplicate resource warning, and missing timers.  So after this fix, there is no more duplicate timer resource warnings, and all scheduled timers expire correctly.

The fix seems ok to me but apparently I misread a comment in Jira. Approving.


[WIP-DO NOT MERGE] Revert "[ConstraintSystem] Prevent shrink from solving "too complex…

…" sub-expressions"
This reverts commit fea7bcf2323121c112e9ff70db6bb65673d0d85b.
This is just a test to see if everything builds and passes with this commit reverted.

@swift-ci Please smoke test

@swift-ci Please test source compatibility

Smoke tests & compatibility tests all passed but this was just a test, so closing.


🔍Fuzzy Search Current File

[ ] refactor
[ ] performance

match highlight ...

rename current search

rename plug


Some devices won't run tests: "java.lang.VerifyError: Rejecting class X because it failed compile-time verification"

This is a strange one. I am running the same test package including dexopener on different devices. For some the tests run normally and for others the tests won't start because of this error. Here is the entire output for the test run on one of the failing devices:
06-01 14:46:57.454 I/art: Late-enabling -Xcheck:jni
06-01 14:46:57.454 I/art: VMHOOK: rlim_cur : 0 pid:4547
06-01 14:46:57.489 I/art: Debugger is no longer active
06-01 14:46:57.589 I/MultiDex: VM with version 2.1.0 has multidex support
06-01 14:46:57.589 I/MultiDex: install
06-01 14:46:57.590 I/MultiDex: VM has multidex support, MultiDex support library is disabled.
06-01 14:46:58.992 I/art: Background sticky concurrent mark sweep GC freed 177210(11MB) AllocSpace objects, 19(708KB) LOS objects, 19% free, 41MB/51MB, paused 5.139ms total 72.868ms
06-01 14:47:00.495 I/art: Background sticky concurrent mark sweep GC freed 216115(13MB) AllocSpace objects, 19(708KB) LOS objects, 22% free, 42MB/54MB, paused 6.577ms total 76.864ms
06-01 14:47:01.277 I/art: override thread count:-j4
06-01 14:47:02.687 I/art: override thread count:-j4
06-01 14:47:02.988 W/art: Verification of   .network.ClientCallback com.redacted.activity.ActivityTestBase.getClientCallback() took 1.321s
06-01 14:47:04.332 I/art: override thread count:-j4
06-01 14:47:04.653 W/art: Verification of void com.redacted.activity.ActivityTestBase.setUp() took 1.661s
06-01 14:47:04.654 E/AndroidRuntime: FATAL EXCEPTION: main
                                     Process: com.redacted.test, PID: 4547
                                     java.lang.VerifyError: Rejecting class com.redacted.activity.RedactedActivityTest because it failed compile-time verification (declaration of 'com.redacted.activity.RedactedActivityTest' appears in /data/data/com.redacted.test/code_cache/dexopener/classes-1967783184.zip)
                                         at java.lang.reflect.Constructor.newInstance(Native Method)
                                         at junit.framework.TestSuite.createTest(TestSuite.java:61)
                                         at junit.framework.TestSuite.addTestMethod(TestSuite.java:294)
                                         at junit.framework.TestSuite.addTestsFromTestCase(TestSuite.java:150)
                                         at junit.framework.TestSuite.<init>(TestSuite.java:129)
                                         at junit.runner.BaseTestRunner.getTest(BaseTestRunner.java:118)
                                         at android.test.AndroidTestRunner.getTest(AndroidTestRunner.java:149)
                                         at android.test.AndroidTestRunner.setTestClassName(AndroidTestRunner.java:57)
                                         at android.test.suitebuilder.TestSuiteBuilder.addTestClassByName(TestSuiteBuilder.java:78)
                                         at android.test.InstrumentationTestRunner.parseTestClass(InstrumentationTestRunner.java:444)
                                         at android.test.InstrumentationTestRunner.parseTestClasses(InstrumentationTestRunner.java:425)
                                         at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:371)
                                         at com.android.test.runner.MultiDexTestRunner.onCreate(MultiDexTestRunner.java:31)
                                         at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4991)
                                         at android.app.ActivityThread.access$1600(ActivityThread.java:150)
                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1455)
                                         at android.os.Handler.dispatchMessage(Handler.java:102)
                                         at android.os.Looper.loop(Looper.java:168)
                                         at android.app.ActivityThread.main(ActivityThread.java:5781)
                                         at java.lang.reflect.Method.invoke(Native Method)
                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)

We have successes on a Samsung Galaxy S6 Marshmallow, a Google Nexus 6 Lollipop, and a Google Pixel C Nougat.
We have failures on a Samsung Galaxy S7 Marshmallow and an HTC One A9 Marshmallow.
So there doesn't seem to be a pattern of why one device should pass and the other fail.

Are you testing an Android library?
Or an app?
If you are testing an Android app, it seems strange that the test class is in DexOpener's dex cache.
Could you add the following three lines to your AndroidJUnitRunner#newApplication and show me the logs?
Log.d("YourApp", "context.getApplicationInfo().sourceDir=" + context.getApplicationInfo().sourceDir);
Log.d("YourApp", "getContext().getApplicationInfo().sourceDir=" + getContext().getApplicationInfo().sourceDir);
Log.d("YourApp", "getTargetContext().getApplicationInfo().sourceDir=" + getTargetContext().getApplicationInfo().sourceDir);

The module under test is a library (as in com.android.library gradle plugin) but it's just a module attached to an app project. I was able to reproduce in two different modules with the same result.
Here's the output from your requested debugging:
06-02 11:11:21.034 D/TestRunner: context.getApplicationInfo().sourceDir=/data/app/com.redacted.test-2/base.apk
06-02 11:11:21.034 D/TestRunner: getContext().getApplicationInfo().sourceDir=/data/app/com.redacted.test-2/base.apk
06-02 11:11:21.034 D/TestRunner: getTargetContext().getApplicationInfo().sourceDir=/data/app/com.redacted.test-2/base.apk

Thank you for your reply.
There is one more request.
Could I have all the logs?
If it is impossible, would you please show me the logs tagged as dex2oat?

I created a gist:
https://gist.github.com/gefilte/7f4d0d6a487c085896dc86694e0908d1
It's a lot of noise but should include what you are looking for. It is unfiltered logcat starting at the point I install the app package through the completed run of the test. All the relevant package references will contain com.redacted, and I did find/replace so that the relevant modules show up separately (packageA, packageB, appPackage, authlib, and anotherpackage. Great names, eh?) The test is in packageA, but depends on some things in packageB. The overall packageA depends on packageB, authlib, and anotherpackage.
Anyway, hopefully you find what you're looking for.

Thank you.
I checked your log file and it seems to be a problem of ASMDEX which is a bytecode manipulation library used by DexOpener.
06-02 16:26:55.675 I/dex2oat: Verification error in void com.redacted.packageA.util.MockPackageBManagerModule.<init>()
06-02 16:26:55.675 I/dex2oat: void com.redacted.packageA.util.MockPackageBManagerModule.<init>(): [0xFFFFFFFF] invalid reg index 1+25 in range invoke (> 25)
06-02 16:26:55.675 W/dex2oat: Verification failed on class com.redacted.packageA.util.MockPackageBManagerModule in /data/data/com.redacted.packageA.test/code_cache/dexopener/classes114178148.zip because: Verifier rejected class com.redacted.packageA.util.MockPackageBManagerModule due to bad method void com.redacted.packageA.util.MockPackageBManagerModule.<init>()

The dex2oat which is a DEX code compilation tool failed bytecode verification.
According to the second line, register size overflow has occurred.
ASMDEX is an old library, so we plan to change it to other newer libraries, but it will take time.
If you cannot wait, we recommend kotlin-allopen plugin instead.

We have released a new version 0.9.9 using Smali instead of ASMDEX.
This problem may be solved, so please try it.

This seems to have solved the problem. Thanks!


Closes #219 documentation remove readable code for adam section from programming strategy

Thank you for your Pull Request! We have developed this task checklist from the Development Process Guide to help with the final steps of the process. Completing the below tasks helps to ensure our reviewers can maximize their time on your code as well as making sure the admiral codebase remains robust and consistent.
Please check off each taskbox as an acknowledgment that you completed the task or check off that it is not relevant to your Pull Request. This checklist is part of the Github Action workflows and the Pull Request will not be merged into the devel branch until you have checked off each task.

[X] Place Closes #<insert_issue_number> into the beginning of your Pull Request Title (Use Edit button in top-right if you need to update)
[X] Code is formatted according to the tidyverse style guide. Run styler::style_file() to style R and Rmd files
[X] Updated relevant unit tests or have written new unit tests, which should consider realistic data scenarios and edge cases, e.g. empty datasets, errors, boundary cases etc. - See Unit Test Guide
[X] If you removed/replaced any function and/or function parameters, did you fully follow the deprecation guidance?
[X] Update to all relevant roxygen headers and examples, including keywords and families. Refer to the categorization of functions to tag appropriate keyword/family.
[X] Run devtools::document() so all .Rd files in the man folder and the NAMESPACE file in the project root are updated appropriately
[X] Address any updates needed for vignettes and/or templates
[X] Update NEWS.md if the changes pertain to a user-facing function (i.e. it has an @export tag) or documentation aimed at users (rather than developers)
[X] Build admiral site pkgdown::build_site() and check that all affected examples are displayed correctly and that all new functions occur on the "Reference" page.
[X] Address or fix all lintr warnings and errors - lintr::lint_package()
[X] Run R CMD check locally and address all errors and warnings - devtools::check()
[X] Link the issue in the Development Section on the right hand side.
[X] Address all merge conflicts and resolve appropriately
[X] Pat yourself on the back for a job well done! Much love to your accomplishment!

Is this ready to be reviewed?

Is this ready to be reviewed?

Yes


docs: fix typo in video docs

minor: updated error in docs
What

This PR fixes a typo in the documentation.

Changes

Replace one erroneous stopRecording reference with the correct startRecording reference

Tested on

Markdown Preview

Related issues

ah nice catch, thanks!


Replace proprietary solution with Mermaid

Is your feature request related to a problem?
As far as I understand Apollon uses a proprietary standard to store the diagrams. This makes the development inefficient & incompatible with essentially everything else.
Describe the solution you'd like
Make Apollon reuse Mermaid and allow users to reuse the models for various different projects.
Describe alternatives you've considered
No response
Additional context
No response

Apollon is intended as a graphical modeling editor, not as a text-based one. It explicitly uses coordinates and allows users to drag elements to the desired position. As far as I can see from the Mermaid definition (which is rather compatible to PlantUML), they follow a different, more textual description. I don't think both philosophies are compatible with each other.


Can't join channel after connecting

Forgive me if I'm doing this wrong, but I can't figure out how to join a channel. I connected to freenode, used msg nickserv identify ..., got a desktop notification that I'm authenticated, but then when I type join #javascript and hit enter, there's no response. It doesn't even remove the text from the box like I'd expect from hitting enter. I'm on osx el capitan.

I recently encountered this issue. Was there a resolution?


the different types of classes should be explained in the wiki

Description of the issue
There should be an explanation what named, defined and anonymous classes are.
Ideas of solution
I'll write a wiki article
Workflow checklist

[x] I am aware of the workflow for this repository

https://github.com/OpenEnergyPlatform/ontology/wiki/Class-types


What are the first steps for an user after installation?

What steps should the user go through after installing this application?
One of the steps is definetly to type in his name since the name is displayed in the overview as Hey [NAME]!
Suggest and discuss further steps here.

I think first step can include:Age, Weight and Height. We use to calculate the size of the begin plant (height, width, number of leaf,...), User can use it to track the grow of the plant.

@flyznex I don't know about that since you'll be able to grow multiple plants and not only one


File i/O support for use on windows

added --infile and --outfile options for use on Wine/Windows as pipes are problematic

@hobbes1069 this is really odd.  On Fedora 30 windows build this works:
  $ cd ~/freedv-gui/LPCNet/build_win/src
  $ WINEPATH=$HOME/freedv-gui/codec2/build_win/src';'$HOME/freedv-gui/build_win/_CPack_Packages/win64/NSIS/FreeDV-1.4.0-devel-win64/bin/ wine lpcnet_enc.exe --infile all.wav --outfile all.bit
  $ WINEPATH=$HOME/freedv-gui/codec2/build_win/src';'$HOME/freedv-gui/build_win/_CPack_Packages/win64/NSIS/FreeDV-1.4.0-devel-win64/bin/ wine lpcnet_dec.exe --infile all.bin --outfile all_out.raw
  $ cat all_out.raw | aplay -f S16_LE -r 16000

But this unit test returns all.f32 as zero length (works fine on Linux):
INEPATH=$HOME/freedv-gui/codec2/build_win/src';'$HOME/freedv-gui/build_win/_CPack_Packages/win64/NSIS/FreeDV-1.4.0-devel-win64/bin/ wine dump_data.exe -c --test all.wav all.f32
[david@fedorabox src]$ ls -l all.f32
-rw-rw-r--. 1 david david 0 May  9 07:04 all.f32

For both example I copied LPCNet/wav/all.wav into the build_win/src directory for convenience.
Can you pls try on your machine?  In freedv-gui/brad-2020 there is a build_windows.sh script I use to automate the initial build.

A bit tied up at the moment but will when I can.

OK I've managed to track down the issue with those utilities and committed a fix.  Problem with Windows now located to test_lpcnet ... which is where all the NN magic is.  It can be tested with tdump/test_lpcnet, outside of quantisation code.
I'll progress debugging.


Support re running historical version workflow

Purpose of the pull request
close https://github.com/apache/dolphinscheduler/issues/11468
Brief change log
Support re running historical version workflow
Verify this pull request
Has been manually tested.

Codecov Report

Merging #11489 (db69f1c) into dev (13d400c) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Current head db69f1c differs from pull request most recent head 434e36f. Consider uploading reports for the commit 434e36f to get more accurate results

@@             Coverage Diff              @@
##                dev   #11489      +/-   ##
============================================
- Coverage     39.36%   39.36%   -0.01%
+ Complexity     4632     4629       -3
============================================
  Files           987      987
  Lines         37566    37549      -17
  Branches       4183     4176       -7
============================================
- Hits          14788    14780       -8
+ Misses        21227    21219       -8
+ Partials       1551     1550       -1

Impacted Files
Coverage Δ

...cheduler/api/service/impl/ExecutorServiceImpl.java
38.08% <100.00%> (+0.13%)
:arrow_up:

...erver/master/processor/queue/TaskEventService.java
69.64% <0.00%> (-10.72%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...eduler/api/service/impl/DataSourceServiceImpl.java
27.90% <0.00%> (ø)

...cheduler/server/master/utils/DependentExecute.java
0.00% <0.00%> (ø)

.../dolphinscheduler/plugin/task/datax/DataxTask.java
0.00% <0.00%> (ø)

...phinscheduler/plugin/task/chunjun/ChunJunTask.java
0.00% <0.00%> (ø)

...cheduler/plugin/task/api/ShellCommandExecutor.java
0.00% <0.00%> (ø)

...nscheduler/service/process/ProcessServiceImpl.java
31.89% <0.00%> (+0.02%)
:arrow_up:

...server/master/runner/task/SwitchTaskProcessor.java
2.54% <0.00%> (+0.02%)
:arrow_up:

... and 5 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Consolidate enumerative/computational proofs and results of experiments

Have generative models that generate a collection of terms/types more efficiently than an initial distribution of these.
Such distributions can be generated like PolyMath 14 by enumeration or as conjectures by experimentation.

We have a clear entropy gain by generating statements/proofs from families.
Indeed families are even used in experimentation, not just post facto.
In the PolyMath case a family was used, and a larger one was seen post facto.

Using generative equations captures this naturally, and we have DerviedEquations to see how statements and proofs can be generated. Hence not useful as a separate issue.


BUGFIX: <IP_ADDRESS> - fix and update allowed email

Add more unittest
Fix allowed email version type
Fix AES encryption bug

Coverage increased (+1.06%) to 39.183% when pulling 41444987e151afa7885c1117534bff8103097fe8 on <IP_ADDRESS>.FixAndUpdateAllowedEmail into 58ba46b9028e1073a6748ef78bcb0af8e42650eb on dev.

Coverage increased (+1.06%) to 39.183% when pulling bf2a60f08245eaa3695518d86b001276f748dd59 on <IP_ADDRESS>.FixAndUpdateAllowedEmail into 58ba46b9028e1073a6748ef78bcb0af8e42650eb on dev.


plumb through notify request handler

just forward to the first KBFS client we find

r? @strib
cc: @chrisnojima

Tons of C/I errors but I don't think they're related

@strib why didn't these 2 endpoints get the same plumbing as the other 3? Does it need different behavior, or it just wasn't gotten to?

Which two, the TODOs I mentioned inkbfs.go?  Yeah they just weren't gotten to, I only did enough to make it compile when I changed the protocol.

Do you think it should be the same kbfsrequest notify channel, or do you think it should be a different channel?

Was assuming it would be easiest to make it the same, but no strong opinion.


fix(kube): calculate patches against cluster state

Ref: #4146

Okay, I was able to reproduce the original bug by using this package: foo-0.1.0.tar.gz
><> helm plugin install https://github.com/adamreese/helm-last
><> helm fetch --untar https://github.com/kubernetes/helm/files/2103643/foo-0.1.0.tar.gz
><> helm install ./foo
><> vim foo/templates/service.yaml # change the service name from "foo" to "foo-bar"
><> kubectl create -f foo/templates/service.yaml
><> helm upgrade $(helm last) ./foo
Error: UPGRADE FAILED: no Service with the name "foo-bar" found

Basically how this bug boils down in master:

Tiller looks up based on the previous release and the target release's state to perform the diff
if an upgrade fails, cluster resources such as foo-bar may be created, but are not cleaned up
on subsequent upgrades, because we're diffing against the previous successful release and the release we are trying to uprgade to, the foo-bar service is "lost", causing the bug to pop up.

For what it's worth, I also tested scenarios like https://github.com/kubernetes/helm/issues/1193#issuecomment-391571016 and didn't find any issues with that scenario on master (cc @krishicks):
><> helm plugin install https://github.com/adamreese/helm-last
><> helm fetch --untar https://github.com/kubernetes/helm/files/2103643/foo-0.1.0.tar.gz
><> helm install ./foo
><> vim foo/templates/service.yaml # change the service name from "foo" to "foo-bar"
><> helm upgrade $(helm last) ./foo

No errors occurred in that scenario: service foo was removed, and service foo-bar was created. No odd side effects or bugs here.
Now, with the actual bug, #4146 attempts to fix this by diffing against the live state of the cluster, so it finds foo-bar service and performs a diff against that resource. Unfortunately, we found that when PR #4146 fetched the object from the api, it would calculate a patch against that same object. That is NOT the desired behaviour.
To demonstrate that, with #4146:
><> helm delete --purge $(helm last)
><> rm -rf foo
><> helm fetch --untar https://github.com/kubernetes/helm/files/2103643/foo-0.1.0.tar.gz
><> helm install ./foo
><> vim foo/templates/service.yaml # change the service name from "foo" to "foo-bar"
><> kubectl create -f foo/templates/service.yaml
><> kubectl edit svc foo-bar # change the port number to port 8080
><> helm upgrade $(helm last) ./foo
><> k get svc foo-bar -o yaml | grep port
  ports:
    port: 8080

As you can see, the cluster's current state is unchanged compared to the state that we wanted to apply. This is NOT the behaviour we want.
 This PR also performs a diff of the live state against the target state (fixing up the limitations in #4146), but because we've changed the behaviour to do a diff against live state, a whole new swath of bugs may come up. For example, here's what I found using the last example:
><> helm delete --purge $(helm last)
><> rm -rf foo
><> helm fetch --untar https://github.com/kubernetes/helm/files/2103643/foo-0.1.0.tar.gz
><> helm install ./foo
><> vim foo/templates/service.yaml # change the service name from "foo" to "foo-bar"
><> kubectl create -f foo/templates/service.yaml
><> kubectl edit svc foo-bar # change the port number to port 8080
><> helm upgrade $(helm last) ./foo/
Error: UPGRADE FAILED: Service "foo-bar" is invalid: [metadata.resourceVersion: Invalid value: "": must be specified for an update, spec.clusterIP: Invalid value: "": field is immutable]

After going through these test scenarios, I think perhaps making the error a little more informative might be our best option. What do you think, @adamreese?

The spec.clusterIP being immutable also occurs with kubectl apply, so don't think that's something that Helm should handle. Why not just make diffing against live cluster state a flag on helm upgrade? That way users can choose the behavior they want for their use case.

Closing this PR because it was only for a discussion point.

@bacongobbler thanks for taking the time to prototype several different approaches to resolving all of the various problems related to helm upgrade being unsafe or non-functional.  I do appreciate it :)
I agree with @steven-sheehy's POV for immutable fields.  If kubectl apply can't modify an immutable field because Kubernetes doesn't permit modification, that is a scenario where Helm can't be made to do something that underlying APIs won't do.  That is just a fundamental limitation of the technology we either have to live with, or file defects with the Kubernetes developers.
The "immutable field" limitation isn't the limitation that I think most people want fixed; the limitation that I think most people want fixed is "If a chart is extended (via adding a configmap as an example) - the upgrade will fail in the new rev of the chart".  Ignore for a moment the idea of addressing live content in the Kubernetes cluster (which is where I think the 3 way merge comes into action).
I don't understand why adding a configmap to a Helm chart would crater upgrade in a two way merge.
How are versions supposed to be upgraded if it is not viable to add resources to a Helm chart?
Cheers
-steve


Use try with resources when creating AdminClient

Use try with resources when creating AdminClient to release all associated resources.
Fixes gh-660

@iguissouma Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@iguissouma Thank you for signing the Contributor License Agreement!

Merged as 4ab6432f237ae8c9cbe0133bb80b81a60485150a; cherry-picked to 2.2.x as 683e3f96ba5d35c5aed0a29e9cb7a8099acef08b.


Time sync metadata

Implemented the changes as proposed here: https://github.com/UAVCAN/dsdl/pull/50#issuecomment-437839425
This PR supersedes https://github.com/UAVCAN/dsdl/pull/50; I have kept Kjetil's commits as well to ensure that the authoring information is reflected in the log.

@kjetilkjeka I just added the overflowing timestamp type as discussed. I decided to call it SynchronizedAmbiguousTimestamp because this name seems to fit the purpose. I also wanted to keep it long and annoying on purpose.

Since no input was provided since the last change 6 days ago, I am going to merge this tomorrow.


fix: verify ownerTypeHash in isBurnTx and parseMintTx

Codecov Report

Merging #122 (7c796d9) into main (1e81a9a) will decrease coverage by 3.16%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #122      +/-   ##
==========================================
- Coverage   41.08%   37.92%   -3.17%
==========================================
  Files          23       17       -6
  Lines        1969     1743     -226
  Branches       48        0      -48
==========================================
- Hits          809      661     -148
+ Misses       1160     1082      -78

Impacted Files
Coverage Δ

...in-modules/eth-contracts/contracts/ForceBridge.sol

...th-contracts/contracts/libraries/MultisigUtils.sol

...les/eth-contracts/contracts/libraries/SafeMath.sol

...es/eth-contracts/contracts/libraries/SafeERC20.sol

...ain-modules/eth-contracts/contracts/test/ERC20.sol

...ules/eth-contracts/contracts/libraries/Address.sol

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 1e81a9a...7c796d9. Read the comment docs.


German to English translation adding some special characters

I tried the same PHP code and give the text
"ich bin so glücklich" as it is in GERMAN
and it gives me a response in English like this "I'm so happy" instead of "i am so happy."
anyone have any idea.?

i fixed it by using this line of code.
return html_entity_decode($text, ENT_QUOTES | ENT_XML1, 'UTF-8');
as they send me some special character so I again convert those into real value.


Better 'fips diag configs'

fips should do the following additional checks for configs, and show appropriate diagnostics:

target platform cross-compiling SDK not found
build tool not found
whether config can be built at all on current host platform

Fixed


Suggestion: keybind to send message

Being able to either send a message with Enter and make a newline with  Ctrl + Enter or send a message with Ctrl + Enter and make a newline with Enter would be great instead of having to click the "Post" button.

I am guessing you are referring to the case where the input is expanded right (multi-line) ? I remember this being my intention, I will revisit once I get some time and see if I can fix it to do that.

Ended up using the standard Enter for posting, Shift+Enter for new line.


Added 2 new booru sites to sites.json

I added furry.booru.org and realbooru.com
plz merge

api is no longer a single url, but now an object for future support of more booru functions (like the new Post.postView getter)
paginate is also needed since by default it uses page, although page= already used in the url (So we need to specify pid instead)


Custom hook doesn't return updated data

Bug report
Description / Observed Behavior
When using useSWR inside a custom hook, the data in the component doesn't get updated. If I use the same code directly inside the component it works
Expected Behavior
I would expect my data to be updated correctly.
Repro Steps / Code Example
let's take for example this custom hook:

export const fetcher = url => axios.get(url).then(res => res.data);

function useZone(zoneId) {
  const {data, isLoading, mutate} = useSWR(`/zone/${zoneId}`, fetcher);
  console.log({data, isLoading})

  return {
    zones: data,
    isLoading: isLoading
  }
}

And then we use it inside the component.

const SecurityZoneDetail = () => {
  let { zoneId } = useParams();
  const { zone, isLoading } = useZone(zoneId);
  // const { data, isLoading, mutate } = useSWR(`/zone/${zoneId}`, fetcher);

  const [isModalOpen, setIsModalOpen] = useState(false);

  useEffect(() => {
    console.log('[DEBUG] RERENDER', {zone, isLoading})
  }, [zone, isLoading])

  return (
    <PageSpinner isLoading={isLoading}>
      <AddSecurityZoneModal open={isModalOpen}/>
      <SecurityZoneList zones={zone?.childrens} addButton={zone?.is_parent} onClick={() => setIsModalOpen(true)} />
    </PageSpinner>
  );
};

the zone inside the component will be always undefined altough the log inside the custom hook show that data is there.
Object { data: {…}, isLoading: false }
[DEBUG] RERENDER  > Object { zone: undefined, isLoading: true }

Additional Context
SWR version is 2.0.0
I have no idea if I'm missing something here, but I guess it should work like that, an almost equal example is inside the documentation itself:
https://swr.vercel.app/docs/getting-started#make-it-reusable

Okay uhm.... apparently, a typo, eight hours spent well, Maybe I'll tell my TL to look at this issue to try and understand the importance of typescript.

We are still facing this issue.
Do you have any more insight on how you solved it or on what was the cause of it?
Our situation

All our API calls are done through autogenerated SWR custom hook wrappers (so, similar to your example).
In our local dev setup we have no issues but in production we often face the same issue you described:
Infinite spinner in the component even if the request was actually successful and the data has been loaded.
This doesn't happen all the time and it's quite inconsistent.
If we trigger a re-render of the component, then the loading update to false and the data is available to the component.

Thoughts

I feel it's an issue of the returned values of the custom wrapper hook ({data, isLoading}) not being passed to the consumer component on update.
I also feel that this is due to some fetching race condition. Because we experience the bug only in production and not in our local development setup (where our frontend and database are local).

Any extra information could be valuable.
on
swr: 2.1.0
node: v16.16.0
react: 18.2.0
react-router-dom: 6.8.0

Inside this example there was also a typo as you can see on the custom hook I return zones and in the component I used zone as key.
Solved that, the hook still didn't work and I permanently moved the logic inside the component itself, the project is not big and that honestly was just a one time thing; maybe there's some problem in the way I wrote the component or other things in the
Component tree that prevent SWR to work properly is my guess because I only faced this issue in very specific situations like the one we're both describing.
Maybe you can try move the hook into another component and see if it works as expected? Altough is difficult to test this stuff in a production environment, probably set up a stage environment with similar specs as production would help.
Best regards.


[CfgEditor] Rename variables

This commit renames some of variables for futher features.
ONE-vscode-DCO-1.0-Signed-off-by: Seok NamKoong<EMAIL_ADDRESS>
Parent Issue : #498
Draft : #496

Could you explain the reason of this change? :-)

Could you explain the reason of this change? :-)

This PR is for reducing duplicated codes :D
Reducing duplicated codes is always good, but there is one more reason... the number of function :(
If I apply this PR, I can expect following things!
//// Before
function disableImport() {
}
function disableOptimize() {
}
function disableQuantize() {
}
// ...

//// After
function disableStep(name) {
}


Using sqlite-net-base with SQLitePCLRaw.provider.winsqlite3

Hello,
After many hours trying to get the base library (no provider or bundle included) - version 1.9.172 - to work on with winsqlite3 I discovered that the version of SQLitePCLRaw.Core that this is referencing is preventing the use of the most recent winsqlite3 library (2.1.8). The 1.9.172 version of sqlite-net-base is using SQLitePCLRaw.Core version 2.1.2 and the most recent winsqlite 3 is using 2.1.8. Since only one version is being copied to the output bin it's taking the most recent one, which is provided by winsqlite 3, which is throwing an assembly not found error with sqlite-net-base as it cannot find the 2.1.2 version.
I understand that it is recommended to use sqlite-net-pcl for ease of use. However, after spending a few days trying to get that to work and being stumped by endless e_sqlite3.dll not found errors. Even with the dll sitting in the bin folder available for use after building for a specific CPU type. I decided to try an approach where I could specify the provider, and thus the dll.
My solution to this was to downgrade winsqlite 3 to 2.1.2 as it also uses core version 2.1.2. This has fixed the problem.
I'm wondering if this is the intended way to be using the library, or is sqlite-net-base currently using the incorrect version of core?
Or is there something else going wrong?
Other info:

.NET 4.8
Any CPU, but also tried forcing it to be x86 and x64

I understand that it is recommended to use sqlite-net-pcl for ease of use.

That depends on who you ask.  I always recommend sqlite-net-base.

an assembly not found error with sqlite-net-base as it cannot find the 2.1.2 version

This surprises me.  I wouldn't expect that to happen, and at the moment, I'm not sure why it would.

endless e_sqlite3.dll not found errors
.NET 4.8
Any CPU...

You're in the trickiest configuration.  Lots of weird cases happen with .NET Framework (as opposed to .NET Core and its modern descendants).  Any AnyCPU is even more troublesome.

I'm surprised on the assembly not found error as well, I would expect it to be okay with a newer version. I would grab the stack trace and actual error report, but I didn't save them, and I've got it working now so just going to leave it be.
Thanks for the response, issue was mostly just a long shot to see if there was a specific trick to using the net-base and winsqlite3 that I had missed. Hopefully this work-around can help other people stuck with a configuration like mine (can't change out of any CPU and 4.8 due to other requirements)


Propose to work on feature - Propagate alterations/updates to the primary ClusterPullSecret

Is your feature request related to a problem? Please describe.
As mentioned  in TODO list:

Propagate alterations/updates to the primary ClusterPullSecret in each namespace when the secret value changes (the work-around is to delete and re-create the ClusterPullSecret)

Now there is no feature to do the automation secret update, which is not convenient, even that we have the workaround.
Describe all possible solutions, and which you suggest
Now have one idea is similar to other watchers, like namespace, serviceaccount. We could create a new watcher for seed secret, and when it is updated, the controller will get the event, to re-trigger reconciling for ClusterPullSecretReconciler to update all the secrets in the namespaces.
Describe alternatives and workarounds that you've considered
None
Additional context
None

@alexellis Hi, is this propose looking good to you? I just followed the CONTRIBUTOR doc that want to ask for working some features here, not sure missing some description in the issue.

@alexellis Hi, I have created a runable branch in my local, is it fine to create the PR?

Hi @hanks

Describe alternatives and workarounds that you've considered

There is a workaround in the README for rotating. You simply delete and recreate the ClusterPullSecret.
Why do you feel that wouldn't work for your team?
Alex

/lock: inactive, raise your own issue as a GitHub Sponsor


Browsing for Python interpreter follows symlinks when it shouldn't

Environment data

VS Code version: 1.58.2
Extension version (available under the Extensions sidebar): v2021.6.944021595
OS and version: macOS 11.4
Python version (& distribution if applicable, e.g. Anaconda): 3.9.1, pyenv (source)
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): python -m venv
~Relevant/affected Python packages and their versions: XXX~
~Relevant/affected Python-related VS Code extensions and their versions: XXX~
Value of the python.languageServer setting: Pylance

[NOTE: If you suspect that your issue is related to the Microsoft Python Language Server (python.languageServer: 'Microsoft'), please download our new language server Pylance from the VS Code marketplace to see if that fixes your issue]
Expected behaviour
When selecting the path to a Python interpreter through the native file browser, symlinks are treated as normal files (you can select a symlink as the interpreter).
Actual behaviour
When selecting the path to a Python interpreter through the native file browser, symlinks are resolved. If venv/bin/python is a symlink to /usr/bin/python, VS Code would pick /usr/bin/python as the interpreter, not venv/bin/python as intended.
Steps to reproduce:
mkdir test-env && cd test-env
python -m venv env
code .

Now select the Python interpreter in VS Code. test-env/env/bin/python will not show up—this is already noted in https://github.com/microsoft/vscode-python/issues/16409 (also somewhat https://github.com/microsoft/vscode-python/issues/16704, https://github.com/microsoft/vscode-python/issues/16613). So to select my environment manually, I try "Enter interpreter path...", then "Find...".
Using the native macOS file picker, I select ./env/bin/python (which is a symlink to ~/.pyenv/versions/3.9.1/bin/python). But VS Code (or the native file picker?) seems to follow this symlink and select ~/.pyenv/versions/3.9.1/bin/python as the path to the interpreter.

Note that entering ./env/bin/python as the interpreter path (rather than using the native file picker) works as expected. If the native file picker always resolves symlinks, maybe that option should be removed?
Also note that creating the virtual environment with python -m venv --copies env makes selecting the interpreter through the native file picker work as expected.
Logs

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

User belongs to experiment group 'pythonaacf'
User belongs to experiment group 'pythonJoinMailingListVar3'
User belongs to experiment group 'pythonJediLSP'
User belongs to experiment group 'pythonDiscoveryModuleWithoutWatcher'
User belongs to experiment group 'pythonTensorboardExperiment'
User belongs to experiment group 'pythonSurveyNotification'
User belongs to experiment group 'PythonPyTorchProfiler'
User belongs to experiment group 'pythonDeprecatePythonPath'
Python interpreter path: /usr/bin/python3
Starting Pylance language server.
Error 2021-07-16 15:24:52: Failed to check if file needs to be fixed [EntryNotFound (FileSystemError): Unable to read file '/Users/gabe/dev/test-python-venvs/test-env/.vscode/settings.json' (Error: Unable to resolve non-existing file '/Users/gabe/dev/test-python-venvs/test-env/.vscode/settings.json')
	at _handleError (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/services/extensions/node/extensionHostProcess.js:84:167834)
	at runMicrotasks (<anonymous>)
	at processTicksAndRejections (internal/process/task_queues.js:93:5)
	at async y.readText (/Users/gabe/.vscode/extensions/ms-python.python-2021.6.944021595/out/client/extension.js:9:343940)
	at async p.doesFileNeedToBeFixed (/Users/gabe/.vscode/extensions/ms-python.python-2021.6.944021595/out/client/extension.js:59:581700)
	at async /Users/gabe/.vscode/extensions/ms-python.python-2021.6.944021595/out/client/extension.js:59:580827
	at async Promise.all (index 1)
	at async p.getFilesToBeFixed (/Users/gabe/.vscode/extensions/ms-python.python-2021.6.944021595/out/client/extension.js:59:580773)
	at async p.updateTestSettings (/Users/gabe/.vscode/extensions/ms-python.python-2021.6.944021595/out/client/extension.js:59:580400)] {
  code: 'FileNotFound'
}
Python interpreter path: ~/.pyenv/versions/3.9.1/bin/python3.9

Hi @gjoseph92, thank you for reaching out!
There are a couple of layers in your issue here, let me walk through them:

Now select the Python interpreter in VS Code. test-env/env/bin/python will not show up

This is expected: Interpreter selection will happen on activation, but the extension won't activate when you open a folder, you need to open a Python file for that.
Secondly, we are also gradually rolling out an updated way of auto-selecting interpreters and sorting them in the "Select Interpreter" dropdown (#16520), starting with today's release of the Python extension (2021.7.1050252941). You can opt into this experiment by adding the following to your settings.json:
"python.experiments.optInto": [
        "pythonSortEnvs"
],

If you are in this experiment and you open a Python file, the virtual environment located in your workspace should be selected. Your virtual environment should also appear at the top of the list of environments as well, since we now sort workspace environments to appear higher.

If the native file picker always resolves symlinks, maybe that option should be removed?

This was reported earlier in https://github.com/microsoft/vscode-python/issues/13603. Currently there's no way for extensions to disable that option since VS Code doesn't expose it. Feel free to upvote the upstream issue to express your interest in this issue!
Closing as a duplicate of #13603.

Thanks @kimadeline for the follow-up!


fix(draggable.ts): Use toRx() of EventEmitter

Use public method toRx() of EventEmitter insted of _subject.

@gdi2290 Maybe you could help. Mouse pointer jumps 8px up and 8px left (margin of body tag) when start dragging and then moves smoothly. Any clue why?

@SekibOmazic The 8px offset comes from the browser's default margin of the body. If you set body { margin: 0 }, the problem is solved. We could fix it by removing the browser's default margin or perhaps it would be better to make use of normalize.css or suchlike.

@dotcs Thanks. The body { margin: 0 } solves the problem. But I hoped it could be done without using/changing css.

@dotcs Sorry for bothering, but please take look at this example:
http://fiddle.jshell.net/mattpodwysocki/pfCqq/show/
It has body {margin:0} (loaded with bootstrap.min.css) but if you disable it and try to drag picture it works smoothly. You can even change margin to body{margin 50px} it still goes smoothly.


Update new user docs for prod deployment

urls have changed thus should be updated in the notebooks

I think the DICOM URL has changed from https://hdsflowehrdev-dicom-flowehr-dev.dicom.azurehealthcareapis.com to https://hdspixldflowehrprod-dicom-pixld-flowehr-prod.dicom.azurehealthcareapis.com

Suspect the Data Lake changes are:

stflowehrdev -> stpixldflowehrprod
data-lake-storage-flowehr-dev -> data-lake-storage-pixld-flowehr-prod


LoadBalancer Service stuck in pending

Nice module.
I tried creating a LoadBalancer service to expose the cluster through and ALB loadbalancer, but it stays in pending state.
Do you have any recommendations for exposing services publicly using this module?
It says Ingress is supported (appears to be nginx-ingress controller) - However I would like to keep my nodes private and use an external loadbalancer to route traffic.
I would love to hear your thoughts on how to expose services publicly. The docs are a bit sparse.
Thank you,
Liam

I use normally classic load balancers. those seemed to work fine last time I tried them.

Could you please give me perhaps a little bit more detail how you use classic load balancers?
I have a working cluster, with private nodes. I create a loadbalancer resource and... nothing happens. I deployed using this configuration.
I see that in order for the aws-cloud-provider addon to work, I need to fix this issue -
erated-kubernetes-staging-master/i-02f5edd2d47c0aefa is not authorized to perform: iam:CreateServiceLinkedRole on resource: arn:aws:iam::794626499202:role/aws-service-role/elasticloadb
alancing.amazonaws.com/AWSServiceRoleForElasticLoadBalancing because no identity-based policy allows the iam:CreateServiceLinkedRole action

module "kubernetes" {
  source = "./terraform-aws-kubernetes"

  aws_region           = "us-east-1"
  cluster_name         = "*****-kubernetes-staging"
  master_instance_type = "t2.large"
  worker_instance_type = "t2.large"
  ssh_public_key       = "${path.module}/pubkey.pub"
  ssh_access_cidr      = ["<IP_ADDRESS>/0"]
  api_access_cidr      = ["<IP_ADDRESS>/0"]
  min_worker_count     = 3
  max_worker_count     = 6
  hosted_zone          = aws_route53_zone.staging.name
  hosted_zone_private  = false

  master_subnet_id = aws_subnet.ops_vpc_public_subnets[0].id
  worker_subnet_ids = [
    aws_subnet.ops_vpc_public_subnets[0].id,
    aws_subnet.ops_vpc_public_subnets[1].id,
    aws_subnet.ops_vpc_public_subnets[2].id
  ]

  # Tags
  tags = {
    Application = "AWS-Kubernetes-staging"
  }

  # Tags in a different format for Auto Scaling Group
  tags2 = [
    {
      key                 = "Application"
      value               = "AWS-Kubernetes-staging"
      propagate_at_launch = true
    }
  ]

  addons = [
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/storage-class.yaml",
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/heapster.yaml",
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/dashboard.yaml",
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/external-dns.yaml",
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/autoscaler.yaml",
    "https://raw.githubusercontent.com/scholzj/terraform-aws-kubernetes/master/addons/ingress.yaml"
  ]
}

I just create type: LoadBalancer Kubernetes service and it creates a classic load balancer. I'm not sure if something changed in AWS, if your account has some different setup, or if simply ALB requires other rights ETB. I guess if you get some error you should try to address the issue it complains about and see if it helps. I'm afraid I do not have much time right no to do some investigation or testing myself, sorry.


tickets/PREOPS-1135

review notebook

This PR is for both of the large data visualization notebooks, 08a (butler, images) and 08b (TAP, catalogs).

I was able to run NB08a on data.lsst.cloud without issue
Ran NB08b on data-int.lsst.cloud without issue


accessTokenHttpResponseConverter and errorHttpResponseConverter allow custom

gh-1058

@luamas We do not want to expose HttpMessageConverter<OAuth2AccessTokenResponse> or HttpMessageConverter<OAuth2Error>. The main extension points for customizing the access token response and error response are AuthenticationSuccessHandler and AuthenticationFailureHandler.
Please see this comment for further details.
Also, for future reference, please log the issue first and let's discuss the proposal to see if it will be accepted or not. This will avoid any unnecessary work. Thank you.


test(e2e,playwright): 404 page

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Related to #51705

camperbot cant code

There should be one spec for 404.ts page and separate test for FourOhFour component ../components/FourOhFour/index.tsx.

i closed this PR because i saw many other people did this too, and some did even better


Remove Fetch Batch size limit

Overview
The original ADR specified that fetch batch limit should be enforced by the client at 256. This has changed and the ADR has been updated. Clients that enforce a limit should be changed to remove
The behavior is documented in ADR-13 which has been recently updated for this change. https://github.com/nats-io/nats-architecture-and-design/pull/108
Clients and Tools

[ ] Go @wallyqs
[x] Java @scottf
[x] JavaScript @aricart
[x] .Net @scottf
[x] C @kozlovic
[ ] Python @wallyqs
[ ] Ruby @wallyqs
[ ] Rust @matthiashanel @derekcollison @Jarema

Other Tasks

[ ] docs.nats.io updated
[ ] Update ADR to Implemented
[ ] Update client features spreadsheet

Client authors please update with your progress. If you open issues in your own repositories as a result of this request, please link them to this one by pasting the issue URL in a comment or main issue description.

The javascript clients didn't enforce any limit or lack of, as ultimately the nats-server should be the one to accept or reject protecting itself.


Should allow sorting

The Google Auth Android client works well for a few entries. People like me have about 20 entries, not sorted (well sorted by when you've added them which is meaningless). You should be able to:
Sort them (manually, by issuer, or by provider, at least one of those)
Possibly group them together in one level tree

Second that, search capabilities would be nice too.

@vovtz Yes that's also my desire. Manually sorting is probably the most important.

For what it's worth, I've had success with manually reordering entries in the SQLite database.

I think a very basic way would be quite easy to achieve (add a position column to the database) and load it sorted by this column. The harder part is getting a UI. Using context menu action like "move up/down" or "to top" the pure functionality could be added. Things like drag&drop sorting are the more harder UI part.

@AndrewKvalheim So I have to ‘root’ my phone to be able re-order the entries? ;p

@capi Wish I had time to play with the drag and drop support myself: [Drag and Drop | Android Developers] (http://developer.android.com/guide/topics/ui/drag-drop.html) …

@vovtz Yes, hence the existence of this issue.

@vovtz @AndrewKvalheim root is also a working solution for #23. But root is also the root of all evil for the security aspects of the application :)
PS: I know you've both been only kidding.

Would love this as well

+1

+1 for comment by @vovtz  "I’d prefer to be able to freely re-order the accounts". The order that my accounts were created does not reflect the frequency with which I use each account. My currently most used entries are the first, and the third-last!

Just FYI: The opensource project for GA is unstaffed, so don't expect this to "just happen". Patches will be accepted though.

The solution is to use Authy

@bradmurray Everyone knows how to find other OTP generators for Android on the Play Store and there are IMO better ones but I'd not link to any especially not one that is open source. The goal isn't to advertise but to work on improving this app.

But there are many people who don't have the skills to update the app that may not know about alternatives since most sites that support Google 2FA don't mention them. This project is basically dead so users hoping for an update will be waiting for a long time for something that may never come and already exists elsewhere.

The project being dead is more a speculation as it lives internally of
Google.
As for the rest it's a issue tracker and not a forum. Please avoid
On Thu, Apr 7, 2016, 15:13 Brad Murray<EMAIL_ADDRESS>wrote:

But there are many people who don't have the skills to update the app that
may not know about alternatives since most sites that support Google 2FA
don't mention them. This project is basically dead so users hoping for an
update will be waiting for a long time for something that may never come
and already exists elsewhere.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/google/google-authenticator-android/issues/1#issuecomment-206893751

@wernight "This project" is open source. What is happening internally at Google (the Play Store version of this app) is not open source. One is 'free software', one is not.

I'd open a new ticket to suggest marking this project as dead/deprecated and/or for including pointers to other similar OTP applications in the README.
@ocdtrekkie Yes you're right (I get what you're meaning even though both are free one isn't open source). My point is more that there isn't a firm plan for this repository as far as I'm aware.

Pull-requests are accepted by @ThomasHabets very fast. It's just that no-one is providing any at the moment.

+1

@dlr1967 in the latest Authenticator release, you can sort entries by long-pressing an entry then dragging up or down.

Took me some effort to figure out how to drag & drop, but I confirm it works in GA 5.00 (Android Oreo).
First you have to long-press one of the entries: it will be highlighted and there will be a notification "Verification code copied to clipboard". After that, it is possible to drag and drop the selected entry and reorder the list.
Not the easiest and most intuitive UI, but it works. I guess this issue could be finally closed?

Most people care about the non-opensource GA, so yeah I'll just close this.
Thanks.


Nginx Ingress controller now requires ingress.class

This is a trivial fix for a problem where after deploying the Ingress controller https://api.localtest.me/ would report a 404 Not Found error instead of the expected 403 Forbidden as reported in issue #14.
The pod logs will have an error similar to this:
I1017 21:58:37.843115       7 store.go:426] "Ignoring ingress because of error while validating ingress class" ingress="namespace/gateway-ingress" error="ingress does not contain a valid IngressClass"

Fixes #14


Writes to Mongodb in Actionrunner are slow and cpu intensive with large documents

SUMMARY
When an action return ~4MB of data the actionrunner writing to MongoDB takes ~20 seconds for each document. During the writes, the CPU utilization spikes to 100%.
STACKSTORM VERSION
St2 v3.1.0
OS: CentOS 7.7.1908 Kernel 3.10.0-957.el7.x86_64
Kubernetes v1.14.1
Docker 19.03.2
Base Docker Image: CentOS 7.6.1810 (custom image)
Steps to reproduce the problem
In a Python 3 pack, create a python action with the following code
#!/usr/bin/env python3

import json

import requests
import datetime
from st2common.runners.base_action import Action

class RequestLargeDataset(Action):
    """
    Retrieves ~4MB of json data
    """

    def run(self, **kwargs):
        dataset = requests.get('https://data.ct.gov/api/views/rybz-nyjw/rows.json?accessType=DOWNLOAD')
        data = json.loads(dataset.text)
        return data

Expected Results
Low CPU utilization and the result returning within a relatively short time (<5 seconds)
Actual Results
CPU spiked to 100% for 20-30 seconds

adding some logs around st2actions.container.base.py:296 with

    def _update_status(self, liveaction_id, status, result, context):
        try:
            LOG.error("updating liveaction")
            LOG.debug('Setting status: %s for liveaction: %s', status, liveaction_id)
            liveaction_db, state_changed = self._update_live_action_db(
                liveaction_id, status, result, context)
            LOG.error("done updating liveaction")
        except Exception as e:
            LOG.exception(
                'Cannot update liveaction '
                '(id: %s, status: %s, result: %s).' % (
                    liveaction_id, status, result)
            )
            raise e

        try:
            LOG.error('updating execution')
            executions.update_execution(liveaction_db, publish=state_changed)
            LOG.error('done updating execution')
            extra = {'liveaction_db': liveaction_db}
            LOG.debug('Updated liveaction after run', extra=extra)
        except Exception as e:
            LOG.exception(
                'Cannot update action execution for liveaction '
                '(id: %s, status: %s, result: %s).' % (
                    liveaction_id, status, result)
            )
            raise e

        return liveaction_db

I'm getting logs like
2019-10-02 18:17:23,854 ERROR [-] updating liveaction
2019-10-02 18:17:28,963 ERROR [-] done updating liveaction
2019-10-02 18:17:28,964 ERROR [-] updating execution
2019-10-02 18:17:33,268 ERROR [-] done updating execution

Where it takes 10 seconds to update liveaction and another 5 seconds to update execution.
Additionally, I've done a cProfile against the actionrunner and I'm seeing the following

It looks like the CPU is spending most of its time building the mongoengine document object. May be related to https://github.com/MongoEngine/mongoengine/issues/1230

Thanks for reporting this.
There we indeed multiple mongoengine issues related to writing large documents in the past.
Over the releases, the performance was improved in mongoengine itself and we've also done some performance optimizations, but it could be that there are more issues hiding (would need to dig in).

I know this issue has been opened quite a long time ago, but the problem hasn't gone away yet and I finally had a chance to work on #4846 and made good progress on it.
Initial micro benchmarks and end to end load tests are very promising - we see database write speed improvements up to 10x and up to 5x for reads when writing / reading execution results - all of that of course also translates to much faster action execution and workflow completion times for executions / workflows which operate on larger datasets.
Some more data and numbers is available here - https://github.com/StackStorm/st2/pull/4846#issuecomment-781629337, https://github.com/StackStorm/st2/pull/4846#issuecomment-782131035, https://github.com/StackStorm/st2/pull/4846#issuecomment-782837693.
I hope there will be no last minute surprises and we will be able to include those changes with v3.5.0 release.

Oh, and when I was testing the fix end to end with Python runner action which returns 4 MB of data (very similar to the example scenario you used), the whole action execution with the new code on my computer now takes ~1 second vs ~12 seconds with current master.
This includes the whole action execution flow end to end - from execution being scheduled, action ran by the Python runner and all the state persisted to the database (action execution, live action objects, etc.). Actual database writes itself for those two models are now in the range of ~200 ms range.

As per comments above, this should be much improved in 3.5.0.

I really think we can close this now with the https://github.com/StackStorm/st2/pull/4846 performance improvements by @Kami.
@jdmeyer3 Feel free to re-open it if you're still seeing an unacceptable performance with the st2 v3.5.0.


Workaround compatibility issue with sphinx-markdown-tables and markdown packages

See commentary in this commit, the upstream issue¹, our initial tracking
issue² (in another repo), and our Slack thread.³
¹ https://github.com/ryanfox/sphinx-markdown-tables/issues/36
² https://github.com/nextstrain/ncov/issues/982
³ https://bedfordlab.slack.com/archives/C01LCTT7JNN/p1658148441308079
Testing

[ ] CI passes
[x] Test that our other projects can successfully build with this PR

Test built the CLI docs locally with this PR installed, and it worked as expected.


Avoid rebuilding snapshots if no change to source

This change re-introduces skipping snapshot builds if input sources (and
outputs) have not changed since the last snapshot build, with a bugfix
to include the entry-point source in the checksum used to check whether
rebuild can be skipped. This ensures that the following sequence
invalidates the cached build, resulting in two snapshot builds:
flutter build ios lib/foo.dart
flutter build ios lib/bar.dart
This reverts commit 3d5afb5a81052b7d55661549320d6d43f893f448.

LGTM

This again caused the microbenchmarks benchmark to stop working.

I'm out today, but if you roll back I'll take a look first thing Wednesday. Confused :-(


tlv: seeds for new bool primitive

Updates the FuzzBool and FuzzStream seed corpora for the new bool primitive added in https://github.com/lightningnetwork/lnd/pull/8057.

@crypt-iq: review reminder

@crypt-iq: review reminder


Feature request: goimports support in Sublime Text plugin

Please add support for running goimports instead of gofmt on save.
A viable alternative - add an option to disable running gofmt on save entirely and let users use other plugins for code formatting.

This package is only for autocompletion, you should be looking for this setting in the generic Go support layer for your editor (e.g. go-mode for Emacs).

FYI, goimports is a drop-in replacement for gofmt that automatically adds import lines. It doesn't do any autocompletion :)
E.g. if you simply add a configuration knob to specify a command to run on save, instead of hardcoding gofmt, that would do the trick already.

The editor-specific plugins in this repository are relics from https://github.com/nsf/gocode. The current recommendation for editor integration is using a specific plugin (like GoSublime, suggested above), or an LSP plugin with gopls. For Sublime, I believe https://github.com/tomv564/LSP works.


[radarr] Major overhaul

Checklist

[x] Chart Version bumped
[x] Title of the PR starts with chart name (e.g. [radarr])

Major Overhaul Points

helm2 -> helm3 chart definition
linuxserver image -> itscontained image
common labels and label selectors
deployment -> statefulset
environment defined in config (helm statefulset management benefit)
ingress uses newest helm3 template defaults
pvcs condensed to a single file
media mount removed unless persistence enabled
service spec generalized to allow any additional spec added arbitrarily
additionalVolumes and additionalVolumeMounts added to allow un-opinionated mounting of media
removal of exportarr+servicemonitor as they should be a sub or sister chart

Since this is a sts. Have you thought about supportingbterminationGracePeriodSeconds to be configurable?
For example: https://github.com/vernemq/docker-vernemq/blob/master/helm/vernemq/templates/statefulset.yaml#L38

I think we can close this because of https://github.com/billimek/billimek-charts/pull/329 ?

Right.


Lightweight?

A simple note app but the size is almost 4.5mb seems a lot

Registration, notes, goals, profile and so on, it is good weight i think, if we compare it with google or evernote, also lightweight means, that app is have only functions that you will need in note app, nothing superfluous, Thanks :)


Loading past sims?

Hey Carl, I used this tool a while back to generate a world map I'm really happy with for my conworld. I saved the sim so I could make a map of the world's prehistoric "pangea", but now it won't load. I see there was an issue that was updated on March 11, but I think that only fixes it for sims saved after the update. Is there anything I can do with this old file?

When did you save the file? Would you be able to upload it? If so, I'll take a look at it to see what we can do.
Are you comfortable using a repository view, like gitkraken? If so you can load up an older version the project on your machine and open the save file there. However, this won't let you use any of the features that were recently introduced (atmospheric scattering, for instance)

Looks like I saved it... a while ago. 2018-05-01. Attaching three saves (same world at different times; in case something actually happened to the files on my machine, you have a few options). Since Tectonics.js can run time backwards, if you're doing something to the file to help me out, any one of these is fine -- no need to do all three!
As for using a repository view, I've never done that before but I'm perfectly happy to try it.
leniste.zip

I took a look at the zip file and I've come to believe it's a nontrivial amount of work to write a conversion script. A lot of stuff happened to the save file format since May in order to support orbital mechanics and I'm pressed for time as it is. I think we should consider backwards compatibility if we update the save file format again, but for right now our time is best spent on looking forwards.
That said, I think there's a quick way to get this working: download this file, unzip the contents, open index.html in your browser of choice, and drag and drop your save file into the application. You should see this:

Another thing to do would be to load up the seed in the most recent version of the application. Since the world generation algorithm hasn't changed you should get the same world. It looks like the model back then used the world name as it's seed, so try:
http://davidson16807.github.io/tectonics.js/?seed=leniste
When I go there, I see this:

The name of the world is different ("togois" instead of "leniste") but it should have the same appearance. There may be some other differences as well, particularly with how the plates move. On the bright side, this means you get all the new features of the model (new save file format, orbital mechanics, seasonal temperature, atmospheric scattering, etc.)
Let me know how that works for you. Would you be fine with me closing out the story?

Hi Carl,
Sorry, but I'm still not quite getting it. If I try to run it on the new
version any faster than 100y/s, it does this:
[image: Screen Shot 2019-05-15 at 5.29.04 PM.png]
And the old one does something similar when I try to load a sim:
[image: Screen Shot 2019-05-15 at 5.32.41 PM.png]
It's really not that important, though. You can close the story, and just
let me know if the speed issue in the new one has an easy fix. I love the
moving ice caps in the new version, by the way!
Sam
On Tue, May 14, 2019 at 6:48 PM Carl Davidson<EMAIL_ADDRESS>wrote:

I took a look at the zip file and I've come to believe it's a nontrivial
amount of work to write a conversion script. A lot of stuff happened to the
save file format since May in order to support orbital mechanics and I'm
pressed for time as it is. I think we should consider backwards
compatibility if we update the save file format again, but for right now
our time is best spent on looking forwards.
That said, I think there's a quick way to get this working: download this
file
https://github.com/davidson16807/tectonics.js/archive/fd5878ce2e8db7214381d320e6c95f55be5d8e16.zip,
unzip the contents, open index.html in your browser of choice, and drag and
drop your save file into the application. You should see this:
[image: leniste-18 4My (1)]
https://user-images.githubusercontent.com/5824741/57735615-d265ab00-766a-11e9-8ccb-65b7f31dd8d7.png
Another thing to do would be to load up the seed in the most recent
version of the application. Since the world generation algorithm hasn't
changed you should get the same world. It looks like the model back then
used the world name as it's seed, so try:
http://davidson16807.github.io/tectonics.js/?seed=leniste
When I go there, I see this:
[image: togois-0 0245y]
https://user-images.githubusercontent.com/5824741/57736589-27ef8700-766e-11e9-9800-09db7f3b44ad.png
The name of the world is different ("togois" instead of "leniste") but it
should have the same appearance. There may be some other differences as
well, particularly with how the plates move. On the bright side, this means
you get all the new features of the model (new save file format, orbital
mechanics, seasonal temperature, atmospheric scattering, etc.)
Let me know how that works for you. Would you be fine with me closing out
the story?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/davidson16807/tectonics.js/issues/44?email_source=notifications&email_token=AL6WFDPGQE6ZLTMY5GXP4XDPVM6SDA5CNFSM4HJRO3HKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVNAK2Y#issuecomment-492438891,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AL6WFDMAYWGLZAP2BZG4XSDPVM6SDANCNFSM4HJRO3HA
.

It's really not that important, though. You can close the story, and just
let me know if the speed issue in the new one has an easy fix. I love the
moving ice caps in the new version, by the way!

Thanks! I'm not sure about the speed issue though. You mention something happens past 100y/s but I can't see the image. Could you try reuploading, or maybe try a file site like imgur? What browser are you using?

I'll close out this issue since it sounds like the other problem you mention may be off topic. Feel free to open up a new issue for the other problem if you feel it's needed.


Bump version to 3.16.0

Questions
Answers

Description?
Bump version to 3.16.0

Type?

BC breaks?

Deprecations?

Fixed ticket?

How to test?

Merging as quote PR is eligible, such as PR for bumping versions, PR that only modify CI, etc.


[OAuth2] Timeline for graduation of OAuth2 filter to beta/GA

Title:  Timeline for graduation of OAuth2 filter to beta/GA
Description:
OAuth2 filter documentation mentions that it is currently under active development.  The extensions metadata specifies the status as alpha - is there a timeline or milestone by which this filter can be considered stable for production use? In other words, when is this expected to graduate to GA?
Also is there a plan to support additional grant types besides the authz code flow?
Relevant: https://github.com/envoyproxy/envoy/issues/14088

cc @derekargueta @snowp

any timeline for this?

@derekargueta @snowp @kyessenov - Would you be able to provide the likely promotion timeline for this filter?

The criteria are listed here https://github.com/envoyproxy/envoy/blob/main/EXTENSION_POLICY.md#extension-stability-and-security-posture. The main signal for this extension is sufficient burn time in production. If an end-user can report on experience running it in production without issues, the other signals are mostly technical quality.

The criteria are listed here https://github.com/envoyproxy/envoy/blob/main/EXTENSION_POLICY.md#extension-stability-and-security-posture. The main signal for this extension is sufficient burn time in production. If an end-user can report on experience running it in production without issues, the other signals are mostly technical quality.

Serious users aren't ready to try it in production when they see the flag alpha. Aren't we in the chicken and egg conundrum?

@deva26 yes it is, but the first step needs to be done by the interested end-user to provide qualification. We cannot do that alone in OSS without production access.


[web] Flutter create --web option is not documented

Per https://github.com/flutter/flutter/wiki/Building-a-web-application-with-Flutter, you can add the web runner to a Flutter project with flutter create --web .
However, this option is not documented in flutter create --help, even in the current master channel builds.
We should fix this. Tagging @jonahwilliams.

I'll update the documentation. To align with the current behavior and avoid stepping on the multi-platform create plans I've updated flutter create to unconditionally add a web project if the flag is enabled.

Updated the wiki


There were still some syntactic problems

I think this is the least "evil" way of trying to keep the traceback information correct while raising the exception.

Oh, right, I did miss the whole point of the fix, thinking that ImportError, ImportError(...) was just a typo that worked by accident, while it's definitely not.
py3 docs suggest that assigning traceback seem to be an expected thing, so I don't think it's really "evil", but either way works, I guess.


Fix #19

This PR fixes the issue described in #19 by checking if any of the biome, structure and dimension fields are null (either by it not being specified or it being non-existent) and returning early. It also now outputs a warning to the output log if the power type couldn't find the specified dimension/structure/biome.
respawn_sound is still unused though, since I'm unsure where exactly to hook onto to play the sound event. Maybe PlayerManager#respawnPlayer? 🤔

Manually merged this because I'm too incompetent with Git. 🤷♂


Improve the poll-box if noone has voted

If you start and stop a poll before anyone has voted, the vote-box is a bit empty. Maybe it can be improved. Maybe there could be a message that noone has voted.
The current box looks like this:

Already fixed since 4.0