Reqnroll in RootNamespace breaks generated Files

Reqnroll Version
1.0.1
Which test runner are you using?
xUnit
Test Runner Version Number
2.5.6
.NET Implementation
.NET 6.0
Test Execution Method
Visual Studio Test Explorer
Content of reqnroll.json configuration file
No response
Issue Description
We use several frameworks in our solution, so using the names as part of the project name, assembly name and root namespace seemed logical. Putting Reqnroll in the root namespace however creates the following errors:

The type or namespace name 'ScenarioInfo' does not exist in the namespace 'Lupus.Reqnroll' (are you missing an assembly reference?)
he type or namespace name 'ITestRunner' does not exist in the namespace 'Lupus.Reqnroll' (are you missing an assembly reference?)
Any other name works.

Steps to Reproduce
create new Reqnroll Project in Visual Studio and add
	<RootNamespace>Whatever.Reqnroll</RootNamespace>
to the project file
Link to Repro Project
No response

Yes, this seems to be a problem. (SpecFlow has the "TechTalk." prefix in the namespace, and that's why it was better working there.)
@priveLupus Could you please try to simulate the problem in a standard C# class library (without any feature file or Reqnroll package ref), that contains a file with an arbitrary class and a file that contains a class similar to the one Reqnroll generates?
Maybe that would help to figure out what we need to change in the generator to fix this issue. Maybe we just need to include a couple of more global:: prefix somewhere...

I did. And it seems that adding the global:: prefix to all of them would fix my issues. Works with both solutions. Want me to try it out in the source code and open an PR if it works?

@priveLupus would be really appreciated. feel free to ask for help if you get stuck. The generator part of Reqnroll is pretty tricky sometimes.

With the new Reqnroll.SystemTests the fix could be well guided. I think this will need a test in the GeneratorTestBase, so that it will be checked with all 3 test runners.
This would be a good feedback for the new system test concept.
@reqnroll/core-team anyone up for this?

I will attempt it.
Anything special or particular to be aware of with this issue?

@clrudolphi As mentioned above, hopefully the fix will be to just add some "global" prefixes to the type declarations. I think the trickier will be to make the test. The test can be very similar to the one in the smoke test class, but we probably need to have a step with data table as well. I haven't checked, but surely there must be a way to configure the project name to be generated, so you can set it to something ends with ".Reqnroll".
I can help if you get stuck.

OK. I think we have two options and would like your direction.
Option 1:
modify all references to ReqnRoll types in the generated source as global::Reqnroll.ITestRunner
Option 2:
Set up a using alias at the top of the generated file such as:
using Reqnroll = Reqnroll;
and then modify all references to Reqnroll types as Reqnroll::ITestRunner
The first works because the Reqnroll namespace is opened at the global level in the ImplicitUsings.cs file.
The second works only if an alias is established within each generated file.
In either case, the referencing syntax has to change to include the namespace alias qualifier ::
Which would you prefer?

@clrudolphi I would go for option 1.

Fixed by #85, thx @clrudolphi!


Include demo SPA repos in README

The examples provided by default through Tailor are great to get started, but I think linking directly to the SPA examples in the README would be helpful to those looking to dive a bit deeper into more complex and practical usage of Tailor (similar to the techniques used by Zalando in production).
The second of the two example SPAs was built in response to a dependency handling issue (#196)

Thanks @tsnolan23 for the PR :)

👍

:+1:

@tsnolan23, @vigneshshanmugam how would one put together a SPA with the use of fragments? This is not very clear as SPAs navigate via routes and the HTML is rendered on the front-end not on the server. I hope you see my dilemma, if I change routes within a SPA and want to navigate to another fragment how would I execute that?


Post talk speaker endpoint - JOINDIN-639

This creates the API endpoint required in https://joindin.jira.com/browse/JOINDIN-639
It's complete, except the sending emails (as the emails need a link, which requires the work to be done in web-2 as well), but before I moved on any further, I largely wanted a more in-depth review, as I've not really done any 'big' things on the API side before!
Functionally it all works, but there might be better ways to juggle the mappers etc.
In short, consider this a request for a code review :-)

Would it be possible to move the refactoring bits out to a different PR?

Unit Tests added


Multiservers cause a crash

Spark link
it is not necessary
Stack trace
https://paste.gg/p/anonymous/4d96387e8e79423a81a2b54122bd6700

Actions to reproduce (if known)
No response
Purpur version
git-Purpur-1964 (MC: 1.19.4)
Agreements

[X] I am running the latest version of Purpur available from https://purpurmc.org/downloads.
[X] I have searched for and ensured there isn't already an open issue regarding this.
[ ] I ticked all the boxes without actually reading them
[X] My version of Minecraft is supported by Purpur.

Other
No response

The spark link is necessary, especially considering we have no idea what "Multiservers" is referring to.
Additionally, armor trims are causing your server to crash. Considering they're not in the game until 1.20, you're either using the experimental (and unsupported) 1.20 features datapack, or have a plugin that's messing with the game really jankily.

Did you mean MultiverseCore?


postcss-import Warning

Summary
I found a Warning via Chrome console. Actually I solved this issue from local environment through downgrading(for @^3.1.8). But After I deployed and distributed, the Warning was reappeared. I want to remove this Warning.
Screenshots

Version
@^3.1.8
Additional context (Environment )

React @^18.2.0
Next.js + Typescript
Chrome

@tty5799 haha


KeyError: 'MgAl2O4'

Dear Sir
I am trying to calculate defect formation energy by following the tutorial on pydefect on MgAl2O4 system as provided in the following link
https://kumagai-group.github.io/pydefect/tutorial.html#
In Step 4 of the Calculation of competing phases, after the VASP calculation, I was able to generate the standard_energies.yaml and relative_energies.yaml files. However, when I tried the 'pydefect cv -t MgAl2O4' command to generate the chemical potential diagram, it gives a key error as 'KeyError: 'MgAl2O4''. I have attached the screenshot of the error. Can you please suggest to me how to resolve the error?
Thank you very much.
Best regards
Arindam Sannyal

Dear Arindam Sannyal,
thank you for your post.
Could you check if your relative_energies.yaml includes "MgAl2O4"?
Here is an example of mine.
Al2O3: -3.1489629
Mg17Al12: -0.021573085977011353
MgAl2: -0.011912545555555099
MgAl2O4: -3.0959495723809525
MgO: -2.8267036658333335

Dear Sir
Thank you very much for your prompt response. Yes, Sir, my relative_energies.yaml file includes the "MgAl2O4" as in the attached figure.

Okay, then MgAl2O4 should not be energetically stable at 0K in your calculations.
In other word, it does not appear in the chemical potential diagram.
Could you artificially reduce the energy of MgAl2O4 by -1.0 eV for example, and run the same command?
I should show an adequate error message.

Dear Sir
As you suggested, I have artificially reduced the energy of MgAl2O4 by -1.0 eV.

Now the 'pydefect cv -t MgAl2O4' command gives the AssertionError as follows

Sir, I would like to mention that the energies calculated from my VASP calculations deviate by ~0.3 eV from those shown in the tutorial. Thank you very much.
Best regards
Arindam Sannyal

Could you remove H3N and NO2, please?

Dear Sir
Removing the H3N and NO2 successfully generates the chemical potential diagram. Thank you very much, Sir.
Best regards
Arindam Sannyal


HADOOP-13611. S3A FS deleteOnExit to skip the exists check.

1924

 Quality gate: Failed
10 Issues

 1 Vulnerabilities
 9 Code issues

Details


⚠ Bofrost.at has degraded performance

In f0cfd33, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1560 ms

Resolved: Bofrost.at performance has improved in 23a5ba6 after 306 days, 18 hours, 15 minutes.


ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.schedule_sdb fails

Configuration
  name: Schedule SdB
  refresh: "6:00:00"
  default_state: default
  icon: mdi:calendar-check
  error_icon: mdi:calendar-alert
  minutes_to_refresh_on_error: 5
  events:
    - start: "0:00"
      end: "8:00"
      state: night
      icon: mdi:weather-night
    - start: "8:00"
      end: "8:30"
      state: boost
      icon: mdi:thermometer-chevron-up
    - start: "8:30"
      end: "23:00"
      state: day
      icon: mdi:sun-thermometer
    - start: "23:00"
      state: night
      icon: mdi:weather-night
    - state: away
      condition:
        - condition: state
          entity_id: zone.home
          state: 0'
    - state: summer
      condition:
        - condition: state
          entity_id: input_boolean.mode_ete
          state: 'on'

Describe the bug
This error message appears about every 30 seconds.
In addition, the sensor.schedule_sdb goes unavailable.
This is the case for all sensor.schedule_xxx
Debug log
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 698, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 959, in async_device_update
    await self.async_update()
  File "/config/custom_components/schedule_state/sensor.py", line 479, in async_update
    await self.data.update()
  File "/config/custom_components/schedule_state/sensor.py", line 948, in update
    self.overrides = [o for o in self.overrides if dt.as_local(o["expires"]) > now]
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/schedule_state/sensor.py", line 948, in
    self.overrides = [o for o in self.overrides if dt.as_local(o["expires"]) > now]
                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/util/dt.py", line 141, in as_local
    if dattim.tzinfo == DEFAULT_TIME_ZONE:
       ^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'tzinfo'

@Reynders1 can you explain a bit more how/when this happens? Did you recently upgrade and it's a new problem? Did you use some overrides? Does it happen after you restart? etc

Hi @aneeshd,
I updated recently (in fact after you fixed the "Service_Working but with bug report #155"). Installed version is 0.19.2. It might well be since this update that I get the error messages, but cannot confirm it. It is anyway recent.
I use overrides in a scripts which runs when I manually change the predefined temperature of a TRV. It used to work fine for months! Here is an extract of the code used:
sequence:
    - variables:
        override: "{{states('input_number.override_duration_'+called_from_mode) | int}}"

# force schedule mode
    - service: schedule_state.set_override
      data:
        state: '{{ called_from_mode }}'
        duration: '{{ override }}'
      target:
        entity_id: 'sensor.schedule_{{ called_from_room }}'

The error happens as soon as HA has started.

OK, thanks. I’ll try to figure out what’s going on…

On Dec 17, 2023, at 13:36 , Reynders1 @.***> wrote:
Hi @aneeshd https://github.com/aneeshd,
I updated recently (in fact after you fixed the "Service_Working but with bug report #155 https://github.com/aneeshd/schedule_state/issues/155"). Installed version is 0.19.2. It might well be since this update that I get the error messages, but cannot confirm it. It is anyway recent.
I use overrides in a scripts which runs when I manually change the predefined temperature of a TRV. It used to work fine for months! Here is an extract of the code used:
sequence:
- variables:
override: "{{states('input_number.override_duration_'+called_from_mode) | int}}"
force schedule mode
- service: schedule_state.set_override
  data:
    state: '{{ called_from_mode }}'
    duration: '{{ override }}'
  target:
    entity_id: 'sensor.schedule_{{ called_from_room }}'

