fail to  install broker unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1

hi
I m trying to install the broker but i m getting this error
in the code below you can see the helm, svcat, kubectl version
I m using the https://github.com/oracle/oci-service-broker/blob/master/charts/oci-service-broker/docs/installation.md
and the issue is coming from the the Quick setup guide :
Quick Setup
any hints for this error ?
helm install oci-service-broker https://github.com/oracle/oci-service-broker/releases/download/v1.4.0/oci-service-broker-1.4.0.tgz \
>   --set ociCredentials.secretName=ocicredentials \
>   --set storage.etcd.useEmbedded=true \
>   --set tls.enabled=false
Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
(base) [oracle@localhost .ssh]$ helm version
version.BuildInfo{Version:"v3.2.4", GitCommit:"0ad800ef43d3b826f31a5ad8dfbb4fe05d143688", GitTreeState:"clean", GoVersion:"go1.13.12"}
(base) [oracle@localhost .ssh]$ svcat version
Client Version: v0.3.0
Server Version: v1.16.8
(base) [oracle@localhost .ssh]$ kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2", GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032", GitTreeState:"clean", BuildDate:"2020-04-16T11:56:40Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.8", GitCommit:"fdba62c353cc548995bbe730321f64176e4f6e4b", GitTreeState:"clean", BuildDate:"2020-04-08T18:15:19Z", GoVersion:"go1.13.8 BoringCrypto", Compiler:"gc", Platform:"linux/amd64"}
(base) [oracle@localhost .ssh]$

This seems to be the problem: https://stackoverflow.com/questions/58481850/no-matches-for-kind-deployment-in-version-extensions-v1beta1

We are working on updating the chart. We will publish a fixed version by next week.


added note on external volumes with docker stack deploy

What's changed

added note about the differences in behaviour between docker stack deploy and docker compose up with regard to external volumes that do not exist

Note, this solves only the docs issue. Related issues are listed below.

Related
Fixes #3141 (docs)
Moby: https://github.com/moby/moby/issues/29976
Moby: https://github.com/moby/moby/issues/33181 (duplicate, closed)
Reviewers, fyi
@briantd @cghislai @dnephin @shin- @justincormack @thaJeztah
Signed-off-by: Victoria Bialas<EMAIL_ADDRESS>

LGTM


Adds color field to projects

This PR adds color to project entities much in the same way that we do for posts.

We also have a task to reassign colors for all projects rake color_tasks:colorize_projects

Going to merge and just leaving a note that next time we deploy, we'll need to migrate and run rake color_tasks:colorize_projects


Feature/step2 modeling actions

@kravets-levko can you change the shippable file to a travis file. I want to move these few repos off shippable and have all our stuff on travis by default. Also - tests are failing.

looks like the fail is just that istanbul can't be found on shippable. The travis fail is just because there is no travis file, so it defaults to thinking it is a Ruby codebase because... yeah, Travis.

@pwalsh Changed url to datapackage registry; added travis.yml. Tests are successfully running on my PC and (as I see) on shippable. Shippable fails because it cannot push sources to heroku - this is allowed only from openspending's master

@kravets-levko ok that is fine. Let's remove shippable completely and you can just push manually to heroku. We'll update our continuous deployment stuff in Jan ( cc @roll ).


Wrap git init in correct dir

What does this PR do?
Fixes an error in the release pipeline caused by an attempt to checkout from the wrong directory

:broken_heart: Tests Failed

Expand to view the summary

Build stats

Build Cause: [Pull request #1381 opened]

Start Time: 2020-09-03T13:55:55.174+0000

Duration: 20 min 24 sec

Test stats :test_tube:

Test
Results

Failed
2

Passed
1250

Skipped
1

Total
1253

Test errors
Expand to view the tests failures

Name: Tests / Smoke Tests 02 / co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchRestClientInstrumentationIT – co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchRestClientInstrumentationIT

Age: 1
Duration: 11.745
Error Details: Multiple Failures (2 failures)
org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageName=docker.elastic.co/elasticsearch/elasticsearch:5.6.0)
java.lang.NullPointerException:

Name: Tests / Smoke Tests 01 / co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchRestClientInstrumentationIT – co.elastic.apm.agent.es.restclient.v5_6.ElasticsearchRestClientInstrumentationIT

Age: 1
Duration: 11.527
Error Details: Multiple Failures (2 failures)
org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageName=docker.elastic.co/elasticsearch/elasticsearch:5.6.0)
java.lang.NullPointerException:

Steps errors
Expand to view the steps failures

Name: Shell Script

Description: ./scripts/jenkins/smoketests-01.sh

Duration: 8 min 28 sec

Start Time: 2020-09-03T14:07:39.990+0000

log

Name: Shell Script

Description: ./scripts/jenkins/smoketests-02.sh

Duration: 8 min 27 sec

Start Time: 2020-09-03T14:07:37.318+0000

log

Log output
Expand to view the last 100 lines of log output

