Error from node-request-by-swagger

I'm getting errors from node-request-by-swagger.
Here's the repo: https://github.com/mckernanin/eveql
You can run it with npx now dev -p 4000. Open playground at http://localhost:4000/api/, and try to run the following query:
{
  get_alliances
}

I get an error like this (partial stack trace):
"TypeError: Cannot read property 'get' of undefined",
"    at /private/var/folders/kh/023qgpds3_gf9c3q8ll27k9w0000gn/T/zeit-fun-03f877bd92c6e/api/node_modules/node-request-by-swagger/index.js:17:28",
"    at Array.forEach (<anonymous>)",
"    at Object.getRequestOptions [as default] (/private/var/folders/kh/023qgpds3_gf9c3q8ll27k9w0000gn/T/zeit-fun-03f877bd92c6e/api/node_modules/node-request-by-swagger/index.js:15:31)",
"    at Object.request (/private/var/folders/kh/023qgpds3_gf9c3q8ll27k9w0000gn/T/zeit-fun-03f877bd92c6e/api/node_modules/swagger-to-graphql/lib/swagger.js:176:61)",
"    at Object.<anonymous> (/private/var/folders/kh/023qgpds3_gf9c3q8ll27k9w0000gn/T/zeit-fun-03f877bd92c6e/api/node_modules/swagger-to-graphql/lib/index.js:78:36)",

It looks like your call to node-request-by-swagger has 3 parameters:
request(obj, {
    request: request,
    url: url,
    method: method,
}, '')

while the library is looking for 4 params:
function getRequestOptions(endpoint, fixture, baseUrl, schemaParameters) {}

Referencing the latest master branch in my package.json seems to have fixed the issue. A release would be great :D

Since release 1.9 we're not depending on request-by-swagger anymore. The latest master is released.
Can this issue be closed?

Yep, thanks!


Fix misplaced hint for interface/theme/accent_color

Supersedes #26992.
Thanks @Amssat221 for identifying the issue.

Cherry-picked for 3.1.1.


Digeq 85 view questions in sections

What
Provides support for navigating and validating a questionnaire one group at a time, showing one group per page.
How to test