The error happens as soon as HA has started.
—
Reply to this email directly, view it on GitHub https://github.com/aneeshd/schedule_state/issues/188#issuecomment-1859246792, or unsubscribe https://github.com/notifications/unsubscribe-auth/AATKODPWBK25ZIELZYPLWJDYJ43TZAVCNFSM6AAAAABAXTXSZ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNJZGI2DMNZZGI.
You are receiving this because you were mentioned.

Same thing is happening for me since I updated from 0.19.1 to 0.19.2 today
Exact same log

I managed to reproduce it. Hopefully I'll find a fix soon

I think it's fixed - let me know

@aneeshd
The error no longer shows up... It seems you fixed it indeed!
Many thanks for your great support.
Enjoy the end of year break.

cool


Add a way to check if a property has already been cached

Sometimes it's useful to be able to check if a property has been cached already. Currently I'm using something like:
    @cached_property
    def cachable(self): pass

    def a_function(self):
        if 'cachable' in self.__dict__:
            # Already cached.
        else:
            # Not cached yet.

(Haven't tested this, but I think it'ill work) Can we think of a better API?

Works for me. I like how it plugs right into the very obvious way of accessing things in the object
s __dict__ attribute.
👍

It works, I just consider it ugly and it exposes an implementation detail. I'm not really a fan of invalidation either (del self.__dict__['cachable']).
cached_property.iscached(self.cachable)? self.cachable.iscached has some issues. (What if the cachable has a different iscached attribute? We could do what namedtuple does and call it _iscached, not because it's protected but to avoid clashes.) Could we do the same for invalidate()?


Add metadata to PipelineTask to specific additional labels and annotations

Update issue title and description on 6/9/2020:

Metadata is not part of the taskspec, tasks contain both a taskspec to define the behavior and metadata to identify the task k8s resource. When a taskspec is embedded in a pipelinespec instead of referencing a task, their is no separate task k8s resource so we don't need task specific metadata since it wouldn't make sense.

We need to have support for setting different annotations or metadata on the TaskRun created from embedded TaskSpec define in Pipelines (from the Pipeline Label and Annotation), am I right ?
I could see having the following:
apiVersion: tekton.dev/v1beta1
kind: PipelineRun
metadata:
  name: pipelinerun-with-taskspec-to-echo-greetings
spec:
  pipelineSpec:
    params:
    - […]
    tasks:
    - name: echo-greetings
      medata:
        labels: [ …]  - name: GREETINGS
        description: "Greetings, default is Hello World!"
        type: string
        default: "Hello World!"
        annotations: […]
      taskSpec:
        […]

It should be added on all embedded spec types. It wouldn't break backward compatibility.

Original Issue Question:

Unsupported features for embedded pipelineSpec, taskSpec?

Can any Tekton YAML that contains separate "documents" for Tasks, Pipeline, PipelineRun be converted to a YAML file containing only one PipelineRun "document" with embedded pipelineSpec which embeds multiple taskSpecs?
One thing that seems to get lost are Task metadata like pod label annotations.
Related issues:
https://github.com/tektoncd/pipeline/issues/872
https://github.com/tektoncd/pipeline/pull/1333
https://github.com/tektoncd/pipeline/pull/1554
Answer from @vdemeester:

AFAIK there should be no lost capabilities from embedding resource specs instead of referencing separate resources. It changes which k8s resources the data is stored in, but all the same specs are provided.

Metadata for first example:
 kubectl get pr pipelinerun-echo-greetings -o json | jq .metadata
{
  "annotations": {
    "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"tekton.dev/v1beta1\",\"kind\":\"PipelineRun\",\"metadata\":{\"annotations\":{},\"name\":\"pipelinerun-echo-greetings\",\"namespace\":\"default\"},\"spec\":{\"params\":[{\"name\":\"MORNING_GREETINGS\",\"value\":\"Good Morning, Bob!\"},{\"name\":\"NIGHT_GREETINGS\",\"value\":\"Good Night, Bob!\"}],\"pipelineSpec\":{\"params\":[{\"default\":\"Good Morning!\",\"description\":\"morning greetings, default is Good Morning!\",\"name\":\"MORNING_GREETINGS\",\"type\":\"string\"},{\"default\":\"Good Night!\",\"description\":\"Night greetings, default is Good Night!\",\"name\":\"NIGHT_GREETINGS\",\"type\":\"string\"}],\"tasks\":[{\"name\":\"echo-good-morning\",\"params\":[{\"name\":\"MESSAGE\",\"value\":\"$(params.MORNING_GREETINGS)\"}],\"taskRef\":{\"name\":\"task-echo-message\"}},{\"name\":\"echo-good-night\",\"params\":[{\"name\":\"MESSAGE\",\"value\":\"$(params.NIGHT_GREETINGS)\"}],\"taskRef\":{\"name\":\"task-echo-message\"}}]}}}\n"
  },
  "creationTimestamp": "2020-06-05T23:54:14Z",
  "generation": 1,
  "labels": {
    "tekton.dev/pipeline": "pipelinerun-echo-greetings"
  },
  "name": "pipelinerun-echo-greetings",
  "namespace": "default",
  "resourceVersion": "4195854",
  "selfLink": "/apis/tekton.dev/v1beta1/namespaces/default/pipelineruns/pipelinerun-echo-greetings",
  "uid": "cef3aeef-0d40-4e96-9759-5e89079b93fb"
}

@pritidesai -- what we would want is metadata.labels on the embedded taskSpec
apiVersion: tekton.dev/v1beta1
kind: PipelineRun
metadata:
  name: pipelinerun-with-taskspec-to-echo-greetings
spec:
  pipelineSpec:
    params:
      - name: GREETINGS
        description: "Greetings, default is Hello World!"
        type: string
        default: "Hello World!"
    tasks:
      - name: echo-greetings
        taskSpec:
          metadata:  # <--- ERROR: cannot decode incoming new object: json: unknown field "metadata"
            labels:
              app: containerOp
          params:
          - name: MESSAGE
            type: string
            default: "Hello World!"
          steps:
            - name: echo
              image: ubuntu
              script: |
                #!/usr/bin/env bash
                echo "$(params.MESSAGE)"

$ kubectl apply -f temp/embeded_pipelinespec_embedded_taskspec.yaml
Error from server (BadRequest): error when creating "temp/embeded_pipelinespec_embedded_taskspec.yaml": admission webhook "webhook.pipeline.tekton.dev" denied the request: mutation failed: cannot decode incoming new object: json: unknown field "metadata"

But that is just one example. Really this question is about any know capabilities that would get lost when transforming from multiple separate Task documents to embedded taskSpecs.

Here is my understanding:
Metadata is not part of the taskspec, tasks contain both a taskspec to define the behavior and metadata to identify the task k8s resource. When a taskspec is embedded in a pipelinespec instead of referencing a task, their is no separate task k8s resource so we don't need task specific metadata since it wouldn't make sense.
AFAIK there should be no lost capabilities from embedding resource specs instead of referencing separate resources. It changes which k8s resources the data is stored in, but all the same specs are provided.

Right, metadata is associated with CRD and can not be specified under specification, like following task metadata, pipeline metadata, etc:
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: task-echo-good-morning
spec:

Pipeline metadata:
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
  name: pipeline-to-echo-good-morning
spec:

CRD metadata is stored inside the resources themselves, in case of embedding resources, no resources are created and hence no metadata.

Is it possible to update the podTemplate so that we can add labels/annotations to taskRun without creating the task CRD?
https://github.com/tektoncd/pipeline/blob/master/pkg/apis/pipeline/pod/template.go
The custom label or annotations are not implemented in podTemplate, but we want to see can we add that support to the podTemplate similar to how ImagePullSecrets was done
https://github.com/tektoncd/pipeline/commit/550e3b4877300f9cabbd300b8beeca1455c9bb6a

Thanks @Tomcli @ckadner
@pritidesai @afrittoli see if this can be prioritized - parts of our implementation definitely dependent on being able to pass lables/annotations at a taskRun level in addition to higher pipelineRun level

i.e. We want to append the extra pod labels or annotations to here https://github.com/tektoncd/pipeline/blob/master/pkg/pod/pod.go#L259-L260

And ideally want it to be part of 0.13 bug-fix or patch, or 0.14 release latest for us to be able to deliver timely.

@ckadner maybe we can update the issue title to be a little bit more concise for metadata.labels and annotations? The other metadata are irrelevant in Kubeflow and our use case.

@pritidesai @afrittoli see if this can be prioritized - parts of our implementation definitely dependent on being able to pass lables/annotations at a taskRun level in addition to higher pipelineRun level

@animeshsingh if I understand correctly, you need to have support for setting different annotations or metadata on the TaskRun created from embedded TaskSpec define in Pipelines (from the Pipeline Label and Annotation), am I right ?
I could see having the following:
apiVersion: tekton.dev/v1beta1
kind: PipelineRun
metadata:
  name: pipelinerun-with-taskspec-to-echo-greetings
spec:
  pipelineSpec:
    params:
    - […]
    tasks:
    - name: echo-greetings
      medata:
        labels: [ …]  - name: GREETINGS
        description: "Greetings, default is Hello World!"
        type: string
        default: "Hello World!"
        annotations: […]
      taskSpec:
        […]

It should be added on all embedded spec types. It wouldn't break backward compatibility.

And ideally want it to be part of 0.13 bug-fix or patch, or 0.14 release latest for us to be able to deliver timely.

A 0.13 bug-fix would definitely be not possible, it's not a bug, it's a new feature to add.
/kind feature
/unkind question
We should retitle the issue "Add metadata to PipelineTask to specific additional labels and annotations" :angel: :pray:

Thanks @vdemeester. A 0.14 can land just in time for us - what's the timeframe for cutting it?
@ckadner please rename the issue.

Thanks @vdemeester. A 0.14 can land just in time for us - what's the timeframe for cutting it?

I think the current deadline for 0.14 is on 1st July of 2020 for 0.14 :upside_down_face:

@animeshsingh if I understand correctly, you need to have support for setting different annotations or metadata on the TaskRun created from embedded TaskSpec define in Pipelines (from the Pipeline Label and Annotation), am I right ?

Thanks @vdemeester. That's what we want.

@animeshsingh if I understand correctly, you need to have support for setting different annotations or metadata on the TaskRun created from embedded TaskSpec define in Pipelines (from the Pipeline Label and Annotation), am I right ?

Thanks @vdemeester. That's what we want.

I think that's a fair ask and doable. cc @bobcatfish @pritidesai @afrittoli

/remove-kind question

@vdemeester does it mean introducing metadata in PipelineTask? It has to be TaskMetadata and can not be PipelineMetadata.
type PipelineTask struct {
	Name string `json:"name,omitempty"`
	Metadata metav1.ObjectMeta `json:"metadata"`
...

Do we introduce the same metadata at the pipelineSpec level?
type PipelineRunSpec struct {
	Metadata metav1.ObjectMeta `json:"metadata"`
...

@pritidesai That might be a way yes :upside_down_face: We don't necessary need to use metav1.ObjectMeta and just define our own with the map[string]string for labels and annotations.

It has to be TaskMetadata and can not be PipelineMetadata.

Not sure I follow :stuck_out_tongue_closed_eyes: both are the same type :upside_down_face:

/assign

@pritidesai thanks for tackling this - would love for this to be in master before v0.14 release, which i am hoping comes out some timeframe in July, and is adopted in ibm cloud for us to be able to leverage functionality finally on product side.
cc @Tomcli @skaegi

yup, working on a PR as we speak 👍

PR #2826 is created to support metadata with taskSpec in a PipelineTask to allow specifying labels and annotations when a task is embedded using taskSpec. These labels and annotations are propagated to taskRun and then to the pods.
These labels are commonly used to identify and filter pods for further actions (such as collecting pod metrics, and cleaning up completed pod with certain labels, etc) even being part of one single Pipeline.
  pipelineSpec:
    tasks:
    - name: echo
      metadata:
        labels:
          pipeline-sdk-type: kfp
      taskSpec:
       ...
    - name: echo2
      metadata:
        labels:
          pipeline-sdk-type: tfx
      taskSpec:
       ...


Ginkgo: Add Measure ginkgo function to the Beforeall/AfterAll group

Had seen issues with the BeforeAll/AfterAll in Nightly where the
functions are not cleanup correctly and get the test in a bad state.
Signed-off-by: Eloy Coto<EMAIL_ADDRESS>

This change is

test-me-please

test-nightly

https://jenkins.cilium.io/job/Cilium-PR-Nightly-Tests-All/160/console

test-nightly

test-me-please

Had seen issues with the BeforeAll/AfterAll in Nightly where the
functions are not cleanup correctly and get the test in a bad state.

Can you provide an example here?

test-me-please

test-nightly

test-me-please

test-nightly

test-nightly


Use verbose name in SQL Lab database dropdown

If the verbose name for a database is specified, it will be used in the dropdown. Fallback is database name.

Codecov Report

Merging #5252 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #5252      +/-   ##
==========================================
+ Coverage   60.76%   60.76%   +<.01%
==========================================
  Files         258      258
  Lines       19708    19709       +1
  Branches     1972     1973       +1
==========================================
+ Hits        11976    11977       +1
  Misses       7723     7723
  Partials        9        9

Impacted Files
Coverage Δ

superset/views/core.py
74.62% <ø> (ø)
:arrow_up:

.../assets/src/SqlLab/components/SqlEditorLeftBar.jsx
92.52% <100%> (+0.07%)
:arrow_up:

Continue to review full report at Codecov.

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

@mistercrunch Not sure why py36-sqlite job is failing in Travis, as it runs successfully on my local machine.


Protean: Light and Dark mixes.

NOTE: "Create a ---- language key in Polyglot to customise the publicly-displayed name. "

Publish button for mix


Does this actually creates a version?

Does this actually creates a version? or replace the post with AMP format?

Will be fixed along with #4


Allow integer response code

This PR relates to #29
Introduces extended yaml safe loader which converts integer keys to strings

@dtkav @gcallaghan @TomFaulkner @erunion That should solve the issue. Thanks for thelp guys.


scipy.sparse.linalg.eigsh requires at least 20 iterations to converge no matter what

scipy.sparse.linalg.eigsh requires 20 iterations to find the largest eigenvalue even if I give the exact top eigenvector as the initial vector (the code below).
This is an issue for me because every matrix-vector operation counts in my problem. A bit more context on why I noticed this issue:
I have an application in which 1) I need to repeatedly find the largest eigenvalue of a positive definite matrix, 2) I have a very good estimate of the top eigenvector every time, and 3) I only need relatively low accuracy e.g. 10% relative error. I was confident that the Lanczos / Arnoldi iterations should converge very quickly, say in less than 10 iterations or so, but I noticed that every time it always takes exactly 20 iterations.
Reproducing code example:

