[BUG] OMRS connectivity issues if Kafka is down during the metadata repository start up

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
A related issue: https://github.com/odpi/egeria/issues/5471.
Note: At present, there is no proper capability in Egeria library to find the health of OMRS connection for a cohort. I think https://github.com/odpi/egeria/issues/5471 will fill this gap. The WKC services determines the status of OMRS health by calling OMRSRepositoryRESTServices.getMetadataCollectionId() method. If the method returns non-null metadata collection ID, it is considered as CONNECTED, otherwise DISCONNECTED. I understand that this is not the right approach.
I would like to report the following 2 issues to improve the resilience of OMRS connectivity from the metadata repository:

Consider the metadata repository that is already registered to a cohort is restarted , but the Kafka is down. Egeria attempts to connect to Kafka for 30 mins. In this 30 minutes period, the present method (explained above) gives wrong status, CONNECTED. And, the OMRS messages sent to the event mapper are lost. After 30 mins, the present method returns the right status, DISCONNECTED.

If Kafka is restored before 30 mins, OMRS connections is established and OMRS messages are sent to the cohort. But, if the Kafka is restored after 30 mins, the connection is never re-established.

Expected Behavior

The Egeria library should provide the right status all the time.

OMRS connection should be re-established event when Kafka is restored after 30 mins.

Steps To Reproduce
No response
Environment
- Egeria: 3.10
- OS:
- Java:
- Browser (for UI issues):
- Additional connectors and integration:

Any Further Information?
No response

I am struggling to understand the description above so forgive me as I seek clarification.  Am I understanding the request correctly?
Background description of cohort functionality
Connectivity to a cohort is via multiple connections.  There are the event bus connections (kafka in this case) to the three topics and there are the REST API connections to all other members to support federated queries.  Kafka can be down and the cohort can still be delivering metadata to its callers without error and in that sense it is still connected.
Kafka is needed to connect a new member.  If it is down the registration request needs to be retried.  This is reflected in the cohort connection status.   The cohort connection status is not a reflection of whether kafka is up or down but a reflection of the state of the registration to the cohort and whether the cohort manager is running.  Longer term, the plan is to allow a server to control its connectivity to the cohort - such as registering and unregistering from a cohort, but this is not implemented at the moment.
The OMRSRepositoryRESTServices.getMetadataCollectionId() call listed above has no reflection on whether the kafka topic conection is up or down.  It calls the local repository to see if it is initialised.  A metadata server can run successfully without connecting to any cohorts.  If the setting of this value seems to coincide with the connection to the cohort topics in your set up then it is a coincidence because both features are initialised at similar times.
Kafka provides background exchange of events about types and instances.   The protocol is such that lost of these types of events are no problem because the federated queries drive refresh events.  In general, small outages in kafka have no impact on the working of cohort, so changing the cohort connection status when kafka is down would be invalid.
My understanding of the request
What I think is being asked for is an ability to determine the health of each of the connections:

To the cohort topics.
To each of the remote members via REST
This is a good idea but it is a new feature request rather than a bug.

There has been some background work to give connectors the ability to post status and statistics.  Neither the REST nor the kafka connector takes advantage of this feature yet and this would be an area of enhancement.
It is possible to see the status and statistics of the connectors though the audit log report - but since this gives the status of all components in the server, it is a cumbersome mechanism.  Ideally there would be a new metadata highway REST API call to allow the status of the topic/REST connectors to be queried.
Is this what you are asking for?

@mandy-chessell Thanks for your response.
The ability to determine the health of each of the cohort topic connection will address the 1st issue in my comment.
And, please note that, at present, REST API is not used.
Regarding the 2nd issue in my first comment, it seem Egeria attempts to reconnect only for 30 mins. If Kafka is restored after 30 mins, the connection is never restored. Please consider this issue as well.

The federated queries is an important part of the design and is used by other organizations.  If fact, although all members do not need to support it, we do not recommend running a cohort without at least one member using the federated queries.
A solution that does not consider the whole cohort protocol is not attractive.

Thinking about this more, it seems there are two design approaches.

The initial design was that the event bus (eg kafka) is an essential service and the server should terminate if kafka is down.  Then we had a small refinement for a K8 environment where it would wait a short time if Kafka is down, and only exit if it did not come up during the wait time.

An alternative design is that kakfa is not considered an essential service and so the server keeps running is kafka is down.  The connector is responsible for continuing to connect if there is an outage.

From the description above the connector tries to reconnect for 30 mins and then if kafka fails to start in time, the connector does not bring the server down as it is supposed to do.  So, the behavior we have is in limbo between the two approaches whch makes the server difficult to control.  We should make a choice about which one to go with.

If we want to go with the first design, the time that the server waits should be significantly reduced to say 5 mins and we need to make sure that the server exits if the event bus stops (or is never started).

If we want to go with the second design, we need to make the retry indefinate, and add the ability to query the status of each event bus connection - this includes the OMAS In/Out Topics as well as the cohort topics.

I am currently in favour of the second approach because a server could be connected to multiple event buses and if one was flakey it would be annoying to have it cause the server to fail - and even if all event buses were down, the server could still be operating correctly via the REST APIs.
However, I would also like @planetf1 's view on this since he is working through the design for the automated operator.

@pmadugundu Apologies for delay (vacation - through to Wed). First a response to the original text:

The current behaviour of the Kafka topic connector in retrying the initial connection to Kafka is configurable by the user.  The docs for this are at https://egeria-project.org/connectors/resource/kafka-open-metadata-topic-connector/?h=kafka+topic#handling-kafka-cluster-bring-up-issues where the timing is explained. The defaults mean a default delay of 50s if the endpoint address is not resolvable (ie k8s service not defined), or requests fail, and 10 minutes if the endpoint is resolvable. For 30 minutes, you would have overridden the defaults. You could also set the retries to 0 which will mean we do not retry, and will simply aim to connect once, failing immediately (or at least after the Kafka api timeout of 60s if unreachable) if this does not work.

If you want more than 30 minutes, you could extend the retry period - this works. However I would suggest it's more confusing, and instead not having retries is clearer, and simpler, and you can ensure any orchestration you have to start the server is doing an appropriate query to check, and then acting accordingly. (Your second point)

More background and explanation can be seen in https://github.com/odpi/egeria/issues/6530 (the change from the fix to this issue was in ensuring the start fails if we get to the end of the retry period)

It has previously been suggested to ensure that you have a) a Kafka cluster with multiple brokers defined (>3) -- and to have a number of these set as the event broker endpoint address in egeria configuration (>3), and also to ensure you wait for Kafka before bringing the egeria server up through an initialisation container - a common practice.

If Kafka is down we cannot send messages to Kafka. There is further information on the behaviour in the above mentioned issue. By keeping the server from starting we should prevent the server from responding to requests, perhaps giving the impression it is working ok.

If during any retry period you believe the server is acting incorrectly, do point out the specifics so we can take a look at the behaviour. I'm inclined to think any REST / client API call to get the metadata collection id should fail within this period of the server not running (will check) - but see further discussion in a later post. (This relates to your first point)

@mandy-chessell Now to respond to your excellent description of behaviour

If the topic connector cannot connect to Kafka within the configured retry period, the server will not initialise. This was the bug fix added into 3.10 in PR #6611. So we should not be in an indeterminate state and was to address the limbo state you mention. Agree with the explanation of the metadata collection id above, but I'd expect all server queries to fail since the server is not ready. But need to check this
The above fix targeted the first approach - ie to not start in a bad state, and provide the option for relatively immediate feedback (given connection timeout ~60s) to any request to start the server, so that the caller/orchestrator was clear on the state. Providing additional queries for status can always be useful -- however I think the intent of what is there now is workable and clear, accepting there is a limitation that if ANY topic connector fails (regardless of broker) then startup will fail
On the second approach - to some extent this is about delegation of responsibility. We would be saying the Kafka topic connector takes responsibility to 'make it so' and not bother any component with the details. That is appealing, but may set the wrong expectation since it's more likely a server would come up without Kafka, and then the user would be confused why it's not exchanging messages - even though there would be audit log messages and the ability to query status. We also don't know if the config error would be permanent or temporary. Whilst a similar situation could still occur after the server has started (making a status query still valuable) I think this abandoning of startup would keep things simple for more users more of the time.

My inclination therefore @pmadugundu , at least for now is to:

check the current calls to retrieve status are indeed showing the server is not active during the retry period
suggest you either reduce the retries (to get immediate feedback), and act to orchestrate a restart in your code, or prolong the retry if you really need to
orchestrate service startup to ensure Kafka is ready prior to starting the server with a k8s init container or similar

In addition we do still need to consider additional status reporting for connectors, but I think this is an enhancement that isn't required to satisfy your needs given the above

I took a look at reported status.
{{baseURL}}/open-metadata/platform-services/users/{{user}}/server-platform/servers/{{server}}/status
for cocoMDS2 during a period Kafka is down but the server is starting, is reporting
{
    "class": "ServerStatusResponse",
    "relatedHTTPCode": 200,
    "serverName": "cocoMDS2",
    "serverType": "Metadata Access Store",
    "serverStartTime": "2022-08-07T17:07:31.688+00:00",
    "active": true
}

{{baseURL}}/open-metadata/platform-services/users/{{user}}/server-platform/servers/{{server}}/services
{
    "class": "ServerServicesListResponse",
    "relatedHTTPCode": 200,
    "serverName": "cocoMDS2",
    "serverServicesList": [
        "Open Metadata Repository Services (OMRS)",
        "OMAG Server Operational Services"
    ]
}

{{baseURL}}/open-metadata/platform-services/users/{{user}}/server-platform/servers/active
{
    "class": "ServerListResponse",
    "relatedHTTPCode": 200,
    "serverList": [
        "cocoMDS2"
    ]
}