Start the Survey Runner and navigate to the debug survey (http://localhost:5000/questionniare/1/something/?debug=true)
Click start
Click save and continue.  Validation errors will prevent you from progressing
Complete the form according to the validation errors and click Save and Continue
Open the same survey in a new tab, and click start. Your progress should have been saved
Complete the second page and click Save and Continue.  Barring any validation errors, the questionnaire should now be complete

Who can test
Anybody except @weapdiv-david

LGTM :+1:


Bug: Google Analytics shown Active string in AppInfo Dialog even when disabled

Even when ENABLE_GA=true is set for the flyteconsole, the AppInfo dialog displays "Active"

I suspect the cause is the DISABLE_GA variable referenced when localizing the string is not in the env passed to the frontend. It should use ENABLE_GA instead when localizing, with thestrings here adjusted accordingly.


[PE-D] [Bug] UI (Truncation of information)

Summary
Model Name and Lesson is truncated in the event that it is too long, making it impossible to view certain information
Screenshots

Labels: type.FeatureFlaw severity.Low
original: aweijun/ped#4

Duplicate of #133


fix: remove expand icon at last column only

Fixes an issue where the expand icon was removed from column width calculations. The column was incorrectly marked as the last column and therefore not needing the expand icon
Before:
https://github.com/qlik-oss/sn-pivot-table/assets/968450/492cee38-e694-44e3-8a27-a487a5ba6a09
After:
https://github.com/qlik-oss/sn-pivot-table/assets/968450/707c25bd-c348-4a50-9bb4-78fc41c13f9d

:tada: This PR is included in version 2.5.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Why vcpkg installs x64-windows binaries for x86-windows-static triplet?

I am trying to compile my project using latest cmake and vcpkg using manifest mode and CMakePresets.json.
I have specific configuration for x86-windows-debug-static with :
"VCPKG_INSTALLED_DIR": "$env{VCPKG_ROOT_DIR}/baselines/c0d667",
"CMAKE_BUILD_TYPE": "Debug",
"VCPKG_TARGET_TRIPLET": "x86-windows-static"
So for some reason it performs installation of packages for x64-windows and for x86-windows-static.
Moreover, when I switch from x86-windows-static to x64-windows-static, it deletes installed packages from $env{VCPKG_ROOT_DIR}/baselines/c0d667.
Any advice how I could configure to install in one VCPKG_INSTALLED_DIR directory and avoid removing other triplets packages?
Thank you,
Olexandr

Output:

brotli[core]:x64-windows -> 1.0.9#2 -- I:\vcpkg\c0d667\buildtrees\versioning_\versions\brotli\73d0ed2fd7816c7a4958983b0b027c85b60eac15

brotli[core]:x86-windows-static -> 1.0.9#2 -- I:\vcpkg\c0d667\buildtrees\versioning_\versions\brotli\73d0ed2fd7816c7a4958983b0b027c85b60eac15

Usually it means that your target triplet (x86-windows-static) is different from you host triplet (default: x64-windows). But many ports do have host dependencies.

Ok, I understand why we have them both, but I still do not understand why if I switch from x86-windows-static to x64-windows-static, it deletes installed packages. I would expect new to be added only ...

Manifest mode ensures that the installed packages match the configuration, including the active triplets. In that way, it avoids some conflicts and hidden dependencies. Normally, removal isn't a problem because the binary artifacts are cached separately.
If you need to work with multiple target triplets, you should use different build directories. All your binary project artifacts depend on the targe triplet.

If you think that target executables are compatible with host machine, you can override VCPKG_HOST_TRIPLET and don't build additional host dependencies.

If you think that target executables are compatible with host machine, you can override VCPKG_HOST_TRIPLET and don't build additional host dependencies.

Yes.
But it also means that the "host" dependencies are built and cached for every triplet. If you really want to build for different targets, it might need more space and time.

We hope your question was answered to your satisfaction; if it wasn't, you can reopen with more info.


Double unicode characters

Describe the bug
When i import a config.json file and i add more icons.  The new added icons can have the same U+[code] as the already selected icons.
That is a problem because there are icons with the same reference to an icon. Which icon is then shown?
To Reproduce
Steps to reproduce the behavior:

Import attached config.json file

Add two more icons

View all icons and see double Unicode characters

Expected behavior
You would actually want new icons to have a different Unicode character than the existing icons.
OS/Browser

OS: macOS
Browser: chrome

Font/config
config.json.zip

When I add those 2 extra glyphs, they get assigned E807 and E80A (because those codes are missing):

Can anyone else reproduce this?

I have this issue too. Using Firefox 109 on Windows 10.
Im using Fontello for different projects and have encountered this error several times.
I uploaded the config.json and then downloaded the font package and repeated this step again. This somehow fixed it for me.
I also noticed that there are already duplicate codes in config.json i initially uploaded.


Need to Disambiguate for Use on Azure DevOps vs Azure DevOps Server

The Publish symbols to Azure Artifacts symbol server section only works on Azure DevOps. It will not work on Azure DevOps Server.
Likewise,  the Publish symbols to a file share section only works on Azure DevOps Server.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: bdb2bfcb-0a0c-ce90-fa49-ad2e7fbaa57a
Version Independent ID: 1a295877-ff8f-f8c2-0349-76a69a0f5cfc
Content: Publish symbols with Azure Pipelines - Azure Pipelines
Content Source: docs/pipelines/artifacts/symbols.md
Product: devops
Technology: devops-cicd-artifacts
GitHub Login: @ramiMSFT
Microsoft Alias: rabououn

Azure DevOps Server only supports publishing to a file share but Azure DevOps services support publishing symbols to both symbol servers and file shares. The updated article will be published shortly.


Adding a 404 page

Following the current UI / look and feel. We added a 404 error message

Thanks Luis.


As a user, I want to monitor fee revenue with ability to segment data

Problem
A user, especially a router, wants to monitor fee revenue from the Amarok fast-path at different levels
Ideas to solve this
Data is made available in some endpoint and able to be segmented by

date (daily, weekly,monthly)
asset
domain
router

Acceptance Criteria

[ ] Able to view this information in explorer columns
[ ] Able to track this information from a router perspective in grafana dashboards

Other

P3


Add pre-commit hook config

Hi, I think it would be useful to add support for jsonschema as pre-commit hook. I think this would be more convenient than using local hooks or creating a mirror repo.
With the way I set it up, the hook can be used with a config like this:
repos:
  - repo: https://github.com/AleksaC/jsonschema
    rev: 639bc64d82
    hooks:
      - id: jsonschema
        files: |
          (?x)(
            ^valid.json$ |
            ^invalid.json$ |
            ^schema.json$
          )
        args: ["-i", "valid.json", "-i", "invalid.json", "schema.json"]

      - id: jsonschema
        files: |
          (?x)(
            ^valid2.json$ |
            ^invalid2.json$ |
            ^schema2.json$
          )
        args: ["-i", "valid2.json", "-i", "invalid2.json", "schema2.json"]

Hi there. Sounds great, thanks! Will merge and see what feedback we get.

I think the interface @janosh suggests is right, but the default configuration should still require the user to set up files and args to filter to the targetted files properly and to select the right schema
something like:
-   id: jsonschema-v2
    name: jsonschema
    entry: jsonschema-hook
    language: python
    # require the user to override args to set `[--schema, somefile.json]`
    # require the user to override `files` to filter to the target files
    files: ^$

or ~something like that
in this jsonschema-hook would be a script which has the following "interface"
jsonschema-hook --schema SCHEMA [other options] [file [file [...]]]

Hi, as the author of this pull request I'd like to chime in. First of all sorry for not giving more thought to this, it worked well for my use case, but I realize that it isn't ideal. I knew that there wasn't a way to use the current cli with pre-commit in idiomatic way, I just assumed that changing the cli for pre-commit wasn't something you'd want to do.
There is still one thing that isn't addressed - if you change the schema you'd probably want to run the hook on all the files it is supposed to check to make sure there aren't any discrepancies. With the wrapper proposed above it would be solved by defining the hook twice, the second definition being something like this:
hooks:
  - id: jsonschema-v2
    files: ^schema.json$
    args: [--schema schema.json, ...files]
    pass_filenames: false

Anyway if you want to add a wrapper for pre-commit, I'd be willing to do that as it's sort of my mess to clean up :smile:


CDNs in Single SPA HTML

The SingleSPA HTML file http://single-spa-playground.org/playground/html-file uses CDNs like unpkg and cdnjs.cloudflare.com. There must be an option to use downloaded npm modules instead. CDNs are not a secure option in real world scenarios.

CDN's are not insecure. Especially when you provide an [integrity attribute on your script tags](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity). CDNs are a more performant way of loading resources, since CDN files are cacheable across multiple websites, unlike a file hosted by the website.
So I disagree with your premise 😄. However, it is very possible to load systemjs, import-map-overrides, and single-spa from local files if you prefer. You can just put /node_modules/systemjs/dist/system.min.js into your import map (and similar for other resources). If you don't like using your node modules, you can download the scripts and put them into a vendors directory and serve them up from there.
I'm closing this since I believe I've answered the question, but feel free to comment further or reopen if there is more to discuss.


Revert "Bump d3 from 6.1.1 to 6.2.0"

Reverts falgon/roki-web#73

Build log
Preview build with this PR (commit): https://66-280922552-gh.circle-artifacts.com/0/index.html


Running kong ingress controller in kubernetes with high availability - wrong node goes down, KONG goes DOWN

Hello - We're using kong with annotated kubernetes ingress and service resources driving the config.
The problem we're facing is when we do a node roll, kong goes down while the postgresql pod is unavailable, taking our APIs down.
Having 3 kong pods for HA and still having a single point of failure seems like an anti-pattern.
I looked into dbless, but it looks like to do that you need to use a kong.yml config, while can't be configured in independent namespaces the way ingresses and services can.
Is there a way to either use ingress/service resources without postgres, or to make the postgres truly HA?

You can use controller-managed configuration (configuration built from Ingress resources) with DB-less. It's the default configuration even. Specifying a kong.yml directly is an alternative.
That said, Kong should not go down when Postgres is unavailable. You cannot start new Kong instances while Postgres is offline, but existing instances should continue serving traffic on a best-effort basis out of their configuration cache and reconnect to Postgres when it returns.
You can specify a read-only backup Postgres instance via the various pg_ro_ settings. Setting up a read replica should give you some more flexibility when rolling out an updated Postgres deployment.
If you're seeing that existing instances terminate when Postgres is unavailable, that's abnormal, and you should file an issue with the gateway team with replication steps and logs.
Will go ahead and close this as I think all questions from the OP are answered, but if you have additional follow-up questions respond back and we can reopen it.

Hi @rainest - thanks for jumping in to help!
I've been off working on some other more pressing issues, and am now returning to this.
One factor that might play in: We use FluxCD, which automatically updates our k8s ingress resources as they change in our main branch in source control. I wonder if this is why the Kong pods in Test B start crashlooping.
I did a bit of testing to get more data - here's the output of that:
Test A
Step 1: Determine node kong postgres and other pods are running on, and terminate a node other than postgres from AWS console (not kubectl)
Step 2: run kubectl get pods -n kong -w
Step 3: run kubectl get nodes -w
Step 4: periodically run curl command to healthcheck behind kong
Test A Results
Sometimes slightly slow responses, but generally works fine
Overall test result: PASS
Test B
Step 1: Determine node kong postgres and other pods are running on, and terminate a node other than postgres from AWS console (not kubectl)
Step 2: run kubectl get pods -n kong -w
Step 3: run kubectl get nodes -w
Step 4: periodically run curl command to healthcheck behind kong
Test B Results

Postgres goes down
one by one the kong pods begin crashlooping
Once all are crashlooping, curl command begins failing
Eventually, new node comes online
Postgres gets assigned to that node, and starts up
Pods stop crashlooping

But during results 3-5, our APIs are completely inaccessible
Overall test result: FAIL
Test C
Step 1: Determine node kong postgres is running on, and run kubectl delete node
Step 2: run kubectl get pods -n kong -w
Step 3: run kubectl get nodes -w
Step 4: periodically run curl command to healthcheck behind kong
Test C Results

Postgres pod shuts down gracefully, but initially could not restart, as the node was the only node in the cluster in its AZ - this is not an issue with Kong, but rather with our small EKS cluster size - I know what I need to do to solve this one.
One of the kong pods started crashlooping, but the other two continued serving as desired
Eventually the new node came up and pg started fine

Overall test result: PASS
Test D
Step 1: run kubectl delete pod kong-postgresql-0
Step 2: run kubectl get pods -n kong -w
Step 3: run kubectl get nodes -w
Step 4: periodically run curl command to healthcheck behind kong
Test D Results
postgres shut down gracefully, and restarts fairly quickly, resulting in no disruption
Overall test result: PASS

@rainest Here's our helmrelease definition:
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
  name: kong
  namespace: kong
spec:
  chart:
    spec:
      version: "2.15.3"
      chart: kong
      sourceRef:
        kind: HelmRepository
        name: kong
        namespace: kong
  interval: 1h0m0s
  install:
    remediation:
      retries: 3
  upgrade:
    remediation:
      retries: 3
      strategy: "rollback"

  values:
    # Kong for Kubernetes with Kong Enterprise with Enterprise features enabled and
    # exposed via TLS-enabled Ingresses. Before installing:
    # * Several settings (search for the string "CHANGEME") require user-provided
    #   Secrets. These Secrets must be created before installation.
    # * Ingresses reference example "<service>.kong.CHANGEME.example" hostnames. These must
    #   be changed to an actual hostname that resolve to your proxy.
    # * Ensure that your session configurations create cookies that are usable
    #   across your services. The admin session configuration must create cookies
    #   that are sent to both the admin API and Kong Manager, and any Dev Portal
    #   instances with authentication must create cookies that are sent to both
    #   the Portal and Portal API.
    fullnameOverride: kong
    admin:
      annotations:
        konghq.com/protocol: https
      enabled: true
      http:
        enabled: false
      ingress:
        annotations:
          konghq.com/https-redirect-status-code: "301"
          konghq.com/protocols: https
          konghq.com/strip-path: "true"
          kubernetes.io/ingress.class: kong
          nginx.ingress.kubernetes.io/app-root: /
          nginx.ingress.kubernetes.io/backend-protocol: HTTPS
          nginx.ingress.kubernetes.io/permanent-redirect-code: "301"
        enabled: true
        hostname: kong.gateway.env.company.service
        path: /api
        tls: kong-admin-cert
      tls:
        containerPort: 8444
        enabled: true
        parameters:
        - http2
        servicePort: 8444
      type: ClusterIP
    affinity:
      podAntiAffinity:
        preferredDuringSchedulingIgnoredDuringExecution:
        - podAffinityTerm:
            labelSelector:
              matchExpressions:
              - key: app.kubernetes.io/instance
                operator: In
                values:
                - dataplane
            topologyKey: kubernetes.io/hostname
          weight: 100
    certificates:
      enabled: true
      issuer: kong-selfsigned-issuer
      cluster:
        enabled: true
      admin:
        enabled: true
        commonName: kong.gateway.env.company.service
      portal:
        enabled: true
        commonName: developer.gateway.env.company.service
      proxy:
        enabled: true
        commonName: gateway.env.company.dev
        dnsNames:
        - '*.gateway.env.company.dev'
        - 'env.company.dev'
        - '*.env.company.dev'
    cluster:
      enabled: true
      labels:
        konghq.com/service: cluster
      tls:
        containerPort: 8005
        enabled: true
        servicePort: 8005
      type: ClusterIP
    clustertelemetry:
      enabled: true
      tls:
        containerPort: 8006
        enabled: true
        servicePort: 8006
        type: ClusterIP
    deployment:
      kong:
        daemonset: false
        enabled: true
    enterprise:
      enabled: true
      license_secret: kong-enterprise-license
      portal:
        enabled: true
      rbac:
        admin_api_auth: basic-auth
        admin_gui_auth_conf_secret: kong-config-secret
        enabled: true
        session_conf_secret: kong-config-secret
      smtp:
        enabled: false
      vitals:
        enabled: true
    env:
      admin_access_log: /dev/stdout
      admin_api_uri: https://kong.gateway.env.company.service/api
      admin_error_log: /dev/stdout
      admin_gui_access_log: /dev/stdout
      admin_gui_error_log: /dev/stdout
      admin_gui_host: kong.gateway.env.company.service
      admin_gui_protocol: https
      admin_gui_url: https://kong.gateway.env.company.service/
      cluster_data_plane_purge_delay: 60
      cluster_listen: <IP_ADDRESS>:8005
      cluster_telemetry_listen: <IP_ADDRESS>:8006
      database: postgres
      log_level: debug
      lua_package_path: /opt/?.lua;;
      nginx_worker_processes: "2"
      password:
        valueFrom:
          secretKeyRef:
            key: kong_admin_password
            name: kong-config-secret
      pg_database: kong
      pg_host:
        valueFrom:
          secretKeyRef:
            key: pg_host
            name: kong-config-secret
      pg_ssl: "off"
      pg_ssl_verify: "off"
      pg_user: kong
      plugins: bundled,openid-connect
      portal: true
      portal_api_access_log: /dev/stdout
      portal_api_error_log: /dev/stdout
      portal_api_url: https://developer.gateway.env.company.service/api
      portal_auth: basic-auth
      portal_cors_origins: '*'
      portal_gui_access_log: /dev/stdout
      portal_gui_error_log: /dev/stdout
      portal_gui_host: developer.gateway.env.company.service
      portal_gui_protocol: https
      portal_gui_url: https://developer.gateway.env.company.service/
      portal_session_conf:
        valueFrom:
          secretKeyRef:
            key: portal_session_conf
            name: kong-config-secret
      prefix: /kong_prefix/
      proxy_access_log: /dev/stdout
      proxy_error_log: /dev/stdout
      proxy_stream_access_log: /dev/stdout
      proxy_stream_error_log: /dev/stdout
      smtp_mock: "on"
      status_listen: <IP_ADDRESS>:8100
      trusted_ips: <IP_ADDRESS>/0,::/0
      vitals: true
    extraLabels:
      konghq.com/component: kong
    image:
      repository: kong/kong-gateway
      tag: "3.0"
    ingressController:
      enabled: true
      env:
        kong_admin_filter_tag: ingress_controller_kong
        kong_admin_tls_skip_verify: true
        kong_admin_token:
          valueFrom:
            secretKeyRef:
              key: password
              name: kong-config-secret
        kong_admin_url: https://localhost:8444
        kong_workspace: default
        publish_service: kong/kong-proxy
      image:
        repository: docker.io/kong/kubernetes-ingress-controller
        tag: "2.7"
      ingressClass: kong
      installCRDs: false
    manager:
      annotations:
        konghq.com/protocol: https
      enabled: true
      http:
        containerPort: 8002
        enabled: false
        servicePort: 8002
      ingress:
        annotations:
          konghq.com/https-redirect-status-code: "301"
          kubernetes.io/ingress.class: kong
          nginx.ingress.kubernetes.io/backend-protocol: HTTPS
        enabled: true
        hostname: kong.gateway.env.company.service
        path: /
        tls: kong-admin-cert
      tls:
        containerPort: 8445
        enabled: true
        parameters:
        - http2
        servicePort: 8445
      type: ClusterIP
    migrations:
      enabled: true
      postUpgrade: true
      preUpgrade: true
    namespace: kong
    podAnnotations:
      kuma.io/gateway: enabled
      prometheus.io/port: "8100"
      prometheus.io/scrape: "true"
    portal:
      annotations:
        konghq.com/protocol: https
      enabled: true
      http:
        containerPort: 8003
        enabled: false
        servicePort: 8003
      ingress:
        annotations:
          konghq.com/https-redirect-status-code: "301"
          konghq.com/protocols: https
          konghq.com/strip-path: "false"
          kubernetes.io/ingress.class: kong
        enabled: true
        hostname: developer.gateway.env.company.service
        path: /
        tls: kong-portal-cert
      tls:
        containerPort: 8446
        enabled: true
        parameters:
        - http2
        servicePort: 8446
      type: ClusterIP
    portalapi:
      annotations:
        konghq.com/protocol: https
      enabled: true
      http:
        enabled: false
      ingress:
        annotations:
          konghq.com/https-redirect-status-code: "301"
          konghq.com/protocols: https
          konghq.com/strip-path: "true"
          kubernetes.io/ingress.class: kong
          nginx.ingress.kubernetes.io/app-root: /
        enabled: true
        hostname: developer.gateway.env.company.service
        path: /api
        tls: kong-portal-cert
      tls:
        containerPort: 8447
        enabled: true
        parameters:
        - http2
        servicePort: 8447
      type: ClusterIP
    postgresql:
      enabled: true
      auth:
        database: kong
        username: kong
    proxy:
      annotations:
        prometheus.io/port: "8100"
        prometheus.io/scrape: "true"
        service.beta.kubernetes.io/aws-load-balancer-backend-protocol: "https"
        service.beta.kubernetes.io/aws-load-balancer-ssl-cert: "arn:aws:acm:us-west-2:<awsAccount>:certificate/<cert-guid>"
        service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"
        service.beta.kubernetes.io/aws-load-balancer-type: "alb"
      enabled: true
      http:
        containerPort: 8080
        enabled: false
      ingress:
        enabled: false
      labels:
        enable-metrics: true
      tls:
        containerPort: 8080
        enabled: true
      type: LoadBalancer
    serviceMonitor:
      enabled: true
      additionalLabels:
        app.kubernetes.io/part-of: kube-prometheus-stack
        interval: 10s
        namespace: monitoring
    replicaCount: 3
    secretVolumes: []
    status:
      enabled: true
      http:
        containerPort: 8100
        enabled: true
      tls:
        containerPort: 8543
        enabled: false
    updateStrategy:
      rollingUpdate:
        maxSurge: 100%
        maxUnavailable: 100%
      type: RollingUpdate


Feature Request: Ability to add non-email members to a group

To be able to quickly make an expense split, I'd love the ability to add 'fictional' users to a group. Right now, if I were out with a group of people that aren't already users, it could take longer time to get them all to sign up, than if I were to just add a bunch of persons to a group and do the splitting there.
If this is already an option, and I just can't see it, feel free to close the issue.

@mtaanquist You don't have to wait for the users to sign up. You can just add the email and start adding the expense. When they signup they will see the expenses that you added.
Lemme know if that answers your question!

Fair enough, that's a decent workaround. I do still think it'd be a decent enough idea to just be able to create them as a name first, and then if you do group up again later, you could always add an email address to them.
Some people do have long or strange email addresses that can be odd to spell out. If it is something that fits in your vision of the app, and at all possible with the table structure, I'd be happy to build out a PR over the summer holidays.
It might also help make it a bit easier for people looking to self-host (which is an interest of mine) to not have to sort out a mail server as well.
I appreciate the quick response.

@mtaanquist  Splitpro is designed to be a an app where you can share expenses with your friends.
But I totally get your point, to make self host easy, I'll make the email invite optional for self host. You'll still have to enter email but it won't send any email or anything.
Btw I'm using unsend.dev for sending email. It's my other OSS project which uses AWS SES to send emails in neat way. Since it's open source you can self host it as well (also will have generous free plan). Then again I'll make completely optional so it's easy to self host!

Appreciate the feedback, KM, and thanks for the quick replies. 😊

I thought I’d emphasize this feature is also really important if the goal is only to track expenses split between groups where the groups aren’t interested in adding an app or keeping track of it themselves. As a workaround I currently have to create dummy email addresses. Love the app and really appreciate the open source element!

this is really not the scope splitpro currently, i can come back to this in future


[java] optimize the logic of LogAdapter to determine whether the stream is closed.

The purpose of this optimization is to quickly detect when the stream is closed, and then enter the election phase. In the scenario of leader.gracefulClose(), it shortens the time for cluster election.

Unfortunately closing based on EOS in the consensus module could result in data not being completely written to the archive. By waiting until the Image has closed, means that the other subscription reading that image (i.e. the Archive) has also received the EOS and closed the recording. We feel that it is cleaner to allow the archive to complete the writing of the data it has received instead of closing early and relying on replication/catch up during the election process to back fill that data.

Can we determine the status of the counter (appendPosition)? Because after the archive completes its work, it will also release the Recording-pos counter, which directly modifies the memory state. We don't need to wait for onTimer (invoke image.unavailableHandler()) or slowTickWork (invoke pollArchiveEvents()) to know that the data has been written and completed, and we should re-enter the election state.


Stuck downloading historical prices

Hello, thank you for writing such an interesting repository. Could you assist me with an issue with running the command, python download_historical_prices.py. Appears to be stuck at 80% and not proceeding.. Thank you!

Same issue.
MachineLearningStocks/venv/lib/python3.8/site-packages/fix_yahoo_finance/init.py
Line 111:
def download(tickers, start=None, end=None, as_panel=True,              group_by='column', auto_adjust=False, progress=True,              actions=None, threads=3, **kwargs):
Changing threads=1 to 3. Worked for me, it seems for now.

Ill try the fix out, thank you!


Suggestion: Import a sampe database during initialization

To setup a workshop it would be helpfule to import a sample database from .bak file during the container creation.

Is this still an issue or did you find a solution?

Shipped in both ext templates


Add API Auth bootstrap and dev scripts.

Current coverage is 0.00% (diff: 0.00%)

Merging #13 into master will not change coverage

@@           master   #13   diff @@
===================================
  Files           3     7     +4
  Lines          14    96    +82
  Methods         5    29    +24
  Messages        0     0
  Branches        0     0
===================================
  Hits            0     0
- Misses         14    96    +82
  Partials        0     0

Powered by Codecov. Last update 8947d41...07e0c52


"Try Catch" Block

Taken from here: https://community.makeroid.io/t/help-ignore-an-error/8738/6?u=barreeeiroo

Is possible to create a "Try and Catch" block as most coding languages (including Java) have?

Evan didn't mention it, but the break block (breaking out of loops) uses Kawa's try-catch internally.
Are there other uses for try-catch that would justify exposing this to users, given that App Inventor is supposed to be simple?

Just a clarification, the break block uses call/cc, which is conservatively implemented in Kawa using try/catch to allow for interleaving with Java code. There is separately a try-catch feature in Kawa that maps directly to Java try-catch, but that isn't used for break. It is used elsewhere though in runtime.scm, for example in dispatchEvent.

I would love to see such try and catch block in controls section in the future.
This will be really usefull for users with more experience.

A random thought that occurred to me, so I'll record it here. It might be interesting to adjust the dispatchErrorOccurredEvent code so that you can have an installed error handler (similar to other languages) and have the form be the root of that stack. The try-catch block could then "install" a handler to intercept errors and handle them in the blocks at that point. The challenge with the try-catch approach is how do we treat asynchronous operations (Web.Get, for example) as the current process is that their errors will be dispatched at a future time after some background operation fails, at which point the local block stack has been unwound.

This sounds like it will require a lot of thought.   Would be a nice thing
to discuss with Jerry when he's around.
== Hal
Hal Abelson
<EMAIL_ADDRESS>Prof. of Comp. Sci. and Eng.
MIT Dept. of Elec. Eng. and Comp. Sci.
On Thu, Sep 6, 2018 at 11:02 AM Evan W. Patton<EMAIL_ADDRESS>wrote:

A random thought that occurred to me, so I'll record it here. It might be
interesting to adjust the dispatchErrorOccurredEvent code so that you can
have an installed error handler (similar to other languages) and have the
form be the root of that stack. The try-catch block could then "install" a
handler to intercept errors and handle them in the blocks at that point.
The challenge with the try-catch approach is how do we treat asynchronous
operations (Web.Get, for example) as the current process is that their
errors will be dispatched at a future time after some background operation
fails, at which point the local block stack has been unwound.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/mit-cml/appinventor-sources/issues/1325#issuecomment-419127229,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAwLt6vNAv8qX5fAGvKDwsbQqVyYDLz5ks5uYTkCgaJpZM4V4m2D
.

It is possible with #1565, but I'm not sure what to catch... original Throwables (with name)?


Deploy Checklist: New Expensify 2023-07-26

Release Version: 1.3.46-0
Compare Changes: https://github.com/Expensify/App/compare/production...staging
This release contains changes from the following pull requests:

[ ] https://github.com/Expensify/App/pull/20821
[x] https://github.com/Expensify/App/pull/21049
[x] https://github.com/Expensify/App/pull/21656
[ ] https://github.com/Expensify/App/pull/21950
[x] https://github.com/Expensify/App/pull/22646
[x] https://github.com/Expensify/App/pull/22678
[x] https://github.com/Expensify/App/pull/22792
[x] https://github.com/Expensify/App/pull/22868
[ ] https://github.com/Expensify/App/pull/22906
[x] https://github.com/Expensify/App/pull/22925
[x] https://github.com/Expensify/App/pull/23061
[x] https://github.com/Expensify/App/pull/23306
[x] https://github.com/Expensify/App/pull/23341
[ ] https://github.com/Expensify/App/pull/23342
[x] https://github.com/Expensify/App/pull/23357
[ ] https://github.com/Expensify/App/pull/23360
[x] https://github.com/Expensify/App/pull/23371
[x] https://github.com/Expensify/App/pull/23396
[x] https://github.com/Expensify/App/pull/23463
[x] https://github.com/Expensify/App/pull/23464
[x] https://github.com/Expensify/App/pull/23482
[x] https://github.com/Expensify/App/pull/23486
[x] https://github.com/Expensify/App/pull/23512
[x] https://github.com/Expensify/App/pull/23518
[x] https://github.com/Expensify/App/pull/23524
[x] https://github.com/Expensify/App/pull/23525
[x] https://github.com/Expensify/App/pull/23529
[x] https://github.com/Expensify/App/pull/23532
[x] https://github.com/Expensify/App/pull/23550
[x] https://github.com/Expensify/App/pull/23551
[x] https://github.com/Expensify/App/pull/23574
[x] https://github.com/Expensify/App/pull/23588
[x] https://github.com/Expensify/App/pull/23620

Deploy Blockers:

[ ] https://github.com/Expensify/App/issues/23675
[x] https://github.com/Expensify/App/issues/23680
[x] https://github.com/Expensify/App/issues/23684
[ ] https://github.com/Expensify/App/issues/23716
[x] https://github.com/Expensify/App/issues/23725
[ ] https://github.com/Expensify/App/issues/23727
[x] https://github.com/Expensify/App/issues/23746

Deployer verifications:

[ ] I checked the App Timing Dashboard and verified this release does not cause a noticeable performance regression.
[ ] I checked Firebase Crashlytics and verified that this release does not introduce any new crashes. More detailed instructions on this verification can be found here.
[ ] I checked GitHub Status and verified there is no reported incident with Actions.

cc @Expensify/applauseleads

:rocket: All staging deploys are complete, @Expensify/applauseleads please begin QA on version https://github.com/Expensify/App/releases/tag/1.3.46-0 :rocket:

We checked off https://github.com/Expensify/App/issues/23680 as per this comment

Checking off #23684 as per https://github.com/Expensify/App/issues/23684#issuecomment-1652443198

@marcaaron Regression is at 50%
Current updates
https://github.com/Expensify/App/pull/23342 is failing https://github.com/Expensify/App/issues/23684
https://github.com/Expensify/App/pull/23360 is failing https://github.com/Expensify/App/issues/23031#issuecomment-1639463576

@marcaaron  We are down to last 3%
Current updates
https://github.com/Expensify/App/pull/20821 is failing https://github.com/Expensify/App/issues/23680
https://github.com/Expensify/App/pull/21950 pending Android validation
https://github.com/Expensify/App/pull/22906 issue observed https://github.com/Expensify/App/issues/23630. pls double check if related
https://github.com/Expensify/App/pull/23342 is failing https://github.com/Expensify/App/issues/23684
https://github.com/Expensify/App/pull/23360 is failing https://github.com/Expensify/App/issues/23031#issuecomment-1639463576

Checking off #23725 as per https://github.com/Expensify/App/issues/23725#issuecomment-1653549436

Chatted with Franc and we are going to remove the blocker on #23675 as it is not repro on staging.

Checking off #23727 as per https://github.com/Expensify/App/issues/23727#issuecomment-1653840197

@marcaaron Yes, #21950 is pass

Besides the crash related to Reanimated the rest of the Firebase issues look very minor. Created threads in #deployer and tagged a few engineers who I think can look into them.

Working on the last blocker with @stitesExpensify in this thread.

all blockers resolved.

:shipit:


Make paths relative

This PR changes two paths from absolute to relative. This fixed 404s when serving the app from a route other than /. With these changes, the app can be deployed to github pages for example with wasn't working before (e.g. see this repo; rendered).
As far as I can see, this doesn't break any existing cases.

@fkohlgrueber thanks! I think it should stay as an absolute path, though. I don't think that serving from a path other than / is as common as SPA web apps that support different routes using something like yew-router. In that case, the path should be absolute since files are all served from the root url.
How about we add a note in the README explaining to devs that fall into your camp that they need to use a relative path?


Calendar daily activity FIX

Issue Description
In my calendar on profile page I see no changing color on days when I solve ONLY one task/challenge. It's like I did nothing that day. Why so? Color on rectangle changes only if I do 2 items+.
P.S. There are challenges that are too difficult to solve in one day for beginners, and unfortunately the system shows that camper was 'absent' that day.
Thank you for understanding and providing so excellent course!
Screenshot

Still waiting...(


VSC consumig 80% CPU, not listing extensions (still working) and can't report issue from VSC

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:
Version: 1.70.2
Commit: e4503b30fc78200f846c62cf8091b76ff5547662
Date: 2022-08-16T05:35:13.448Z
Electron: 18.3.5
Chromium: 100.0.4896.160
Node.js: 16.13.2
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.22000
OS Version: W11

Steps to Reproduce:

After migration from W10 to W11 VSC (portable version) can't update extensions or still trying (the list is empty, just progress bas is moved)

still installing (on each extension that have instaled), in case maybe option uninstall or pause install can help, many install for many ext blocking whole VSC

Can't report issue from VSC from menu and belt feedback - the clicking not moving to browser.. nothing happen after click

Looks like VSC not deleted previous extensions dirs, coz have copies for each (new and old version for many of them).
I delteted all and problem solved.


Google Analytics

It will be good to explain in more details how this will work with Google Analytics
I followed the article, but encountered a few issue.

UTM window does not show up. Might be an overlapping issue with the URL link popup  window.
Clicking the link does not add UTM parameters
How could I check this with Google Analytics indicating this is our journey, etc.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 3215bc98-d90d-d36a-2f23-e5f3366f408c
Version Independent ID: 3215bc98-d90d-d36a-2f23-e5f3366f408c
Content: Preview: Measure marketing effectiveness using UTM codes (Dynamics 365 Marketing)
Content Source: ce/marketing/real-time-marketing-utm.md
Service: dynamics-365-marketing
GitHub Login: @alfergus
Microsoft Alias: alfergus

Thanks for the heads up on this, @jaimieji! I'll get in touch with the developer team and see about addressing those issues in the documentation.
In the meantime, if you have more questions about the feature, you can reach out to the dev team directly on the Dynamics 365 Marketing forum at https://community.dynamics.com/365/marketing/f/dynamics-365-for-marketing-forum.


content_for :head in analytics caching issue

I use content_for :head in the analytics partial but it keeps disappearing. I strongly suspect a caching issue.
I fully realise that my partial, linked above, is quite ugly. But I need different trackers for different accounts and sometimes different themes. That is not the point. I think this line should be placed outside the caching block regardless.

Well, yes and no. Since the partial is cached, you cannot use content_for :head inside of it. Still, I believe the partial should be cached since rendering it can be expensive with multiple database queries.
For widget types there is render_head_fragment which is cached separately. So I'd argue that the analytics partial is simply not powerful enough to achieve what you are trying to do and advice you to use widget types. Otherwise their would need to be some sort of analytics_head_fragment partial, which I'd not be super-excited to add since the functionality is there on a a more general level via widget types and the analytics partial wasn't that great of an abstraction to begin with.

I see. I'll dive into widgets. Thanks!

@tf I am having a hard time getting my WidgetType to work. I am following the readme but this line has me paused:

At this point widgets of the new type can be associated with entries and will be rendered.

How exactly? I do see the widget as dropdown in the Account, but doesn't seem to have any effect. How can I associate a widget with an entry?

Never mind, the dropdown appeared in the story editor just now. Weird, wasn't there before.

Choosing the widget on account level only makes it the default for new entries. Another option is to register the widget type as default in the initializer which enables the widget for all entries including existing ones. The drop down in the editor is only displayed if there is more than one widget type registered for a role. This is a workaround to prevent editors from being confused by too many drop downs with no real choices. The drop down is present in the DOM though and can be displayed via the dev tools. There should probably be better authorization integration, displaying only some drop downs to editors and all of them for admins or something.

My idea exactly. I will send you mail about it.


Add note regarding AddAuthentication and AddIdentity

Add the AddIdentity method call to the 2.x code snippet
Add warnings regarding the AddIdentity and AddAuthentication method calls with regard to default settings

@Tratcher You don't see the previous paragraph, as Dan's PR from this morning removed it and was merged.


Server, Executor: Fixed bugs and modified unit tests

What problem does this PR solve?
The TiDB original Unit Tests were designed for MySQL's protocol, we have to change almost all of them in order to make it applicable to PostgreSQL's protocol.
In addition to fixing Unit Tests, his PR also brings better compatibility with PostgreSQL's data types, error handling and connection procedures.
What is changed and how it works?
What's Changed:

Fixed Unit Test for handshake and simple query dispatch under server/conn.go
Added New Unit Test Suite for error handler that converts MySQL error to PG error
Fixed Some Unit Tests within Executor module, mostly prepared statement related
Fixed Unit Test related to the initial database info schema
Multiple bug fixes, mostly around where new Unit Test is written

Tests
TiDB for PostgreSQL is now capable of passing most of the Unit tests inside server module, and some tests inside executor module. We are still working on fixing more Unit Tests and bugs

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


bump to v0.1.2-dev

Codecov Report

Merging #470 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #470   +/-   ##
=======================================
  Coverage   96.27%   96.27%
=======================================
  Files          33       33
  Lines        2148     2148
  Branches      177      177
=======================================
  Hits         2068     2068
  Misses         44       44
  Partials       36       36

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 5717da5...2cd715f. Read the comment docs.


mempool bugs (evict normal transactions)

Describe the bug
According to the Geth issue: https://github.com/ethereum/go-ethereum/pull/26648
two new rules should be added to the transaction validator:

A future transaction can not evict a pending transaction
A transaction can not overspend funds of a sender

These two rules are very important in safeguarding against attackers, who evict normal transactions from the mempool at low costs.
The following code can be referenced for guidance:
Rule1：A future transaction can not evict a pending transaction
 //If the new transaction is a future transaction it should never churn pending transactions
		if pool.isFuture(from, tx) {
			var replacesPending bool
			for _, dropTx := range drop {
				dropSender, _ := types.Sender(pool.signer, dropTx)
				if list := pool.pending[dropSender]; list != nil && list.Overlaps(dropTx) {
					replacesPending = true
					break
				}
			}
			// Add all transactions back to the priced queue
			if replacesPending {
				for _, dropTx := range drop {
					heap.Push(&pool.priced.urgent, dropTx)
				}
				log.Trace("Discarding future transaction replacing pending tx", "hash", hash)
				return false, ErrFutureReplacePending
			}
		}

Rule2： A transaction can not overspend funds of a sender：
// Verify that replacing transactions will not result in overdraft
	list := pool.pending[from]
	if list != nil { // Sender already has pending txs
		sum := new(big.Int).Add(tx.Cost(), list.totalcost)
		if repl := list.txs.Get(tx.Nonce()); repl != nil {
			// Deduct the cost of a transaction replaced by this
			sum.Sub(sum, repl.Cost())
		}
		if balance.Cmp(sum) < 0 {
			log.Trace("Replacing transactions would overdraft", "sender", from, "balance", pool.currentState.GetBalance(from), "required", sum)
			return ErrOverdraft
		}
	}

Thanks for your time!

请添加我们的小助手


Adding an IndexingContext object

Codecov Report

Merging #1268 (a4cf310) into main (13a4473) will increase coverage by 0.02%.
The diff coverage is 98.11%.

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

@@            Coverage Diff             @@
##             main    #1268      +/-   ##
==========================================
+ Coverage   94.23%   94.25%   +0.02%
==========================================
  Files         207      209       +2
  Lines       35275    35277       +2
==========================================
+ Hits        33241    33251      +10
+ Misses       2034     2026       -8

Impacted Files
Coverage Δ

src/schema/field_value.rs
85.71% <0.00%> (-14.29%)
:arrow_down:

src/schema/document.rs
95.31% <94.44%> (+0.10%)
:arrow_up:

src/fastfield/multivalued/writer.rs
93.87% <100.00%> (ø)

src/indexer/index_writer.rs
97.15% <100.00%> (ø)

src/indexer/segment_writer.rs
91.43% <100.00%> (+1.89%)
:arrow_up:

src/postings/indexing_context.rs
100.00% <100.00%> (ø)

src/postings/mod.rs
98.57% <100.00%> (ø)

src/postings/per_field_postings_writer.rs
100.00% <100.00%> (ø)

src/postings/postings_writer.rs
98.02% <100.00%> (-0.51%)
:arrow_down:

src/postings/recorder.rs
98.55% <100.00%> (ø)

... and 7 more

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 13a4473...be12f97. Read the comment docs.


feat: add llrtCustomBinaryDirectory property

Adds a llrtCustomBinaryDirectory property to allow users to use their own LLRT bootstrap binary.
This could be implemented in a few different ways. I tried to keep as much of the existing solution as possible:
If llrtCustomBinaryDirectory is set, it looks for a "bootstrap" binary in that directory, and errors if it cannot find one.
If llrtCustomBinaryDirectory is not set, the binary is downloaded from GitHub and cached in the .tmp directory as before.

@georeeve hi thanks for the PR! to clarify, what is the usecase for this feature? (Why do you want to configure the cache directory?) Thanks.

@georeeve Thanks for the detailed clarification! Actually I have some concerns about this proposed feature:

The bootstrap cache path becomes the same regardless of architecture, version, or binary type. It can confuse some users when they naively set llrtCustomBinaryDirectory prop.
This feature can prevent future changes in the caching strategy. I'd like to hide this part as implementation detail that users don't need to care.

Instead, I'd just overwrite .tmp/llrt/**/bootstrap file for testing purpose as you originally did. The path may change in the future indeed, but you can then adjust the binary path to overwrite.

Those concerns are valid, I still think there's a use case for some projects to want to use a custom binary permanently in their project, perhaps if they apply some specific patches on top of LLRT. Would you accept a llrtCustomBinary property which specifies a file path to a specific bootstrap binary, and use this instead of altering the cache directory logic? We could then leave the caching strategy alone, and completely bypass the afterBundling step if llrtCustomBinary is provided.

I see. then let's add the feature! I'll take a close look at the PR tomorrow so just a moment please :pray:

@tmokmss Sorry for the delay, I've added the llrtBinaryPath prop now, let me know how it looks.

@georeeve I made some minor modification to the code and doc, as well as adding an integ-test. If you are okay with these changes, I'll merge this! :)

@tmokmss LGTM, thanks for doing that.


Suggestion to remove heading "<IP_ADDRESS>. Location of XML schema"

This is just a suggestion.
Section <IP_ADDRESS>. has no siblings. It represents unnecessary nesting.
The heading could be removed and make its text be part of 5.3.1.

Closed with PR #668


RFC: Multi delete

Add a way delete multi resources at same time.
Impl Idea: use table selection and than https://mui.com/material-ui/react-table/#data-table and action items to the resource view, for example delete or restart.

We want to have batch actions in the table but I was thinking we should use an advanced table for this, like  https://www.material-react-table.com/

We have the new table now... so I guess we can revisit this now?

Awesome. Thanks!


[$500] Chat -  Hmm its not here displayed on map image

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

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1697192437355139
Action Performed:
Action Performed:

Open the app
Open any report which has distance request message in it or raise one and open that report
Click on distance request message, it should open page with pay button in header
Send any image in it
Open the sent image in preview by clicking on it
Click on previous arrow and observe that it displays map for sometime and after it displays Hmm its not here

Expected Result:
App should either not display map image in preview or display it without error
Actual Result:
App displays Hmm its not here on map image in attachment preview when accessing the image by navigating from another image
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/93399543/ea3cfb42-0e13-4256-a3ee-5ce2dbd32c3a

Android: mWeb Chrome

https://github.com/Expensify/App/assets/93399543/c56c693e-e2d5-4f6b-80a6-250ff74ef74a

iOS: Native

https://github.com/Expensify/App/assets/93399543/115f8099-4af4-4f2d-880c-7b846cd79a7a

iOS: mWeb Safari

https://github.com/Expensify/App/assets/93399543/da1268eb-17d5-4772-8708-4d628789adf4

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/93399543/095a28be-d0b7-4958-a30c-95fbc70e36e7
https://github.com/Expensify/App/assets/93399543/0b9d5d64-3574-4553-aa0d-b3821fdf0cd8
https://github.com/Expensify/App/assets/93399543/153d490c-09f9-4f83-8738-44092fa65b63

MacOS: Desktop

https://github.com/Expensify/App/assets/93399543/5875dd7e-7616-4d0f-88b5-d859f8cf25e1

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01fc9adefd366e0b5b
Upwork Job ID:<PHONE_NUMBER>476987904
Last Price Increase: 2023-10-14

Proposal
Please re-state the problem that we are trying to solve in this issue.
In an Expense report with a receipt, the map is considered as an Attachment and viewing it causes Hmm its not here to be shown
What is the root cause of that problem?
The distance receipt attachment(or any receipt for that matter) is attached to its own chat report. But when viewing the attachments of the parent expense report, those receipts are considered part of it.
Coming from this check here
https://github.com/Expensify/App/blob/dc1ff84f31ec04206a13489b62f065798e38d7fd/src/components/Attachments/AttachmentCarousel/extractAttachmentsFromReport.js#L48
This will return URLs that are of type  /receipt  which are only accessible from the parent report.
Exmaple:
Expense report ID =<PHONE_NUMBER>520815
We get the following attachments
r/7912337812520815/attachment?source=/chat-attachments/3179016481252166829/w_10b395181b117114c949bf123f30187c010dab65.png
r/7912337812520815/attachment?source=/receipts/w_2d351cf5c9f1c61c66bf3780c4a68342bbeb1a3d.png
But the receipt resource is only available from the context of actual chat report ID, which is reportID=8768068978200431
What changes do you think we should make in order to solve the problem?
We can enforce the above check by making sure we are the chat report is type of chat s follow
if (ReportActionsUtils.isMoneyRequestAction(action) && report.type === CONST.REPORT.TYPE.CHAT) {
This will ignore all the receipts from being included as attachments in the expense reports. Then those receipts can be viewed separately, by clicking the chat report related to the money request.
What alternative solutions did you explore? (Optional)
If we want to make attachment or receipts accessible from other reports, we might need to introduce a new URL parameter that explicitly sets the reportID in the URL,
let's take the above example again. in this case the extractAttachmentsFromReport  should return
r/7912337812520815/attachment?source=/chat-attachments/3179016481252166829/w_10b395181b117114c949bf123f30187c010dab65.png&reportID=7912337812520815
r/7912337812520815/attachment?source=/receipts/w_2d351cf5c9f1c61c66bf3780c4a68342bbeb1a3d.png&reportID=8768068978200431
N/A

It might be worth waiting for https://github.com/Expensify/App/pull/28640 to be merged first. The Receipt + Attachments combinations are pretty unstable before that issue is resolved.

I think this is worth closing for now and then re-opening if it's still occurring when fix image receipt is merged.


feat: tekton log navigation support

plus some core and k8s enhancements to help
depends on #1608
Fixes #1609
Please confirm that your PR fulfills these requirements

[x] Multiple commits are squashed into one commit.
[x] The commit message follows Conventional Commits, which allows us to autogenerate release notes; e.g. fix(plugins/plugin-k8s): fixed annoying bugs
[x] All npm dependencies are pinned.

hmm, github didn't register the travis success notificaiton. let's close and reopen to see if the success notificaiton flows through a second time around. travis was green on this, but github continued to show "pending"


Approximations of higher-order derivatives

Is your feature request related to a problem? Please describe.
I'm working on a project where it's important to estimate higher-order derivatives (e.g. 2nd, 3rd, 4th, and potentially mixed) of quantities in xarray datasets. xarray only has a helper for first derivatives (from https://github.com/pydata/xarray/pull/2398).
Describe the solution you'd like
I'd like to be able to call differentiate with a list of variables (e.g., data_array.differentiate(['x','x','y','y'])) and get the most accurate finite difference approximation of the derivative of the data array with respect to all of those variables.
Describe alternatives you've considered
It's tempting to chain together differentiate to approximate higher-order derivatives (e.g. data_array.differentiate('x').differentiate('x').differentiate('y').differentiate('y')). However, although I'm not an expert in finite difference approximations, I'm not sure if this is equivalent to computing the most accurate nth-order central (or average of forward and backward) differences, especially wrt. edges or with irregular grids. I could be wrong, though.
Additional context
The extent of my knowledge of how to estimate higher-order differences.

estimate higher-order derivatives

You could wrap scipy's function for nth-order derivatives, which uses central differencing. I think that would be an appropriate generalisation to include in xarray.

get the most accurate finite difference approximation

AFAIK there isn't really a single "best" way to do derivatives in general though - you might want forward, backwards, central, etc. depending on the use case. If someone wanted to wrap a bunch of options for numerical finite differences then this might be a sensible place to register an xarray accessor, so that that functionality could live outside xarray whilst still being easily accessible.

derivative of the data array with respect to all of those variables.
It's tempting to chain together differentiate

I'm not an expert either, but it seems to me (based on these notes) that mixed partial derivatives could in theory be computed by chaining together single variable derivatives, and it would be analytically equivalent, but you would be wasting a lot of computation because most of the terms cancel out (see page 122).
There are other complications with taking derivatives too, such as "what grid does the data lie on" (e.g. Arakawa grids), "what should the boundary conditions be", and "is there a metric that encodes the distance between points". These kind of complications are addressed in the xGCM library, which you might be interested in.


Add option to remove comments count.

Currently twetts are shown this way:

Would be great to be able to hide the comments count like this:

https://github.com/thomaswang/minimal-twitter/pull/59


Fixed hamburger menu in component category pages

Fixes Issue🛠
Closes #592
Description👨💻
The hamburger menu was not working on the component category page, after adding js files to the page it was working fine.
Type of change📄

[x] Bug fix (non-breaking change which fixes an issue)

How this has been tested✅
The changes has been through tested by visiting one by one and using Chrome Developer tools
Checklist✅

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added demonstration in the form of GIF/video file
[x] I am an Open Source Contributor

Screenshots/GIF📷

Why the space is uneven between Contributors and Contact @pb0126

Why the space is uneven between Contributors and Contact, pls fix @pb0126

Why the space is uneven between Contributors and Contact, pls fix @pb0126

Okay Fixing


Change References format

Unified project references and references:
References = [
    { Framework = "System" },
    { Framework = "System.Core" },
    { Framework = "System.Numerics" },
    { Framework = "System.Xml" },
    { Framework = "System.Xml.Linq" },
    { Library = "..\\packages\\FSharp.Compiler.Service\\lib\\net45\\FSharp.Compiler.Service.dll", Private=true},
    { Library = "..\\packages\\System.Collections.Immutable\\lib\\netstandard1.0\\System.Collections.Immutable.dll", Private=true},
    { Library = "..\\packages\\System.Reflection.Metadata\\lib\\netstandard1.1\\System.Reflection.Metadata.dll", Private=true},
    { Project = "..\src\FsToml\FsToml.fsproj" }
]

Guid for project is no longer necessary - it's read from project file (either fsproj or toml).
Still don't know what to do with references to .fstoml projects - right now they are ignored when transforming to fsrpoj

Syntax question: does it make sense to split this into 3 blocks?

Initially it was in 2 blocks:
References = [
    { Include = "System" },
    { Include = "FSharp.Core", CopyLocal = 'Always' },
    { Include = "Fable.Core" },
]

ProjectReferences = [
    { Name = Arg, Project = "f3d0b372-3af7-49d9-98ed-5a78e9416098", Private = true },
]

(from #4 )...
But I don't really see a reason for that... user only cares about referencing something, don't need to put it in right place in the file.
Also... Cargo and npm put all (different types of references) in one place ;)

I thought it might be less typing...

Sorry, I don't see how it would be less typing. Can you come up with some example showing what exactly you have in mind?

Oh it's fine I was just wondering.
Am 21.09.2016 6:40 nachm. schrieb "Krzysztof Cieślak" <
<EMAIL_ADDRESS>
Sorry, I don't see how it would be less typing. Can you come up with some
example showing what exactly you have in mind?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fsprojects/fstoml/pull/10#issuecomment-248670099, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AADgNII4NUgAiuHVPICGEZnfNwEwkARuks5qsV3ngaJpZM4KC8j5
.

I don't really have hard feeling about it so if anyone has some better idea feel free to suggest it. It's really simple to change as it's just change in parser part not ProjectModel. :)
[so we can merge it for now, and easily change in the future ;) ]

+1
Am 21.09.2016 6:56 nachm. schrieb "Krzysztof Cieślak" <
<EMAIL_ADDRESS>
I don't really have hard feeling about it so if anyone has some better
idea feel free to suggest it. It's really simple to change as it's just
change in parser part not ProjectModel. :)
[so we can merge it for now, and easily change in the future ;) ]
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fsprojects/fstoml/pull/10#issuecomment-248674631, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AADgNCdi0-nyHS2XP41DKiZ7ZqNDqv23ks5qsWGfgaJpZM4KC8j5
.

why not
References =["System", "mylib.fsproj", "someassembly.dll"]

? (no idea if that is valid TOML syntax :) )

