Crashes instead of displaying "Could not find any answers for this topic" when it wasn't able to find any relavant information.

For topics that return no results, it crashed rather than put out a meaningful error.
From the logs:
Of course, the information I've gleaned from your data is quite limited, so additional subtopics or a rephrasing of these may be more suitable depending on the depth and focus of the report.
📋Subtopics: []
ERROR:    Exception in ASGI application
Traceback (most recent call last):
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 244, in run_asgi
result = await self.app(self.scope, self.asgi_receive, self.asgi_send)  # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in call
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/applications.py", line 123, in call
await self.middleware_stack(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/middleware/errors.py", line 151, in call
await self.app(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 776, in app
await route.handle(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 373, in handle
await self.app(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 96, in app
await wrap_app_handling_exceptions(app, session)(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 94, in app
await func(session)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/fastapi/routing.py", line 348, in app
await dependant.call(**values)
File "/data/misc/gpt-researcher/backend/server.py", line 53, in websocket_endpoint
report = await manager.start_streaming(task, report_type, report_source, websocket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/websocket_manager.py", line 57, in start_streaming
report = await run_agent(task, report_type, report_source, websocket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/websocket_manager.py", line 75, in run_agent
report = await researcher.run()
^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/report_type/detailed_report/detailed_report.py", line 36, in run
subtopics = await self._get_all_subtopics()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/report_type/detailed_report/detailed_report.py", line 62, in _get_all_subtopics
return subtopics.dict()["subtopics"]
^^^^^^^^^^^^^^
AttributeError: 'list' object has no attribute 'dict'
INFO:     connection closed

Actually there may be something deeper here. It may be that there's an assumption (based on using powerful models like GPT-4o) that the text analysis model can write good JSON which isn't necessarily true. For example I have just used The Pitbull for the text analysis (very good, efficient and powerful), but it produced bad JSON (see below).
We probably should have a specialist LLM for text to JSON encoding (ie "Smart", "Fast" and "Coding" LLM). For example codestral would make short work of the encoding task.
Here's the Huggingface to the LLM: https://huggingface.co/fblgit/UNA-ThePitbull-21.4B-v2
This is the research question: "What is the latest news from the war in Ukraine taking into account all factors, including politics in 3rd party entities, affecting it?"
Here'e the output from the failure:
Finalized research step.
💸 Total Research Costs: $0.006954480000000001
🤔 Generating subtopics...
🤖 Calling una-thepitbull-21.4b-v2_q5_km:latest...
Exception in parsing subtopics :  Invalid json output: :Sure, here's the report on the recent developments in Ukraine and the key factors affecting it based on your provided research data. I've organized the subtopics in a logical order for easy readability:
{
"subtopics": [
{
"task": "Latest6 n news from the war in Ukraine"
},
{
"task": "Factors including politics in 3rd party entities affecting the war"
},
{
"task": "Peace summit and its outcomes"
}
]
}
📋Subtopics: []
ERROR:    Exception in ASGI application
Traceback (most recent call last):
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 244, in run_asgi
result = await self.app(self.scope, self.asgi_receive, self.asgi_send)  # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in call
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/applications.py", line 123, in call
await self.middleware_stack(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/middleware/errors.py", line 151, in call
await self.app(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 776, in app
await route.handle(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 373, in handle
await self.app(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 96, in app
await wrap_app_handling_exceptions(app, session)(scope, receive, send)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
raise exc
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/starlette/routing.py", line 94, in app
await func(session)
File "/data/misc/gpt-researcher_env/lib/python3.11/site-packages/fastapi/routing.py", line 348, in app
await dependant.call(**values)
File "/data/misc/gpt-researcher/backend/server.py", line 53, in websocket_endpoint
report = await manager.start_streaming(task, report_type, report_source, websocket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/websocket_manager.py", line 57, in start_streaming
report = await run_agent(task, report_type, report_source, websocket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/websocket_manager.py", line 75, in run_agent
report = await researcher.run()
^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/report_type/detailed_report/detailed_report.py", line 36, in run
subtopics = await self._get_all_subtopics()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/misc/gpt-researcher/backend/report_type/detailed_report/detailed_report.py", line 62, in _get_all_subtopics
return subtopics.dict()["subtopics"]
^^^^^^^^^^^^^^
AttributeError: 'list' object has no attribute 'dict'

Hey @Speedway1 this is definitely an issue with output inconsistency in LLMs. GPT Researcher is fully tested using GPT but would love the communities support in improving it for other LLMs as well. Which LLM are you using?

Yes, agreed, I was doing further tests and came to the same conclusion.
I was using "pitbull" https://huggingface.co/fblgit/UNA-ThePitbull-21.4B-v2
But then I swapped over to command-r which works much better but even with command-r this issue comes up occasionally.
Will try with some other models and report back here.

Can you explain the rational for this? Why not just catch errors on get_sub_queries and return an empty list if needed?

It would need to catch the exceptions to do that but yes, that's a great solution.
This way avoids the exception in the first place. But of course other exceptions could occur.


Allow onClick handler for Control.reset

The Problem
I want to toggle form state to display the form value after user click Cancel. So I wrote this <Control.reset onClick={this.toggleEditable}>Cancel</Control.reset>. But the this.toggleEditable isn't called
Steps to Reproduce
Expected Behavior
onClick handler can be called
Actual Behavior
onClick handler isn't called
Reproducible Code Example
(please fork from this CodePen template or this CodeSandbox template)

Can you create a reproducible code example?


Export Report Formats

Before you submit an issue we recommend you drop into our Slack workspace and ask any questions you have or mention any problems you've had getting started with HospitalRun.
Please read this entire template before posting any issue. If you ignore these instructions
and post an issue here that does not follow the instructions, your issue might be closed,
locked, and assigned the missing discussion label.
🚀 Feature Proposal
I would like to recommend that the options to export reports should have additional formats like portable document format and spreadsheet.
Motivation
This will allow for flexibility on how to work with the generated reports better.
Example
Currently, reports are generated in comma separated values format.

Before you submit an issue we recommend you drop into our Slack workspace and ask any questions you have or mention any problems you've had getting started with HospitalRun.

Dear @codefusser , thank you for your suggestions. Kindly note of the above requirements before you can log issues.


add phase 1 progress reporting to dmv controller

status:
  conditions:
  - category: Advisory
    durable: true
    lastTransitionTime: "2020-11-03T22:00:14Z"
    message: 'The migration has failed.  See: Errors.'
    reason: WaitForRsyncClientPodsCompleted
    status: "True"
    type: Failed
  errors:
  - One or more pods are in error state
  failedPods:
  - name: directvolumemigration-rsync-transfer-pvc-0
    namespace: pvc-migrate-bmark0
  itinerary: Failed
  observedDigest: fd9870dc12dde5f480b520377a9b5f6b6984fc0d2378dcb94f1ab721557731b2
  phase: Completed
  startTimestamp: "2020-11-03T21:57:50Z"

$ oc get directpvmigrationprogress -n pvc-migrate-bmark0     directvolumemigration-rsync-transfer-pvc-0 -oyaml
..
..
..
status:
  conditions:
  - category: Required
    lastTransitionTime: "2020-11-03T21:16:00Z"
    message: The progress is available
    status: "True"
    type: Ready
  logMessage: |
    rsync: --human: unknown option
    rsync error: syntax or usage error (code 1) at main.c(1578) [client=3.1.3]
  observedDigest: 419049d2080899448c62e94767b4fa9dac4a055e134c86ea1e740ace3a489f7a
  phase: Failed

With the most recent change added the logic to:

fail the migration to if one or more failed rsync client pods.
see which pods failed on dvm CR
get the dpmp cr to see logMessageon why the Pod was failing

@alaypatel07 can we create DMVP object in the openshift-migration namespace?

@pranavgaikwad sure!

can we create DMVP CR in the openshift-migration namespace?


Update server example to send to all clients.

I changed the server example to send to all clients.

This should be another example, e.g. examples/broadcast_server. The existing example is meant to just echo a single connection.

Ah okay, the description at the top says "A chat server that broadcasts a message to all connections."
I'll update that description for the existing example, and move this example to another file soon.


SCMOD-3910: Updated to add contract and stub code projects

https://jira.autonomy.com/browse/SCMOD-3910

Could you update the Job Service to use this?  If you were to do so how much code would it remove?


HTTP Error 500 + "Could not load roles"

I could need some pointers on how to further debug this. I try to deploy this chart, but am stuck at "Internal Server Error". It seems to be connected to when storageusers  is set to s3ng. If I set it to ocis and redeploy the chart from scratch, I can login.
First some logs and then my config:
ingress-nginx
<IP_ADDRESS> - - [13/May/2024:21:16:18 +0000] "GET /ocs/v1.php/cloud/user HTTP/2.0" 500 0 "https://ocis.domain.tld/web-oidc-callback?code=qgKy4tNlcX7EYY_n0NJAXT9IKvhzfYuI&scope=openid%20profile%20email&session_state=eeff02d8d4a7dbce9d755cd127eee89380992734c126ee12ca0ae2632fe6fe15.cXW_U1gVwcSYs4BQGfzw9V4IkK6YRbNh33OcWs-i838&state=5e0962bc8abd431cbd7a09b6ed7d3259" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36" 1258 0.073 [ocis-proxy-9200] [] <IP_ADDRESS>:9200 0 0.074 500 6310a8cf-ecac-41ab-94bf-fb6e65cf7189

proxy-..-pod:
{"level":"info","service":"proxy","proto":"HTTP/1.1","request-id":"00380f3e-52b6-4dc2-a8db-7d5cb2ab88da","traceid":"503282f7958ea7331a359732389d547e","remote-addr":"<IP_ADDRESS>","method":"GET","status":200,"path":"/ocs/v1.php/cloud/capabilities","duration":3.193941,"bytes":3105,"time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/middleware/accesslog.go:34","message":"access-log"}
{"level":"info","service":"proxy","proto":"HTTP/1.1","request-id":"f9c20b29dd32806513a4b7693748717e","traceid":"67c9e2f9d84664033b44c34b48e7fcb5","remote-addr":"xxx.xxx.63.230","method":"GET","status":200,"path":"/konnect/v1/userinfo","duration":37.805854,"bytes":265,"time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/middleware/accesslog.go:34","message":"access-log"}
{"level":"error","service":"proxy","error":"{\"id\":\"com.owncloud.api.settings\",\"code\":502,\"detail\":\"circuit breaker is open\",\"status\":\"Bad Gateway\"}","time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/userroles/defaultrole.go:38","message":"Could not load roles"}
{"level":"error","service":"proxy","error":"{\"id\":\"com.owncloud.api.settings\",\"code\":502,\"detail\":\"circuit breaker is open\",\"status\":\"Bad Gateway\"}","time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/middleware/account_resolver.go:140","message":"Could not get user roles"}
{"level":"info","service":"proxy","proto":"HTTP/1.1","request-id":"6310a8cf-ecac-41ab-94bf-fb6e65cf7189","traceid":"0a15fd98788bd0f25562bf66bd5b62dd","remote-addr":"<IP_ADDRESS>","method":"GET","status":500,"path":"/ocs/v1.php/cloud/user","duration":70.088662,"bytes":0,"time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/middleware/accesslog.go:34","message":"access-log"}
{"level":"info","service":"proxy","proto":"HTTP/1.1","request-id":"64f0ace2a798d5b14ec4bfd177c2af50","traceid":"f3ba7e9868dedf663bcb42f7b76267f9","remote-addr":"<IP_ADDRESS>","method":"GET","status":200,"path":"/themes/owncloud/assets/logo.svg","duration":0.923335,"bytes":9896,"time":"2024-05-13T21:16:18Z","line":"github.com/owncloud/ocis/v2/services/proxy/pkg/middleware/accesslog.go:34","message":"access-log"}

Here it looks like an Gateway Error (502) which results in "Could not load roles".
My values.yaml:

    values.yaml

externalDomain: ocis.domain.tld
ingress:
  enabled: true
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    cert-manager.io/cluster-issuer: "issuer"
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
    # nginx.ingress.kubernetes.io/backend-protocol: HTTP
    # nginx.ingress.kubernetes.io/default-backend: "proxy"
    nginx.ingress.kubernetes.io/custom-http-errors: "404,415,431"
    nginx.ingress.kubernetes.io/client-body-buffer-size: 512k
    nginx.ingress.kubernetes.io/client-header-buffer-size: 512k
    nginx.ingress.kubernetes.io/http2-max-header-size: 512k
    nginx.ingress.kubernetes.io/large-client-header-buffers: 4 1m
    nginx.ingress.kubernetes.io/proxy_buffers: 4 256k
    nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
    nginx.ingress.kubernetes.io/proxy-busy-buffers-size: 256k
    nginx.ingress.kubernetes.io/proxy-read-timeout: "5000"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "5000"
    nginx.ingress.kubernetes.io/server-snippet: |
      client_header_buffer_size 512k;
      large_client_header_buffers 4 1m;
  tls:
    - hosts:
        - ocis.domain.tld
      secretName: ocis-tls
services:
  idm:
    persistence:
      enabled: true
      size: 1Gi
      storageClassName: hot
  nats:
    persistence:
      enabled: true
      size: 1Gi
      storageClassName: hot
  search:
    persistence:
      enabled: true
      size: 1Gi
      storageClassName: hot
  storagesystem:
    persistence:
      enabled: true
      size: 1Gi
      storageClassName: hot
      accessModes:
        - ReadWriteMany
  storageusers:
    storageBackend:
      # -- Configures the storage driver. Possible values are "ocis" and "s3ng".
      # The oCIS driver stores all data in the persistent volume if persistence is enabled.
      # The S3NG driver stores all metadata in the persistent volume and uploads blobs to s3 if persistence is enabled.
      driver: s3ng
      driverConfig:
        s3ng:
          # -- Maximum number of concurrent go-routines. Higher values can potentially get work done faster but will also cause more load on the system.
          maxConcurrency: 100
          # -- Metadata backend to use for the S3NG storage driver. Valid values are: "messagepack", "xattrs".
          metadataBackend: messagepack

          # The S3NG driver needs an existing S3 bucket with following permissions:
          # {
          #     "Version": "2012-10-17",
          #     "Statement": [
          #         {
          #             "Sid": "ListBucket",
          #             "Effect": "Allow",
          #             "Action": [
          #                 "s3:ListBucket"
          #             ],
          #             "Resource": [
          #                 "arn:aws:s3:::bucket-name"
          #             ]
          #         },
          #         {
          #             "Sid": "ActionsInBucketContext",
          #             "Effect": "Allow",
          #             "Action": [
          #                 "s3:*Object",
          #                 "s3:*MultipartUpload",
          #                 "s3:ListMultipartUploadParts"
          #             ],
          #             "Resource": [
          #                 "arn:aws:s3:::bucket-name/*"
          #             ]
          #         }
          #     ]
          # }
          # -- S3 endpoint to use for the S3NG driver. Only used if driver is set to "s3ng".
          endpoint: https://minio.minio-hot.svc
          # -- S3 region to use for the S3NG driver. Only used if driver is set to "s3ng".
          region: default
          # -- S3 bucket to use for the S3NG driver. Only used if driver is set to "s3ng".
          bucket: ocis-storageusers
          # -- Disable sending content sha256 when copying objects to S3.
          disableContentSHA256: false
          putObject:
            # -- Disable multipart uploads when copying objects to S3
            disableMultipart: false
            # -- Send a Content-MD5 header when copying objects to S3.
            sendContentMD5: true
            # -- Always precreate parts when copying objects to S3.
            concurrentStreamParts: true
            # -- Number of concurrent uploads to use when copying objects to S3.
            numThreads: 4
            # -- Part size for concurrent uploads to S3.
            partSize: 0
    persistence:
      enabled: true
      size: 20Gi
      storageClassName: hot
      accessModes:
        - ReadWriteMany
  thumbnails:
    persistence:
      enabled: true
      size: 10Gi
      storageClassName: hot
  web:
    persistence:
      enabled: true
      size: 1Gi
      storageClassName: hot

secretRefs:
  s3CredentialsSecretRef: hot-obst-keys

There are quiet a few annotations. That's because I first got HTTP Error 431, too large header. Managed to get past that. But now I am at 500 or 502. As mentioned, probably connected to storageusers driver setting.
One thing I wounder if there exists a insecure setting for the s3ng driver? Maybe the 502 error comes from ocis not being able to verify the minio certificate?
Any hints?

Can you please check if you see a line like the following on the settings pods when you try to log in?
settings-576f978c9f-ld5c8 settings {"level":"error","service":"ocis","error":"error: not found: create container: error: not found: f1bdd61a-da7c-49fc-8203-0558109d1b4f!f1bdd61a-da7c-49fc-8203-0558109d1b4f/settings","time":"2024-05-16T05:50:52Z","line":"github.com/owncloud/ocis/v2/services/settings/pkg/store/metadata/store.go:70","message":"error initializing metadata client"}

Yes, I do!
2024-05-16T07:13:01Z ERR error initializing metadata client error="internal error: error creating space" line=github.com/owncloud/ocis/v2/services/settings/pkg/store/metadata/store.go:70 service=ocis

Using the deployment example with external nats brought me a bit further. Now I am able to log in. But now I'm having trouble to list storage spaces:
2024-05-16T13:35:18Z ERR failed to list storage spaces error="error reading user index: stat /var/lib/ocis/storage/users/indexes/by-user-id/6b28f78c-ef67-4ff9-9e2f-a1c90cc48875.mpk: no such file or directory" filters=[{"Term":{"SpaceType":"project"},"type":4},{"Term":{"User":{"idp":"https://ocis.domain.tld","opaque_id":"6b28f78c-ef67-4ff9-9e2f-a1c90cc48875"}},"type":6}] line=github.com/cs3org/reva/v2@v2.19.6/internal/grpc/services/storageprovider/storageprovider.go:575 pkg=rgrpc service=storage-users status={"code":15,"message":"error listing spaces","trace":"866fa6adf2ff392bba234d7b5429d0de"} traceid=866fa6adf2ff392bba234d7b5429d0de

When I look at the directory, it is indeed empty:
~ $ ls -la /var/lib/ocis/storage/users/indexes/by-user-id/
total 8
drwx------    2 ocis-use ocis-gro      4096 May 16 13:32 .
drwx------    5 ocis-use ocis-gro      4096 May 16 13:32 ..
~ $

Inside web I also see no Files, probably because ocis cannot list storage spaces.

In my case I reset the data on the storagesystem-data PVC

What do you mean by that? I try to deploy ocis from scratch, so I destroy everything and deploy again with some changed values. I shouldn't need to reset. Or do I?

Also when I use Monitor > Trace > S3 inside Minio, I don't see anything coming from ocis. Although the connection details are correct. I can e.g. do a curl from the storageusers-pod:
~ $ curl --verbose http://minio.minio-hot.svc.cluster.local
* Host minio.minio-hot.svc.cluster.local:80 was resolved.
* IPv6: (none)
* IPv4: <IP_ADDRESS>
*   Trying <IP_ADDRESS>:80...
* Connected to minio.minio-hot.svc.cluster.local (<IP_ADDRESS>) port 80
> GET / HTTP/1.1
> Host: minio.minio-hot.svc.cluster.local
> User-Agent: curl/8.5.0
> Accept: */*
>
< HTTP/1.1 403 Forbidden
< Accept-Ranges: bytes
< Content-Length: 254
< Content-Type: application/xml
< Server: MinIO
< Strict-Transport-Security: max-age=31536000; includeSubDomains
< Vary: Origin
< Vary: Accept-Encoding
< X-Amz-Id-2: 0a0da9bb6b6d3c38dfeab2cc7e8e6ed0fc8ccf27dcf29c14fd96819b66189b4d
< X-Amz-Request-Id: 17CFFCA1BA8B8480
< X-Content-Type-Options: nosniff
< X-Xss-Protection: 1; mode=block
< Date: Thu, 16 May 2024 13:55:54 GMT
<
<?xml version="1.0" encoding="UTF-8"?>
* Connection #0 to host minio.minio-hot.svc.cluster.local left intact
<Error>AccessDenied<Message>Access Denied.</Message><Resource>/</Resource><RequestId>17CFFCA1BA8B8480</RequestId><HostId>0a0da9bb6b6d3c38dfeab2cc7e8e6ed0fc8ccf27dc
~ $

The curl above shows up in the Minio Trace, but nothing else from ocis is showing up. Hmmm!

When I combine the nats example with the s3 example it works! I will dig a bit deeper tomorrow.

Switching from the builtin nats to the external nats removes all state (thus acting like the purge command I provided).

In my case I reset the data on the storagesystem-data PVC

What do you mean by that? I try to deploy ocis from scratch, so I destroy everything and deploy again with some changed values. I shouldn't need to reset. Or do I?

You shouldn't. But if you assume that you're deploying from scratch, you should challenge / verify if that's really the case. Eg. you should make sure that PersistentVolumes are gone and in the case you use Minikube with the Hostpath provisioner, you actually need to clean up manually ( minikube ssh 'sudo rm -rf /tmp/hostpath-provisioner/*')

I think I found the root cause for these issues in my deployment. I run Longhorn and their rwx access mode uses NFS. My storageClass was configured with these NFS options: nfsOptions: "vers=4.2,noresvport,softerr,timeo=600,retrans=5". I removed them and use Longhorn defaults instead. That seems to work!
Thanks @wkloucek  for your assistance!


Chocolatey installation exceeds total timeout

When installing a large Chocolatey package remotely on Windows Server 2016 the execution timeout passed to Chocolatey seems to be overridden by the shorter BoxStarter timeout.
I run the following command with a 3 hour timeout
cinst visualstudio2015community --version=2015.03.02 --execution-timeout=10800

However the installation fails after an hour with the Boxstarter: Task has exceeded its total timeout. error:
18:15:54.663     googlecompute: [PACKER-580F9DC6]+ Boxstarter starting Calling Chocolatey to install visualstudio2015community. This may take several minutes to complete...
18:15:54.663     googlecompute: Installing the following packages:
18:15:54.664     googlecompute: visualstudio2015community
18:15:54.664     googlecompute: By installing you accept licenses for the packages.
18:15:56.242     googlecompute: VisualStudio2015Community v2015.03.02
18:15:59.814     googlecompute: Visual Studio will be installed from Web
18:15:59.815     googlecompute: Install-ChocolateyPackage VisualStudio2015Community exe /Quiet /NoRestart /Log C:\Users\packeradmin\AppData\Local\Temp\vs.log http://download.microsoft.com/download/0/B/C/0BC321A4-013F-479C-84E6-4A2F90B11269/vs_community.exe -validExitCodes 0 3010<PHONE_NUMBER>
18:16:00.892     googlecompute: Downloading VisualStudio2015Community
18:16:00.893     googlecompute: from 'http://download.microsoft.com/download/0/B/C/0BC321A4-013F-479C-84E6-4A2F90B11269/vs_community.exe'
18:16:00.893     googlecompute: Download of vs_community.exe (2.9 MB) completed.
18:16:04.112     googlecompute: WARNING: Ignoring checksums due to feature checksumFiles turned off or option --ignore-checksums set.
18:16:04.114     googlecompute: [PACKER-580F9DC6]Boxstarter: Expanded splat to -validExitCodes @(0,3010,2147781575) -packageName "VisualStudio2015Community" -fileType "exe" -silentArgs "/Quiet /NoRestart /Log C:\Users\packeradmin\AppData\Local\Temp\vs.log" -file "C:\Users\packeradmin\AppData\Local\Temp\VisualStudio2015Community\2015.03.02\vs_community.exe"
18:16:10.189     googlecompute: Installing VisualStudio2015Community...
19:16:07.206     googlecompute: [PACKER-580F9DC6]Boxstarter: Task has exceeded its total timeout. Killing task...
19:16:08.627     googlecompute: TASK:
19:16:08.628     googlecompute: Import-Module C:\ProgramData\chocolatey\helpers\chocolateyInstaller.psm1 -Global -DisableNameChecking
19:16:08.628     googlecompute: Install-ChocolateyInstallPackage -validExitCodes @(0,3010,2147781575) -packageName "VisualStudio2015Community"
19:16:08.629     googlecompute: -fileType "exe" -silentArgs "/Quiet /NoRestart /Log C:\Users\packeradmin\AppData\Local\Temp\vs.log" -file
19:16:08.629     googlecompute: "C:\Users\packeradmin\AppData\Local\Temp\VisualStudio2015Community\2015.03.02\vs_community.exe"
19:16:08.630     googlecompute: Is likely in a hung state.
19:16:08.631     googlecompute: At C:\Users\packeradmin\AppData\Roaming\Boxstarter\Boxstarter.Common\Invoke-FromTask.ps1:186 char:17
19:16:08.631     googlecompute: + ...             throw "TASK:`r`n$command`r`n`r`nIs likely in a hung state ...
19:16:08.632     googlecompute: +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
19:16:08.633     googlecompute: + CategoryInfo          : OperationStopped: (TASK:
19:16:08.633     googlecompute: Import-M...n a hung state.:String) [], RuntimeException
19:16:08.634     googlecompute: + FullyQualifiedErrorId : TASK:
19:16:08.635     googlecompute: Import-Module C:\ProgramData\chocolatey\helpers\chocolateyInstaller.psm1 -Global -DisableNameChecking
19:16:08.637     googlecompute: Install-ChocolateyInstallPackage -validExitCodes @(0,3010,2147781575) -packageName "VisualStudio2015Community" -fi
19:16:08.638     googlecompute: leType "exe" -silentArgs "/Quiet /NoRestart /Log C:\Users\packeradmin\AppData\Local\Temp\vs.log" -file "C:\Users\p
19:16:08.639     googlecompute: ackeradmin\AppData\Local\Temp\VisualStudio2015Community\2015.03.02\vs_community.exe"
19:16:08.641     googlecompute: Is likely in a hung state.
19:16:08.641     googlecompute: The install of visualstudio2015community was NOT successful.
19:16:08.642     googlecompute: Error while running 'C:\ProgramData\chocolatey\lib\VisualStudio2015Community\Tools\ChocolateyInstall.ps1'.
19:16:08.642     googlecompute: See log for details.
19:16:11.002     googlecompute: Chocolatey installed 0/1 package(s). 1 package(s) failed.
19:16:11.003     googlecompute: Failures:
19:16:11.004     googlecompute: - visualstudio2015community

Is there a BoxStarter specific way to increase the timeout? And could BoxStarter respect the --execution-timeout parameter instead?
By the way, it could be that the installation really hangs. But I think my winrm settings are already tweaked to prevent its limitations being in the way:
Config
    MaxEnvelopeSizekb = 500
    MaxTimeoutms = 60000
    MaxBatchItems = 32000
    MaxProviderRequests =<PHONE_NUMBER>
    Client
        NetworkDelayms = 5000
        URLPrefix = wsman
        AllowUnencrypted = false
        Auth
            Basic = true
            Digest = true
            Kerberos = true
            Negotiate = true
            Certificate = true
            CredSSP = false
        DefaultPorts
            HTTP = 5985
            HTTPS = 5986
        TrustedHosts
    Service
        RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
        MaxConcurrentOperations =<PHONE_NUMBER>
        MaxConcurrentOperationsPerUser = 1500
        EnumerationTimeoutms = 240000
        MaxConnections = 300
        MaxPacketRetrievalTimeSeconds = 120
        AllowUnencrypted = false
        Auth
            Basic = true
            Kerberos = true
            Negotiate = true
            Certificate = false
            CredSSP = false
            CbtHardeningLevel = Relaxed
        DefaultPorts
            HTTP = 5985
            HTTPS = 5986
        IPv4Filter = *
        IPv6Filter = *
        EnableCompatibilityHttpListener = false
        EnableCompatibilityHttpsListener = false
        CertificateThumbprint
        AllowRemoteAccess = true
    Winrs
        AllowRemoteShellAccess = true
        IdleTimeout = 7200000
        MaxConcurrentUsers =<PHONE_NUMBER>
        MaxShellRunTime =<PHONE_NUMBER>
        MaxProcessesPerShell =<PHONE_NUMBER>
        MaxMemoryPerShellMB =<PHONE_NUMBER>
        MaxShellsPerUser =<PHONE_NUMBER>

When running the same command via remote desktop it takes 41 minutes:
$ Get-Date

Wednesday, October 26, 2016 8:04:26 AM

$ cinst visualstudio2015community --version=2015.03.02 --execution-timeout=10800 --yes --accept-license

Chocolatey v0.10.3
Installing the following packages:
visualstudio2015community
By installing you accept licenses for the packages.

VisualStudio2015Community v2015.03.02 [Approved]
visualstudio2015community package files install completed. Performing other installation steps.
System.Collections.Hashtable
Visual Studio will be installed from Web
Install-ChocolateyPackage VisualStudio2015Community exe /Quiet /NoRestart /Log C:\Users\jsalverda\AppData\Local\Temp\cho
colatey\vs.log http://download.microsoft.com/download/0/B/C/0BC321A4-013F-479C-84E6-4A2F90B11269/vs_community.exe -valid
ExitCodes 0 3010<PHONE_NUMBER>
WARNING: Url has SSL/TLS available, switching to HTTPS for download
Downloading VisualStudio2015Community
  from 'https://download.microsoft.com/download/0/B/C/0BC321A4-013F-479C-84E6-4A2F90B11269/vs_community.exe'
Progress: 100% - Completed download of C:\Users\jsalverda\AppData\Local\Temp\chocolatey\VisualStudio2015Community\2015.0
3.02\vs_community.exe (2.9 MB).
Download of vs_community.exe (2.9 MB) completed.
Hashes match.
Installing VisualStudio2015Community...
VisualStudio2015Community has been installed.
No ISO to dismount
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).
 The install of visualstudio2015community was successful.
  Software installed to 'C:\Program Files\Microsoft SQL Server Compact Edition\'

Chocolatey installed 1/1 packages. 0 packages failed.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

$ Get-Date

Wednesday, October 26, 2016 8:45:10 AM

Inspecting the vs.log it seems like it doesn't do anything after the first couple of seconds.
[0F28:0DE0][2016-10-26T08:35:12]i001: Burn v3.7.4029.0, Windows v10.0 (Build 14393: Service Pack 0), path: C:\Users\packeradmin\AppData\Local\Temp\VisualStudio2015Community\2015.03.02\vs_community.exe, cmdline: '/Quiet /NoRestart /Log C:\Users\packeradmin\AppData\Local\Temp\vs.log  -burn.unelevated BurnPipe.{853EB3DD-F94C-4E92-95FA-1B437B2CA8EF} {C85253E4-052D-4431-A028-40531C902BCD} 3588'
[0F28:0DE0][2016-10-26T08:35:12]i000: Initializing string variable 'SKUFriendlyName' to value 'VS Community'

...

[0F28:0DE0][2016-10-26T08:35:17]i000: MUX:  Scheduling update from http://go.microsoft.com/fwlink/?LinkID=786519&clcid=0x409.
[0F28:0DE0][2016-10-26T08:35:17]i000: MUX:  Executing Process: Exe:C:\Users\packeradmin\AppData\Local\Temp\20161026_083517_{4312D170-FE25-36BF-B5E6-0A87C44B7EF0}\vs_community.exe Arguments: /OriginalSource "C:\Users\packeradmin\AppData\Local\Temp\VisualStudio2015Community\2015.03.02\vs_community.exe" /UpdateLaunch /ProductKey "WXN74VRMXHJ8X3HM8F7WCPQB8" /SessionGuid "be43c22a-f8f8-4590-a97a-56f860103fd9" /quiet /norestart

When boxstarter installs MSIs remotely, it runs them in a sheduled task and sets a timeout on the task of one hour. If the task does not complete in an hour, it kills the task. Sounds like you must be hitting this timeout. Unfortunately there is not currently a way to override that however, it sounds to me like there is something fundamentally wrong with the vs install if it is taking this long.

It seems to be related to server 2016. Haven't tested yet with visualstudio2015community, but the following older visual studio package works fine on server 2012 r2 but hangs on server 2016:
cinst VisualStudio2013ExpressWeb --version 12.0.21005.20150920 --ignore-checksums
Perhaps some incompatibility warning or the by default enabled windows defender kicking in. Via remote desktop this works fine, but unfortunately not over winrm. Any tips on how to find the root cause of a hang?

@JorritSalverda It is entirely possible that there are some pre-dependencies like vcredist and other things that don't exist for Server 2016 that the older version of Visual Studio think they require. Do you have any output from the chocolatey.log file output into the $env:ProgramData folder where Chocolatey gets installed? Not sure if that file gets created when Boxstarter uses the DLL or not.

Would be good to look at if we can change the scheduled task timeout mentioned here if there is no other way around this.


Host uxa

Issue:

bcgov/entity/issues/25001

Description of changes:

several fixes according to figma uxa file
done everything except for items with question marks, number of rooms scrolling stuff and making residential postal code not required

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the namex license (Apache 2.0).

Temporary Url for review: https://strr-strata-hotel-dev--pr-408-gggmew06.web.app

Temporary Url for review: https://strr-hosts-dev--pr-408-w9gl20mc.web.app

Temporary Url for review: https://strr-strata-hotel-dev--pr-408-gggmew06.web.app

Temporary Url for review: https://strr-hosts-dev--pr-408-w9gl20mc.web.app


[FEATURE] allow cog bump to skip version commit

Is your feature request related to a problem? Please describe.
I often feel that chore(version) commits are rather unnecessary and pollute the commit history. Since we can clear outline which commits introduced each version through a simply git log message. This is in fact a pain point I carry from npm being used for unpublished packages.
Describe the solution you'd like
I would like to be able to run cog bump without having a chore(version) commit and simply generating an annotated tag pointing to the last commit. Possibly through cog bump --auto --no-commit or something alike.
Describe alternatives you've considered
I am currently tagging it manually through git but the cog bump --auto command it's very appealing to me as it parses the commit history and correctly applies the new version.
Additional context
The screenshot below shows how redundant a version commit can be.

Hello @zanona, I am sorry but this behavior would not fit with the current way cocogitto is working.
If you take a look at the "chore(version)" commits (for instance 1.2.0), you will notice this commit contains the changelog update, and any miscellaneous changes happening during the bump (bumping a manifest or any other changes happening in the pre-bumb hook).
In my opinion, these changes need to appear in the released version and therefore, need a dedicated commit.
An alternative would be to amend the latest commit with the changes made during the release, but this would be a misuse of the conventional commit spec.
That said your are pointing something out here : the version commit needs a meaningful commit message. It could be a summary of the changelog.
If you still want to to skip the version commit, feel free to fork :)

That make sense, @oknozor. Thanks for taking the time to analyse this. I personally prefer having dynamically generated changelogs based on git history (so I don't usually have a staged file for it). At the same you have a valid point there as I agree that amending the previous commit to include changes besides the ones declare would indeed not be ideal.


gfx942 HHS NN/TN Equality tuning

HHS NN: 4 new sizes
HHS TN: 4 new sizes

Resolved the conflict.

If your commit involves changes to a YAML file, please take note.
Due to PR-1117 (https://github.com/ROCm/hipBLASLt/pull/1117) adding ActivationType: hipblaslt_all, all YAML files now need to include the ActivationType field (for hipblaslt logic YAML, use ActivationType: hipblaslt_all (not all); for tensile test YAML, you can use either all or hipblaslt_all).
Correspondingly, in the Logic YAML filename, the _A that originally represented ActivationType: all should also be changed to _HA. These changes have been implemented in PR-1117.

If your commit involves changes to a YAML file, please take note.
Due to PR-1117 (#1117) adding ActivationType: hipblaslt_all, all YAML files now need to include the ActivationType field (for hipblaslt logic YAML, use ActivationType: hipblaslt_all (not all); for tensile test YAML, you can use either all or hipblaslt_all).
Correspondingly, in the Logic YAML filename, the _A that originally represented ActivationType: all should also be changed to _HA. These changes have been implemented in PR-1117.

I checked 1117. This is Equality logic update only and it does not have Activation enabled.
No change needed.


Use copy instead of cp in build script

I followed along with the build instructions listed in the Readme, but I ran into the following error in the tasks.copy build step:
C:\path\to\virtual-display-rs\virtual-display-driver>cp C:\path\to\virtual-display-rs\target/x86_64-pc-windows-msvc\debug/*.dll ../target/output
'cp' is not recognized as an internal or external command,
operable program or batch file.

C:\path\to\virtual-display-rs\virtual-display-driver>cp C:\path\to\virtual-display-rs\target/x86_64-pc-windows-msvc\debug/*.inf ../target/output
'cp' is not recognized as an internal or external command,
operable program or batch file.

C:\path\to\virtual-display-rs\virtual-display-driver>cp C:\path\to\virtual-display-rs\target/x86_64-pc-windows-msvc\debug/*.cat ../target/output
'cp' is not recognized as an internal or external command,
operable program or batch file.
[cargo-make][1] ERROR - Error while executing command, exit code: 1
[cargo-make][1] WARN - Build Failed.
[cargo-make] ERROR - Error while executing command, exit code: 1
[cargo-make] WARN - Build Failed.

I'm guessing that this build is normally run in a Cygwin or MSYS2 environment? With this change, I was able to get the driver to build in a vanilla PowerShell environment.

In light of the conversation in #45, I'm going to include this boilerplate just to make it clear I'm open to this change being relicensed:

I affirm that I own the copyright to the changes in this pull request, and I grant permission to @MolotovCherry to redistribute, republish, and reuse the code and changes within without restrictions, including for the purpose of redistributing and relicensing the virtual-display-rs project under any license terms.

Thanks for your contribution! Lgtm!


Add GL Bajaj Group Of Institutons

@ownway08 glbajajgroup.txt I am sorry, I have to close the request without merging, because you made a mistake in a request and did not specify any filepath. Please ensure that you are familiar with this repository rules located at the bottom of this page and make a new correct request. Thank you for your understanding!


Trained models for Chair

Hi,
I am exploring the code, the trained files mentioned here are in JSON format. I need the trained models in tensorflow form. When I downloaded the trained model from tensorflow, from this link, I found only 5 folders. Where can I find the trained model for chair?

@hardmaru


implement conversation history

fill out the encode() methods, saving messages/attachments to a (configurable) database

to be written better


Wireframes

[ ] menu bar, with and without logged in user
[ ] footer
[ ] homepage
[ ] super admin dashboard
[ ] editor dashboard
[ ] Post form (create and update), with and without tags
[ ] Comment moderation

Homepage (with menu bar)

Super admin dashboard

Editor dashboard


[SPARK-46331][SQL] Removing CodegenFallback from subset of DateTime expressions and version() expression

What changes were proposed in this pull request?

This PR moves us a bit closer to removing CodegenFallback class and instead of it relying on RuntimeReplaceable with StaticInvoke.
In this PR there are following changes:

Doing StaticInvoke + RuntimeReplaceable against spark version expression.
Adding Unevaluable trait for DateTime expressions. These expressions need to be replaced during analysis anyhow so we explicitly forbid eval from being called.

Why are the changes needed?

Direction is to get away from CodegenFallback. This PR moves us closer to that destination.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Running existing tests.
Was this patch authored or co-authored using generative AI tooling?

No

After looking at test failures, there seem to be 'minor' correctness bug for time aware expressions that rely on ReplaceCurrentLike rule. For following expression:
select b from values (
 'one', current_timestamp),
 'two', current_timestamp),
 'three', current_timestamp as data(a, b)

current_timestamp will not be replaced. Instead, it will be evaluated every time which means that these three rows will have different values (tested locally). This happens because ResolveInlineTables rule happens first and it tries to eval all the expressions. IMO, ReplaceCurrentLike should have higher precedence.
I will try to fix this as part of this PR.
@cloud-fan  and @MaxGekk as FYI.

I will try to fix this as part of this PR.

@dbatomic Could you open a separate PR with a bug fix. Apparently we can backport it without your changes in this PR.

I will try to fix this as part of this PR.

@dbatomic Could you open a separate PR with a bug fix. In this way, we can backport it without your changes in this PR.

I just created this PR:
https://github.com/apache/spark/pull/44316

LGTM except for https://github.com/apache/spark/pull/44261#discussion_r1437460354 . Can we verify the test coverage for current datetime functions in ComputeCurrentTimeSuite?

thanks, merging to master!


Timeout interaction with clean shutdown

The timeout feature offers a wonderful trade-off between performance and the risk of losing data in the case of failures. Ideally, we should never lose data in the absence of failures, and I'm wondering if this is already the case.
Let's say some log entries are queued to be saved, and the timeout is running with 3 seconds remaining. Suddenly, clean shutdown is initiated, and all other components of the system take 1 second before allowing the application to terminate. The log timeout would have 2 seconds remaining at that point.
Do the log entries get saved or not?
If the log entries are not getting saved, then I believe we can improve on this!
A quick workaround is to register an IHostedService that asynchronously delays for [whatever your maximum timeout value is] on StopAsync. This works, but will generally delay more than is necessary.
Ideally, the package would solve this out-of-the-box, by registering its own IHostedService. That service could use the same trick, but it could have knowledge of the remaining timeout and whether any log entries are pending at all. This way, it could wait only as long as is beneficial.
Be careful with such an implementation, however: After StopAsync is called for the described IHostedService, it may be called for other IHostedService instances, and there may also be request handlers that are still completing their work. Any of these may result in new log entries being created. A solution I would recommend to catch this edge case, is to disable batched logging as soon as shutdown is initiated. After disabling the feature, we can wait for (or immediately save) any queued log entries that were waiting for an ongoing timeout.

If you use Serilog correctly no log entry gets lost in case of a normal process exit or if it receives a TERM signal. You just have to make sure to call Log.CloseAndFlush() on process exit and everything should be fine (https://github.com/serilog-mssql/serilog-sinks-mssqlserver#always-call-logcloseandflush).
Should you have noticed any scenario where log entries would be lost, please post some details ideally with a small sample program so we can analyze the case and determine if there is a problem in your code or a bug in Serilog.
Best regards,
Christian

@ckadluba Thanks for the info!
I am asking specifically in the case of modern .NET Core/unified applications, where the logical application is run in an IHost. Here, it seems highly counterintuitive to manually call a shutdown command for a class library, such as Log.CloseAndFlush() for Serilog. Is this something we should call manually? I hope Serilog takes care of this.
(Class libraries normally handle their own shutdown logic, by registering an IHostedService.)

This is a Serilog design decision, not the SQL Server sink specifically, see https://github.com/serilog/serilog/wiki/Lifecycle-of-Loggers.
Serilog is used in all sorts of .NET applications including command line or applications without an IHost. It is often also used before the bootstrapping of an application so that the host can log, for example Serilog.Extensions.Logging.

I have requested clarification on this situation in the Serilog repo.


Adding aspnetcore templates

This PR adds the new ASP.NET Core templates with the logging, tracing and error reporting configured for the user.

Also, I'm going to send an updated version in a little bit that works in both Gce and Gae. The current version won't deploy to Gae since we only check for project ID in Gce.


[ERROR]: Failed to deploy ... with no clues to the problem

I've been following the tutorial
https://aws.amazon.com/getting-started/hands-on/build-react-app-amplify-graphql/module-one/
At first when there was only react front end the deployment went without a hitch.
I then added the authentication and it works locally, builds in the cloud, but the deploy stage fails with:
2021-04-29T06:33:33 [INFO]: Starting Deployment
2021-04-29T06:33:33 [ERROR]: Failed to deploy

App ARN is
arn:aws:amplify:eu-central-1:910630674321:apps/dqlclxsy9in2m
thank you for your help.

Our team is having the exact same issue, which started around the same time (e.g. a few hours ago today).
Our app reports the Build step as being successful, but the logs stop just after our yarn build step and no artifact is attached to the Build step. The deploy step shows the same error as @nyholku
Our app arn is arn:aws:amplify:ap-southeast-2:734296576770:apps/dtdeunq6oaa7z

Same kind of problem with me second test app/build/deploy
arn:aws:amplify:eu-north-1:910630674321:apps/d6afkrqqsfxop
maybe this is my bad cause I did this test in a hurry...

We have the exact same issue on a fresh react app ...
Build successful but deploy fails for no apparement reasons
2021-04-29T11:13:59 [INFO]: Starting Deployment
2021-04-29T11:13:59 [ERROR]: Failed to deploy
arn:aws:amplify:eu-west-1:066832409643:apps/d3cldr4npp3c0

I have the eaxct same issue on existing project with 50+ build history.

Was experiencing this same issue and was able to find a fix that doesn't require redoing the project. I discovered I was using the latest version Amplify CLI in my build settings, which must have recently introduced a breaking change.
To fix:

In the Amplify console, go to Build settings > Build image settings > Edit
Specify the version of Amplify CLI that's in your project's package.json


Various parts of the code fail to build with -std=c90 with and without --strict-warnings; make clear which C standard switch to use

As recently mentioned in #9913, there are various places where I get build failures on a vanilla Debian 10.1 system when using GCC configured with -std=c90, while -std=gnu90 works fine.
This is to be considered a defect since https://www.openssl.org/policies/codingstyle.html says:
To maximise portability the version of C defined in ISO/IEC 9899:1990
should be used. This is more commonly referred to as C90.

I suggest making sure that there are Travics CI configurations that check the use of both  -std=c90 and -std=gnu90.
Would be good to explicitly state in CONTRIBUTING which C version(s) new code should comply with (and ideally which compiler switch to use or to automate this in the generated Makefile).

We have a Travis job already that uses -ansi (which is equivalent with -std=c90), so what we need to do is figure out why that one doesn't fail...  which other configuration parameter is affecting it?

The other explicit config options I usually use are:
shared no-deprecated enable-unit-test enable-crypto-mdebug enable-crypto-mdebug-backtrace --debug --strict-warnings -fstack-protector -fno-omit-frame-pointer

yet I don't think they make a difference here.

Can you reproduce the build issues with -std=c90  (and potentially the other configuration switches I just gave)?

I just found that what makes the difference is not -ansi vs. -std=c90, but --strict-warnings!
This also explains why Travis builds with -ansi (or apparently equivalently -std=c90) succeed: the warnings are ignored.

Hmm, even without --strict-warnings, with -ansi (or -std=c90),
I get tons of errors like the following unless I use -no-asm (and -no-threads):
gcc  -I. -Icrypto/include -Iinclude -Iproviders/common/include -Iproviders/default/include -Iproviders/common/ciphers -Icrypto -Iproviders/common/macs -Iproviders/common/kdfs -Iproviders/default/macs -Iproviders/default/ciphers -Iproviders/default/kdfs  -DAES_ASM -DBSAES_ASM -DECP_NISTZ256_ASM -DGHASH_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_GF2m -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_CPUID_OBJ -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DX25519_ASM -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -ansi -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DNDEBUG -DOPENSSL_IA32_SSE2  -MMD -MF crypto/bn/asm/libcrypto-lib-x86_64-gcc.d.tmp -MT crypto/bn/asm/libcrypto-lib-x86_64-gcc.o -c -o crypto/bn/asm/libcrypto-lib-x86_64-gcc.o crypto/bn/asm/x86_64-gcc.c
crypto/bn/asm/x86_64-gcc.c: In function 'bn_mul_add_words':
crypto/bn/asm/x86_64-gcc.c:76:9: warning: implicit declaration of function 'asm' [-Wimplicit-function-declaration]
         asm ("mulq %3"                  \
         ^~~
crypto/bn/asm/x86_64-gcc.c:119:9: note: in expansion of macro 'mul_add'
         mul_add(rp[0], ap[0], w, c1);
         ^~~~~~~
crypto/bn/asm/x86_64-gcc.c:77:17: error: expected ')' before ':' token
                 : "=a"(low),"=d"(high)  \
                 ^
crypto/bn/asm/x86_64-gcc.c:119:9: note: in expansion of macro 'mul_add'
         mul_add(rp[0], ap[0], w, c1);
         ^~~~~~~
crypto/bn/asm/x86_64-gcc.c:81:17: error: expected ')' before ':' token
                 : "+r"(carry),"+d"(high)\
                 ^
crypto/bn/asm/x86_64-gcc.c:119:9: note: in expansion of macro 'mul_add'
         mul_add(rp[0], ap[0], w, c1);
         ^~~~~~~
crypto/bn/asm/x86_64-gcc.c:85:17: error: expected ')' before ':' token
                 : "+m"(r),"+d"(high)    \
                 ^
crypto/bn/asm/x86_64-gcc.c:119:9: note: in expansion of macro 'mul_add'
         mul_add(rp[0], ap[0], w, c1);
         ^~~~~~~
crypto/bn/asm/x86_64-gcc.c:75:32: warning: unused variable 'low' [-Wunused-variable]
         register BN_ULONG high,low;     \
                                ^~~

...

The other explicit config options I usually use are:...

That's not what I'm talking about.  Travis uses this:
https://github.com/openssl/openssl/blob/5b5e2985f355c8e99c196d9ce5d02c15bebadfbc/.travis.yml#L31
So I'm curious what part of that made the job fail to signal the warnings

Yes, -ansi requires no-asm at the very least.  We might possibly want to catch that...

Yes, please.
Yet even after ./config -ansi -no-asm, I still get an issue, this time regarding threads:
gcc  -I. -Icrypto/include -Iinclude -Iproviders/common/include -Iproviders/default/include -Iproviders/common/ciphers -Icrypto -Iproviders/common/macs -Iproviders/common/kdfs -Iproviders/default/macs -Iproviders/default/ciphers -Iproviders/default/kdfs  -fPIC -pthread -m64 -Wall -O3 -ansi -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DNDEBUG  -MMD -MF crypto/libcrypto-lib-threads_pthread.d.tmp -MT crypto/libcrypto-lib-threads_pthread.o -c -o crypto/libcrypto-lib-threads_pthread.o crypto/threads_pthread.c
crypto/threads_pthread.c: In function 'CRYPTO_THREAD_lock_new':
crypto/threads_pthread.c:52:5: warning: implicit declaration of function 'pthread_mutexattr_settype'; did you mean 'pthread_mutexattr_destroy'? [-Wimplicit-function-declaration]
     pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
     ^~~~~~~~~~~~~~~~~~~~~~~~~
     pthread_mutexattr_destroy
crypto/threads_pthread.c:52:38: error: 'PTHREAD_MUTEX_RECURSIVE' undeclared (first use in this function); did you mean 'PTHREAD_MUTEX_RECURSIVE_NP'?
     pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
                                      ^~~~~~~~~~~~~~~~~~~~~~~
                                      PTHREAD_MUTEX_RECURSIVE_NP
crypto/threads_pthread.c:52:38: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [Makefile:10425: crypto/libcrypto-lib-threads_pthread.o] Error 1

I wonder why the pthread stuff gets caught by -ansi.  Those are POSIX functions, and should be unrelated to the C language standard...

I've just found some interesting dependencies on configuration options.
For efficiency in experimenting with them, I've focused on:
make -B crypto/conf/libcrypto-lib-conf_def.o

with this it works: CPPFLAGS=-ansi ./config no-asm --strict-warnings -D_DEFAULT_SOURCE
with this: CPPFLAGS=-ansi ./config no-asm --strict-warnings it fails with a strcasecmp issue
with this: CPPFLAGS=-std=gnu90 ./config no-asm --strict-warnings we just have the OPENSSL_FUNCissue begin fixed in #9913) regardless of -D_DEFAULT_SOURCE.

BTW, I wonder why the Travis config uses CPPFLAGS rather than CFLAGS or directly a configarg for specifying the C standard, but this makes no difference.
So the mystery must be (at least partly) in -D_DEFAULT_SOURCE.

The reason for having -ansi in CPPFLAGS is that CFLAGS is passed when linking, and there's been cases when -ansi was passed to ld and ld didn't like it.  So...

So having found out that the problem is related to -D_DEFAULT_SOURCE (I did not have a look at what it does), which should enable anyone to reproduce the issue mentioned above,
I hope that some expert on the OpenSSL build system can take over fixing them.

"some expert"...  right, that would be me :wink:

_DEFAULT_SOURCE from the glibc manual here: https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html
Macro: _DEFAULT_SOURCE
If you define this macro, most features are included apart from X/Open, LFS and GNU extensions: the effect is to enable features from the 2008 edition of POSIX, as well as certain BSD and SVID features without a separate feature test macro to control them.

Be aware that compiler options also affect included features:

If you use a strict conformance option, features beyond those from the compiler’s language version will be disabled, though feature test macros may be used to enable them.
Features enabled by compiler options are not overridden by feature test macros.

It seems to basically say that, even if you're using strict ansi or c90 c, the usual gnu extensions should be included (I think its the replacement for _BSD_SOURCE)
So ansi C doesn't pull in several apis (including the pthread ones above), as well as some functions (like strdup, which I'm hitting in my testing here).
FWIW, using the ci generated build:
./Configure no-asm no-secure-memory no-makedepend enable-buildtest-c++ enable-fips --strict-warnings -ansi -D_XOPEN_SOURCE=1 -D_POSIX_C_SOURCE=200809L

works fine, I imagine because _XOPEN_SOURCE pulls in all the same stuff that _DEFAULT_SOURCE does
So, is that the answer here?  That building with ansi just requires that we specify the additional defines to pull in the appropriate c library calls?  Or is this an ask to add a Configure build flag to do that automatically?

marking as in active


Include Hidden Shuffle for comparison?

This is great, would love to see an arxiv-style writeup.
Include this in comparisons?  http://proceedings.mlr.press/v130/shekelyan21a/shekelyan21a.pdf

Honestly having trouble understanding their proposal - would welcome a pull request!


[🔧 eslint-config]: create shared ESLint configuration for ESL consumers

As an internal ESL consumer, I want to be able to reuse ESL project codestyle.
Requested to split eslint flat configuration of 5th ESL version into public NPM stored shared configuration.

:tada: This issue has been resolved in version 5.0.0-beta.36 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


renderItem is called for entire list in data

Question
Maybe I"m not understanding the documentation. I thought that renderItem would only get called sparingly, but it seems it's getting called for every item in my list which is killing my performance. Is there some way to minimize the render to a local area around the active index?

I'm also not able to access the item index, or data length using renderItem. It's always displaying
item 1/3 on each slide.

@elchicofrommo you should set shouldComponent update in your renderItem component and update the only item that you want to update

@elchicofrommo Are you using the default setup or a specific layout?
Might want to give version 4.0.0-beta.4 a try.

Sorry, please allow me to advertise for my open source library! ~
I think this library react-native-reanimated-carousel will solve your problem. It is a high performance and very simple component, complete with React-Native reanimated 2


finished assignment

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)
corrected my code
What did you learn from the changes you have made?
how to write functions
Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?
N/A
Were there any challenges? If so, what issue(s) did you face? How did you overcome it?
No
How were these changes tested?
by usercase
A reference to a related issue in your repository (if applicable)
N/A
Checklist

[y] I can confirm that my changes are working as intended

You have unfortunately made a pull request to the wrong repo. You shouldn't be making a pull request to uoft-dsi/python, but rather your own forked python repo.
Please read the instructions on your onboarding Assignment Submission Guide more carefully.


KukaJAVAdriver construct() initializes StartArm mode

Adds StartArm as an option in the Java code, initializes it in the Java Driver, and just does a hold postion command and prints that the connection is established.

+1 Looks good. The smartpad gets flooded with "StartArm mode active, connection establ"
Maybe do % 10000? Given 1k Hz loop rate the messages currently spit twice every sec.

Or Maybe only display once when a mode change is requested?

cool I'll merge this then!
I think the 10k you suggested is good. Those settings should print on mode changes and an occasional "I'm alive" printout.


Delete shortlink after x days

Is it possible to automatically delete shorturls after x days?

Yes. See wiki page "Possible with a plugin".


The config file of crowdhuman dataset

Hello, thank you for your outstanding work, it helps me a lot!
But I am wondering which config file should I use to train the CrowdHuman dataset on swin-Transformer?
Thanks!

You can start with the same config as for cityperson for the crowdhuman. As far as I remember, we train it with the same configuration. If you do not get decent results, learning rate is the only thing I will suggest you to change. The issue is, I have left IIAI and unfortunately I do not have access to the crowdhuman config file anymore.

Thank you for your reply! I have successfully trained the crowdhuman dataset with the config of cityperson.
Sorry to bother you, but I still have a few questions:

It takes too long to train crowdhuman dataset on one GPU, is there any possible way to reduce the training time?
If possible, can I contact someone to get the crowdhuman config?
Thanks!

@marvelcell quick comment, how are the results after training.

I mean you can try the usual suspects, did you increase the batch size ? Or reducing the image resolution ? They usually speed up things. Else you can draw a small sample from the original crowdhuman data and see if and how much it effects.
Probably no one would have now.
I think yes.

I haven't got the result yet, it still needs some time.
I will try your suggestions, thank you for answering my questions!

@marvelcell I am afraid, now no one would have this specific config or the logs related to the crowdhuman particular experiment.

All right, thank you for your help!

Hello, I am very sorry to bother you again. I am still researching the performance of Swin-transformer in detecting dense pedestrians and trying to improve its performance. I used CrowdHuman's entire training and validation set to train Swin-transformer+Cascade-Rcnn, but the mAP was 44.7, AP50 was 76.7, and AP75 was 45.1. The learning rate is 0.0001 at the beginning and will decay by 0.1 on the 27th and 35th epochs. May I ask if this is a good result in this model? Does it have any hope of further improvement? Thank you very much.


updates schema configmap process to use template

PR Template:
Describe your changes
The process to create a configmap with the schema defintion relies on a base file that must be updated to use on each schema change. This may not happen often but by migrating to an openshift template, we can specify any schema file we like and ensure we get the proper configmap output.

updates/renames ex-schema-configmap to schema-configmap-template

converts the file to a Template

updates README on how to generate the configmap providing any desired schema definition file in yaml format

NOTE: Would love for someone to confirm mktemp -d has the same functionality on MacOS as I tested this in Fedora and I feel like there is a minor difference to watch for here.
Ticket reference (if applicable)
Fixes # N/A
Checklist

[ ] Are the agreed upon acceptance criteria fulfilled?

[ ] Was the 4-eye-principle applied? (async PR review, pairing, ensembling)

[ ] Do your changes have passing automated tests and sufficient observability?

[ ] Are the work steps you introduced repeatable by others, either through automation or documentation?

[ ] If automation is possible but not done due to other constraints, a ticket to the tech debt sprint is added
[ ] An SOP (Standard Operating Procedure) was created

[ ] The Changes were automatically built, tested, and  - if needed, behind a feature flag - deployed to our production environment. (Please check this when the new deployment is done and you could verify it.)

[ ] Are the agreed upon coding/architectural practices applied?

[ ] Are security needs fulfilled? (e.g. no internal URL)

[ ] Is the corresponding Ticket in the right state? (should be on "review" now, put to done when this change made it to production)

[ ] For changes to the public API / code dependencies: Was the whole team (or a sufficient amount of ppl) able to review?

LGTM

Validated in ephemeral that these changes had no impact on testing
# successful bonfire deploy
2024-09-04 12:27:04 [    INFO] [          MainThread] all resources being monitored reached 'ready' state
2024-09-04 12:27:04 [    INFO] [          MainThread] successfully deployed to namespace ephemeral-ujkpwm
2024-09-04 12:27:04 [    INFO] [          MainThread] successful deployment
2024-09-04 12:27:04 [    INFO] [          MainThread] namespace url: https://console-openshift-console.apps.crc-eph.r9lp.p1.openshiftapps.com/k8s/cluster/projects/ephemeral-ujkpwm
2024-09-04 12:27:04 [    INFO] [          MainThread] resource usage dashboard for namespace 'ephemeral-ujkpwm': https://grafana.app-sre.devshift.net/d/jRY7KLnVz?var-namespace=ephemeral-ujkpwm
ephemeral-ujkpwm

# port forward and test with grpcurl
$ oc port-forward -n ephemeral-ujkpwm svc/relations-relations 9000:9000
Forwarding from <IP_ADDRESS>:9000 -> 9000
Forwarding from [::1]:9000 -> 9000
Handling connection for 9000
Handling connection for 9000

$ MESSAGE='{"tuples":[{"resource":{"id":"bob_club","type":{"name":"group","namespace":"rbac"}},"relation":"member","subject":{"subject":{"id":"bob","type":{"name":"user","namespace":"rbac"}}}}]}'

$ grpcurl -plaintext -d $MESSAGE \
    localhost:9000 \
    kessel.relations.v1beta1.KesselTupleService.CreateTuples
{

}

$ MESSAGE='{"filter":{"resource_id":"bob_club","resource_type":"rbac/group","relation":"member","subject_filter":{"subject_type":"rbac/user","subject_id":"bob"}}}'

$ grpcurl -plaintext -d $MESSAGE \
    localhost:9000 \
    kessel.relations.v1beta1.KesselTupleService.ReadTuples
{
  "tuple": {
    "resource": {
      "type": {
        "namespace": "rbac",
        "name": "group"
      },
      "id": "bob_club"
    },
    "relation": "member",
    "subject": {
      "subject": {
        "type": {
          "namespace": "rbac",
          "name": "user"
        },
        "id": "bob"
      }
    }
  },
  "pagination": {
    "continuationToken": "CkQKBENLd0cSKHJiYWMvZ3JvdXA6Ym9iX2NsdWIjbWVtYmVyQHJiYWMvdXNlcjpib2IaEGU4MTYwNGU5ZjFkOWYwMjIgAQ=="
  }
}

@tonytheleg can confirm on at least mac os 14.6.1 mktemp -d has roughly the same functionality. Only difference seems to be where its stored, on mac it's at /var/folders/....


Update values.yaml (Fix synchronization of config db)

What this PR does / why we need it:
Have default config user match replication config user: https://github.com/jp-gouin/helm-openldap/blob/8efc199864ae5833edbe64fba701d3e3dddb474a/templates/_helpers.tpl#L78-L83
This allows config database to also be synced between masters.
Pre-submission checklist:

[x] Did you explain what problem does this PR solve? Or what new features have been added?
[x] Have you updated the readme?
[x] Is this PR backward compatible? If it is not backward compatible, please discuss open a ticket first

This is a quick fix. A more permanent solution would be to add Values.env.LDAP_CONFIG_ADMIN_USERNAME to binddn below:
https://github.com/jp-gouin/helm-openldap/blob/8efc199864ae5833edbe64fba701d3e3dddb474a/templates/_helpers.tpl#L78-L83

Thanks @wotsyula for the PR !
I'm working on PR #91 right now which correct that issue
I like your suggestion, I'll add it the the helper directly !

Corrected in latest release v4.1.0


(enhancement request): more versatile schedule command parsing?

Hi,
the "waking up" scenario which can be found here: http://labs.meethue.com/ relies on other "sensors" and has a schedule item which is not a SceneCommand nor a LightCommand. It actually looks like this:
{
	"1": {
		"name": "waking-uphuelabs-abc",
		"description": "HueLabs schedule-huelabs-abc",
		"command": {
			"address": "/api/<id>/sensors/9/state",
			"body": {
				"status": 1
			},
			"method": "PUT"
		},
		"localtime": "W003/T09:15:00",
		"time": "W003/T08:15:00",
		"created": "2016-01-02T22:12:38",
		"status": "enabled"
	}
}

i did not look further into it yet, but the rules of the cited example also use actions which are not Scene or LightCommands, so the same issue might pop-up there.
Are there any plans to support these types of commands or would that lead this project to far?
kind regards
stefan

Thanks for letting me know. This projects aims to support all interaction with the Bridge API. So I'd also like to support this scenario.
I made a GenericScheduleCommand that basically just supports raw json for a command body.
Usage example is here:
https://github.com/Q42/Q42.HueApi/blob/master/src/Q42.HueApi.Tests/ScheduleTests.cs#L87-L92
So writing this value to the bridge can now be done. But I haven't figured out yet how to properly read the values back when getting a list of all schedules from the bridge. There's a CommandBodyConverter that reads the value and looks for a Scene property, then assumes it's a SceneCommand and all else is a LightCommand.
https://github.com/Q42/Q42.HueApi/blob/master/src/Q42.HueApi/Converters/CommandBodyConverter.cs#L27-L41
I don't know how to differentiate between a LightCommand and this new GenericCommand. One option is to treat all commands as GenericCommands when reading them from the bridge. Or look at the address the command is posting to. But I don't have that information inside the CommandBodyConverter.
So not really sure yet. Any thoughts?

thanks, i will give the GenericCommand a try on monday, It will definitely let me achieve what i want to do.
Reading back from the bridge is nice but maybe not that crucial: the GenericCommands will always be very specific so making the Q42.HueApi more complex is maybe not worthwhile
i had a look at the sensor datafields mentioned at http://www.developers.meethue.com/documentation/supported-sensors and there is nothing unique which sets them apart from lights. So the address seems to be the unique identifier (which also means i can't help you out).
i assume the fields in the class SensorState (in Sensor.cs) are the state attributes of the sensors (as mentioned on http://www.developers.meethue.com/documentation/supported-sensors)? In that case these ones might be missing:
bool open
int32 temperature
int32 humidity
bool flag

Thanks, I've added the extra Sensor State fields

i tried a schedule and a rule, both work fine using the GenericCommand.
Regarding the read-back: i am not a SW developer, so maybe it's a bad idea/technique/... (and it does not look that clean) but i had a look at the newtonsoft.json documentation and there is a OnDeserialized callback method: http://www.newtonsoft.com/json/help/html/SerializationCallbackAttributes.htm,
Adding that to the InternalBridgeCommand gives me access to the Address and Body after the deserialisation. So if i defer the deserialisation of Body (and i simply return a GenericScheduleCommand in the ReadJson of the CommandBodyConvertor) then i can check the Address in the OnDeserializedMethod and JsonConvert.DeserializeObject of the Body to the relevant type and return that as Body.
the additional reasoning behind this is that i got the idea that the actions (for the rules) and commands (for the schedules) are maybe not that generic: it's only allowed to change the supported fields of the (supported) sensors, so it is feasible to define a SensorCommand (which covers all fields of all possible sensors) and keep GenericCommand as a fall-back, but use SensorCommand to control the sensors.
just my 2cents, not sure it's a good idea and maybe it's even totally wrong (and only works by accident - as said, i don't do SW for a living).
and some code i copy-pasted together to make the above text a bit clearer:
internalbridgecommand.cs

    [OnDeserialized]
    internal void OnDeserializedMethod(StreamingContext context)
    {
        // need to add more tests i guess ... but to start with:
        if (Address.Contains("sensor")) {
            var tmp = Body as GenericScheduleCommand;
            // this is fake, but i did not want to spend time on building a sensorcommand class yet
            // in real life this should not be a scenecommand
            var returnvalue = new SceneCommand();
            returnvalue = JsonConvert.DeserializeObject<SceneCommand>(tmp.JsonString);
            returnvalue.Scene = "999";
            Body = returnvalue;
        }
        else
        {
            var tmp = Body as GenericScheduleCommand;
            var returnvalue = new LightCommand();
            returnvalue = JsonConvert.DeserializeObject<LightCommand>(tmp.JsonString);
            Body = returnvalue;
        }
    }

commandbodyconvertor:
    public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
    {
      if (reader.TokenType == JsonToken.StartObject)
      {
        JObject jObject = JObject.Load(reader);

        return new GenericScheduleCommand(jObject.ToString());
       }
    }

Great suggestion. I was just in the middle of creating something in this direction. I've added the OnDeserializedMethod. When reading Schedules from the bridge, by default all commands are GenericScheduleCommands. But the OnDeserializedMethod tries to create a Scene, Light or SensorCommand.
Seems to work great.
Only thing is, what properties are supported for a SensorCommand? All the Sensor State properties?

All these changed are now released with version 2.2.1 which is up on NuGet

i was also just wondering what to put in the sensorcommand.
here http://www.developers.meethue.com/documentation/message-structure-and-response-0 they mention
R         Returned by GET
RO      Resource might not support attribute
W         Required for PUT
WO      Optional for PUT
C         Required for POST
CO      Optional for POST

since post only seems to be used to find and create new sensors, those fields probably do not matter, so that leaves all "W" and "WO" fields (update sensor + change config + change state). So i was thinking to add those.(most of them are common anyhow)

just retrieved 2.2.1 from NuGet and it works nicely (using the 2 visual tests i have for the moment :-/
Feel free to close this issue.
thanks, great job!

Nice list on the Philips documentation site, R, RO, W, CO etc. But where can I find these codes in the documentation?
It looks like the codes are not used anywhere in the Philips documentation. Only required and optional. Or am I missing something?

the codes are only used on the supported sensors page: http://www.developers.meethue.com/documentation/supported-sensors
so i was thinking about doing something like this:
	/// <summary>
	/// Sends a SensorCommand
	/// </summary>
	[DataContract]
	public class SensorCommand : ICommandBody
	{

        // from General Sensor Resource
        // The human readable name of the sensor, can be changed by the user. Is not allowed to be empty on change.
        [DataMember (Name = "name")]
        public string? Name { get; set; }
        // config object attributes
        // Turns the sensor on/off. When off, state changes of the sensor are not reflected in the sensor resource. Default is “true”
        [DataMember (Name = "on")]
        public bool? On { get; set;}
        // The current battery state in percent, only for battery powered devices. Not present when not provided on creation or modification (CLIP sensors).
        [DataMember (Name = "battery")]
        public int? Battery{ get; set; }
        // Optional URL of the CLIP sensor. Not present when not provided on creation or modification.
        [DataMember(Name = "url")]
        public string? Url { get; set; }
        // state object attributes
        // nothing

        // from CLIP Generic Status Sensor
        // already covered: on, battery, url
        // Sensor specific state attributes (you already had that one, just moved it here)
        [DataMember(Name = "status")]
        public int? Status { get; set; }

        // from CLIP Generic Flag Sensor
        // already covered: on, battery, url
        // Sensor specific state attributes
        [DataMember(Name="flag")]
        public bool? Flag { get; set; }

        // from Daylight Sensor
        // already covered: on
        // Supported config attributes
        // GPS coordinate longitude in decimal degrees DDD.DDDD{W|E} with leading zeros required ending with W or E e.g. 000.3295W “none” .  In future versions this may change to null.
        [DataMember(Name = "long")]
        public string? Longitude { get; set; }
        // GPS coordinate latitude in decimal degrees DDD.DDDD{N|S} with leading zeros required e.g. 010.5186N ending with N or S “none”.In future versions this may change to null.
        [DataMember(Name = "lat")]
        public string? Lattitude { get; set; }
        // Timeoffset in minutes to sunrise
        [DataMember(Name = "sunriseoffset")]
        public int? SunriseOffset { get; set; }
        // Timeoffset in minutes to sunset.
        [DataMember(Name = "sunsetoffset")]
        public int? SunsetOffset { get; set; }

        // from CLIP Humidity
        // already covered: on, battery, url
        // Sensor specific state attributes
        // Current humidity 0.01% steps (e.g. 2000 is 20%)
        [DataMember(Name = "humidity")]
        public int? Humidity { get; set; }

        // from CLIP Temperature
        // already covered: on, battery, url
        // Sensor specific state attributes
        // Current temperature in 0.01 degrees Celsius
        [DataMember(Name = "temperature")]
        public int? Temperature { get; set; }

        // from CLIP Presence
        // already covered: on, battery, url
        // Sensor specific state attributes
        // True if sensor detects presence
        [DataMember(Name = "presence")]
        public bool? Presence { get; set; }

        // from CLIP OpenClose
        // already covered: on, battery, url
        // Sensor specific state attributes
        // True if switch is currently open
        [DataMember(Name = "open")]
        public bool? Open { get; set; }

        // CLIP Switch
        // nothing

        // ZLL Switch
        // already covered: name on, battery, reachable

        // ZGP Switch
        // already covered: name, on

    }

(and i am not using my normal editor/pc at this moment, so there could be errors in the above code)
personally i only need State (which you already provided), and i did not check whether the other sensortype (humidity etc) actually exist (as in "can be bought and comply to this scheme"), but at this moment i think the above thing might be a sensible starting point.

I've added these extra properties. They'll come in the next NuGet release.
Closing this issue now. Thanks a lot for your help!


Group prefix and suffix placeholders

Would it be possible to implement new placeholders for the player's group's suffix and prefix?
For example, I am changing player name colours by appending colour codes to the end of player prefixes but I don't want this to affect my tablist which is using %luckperms_prefix%.
I suggest a new %luckperms_group_prefix% prefix to solve this issue.
Thanks.
-VendoAU

You might be interested in the prefix/suffix element placeholders which can use any of the elements from this page.

You might be interested in the prefix/suffix element placeholders which can use any of the elements from this page.

Thanks, I was able to get my desired result by creating a track containing all groups called "groups" and then using %luckperms_prefix_element_highest_on_track_groups%


Add lualine theme

Hi, thanks for the awesome colorscheme!
This PR adds support for lualine.

This looks lovely! Thank you 🥰


Render warning code 28 in cli (PG Inherited Tables)

https://github.com/prisma/schema-team/issues/396

Probably not needed anymore since we moved the warnings to the engine with https://github.com/prisma/prisma/pull/18869?


[YUNIKORN-1067] standardise on formatMetricName() call

What is this PR for?
remove substituteQueueName(queueName string).
use formatMetricName(metricname string).
What type of PR is it?

[ ] - Bug Fix
[x] - Improvement
[ ] - Feature
[ ] - Documentation
[ ] - Hot Fix
[ ] - Refactoring

Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/projects/YUNIKORN/issues/YUNIKORN-1067?filter=allopenissues&orderby=created+DESC%2C+priority+DESC%2C+updated+DESC
How should this be tested?
local run make test
Screenshots (if appropriate)
Questions:

[ ] - The licenses files need update.
[ ] - There is breaking changes for older versions.
[ ] - It needs documentation.

@steinsgateted can you please check the lint failure? It is probably a real simple thing which can be fixed by running goimports -w pkg/metrics/queue.go from the command line or via the IDE. goimports is a bit more stringent than gofmt and anything that passes goimports also passes the lint checks for gofmt
BTW: to install goimports if you do not have it use: go install golang.org/x/tools/cmd/goimports@latest to install

Thank you for your reply. I modified. Thank you.


Feature/change loglevel

Add loglevel.c, a system-level tool to directly modify the log level of a running D process using util.log.

Yeah: trust is an issue... Also: what's the related means, for example, for TypeScript services?
Should we consider the possible requirement that the level change survives a service restart?

I mean... then you start looking at things like config db and notifications and have to pull a lot of complexity in. That's  why we didn't have any feature that could do this, despite it being useful, for years.


Minerva issue 260 neo out of go lego

@goodb is it okay if I close this and merge #19276? You may have accidentally reverted some CHEBI term changes here.

yup, sorry bout that.


Problem Installing Howdy on Fedora 29 Workstation

Hello Again.  This time trying to install Howdy on Fedora 29.  This is the error I get:
[orabuntu@localhost ~] sudo dnf install howdy
Last metadata expiration check: 0:20:11 ago on Sun 03 Feb 2019 06:33:06 AM CST.
Error:
Problem: conflicting requests

nothing provides python3dist(pyv4l2) needed by howdy-2.5.0-1.fc29.x86_64
[orabuntu@localhost ~]

I've tried the following and they don't solve the error:
sudo dnf update
sudo dnf install libv4l-devel
sudo dnf install libv4l-devel.i686
Thanks!

Closing this issue, it is a duplicate of same issue #127.  I have reproduced and confirmed the issue reported in #127.


doc: Initial sphinx build

This puts the basic logic in place to build the documentation using sphinx and MyST.
It won't be quite perfect yet as the theme isn't in great shape yet but it will build and give us something to work from.

@ru-fu that's my take on a minimal changeset to get this stuff building with Sphinx, carrying over the least visible changes to our doc and smallest impact to the repository.
From there, I'd say the next step should be to make it look reasonable and align with the existing URLs as much as possible.
I'm seeing quite a lot of potentially blocking issues on https://github.com/evildmp/vanilla-sphinx-test/, off the top of my head, those are current blockers for us:

https://github.com/evildmp/vanilla-sphinx-test/issues/22
https://github.com/evildmp/vanilla-sphinx-test/issues/20
https://github.com/evildmp/vanilla-sphinx-test/issues/13
https://github.com/evildmp/vanilla-sphinx-test/issues/12
https://github.com/evildmp/vanilla-sphinx-test/issues/25

Do you think we can expect those to be sorted quickly (next week or so) or should we switch to one of the stock themes for the time being so we have something that we can roll out?

LGTM!


Allow users to set certain values to 0 or null when geometric mean is selected for line plots

Growth area:
We may want to offer users the ability to set certain values to be considered as zero/null. For example, for PCR Ct values the user may want to consider setting any values greater than 35 to null
see related ticket https://github.com/VEuPathDB/web-eda/issues/1038

I created a related back-end issue, that this one will depend on: https://github.com/VEuPathDB/EdaDataService/issues/183


[FEAT]: XLSX, CSV and JSON file integration

What would you like to see?
can be a good idea allow to embed XLSX, CSV and JSON files

Tracked in https://github.com/Mintplex-Labs/anything-llm/issues/290


Crash on windows 11 Pro

Example from pub.dev to include custom widget build crashes on open in Windows 11 Pro 21H2  22000.434 after release Build. Android Studio renders application with no issue, however after running "flutter build windows" app crashes as soon as widget loads.

Debugging release builds can be tricky, but first of all, you should look for a corresponding entry at the Windows event log (eventvwr).
Try to run your project’s Flutter runner solution in Visual Studio in release mode (see https://docs.microsoft.com/en-us/cpp/build/how-to-debug-a-release-build?view=msvc-170). If the app crashes again, you should see the issue immediately. If not, open the VS disassembler view and jump to the fault offset from the event viewer entry.

Should be fixed in v0.1.5.


mobile: renaming EnvoyNativeFilterConfig to EnvoyNativeConfig

in https://github.com/envoyproxy/envoy/pull/25297 we move non-filter config to using the struct with [name, typed_config] so doing a pure rename PR to remove "Filter" from the name
Risk Level: low
Testing: n/a
Docs Changes: n/a
Release Notes: n/a
Part of https://github.com/envoyproxy/envoy/pull/25314

sorry this was based off the C++ builder but I hadn't merged main so the diffs weren't correct. Fixed!


vertical Images are automatically flipped

Describe the bug
im using the project on version 6.2.5 inside an aws lambda. Its working fine to all horizontal aspect ratio images, but when i try to use it on a vertical image aspect ratio, it produces a flipped image.
To Reproduce
No edit params (just the default auto webp), you need to try on a vertical image (height > width)
exemple:
original image - https://blintz-properties-sandbox.s3.amazonaws.com/65e07c40657ad5e064388689/images/d689e51d-8488-459e-b00f-d522d8eb6544.jpeg
lambda image - https://d1988evaubdc7a.cloudfront.net/eyJidWNrZXQiOiJibGludHotcHJvcGVydGllcy1zYW5kYm94Iiwia2V5IjoiNjVlMDdjNDA2NTdhZDVlMDY0Mzg4Njg5L2ltYWdlcy9kNjg5ZTUxZC04NDg4LTQ1OWUtYjAwZi1kNTIyZDhlYjY1NDQuanBlZyIsImVkaXRzIjp7fX0=
Expected behavior
It should provide an image on same aspect ratio without flipping.
Please complete the following information about the solution:

[ 6.2.5 ] Version: [e.g. v1.0.0]
[ us-east-2 ] Region: [e.g. us-east-1]
[ no ] Was the solution modified from the version published on this repository?
[ ] If the answer to the previous question was yes, are the changes available on GitHub?
[ yes ] Have you checked your service quotas for the sevices this solution uses?
[ no ] Were there any errors in the CloudWatch Logs?

Screenshots

Additional context

Hi @mateusmcordeiro,
My suspicion is that this is the same issue as #537. Unfortunately most major browsers don't support the orientation attribute for WebP images. You can try including the "rotate": null edit to force Sharp to strip the exif data.
Something like: https://d1988evaubdc7a.cloudfront.net/eyJidWNrZXQiOiJibGludHotcHJvcGVydGllcy1zYW5kYm94Iiwia2V5IjoiNjVlMDdjNDA2NTdhZDVlMDY0Mzg4Njg5L2ltYWdlcy9kNjg5ZTUxZC04NDg4LTQ1OWUtYjAwZi1kNTIyZDhlYjY1NDQuanBlZyIsImVkaXRzIjp7InJvdGF0ZSI6IG51bGx9fQ== should work
Please reopen and let me know if you continue to run into issues.
Simon


Updated contribution guidelines

Hi @naokazuterada
I read the contribution guidelines and gave them a minor overhaul, please review my proposed changes.
Have a nice day
jonasbn

This change is

@jonasbn Great! Thanks! 👍

I've also added XXX_TEMPLATE files.

de69fbf
5a8f92a


allow forwarded messages to use existing connections and the outbound queue

This adjustment allows the mediator forward function to work with endpoint-less connections, either via active connections with return route, or via the outbound queue. (Sending to an endpoint was already supported.)

Codecov Report

Merging #631 into master will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #631   +/-   ##
=======================================
  Coverage   96.85%   96.85%
=======================================
  Files         248      248
  Lines       13260    13264    +4
=======================================
+ Hits        12843    12847    +4
  Misses        417      417

@andrewwhitehead -- good to go?  This should be it for 0.5.4, I think.


feat(ant): adds set-keywords and set-description methods for ants)

:tada: This PR is included in version 2.4.0-alpha.5 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Bug]: Could not build ballerina-lang repo when its path contains spaces

Description
ballerina-lang repo master branch build failed with the following error message,
`> Task :jballerina-tools:generateDocs FAILED
Error: Could not find or load main class org.ballerinalang.plugin.gradle.doc.DocerinaGen
Caused by: java.lang.ClassNotFoundException: org.ballerinalang.plugin.gradle.doc.DocerinaGen

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jballerina-tools:generateDocs'.
> Process 'command 'C:\Program Files\Eclipse Adoptium\jdk-<IP_ADDRESS>-hotspot\bin\java.exe'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.4/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 19s
346 actionable tasks: 41 executed, 305 up-to-date`

After relocating the repository to a path that does not include a space, the build was finished successfully.
Steps to Reproduce
Clone the repository to a directory with that includes a space. Following is the path I copied it to,
 C:\Users\Thushara Piyasekara\Documents\Ballerina_Lang_Codebase\ballerina-lang>
Run the following command in the clone repo directory,
gradlew build -x check
Affected Version(s)
master branch
OS, DB, other environment details and versions
OS: Windows 10
Related area
-> CICD
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

Hi, I would like to work on this issue. Could you please assign it to me?


Job variants count updated live?

Jobs 18979 and 18981 were single-combo generations from the same combo. When the first one was run it generated 29 variants and linked to them. But when 18981 was run, those variants were overwritten and disappeared from the 18979 log.
Is this intentional? Losing the history could disrupt an editor's workflow if a later job removes info they were using, although it's not too likely to happen with our current workforce.

The current behavior (always has been) is that a variant is linked only to the latest job that generated it, forgetting what happened before

Why would you want some different behavior?

It’s not that important, the niche downside scenario is:1. Editor 1 makes some changes to steps in a group of combos, generates variants2. Editor 2 makes some prereq tweaks, generates variants, there’s some overlap in affected variants3. Editor 1 uses the link from their job to view all the variants they need to process. Some altered variants are not visible here.4. Editor 2 reviews their variants and only checks for the prereq tweaks they made, failing to vet the step changes that were introduced by editor 1.This is very unlikely to happen with our current staff but if we ever get to 5+ editors again it could be worth thinking about.On 3 Jul 2024, at 22.45, ldeluigi @.***> wrote:
Why would you want some different behavior?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Why not using the variants link under the single combo page instead of the links under the job page? That way you won't have problems. In the meantime I'll add a "Included in" section under the combo page to help.


Snippets: give me a way to choose diferently per each snippet choice location

Refs: #31324
Notice in the screenshot below that I have two times $1 referenced in my snippet definition. When I trigger my snippet there is no way for me to choose different options for each place where $1 is referenced. I can only choose one thing and it will be inserted in all places

trigger my snippet there is no way for me to choose different options for each place where $1 is referenced

Yeah, that is the design of "mirrors" (see 7.6 in https://manual.macromates.com/en/snippets). Repeating placeholders all get the same value. To get different values you must use different placeholder indices, like ${1|one,two|} and ${2|one,two|} with $1 and $2

Thanks for explanation