But the key is to use the more fine grained service, which shows whether the service is starting, or actually started -- for example
{{baseURL}}/open-metadata/admin-services/users/{{user}}/servers/{{server}}/instance/status
{
    "class": "OMAGServerStatusResponse",
    "relatedHTTPCode": 200,
    "serverStatus": {
        "serverName": "cocoMDS2",
        "serverType": "Metadata Access Store",
        "serverActiveStatus": "STARTING",
        "services": [
            {
                "serviceName": "Open Metadata Repository Services (OMRS)",
                "serviceStatus": "STARTING"
            }
        ]
    }
}

Here you can see 'serverActiveStatus' says 'STARTING' - ie it is not ready yet.
You'll see audit log messages during this time
Sun Aug 07 18:50:34 BST 2022 cocoMDS2 Startup OCF-KAFKA-TOPIC-CONNECTOR-0015 The local server is attempting to connect to Kafka brokers at localhost:9092 [ attempt 3 of 10 ]

You can then wait, and if the timeout expires you will then get:
{
    "class": "OMAGServerStatusResponse",
    "relatedHTTPCode": 404,
    "exceptionClassName": "org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException",
    "actionDescription": "getActiveServerStatus",
    "exceptionErrorMessage": "OMAG-MULTI-TENANT-404-001 The OMAG Server cocoMDS2 is not available to service a request from user garygeeke",
    "exceptionErrorMessageId": "OMAG-MULTI-TENANT-404-001",
    "exceptionErrorMessageParameters": [
        "cocoMDS2",
        "garygeeke"
    ],
    "exceptionSystemAction": "The system is unable to process the request because the server is not running on the called platform.",
    "exceptionUserAction": "Verify that the correct server is being called on the correct platform and that this server is running. Retry the request when the server is available.",
    "exceptionProperties": {
        "serverName": "cocoMDS2",
        "parameterName": "serverName"
    }
}

Or, if Kafka does come up in the time you will get:
{
    "class": "OMAGServerStatusResponse",
    "relatedHTTPCode": 200,
    "serverStatus": {
        "serverName": "cocoMDS2",
        "serverType": "Metadata Access Store",
        "serverActiveStatus": "RUNNING",
        "services": [
            {
                "serviceName": "Subject Area OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Security Officer OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Open Metadata Repository Services (OMRS)",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Data Privacy OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Community Profile OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Asset Consumer OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Asset Lineage OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Asset Catalog OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "IT Infrastructure OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Asset Owner OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Connected Asset Services",
                "serviceStatus": "STARTING"
            },
            {
                "serviceName": "Digital Architecture OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Glossary View OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Governance Program OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Project Management OMAS",
                "serviceStatus": "RUNNING"
            },
            {
                "serviceName": "Governance Engine OMAS",
                "serviceStatus": "RUNNING"
            }
        ]
    }
}

(in this example, from our labs, we have a variety of OMAS running too)
So I think you have the ability to

Try to have Kafka running before you even try to start the server (k8s init container)
have retries if you wish, or not
Detect the response from the attempt to start - failing if Kafka not available
be able to query the server for an accurate status in terms of starting or not

This seems to be sufficient.. even without any changes to how connector status is reported, or any changes to whether Kafka is essential or not.
@pmadugundu does this make sense?

I think we have addressed the startup case. I've opened #6813 as a follow-on to track the discussion around behaviour once the server is up.


HDDS-6804. use common backgroundScmService for backgroundPipelieScruber

What changes were proposed in this pull request?
since HDDS-6771 is merged , backgroundPipelieScruber should use the common backgroundScmService to simplify the code
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-4656
How was this patch tested?
exit UT

@JacksonYao287, thanks!  The link to the Apache Jira in this PR should be fixed to point to the HDDS-6804 issue instead of the current HDDS-4656.

@neils-dev , sorry, Neil, i do not get your point here.  this jira has nothing to do with HDDS-4656. do i miss something?

@neils-dev , sorry, Neil, i do not get your point here. this jira has nothing to do with HDDS-4656. do i miss something?

@JacksonYao287 - thanks.  Looks like @adoroszlai corrected the mistake.  You are not missing anything with it.  It was simply that the "What is the link to the Apache Jira" section of the PR was pointing to the 4656 jira.  It was corrected and now is pointing to HDDS-6894 as intended.

thanks @sodonnel @neils-dev and @adoroszlai for the review! i have committed the patch


[BUG] Rancher Harvester RKE1 provisioning is failing with k8s v1.24

Describe the bug

RKE1 and RKE2
To Reproduce
Steps to reproduce the behavior:

Import Harvester into Rancher
Create cloud credentials
Create a node template
Create a RKE1 cluster

Expected behavior

The RKE cluster should provision
Support bundle
supportbundle_e2184c5c-e3fa-4140-8d69-14729e17f224_2022-07-28T07-49-10Z.zip
Environment

Harvester ISO version: v1.0.3-rc1
Rancher version: v2.6.7-rc5 single node Docker
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): Single node KVM virtualized node

Additional context
I was seeing this issue with both RKE2 and RKE1 at first, but after clearing out them and trying again I was only able to reliably reproduce the RKE1 issues with v1.24 k8s. It seems to be working on v1.23.

After testing and verification,  RKE v1.23 is no reproduction issues, but RKE2 v1.24-rk2 need to reserve enough memory, at least 3G running kube service, the resource.request.memory is configured in the static pod file.
When u test rke again, u can try configure more memory to machines.

Tested in v2.6.7-rc6 and v1.0.3-rc2. I updated the defaults for the template in RKE2 to 4 cores and 8gigs of RAM. It deployed successfully.


Refactor

Codecov Report

Merging #7 (ef928f7) into master (7b88de4) will increase coverage by 3.56%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   92.59%   96.15%   +3.56%
==========================================
  Files           8        8
  Lines          54       52       -2
  Branches       18       17       -1
==========================================
  Hits           50       50
+ Misses          4        2       -2

Impacted Files
Coverage Δ

src/components/Stack.tsx
100.00% <100.00%> (+8.33%)
: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 7b88de4...ef928f7. Read the comment docs.

Codecov Report

Merging #7 (ef928f7) into master (7b88de4) will increase coverage by 3.56%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   92.59%   96.15%   +3.56%
==========================================
  Files           8        8
  Lines          54       52       -2
  Branches       18       17       -1
==========================================
  Hits           50       50
+ Misses          4        2       -2

Impacted Files
Coverage Δ

src/components/Stack.tsx
100.00% <100.00%> (+8.33%)
: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 7b88de4...ef928f7. Read the comment docs.


How to use this in fragment

I tried using auto image slider in my fragment passing the context as getactivity(); when app runs it stops working and throws null pointer exception and when used getcontext(); same thing happens I want to know how can I access it into the fragment

Update to 1.3.4 , i've tested in fragments and it works properly.

Okay what context should I pass when the code is return inside the fragment activity.


Fix num_gpus when TP > 1

Fixes #1851

@Yard1 Should we also fix this: https://github.com/vllm-project/vllm/blob/f07c1ceaa5162e2ad3b127e06b162508dc57e4db/vllm/engine/async_llm_engine.py#L304?

I see. It seems tricky then...

Perhaps make it a method of ParallelConfig to get the number of GPUs for Ray?

Perhaps make it a method of ParallelConfig to get the number of GPUs for Ray?

@Yard1 Can we somehow keep ParallelConfig independent of Ray?

Have an independent function taking in the parallel config, then?

In my opinion its a regression compared to #1821
After further investigations it seems that Ray make CUDA fail with tensor parallelism if the total amount of GPU reservation is less than 1 (wich indeed no make sense).
Should we not raise and exception in that case ?
# Ensures that we reserves at least 1 GPU with tensor parallelism
if self.parallel_config.tensor_parallel_size > 1:
    gpu_res = (self.cache_config.gpu_memory_utilization * self.parallel_config.tensor_parallel_size)
    if gpu_res < 1.0:
        raise ValueError(f"`tensor_parallel_size` is set to {self.parallel_config.tensor_parallel_size} but the current placement group bundle reserves less than 1 GPU ({gpu_res}). "
                            f"Try increasing `gpu_memory_utilization`. "
                            f"If you are using Ray Serve you may also need to set a correct `placement_group_bundles` to reserves at least 1 GPU unit.")

So it helps the user to set correct configuration and also let it use fractions of GPU with tensor parallelism.
I've tested with and without Ray Serve and we just have to set correct gpu_memory_utilization
And also placement_group_bundles with Ray serve.

So the problem here is that NCCL requires separate devices to operate, but Ray has no insight into that and will try to pack the placement group into as few GPUs as possible. If the number of GPUs Ray chooses is smaller than the tensor parallelism factor, NCCL will not work. There is no easy way to prevent that aside from just not using fractional GPUs if tensor parallelism factor is greater than 1.


[Event Request] Codeunit 1535 "Approvals Mgmt." - OnCalcPurchaseDocAmountOnAfterPurchPostGetPurchLines