@nosami: It would be valid TOML syntax assuming that all what we want to specify is reference name... the problem is with things like  CopyLocal = 'Always' and Private=true etc. So we are kinda forced to use objects instead of just strings.


User menu does not switch on first click

In the user menu (when logged in)

when I click on an option it does not jump to display it BUT only the first time.

Fix Merged


[Feature]: Discover Playlists in Home Screen

Is your feature request related to a problem? Please elaborate.
Would be a cool Feature If i can add the Playlists from the Discover Page directly on the Main Page.
For example "Coming Soon" or "avalible from your Wish list".
Describe the solution you'd like
Idk
Additional Information
No response

you can just pin discover and then those will be available on the main page

Feature Requests have been moved to https://features.metamanager.wiki.
This Request


Docs update: update cloudflare_vectorize.mdx

Incorrect file extension type, causing the example to be unexecutable.

Ah, thanks!


Added async streams

As promised here is the async stream. My use is to scrape entire subreddits. Sorry I had to make so many changes, some of them were necessary to ensure stability. Some notes is not to create an HttpClient and instead request from the DI container. And we always have to dispose the JsonDocument after we're done with it. My other changes were to conform to best practices. I tried my best to work with your existing implementation instead of stomping over it, let me know if you need any changes

I think we can remove the old non streaming service.
Can't run it locally right now, will do later.