import numpy as np
import scipy as sp
import scipy.sparse
import scipy.sparse.linalg

size = 10 ** 4
D = np.ones(size)

info = {'n_iter': 0}
def matvec(v):
    info['n_iter'] += 1
    return D * v

linear_op = sp.sparse.linalg.LinearOperator((size, size), matvec=matvec)

info['n_iter'] = 0
v0 = np.random.randn(size)
eigval, eigvec = sp.sparse.linalg.eigsh(linear_op, k=1, v0=v0)
print("{:d} iterations until convergence.".format(info['n_iter']))

info['n_iter'] = 0
v0 = np.zeros(size)
v0[0] = 1
eigval, eigvec = sp.sparse.linalg.eigsh(linear_op, k=1, v0=v0)
print("{:d} iterations until convergence.".format(info['n_iter']))

Scipy/Numpy/Python version information:
import sys, scipy, numpy; print(scipy.__version__, numpy.__version__, sys.version_info)
1.1.0 1.15.4 sys.version_info(major=3, minor=6, micro=3, releaselevel='final', serial=0)

Try setting the ncv parameter to something smaller than 20.  The default is min(n, max(2*k + 1, 20)) which for your example comes out as 20.

Ah, I missed the ncv parameter. Thanks! Yes, changing ncv does make convergence possible with fewer iterations.

What if I need to compute more eigenvalues. Let's say I already have 5 but need another 5. The documentation always speaks only about v0 as a vector of length size. But now I need to pass 10 such vectors. First five are already known, the second five are to be determined. But I cannot feed five known vectors to v0, only 1 of them.

you may be best off opening a new issue @JanElias3141

Also eigsh currently does not support "warm start" hence the only way is to do everything for 10 from scratch.

That is a real shame. I thought the initial vector is included specifically because of this functionality. As I understand it, users can now guess only one vector, not more. Is there any plan to extend it? I might be ignorant but is seems to me as a straightforward option with not much work and potentially extremely useful application. As I see it, users typically do not know how many eigenvalues they need. So they compute some, check quality of the approximation of the linear system, and possibly compute more.
I am really glad scipy has this function and will use it anyway.

Initial vector is to start the process better, not to get things take off where its left off internally. But at least it can make the convergence much faster so not everything is lost.

We are in the process of rewriting ARPACK but what you ask is to provide exceeding amount of information to resume the process. It is far from straightforward unfortunately from today's point of view, maybe we would find a way at the end

Thank you for your explanation. Good luck with rewriting the code. You are providing an excellent service to the community.


Is there a way to let assembleAndroidTest task running against specific flavor on android?

I followed the instruction from android setup doc.
gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug
it seems like  assembleAndroidTest builds every flavors
Is there a way I can specify flavor that want assembleAndroidTest to run against?

https://github.com/wix/Detox/blob/master/detox/test/package.json#L95


Broken picture in hyperion

Hi. In hyperion sending broken picture
My TV is LG 65NANO916 2021
This is piccap setting {"backend":"libvtcapture","address":"<IP_ADDRESS>","port":19400,"width":360,"height":180,"fps":0,"autostart":true,"nogui":false,"novideo":false}

Try disabling GUI capture and doing a restart/reboot.

i changed resolution and picture send OK
{"backend":"libvtcapture","address":"<IP_ADDRESS>","port":19400,"width":640,"height":360,"fps":30,"autostart":true,"nogui":false,"novideo":false}

Solved


Split core.js into smaller chunks [WIP]

This PR tries to close #782.
I make the pull request now so that anyone can see how I'm approaching the task and can tell me whether I'm doing something wrong. As it is work in progress, it may not pass the tests

CI not working because of this: https://github.com/jquery/qunit/issues/782#issuecomment-81925957

I'm not sure why the build has failed. I have tried to fix the error in the test-on-node task, but can't seem to find where it comes from

Try grunt test-on-node --stack to get more details from grunt. Sadly the --stack option is still not enabled by default.

Done, thank you for the tip!
Now the build is passing in my local repository while it is not in jquery's. I think this may be browserstack's fault

Yeah, more BrowserStack timeouts. Haven't been able to track down the cause of those, so for now we have to just ignore them. I'll review the diff...

I might have shaken things too much this time, specially with the control and loggingCallbacks directories.

I have kept moving things out of core
The content of the new core/test.js file is suspicious to be refactored because it makes core depend on test, making it a circular dependency. I'll inspect this tomorrow.

The failed build is browserstack's fault again.
What do you guys think of the current state of the PR?

I have very limited bandwidth for PR reviews this week. I hope @leobalter can provide you with some feedback for now.

I've been busy this week and thus not able to finish the PR. I'll try to get some work done very soon.