Describe the request
Dear ALAppExtensions team,
On behalf of 4PS I would like to request integration event 'OnCalcPurchaseDocAmountOnAfterPurchPostGetPurchLines' to be added to procedure CalcPurchaseDocAmount in codeunit 1535 "Approvals Mgmt.".
procedure CalcPurchaseDocAmount(PurchaseHeader: Record "Purchase Header"; var ApprovalAmount: Decimal; var ApprovalAmountLCY: Decimal)
    var
        TempPurchaseLine: Record "Purchase Line" temporary;
        TotalPurchaseLine: Record "Purchase Line";
        TotalPurchaseLineLCY: Record "Purchase Line";
        PurchPost: Codeunit "Purch.-Post";
        TempAmount: Decimal;
        VAtText: Text[30];
    begin
        PurchaseHeader.CalcInvDiscForHeader();
        PurchPost.GetPurchLines(PurchaseHeader, TempPurchaseLine, 0);
        OnCalcPurchaseDocAmountOnAfterPurchPostGetPurchLines(TempPurchaseLine); //new
        Clear(PurchPost);
        PurchPost.SumPurchLinesTemp(
          PurchaseHeader, TempPurchaseLine, 0, TotalPurchaseLine, TotalPurchaseLineLCY,
          TempAmount, VAtText);
        ApprovalAmount := TotalPurchaseLine.Amount;
        ApprovalAmountLCY := TotalPurchaseLineLCY.Amount;

        OnAfterCalcPurchaseDocAmount(PurchaseHeader, TotalPurchaseLine, TotalPurchaseLineLCY, ApprovalAmount, ApprovalAmountLCY);
    end;

[IntegrationEvent(false, false)]
    local procedure OnCalcPurchaseDocAmountOnAfterPurchPostGetPurchLines(var TempPurchaseLine: Record "Purchase Line" temporary)
    begin
      //new
    end;

Additional context
To determine the amount of the purchase order, we want to exclude the purchase lines that are already approved from the TempPurchaseLine so the correct amount is used in the approval entries.
Internal work item: AB#501763

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 16627.


Fix missing comma in README

Codecov Report

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

@@           Coverage Diff           @@
##           master      #68   +/-   ##
=======================================
  Coverage   76.01%   76.01%
=======================================
  Files          10       10
  Lines        1113     1113
=======================================
  Hits          846      846
  Misses        267      267

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 7b050d4...0c99e2e. Read the comment docs.


How do I set invocation metadata with the reflection generated client?

This is a great library! Thanks for the effort!
I'm trying to use the client generated by reflection with make_json_grpc_client, but I can't seem to find a way to set context.invocation_metadata. Could you clarify if this is possible and how I could achieve this?

Hey Barath,
Thank you for reporting this. Currently, it is not possible, but I will get an update in soon to add the ability to set that, timeout, and credentials as well.

That's great! Thanks!

The latest version with the invocation functionality expanded is now published on PyPi as v0.2.0.


Clicking on a cloud link should produce a confirmation message before adding the server

Something like "You've been invited to connect to a cloud server. Are you sure you want to add this server to your contacts?"

Hmm, is this a security thing?

To me, it just feels like the right thing to do. Otherwise, you might not
be entirely sure what just happened, after clicking an invitation.

Should all uProxy invitations have this confirmation?
I wonder if a toast would suffice, e.g. "now connected to cloud server <IP_ADDRESS>".

Currently all the other networks have a confirmation, and we just removed the Cloud confirmation I think when because we wanted to get rid of that text about it being "experimental".
When the user accepts an invite by navigating to a URL, I think there we definitely want a confirmation, otherwise they could accidentally add some server/contact which may be a security risk.  Also toasts only last for a few seconds and won't easily give the user an option to cancel/undo, so I think a confirmation popup is better here.
I'd be open to skipping this confirmation popup if the user pastes the invite in our UI, in that case we can be more confident they know which server they are adding and are doing it intentionally.

@dborkan That's a nice addendum!: confirm invites, unless they were explicitly pasted in the frontend's "invite URL" field.

SGTM. Though if adding that logic takes work, I think it's fine to always show the confirmation. It seems like a pretty common pattern for something like this.

Seems like something we can consult with @ohnocassio on, too.
Any thoughts on this, @ohnocassio?


Typing: Maxsplit parameter for "split_" functions

Small changes to more.pyi, following #382.

Many thanks!


updated Firebase rule for chainAdmin

Issue #183
Firebase rules update: allowing chainAdmin to publish its own loop

This does mean that anyone can create a chain, publish it, and put it on the site without any checks from the admins. Might get a spam or abuse problem. That's why the published check was there.


ansible 2.5

This removes tests on ansible 2.2.x and adds testing on ansible 2.5.x
Changed meta information to reflect minimal supported (tested) ansible version.

lol let's do it.


[logging] remove unique structured log id

The log ids are now handled in logstash, and don't need to be generated
by the program.  It's based off a consistent hash of the data in the
log, and will handle duplicates.

Looks like you just need to fix 1 test and this should be good to land

Already ahead of you

/land


Support the specific OpenRefine/SDC upload workflow from a IIIF endpoint

When talking to potential users of the Structured Data on Commons (SDC) batch upload functionalities for OpenRefine, we hear a lot about the use case of IIIF endpoints. IIIF is the International Image Interoperability Framework. According to the framework's website it is "a set of open standards for delivering high-quality, attributed digital objects online at scale. It’s also an international community developing and implementing the IIIF APIs. IIIF is backed by a consortium of leading cultural institutions."
Many cultural institutions around the world present their files through a IIIF endpoint. This is indeed a section-wide API standard.
Many IIIF endpoint managers are, or may be, interested to upload files to Wikimedia Commons leveraging this specific set of APIs.

In any endpoint, the source files to be uploaded to Wikimedia Commons can be called upon in a specific standardized way.
Metadata about the files (if present) can also be called upon in the same kind of standardized way.

OpenRefine users can use both of these specific API calls, during project creation and while wrangling data inside OpenRefine. But that's advanced stuff, and we can make that process easier.
We can tackle this in various ways:

Lightweight, documentation-focused approach: we don't build specific features for IIIF users but we document the process well for them;
And/or (perhaps at a later stage, if we see a lot of interest in this) we indeed create a specific IIIF-focused feature or wizard, probably to be used during project creation.

I have deliberately made this issue rather vague; feel free to edit.
Re: timelines, funding, etc:
Support for IIIF endpoints was not included in the deliverables for the Wikimedia Foundation grant for SDC features for OpenRefine (since we are really only working on the very basics there), and we will absolutely not have time to develop specific features (second approach above). I'm not even sure if we will manage to document the approach well. However, I have been aware of this use case since the start, am keen to at least understand this use case better (asap, if we can squeeze it in), and support this as we hopefully continue working on SDC support after our current grant ends :-) .
Perhaps we can do a bit of crowdfunding if there is significant interest from the IIIF community in this?
@lozanaross I am aware that you are also interacting with end users who have IIIF endpoints. Is it feasible for you to squeeze in a bit of time to look at this specific use case? Totally OK if not, considering our current time constraints :D

Thanks @trnstlntk , this is a good description of the options so far - one of the participants in the Ghent workshop expressed real interest in this (even emailed me afterwards), so I can connect with her and get some sample manifests. Indeed, I think investigating this sooner than later will be good, so we can see if we can at least include it in our documentation deliverables (to be done in August / Sept.).
Regarding funding, I also see this as a good candidate for follow-up NFDI funding - we are allowed to go for same amount as this year again next year (or event double the amount).


Create 404 Page

Design a 404 page in the style of the main Hacktoberfest website with the text 'Uh oh, you hacked too far...' and a button to return to the home screen.
Please take a moment to review it.
#7

Love the 404 page, I went ahead and made very slight changes for it to work with github pages and I set the menu link back since we don't want it to lead to 404 directly.

@Jan-Fcloud, thank you for merging. Unfortunately, the downside for me is that your repository is excluded from Hacktoberfest.

Hi @NsCracker , thank you very much for bringing this to my attention. I'll see what I can do about it. I believe the repo got mistaken for the average "add your profile and your done" repository.
If there is no other way of getting it back to be approved, I will be making a new one with a slightly different approach and additional rules so it would fit the event better.
You're very much welcome to recontribute the 404 page to the new repository if I will need to make a new one. If you wish, I can let you know if that becomes the case.

Sure, please keep me informed about the same.


Why the uniformer_small_plus test result is lower than the claimed？

I run the test script of uniformer small plus model https://github.com/Sense-X/UniFormer/blob/main/image_classification/exp/uniformer_small_plus/test.sh

The acc@1 is 68.394 and lower than that in paper, 83.4.

the weight I used is

Thanks for your questions. I will check the weight today.
Someone also has found that the pre-trained UniFormer-S+ does not work well.

@thinksoso Bug has been fixed in the new commit. Thanks for you issue again.
The reason is that I forgot to change the head_dim in the released code.
Besides, the old weight for UniFormer-S+ is 83.3%. We update the model weight in Google Drive and Baidu Cloud, which can reach 83.4%.
https://github.com/Sense-X/UniFormer/blob/53215bfdb903814bd8e11d57a150a84969777f78/image_classification/models/uniformer.py#L344

Thanks for your help!


License

Hi!
I am hoping to use this codebase in a commercial application, but you have not included licensing information for this repository. Can you add a license or perhaps get in contact with me?
Thanks

MIT license added: https://github.com/AdeelH/reddit-clone/commit/a4303756eedbed5f35c0aba83083e8e092e2301f


Ability to disable warnings in development

Is your feature request related to a problem? Please describe.
We don't initialize Intercom to anonymous users, only to logged in so in development shouldInitialize is pretty much false most of the time. However, that causes a few big blocks of warning on each page refresh.

Describe the solution you'd like
I'd like to have ability to disable development warnings for this library given that we intentionally do it.
Not sure what's the best way to approach it - maybe separate prop?
Describe alternatives you've considered
N/A
Additional context
N/A
Thank you for making such a great library!

Actually, nevermind, we found a different approach.
Thanks again!

Given that we use Intercom only in production, we simply enabled domain whitelist and then we get simple one line warning from Intercom "domain not whitelisted".

Thanks!


Update .NET PowerShell Kernel to PowerShell 7 RC2

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
Just a question...
I notice that the .NET PowerShell kernel is PowerShell 7 RC 1. Is there a way to update to RC 2.
Or, I'm guessing that you all waiting for the next release to GA.
But I would love to know is there's a way to get RC 2 going while waiting for the GA version.
Thanks!