I think we can remove the old non streaming service and associated extractors. Having the whole json answer in POCOs is much better.

I kept the non streaming service since it still has it's use for one off cases. I changed everything to use POCOs and simplified stuff as a result.

Looks like tests have some issue.
Let's fix it, but other than that it looks good to me :)

@ricardoalcaraz No rush. Let me know if I can help with anything.

I'll take a look on why tests failed and merge it

https://github.com/ricardoalcaraz/Scrolller.Net/pull/1
Added these to your update so you can update this PR.


BASICMASTER L2/L2II/Jr. emulators

As far as I know, there are four emulators available at present: j68, bm2, eBasicmasterJr, and MAME. It seems that there was also the eMB688x, which is no longer available.
I wrote a short blog post about the first three.
https://www.zukeran.org/shin/d/category/pc/basicmaster/page/2/

Actually, I will get to this; personal life just got in the way of keeping up with my GitHub stuff, sorry.


Add support for events

See issue #18
Add event manager type, update events constants, wrap libvlc_media_player_event_manager.
I fixed up events.go from the adrg repo's master branch to match names and values from the libvlc sources. I created an eventmanager.go heavily based on the old adrg event branch. In that file I completed the TODOs, added a goCallback implementation and made the event registry variables into a a struct for easier housekeeping.
In player.go I wrapped libvlc_media_player_event_manager. I've tested the MediaPlayerEndReached event. I've not tested any other events or wrapped any other APIs for getting event managers. I'd have to construct apps for that, as my app doesn't need these events.