[2020-09-03T14:16:12.392Z] ==> Jenkins CI detected.
[2020-09-03T14:16:12.392Z]     project root: .
[2020-09-03T14:16:12.392Z] --> token set from env
[2020-09-03T14:16:12.392Z]     Yaml not found, that's ok! Learn more at http://docs.codecov.io/docs/codecov-yaml
[2020-09-03T14:16:12.392Z] ==> Running gcov in . (disable via -X gcov)
[2020-09-03T14:16:12.656Z] ==> Python coveragepy not found
[2020-09-03T14:16:12.656Z] ==> Searching for coverage reports in:
[2020-09-03T14:16:12.656Z]     + .
[2020-09-03T14:16:12.918Z] --> No coverage report found.
[2020-09-03T14:16:12.918Z]     Please visit http://docs.codecov.io/docs/supported-languages
[2020-09-03T14:16:13.338Z] Failed in branch Smoke Tests 01
[2020-09-03T14:16:13.400Z] Running in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1381/src/github.com/elastic/apm-agent-java
[2020-09-03T14:16:13.444Z] [INFO] Codecov: Getting branch ref...
[2020-09-03T14:16:13.489Z] Masking supported pattern matches of $GITHUB_TOKEN
[2020-09-03T14:16:13.727Z] [INFO] Codecov: Sending data...
[2020-09-03T14:16:14.226Z] + curl -sSLo codecov.sh https://codecov.io/bash
[2020-09-03T14:16:14.597Z] + bash codecov.sh
[2020-09-03T14:16:14.597Z]
[2020-09-03T14:16:14.598Z]   _____          _
[2020-09-03T14:16:14.598Z]  / ____|        | |
[2020-09-03T14:16:14.598Z] | |     ___   __| | ___  ___ _____   __
[2020-09-03T14:16:14.598Z] | |    / _ \ / _` |/ _ \/ __/ _ \ \ / /
[2020-09-03T14:16:14.598Z] | |___| (_) | (_| |  __/ (_| (_) \ V /
[2020-09-03T14:16:14.598Z]  \_____\___/ \__,_|\___|\___\___/ \_/
[2020-09-03T14:16:14.598Z]                               Bash-20200825-997b141
[2020-09-03T14:16:14.598Z]
[2020-09-03T14:16:14.598Z]
[2020-09-03T14:16:14.598Z] ==> Jenkins CI detected.
[2020-09-03T14:16:14.598Z]     project root: .
[2020-09-03T14:16:14.598Z] --> token set from env
[2020-09-03T14:16:14.598Z]     Yaml not found, that's ok! Learn more at http://docs.codecov.io/docs/codecov-yaml
[2020-09-03T14:16:14.598Z] ==> Running gcov in . (disable via -X gcov)
[2020-09-03T14:16:14.598Z] ==> Python coveragepy not found
[2020-09-03T14:16:14.598Z] ==> Searching for coverage reports in:
[2020-09-03T14:16:14.598Z]     + .
[2020-09-03T14:16:15.169Z]     -> Found 36 reports
[2020-09-03T14:16:15.169Z] ==> Detecting git/mercurial file structure
[2020-09-03T14:16:15.169Z] ==> Reading reports
[2020-09-03T14:16:15.169Z]     + ./apm-agent-plugins/apm-jaxws-plugin/target/site/jacoco/jacoco.xml bytes=4871
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-hibernate-search-plugin/apm-hibernate-search-plugin-6_x/target/site/jacoco/jacoco.xml bytes=6218
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-hibernate-search-plugin/apm-hibernate-search-plugin-5_x/target/site/jacoco/jacoco.xml bytes=6316
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-micrometer-plugin/target/site/jacoco/jacoco.xml bytes=19227
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-asynchttpclient-plugin/target/site/jacoco/jacoco.xml bytes=17685
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-okhttp-plugin/target/site/jacoco/jacoco.xml bytes=37430
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-jmx-plugin/target/site/jacoco/jacoco.xml bytes=43085
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-api-plugin/target/site/jacoco/jacoco.xml bytes=83189
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-jaxrs-plugin/target/site/jacoco/jacoco.xml bytes=19262
[2020-09-03T14:16:15.170Z]     + ./apm-agent-plugins/apm-httpclient-core/target/site/jacoco/jacoco.xml bytes=5071
[2020-09-03T14:16:15.431Z]     + ./apm-agent-plugins/apm-error-logging-plugin/target/site/jacoco/jacoco.xml bytes=11311
[2020-09-03T14:16:15.431Z]     + ./apm-agent-plugins/apm-spring-webmvc-plugin/target/site/jacoco/jacoco.xml bytes=21738
[2020-09-03T14:16:15.431Z]     + ./apm-agent-plugins/apm-scheduled-annotation-plugin/target/site/jacoco/jacoco.xml bytes=9669
[2020-09-03T14:16:15.431Z]     + ./apm-agent-plugins/apm-quartz-job-plugin/target/site/jacoco/jacoco.xml bytes=7234
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-java-concurrent-plugin/target/site/jacoco/jacoco.xml bytes=30509
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-profiling-plugin/target/site/jacoco/jacoco.xml bytes=334824
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-redis-plugin/apm-redisson-plugin/target/site/jacoco/jacoco.xml bytes=4968
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-redis-plugin/apm-lettuce-plugin/target/site/jacoco/jacoco.xml bytes=25198
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-redis-plugin/apm-redis-common/target/site/jacoco/jacoco.xml bytes=2973
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-redis-plugin/apm-jedis-plugin/target/site/jacoco/jacoco.xml bytes=7959
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-log-correlation-plugin/target/site/jacoco/jacoco.xml bytes=14069
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-spring-resttemplate-plugin/target/site/jacoco/jacoco.xml bytes=8007
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-apache-httpclient-plugin/target/site/jacoco/jacoco.xml bytes=41413
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-es-restclient-plugin/apm-es-restclient-plugin-common/target/site/jacoco/jacoco.xml bytes=13807
[2020-09-03T14:16:15.432Z]     + ./apm-agent-plugins/apm-es-restclient-plugin/apm-es-restclient-plugin-6_4/target/site/jacoco/jacoco.xml bytes=9808
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-log-shipper-plugin/target/site/jacoco/jacoco.xml bytes=35958
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-urlconnection-plugin/target/site/jacoco/jacoco.xml bytes=13617
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-grpc/apm-grpc-plugin/target/site/jacoco/jacoco.xml bytes=38140
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-servlet-plugin/target/site/jacoco/jacoco.xml bytes=78939
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-jdbc-plugin/target/site/jacoco/jacoco.xml bytes=89597
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-mongoclient-plugin/target/site/jacoco/jacoco.xml bytes=12863
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-jms-plugin/target/site/jacoco/jacoco.xml bytes=45175
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-grails-plugin/target/site/jacoco/jacoco.xml bytes=6556
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugins/apm-jdk-httpclient-plugin/target/site/jacoco/jacoco.xml bytes=15264
[2020-09-03T14:16:15.433Z]     + ./apm-agent-core/target/site/jacoco/jacoco.xml bytes=1141536
[2020-09-03T14:16:15.433Z]     + ./apm-agent-plugin-sdk/target/site/jacoco/jacoco.xml bytes=21672
[2020-09-03T14:16:15.433Z] ==> Appending adjustments
[2020-09-03T14:16:15.434Z]     https://docs.codecov.io/docs/fixing-reports
[2020-09-03T14:16:16.006Z]     -> No adjustments found
[2020-09-03T14:16:16.007Z] ==> Gzipping contents
[2020-09-03T14:16:16.268Z] ==> Uploading reports
[2020-09-03T14:16:16.268Z]     url: https://codecov.io
[2020-09-03T14:16:16.268Z]     query: branch=cachedout%2Fwrap_git_dir&commit=c16c174157fb770a7b2867a3930beba4c4eaa538&build=1&build_url=https%3A%2F%2Fapm-ci.elastic.co%2Fjob%2Fapm-agent-java%2Fjob%2Fapm-agent-java-mbp%2Fjob%2FPR-1381%2F1%2F&name=&tag=&slug=elastic%2Fapm-agent-java&service=jenkins&flags=&pr=1381&job=&cmd_args=
[2020-09-03T14:16:16.268Z] ->  Pinging Codecov
[2020-09-03T14:16:16.268Z] https://codecov.io/upload/v4?package=bash-20200825-997b141&token=secret&branch=cachedout%2Fwrap_git_dir&commit=c16c174157fb770a7b2867a3930beba4c4eaa538&build=1&build_url=https%3A%2F%2Fapm-ci.elastic.co%2Fjob%2Fapm-agent-java%2Fjob%2Fapm-agent-java-mbp%2Fjob%2FPR-1381%2F1%2F&name=&tag=&slug=elastic%2Fapm-agent-java&service=jenkins&flags=&pr=1381&job=&cmd_args=
[2020-09-03T14:16:16.529Z] ->  Uploading to
[2020-09-03T14:16:16.529Z] https://storage.googleapis.com/codecov/v4/raw/2020-09-03/9D96A76C16FC0F1A9E828BAAD4B02DD6/c16c174157fb770a7b2867a3930beba4c4eaa538/ff8ef151-9e98-4484-a6b6-a6e04cb4a4c7.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EQX6OZVJGHKK3633AAFGLBUCOOATRACRQRQF6HMSMLYUP6EAD6XSWAAY%2F20200903%2FUS%2Fs3%2Faws4_request&X-Amz-Date=20200903T141616Z&X-Amz-Expires=10&X-Amz-SignedHeaders=host&X-Amz-Signature=44c30afd7cfad4008b66c11cd53a25f1594af5a8751f98f02155f44b0027ee0c
[2020-09-03T14:16:16.529Z]   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
[2020-09-03T14:16:16.529Z]                                  Dload  Upload   Total   Spent    Left  Speed
[2020-09-03T14:16:16.789Z]
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  162k    0     0  100  162k      0   829k --:--:-- --:--:-- --:--:--  829k
[2020-09-03T14:16:16.789Z]     -> View reports at https://codecov.io/github/elastic/apm-agent-java/commit/c16c174157fb770a7b2867a3930beba4c4eaa538
[2020-09-03T14:16:17.077Z] Failed in branch Unit Tests
[2020-09-03T14:16:17.413Z] Stage "Integration Tests" skipped due to earlier failure(s)
[2020-09-03T14:16:17.510Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2020-09-03T14:16:17.552Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2020-09-03T14:16:17.890Z] Running on Jenkins in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1381
[2020-09-03T14:16:18.009Z] [INFO] getVaultSecret: Getting secrets
[2020-09-03T14:16:18.098Z] Masking supported pattern matches of $VAULT_ADDR or $VAULT_ROLE_ID or $VAULT_SECRET_ID
[2020-09-03T14:16:19.038Z] + chmod 755 generate-build-data.sh
[2020-09-03T14:16:19.038Z] + ./generate-build-data.sh https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1381/ https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1381/runs/1 FAILURE 1223591
[2020-09-03T14:16:19.289Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1381/runs/1/steps/?limit=10000 -o steps-info.json
[2020-09-03T14:16:19.839Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1381/runs/1/tests/?status=FAILED -o tests-errors.json


Added the link for How-to manage credentials

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Add url params support

Codecov Report

Merging #38 (fd735cb) into main (2a8f014) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main       #38   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           59        59
  Lines          887       891    +4
=========================================
+ Hits           887       891    +4

Impacted Files
Coverage Δ

aioalfacrm/core/entity_manager.py
100.00% <100.00%> (ø)

aioalfacrm/managers/branch.py
100.00% <100.00%> (ø)

aioalfacrm/managers/customer.py
100.00% <100.00%> (ø)

aioalfacrm/managers/lead_source.py
100.00% <100.00%> (ø)

aioalfacrm/managers/lead_status.py
100.00% <100.00%> (ø)

aioalfacrm/managers/location.py
100.00% <100.00%> (ø)

aioalfacrm/managers/study_status.py
100.00% <100.00%> (ø)

aioalfacrm/managers/subject.py
100.00% <100.00%> (ø)

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 2a8f014...fd735cb. Read the comment docs.


Bump Kokkos version to 4.3.01

Before submitting
Please complete the following checklist when submitting a PR:

[ ] All new features must include a unit test.
If you've fixed a bug or added code that should be tested, add a test to the
tests directory!

[ ] All new functions and code must be clearly commented and documented.
If you do make documentation changes, make sure that the docs build and
render correctly by running make docs.

[ ] Ensure that the test suite passes, by running make test.

[ ] Add a new entry to the .github/CHANGELOG.md file, summarizing the
change, and including a link back to the PR.

[ ] Ensure that code is properly formatted by running make format.

When all the above are checked, delete everything above the dashed
line and fill in the pull request template.

Context: Building Catalyst currently causes issues with Kokkos path resolution. This PR aims to update the Kokkos version in an aim to rectify this issue.
Description of the Change: Updates kokkos to 4.3.01
Benefits: New support for Kokkos architectures and performance gains. Potential fix for Catalyst runtime Kokkos failure.
Possible Drawbacks:
Related GitHub Issues:

[sc-63118]

Thanks folks. Ignoring the existing CF error, as it seems like we are optimal for now.


add handlebars name to figma

Add handlebars name to figma so the front end knows which handlebars for use

All done. See figama


Add iPhone App

How feasible would this be? Synth One looks amazing, but there are plenty of us (dozens, I say!) who use our iPhones for music and don't have iPads for varying reasons.

@BenKesselring - Luckily, the code runs on an iPhone now. It's a matter of a volunteer stepping up to create and maintain a UI interface for the iPhone.
Anyone reading this want to volunteer? :)
<EMAIL_ADDRESS>

The UI fits nicely on Plus size phones, at least.

That's great to know! I may have to build for iPhone X and see how it scales. If the UI mostly needs just minor tweaking, I might take a stab at it.

I'm pondering working on the ios port for this. Is there any design work done as far as speccing what iphone layout should look like? I don't feel like I understand the featureset enough to know how stuff should scale, but I'm pretty fast as UI if anyone has already figured out the layout.

Any update on this issue? Is there any way an inexperienced swift dev can help?

Hey everyone, I'm going to take the lead on this. I should have a (mostly) working branch pushed by next week. Here's a quick preview of my progress: https://twitter.com/AudioKitPro/status/1079894842270871552

This is done!
https://audiokitpro.com/synth-one-for-iphone-released/


Fix a race condition in RWVar

retry is interruptible, which can leave the RWVar in a state that is unrecoverable.
Kudos to @jasagredo for finding this subtle bug!

This is now ready for review. My takeaway is that I should put more thought into interruptibility when writing exception safe code :stuck_out_tongue_closed_eyes:


TypeError: 'pdftotext.PDF' object has no attribute 'getitem'

This does not work:
import pdftotext

def get_text(filepath, page=None):
    """
    Extract text from a PDF

    Parameters
    ----------
    filepath : str
        Path to a PDF file
    page : int or None

    Returns
    -------
    text : str
    """
    with open(filepath) as f:
        pdf = pdftotext.PDF(f)
    if page is not None:
        text = pdf[page]
    else:
        text = pdf.read_all()
    return text

It returns:
TypeError: 'pdftotext.PDF' object has no attribute '__getitem__'

Few things here:

For compatibility with more platforms and/or python versions, consider open(filepath, "rb") to explicitly open the PDF file in binary mode.
I added __getitem__ later, so you would just need a newer version for that.
Later I also dropped read_all, since it didn't really provide much value. You can get the same result with "\n\n".join(pdf). (I initially thought read_all would be faster, but it turned out to make almost no difference.)

Sorry for all the changes, but I made sure to document them and to update the version number accordingly. This should do what you want:
import pdftotext

def get_text(filepath, page=None):
    with open(filepath, "rb") as f:
        pdf = pdftotext.PDF(f)
    if page is not None:
        text = pdf[page]
    else:
        text = "\n\n".join(pdf)
    return text


Acquire Page Update and Edits

Hey all,
Revised the content on the Steps on how to get your criminal record.
Let me know if there are any edits or anything else I can contribute to the project.

Hi Erik. Your merge has conflicts. Meaning the edits you made were not on
the most recent files. Would you mind downloading the files again and
making the edits to the most updated files?
On Sun, Sep 13, 2015 at 1:00 PM, Erik Anderson<EMAIL_ADDRESS>wrote:

Hey all,
Revised the content on the Steps on how to get your criminal record.
Let me know if there are any edits or anything else I can contribute to
the project.
You can view, comment on, or merge this pull request online at:
https://github.com/codefordc/clean-slate/pull/139
Commit Summary

Revised and Styled Acquire content
Acquire Page Updated and Edited

File Changes

M css/app.css
https://github.com/codefordc/clean-slate/pull/139/files#diff-0 (108)
M data/combined-flow.json
https://github.com/codefordc/clean-slate/pull/139/files#diff-1 (8)
M js/app.js
https://github.com/codefordc/clean-slate/pull/139/files#diff-2 (2)
M views/acquire.html
https://github.com/codefordc/clean-slate/pull/139/files#diff-3 (54)

Patch Links:

https://github.com/codefordc/clean-slate/pull/139.patch
https://github.com/codefordc/clean-slate/pull/139.diff

—
Reply to this email directly or view it on GitHub
https://github.com/codefordc/clean-slate/pull/139.

There are merge conflicts in this file. Anyway you could resolve those? Quickest way is to download most update files from github and quickly make changes and submit pull request  (i.e. that you are submitting on most recent files).


An EBML Document should only have EBML Elements

But it MAY has some extra data as seen in the streaming case.

Maybe we could say: An EBML Document consists one EBML Header Element immediately followed by one Root Element and does not contain any other data.

I think the issue is rather how normative that is and what happens to data not fitting the EBML structure.

I disagree with this change. With MUST, then the demuxer can expect that the Root Element immediately follows the EBML Header, but the change to SHOULD implies that <EBML/>{junk}<Segment/> is not breaking a mandate.

This is from the review of Ben Campbell of draft 08
§11: "An "EBML Document" consists of "EBML Elements" and MUST
NOT contain any data that is not part of an "EBML Element"."

That contradicts text in §8.7 that says you can do this in streaming use cases.

And indeed I know GStreamer used to (maybe not anymore) start sending the data even in the middle of an element when live streaming.

Maybe better wording is needed but I don't see the contradiction.
For me, EBML Document is not an EBML Element. An EBML Document is series of an EBML Header Element (an EBML Element) immediately followed by a Root Element (another EBML Element), so an EBML Document is basically 2 EBML Elements of particular meaning (header and root). What I want to avoid is to allow to consider a data stream such as <EBML Header/>LOTS OF GARBARGE<Root Element>. To me <EBML Header/><Root Element> complies with section 11, even if that Root Element contains garbage data as it may be allowed to do so.
tl;dr I'm ok with garbage in an EBML Element but would prefer not to allow non-EBML Element data with an EBML Document. If non-EBML Element data was allowed in an EBML Document, then junk<EBML Element/>junk<Root Element/>junk would be allowed and we'd never be able to say what is the beginning of end of an EBML Document within a stream and we'd lose the presumption that an EBML Header should be followed by the Root Element.

OK but that's not how GStreamer used to do it for live streaming. It would send the EBML Header, then the Segment "headers", the Cluster "header" and then parts of blocks it's already sending to other clients. That's the garbage we are talking about.
I think nowadays we shouldn't allow this. It's fine for a Matroska-aware server to hold data until a new keyframe block to send to the client. That's what VLC does when Chromecasting for example. Hence proposal #254 instead of this one.

Closing as I think we should use #254


New scope lead to losing two-way binding

Im using mass-autocomplete directive to wrap all my page, as I have autocompleted input everywhere in the page.
Problem is that the directive creates a child scope.
So all the variables that have been initialized by the controller are shaded by a new variable in the child scope. When I modify a variable with an input for example, i only change the child version, not the 'real' one.
The problem doesnt occur when the variable is an object, as only the reference is copied in the child scope.
See example here: http://jsbin.com/tevagiciji/edit?html,js,output
Do I have a wrong usage of mass-autocomplete ? How to overcome this problem ?
Thank you

Hey @OoDeLally,
As you said, primitves are not inheritaed by a child scope. If you want your child scope to have access to variables defined on the controller (or any other non isolated parent scope) you need to defined it as an object.
I dont see in your example any mass autocomplete suggestions box (e.g mass-autocomplete-item directives). Maybe explain a bit more about the actual use case.
Haki.

It's not per se a mass-autocomplete problem. It's just that it creates a new scope, so I lose all my primitive. That's why I didn't bother adding an actual usage of the autocompletion.
Is it bad practice to wrap the whole page into the mass-autocomplete directive?

The directive was designed to wrap the portion of the page the need to offer auto complete, so no, you are probably using it correctly. You can see in the example page that most of the page is wrapped in a mass-autocomplete directive.

Yes, I'm still beginner at Angular, so I never came across this problem. But it appears it is a fairly common question, so much so that there are articles about it, that say "dont use primitives within a ng-model". That's the solution.
https://github.com/angular/angular.js/wiki/Understanding-Scopes
https://www.youtube.com/watch?v=ZhfUv0spHCY&feature=youtu.be&t=30m
Thanks for your help @hakib . Cheers!


Modify the resolution of viewer interface

Required Info

Camera Model
{ D435 }

Firmware Version
(RealSense SDK 2.0)

Operating System & Version
{Win 10

Kernel Version (Linux Only)

Platform
PC

SDK Version
{ 2.0}

Language
{C }

Segment
{others }

Issue Description
hello, interface of Intel RealSense Viewer gets bigger and I can't see the whole interface on the screen. What should I do to restore it to its original interface size?
Thank you !

Can you share a screen-shot? Perhaps this is affected by global UI scaling set-up in Windows settings?

Thank you,
If you enter %APPDATA% + Enter in file Explorer, you should see file realsense-config.json in that folder.
Try to delete it and restart the program. This will reset any persistent settings to defaults.

Thank you for you help! It can work properly.

Great! Sorry for the inconvenience. Most likely incorrect monitor dimensions were captured from one of the previous runs

In my case this persists even deleting the file


_ignore with command history not compatible with deck v1.19.1

When running our generated files with the command history feature, deck errors that the _ignore property is not allowed.

That’s a deck bug.

as a workaround, the patch command can be used to remove the history;
kced patch --selector "$" --value "_ignore:"

begs the question; if this needs a deck fix, should we update the key at the same time? so instead of abusing "_ignore" (which was temporary anyway), we introduce something like "_history" ?

As discussed, we should remove this feature until deck has proper support for "ignored" annotations in the file.  Otherwise we are building invalid deck files based on the current deck behavior.
I agree, we should have a discussion w/ the deck team on a better way to support this.


fix: improve handling of tool_call_delta

Please describe the purpose of this pull request.
This pull request is aimed at improving the handling of tool_call_delta in the openai.py script. It ensures that existing data is not overwritten unintentionally and that new arguments are appended to existing ones, rather than replacing them.
How to test
To test this PR, you can run the script and observe the behavior of the tool_call_delta handling. You should see that existing data is not overwritten and that new arguments are appended to existing ones. You can also add unit tests to verify this behavior.
Have you tested this PR?
As an AI, I'm unable to run tests. However, I recommend running unit tests and manually testing the script to ensure the changes work as expected.
Related issues or PRs
This PR doesn't relate to any existing issues or PRs in the repository.
Is your PR over 500 lines of code?
No, this PR is not over 500 lines of code. It only modifies a few lines in the openai.py script.
Additional context
This PR improves the handling of tool_call_delta in the openai.py script, making it more robust and less prone to errors. It's a small but important improvement to the codebase.

This assert is triggering on my end - it looks like it may be expected to see an overwrite in the incoming stream? Or maybe we should just check that the id == new id? I haven't taken a close look at the SSE pieces yet so I'm not sure exactly.
Hit enter to begin (will request first MemGPT message)

💭 User initiated activity detected. First interaction with Chad. Open
with a gentle inquiry. Make it engaging for prolonged interaction.

  File "/Users/loaner/dev/MemGPT-2/memgpt/llm_api/openai.py", line 196, in openai_chat_completions_process_stream
    assert accum_message.tool_calls[tool_call_delta.index].id is None, "Overwriting existing data"
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Overwriting existing data
? Retry agent.step()? (Y/n)

I see, trying to figure out. Thx.


The banner is not full width

This is a Bug Report
the banner is not full width on the community page
Problem:

Proposed Solution:
add styles to the main file
newcommunity.css
Page to Update:
https://kubernetes.io/community/
/assign

resolve on 28.04.2020
/close


librdkafka Problem on Windows 11 with Parallels on Mac M2 Processor

Description
I moved to Mac M2 and installed Windows 11 on Parallels.
I have several projects use confluent kafka 2.02 version. All projects works on x64 windows machines and docker but fails to load kafka libraries on M2.
I try to run a .net core 6 project and I get
System.DllNotFoundException: 'Failed to load the librdkafka native library.'
I try to run .net framework 4.8 project and it gets
System.ComponentModel.Win32Exception: %1 is not a valid Win32 application

Error while loading librdkafka.dll or its dependencies from C:\...\bin\librdkafka\x64\librdkafka.dll. Check the directory exists, if not check your deployment process. You can also load the library and its dependencies by yourself before any call to Confluent.Kafka]
   Confluent.Kafka.Impl.Librdkafka.LoadNetFrameworkDelegates(String userSpecifiedPath) +588
   Confluent.Kafka.Impl.Librdkafka.Initialize(String userSpecifiedPath) +188
   Confluent.Kafka.Producer`2..ctor(ProducerBuilder`2 builder) +440
   Confluent.Kafka.ProducerBuilder`2.Build() +80

Strange thing is I have "librdkafka.dll" in that folder.
I tried to install libdirkafka library by vcpkg on windows and copied lib files to bin and project root folder but didn't help.
I installed all the waiting windows updates, it didn't help too.
I'm using Microsoft Visual Studio Community 2022 (ARM 64-bit) - Current  version.
How to reproduce
Use Mac M2 machine and install windows 11 on Parallels.
Try to run this code:
var consumer = new ConsumerBuilder<Ignore, string>(new ConsumerConfig
            {
                BootstrapServers = ..,
                SaslUsername = ..,
                SaslPassword = ..,
                SaslMechanism = Plain,
                SecurityProtocol = SaslPlaintext,
                GroupId = ..,
                EnableAutoCommit = true,
                StatisticsIntervalMs = 5000,
                SocketTimeoutMs = _5000,
                SessionTimeoutMs =  5000,
                AutoOffsetReset = AutoOffsetReset.Earliest,
                AllowAutoCreateTopics = true
            }).Build()

or
            var conf = new ProducerConfig
            {
                BootstrapServers = ..,
                SaslUsername = ..,
                SaslPassword = ..,
                SaslMechanism = Plain,
                SecurityProtocol = SaslPlaintext,
                SocketTimeoutMs = 5000,
                MessageTimeoutMs = 5000,
                EnableDeliveryReports = true
            };

            _producer = new ProducerBuilder<Null, T>(conf).Build();

Basic example to run:
using Confluent.Kafka;

Console.WriteLine("Hello, World!");

var conf = new ProducerConfig
{
    BootstrapServers = ..,
    SaslMechanism = SaslMechanism.Plain,
    SecurityProtocol = SecurityProtocol.Plaintext,
    SaslUsername = ..,
    SaslPassword = ..,
    EnableDeliveryReports = true
};
//fails here
var _producer = new ProducerBuilder<Null, string>(conf)
.Build();
//fails here.
_producer.Produce("test", new Message<Null, string> { Value = "test" });

Checklist
Please provide the following information:

[ ] A complete (i.e. we can run it), minimal program demonstrating the problem. No need to supply a project file.
[X] Confluent.Kafka nuget version.
[ ] Apache Kafka version.
[X] Client configuration.
[X] Operating system. Windows 11 over Mac M2 processor
[X] Provide logs (with "debug" : "..." as necessary in configuration).
[ ] Provide broker log excerpts.
[X] Critical issue.

Currently, librdkafka is bullt for the following runtimes: linux-x64, linux-arm64, osx-x64, osx-arm64, win-x64 and win-x86. There's no runtime built for arm64 for Windows yet for some reason. I've created a discussion here, if anyone is facing this issue, please upvote it so we can get more attention to it faster. Thanks :D

@anchitj Any update on this?

Same happens on macOS ARM64 with .NET 8.


[WIP] Cpe matching

Implements CPE matching code. This involves:

Class for CPE dataset
Actual CPE matching
Some further tests

What remains to be done

[x] The links in serialized json don't work -- encoding issue
[x] Fix encoding error of csv/html resources in tests
[x] Add rapidfuzz as a dependency into requirements
[ ] Prepare a function to manually validate the findings of the CPE matching
[ ] Add relaxed version of matching when no suitable CPE version is found
[ ] Fine-tune the match threshold
[x] Add class for handeling CVE dataset
[x] Add functions to correlate CC certificates with CVEs
[ ] Delete old notebook once done
[x] Document the exact matching procedure somewhere
[ ] Improve parsing of certificate version candidates
[ ] Compare whether to parse with CPE title or cpe-item field
[ ] Prefer more general versions
[ ] Add simple tests for CPE
[ ] Add simple tests for CPEDataset
[ ] Add simple tests for CVE
[ ] Add simple tests for CVEDataset

The CPE matching procedure documented at https://github.com/crocs-muni/sec-certs/wiki/CommonCriteria-certificate-to-CPE-matching-algorithm

@petrs this might be of an interest to you. There's a function that we will use to manually label candidate CPE matches. It's designed so that it handles most of the stuff automatically to keep the labeling as painless as possible. For each of the certificates you get prompted like this:
[0/1] Vendor: NetIQ, Incorporated, Name: NetIQ Access Manager 4.5
	- [0]: CPE(uri='cpe:2.3:a:netiq:access_manager:4.5:sp1:*:*:*:*:*:*', title='NetIQ Access Manager 4.5 Service Pack 1', version='4.5', vendor='netiq', item_name='access manager')
	- [1]: CPE(uri='cpe:2.3:a:netiq:access_manager:4.5:hotfix1:*:*:*:*:*:*', title='NetIQ Access Manager 4.5 Hotfix 1', version='4.5', vendor='netiq', item_name='access manager')
	- [2]: CPE(uri='cpe:2.3:a:netiq:access_manager:4.5:-:*:*:*:*:*:*', title='NetIQ Access Manager 4.5', version='4.5', vendor='netiq', item_name='access manager')
	- [X]: No fitting match
Select fitting CPE matches (split with comma if choosing more):

and you are expected to provide input, anything of the following will do:

1
1,2,3
1, 2, 3
'X'
'asdasdsad' -> Will repeat until you answer :)