@TylerLeonhardt

The SDK referenced in the project was rev'ed to rc.2 by #143.
I notice the CI build produces artifacts which can be downloaded here: https://dev.azure.com/dnceng/public/_build/results?buildId=519457&view=artifacts&type=publishedArtifacts, @jonsequitur does the artifacts contain a daily build for people to try out?

Every build produces new versions of our packages. The easiest way to try them out is from our MyGet feed:
> dotnet tool install -g --add-source "https://dotnet.myget.org/F/dotnet-try/api/v3/index.json" Microsoft.dotnet-interactive

@jonsequitur
That's great!  But, what's the proper instructions to update .NET Interactive?
I'm guessing I should do the following:
dotnet interactive jupyter remove
dotnet tool remove --global Microsoft.dotnet-interactive

Then, I can reinstall again.
dotnet tool install -g --add-source "https://dotnet.myget.org/F/dotnet-try/api/v3/index.json" Microsoft.dotnet-interactive
dotnet interactive jupyter install

:)

> dotnet tool update -g --add-source "https://dotnet.myget.org/F/dotnet-try/api/v3/index.json" Microsoft.dotnet-interactive

@jonsequitur
Thanks again!
:)

I suppose we can close this since it's addressed in master? Unless @jonsequitur you folks close when it's release? (this is also me asking for future reference 😄)

@jonsequitur and @TylerLeonhardt
It works Great! I will close this issue.
Thanks again,
:)

I suppose we can close this since it's addressed in master? Unless @jonsequitur you folks close when it's release? (this is also me asking for future reference 😄)

It's fine to close it when it's in master.


Automated Release Drafter with Version Bump PR Labels

Before you submit a pull request, please make sure you have read and understood the contribution guidelines and the code of conduct.
This pull request is related to:

[ ] A bug
[ ] A new feature
[ ] Documentation
[X] Other (please specify) -> CI

I have checked the following:

[X] I have read and understood the contribution guidelines and the code of conduct;
[ ] I have added new tests (for bug fixes/features);
[X] I have added/updated the documentation (for bug fixes / features).

Description:
This PR includes updates to our GitHub CI:

declarative label management
add bump labels for managing version control from PRs
automatically tag and draft a new release when a PR is merged
add docs for repo maintainers regarding automated release drafter

The process will need to be tested after this PR is merged.
Related issues:
None

@xavidop thank you for your suggestion. For time constraints, I'm gonna merge this PR as it is, so we can start automating the release process here in GitHub.
Let's keep that as a potential future improvement!


IDVA6-1630 Add CSRF mitigation

JIRA link
https://companieshouse.atlassian.net/browse/IDVA6-1630
Change description
CSRF token implementation to prevent CSRF attacks.

Implementation of CSRF middleware from web-security-node
Add the CSRF token to each page with a  element.
Update error page to handle CSRF errors

CI: No security warnings found

CI: No security warnings found

CI: No security warnings found


Support query for HTML output from MarkdownEditor

Also supports output of original value from MarkdownEditor and TinyMCE, and documents this feature.
Refer issue #109.

@thetanz-geoff This is great! I'll take a look that it works as described and merge as soon as possible. 🎉


Support for a more destructable query keys

Hello!
This article from TkDodo's blog proposes a very convenient structure for query keys: they are arrays, they have only a single element and all the data, including some high-level strings for scope and entity, are stored in it. The huge profit is that you don't have to write these commas when you desctructure the key.
// this is your key
const queryKey = ['todos', 'list', {sort: 'name'}];
const [, , {sort: 'name'}] = queryKey;
// this is TkDodo's key
const queryKey = [{scope: 'todos', entity: 'list', sort: 'name'}];
const [{sort: 'name'}] = queryKey;

On the one hand, it may be more restricting. On the other hand, it may enforce the users to follow the good practice. If you don't want to make it a must, there could be an option or alternative factories that use the second structure. It will require a lot of different types, I guess, so I don't know what's the best way to go. I'm interested in your opinion on that, thanks!

Hey, @Jazzmanpw thanks for the suggestion!
While I understand where the request comes from, I'm not sure if I want the lib to go that path because it would make it strongly opinionated on how users should define their query keys (in this case, always an object). Also, the benefits of typescript make it very clear about the index the information lives on, and honestly, the following isn't that bad:
const {sort: 'name'} = queryKey[2];

I'm currently working on the v1.0 of this lib, mainly focusing on adding support for nested keys (ex: you can add keys for a specific user account), how would scope be translated when you have multiple nested scopes? scope2? subScope, subScope2? On one side, it's easier to destruct the query key right on the first index, on the other, scaling and adding new features to the lib might become more painful. I'm just dropping some thoughts here though, don't take any of this as an official decision for your request.
Also for v1.0, I'm trying to implement an API that supports this pattern that TkDodo introduces in his recent posts for React Router:

And honestly, the convenience of this API would make it pretty unnecessary to have to destruct the query key anywhere.
I'll keep the issue open and consider it for the future, but it's not a priority right now

@lukemorales Sounds great with v1. FYI: it seems like that with v5 of query you might always will need to use the queryKey and queryFn. See more here https://github.com/TanStack/query/discussions/4252

@lukemorales Sounds great with v1. FYI: it seems like that with v5 of query you might always will need to use the queryKey and queryFn. See more here TanStack/query#4252

Thanks for bringing more context on v5 for this thread! I'm up to date with that proposal, and actually, that roadmap delayed the release of v1 a bit. The pattern I presented in my last comment was being introduced as a bonus in the package, but now that there will be no overloads anymore and the object syntax is going to be the default, I'm changing it to be a first-class citizen so I'm rethinking the API a little bit in order to provide a great DX

just coming in to say love the library and would love for the queryKey passed to the queryFn via the context be strongly typed

just coming in to say love the library and would love for the queryKey passed to the queryFn via the context be strongly typed

Thanks for the feedback @aulneau! I also with that queryKey would be typed in the queryFn context declaration but still need to figure out how do that without breaking the current inference.


Investigate performance regression from 4.2

In 4.3, we split out the header dependency tracking into a separate task for C/C++ compilation to support C++ caching.
In 4.4, we added system includes to the tracked include path to ensure we had a complete picture of the dependencies for compilation.
Some existing builds have seen large performance impact due to these changes.  We should strive to get back to 4.2 performance levels and make sure our performance tests capture this regression.

The biggest performance regression I have seen was not due to the changes noted above, but due to detecting macro includes in third party dependencies and switching into the "snapshot the whole include path" mode in 4.3, while 4.2 was happily using the discovered inputs only.

Thanks, I meant to include that too.


Update descriptor_set_layout.cpp

Description
Move the scope of an extension structure so that it has the same call as the parent structure to which it may be attached via a pNext chain.
Fixes #986
General Checklist:
Please ensure the following points are checked:

[X] My code follows the coding style
[X] I have reviewed file licenses
[X] I have commented any added functions (in line with Doxygen)
[X] I have commented any code that could be hard to understand
[x] My changes do not add any new compiler warnings
[x] My changes do not add any new validation layer errors or warnings
[x] I have used existing framework/helper functions where possible
[ ] My changes do not add any regressions
[ ] I have tested every sample to ensure everything runs correctly
[x] This PR describes the scope and expected impact of the changes I am making

Note: The Samples CI runs a number of checks including:

[X] I have updated the header Copyright to reflect the current year (CI build will fail if Copyright is out of date)
[x] My changes build on Windows, Linux, macOS and Android. Otherwise I have documented any exceptions

Great catch. I think the reason this never really caused much of a problem is that it only seems to be used in a single sample.


Vulnerability feeds are now available only as JSON

Per the timeline provided in the XML feed retirement announcement we will be implementing Phase 3 of the XML retirement plan on Wednesday October 16th.
* This is one week later than originally planned.
* The feeds will no longer be accessible to any users or automated processes.
* Users will need to begin ingesting the JSON 1.1 Feeds for vulnerability information.

old location as XML:
https://static.nvd.nist.gov/feeds/xml/cve/2.0/nvdcve-2.0-2019.xml.gz
new location as JSON:
https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-2019.json.gz

Related to deprecated v1.


[docs][material-ui] Popover docs seem somewhat misleading regarding "click away"

Duplicates

[X] I have searched the existing issues

Related page
https://mui.com/material-ui/react-popover/
Kind of issue
Unclear explanations
Issue description
I am in the process of deciding between the Popover and Popper components. In the Popover documentation the following statement is made at the very beginning of the document:

The scroll and click away are blocked unlike with the Popper component.

However, when it comes to the "click away" part, it seems to be the opposite, i.e. click away is not blocked in Popover and it is blocked in Popper.
The Popper docs make these statements:

The scroll isn't blocked like with the Popover component. The placement of the popper updates with the available area in the viewport.
Clicking away does not hide the Popper component. If you need this behavior, you can use ClickAwayListener - see the example in the menu documentation section.

This leads me to believe that the point in the Popover docs should be remedied to the following (or similar):

Things to know when using the Popover component:

The component is built on top of the Modal component.
Scrolling is blocked unlike with the Popper component.