This pull request is now part of PR https://github.com/adrg/libvlc-go/pull/20. Closing.


Fix the gas opcode

Change the weight left pallet function to ref_time_left which return the left over ref_time as return value
Change it in revive

https://github.com/paritytech/polkadot-sdk/pull/6908
https://github.com/paritytech/revive/pull/136


[NEW] Improve project development guide.

We need to improve the project development guide by updating for instance this section.

Closing it in favor of https://github.com/RocketChat/Rocket.Chat.Android/issues/716


markdown syntax for code block does not change color

Prerequisites

[X ] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
This issue was originally posted in the discussion group.
https://discuss.atom.io/t/markdown-code-block-syntax-not-green-in-editor/41422/3
When using code block markdown syntax, the editor does not show the resulting code block as green. I have used different themes and have run in safe mode. This occurs in 1.15, but not in 1.12 or 1.14. 1.13 was not tested.
Steps to Reproduce

Enter the ~~~ syntax for a code block.

code block
code block

The editor does not show the result in green highlighted text.

Expected behavior:
Text in a code block is green, or some other highlighted color (based on theme).
Actual behavior:
Text in a code block is the same as non code block text.
Reproduces how often:
100% in atom 1.15
Versions
Atom    : 1.15.0
Electron: 1.3.13
Chrome  : 52.0.2743.82
Node    : 6.5.0
Red Hat Enterprise Linux 7.3
You can get this information from copy and pasting the output of atom --version and apm --version from the command line. Also, please include the OS and what version of the OS you're running.