I fixed many of the things you told me. CI is passing in my repository (not in jQuery's though, but that is because of browserstack again).

Any suggestion?
Thanks

re-running the CI

I merged master to get the new tests that were written after I last merged.
The CI has failed because of a weird error:
"failing assertions: global failure" failed, Syntax error at line 446 while loading: in string literal: unexpected end of script
  Source: http://localhost:8888/test/main/async.js:446

It has just failed in Windows XP using Opera 12.10, and I do not see anything wrong with async.js:446.
Is it an error with my code?

No, I've seen that error before in that browser. Doesn't even happen consistently with the same file, I've seen it with deepEqual.js as well.
@leobalter any idea? If not, let's just drop Opera 12.10?

Well, timeouts again.

Any problem with this?

No problem at all, just not enough time for all the PRs and issues. I'll take another look.

caught only code style issues, and I'm already running tests on a local updated branch and I'll also manually check browserstack.

I'm already running tests on a local updated branch and I'll also manually check browserstack.

Passing!

Ok, everything has been fixed! Is this ready for merge?

I have changed the title of the PR because it seems to be ready. Any other thing I should do?

Any thoughts?

By now this needs a rebase to be able to merge it. Haven't yet looked into the individual conflicts.

Sorry I have been afk because I had to study for my exams. Still any interest?

Yes, sure. I'm actually you're back!

On Jun 5, 2015, at 1:49 PM, Braulio Valdivielso Martínez<EMAIL_ADDRESS>wrote:
Sorry I have been afk because I had to study for my exams. Still any interest?
—
Reply to this email directly or view it on GitHub.

I think Leo meant "glad you're back". @BraulioVM do you need more input somewhere? Seems like for now we "just" need a rebase.

I'm sorry it took me so long but I'm studying for my exams right now and couldn't look into this.
I hope it's done now. Tell me if anything else is needed, but I cannot assure you whether I will be able to get any important work done as I'm still studying.

Yes, I'm glad. My autocorrector is not because of multiple languages everyday.

On Jun 17, 2015, at 10:28 AM, Jörn Zaefferer<EMAIL_ADDRESS>wrote:
I think Leo meant "glad you're back". @BraulioVM do you need more input somewhere? Seems like for now we "just" need a rebase.
—
Reply to this email directly or view it on GitHub.

We really need to land this as soon as possible. Going through my email notifications in chronological order this morning, I ended up merging #822 before looking at this, and that caused another merge conflict. Sorry about that.
@BraulioVM could you do the rebase magic once more? I think we can manage to hold off on any other commits to master for a little while, until this is done. Hopefully you can squeeze this in between your study.

Rebase magic done.
CI is failing, but I think it is not my fault. Could you look into it? It looks like there is a bug in browserstack/cli.js

@leobalter could you do another review of this?

LGTM, :shipit:


change related to build versions

I am new at cockroachdb  and using latest version "2.0.3"

there is update at 'cockroach node status' result
the result included 'is_live' which is not exist  before
other update at sql shell 'SHOW EXPERIMENTAL_RANGES FROM TABLE table' result
the result included 'Range ID' which is not exist  before

please tell me should i create pull request if there is change with another versions in the documentation , and what is the version the documentation  depend on

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/89e02f1f662b567d5832a21e8b16cd89753997bf/

Thanks for catching yet another change, @tarekbadrshalaan! Really appreciate these updates as you work through the local tutorials.
It'd be great if you could apply these changes to the file with the same name in the v2.1 directory.

Re-opening this and merging, @tarekbadrshalaan. This PR has the relevant updates for 2.0. The other PR for v2.1 is good, too, but you need to use the latest v2.1 alpha binary for that. See comments in that PR.


Placement Resizer optimization error with recently version of OpenLane

Description
Hi all,
I create this issues due to i'm working on a project with OpenRAM, i create a module that combine two SRAM macros to work as one, the problem comes when i update OpenLane last week an the same project now doesn't work.
I get the following error message:

The project works with the OpenLane version:  6ca12d8eab5aaeef8a62431e798bfd06c5495a0e
The project does not work with the OpenLane version: 456838bffcd80291282e4485d276ada28680447e

Expected Behavior

Environment report
open_pdks 1341f54f5ce0c4955326297f235e4ace1eb6d419
WARNING: issue-survey appears to be running inside the OpenLane
container.

This makes it difficult to rule out issues with your
environment.

Unless instructed specifically to do so, please run this command
outside the OpenLane container.
---

Kernel: Linux v5.15.0-79-generic
Distribution: centos 7
Python: v3.6.8 (OK)
OpenLane Git Version: 456838bffcd80291282e4485d276ada28680447e
pip: INSTALLED
python-venv: INSTALLED
---
PDK Version Verification Status: OK
---
Git Log (Last 3 Commits)

456838b 2023-09-06T14:48:32+03:00 Remove CVC (#1976) - Mohamed Gaber -  (grafted, HEAD -> master, tag: 2023.09.07, origin/master, origin/HEAD)
---
Git Remotes

origin	https://github.com/The-OpenROAD-Project/OpenLane.git (fetch)
origin	https://github.com/The-OpenROAD-Project/OpenLane.git (push)

Reproduction material
I attach the project:
SRAM_32_1024_2_row.zip
Relevant log output
[STEP 15]
[INFO]: Running Single-Corner Static Timing Analysis (log: designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/logs/cts/15-cts_sta.log)...
[STEP 16]
[INFO]: Running Placement Resizer Timing Optimizations (log: designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/logs/cts/16-resizer.log)...
[STEP 17]
[INFO]: Running Global Routing Resizer Design Optimizations (log: designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/logs/routing/17-resizer_design.log)...
[ERROR]: during executing openroad script /openlane/scripts/openroad/resizer_routing_design.tcl
[ERROR]: Log: designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/logs/routing/17-resizer_design.log
[ERROR]: Last 10 lines:
---------------------------------------------------------------------------------------
Total           253846         25434           10.02%             0 /  0 /  0

[INFO GRT-0018] Total wirelength: 197084 um
[INFO GRT-0014] Routed nets: 659
[INFO]: Setting RC values...
[INFO RSZ-0058] Using max wire length 4508um.
[ERROR RSZ-0090] Max transition time from SDC is 0.040ns. Best achievable transition time is 0.043ns with a load of 0.01pF
Error: resizer_routing_design.tcl, 63 RSZ-0090
child process exited abnormally

[ERROR]: Creating issue reproducible...
[INFO]: Saving runtime environment...
OpenLane TCL Issue Packager

EFABLESS CORPORATION AND ALL AUTHORS OF THE OPENLANE PROJECT SHALL NOT BE HELD
LIABLE FOR ANY LEAKS THAT MAY OCCUR TO ANY PROPRIETARY DATA AS A RESULT OF USING
THIS SCRIPT.

Parsing config file(s)…
Setting up /openlane/designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/issue_reproducible…
[WRN] /openlane/designs/SRAM_32_1024_2_row/runs/RUN_2023.09.11_15.29.28/tmp/17-memory_generator_sky130.sdc was n

@openroadie
Can you please look into this error message?

This is a correct error message to prevent the resizer/optimizer from inserting buffers in perpetuity to meet the max transition time requirement. The way to avoid this issue is to set the max transition time to be a more reasonable value.

How to rectify this error

https://github.com/The-OpenROAD-Project/OpenLane/issues/1982#issuecomment-1716951805
"The way to avoid this issue is to set the max transition time to be a more reasonable value".

#1982 (comment)
"The way to avoid this issue is to set the max transition time to be a more reasonable value".

where should i change it

Looks like it is coming from the .lib file(s). Look for "max_transition". You may want to figure out how these files were generated and why this transition time was consider appropriate before making modifications.

Check sram .lib max_transition value

I compared the constraints of the previous version and the newest version and I noticed that the newest version didn't add automatically the constraint "MAX_TRANSITION_CONSTRAINT", the previous version added "MAX_TRANSITION_CONSTRAINT" with a value of 0.75 so I add that to my constraints file (JSON):
"MAX_TRANSITION_CONSTRAINT": 0.75
But the result was the same:

I attached the .lib file of the SRAM and checked for the "max_transition" There are 5 match that takes values from 0.5 to 0.04. Honestly, I don't know what those values mean, and I don't know if I can modify them.
sky130_sram_2kbyte_1rw1r_32x512_8_TT_1p8V_25C.zip

I just hit the same issue
@Baungarten-CINVESTAV
I will try after doing a
cd sram
sed -i 's/max_transition       : 0.04/max_transition       : 0.75/g' */*.lib

If I remember correctly I solved the error by removing the "EXTRA_LIBS", this is used for time analysis and the OpenLane documentation indicates that it is optional.

@NSampathIIITB SDC constraints should overwrite the constraints set by modules in EXTRA_LIBS. The problem here is that CLOCK_PORT is not defined correctly. If you take a look at the log file of the failing step, you will notice the following:
[WARNING STA-0337] port 'clk' not found.
[INFO]: Setting output delay to: 2.0
[INFO]: Setting input delay to: 2.0
[INFO]: Setting max fanout to: 10
[WARNING STA-0337] port 'clk' not found.
[INFO]: Setting load to: 0.033442
[INFO]: Setting clock uncertainty to: 0.25
[INFO]: Setting clock transition to: 0.15
[WARNING STA-0559] transition time can not be specified for virtual clocks.

Hence the transition time set in the constraints wasn't applied. If you change CLOCK_PORT to clk0, you will not face the error above.


Phenylalanine mustard is displayed incorrectly in the Structure library

Steps to Reproduce

Open Ketcher
Open 'Structure library' -> 'Aromatics'
Look at Phenylalanine mustard

Actual behavior
Phenylalanine mustard at 'Aromatics' folder displayed incorrectly in the Structure library
Expected behavior
Phenylalanine is placed at 'Aromatics' folder and displayed correctly in the Structure library

https://pubchem.ncbi.nlm.nih.gov/compound/460612
Screenshots

Desktop (please complete the following information):

OS: Windows 10
Browser Chrome
Version 112.0.5615.138 (Official Build) (64-bit)

Ketcher version
Version 2.17.0-rc.2
#186728374

Tested on build 2.20.0-rc.2 Bug is fixed.


Broken GL_RGBA16 image format on ATI R300

With r_highPrecisionRendering off:

With r_highPrecisionRendering on (default):

This was added in d2b9a688bc7bc7d238281a4ae6630207007772df from #1050 and slightly modified in #1164:

https://github.com/DaemonEngine/Daemon/pull/1050
https://github.com/DaemonEngine/Daemon/pull/1164

The usage of GL_RGBA16 is meant to reduce color banding when doing full overbright bit computation, and is fully optional. Disabling the r_highPrecisionRendering cvar is only expected to increase color banding and then reduce quality, but doesn't disable any feature.
I find it very hard to know more about GL_RGBA16 support, it looks to be very ancient and probably expected to be ubiquitous. For example someone in that old forum thread is saying that it exists since OpenGL 1.1:
https://gamedev.net/forums/topic/517023-gl_rgba16f_arb-vs-gl_rgba16/
I don't know if there is a way to query the support of GL_RGBA16. And if there would be, maybe the r300 Mesa driver is expected to support it, as I don't get any OpenGL error being reported when I run the game on such hardware and driver.
So maybe it's a bug in the Mesa r300 driver.
On our side we can simply disable r_highPrecisionRendering on low and lowest presets, as those cards would better run with such preset, and we better disable that feature for performance on such hardware anyway.
But we also better want to avoid visual glitches if possible, especially since this feature is enabled on default medium preset, and we may implement a workaround to disable the feature on R300.

Here is the issue on Mesa side:

https://gitlab.freedesktop.org/mesa/mesa/-/issues/11669


Field-level Help: Component needed

For contextual help, need a React component equivalent for https://www.lightningdesignsystem.com/components/forms/#flavor-field-level-help
Essentially, this component would render the consistent help icon (info action icon) and show popover (info tooltip variant) on mouseover.

Closing. Please contribute component if it is still needed.


Tests randomly getting aborted on CI

Failing build:
=== COMMAND LINE ===
/mnt/vss/_work/1/s/.dotnet/dotnet test /mnt/vss/_work/1/s/artifacts/bin/Aspire.Azure.Messaging.ServiceBus.Tests/Release/net8.0/Aspire.Azure.Messaging.ServiceBus.Tests.dll --logger:console;verbosity=normal --logger:trx;LogFileName=Aspire.Azure.Messaging.ServiceBus.Tests_net8.0_x64.trx --logger:html;LogFileName=Aspire.Azure.Messaging.ServiceBus.Tests_net8.0_x64.html --ResultsDirectory:/mnt/vss/_work/1/s/artifacts/TestResults/Release --Framework:.NETCoreApp,Version=v8.0
Microsoft (R) Test Execution Command Line Tool Version 17.9.0 (x64)
Copyright (c) Microsoft Corporation.  All rights reserved.

Starting test execution, please wait...
A total of 1 test files matched the specified pattern.
[xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v2.4.3+1b45f5407b (64-bit .NET 8.0.2)
The active test run was aborted. Reason: Test host process crashed

Test Run Aborted.
Results File: /mnt/vss/_work/1/s/artifacts/TestResults/Release/Aspire.Azure.Messaging.ServiceBus.Tests_net8.0_x64.trx
Html test results file : /mnt/vss/_work/1/s/artifacts/TestResults/Release/Aspire.Azure.Messaging.ServiceBus.Tests_net8.0_x64.html

This is infrequent but it does get hit on main, and release/8.0. The tests tab doesn't show any failed tests because the whole test run was aborted.

We should add --blame* for non-helix tests too.


Support extra K8s resources creation during Helm chart installation

ISSUE TYPE

Feature Pull Request

SUMMARY

Support extra K8s resources creation during Helm chart installation

Additional pull request that updates documentation: https://github.com/infracloudio/botkube-docs/pull/72
Resolves #561
TESTING
Clone this repository (check out the branch) - you can use https://cli.github.com/
Create namespace:
kubectl create ns botkube

Run a dry-run of botkube installation with custom values
cat > /tmp/values.yaml << ENDOFFILE
extraObjects:
  - apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: "{{ include \"botkube.fullname\" . }}-clusterrolebinding"
      labels:
        app.kubernetes.io/name: "{{ include \"botkube.name\" . }}"
        helm.sh/chart: "{{ include \"botkube.chart\" . }}"
        app.kubernetes.io/instance: "{{ .Release.Name }}"
        app.kubernetes.io/managed-by: "{{ .Release.Service }}"
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: "{{ .Values.extraClusterRoleName }}"
    subjects:
    - kind: ServiceAccount
      name: "{{ include \"botkube.serviceAccountName\" . }}"
      namespace: "{{ .Release.Namespace }}"
rbac:
  create: false
extraClusterRoleName: cluster-admin
ENDOFFILE

helm install botkube --namespace botkube -f /tmp/values.yaml ./helm/botkube --dry-run

Observe the ClusterResourceBinding resource bound to cluster-admin ClusterRole in output.

Thanks for the PR @pkosiec 🙏
@bhavin192 could you please take a look?

Hi @bhavin192, would you like to review this, or can I put the label ready-to-merge to merge it? @mszostok already reviewed my PR. Thanks!

LGTM

Thank you, @PrasadG193! 🙇

@PrasadG193 looks like the CI failed 🤔
https://github.com/infracloudio/botkube/runs/6520760187?check_suite_focus=true
Logging into ghcr.io...
Error: Error response from daemon: Get "https://ghcr.io/v2/": denied: denied

Probably the GH_TOKEN in Secrets is outdated: https://github.com/infracloudio/botkube/blob/develop/.github/workflows/artifacts.yml#L28

Oh, yeah. I had revoked older tokens. Let me fix that


[Feature] Allow new forks to be created on the forks page of a project

Purpose
fixes #3278
Changes
I added a button to the forks page that allows new forks to be created easily with two clicks. In addition, I made the forks page as a whole look much more like the registrations page, as they both perform a similar function, just for different types of nodes.

Testing locally - looks great.


Remove save dev commands from README.md

Package should be installed as a regular dependency, not a dev dependency.

Closes #33

Thank you @dan-wu-open


Dmitry is getElementByPoint working?

I tried implementing a basic solution..
Is it supposed to work?
If yes maybe another little example
http://www.irunmywebsite.com/raphael/additionalhelp.php?v=2&q=paper.getelementbypoint
Tested on Firefox 3.6

No it does not seem to work


Travel website

Describe the project you want to add with tech stack
A travel website made using html , css including animations.

please assign @pranjay-poddar


Adds cronjob for test vector generation

This PR will trigger the generate vectors job nightly at 2AM and upload the results as a job artifact. These artifacts can be consumed by anyone who relies on nightlies, with the knowledge that the tests haven't been verified or sanity checked (that only happens on releases).

Good idea! Just to be clear, is this 2am UTC time?

Yeah exactly, Scheduled workflows always run on UTC time :D

Thank you @parithosh!
Can every logged-in user access the artifacts? Or only the maintainers?

Every user can access the artifacts, even without logging in. So it should be easy for anyone to setup a CI to consume the result


Update .gitlab/kitchen_testing/centos/yml

What does this PR do?
Delete unnecessary jobs and uncomment jobs in .gitlab/kitchen_testing/centos/yml
Motivation
Responding to TODO comment.
Checklist

[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] The appropriate team/.. label has been applied, if known.

Note: Adding GitHub labels is only possible for contributors with write access.
no-changelog

@julien-lebot I rebased!


Define "NBD" in the README

I wasn't sure what this was about, immediately.  There's no way I'm the only person who found this who didn't know what NBD meant right away.
more of a suggestion than an issue, I guess.

I guess its a "Network Block Device" (NBD) but I'm guessing you figured that out by now... I agree it would be good to mention this in the README and perhaps even a link to Wikipedia: Network Block Device


Creating a new AdminSet (or editing one) results in an error

Descriptive summary
On latest master (HEAD: https://github.com/projecthydra-labs/hyrax/commit/d3b98b19cf96e6b54a761f2e1005df318af43504), creating a new AdminSet results in this error:
undefined method 'id' for nil:NilClass  at https://github.com/projecthydra-labs/hyrax/blob/master/app/forms/hyrax/forms/permission_template_form.rb#L24
This seems related to #470, but also seems to affect newly created AdminSets (non-default).
After the error occurs, I can go back and see the AdminSet was successfully created. However, I'm not able to edit that AdminSet (results in the same error), unless I comment out the ||  active_workflow.id portion of that line.
Steps to reproduce the behavior

Update to latest master
Create a new AdminSet (or attempt to edit one that doesn't have an active workflow)

Strangely, we have a feature spec which seems to be validating AdminSet creation/editing:
https://github.com/projecthydra-labs/hyrax/blob/master/spec/features/admin_admin_set_spec.rb#L26
However, I'm not certain why that spec succeeds while my (manual) tests result in an error.

That test is for an edit. Perhaps the create path is different?

Quick update, I unfortunately don't have a full PR. But, the quick fix is to change active_workflow.id to  active_workflow.try(:id) on this line: https://github.com/projecthydra-labs/hyrax/blob/master/app/forms/hyrax/forms/permission_template_form.rb#L24
I'm still working on getting an feature spec to validate this change (hence no PR).

@jeremyf : I've noticed you are working on resolving #470 (in #486) , which is loosely related to this same issue (although this one is around creating new adminsets).  Have you done any work to fix this issue? If not, I can claim this.  The quick fix is above (see my previous comment), but we are missing a feature spec to validate this.

This should be solved when #486 is merged.

Retested, this is fixed by #486 (which was merged). Closing.


Add the instructions to install the snap

Hey @duaraghav8, to give you more confidence on the snap and prepare for a stable release, we can start a call for testing: https://forum.snapcraft.io/search?q=call for testing

Thanks @elopio. Also I was wondering is snapcraft release solium <revision> stable the only way to make a stable release? I got stuck trying to figure out how to run snap on my Mac (although with a bit more reading I should be able to figure it out)

@duaraghav8 you can also release it from dashboard.snapcraft.io.


[C++][Parquet] Support writing sliced Arrow arrays

Follow up to ARROW-33. We may want to explicitly disallow any non-zero slice offsets until then
Reporter: Wes McKinney / @wesm
Assignee: Uwe Korn](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=uwe) / @xhochy
Related issues:

parquet-cpp 1.0.0 release (blocks)

Note: This issue was originally created as PARQUET-867. Please see the migration documentation for further details.

Wes McKinney / @wesm:
@xhochy we can disallow this prior to 1.0 but it might be nice to go ahead and implement. what do you think?

Uwe Korn / @xhochy:
This is actually quite an important change as we can now get rid of all those offset and length parameters in the parquet_arrow interface and use slices all the way.

Wes McKinney / @wesm:
Issue resolved by pull request 238
https://github.com/apache/parquet-cpp/pull/238

Uwe Korn / @xhochy:
@wesm I can have a shot at this tomorrow. Probably can have 2-3h to work on this, this should be enough for that.

Uwe Korn / @xhochy:
PR: https://github.com/apache/parquet-cpp/pull/238

Wes McKinney / @wesm:
I added a RecordBatch::Slice method which may help for tests. Since you already have an offset parameter, it may not be too bad.


Answering with keyboards

Hi @yagop, I'm having a problem with onReplyToMessage and Keyboards.
The following part of code is working and when I click on a Telegram keyboard Key, like "Aut" or "Neg", the answer is sent as a reply of the last message, "messages.getAuth.done".
const openKeyboard = {
	reply_markup: {
		keyboard: [
			["Aut", "Neg"],
		],
		one_time_keyboard: true,
		resize_keyboard: true,
	},
};
Bot.sendMessage(destination.group, messages.getAuth.done, openKeyboard)
	.then(sent => {
		Bot.onReplyToMessage(sent.chat.id, sent.message_id, (response) => {
			if (response.text === "Aut") {
				// something
			}
		});
	});

I want to obtain the same effect with different buttons text ("yes", "no"), but if I copy the same code and edit (like variables name), keyboard texts will be not sent as answer but as normal messages.

let replyOptions = {
	reply_markup: {
		inline_keyboard: [
			[ { text: "1", 	callback_data: "1",  },
			  { text: "2", 	callback_data: "2",  },
			  { text: "3", 	callback_data: "3",  },
			  { text: "4", 	callback_data: "4",  },
			  { text: "5", 	callback_data: "5",  } ],
			[ { text: "6", 	callback_data: "6",  },
			  { text: "7", 	callback_data: "7",  },
			  { text: "8", 	callback_data: "8",  },
			  { text: "9", 	callback_data: "9",  },
			  { text: "10", callback_data: "10", } ]
		],
	},
};

Bot.sendMessage(this.userid, "How would you rate the content? (1-10)", replyOptions)
	.then(() => {
		Bot.on("callback_query", answer => {
			this.vote = Number(answer.data);
			Bot.sendMessage(this.userid, "Do you want to leave a more detailed feedback?", openKeyboard)
				.then(ans => {
					Bot.onReplyToMessage(this.userid, ans.message_id, response => {
						console.log(response);
					});
				});
			});
		});
	});

I also tried to pull the sendMessage "Do you want to leave...." out of callback_query event on, but nothing to do. Do you know why? Thank you.
Edit: I found a weird thing. The first code acts in a group, the second one in a private chat. I tried to edit it and I found that in a group, it automatically answer to the message. In the private one, it doesn't. So, which can be a way to force_reply and keyboard buttons together?

Okay, I've understand. In groups, users posts to bot are replied. In private, they doesn't. So I can use EventEmitter 3 .once()method, to attach a self-destroying event (once executed), with event 'message' and then the callback.
So:
.then(ans => {
    Bot.once('message', (msg) => {
        console.log(msg);
    });
});

@alexandercerutti Was having the the same problem where the bot did not work in private chats. Great solution! 👍 Without having to use onReplyToMessage I can enable privacy mode on my bot once more. Thanks!

For the record and future visitors to this thread, the above approach of using bot.once() is flawed, particularly when number of users is high. See this PR thread, in particular here is the explanation of the flaw.

@GochoMugo I see. Thanks for letting me know. Not too familiar with callbacks so I just want to clarify some things about your implementation with bot.on
How your implementation works is that after the bot has sent a message, it creates a callback with the chatId. And the bot.on function will listen for every message and return the next message received once a callback has been created.
Is this correct? If it is, how is it different from using bot.once to listen for the next message in the chat?

So, the bot.once() approach does not correctly work since it listens for the next message update from any chat the bot is in. Consider the scenario where you have sent a message to a user A and set up a bot.once() handler to get their reply. If another user B sends a message (in any of the chats the bot is in) before user A gets the chance to reply, the above bot.once() handler will receive the message from B! This introduces a situation where another user can (knowingly or not) hijack another user's chat.
The approach I suggested ensures that the callback receives the next message from the same chat the message/query was sent to.
Please note the approach is not completely comprehensive. But it ensures replies from different chats do not get mixed up.
Note: I might have to write a POC for this flaw.

Here is a POC of the flaw described above.

@GochoMugo Ahh I see! Didn't think of the issue with multiple chats. Now your implementation makes sense. I believe that with some validation your approach would work just fine. Thanks!


New install doesn't work

Version: 1.0.0 (beta5)
Environment: React
Type: Bug
Description
Doesn't work. Looks like it can't find the package - though it is showing up on node_modules - http://screencast.com/t/POEAG7qBql
I had reported a  peer invalidity error earlier.

Steps to reproduce

First step
Second step

Expected Behavior
// your code here

Actual Behavior
// your code here

Proposal
Any information on how this might be achieved.
Code Example:
// your proposal here

This is a typo. You're trying to use Stylesheet, while it's actually called StyleSheet

Lol. I really did not see this. I guess this can be closed then. Thanks @philpl


Default tolerance 2.3 doesn't seem enough for machine differences.

gemini --version:
4.13.0
...
Contents of .gemini.json file:
{
  "rootUrl": "http://devserver/",
  "screenshotsDir": "./vDiffScreens",
  "browsers": {
    "phantomjs": {
      "retry": 3,
      "desiredCapabilities": {
        "browserName": "phantomjs"
      }
    }
  },
  "httpTimeout": 25000,
  "sessionRequestTimeout": 120000,
  "system": {
    "parallelLimit": 4
  },
  "compositeImage": true
}

Test source code:
gemini.suite(baseUrl', function(suite) {
    suite.setUrl('/releases/core/templates/components/menu/')
        .setCaptureElements('#unique-id-for-list-1')
        .capture('normal')
});

Command used to run the test:
gemini test ./uitests --reporter flat --reporter html

Result:
It passes on the local box, but fails on a build machine with a bellow diff  that I can't tell why.
...
Expected behaviour:
I'm expecting the test to pass on the build machine. Looks like there is a small visual difference caused by running on different machines.
Should I increase the tolerance? As per the documentation increasing tolerance is not recommendable... Not sure what to do...any advice is really appreciated.
...

What browser do you use on your build machine? the same phantomjs?

@sipayRT  Yes same phantomjs.

and the same version?

Yes same version (2.1.1)

@sipayRT I really appreciate any pointer on this please... I'm blocked...

Looks like I need something similar resemble.js ignore antialiasing. Is there a similar concept in Gemini?

I have the same issue running Selenium & Firefox on different Macs.  Same version of Selenium, Mac OS and Firefox but we get differences due to anti-aliasing :-(

@nicrodgers do you find any workaround? This issue killing me... :( My tests become very unreliable on edge.

@bruk1977 no, we haven't been able to find a solution. So we have had to stop running our gemini test suite, until a solution is found, as it just doesn't work for us.

@nicrodgers that is bad.... @sipayRT, @j0tunn, DudaGod is adding resemble.js as an optional image comparison tool in your radar? I love gemini for many things but this specific issue almost making it non-usable because the test run failing randomly.  :( I don't know how you don't encounter at Yandex...

@bruk1977 I know you previously mentioned increasing tolerance, have you tried this — did it help?I've had some really daft looking visual diffs that are failed due to subtle differences between pixel colours. I just cranked up the tolerance and it made lots of those issues obsolete.

@morganfeeney it didn't help for me... what tolerance number do you use to ignore subtle differences?

I know it isn't recommended but when the only diffs are antialiased pixels, that are false negatives, what else can you do?


Fix 10301 - kwargs lost in ARM

Fix #10301

Merging, since all important CI are green and the red one are from a CI issue


Quick CI Test for WebDataset

Stack from ghstack:

-> #377

fixed pre-commit hooks (formatting)
clarified WebDataset description / comment
added comments and functional name
bug fixes in WebDataset to make pytest work
fixed lint problems, Windows CI failure
fixed path name splitting in webdataset to work on Windows
fixed path name splitting in webdataset to work on Windows, again
improved documentation for webdataset.py:pathsplit

Only created for CI

@nivekt has imported this pull request.  If you are a Facebook employee, you can view this diff on Phabricator.


Clean up Fork.RI and fix Windows short paths usage

While investigating around issue #124, I found out a lot of errors were thrown out of the Fork.RI script:

when using WSL2, uname -a does not contain the WSL build version anymore, making the current check for build 17046 or greater fail with a syntax error because of the format of the regex
when using Windows short paths to configure Fork's custom git instance (e.g. C:\PROGRA~1 instead of C:\Program Files to avoid spaces), the FORK_RI_EXE_PATH could contain invalid paths as the short name translates PROGRA~1 to Program/ Files, even inside a WSL environment

As such, this PR contains several changes, each one in its own commit:

a clean up of the Fork.RI script, to follow good practices enforced by the shellcheck tool to avoid syntax errors
support for WSL2 build version checks, by calling cmd.exe to retrieve the build version consistently (should work with WSL1 too)
a workaround to enable usage of Windows short paths inside Fork, making it possible to use Fork's interactive rebase tool with setups such as the one described by #124

Several downsides can be noted:

using cmd.exe inside Fork.RI to get WSL build version is slower than using uname
the Windows short paths workaround could theoretically be avoided if Fork could run the script from a path containing spaces
I'm not fluent with Rust code, hence the workaround inside the shell script, I don't know if it should stay in Fork.RI or be moved inside fork.rs

As-is, this PR enables the usage of Fork's interactive rebase tool by manually editing %localappdata%/Fork/settings.json to change "GitInstancePath": "C:\\Users\\Surname Lastname\\wslgit\\bin\\git.exe", to "GitInstancePath": "C:\\Users\\SURNAM~1\\wslgit\\bin\\git.exe", (confirmed with the author of #124)
I'm planning on sending a support request to Fork's maintainers to ask them if it could support spaces in Fork.RI's path, enabling wslgit to work under all setups

Thanks for this PR. I'm not a Fork user myself, so I haven't fully tested it. I added a small comment above, but with that resolved, I think it looks good.
@carlolars What do you think? Could you maybe test/review this PR?

Hi!
Sorry for my very late response. I've tested this change both with and without a space in the path to Fork and it works for me using WSL2 👍

Thanks for the reviews, I applied the fix for the sed call to accommodate for build/Build
I also got news from the Fork team, they told me the call to the Fork.RI script is inside of the cross-platform code base, so they are not sure how they should escape spaces properly for now, but they kept it inside their backlog

Great, I merged your changes into the development branch, so they will be in the next release. Thanks again for your PR.


Audio cues for echolocation

*Sound when you reveal something
*Sound when you reveal nothing
*Sound when cooldown isnt ready yet


Helper functions

Hi @ParadaCarleton  and @goedman
@ParadaCarleton, thanks again for putting together this package.
Given that I have very limited knowledge of PSIS and LOO, I may not be the best person for this task.  Nonetheless, based on what I can piece together,  what appears to be missing are helper functions for computing pointwise log likelihoods and the loo value from the psis object. Here is my best attempt. Am I on the right track?
using Turing, MCMCChains, Distributions, ParetoSmooth, Random
using StatsFuns

Random.seed!(5574)

data = rand(Normal(0, 1), 30)

@model function model(y)
    μ ~ Normal(0, 1)
    σ ~ truncated(Cauchy(0, 1), 0.0, Inf)

    y .~ Normal(μ, σ)
end

chains = sample(model(data), NUTS(1000, .65), MCMCThreads(), 1000, 3)

# method for MCMCChains
function pointwise_loglikes(chain::Chains, data, ll_fun)
    samples = Array(Chains(chain, :parameters).value)
    pointwise_loglikes(samples, data, ll_fun)
end

# generic method for arrays
function pointwise_loglikes(samples::Array{Float64,3}, data, ll_fun)
    n_data = length(data)
    n_samples, n_chains = size(samples)[[1,3]]
    pointwise_lls = fill(0.0, n_data, n_samples, n_chains)
    for c in 1:n_chains
        for s in 1:n_samples
            for d in 1:n_data
                pointwise_lls[d,s,c] = ll_fun(samples[s,:,c], data[d])
            end
        end
    end
    return pointwise_lls
end

function compute_loo(psis_output, pointwise_lls)
    dims = size(pointwise_lls)
    lwp = deepcopy(pointwise_lls)
    lwp += psis_output.weights;
    lwpt = reshape(lwp, dims[1], dims[2] * dims[3])';
    loos = reshape(logsumexp(lwpt; dims=1), size(lwpt, 2));
    return sum(loos)
end

# compute the pointwise log likelihoods where indices correspond to [data, sample, chain]
pointwise_lls = pointwise_loglikes(chains, data, (p,d)->logpdf(Normal(p...), d))

# compute the psis object
psis_output = psis(pointwise_lls)

# return loo based on Rob's example
loo = compute_loo(psis_output, pointwise_lls)

Thanks Chris, will try to switch to your setup for these tests.
The crucial line in compute_loo() is where I multiple the log_prob with the log_weights ( lwp += psis_output.weights ).

Chris, works fine. Any chance you could do the cars example in Turing. If not, I will attempt it early next week.
Your example gives me a loo of 190.

Carlos, you probably understand this much better than I do, but both PSIS and Waic are to compare models, so a constant offset in the values might be less important?

I'm currently adding helper functions to compute LOO values, along with MCSE and other related quantities provided by the R loo package; these will go in another package, since some uses of PSIS are not related to LOO-CV (e.g. improving variational approximations).


Vulnerability Data Does not Load

All images show as having None for the vulnerability.

@billabongrob I found that harbor get api to version 1.1
so change line 60 of file<EMAIL_ADDRESS>to const vulnKey = "application/vnd.security.vulnerability.report; version=1.1";
Then it will work

Another issue is Learn More link is wrong.
You can change this line of file HarborRepository-4d269d63.esm.js (backstage-plugin-harbor/dist/esm)
Line 59: to: ${rowData.repoUrl}/artifacts-tab/artifacts/${rowData.tag},

@billabongrob I found that harbor get api to version 1.1 so change line 60 of file<EMAIL_ADDRESS>to const vulnKey = "application/vnd.security.vulnerability.report; version=1.1"; Then it will work

Sounds like the issue I reported in the backend plugin. See
https://github.com/container-registry/backstage-plugin-harbor-backend/issues/59


Command problems

Error: Declaration of falkirks\minereset\command\MineCommand::execute(pocketmine\command\CommandSender $sender, $commandLabel, array $args) must be compatible with pocketmine\command\Command::execute(pocketmine\command\CommandSender $sender, string $commandLabel, array $args)
File: MineReset.phar/src/falkirks/minereset/command/MineCommand
Yes i am using the latest pmmp build

Shouldn't you update all the commands to the new format?

@NickTehUnicorn There is only one command, the rest are SubCommand classes which is a MineReset supertype that doesn't have strict typing enforced yet. Strict typing should be implemented soon, but isn't needed for the plugin to run in this case.


Correction for raw affiliation Aeres University of Applied Sciences Almere, Stadhuisstraat 18, 1315 HC Almere, The Netherlands

Correction needed for raw affiliation Aeres University of Applied Sciences Almere, Stadhuisstraat 18, 1315 HC Almere, The Netherlands
raw_affiliation_name: Aeres University of Applied Sciences Almere, Stadhuisstraat 18, 1315 HC Almere, The Netherlands
new_rors: 03jnx2c74
previous_rors:
works_examples: W3012615648
contact: 9806c6fdd41a677db1723405957fa5b5:442132c549c93292d625 @ hotmail.com

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


Support no Mixins?

Hey quick question: does react-mentions work without the react-mentions mixin? I see that all the examples make use of it, but the mixin is not mentioned in the main README.

If you look at what the mixin is doing, its just abstracting calls to setState
https://github.com/effektif/react-mentions/blob/master/gh-pages/views/mixins/MentionsMixin.js
Probably overkill, and not necessary for the component to work, as long as you provide your own onChange function

The mixin is only part of the examples. I agree that this kind of abstraction in examples is rather confusing than helpful. We should simplify the examples.
Where you keep your state is up to you. Just provide value and onChange props to MentionsInput.

done with #154


Fix typo in "appengine.use.EE8"

Took me a while to figure out why it didn't work after copy/pasting the line from the docs.

Sorry about that! Great you are testing the new bits!


chore(data): resync figma styles into themes

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Allow scrolling notifications to report content-based insets

Internal: b/144318472
Consolidated from

#13253
#71819
#79081

It is a common issue across the framework where a widget that positions itself on the edge of a viewport, and reacts to scroll notifications will undesirably overlap some scrolling content that is also aligned with the edge of the viewport.
I have been considering solutions for #13253 for a while, and discovered the issue is not specific to scrollbars. There are a number of places where this issue is present. I am capturing them all here for tracking and testing.
The following are widgets I have identified that would want to report inset information in a scroll notification:

SliverAppBar
SliverPersistentHeader
CupertinoSliverNavigationBar
SliverOverlapAbsorber/Injector (NestedScrollView)

And these are the widgets I have identified as wanting to know about this inset information so they can position themselves as expected, on the edge of the above widgets rather than the absolute edge of the viewport:

StretchingOverscrollIndicator

Should start the stretch after the header rather than applying stretch to the header.

GlowingOverscrollIndicator

#79081
Should appear at the edge of headers, rather than on top of them

RefreshIndicator

#71819
Should appear from under the edge of the header, rather than on top of it

Scrollbar

#13253
The track should not extend up over the header

MaterialBanner

Should animate into view from the edge of the header.

I have a proposal almost ready for this, see https://github.com/flutter/flutter/pull/107182

If there are other widgets experiencing this issue, please comment here. I think I found all of them, but if there is more let me know! :)

I have not been actively working on this, so I am removing my assignment. https://github.com/flutter/flutter/pull/107182 was close to resolving it, but had some issues when it came to the scrollbar.

@Piinks would this also resolve the issue that if a listview overrides the padding it inherits by using the padding param, the scrollbar still uses the padding from the context?
Also what's the current status, is #107182 in a state that can be continued, or needs to be scrapped ?

If someone is stuck with this issue and just want a workaround until a solution is found in flutter, here's my example code:
https://dartpad.dev/?id=8d160b4ae2e278258f3d76744657cbdd
I copied CupertinoScrollbar (could be Scrollbar) source code and made a few adaptations:

the constructor optionally accepts a GlobalKey to a Sliver, for example CupertinoSliverAppBar or SliverAppBar
anytime a ScrollNotification or ScrollMetricsNotification is observed, access the sliver's context, find its RenderSliver and save its paintExtent from its geometry
update the scrollbarPainter with an adjusted padding

It's really just a workaround, it's not generic, and lags one frame behind the Viewport's layout, but, in the meantime, at least for me, it's better than having the scrollbar going through the AppBar.


prop for key that triggers tag finish

I would have used this npm library but I copied the code instead so I could have tags with spaces.

I changed these two things to use Tab instead:
const onkeydown = (event: React.KeyboardEvent<HTMLInputElement>) =>     {         if (event.key === 'Tab')             event.preventDefault()     }
const isPossibleRight =             (isEndOfText || currentValue.length === 0) && terms.length > 0         if ((key === 'Enter' || **key === 'Tab'**) && currentValue != '')         {


Update reporter usage w/ missing reporter

A few months ago i added a new reporter: https://github.com/spotify/XCLogParser/pull/27
Unfortunately i forgot to update the reporter's help text! This PR just updates the usage description for the --reporter option.
Thanks!

@mariozig thank you! I noticed this the other day because I'm using your reporter in some scripts and I couldn't find the help about it. I had to dig in the code.

Ewww code! hahah
Thanks for approving. Is this something you'd cut another release for or just keep in the queue?  Asking bc i want to make sure i update https://github.com/mariozig/homebrew-public/commit/88ba90b53ddd2a3d904f4ac11ce3e927b2270ab5 if a new version is coming.


[ArPow] Add missing sourcebuild graph dependencies for nuget.client

These dependencies are important for two main reasons.

It determines the build order and therefore dependency flow in source-build
During the repo builds, the intermediate sourcebuild packages for these dependencies will be used.  This eliminates prebuilts and will aid in the prebuilt detection UX at the repo level.

Repo
Missing Dependency
Version.Details Dependency   Missing

nuget.client
msbuild
x

nuget.client
source-build
x

nuget.client
xdt
x

This work was completed in 6.0 as part of the ArPow work.


refactor-#3: Refactoring backend using typescript

Did some files updation. Made sure they compile without any issue. But the test files need their respective alterations.

@ppriyankuu how much efforts does it take for us to allign the test cases to handle all of these changes.

@jjinendra3 @hemant14050 @SankalpHaritash21 @PrakharSinha-09  can you please take a moment to review this PR

@ppriyankuu how much efforts does it take for us to allign the test cases to handle all of these changes.

I understand. Then should I close this PR for now and try to work around the tests? And if I can't, I'll let you know right away so that you may assign it to someone else.

Not close @ppriyankuu , just that we can't let go some part and leave some part undone, can we refactor the test cases as well and move it in as part of same PR ...

I tried to write the tests. I've never worked on test cases (test files) before. In fact its my first time trying to contribute to a repo.

I tried writing the tests. I've never worked on test cases (test files) before. In fact its my first time trying to contribute to a repo.

Hey @ppriyankuu , give it a try, even we are all learners here :)
Let us know if you get stuck midway while refactoring...
p.s: Run npm run format in the backend folder, and make sure you make everything red to green :)
All the best, you'll rock it don't hesistate , give it a try

@ppriyankuu where are we? any progress?

Hi @ppriyankuu can we get some update on this

Sorry, I had my college exams going on. Will start working on it right away.

Sure @ppriyankuu , but why did you close the PR ?

Hi @ppriyankuu why did we close this PR?

Hi @ppriyankuu I am still suprised why have you closed this PR, can you kindly reopen... We'll take care of the test cases in different PR if required... I don't want your efforts to go waste

Hey! Sorry for the trouble. I ghosted this PR for so long now. Apologies again. I went on to finish some personal business (matter).

Hi @ppriyankuu I am still suprised why have you closed this PR, can you kindly reopen... We'll take care of the test cases in different PR if required... I don't want your efforts to go waste

Hey no worries for that. I didn't do must as such. I came here just to learn how to do contribution.

Hey! Sorry for the trouble. I ghosted this PR for so long now. Apologies again. I went on to finish some personal business (matter).

No worries mate, got you :)

Hey no worries for that. I didn't do must as such. I came here just to learn how to do contribution.

Hey mate, c'mon let's get this in, it is much needed and you have done a very nice job. For your "I came here just to learn how to do contribution." attitude. I want to merge this. Can you open this PR and  rebase it or freshly create a new PR if there are many conflicts?

And how will you react if I say I deleted the directory from my system? :smiling_face_with_tear:

And how will you react if I say I deleted the directory from my system? 🥲

Oooh that's a bouncer, didn't see that coming. But if it is there in your github and you have commited, you can reclone it and checkout :). Always ready for bouncers :)
p.s: Don't put an yorker saying you have deleted the forked project. I'll declare before getting out 😅

And how will you react if I say I deleted the directory from my system? 🥲

Oooh that's a bouncer, didn't see that coming. But if it is there in your github and you have commited, you can reclone it and checkout :). Always ready for bouncers :)
p.s: Don't put an yorker saying you have deleted the forked project. I'll declare before getting out 😅

I won't say it then. You may check it over my repos. :cry:
I humbly apologies. :pray:

Wanna give it another try @ppriyankuu ?


chd_open and chd_read_header don't work with unicode paths on Windows

Paths that aren't representable with the user's current codepage are unable to be accessed.  There needs to be a way to open a chd that eventually calls _wfopen instead of fopen.
Possible solutions:

New versions of chd_open and chd_read_header are added that take a FILE*, allowing users to open their own files with the appropriate call.  chd_open_file is almost this for chd_open, but it's impossible to set (*chd)->owns_file from outside of the library, complicating closing of files.
New versions of chd_open and chd_read_header are added that take a wchar_t* and call _wfopen on windows
chd_open and chd_read_header always treat input as utf-8, and internally convert to utf-16 before calling _wfopen on Windows

Or you could go full custom stream reading by defining function prototypes for read/seek and let the user provide implementations for these while carrying a user-data pointer around which is passed through to the previous functions.
This way the user can open the file any way they wish (even from memory) and only provide the read/seek methods.
But yeah some solution to this would be nice as long as I can use this from non C/C++ as well.
The last option would be transparent and only requires UTF8 strings instead of ANSI with full compatibility, I like that.

Option 3. is risky, since it could theoretically break backwards compatibility with existing codebases if one uses a local ANSI codepage consciously with libchdr. Basing on what I've seen around, the best approach would be to either have explicit _utf8 functions that do what is suggested, or an overload passing FILE*. One example of such approach is https://github.com/leethomason/tinyxml2.

When will this be fixed?

Or you could go full custom stream reading by defining function prototypes for read/seek and let the user provide implementations for these while carrying a user-data pointer around which is passed through to the previous functions. This way the user can open the file any way they wish (even from memory) and only provide the read/seek methods.

I coincidentally happen to be working on this in PR #78 so this should be possible if my PR is accepted.
My implementation requires emulators to provide definitions for four functions: read,seek,close, and size (size returns the size of the file in bytes, seek and tell are currently only used for this purpose so it seemed better to have a size function than separate seek and tell functions).  There's a new function called chd_open_core_file which takes in pointers to these four functions in addition to a user data pointer like you described.

Question - some code I'm looking at uses chd_read_header to scan for parent CHDs in the same directory.
Is the correct way to do that with core_files to simply use chd_open_core_file / chd_get_header? will that be as fast?

Don't have an immediate need, I'm doing a quick investigation to see if anything is missing in order to add CHD support to PPSSPP in the future, so figured I'd report anything missing in advance of that.
Due to restrictions on Android (scoped storage), we can't have libchdr use fopen, but we can get a FILE * handle to pass in, so really, chd_open_core_file is not quite necessary (but, will also work) - the older chd_open_file would work.
So, because of the above, chd_read_header_file that takes a FILE * rather than a filename would be fine, and a chd_read_header_core_file would also be okay.
That said, I have no idea if people are even interested in using the parent/child mechanism for PSP games or if I can just omit it entirely.

That said, I have no idea if people are even interested in using the parent/child mechanism for PSP games or if I can just omit it entirely. There was a prototype implementation of CHD support submitted as a PR (before scoped storage), and it simply scanned all the files in the directory, reading their headers to see if the parent hash matched - which seems quite inefficient anyway if you have a lot of files in the same directory. I'm not sure if there's a canonical way to find the filename to a parent CHD.

Thus far, no emulator has implemented support for delta chds. PSP is definitely a good candidate for them, since the most useful usecase is romhacks and translations, which become more of a hassle to manage the larger the input files become. I would wager people would be interested in using them, but you'd be justified in skipping support if it's too complex. The lack of established parent search method is much of why it has gone unimplemented so far, though given that it's a simple header scan and only necessary when a delta chd is loaded, I wouldn't expect a full directory search to be problematic for any but the most extreme collectors.

Well, then you don't know how crazy slow it is to open files from user-accessible storage since Android introduced scoped storage. 10 file opens can take a second on a slower device.

That's... painful. I didn't realize they botched the implementation that badly, though I have heard complaints here and there.

Anyway, it seems that implementing parent/child will actually not be that hard, and is done by pcsx2 already. So might be good to just add in a chd_read_header_core_file  , for maximum flexibility.

Oh, I see. DVD seems fairly appropriate then, and with a matching sector size should be the best. Do RAW images have a sector size?

And I assume the "hunk" size is the size of the pieces that will be compressed individually?


VIM Mode: Fix notification about lacking pattern support in sort command.

Thank you. Merged as 9a532d3


remove those few typescript ignores

This updates the code to explicitly look for p5js on globalThis, with hinting that tells TS "This thing is out of your control".

@Pomax thanks a lot! I did not know about this! PS: your username fits the library somehow ;)

PS: still had to add:
// eslint-disable-next-line @typescript-eslint/no-explicit-any

Oh interesting, I didn't run into that, but good to know!


chore Link protobuf with zlib statically

Proposed changes
Issue Number: close #xxx
We should link protobuf with libz.a explicitly, otherwise protoc may not be executable due to the missing libz.1.dylib.
2024-02-20T12:24:31.6008030Z [1/60] Generating orc_proto.pb.h, orc_proto.pb.cc
2024-02-20T12:24:31.6037700Z FAILED: c++/src/orc_proto.pb.h c++/src/orc_proto.pb.cc /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/doris_build/c++/src/orc_proto.pb.h /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/doris_build/c++/src/orc_proto.pb.cc
2024-02-20T12:24:31.6049230Z cd /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/doris_build/c++/src && /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/bin/protoc -I /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/proto --cpp_out="/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/doris_build/c++/src" /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/proto/orc_proto.proto
2024-02-20T12:24:31.6058110Z dyld[63187]: Library not loaded: /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib/libz.1.dylib
2024-02-20T12:24:31.6066740Z   Referenced from: <E61D5786-D6C3-3E10-B0FA-3D4C0DEEAC8D> /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/bin/protoc-<IP_ADDRESS>
2024-02-20T12:24:31.6080530Z   Reason: tried: '/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib/libz.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib/libz.1.dylib' (no such file), '/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib/libz.1.dylib' (no such file), '/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib64/libz.1.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib64/libz.1.dylib' (no such file), '/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/lib64/libz.1.dylib' (no such file)
2024-02-20T12:24:31.6096780Z /bin/sh: line 1: 63187 Abort trap: 6           /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/installed/bin/protoc -I /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/proto --cpp_out="/Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/doris_build/c++/src" /Users/runner/work/doris-thirdparty/doris-thirdparty/thirdparty/src/orc-1.9.0/proto/orc_proto.proto
2024-02-20T12:24:31.6102840Z ninja: build stopped: subcommand failed.

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall


Do not check definition of a macro and use it in a single condition

The condition evaluation in #if conditions does not tolerate this if the macro is not defined.
Fixes #19628

This pull request is ready to merge

Merged to master, 3.1, and 3.0 branches. Thank you for the reviews.


Add Ballerina by example guide to Email Connector

Purpose
Add BBE guide to Email Connector.
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[x] Ballerina By Examples

Codecov Report

Merging #21712 into stage will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##            stage   #21712   +/-   ##
=======================================
  Coverage   14.67%   14.67%
=======================================
  Files          51       51
  Lines        1404     1404
  Branches      216      216
=======================================
  Hits          206      206
  Misses       1182     1182
  Partials       16       16

Continue to review full report at Codecov.

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


Assured delivery of patient records to ME DB

Implement assured delivery of patient records to ME DB

[ ] Sign declaration request - return error in case we fails to put message to Kafka
[ ] Ensure patient record to be delivered from Kafka to ME DB

relates to #2936

There are no any triggers on mpi.persons
So the following record wasn't transferred to mongodb
db.patients.find({"_id": "eddc1ff6-fea9-4c50-b0c1-87ffbd34d301"})


deleted_by not set when deleting relationship elements

Hello,
I have just executed this code :
$compte->votes()->delete();
$compte->propositions()->delete();
$compte->delete();

When I go to my database, my user_id is set in the table comptes, in deleted_by.
But anything is set in the tables propositions and votes in the deleted_by field, event if – of course – my lines are well deleted...
Is it a normal behavior ?
Did I make something wrong ?
Thanks for your answer !
Bastien

There is an issue here - will take a look at resolving it later this week, we should be using onDelete in the same manner as the SoftDeletes trait. The deleting method doesn't fire when relations are deleted as they happen through Builder not Eloquent.
As a workaround until this is fixed you could use:
$compte->votes->each(function ($item) {
    $item->delete();
});

Is this the same issue I'm having?
bill::where('fileid', $id)->delete()
triggers the deleted_at timestamp but not the userstamp but
$bill = bill::where('fileid', $id)->get();
bill::destroy($bill[0]->id);
triggers both correctly.

Sorry for the delay in looking at this issue.
This issue is now documented in the readme.
As a workaround, I've introduced helper methods to allow these bulk updates and deletes which bypass Eloquent events. You can read about how those work in the updated readme.
I want to check these helper methods work as intended, so would be grateful @bastienu @jevanswater if you could test the 1.0.0-rc.0 release I published to see if they allow you to perform these bulk updates with correct values set.


I ported this to 1.18.1

I ported this mod to 1.18.1, and renamed it to BookUtils:

https://github.com/lordofpipes/bookutils
https://modrinth.com/mod/bookutils

Feel free to pull in these changes, or request that I change anything about the branding/attribution.

It's all good for me, thanks for doing it! :)


Add Support for OAS v3.1

Putting this upcoming change on our radar. Supporting version 3.1.0 gives us the ability to use the full JSON schema specification in the Schema Object.
https://github.com/OAI/OpenAPI-Specification/pull/2370

Version 3.1 of the OpenAPI Specification was released: https://github.com/OAI/OpenAPI-Specification/pull/2462

I will really like this as currently there is no complete validator for OAS 3.1.

Version 2 of this tool will be supporting OAS 3.1. I'm not sure on the release date yet, but it is mostly done. We're working on fully testing it still.

Looking forward to a speedy release.