Or, if a diff is more helpful:
Things to know when using the `Popover` component:
...
- - The scroll and click away are blocked unlike with the [`Popper`](/material-ui/react-popper/) component.
+ - Scrolling is blocked unlike with the [`Popper`](https://mui.com/material-ui/react-popper/) component."

I'm happy to submit a PR for this, but as I'm not sure that I've fully understood the desired behaviour, so I'd be happy if someone can confirm.
Context 🔦
I am in the process of deciding between the Popover and Popper components. I need to implement a feature where an alert pops up on a table row when it conflicts with the data (new row) that the user is attempting to add.

@vilbergs Thanks for reporting this ~ I believe the behavior is correct, and I agree the wording in the docs is confusing.
What you suggest makes sense, I would also explicitly mention click-away as well, e.g.:
Things to know when using the `Popover` component:
...
- - The scroll and click away are blocked unlike with the [`Popper`](/material-ui/react-popper/) component.
+ - Unlike with the [`Popper`](https://mui.com/material-ui/react-popper/) component, scrolling is blocked, and click away is built-in

I'm happy to submit a PR for this

Please go ahead, and we can further refine the wording the PR ~


Generator: update SDK /services

Generated from GitHub run<PHONE_NUMBER> (https://github.com/stackitcloud/stackit-api-specifications/actions/runs/6627414599)

Closed due to using old version of main


Not showing in HACS

Not showing in HACS
EDIT, I see the PR hasn't been approved yet, I'll manually install
https://github.com/hacs/default/pull/2058

I will close this issue now. Thanks

How come ? it's not resolved, still not visible in HACS ?

Because it's resolution is outside of my control.

Probably want to note that in the install instructions that its not available in HACS yet

Good idea, done that now. Thanks


misleading message when narrowed to silent user

I narrow to all messages sent by user Foo Bar. But user Foo Bar has not yet sent any messages. The message in the middle of the screen says:

Nothing's been sent here yet!

Why not start the conversation?

And the phrase "start the conversation" is a hyperlink; if I click it, a new message composition box appears. But I'm not Foo Bar, so me composing a message and posting it will not actually cause my search to have new results; "Why not start the conversation?" isn't the right message for this circumstance.
Suggested alternative:

This user hasn't posted anything yet!

Why not ask them to join the conversation?

with "ask them to join the conversation" being a link -- clicking it should give the user a composition box pre-populated with an @-notification of Foo Bar's name.

Hmm, yeah, a simple solution that would handle a wider range of cases is to just not display the second sentence in the case where sending a message would not actually match the narrow.

@krtkmj this may be a good project for you, since you've spent a decent amount of time improving that page in your other PRs.

@timabbott cool. I will work on this.


fix: address checkov issues

@andrewmooreio Terraform plan evaluation detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform - please contact #ask-modernisation-platform for assistance

@andrewmooreio Terraform plan evaluation detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform - please contact #ask-modernisation-platform for assistance


Fix compiler assert fail on circular type inference error.

This PR fixes a compiler assert fail on circular type inference error.
Resolves #1334.

There's a release underway. Please rebase against master and verify your CHANGELOG entry is correctly appearing in the "unreleased" section.

This has been updated based on @Praetonus' feedback and rebased to use the latest changelog section.

CHANGELOG changed due to 0.7.0 release, this probably needs to be rebased against master.

@jemc can you rebase one more time?
@Praetonus ready to sign off on this?

Yes, looks good to me.

It's now rebased, so I'm merging.
However, I removed the changelog entry from the PR because I'm going to use this as a guinea pig for the automated changelog process.


Allow Drag and Drop from/to arbitrary areas

Bug, feature request, or proposal:
Dragging and dropping in a cdkDropList is nice, but we need the ability to set an element as a cdkDrag element, and be able to drag that element onto an arbitrary drop zone/target. Currently, there is no way to know if a cdkDrag that is not part of a drop list is dragged - there aren't any "drag start", "drag end/dropped" events.
What is the expected behavior?
Be able to be notified when a cdkDrag element that is not within a drop list is dragged and dropped.
What is the current behavior?
Not the above.
What is the use-case or motivation for changing an existing behavior?
Be able to drag elements from a list / grid onto a target area, not necessarily moving the item, but to at least be notified when it is dropped into the target, in order to do something (play a sound or animation, etc.)
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular 7.0.2
Material 7.0.2
All browsers.

I created this issue as a more general purpose feature request. If this were implemented I believe this item could be solved by creating a cdkDropList with one item.

I have a similar issue that this would solve.
I want to be able to show a second container (cdkDropList) only when user starts dragging an item.
However, if I use [hidden] or *ngIf to show the second container (callback triggered by cdkDragStarted), I can't drop the item in the container.
Anyone knows how to solve this?

@fabioemoutinho It is not possible to drop an element in previously hidden cdkDropList.
Here is related StackOverflow question https://stackoverflow.com/questions/59357985/cant-drop-element-in-previously-hidden-cdkdroplist
with an example https://stackblitz.com/edit/hidden-drop-zone
Does anyone know a workaround?


The core should ignore duplicated monitoring data

Author Name: OpenNebula Systems Support Team (OpenNebula Systems Support Team)
Original Redmine Issue: 5021, https://dev.opennebula.org/issues/5021
Original Date: 2017-02-14

There are some corner cases where the monitoring probes can send twice the monitoring information of a VM. When this happens, instead of replacing the attributes, they are added, so we can end up with VMs with two NET_TX tags, instead of just one. This breaks the CLI and other tools that expect one and only one.
This should be prevented by the core.

Original Redmine Comment
Author Name: OpenNebula Systems Support Team (OpenNebula Systems Support Team)
Original Date: 2017-02-14T17:54:22Z

fsck should be updated to fix VMs affected by this bug


OEP: Time-limited Token Standard

In some cases, token can be expired after a certain period.

I like this idea. @javajoker I can write a proposal, would that be of interest?


[Gally]: master <- dev

Automatically created by Git-Ally

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add version: Tyrrrz.LightBulb version 2.1

null
Microsoft Reviewers: Open in CodeFlow

@vedantmgoyal2009 This package has a script to download and install necessary .NET runtimes, starting with Microsoft Windows Desktop Runtime 3.1.3. (x64). But the script does not run the runtime installers in unattended mode. Is there a switch or other way to have the script perform unattended installs? Or should these runtimes be entered as dependencies?


Selection and presentation practices for code example summarization

Link to data: http://dl.acm.org/citation.cfm?id=2635877

Paper: Selection and presentation practices for code example summarization
Authors: Annie T. T. Ying and Martin P. Robillard
Email<EMAIL_ADDRESS>No data available as the paper primarily describes practices and they use actual sourcecode for them


minor tweaks on README file

This change is

Review status: 0 of 2 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


perf(git): speed improvements by using string functions instead of RegExps

Converted String.match() instances to String.endsWith(), String.indexOf(), and String.endsWith(). Not sure why the ref checking was using overly complicated regular expressions in the first place.
This test shows substantial performance improvements for using indexOf() over match(). I find similar results for endsWith(): https://jsperf.com/endswith-vs-regex-7/1.

Hi!
Regardless of issues about performance, I think this patch is great to take simply because I think it's improved code readability and maintainability.
So, this looks great to me! Thanks for the contribution. 🎉


Bulk operations using native JSON.MGET or JSON.MSET

Hello everyone,
I've noticed that Redis OM does not seem to handle bulk operations for inserting and reading, specifically using native Redis commands like JSON.MGET and JSON.MSET.
I'd like to understand if this is due to performance limitations or if there might be other underlying reasons for this. I'm exploring the possibility of creating a process that maximizes I/O to Redis, and using bulk commands seemed like a good approach.
Any insights on potential performance implications or technical challenges would be greatly appreciated. Thank you!

Hi @JesusVFR - can you give a little more clarity on what you mean? what exactly is it you're trying to do?

Hello @slorello89
I'm developing a software application that processes real-time data and uses Redis as a primary data store. Due to the high volume of read and write operations per second, I'm looking for the most optimized way to handle these operations with Redis. I believe that bulk operations, like JSON.MGET and JSON.MSET, could be key in maximizing I/O throughput to Redis.
Currently, I've noticed that Redis OM does not seem to support bulk operations directly for JSON objects, which leads me to wonder if this is due to performance trade-offs or other design considerations. I would love to understand any potential technical challenges around implementing bulk commands within Redis OM and to discuss potential ways to enhance Redis OM for high-frequency real-time applications.
Thank you very much for your insights and support!

Hi @JesusVFR I guess my big question here is what value would Redis OM provide that you can't already get out of the regular JSON.MGET / JSON.MSET operations? E.g. what would the api looks like?
A RedisCollection query with a Select is equivalent to an MGET, and calling Update on a set of documents or calling save is the equivalent of an MSET, so what else would you be looking for?

going to close this out to tidy up - if you have some particular feedback about what you think the API should look like here feel free to reopen!

Thank u
On Thu, Nov 21, 2024, 6:56 PM Steve Lorello @.***>
wrote:

going to close this out to tidy up - if you have some particular feedback
about what you think the API should look like here feel free to reopen!
—
Reply to this email directly, view it on GitHub
https://github.com/redis/redis-om-dotnet/issues/500#issuecomment-2491534654,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMTGV5X43UAC44NK3FYUXIT2BX3SZAVCNFSM6AAAAABQ6YPOXGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJRGUZTINRVGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


[docs] Update emails in doc

Fixed by https://github.com/chanzuckerberg/cellxgene-census/pull/1102


Fixing getProduct(barcode) to use correct endpoint

Current endpoint for getProduct will consistently return Barbecue Sauce as the result, regardless of the barcode.
For example, this UPC for rice noodles shows up as Barbecue Sauce
https://world.openfoodfacts.org/api/v0/737628064502
And when using the /product/#.json endpoint it returns the actual product:
https://world.openfoodfacts.org/api/v0/product/737628064502.json
Documentation currently suggests the second URL is correct, but not sure if the API is in the process of changing, since it mentions it's unstable.

Thanks for your contribution, it looks good for me.


Refactor IoWorker of debugger

Currently it uses a probably too-complex merged loop, where the readers could just use separate loops. Also no need for Task.Run probably

It will also improve the performance since it will be able to use the ValueTask and not allocate a task when the reading synchronously.


Show edit tag button in details pane at all times

What feature or improvement do you think would benefit Files?
Having the button only appear when there are already tags on the file is annoying. The user must instead right click the file to add a tag, and then the button appears, after it's use was fulfilled by something else.
Requirements
Simply keep the button on the pane when no tags are present on the file. Maybe move it next to properties so there's no empty tags section?
Files Version
<IP_ADDRESS>
Windows Version
10.0.22621.1992
Comments
No response

Thanks for the feedback, I've added this to the project board.

@RunicLena this issue is fixed in our dev branch and will be included in the next release.


Siri dada

Ok

Hello

I'm closing this as off topic. Please see our Contributing.md for the types of feedback we're looking for on our Site Policies in this repo.


Page canvases in the wrong order

The page canvases can get shuffled into the wrong order when switching between 1page and scroll modes
Here is the pdf viewer in 1 page mode, on page 1

I navigate to page 30, still in 1 page mode

When I switch to scroll mode I see the last page of the pdf as the first canvas. When I scroll down to page 30 I see the 1st pdf page is the 30th canvas, and has the correct annotation layer from page 30 layered on top of it

The work around I have been doing is to change the component key when the user goes to scroll mode to reset the pdf. It's not ideal as I have to reload the pdf.
I think this is caused by this:
const [canvas, div1, div2] = Array.from(pageRefs.value[i].children) as [
  HTMLCanvasElement,
  HTMLDivElement,
  HTMLDivElement,
]

Seems like the pageRefs.value[i] is out of sync with the pageNum and it's getting confused over which page number matches which page.
Possible fix could be something like:
const pageElem = document.getElementById(`${props.id}-${pageNum}`)
const [canvas, div1, div2] = Array.from(pageElem?.children || []) as [
  HTMLCanvasElement,
  HTMLDivElement,
  HTMLDivElement,
]

Hi @katenorquay,
The mentioned issue has already been resolved in 7bbea0679db219815badba1e2f864148d2db1dbe (see #208). The fix will be delivered in the next release.
Thanks

Amazing, thanks @hrynko! Do you have any idea when the next release will be?

I can't say for sure yet. It depends on progress on other patches, but it's unlikely to happen sooner than next week.

v2.1.0 containing a fix for this issue has been released


Renamed most of the browser operations and changed the API to be non-fluent

Names now reflect what the classes responsibilities are - getter methods on browser have not been changed since their names are based on API calls
Instead of returning the linked Browser instance most operation methods now return void. The fluent API had some drawbacks which need to be addressed in future releases.

+1


changed type hint in Stringable class's constructor's phpdoc

Changed type hint for constructor argument $value from "string" to "mixed".
motivation
When developers want to use Stringable class, the $value is not string. If the $value is already string, developers do not have to use Stringable
Type of $value may vary, so "mixed" will be appropriate.

Is Stringable not the fluent implementation of Str helper?

I never see developers use Stringable outside of fluent Str helper. Anything that is passed to Stringable is already a string, so having mixed type is unnecessary.
You'll most likely want the value to be scalar instead of mixed. But even so, everything passed needs to be parsed as string.

This always needs to be a string

I'm the one who use Stringable outside of Str helper every time I need a scalar value. Okay, I understood  it must be very rare in Laravel world. I'll use another Strinagable implementation even in my Laravel projects from now on.

I thought from class name String"able" should mean "not string now but can be converted to string".


Mac9 is failing tests with Dismiss dialogs failure

Example build: https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios complex_layout_scroll_perf_ios__timeline_summary/3547/overview
Have uninstalled the app manually, and it should be good to go. But we need to track why device doctor failed to uninstall those apps when recovering.

The bot is still failing tests with
Infra Failure: Step('Dismiss dialogs.Run app to dismiss dialogs') (retcode: 65)

@godofredoc do you mind take a look? I manually quarantined the bot for now.

Tests are now passing consistently.


Integer overflow (?) when one side of expectation is annotated as I8, I16 or I32

Hi! Thank you all for your efforts in making Roc an exciting and very promising language. With encouragement from @ayazhafiz I submit the following.

Here is the output from roc test:
── EXPECT FAILED ──────────────────────────────────────────────── src/json.roc ─

This expectation failed:

38│>  expect
39│>      expected : I32
40│>      expected = 1
41│>      actual = 0
42│>      expected == actual

When it failed, these variables had these values:

expected : I32
expected = 1

actual : Num *
actual = -6148914694099828736

1 failed and 0 passed in 339 ms.

I’m guessing it’s some kind of overflow, but I didn’t dig deeper into it.
As far as I can tell, it only happens if:

The expectation fails
Here it’s 1 == 0, but any two numbers will produce similar result

Only one of the numbers being compared is annotated
No annotations - no problem. Two annotations - no problem.

It's type is shorter than I64
So an I64 or an I128 will yield correct output. A Dec will cause a panic, but that's for another issue ;-)

The annotation can be indirect, e.g. inferred from the annotation of a function being tested. The example is reduced to the most basic form.
Here is some code to reproduce it (including a Nix flake with locked version of Roc). I'm running it on a x86_64-linux system with Linux 6.1.62, NixOS, 23.11 (Tapir), 23.11.20231112.e44462d.

Nice detailed bug report, thanks!
I dumped the IR for this, and it looks reasonable. actual gets the right layout.
❯ ROC_PRINT_IR_AFTER_SPECIALIZATION=1  roc test Test.roc
procedure : `Test.2` {}
procedure = `Test.2` ():
    let `Test.expected` : I32 = 1i64;
    let `Test.actual` : I32 = 0i64;
    let `Test.4` : Int1 = CallByName `Bool.structuralEq` `Test.expected` `Test.actual`;
    expect `Test.4`;
    let `Test.3` : {} = Struct {};
    ret `Test.3`;

procedure : `Bool.structuralEq` Int1
procedure = `Bool.structuralEq` (`#Attr.#arg1`: I32, `#Attr.#arg2`: I32):
    let `Bool.23` : Int1 = lowlevel Eq `#Attr.#arg1` `#Attr.#arg2`;
    ret `Bool.23`;

So I suspect the bug is really in the REPL-like part of expect where it interprets the bytes of the answer and tries to print a text representation.
It would be interesting to see if we can get the REPL to incorrectly print out a number like this.

No luck reproducing it on the web REPL but then it's pointer-width in WebAssembly


Refactor/record api

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@be9ad75). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             develop       #1   +/-   ##
==========================================
  Coverage           ?   80.85%
==========================================
  Files              ?        6
  Lines              ?      700
  Branches           ?        0
==========================================
  Hits               ?      566
  Misses             ?      134
  Partials           ?        0

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Windows uninstaller doesn't remove vimtutor.bat

Install Vim, make sure you check the "Create .bat files" box during the process
Uninstall Vim. The file C:\Windows\vimtutor.bat is still there.

Vim: https://github.com/vim/vim-win32-installer/releases/download/v8.2.0230/gvim_8.2.0230_x86.exe,
Windows 10 Home 1803.

Fixed by #5603.


Add support to Writeable interface

Description
UploadStats and UploadMetric will be passed between Nodes during StatsRequest. This request will use
StreamInput/StreamOutput to read stats across each other.
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #59 (d39e44b) into main (7fbdb83) will increase coverage by 0.76%.
The diff coverage is 88.46%.

@@             Coverage Diff              @@
##               main      #59      +/-   ##
============================================
+ Coverage     88.00%   88.77%   +0.76%
- Complexity      129      133       +4
============================================
  Files            18       19       +1
  Lines           467      490      +23
  Branches         35       35
============================================
+ Hits            411      435      +24
+ Misses           52       49       -3
- Partials          4        6       +2

Impacted Files
Coverage Δ

...opensearch/geospatial/plugin/GeospatialPlugin.java
100.00% <ø> (ø)

...action/upload/geojson/RestUploadGeoJSONAction.java
12.50% <0.00%> (ø)

...a/org/opensearch/geospatial/shared/URLBuilder.java
50.00% <50.00%> (ø)

...ensearch/geospatial/stats/upload/UploadMetric.java
96.92% <100.00%> (+4.76%)
:arrow_up:

...pensearch/geospatial/stats/upload/UploadStats.java
83.33% <100.00%> (+6.06%)
: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 7fbdb83...d39e44b. Read the comment docs.


Add support for speed check against ufs with hidden credentials

Speed check can not be performed on a UFS right now because ufs credentials are masked when they are returned from the master.
This works around that issue by calling into the file master to launch a speed test which will run as a job.

@gpang I think the central issue here is that UFSIOBench directly operates on the UnderFileSystem class, and that's why it needs the credentials. I suppose we can read and write through the master, but that will surely involve other components of the alluxio master such as metadata ops and is not a pure UFS IO benchmark.

I think JobWorkers do have access to the mount points, via JobServerContext and the UfsManager (https://github.com/Alluxio/alluxio/blob/d8193189a3de15cc01cfb315cb9c981b08b13e3e/job/server/src/main/java/alluxio/job/JobServerContext.java#L31)
We just need to figure out how that information can be propagated to the task itself.

@gpang The task can get an instance of the UfsManager, but then it needs to do a shell exec to launch UfsIOBench, so this still wouldn't work. We need to somehow allow UfsManager to return credentials to make this work. so we can pass it to the shell execute.

See #12480 for a version without POM changes and going through the FileSystemMaster


I got this error when i am trying to run the command "flutter build apk" Exhausted heap space, trying to allocate 240 bytes

I have 8GB of Ram
when i am trying to run the command (flutter build apk) i was having like free space of 3GB Ram
I can not figure what is the root cause of this problem .
i can build debug mode(slow so much but it works), but i can not build apk mode
i turned off my machine so i can be sure that i am freeing up space but it did not work too .
i run with stacktrace too
khaled:android khaled$ ./gradlew assembleDebug --stacktrace
Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details
WARNING:We recommend using a newer Android Gradle plugin to use compileSdk = 33

This Android Gradle plugin (7.2.0) was tested up to compileSdk = 32

This warning can be suppressed by adding
android.suppressUnsupportedCompileSdk=33
to this project's gradle.properties

The build will continue, but you are strongly encouraged to update your project to
use a newer Android Gradle Plugin that has been tested with compileSdk = 33

Task :app:compressDebugAssets

Execution optimizations have been disabled for task ':app:compressDebugAssets' to ensure correctness due to the following reasons:

Gradle detected a problem with the following location: '/Users/khaled/StudioProjects/blood4life/build/app/intermediates/assets/debug/mergeDebugAssets'. Reason: Task ':app:compressDebugAssets' uses this output of task ':app:copyFlutterAssetsDebug' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. Please refer to https://docs.gradle.org/7.5/userguide/validation_problems.html#implicit_dependency for more details about this problem.

Task :app:stripDebugDebugSymbols

Unable to strip the following libraries, packaging them as they are: libflutter.so.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.5/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD SUCCESSFUL in 1m 33s
1

@khaledmurtaja
I think this is similar to what you already reported: https://github.com/flutter/flutter/issues/121739. So take a look at this recent comment https://github.com/flutter/flutter/issues/121739#issuecomment-1453123890 for your reference.
Also, let's track this in the linked issue instead of filing new issue for same error. I'll close from here. You may comment / reply or add your feedback in that issue for better tracking.


Padding/Margin does not work on Text inside another Text

Reproduction
<Text>
  <Text style={{ padding: 100, backgroundColor: 'green' }}>
    It should have padding
  </Text>
</Text>

https://rnplay.org/apps/6ROkUg
Additional Information

React Native version: 0.33, 0.39
Platform: iOS, Android
Operating System: MacOS

@brunolemos please read this doc to understand how nested text component works.
https://facebook.github.io/react-native/docs/text.html#nested-text . I don't think that's a bug

@brunolemos please read this doc to understand how nested text component works.
https://facebook.github.io/react-native/docs/text.html#nested-text . I don't think that's a bug


correct misspell and use errors.New() in networkallocator/networkallo…

…cator.go
Signed-off-by: fate-grand-order<EMAIL_ADDRESS>

Codecov Report

Merging #1975 into master will increase coverage by 0.23%.
The diff coverage is 50%.

@@            Coverage Diff            @@
##           master   #1975      +/-   ##
=========================================
+ Coverage   53.47%   53.7%   +0.23%
=========================================
  Files         109     109
  Lines       18919   18919
=========================================
+ Hits        10116   10160      +44
+ Misses       7570    7523      -47
- Partials     1233    1236       +3

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 be6e3d3...bcc4206. Read the comment docs.

LGTM

I really don't see the point in switching fmt.Errorf to errors.New. What is the purpose?


registerNotificationReceivedBackground is not triggered in ios

I am trying to set app badge count when the app receives push notifications in background state. But registerNotificationReceivedBackground is not triggered in iOS.

I saw the same behavior, where none of the ios event handlers are actually working:
https://github.com/wix/react-native-notifications/issues/561

Other event handlers are working for me in iOS

I am having the same issue, all events are working apart from the registerNotificationReceivedBackground

Same issue for me.
I get notifications but the event registerNotificationReceivedBackground  doesn't work.
Has anyone handled this?

Same issue for me.
I get notifications but the event registerNotificationReceivedBackground  doesn't work.
Has anyone handled this?

same issue for me.

Hi guys same issue for me here it's been 3 days it's very annoying.

I queried this recently in another ticket because I had a slightly different use-case but have you checked your payload against what Apple requires for a push to be considered a background notification?
See comment here:
https://github.com/wix/react-native-notifications/issues/848#issuecomment-1087513109
It is a requirement that the push aps object only has content-available: 1 in it. If you include anything else, it won't be treated as a background notification, and hence why the JS function isn't getting called.

Yes I did all that Apple requires. I even added the header apns-push-type and apns-priority as mentioned here.
Here is my server code :
const request = http2Client.request({
    ':method': 'POST',
    ':scheme': 'https',
    'apns-push-type': 'background',
    'apns-priority': 5,
    'apns-topic': BUNDLE_ID,
    ':path': '/3/device/' + DEVICE_TOKEN,
    authorization: `bearer ${authorizationToken}`,
});
request.setEncoding('utf8');

request.write(JSON.stringify({
    "aps": {
        "content-available": 1
    }
}));

Invoking @DanielEliraz 😉


polyfill VS native: possible enhancement

I wonder if, in case System is missing, it wouldn't be better to reflect a native descriptor.
if (typeof System !== 'object') {
  Object.defineProperty(global, 'System', {
    configurable: true,
    writable:  true,
    value: {}
  });
}

Moreover, I believe the global property in the System should actually throw if reassigned or, at least, be a constant, like the PI in the Math object.
if (!System.global) {
  Object.defineProperty(Symbol, 'global', {value: global});
}

What do you think?

The "polyfill" in the proposal repo is an example implementation and isn't meant to be consumed, simply a reference implementation.
Once the naming issue is resolved, I'll release a module on npm that uses define-properties to do exactly as you suggest.


Is there any plan about a GA Version if 2.4.0 or 2.5.0？

Any update on GA?

@jhouserizer any update on GA release ?.

https://github.com/quartz-scheduler/quartz/discussions/1166


Scanpy umap plot opens a pop-up

When I run the example, everything worked fine but when I used scanpy to make a plot, it showed in a new window as an interactive figure.
I had to add these lines on top to make the figure appear in the browser:
import matplotlib
matplotlib.use('Agg')
Maybe pyshiny should "force" a backend?

Thanks for the report! Do you mind providing a scanpy snippet that repros this?

Sure, here is the most basic example I have:
from shiny import App, render, ui
import scanpy as sc

app_ui = ui.page_fluid(
    ui.output_plot("umap")
)

def server(input, output, session):

    adata = sc.datasets.pbmc3k_processed()

    @output
    @render.plot(alt="A umap")
    def umap():
        genes_list = ['CD8A', 'CD8B']
        sc.pl.umap(adata, color = genes_list)

app = App(app_ui, server, debug=False)

It looks like this is caused by scanpy's autoshow setting, which calls .show() on figure objects by default. (My guess is that if you use the Agg backend, it can't show to a popup window.) If you disable autoshow like this, the app should work as expected, without using Agg:
import scanpy as sc
sc.settings.autoshow = False

https://scanpy.readthedocs.io/en/stable/generated/scanpy._settings.ScanpyConfig.autoshow.html

Yes! This worked for me, thanks.


invalid mode ('wb') or filename"

Environment
PlugIn version: 0.3.2
PlugIn installed from:

[x] http://plugins.qgis.org/
[ ] ZIP from Github
[ ] Built from source

OS:

[ ] Linux
[x] Windows
[ ] OSX

Expected behavior
Correctly loaded WMS.
Actual behavior
"invalid mode ('wb') or filename" when trying to load the WMS in QGIS.
Steps to reproduce the behavior

CKAN Server API URL: https://open.nrw/api/3
Data set: NRW: Straßennetz Landesbetrieb Straßenbau NRW

Maybe related to #10?

@michikommader
Thanks for reporting.
Issue was similar to #10 but not quite :smirk:.
NRW WMS should be working now.
Also tried WFS - worked on Linux but unfortunately not on Windows.
On Windows I get: Capabilties document is not valid: unexpected end of file

I submitted the update to plugins.qgis.org.
If you don't want to wait till it comes available there you can download the ZIP and do a manual install:
https://github.com/BergWerkGIS/QGIS-CKAN-Browser/releases


[WIP][Feature] Adapting the catalog in fe

What type of PR is this：

[ ] bug
[x] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
related with https://github.com/StarRocks/starrocks/issues/6514
Problem Summary(Required) ：

DLA New Framework add catalog level. We need to adapt the catalog concept where we use the hive connector table at present. we only support querying hive connector table in this milestone. Therefore, we only adapt the catalog in the new parser and new analyzer. we also need refresh_stmt in old parser when we using hive connector table. we will support it in next pr. ref https://github.com/StarRocks/starrocks/issues/6509.
And other stmt like describe table on external catalog https://github.com/StarRocks/starrocks/issues/6510. we will support it  step by step in future.
The main point of adaption:

Add catalog field in TableName
Use MetadataMgr.getDb or MetadataMgr.getTable when getting metadata.
Remove cluster_name from dbname when process table in external catalog.

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

cc @HangyuanLiu

run starrocks_fe_unittest

run starrocks_fe_unittest

[FE PR Coverage check]
:heart_eyes: pass : 120 / 133 (90.23%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/analyzer/AnalyzerUtils.java
2
3
66.67%

:large_blue_circle:
com/starrocks/qe/ShowExecutor.java
21
26
80.77%

:large_blue_circle:
com/starrocks/sql/common/MetaUtils.java
5
6
83.33%

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
6
7
85.71%

:large_blue_circle:
com/starrocks/connector/ConnectorMgr.java
24
27
88.89%

:large_blue_circle:
com/starrocks/sql/analyzer/QueryAnalyzer.java
9
10
90.00%

:large_blue_circle:
com/starrocks/analysis/TableName.java
16
17
94.12%

:large_blue_circle:
com/starrocks/server/MetadataMgr.java
2
2
100.00%

:large_blue_circle:
com/starrocks/server/CatalogMgr.java
28
28
100.00%

:large_blue_circle:
com/starrocks/external/hive/HiveMetaCache.java
1
1
100.00%

:large_blue_circle:
com/starrocks/sql/analyzer/ShowStmtAnalyzer.java
5
5
100.00%

:large_blue_circle:
com/starrocks/analysis/Analyzer.java
1
1
100.00%


TRACKING: third party licensing

Some of our direct and indirect dependencies are not using licenses that are approved by Google, so we need to do something about it. We have three options for each of those: ask authors to relicense, reimplement ourselves, or stop using the dependency.
Here's a (maybe incomplete) list:

[x] uc.micro - WTFPL (from markdown-it). markdown-it might have replacements that are available, so I'll look for those.
[ ] sourcemap-istanbul-instrumenter-loader - WTFPL. We should probably contact the author for this one. Might not be needed.
[x] jsonify - Public Domain (not a valid license, from ember-cli-preprocess-registry/broccoli-clean-css/json-stable-stringify). We don't need the preprocess-registry and will probably get rid of it.

Other point to consider this completed:

[ ] make a test to check licenses from package.json of every dependencies on Travis.

We might need to make separate issues to track some of those individually.
cc @IgorMinar @naomiblack

Shoutout to Robert Spier who found those!

Alternative reading: Google's legal team should work on approving the WTFPL :-)

sourcemap-istanbul-instrumenter-loader is the only one missing now.

The sourcemap-istanbul-instrumenter-loader author at https://github.com/deepsweet/istanbul-instrumenter-loader/issues/39 seems to be ok with changing to MIT.

Closed via https://github.com/angular/angular-cli/pull/4561


IG Publisher issues?

MedicinalProductDefinition profiles (strict and relaxed both) don't show Snapshot view in the IG.
Other profiles seem to work as normal.

In qa, there is an error "Rule apd-1: 'RouteOfAdministration cannot be used when the 'formOf' product already uses MedicinalProductDefinition.route (and vice versa)' Failed".
However, I do not have route of administration defined in two places, but I have two routes of administration in one place, which is perfectly legit. When I comment out one of the routes, the error disappears from qa.
The problematic administrable product is here, the corresponding medicinal product can be found a few lines upwards.

I'm not sure if they're publisher issues or if I'm doing something wrong.

Number 2 already reported by José. Thank you! :)
https://jira.hl7.org/browse/FHIR-39755

I think #1 is fixed, but currently the publisher never finishes the entire
build so what we have online is still a broken version
On Sun, Jan 1, 2023 at 10:25 PM Rutt Lindström @.***>
wrote:

Number 2 already reported by José. Thank you! :)
https://jira.hl7.org/browse/FHIR-39755
—
Reply to this email directly, view it on GitHub
https://github.com/hl7-eu/unicom-ig/issues/80#issuecomment-1368540581,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD3HUUEF5ELLNUARBZAZJQ3WQHY4XANCNFSM6AAAAAATOAZOM4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Mpd-r4b builds well I think. Took under 2 min for my local version, and online build showed thumbs-up as well.
I updated publisher on the 31st. Should I try again?

online build of mpd-r4b is not ok:

I will recheck why my build was failing. Seems that the problem is on my
end.
In any case, the snapshot view is there, it seems
On Mon, Jan 2, 2023 at 7:54 AM Rutt Lindström @.***>
wrote:

Mpd-r4b builds well I think. Took under 2 min for my local version, and
online build showed thumbs-up as well.
I updated publisher on the 31st. Should I try again?
—
Reply to this email directly, view it on GitHub
https://github.com/hl7-eu/unicom-ig/issues/80#issuecomment-1368694490,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD3HUUAHHQQ6O5VBNGNB5LLWQJ3TLANCNFSM6AAAAAATOAZOM4
.
You are receiving this because you commented.Message ID:
@.***>

I see it works in mpd-r5 for example, but not in mpd-r4b branch (see this).
The Snapshot Table does not appear for me:

About the Snapshot view problem. I have come to conclusion that it's the slicing on coding (EMA and WHO ATC) that causes this. I removed slicing from TransitionMedicinalProductDefinition profile and the Snapshot view started working.
Also, the same slicing confuses the terminology binding a little bit, because the example binding in the FHIR resource is on higher level (that will be in #84).
I am not smart enough to check if everything is correct with the slicing. It looks legit to me, but I'd be thankful if someone investigated it.

Problem1. I killed the slicing on classification, so the snapshot view is back.

Number 2 is solved in R5 build, Snapshot3 still has that problem, so  we're stuck with it until the next release.


feat: add 2D Composite, Intersection and Polygon intersectionWith method

Use boost::geometry::intersection for compute intersection between 2D Polygon objects. Add intersectionWith method to Polygon class in 2D.
Modify Polygon::Impl::Impl constructor to correct boost::geometry::polygon instead of rings alone in order to always store valid (in the boost sense) polygon_ objects that can then be leveraged by intersection and difference methods.
Add Composite class in 2D (similar to concept on 3D) mainly to store a set of heterogeneous 2D Geometry Objects and be leveraged by Intersection.

Tested with latest Astro in Jupyter with a couple of examples


Update extract-files.md

Proposing an update for the description of the overwriteExistingFiles-option. The motivation behind the proposed change is to try to describe more explicitly how the overwriteExistingFiles option works in the case of existing files. One might assume that when the overwriteExistingFiles option is set to false no user interaction is needed when there is existing files in the output directory.

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

#label:"aq-pr-triaged"

#sign-off

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

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


[Feature]: New features, ideas and contributions

Any new extensions to the project can be discussed, i'll list a few examples of ideas I've been thinking about and would like to implement, it includes expanding the project from the MVP and most of them will create other things to work on.
Create an issue with the title "[Feature]: <WHat you'd like to implement>"
If you are creating a feature, also make sure to include any side effects (tasks that could arise from implementing it). Ex: Creating a new api route for books would affect models, api, data, docs. If you did not work on either of those in your PR, then list them or create the issues, mention the issue you created that caused this side effect in your PR.
Ideas

[ ] Student page course teacher popup showing teacher contact
[ ] Adding schedules / time table with all the courses and times, which can be displayed on dashboards for teachers and students (This will be pretty large)
[ ] Metrics (with functions or something similar)
[ ] Pagination (for all routes, will be given priority as its quite large)
[ ] Feature
[ ] Feature
[ ] Feature
[ ] Feature
[ ] Feature
[ ] Major feature
[ ] major feature
[ ] Major feature
[ ] Suggested feature
[ ] Suggested feature
[ ] Suggested feature
[ ] Suggested feature
[ ] Minor feature
[ ] Minor feature
[ ] Minor feature

Hi @Jesulayomy, i hope you are doing well
"Could you please assign me this issue? I will implement any features."

@LoayTarek5 Do you want to implement a specific feature?
You would have to create an issue for your specific feature.

@Jesulayomy  i think the first one:

[ ] Student page course teacher popup showing teacher contact

@Jesulayomy
when i try the website i cannot register as a new student

Okay @LoayTarek5, you'd need to use Axios, React state, HTML, CSS for that. You would call the teacher API using the result from courses fetched using axios.
Check the schub/src/pages/StudentDashboard.js file, you would work there along with css I guess.
Once you get the gist of it create your issue with some process details and I will assign it to you.
Yes you cannot register yourself (admins can do that), there are login details in my README.md#Public Access, so you can see how it looks now.
{
  "admin": {
    "email"<EMAIL_ADDRESS>    "password": "testerpwd"
  },
  "teacher": {
    "email"<EMAIL_ADDRESS>    "password": "TUANNPWD"
  },
  "student": {
    "email"<EMAIL_ADDRESS>    "password": "GREAMEMPWD"
  }
}

@Jesulayomy to Full understand
Do you mean the final result you want is for the "show teacher" button to display the teacher's contact when pressed?

Yes, currently it just shows the name under, I think a modal popup would look more presentable yea? If you think something else let me know. also you can reach me on discord: https://discord.com/users/488238079753060353

@Jesulayomy Okay, I will work on that.🐱🏍

Thanks! Will expect to see your great work soon 🥇

@Jesulayomy i have some problems when run the commands in the READme
first: pre-commit install
it gives me"bash: pre-commit: command not found"
second cat data/setup_dev_db.sql | mysql -u root -p gives me "Enter password: *****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)"

Hi @LoayTarek5 Sorry for the mixup, I must have skipped pushing the update with pre-commit in the requirements.txt file. I will fix that right away. You can temporarily fix with pip install pre-commit.
The mysql command depends on how you have mysql setup on your device. You may be able to use sudo mysql in places where mysql -u root -p is used instead.

@Jesulayomy i am sorry, but I am having some troubles with MySQL at the moment. Therefore, you can see another one to solve this issue
I apologize for the inconvenience.


Question: Compass

Using the CDN, the compass works well; however, when using the latest (commit 38250c1d15) compiled sources on my webserver, the compass no longer works (but everything else appears to) and I'm at a loss to figure out why. Quite likely it's an error in the way I compiled/uploaded pannellum.  Thoughts from you Matthew or anyone else? Here's a link using the source:  http://bobwells.net/dorimckinney/muni/compass.html or another link using compiled: http://bobwells.net/dorimckinney/muni/compass4.html

It appears b0c2f03511c09f1b140079b5cf99281bca46d023 introduced a regression. I fixed it in b719ace20a709f5f4bf55684015ece69a29de999.

Thanks Matthew, I confirm the fix.


Execution table filter

Filter functionality is added according to the start time, error status and running status columns of the executions table of a selected job.
Filter information is prepared in the frontend and passed as a query parameter:
Ex: dateBefore=2023-11-09&errorStatus=PARTIAL_SUCCESS,SUCCESS&runningStatus=COMPLETED
In the backend this string sended to the log server in uri

In ExecutionService, we have a hardcoded value i.e. logs/tofhir-mappings.log of the path to the log file. I think we should read it from the application.conf.