I was able to reproduce as well on Ubuntu 16.04 - so it does loo like the behavior changed though it's not super clear why (e.g. it doesn't seem like an intentional change).


still going?

Please tell me you haven't given up.This is such a cool project. I'd loan a hand

Nah - Just stepped away for a while. Glad to have another contributor.
Btw -- you're really taking off with this. I'm just making sense of the code you're writing... I'll let you know when i have questions.

Is your forked build stable? I think I want to merge some changes in

up!

Awesome. I'm still working on it, but i've been focusing on the design for a 3d printed case

that's awesome!


Made a few changes to .eslintrc, just to make it a bit more comfortable

The eqeqeq and no-eq-null rules are so you can do != null, to check for null and undefined. comma-dangle is so you don't have to add a trailing comma unless there's a newline.

No probs, but keep in mind that at some point I'm planning to change it to airbnb's one.

Oh awesome, yeah that would be great. I think these changes move it closer to airbnb's rules.


1138 payload size unit

From my side, i think all is correct... If you prefer I can include more tests but they don't seem mandatory.

Hello @carlosb1!
I've checked with the team, we are currently working on a new search engine, and this functionality will be already improved in it. Sorry you spent time on it, but thanks for your PR anyway :)
Closing this

Hey @carlosb1, I just want to add to what @curquiza wrote! We are so sorry, it's totally our fault.
We are not doing a good job right now since our roadmap is not public. That would have prevented this situation. Be assure that as soon as we release our new engine (version 0.21), which is soon, we will be more transparent. Just so you know, we are actually hiring a PM to help us with that.
Can you send me an email at<EMAIL_ADDRESS>I would like to send you some stickers, a small gesture to apologize :D

Don't worry, I work in another startup, I understand the situation. I only hope to contribute more for future roadmaps-

Still want to send you some stickers if you want :D