The progress is periodically save so that you don't have to label all certificates at once. Only the so-far-unlabeled certificates are of course shown.

@J08nY not sure how much you feel for the review. The code probably is not perfect, but if you'd manage to point to major problems, that would be nice.
I think that you at least want to take a look at examples (there's also a readme file) and cpe matching procedure description at wiki.

Overall just requested minor changes w.r.t. some configuration handling, naming of functions and the like.
What I would like to see (but is not in scope of this PR, but this PR touched some of the related thing so I bring it up) is that there are not just "examples" using the new codebase but a full replication of the old command-line scripts, such that someone can use the tool without writing any Python code. AFAIK that is a blocker before removing the old codebase (to reach feature parity and have a simple-to-use CLI tool that produces the JSONs).

Apart from minor missing stuff (that you pointed out to me), the cc_oop_demo.py is actually the full replication of the code. Takes several hours to run and does all of the following:

Download CC data from csv and html
Download pdf data related to the parsed certificates
Convert all pdfs to txt
Analyze keywords in all txts
Download CPE dataset and compute candidate CPE matches
(expert knowledge) manually label CPE-rich certificates
Download CVEDataset
Correlate CVEs with CPEs

Once I resolve the missing stuff, we're happy to move the old API to some stale branch.

@J08nY thanks for pointing to obvious errors. Fixed them all and merging. 🎉


Fashion-demo: Make model file name configurable in seldon-deployment

With the model file name being configurable it is possible to re-use
the seldon-deployment part of the fashion demo for other models.
Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

@Tomcli


fix(workspace): insertNote and templateHierarchy yaml config validators

What is this change?
insertNote doesn't have an entry in the dendron-yaml.validator.json config, and templateHierarchy was moved under workspace.
Questions
This PR is in draft state because:

I'm not sure what I need to do when it comes to tests
What should InsertNoteConfig have for the description? I noticed it doesn't have an entry in the Dendron wiki here, even though it is listed in the config example on the page: https://wiki.dendron.so/notes/F9LWJEjscrGkxnYi2JNby/
Are both insertNote and templateHierarchy required? So should they be in the required lists?
Should templateHierarchy be added to the Dendron wiki:

Should the definition be the same as in the validator:

Default template hierarchy used when running commands like Apply template

Pull Request Checklist
If you are a community contributor, copy and paste the PR template from Dendron Community PR Checklist and add it to the body of the pull request.
If you are a team member, copy and paste the template from Dendron Extended PR Checklist.
To copy the template, click on the Raw button on the gist to copy the plaintext version of the template to this PR.

Commit

[x] make sure the commit message follows Dendron's commit style
[x] if this pull request is addressing an existing issue, make sure to link this PR to the issue that it is resolving.

NOTE: make sure to read Addressing open issues

Code

[x] code should follow Code Conventions
[x] sticking to existing conventions instead of creating new ones

Tests

[ ] Write Tests
[ ] Confirm existing tests pass
[ ] Confirm manual testing
[ ] Common cases tested
[ ] 1-2 Edge cases tested
[ ] If your tests changes an existing snapshot

[ ] Update the Snapshot

Docs

[ ] if your change reflects documentation changes, also submit a PR to dendron-site and mention the doc PR link in your current PR (NOTE: submit the PR against the dev branch of the dendron-site repo)

[ ] does this change introduce a new or better way of doing things that others need to be aware of? if so, an async should be created and a process added in Development or Packages

closing as per our discussion about the updated options


Add EvaluationResult as rule evaluation result.

Summary
This change is only meant to show how the code would change in case we wanted to refactor evaluation engines to return a more structured result rather than a more limited error.
Change Type
Mark the type of change your PR introduces:

[ ] Bug fix (resolves an issue without affecting existing features)
[X] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[X] Refactoring or test improvements (no bug fixes or new functionality)

Testing
Unit tests were updated according to the change.
Review Checklist:

[X] Reviewed my own code for quality and clarity.
[ ] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[X] Checked that related changes are merged.

coverage: 55.364% (+0.007%) from 55.357%
when pulling 8011c292cd7580edd8ec007901622bca9ba4e675 on feat/eval-engine-evaluation-result
into ee82c4bba036cda57679368d06adce032a396e61 on main.


Shapely Support For Nuitka

I was trying to build Geopandas and I noticed that it could not resolve the shapely dependency. Shapely is a library that is a dependency for many GIS libraries (GDAL, geopandas, etc...).
python -m nuitka --mingw64 --standalone --include-package=shapely --jobs 12 nuitka_test.py

# Python code
import shapely
import shapely.geos
import ctypes

The executable is compiled successfully, but crashes when it tries to locate the dependencies.
          Traceback (most recent call last):
          File "F:\Sliding_Windows\nuitka_test.dist\nuitka_test.py", line 49, in <module>
          File "<frozen importlib._bootstrap>", line 983, in _find_and_load
          File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
          File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
          File "F:\Sliding_Windows\nuitka_test.dist\shapely\geos.py", line 149, in <module shapely.geos>
          File "F:\Sliding_Windows\nuitka_test.dist\ctypes\__init__.py", line 364, in __init__
OSError: [WinError 126] The specified module could not be found.

Seems like Nuitka could not locate some of the dependencies for the build. I have looked through other posts and some have expressed a similar problem. Is there something like a config.py or yaml that allows users to add hidden dependencies?

Yes, this will be a DLL missing, I will look into it.

This is fixed on the factory branch: https://nuitka.net/doc/factory.html

This is currently on the develop branch and supposed to be working.

Will check it out. Thanks.
On Mon, Feb 7, 2022 at 7:43 PM Kay Hayen @.***> wrote:

This is currently on the develop branch and supposed to be working.
—
Reply to this email directly, view it on GitHub
https://github.com/Nuitka/Nuitka/issues/1153#issuecomment-1031429124,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHXFNYJYKTNSJLKSH6DLJTUZ65ARANCNFSM5AGQ4ODQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

This is part of the 0.7 release now.


Prep for Business Analyst arrival

Title of ticket:
DOD

[ ] Determine which groups we will map for (pilots, WG? - processes for managing lifecycle of request). Personals team, Generals team, etc. Clients without a central point of contact
[ ]
[ ]
[ ]
[ ]

Business Coord meeting Feb 14. Determine:

map what we've built
map client experience
map what we have next, or more client experience?


Accelix issue

Not really an issue, but you loose stamina when accelix is active, not when it is being used. I feel like stamina should only deplete when you are moving with accelix and it regenerates when you arent. Also you loose and gain stamina way, way too quickly, like one second depleted, one second restored.

also, when fixing, also take into consideration issue #85

Duplicate of #96

Duplicate of #96


Downloading YouTube doesn't work.

[v] I think my problem is NOT with youtube-dl
[v] Bug report
Bug report
2023-02-19 21:30:43,714-DEBUG-Worker_1-ERROR: [youtube] xqovGKdgAXY: Unable to extract uploader id; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
2023-02-19 21:30:43,715-DEBUG-Worker_1-Child process exited with non-zero code: 1
What operating system do you use ?
Windows  10
List of actions to perform to reproduce the problem:
What is the expected behaviour ?
What happens instead ?

The yt-dlp command line command downloads fine.

With yt-dlg, it suddenly fails to download.

For reference, I put the following version of yt-dlp in the folder
https://github.com/yt-dlp/yt-dlp/releases/tag/2023.02.17

Update to the latest version of yt-dlp CLI Backend version 2023.02.17 go to Setting -> Update. Try download the URL again.

Logs:

Thank you for your response. I deleted the yt-dlp that I manually put in the folder and updated it from yt-dlg and tried running it. It works fine.
I thought the auto-update was out of date (now that I checked, it's up to date). Now I'm going to use auto-update

Please, if work as expected, feel free to close the issue. Thanks for the feedbacks!


Develop distributed counter.

public class ConsulClusterManager {
@Override
    public void getCounter(String name, Handler<AsyncResult<Counter>> resultHandler) {
// has to be implemented.
    }
}

Consider : http://alesnosek.com/blog/2017/07/25/check-and-set-operation-and-transactions-in-consul/


fix MicrobatchExecutionDebug message

Resolves #11111
Problem
We weren't logging the batch information for microbatch debug logs, instead we were logging a pointer to the function which gives the batch description information 🙈
Example:

Solution
Simply call the function instead of pointing at it 🙃
self.describe_batch => self.describe_batch()
Result

Checklist

[X] I have read the contributing guide and understand what's expected of me.
[X] I have run this code in development, and it appears to resolve the stated issue.
[X] This PR includes tests, or tests are not required or relevant for this PR.
[X] This PR has no interface changes (e.g., macros, CLI, logs, JSON artifacts, config files, adapter interface, etc.) or this PR has already received feedback and approval from Product or DX.
[X] This PR includes type annotations for new and modified functions.

The tests are failing due to a bug when there is only one batch. Fix is in https://github.com/dbt-labs/dbt-core/pull/11113. Once that is merged, we'll update this PR and then proceed.


Documentation missing -s option

Dear,
referring to
this
the option -s is not documented in Readme usage.
So
helm release CHART - Would determine the next tag for the chart and update the Chart.yaml
is not true. Without passsing the -s flag it will update both Chart and values.
Thanks,
Ivan

Thanks, does this fix it properly - https://github.com/sstarcher/helm-release/commit/a2f4cd07966da2a485a1f7a5e862465740c7b81b


feature: show line diff summary

Hi,
Thank you for creating this extension. It is very useful.
I want to see if it is possible to show the summary of total line differences between the two folders.
Like how many lines are added, modified, or deleted.

Hi, I'm glad to hear!
This extensions relays on dir-compare and unfortunately, seems like number of lines stat is not available.
@gliviu what do you think?

Hello,
Line based statistics are not supported by dir-compare out of the box.
To implement this scenario you will have to replace the default compare by content implementation. Take a look at Custom file content comparators.
You will have to provide a new comparator that works similar to a diff tool and is able to understand when lines were removed or added.
The new comparator will update something like a global object that holds the created/modified/deleted line counts.
Maybe you could use a project like diff or similar to provide this logic.


[RFC] [breaking-change] don't depend on GCC by default

It's very likely that the thumb targets will soon switch to rust-lld as their default linker (see
rust-embedded/wg#160). If we want to achieve the goal of not depending on GCC, by default, to
build Cortex-M applications then we also have to make core crates like this one not depend on GCC by
default. This RFC is exactly about that.
I propose that in the next minor (breaking) release, v0.6.0, we add an opt-in Cargo feature named
"exception-frame" that changes the signature of the HardFault handler as it's shown below:
// "exception-frame" disabled
#[exception(HardFault)]
fn handler(/* no `ExceptionFrame` here */) -> ! {
    // ..
}

// "exception-frame" enabled
#[exception(HardFault)]
fn handler(ef: &ExceptionFrame) -> ! {
    // ..
}

The rationale for this change is that providing ExceptionFrame information to the handler requires
an external assembly file and that
makes this crate depend on GCC. By making this information opt-in this crate would, by default, work
w/o GCC being present. If the user wants the ExceptionFrame information they'll need to have GCC
installed.
cc @rust-embedded/cortex-m @hannobraun @crawford

Sounds great!

I think this is a good compromise.

Seems reasonable to me.

@adamgreig I believe that if we implement that in Rust it would not be reliable. If it's all in Rust then the compiler can inline UserHardFault into HardFault which can cause the a function prelude to be generated and the prelude would modify SP before it's read.
We could mark UserHardFault as inline(never) and that may make it more reliable.

This will also affect #77.

#77 seems complex enough that a Rust implementation would very likely not work properly when unoptimized. In that mode the compiler makes more use of the stack which would modify SP before it's read.

It's a shame rust-lang/rust/issues/32408 isn't stabalised yet or we could just use #[naked]. It's in nightly.
Anyway, I think your suggestion of #[inline(never) on UserHardFault, and a HardFault defined in lib/src.rs which just reads MSP, casts to a &ExceptionFrame, and passes to UserHardFault, which does the same type-checking and then calls the user-provided function as currently, might work. I'll have a play tonight with some long, stack-using user handlers and see how well it works. If so we could retain this feature for stable rust without any asm which would be nice.

#77

I guess we can investigate after resolving the issue here.

I've disabled asm.s, and then implemented my own HardFault (which could live in cortex-m-rt/src/lib.rs once msp can be read from core::arch::arm):
#[no_mangle]
pub unsafe extern "C" fn HardFault() -> ! {
    extern "C" { fn UserHardFault(eh: &ExceptionFrame) -> !; }
    let ef: &ExceptionFrame = &*(cortex_m::register::msp::read() as *const _);
    UserHardFault(ef);
}

exception!(HardFault, hf);

#[inline(always)]
fn hf(ef: &ExceptionFrame) -> ! {
    if ef.pc == 0x0700_0000 {
        loop { unsafe { core::ptr::read_volatile(0x0000_1234 as *const u32); } }
    } else {
        loop { unsafe { core::ptr::read_volatile(0x0000_1238 as *const u32); } }
    }
}

I marked UserHardFault as #[inline(never)] in the exception!() macro.
I can then trigger a HardFault with:
fn crasher() {
    let x: extern "C" fn() = unsafe { core::mem::transmute(0x07000000 as *const u32) };
    x();
}

The generated code in release is identical to the current external assembly solution except for the trailing UDF in HardFault:
080003b2 <HardFault>:
 80003b2:	f3ef 8008 	mrs	r0, MSP
 80003b6:	f000 f804 	bl	80003c2 <UserHardFault>
 80003ba:	defe      	udf	#254	; 0xfe

080003c2 <UserHardFault>:
 80003c2:	6980      	ldr	r0, [r0, #24]
 80003c4:	f1b0 6fe0 	cmp.w	r0, #117440512	; 0x7000000
 80003c8:	d103      	bne.n	80003d2 <UserHardFault+0x10>
 80003ca:	f241 2034 	movw	r0, #4660	; 0x1234
 80003ce:	6801      	ldr	r1, [r0, #0]
 80003d0:	e7fd      	b.n	80003ce <UserHardFault+0xc>
 80003d2:	f241 2038 	movw	r0, #4664	; 0x1238
 80003d6:	6801      	ldr	r1, [r0, #0]
 80003d8:	e7fd      	b.n	80003d6 <UserHardFault+0x14>

and in debug, we branch to read MSR but without touching the stack:
0800021a <_ZN8cortex_m8register3msp4read17he228d82a29c1abfbE>:
 800021a:       f3ef 8008       mrs     r0, MSP
 800021e:       4770            bx      lr

080003f6 <HardFault>:
 80003f6:	f7ff ff10 	bl	800021a <_ZN8cortex_m8register3msp4read17he228d82a29c1abfbE>
 80003fa:	f000 f832 	bl	8000462 <UserHardFault>
 80003fe:	defe      	udf	#254	; 0xfe

08000462 <UserHardFault>:
 8000462:	6980      	ldr	r0, [r0, #24]
 8000464:	f1b0 6fe0 	cmp.w	r0, #117440512	; 0x7000000
 8000468:	d104      	bne.n	8000474 <UserHardFault+0x12>
 800046a:	f241 2034 	movw	r0, #4660	; 0x1234
 800046e:	f7ff fec8 	bl	8000202 <_ZN4core3ptr13read_volatile17ha191faccd0dd90d3E>
 8000472:	e7fa      	b.n	800046a <UserHardFault+0x8>
 8000474:	f241 2038 	movw	r0, #4664	; 0x1238
 8000478:	f7ff fec3 	bl	8000202 <_ZN4core3ptr13read_volatile17ha191faccd0dd90d3E>
 800047c:	e7fa      	b.n	8000474 <UserHardFault+0x12>

It seems to work as required. Even with a bunch of silliness I can't get it to try and touch the stack in the UserHardFault prologue, but anyway since that method is inline(never) I wouldn't expect it to matter.
That all said I have discovered that in debug mode my gdb crashes during a HardFault unless the debugger is set to intercept it, both on current master and with this change. Fine on release. Maybe a gdb bug, who knows...

I have proposed an alternative that doesn't require a breaking change or adding a new Cargo feature in RFC #95.


1.1.0 (ADAS) - BUG (high) MySQL databases showed 800 cmdlets and only 20 processes there .. some actions may have executed and then  rule was stopped

BUG (high) MySQL databases showed 800 cmdlets and only 20 processes there .. some actions may have executed and then  rule was stopped
Question – what is the expected behavior on server restart?
As of today, it doesn't seem very consistent

In trunk the issue has been fixed, it behaviors in the following way: all the pending cmdlets of that rule will be dropped.


Add E2E Tests

I am still working on the corresponding GHA workflow, but this can works locally when you have a kubeconfig file from a LKE.
Update:
GitHub workflow for this is actually quite complicated because we have to handle test image cleanup after the test, and there is not a official GitHub action or a simple docker command that can achieve this. We might have to invoke Docker Hub API directly for removing it. Would like to hear more thought on this.
hub-tool maybe an option to cleanup the images, but currently missing CI friendly login feature.
How to run

export KUBECONFIG=/path/to/your/lke/kubeconfig
export TEST_IMAGE_REPO=your-repo
export TEST_IMAGE_TAG=your-tag
go test ./e2e -count=1 -v

@zliang-akamai just wondering if you've consider using Chainsaw as an e2e framework? I've used it on Provider Ceph and I believe it has been implemented in COSI Driver and CAPL recently too. Might be worth checking out if you haven't already. :smiley:

@nolancon thanks for the suggestion! I will can take a look for sure.

@nolancon @mhmxs, so decorator requires the Linode metadata API to work, so it won't just work in a local cluster. I think another way is mocking both k8s and Linode Metadata APIs in some simple Go test cases, but it may be more like unit tests rather than e2e since no real APIs are used. Does it sound good to you guys?

Here is an example of CAPL management cluster: https://github.com/linode/linode-blockstorage-csi-driver/pull/163/files#diff-0908e8aad04dc51bce3a028b466879848a0cf5e57f2ee1af8bf08a599c600e23 and the one to create the E2E cluster on Linode: https://github.com/linode/linode-blockstorage-csi-driver/pull/163/files#diff-1bf5be570b019689c0945a7ad6bbbe07e8a05769685c47c07ec3a67a71d74d55
Mocking is only an option for unit tests. I did a short research, and i don't see any other option to properly test this project is how you did. But I strongly suggest to swap to CAPL and Chainsaw, because both would be used more widely.
If you have any question please feel free to reach me out.

For tooling management we use a mixed Makefile+Devbox combo, so it would be nice, if you can follow this style. (linked projects contain the examples)

@mhmxs Thank you! I will follow the style you mentioned. Mocking API is option one, and I recently learned about local (in-cluster) registry option, and I am going to do some research. Do you think a local image registry in the cluster can be the registry that the cluster pulls from?

Do you think a local image registry in the cluster can be the registry that the cluster pulls from?

@ChihweiLHBird The local registry has local url. So you have to

pull every image
-retag them to local
-push to local
edit every manifest before apply to replace images to local version
(- you have to ensure to cache images on github action, otherwise the full stuff doesn't make much sense if layers are not cached)

@nolancon ?


Java program to find first non-repeating character in a string.

link the issue.

you cannot add 2 codes in same PR.


Add popup-select views

Especially useful in ListView, a one-line SelectView that shows a MenuPopup would be a nice addition.

Added in 64d176ffa5da9840bc70f5b036fb17fdac4db3ce.
Some hackishery had to be done for the popup placement, we might want some cleaner framework eventually to have well-aligned layers.


ECMA-334:2022 not on TC49-TG2 web page

ECMA-334 6th edition was published in June 2022 but it is not listed at https://www.ecma-international.org/task-groups/tc49-tg2/?tab=scope, in the table that compares Microsoft C# versions, ECMA standards, and ISO/IEC standards. Should it be added?

Thanks; this has been updated as you suggested.


At which point in login sequence can one start sending requests?

A tdlib-based client will go through a login sequence where authorization state will go from authorizationStateWaitTdlibParameters, authorizationStateWaitEncryptionKey, eventually reaching authorizationStateReady, and connection state will go from connectionStateConnecting to connectionStateUpdating to connectionStateReady.
I'd like to ask, at which point in login sequence can one start sending "normal" requests, such as sendMessage, downloadFile etc.? I don't want to experiment because experiments don't guarantee that observed behaviour will not change in future versions of tdlib. What's the official answer?

Ignore connection state updates, they are to show a human-readable hint status and are completely irrelevant.
You can send most requests only if the authorization state is authorizationStateReady. If a request is documented as "Can be called before authorization", it can be called any time before authorization and TDLib will process it as soon as possible. Authentication requests documented as "Works only when the current authorization state is ..." can be called in the corresponding authorization states.

Thanks for clarification!


fix: app crash when opening split view

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/50246
PROPOSAL:
Tests

Start a chat
Split any expense
Open expense preview
Verify that: app is not crashed

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

Start a chat
Split any expense
Open expense preview
Verify that: app is not crashed

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/3c70f3d5-a24b-41c4-8fde-bcad411598c1

Android: mWeb Chrome
https://github.com/user-attachments/assets/13af9dc7-38a8-465a-a707-9a227d17b019

iOS: Native
https://github.com/user-attachments/assets/91619fd8-be19-47af-85cc-27cae65d0871

iOS: mWeb Safari
https://github.com/user-attachments/assets/334e422b-8df5-453d-ae77-65e54feb9a3a

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/d9d1a9cb-6131-418a-9f83-2314b65f4cc8

MacOS: Desktop
https://github.com/user-attachments/assets/529c8647-8872-4409-8313-c409b6f166f0

@eVoloshchak can we add you to the linked issue here so that we've got parity with assignments between the issue and PR?

@NikkiWines, sure thing!

@daledah, could you please also include the test steps (and screen recordings of testing) from https://github.com/Expensify/App/pull/50327?

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@daledah, are you able to reproduce the original issue using the latest main? This seems to be working for me without the fix, could you double-check if it's still reproducible for you?
https://github.com/user-attachments/assets/74d89575-d0e1-4c73-9f5f-4b5935311d5d

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


Added UserService with User Info and Preferences API endpoints

Hi,
I like the way you've organized the different services on the API in this bindings.
It's a nice base for a trading bot.
Great work!
I noticed some of the API endpoints weren't implemented, so I built a UserService.
I tried to follow the style of the rest of the codebase.
Let me know what you think.

nice, works for me. Thanks for adding this. I started this out a while back and didn't get around to finishing all the endpoints so this is really appreciated :)


use strict=False

from fuzzy_json.decoder import loads

test_case = '{"subject": "Introducing the Mandelic Acid and Allantoin Acne-Care Calming Ampoule", "body": "Dear valued client, \n\nWe are excited to announce the launch of our latest breakthrough product - the Mandelic Acid and Allantoin Acne-Care Calming Ampoule. This innovative serum is set to revolutionize the way we tackle acne, acne scars, and various skin concerns, delivering a transformative skincare experience like never before.\n\nAt MeiJia Beauty Co. Ltd., we are committed to providing high-quality skincare solutions that meet the diverse needs of our customers. The Mandelic Acid and Allantoin Acne-Care Calming Ampoule is the epitome of our dedication to excellence. This exceptional serum is meticulously formulated to target common skin issues and offer a comprehensive approach to achieving clear, radiant, and blemish-free skin.\n\nHarnessing the power of nature\'s finest ingredients, our ampoule combines mandelic acid and allantoin to ensure optimal results in addressing acne, acne scars, and uneven skin tone. With regular use, this ampoule whitens spots, smooths out acne scars, improves skin absorption rate, and provides a soothing and moisturizing effect. It is specially formulated to calm sensitive skin and relieve redness, making it suitable for all skin types.\n\nThe key ingredient, mandelic acid, has been scientifically proven to effectively improve the abnormality of hair follicle keratin, control sebum secretion, and combat metabolic acne. Additionally, allantoin, a powerful soothing agent, further enhances the efficacy of the ampoule, ensuring a truly transformative skincare experience.\n\nWe invite you to visit our official website at [insert contact info url] to learn more about the Mandelic Acid and Allantoin Acne-Care Calming Ampoule and its transformative benefits. Discover the power of this exceptional serum and unlock the secret to clear, radiant, and blemish-free skin.\n\nFor any media inquiries, please feel free to contact our spokesperson, 陳誠松, at [insert contact info email]. You can also find more information on our website at [insert contact info url].\n\nThank you for your continued support and trust in MeiJia Beauty Co. Ltd. We look forward to providing you with transformative skincare experiences.\n\nBest regards,\n[Your Name]\nMeiJia Beauty Co. Ltd."}'
result = loads(test_case, auto_repair=True)

這個 test case 還是沒過 我把 \n -> \\n 再跑一次就能過了

>>> json.loads('{"a": "\n"}', strict=False)
{'a': '\n'}

Originally posted by @lucemia in https://github.com/livingbio/gstudio/issues/13229#issuecomment-1774613945

If strict is false (True is the default), then control characters will be allowed inside strings. Control characters in this context are those with character codes in the 0–31 range, including '\t' (tab), '\n', '\r' and '\0'.

https://docs.python.org/3/library/json.html


Restrict upload quota according to plan

@hackerkid thanks for working on this!  Overall, this looks great, and I merged all but the last commit.  I posted comments on the last one (and also pushed back to it to fix the math bug I noted).
It's possible based on the resolution to my comments above that we'll want to remove the second-to-last commit (the one that adds a new API endpoint) too as part of restructuring this to avoid that glitch, but that's OK, since the more I think about this the more it seems like we should just fold this into the existing "attachments" endpoint.
Finally, we should remember to do a manual migration of upload_quota_gb on existing organizations when we roll this out; otherwise those organizations will never see this alert as their upload_quota_gb will always be None.

@timabbott I have removed the separate endpoint for fetching upload_space_used. Instead of that I am now passing the info via /attachments endpoint as you suggested. I have also updated the attachment  event system to include upload_space used so that the uploaded files UI would be updated.

Nice, merged, thanks @hackerkid!  @rishig FYI.


Add tests for WritableBuffer extensions and rename WriteAscii => WriteAsciiNoValidation

Add tests for WritableBuffer.{WriteNumeric, WriteAscii}
Rename WriteAsciiNoValidation to make it clearer that it does not perform ascii validation.
Also, this changes the xunit display settings to make it easier to view tests in Test Explorer. (cref microsoft/vstest#623 )

Addresses https://github.com/aspnet/KestrelHttpServer/issues/1508

Also, this changes the xunit display settings to make it easier to view the write test in Test Explorer

TFFT 👍

@halter73 ok if I merge, or should I wait for your transport refactor #1551?

Rebased. :watch: CI


No analytics after updating

I've recently upgraded to v1.39.1, and my stats no longer appear for any of my websites.
I'm using Supabase for my database, and Vercel to host the app.

Can confirm this issue. Also exists on the default install with docker-compose.

@candideu can you also post your error log?
mine is here:
db_1     | 2022-10-25 21:57:17.810 UTC [33] ERROR:  column event.event_uuid does not exist at character 185 db_1     | 2022-10-25 21:57:17.810 UTC [33] HINT:  Perhaps you meant to reference the column "event.event_id". db_1     | 2022-10-25 21:57:17.810 UTC [33] STATEMENT:  SELECT "public"."event"."event_id", "public"."event"."website_id", "public"."event"."session_id", "public"."event"."created_at", "public"."event"."url", "public"."event"."event_name", "public"."event"."event_uuid" FROM "public"."event" WHERE (("public"."event"."event_id") IN (SELECT "t0"."event_id" FROM "public"."event" AS "t0" INNER JOIN "public"."website" AS "j0" ON ("j0"."website_id") = ("t0"."website_id") WHERE ("j0"."website_uuid" IN ($1) AND "t0"."event_id" IS NOT NULL)) AND "public"."event"."created_at" >= $2) OFFSET $3 umami_1  | PrismaClientKnownRequestError:  umami_1  | Invalid prisma.event.findMany()invocation: umami_1  |  umami_1  |  umami_1  | The columnevent.event_uuid does not exist in the current database. umami_1  |     at RequestHandler.handleRequestError (/app/node_modules/@prisma/client/runtime/index.js:30873:13) umami_1  |     at RequestHandler.request (/app/node_modules/@prisma/client/runtime/index.js:30856:12) umami_1  |     at async PrismaClient._request (/app/node_modules/@prisma/client/runtime/index.js:31836:16) umami_1  |     at async Promise.all (index 2) umami_1  |     at async getRealtimeData (/app/.next/server/chunks/769.js:1787:43) umami_1  |     at async __WEBPACK_DEFAULT_EXPORT__ (/app/.next/server/pages/api/realtime/init.js:158:22) umami_1  |     at async Object.apiResolver (/app/node_modules/next/dist/server/api-utils/node.js:366:9) umami_1  |     at async NextNodeServer.runApi (/app/node_modules/next/dist/server/next-server.js:481:9) umami_1  |     at async Object.fn (/app/node_modules/next/dist/server/next-server.js:735:37) umami_1  |     at async Router.execute (/app/node_modules/next/dist/server/router.js:247:36) { umami_1  |   code: 'P2022', umami_1  |   clientVersion: '4.5.0', umami_1  |   meta: { column: 'event.event_uuid' } umami_1  | } umami_1  | TypeError: Cannot destructure property 'websiteId' of 'undefined' as it is undefined. umami_1  |     at relationalQuery (/app/.next/server/chunks/769.js:1427:34) umami_1  |     at Object.prisma (/app/.next/server/chunks/769.js:1423:69) umami_1  |     at runQuery (/app/.next/server/chunks/2050.js:83:31) umami_1  |     at savePageView (/app/.next/server/chunks/769.js:1422:70) umami_1  |     at __WEBPACK_DEFAULT_EXPORT__ (/app/.next/server/pages/api/collect.js:218:78) umami_1  |     at processTicksAndRejections (node:internal/process/task_queues:96:5) umami_1  |     at async Object.apiResolver (/app/node_modules/next/dist/server/api-utils/node.js:366:9) umami_1  |     at async NextNodeServer.runApi (/app/node_modules/next/dist/server/next-server.js:481:9) umami_1  |     at async Object.fn (/app/node_modules/next/dist/server/next-server.js:735:37) umami_1  |     at async Router.execute (/app/node_modules/next/dist/server/router.js:247:36)

@Lennart01 Sorry, I'm not the most tech-savvy. Where can I find my error log?

@candideu I don't know where vercel stores logs. Have you checked here?
https://vercel.com/guides/where-are-vercel-logs
But I guess it is probably the same issue

Try logging out and back in. We made some auth changes so your old cookie may be out of date.

Results in me not being able to login anymore.
db_1     | 2022-10-26 05:43:35.287 UTC [33] ERROR:  column account.account_uuid does not exist
at character 197
db_1     | 2022-10-26 05:43:35.287 UTC [33] STATEMENT:  SELECT "public"."account"."user_id", "p
ublic"."account"."username", "public"."account"."password", "public"."account"."is_admin", "pub
lic"."account"."created_at", "public"."account"."updated_at", "public"."account"."account_uuid"
FROM "public"."account" WHERE ("public"."account"."username" = $1 AND 1=1) LIMIT $2 OFFSET $3
umami_1  | PrismaClientKnownRequestError:
umami_1  | Invalid prisma.account.findUnique() invocation:
umami_1  |
umami_1  |
umami_1  | The column account.account_uuid does not exist in the current database.
umami_1  |     at RequestHandler.handleRequestError (/app/node_modules/@prisma/client/runtime/i
ndex.js:30873:13)
umami_1  |     at RequestHandler.request (/app/node_modules/@prisma/client/runtime/index.js:308
56:12)
umami_1  |     at async PrismaClient._request<EMAIL_ADDRESS>s:31836:16)
umami_1  |     at async WEBPACK_DEFAULT_EXPORT (/app/.next/server/pages/api/auth/login.js:7
9:21)
umami_1  |     at async Object.apiResolver (/app/node_modules/next/dist/server/api-utils/node.j
s:366:9)
umami_1  |     at async NextNodeServer.runApi (/app/node_modules/next/dist/server/next-server.j
s:481:9)
umami_1  |     at async Object.fn (/app/node_modules/next/dist/server/next-server.js:735:37)
umami_1  |     at async Router.execute (/app/node_modules/next/dist/server/router.js:247:36)
umami_1  |     at async NextNodeServer.run (/app/node_modules/next/dist/server/base-server.js:3
47:29)
umami_1  |     at async NextNodeServer.handleRequest (/app/node_modules/next/dist/server/base-s
erver.js:285:20) {
umami_1  |   code: 'P2022',
umami_1  |   clientVersion: '4.5.0',
umami_1  |   meta: { column: 'account.account_uuid' }
umami_1  | }

I updated from 1.38 to 1.39.1 yesterday -but it was mess- so I went back to .38 and now to .39.2 and I had the same "blank page" issue, logout and login again fixed it, also I noticed the url changed of my bookmarked websites.

I also can't log in on anything newer that 1.38, rolled back to that version and everything works.

umami_1 | The column account.account_uuid does not exist in the current database.

@Lennart01 If the account_uuid is being asked for, then the 04_migration didn't run.
Try removing the failed attempt by running...
delete from _prisma_migrations where migration_name = '04_add_uuid';
Then rebuild umami to redeploy the 04 migration.

I also can't log in on anything newer that 1.38, rolled back to that version and everything works.

I had this problem as well, and I think I narrowed it down to a change in how passwords are hashed in version 1.39.x
If you run node scripts/change-password.js after installing the prompts package, you can set the password of your account to the one you already use and be able to log in again in the UI.
Hope this solves it for you as well!

That doesn't seem to work either for me:
/app/scripts/change-password.js:86
    if (error.meta.cause.includes('Record to update not found')) {
                         ^

TypeError: Cannot read properties of undefined (reading 'includes')
    at /app/scripts/change-password.js:86:26

Ok, I got it working now with postgres v15, here are the steps I took:

Backup the database
docker exec -t umami_db pg_dump --no-owner -U umami umami > umami_db.sql

docker stop umami_app umami_db
docker rm umami_db
docker volume rm umami_data

Change postgres version in docker compose to postgres:15-alpine, comment out the umami app so it doesn't get created and initialize the new database, and run docker compose up -d

Restore database
cat umami_db.sql | docker exec -i umami_db psql -U umami -d umami

Delete migration record
docker exec -it umami_db psql -U umami
> delete from _prisma_migrations where migration_name = '04_add_uuid';
> exit

Uncomment the umami app from docker compose and re-run docker compose up -d

Change password (if needed, I didn't need to at this point).
docker exec -it umami_app sh
yarn add prompts
npm run change-password
# Follow the prompts

Try logging out and back in. We made some auth changes so your old cookie may be out of date.

this is what worked for me on 1.39.3

@wheeleran I had to do that too, but if you're using postgres v12 like the example docker-compose file you'll have to upgrade postgres first as detailed above.

@dlford great, thanks, will do, though everything is up and running normally.

Upgrading from v1.32.0 to v1.39.5 I ran into this.  Looks like also need to upgrade username and password due to change in password encryption between the two
https://www.crunchydata.com/blog/how-to-upgrade-postgresql-passwords-to-scram


Version  2024.4 log warning message

This form is for reporting bugs.  If you have encountered a bug, you should
generally have some log messages or device diagnostics to show something is
going wrong.  If your problem is more of a question or a request for help,
then Discussions is
probably a more suitable venue.
Describe the bug
With the latest version there is the following message in the log HA:
2024-04-29 18:22:33.529 WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'tuya_local' sets "minor_version" directly to update a config entry. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to use async_update_entry instead at custom_components/tuya_local/__init__.py, line 448: entry.minor_version = 3, please create a bug report at https://github.com/make-all/tuya-local/issues
To Reproduce
Install latest veriso and restart HA
Expected behavior
The integration continue to work and this is just a heads up for the developer since it will stop in September
Additional context
Not needed.
If the bug involves a device, then please include device diagnostics from
No
Please check if there are messages from Tuya Local in the Home
Assistant log (Settings / System / Logs), and include those too.
If applicable, add screenshots to help explain your problem.

Duplicate of #1854


Appconfig prototype

@jhendrixMSFT the prototype I did of AppConfig in an all codegen state

Closing as we've decided we'll stick with the hand-written convenience layer.


How we can use it in webserver?

It may depend on which webserver you are using but a cacheout instance uses a dictionary under-the-hood. Typically you would have a singleton instance of the cacheout instance defined somewhere and then made accessible during web request handling. How you might do that might be influenced by the web framework but ignoring that part, just creating the instance in a module and then importing it would work.
If you are creating separate web worker processes, then just be aware that the cacheout instance from one process wouldn't have access to the cacheout data in another process. But threaded workers should be able to access the same cacheout instance so they would share data.

I am using async FastApi wenserver.
Using the same way having a singleton instance of the cacheout instance and using it in parts of code. The problem is I am running the server under gunicorn with 4 workers  and every worker is maintains it own cacheout instance. Is there any any I can share that between the workers?

You would need to use a data structure that can be shared between processes. That isn't something that is implemented in cacheout right now, but you could override the internals of cacheout to replace the ordered-dictionary implementation with something that works across processes.
For example, the Manager class has a dict method that works across processes. But then you would also need to implement the various ordered-dictionary methods that are used by cacheout as needed for whatever caching strategy you need. You would also need to start the Gunicorn server a certain way as well per https://stackoverflow.com/a/66135571/681166.
So if something like redis is available to you, then that may be a better option or some other Python library that implements multiprocess caching if you want to stick with in-memory caching without a dedicated cache server.

Thank You @dgilland for giving detailed explanation on this. Not want to have a TCP call so not going for Redis.
This is all good for the time being

I solved this using UltraDict
from cacheout import Cache
from UltraDict import UltraDict

class CachableUltraDict(UltraDict):
    '''Allows us to use an UltraDict for cacheout.
        This allows us to have shared cross-worker gunicorn cache!
    '''

    def copy(self):
        return self.__class__(
            self,
            name=self.name,
            buffer_size=self.buffer_size,
            serializer=self.serializer,
            shared_lock=self.shared_lock,
            full_dump_size=self.full_dump_size,
            auto_unlink=self.auto_unlink,
            recurse=self.recurse,
            recurse_register=self.recurse_register,
        )

cache = Cache()
cache._cache = CachableUltraDict()

@mvanderlee Thanks for this


Fix condition of evaluateServerTrust

Related to #4542, fixes #4541
We should evaluate server trust only when performing server trust authentication.

This condition is more correct that the other, so I'm combining the two and both will get credit.