Review market details modal - update to heading color

Design change to update to the heading color of both market details modals:
Update color to: F2C94C

Decision not to do this, change to modal component doesn't seem worth it.


cant get segmentation state for BrushTool

Describe the Bug
Hello. i cant get segmentation state for BrushTool with circlular strategy on stack viewports

i draw any seg, then i want to save tool state as json.
after reload page i want add this json for redraw my segmentation
Steps to Reproduce

add BrushTool and draw
cornerstoneTools.segmentation.state.getSegmentations()[0]

The current behavior
here is result of 2 step
{
    "segmentationId": "SEGMENTATION_derived:259c4ae7-2948-4274-aef5-e415cca689ab",
    "cachedStats": {},
    "segmentLabels": {},
    "label": null,
    "segmentsLocked": {},
    "type": "LABELMAP",
    "activeSegmentIndex": 1,
    "representationData": {
        "LABELMAP": {
            "imageIdReferenceMap": {}
        }
    }
}

The expected behavior
i expected state with coord look like as annotation for redraw after page reload. but i cant get any coords, doc and examples do not help
OS
mac os
Node version
16
Browser
chrome

there is no coordinates for the brush, labelmap segmentation is actually pixelData itself, you can look at the values in the cornerstone.cache


Java debug fix. Added missing libs.deployDir

Incorporates and supersedes #91. Adds missing libs.deployDir to debug-deploy. Updates debug-deploy to be like deploy target

@gerth2 This fixes java debugging for me. Does it fix your problems as well?

Hmmm possibly? Will have test board access tomorrow morning, will check then!
I think I still had issues with the post-deploy connection between the Eclipse debugger and the remote JVM on the RIO starting up, but I haven't dug into that much more yet... I presume some of that behavior defined is within the the definition of the WPIlib eclipse plugin, which hasn't been changed in our series of updates yet. Some of it may also be my eclipse settings....I guess I still have much to actually look into </stream_of_consciousness>

Double checked - this does not 100% fix my issues. Although the ant build goes through without errors, Eclipse cannot establish the remote debug connection to the RIO. The same issue is present from at least one other user. (see https://www.chiefdelphi.com/forums/showthread.php?p=1631965#post1631965)... Will do some more investigation soon....

Do you know which option of resolving the roboRIO the ant deploy is using when you are seeing the debugger fail to connect? The debugger will only connect using the mDNS address right now. The ant deploy has many more resolution options in it.

Per the console output from manually running "ant debug-deploy", yes I am getting the debug and deploy to find the robot over mdns:
get-target-ip:
     [echo] Trying Target: roboRIO-1736-FRC.local
     [echo] roboRIO found via mDNS

Please open a separate issue for the other debug issues.

Sounds good. I definitely concur the change from this PR is needed. I will open separate issue. Thanks folks!


Make last sample on /components/swap actually swap

Add a hidden checkbox to the last sample to make it work.
(disclaimer: I'm making this PR from the github editor and I haven't actually tried this code, but judging from other code around it seems this is what needs to be done)

That example supposed to show how the class name swap-active controls the visibility. It doesn't need to have a checkbox. It's for a situation where people need to show/hide the content by adding swap-active class.


Make yankpad-file and yankpad-default-category customizable

Emacs customization system is useful. It lets the user configure variables interactively, and the user can choose whether or not to persist settings in custom-file. I keep local settings in custom-file, while maintaining global settings in my public repository.
Now I want to use yankpad at work, and its yankpad-file must be local, so I have to configure yankpad-file as a custom variable. I have implemented it.
Optionally, you may want to add :set property to yankpad-file, so that snippets are reloaded after yankpad-file is changed.
yankpad-default-category usually doesn't have to be customizable, but some non-English-speaking users may prefer a category name in their own locale, so it would be slightly better to make it explicitly customizable.

Hi! I must have missed that you submitted these pull requests. Looks nice, thanks!
I don't quite understand what you mean by the :set property. Do you have an example?


--disable-gcc-warn-format-literal is broken

--disable-gcc-warn-format-literal is broken

It is implemented as --disable-gcc-warn-non-literal, but documented as --disable-gcc-warn-format-literal
Need to verify that -Wformat is still usable with this option.

This was fixed with c380605ec816d35f3363c502bbdf75ab3f48f08b.


Theme: Fields are sorted wrong when containing miscellaneous data

In my case the problem was with this page/column
Virtualmin -> {Any Virtual Server} -> Edit Users -> Last login
You can fix this by adding data-sort="{timestamp}" attribute to the <td>. I don't know Perl much & there might be other tables with date columns, so I'm not PRing myself.

Hi,
Does this column contain nonnumerical data? Like none for example?
Yes your solution would work but it should be done on Virtualmin side.

Yes actually, there is also the value Never.
Will you fix it via JavaScript then?

I could but there might be more places where it would require the change. The right way is to do it on Perl side. I would filled an issue to Webmin/Virtualmin repo. data-sort is something that DataTables expect.
Joe, do you think we could add it here and there on Perl side? There are some places where natural sorting gets broken as well. For example, when we do sorting by size and a cell in a column contains non-applicable data, like none, the whole thing stops working. Having data attr would solve a problem. For size it could be the size in bytes, where none would be 0 and for date/time it would be a timestamp, same with 0 for Never, and so on. It should work as it is, with the current version of Authentic Theme and at the same time wouldn't have any impact on old themes?

Alright, it will be implemented on the theme side in 18.20.
Let me know other places which might need the fix as well.

Version 18.20 is out, please upgrade.


Netease music throws error if downloading geo-restriction song (without handling it)

Checklist

[x] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2021.12.17
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log

[netease:song]<PHONE_NUMBER>: Downloading song info
[netease:song]<PHONE_NUMBER>: Downloading JSON metadata
Traceback (most recent call last):
  File "... \netease_test.py", line 55, in <module>
    info = ydl.extract_info(url='https://music.163.com/#/song?id=1296550461', download=False)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 808, in extract_info
    return self.__extract_info(url, ie, download, extra_info, process)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "... \venv\lib\site-packages\youtube_dl\extractor\common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "... \venv\lib\site-packages\youtube_dl\extractor\neteasemusic.py", line 212, in _real_extract
    formats = self.extract_formats(info)
  File "... \venv\lib\site-packages\youtube_dl\extractor\neteasemusic.py", line 119, in extract_formats
    if self._is_valid_url(song_url, info['id'], 'song'):
  File "...\ venv\lib\site-packages\youtube_dl\extractor\common.py", line 1469, in _is_valid_url
    if not (url.startswith('http://') or url.startswith('https://')):
AttributeError: 'NoneType' object has no attribute 'startswith'

Description

The Netease extractor can download the song with no geo-restriction. But if the song with geo-restriction, it will throw this error instead of handling and sending a note in the terminal.
Also, besides this handling issue, it seems like the extractor still fail for extracting the geo-restricted song with a proxy in China (I did it in YDL_opt as 'proxy': 'user:pw@ip:port' format). I am not sure this is not supported or this is an issue with my proxy.
(blocking example: https://music.163.com/#/song?id=1807381939 | non-blocking example: https://music.163.com/#/song?id=1456673752)

It shouldn't be possible for this to happen as song_url can't be None. Has the extractor/neteasemusic.py file been modified, or is it an old version?
Please post a full verbose log using the released version, eg:
youtube-dl -v -F "https://music.163.com/#/song?id=1456673752"

It works properly with the non-blocking example, but the error that I had shown above is from blocking example. (User doesn't know if the song blocking or not because the link (e.g: https://music.163.com/#/song?id=1807381939) is still working in the browser though audio playing is prohibited).
The version of neteasemusic.py and aes.py that I used is also the newest version in the repo (9 days ago update, not 2021.12.17 update)
Full verbose log for https://music.163.com/#/song?id=1807381939:
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Git HEAD: 735cf45
[debug] Python version 3.9.12 (CPython) - Windows-10-10.0.19044-SP0
[debug] exe versions: ffmpeg 2021-11-25-git-522f577d7e-full_build-www.gyan.dev, ffprobe 2021-11-25-git-522f577d7e-full_build-www.gyan.dev
[debug] Proxy map: {}
[netease:song]<PHONE_NUMBER>: Downloading song info
[netease:song]<PHONE_NUMBER>: Downloading JSON metadata
Traceback (most recent call last):
  File "... \netease_test.py", line 57, in <module>
    info = ydl.extract_info(url='https://music.163.com/#/song?id=1807381939', download=False)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 808, in extract_info
    return self.__extract_info(url, ie, download, extra_info, process)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "... \venv\lib\site-packages\youtube_dl\YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "... \venv\lib\site-packages\youtube_dl\extractor\common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "... \venv\lib\site-packages\youtube_dl\extractor\neteasemusic.py", line 212, in _real_extract
    formats = self.extract_formats(info)
  File "... \venv\lib\site-packages\youtube_dl\extractor\neteasemusic.py", line 119, in extract_formats
    if self._is_valid_url(song_url, info['id'], 'song'):
  File "... \venv\lib\site-packages\youtube_dl\extractor\common.py", line 1469, in _is_valid_url
    if not (url.startswith('http://') or url.startswith('https://')):
AttributeError: 'NoneType' object has no attribute 'startswith'

The code for producing the logs is:
YDL_OPTIONS = {'format': 'bestaudio/best', 'noplaylist': True, 'verbose': True, 'list-formats': True}

with YoutubeDL(YDL_OPTIONS) as ydl:
    info = ydl.extract_info(url='https://music.163.com/#/song?id=1807381939', download=False)
    print(info)

I also sent a new issue #31301 about neteasemusic.py download error with a proxy, which is a different issue from this. This issue shows neteasemusic.py pops error with AttributeError: 'NoneType' object has no attribute 'startswith' if downloading a geo-restricted song without proxy. And #31301 shows a ytdl broken bug if downloading a geo-restricted song with a proxy in mainland China.

Thanks, that explains it.
If I fix the crash 'NoneType' object has no attribute 'startswith' at l.119,
             for song in try_get(data, lambda x: x['data'], list) or []:
                 song_url = try_get(song, lambda x: x['url'])
-                if self._is_valid_url(song_url, info['id'], 'song'):
+                if song_url and self._is_valid_url(song_url, info['id'], 'song'):
                     formats.append({

we get this instead:
$ python3 -m youtube_dl -v -F 'https://music.163.com/#/song?id=1807381939'
[debug] System config: ['--prefer-ffmpeg']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '-F', 'https://music.163.com/#/song?id=1807381939']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Git HEAD: fdb16c0d6
[debug] Python version 3.9.14 (CPython) - Linux-4.4.0-210-generic-i686-with-glibc2.23
[debug] exe versions: avconv 4.3, avprobe 4.3, ffmpeg 4.3, ffprobe 4.3
[debug] Proxy map: {}
[netease:song]<PHONE_NUMBER>: Downloading song info
[netease:song]<PHONE_NUMBER>: Downloading JSON metadata
[netease:song]<PHONE_NUMBER>: Downloading JSON metadata
[netease:song]<PHONE_NUMBER>: Downloading JSON metadata
ERROR: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/df/Documents/src/youtube-dl/youtube_dl/YoutubeDL.py", line 816, in wrapper
    return func(self, *args, **kwargs)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/YoutubeDL.py", line 837, in __extract_info
    ie_result = ie.extract(url)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/neteasemusic.py", line 213, in _real_extract
    self._sort_formats(formats)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/common.py", line 1374, in _sort_formats
    raise ExtractorError('No video formats found')
youtube_dl.utils.ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

$

The data returned as JSON metadata (l.116) looks like this:
{'code': 200,
 'data': [{...
           'code': 404,
           ...
           # no URL here
         }]
}

In a successful case (eg https://music.163.com/#/song?id=1456673752), code is 200 (success) and there is a URL. Presumably 404 means that the site couldn't retrieve the playable song in its back-end processing.
With some error trapping the output can be like this:
...
ERROR: No media links found (site code 404)
Traceback (most recent call last):
  File "/home/df/Documents/src/youtube-dl/youtube_dl/YoutubeDL.py", line 816, in wrapper
    return func(self, *args, **kwargs)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/YoutubeDL.py", line 837, in __extract_info
    ie_result = ie.extract(url)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/neteasemusic.py", line 212, in _real_extract
    'id': song_id,
  File "/home/df/Documents/src/youtube-dl/youtube_dl/extractor/neteasemusic.py", line 132, in extract_formats
    raise ExtractorError(
youtube_dl.utils.ExtractorError: No media links found (site code 404)

CC: @xyb

@TimG233 @dirkf I added some defensive code: #31303


Add Microsoft Python Language Server support

This is a little rough, but it adds autocompletion/linting support as well as auto install of dotnet/the language server for a fixed version (latest). Most other LSP clients parse an XML endpoint to determine the latest version and pull; also this currently doesn't have support for installing on windows. I'm still not sure if I've completely enabled all of the LSP features.

There's a lot of shell-isms here, which could be avoided by just using Lua (including all Vimscript functions available from Lua via vim.fn).
No reason to block this meanwhile, but hoping it can be improved.

Of note, this also fails like pyls on indexing numpy... Here is the log

Here is the log, and this is my best attempt to format it here

looks like a bunch of docstrings were dumped to stdout?

Yeah that was my impression. Microsoft has reported issues with indexing numpy before, but nothing like this (See: https://github.com/microsoft/python-language-server/issues/1414). It's unclear if vscode python has some specific workaround for numpy, which shows reasonable completion results on my mac.
I'd consider tensorflow a non-trivial dependency, and it works for that:

I can file an issue on Microsoft's repo, unless I'm missing some special initialization option.

I can file an issue on Microsoft's repo, unless I'm missing some special initialization option.

They would want to know how the server is init'd and what requests we're sending I guess.

This looks good, thanks for seeing it through! If you tested that the latest version (including install) works, we can merge it and improve Windows support after.

It seems to install fine on Windows/Mac/Linux, but runs into problems executing dotnet from within neovim for Windows A fatal error was encountered. The library 'hospolicy.dll' required to execute the application was not found.
Everything runs fine on mac/linux. For future work:
[ ] - Automatically pull the latest version of pyls_ms (maybe we should add LspUpgrade in addition to LspInstall)
[ ] - Debug whatever is going on with top level numpy imports (strangely submodules like numpy.linalg show completion fine, so maybe this is a broader LS problem)
[ ] - Fix execution of dotnet on Windows
[ ] - Fix setting appropriate root directory (or throw error so language server doesn't silently fail in non-root repositories)

What's even stranger, is that the hover/documentation commands work for top-level modules like np.dot/np.abs that fail to show up in the completion results. I'm wondering if this is a bug in the LSP implementation since it seems to work fine in lsp-python-ms and VScode


Improve documentation for user-defined rules

[ ] Factor out into a separate page
[ ] Examples

[ ] yaml
[ ] example of usage

[ ] Make sure all features are covered

@deemp the puzzle #151 is still not solved.

@deemp the only puzzle #151 is solved here.


Add arbitrary headers to requests.

Some applications need us to pass some headers with the request for config purposes.
e.g:
nuxeo-virtual-host - https://doc.nuxeo.com/display/ADMINDOC58/HTTP+and+HTTPS+Reverse-Proxy+Configuration
X-Graylog-Server-URL - http://docs.graylog.org/en/2.1/pages/configuration/web_interface.html
I propose that we add a mechanism to support adding headers to requests.  I feel like this may belong on the frontend but I am willing to be convinced otherwise.
There may be a better more dynamic way to do this, than just adding static headers... perhaps this could be configured with a template or something...
n.b. creating this after a discussion with cnf in the support slack.

Thanks! I'd also like to add a mention X-Script-Name  which quite a few things count on.

i need X-Script-Name also

That's very much needed to me too.

You can follow the PR # #1236.

Closed by #1236.


Short solution needed: "How to set opacity" (python-matplotlib)

Please help us write most modern and shortest code solution for this issue:
How to set opacity (technology: python-matplotlib)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments explain solution.
Link to this issue in comments of pull request.

How to set chart opacity


How to specify copies

<psf:ParameterDef name="psk:JobCopiesAllDocuments">
<psf:Property name="psf:DataType">
<psf:Value xsi:type="xsd:QName">xsd:integer</psf:Value>
</psf:Property>
<psf:Property name="psf:UnitType">
<psf:Value xsi:type="xsd:string">copies</psf:Value>
</psf:Property>
<psf:Property name="psf:Multiple">
<psf:Value xsi:type="xsd:integer">1</psf:Value>
</psf:Property>
<psf:Property name="psf:MaxValue">
<psf:Value xsi:type="xsd:integer">9999</psf:Value>
</psf:Property>
<psf:Property name="psf:MinValue">
<psf:Value xsi:type="xsd:integer">1</psf:Value>
</psf:Property>
<psf:Property name="psf:DefaultValue">
<psf:Value xsi:type="xsd:integer">1</psf:Value>
</psf:Property>
<psf:Property name="psf:Mandatory">
<psf:Value xsi:type="xsd:QName">psk:Unconditional</psf:Value>
</psf:Property>
<psf:Property name="psk:DisplayName">
<psf:Value xsi:type="xsd:string">份数</psf:Value>
</psf:Property>
</psf:ParameterDef>

Thanks for pointing that out. It's a simple feature that I missed due to not needing it myself. I'll add it when I have some free time, but it might take a while as I'm currently overrun.

Thanks for pointing that out. It's a simple feature that I missed due to not needing it myself. I'll add it when I have some free time, but it might take a while as I'm currently overrun.

thanks


New exercise: Grains

Source
https://github.com/exercism/problem-specifications/tree/main/exercises/grains
Test Exercise
because of the large numbers, only decfloat34 worked of the Predefined Numeric Types
Even with int8 there are overflows

SAP Unit Tests

decfloat34 type missing in transpiler, https://github.com/abaplint/transpiler/issues/588

https://github.com/abaplint/transpiler/issues/595

no need for decfloat34. solution works fine with type p
    TYPES: type_result TYPE p LENGTH 16 DECIMALS 0.
    METHODS square
      IMPORTING
        !input        TYPE i
      RETURNING
        VALUE(result) TYPE type_result
      RAISING
        cx_parameter_invalid .
    METHODS total
      RETURNING
        VALUE(result) TYPE type_result
      RAISING
        cx_parameter_invalid .

you were right @mbtools thanks
changed it to p and it works
Do we have to worry about the abaplint error?

yes.
It's now an abapGit repo, this needs package.devc.xml and the xml for the class. Best to push from a SAP system using abapGit. This will also make sure the end-of-file for code is proper (i.e. a newline).
Or copy  package.devc.xml and a class xml from another folder and make the necessary changes.

@mbtools my dev 1909 was a mess, so the abapGit Setup was a opportunity to set it up proberly
all green now 🥳 (was also finally time)

exercise is only and green 👌

My solution works on website but fails on Docker image:
https://exercism.org/tracks/abap/exercises/grains/solutions/mbtools

ABAP seems to have a slight problem with accuracy of type p...


How to get a note to play in GarageBand?

I've tried a few times to use this, and while I can get it to connect to my iPhone 5s, sending notes doesn't seem to work. I pair the microbit via the microbit app, check it's connected in the iOS bluetooth settings, go in to garage band, in to it's advanced settings, connect to the microbit, and everything seems happy, the microbit indicates it has a device connected, but garageband never responds to any keypress events.
basic.forever(() => {
    if (input.buttonIsPressed(Button.A)) {
        midi.toneOn(262)
        led.plot(0, 3)
    } else {
        midi.toneOff(262)
        led.unplot(0, 3)
    }
})
input.onGesture(Gesture.ThreeG, () => {
    midi.playDrum(DrumSound.LowBongo)
})
bluetooth.onBluetoothConnected(() => {
    led.plot(4, 3)
})
bluetooth.onBluetoothDisconnected(() => {
    led.unplot(4, 3)
})
basic.showLeds(`
    . . . . .
    . # . # .
    . . . . .
    . . . . .
    . # # # .
    `)
bluetooth.startMidiService()

LEDs on the microbit indicate connection works, and the button press works. I've tried before with event based button reading and that didn't work. I just can't figure it out. Maybe someone could make a video of this being used to explain how to use it in practice? all i found was one in japanese, connecting to a windows pc, but unfortunately my PC doesn't have BLE support, only my Mac, which doesn't seem to be able to connect to it as a bluetooth midi device at all.

I have chibi:bit which is a micro:bit compatible board. With this board, I could connect Bluetooth MIDI by the following video method.
https://www.youtube.com/watch?v=RA8Y_zW4jn0
I want to know if it works the same way with your micro:bit.

Ah yes! That works. I just needed to put the Start Bluetooth MIDI block inside the bluetooth connected event instead of the start event. How confusing! I would have thought the device would need to start advertising MIDI before it was connected to, to appear in garageband.